“There are no current instructions… but this recipe step has instructions!”
“Why are there question marks next to all the prompts on the equipment screen?”
“eProcedure Service – STOPPED??”
“Why won’t eProcedure service restart?”“What do I do now!??”
eProcedure is a Rockwell Automation FactoryTalk Batch component that manages, sequences and documents the execution of manual operations. It can be used to post instructions, prompts and other operator interactions with batch, such as confirming temperatures and batch sizes. Most of the time it works flawlessly, but every now and then eProcedure services will not start. This typically happens after an area model change, requiring a restart of the batch server. The eProcedure service needs to be manually restarted. So you launch the FactoryTalk Batch Service Manager and select FactoryTalk eProcedure Server from the service list. After clicking the “Start” button and some suspenseful time that feels like forever, you are returned with a red stoplight and the text “STOPPED”.
Not to worry though, we can help! This failure to start services is typically caused by a mismatch in one or more instruction file names between the area model and the .html file located in the instruction folder. Occasionally files are accidentally misnamed while the .html instruction is created or spaces are inadvertently included in the file name among other things.
If you are working on a project with only a few instruction files, you might be able to check these manually against the area model. But what about a project with hundreds or thousands of instructions? It would take quite a while to check them all manually and leave an opportunity for an auditing error. Well, with a few steps we can automate the file-name verification process and correct any issues quickly and easily.
The below instructions will assist in comparing the eProcedure instruction files in the area model with the instruction folder.
Step 1: Export the area model as an .axml file
First you will want to export the area model so it can be compared to the instruction folder:
- From an engineering workstation, launch FactoryTalk Equipment Editor.
- Open the corresponding .cfg area model file for your project.
- Click “File” and “Export”. Select a location to save and file name.
- Close out of Equipment Editor.
- Rename the file extension from .axml to .xml
Step 2: Create a list of files from instruction folder
Next you will want to generate a list of the .html instruction files to compare to the area model export. The easiest way to do this is with a command prompt instruction:
- Navigate to the folder where the .html instruction files are stored.
- Hold Shift and right click the folder, then select “Open command window here”.
- Type "dir /b > dirlist.txt" without the quotes and press Enter.
- This will create a directory list text file in the folder called “dirlist.txt”.
Step 3: Retrieve the instruction file list from the .xml file
Now we can extract the instruction file name information from the area model export:
- Launch Excel and open the area model .xml file.
- Select “Use the xml Source task pane” and select “OK”.
- Press “OK” if an error window appears.
- From the xml source pane, scroll down and select “ns1:InstructionFilePathname”.
- Click and drag “ns1:InstructionFilePathname” to cell A1.
- Right click on the header and select “refresh”.
- Cells in the column will populate with eProcedure instruction path names from the area model.
Step 4: Compare and remediate
OK, we now have all the information needed. Let’s see what we have:
- Open the eProcedure file name compare worksheet attached to this blog post. NOTE: there is an example on Sheet 1 of the workbook. Sheet 2 will be used for the following procedure.
- In Cell A2, copy and paste the file names that were generated in the previous section. There may be duplicates of the same file name here - that is OK.
- Launch the dirlist.txt file and copy/paste the file names starting in cell C2.
- In the returned value column, fill down the “OK” text until it matches the row number of the instruction folder file names.
- Edit the formula for the Validate equation and adjust the “table_array” value to correspond with the number of rows in columns C and D. Be sure to keep the cells for the table array locked by using “$” as in the example on sheet 2.
- Fill the Validate formula down to match the length of the instruction files in column A.
If all the fields were entered correctly, you will be left with a Validate column reporting values of “Ok”. If you find any marked “N/A”, there is an issue with the instruction file name. Let’s discuss the example below:
- Prompt1.html was not validated as there is a space between the "t" and the "1" in the instruction folder column. My recommendation would be to update the filename in the instruction folder to align with the area model.
- Prompt7.html was not validated as it is missing completely from instruction folder. This could have been caused when the prompt was added to the area model then deleted from the instruction folder. My recommendation would be to add the file back to the instruction folder, or remove from the area model if not required.
These issues often happen accidentally when generating the .html instruction files, or making a change in the area model. After correcting the instruction file name issues, return to batch services manager and eProcedure should start without issue. If you make a change to the area model to correct the file name, you will need to restart the batch server then start the eProcedure service.
So you’ve just saved the day and now production can restart! Give yourself a pat on the back, nice work. Be sure to contact us here at Hallam-ICS for any assistance or questions.
About the author
Robb Chase is a process controls engineer at Hallam-ICS' Connecticut. He is a graduate of the University of New Hampshire with a Civil Engineering degree. He is an expert in batch process control systems.
Read My Hallam Story
Hallam-ICS is an engineering and automation company that designs MEP systems for facilities and plants, engineers control and automation solutions, and ensures safety and regulatory compliance through arc flash studies, commissioning, and validation. Our offices are located in Massachusetts, Connecticut, New York, Vermont and North Carolina and our projects take us world-wide.