For my first item on the Jethro List, I want to suggest changing the default on the “Disable Restart” option for an Application Engine program. I think it should be checked by default.
Just to introduce the Jethro List: these posts are a list of good influences on the PeopleSoft world that I would like to make. Hopefully, they are good suggestions that I would love to get noticed and implemented. We’ll see if it goes anywhere.
So, what about the Disable Restart option?
The default right now as of PeopleTools 8.52 is that the Disable Restart is unchecked.
The problem is that the first time your new program abends or crashes, you have extra work to do. You have to either restart the same process instance or delete the AERUNCONTROL row. You can see the PeopleTools Tip — App Engine Restart If you get … post for more info on fixing the problem.
Why should it default to checked? Because you have to design a program to be restartable before the user should be able to restart it. Here are some of the changes that you need to make:
- Control the Commits: The program will restart at the last commit. So, you need to pay attention to where you have the program commit. I believe that when left alone, it will only commit at the end.
- Set the Do Select types: The default Select/Fetch will fail if the program crashes in the middle of the selection. You need to choose either Restartable or Reselect.
- Track the Progress: The program needs to save which row it is processing so that it can restart at the same place. You either need to add a processed flag to each row, or save the last row processed where you can process only rows greater.
So, that’s why I wish I could change this default option.