CevinMoses
Member
OP
Found my solution! Taking from some suggestions above, and some added research online, here's what worked for me:
I have a Job_Recipes[2000] array for data storage and a Job_Current that controller tags are referencing. Both are of UDT called "Job".
The stock number is entered into a numeric input cursor point in the PanelView HMI connected to a Job_Select tag, then a momentary push button is pressed connected to a Job_Copy tag.
That tag enables a rung in the PLC with a SIZE instruction and a FSC instruction. I do not completely understand the role that the SIZE instruction plays, but I set it up according to examples in one of AB's documents on ASCII strings I found here:
https://www.jlab.org/Hall-D/Documen...trollers ASCII Strings Programming Manual.pdf
The FSC instruction seems to search only the data point that I'm interested in, namely the "StockNo" field of the array. The output bits include .FD if it finds a record at Job_Search[Job_Search.POS] and .DN if it does not. Once it is found, a COP instruction copies the contents of Job_Recipe[Job_Search.POS] into Job_Current.
If I receive a .DN bit, another rung of logic looks for a record where the StockNo is = 0 (an empty spot on the array), and copies the stock number into that record, then copies that record to Job_Current so that the operator can enter in values for the new job. From there they have to activate a "Save" button on the HMI to copy the Job_Current into the specified location in Job_Recipe[2000].
I have a few more rungs of logic to work out for managing the stored data, but it does seem to work nicely from within RSLogix without any need for external data or the limitations of Recipe Plus.
Thanks again for your help everyone. It's much easier to find solutions when you have a clearer sense of what options are available.
I have a Job_Recipes[2000] array for data storage and a Job_Current that controller tags are referencing. Both are of UDT called "Job".
The stock number is entered into a numeric input cursor point in the PanelView HMI connected to a Job_Select tag, then a momentary push button is pressed connected to a Job_Copy tag.
That tag enables a rung in the PLC with a SIZE instruction and a FSC instruction. I do not completely understand the role that the SIZE instruction plays, but I set it up according to examples in one of AB's documents on ASCII strings I found here:
https://www.jlab.org/Hall-D/Documen...trollers ASCII Strings Programming Manual.pdf
The FSC instruction seems to search only the data point that I'm interested in, namely the "StockNo" field of the array. The output bits include .FD if it finds a record at Job_Search[Job_Search.POS] and .DN if it does not. Once it is found, a COP instruction copies the contents of Job_Recipe[Job_Search.POS] into Job_Current.
If I receive a .DN bit, another rung of logic looks for a record where the StockNo is = 0 (an empty spot on the array), and copies the stock number into that record, then copies that record to Job_Current so that the operator can enter in values for the new job. From there they have to activate a "Save" button on the HMI to copy the Job_Current into the specified location in Job_Recipe[2000].
I have a few more rungs of logic to work out for managing the stored data, but it does seem to work nicely from within RSLogix without any need for external data or the limitations of Recipe Plus.
Thanks again for your help everyone. It's much easier to find solutions when you have a clearer sense of what options are available.