Hey Sol,
Great question.
The issue in creating this function it relies on going to the name Customer.FullName in alphabetic order as per the Customer Grid (from the CustomerList screen). The next Customer.FullName does not always have the next sequential RecordID.
For example:
ID NAME
--- -------
13 Alpha
32 Beta
94 Charlie
Thus my initial approach of creating an Action Set of --
Retrieve: CurrentSession.RecordID >
Basic Math: Session.RecordID minus 1 Assign to Action Result (X) >
Go To Screen: (X)
Will not put your Users into the next alphabetic order, it will put your Users into the next Customer that has a RecordID minus/plus 1.
Now one route to accomplish the Action is adding a Grid to the EditCustomer screen and using a Loop Through Grid Action Ordered By Customer.FullName and you would Retrieve Customer.RecordID that is either next or previous in the Grid that is organized alphabetical.
The problem with this route using the stock EditCustomer screen is:
1) We could use a Hide Field/Object to hide the Grid, but unfortunately you cannot hide a Grid object
2) We can create a new Section with the Grid and hide the Section but we cannot add anymore Sections to the EditCustomer screen it's maxed out.
If your Users do not use the Cases or Documents section you can use those Sections to create the Action Set and hide the Section. You will be only using it to Retrieve the next Customer.RecordID in alphabetical order by Customer.FullName. If you have that information you can call it on a 'PREVIOUS'/'NEXT' button object in a different section.
Taking a whole different approach you can find an area in the EditCustomer screen and add a Grid organized by Customer.FullName and using Filter Views you can have it restricted to just the next and previous inline. Thus your Users can use the Grid to move to the next or previous inline using the Grid.
I hope I explained it clearly, if not let me know and I can elaborate.
- Mortaza