Wonderware Computer Replacement - Recipes now missing

CageFreeBMW

Member
Join Date
Sep 2018
Location
Utah
Posts
25
A project recently went through to replace an old computer that was running Wonderware with a new computer. After a bit of work I was able to get the new computer communicating to the PLC and thought all was good. I came in today to find that they LoadRecipe screen wasn't populating the list of recipes from the Excel file like it used to.

I am a complete n00b with Wonderware. Only learned it existed about a month ago (normally I'm a Rockwell guy). The whole install/computer setup was done by an outside contractor before I started working here a few months ago and we can't get a hold of him now.

I did notice that Recipe Manager is not installed on the new computer, but it was on the old one. Is it needed for normal run? Or just editing/setting up new recipes? I'm also wondering if the directory where the excel file is store might be different (i.e. different user name, etc.) but I can't find anywhere in the software (or online manuals) where I should look to see where it is trying to find the file on the computer.

Any input on where to start looking would be much appreciated. I found the QuickScript used for the LoadRecipe and, from what I can tell, it looks okay. It is calling out an SQL script.
 
You should install RecipeManager on the new PC. I don't think it's needed to access the Recipe functions, but it's helpful for managing the recipe as to modify the CSV in Excel can be tricky....it's a 3 level deep CSV with the Units, Recipes, and Values in separate compartments (although in Excel it will appear flat) The Recipe is just stored in a standard CSV file with that extension, usually in the application directory, but doesn't have to be. The Recipe File Name and Path will be designated in the Load Recipe, Save Recipe, etc. scripting calls. If it is a string tag name, look in the application script or the string tag itself for clues to the filename and path.

You mention SQL calls....that wouldn't be using the Recipe template which is a CSV file, but a SQL database. Did you copy over any/all Databases to the new PC?

Edit: This pdf will help you understand the Recipe vs SQL functions. https://cdn.logic-control.com/docs/aveva/hmi-scada/intouch/ITSupplementary.pdf
 
Thanks, I'll look into the PLC and see if there is a string tag providing the location.

I'm honestly not sure. Like I mentioned, this project got dropped on me from someone else who did the whole computer upgrade. Overall, it looks like all the files from the old computer are present.

Last week I spent about 8 works working on this computer because the guy who did the update didn't add a couple of needed firewall exceptions to be able to talk to the PLC. Largely I blame needing that much time on not know anything about wonderware or what the last guy did. So I'm a little hopeful it is just a "minor" oversite similar to that.

The full layout is like this (in case I'm calling things the wrong words, sorry for my incompetence here!): In Wonderware, there is a screen with a display window. It is supposed to show a list of the recipes in the excel spread sheet. They can use the search bar at the top of the window to search through the list for a specific recipe number.
Double clicking on that window, a ListBox Control window pops up and tells me the Control Name is RecipeListBox and the Tagnmae is RecipeSelected.
In the Scripts (left had menu) I don't see a name that matches either of those. I'm assuming it is either one called RecipeNameCheck or RecipeOverwrite. Here is a section of the script mentioning SQL:

Selection = "Active = 1"
SQLResult-SQLConnect(ConSheeConnection,CSConnectString);
IF SQLResult == 0 THEN
SQLResult = SQLSelect
(CondSheetConnection,CondSheetTable,"RecipeNames",Selection,"");
IF SQLResult == 0 THEN
SQLReslut = SQLFirst(CondSheeConnection);
IF SQLResult == 0 THEN
FOR TempInteger = 1 TO 999 STEP1
IF RecipeNew == RecipeName THEN
DuplicateName = 1;
SQLEnd(CondSheetConnection);
....
continues...



I am being told that when a new recipe needs to be added, the engineer just adds the info to the excel sheet (on his computer) then replaces the excel sheet on the Wonderware computer. After that, the list updates correctly.

Thank you again for you help!

EDIT: Thanks for the link. I've been digging through that manual for a couple hours. It seems like the right direction, but seems like I have some fundamental knowledge missing of Wonderware to understand most of it. I'll keep going on it though!
 
Thanks, I'll look into the PLC and see if there is a string tag providing the location.

I'm honestly not sure. Like I mentioned, this project got dropped on me from someone else who did the whole computer upgrade. Overall, it looks like all the files from the old computer are present.

Last week I spent about 8 works working on this computer because the guy who did the update didn't add a couple of needed firewall exceptions to be able to talk to the PLC. Largely I blame needing that much time on not know anything about wonderware or what the last guy did. So I'm a little hopeful it is just a "minor" oversite similar to that.

The full layout is like this (in case I'm calling things the wrong words, sorry for my incompetence here!): In Wonderware, there is a screen with a display window. It is supposed to show a list of the recipes in the excel spread sheet. They can use the search bar at the top of the window to search through the list for a specific recipe number.
Double clicking on that window, a ListBox Control window pops up and tells me the Control Name is RecipeListBox and the Tagnmae is RecipeSelected.
In the Scripts (left had menu) I don't see a name that matches either of those. I'm assuming it is either one called RecipeNameCheck or RecipeOverwrite. Here is a section of the script mentioning SQL:

Selection = "Active = 1"
SQLResult-SQLConnect(ConSheeConnection,CSConnectString);
IF SQLResult == 0 THEN
SQLResult = SQLSelect
(CondSheetConnection,CondSheetTable,"RecipeNames",Selection,"");
IF SQLResult == 0 THEN
SQLReslut = SQLFirst(CondSheeConnection);
IF SQLResult == 0 THEN
FOR TempInteger = 1 TO 999 STEP1
IF RecipeNew == RecipeName THEN
DuplicateName = 1;
SQLEnd(CondSheetConnection);
....
continues...



I am being told that when a new recipe needs to be added, the engineer just adds the info to the excel sheet (on his computer) then replaces the excel sheet on the Wonderware computer. After that, the list updates correctly.

Thank you again for you help!

The above script is looking for an SQL Database to retrieve information. That would not be a CSV file. If you have access to the Old PLC, open up SQL Manager and look for a recipe database.

RecipeLoad, RecipeSave, RecipeDelete are functions used with CSVs created by Recipe Manager. Do you have these functions anywhere in scripting?

The fact that you mentioned a list box gets populated with selectable recipes indicates that its more likely retrieved from an SQL DB and not a Recipe CSV. RecipeLoad will load its own popup and show all the recipes defined in the Recipe CSV file. There would be no listbox.
 
Understood, thanks! I'll dig through the old (and new) computer to see if I can find the SQL database. Would there be anywhere in Wonderware that would show the file directory (other than what you already mentioned above... Still checking those).
 
Understood, thanks! I'll dig through the old (and new) computer to see if I can find the SQL database. Would there be anywhere in Wonderware that would show the file directory (other than what you already mentioned above... Still checking those).

If you look at the PDF I linked you'll see that the filename is the first field in the RecipeLoad, RecipeSave, RecipeDelete calls. It could be a direct reference such as RecipeLoad ("C:\MyfileName", ... ) or it could be a tag such as RecipeLoad (MyRecipeLocationTag, ...). If it's the latter (a tagname), the string value of that Tag could be loaded from an Application script or defined simply as the initial value of the Tag. If it is an IO string Tag, the name is coming from your PLC.

Easiest way to find the value is to just modify a screen and put a string indicator on it linked to show the string MyRecipeLocationTag and then run viewer.
 
I don't have an final 'full' solution, but after digging around I found that the contractor who set up the new computer didn't bother installing the SQL Access Manager (nor the Recipe Manger mentioned earlier). Because of that, all of the SQL callouts in the QuickScripts aren't being read correctly. I found this by clicking the "verify" button in the QuickScript window with the SQL callout in it and got an error asking if I would like to define SQLConnect().

After digging through some manuals, I found that an SQL Bind List (in the left hand Tools menu) must be added before the SQLConnect() command can be recognized.

I ended up have to pull the new computer/monitor out and putting the old system back. On top of the Recipe/SQL issues, Wonderware would stop sending commands to the PLC after about 90 minutes of being on. The displays showed that the touch screen was working (button feedback showed that) but the machine wouldn't respond. Rebooting software would get it working again, but only for another 90 minutes or so.

I'll be setting it up at my desk and hopefully learn a lot about it and get it set up better than the previous person.
 

Similar Topics

Dear all, I want to upgrade our HMI computer (Win2000 installed) to the better spec. The current intouch wonderware is connected to the AB SLC504...
Replies
2
Views
3,741
I have been using version 9 of Wonderware, but now a client wants me to do a program using version 9.5. However I will still be required to do...
Replies
9
Views
3,687
Hi guys, I have experience with PLC to Excel etc...just starting on using intouch scada screens. I have an Excel sheet that uses mainly...
Replies
1
Views
149
Hello everyone, Recently, my Archestra IDE shut down while I was editing. After restarting the IDE, I noticed warning symbols under my opened...
Replies
1
Views
102
Good morning all. I'm working on a rehab where they had a standalone InTouch 2014 HMI that they called a SCADA, but it's really basic stuff. The...
Replies
4
Views
183
Back
Top Bottom