Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

A 5250 screen specific thing we can do is to add scrolling buttons to a subfile it displays.

In the script associated with this example screen, three new functions could be added like this:

 

...

 /* Apply layout changes specific to this screen */

   

...

ApplySpecificLayout : function()
   {
      if (CHECK_FIELD_EXISTS("PageDownMarker"))

...

HTMLAPI.insertSubFileScrollers("/ts/skins/images/pageup.gif",this.HandlePageUp,"/ts/skins/images/pagedown.gif",this.HandlePageDown,9,9,-46,82);
      else

...

 HTMLAPI.insertSubFileScrollers("/ts/skins/images/pageup.gif",this.HandlePageUp,null,null,9,9,-46,82);
   },

   

...

/* Handle clicks on the subfile scroller images images */

   

...

HandlePageDown: function() { EXECUTE_BUTTON_SCRIPT(KeyPageDown); },

   

...

HandlePageUp: function()   { EXECUTE_BUTTON_SCRIPT(KeyPageUp); },

...

And the arrival script part of the screen definition is modified to invoke this new logic every time a screen arrives: 

 

...

 vHandle_ARRIVE: function(oPayload, oPreviousForm)
   {
     var bReturn = true;

   

...

 /* If the department input field exists on the screen, display it */

 

...

   if ( CHECK_FIELD_EXISTS("DEPTMENT") )
     {

 

...

      SHARED.ApplyStandardLayout();
        this.ApplySpecificLayout();

...

etc, etc

 
When executed the example 5250 screen now looks like this: 
 
Image Modified
 
Note the page up and down clickable images appearing at the bottom of the subfile. When clicked they invoke the handler functions HandlePageUp and HandlePageDown, which then send page up / down keystrokes to the server.

Note
Note: They do this by executing the vHandle_BUTTONCLICK function, so you need to make sure that it can handle the page up and page down keys correctly.