In our current implementation, we use Proufound IBM I profile authentication, with a global initial program that presents a menu. Users can then access programs from this menu.
We have a requirement to present another menu from any of these programs on pressing the "Attention Key" (ESC). This menu would provide users a list of programs to jump to from the current program. Users should then return back to the current program. The preferred method would be to overlay the current program, but opening in another tab would be acceptable - although, the user should not be required to log in again on the new tab.
What would be the best options for implementing this through Profound?
Attention Key Menu
-
- New User
- Posts: 5
- Joined: Fri Dec 12, 2014 11:43 am
- First Name: Russ
- Last Name: Jared
- Company Name: BBCS
- Contact:
-
- Experienced User
- Posts: 2711
- Joined: Wed Aug 01, 2012 8:58 am
- First Name: Scott
- Last Name: Klement
- Company Name: Profound Logic
- City: Milwaukee
- State / Province: Wisconsin
Re: Attention Key Menu
Do you want this menu to be available on every single screen? If so, perhaps a good way is to modify the HTML page that you're running PUI inside. Then you can make an option that's always available. Though, I would strongly recommend using an icon that the user can click rather than the Escape key. (ESC is supposed to mean "exit" or "escape from" the program you're running.) I know IBM re-mapped it to correspond to the 5250 "attention" key -- but as you are working on making your application more browser-like and less 5250-like, I would think it'd be better to use something like an icon the user could click on all screens. Of course, you could do both a keypress and an icon... maybe that's best of both worlds.
Can you tell us a bit more about your environment? I
Which session controller are you using? I will need to know that to give you more specific suggestions. An easy way to tell is by looking at the URL:
When an option is selected, do you want it to "kill" (i.e. end abnormally) the currently running program? If not, then your program will need to receive the "menu" request and finish it's processing and end normally or call the menu program, or something like that. This would mean modifying each program so that it understands what's going on and can end normally, or just call the new option with the CALL command, or whatever.
Or, perhaps an easier/better solution is to open the new menu item in a separate browser tab (or window). This way the existing program could stay running and you wouldn't need to modify your programs, just the HTML... of course, this could potentially require the user to sign in again (unless you are using "browser authentication" or atrium)
I know I'm asking a lot of questions -- but these are what comes to mind when I start trying to think this through :-) There's a lot of stuff I don't know, here...
Can you tell us a bit more about your environment? I
Which session controller are you using? I will need to know that to give you more specific suggestions. An easy way to tell is by looking at the URL:
- /profoundui/genie = Using Genie (interactive 5250 jobs) as session controller
- /profoundui/start = Using the RDF (batch) session controller.
- /profoundui/start?pgm=XXX/YYY = Using RDF session controller anonymously
- /profoundui/auth/start = Using the RDF session controller with browser authentication
When an option is selected, do you want it to "kill" (i.e. end abnormally) the currently running program? If not, then your program will need to receive the "menu" request and finish it's processing and end normally or call the menu program, or something like that. This would mean modifying each program so that it understands what's going on and can end normally, or just call the new option with the CALL command, or whatever.
Or, perhaps an easier/better solution is to open the new menu item in a separate browser tab (or window). This way the existing program could stay running and you wouldn't need to modify your programs, just the HTML... of course, this could potentially require the user to sign in again (unless you are using "browser authentication" or atrium)
I know I'm asking a lot of questions -- but these are what comes to mind when I start trying to think this through :-) There's a lot of stuff I don't know, here...
-
- New User
- Posts: 5
- Joined: Fri Dec 12, 2014 11:43 am
- First Name: Russ
- Last Name: Jared
- Company Name: BBCS
- Contact:
Re: Attention Key Menu
Yes, the option should be available on every screen. Adding a button rather than using the Escape key would be acceptable.
We are using the RDF (batch) session controller (/profoundui/start).
We do not have Atrium.
We would not want the current program to end. I figured this was something we would need to implement within each program, but was hoping there might be another way. Opening up a new browser tab would work, but the preference is to not sign in again.
We are using the RDF (batch) session controller (/profoundui/start).
We do not have Atrium.
We would not want the current program to end. I figured this was something we would need to implement within each program, but was hoping there might be another way. Opening up a new browser tab would work, but the preference is to not sign in again.
-
- Experienced User
- Posts: 2711
- Joined: Wed Aug 01, 2012 8:58 am
- First Name: Scott
- Last Name: Klement
- Company Name: Profound Logic
- City: Milwaukee
- State / Province: Wisconsin
Re: Attention Key Menu
Okay, so the problem with using /profoundui/start is that each time you open a new browser tab/window, it will indeed make you sign in again. You may consider looking into /profoundui/auth/start, which will only ask you to sign in the first time. (But, it puts the browser in charge of the sign-on process, so you have less control over it.)
If you wish, there is an HTML file that you can edit. Any changes made there will apply to all screens -- so this might be a good solution. You'll find it here:
/www/INSTANCE-NAME/htdocs/profoundui/userdata/html/start.html
An alternative to modifying the HTML might be to have a script that loads from /www/INSTANCE-NAME/htdocs/profoundui/userdata/custom -- any file ending in .js that you put here will automaticallty be loaded/run when you use the /profoundui/start URL. So you could have code that adds a button there -- but whether you change the HTML or use a script, either way you can add a button for every screen. Which brings us to the next problem...
If you want your programs to end normally, it seems like you'd have to have code in each program... I can't think of any other way to make each program end normally. Of course, if you want to open up a new window/tab instead, that circumvents the problem since the program no longer needs to end :-) But, that's when you'll run into the need to sign on again unless you use the "/auth/" URL.
If you wish, there is an HTML file that you can edit. Any changes made there will apply to all screens -- so this might be a good solution. You'll find it here:
/www/INSTANCE-NAME/htdocs/profoundui/userdata/html/start.html
An alternative to modifying the HTML might be to have a script that loads from /www/INSTANCE-NAME/htdocs/profoundui/userdata/custom -- any file ending in .js that you put here will automaticallty be loaded/run when you use the /profoundui/start URL. So you could have code that adds a button there -- but whether you change the HTML or use a script, either way you can add a button for every screen. Which brings us to the next problem...
If you want your programs to end normally, it seems like you'd have to have code in each program... I can't think of any other way to make each program end normally. Of course, if you want to open up a new window/tab instead, that circumvents the problem since the program no longer needs to end :-) But, that's when you'll run into the need to sign on again unless you use the "/auth/" URL.
-
- New User
- Posts: 5
- Joined: Fri Dec 12, 2014 11:43 am
- First Name: Russ
- Last Name: Jared
- Company Name: BBCS
- Contact:
Re: Attention Key Menu
Thanks Scott - This helps.
Who is online
Users browsing this forum: No registered users and 0 guests