Release note

##### IceCap™ Version 2.000.000 (Released July 19, 2011)

- New api functions to be used in your own emulation (useremul) of 5250 displays.
  New api's:
  • emlArea2Panel: Convert a detail display to a panel, which can be a child in other components, ex. a tab panal.
  • emlIgnoreArea: Marks an area, which should be ignore (not displayed).
  All api's are documented in 'Administration' / 'IceCap emulator API documentation'
- New method (icecaped) to convert subfiles. The method try to recognize the subfile and save the recognition in a xml file. The method use the area2xxx functions to emulate.
  Following parameters from icecap_config.xml are used:
  Controling the emulation:

                      <emulator
                        program="/menu/icecap.aspx"
                        method="icecaped"Bestemmer emuleringsmetode: simple, advanced eller icecaped (ny).
                        useHints="yes"Brug 'hints', som er gemt i xml filen: yes eller no.
                        hintsXMLhive="menu"Hive for xml file med 'hints'.
                        hintsXMLpath="icecaped.xml"Navn for xml file med 'hints'
                        numberOfSubfilePagesToStack="2"Antal subfile sider, som skal stacket i grid'en.
                        defaultOption="2,5,1"NY - Prioteret liste med standard valg muligheder. Bliver valgt ved dobbeltklik på række.
                        selectTextWhenFieldFocus="yes"NY - Markér tekst ved fokus i felt: yes eller no.
                        openSubProgramsInWindows="yes"NY - Åbne under programmer i vinduer: yes eller no.
                      />

  Recognition of subfiles:

                      <optionText>Used to find the option text (1=select, 2=change, etc.).
                        <item text="TYPE OPTION" startPosition="1" endPosition="20"/>
                        ...
                      </optionText>
                      <optionField>Used to find option field and subfile start.
                        <item text="OPT" startPosition="1" endPosition="8"/>
                        ...
                      </optionField>
                      <subfileEndTextUsed to find subfile end and the position compared to subfile data and function keys.
                        subfileEndBeforeFKeys="2" subfileEndColumn="79" subfileMoreText="+" dataEndBeforeSubfileEnd="0">
                        <item text="MERE" startPosition="60" endPosition="132" moreIndicator="yes"/>
                        <item text="SLUT" startPosition="60" endPosition="132"/>
                        ...
                      </subfileEndText>

  Example of recognition of a subfile saved in the xml file:

                      <panel id="Arbejd med noter" token="1">
                        <select>
                          <when line="12" column="1" length="80" equal=" Valg Typ          Nummer Applikation          Dato       Tekst                 "/>
                        </select>
                        <areas>
                          <property type="ignoreArea" startLine="1" startColumn="1" endLine="1" endColumn="80"/>
                          <property type="ignoreArea" startLine="2" startColumn="1" endLine="2" endColumn="80"/>
                          <property type="area2columns" xPosition="0" yPosition="2" startLine="4" startColumn="1" endLine="7" endColumn="80" columnWidth="" removeLabelDots="true"/>
                          <property type="area2grid" xPosition="0" yPosition="98">
                            <menu startLine="9" endLine="10" moreOptionKey="">
                              <item id="1" text="Opret"/>
                              <item id="2" text="Revider"/>
                              <item id="3" text="Kopier"/>
                              <item id="4" text="Slet"/>
                              <item id="5" text="Vis"/>
                            </menu>
                            <column startLine="12" endLine="12" showOptionField="true" optionFieldColumn="1" optionFieldLength="1">
                              <item header="Valg" columnStart="2"/>
                              <item header="Typ" columnStart="7"/>
                              <item header="Nummer" columnStart="11"/>
                              <item header="Applikation" columnStart="27"/>
                              <item header="Dato" columnStart="48"/>
                              <item header="Tekst" columnStart="59"/>
                            </column>
                            <quickOption line="13"/>
                            <data startLine="14" endLine="21" subfileEndLine="21" subfileEndColumn="79" subfileMoreText="+" subfileBottomText=" "/>
                            <toolbar>
                              <item id="F3" text="Afslut"/>
                              <item id="F4" text="Liste"/>
                              <item id="F5" text="Opfrisk"/>
                              <item id="F12" text="Annuller"/>
                              <item id="F17" text="Udsnit"/>
                            </toolbar>
                          </property>
                          <property type="label" line="24" contentLocation="east"/>
                        </areas>
                        <keys startLine="23" endLine="23">
                          <item id="F3" text="Afslut"/>
                          <item id="F4" text="Liste"/>
                          <item id="F5" text="Opfrisk"/>
                          <item id="F12" text="Annuller"/>
                          <item id="F17" text="Udsnit"/>
                        </keys>
                      </panel>

  Changes to 'hints' saved in the xml file:
  You can make changes directly in the xml file or use the 'gear function', by clicking the 'gear' icon.
  The 'gear' function is only possiable, if 'icecaped' is specified in 'method' and 'yes' in 'useHints' in the icecap_config.xml file.
  With the 'gear' function you can change, create and delete 'hints', which are recognized by the emulation:

##### IceCap™ Version 1.60 (Released April 29, 2010)

- New menu item in administration: System setting
  With this item you can control following:
  • Start menu item in new tab with single or double click.
  • Create users automatically at login, if it is an valid IBMi profil.
- Opportunity to enter 'initial kommando' at system level. Hereafter is the priority:
  • If 'initial command' is entered at system level, this will be used
  • Else if 'initial command' is entered at user group level, this will be used
  • Else no 'initial command'
- Opportunity to mark a menu item as critical application, and close tab will not be possible.
  It is also possible to control the close tab opportunity from the user emulator (USEREMUL) program, as following:

  if vtSaaTitleContains(pVts:'Change customer')
  or vtSaaTitleContains(pVts:'Display customer');
  // Disable tab closable (ex. critical application)
  // In this example the tab close is disable,
  // if the customer name = 'System & Metode A/S'
  name = vtGetValueFor(pVts : 'Customer Name');
  if name = 'System & Metode A/S';
  emlAddMetaField ('{+
  configOptions:{tabClosable:false}+
  }');
  else;
  emlAddMetaField ('{+
  configOptions:{tabClosable:true}+
  }');
  endif;

  - In this example the close tab function is remove at the 'Display' -or 'Change customer' display in the IceCap Demo, if the field 'Customer Name' contains 'System og Metode A/S'. This example can be find in following source: ICECAP/QSAMPLE(EX16).

##### Next Release

- More understandable user -and menu item administration
- More fancy layout adn automatic selection of icons
- Opportunity to select an area (subfile) to be converted into a grid
- Opportunity to select an area (option description) to be converted into right click menu

##### IceCap™ Version 1.59 (Released April 13, 2010)

- Better control of numeric input dds keywords
- User with 'limit capabilities' can now use IceCap™ with small changes in the IBM™ profile.
  Following line must be added into 'initial program' for the user:
  icebreak/stricecap
  The line must be added after all environment setup, but before call to the normal menu program.
  Ex.
  The stricecap command check weather the user comes from IceCap™ or normal '5250'. If normal '5250' the command do nothing, else it continue in IceCap™.

##### IceCap™ Version 1.58 (Released March 10, 2010)

- Tool to change the themes for IceCap™
  New menu item under administration: Change colors in IceCap.
  - with this you can change a existing theme, or create a new theme.
  The themes are now saved in iceCap_themes.xml instead of iceCap_config.xml.
- Theme selection is move to the 'setting' icon
- If IceCap™ is started from own system, the IceCap™ theme is used from the tag in the config xml file:

                      <defaults
                        ...
                        defaultIceCapTheme="default"
                      />

- Better handling of input fields and function keys in the same line.

##### IceCap™ Version 1.57 (Released February 17, 2010)

- Control of screen color with opportunity to change the look of ex. highlight or red reverse.
  The colors are control in the config xml file (icecap_config.xml) using the following xml tags:

                      <styleMap>
                        <map attr="20" foreground="hidden"  background="black"  decoration="none" style=""/>
                        <map attr="21" foreground="black"   background="green"  decoration="none" style="background:green;color:black;"/>
                        <map attr="22" foreground="white"   background="black"  decoration="none" style="color:#000080;"/>
                        ...

  Change style the attributes to the layout you wish. See the standard for styles here: http://www.w3schools.com/css
  The following tags are just means as an explanation:
  • attr = 5250 display attribute
  • foreground = 5250 foreground color
  • background = 5250 background color
  • decoration = 5250 text decoration (underline, etc.)
- Better diffenrence in layout between input -& output field
- Nicer layout for the function keys

##### IceCap™ Version 1.54 (Released January 25, 2010)

- Better performance
- Please note that the IceCap™ config file (icecap_config.xml) has been changed significant.
  There is now only one config file. The file now contains the config parameters for simple, advanced, etc. setting. IceCap™ is called with one parameter, ex. &config=advanced for using the advanced setting. If the parameter is not given, the <default> tag in config xml file is used.
  The existing config file is renamed to ex. : icecap_config(version 1.53).xml (existing version number).
- Navigation thru server side display file is now put into the config file using the following tags:

                      <automaticScreenScripting>
                        <!-- English -->
                        <screen title="Sign Off" action="ENTER" />
                        <screen title="Attempt to Recover Interactive Job" fieldNo="1" value="90" action="ENTER" />
                        <screen title="Display Program Messages" action="ENTER" />
                        <screen title="Sign-on Information" action="ENTER" />
                        ...

  Further you can enter the name of your own breakout program for navigation.

                      <breakOut
                        navigatorProgram="*LIBL/USERNAVI"
                        ...

  You can find an example of a navigation breakout program in the IceCap™ library and source file QSAMPLE.
- Opportunity for longer parameter value (now 256 characters).
- Opportunity to call IceCap™ from own site or menu system using single signon method.
  meaning the user ID and password can be remove from the url, and replaced with a call to IceCap™ login procedure. The Login procedure returns a session-id, which must be used in the following call to IceCap™.
  The procedure works as following: Call login.aspx using ajax and save the returned session-id. Note !!! an error message can be returned.
  Example on response:
  • When error: {success:false,error:"Password not correct for user profile XXXXX."}
  • On success: {success:true,sessionID:".20100126125355900001"}
  Remember to call logoff.aspx, when used of IceCap™ is finish. This will close all the virtuel 5250 terminals in an nice way.
  Look at the example in 'IceCap demo'.
- Check the device status when opening a new virtuel terminal.
- The cursor automatically position to the OK button in popup windows and messages.
- In user information, you can now enter fixed names for the devices (virtuel terminals).
- Icecap™ is now completely language controlled. It is possible to create own language, if wanted.
  Done as following:
  • Copy message file: I18N_DFT in the IceCap™ library to ex. I18N_DE (german).
  • Change the description for the new message file.
  • Change the texts using the 'Translate' application under 'Administration'
- If IceCap™ is started from own system, theme is used from the tag in the config xml file:

                      <defaults
                        ...
                        defaultTheme="xtheme-gray.css"
                      />

- Help follows the change in tabs