C Language Extensions for Hybrid CPU/GPU Programming with ...
Web Extensions V1200 Programming Guide En
Transcript of Web Extensions V1200 Programming Guide En
Edition May 2008
ProTopas/Web-Extensions V 1.2/00
ProTopas/HTML-Dialog V 1.2/00Programming Guide
Copyright and Trademarks
Copyright © Wincor Nixdorf AG 2008.
All rights reserved.Delivery subject to availability; right of technical modifications reserved.
All hardware and software names used are trademarks of their respective manufacturers.
Introduction
Selecting the product version
Web-Extensions/ExtraLink
Web-Extensions/ClassicLink
Web-Extensions/HyperLink
Components and system requirements
Designing the user interface
Controls
Web Graphical Service components
WXPTBridge Control
Continued
Input checks
Displaying external pages
Scripting
Control of the ADA Service
Customer Relationship Marketing
Installation
Configuration
Parameters
Tools
Abbreviations
Continued
Glossary
Documentation
Figures
Index
May 2008 I
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
ContentsIntroduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Take care . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3New since release 1.1/25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Target groups for this manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Structure of the manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Typographical conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Selecting the product version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Web-Extensions/ExtraLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Web-Extensions/ClassicLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Web-Extensions/HyperLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Areas of use for the product versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19Similarities and differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Web-Extensions/ExtraLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Web-Extensions/ClassicLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Value of a softkey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Input fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Initializing input fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Structure of the correction message pages . . . . . . . . . . . . . . . . . . . . . . 29
Implementing dynamic selection dialogs . . . . . . . . . . . . . . . . . . . . . . . . . . . 30Loading external Internet pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Calling the first page external to the product . . . . . . . . . . . . . . . . . . . . . 33Exiting the display mode for external pages . . . . . . . . . . . . . . . . . . . . . . 33Loading product-related Internet pages from another Internet address . 35Loading external pages without navigation bar . . . . . . . . . . . . . . . . . . . 35
Loading a frameset without ChangeLanguage() . . . . . . . . . . . . . . . . . . . . . 36DoDialog() Safety features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36New multilanguage handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Web-Extensions/HyperLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Hardware control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39The menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Special aspects of menu buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Menu pages for information service pages . . . . . . . . . . . . . . . . . . . . . . . 42Variable menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
II May 2008
Contents
Disabling menu contents by the host . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Structure of the correction message pages . . . . . . . . . . . . . . . . . . . . . . . . . 43Loading external Internet pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Programming a Transaction Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Functions to manipulate controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Showing and hiding button controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Changing links to HTML pages at runtime . . . . . . . . . . . . . . . . . . . . . . . 47Ascertaining the name of the current HTML page . . . . . . . . . . . . . . . . . . 47
Components and system requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 49Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Operating system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49CSC-W32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50ProDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50ProBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50ProTopas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Web Graphical Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Service and Operating (SOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Hardware requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Software requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Designing the user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59Screen resolution and colour depth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60Standard elements of the user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Formats of images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61Animations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Multimedia (video and audio) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63Text fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
User interface elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Function keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Selection buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Menu buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67Input fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67List boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68The Contents (STD/ATM) control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Header and operating hint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Logo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Arrangement of the screen interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
May 2008 III
Contents
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
Frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Positioning image elements on Internet pages of the Context frame . . . 73Overlaying an Internet page over an existing one . . . . . . . . . . . . . . . . . 75
Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Aspects common to all controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78The Button control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Button control - General 1 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Button control - General 2 page for function keys . . . . . . . . . . . . . . . . . 85Button control - General 2 page for selection buttons . . . . . . . . . . . . . . 91Button control - General 2 page for menu buttons . . . . . . . . . . . . . . . . . 94Button control - General 2 page for radio buttons . . . . . . . . . . . . . . . . . 97Button control - General 3 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98Button control - Caption page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101Button control - Graphic page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105Button control - Icon page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Button Control - Property Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109The Edit control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Edit control - General 1 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122Edit control - General 2 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Edit control - General 3 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128Edit control - Headline page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129Edit control - Graphic page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129Edit control - Input page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131Edit control - Icon page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138Edit control - Not allowed character page . . . . . . . . . . . . . . . . . . . . . . . 138
The Edit controls use for PIN input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139Edit control (PIN input) - General 1 page . . . . . . . . . . . . . . . . . . . . . . . 139Edit control (PIN input) - General 2 page . . . . . . . . . . . . . . . . . . . . . . . 140Edit control (PIN input) - General 3 page . . . . . . . . . . . . . . . . . . . . . . . 141Edit control (PIN input) - Headline page . . . . . . . . . . . . . . . . . . . . . . . . 141Edit control (PIN input) - Graphic page . . . . . . . . . . . . . . . . . . . . . . . . . 142Edit control (PIN input) - Input page . . . . . . . . . . . . . . . . . . . . . . . . . . . 143Edit control (PIN input) - Icon page . . . . . . . . . . . . . . . . . . . . . . . . . . . 144Edit control (PIN input) - Not allowed character page . . . . . . . . . . . . . 145Masked edit for standard edit control . . . . . . . . . . . . . . . . . . . . . . . . . . 145Hide the caret in standard edit control . . . . . . . . . . . . . . . . . . . . . . . . . 146Check max. chars for EPP keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . 146Delete the content after customer error in edit control . . . . . . . . . . . . . 147
IV May 2008
Contents
Edit Control - Property Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147The List control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
List control - General 1 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169List control - General 2 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173List control - General 3 page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174List control - Headline page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176List control - Graphic page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177List control - Output page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178List control - Icon page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
List Control - Property Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181Show an ampersand (&) in Caption of a control . . . . . . . . . . . . . . . . . . . . . 194Shadowing effect of control capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195The EPP control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
EPP control - General page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196EPP control - Input page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
The Contents ATM control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198Contents ATM control - General page . . . . . . . . . . . . . . . . . . . . . . . . . . 199ADA configuration panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202Contents ATM control - Function key page . . . . . . . . . . . . . . . . . . . . . . 206Contents ATM control - EPP Keys page . . . . . . . . . . . . . . . . . . . . . . . . 208Contents ATM control - Confirm page . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Content ATM Control - Property Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . 216The Contents STD control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Contents STD control - General page . . . . . . . . . . . . . . . . . . . . . . . . . . 228Contents STD control - Timeout page . . . . . . . . . . . . . . . . . . . . . . . . . . 230Contents STD control - Cancel page . . . . . . . . . . . . . . . . . . . . . . . . . . . 234Contents STD control - Functionkey page . . . . . . . . . . . . . . . . . . . . . . 236Contents STD control - EPP Keys page . . . . . . . . . . . . . . . . . . . . . . . . 239Contents STD control - Step After page . . . . . . . . . . . . . . . . . . . . . . . . 246Contents STD control - Step page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250Contents STD control - Instance return page . . . . . . . . . . . . . . . . . . . . 251
Content STD Control - Property Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . 252The ActiveStep control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268Closing a new browser instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Creating sub routines without opening a new Window . . . . . . . . . . . . . 274Hiding controls with Viewstate variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 274Unicode Versions of the Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275Get number of PIN Digits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
May 2008 V
Contents
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
Web Graphical Service components . . . . . . . . . . . . . . . . . . . . . . . . . . . 279Components of the Internet browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279HTML generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
SNI_PC_VARIABLE WebBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284Inserting a variable in a control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288Formatting settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288Easy multilanguage support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
AllowList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292Structure of the AllowList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294Rejection of selected Internet pages . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Expand external pages with own code . . . . . . . . . . . . . . . . . . . . . . . . . . . 296Printing HTML pages in windows mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 299Switching the Web Graphical Service offline . . . . . . . . . . . . . . . . . . . . . . . 300
Offline Fallback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300Monitoring of navigation to another page . . . . . . . . . . . . . . . . . . . . . . . 301
Starting the Web Graphical Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303Hiding the cursor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Changing the complete frameset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306Changing the complete frameset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307Converting language-specific formats . . . . . . . . . . . . . . . . . . . . . . . . . 308
Memory leak of the Internet Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309Calculation of the current memory usage: . . . . . . . . . . . . . . . . . . . . . . 312
Using the Virtual Keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313Logging the flow of the HTML pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320Resizing the Web Graphical Service on a PC . . . . . . . . . . . . . . . . . . . . . . 321Dialog Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Release specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322Interaction with other frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323Public Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324– Definitions and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325– Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325– Specification of the methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326Access to customer input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340Trace and error logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
PCDialog framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
VI May 2008
Contents
Release specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342Interaction with other frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342Public Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343– Definitions and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344– Additional Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344– Specification of the methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345Trace and error logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Virtual Keyboard Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357Release specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357Interactions with other frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361Public interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362– Defines and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363– Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364– Specification of the methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372– Release specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372– Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372– Public interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373Trace and error logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
WXPTBridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Public interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387PTFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388RegisterForEvents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393DeregisterForEvents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395ConvStr2Hex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396ConvHex2Str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397testErrors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399GetWXText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
May 2008 VII
Contents
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401PTEvent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402PTFunctionEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403BridgeError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404PTCallback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Trace and Error logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Input checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411Calling Format() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412Calling Dialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412Calling Check() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413Input variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413Input status variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415Field sequence control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Input confirmations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417Special input confirmation handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 418Input corrections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Dependent input fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419Input statuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419Editing scanned documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
The Dialog() function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423The Format() function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423The Check() function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424Correction messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425Input attempt counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426Standard input check dialogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Alphanumeric check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427Numeric check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428Date check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429Amount check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Check Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435Release specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435Interactions with other frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436Public Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
VIII May 2008
Contents
– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436– Definitions and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436– Specification of the methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439Trace and error logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Displaying external pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449Configuring external Internet pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449Displaying the cursor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450The navigation button bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Displaying external pages without a navigation button bar . . . . . . . . . . 450Stopping the Internet mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451Access violations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452Accessing https:// pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452Scripting with keys in external pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453Opening, Closing and rezising Popup Windows . . . . . . . . . . . . . . . . . . . . . 453
Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455The Active VarFW control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488The Active DataDict control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489ActivePTSniff Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491ActiveRegistry Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491WXPTBridge Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493Scripting a Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493Logging into Error/Trace Log or Journal by Script . . . . . . . . . . . . . . . . . . . 494
Control of the ADA service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497Starting the service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498Default start values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502Privacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507DataDictionary-Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
ADA Status Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
Customer Relationship Marketing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515Components of the CRM service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516CCCRM framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525– Defines and data structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527– Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
May 2008 IX
Contents
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
– Specification of the methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534CRMContentsCtrl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
– Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558– Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559– Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561– Using EPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562– Using ADA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565– Using PCButton and PCEdit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568– Property page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
Using WebExtensions with CRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579The installation procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579Products to be installed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580Required preinstalled software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583Restart Manager configuration of High Level GS . . . . . . . . . . . . . . . . . . . 583Restart Manager configuration of Web GS . . . . . . . . . . . . . . . . . . . . . . . . 584Repository manager configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585Further configuration settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585Configuration of the softkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586Configuration of variables for all architectures . . . . . . . . . . . . . . . . . . . . . . 588Variables for Web-Extensions/ClassicLink . . . . . . . . . . . . . . . . . . . . . . . . . 592Variables for Web-Extensions/HyperLink . . . . . . . . . . . . . . . . . . . . . . . . . . 593Variables for Web-Extensions/ExtraLink . . . . . . . . . . . . . . . . . . . . . . . . . . 595
Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597Graphical Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
Parameters for CCDialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597Parameters for Virtual Keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601Parameters for surfing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607Parameters for the AllowList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614Parameters for the Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615Parameters for PCView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618Parameters for the HTML generator . . . . . . . . . . . . . . . . . . . . . . . . . . . 623Language specific parameters for the HTML generator . . . . . . . . . . . . 624
Parameters for the ActiveX controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
X May 2008
Contents
General ActiveX parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635Parameters for the Contents STD Control cancel situations . . . . . . . . . 635Parameters for the Contents STD/ATM Control timeout situations . . . . 637Parameters for timeout values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640Parameters for beeping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641Parameters for EPP configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642General parameters for Contents STD/ATM control . . . . . . . . . . . . . . . 648Parameters for the PCButton control . . . . . . . . . . . . . . . . . . . . . . . . . . 651Parameters for the PCEdit control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657Parameters for the PCList control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665Parameters for Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
CCOpen parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691WXCompressHTML tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691WebExtensions HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692Configuring the compressHTML tool . . . . . . . . . . . . . . . . . . . . . . . . . . . 693Current key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694Data key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698How to configure your own rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700Examples of compressed components . . . . . . . . . . . . . . . . . . . . . . . . . 705The tool in action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711Error handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713
Pagelogger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716The log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720The property file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721The script file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722ScriptGen.exe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741
May 2008 XI
Contents
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\W
ebE
xtIV
Z.f
m
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747
XII May 2008
Contents
May 2008 1
Introduction
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
IntroductionThis manual describes the individual Steps that are needed to develop a self-service application using the ProTopas/Web-Extensions or ProTopas/HTML-Dialog.
ProTopas/Web-Extensions or ProTopas/HTML-Dialog allow you to use Internet pages in all ProTopas applications. This means that all ProTopas products can be converted from traditional interfaces to Internet pages without additional programming. You also have almost unlimited options regarding the integration of multimedia objects.
ProTopas/Web-Extensions is able to incorporate new online solution modules, like 1-to-1 marketing solutions, to display product information from the Internet or even to incorporate Internet applications.
ProTopas/HTML-Dialog is the offline version of the ProTopas/Web-Extensions. With ProTopas/HTML-Dialog all Internet pages have to be installed locally on the self-service device. The access is restricted to the file system, so no Pages from any Internet server can be loaded. ProTopas/HTML-Dialog may be used as a lowcost version for using locally installed user interfaces in form of Internet pages. Thus, all Internet technologies may be used, without using any online access. Because the technologies are the same in ProTopas/Web-Extensions or ProTopas/HTML-Dialog, in the rest of the documentation only the product name ProTopas/Web-Extensions is used. If there is any restriction, it is stated separately by using the following icon:
Not available for ProTopas/HTML-Dialog
ProTopas/Web-Extensions is a runtime system which makes it possible for the ProTopas solutions to use all the features offered by Internet technology. The software components are not limited to solutions for a single type of device, and can instead be used for all types of self-service device solutions. Thus, a uniform corporate design can be achieved on all types of device with a minimum amount of effort.
The self-service customer interface is presented in a standard Web browser. Interface elements (graphics, text, buttons, etc.) and multimedia components (sound, video, animations) can be stored locally on the self-service device itself, or centrally on an intranet server (only with ProTopas/Web-Extensions). It is possible to create graphical elements using standard formats and commercially
2 May 2008
Introduction
available tools. Optional access to the interface elements via an Encrypted PIN Pad (EPP) allows the user to input numbers via an EPP and to select functions using the softkeys at the side of the screen.
Modifications can be made to the interface during runtime using standard Microsoft products, e.g. FrontPage, and changes can be called up immediately on the self-service system. This guarantees that you are able to react promptly to the ever-changing requirements of the market.
The basis for integration of new services like 1-to-1 marketing via the Internet on self-service systems is provided by ProTopas/Web-Exten-sions. The incorporation of marketing and sales structures as well as a customer database enables the customer to be addressed directly using standard Internet pages. The interaction between the self-service system and the customer can be implemented using touch-screen technology, softkeys and the EPP (Encrpted PIN Pad). The ProTopas/Web-Extensions controls can be assigned either to softkeys or to EPP keys and can thus trigger a visible reaction on screen.
Targeted access to current information and offers from the Internet is a decisive factor for future customer loyalty strategies. By opening up their terminals in the direction of the Internet, the banks in their role as self-service system installers can introduce additional services to their range including:
car sales,
insurance sales,
travel services and
ticket sales
and thus open up new delivery channels.
The availability of a central Web server in the provider’s network allows you to increase the types of possible access. During a trans-action it will be possible to access both data from the host and documents and Internet pages located on the intranet server. If required, it may also be possible to download and display current pages from the Internet.
The use of standard products, standard protocols and basic Microsoft technolo-gies offers the following additional advantages:
freedom in designing the user interface
May 2008 3
Introduction Take care
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
centralized modification of the self-service application
creation of reusable modules
use of commercially available basic components
assembly of dialog Steps from predefined components
independence of a single central product manufacturer
Take care
ProTopas/Web-Extensions provide a runtime environment for using Internet technology in self-service systems. This enviroment allows the developer to incorporate third party products to provide high sophisticated user interfaces. However, it is not possible for the quality assurance team to test all third party products together with the ProTopas/Web-Extensions. This has to be done in each project, which is using a third party product. It has to be checked before such a component is used, that it is qualified for running in self-service environ-ments (application is running 24 hours a day, 7 days a week; application is never closed; etc.). If an error occurs in Internet pages which contain a third party product, it has to be tested in the project, whether the third party product may cause the error, before reporting the bug to the development team of the ProTopas/Web-Extensions. Please keep in mind, that you will be charged for support, if a reported error is not found in the ProTopas/Web-Extensions themselves, but in the third party product.
There is a knowledge base available in the intranet of Wincor Nixdorf or a printed list of this knowledge base for those who have no intranet access available from the support team, where solutions of known issues and hints linked up with the ProTopas/Web-Extensions are reported.
New since release 1.1/25
1.1/25:
Use of Format FW: The ProTopas Format FW may be used to format Web Bot Variables. There is a new format string, which has to be used here. (see also section ’SNI_PC_VARIABLE WebBot’ on page 285)
4 May 2008
New since release 1.1/25 Introduction
Navigation monitor: The Web Graphical Service gives the possibility to control a navigation to another page with the help of a configuration in the Allow List. The Column 8– OPTIONAL can be used to specify the keyword WXmonitor and WXmarketingmode (see also section ’Monitoring of navigation to another page’ on page 301)
New control ActiveRegistry: This Control is used for scripting only. It is useful for getting REG_DWORD or REG_SZ Parameter values into variables for scripting (see also section ’ActiveRegistry Control’ on page 491).
New control WXPTBridge: This control gives access to all ProTopas Frame-works. It must be used in the Virtual Keyboard instance, when it is used as Marketing window for the access to the EPP Framework. However it may be used to access all other frameworks as well (see also section ’WXPTBridge’ on page 385).
New function Key CONFIRMALL: This value may be used for a special input handling. The customer may fill all edit fields by using the touch screen or the <Tab>, <Cursor up> or <Cursor down> key. After pressing this button all checks of all input fields will be started. When everything is okay, the Web Graphical Service will navigate to the page configured in this key (see also section ’Special input confirmation handling’ on page 418).
With help of the new parameter SetInputFocusNext the cursor is set to the field with the next higher field ID in multiple input pages (see also section ’Field sequence control’ on page 416).
The parameter WorkAroundNoShell (see also section ’Workaround-NoShell’ on page 617) has to be set to 1, if the Web-Extensions are installed in a ProTect environment, otherwise no Popup window will close properly.
The <Cursor up> and <Cursor down> keys act like <Tab> and <Back Tab> now (see also section ’Special input confirmation handling’ on page 418).
Masked edit is possible for the PCEdit control now (see also section ’Masked edit for standard edit control’ on page 145).
To show an ampersand it is necessary to write two ampersands into the text of a visual control. If this text is filled by a variable it might not be possible to have two ampersands. So there is a property to prevent this (see also section ’Show an ampersand (&) in Caption of a control’ on page 194).
The caret (Input cursor) can be hidden now (see also section ’Hide the caret in standard edit control’ on page 146).
May 2008 5
Introduction New since release 1.1/25
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
Parameter NewImmediateTimeout = 0 (see also section ’NewImmedia-teTimeout’ on page 650) is responsible for directly navigating to new page without waiting time. Maybe the waiting time caused problems in some projects using Web-Extensions/ClassicLink.
The multilanguage feature (see also section ’Easy multilanguage support’ on page 289) is supported now. Variables with syntax [%WX_TEXT[Index];Default%] may be used to configure the texts in all HTML pages.
The Virtual Keyboard may be used for Marketing instances as well. New parameter Pos, Left and Top are available now as well as container properties CCVK_VAR_CONTAINER_L[0-255], CCVK_VAR_CONTAINER_S[0-255] (see also section ’Using the Virtual Keyboard’ on page 313). The Virtual Keyboard is supervised by watchdog functionality now.
Edit control may be used for EPP input as well now. EPP control is not necessary any longer and will not be maintained any longer (see also section ’Edit control (PIN input) - General 1 page’ on page 139). With the Edit control scheme support for EPP input is now available.
Icons are supported by schemes now for Button, Edit and List control.
1.1/26:
The cursor position in PCEdit Control can be set to each character in script by use of the function SetSelection(short sStart, short sEnd)(see also section ’Edit control:’ on page 468).
The Virtual Keyboard got a lot of new functions to show or hide, minimize or maximize this browser instance (see also section ’Using the Virtual Keyboard’ on page 313). A new offline event CCVK_VK_OFFLINE is fired, when an problem occurs in this browser (see also section ’CCVK_VK_OFFLINE event’ on page 319). Parameter MAXonStart (see also section ’MAXonStart’ on page 603), MINonEnd (see also section ’MINonEnd’ on page 603) are new.
The handling of the HTML flow support has been enhanced. Now there are two files written. One will be overridden when the other has been filled up (see also section ’Logging the flow of the HTML pages’ on page 320).
6 May 2008
New since release 1.1/25 Introduction
The parameter WorkaroundWhitePopup (see also section ’Workaround-WhitePopUp’ on page 618) may be set to show the windows opened by in a new window when the page is completely loaded. This will remove any white background to be shown, which may flicker.
A new batch file WebAnalysisTrace.cmd for setting the analysis trace of the Web-Extensions is available in C:\ProTopas\Bin.
1.1/27:
The handling for Subroutines has been enhanced. Now it is possible to create subroutines without opening it in a new window. By setting a prefix WN_TFN_FLAT_SELF into the link to the first subroutine page the navigation takes place in the content frame, but the subroutines may still be finished by a navigation to close.htm (see also section ’Creating sub routines without opening a new Window’ on page 274).
Contents ATM Control will throw an error now, when there is an Immedia-teTimeout configured, but EPP Keys is not set to No Input. These pages should be changed, because this is time consuming and needless.
For the Virtual Keyboard the parameter WindowPlacement (see also section ’WindowPlacement’ on page 603) is new. There are new interfaces for logging into trace and error log (see also section ’Using the Virtual Keyboard’ on page 313).
Parameter OfflineMonitorTimer (see also section ’OfflineMonitorTimer’ on page 622) must be set to supervise the navigation to the offline page, when the navigation to an application page is supervised but can not be performed (see also section ’Supervising the monitoring to the first offline page’ on page 303).
1.1/28:
Parameter CursorEnable (see also section ’CursorEnable’ on page 604) specifies, if the cursor shall be visible or not during a virtual keyboard session.
Parameter AutomaticEPPConfigForAllButtons (see also section ’AutomaticEPPConfigForAllButtons’ on page 650) specifies, that all button viewstates (not only those of the function keys) shall be checked for activation to CEN/XFS EPP Service.
May 2008 7
Introduction New since release 1.1/25
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
1.1/29:
If you are working with a EPP keyboard only it is possible to restrict the number of characters to be entered by writing the keyword WX_INPUT_FLAG_CHECKMAXCHARONEPP into the property Additional-Features of the edit control (see section ’Check max. chars for EPP keyboard’).
It is possible now to pass parameter to generated temp files like prot://server/object.ext?parameter=abc and to request them by calling window.location.search in script. Output would be ’?parameter’ in this case.
1.1/30:
The SpinEdit Control is not supported and not included any longer.
The function Log() (see also section ’Log’ on page 399) and the callback event PTCallback() (see also section ’PTCallback’ on page 405)are new in the WXPTBridge control.
There are new keywords in the AllowList at the optional column called WNvikey:START and WNvikey:END (see also section ’Structure of the AllowList’ on page 294)
The additional parameter MarketingAllowFocus allows to give the focus to other windows even when the Virtual keyboard is active (see "MarketingAl-lowFocus" on page 606 in the Parameters chapter).
1.1/32:
The default contents of all paramter containing the font family have been changed from Arial (Truetype) to Arial.
The parameter AllowMarketingFocus allows to set the focus manually even during SOP Sessions, etc. (see also section ’Parameter MarketingAllow-Focus’ on page 320)
The HTML Dialog Control has been enhanced to record all active popup windows during the runtime of a application (see also section ’HTML Dialog Control Version 2242’ on page 311).
The DoDialog() call for a Classic Link application may be supervised by a timer now (see also section ’DoDialog() Safety features’ on page 36).
A new property of the Contents STD/ATM Control may be used to check the initialization status of the control. (see also section ’Contents STD/ATM control:’ on page 465)
8 May 2008
New since release 1.1/25 Introduction
The ActiveDataDictionary Control gets a new property to suppress error loggings. This may be useful for pages with properties whose values are ’property not set’ (see also section ’Active DataDictionary Control’ on page 478).
1.1/33:
There has been a change in the behaviour of the PcButton Step after. It is not possible any longer to press another button, if the first button runs a step after. To reactivate the old behaviour, please set the following undocu-mented DWORD-parameter: ActiveX\PCContents\General\StepAfter-Control with contents 0.
1.1/34:
There is a new parameter MAX_WEBEXTENSION_MEMORY_GROWTH (see "MAX_WEBEXTENSION_MEMORY_GROWTH" on page 689 in the Parameters chapter) of the HTML Dialog Control. It’s a successor of Parameter MAX_MEMORY_USE. Now it is possible to configure the max growth of the Web Graphical service, until it is restarted, i.e. a value of 30 means it may grow 30 MB until restart See also chapter ’HTML Dialog Control Version 2243’ on page 311.
The parameter ROOTPATH (see "RootPath" on page 620 in the Parameters chapter) can use the keyword ATM_PATH_NOLANG to prevent the Web Graphical Service from changing the directory, when using the WX_TEXT variables in all pages for multilanguge support (see "New multilanguage handling" on page 37 in the Parameters chapter).
1.1/35:
The ChangeLanguage() Function of the Web Graphical Service may use the input parameter 999 now. With this function call only the ADA language settings are updated, but no directory, WX_TEXT or format change is done (see also section ’CCDialogFW.ChangeLanguage’ on page 353).
1.1/37:
It is possible to replace variables in HTML Text with syntax [# name of PC variable ; formatting of PC variable; default value of PC variable #] directly. A WebBot is not longer necessary (see also section ’SNI_PC_VARIABLE WebBot’ on page 284).
May 2008 9
Introduction New since release 1.1/25
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
WX_TEXT placeholders can now contain variables, either in the HTML Pge in the WX_TEXT tag (as index or as default value) or in the registry in the constant texts (see also section ’Using variables instead of constants in WX_TEXT’ on page 291).
It is possible to have floating transparencies in PNG Graphics. In former versions it was only possible to have one color for transparencies, so floating was not possibe (see also section ’Screen resolution and colour depth’ on page 60).
The Web Graphical Service can be resized by creating a few registry parameter with the coordinates of the position and size (see also section ’Resizing the Web Graphical Service on a PC’ on page 321).
The Active Data Dictionary Control got a restricted buffer size of 4096 Bytes for setting and getting strings from Data Dictionary values now. This has been done for performance reasons. If a bigger Buffer size may be necessary, it is possible to set a BufferSize property in the control (see also section ’Adapting the maximum buffer size’ on page 491).
The input of an edit control may be automatically deleted now after the input correction message has been shown by setting a new property in the edit control (see also section ’Delete the content after customer error in edit control’ on page 147).
It was not possible to delete the content of an edit field by setting the input variable to an empty string. With new parameter DeleteInputFieldsWith-EmptyString (see "DeleteInputFieldsWithEmptyString" on page 650 in the Parameters chapter) it is possible now.
Shadowing effect of a button, Edit Control and List Control capture: It is possible to use two layer with identical text and different colours to create a shadowing effect of the font (see also section ’Shadowing effect of control capture’ on page 195).
1.2/00:
A new functionality for Marketing integration has been added. Now the virtual keyboard is not used any longer for marketing issues. With this feature a new Marketing Contents Control is introduced, which has to be used in the Marketing Browser Instance only. See also chapter ’Customer Relationship Marketing’ on page 515.
Internet Explorer 7.x may be used together with the Web-Extensions right now.
10 May 2008
Target groups for this manual Introduction
Target groups for this manual
This manual targets project managers and members of development teams, as well as marketing staff, in case the design of self-service user interfaces is involved. It describes how to implement multimedia user interface requirements and the underlying application modules.
Members of the development team should have the following skills:
Familiarity with ProTopas in order to recognize relationships between the individual ProTopas modules
C/C++ knowledge in order to implement application modules
HTML know-how to develop Internet user interfaces
Basic skills in handling Microsoft FrontPage
Structure of the manual
The chapter "Selecting the product version" describes the range of uses for ProTopas/Web-Extensions. In this context, we refer to different architectures.
The chapter "Web-Extensions/ExtraLink" deals with the use of the first of three possible architectures.
The chapter "Web-Extensions/ClassicLink" describes the characteristics of the second architecture.
The chapter "Web-Extensions/HyperLink" shows the differences of the third architecture.
The chapter "Components and system requirements" outlines the functionality of ProTopas/Web-Extensions. It presents modules for the user interface and the application layer, followed by a description of the hardware and software environment requirements.
The chapter "Designing the user interface" gives tips and options for imple-menting an easy-to-use user interface. It also looks at the user interface elements, referred to as controls from now on, that have been developed especially for ProTopas/Web-Extensions.
May 2008 11
Introduction Structure of the manual
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
The chapter "Controls" follows immediately, and describes the configuration options for ProTopas/Web-Extensions controls in order to implement the user interface described above. This is followed by a section on closing a browser window that has been opened with these controls.
The modules for presenting the user interface and the browser components are referred to as the Web Graphical Service. The chapter "Web Graphical Service components" deals with the individual modules. This is followed by a programming reference for the Dialog Framework.
The WXPTBrigde is introduced in the next chapter. It may be used to access ProTopas frameworks for the pages directly in script.
A separate chapter is dedicated to "Input checks" in ProTopas/Web-Extensions. It explains the functions and the handling of inputs. A programming reference closes this chapter.
Some parameterization steps are needed to display HTML pages from outside the ProTopas/Web-Extensions application. The chapter "Displaying external pages" describes configuration options, and restrictions on loading HTML pages that are external to the product.
Scripts can be called to design the contents of a page more flexibly. A chapter "Scripting" describes the scripting interfaces of the ProTopas/Web-Extensions controls, as well as the control interfaces to access data from ProTopas modules.
An introduction of the ADA features in the ProTopas/Web-Extensions follows. The configuration of the Text-To-Speech possibilities in the ProTopas/Web-Extensions is content of this chapter.
The chapter Customer Relationship Management contains information about the ProTopas/Web-Extensions solution in displaying marketing pages together with the application. The speciality here is the possibility of an interaction with the application but a separation of the flow of marketing pages.
A chapter "Installation" describes the handling required to install the ProTopas/Web-Extensions correctly on a system upon which the ProTopas/Manager has previously been installed.
The "Configuration" chapter explains the configurations which are performed automatically by the installation program in order to improve knowledge of necessary changes during a manual installation of the ProTopas/Web-Exten-sions.
The chapter "Parameters" contains a detailed list of all ProTopas/Web-Exten-sions parameters.
12 May 2008
Typographical conventions Introduction
The manual closes with various lists: Abbreviations, glossary, documentation, figures and index.
The interface descriptions are provided as a programming reference.
Typographical conventions
References to manuals
Times New Roman, italics and bold
System messages, examples and source code
Courier
Parameters
Italics and bold
Properties (parameters for the controls)
Italics
Variable names, HTML page names
CAPITALS
Function keys and selection buttons
<In angled brackets>
Path, directory, file and menu names, screen elements
Courier and italics
Pictograms
This pictogram indicates warnings and hints that can lead to problems if not observed.
May 2008 13
Introduction Typographical conventions
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Ein
leitu
ng.
fm
This pictogram indicates references
This pictogram indicates tips and tricks
This pictogram indicates registry entries
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/ClassicLink
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/HyperLink
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/ExtraLink
This pictogram indicates enhancements from Version 1.1/2x up to now.
This pictogram indicates that this issue is not available for ProTopas/HTML-Dialog.
14 May 2008
Typographical conventions Introduction
May 2008 15
Selecting the product version Web-Extensions/ExtraLink
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Aus
prae
gun
g.fm
Selecting the product versionThe ProTopas/Web-Extensions can be installed in different environments. They can be used to extend existing solutions based on traditional interfaces as well as to adapt existing interfaces to the use of Internet pages without having to make adjustments to the application itself. In the case of traditional applications, the application itself assumes control. ProTopas provides the Script Framework, which enables individual transaction modules are concatenated via parameter-ization. A different version of ProTopas/Web-Extensions permits control to be assumed by links in Internet pages. In this case, the ProTopas Script Framework is not required.
This chapter describes the three product versions, underlining the advantages of each. The ProTopas/Web-Extensions contain the requisite modules for all versions. The differences are described in separate sections in this chapter.
Web-Extensions/ExtraLink
In the event of coexistence with traditional user interfaces, the aim is to integrate the ProTopas/Web-Extensions to enable existing applica-tions to integrate Internet applications as additional transaction Steps. The customer himself determines what contents the Internet pages will display. The possibilities range from simple product infor-mation to interactive Internet applications. However, if the self-service hardware is to be used for inputs, the controls of the ProTopas/Web-Extensions must be used as they permit allocation to softkeys and the Encrypted Pin Pad (EPP).
This is normally achieved by extending the menu. Selection of a new function activates the Web Graphical Service of ProTopas/Web-Extensions and moves it to the foreground. However, this is only a viable option with interfaces which offer an option for switching the interface to the foreground. The ProTopas Graphical Service modules for ProCash, ProPrint and the High Level Graphical Service CCDialog all support this.
At this point, it is necessary to make extensions to the traditional application. The start page which is to be loaded by the Web-Extensions must be activated. The interface of the ProTopas/Web-Extensions must be switched to the foreground. The traditional application waits for the Web transaction to end, evaluates the return code and can then continue with the existing transaction.
16 May 2008
Web-Extensions/ClassicLink Selecting the product version
Fig. 1: Web-Extensions/ExtraLink
Web-Extensions/ClassicLink
This version of the ProTopas/Web-Extensions permits the interface of an existing application can be changed into Internet pages without any extra programming work. This has the advantage that it is easier to integrate multi-media components and Internet applications.
This is possible without programming work in ProTopas-Steps for all applica-tions which are based on the ProTopas High Level GS CCDialog. The other applications have to modify the interface which loads the user interface.
The ProTopas High Level GS uses dialog names as a basic unit for structuring the interface. These dialog names form the page names during creation of the Internet pages. At the same time, it means that each configured dialog must be converted to an equivalent Internet page. Some features of the ProTopas High Level GS, such as configuration via macros, cannot be implemented 1:1 in Internet pages. Such places will either require script programming or an extension to the application in order to achieve the same results.
Web-Extensions/ExtraLink:Technical View
Traditional User Interface for existing Applications
Use of Internet pages for- 1-to-1 Marketing- Personalization- Advertisement- ...
OK DruckenAbbruch Hilfe
Restart
EPP CDM
IDCU Printer
DialogHost
Transaction
Script FW
Service
OK DruckenAbbruch Hilfe
DialogOK DruckenAbbruch Hilfe
May 2008 17
Selecting the product version Web-Extensions/HyperLink
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Aus
prae
gun
g.fm
In this product version, the ProTopas/Web-Extensions are programmed in such a way that the interfaces are identical to those of the ProTopas High Level GS. Correspondingly, changes to the configuration will enable the application to operate with Internet pages once these have been created.
Extensions in the form of display of product information or complete Internet solutions will also operate in this version of the product. However, it will be necessary to make extensions to the application in order to call the new Internet pages via the interface and to evaluate the return codes.
Fig. 2: Web-Extensions/ClassicLink
Web-Extensions/HyperLink
This product version comes closer to the process involved in a pure Internet solution as it operates with links to workflow processing. However, the appli-cation is still positioned locally on the self-service device and not on the Internet server. application programmers have the opportunity to access the application on each Internet page and to initiate control of the hardware or address of the server/host. The responses from the application can, in turn, effect a link to a new Internet page.
Use of Internet pages for- Existing application- 1-to-1 Marketing- Personalization- Advertisement- ...
Second Dialog not applicable
Web-Extensions/ClassicLink: Technical View
OK DruckenAbbruch Hilfe
Restart
EPP CDM
IDCU Printer
Host
Transaction
Script FW
Service Dialog
OK DruckenAbbruch Hilfe
OK DruckenAbbruch Hilfe
Dialog
18 May 2008
Web-Extensions/HyperLink Selecting the product version
On the other hand, each button can effect a link to a new Internet page. It is thus extremely simple to provide product information with this version. If the self-service hardware is to be used for input, the controls of the ProTopas/Web-Extensions should be used since these controls can be used to make assign-ments to softkeys and to the EPP keypad.
The integration of Internet solutions is easiest to implement with this archi-tecture as it only requires the appropriate links to be placed on the Internet pages. The application itself is not affected by this Step.
If the self-service hardware is to be used from within an Internet solution (e.g. for printouts or to request insertion of a card), this product version can be used to address the appropriate hardware. Return codes issued by the hardware are presented as links to new Internet pages. Unsuccessful printing may therefore display an error message page, whereas successful printing branches to document removal.
Fig. 3: Web-Extensions/HyperLink
Use of Internet pages for- Application- 1-to-1 Marketing- Personalization- Advertisement- ...
Workflow processing consists of links to Internet pages
Second Dialog and Script FW not applicable
Web-Extensions/HyperLink:Technical View
Restart
EPP
IDCU
CDM
Printer
DialogHost
Transaction
Script FW
OK DruckenAbbruch Hilfe
Service Dialog
OK DruckenAbbruch Hilfe
OK DruckenAbbruch Hilfe
May 2008 19
Selecting the product version Areas of use for the product versions
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Aus
prae
gun
g.fm
Areas of use for the product versions
The question arises as to which product version is most suitable for which appli-cation. This question does not apply to Web-Extensions/ExtraLink. This version is always used when Internet solutions are to be added to existing applications. The technology on which the extension is based also makes use of the other two versions. Either the interface of the dialog FW is used to enable each page of the Internet solution to be called from the application or the dialog FW interface is used to display the first Internet page only, which then switches automatically and transfers to the architecture Web-Extensions/HyperLink.
If the interface of an application that has been created with the ProTopas High Level Graphical Service is to be converted to Internet pages, the version Web-Extensions/ClassicLink must be selected. This always applies if application modules already exist and are to be reused. These application modules normally also control the user interface by invoking an interface function. appli-cations which do not use the ProTopas High Level Graphical Service but which are to be converted to Internet pages can implement the ProTopas High Level Graphical Service via a simple method. applications with a high percentage of HW accesses or emulations which are largely operated via the host interface should also use this architecture.
If an application is being newly created or if only a few application modules are available, Internet pages can be linked to workflow processing. In this case, it is very simple to integrate Internet solutions. This architecture should therefore be given preference if several Internet solutions are being integrated. The same applies to application modules whose content is highly informative, i.e. which only consist of Internet pages with links to other Internet pages.
Similarities and differences
The product versions described in this chapter mainly use the same modules. Even if workflow processing is sometimes driven by the application and sometimes by the Internet pages, the two architectures only differ in one control. The Contents Std control is used for control from the Internet pages. Parame-terization enables an application Step to be activated. For each of the possible 20 return codes a link to another Internet page can be specified. The Contents ATM control, which is used for the Web-Extensions/ClassicLink, has a far simpler design. In this case, it is only the page timeout that will normally need to be specified.
20 May 2008
Similarities and differences Selecting the product version
The component of the Graphical Service, CCDialog.exe, is identical in all versions. All controls, apart from the two Contents controls, are used in both architectures. The Web-Extensions/ExtraLink version does not have its own control, as it uses the other two versions.
The handling of input fields, input checks and list boxes is identical in all archi-tectures. In the case of Web-Extensions/ClassicLink there are no menu buttons, as each button in this architecture responds to the interface with a return code, while menu buttons are configured for links to Internet pages.
The method for calling external Internet pages differs in the two architectures. In the case of Web-Extensions/HyperLink, it is only necessary to configure a link in a menu button or selection button. With Web-Extensions/ClassicLink, an extension must be made to the Transaction Framework in order to load the first external page (see also section ’Loading external Internet pages’ on page 32).
Configuration of the Restart Manager is identical in all architectures (see also section ’Restart Manager configuration of Web GS’ on page 584).
The chapters that follow contain many references to differences between the architectures. The pictograms below indicate the sections containing archi-tecture-specific configurations or features. All other chapters apply to all the architectures.
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/ExtraLink
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/ClassicLink
This pictogram indicates chapters which describe configurations for the architecture Web-Extensions/HyperLink
May 2008 21
Web-Extensions/ExtraLink
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Tra
diti
one
llSta
rte
n.fm
Web-Extensions/ExtraLinkThis chapter describes how Internet solutions or simple Internet pages are called from an application that was developed with ProTo-pas modules. It is necessary to make extensions to the application modules in order to switch the interface of the Web Graphical Service to the foreground and to load the first Internet page.
Let us start one Step earlier: For performance reasons, the Web Graphical Service must be started together with the application or, preferably, prior to the application so that the Standard Graphical Ser-vice overlays the Web Graphical Service. This is necessary so that the Web Graphical Service is initialized and ready to accept the inter-face functions.
To load the Web Graphical Service and to keep it in the background the Startpage must not contain any of the ProTopas/Web-Extensions Controls. Nor-mally in an Web-Extensions/ClassicLink or Web-Extensions/HyperLink archi-tecture the Startpage must contain the Contents STD/ATM Control. In this case, if the Standard Graphical Service should display the startup sequence, the startpage can contain any background, but none of the controls. To advice the Web Graphical Service not to wait for loading the Startpage additionally the fol-lowing parameter has to be set to ’1’.
HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\ProTopas/CurrentVersion/ÁctiveX/
GraphicalService/PCView
DontWaitForPCContentsOnOpen = 0x00000001
This Parameter must be activated on Web-Extensions/ClassicLink or Web-Extensions/ExtraLink!
Restart manager configuration
To work with Standard Graphical Service and Web Graphical Service, which both have the same framework name CCDialog, Web Graphical Service has to get another Framework name. In addition to the Standard Graphical Service, the Web Graphical Service must be started seperately in the Restart Manager section. As an input parameter, the new name of the Web Graphical Service has to be added:
22 May 2008
Web-Extensions/ExtraLink
HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\ProTopas/CurrentVersion/CCOPEN/
RESTART/application1
CCDialog=C:\PROTOPAS\BIN\CCDialog.EXE,4,0,6,,,WebDialog
Web Graphical Service registers itself with this new name in ProTopas. This means, that all frameworks, which base on Web Graphical Service have to be started later than Web Graphical Service in the Restart manager section. Those frameworks are at least HTML Dialog Control, Check Framework and Transac-tion Framework. So it is the best to split up the application Parameter in application1 and application2, where application1 keeps all the parameters from application without HTML Dialog Control, Transaction Framework Pre-sentation Framework and Standard Dialog Framework, which keeps application2. application1 may be started before Web Grafical Service and application2 after.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
application=C:\PROTOPAS\BIN\FwLoadPm.EXE,4,1,21,,,CCPresFWCCDialog CCTransactionFW HTMLDialogControl
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
Programs=CCBase,CCBaseCtrl,application1,CCDialog,Appl_Check,application2,CCStart
Data Dictionary configuration
The next problem is, that all Data Dictionary entries, which were registered for CCDialog have to be changed to WebDialog (name of the input parameter for CCDialog.exe). This may be done by calling
\ProTopas\Bin\CCRcConv \ProTopas\Conf\DatadictEx-traLink -t DataDict -b -U
May 2008 23
Web-Extensions/ExtraLink
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Tra
diti
one
llSta
rte
n.fm
Changing the Transaction Framework
Inlude additionally the PCDialog.xpp and add a Proxy for WebDialog
Class definition in the .hpp header file:
...#include PCDialog.xpp#include CCDialog.xpp...
private:PCDialog myWebDialog; // proxy of Web DialogCCDialog myDialog; // proxy of Std Dialog
...
Implementation in the .cpp program file:
...// open the dialog frameworksmyWebDialog.Open();myDialog.Open();
...
Two functions have been created for the switch to the foreground and, subse-quently, back to the background (see also section ’CCDialogFW.Activate’ on page 339).
Activate(): Switches the Web Graphical Service to the foreground
Deactivate(): Switches the Web Graphic Service to the background.
At the point in the application at which the Internet pages are to be called, the call first switches the Web Graphical Service to the foreground and then loads the Internet start page:
Implementation in the .cpp program file:
...// Call ChangeLanguage to bring Web Dialog into a // mode, that it loads the next Internet page into// full screen mode and needs no content control// at next pagemyWebDialog.ChangeLanguage(CurrentLanguage);
// Deactivate Std DialogmyDialog.Deactivate();// Bring Web Dialog to top
24 May 2008
Web-Extensions/ExtraLink
myWebDialog.Activate();
// Load Internet Startpagerc = myWebDialog.DoDialog(’Start’);
...
This program section then waits until the Web Graphical Service responds with a return code. Meanwhile, the Web Graphical Service is active and it is not the self-service application that is responsible for handling the dialogs but usually a Web server. Following the return of the Web Graphical Service this is deacti-vated and the Standard Graphical Service again moved to the foreground.
Implementation in the .cpp program file:
...// Deactivate Web Dialog for SOP RequestsmyWebDialog.Deactivate();// Bring Std Dialog to topmyDialog.Activate();
// Check the returncodeif (rc != CCDIALOG_ERROR){
// Proceed in your coderc = myDialog.DoDialog(’Menu’)...
}...
The Internet page Start.htm does not contain a control but only a script which calls the first page of the Internet solution.
Syntax of the HTML page script:
<SCRIPT ID=clientEventHandlersVBS LANGUAGE=vbscript><!--Sub window_onload()
window.navigate("http://www.wincor-nixdorf.com")End Sub--></SCRIPT>
On the last page of the Internet application, workflow processing must be returned to the application. Like the start, this is also executed in the script, by navigating to an Internet page consisting of a certain syntax:
May 2008 25
Web-Extensions/ExtraLink
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Tra
diti
one
llSta
rte
n.fm
<SCRIPT ID=clientEventHandlersVBS LANGUAGE=vbscript><!--Sub window_onload()
window.navigate("PCEvt:RC=0")End Sub--></SCRIPT>
Syntax for sending return codes to the application
Identification that navigation is not taking place but that a return code is being sent to the application:
PCEvt:RC=n (n = 0 to -7, cf. description of return codes in the CCDi-alog.xpp)
The handling described above permits external Internet pages to be displayed. In addition, the Internet pages that are to be loaded must be declared to the Web Graphical Service (see also section ’AllowList’ on page 292).
Configuration of the start page
Originally the start page has to contain a Contents ATM Control, otherwise the Web Graphical Service does not return from the Open() function (see also sec-tion ’Starting the Web Graphical Service’ on page 303). In the Web-Exten-sions/ExtraLink architecture, it is often not possible to have a Contents ATM Control on the start page, because the Web Graphical Service will be switched to foreground when the Contents ATM Control is activated. Normally it should wait for activation in the background. So the parameter DontWaitForPCCon-tentsOnOpen (see also section ’DontWaitForPCContentsOnOpen’ on page 621) has to be set to 1. In this case no Contents ATM Control must be present at the start page.
Activating first page in Web-Extensions/HyperLink after Activate()
If the main application is programmed in Web-Extensions/HyperLink architec-ture, and the second application is a Web-Extensions/ClassicLink application with web interface, and both applications shall not base on each other, there may be a problem to reactivate the Web-Extensions/HyperLink application at the end of the other. For this reasons, there is a parameter, which starts the first page after Activate() function call from Web-Extensions/ClassicLink appli-cation. This parameter is
26 May 2008
Web-Extensions/ExtraLink
HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\ProTopas/CurrentVersion/ÁctiveX/
GraphicalService/PCView
ActivatePageURL =C:\ProTopas\Web\English\restart.htm
In this page the Contents STD Control may start the next Step, so the Web-Extensions/HyperLink application may continue.
Configuration of the High Level GS to work with SNIKEYCODES = 0
As mentioned in chapter Configuration of the softkeys (see page 586), the Parameter SniKeyCodes has to be set to 0. The High Level Graphical Service needs a special configuration to work with this setting. In the \ProTo-pas\Conf directory you will find a SetupHlgsKeys.cmd job, which is updating the Keys configuration for the High Level GS. Please update the con-figuration for the High Level GS, if you want to use it toghether with the Web GS.
May 2008 27
Web-Extensions/ClassicLink Value of a softkey
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
Web-Extensions/ClassicLinkIn this product version, the dialogs that were created for the ProTopas High Level Graphical Service are converted to Internet pages. In the best scenario, it is not necessary to make any changes to the corre-sponding application. This chapter refers to some of the special features of dialog conversion.
A dialog normally consists of numerous parameters which describe the appearance of a screen mask. When converting these to Internet pages, it is preferable to note the contents of the masks during runtime and subsequently to use an Internet page creation tool such as Microsoft’s FrontPage to implement them manually. An automatic conversion tool does not exist.
The implementation rules of the High Level Graphical Service applies to appli-cations which are to be newly created and which require the ProTopas Script FW to control workflow processing, as described in the application Development Tutorial in the chapters Adding a Graphical User Interface and Adding Customer Input. Besides, this manual contains an extract from the programming interface of the High Level Graphical Service - only the part which is identical to the Web Graphical Service (see also section ’Dialog Framework’ on page 322). The differences between the two Graphical Services are dealt with in the following chapters.
The Contents ATM control is used in this architecture. The Contents STD control is not applied here. All other controls are used together with all WebExtension architectures.
Value of a softkey
Special attention must be given to the meaning of softkeys, since the values of the softkeys must be identical in the High Level Graphical Service and in the Web Graphical Service. Dialog elements of the type FUNCTION_INPUT must therefore be considered for dialogs with softkeys. These parameters are used to define which value - in the form of a string - each softkey returns to the appli-cation. The application queries these values using the function GetInput-String() (see also section ’CCDialogFW.GetInputString’ on page 335).
28 May 2008
Input fields Web-Extensions/ClassicLink
The Web Graphical Service provides the same function in order to inform the application of the value of a softkey that is pressed. It is only the parameter-ization that differs. Initially, all values which are found for the Web Graphical Service in the different dialogs of the High Level Graphical Service under the Registry key
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonSelection
Readable name of Selection Button Value
must be input on the development system for the Web interface. The entries under Readable name of Selection Button are listed during creation of Button Control (see also section ’Button control - General 2 page for selection buttons’ on page 91), when the button type Selection button is chosen. It then only remains to position the right button on the right Internet page for the designer.
Example: For an amount selection of 100.-, 200.-, 300.- and 400.- the application needs to know, which values has been pressed. The appropriate Step expects the values 100, 200, 300, 400. If another person than the Step programmer himself is creating the amount selection page, this other person must normally know, which values he has to assign to the button. It is much more easy for the designer of the page to have Readable names of Selection Buttons, instead of dealing with program values. So in the example the readable names in the registry will be Amount 100, Amount 200, Amount 300 and Amount 400. Because of this matter, all necessary Selection Buttons and their values have to be set into the registry before the designer of the page starts his job. When he creates the buttons he only selects from the readable names, not from the values.
Input fields
Input data for both Graphical Services is read out using the same function as the softkey values. However, the Web Graphical Service is much more powerful in handling inputs than the High Level Graphical Service. Not simply because it is simpler to handle several input fields on one page but also because the inputs are directly checked and correction messages for the customer supported. Support is also provided for a context-sensitive help for each input field, with radio buttons representing an exception as input field in this case (see also section ’Edit control - General 2 page’ on page 126).
May 2008 29
Web-Extensions/ClassicLink Input fields
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
Initializing input fields
Since the Web Graphical Service also provides for presetting input fields with values which can be received from the host, this handling has been imple-mented so that presettings only have to be made in the input variable and are thus automatically displayed.
At the same time, this means that input variables must be initialized for each transaction, to avoid displaying the previous customer’s data in the input fields. If the application does not initialize the input fields, and if the application is not to be changed, the checkbox of the Edit Control Don’t display preliminary input (see also section ’Edit control - Input page’ on page 131) must be activated. In this case, the input variable, the unformatted input variable, the input status variable, the variable for the number of input attempts and the variable for the maximum number of characters that can be entered must be initialized.
Structure of the correction message pages
In the case of the Web Graphical Service, a check routine must be defined for each input field to check that the input is correct when the <Confirm> button has been pressed. Different return codes can be issued for different checks. The name of an Internet page must be specified for each return code, which then overlays the input page in the manner of a popup window. The size and position of this page is freely selectable. The application does not register this event.
The popup Internet page can contain a button, for example <Correction>, which is activated by pressing the button with the equivalent label on the EPP. This key closes the popup page. If such handling is required, a Contents ATM control and a button of the type Selection must be created on this page. The key must have the predefined value Close-Popup-Window and, in contrast to the other selection keys, navigate to an HTML page. The name of the HTML page is CLOSE.HTM. This automatically closes the popup page.
The Contents ATM control has another special feature: The timeout of a popup page must not by monitored by the Contents ATM control. If the Contents ATM control were to register a timeout, it would send the Timeout return code to the application. However, this is not desirable in the case of popup pages. Accord-ingly, the Contents ATM control is assigned an Endless Timeout.
The timeout itself is monitored by the following script:
30 May 2008
Implementing dynamic selection dialogs Web-Extensions/ClassicLink
<SCRIPT ID=clientEventHandlersVBS LANGUAGE=vbscript><!--Sub window_onload()
’close after 10 seccall window.setTimeout("call
Contents.NavigateGotoURL(’close.htm’)", 10000)end sub--></script>
The script function window.setTimeout() has, as its first parameter, the name of the Internet page to which navigation is to lead after a timeout and, as its second parameter, the timeout length in milliseconds. In the example shown above, the name of the Internet page to which navigation will lead is CLOSE.HTM. This results in a close of the new window. The timeout in the second parameter of window.setTimeout() is set to 10 seconds.
Navigation to CLOSE.HTM in the script through Window.navigate:
Contents.NavigateGotoURL(’close.htm’)
Implementing dynamic selection dialogs
Dynamic dialogs may be integrated into existing applications which have run to date with the High Level Graphical Service; these will have to be transferred to the Web Graphical Service during conversion. This uses the macro feature of the High Level Graphical Service, which enables interface elements to be combined to form units. These units can be referenced at the places in which the individual elements are normally parameterized. The macros can be changed during runtime.
Each application uses a different implementation in order to create dialogs dynamically. Dynamics are always required if the display of menu or selection pages is determined by data from the host system during runtime. The Web Graphical Service also permits buttons to be displayed or hidden at runtime. To this effect, variables are set prior to display of the appropriate page, which activate, disable or hide button controls or input and list controls (see also section ’Hiding controls with Viewstate variables’ on page 274).
May 2008 31
Web-Extensions/ClassicLink Implementing dynamic selection dialogs
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
So that existing applications which use dynamic dialogs do not have to be changed, the variables of the controls of the Web Graphical Service must be assigned to the values set for the application. This can be effected via a script in an overlay page. The following is an example:
<a ID="WN_GOTO" href="MultipleSelection.htm" target="_self"></a>
<object classid="clsid:B2ED2838-FD46-11D2-961D-0800060BD9E4" id="ActiveDataDictFW1" width="100" height="50">
<param name="_Version" value="65536"><param name="_ExtentX" value="2646"><param name="_ExtentY" value="1323"><param name="_StockProps" value="0">
</object>
<script LANGUAGE="VBScript"><!--
Sub window_onload()
’ Set State for Button Control 1
’ Get Macro-Value from applicationActiveDataDictFW1.VariableName ="CCTAFW_PROP_DIALOG_BUTTON(1)"Button1 = ActiveDataDictFW1.VariableValue
’ Get Returnvalue of Button from applicationActiveDataDictFW1.VariableName ="CCTAFW_PROP_DIALOG_INPUT(1)"Input1 = ActiveDataDictFW1.VariableValue
if Input1 = "" thenif Button1 = "" then
’ Button Control hiddenButton1_Viewstate = 3
else’ Button Control disabledButton1_Viewstate = 2
end ifelse
’ Button Control activeButton1_Viewstate = 0
end if
32 May 2008
Loading external Internet pages Web-Extensions/ClassicLink
’ Set the viewstate variable of Button Control 1ActiveDataDictFW1.VariableName ="VAR_BUTTON1_VIESTATE_S"ActiveDataDictFW1.VariableValue = Button1_Viewstate
’ Set State for Button Control 2 to 8...
’navigate to next pageWN_GOTO.click()
end sub
--></script>
Initially, an anchor is placed on the page, which navigates to the following page once the script has been executed. This occurs when WN_GOTO.Click() is called at the end of the script. Secondly, a Data Dictionary control is created on this page in order to set and to read variables from the Data Dictionary FW.
The above example uses two variables which describe a macro and the value of a pressed button. If both variables are empty, the corresponding button is hidden in this configuration of the High Level Graphical Service. If it is only the macro which is empty, the button is displayed as disabled. In all other cases, the button is displayed as active.
In order to obtain the same view in the Web Graphical Service, the Viewstate variable of the corresponding button control is filled out in the script. This must be performed for each button. Navigation then moves to the next page which is to be set up dynamically.
If it is not only interface elements which are to be displayed or hidden but if the label and return value of a pressed button are also to change dynamically, these values must be displayed in the form of variables which are changed by the HTML generator prior to display into current contents from the Data Dictionary (see also section ’Inserting a variable in a control’ on page 288).
Loading external Internet pages
In contrast to the procedure under Web-Extensions/HyperLink, by which external pages can only be implemented via a button control link and parameterization of the AllowList, in the case of Web-Exten-sions/ClassicLink the application must be extended.
May 2008 33
Web-Extensions/ClassicLink Loading external Internet pages
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
Parameterization of the AllowList, the structure of the navigation button bar and access protection is identical for all product versions (see also section ’Displaying external pages’ on page 449).
Calling the first page external to the product
For displaying marketing or customer specific Internet pages the ProTopas Transaction Framework has to be changed. In the Step, which shall load the new page a DoDialogAsync() function must be implemented. DoDialo-gAsync() is the best to use, because the function will not wait for any retruncode from the Web Graphical Service.
No Contents ATM Control may be configured in the loaded page. The new page should include a script which automatically branches to the first external Internet page:
<script language="VBScript">
window.navigate("http://www.wincor-nixdorf.com");
</script>
As the Web Graphical Service monitors all navigation, it uses the parameter-ization of the AllowList to detect that the page being loaded is an external page. As soon as the Web Graphical Service recognizes that an external page is being loaded, GetbStatus() is set to NOT_OPERATIONAL as no new page can be loaded via DoDialog()in this mode. Accordingly, the navigation button bar is displayed. The application receives no return codes from this link or any subsequent links within the external Internet pages. There is an ProTopas event posted, when the display mode for external pages is exited. The Step may use this event or request the state of the Web Dialog to know, when the diplay mode for external pages is exiting.
Exiting the display mode for external pages
The display of external Internet pages is exited either by pressing the Cancel button on the navigation button bar or on the EPP or if a timeout for the external pages occurs (see also section ’Structure of the AllowList’ on page 294). In this case, the Web Graphical Service starts with the page which is entered in the parameter StartPage (see "StartPage" on page 615 in the Parameters chapter). At the same time, the event CCDIALOG_MODE_SURFING_END is fired. However, the application cannot immediately load a new dialog, as the Web
34 May 2008
Loading external Internet pages Web-Extensions/ClassicLink
Graphical Service may not have been reinitialized at the moment the event was fired. For this reason, the status should be queried by calling the function GetbStatus() in a loop. If the function GetbStatus returns CCDIALOG_OPERATIONAL (0), the application is again able to load any product-related page.
This results in the following procedure for the application:
SHORT ShowDialogWebStep::Process (PCHAR szStepParams){
SHORT sRc = Step_NEXT_1,sRet = 0;CCFRMW_JOB_STATUS pJobState;TX_SELF.fStatusWEB = FALSE;
TrcWritef (T_TRACT_1, "> ShowDialogWebStep::Process (%s)",szStepParams);
TrcWritef (T_TRACT_1, "1 .CCDIALOG.GetbStatus:%d",DIALOG_FW.GetbStatus());
memset(&pJobState,0,sizeof(CCFRMW_JOB_STATUS));DIALOG_FW.DoDialogAsync(&pJobState,szStepParams);TrcWritef (T_TRACT_1, "2 .CCDIALOG.GetbStatus:
%d",DIALOG_FW.GetbStatus());
// Serialize browser instance statuswhile(DIALOG_FW.GetbStatus()==CCDIALOG_OPERATIONAL){
TrcWritef (T_TRACT_1, "CCDIALOG.GetbStatus returnsCCDIALOG_OPERATIONAL");
CCSleep(100);}
while(DIALOG_FW.GetbStatus()==CCDIALOG_NOT_OPERATIONAL){
TrcWritef (T_TRACT_1, "CCDIALOG.GetbStatus returnsCCDIALOG_NOT_OPERATIONAL");
CCSleep(100);}
TrcWritef (T_TRACT_1, "< ShowDialogWebStep::Process ()returns %d", sRc);
return (sRc);} /* ShowDialogWebStep::Process () */
May 2008 35
Web-Extensions/ClassicLink Loading external Internet pages
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
Loading product-related Internet pages from another Internet address
The Web Graphical Service always loads the application pages from the same Internet address. This is defined by the parameter RootPath (see "RootPath" on page 620 in the Parameters chapter), the set language and the Internet page that is to be loaded (see "Starting the Web Graphical Service" on page 303 in the Parameters chapter).
Cases are conceivable in which product-related Internet pages are to be loaded from another address. In this case, a keyword ATM_ABS_NAV must be placed before the function DoDialog() as the transfer parameter for the Internet page that is to be loaded, directly followed by an absolute Internet address:
Example: DoDialog("ATM_ABS_NAVhttp://www.wincor-nixdorf.com");
This navigation results in navigation taking place not in the current frame but in full-screen mode. If the application uses a frameset, the page that is loaded with ATM_ABS_NAV must also be a frameset.
If several Internet pages are to be loaded in succession from one and the same address, the keyword ATM_ABS_NAV must be placed before each call to load these pages.
Loading external pages without navigation bar
If pages shall be shown in the same context as the product-related ones, their adresses have to be added in the Allow List (see also section ’Structure of the AllowList’ on page 294). The column Generate is responsible for showing the navigation bar (0) or not (1). If no navigation bar is shown the pages itself have to care about the possibility for the customer to cancel the page and the return to the product related paged. At least the Timer in the Allow List is responsible for returning.
To start into this mode it is best to show a Dialog, which contains a script for loading the first external page. The link from this page to another is done by normal Internet links. The application still waits for a returncode from the DoDialog() call. If the sequence of external Pages should be stopped, the following script has to be used:
<script language="JavaScript">
36 May 2008
Loading a frameset without ChangeLanguage()Web-Extensions/ClassicLink
// return code for offlinewindow.navigate(’PCEvt:RC=0’)
</SCRIPT>
(see also section ’Syntax for sending return codes to the application’ on page 25)
Loading a frameset without ChangeLanguage()
Another keyword that is used for navigation apart from ATM_ABS_NAV is ATM_TOP_NAV. It loads the next page in full-screen mode. This can also be achieved by calling ChangeLanguage()(see also section ’Starting the Web Graphical Service’ on page 303). Like ATM_ABS_NAV, ATM_TOP_NAV is also placed in front of the name of the Internet page.
Example: DoDialog("ATM_TOP_NAVMyFrame");
ATM_TOP_NAV thus destroys the current frameset and loads the next page in full-screen mode. Following the call, a new frameset will generally have to be displayed.
DoDialog() Safety features
Because there were some problems with loading of the Web pages after a DoDialog() call here is a possibility to supervise the loading time with a timer. If the Parameter DoDialogTimer (see ’DoDialog-Timer’ in the Parameters manual on page 600) is set to a value larger than 0, this is the time the Web Graphical Service might use until the page is loaded and the Contents ATM Control is activated. If the timer expires before the control is activated the Web Graphical Service will reboot the system.
This value has to be carefully tested. If the application has to run on different hardware, a test on each hardware platform should be mandatory.
May 2008 37
Web-Extensions/ClassicLink New multilanguage handling
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Aus
taus
chO
ber
flae
che.
fm
After the Contents ATM Control has been activated the timer is reset to a new value, which is now the page timeout added with the contents of the parameter DoDialogTimerPageTimerExtend (see ’DoDialogTimerPageTimerExtend’ in the Parameters manual on page 600). If the page is not unloaded properly and this timer expires, the Web Graphical Service will reboot the system here as well.
New multilanguage handling
In the Web-Extensions/ClassicLink architecture multiple languages can now even be handled by use of the WX_TEXT support (see also section ’Easy multilanguage support’ on page 289). The problem here is that the change of the directory is still automatically done, when ChangeLanguage() has been called (see also section ’Language selection’ on page 305). To prevent the Web Graphical Service from changing the directory the parameter RootPath (see "RootPath" on page 620 in the Parameters chapter) must contain the keyword ATM_PATH_NOLANG at the beginning. With this setting the HTML pages will all be read from the same directory as configured in the RootPath and DefaultLanguage (see "DefaultLanguage" on page 619 in the Parameters chapter) parameters.
38 May 2008
New multilanguage handling Web-Extensions/ClassicLink
May 2008 39
Web-Extensions/HyperLink Hardware control
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\V
erkn
uepf
ung.
fm
Web-Extensions/HyperLinkThis product version comes closer to the process involved in a pure Internet solution as it operates with links to workflow processes. However, the application is still positioned locally on the self-service device and not on the Internet server. Application programmers have the opportunity to access the application on each Internet page and to initiate control of the hardware or address of the server/host. The responses from the application can, in turn, effect a link to a new Internet page. On the other hand, each button can also effect a link to a new Internet page.
The integration of Internet solutions is easiest to implement with this archi-tecture as it only requires the appropriate links to be placed on the Internet pages. The application itself is not affected by this Step.
This architecture uses the Contents STD control exclusively. All other controls are used jointly with the other architectures.
Hardware control
If the self-service hardware is to be used from within an Internet solution (e.g. for printouts or to request insertion of a card), this product version can be used to address the appropriate hardware. Return codes issued by the hardware are presented as links to new Internet pages. Unsuccessful printing may therefore display an error message page, whereas successful printing branches to adocument removal page.
40 May 2008
The menu Web-Extensions/HyperLink
Fig. 4: Contents STD control - Access to hardware modules
Access to the Transaction Framework is the core task of the Contents STD control together with the ActiveStep control. In turn, for example, they make it possible to access the hardware of a self-service device. Internally, the Contents STD control accesses the ProTopas Transaction Framework. The referenced Transaction FW class is executed, and can terminate with up to 20 return codes. An Internet page can be assigned to each return code, which is then loaded at the end of the Transaction FW class. In this way, calling the appli-cation and parameterizing the return codes reflects the general logic of the application (see "Contents STD control - Step page" on page 250 in the Param-eters chapter).
The menu
Menu buttons are only available in this architecture. This section explains special aspects of the function menu. First, it deals with menu buttons, then with methods of making the menu flexible and, finally, with the disabling of menu buttons by the host.
Connecting Internet pages for workflow processing: Workflow
Pro DeviceSpecial HardwarePro DeviceSpecial Hardware
InternetBrowser
Pro Topas Modules
Connector Control
OK DruckenAbbruch Hilfe
Please wait for printout…invisible Control
5. Access to theprinter via ProDevice
3. Transmission betweenInternet-browser
and ProTopas modules
8. Loading of the new HTML-page
4. Call of theProTopas Module
`PRINT`
6. Transmission of the returncode
to the Contents-control
OK DruckenAbbruch Hilfe
Printout ready
2. Activation of theContents-control
invisible Control
7. Conversion of the return-code into a link to a new
HTML-page
1. Loading of the HTML-page`PRINT.HTM`
May 2008 41
Web-Extensions/HyperLink The menu
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\V
erkn
uepf
ung.
fm
Special aspects of menu buttons
Menu buttons call functions such as a remittance order or a standing order (see "Button control - General 2 page for menu buttons" on page 94 in the Param-eters chapter). For each function it is possible to specify whether identification is necessary and, if so, whether it requires a card or a card and PIN. In addition, the first Internet page to be loaded after identification is also specified.
To make this behavior possible, a Step has to be called on Internet pages which contains the menu buttons. This Step evaluates the identifications, and buffers the name of the Internet page to be loaded after identification. The Step’s return code calls the right identification branch. Only when the identification Internet pages have been processed can the function’s home page be loaded as a result of a variable branch (see also section ’Changing links to HTML pages at runtime’ on page 47).
The Contents STD control enters the name of the function’s home page on the menu page in the VAR_FUNCTION_STARTPAGE_S variable. This string variable can hold up to 128 bytes.
So that the Transaction FW class can evaluate the type of identifi-cation on the menu page, this is written to the variable VAR_IDENTIFICATION_REQUEST_L.
The entries in this LONG variable are evaluated as flags. The individual bits have the following meaning.
(0): No function selected
(1): No identification necessary
(2): Authorization with card
(4): Authorization with PIN
(8): Authorization with chipcard
(16): Authorization with chipcard PIN
(256): Mandatory authorization again before the selected function
The Contents STD control on an Internet page with menu buttons has an additional task. It writes the contents of the Caption parameter (see also section ’Button control - Caption page’ on page 101) to the string variable VAR_HEADLINE_S, and simultaneously assigns this text to the header as if this had been specified in the Contents STD control. Accordingly, it is not necessary for a header to be defined
42 May 2008
The menu Web-Extensions/HyperLink
explicitly in a function. It is much easier to enter nothing for the Headline parameter in the Contents STD control (see also section ’Contents STD control - General page’ on page 228). If the header needs to be set again later, the variable named VAR_HEADLINE_S can simply be used.
Menu pages for information service pages
A custom information service is normally split up into several layers. In order to implement general menus here, the application will either need a corresponding number of general menu buttons or selection buttons. Keep in mind that no identification can be specified for selection buttons so general menus have to be used if certain contents are only going to be provided for the institution’s own customers.
Variable menu
It is worthwhile combining functions in general menus so that it is not necessary to have all functions available on one level and to have to scroll through various pages with scroll buttons. Identification with a card and PIN can take place when a general menu is selected.
This arrangement can be achieved easily by creating not just the names of all functions but also the names of some general menus. These names are entered in the Registry under the .../ActiveX/PCButton/Transaction key (see also section ’Button control - General 2 page for menu buttons’ on page 94). The names of these buttons can be chosen freely. The value must begin with X and must be followed by any character. If menu contents need to be disabled by the host, however, the values must be coordinated with the host programmer.
Disabling menu contents by the host
Some server or host programs have been designed to enable or disable a menu depending on the customer or on the offerings that are currently available from the host. The host operates with function selection codes for this purpose. These must correspond to the contents of the Value parameter for each menu button (see also section ’Button control - General 2 page for menu buttons’ on page 94).
May 2008 43
Web-Extensions/HyperLink Structure of the correction message pages
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\V
erkn
uepf
ung.
fm
From the very start, the menu pages have to be designed in such a way that they can hold the maximum range of functions. It is only possible to hide menu buttons. Buttons that did not exist beforehand cannot be generated automatically!
The approach to enabling and disabling menu buttons is simple. The host sends the values for all menu buttons that are to be disabled to the terminal device. All buttons contained in this list are disabled by a Transaction FW class in which the corresponding Viewstate variables are set (see also section ’Hiding controls with Viewstate variables’ on page 274).
This disabling can be achieved by a command that the host sends to the terminal device. The list of menu items to be disabled, however, can also be appended to the response to a transaction record, and is then evaluated when this response arrives. This approach, for example, would permit card insertion to be followed by a response to the authorization query to include a general menu that has been changed in such a way that it only shows the functions which the customer in question is allowed to use.
The disablement of existing menu buttons remains in force until the card is ejected. If the same menu contents need to be disabled for the next customer, the list has to be set again.
Structure of the correction message pages
In the case of the Web Graphical Service, a check routine must be defined for each input field in order to check that the input is correct once the <Confirm> key has been pressed. Different return codes can be issued for different checks. The name of an Internet page must be specified for each return code, which then overlays the input page in the manner of a popup window. The size and position of this page is freely selectable. The application does not register this event.
The popup Internet page can contain a button, for example <Correction>, which is activated by pressing the button with the same label on the EPP. This key closes the popup page. If such handling is required, a Contents STD control and a button of the type Selection must be created on this page. The key must have the predefined value Close-Popup-Window and, in contrast to the other selection keys, navigate to an HTML page. The name of the HTML page is CLOSE.HTM. This automatically closes the popup page.
The timeout of a popup page is monitored by the Contents STD control. CLOSE.HTM is entered in the property AfterTimeout.
44 May 2008
Loading external Internet pages Web-Extensions/HyperLink
Loading external Internet pages
In the Web-Extensions/HyperLink architecture, it is very easy to configure links to external Internet pages. It is sufficient to enter a link to the appropriate Internet page with http:// -prefix in a menu button or selection button.
Parameterization of the AllowList, the structure of the navigation button bar and access protection is identical for all product versions (see also section ’Displaying external pages’ on page 449).
Programming a Transaction Framework
In the case of the Web-Extensions/HyperLink architecture, the Steps in the Transaction Framework are programmed in basically the same way as the Steps in Web-Extensions/ClassicLink. The Transaction Framework has been extended so that a Step can also selectively receive events or be canceled. These are optional functions, which are not mandatory for a Step. ProTopas/Web-Extensions, Tutorial ATM HyperLink explains in detail how to create a Transaction Framework in this architecture.
When the Contents STD control is parameterized, a branch to a new HTML page can be entered for every return code of the selected Step.
For the interface implementation of the ActiveStep control and the Step itself, please use the proxy file ActiveStep.xpp provided with ProTopas/KIT from version 3.0/10. A few numbers for Transaction FW events are already blocked by the ProTopas/Web-Extensions, which must not be used by projects Transaction FW’s. Projects use event numbers larger than 1000.
#define ACTIVESTEP_EVT_KEY_PRESSED (1)
#define ACTIVESTEP_EVT_SOFTKEY_PRESSED (2)
#define ACTIVESTEP_EVT_PINKEY_PRESSED (3)
#define ACTIVESTEP_EVT_SET_VIEWSTATE (4)
#define ACTIVESTEP_EVT_SET_HEADLINE (5)
May 2008 45
Web-Extensions/HyperLink Programming a Transaction Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\V
erkn
uepf
ung.
fm
Event number 10 (ACTIVESTEP_EVT_FIRE_STRING) is reserved for a self defined event, which may by pasted to the ActiveStep control in an Internet page. It may contain a String parameter. In the Internet page it can be received in a script StepEvent (BSTR String).
Return codes 0 to 19 have been defined for ProConsult Steps. They have been assigned as follows:
The ACTIVESTEP_RC_CANCEL return code has to be returned by the Step, when the Step is cancelled by the Contents STD control. No call of an HTML page may be entered for this return code. The ActiveStep control does not pass this return code to the Contents STD control.
The Cancel method must be implemented for Steps which permit cancellation from outside. Examples of Steps which may have to be cancelled from outside, e.g. as a result of the press of a button or another event, include:
Card input: Card input is cancelled by touching the screen in the idle loop or by pressing a button on the menu. At this point, the branch cannot be handled via the Step’s return code but via the branch defined for the button.
PIN input: PIN input can be cancelled by pressing a Cancel button without the PIN having been entered.
Define Value
ACTIVESTEP_RC_FKTN_OK 0 OK
ACTIVESTEP_RC_FKTN_RETURN1 1 Special return codes
... ...
ACTIVESTEP_RC_FKTN_RETURN15 15
ACTIVETEP_RC_CANCEL 16 Cancellation of the Step by the Contents STD control
ACTIVESTEP_RC_TIMEOUT 17 Function timeout
ACTIVESTEP_RC_GENERAL_ERROR 18 General error
ACTIVESTEP_RC_CLOSE_IMMEDIATE 19 Return code afterClose Immediate
46 May 2008
Functions to manipulate controls Web-Extensions/HyperLink
In such a case, the Contents STD control tries to cancel all Steps that are in progress and, when all Steps have finished, navigates further via the branch defined for the button that was pressed and not via the branches specified by the Steps’ return codes.
In other cases it is unwanted that a Step can be cancelled from outside because a certain action has to be completed before the application is allowed to resume. In this case, the Cancel method must not be implemented in such a Step. But on the other hand every step must be completed in a short time. If the step needs a longer time to be finished it is mandatory to implement a Cancel method, because the Graphical service may cancel the step in case of exception situations.
The ACTIVESTEP_RC_GENERAL_ERROR return code may be used as an error return code by the Step. However, in case of a problem with the EPP it is returned by the Contents STD control automatically. It is good programming manner to fill in a branch for this returncode on each page which is using EPP input.
Functions to manipulate controls
The functions that can be called from a Step to manipulate the currently loaded HTML page are listed below. These functions are available in this architecture only.
Showing and hiding button controls
FrmSendEventSync (ACTIVESTEP_EVT_SET_VIEWSTATE,&ViewStateActiveStepStruct,sizeof(VIEWSTATE_ACTIVESTEP));
Please include ActiveStep.xpp in the Step for the definition of the structure. This function can be used to show, disable or hide a button on the HTML page that is currently loaded. This is necessary, in particular, when the Step was notified via a hardware access that a state has changed (e.g. when a card has been input, the card eject button appears).
Remember that a function key can only be disabled or hidden, whereas a selection button or menu button can also be made visible. The reason for this is that no HTML page to be loaded can be notified to a disabled or hidden function
May 2008 47
Web-Extensions/HyperLink Functions to manipulate controls
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\V
erkn
uepf
ung.
fm
key. The key must therefore be created as up, and then be hidden. As far as selection and menu buttons are concerned, it is possible, however, to specify an HTML page for a hidden button.
The button is addressed via the value of the Button control. This can be read from General 2 page of the Button control (see also section ’Button control - General 2 page for function keys’ on page 85).
Changing links to HTML pages at runtime
There are two ways of keeping links flexible at runtime. The first way is to use the HTML generator. The HTML generator replaces variables shortly before the HTML page is displayed. It is irrelevant whether these variables are used to display customer data or for other purposes. Consequently, variables can also be entered in the Button control or in the Contents STD control instead of HTML names (see also section ’Inserting a variable in a control’ on page 288). The default value of the variables can be used when no HTML page has been specified in the variables.
The option described above can be used when the variable containing the name of the HTML page is filled for the pages loaded in a Step.
The second way is similar to the first, but the name of the HTML page can be filled in a Step which runs on the page that is currently loaded. The Step can fill the name of the HTML page in accordance with the result of processing. Following the return code, the name of a variable is entered instead of an HTML page. The syntax differs slightly from the syntax that is used for the HTML generator:
[& name of PC variable ; formatting of PC variable ; default value of PC variable &]
See page 284. This provides a description of the syntax. Here, the Contents STD control replaces the variables at precisely the moment in which it does not encounter the name of an HTML page as a link but the variable syntax described above.
Ascertaining the name of the current HTML page
The components of the Web Graphical Service ensure that the name and path of the currently loaded HTML page which contains the Contents STD/ATM control, is entered in the
48 May 2008
Functions to manipulate controls Web-Extensions/HyperLink
VAR_MY_HTML_NAME_S
variable. In a Step, the name of this variable can be evaluated and stored as required. In this way, a Step can, for example, generate different return codes as a result of the name of the HTML page. Furthermore, the name of an HTML page can be buffered in a Step or a later return to this specific HTML page. Please notice that the name is written after OnContentsStart() or OnCon-tentsRestart() of the Contents STD/ATM control.
May 2008 49
Components and system requirements Architecture
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Ko
mpo
nen
ten.
fm
Components and system requirements
Architecture
ProConsult/Topas, ProCash/Topas and ProPrint/Topas constitute the ProTopas product family. All products are based on Windows/NT, CEN/XFS and the ProTopas basic frameworks. The figure below shows the rough architecture:
Fig. 5: General architecture of ProTopas/Web-Extensions
Operating system
The ProTopas product family is based on the Windows XP operating system, if it uses the ProTopas/Web-Extensions.
architecture
CSC-W/32Windows NT 4.0
ProDevice (WOSA/XFS)
ProTopas Modules
OK DruckenAbbruch Hilfe
SOP
service and operating
Internet browser
hardware-access
with WOSA/XFS
operating systemand
peripheral drivers
applicationcomponents
50 May 2008
Architecture Components and system requirements
CSC-W32
Drivers are needed to control the hardware of a self-service device. These drivers are part of the CSC-W32 product portfolio and include, above all, drivers for the card reader, Encrypted PIN Pad (EPP), various printers and scanners, special electronics, and touchscreens.
ProDevice
The ProDevice ((CEN/XFS) modules, which separate the application from the underlying hardware, build on these drivers. An application that is based on CEN/XFS can run on devices from various manufacturers, providing the third-party manufacturers also provide CEN/XFS interfaces for their drivers.
ProBase
ProBase is a combination of the modules of CSC-W32 and ProDevice, with the same functionality as the separated products. ProBase will be supported from Version 1.2/00 of the ProTopas/Web-Extensions.
ProTopas
The ProTopas Frameworks build on ProDevice. ProTopas software components are not tied to specific self-service terminal devices. Individual business and technical components can be used and reused across all self-service devices.
Standard ProTopas components can be modified for customer projects in such a way that the basis can be extended and maintained centrally. This is possible because the interfaces of the ProTopas components are disclosed. New devel-opments can be implemented with little training effort to meet customers’ requirements quickly and at low cost.
An end-to-end error and diagnostics concept supports easy maintenance for technicians. This concept even puts customers in a position to eliminate simple device faults without calling upon the services of a technician.
May 2008 51
Components and system requirements Architecture
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Ko
mpo
nen
ten.
fm
Fig. 6: Framework relationship of a ProTopas application
52 May 2008
Architecture Components and system requirements
Roughly speaking, a ProTopas application is split up into an application Framework, a Transaction Framework, a Host Protocol Framework and a Service Framework. In turn, these main components are linked to a number of subcomponents.
The task of the application Framework is to control the other components. When it has been loaded, it causes all other frameworks to be initialized.
The Transaction Framework incorporates its classes – the so-called application Steps. In turn, these access low-level frameworks, which initiate hardware functions.
The Service Framework synchronizes the Service and Operating program with the application Framework.
The Host Protocol Framework prepares the data going to and coming from the server/host. In this process, it accesses a Data Dictionary Framework which knows the exact owner of the data as a result of the configuration. To feed the host interfaces, the ProTopas application provides data that is accessed when required. In the other direction, data from the server/host is provided in the Host Protocol Frameworks, and can be queried by the application.
There may be two logical connections to different server systems. One connection is retrieving the Internet pages from an Internet information server. The other connection retrieves or sends data to a transaction server, where the customer’s legacy and account data is provided. Fig. 7: "Host Protocol Framework" illustrates this.
The ProTopas Programming Guide gives an exact description of the way the ProTopas frameworks work, and how a new framework is programmed.
May 2008 53
Components and system requirements Architecture
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Ko
mpo
nen
ten.
fm
Fig. 7: Host Protocol Framework
Web Graphical Service
The Web user interface is separated from the business-oriented ProTopas application. Internet pages are used to represent this interface. The Microsoft Internet Explorer acts as the basis. As a result of its modular design, it provides the interfaces that are needed to integrate specific extensions. Functions have been added to the Internet Explorer which automatically detect line failure and access local Internet pages in such a case. An HTML generator has also been added which inserts the actual data in variables on template pages at runtime. This feature is used, for example, in account information transactions to represent the customer’s account data on the Internet page.
User interface elements (images, texts, buttons, etc.) can be stored locally on the self-service device or centrally on an intranet server. Changes to the user interface or procedures are carried out at runtime and enabled immediately. Multimedia components – such as sound, videos, videoconferencing and animations – can be integrated in the Internet pages quickly and easily.
To perform special functions for self-service user interfaces, controls have been developed which implement buttons and input fields, and provide access to the ProTopas frameworks. The following controls have been developed:
HBCI
Connection via host protocolframework
CSC-W/32Windows NT 4.0
ProTopas Modules
ProDevice (WOSA/XFS)
OK DruckenAbbruch Hilfe
SOPIntranet / Internet
TCP / IP
WAN / LANTCP / IP
• Transaction data
• masks• information
Communication
Framework
IFX
OK DruckenAbbruch HilfeOK DruckenAbbruch Hilfe
Host protocol
framework
54 May 2008
Architecture Components and system requirements
Button control Buttons of various kinds
Edit control Input fields (text boxes)
List control Input fields with a list function (list boxes)
EPP control Input fields for PINs
Contents ATM control Master to synchronize the controls mentioned above and to handle different return codes
Contents STD control Master to synchronize the controls mentioned above and to access the appli-cation
ActiveStep control Communication control between the Contents STD control and the application
The Contents STD control synchronizes the other controls and handles the flow of control of the application. The return code of an addressed ProTopas Framework is passed to the control on the Internet page. For each return code it is possible to store an Internet page which is opened when this code is returned.
Fig. 8: Flow of control via ProTopas modules
Connecting Internet pages for workflow processing: Workflow
Pro DeviceSpecial HardwarePro DeviceSpecial Hardware
InternetBrowser
Pro Topas Modules
Connector Control
OK DruckenAbbruch Hilfe
Please wait for printout…invisible Control
5. Access to theprinter via ProDevice
3. Transmission betweenInternet-browser
and ProTopas modules
8. Loading of the new HTML-page
4. Call of theProTopas Module
`PRINT`
6. Transmission of the returncode
to the Contents-control
OK DruckenAbbruch Hilfe
Printout ready
2. Activation of theContents-control
invisible Control
7. Conversion of the return-code into a link to a new
HTML-page
1. Loading of the HTML-page`PRINT.HTM`
May 2008 55
Components and system requirements Hardware requirements
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Ko
mpo
nen
ten.
fm
This approach differs from the architecture Web-Extensions/Classi-cLink. Here, the flow of control is controlled by the Script Framework. In the transaction Steps the Web Graphical Service interface function DoDialog() is used to display an Internet page.
Fig. 9: Showing Internet pages from the application
Service and Operating (SOP)
for the ProTopas/Web-Extensions the Service and Operating application is primarily used as an error tracing tool. In addition, the SOP acts as a key input tool for PIN keys. For the hardware devices it is used as a cash refill tool which releases the cassettes and is used to enter the refill amount, a tool the take a look at the device states and a tool to reset counters for retained documents.
Hardware requirements
All self-service hardware devices may be used for applications which run with ProTopas/Web-Extensions:
ProCash
ProInfo
ProPrint
ProConsult
Call to load an Internet page in existing environment
Windows NT
ProTopas
ProDevice
SOP
Transaction Framework StepsDoDialog()
DoDialog()
DoDialog()
...DoDialog()...
56 May 2008
Software requirements Components and system requirements
Mandatory hardware:
– Pentium III PC 500 mHz, 512 MB memory
– Network card supporting TCP/IP
– Touchscreen or softkeys
Optional hardware:
– Encrypted PIN Pad (EPP)
– Alphanumeric keyboard
– Sound card
A design workstation consisting of a
Pentium PC with 512 MB memory
is needed to adjust parameters and modify the user interface. The user interface can be extended, developed from scratch or modified with standard software components for editing Internet pages.
Software requirements
The following base software is required in the specified versions at least to ensure smooth operations with ProTopas/Web-Extensions:
Terminal device:
– Windows XP with current Service Pack
– Microsoft Internet Explorer version 6.x/7.x with current Service Pack
– TLS-W32 or ProBase
– ProTopas/Manager version 3.x or 4.x
– ProTopas/Web-Extensions version 1.x or
– ProTopas/HTML-Dialog version 1.x
Design PC for editing Internet pages:
– Windows XP with current service pack
– Microsoft Internet Explorer version 6.x/7.x with current Service Pack
May 2008 57
Components and system requirements Software requirements
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Ko
mpo
nen
ten.
fm
– Microsoft FrontPage as the recommended tool for editing Internet pages, or an ASCII editor as an alternative.
– Standard graphics program to create graphical elements for the user interface.
– TLS-W32 or ProBase
– ProTopas/KIT version 3.x or 4.x
– ProTopas/Web-Extensions version 1.x or
– ProTopas/HTML-Dialog version 1.x
It is very important, not to mix up versions from Windows XP, TLS-W32 or ProBase, ProTopas, ProTopas/Web-Extensions or the Internet Explorer on design PC, on test systems and on production systems. The same versions of each software package should be installed on each system. At least it has to be pointed out, that even the language specific versions of IE or Windows NT must be the same on each system.
Please make sure, that the same versions of IE are installed on the test systems and on production systems, otherwise unpredictable faults may occur.
If a new version or an update of the ProTopas/Web-Extensions or of the IE should be installed on the production system, it is mandatory to test the application, to make sure, that all functions are running as before.
58 May 2008
Software requirements Components and system requirements
May 2008 59
Designing the user interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Designing the user interfaceThe user interface has to be designed according to ergonomic and functional aspects:
Only the active functions are shown on the input forms.
The basic layout must have the maximum contrast between the background and the fields.
Colours are used to illustrate related issues.
The structure of the user interface follows the arrangement of operating elements, i.e. function keys and selection buttons.
The aim of this uniform structure is to ensure reliable operation for customers. Institution-specific requirements can be implemented at any time.
There are the following advantages for the institution:
The number of customers can be increased as the user interface meets wide acceptance.
The principles of the institutions, such as customer intimacy and friend-liness, are reflected in the ease of use of the user interface.
The user interface can be adjusted to the institution’s corporate design.
For customers, this means an interface which is easy to learn, and results in fewer operating errors and consequently more security.
This chapter deals with the options for designing an application that uses an Internet browser to represent the user interface.
When defining the design of a self-service application, ease of use is the first thing you ought to focus on. You can achieve this by arranging for recurrent operating Steps and positioning function keys at fixed areas on the screen. Customers should also be given operating hints to guide them through the appli-cation so that they can carry out the necessary Steps reliably. Context-sensitive Help must always be available. Icons can make it easier to recognize functions. Selective use of colours serves to distinguish buttons and the associated functions.
60 May 2008
Screen resolution and colour depth Designing the user interface
The design is also determined by standards from existing style guides drawn up by the institution in question. In particular, attention must be paid to any existing Internet presence. Since ProTopas/Web-Extensions is based on Internet technology, potential standards for the existing Internet or intranet pages have to be taken into account.
Selective use of colours
Transaction-oriented self-service applications require high concentration on the part of customers. Accordingly, operation must be easy. Choosing a few striking colours on a layout that is otherwise unobtrusive is much more helpful than a design that makes full use of the graphic card’s features. Using familiar striking colours – such as red, yellow and green for stop, caution, continue – means that the customer immediately relates the user interface to real life.
Accordingly, all Internet pages dealing with Cancel, Error, End ought to use the colour red. The Cancel button on the EPP is also marked red. Yellow stands for caution, and ought to be used for correction messages when input errors have been made. The Correct button on the EPP is also marked yellow. Green stands for Continue, and serves to indicate positive confirmations. The Confirm button on the EPP is also green.
Functions such as Print and Help can be indicated with other colours that fit in with this pattern. In this way, customers can immediately see which is their current operating Step at any time without having to search through the contents of the screen for hints.
Screen resolution and colour depth
Under Windows NT, the resolution is set under the Desktop properties. ProTopas/Web-Extensions supports all resolutions that can be chosen here. Not only the resolution but also the colour depth is important. The size of buttons and input fields must be geared to the resolution. The higher the resolution, the larger the images for these elements have to be.
Remember that customers with large hands also need to be able to hit the required button on the screen when using a touchscreen. The same applies to input fields. For this reason, it is advisable not to use standard Windows elements such as text boxes and list boxes. These are very difficult to hit at high resolutions. This is one of the reasons why our own controls have been developed to implement inputs, list boxes and buttons.
May 2008 61
Designing the user interface Standard elements of the user interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Another central design aspect is the colour depth used for images. This must be geared to the resolution that has been chosen for the Desktop. If 256 colours out of a spectrum of 64k colours are chosen for images, for example, the Desktop resolution must be set to a colour depth of 64k at least. Otherwisethe images would be adjusted automatically, which can result in ugly colour changes. However, you must also bear in mind that very finely structured images can be generated with a high colour depth but that these may take a long time to load because of their size. It is a good idea to choose a middle course.
The images of the standard ProTopas/Web-Extensions user interface have been created for a resolution of 600 x 800 pixels.
The images for the controls must be in Windows bitmap format with 24 bit colourdepth or Portable Network Graphics (png) format with 24 bit colourdepth because they cannot be displayed otherwise. This restriction does not apply to images that are loaded directly into the browser.
Since Version 1.1/37 it is possible to have floating transparencies in PNG Graphics. In former versions it was only possible to have one color for transparencies, so floating was not possibe.
Standard elements of the user interface
Formats of images
Images affecting the background or content of an Internet page can be stored in the formats that the browser can display. As far as the Microsoft Internet Explorer is concerned, these are primarily the GIF, JPEG and BMP formats. The images can be generated with standard graphics programs.
Images for controls
Images that are displayed in the controls may have two formats:
Windows BMP format with up to 24-bit colour depth
Portable Network Graphics PNG with 24-bit colour depth
62 May 2008
Standard elements of the user interface Designing the user interface
PNG format for graphics for the controls is available since version 1.1 from the ProTopas/Web-Extensions. PNG Graphics support a transparent background colour. That means, it is possible to create round controls by giving the corners of the control image a colour, which has to be specified as transaprent colour before saving the file.
When PNG Graphics with transparent backgrounds are used for the visible Controls, it may happen, that the transparent background is not refreshed properly, so there are portions of the previous page in those areas. That happens, because the controls are loaded asynchronously since Version 5.5 of IE. So the new page has not finished its loading sequence, when the controls try to grab the background for transparency use.
A way to solve this problem is to build a block of all visible controls by use of a <DIV> tag and make those controls invisible by use of an internal style property. Give this <DIV> tag a name DISPLAY_CONTROLS_BLOCK. The contents STD/ATM Control will set the style to visible, when the page is properly initialized. Use the following syntax for the <DIV> tag:
<div id="DISPLAY_CONTROLS_BLOCK" style="VISIBILITY: hidden">
Controls
</div>
Icons: Since it is impossible to specify for BMP images which colour is transparent, the following has been arranged: The top left pixel of the bit map defines the transparent colour. All pixels in the image which have this colour are not displayed. Instead, the background shows through them. By using PNG images a transparent colour may be defined. This is the more easy way to use transparency in icons.
Animations
An easy way of generating animations is to use the animated GIF format. Here, different GIF images of the same size are displayed one after another. The time frame in which the following image is displayed and whether the loop should recommence at the beginning when the animation has finished is defined inthe animated GIF. The Microsoft GIF Animator is an easy-to-use interface for
May 2008 63
Designing the user interface Standard elements of the user interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
sequencing images. It is available together with Microsoft FrontPage. A single GIF file is created and it is impossible to tell from outside whether this is a GIF -animation or a single image.
Another way of generating animations is to use Dynamic HTML. Individual elements can be shifted on the screen by means of scripting. More details on Dynamic HTML are given on Microsoft’s Internet pages.
Multimedia (video and audio)
All multimedia files that the Internet Explorer is capable of handling can be used for the application. In particular, AVI and MOV files can be used for videos. Speech or music is output with WAV files. These multimedia files should be created professionally. Manually recorded sound or videos do not reach the quality of professional recordings by a long way. This can have a negative impact on the entire presentation. Multimedia files which cannot be displayed directly in the Internet Explorer can be made accessible to the Explorer with the aid of plug-ins.
Text fonts
The design process also includes definition of the typeface and font size. Generally, different fonts should not be used in a user interface because they tend to confuse customers. Bold or underlined text can be used to emphasize certain passages.
There are proportional and non-proportional fonts. In non-proportional fonts, the size of each character is the same. Accordingly, it is possible to calculate exactly how big a field has to be which needs to hold a certain number of characters. If the width of the character is, for example, 8 pixels, a field designed to hold 30 characters must be at least 240 pixels in length. On the other hand, if non-proportional fonts are used, the length of a character string can differ considerably. An i or l is much narrower than a w or m. The content of the character string therefore determines the width to a great extent. The following trick is used to determine the width of fields that are filled at runtime:
The sentence "The quick brown fox jumps over the lazy dog" counts as the standard for the average field content.
64 May 2008
User interface elements Designing the user interface
If the field can hold the number of characters in this sentence, it will probably be able to hold any string that is required at runtime. If fewer or more characters than in this sentence are needed for the field, either only part of the sentence is used or the sentence is repeated accordingly. No guarantee can be given that every string will fit in the field at runtime. To be on the safe side, the field size should be chosen to ensure that the corresponding number of ’w’s can be held. As a rule, however, only half of the field will be used.
The settings for the representation of texts, the font size, should be the same on the development computer and on the self-service device. Otherwise the texts will be too small or too big. The font size is defined among the Desktop settings – normally in the same menu in which the screen resolution is defined.
User interface elements
The most important elements used for navigation on Internet pages are buttons. These have to be big enough for the customer to hit the required function and not the one next to it when using a touchscreen. Each button can be connected to a softkey on a softkey machine. The Button control can load images of different designs to put some interaction into the pages. There can be a separate image for the up, down, pressed and disabled states. It is up to designers to provide appropriate images portraying the relevant states most skillfully. The same presentation options apply to the Edit and List controls, except that the image for the down state does not exist for these two. A selected control remains selected until another one is selected.
If the images are designed in such a way that the element appears to be pressed into the screen when it is selected, then the caption must also be shifted to keep the overall appearance correct. This shift depends on the travel of the button. For this, there is a parameter named Shift in pixels for all controls, which describes how the caption is shifted to the right and down (see "Button control - General 1 page" on page 84).
Function keys
Function keys are buttons that always remain in the same positions during the application and have a fixed meaning. Depending on the context, these buttons may by up, disabled or hidden. Here are the Contents (STD/ATM) control function keys by way of example:
May 2008 65
Designing the user interface User interface elements
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Back
Help
Cancel
Correct
Confirm
Forward
These keys depend upon the contents of the Context frame. This is why it is necessary to parameterize the representation and reference to the Internet page to be loaded on the Context page. A good example is the <Help> function key. If the reference to the Help page to be loaded were parameterized directly for the <Help> function key, the same Help page would be called throughout the application no matter what the Context page contained. Obviously this would not be very helpful.
Function keys therefore have to be parameterized on the Context page. You do this with the aid of the Contents (STD/ATM) control by specifying that represen-tation for every function key (see "The Contents (STD/ATM) control" on page 69). When a Contents (STD/ATM) control is created, every function key is hidden by default. An Internet page has to be assigned explicitly to a function key for this to be made available.
Fig. 10: Placement of function keys
In contrast to this, links can be specified directly for selection and menu buttons. Accordingly, these buttons may only be created in the Context frame.
(Context)
Frame 4
Frame 2
Frame 1 Frame 3
Function
FunctionFunction Function
66 May 2008
User interface elements Designing the user interface
In contrast to this, buttons, which are used directly in the Context Internet page are selection buttons.
Selection buttons
Unlike function keys, links to new Internet pages can be specified directly for selection buttons.
Unlike function keys, buttons which return a special value to the appli-cation directly are selection buttons.
Selection buttons are designed to be placed in the Context frame. If you need to tell the application which button has been pressed, different selection buttons can be defined with different values. Conversely, the application can show, hide or disable selection buttons. This is done implicitly by means of the value of the viewstate variable (see "Hiding controls with Viewstate variables" on page 274).
Fig. 11: Placement of selection buttons
(Context)
Frame
4
Frame
2
Frame
1 Frame
3
S Se el le ec ct ti io on n
S Se el le ec ct ti io on n
S Se el le ec ct ti io on n
S Se el le ec ct ti io on n
May 2008 67
Designing the user interface User interface elements
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Menu buttons
Menu buttons are selection buttons for business transactions, such as remittance orders or standing orders, for which it is possible to define the way customers identify themselves. Otherwise they are the same as selection buttons, i.e. can also be created in the Context frame only. However, it is not the first page of identification that is specified as a link but the first page of the selected function.
Fig. 12: Placement of menu buttons
Input fields
You should create input fields for self-service devices in such a way that customers can recognize that selecting the field places the cursor in this field. This is important for ease of correction. Here, again, the image should be large enough. A label may be edited in the control, which defines what text the customer has to edit in the appropriate input field. In this way, the label can be taken into consideration for disabled and hidden input fields. The label is automatically hidden or appears light grey in this case. Two different images can be loaded to depict whether the field has been selected or not (see "Edit control - General 2 page" on page 126). Another image is used to represent the disabled state. This state can be achieved by means of parameterization in the Edit control or by setting a status variable in the application (see "Hiding controls with Viewstate variables" on page 274).
Context-sensitive Help for every input field and the possibility of displaying an operating hint are particularly important. These requirements have been imple-mented in the Edit control.
(Context)
Frame
4
Frame
2
Frame
1 Frame
3
MM ee nn uu
MM ee nn uu
MM ee nn uu
MM ee nn uu
68 May 2008
User interface elements Designing the user interface
With the aid of the PCEdit control it is possible to start an input check immedi-ately after the input has been confirmed. This gives customers immediate feedback on their inputs. The message for the customer can be output via a second Internet page which is overlaid over the currently loaded Internet page. When the second Internet page is closed, the cursor is placed again in the input field which was active before the second Internet page was loaded. You can also define whether the cursor is placed before or after the input.
Input sequence
To guide customers through the input fields, customers must be compelled to confirm every field. Only then is the content checked and accepted. The <Tab> button is available so that customers can exit a field without an input check after a correction message. The same behavior can be achieved by directly selecting a button on the touchscreen. The field that is exited in this way is not checked.
The checks that have been omitted are carried out when the confirmation key or button is pressed in any input field. In this case, the input field that has just been confirmed is checked first. Then the cursor goes to the unchecked input field which has the lowest sequence number and has not been confirmed, or which contains errors. It is not possible to load the next Internet page until all fields have been confirmed.
List boxes
List boxes behave in a similar way to input fields. When a list box is activated, the customer is prompted to select one of the items in a list. A list is presented as an Internet page whose size and position can be freely defined. Accordingly, you can choose a layout which adapts to the presentation of list boxes under Windows or one which relates to the list box but otherwise adapts to the layout of the self-service application.
The selected item is inserted in the list box. List boxes can be integrated in the input sequence of input fields. You do this by specifying the sequence number within the range that is used for input fields. Otherwise, visual design options are the same as for input fields.
May 2008 69
Designing the user interface User interface elements
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
The Contents (STD/ATM) control
The Contents (STD/ATM) control can only be placed in the Context frame, and indeed it must be. A loaded frameset – no matter how many pages it consists of – must have loaded just one Contents (STD/ATM) control during any time. The task of the Contents (STD/ATM) control is to monitor all other ProTopas/Web-Extensions controls, to control the sequence of input fields and list boxes, and to send a return code to the application in one environment (Contents ATM control) or to activate a Transaction FW class in the other environment (Contents STD control). Since the mode of presentation of function keys, the operating hint and the header are stored in the Contents (STD/ATM) control, the Contents (STD/ATM) control must be located on every Internet page which uses one of the ProTopas/Web-Extensions controls (see also section ’The Contents ATM control’ on page 198).
Fig. 13: Placement of the Contents (STD/ATM) control
Header and operating hint
Like the function keys, the operating hint and the name of the selected function header should always be output in the same place with the result that these objects should also be placed in a frame. The contents of these two objects, too, also depend on the Context page. Both texts can be specified in the Contents (STD/ATM) control (see also section ’Contents ATM control - General page’ on page 199).
(Context)
Frame 4
Frame 2
Frame 1 Frame 3
70 May 2008
User interface elements Designing the user interface
Logo
The logo is nothing more than a simple image. To ensure that it can be exchanged easily, the logo should also be placed in a frame that is only loaded at the start of the application. An animation can also be inserted instead of a simple logo (see "Formats of images" on page 61).
Icons
Icons can be used to visualize the selected function or to provide optical support for the texts. These can be placed on all controls and as a single image on the Internet page. A menu on which an icon is shown on every button can be created in this way. When this function is selected, the icon is placed in a frame so that it is always visible while the function is in progress. At present, there is no way of setting icons, such as header texts, from the Contents (STD/ATM) control. This currently has to be handled via scripting. The following script describes the setting of icons:
Sub window_onload()
window.top.header.HeaderIcon.src="../images/icon/Icon_ue.gif"
end sub
Here, the image with the ID HeaderIcon is changed in the frame named header. To be precise, a new image is loaded. The script runs when the Internet page is loaded. So that the icon can be changed at all, it must be an object named HeaderIcon on the Internet page that is currently loadedin the header frame. Our example shows a table column to which theHeaderIcon ID has been assigned.
<td>
<img id="HeaderIcon" src="../Images/Icon/Icon_is.gif">
</td>
Icons placed on controls must use the same colour palette as the currently loaded image the controls are using. If the colour palette is different, the icon may not be visible.
May 2008 71
Designing the user interface Arrangement of the screen interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Arrangement of the screen interface
Most Internet pages already make use of a technique for leaving function keys with a fixed meaning and the header/logo at the same position no matter whether these involve menus, the Home button or links to associated topics. ProTopas/Web-Extensions also makes use of this frame technique to position the function key bar and the header bar. It is irrelevant whether the bars are positioned at the top, bottom, left or right edge of the screen. It is also possible to use multiple screen areas to represent different function key bars.
This screen arrangement has a great effect on the design of the application for the first Step to be taken is to define the main areas and their content for the entire screen. The required resolution has to be defined beforehand in order to define the height and width of the bars.
Since HTML is inherently displayed as continuous text, it is difficult to keep displaying recurrent image elements at the same position. Exact positioning is achieved either by giving the pages a tabular structure that is identical on every Internet page or by using style sheets (see "Working with style sheets" on page 73). Opting for identical tables on all Internet pages results in a consid-erable restriction in the design of the other screen areas. For this reason, the screen is split up into different areas into which a small Internet page can be loaded from the very beginning. Each subdivided screen area is called a frame.
Frames
The easiest way to split up screens into frames is with Microsoft FrontPage. This involves a simple technique: an Internet page describes the arrangement of the user interface, the so-called frameset. An Internet page is loaded into each frame. These links are also located on the Internet page with the frameset. The sizes of the frames can either be specified as a fixed number of pixels or as percentages of 100% screen width/height. The browser can also calculate the size of a frame itself if the other frames have been specified as a number of pixels.
Generally, the narrow outer frames contain elements that stay in these positions while the application is running. The necessary Internet pages for this are only loaded once when the application starts. The biggest frame holds the context. Fig. 14 illustrates a possible arrangement of the screen in frames.
72 May 2008
Arrangement of the screen interface Designing the user interface
Fig. 14: Arrangement of the screen in frames
Frames which do not hold the context are generally used to place function keys, or to display status messages or the logo and the operating hint. The Internet pages that are loaded into these frames remain constant throughout the appli-cation. They only need to be loaded once when the application is launched. This makes it easy to change a logo or the positions of function keys because the elements are only displayed on one Internet page.
Changing an existing frameset at runtime
As a rule, once a frameset has been loaded it should not be changed at runtime in order to avoid confusing customers by presenting them suddenly with a differ-ently designed user interface. Another argument against this practice is that the browser needs a while to load the new Internet pages into the new frameset. During this phase, the window is built up Step by Step. White, the background colour, becomes visible.
However, it is necessary to change the frameset, for example, when there is a change of language involving the captions on the function keys, too. If a frameset page is simply loaded from the Internet page to the Context frame, the new frameset is not built up afresh on the screen but nested within the Context frame. The following trick can be used to bypass this:
An intermediate page is loaded on which the entire screen is used as the new context by means of scripting. The required effect is achieved if the frameset is loaded now (see "Changing the complete frameset" on page 306).
(Context)
Frame 4
Frame 2
Frame 1 Frame 3
May 2008 73
Designing the user interface Arrangement of the screen interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Calling the ChangeLanguage() function of the Dialog Framework sets the ProTopas/Web-Extensions to full-screen mode. This means that the next Internet page which is loaded after ChangeLanguage() must be a new frameset (see "Changing the complete frameset" on page 306).
Positioning image elements on Internet pages of the Context frame
If you have already worked with HTML editors, you will be aware that it is not easy to position screen elements exactly where you want them. Essentially, HTML must be regarded as continuous text so image elements simply move to other positions when an additional text is inserted before them. As self-service applications require Internet pages with a uniform design, however, you must draw upon some techniques which enable you to create the required layouts. Either tables or cascaded style sheets are used for exact positioning.
Working with tables
Tables can be created and modified very conveniently in Microsoft FrontPage. Cells can be combined so that areas can be defined on the Internet page to hold graphical elements such as buttons. Other areas can hold the descriptive text. A minimum size can be specified for each cell. In turn, the text or the element can be aligned horizontally and vertically in the cells. This approach allows elements to be positioned quite precisely providing there is the same table arrangement on similar Internet pages. In addition, the minimum size must be chosen to ensure that the possible contents can be held, and that this size is not exceeded by the cell contents.
Working with style sheets
Positioning is easier with the aid of cascaded style sheets. Style sheets function as follows:
Every object on the Internet page that needs to be positioned is given a unique ID. In a separate file, the style sheet, the absolute position relative to the top left corner of the Internet page (not the screen) is specified for each ID. This should be done by use of percentage.
In the header of the Internet page that is to operate with absolute positioning, a reference is given to the name of the style sheet file. Accordingly, several Internet page can access one style sheet file in which all IDs are collected.
74 May 2008
Arrangement of the screen interface Designing the user interface
The following line acts as a reference to a style sheet file in the header of an Internet page.
<link rel="styleSheet" href="../StyleSheet/UEInput.css" type="Text/css" media="Screen">
The style sheet file has the following contents:
#F1 {position:absolute;top: 14%;right: 5.0%;width: auto;height: auto;}
#F2 {position:absolute;top: 36%;left: 5.0%;width: auto;height: auto;}
#F3 {position:absolute;top: 36%;right: 5.0%;width: auto;height: auto;}
#F4 {position:absolute;top: 50%;right: 5.0%;width: auto;height: auto;}
In this example, IDs F1 to F4 have been assigned to an absolute position. The IDs have to be assigned to the graphical elements on the Internet page. When the page is loaded, the elements are automatically placed at the position that is specified for the corresponding ID in the style sheet file.
May 2008 75
Designing the user interface Arrangement of the screen interface
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu
\Bo
ok\G
esta
ltung
Ku
nde
nin
terf
ace.
fm
Fig. 15: Controls based on a style sheet
Overlaying an Internet page over an existing one
The option provided by ProTopas/Web-Extensions of using Internet pages as popup windows is particularly useful for correction messages or for context-sensitive Help. This is defined by setting the In new window parameter for the links in all controls (see "Button control - General 2 page for selection buttons" on page 93). Internally, a new browser instance is opened over the existing one. The position and size of this window can be freely defined.
Once the new browser instance has been opened, any buttons that are still visible in the lower browser window cannot be selected. In this new instance of the browser, it is not only possible to load an Internet page but also to use a frameset or call multiple Internet pages in succession.
This new browser window is closed by navigating to the CLOSE.HTM page. Actually, there is no Internet page named CLOSE.HTM so the browser interprets this link and simply closes the new instance. When this overlaid browser has been closed, the focus is either passed to the input field that was last activated or, if there is no input field on the page, there is a wait for the page’s timeout. If a Transaction FW class is intended to run on the page, you can define whether it has to be relaunched or not (see "Closing a new browser instance" on page 271).
(Context)
Frame 4
Frame 2
Frame 1 Frame 3
F1
F2 F3
F4
F5
F6
76 May 2008
Arrangement of the screen interface Designing the user interface
May 2008 77
Controls
ControlsThe application operates with Internet pages to represent the user interface. This makes it possible to use the Internet browsers’ multimedia features to the full. The browsers’ standards are largely used for optical presentation, but these standards are inadequate in some cases. For instance, the standard includes a button which can be pressed to load another image and thus indicate a visible response. However, this button cannot be hidden or disabled. The standard provides controls for input fields but an input check would have to be imple-mented in a complex manner on the basis of scripts. Correction or confirmation of each field is impossible. For these specific tasks, Microsoft’s ActiveX technology has been used to develop some controls which are very flexible thanks to parameterization.
The following controls have been developed:
Button control Buttons of various kinds
Edit control Input fields (text boxes)
List control Input fields with a list function (list boxes)
EPP control Old Input fields for PINs, please use EditControl with EPP functionality today.
Contents ATM control Master to synchronize the controls mentioned above and the connector to the application.Only used at Web-Exten-sions/ClassicLink.
Contents STD control Master to synchronize the controls mentioned above and to access the appli-cation. Only used at Web-Exten-sions/HyperLink
ActiveStep control Communication control between the Contents STD control and the application. Only used at Web-Extensions/HyperLink.
Active DataDictionary Control This Control is used for scripting only. It is necessary to get and set data via the Data Dictionary (see also section ’The Active DataDict control’ on page 489).
78 May 2008
Aspects common to all controls Controls
ActiveVariable Control This Control is used for scripting only. It is necessary to get and set data via the Variable Framework (see also section ’The Active VarFW control’ on page 488).
ActivePTSniff Control This Control is used for scripting only. It is useful for receiving ProTopas Events in HTML pages (see also section ’Active-PTSniff Control’ on page 491).
ActiveRegistry Control This Control is used for scripting only. It is useful for getting REG_DWORD or REG_SZ Parameter values into variables for scripting (see also section ’ActiveReg-istry Control’ on page 491).
WXPTBridge Control This control gives access to all ProTopas Frameworks. It must be used in the Virtual Keyboard instance, when it is used as Marketing window for the access to the EPP Framework. However it may be used to access all other frameworks as well (see also section ’WXPTBridge’ on page 385).
Aspects common to all controls
Graphics resolution
The Button, Edit, List and EPP control has a visible user interface (see "User interface elements" on page 64). One or more images can be loaded for the different states of a control by means of parameterization.
The images that are to be loaded must be in Windows bitmap format or Portable Network Graphic (png) format both with up to 24 bit colours depth since they cannot be displayed otherwise. Images that are to be loaded directly into the browser may also be in JPEG or GIF format with any number of colours.
May 2008 79
Controls Aspects common to all controls
Defaults
There are default values for all controls. These are values that can be set with the aid of parameters. The appearance of the entire application can be changed in one go with these defaults because they are read from the Windows Registry at design time and at runtime. Setting as many parameters as possible to the default value in the controls means that changes to the parameters can alter the appearance of multiple controls.
States of controls
Of all controls, the Button control can assume the most states:
A button can be hidden: In this case, the control is transparent and assumes the colour of the background.
A button can be up: In this case the button can be selected, and the image that has been specified for this state is loaded. A button is this state can be pressed by the customer to initiate the action that has been defined.
A button can be pressed: In this case the button has been selected, and the image that has been specified for this state is loaded. The pressed state can only be shown for buttons which are used to select several buttons simulta-neously without opening another page (Windows check box). The Toggle lock option must be set to yes for this type of button (see "Button control - General 1 page" on page 83). Reselecting a button changes its state back to up.
A button can be disabled: In this case the button cannot be selected, and the image that has been defined for this state is loaded. The button cannot be pressed. The image that is stored for this must be designed in such a way that the customer can recognize that the function is not available.
A button can be down, i.e. have been pressed briefly: The image that has been specified for this state is loaded. This state occurs when an up button has been selected, and is a visible response for the customer. The customer can see that the button has just been pressed. Directly after the down state the button returns to the up state. The time for which the button stays in the down state can be defined by the AnimationTimer parameter (see "Anima-tionTimer" on page 652 in the Parameters chapter). However the control waits until the button has returned to the up state before performing the desired action so the time that is specified should not be too long since this would increase the response times in the entire application.
80 May 2008
The Button control Controls
The Edit and List controls have the same states as the Button control with the exception of the down state. These controls cannot indicate the down state because they immediately go into the pressed state when they are selected.
The Button control
The Button control is useful for presenting all kinds of buttons. The Windows button, check box and radio button controls can be implemented for a self-service user interface with the aid of this control. The button can have a multi-line caption and an icon. The appearance of the button is determined by the image that is loaded. For each Button control it is possible to specify an Internet page that is opened when the button is selected.
It is not possible to implement round buttons as such on any user interface when using rectangular BMP images. Against a single coloured background, however, you can achieve the effect of a round button by giving the corners of the button image the same colour as the background. It is easier to use PNG Graphics with a transparent colour to solve this problem.
May 2008 81
Controls The Button control
Button control - General 1 page
Fig. 16: Button control - General 1 page
Button: The type of button is defined with these radio buttons. The appearance of the General 2 page depends on what is selected here.
Menu button: This button type is only available at connection of Internet pages. A menu button is used to call a menu of business transactions. This type of button differs from a selection button in that it is possible to define for each function whether customers have to identify themselves with a card and PIN, or whether no authorization at all is required (see "Menu buttons" on page 67).This radio button will not be selectable, if the parameter ButtonInstallation (see "ButtonInstallation" on page 652 in the Parameters chapter) is set to 1.
Fig. 17: Menu button to call more information
82 May 2008
The Button control Controls
Function key: Function keys are buttons with a special meaning such as Cancel, Correct or Confirm. All such keys can be placed in an HTML frame of their own are listed here (see also ’Function keys’ on page 64). This frame remains in the same position throughout the application. The function keys can be made visible or hidden from the active HTML frame.
The destination Internet page when a key is pressed is also controlled from the active HTML frame. For this reason, no Internet page can be specified on the General 2 page as far as function keys are concerned.
Fig. 18: Help function key
Selection button: A selection button is any button in the active frame.
Pressing such a button can either return a response to the calling Transaction FW class or take the customer directly to a new page in special situations, e.g. if a new window is to be closed (see also ’Selection buttons’ on page 66).
Pressing such a button takes the customer directly to a new page (see also ’Selection buttons’ on page 66).
Fig. 19: Selection button for an amount in DM
Radio button: Radio buttons always appear in groups of at least two. One of these radio buttons must be in the pressed state. If another radio button in this group is selected, the previously active one returns to the up state. If no radio button is defined as having the pressed state when the group is created, the Contents (STD/ATM) control (see "The Contents ATM control" on page 198) ensures that the radio button with the lowest field ID (see "Button control - General 2 page for function keys" on page 86) is automatically placed in the pressed state.
Fig. 20: Radio buttons to select DEM or EUR
May 2008 83
Controls The Button control
Toggle: This group defines whether a button is a Windows check box. With this option it is possible, for example, to implement a button indicating that a customer card has been input. The button has the pressed state when no card is in the device. Once a card has been inserted, a Transaction FW class will set the button to up by setting the appropriate Viewstate variable and loading the same page again. The card is ejected when the customer presses this button. When this button is created, Toggle must be set to yes.
no: This – the standard setting – determines that the button functions as required.
When the button is pressed, the return code is sent to the application.
When the button is pressed, a Transaction FW class is called or an Internet page is opened, depending on the settings on the General 2 page (see "Button control - General 2 page for selection buttons" on page 91).
yes: If this setting is selected, a Button control is treated like a Windows check box, i.e. when the button is selected it gets the pressed state, and the value of the button is entered in the VAR_DLG_INPUT_RESULT_S variable.
The return code is sent to the application. It can call the same Internet page with a changed Viewstate pressed for this button.
The call of a Transaction FW class should be parameterized for a toggle button (see "Button control - General 2 page for selection buttons" on page 91). This class can buffer the value of the button and send a return code for which no Internet page has been specified. The page that has been loaded is retained. Several toggle buttons can be queried in this way.
default: If default is selected, the content of the HoldPressedState parameter is evaluated at runtime (see also ’HoldPressedState’ on page 656). This parameter may contain 0 for no or 1 for yes.
84 May 2008
The Button control Controls
State: The state of a button upon loading of an Internet page is configured here. The various states can, however, be overwritten by the settings of variables in the application (see "Hiding controls with Viewstate variables" on page 274).
Button up: When the page is loaded, the button shows the image that is defined in the Button up parameter on the Graphic page (see "Button control - Graphic page" on page 105). In this state, the button can be pressed by the customer.
Button pressed: When the page is loaded, the button shows the image that is defined in the Button pressed parameter on the Graphic page (see "Button control - Graphic page" on page 105). In this state, too, the button can be pressed by the customer. Pressing it changes its state to up. It is only possible to load the button with this image when the Toggle lock parameter has been set to yes.
Button disabled: When the page is loaded, the button shows the image that is defined in the Button disabled parameter on the Graphic page (see "Button control - Graphic page" on page 105). In this state, the button cannot be pressed by the customer.
Button hidden: The button does exist on the page but it is not visible in this state.
Shift in pixels: This input field is used to specify the number of pixels by which the caption and icon are shifted to the right and down when the button is selected in order to give the optical impression of a pressed button. The number of pixels depends on the design of the button images. If the optical impression is conveyed that the button protrudes about 3 pixels, then 3 has to be input here.
default: If this check box is activated, the value of the shift in pixels is read from the PressOffset parameter at runtime (see also ’PressOffset’ on page 653). By changing this parameter it is therefore possible to give a different appearance in one action to all buttons whose shift in pixels has been set to default.
May 2008 85
Controls The Button control
Button control - General 2 page for function keys
The appearance of the General 2 page depends on the type of button. If the button is created as a function key, the page looks like this:
Fig. 21: Button control - General 2 page for function keys
Functionkey: All function keys that have been created for this application are displayed in a drop-down list box. The designer can select the required one.
The content of the list box shown here is read from the Registry under Function-Key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonFunction-Key
Cancel...
Value: This field is only used to output the value of the selected button. The value is read from the Value parameter under the corresponding key in the Registry. Some of these values have a special meaning (see "Function keys with a fixed meaning" on page 87). The value cannot be changed on the
86 May 2008
The Button control Controls
page. It can be queried in the application if this button is pressed. The other parameter – ID – under the same key serves to number the function keys uniquely. It must be assigned in ascending order without any gaps.
When the button has been pressed, the value is stored in the VAR_DLG_INPUT_RESULT_S variable, and can be read from there by the application.
Field ID: A unique number has to be assigned for this Internet page here. When working with framesets, you must also ensure that all pages which are loaded at the same time only contain buttons with unique field IDs.
It is therefore important to use an appropriate range of values for the controls per frame. This will ensure that buttons with the same field ID will not be loaded at the same time. An error is written to the error log, if identical field IDs are loaded at the same time.
Value 0 is reserved for Buttons, which shall not be supervised by the Contents STD/ATM Control, but be used in a script (see also section ’Scripting a Control’ on page 493).
Softkey: The name of the softkey next to the screen for which this button is being defined is specified in this list box. This applies to systems which do not have a touchscreen but do have softkeys next to the screen. The buttons have the following positions:
Fig. 22: Positions of the softkeys
Help Print Cancel Correct Confirm
F1
F2
F3
F4F5
F6
F7
F8
May 2008 87
Controls The Button control
If the application is designed for a touchscreen system only, there is the option to specify no Softkey by selecting none.
There is another option to connect a button control to more than one softkey. The names of the softkeys have to be entered directly in this case. The names have to be separated by a semicolon (e.g. F1;F2;F3;F4).
It is even possible to connect a numerical EPP Key to a Button control. This should not be done on pages, where an Edit Control resides in. The connected numerical EPP Key then acts as a function key and triggers the button. This function is very helpful for projects which keep an eye on functionality for blind people. In the Listbox there are additionally all numerical Keys 0 - 9, L and R listed. L means the key left from the 0 and R the key right of it.
If the Confirm, Correct, Help or Cancel key from the EPP is to be used for triggering any button, this button needs to have the appropriate softkey connected. These buttons need not necessarily be function keys with the values CANCEL, CONFIRM or CORRECT.
On the other hand, if an Edit control runs correctly and the Confirm key and Correct key on the EPP are to be used to confirm inputs, there must be two function keys with the values CONFIRM and CORRECT active on this page. If these buttons are not to be shown, a graphic with the size 1 x 1 pixels and the colour of the background should be assigned.
Function keys with a fixed meaning
Buttons which have been defined as function keys generally have a fixed meaning which is used recurrently throughout the application. Some function key values have a special meaning such as Cancel, Correct and Confirm. Function keys can be placed in their own HTML frame but do not have to be. Function keys are created in the Registry under Function-Key.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/PCButton/Function-Key/
CancelValue = CANCELID = 1
Every key here is interpreted as the name of a function key. Two parameters have to be entered for each Registry key. The Value parameter contains the value of the key and has a special meaning for some buttons. The value is also used as a reference for showing/hiding function keys.
88 May 2008
The Button control Controls
The second parameter – ID – is used by the Contents (STD/ATM) control to address the button later. The numeric value that is input here can range from 1 to 20. All function keys should be numbered consecutively in ascending order. There is no connection between the Value and the ID.
Values with a fixed meaning are as follows:
CONFIRM: When an input field becomes active, the button switches to Confirm mode. The defined input check is performed when the button with this value is pressed.
The specified value is only returned to the application if the check is positive for all inputs or if there was no input field on the page.
The specified Internet page is only opened if the check is positive for all inputs or if there was no input field on the page.
CONFIRMALL: This value may be used for a special input handling. The customer may fill all edit fields by using the touch screen or the <Tab>, <Cursor up> or <Cursor down> key. After pressing this button all checks of all input fields will be started. When everything is okay, the Web Graphical Service will navigate to the page configured in this key (see also section ’Special input confirmation handling’ on page 418).
Do not use this in Web-Extensions/ClassicLink.
The specified Internet page is only opened if all checks are positive for all inputs.
CORRECT: When an input field becomes active, the button switches to Correct mode. The character to the left of the caret is deleted when the button with this value is pressed. Any Internet page that may have been specified is irrelevant here. The function key with this value is hidden when no input field is active.
May 2008 89
Controls The Button control
CANCEL:
Not relevant.
When the button with this value is pressed, the Internet page specified on the Cancel page in the Contents STD control is opened (see also ’Contents STD control - Cancel page’ on page 234). Only when that page has been closed opens the application the Internet page specified on the Function key page for the button with the CANCEL value (see also ’Contents STD control - Functionkey page’ on page 236).
HELP: As far as pages without input fields are concerned, the application opens the Internet page specified on the Function key page for the HELP value (see also ’Contents ATM control - Function key page’ on page 206). If an input field is active, pressing this button opens the Internet page specified under Help on the General 2 page (see "Edit control - General 2 page" on page 126).
SURFING_BACK: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button then has the same meaning as the <Back> button in a standard browser.
SURFING_FORWARD: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button then has the same meaning as the <Forward> button in a standard browser.
SURFING_CANCEL: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button then has the same meaning as the <Stop> button in a standard browser. Pressing this button makes the application continue with the Internet page specified in the StartPage parameter (see "StartPage" on page 615 in the Parameters chapter).
SURFING_UP: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button is used for scrolling the page up.
SURFING_DOWN: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button is used for scrolling the page down.
90 May 2008
The Button control Controls
SURFING_LEFT: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button is used for scrolling the page to the left.
SURFING_RIGHT: A function key with this value can only be used in a frame for free navigation on intranet pages (see also ’The navigation button bar’ on page 450). The button is used for scrolling the page to the right.
May 2008 91
Controls The Button control
Button control - General 2 page for selection buttons
The following figure shows the General 2 page for selection buttons. Some fields are identical to those for function keys, some are additional.
Fig. 23: Button control - General 2 page for selection buttons
Selection button: All buttons that have been created for this application are displayed in a drop-down list box. These buttons can be placed on the current Internet page. The designer can select the required one.
The content of the list box shown here is read from the Registry under the Selection key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX
PCButtonSelection
German...
Value: See page 85.
Field ID: See page 86.
Softkey: See page 86.
92 May 2008
The Button control Controls
Selection:
Here the designer can define whether the return code is sent to the application when the button is pressed, or whether a new Internet page is to be opened directly.
Here the designer can define whether a Transaction FW class is to be executed when the button is pressed, or whether a new Internet page is to be opened directly.
Step after button:
If this radio button is selected, the return code is sent immediately to the application when the button is pressed. This is the commonly used version of the selection button. The Input field for Internet page, In new window check box and Coordinates button are hidden in this case.
If this radio button is selected, a Transaction FW class is called when the button is pressed. The name of the class is specified in the Contents STD control because only one Transaction FW class can ever run on an Internet page (see "Contents STD control - Step After page" on page 246 in the Parameters chapter). The name of the Internet page to be opened upon completion of the class is also specified in the Contents STD control. The Input field for Internet page, In new window check box and Coordinates button are hidden in this case.
HTML page: If this radio button is selected, you have to specify the name of the Internet page to be opened in the Input field for HTML when the button is pressed.
This option must only be used if an Internet page in a new window is to be closed.
Input field for HTML page: The name of the Internet page to be opened when the button is pressed is specified here.
May 2008 93
Controls The Button control
The navigation is normally done by direct entering a HTML page name, or including a relative path to other directories of the same web. If an external page shall be loaded, the protocol (f.e http://) has to be added. To navigate in the top or parent window there are two keywords, which may be used:
– WN_TFN_PARENT: Navigate in the parent window.
– WN_TFN_TOP: Navigate in the topmost window, which mostly means get rid of the frameset, if there was one.
in new window check box: This check box has to be activated if the new Internet page is not to replace the currently active one but overlay it like a popup window. A new browser instance is loaded which can handle any sequence of Internet pages. This new browser instance is closed when an Internet page named CLOSE.HTM is called. The Web Graphical Service closes the new instance on its own (see "Closing a new browser instance" on page 271).
The application must not incorporate an Internet page named CLOSE.HTM at any point as this name is reserved for closing a new browser instance.
Coordinates button: This button can only be selected when the In new window check box has been activated. When this button is pressed, the following dialog opens in which the coordinates for the new window can be specified:
Fig. 24: Input of coordinates for the new window
94 May 2008
The Button control Controls
X pos: The X position of the new window is specified in pixels in this input field. The origin is the top left corner of the screen. The distance from the left edge is specified here.
It is eigher possible to enter a value in pixels 0 - 9999 or in percentage 0.00% - 100.00% (with two post comma digits and a closing %-sign). Same is possible with the other properties in this property page.
If a percentage value should be set in the registry parameters, because the default check box is on, 10000 has to be added to the value in pixels. Do not forget the post comma digits. 105% is 10500.
Y pos: The Y position of the new window is specified in pixels or percentage in this input field. The origin is the top left corner of the screen. The distance from the top edge is specified here.
Width: The width of the new window is entered in pixels or percentage here.
Height: The width of the new window is entered in pixels or percentage here.
Button control - General 2 page for menu buttons
The following figure shows the General 2 page for menu buttons. Some fields are identical to those for selection buttons, some are additional.
May 2008 95
Controls The Button control
Fig. 25: Button control - General 2 page for menu buttons
Menu button: All buttons that have been created for this application are displayed in a drop-down list box. These buttons can be placed on the current Internet page. The designer can select the required one.
The content of the list box shown here is read from the Registry under the Transaction key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX
PCButtonTransaction
Remittance...
Value: See page 85.
Field ID: See page 86.
Softkey: See page 86.
Selection: See page 92.
Input field for Internet page: See page 92.
In new window check box: See page 93.
96 May 2008
The Button control Controls
Coordinates button: See page 93.
Identification: Here you can define how customers have to identify themselves for the selected function:
with chipcard: As this is a check box, this option can be selected independently of the others in this area. If this check box is activated, then the chip is contacted when the card is inserted and the data is read. Authorization is based either on the card only or on the card and the PIN, depending on the setting for the following radio buttons. In other words, a PIN check via the chip in the card can be enabled at this point.
without identification: Customers do not need access authorization for this function.
with card: Customers have to identify themselves either with an ec card or with a chipcard.
with card + PIN: Customers have to insert an ec card or chip card, and input a PIN. If the with chipcard check box has been activated, the PIN is checked via the chip.
Mandatory with card + PIN: Customers have to insert an ec card or chip card, and input a PIN. If the with chipcard check box has been activated, the PIN is checked via the chip. Even if customers have identified themselves with a card and PIN, the PIN is requested again when they select the function in question.
default: The value is read from the Identification parameter at runtime (see "Identification" on page 656 in the Parameters chapter). Here, too, it is possible to define whether the customer ought to be identified via a card or a card plus PIN, or whether a card plus PIN are mandatory.
May 2008 97
Controls The Button control
Button control - General 2 page for radio buttons
The following figure shows the General 2 page for radio buttons. Some fields are identical to those for function keys, some are additional.
Fig. 26: Button control - General 2 page for radio buttons
Radio button field: All groups of radio buttons that have been created for this application are displayed in a drop-down list box. A radio button is used when just one of a set of options can be selected. If another radio button is selected, the previous one is automatically returned to the up state.
The content of the list box shown here is read from the Registry under the Radiobutton key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonRadiobutton
Currency selection...
Value: See page 85.
Field ID: See page 86.
98 May 2008
The Button control Controls
Softkey: See page 86.
Radio button: The radio buttons that belong to the selected group of radio buttons are displayed in this list box. The required button has to be selected.
The content of the list box shown here is read from the Registry under the Radiobutton key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonRadiobutton
Currency selectionDEM
...
Button control - General 3 page
The following figure shows the General 3 page for buttons. The Scheme and Audio response of a button is configured here.
Fig. 27: Button control - General 3 page
May 2008 99
Controls The Button control
Scheme Listbox: A scheme of a control can be compared to a scheme of the windows desktop, where all styles and colours of the windows can be configured and this configuration can be stored under a certain name. For the controls it is similar to configure all visible values under a certain key in the registry. The Key is located at
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonGeneral
Scheme...
All Subkeys under Scheme determine different styles of a Button control. These Subkeys will be shown in the listbox. After a Scheme has been selected, all values from the registry will be used instead of properties selected in the various Property Pages from the Button control. Those properties will be disabled, so there is no change to mix parameter from the schemes with properties from the control.
To build a new scheme there is a parameter file C:\ProTopas\Conf\ActiveX.sdf with a template set of all param-eters for a scheme. This file may be used to add additional schemes in the registry. The parameters will be added to the registry by calling
CCRCCONV ActiveX.sdf -b -U
(see also section ’Parameters for Schemes’ on page 672)
Using schemes the text properties with prefix TextLayer... are set and used. The properties Text... are not used here. If in scripts for example the property Button.Text is changed the layout from the Scheme is not used but the properties from Text... . It is better to use the Property Button.TextLayerText in script here.
Sound Response: This property may be used to select between a Wave file to be started, when this button is pressed or a sound from the special electronics. The sound may be started synchronous or asynchronous. In the synchronous mode, the next page will be loaded, when the sound has finished. In asynchronous mode the next page is immediately loaded and the sound continues until it is finished or it is explixit stopped by script or by an explicit key press (available for Wave files only).
At the Listbox it is possible to select between the following options:
100 May 2008
The Button control Controls
- NONE- DEFAULT- WAV SYNCHRON- WAV ASYNCHRON- WAV STOP- BELL_OFF SYNC.- BELL_OFF ASYNC.- BELL_KEYPRESS SYNC.- BELL_KEYPRESS ASYNC.- BELL_EXCLAMATION SYNC.- BELL_EXCLAMATION ASYNC.- BELL_WARNING SYNC.- BELL_WARNING ASYNC.- BELL_ERROR SYNC.- BELL_ERROR ASYNC.- BELL_CRITICAL SYNC.- BELL_CRITICAL ASYNC.- BELL_KEYPRESS_CONTINUOUS SYNC.- BELL_KEYPRESS_CONTINUOUS ASYNC.- BELL_EXCLAMATION_CONTINUOUS SYNC.- BELL_EXCLAMATION_CONTINUOUS ASYNC.- BELL_WARNING_CONTINUOUS SYNC.- BELL_WARNING_CONTINUOUS ASYNC.- BELL_ERROR_CONTINUOUS SYNC.- BELL_ERROR_CONTINUOUS ASYNC.- BELL_CRITICAL_CONTINUOUS SYNC.- BELL_CRITICAL_CONTINUOUS ASYNC.
... Button: When WAV SYNCHRON or WAV ASYNCHRON is selected the ... Button for the selection of the Sound file is enabled. If Default is selected, the appropriate AudioResponse Parameter (see "AudioRe-sponse" on page 651 in the Parameters chapter) is used.
The output field displays a string, which is build in the same manner, as the AudioResponse parameter is filled.
May 2008 101
Controls The Button control
Button control - Caption page
The Caption page is used to define the caption that is to appear on the button. The character format can be set in a font dialog.
Fig. 28: Button control - Caption page
Text layer Listbox: It is possible to create different captions on top of the others. So one text can be left justified and the other right justified. Or one line can appear red and the other blue, etc. To enable this , for each of the different formatted texts one layer has to be created. With this listbox, the layer is selected, which shall be edited and formatted.
Add button: To add a new layer this button has to be pressed once. The number of layers to be created is not restriced.
Remove button: If more than one layer has been created with this button the actual layer may be removed. All the following layer numbers are substracted by 1 in this case.
Caption Input field: The caption to appear on the button is entered in this text box. Multiple lines can be input here. <Ctrl> and <Enter> have to be pressed simultaneously to get to a new line. Variable names can also be edited here, and these are then replaced by the HTML generator (see also ’Inserting a variable in a control’ on page 288).
102 May 2008
The Button control Controls
colour active: Three fields define the colour setting for the caption on an active button.
default check box: If this check box is activated, the colour of the caption on an active button is read from the TextColour parameter at runtime (see "TextColour" on page 653 in the Parameters chapter). The ... button (standard colour dialog) and the input field for the colour cannot be selected, if this check box is activated. The value to be stored in TextColour can be ascertained by calling the standard colour dialog here once and selecting a colour. The colour is then output as a numeric value in the input field for the colour and can be read there.
Input field for the colour: A numeric value can be input here to define a colour. However it is better to use the standard colour dialog to select a colour. The value for the selected colour is then entered here automati-cally.
Selecting the Font button causes the text colour defined there to be entered in this field. Any font colour that had been defined beforehand in the standard colour dialog is overwritten by this one. It is better to select the font first and then the colour if a special colour outside the 16 basic colours is required.
... button (standard colour dialog): Pressing this button opens the following standard colour dialog. Refer to the Windows NT Online Help for a description of the options in this dialog. This dialog can also be called when selecting colours for the Windows NT Desktop.
May 2008 103
Controls The Button control
Fig. 29: Standard colour dialog
colour inactive: The same three fields are used to define the colour of a caption on an inactive (disabled) button as for an active button. If the default check box is activated, the colour is read from the TextColourDisabled parameter at runtime (see "TextColourDisabled" on page 654 in the Param-eters chapter).
The following fields define the position of the button caption:
X pos: The X position of the caption is specified in pixels in this input field. The origin is the top left corner of the loaded image. The distance from the left edge is specified here.
centered, Left, Right radio buttons: Depending on the selected radio button the caption is eighter horizontally left or right justified or horizon-tally centered. The X pos contains the number of pixels from the left or right border of the control or it is disabled, if the caption shall be horizon-tally centered.
Y pos: The Y position of the caption is specified in pixels in this input field. The origin is the top left corner of the loaded image. The distance from the top edge is specified here.
104 May 2008
The Button control Controls
centered check box: If this check box is activated, the caption is centered vertically. The Y pos input field cannot be selected if this check box is activated.
default check box: If this check box is activated, the position settingsfor the caption are read from the following parameters at runtime:TextAlignX corresponding to X pos(see "TextAlignX" on page 654 in the Parameters chapter)TextAlignY corresponding to Y pos(see "TextAlignY" on page 654 in the Parameters chapter)TextCenterX corresponding to centered for X pos(see "TextCenterX" on page 654 in the Parameters chapter)TextCenterY corresponding to centered for Y pos(see "TextCenterY" on page 655 in the Parameters chapter)
Font button: The font size is defined by opening the standard font dialog. This is only available if the default check box has not been activated. The standard font dialog looks like this:
Fig. 30: Standard font dialog
Refer to the Windows NT Online Help for a description of the options in this dialog. This dialog is used, for instance, in the Notepad editor to define the font.
May 2008 105
Controls The Button control
default check box: If the default check box is activated, the Font button cannot be selected. In this case, the font and the font settings are read from the following parameters at runtime:TextFont corresponding to Font(see "TextFont" on page 653 in the Parameters chapter)TextSize corresponding to Size(see "TextSize" on page 653 in the Parameters chapter)TextBold corresponding to Bold(see "TextBold" on page 655 in the Parameters chapter)TextItalic corresponding to Italic(see "TextItalic" on page 655 in the Parameters chapter)TextStrikeout corresponding to Strikeout(see "TextStrikeout" on page 669 in the Parameters chapter)TextUnderline corresponding to Underline(see "TextUnderline" on page 655 in the Parameters chapter)
Button control - Graphic page
The images for the various states of the button are defined on the Graphic page.Fig. 31: Button control - Graphic page
Button up: The image that describes the button in its up state is entered here.
106 May 2008
The Button control Controls
... button: This button calls a standard file opening dialog which is not explained here. The designer can select the required image. The name of the image and the complete path are entered in the Button up input field.
Use relative paths:To move complete Webs without conversion it is far better to use relative paths for images. The images could, for example, be stored in a subdirectory which is accessed relatively by means of .\Images\.... Accordingly, when an image name has been defined in the Button up input field, the path has to be changed from absolute to relative. The Button control itself cannot enter a relative path because it is unclear where the relative base address begins.
Displaying images at the editing workstation:Generally the images will be stored at the same place as the Internet pages, i.e. on an intranet server. To make the control images visible in Microsoft FrontPage, however, they have to be made accessible locally or on a network. The FrontPageImagePath parameter (see "FrontPageImagePath" on page 635 in the Parameters chapter) has to be set to the appropriate path on the development system. Unfor-tunately this has to be done because there is no way in the current Microsoft programming environment of loading images that are to appear in controls over the Internet.
Button up input field: The name and path of the image file can be entered manually here if they are known.
default: check box: The image file name cannot be input if this check box is activated. Instead, the image is read from the ImageUp parameter (see "ImageUp" on page 652 in the Parameters chapter). By changing this parameter it is therefore possible to give a different appearance in one go to all buttons that have been set to default.
Button down: The image that describes the button in its down state is entered here. When the button is pressed, the image changes from Button up to Button down and back to Button up.
The ... button, the Button down input field and the default check box are identical to the equivalent options for Button up. The parameter that is evaluated for the image when the default check box is activated is named ImageDown (see "ImageDown" on page 652 in the Parameters chapter).
May 2008 107
Controls The Button control
Button disabled: The image that describes the button in its disabled state is entered here. This image is only displayed if the State group of radio buttons on the General 1 page has been set to Button disabled. A Transaction FW class can also disable a button.
The ... button, the Button disabled input field and the default check box are identical to the equivalent options for Button up. The parameter that is evaluated for the image when the default check box is activated is named ImageDisabled (see "ImageDisabled" on page 653 in the Parameters chapter).
Button pressed: The image that describes the button in its pressed state is entered here. This image is only displayed if Toggle lock on the General 1 page has been set to yes and the button is pressed. Pressing the button again brings back the image for Button up.
The ... button, the Button pressed input field and the default check box are identical to the equivalent options for Button up. The parameter that is evaluated for the image when the default check box is activated is named ImagePressed (see "ImagePressed" on page 653 in the Param-eters chapter).
Button control - Icon page
The images for an icon and the position of the icon are defined on this page.
108 May 2008
The Button control Controls
Fig. 32: Button control - Icon page
Icon for the active button (up/down/pressed): A coloured image that is to appear on the button can be specified here.
...: button: This button calls a standard file opening dialog which is not explained here. The designer can select the required image. The name of the image and the complete path are entered in the Icon for the active button input field.
To move complete Webs without conversion it is far better to use relative paths for images. The images could, for example, be stored in a subdirectory which is accessed relatively by means of .\Images\.... Accordingly, when an image name has been defined in the Icon for the active button input field, the path has to be changed from absolute to relative. The Button control itself cannot enter a relative path because it is unclear where the relative base address begins.
Icon for the active button input field: The name and path of the image file can be entered manually here if they are known.
Icon for the disabled button: A grayed image can be entered for an icon here. This image is only displayed if the State group of radio buttons on the General 1 page has been set to disabled or if the application has disabled the button.
May 2008 109
Controls Button Control - Property Listing
The ... button and the Icon for the disabled button input field areidentical to the equivalent options for Icon for the active button (up/down/pressed).
X position: The X position of the icon is specified in pixels in this input field. The origin is the top left corner of the button image. The distance from the left edge is specified here.
centered check box: If this check box is activated, the icon is centered horizontally. The X position input field cannot be selected if this check box is activated.
Y position: The Y position of the icon is specified in pixels in this input field. The origin is the top left corner of the button image. The distance from the top edge is specified here.
centered check box: If this check box is activated, the icon is centered vertically. The Y position input field cannot be selected if this check box is activated.
Button Control - Property Listing
The following list gives an overview about all Button Control properties in the HTML View of an HTML page.
Table 1: HTML properties of Button Control
Property Range Meaning/Reference
Scheme String Scheme(see also section ’Button control - General 3 page’ on page 99)
ImageUp String Button up graphic(see also section ’Button control - Graphic page’ on page 105)
110 May 2008
Button Control - Property Listing Controls
Icon String Icon for the active button (up/down/pressed)(see also section ’Button control - Icon page’ on page 108)
ImageDown String Button down graphic(see also section ’Button control - Graphic page’ on page 105)
ImagePressed String Button pressed graphic(see also section ’Button control - Graphic page’ on page 105)
ImageDisabled String Button disabled graphic(see also section ’Button control - Graphic page’ on page 105)
IconDisabled String Icon for the disabled button(see also section ’Button control - Icon page’ on page 108)
ImageUpDefault 0: do not use default graphic1 (default): Use default graphic from registry
Use of default graphic (see also section ’Button control - Graphic page’ on page 106)
ImagePressedDefault 0: do not use default graphic1 (default): Use default graphic from registry
Use of default graphic (see also section ’Button control - Graphic page’ on page 106)
Property Range Meaning/Reference
May 2008 111
Controls Button Control - Property Listing
ImageDownDefault 0: do not use default graphic1 (default): Use default graphic from registry
Use of default graphic (see also section ’Button control - Graphic page’ on page 107)
ImageDisabledDefault 0: do not use default graphic1 (default): Use default graphic from registry
Use of default graphic (see also section ’Button control - Graphic page’ on page 107)
IconAlignX 0 - 32787 (default is 5) X-position of icon on a button (see also section ’Button control - Icon page’ on page 109)
IconAlignY 0 - 32787 (default is 5) Y-position of icon on a button (see also section ’Button control - Icon page’ on page 109)
IconXCentered 0: Icon not centered1 (default): Icon centered
Possibility to center icon in x direction (see also section ’Button control - Icon page’ on page 109)
IconYCentered 0: Icon not centered1 (default): Icon centered
Possibility to center icon in y direction (see also section ’Button control - Icon page’ on page 109)
FieldID 0 - 32787 Unique ID of Button (see also section ’Button control - General 2 page for function keys’ on page 86)
Property Range Meaning/Reference
112 May 2008
Button Control - Property Listing Controls
Href String HTML page to navigate to when button is pressed (see also section ’Button control - General 2 page for selection buttons’ on page 92)
ViewState 0 (default): Button up1: Button pressed2: Button disabled3: Button hidden
State of button (see also section ’Button control - General 1 page’ on page 84)
RTViewState String, created automatically:[#Var_FunctionValue_Viewstate_s#]
Viewstate during runtine, if variable is available. This property weights more than ViewState (see also section ’Hiding controls with Viewstate variables’ on page 274)
Softkey F1 (default) - F8,0 - 9,L,R,Cancel,Confirm,Correct,Help,Print,none
Connected softkey (see also section ’Button control - General 2 page for function keys’ on page 86)
Selection 0: do not use1 (default): Functionkey2: Selection Button3: Radio Button
Type of Button (see also section ’Button control - General 1 page’ on page 81)
Property Range Meaning/Reference
May 2008 113
Controls Button Control - Property Listing
HTMLStepSwitch 0 (default): Step after Button1: HTML Page
Selection of button action (see also section ’Button control - General 2 page for selection buttons’ on page 92)
Function String User defined name of button, read from the registry. Used to locate FunctionValue from registry (see also section ’Button control - General 2 page for function keys’ on page 85) or (see also section ’Button control - General 2 page for selection buttons’ on page 91) or (see also section ’Button control - General 2 page for radio buttons’ on page 97)
FunctionValue String, (default is TEMP)
String to identify the button from the steps (see also section ’Button control - General 2 page for function keys’ on page 85)
Identification 0 (default): do not change
not used any longer
Property Range Meaning/Reference
114 May 2008
Button Control - Property Listing Controls
RadioButtonName String Selected radio Button that belongs to the radio button group (see also section ’Button control - General 2 page for radio buttons’ on page 98)
ChipCard 0 (default): do not change
not used any longer
HoldPressedState 0: no1: yes2 (default): default
Toggle (see also section ’Button control - General 1 page’ on page 83)
PressOffsetDefault 0: Do not read from registry1 (default): read from registry
Default checkbox for Shift in pixels. (see also section ’Button control - General 1 page’ on page 84)
PressOffset 0 - 32787 (default is 3) Shift in pixels (see also section ’Button control - General 1 page’ on page 84)
AudioResponse Predefined String (see also section ’Button control - General 3 page’ on page 99)
Sound Response (see also section ’Button control - General 3 page’ on page 99)
AdditionalFeatures Predefined String Used for showing ampersands (see also section ’Show an ampersand (&) in Caption of a control’ on page 194)
Property Range Meaning/Reference
May 2008 115
Controls Button Control - Property Listing
HtmlWindow 0 (default): not in a new window1: in a new window
page to navigate to will show up ’in a new window’ (see also section ’Button control - General 2 page for selection buttons’ on page 93)
HTMLxPos Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000
X coordinate for new window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
HTMLyPos Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000
Y coordinate for new window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
HTMLWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000
Width for new window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
Property Range Meaning/Reference
116 May 2008
Button Control - Property Listing Controls
HTMLHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000
Height for new window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
Text String Button caption (see also section ’Button control - Caption page’ on page 101)
PosXYDefault 0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position (see also section ’Button control - Caption page’ on page 104)
TextAlignX -32788 - 32787Default: 0
Caption X position (see also section ’Button control - Caption page’ on page 103)
TextAlignY -32788 - 32787Default: 0
Caption Y position (see also section ’Button control - Caption page’ on page 103)
XCentered -1 (default): do not change
Not used any longer
TextAlignXTyp 0: left1 (default): center2: right
X position alignment (see also section ’Button control - Caption page’ on page 103)
Property Range Meaning/Reference
May 2008 117
Controls Button Control - Property Listing
YCentered 0: use TextAlignY1 (default): centered
Y position alignment (see also section ’Button control - Caption page’ on page 104)
FontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box (see also section ’Button control - Caption page’ on page 105)
Font String: Name of Font Fontname (see also section ’Button control - Caption page’ on page 104)
FontCodePage 0 (default) - 32787 Number of codepage for Font
Font code page. Please pick the right number up in a button control in Frontpage (see also section ’Button control - Caption page’ on page 104)
TextSize 1 - 32787 (default is 12) Font Size (see also section ’Button control - Caption page’ on page 104)
TextBold 0: regular1 (default): Bold
Font characteristic Bold (see also section ’Button control - Caption page’ on page 104)
TextItalic 0 (default): Regular1: Italic
Font characteristic Italic (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
118 May 2008
Button Control - Property Listing Controls
TextUnderline 0 (default): Regular1: Underline
Font characteristic Underline (see also section ’Button control - Caption page’ on page 104)
TextStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout (see also section ’Button control - Caption page’ on page 104)
ActiveColourDefault 0: Use TextColour1 (default): Use TextColour from registry
Colour active default checkbox (see also section ’Button control - Caption page’ on page 102)
InactiveColourDefault 0: Use TextColourDis-abled1 (default): Use TextCo-lourDisabled from registry
Colour disabled default checkbox (see also section ’Button control - Caption page’ on page 103)
TextColour 0 - 16777215 (default is 0)
Text colour for active text (see also section ’Button control - Caption page’ on page 102)
TextColourDisabled 0 - 16777215 (default is 8421504)
Text colour for inactive text (see also section ’Button control - Caption page’ on page 103)
TextLayerCount 1 - 32787 (default is 1) Number of Text Layer (see also section ’Button control - Caption page’ on page 101)
Only edit the following TextLayer... properties, if TextLayoutCount is greater than 1. Use ;; as separator for each layers value.
Property Range Meaning/Reference
May 2008 119
Controls Button Control - Property Listing
TextLayerText String Button caption for different layers. (see also section ’Button control - Caption page’ on page 101)
TextLayerPosXYDe-fault
0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextAlignX -32788 - 32787Default: 0
Caption X position for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerTextAlignY -32788 - 32787Default: 0
Caption Y position for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerXCentered -1 (default): do not change
Not used any longer
TextLayerText-AlignXTyp
0: left1 (default): center2: right3: use this for shadowing effect
X position alignment for different layers. (see also section ’Button control - Caption page’ on page 103). If shadowing efect shall be used, use TextLay-erTextAlignX and TextLayerTextAlignY for shadow offset (see also section ’Shadowing effect of control capture’ on page 195).
Property Range Meaning/Reference
120 May 2008
Button Control - Property Listing Controls
TextLayerYCentered 0: use TextLayerText-AlignY1 (default): centered
Y position alignment for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box for different layers. (see also section ’Button control - Caption page’ on page 105)
TextLayerFont String: Name of Font Fontname for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFont-CodePage
0 (default) - 32787 Number of codepage for Font
Font code page for different layers. Please pick the right number up in a button control in Frontpage (see also section ’Button control - Caption page’ on page 104)
TextLayerTextSize 1 - 32787 (default is 12) Font Size for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextBold 0: regular1 (default): Bold
Font characteristic Bold for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextItalic 0 (default): Regular1: Italic
Font characteristic Italic for different layers. (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 121
Controls Button Control - Property Listing
TextLayerText-Underline
0 (default): Regular1: Underline
Font characteristic Underline for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerActiveColour-Default
0: Use TextLayerText-Colour1 (default): Use TextColour from registry
Colour active default checkbox for different layers. (see also section ’Button control - Caption page’ on page 102)
TextLayerInactiveCo-lourDefault
0: Use TextColourDis-abled1 (default): Use TextLayerTextColourD-isabled from registry
Colour disabled default checkbox for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerTextColour 0 - 16777215 (default is 0)
Text colour for active text for different layers. (see also section ’Button control - Caption page’ on page 102)
TextLayerTextColourD-isabled
0 - 16777215 (default is 8421504)
Text colour for inactive text for different layers. (see also section ’Button control - Caption page’ on page 103)
Property Range Meaning/Reference
122 May 2008
The Edit control Controls
The Edit control
The Edit control is used for customer inputs. As for the Button control, different images can be defined for the different states of the Edit control. A check routine must be specified for each input field. Inputs are checked as soon as they have been confirmed. An Internet page can be specified as a correction message for each of the various error exits. Each Edit control can call its own HTML Help page, and display the specific operating hint for the input in question. A caption, together with its font and colour, can be selected for the image for every input field. The input length, position, orientation, colour and font can be freely defined. The Contents (STD/ATM) control handles the sequence of input fields on a page.
The Edit control can be used to show the asterisks for PIN input as well. So the EPP Control must not be used any longer. The Edit control has the ability to use schemes as well. This is not possible with the EPP control.
The input area (see also section ’Edit control - Input page’ on page 133) of the edit control will automatically be shown with the colour, which is at the fixel position of the intersection point of the diagonals of the area.
Edit control - General 1 page
The input field for a selected function is specified on this page. The check to be performed on this input field is defined by a registry parameter and cannot be changed here. Additional check parameters can be set by opening a dialog. For each return code that is returned from the check function a different Internet page can be assigned.
May 2008 123
Controls The Edit control
Fig. 33: Edit control - General 1 page
Function: The function for which the input field has been implemented is selected from this list box. The ProTopas/Web-Extensions concept only allows input fields to be created for those functions which have been stored in the application. Generally, input fields will need to be post-edited or initialized. This can only be done with input fields that are known in the appli-cation.
There is one fixed keyword to be selected as well: EPP control. The Edit control can act as an input control for PIN input with this selection. There are a lot of properties, which are not available in this case (see also section ’The Edit controls use for PIN input’ on page 139).
The content of the list box shown here is read from the Registry under the Transaction key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionActiveX
PCEdit
124 May 2008
The Edit control Controls
TransactionRemittance...
Fieldname: All input fields which have been created for the function shown in the Function list box are displayed in this list box. In other words, the actual input field is assigned to the Edit control here.
The content of the list box shown here is read from the Registry under the Transaction/(function) key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX
PCEditTransaction
RemittanceCustomer name...
Seq. No.: A unique number ranging from 0 to 999 must be assigned to each Edit control in order to define the sequence of inputs. The Contents (STD/ATM) control ensures that the input focus moves from field to field. An error is written to the error log at runtime if two Edit controls have the same sequence number.
Softkey: The name of the softkey next to the screen to which this input field is going to be assigned is specified in this list box. This applies to systems which do not have a touchscreen but do have softkeys next to the screen. The arrangement of softkeys next to the screen is given in Fig. 22: "Positions of the softkeys". See page 86. It is not possible to configure the numerical EPP Keys 1 - 0 as Softkeys, as it appears in the Button control.
Input timeout: The value that is set here defines when there should be a beep if a customer does not make an input in an input field.
It is possible to select No timer or Default (see "InputTimeoutHalf" on page 664 in the Parameters chapter) in this Combobox additionally.
This value does not define the time after which the timeout return code is sent to the application.
May 2008 125
Controls The Edit control
This value does not define the time after which the application returns to the welcome loop with a message.
Check: The items in this area define the parameters for checking the input and allow the Internet page to be specified on which each individual message is output.
The applicable check is linked to the input field via an entry in the Registry:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCEditTransaction
RemittanceCustomer name
CheckRoutine = 1Variable = VAR_INPUT_PAYER_S
When a new function is developed, a complete Registry branch has to be created for the inputs in this function. This is done under the Transaction key. The numbers of the check routine and the input variable have to be defined for each input field. In the example above, an input field for the customers name in a Remittance order has been created.
The CheckRoutine parameter determines the stored check routine on the basis of a numeric value. There are a few standard routines defined, which can be used here:
1: Alphanumeric check2: Numeric check3: Date check4: Amount check
In our example we are using the Alphanumeric check. In addition, the name of the input variable is stored in the Variable parameter in which the value is stored after the input (see "Input variables" on page 413).
If the standard checks are inadequate, custom checks can be added (see "Input checks" on page 411).
Parameter button: When this button is pressed, additional parameters can be defined specifically for the check. A new dialog page is opened, depending on the inputs (see "Standard input check dialogs" on page 427).
126 May 2008
The Edit control Controls
Error: All messages returned by the check routine are displayed in this list box. An Internet page has to be specified to output each message that is returned. These messages are generated in the Dialog function at design time (see "The Dialog() function" on page 423). Up to 10 messages are allowed to be generated per input check.
HTML page: This is where the Internet page for the error message is specified for the message code shown in the Error list box.
in new window check box: This check box has to be activated if the error message needs to be output like a popup window. If so, the size of the popup window has to be specified under Coordinates. See page 93.
Coordinates button: The coordinates that are to be used for displaying the error message as a popup window are specified here. See page 93. The coordinates entered here apply in common to all errors.
Edit control - General 2 page
The state of the input field, the operating hint and the Internet page for Help are specified on this page. The designer can also select whether the input has to be confirmed and whether a beep is required at the end of the input field.
Fig. 34: Edit control - General 2 page
May 2008 127
Controls The Edit control
State of inputfield: The state of the input field when the Internet page is loaded is specified here. The various states can, however, be overridden by setting variables in the application (see "Hiding controls with Viewstate variables" on page 274).
up: When the Internet page is loaded, the input field shows the image defined for the Input field up parameter on the Graphic page (see "Edit control - Graphic page" on page 129). In this state, the input field can be selected and thus activated by the customer.
disabled: When the Internet page is loaded, the input field shows the image defined for the Input field disabled parameter on the Graphic page (see "Edit control - Graphic page" on page 129). In this state, the input field cannot be selected by the customer.
hidden: In this state, the input field is on the page but it is hidden out of sight.
Shift in pixels: This input field is used to specify the number of pixels by which the caption and the icon are shifted to the right and down when the input field is selected in order to give the impression of a pressed input field. The number of pixels depends on the design of the images. If the optical impression is conveyed that the input field protrudes about 3 pixels, 3 has to be specified here.
default: If this check box is activated, the value for the shift in pixels is read from the PressOffset parameter at runtime (see "PressOffset" on page 659 in the Parameters chapter). By changing this parameter it is therefore possible to give in one action a different appearance to all input fields whose shift in pixels has been set to default.
HREF for Help: This field is used to specify the name of an Internet page that is displayed at the moment when the input field is active and the Help function key is pressed. Context-sensitive Help can thus be implemented here.
in new window checkbox: This check box has to be activated if the Help text needs to be output like a popup window. If so, the size of the popup window has to be specified in Coordinates. See page 93.
Coordinates button: The coordinates that are to be used for displaying Help as a popup window are specified here. See page 93.
Confirm input check box: If this check box is activated, the input must be confirmed. Both the <Enter> key on the alphanumeric keyboard and the <Confirm> button on the screen or on the Encrypted PIN Pad (EPP) can be
128 May 2008
The Edit control Controls
used to confirm the input. If this check box is not activated, control passes automatically to the next input field when the maximum number of characters is reached.
Beep at the end of input check box: This check box can only be activated if the Confirm input check box has been activated. In this case, a beep is output when the maximum number of characters in the input field has been reached.
Cursor position at the end check box: This check box has to be activated if the caret is to be placed at the end of the input if a field is selected again.
Instruction hint: An operating hint can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. Consequently a specific operating hint can be displayed for each input field. The operating hint appears at that point on the Internet page which is identified by the HTML tag <p id="SubHeader">.
Edit control - General 3 page
The Scheme and Sound response of the input field is defined on this page. These field can be specified in the same way as for the Button control.
Fig. 35: Edit control - General 3 page
May 2008 129
Controls The Edit control
The description of this page is identical to that of the General 3 page in the Button control (see "Button control - General 3 page" on page 98).
Edit control - Headline page
The caption of the input field is defined on this page. The text layer, position, colour and font can be specified in the same way as for the Button control.
Fig. 36: Edit control - Headline page
The description of this page is identical to that of the Caption page in the Button control (see "Button control - Caption page" on page 101).
Edit control - Graphic page
The images for the various states of the input field are defined on this page.
130 May 2008
The Edit control Controls
Fig. 37: Edit control - Graphic page
Input field up: The image that describes the input field in its up state is entered here.
...: button: This button calls a standard file opening dialog which is not explained here. The designer can select the required image. The name of the image and the complete path are entered in the Input field up input field.
To move complete Webs without conversion it is far better to use relative paths for images. The images could, for example, be stored in a subdirectory which is accessed relatively by means of .\Images\.... Accordingly, when an image name has been defined in the input field, the path has to be changed from absolute to relative. The Edit control itself cannot enter a relative path because it is unclear where the relative base address begins.
Input field up: The name and path of the image file can be entered manually here if they are known.
default check box: The name of the image file cannot be entered if this check box is activated. Instead, the image is read from the ImageUp parameter (see "ImageUp" on page 658 in the Parameters chapter). By changing this parameter it is therefore possible to give a different appearance in one action to all input fields that have been set to default.
May 2008 131
Controls The Edit control
Input field pressed: The image that describes the input field in its pressed state is entered here. In this case, the caret is visible in the input field and the customer can enter data.
The ... button, the Input field pressed input field and the default check box are identical to the equivalent options for Input field up. The parameter that is evaluated for the image when the default check box is activated is named ImagePressed (see "ImagePressed" on page 658 in the Param-eters chapter).
Input field disabled: The image that describes the input field in its disabled state is entered here. This image is only displayed if the State group of radio buttons on the General 2 page has been set to disabled. An application can also disable an input field.
The ... button, the Input field disabled input field and the default check box are identical to the equivalent options for Input field up. The parameter that is evaluated when the default check box is activated is named ImageDisabled (see "ImageDisabled" on page 658 in the Parameters chapter).
Edit control - Input page
The size of the input field, the maximum number of characters and lines, and the colour, font and orientation of the input are defined on this page.
132 May 2008
The Edit control Controls
Fig. 38: Edit control - Input page
Input orientation: This group of radio buttons controls the positioning of the caret in an empty input field.
right-justified: The caret is located at the right end of the input field. Each character that is input appears to the right of the caret initially. Entering a new character shifts the previous ones to the left.
left-justified: At the beginning, the caret is located at the left end of the input field. Each character that is input appears to the right of the caret and shifts the caret further to the right.
centered: At the beginning, the caret is located at the center of the input field. Each character that is input appears to the right of the caret and shifts the caret slightly to the right. All previous characters are shifted slightly to the left so that the character that has just been input is always placed at the center of the input field.
Input limits — max. chars: The maximum number of characters is defined in this input field. This figure must be geared to the selected font size. If not all characters will fit into the input field at the selected font size, there is a beep and the maximum number of characters cannot be reached.
May 2008 133
Controls The Edit control
The maximum number of characters is entered in the variable (Name-of-Input-Variable)_MAXCHARS_L when the Internet page is loaded. This means the check function (see "The Check() function" on page 424) can draw upon this value in order to output detailed error messages if the conversion of umlauts causes the maximum number of characters to be exceeded.
Input limits — max. lines: The maximum number of lines is defined in this input field. This figure must be geared to the selected font size. If not all lines will fit into the input field at the selected font size, confirmation causes the input field to be exited before the maximum number of lines is reached.
Input range: The size and position of the input field are defined in the following input fields:
X pos: The X position of the input range is specified in pixels in this input field. The origin is the top left corner of the Edit control. The distance from the left edge is specified here.
Y pos: The Y position of the input range is specified in pixels in this input field. The origin is the top left corner of the Edit control. The distance from the top edge is specified here.
Width: The width of the input range is entered in pixels here.
Height: The height of the input range is entered in pixels here.
default check box: If this check box is activated, the size and position of the input field are read from the following parameters at runtime:InputAlignX corresponding to X pos(see "InputAlignX" on page 662 in the Parameters chapter)InputAlignY corresponding to Y pos(see "InputAlignY" on page 662 in the Parameters chapter)InputWidth corresponding to Width(see "InputWidth" on page 663 in the Parameters chapter)InputHeight corresponding to Height(see "InputHeight" on page 663 in the Parameters chapter)
Don’t display preliminary input: Any content of the input variable will not be displayed, when this checkbox is checked. The input variable, the unfor-matted input variable, the input status variable, the variable for the maximum numbers of input characters and the error counter variable will be reset, too. Another way not to show the content of an input variable is to initialize the input variable and unformatted input variable in the application with a null string and leave this property unchecked.
134 May 2008
The Edit control Controls
Font colour for active: Three fields define the colour setting for the font.
default check box: If this check box is activated, the font colour is read from the InputColour parameter at runtime (see "InputColour" on page 662 in the Parameters chapter). The Standard colour dialog button and the input field for the colour cannot be selected if this check box is activated. The value to be stored in InputColour can be ascertained by calling the standard colour dialog here once and selecting a colour. The colour is then output as a numeric value in the input field for the colour for active and can be read there.
Input field for colour: A numeric value can be input here to define a colour. However it is better to use the standard colour dialog to select a colour. The value for the selected colour is then entered here automati-cally.
Selecting the Font button causes the text colour defined there to be entered in this field. Any font colour that had been defined beforehand in the standard colour dialog is overwritten by this one. It is better to select the font first and then the colour if a special colour outside the 16 basic colours is required.
... button (standard colour dialog): Pressing this button opens the standard colour dialog (Fig. 29: "Standard colour dialog"). See page 103. Refer to the Windows NT Online Help for a description of the options in this dialog. This dialog can also be called when selecting colours for the Windows NT Desktop.
Font colour for inactive: The same three fields are used to define the font colour for a inactive (disabled) input field as for an active one. If the default check box is activated, the colour is read from the InputColourDisabled parameter at runtime (see "InputColourDisabled" on page 662 in the Param-eters chapter).
DF (Direct Format) Checkbox: If the input shall be formatted directly during input, please check this box. The Button Direct format will be activated then. Direct format may be used for amount input or date input, to show the separator characters directly during, while the customer does not have to type it in, e.g.
Direct format button: By pressing this button the property page Direct Format is activated, to configure the type of each character of the input field. In this property page, the table at the top shows one column for each input character. To change the settings for a special character, its
May 2008 135
Controls The Edit control
column has to be activated with the mouse. With the properties under the table, the highlighted character will be configured. The lines in the table have the following meanings:
1. Pre-allocation character or RealTime, which means, character is shown, when page is loaded.
2. Character is writeable or not, which means Edit or No Edit.
3. Visible At input or Always.
4. Permitted characters (All, Numeric, Alpha or self-defined charac-terset).
5. Character transformation (None, Uppercase, Lowercase).
6. Pre-allocation selected from the Pre-allocation Listbox, from the Special Listbox or None.
Fig. 39: Edit control - Direct format
Writeable: In this radiobuttons it is specified, if the character may be overridden, or if the caret passes this character. Normally these buttons are disabled, which means, the character is writeable. If any predefined Pre-allocation from the drop-down list is set, this field is activated. Now there is the option to switch this character to not writeable, which means, during input the character may not be overridden. The caret jumps automatically to the next writeable character.
136 May 2008
The Edit control Controls
Yes: The character may be overridden.
No: During input the caret jumps automatically to the next writeable character.
Visible: These radiobuttons specify, if a Pre-allocated character shall be visible, when the page is loaded or if it should be shown, when the character beneath this character has been typed in. So these radiobuttons are disabled. They will be enabled, when a Pre-allocation is specified.
At input: This radiobutton means, that the pre-allocated character shall be displayed, when the character beneath this character has been typed in.
Always: The pre-allocated character is shown, when the page is loaded.
Character transformation: It may be specified here, if Alpha characters are directly set to Uppercase or Lowercase.
None: No transformation is done. Character stays as it is.
Uppercase: Alpha characters are set to Uppercase, directly after typing the character in.
Lowercase: Alpha characters are set to Lowercase, directly after typing the character in.
Pre-allocation: This field contains an edit field to specify any sign, which should be displayed at the current character position and a listbox with predefined signs. If an item from the listbox is selected, the input field is disabled. It is only possible to enter a sign in the edit field, if None in the listbox is selected. The following items may be choosen from the listbox:
– None
– Date separator
– Time separator
– Decimal symbol
– Digit grouping symbol
– Currency symbol
May 2008 137
Controls The Edit control
All these symbols are chosen from the actual language specific settings in the HTML-Generator (see also section ’Formatting settings’ on page 288).
Permitted characters: In this combobox it can be chosen, if all Alpha characters, Numeric characters or All characters may be edited. This field is only active, if no Pre-allocation is set. Additionally every possible permitted character at this position can be entered in this combobox directly.
Special: In this Listbox Amount Entry DDC may be selected. This format must be set at the position of the decimal sign. Amount entry for DDC means, that first the entered numerical values are displayed from the right to the left. If the separator sign is pressed the next numerical values are treated as post separator digits. They are displayed from the left to the right. All other properties are disabled when Amount Entry DDC is chosen.
Clear all button: This button resets the complete table, which means the direct format for the complete input string.
Font button: The font size for the input is defined by opening the standard font dialog. This is only available if the default check box has not been activated (see Fig. 30: "Standard font dialog"). Refer to the Windows NT Online Help for a description of the options in this dialog. This dialog is used, for instance, in the Notepad editor to define the font.
default check box: If the default check box is activated, the Font button cannot be selected. In this case, the font and the font settings are read from the following parameters at runtime:
InputFont corresponding to Font(see "InputFont" on page 661 in the Parameters chapter)InputSize corresponding to Size(see "InputSize" on page 662 in the Parameters chapter)InputBold corresponding to Bold(see "InputBold" on page 663 in the Parameters chapter) InputItalic corresponding to Italic(see "InputItalic" on page 663 in the Parameters chapter)InputStrikeout corresponding to Strikeout(see "InputStrikeout" on page 664 in the Parameters chapter)InputUnderline corresponding to Underline(see "InputUnderline" on page 663 in the Parameters chapter)
138 May 2008
The Edit control Controls
Edit control - Icon page
The images for an icon and the position of the icon are defined on this page.Fig. 40: Edit control - Icon page
The description of this page is identical to that of the Icon page in the Button control (see "Button control - Icon page" on page 107).
Edit control - Not allowed character page
The characters, which should not be edited using the alphanumeric keyboard or EPP must be checked on this property page.
May 2008 139
Controls The Edit controls use for PIN input
Fig. 41: Edit control - Not allowed character page
Beep at input of not allowed character: If this checkbox is checked, at every attempt to enter a not allowed character the system beeps.
Not allowed character table: Every character which may not be entered via the keyboards must be checked on this property page.
The Edit controls use for PIN input
The edit control can be used for PIN input as well. In this case a lot of properties on the property pages are hidden, but the configuration of the remaining properties is the same to the use at the Edit control. If there are specialities they are described here.
Edit control (PIN input) - General 1 page
If EPP control is selcted on property page General 1 all other properties are not shown any longer.
140 May 2008
The Edit controls use for PIN input Controls
Fig. 42: Edit control (PIN input) - General 1 page
Edit control (PIN input) - General 2 page
Property page General 2 is disabled completely. An active Edit control for PIN input will have the state disabled, but it can not the switched to active again.
May 2008 141
Controls The Edit controls use for PIN input
Fig. 43: Edit control (PIN input) - General 2 page
Edit control (PIN input) - General 3 page
This property page is the same for the PIN input use as for standard Edit controls use (see also section ’Edit control - General 3 page’ on page 128).
Edit control (PIN input) - Headline page
On the Headline property page there are less properties than in the standard Edit control. A text can be entered (even on different layers), the position, color and font of this text. Because the control is shown as disabled, only the disabled properteis have to be configured (see also section ’Edit control - Headline page’ on page 129).
142 May 2008
The Edit controls use for PIN input Controls
Fig. 44: Edit control (PIN input) - Headline page
Edit control (PIN input) - Graphic page
On the Graphic property page only the graphic for a disabled state can be edited (see also section ’Edit control - Graphic page’ on page 129).
May 2008 143
Controls The Edit controls use for PIN input
Fig. 45: Edit control (PIN input) - Graphic page
Edit control (PIN input) - Input page
On this property page the output of the asterisks is configured. The orientation, input range, font and color of this output is configured. Even the maximum Input limit (number of digits to be shown) must be configured. It will be okay to leave this at the maximum of 100 digits, even if only 4 PIN digits have to be entered. Multiline - of course - is not possible (see also section ’Edit control - Input page’ on page 131).
144 May 2008
The Edit controls use for PIN input Controls
Fig. 46: Edit control (PIN input) - Input page
Edit control (PIN input) - Icon page
On the Icon property page oly the icon for the disbaled inputfield and the X and Y positions are configured (see also section ’Edit control - Icon page’ on page 138).
May 2008 145
Controls The Edit controls use for PIN input
Fig. 47: Edit control (PIN input) - Icon page
Edit control (PIN input) - Not allowed character page
This property page is the same for the PIN input use as for standard Edit controls use (see also section ’Edit control - Not allowed character page’ on page 138).
Masked edit for standard edit control
This function must not be used for Edit control used for PIN input, because in this case asterisks are shown as default. However when an Edit control shall act as a password input field, this functionality must be used. Unfortunately there is no property on the property pages for this behaviour. The property must be configured in an HTML sourcecode editor directly. The property to set is Additional-Features. The keyword WX_INPUT_FLAG_ACTASPASSWORDFIELD has to be added at the beginning of the content of the property.
Example:
Property AdditionalFeatures of the input field:
146 May 2008
The Edit controls use for PIN input Controls
<param name="AdditionalFeatures" value="WX_INPUT_FLAG_ACTASPASSWORDFIELD">
Hide the caret in standard edit control
Unfortunately there is no property on the property pages for this behaviour. The property must be configured in an HTML sourcecode editor directly. The property to set is AdditionalFeatures. The keyword WX_INPUT_FLAG_HIDECARET has to be added into the content of the property. Any separator is optional, the control is checking the keyword.
Example:
Property AdditionalFeatures of the input field:
<param name="AdditionalFeatures" value="WX_INPUT_FLAG_ACTASPASSWORDFIELD WX_INPUT_FLAG_HIDECARET">
Check max. chars for EPP keyboard
If you are working with a EPP keyboard only it is possible to restrict the maximum number of characters to be entered by writing the keyword WX_INPUT_FLAG_CHECKMAXCHARONEPP into the property AdditionalFeatures. When you are working with an aphanu-meric or combined keyboard it is possible to see the character entered after reaching the max. chars limit of a millisecond before it is deleted. If you want to supress this (which is only possible while using the EPP keyboard only) please use this option.
Unfortunately there is no property on the property pages for this behaviour. Any separator is optional, the control is checking the keyword.
Example:
Property AdditionalFeatures of the input field:
<param name="AdditionalFeatures" value="WX_INPUT_FLAG_CHECKMAXCHARONEPP">
May 2008 147
Controls Edit Control - Property Listing
Delete the content after customer error in edit control
This property may be used to delete the contents of an edit field, after the input error popups have been closed, so the customer has to type in the new value from scratch.
Unfortunately there is no property on the property pages for this behaviour. The property must be configured in an HTML sourcecode editor directly. The property to set is AdditionalFeatures. The keyword WX_CHECK_DELETEONERROR has to be added into the content of the property. Any separator is optional, the control is checking the keyword.
Example:
Property AdditionalFeatures of the input field:
<param name="AdditionalFeatures" value="WX_CHECK_DELETEONERROR">
Edit Control - Property Listing
The following list gives an overview about all Edit Control properties in the HTML View of an HTML page.
Table 2: HTML properties of Edit Control
Property Range Meaning/Reference
Scheme String Scheme(see also section ’Button control - General 3 page’ on page 99)
ImageUp String Input field up graphic(see also section ’Edit control - Graphic page’ on page 130)
148 May 2008
Edit Control - Property Listing Controls
IconUp String Icon for the active input field (up/pressed)(see also section ’Button control - Icon page’ on page 108)
ImagePressed String Input field pressed graphic(see also section ’Edit control - Graphic page’ on page 131)
ImageDisabled String Input field disabled graphic(see also section ’Edit control - Graphic page’ on page 131)
IconDisabled String Icon for the disabled input field(see also section ’Button control - Icon page’ on page 108)
ForbiddenLetter List of :00032 - :00255 values
List of ASCII codes of selected (forbidden) characters with syntax :nnnnn, where nnnnn is the ASCII code with leading zeroes (see also section ’Edit control - Not allowed character page’ on page 139)
BeepAtForbiddenLet-terInput
0 (default): Do not beep1: Beep
Beep when pressing a not allowed character (see also section ’Edit control - Not allowed character page’ on page 139)
Property Range Meaning/Reference
May 2008 149
Controls Edit Control - Property Listing
PreliminaryInputFor-bidden
0 (default): Input variables will not be reset1: Reset of Input variable at page load
Checkbox Don’t display preliminary input (see also section ’Edit control - Input page’ on page 133)
FunctionName String Name of transaction this field is used in. Is reference to registry entry (see also section ’Edit control - General 1 page’ on page 123)
FieldName String Fieldname in this trans-action. Is reference to registry entry (see also section ’Edit control - General 1 page’ on page 124)
FieldID String: Variable name (please use suffix _S for input variables)
Variable name, which is automatically read from registry under key FunctionName, FieldName (see also section ’Input variables’ on page 413)
FieldNumber 1 - 32787 Seq. No (see also section ’Edit control - General 1 page’ on page 124)
SoftkeyValue F1 (default) - F8,none
Connected softkey (see also section ’Edit control - General 1 page’ on page 124)
Timeout 0 (no timer) - 32787 default is 600
Input Timeout (see also section ’Edit control - General 1 page’ on page 124)
Property Range Meaning/Reference
150 May 2008
Edit Control - Property Listing Controls
ConfirmInput 0 (default): Do not confirm1: Confirm the input
Confirm input check box (see also section ’Edit control - General 2 page’ on page 127)
Beep 0 (default): do not beep1: beep
Beep at the end of input check box (see also section ’Edit control - General 2 page’ on page 128)
CursorPosition 0 (default): caretpo-sition at start1: caretposition at end
caretposition at end (see also section ’Edit control - General 2 page’ on page 128)
CorrectHref0 String with syntax nn:pagename like8:Mypage.htm
HTML Page to navigate to at input errors from CCCheckFW. Each input error is filled seqencial into CorrectHref0, ...Href1, ...Href2, ...(see also section ’Edit control - General 1 page’ on page 126)
CorrectHref1 see CorrectHref0 see CorrectHref0
CorrectHref2 see CorrectHref0 see CorrectHref0
CorrectHref3 see CorrectHref0 see CorrectHref0
CorrectHref4 see CorrectHref0 see CorrectHref0
CorrectHref5 see CorrectHref0 see CorrectHref0
CorrectHref6 see CorrectHref0 see CorrectHref0
CorrectHref7 see CorrectHref0 see CorrectHref0
CorrectHref8 see CorrectHref0 see CorrectHref0
CorrectHref9 see CorrectHref0 see CorrectHref0
Property Range Meaning/Reference
May 2008 151
Controls Edit Control - Property Listing
CorrectWindow0 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref0 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow1 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref1 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow2 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref2 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow3 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref3 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow4 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref4 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow5 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref5 (see also section ’Edit control - General 1 page’ on page 126)
Property Range Meaning/Reference
152 May 2008
Edit Control - Property Listing Controls
CorrectWindow6 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref6 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow7 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref7 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow8 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref8 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindow9 0 (default): not in a new window1: in a new window
Checkbox in a new window for CorrectHref9 (see also section ’Edit control - General 1 page’ on page 126)
CorrectWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 54)
X coordinate for correct window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
Property Range Meaning/Reference
May 2008 153
Controls Edit Control - Property Listing
CorrectWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 44)
Y coordinate for correct window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
CorrectWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 712)
Width for correct window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
CorrectWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 260)
Height for correct window (see also section ’Button control - General 2 page for selection buttons’ on page 94)
ViewState 0 (default): Input field inactive2: Input field disabled3: Input field hidden
State of input field (see also section ’Edit control - General 2 page’ on page 127)
Property Range Meaning/Reference
154 May 2008
Edit Control - Property Listing Controls
RTViewState String, created automatically:[#Inputvariable(without _s)_Viewstate_S#] i.e. Input variable: DLG_INPUT_RESULT1_SViewstate Variable: DLG_INPUT_RESULT1_VIEWSTATE_S
Viewstate during runtine, if variable is available. This property weights more than ViewState (see also section ’Hiding controls with Viewstate variables’ on page 274)
PressOffset 0 - 32787 (default is 3) Shift in pixels (see also section ’Edit control - General 2 page’ on page 127)
HelpHref String Href for help (see also section ’Edit control - General 2 page’ on page 127)
HelpWindow 0 (default): show help page in current window1: show help page in new, additional window
’in a new window’ for Href for help (see also section ’Edit control - General 2 page’ on page 127)
HelpWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 54)
X coordinate for help window (see also section ’Edit control - General 2 page’ on page 127)
Property Range Meaning/Reference
May 2008 155
Controls Edit Control - Property Listing
HelpWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 44)
Y coordinate for help window (see also section ’Edit control - General 2 page’ on page 127)
HelpWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 712)
Width for help window (see also section ’Edit control - General 2 page’ on page 127)
HelpWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 260)
Height for help window (see also section ’Edit control - General 2 page’ on page 127)
Instruction String Instruction hint (see also section ’Edit control - General 2 page’ on page 128)
AudioResponse Predefined String (see also section ’Button control - General 3 page’ on page 99)
Sound Response (see also section ’Button control - General 3 page’ on page 99)
Property Range Meaning/Reference
156 May 2008
Edit Control - Property Listing Controls
CaptionText String Caption text
CaptionAlignDefault 0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position (see also section ’Button control - Caption page’ on page 104)
CaptionAlignX 0 - 32787 (default is 19) Caption X position (see also section ’Button control - Caption page’ on page 103)
CaptionAlignXTyp 0 (default): left1: center2: right
X position alignment (see also section ’Button control - Caption page’ on page 103)
CaptionAlignY 0 - 32787 (default is 6) Caption Y position (see also section ’Button control - Caption page’ on page 103)
CaptionCenterX 0 (default): do not change
Not used any longer
CaptionCenterY 0 (default): use CaptionAlignY1: centered
Y position alignment (see also section ’Button control - Caption page’ on page 104)
CaptionFontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box (see also section ’Button control - Caption page’ on page 105)
CaptionFont String: Name of Font Fontname (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 157
Controls Edit Control - Property Listing
CaptionSize 1 - 32787 (default is 10) Font Size (see also section ’Button control - Caption page’ on page 104)
CaptionFontCodePage 0 (default) - 32787 Number of codepage for Font
Font code page. Please pick the right number up in an input field in Frontpage (see also section ’Button control - Caption page’ on page 104)
CaptionBold 0: regular1 (default): Bold
Font characteristic Bold (see also section ’Button control - Caption page’ on page 104)
CaptionUnderline 0 (default): Regular1: Underline
Font characteristic Underline (see also section ’Button control - Caption page’ on page 104)
CaptionItalic 0 (default): Regular1: Italic
Font characteristic Italic (see also section ’Button control - Caption page’ on page 104)
CaptionStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout (see also section ’Button control - Caption page’ on page 104)
CaptionColourDefault 0: Use CaptionColour1 (default): Use CaptionColour from registry
Colour active default checkbox (see also section ’Button control - Caption page’ on page 102)
Property Range Meaning/Reference
158 May 2008
Edit Control - Property Listing Controls
CaptionColourDis-abledDefault
0: Use CaptionColour-Disabled1 (default): Use CaptionColourDis-abled from registry
Colour disabled default checkbox (see also section ’Button control - Caption page’ on page 103)
CaptionColour 0 - 16777215 (default is 0)
Text colour for active caption (see also section ’Button control - Caption page’ on page 102)
CaptionColourDisabled 0 - 16777215 (default is 8421504)
Text colour for inactive caption (see also section ’Button control - Caption page’ on page 103)
InputJustified 0 (default): right justified1: left justified2: Centered
Input orientation (see also section ’Edit control - Input page’ on page 132)
InputAlignX 0 - 32787 (default is 16) Input range X pos (see also section ’Edit control - Input page’ on page 133)
InputAlignY 0 - 32787 (default is 28) Input range Y pos (see also section ’Edit control - Input page’ on page 133)
InputWidth 0 - 32787 (default is 272)
Input range width (see also section ’Edit control - Input page’ on page 133)
InputHeight 0 - 32787 (default is 18) Input range height (see also section ’Edit control - Input page’ on page 133)
Property Range Meaning/Reference
May 2008 159
Controls Edit Control - Property Listing
InputLineMax 1 - 32787 (default is 1) Input limits - max. lines (see also section ’Edit control - Input page’ on page 133)
InputCharMax 1 - 32787 (default is 100)
Input limits - max chars. If max. lines is greater than 1 this is the maximum no a chars. added from all lines (see also section ’Edit control - Input page’ on page 132)
InputFont String: Name of Font Fontname (see also section ’Edit control - Input page’ on page 137)
InputFontCodePage 0 (default) - 32787 Number of codepage for Font
Font code page. Please pick the right number up in an input field in Frontpage (see also section ’Button control - Caption page’ on page 104)
InputSize 1 - 32787 (default is 10) Font Size (see also section ’Button control - Caption page’ on page 104)
InputBold 0 (default): regular1: Bold
Font characteristic Bold (see also section ’Button control - Caption page’ on page 104)
InputUnderline 0 (default): Regular1: Underline
Font characteristic Underline (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
160 May 2008
Edit Control - Property Listing Controls
InputItalic 0 (default): Regular1: Italic
Font characteristic Italic (see also section ’Button control - Caption page’ on page 104)
InputStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout (see also section ’Button control - Caption page’ on page 104)
InputColour 0 - 16777215 (default is 0)
Text colour for active caption (see also section ’Edit control - Input page’ on page 134)
InputColourDisabled 0 - 16777215 (default is 8421504)
Text colour for inactive caption (see also section ’Edit control - Input page’ on page 134)
InputDirectFormatEn-abled
0 (default): Direct format inactive1: Direct format active
Direct Format checkbox (see also section ’Edit control - Input page’ on page 134)
Property Range Meaning/Reference
May 2008 161
Controls Edit Control - Property Listing
InputDirectFor-matMask
CharPos1;;CharPos2;;CharPos3;;...Each CharPos consists of:Byte1 - Writable:Yes=1/No =2Byte2 - Visible:At input=1/Always=2Byte3 - Character transformation:None=1/Uppercase=2/Lowercase=3Byte4 - Special:None=1/AmountEn-tryDDC=2Byte5 - Pre-allocation:None=1/Any character=2/DateSepa-rator=3/TimeSepa-rator=4/Decimal-Symbol=5/DigitGrouping-Symbol=6/Curren-cySymbol=7Byte6 - Permitted characters: if Byte5=2 it contains the character, else Not used=0/All=1/Numeric=2/Alpha=3/AnyCharacters=9Byte7 - If Byte5=2it contains a 0, else it contains first character from Permitted charactersByte8 - ByteX: More Permitted characters
Direct format (see also section ’Edit control - Input page’ on page 134)
Please notice that not any combination of Byte settings is allowed. It is best to create the string in the property page.
InputDirectFormatRT-Separators
[#VAR_PCDIALOG_RT_SEPARATORS_S;;#]
Separator for InputDi-rectFormatMask, do not change.
Property Range Meaning/Reference
162 May 2008
Edit Control - Property Listing Controls
IconAlignX 0 - 32787 (default is 0) X-position of icon on an input field (see also section ’Button control - Icon page’ on page 109)
IconAlignY 0 - 32787 (default is 0) Y-position of icon on an input field (see also section ’Button control - Icon page’ on page 109)
IconCenterX 0: Icon not centered1 (default): Icon centered
Possibility to center icon in x direction (see also section ’Button control - Icon page’ on page 109)
IconCenterY 0: Icon not centered1 (default): Icon centered
Possibility to center icon in y direction (see also section ’Button control - Icon page’ on page 109)
PressOffsetDefault 0: Do not read from registry1 (default): read from registry
Default checkbox for Shift in pixels. (see also section ’Edit control - General 2 page’ on page 127)
InputAreaDefault 0: Do not read from registry1 (default): read from registry
Input range default (see also section ’Edit control - Input page’ on page 133)
InputFontDefault 0: Do not read from registry1 (default): read from registry
Font button, default check box (see also section ’Edit control - Input page’ on page 137)
Property Range Meaning/Reference
May 2008 163
Controls Edit Control - Property Listing
InputColourDefault 0: Use InputColour1 (default): Use Input-Colour from registry
Colour active default checkbox (see also section ’Edit control - Input page’ on page 134)
InputColourDisabled-Default
0: Use InputColourDis-abled1 (default): Use Input-ColourDisabled from registry
Colour disabled default checkbox (see also section ’Edit control - Input page’ on page 134)
ImageUpDefault 0: Use Input field up graphic1 (default): Use graphic read from registry
Input field up, default check box (see also section ’Edit control - Graphic page’ on page 130)
ImagePressedDefault 0: Use Input field pressed graphic1 (default): Use graphic read from registry
Input field pressed, default check box (see also section ’Edit control - Graphic page’ on page 131)
ImageDisabledDefault 0: Use Input field disabled graphic1 (default): Use graphic read from registry
Input field disabled, default check box (see also section ’Edit control - Graphic page’ on page 131)
CheckRoutine 0: No Check1: Alphanumeric check2: Numeric check3: Date check4: Amount check
Number of the check routine (see also section ’Standard input check dialogs’ on page 427)
CheckParameter Depending on the check routine. Filled during design time from CCCheckfw.dll. Please pick it up in Frontpage
Parameter from the check routines (see also section ’The Dialog() function’ on page 423)
Property Range Meaning/Reference
164 May 2008
Edit Control - Property Listing Controls
CheckDependencies Depending on the check routine. Filled during design time from CCCheckfw.dll. Please pick it up in Frontpage
Parameter from the check routines (see also section ’The Dialog() function’ on page 423)
AdditionalFeatures Predefined Strings Used for showing ampersands (see also section ’Show an ampersand (&) in Caption of a control’ on page 194), Masked Edit (see also section ’Masked edit for standard edit control’ on page 145), hiding of the caret (see also section ’Hide the caret in standard edit control’ on page 146), check of maximum characters press on EPP (see also section ’Check max. chars for EPP keyboard’ on page 146)
TextLayerCount 1 - 32787 (default is 1) Number of Text Layer (see also section ’Button control - Caption page’ on page 101)
Only edit the following TextLayer... properties, if TextLayoutCount is greater than 1. Use ;; as separator for each layers value.
TextLayerText String Headline text for different layers. (see also section ’Button control - Caption page’ on page 101)
Property Range Meaning/Reference
May 2008 165
Controls Edit Control - Property Listing
TextLayerPosXYDe-fault
0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextAlignX -32788 - 32787Default: 19
Caption X position for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerTextAlignY -32788 - 32787Default: 6
Caption Y position for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerXCentered 0 (default): do not change
Not used any longer
TextLayerTex-tAlignXTyp
0 (default): left 1: center2: right
X position alignment for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerYCentered 0 (default): use TextLayerText-AlignY1: centered
Y position alignment for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box for different layers. (see also section ’Button control - Caption page’ on page 105)
Property Range Meaning/Reference
166 May 2008
Edit Control - Property Listing Controls
TextLayerFont String: Name of FontArial is default
Fontname for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFont-CodePage
0 (default) - 32787 Number of codepage for Font
Font code page for different layers. Please pick the right number up in a button control in Frontpage (see also section ’Button control - Caption page’ on page 104)
TextLayerTextSize 1 - 32787 (default is 10) Font Size for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextBold 0: regular1 (default): Bold
Font characteristic Bold for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextItalic 0 (default): Regular1: Italic
Font characteristic Italic for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTex-tUnderline
0 (default): Regular1: Underline
Font characteristic Underline for different layers. (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 167
Controls The List control
The List control
The List control can take on the appearance of an Edit control but, in the way it functions, it resembles a Button control which, when selected, automatically opens an Internet page in a new window. The customer has to make a choice on the page that is opened. The selected value is included in the List control.
TextLayerTextStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerActiveColour-Default
0: Use TextLayerText-Colour1 (default): Use TextColour from registry
Colour active default checkbox for different layers. (see also section ’Button control - Caption page’ on page 102)
TextLayerInactiveCo-lourDefault
0: Use TextColourDis-abled1 (default): Use TextLayerTextColourD-isabled from registry
Colour disabled default checkbox for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerTextColour 0 - 16777215 (default is 0)
Text colour for active text for different layers. (see also section ’Button control - Caption page’ on page 102)
TextLayerTextColourD-isabled
0 - 16777215 (default is 8421504)
Text colour for inactive text for different layers. (see also section ’Button control - Caption page’ on page 103)
Property Range Meaning/Reference
168 May 2008
The List control Controls
This control should be used whenever it is necessary to select an item from a fairly long list. If the choice relates to just a few items, it is possible to use a group of radio buttons (see "Button control - General 1 page" on page 81).
A standing order input form will act as an example here. The ’Paying turn’ (repayment cycle) and ’Execution on’ fields have been designed as List controls. When one of these buttons is pressed, a new Internet page pops up, and the customer has to make a choice on it.
Fig. 48: List controls - not active
Fig. 49: List control - ’Paying turn’ - active
May 2008 169
Controls The List control
List control - General 1 page
The list box for a selected function is defined on this page. It is necessary to specify an Internet page that is called whenever the List control is selected. This Internet page must always be opened in a window of its own as the aim is to convey the impression of a popup dialog.
Fig. 50: List control - General 1 page
Function: The function for which the list box has been implemented is selected from this list box. The ProTopas/Web-Extensions concept only allows list boxes to be created for those functions which have been stored in the application. Generally, the selected list item will need to be post-edited or initialized. This can only be done with list boxes that are known in the application.
The content of the list box shown here is read from the Registry under the Transaction key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersion
170 May 2008
The List control Controls
ActiveXPCList
TransactionInternational remittance order...
Fieldname: All input fields which have been created for the function shown in the Function list box are displayed in this list box. In other words, the actual list box is assigned to the List control here.
The content of the list box shown here is read from the Registry under the Transaction/(function) key. All keys beneath that are displayed in the drop-down list box.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCListTransaction
International remittance orderCurrency code...
Seq. No.: A unique number ranging from 0 to 999 must be assigned to each List control in order to define the sequence of inputs. This sequence number must fit in the sequence numbers of the Edit controls on the current page. The List control can take on the appearance of an Edit control, and is integrated in the input field sequence control. The Contents (STD/ATM) control ensures that the input focus moves from field to field. An error is written to the error log, if two List controls or one Edit and one List control have the same sequence number.
Softkey: The name of the softkey next to the screen to which this list box is going to be assigned is specified in this list box. This applies to systems which do not have a touchscreen but do have softkeys next to the screen. The arrangement of softkeys next to the screen is given in Fig. 22: "Positions of the softkeys". See page 86. It is not possible to configure the numerical EPP Keys 1 - 0 as Softkeys, as it appears in the Button control.
HTML page: The Internet page to be loaded automatically in its own window when the list box is selected is specified here. Standard HTML resources, such as a database query, can be used on this page to display a list from which the customer has to make a choice.
May 2008 171
Controls The List control
The value that is selected in the popup Internet page has to be entered in the VAR_PCLIST_VALUE_S variable. When the popup browser instance is closed, the value stored in this variable is entered in the input variable named Variable as a Registry parameter:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCListTransaction
International remittance orderCurrency code
Variable = VAR_CURRENCY_S
In this way the same Internet page can be used for different but similar choices in different functions.
If a different value has to be output in the List control’s output field from the one entered in the variable, the value in question can be assigned to any variable. Generally, the value selected by the customer on the popup Internet page should also be output in the List control’s output field. However, it may be necessary for an unformatted value to be stored in the input variable for further processing later (e.g. displaying the day of the week as Monday, Tuesday etc. and storing the data in input variables 1, 2 etc.). The following syntax must be used in the Output text box of the Output page:
[& Name of PC variable ; Formatting of PC variable; Default value of PC variable &]
Name of PC variable: The name of the variable to be displayed is entered here. Array variables are possible, too. To enter the index, the index must be surrounded by [ ] (example: MyArray[index]).
Formatting of PC variable: (see "SNI_PC_VARIABLE WebBot" on page 284)
Default value of PC variable: A default value for the field can be specified here. This default is displayed, if the variable does not exist.
The syntax is similar to the one for variables that are replaced by the HTML generator. The difference is that the identifiers begin with [& instead of [# (see "SNI_PC_VARIABLE WebBot" on page 284).
As soon as the choice page is closed, the List control updates the variable in the output field. This makes sure that the value selected by the customer is available directly in the List control.
172 May 2008
The List control Controls
in a new window check box: This check box is always activated because the list box should always open the new page in a window of its own.
Coordinates button: This opens a dialog to specify the coordinates for displaying the Internet page as a popup window. See page 93.
May 2008 173
Controls The List control
List control - General 2 page
The state of the List control and an operating hint are defined on this page.Fig. 51: List control - General 2 page
State of the inputfield: The state of the List control upon loading of the Internet page is configured here. However, these states can be overridden by the setting of variables in the application (see "Hiding controls with Viewstate variables" on page 274).
up: When the page is loaded, the List control shows the image defined for the List field up parameter on the Graphic page (see "List control - Graphic page" on page 177). In this state, the List control can be selected and thus activated by the customer.
disabled: When the page is loaded, the List control shows the image defined for the List field disabled parameter on the Graphic page (see "List control - Graphic page" on page 177). In this state, the List control cannot be selected by the customer.
hidden: In this state, the List control is on the page but is hidden from sight.
174 May 2008
The List control Controls
Shift in pixel: This input field is used to specify the number of pixels by which the caption and the icon are shifted to the right and down when the list control is selected in order to give the impression of a pressed control. The number of pixels depends on the design of the images. If the optical impression is conveyed that the input field protrudes about 3 pixels, 3 has to be specified here.
default: If this check box is activated, the value of the shift in pixel is read from the PressOffset parameter at runtime (see "PressOffset" on page 666 in the Parameters chapter). By changing this parameter it is therefore possible to give a different appearance in one action to all list boxes whose shift in pixel has been set to default.
Instruction hint: An operating hint can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. Consequently a specific operating hint can be displayed for each list control. The operating hint appears at that point on the Internet page which is identified by the HTML tag <p id="SubHeader">.
List control - General 3 page
The Scheme and Sound response of the input field is defined on this page. These field can be specified in the same way as for the Button control.
May 2008 175
Controls The List control
Fig. 52: Listcontrol - General 3 page
The description of this page is identical to that of the General 3 page in the Button control (see "Button control - General 3 page" on page 98).
176 May 2008
The List control Controls
List control - Headline page
The caption of the List control is defined on this page. The position, colour and font can be specified here in the same way as for the Button control.
Fig. 53: List control - Headline page
The description of this page is identical to that of the Caption page in the Button control (see "Button control - Caption page" on page 101).
May 2008 177
Controls The List control
List control - Graphic page
The images for the various states of the List control are defined on this page.Fig. 54: List control - Graphic page
The description of this page is identical to that of the Graphic page in the Edit control (see "Edit control - Graphic page" on page 129).
178 May 2008
The List control Controls
List control - Output page
The properties of the text for the item selected from the list are defined on this page. A variable should be entered here which is filled on the Internet page in the new window. The entry defined here is written to this variable and thus displayed in the output field.
Fig. 55: List control - Output page
Output: The variable text for the content of the selected List control is entered in this text box. Generally, a variable is input here which has to be filled on the Internet page that is opened when the List control is activated (see "Inserting a variable in a control" on page 288). Multiple lines can be input here. <Ctrl> and <Enter> have to be pressed simultaneously to get to a new line.
Colour active (see "Button control - Caption page" on page 101).
Colour inactive (see "Button control - Caption page" on page 101).
The following fields define the position of the variable text for the List control:
X pos: The X position of the caption is specified in pixels in this input field. The origin is the top left corner of the loaded image. The distance from the left edge is specified here.
May 2008 179
Controls The List control
Centered radio button: If this radio button is activated, the caption is centered horizontally. The X pos input field cannot be selected if this radio button is activated.
Left radio button: If this radio button is activated, the X pos field is not deactivated but contains the number of pixels from the left edge of the image. The text is placed to the right of this position in the field, i.e. left-justified.
Right radio button: If this radio button is activated, the X pos field is not deactivated but contains the number of pixels from the left edge of the image. The text is placed to the left of this position in the field, i.e. right-justified.
Y pos: The Y position of the caption is specified in pixels in this input field. The origin is the top left corner of the loaded image. The distance from the top edge is specified here.
Centered check box: If this check box is activated, the caption is centered vertically. The Y pos input field cannot be selected if this check box is activated.
Checkbox default: If this check box is activated, the caption position settings are read from the following parameters at runtime:InputAlignX corresponding to X pos(see "InputAlignX" on page 670 in the Parameters chapter)InputAlignY corresponding to Y pos(see "InputAlignY" on page 670 in the Parameters chapter)InputXCentred corresponding to the Centered, Left and Right radio buttons for X pos(see "InputXCentred" on page 670 in the Parameters chapter)InputYCentred corresponding to the Centered check box for Y pos(see "InputYCentred" on page 670 in the Parameters chapter)
Font button, default checkbox: (see "Button control - Caption page" on page 104)
180 May 2008
The List control Controls
List control - Icon page
The images for an icon and the position of the icon are defined on this page.Fig. 56: List control - Icon page
The description of this page is identical to that of the Icon page in the Button control (see "Button control - Icon page" on page 107).
May 2008 181
Controls List Control - Property Listing
List Control - Property Listing
The following list gives an overview about all List Control properties in the HTML View of an HTML page.
Table 3: HTML properties of List Control
Property Range Meaning/Reference
Scheme String Scheme(see also section ’Button control - General 3 page’ on page 99)
ImageUp StringDefault:../images/controls/input_std_up.bmp
Input field up graphic(see also section ’Edit control - Graphic page’ on page 130)
IconUp String Icon for the active input field (up/pressed)(see also section ’Button control - Icon page’ on page 108)
ImagePressed StringDefault:../images/controls/input_std_pressed.bmp
Input field pressed graphic(see also section ’Edit control - Graphic page’ on page 131)
ImageDisabled StringDefault: ../images/controls/input_std_disabled.bmp
Input field disabled graphic(see also section ’Edit control - Graphic page’ on page 131)
IconDisabled String Icon for the disabled input field(see also section ’Button control - Icon page’ on page 108)
182 May 2008
List Control - Property Listing Controls
FunctionName String Name of transaction this field is used in. Is reference to registry entry (see also section ’List control - General 1 page’ on page 169)
FieldName String Fieldname in this trans-action. Is reference to registry entry (see also section ’List control - General 1 page’ on page 170)
FieldID String: Variable name (please use suffix _S for input variables)
Variable name, which is automatically read from registry under key FunctionName, FieldName (see also section ’Input variables’ on page 413)
FieldNumber 1 - 32787 Seq. No (see also section ’List control - General 1 page’ on page 170)
SoftkeyValue F1 (default) - F8,none
Connected softkey (see also section ’List control - General 1 page’ on page 170)
ListHref String HTML Page for showing the List on in a new window (see also section ’List control - General 1 page’ on page 170)
Property Range Meaning/Reference
May 2008 183
Controls List Control - Property Listing
CorrectWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 54)
Y coordinate for correct window (see also section ’List control - General 1 page’ on page 172)
CorrectWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 44)
X coordinate for correct window (see also section ’List control - General 1 page’ on page 172)
CorrectWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 712)
Width for correct window (see also section ’List control - General 1 page’ on page 172)
Property Range Meaning/Reference
184 May 2008
List Control - Property Listing Controls
CorrectWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000 (default is 260)
Height for correct window (see also section ’List control - General 1 page’ on page 172)
ViewState 0 (default): Input field inactive2: Input field disabled3: Input field hidden
State of List control (see also section ’List control - General 2 page’ on page 173)
RTViewState String, created automatically:[#Inputvariable(without _s)_Viewstate_S#] i.e. Input variable: DLG_INPUT_RESULT1_SViewstate Variable: DLG_INPUT_RESULT1_VIEWSTATE_S
Viewstate during runtine, if variable is available. This property weights more than ViewState (see also section ’Hiding controls with Viewstate variables’ on page 274)
PressOffsetDefault 0: Do not read from registry1 (default): read from registry
Default checkbox for Shift in pixels. (see also section ’List control - General 2 page’ on page 174)
PressOffset 0 - 32787 (default is 3) Shift in pixels (see also section ’List control - General 2 page’ on page 174)
Instruction String Instruction hint (see also section ’List control - General 2 page’ on page 174)
Property Range Meaning/Reference
May 2008 185
Controls List Control - Property Listing
AudioResponse Predefined String Sound Response (see also section ’Button control - General 3 page’ on page 99)
AdditionalFeatures Predefined Strings Used for showing ampersands (see also section ’Show an ampersand (&) in Caption of a control’ on page 194)
CaptionText String Caption text (see also section ’Button control - Caption page’ on page 103)
CaptionAlignX 0 - 32787 (default is 19) Caption X position (see also section ’Button control - Caption page’ on page 103)
CaptionAlignY 0 - 32787 (default is 6) Caption Y position (see also section ’Button control - Caption page’ on page 103)
CaptionCenterX 0 (default): do not change
Not used any longer
CaptionAlignXTyp 0 (default): left1: center2: right
X position alignment (see also section ’Button control - Caption page’ on page 103)
CaptionCenterY 0 (default): use CaptionAlignY1: centered
Y position alignment (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
186 May 2008
List Control - Property Listing Controls
CaptionFont String: Name of Font Fontname (see also section ’Button control - Caption page’ on page 104)
CaptionFontCodePage 0 (default) - 32787 Number of codepage for Font
Font code page. Please pick the right number up in an input field in Frontpage (see also section ’Button control - Caption page’ on page 104)
CaptionSize 1 - 32787 (default is 10) Font Size (see also section ’Button control - Caption page’ on page 104)
CaptionBold 0: regular1 (default): Bold
Font characteristic Bold (see also section ’Button control - Caption page’ on page 104)
CaptionUnderline 0 (default): Regular1: Underline
Font characteristic Underline (see also section ’Button control - Caption page’ on page 104)
CaptionItalic 0 (default): Regular1: Italic
Font characteristic Italic (see also section ’Button control - Caption page’ on page 104)
CaptionStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 187
Controls List Control - Property Listing
CaptionColour 0 - 16777215 (default is 0)
Text colour for active caption (see also section ’Button control - Caption page’ on page 102)
CaptionColourDisabled 0 - 16777215 (default is 8421504)
Text colour for inactive caption (see also section ’Button control - Caption page’ on page 103)
CaptionAlignDefault 0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position (see also section ’Button control - Caption page’ on page 104)
CaptionFontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box (see also section ’Button control - Caption page’ on page 105)
CaptionColourDefault 0: Use CaptionColour1 (default): Use CaptionColour from registry
Colour active default checkbox (see also section ’Button control - Caption page’ on page 102)
CaptionColourDis-abledDefault
0: Use CaptionColour-Disabled1 (default): Use CaptionColourDis-abled from registry
Colour disabled default checkbox (see also section ’Button control - Caption page’ on page 103)
InputText String: Name of variable
Output; variable which holds the selected item (see also section ’List control - Output page’ on page 178)
InputJustified 0 (default): do not change
Not used
Property Range Meaning/Reference
188 May 2008
List Control - Property Listing Controls
InputAlignX 0 - 32787 (default is 16) Output range X pos (see also section ’List control - Output page’ on page 178)
InputAlignY 0 - 32787 (default is 28) Output range Y pos (see also section ’List control - Output page’ on page 178)
InputXCentred X pos Position:0: Left (default)1: Centered2: Right
X pos position (see also section ’List control - Output page’ on page 178)
InputYCentred y pos:0: not centered (default)1: Centered
y pos checkbox Centered (see also section ’List control - Output page’ on page 178)
InputFont String: Name of Font Fontname for outpt font (see also section ’List control - Output page’ on page 179)
InputFontCodePage 0 (default) - 32787 Number of codepage for Font
Font code page. Please pick the right number up in an input field in Frontpage (see also section ’Button control - Caption page’ on page 104)
InputSize 1 - 32787 (default is 10) Font Size (see also section ’Button control - Caption page’ on page 104)
InputBold 0 (default): regular1: Bold
Font characteristic Bold (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 189
Controls List Control - Property Listing
InputUnderline 0 (default): Regular1: Underline
Font characteristic Underline (see also section ’Button control - Caption page’ on page 104)
InputItalic 0 (default): Regular1: Italic
Font characteristic Italic (see also section ’Button control - Caption page’ on page 104)
InputStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout (see also section ’Button control - Caption page’ on page 104)
InputColour 0 - 16777215 (default is 0)
Text colour for active caption (see also section ’Edit control - Input page’ on page 134)
InputColourDisabled 0 - 16777215 (default is 8421504)
Text colour for inactive caption (see also section ’Edit control - Input page’ on page 134)
InputAlignDefault 0: Do not read from registry1 (default): read from registry
Checkbox default for output positions (see also section ’List control - Output page’ on page 179)
InputFontDefault 0: Do not read from registry1 (default): read from registry
Font button, default check box (see also section ’List control - Output page’ on page 179)
Property Range Meaning/Reference
190 May 2008
List Control - Property Listing Controls
InputColourDefault 0: Use InputColour1 (default): Use Input-Colour from registry
Colour active default checkbox (see also section ’Edit control - Input page’ on page 134)
InputColourDisabled-Default
0: Use InputColourDis-abled1 (default): Use Input-ColourDisabled from registry
Colour disabled default checkbox (see also section ’Edit control - Input page’ on page 134)
IconAlignX 0 - 32787 (default is 0) X-position of icon on an input field (see also section ’Button control - Icon page’ on page 109)
IconAlignY 0 - 32787 (default is 0) Y-position of icon on an input field (see also section ’Button control - Icon page’ on page 109)
IconCenterX 0: Icon not centered1 (default): Icon centered
Possibility to center icon in x direction (see also section ’Button control - Icon page’ on page 109)
IconCenterY 0: Icon not centered1 (default): Icon centered
Possibility to center icon in y direction (see also section ’Button control - Icon page’ on page 109)
ImageUpDefault 0: Use Input field up graphic1 (default): Use graphic read from registry
List control up, default check box (see also section ’Edit control - Graphic page’ on page 130)
Property Range Meaning/Reference
May 2008 191
Controls List Control - Property Listing
ImagePressedDefault 0: Use Input field pressed graphic1 (default): Use graphic read from registry
List control pressed, default check box (see also section ’Edit control - Graphic page’ on page 131)
ImageDisabledDefault 0: Use Input field disabled graphic1 (default): Use graphic read from registry
List control disabled, default check box (see also section ’Edit control - Graphic page’ on page 131)
TextLayerCount 1 - 32787 (default is 1) Number of Text Layer (see also section ’Button control - Caption page’ on page 101)
Only edit the following TextLayer... properties, if TextLayoutCount is greater than 1. Use ;; as separator for each layers value.
TextLayerText String Headline text for different layers. (see also section ’Button control - Caption page’ on page 101)
TextLayerPosXYDe-fault
0: enter x,y position in control1 (default): read x,y position from registry
default checkbox for caption position for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextAlignX -32788 - 32787Default: 19
Caption X position for different layers. (see also section ’Button control - Caption page’ on page 103)
Property Range Meaning/Reference
192 May 2008
List Control - Property Listing Controls
TextLayerTextAlignY -32788 - 32787Default: 6
Caption Y position for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerXCentered 0 (default): do not change
Not used any longer
TextLayerTex-tAlignXTyp
0 (default): left 1: center2: right
X position alignment for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerYCentered 0 (default): use TextLayerText-AlignY1: centered
Y position alignment for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFontDefault 0: Use Font properties1 (default): Use properties from registry
Font default check box for different layers. (see also section ’Button control - Caption page’ on page 105)
TextLayerFont String: Name of FontArial is default
Fontname for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerFont-CodePage
0 (default) - 32787 Number of codepage for Font
Font code page for different layers. Please pick the right number up in a button control in Frontpage (see also section ’Button control - Caption page’ on page 104)
Property Range Meaning/Reference
May 2008 193
Controls List Control - Property Listing
TextLayerTextSize 1 - 32787 (default is 10) Font Size for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextBold 0: regular1 (default): Bold
Font characteristic Bold for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextItalic 0 (default): Regular1: Italic
Font characteristic Italic for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextUnderline
0 (default): Regular1: Underline
Font characteristic Underline for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerTextStrikeout 0 (default): Regular1: Strikeout
Font characteristic Strikeout for different layers. (see also section ’Button control - Caption page’ on page 104)
TextLayerActiveColour-Default
0: Use TextLayerText-Colour1 (default): Use TextColour from registry
Colour active default checkbox for different layers. (see also section ’Button control - Caption page’ on page 102)
Property Range Meaning/Reference
194 May 2008
Show an ampersand (&) in Caption of a control Controls
Show an ampersand (&) in Caption of a control
This function is implemented for Button, Edit and List control. To show an ampersand it is necessary to write two ampersands into the text. If this text is filled by a variable it might not be possible to have two ampersands. In this case an additional keyword WX_INPUT_FLAG_IGNOREAMPERSAND may be edited manually by an HTML Source editor in the property AdditionalFeatures (see also section ’Masked edit for standard edit control’ on page 145).
Example:
Property after selecting the input field:
<param name="AdditionalFeatures" value="WX_INPUT_FLAG_IGNOREAMPERSAND">
TextLayerInactiveCo-lourDefault
0: Use TextColourDis-abled1 (default): Use TextLayerTextColourD-isabled from registry
Colour disabled default checkbox for different layers. (see also section ’Button control - Caption page’ on page 103)
TextLayerTextColour 0 - 16777215 (default is 0)
Text colour for active text for different layers. (see also section ’Button control - Caption page’ on page 102)
TextLayerTextColourD-isabled
0 - 16777215 (default is 8421504)
Text colour for inactive text for different layers. (see also section ’Button control - Caption page’ on page 103)
Property Range Meaning/Reference
May 2008 195
Controls Shadowing effect of control capture
Shadowing effect of control capture
The Shadowing effect is available for Button capture, Edit control caption and
If two identical texts with one or two pixel offset and different colour are loaded in different layers, this can be used as a shadowing effect of the font. This effect can not be configured in the property pages.
To activate this feature, the property TextLayerTextAlignXType has to be set to 3 in one layer. Property TextLayerTextAlignX and TextLayerTextAlignY has to contain the offset in the same layer where TextLayerTextAlignXType is set to 3.
Example:
param name="TextLayerCount" value="2"param name="TextLayerText" value="HALLO;;HALLO"param name="TextLayerPosXYDefault" value="0;;0"param name="TextLayerTextAlignX" value="2;;0"param name="TextLayerTextAlignY" value="2;;0"param name="TextLayerTextAlignXTyp" value="3;;1"param name="TextLayerYCentered" value="1;;1"param name="TextLayerActiveColourDefault" value="0;;0"param name="TextLayerTextColour" value="8421504;;0"
The EPP control
The EPP control is used on Internet pages on which a PIN input is called. However, the EPP control does not call the PIN input itself but merely repre-sents the pressed digits of the PIN pad.
It is necessary to use a specific EPP control for the PIN input because this input is not handled via the alphanumeric keyboard but has to be controlled by the Web Graphical Service. Asterisks are only displayed in the EPP control as a visual response for customers. This mechanism is controlled by events from the Web Graphical Service, which uses the EPP control to output asterisks. The number of PIN digits and the confirmation of the PIN, is configured in the Contents (STD/ATM) control (see also section ’Contents ATM control - EPP Keys page’ on page 208). Even the sign of the asterisks is specified there.
196 May 2008
The EPP control Controls
EPP control - General page
The image to be loaded and any caption are defined on this page.Fig. 57: EPP control - General page
Graphic: The image for the control is defined in the same way as in the Button control (see "Button control - Graphic page" on page 105).
Caption, Position, Colour, Font: These inputs are basically identical to those on the Caption page in the Button control. The only things missing here are the default check boxes because there is no point in making default entries for the EPP control as it is generally needed just once or twice for an appli-cation (see "Button control - Caption page" on page 101).
May 2008 197
Controls The EPP control
EPP control - Input page
The position, colour, font and input orientation for the output of asterisks are defined on this page.
Fig. 58: EPP control - Input page
Input orientation: The positioning of the caret for an empty input field is controlled by this group of radio buttons (see "Edit control - Input page" on page 132).
Input position, Font colour, Font: These inputs are basically identical to those on the Caption page in the Button control. The only things missing here are the default check boxes because there is no point in making default entries for the EPP control as it is generally needed just once or twice for an appli-cation (see "Button control - Caption page" on page 101).
198 May 2008
The Contents ATM control Controls
The Contents ATM control
The Contents ATM control is a very important control. It is invisible at runtime, but must be on every Internet page of an application which is using the Web-Extensions/ClassicLink. The Contents ATM control determines how the operating hint, header and the state of function keys are to be represented. It is also responsible for monitoring timers on the current Internet page and for beeping when the page is loaded. The Contents ATM control also monitors field sequence control of the Edit control and, in conjunction with this, the meaning of the <Correct> and <Confirm> buttons.
Please do not mix the Contents ATM Control with the Contents STD Control. The Contents STD Control is used in a Web-Exten-sions/HyperLink architecture and has more functionality (see "The Contents STD control" on page 226). However, there may be use cases, to implement hardware access while displaying external intranet pages by use of the Contents STD Control.
The Contents ATM control governs the interaction between all other controls. Every call of an Internet page from a Button control, for example, is passed via the Contents ATM control to the Web Graphical Service (see also "Web Graphical Service components’). The Contents ATM control is ultimately responsible for controlling the field sequence of the Edit controls.
To carry out all these tasks, the Contents ATM control registers all ProTopas/Web-Extensions controls that are on an Internet page when the page is loaded. It creates an internal list of statuses and administrative information.
The Contents ATM control detects every activation of a control. This makes it possible to integrate function keys across frames as the action to be performed is defined in the Contents ATM control. The Contents ATM control also activates or hides function keys – also geared to the action that has to be performed.
May 2008 199
Controls The Contents ATM control
Contents ATM control - General page
The header and operating hint are specified on this page. It is also possible to define whether there should be a beep whenever a page is loaded.
Fig. 59: Contents ATM control - General page
Caption: A header, such as the name of the function, can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. The header appears at that point on the Internet page which is identified by the HTML tag <p id="Header">.
Beep: This defines whether there should be a beep when the page is loaded or in the event of a timeout.
no beep: No beep is required.
at start of page: A beep is output when the page is loaded.
at timeout: A beep is output when the time allowed to press a button or input data on this Internet page elapses without this being done.
at start of page/timeout: A beep is output both when the page is loaded and if a timeout occurs.
200 May 2008
The Contents ATM control Controls
default: If this radio button is activated, the beep setting is read from the Beepdefault parameter at runtime (see "BeepDefault" on page 641 in the Parameters chapter).
Instruction hint: An operating hint can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. The operating hint appears at that point on the Internet page which is identified by the HTML tag <p id="SubHeader">.
The operating hint that is entered here is only displayed when there are no input fields on the page. In this case, the operating hint for the active input field is displayed (see "Edit control - General 2 page" on page 126).
If the Continue without Confirm key check box has not been activated and there are input fields on the page, the operating hint is displayed when all mandatory fields have been completed and found to be without error.
Timeout combo box: This combo box is used to specify the time in seconds that the user has on this page to make a choice or to input data. Either one of the displayed timers can be selected from the list or a figure can be typed in directly. The ready-made timers are represented by parameters so they can be defined for the specific application in question. The value 0 repre-sents an endless timeout, so no timeout return code will be sent. The value -1 represents the fact that the return code is returned immediately after the Internet page is loaded. This is the default value, too. These two values are different from those in the Dialog Framework. In the Dialog Framework, the value 0 means that the return code is presented immediately. Value -1 means an endless timeout. The dialog has to be canceled manually.
The ready-made timers should be used as far as possible as they ensure that timeout periods can be changed fast by modifying param-eters. If non-standard settings are used and system testing reveals that changes are necessary, every single page has to be modified again.
The value -1 can not be edited in the combo box. Instead the ready-made timer ImmediateTimeout has to be used.
Please make sure, that you set No Input on the EPP Keys property page, because on ImmediateTimeout it makes no sense to activate the EPP. This will speed up the trasaction flow.
May 2008 201
Controls The Contents ATM control
The ready-made timers can be adjusted and extended easily. Every ready-made timer is represented by a Registry entry under the Values key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsTimeout
ValuesCorrectTimeout=10...
To be able to display another entry in the Contents ATM control, a new entry is simply made. The value after the entry represents the timeout in seconds.
ADA configuration button: This button gives access to the ADA configuration panel.
202 May 2008
The Contents ATM control Controls
ADA configuration panel
The ADA configuration panel will be accessed over the ADA config button on the general property page of the Contents ATM Control. On this panel you can easily configure all ADA commands.
Fig. 60: Contents ATM control - ADA configuration panel
May 2008 203
Controls The Contents ATM control
There are five groups on this panel:
Epp RTC : The EppRTC is an instance between the ADA framework and the Epp framework. It gives permanent access to the EPP and enables the use of ADA specific keys even if they are not activated by the Contents ATM/STD control.
Start: Starts the EppRTC. Is only needed on starting page.
Stop: Stops the EppRTC.
Command: This group describes the behaviour of the ADA service. One of the start functions (start or idle) must be set on the first page of the appli-cation and the stop function should be set on the last page of the application.
Start: Here the Start() function of the ADA framework is called. This function starts the service directly and ignores any start sequences.
Stop: By activating this checkbox the Stop() function of the ADA service is called. This function stops the ADA framework.
Idle: This checkbox activates the WaitForStart() function of the ADA framework. Then the ADA framework is in idle mode and waits for any start event (see also section ’Starting Events’ on page 498).
Tutorial: This group describes what to do when the ADA framework is started.
Allow tutorial start: calls the function onStart(). This is the real start of the ADA service. The default behaviour is SKIP. This function uses some powerful macros:
Skip: Causes the service to skip the tutorial page and start directly.
Navigate: Activating this checkbox causes the service to navigate to a new URL.
Open: Causes the service to open a page ’in a new window ’. This command needs URL and position parameters of the popup-window.
The checkbox Allow tutorial start must be set to allow the customer to start the service on this page! If none of the checkboxes Skip, Navigate or Open is activated, default value is used. The default behaviour is set in the registry (see also ’ADAActionOnStart’ on page 599).
HTML page overrides: The group ’HTML page overrides’ on ADA configu-ration panel is to override the defaults of the ADA service. If none of the checkboxes are activated default values would be used (see also section
204 May 2008
The Contents ATM control Controls
’Control of the ADA service’ on page 497). To deactivate the output activate the special checkbox and clear the text field. Several macros can be used to change the output (see also section ’Macros’ on page 502).
All of he following properties may be language dependant. If the pages have to be created to with with differnt langauges, please use the WX_TEXT Variables here (see also section ’Easy multilanguage support’ on page 289).
Timeout Extension: All timeouts set by the Contents ATM control will be extended by the TimeoutExtension factor in percent. Default value is stored in the registry variable ’ADATimeoutExt’. Example: Timeout Extension=200 (see also ’Contents ATM control - General page’ on page 200)
Menu: The output for the page headline is configured here. Default value is stored in the registry variable ’ADATextPageMenu’ (see also ’Contents ATM control - General page’ on page 199).
Hint: Here you can configure the instruction hint. Default value is stored in the registry variable ’ADATextPageHint’ (see also ’Contents ATM control - General page’ on page 200).
Content: Several macros to read out the page content or direct text can be configured here. Default value is stored in the registry variable ’ADATextPageContent’. For further information See "The macro WX.RT.xxx" on page 507.
privacy: Some pages may contain private content which should not be read out. For this case the privacy can be used. The privacy checkboxes configure wether privacy is used or not. If privacy is used the content would only be read out via headphones. The system speaker would be disabled. There are no default values for these checkboxes. For this case you have to enter the fitting macro manually. Furthermore all content which should not be read out must be disabled by activating the special checkbox.
Keys: Here you can configure the output for the available buttons on the page. Default value is stored in the registry variable ’ADATextPageKeys’.
privacy: see above.
delayed Content: Several macros to read out the page content or direct text can be configured here (see also section ’ADA configuration panel’ on page 204). No default registry value is available here.
May 2008 205
Controls The Contents ATM control
Pause(ms): This property contains a time in ms ADA waits until it’s speaking the text from delayed Content.
Edit Hint: The hint for the edit fields can be configured here. Default value is stored in the registry variable ’ADATextEditHint’ (see also section ’Edit control - General 2 page’ on page 128).
privacy: see above.
Edit Content: Here you can configure in which way the input made into the edit field should be repeated. Default value is stored in the registry variable ’ADATextEditContent’.
privacy: see above.
Echo Button: The echoes for the buttons pressed are configured here. Default value is stored in the registry variable ’ADAEchoButton’.
Echo Edit: This checkbox allows you to change the way the entered numbers would be echoed. Default value is stored in the registry variable ’ADAEchoEdit’.
Max Input: If the customer shall be informed of reaching the maximum input size, an ADA text for all keys may be entered here.
Example:
0=Maximum reached_WXSEP_1=Maximum reached_WXSEP_2=Maximum reached_WXSEP_3=Maximum reached_WXSEP_4=Maximum reached_WXSEP_5=Maximum reached_WXSEP_6=Maximum reached_WXSEP_7=Maximum reached_WXSEP_8=Maximum reached_WXSEP_9=Maximum reached
Echo EPP: The PIN entry must not read out. For this case the default value should be something like ’Thanks’ or ’Beep’. Default value is stored in the registry variable ’ADAEchoEpp’.
Macro A. keys: This is the macro used from the Keys section (WX.F.ActiveKeys). It is used to read out the button text and the Epp key which belongs to this button. Deafult value is stored in the registry variable ’ADAMacroActiveKeys’.
Macro E. keys: The echo which appears when a button is pressed is configured here. Default value is stored in the registry variable ’ADAMac-roEchoKeys’.
Repeat
206 May 2008
The Contents ATM control Controls
Accumulate spoken text: This checkbox must be activated on pages, where the complete text inclusive possible input characters shall be repeated. So it makes sense to activate this checkbox on pages, which contain at least one Edit Control or List Control. If this checkbox is activated at load and unload of the page the repeat buffer will be cleared automatically. If this checkbox is not activated any new spoken text will override the repeat buffer.
Automatic repeat: If this box is checked, the text which is in the repeat buffer will be repeated. The time, when with repeat start may be configured in property pause.
pause: Time in ms, after that the repeat will start. range is from 1 to 36000000.
Everything will be repeated, what is in the repeat buffer. So the property Accumulate spoken text has an influence here.
Every text which is spoken by script or other means after the texts from the page will reset the pause timer. Repeat will then start after the pause timer really expired.
Contents ATM control - Function key page
This page is used to define for each created function key whether it should be activated, disabled or hidden. Just to remind you: Function keys are buttons with a special meaning such as Correct and Confirm, which ought to be placed in an HTML frame of their own (see "Function keys with a fixed meaning" on page 87). The Contents ATM control for the current Internet page can show or hide the function keys of another frame.
May 2008 207
Controls The Contents ATM control
Fig. 61: Contents ATM control - Functionkeys page
Function key: The list of all function keys is shown here. The state for each function key can be selected. The appearance of the Functionkeys page changes, depending on the selected functionkey.
State of Functionkey: The state of the selected functionkey can be deter-mined here:
up: The button will appear in the up state, and can be pressed.
pressed: The button will appear as pressed. This is only meaningful if the Toggle lock field was set to yes (see "Button control - General 1 page" on page 81).
disabled: The function key is placed in the Button disabled state (see "States of controls" on page 79). In this state, the function key cannot be pressed.
hidden: The function key is placed in the Button hidden state (see "States of controls" on page 79). In this state, the function key is hidden from sight.
When the Function key <Help> is selected, the property page is enhanced. An Internet page, which should appear when the help button is pressed, can be entered.
208 May 2008
The Contents ATM control Controls
Fig. 62: Contents ATM control - Functionkeys page (Help key)
Help Internet page: The Internet page belonging to the selected <help> function button is entered in this input field.
in new window check box: If this check box is activated, the page specified under Internet page is shown in a new browser instance (see "Button control - General 2 page for selection buttons" on page 91).
Coordinates button: The coordinates to be used for displaying the new window can be defined by selecting this button (see "Button control - General 2 page for selection buttons" on page 91).
Contents ATM control - EPP Keys page
This page is used to define, if the EPP is used for normal numerical input or for PIN input. If no input field is at the current Internet page, no type of input has to be selected.
May 2008 209
Controls The Contents ATM control
Fig. 63: Contents ATM control - EPP Keys page
Activate EPP Keys: The mode of the EPP is selected here:
No input: There is no input field on the current Internet page
Automatic mode: No configuration of the EPP Keys needed. But there are a few restrictions to keep in mind, when using this automatic mode:
– All Softkeys, which are connected by reference at a Selection Button, Edit or List control, are activated, even if they are disabled or invisible.
– When an Edit control is in the page all numeric EPP Keys and even the keys right and left of the 0 are enabled.
– For Functionkeys only those Softkeys, which are activated by this page are enabled. That means a Functionkey can not be activated by script after the Contents STD/ATM control is initialized.
Normal input: There are one or more input fields on the current Internet page. Numeric input is made via the EPP
Pin input: A PIN input is activated. The EPP control has to be placed on the current Internet page. The user is requested to enter his PIN. The user defined asterisks are presented by the EPP control.
210 May 2008
The Contents ATM control Controls
Fig. 64: Contents ATM control - EPP Keys Page (Normal input)
The EPP Keys configuration button is shown when Normal input or Pin input is active.
Fig. 65: Contents ATM control - EPP Keys Page (Pin input)
May 2008 211
Controls The Contents ATM control
PIN input options: The number of entered PIN digits and the confirmation of the PIN is specified in here:
PIN 4-digits: The user is allowed to enter a 4-digit PIN.
PIN 6-digits: The user is allowed to enter a 6-digit PIN.
User defined:The mininum and the maximun numbers of PIN-digits may be specified in here.
Inputfield Min.: The minimun numbers of PIN-digits must be entered here.
Inputfield Max.: The minimun numbers of PIN-digits must be entered here. Please make sure, that the maximum number is larger than the minimum number.
Continue without Confirm-Key: The user has to press the function key with value <confirm> to go on using the application. After that, the return code is sent to the application.
Continue after Timeout: After entering the minimum digits and after the amount of seconds specified in the corresponding input field the return code Okay is automatically sent to the application. This feature is used to give customers the chance to continue with the transaction, even when it is necessary to confirm the PIN entry. Some customers do not notice to confirm the PIN, when it was not necessary to do this with an earlier release of the application.
EPP Keys configuration button: A dialog is opened, when pressing this button. The property pages Active Keys, Terminating Keys and Keycode change may be selected, to specify those types of keys.
Active Keys: The EPP-keys, which should be active while this Internet page is displayed, is specified at this property page. Each active button must be in pressed state.
212 May 2008
The Contents ATM control Controls
Fig. 66: Contents ATM control - EPP Keys conf. (Active Keys)
Terminating Keys: During PIN input there may be keys specified, which will end a PIN input. During normal input these may be used in Softkey dialogs. They will end the Softkey dialog immediately. The Contents STD/ATM control does not have to cancel the EPP procedure additionally. Those buttons, which should be used as Terminating Keys, must be in pressed state.
May 2008 213
Controls The Contents ATM control
Fig. 67: Contents ATM control - EPP Keys conf. (Terminating Keys)
Keycode change: At this property page it is possible to change the keycodes beneath the 0 and the Replacement sign, which will be shown in EPP control during PIN input.
Fig. 68: Contents ATM control - EPP Keys conf. (Keycode change)
214 May 2008
The Contents ATM control Controls
,-Key: Enter the keycode, which shall be shown in an edit control when pressing the button right to the 0 button of the EPP keyboard here.
*-Key: Enter the keycode, which shall be shown in an edit control when pressing the button left to the 0 button of the EPP keyboard here.
Replacement Sign: Enter the Replacement Sign for a PIN input here. This sign will be shown in the EPP control during PIN input.
May 2008 215
Controls The Contents ATM control
Contents ATM control - Confirm page
This check box is only relevant for pages containing input fields.Fig. 69: Contents ATM control - Confirm page
Continue without Confirm-Key: If this check box is activated, the end of the input is followed directly by reporting a return code to the application. If the customer is to be given the opportunity to check the inputs again, however, this check box has to be deactivated. In this case the Confirm key list box becomes available and the key to close the input page has to be selected there. When the last input field on the page has been confirmed, the Content control’s operating hint is shown. For example, the customer could be prompted to check the inputs and then select the button that concludes the input page.
Confirm key list box: This list box contains all function keys in the same way as when selecting a function key in the Button control (see "Button control - General 2 page for function keys" on page 85). This list box is only available if the Continue without Confirm key check box has not been activated. The key that is selected here concludes an input page. The Internet page that has been defined for the function key shown here is loaded next.
216 May 2008
Content ATM Control - Property Listing Controls
Content ATM Control - Property Listing
The following list gives an overview about all Content ATM Control properties in the HTML View of an HTML page.
Table 4: HTML properties of Content ATM Control
Property Range Meaning/Reference
Name Not used not used
Page_Headline String Caption (see also section ’Contents ATM control - General page’ on page 199)
PageInstruction String Instruction hint (see also section ’Contents ATM control - General page’ on page 200)
PageTimeout Numerical value -1 - 32787 or predifined keyword from registry.
Timeout combo box (see also section ’Contents ATM control - General page’ on page 200)
PageBeep 1: No beep2: At start of page3: At timeout4: At start of page/timeout5 (default): Default from registry
Beep (see also section ’Contents ATM control - General page’ on page 199)
FunctionKeyID01 Default is: CANCEL Function key with ID 01 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID02 Default is: CONFIRM Function key with ID 02 (see also section ’Contents ATM control - Function key page’ on page 207)
May 2008 217
Controls Content ATM Control - Property Listing
FunctionKeyID03 Default is: CONFIRMALL
Function key with ID 03 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID04 Default is: HELP Function key with ID 04 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID05 Default is: CORRECT Function key with ID 05 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID06 unused Function key with ID 06 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID07 unused Function key with ID 07 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID08 Default is: SURFING_CANCEL
Function key with ID 08 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID09 Default is: SURFING_BACK
Function key with ID 09 (see also section ’Contents ATM control - Function key page’ on page 207)
Property Range Meaning/Reference
218 May 2008
Content ATM Control - Property Listing Controls
FunctionKeyID10 Default is: SURFING_FORWARD
Function key with ID 10 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID11 Default is: SURFING_SCROLL_UP
Function key with ID 11 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID12 Default is: SURFING_SCROLL_DOWN
Function key with ID 12 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID13 Default is: SURFING_SCROLL_LEFT
Function key with ID 13 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID14 Default is: SURFING_SCROLL_RIGHT
Function key with ID 14 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID15 Default is: SURFING_PRINT
Function key with ID 15 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID16 unused Function key with ID 16 (see also section ’Contents ATM control - Function key page’ on page 207)
Property Range Meaning/Reference
May 2008 219
Controls Content ATM Control - Property Listing
FunctionKeyID17 unused Function key with ID 17 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID18 unused Function key with ID 18 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID19 unused Function key with ID 19 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyID20 unused Function key with ID 20 (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyViewState01
0: State up1: State pressed2: State disabled3 (default): State invisible
State of Function key 01=CANCEL (see also section ’Contents ATM control - Function key page’ on page 207)
FunctionKeyViewState02
0: State up1: State pressed2: State disabled3 (default): State invisible
State of Function key 02=CONFIRM (see also section ’Contents ATM control - Function key page’ on page 207)
... ... ...
FunctionKeyViewState20
0: State up1: State pressed2: State disabled3 (default): State invisible
State of Function key 20 (see also section ’Contents ATM control - Function key page’ on page 207)
Property Range Meaning/Reference
220 May 2008
Content ATM Control - Property Listing Controls
SubmitControlName one of the function key id’s
Confirm key list box (see also section ’Contents ATM control - Confirm page’ on page 215)
WithoutSubmitButton 0 (default): Continue with confirm key1: Continue without confirm key
Continue without confirm key (see also section ’Contents ATM control - Confirm page’ on page 215)
NewWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000Default: 54
For HELP function key there is an coordinates button to configure Top, Left, Width, Height (see also section ’Contents ATM control - Function key page’ on page 208)
NewWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000Default: 44
For HELP function key there is an coordinates button to configure Top, Left, Width, Height (see also section ’Contents ATM control - Function key page’ on page 208)
Property Range Meaning/Reference
May 2008 221
Controls Content ATM Control - Property Listing
NewWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000Default: 712
For HELP function key there is an coordinates button to configure Top, Left, Width, Height (see also section ’Contents ATM control - Function key page’ on page 208)
NewWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000Default: 260
For HELP function key there is an coordinates button to configure Top, Left, Width, Height (see also section ’Contents ATM control - Function key page’ on page 208)
HelpHref String Help internet page (see also section ’Contents ATM control - Function key page’ on page 208)
Property Range Meaning/Reference
222 May 2008
Content ATM Control - Property Listing Controls
PinEntry Bitwise calculated field:ggggggffffffffeeeeeeee0dcbbaaaAdd the following valuesa: Activate EPP keys0 = No input1 = Normal input2 = Pin input7 = Automaticb: Pin digits0 = 4-digits8 = 6-digits16 = user definedc: Continue without confirm key0 = off32 = ond: once changed the EPP keys configuration0 = off64 = one: User defined min.:number multiplied by 256f: User defined max.:number multiplied by 65536g: Continue after timeout value:number multiplied by 16777216
EPP-Keys Submenu (see also section ’Contents ATM control - EPP Keys page’ on page 209)Please make sure that not all combination make sense. Better is to use frontpage for automatic calculation.
Property Range Meaning/Reference
May 2008 223
Controls Content ATM Control - Property Listing
EPPConfigActiveFDK Add the values of the active Softkeys:F1: 1F2: 2F3: 4F4: 8F5: 16F6: 32F7: 64F8: 128
Values of the selected active Softkeys (see also section ’Contents ATM control - EPP Keys page’ on page 211) and (see also section ’Button control - General 2 page for function keys’ on page 86)
EPPConfigActiveFK Add the values for the active keys:0: 11: 22: 43: 84: 165: 326: 647: 1288: 2569: 512Enter: 1024Cancel: 2048Clear: 4096Help: 16384DecPoint(*): 262144Res1(,): 32787
Values of the selected active EPP keyboard keys (see also section ’Contents ATM control - EPP Keys page’ on page 211)
EPPConfigTermi-nateFDK
Add the values of the terminate Softkeys:F1: 1F2: 2F3: 4F4: 8F5: 16F6: 32F7: 64F8: 128
Values of the selected terminate Softkeys (see also section ’Contents ATM control - EPP Keys page’ on page 211) and (see also section ’Button control - General 2 page for function keys’ on page 86)
Property Range Meaning/Reference
224 May 2008
Content ATM Control - Property Listing Controls
EPPConfigTermi-nateFK
Add the values for the terminate keys:0: 11: 22: 43: 84: 165: 326: 647: 1288: 2569: 512Enter: 1024Cancel: 2048Clear: 4096Help: 16384DecPoint(*): 262144Res1(,): 32787
Values of the selected terminate EPP keyboard keys (see also section ’Contents ATM control - EPP Keys page’ on page 211)
EPPConfigValue_FK_Decpoint
single character or group of characters
The value of the ,-key (see also section ’Contents ATM control - EPP Keys page’ on page 214)
EPPConfigValue_FK_res1
single digit or group of characters
The value of the *-key (see also section ’Contents ATM control - EPP Keys page’ on page 214)
EPPConfigValue_FK_sub
single character The replacement sign for PIN input (see also section ’Contents ATM control - EPP Keys page’ on page 214)
Property Range Meaning/Reference
May 2008 225
Controls Content ATM Control - Property Listing
Range for ADA Command
String created from following keywords (separator is _WXSEP_)
ADACommand (see also section ’Range for ADA Command’ on page 225)
ADA configuration Panel(see also section ’ADA configuration panel’ on page 202)
CTRLstatus -1: Init0: Do not navigate1: Navigation allowed
Read only property: may be used to ask in script, if a navigation is allowed.
Property Keyword
EPPRTC, Start StartEppRTC
EPPRTC, Stop StopEppRTC
Command, Start START
Command, Stop STOP
Command, Idle IDLE
Command Start and Stop RESTART
Command Stop and Idle REIDLE
Allow Tutorial start onSTART
Skip onSTART=SKIP
Navigate onSTART=NAVIGTE_WXSEP_mypage.htm
Open onSTART=OPEN_WXSEP_mypage.htm_WXSEP_top=0, left=0, height=20000, width=20000
Timeout extension TimeoutExtension=10
Menu TextPageMenu=Text
Hint TextPageHint=Text
Content TextPageContent=Text
Property Range Meaning/Reference
226 May 2008
The Contents STD control Controls
The Contents STD control
The Contents STD control is a very important control. It is invisible at runtime, but must be available on every Internet page of the Web-Extensions/HyperLink application. The Contents STD control deter-mines how the operating hint, header and the state of function keys are to be represented. Its most important property relates to the calling of Transaction FW classes. The Contents STD control is used to define which Transaction FW class has to be called and which return code is associated with an Internet page. It is also responsible for monitoring timers on the current Internet page and for beeping when the page is loaded. The Contents STD control also monitors field sequence control of the Edit controls and, in conjunction with this, the meaning of the <Correct> and <Cancel> buttons.
Please do not mix the Contents STD control with the Contents ATM control. The Contents ATM control is used in a Web-Exten-sions/ClassicLink architecture and has less functionality (see "The Contents ATM control" on page 198).
Content, privacy TextPageContentPRV=Text
Keys TextPageKeys=Text
Keys, pricacy TextPageKeysPRV=Text
Edit Hint TextEditHint=Text
Edit Hint, privacy TextEditHintPRV=Text
Edit Content TextEditContent=Text
Edit Content, privacy TextEditContentPRV=Text
Echo Button EchoButton=Text
Echo Edit EchoEdit=Text
Echo EPP EchoEpp=Text
Macro A. keys MacroActiveKeys=Text
Macro E. keys MacroEchoKeys=Text
Accumulate spoken text REPEAT_MODE_ACCUMULATE
Property Keyword
May 2008 227
Controls The Contents STD control
The Contents STD control governs the interaction between all other controls. Every call of an Internet page for a Button control, for example, is passed via the Contents STD control to the Web Graphical Service (see also "Web Graphical Service components’). The Contents STD control is ultimately responsible for controlling the field sequence of the Edit controls.
To carry out all these tasks, the Contents STD control registers all ProTopas/Web-Extensions controls that are on an Internet page when the page is loaded. It creates an internal list of statuses and administrative information.
The Contents STD control detects every activation of a control. This makes it possible to integrate function keys across frames as the action to be performed is defined in the Contents STD control. The Contents STD control also activates or hides function keys – also geared to the action that has to be performed.
228 May 2008
The Contents STD control Controls
Contents STD control - General page
The header and operating hint are specified on this page. It is also possible to define whether there should be a beep whenever a page is loaded.
Fig. 70: Contents STD control - General page
Headline: A header, such as the name of the function, can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. The header appears at that point on the Internet page which is identified by the HTML tag <p id="Header">.
Beep: This defines whether there should be a beep when the page is loaded or in the event of a timeout.
no beep: No beep is required.
at start of page: A beep is output when the page is loaded.
at timeout: A beep is output when the time allowed to press a button or input data on this Internet page elapses without this being done.
at start of page/timeout: A beep is output both when the page is loaded and when a timeout occurs.
May 2008 229
Controls The Contents STD control
default: If this radio button is activated, the beep setting is read from the BeepDefault parameter at runtime (see "BeepDefault" on page 641 in the Parameters chapter).
Continue without Confirm-key: This check box is only relevant for pages containing input fields. If this check box is activated, the end of the input is followed directly by the loading of the page that has been defined for the Confirm function key in the Contents STD control. If the customer is to be given the opportunity to check the inputs again, however, this check box has to be deactivated. In this case, the Confirm key list box becomes available and the key to close the input page has to be selected there. When the last input field on the page has been confirmed, the Content control’s operating hint is shown. For example, the customer could be prompted to check the inputs and then select the button that concludes the input page.
Confirm-Key list box: This list box contains all function keys in the same way as when selecting a function key in the Button control (see "Button control - General 2 page for function keys" on page 85). This list box is only available if the Continue without Confirm key check box has not been activated. The key that is selected here concludes an input page. The Internet page that has been defined for the function key shown here is loaded next.
Instruction hint: An operating hint can be input in this field. This can be in HTML syntax, e.g. a new line can be defined with <br>, or the font can be formatted with the <font face="Arial"> tag. The operating hint appears at that point on the Internet page which is identified by the HTML tag <p id="SubHeader">.
The operating hint that is entered here is only displayed when there are no input fields on the page. In this case, the operating hint for the active input field is displayed (see "Edit control - General 2 page" on page 126).
If the Continue without Confirm key check box has not been activated and there are input fields on the page, the operating hint is displayed when all mandatory fields have been completed and found to be without error.
ADA configuration button: This button gives access to the ADA configuration panel (see also ’ADA configuration panel’ on page 202).
230 May 2008
The Contents STD control Controls
Contents STD control - Timeout page
The message that is displayed when the customer has not input any data or made a choice for a certain period of time is defined on this page. The time that has to elapse before a timeout occurs is also defined here for the current Internet page.
Fig. 71: Contents STD control - Timeout page
Window for timeout: This list box contains three items – Timeout question, Timeout message and After timeout – which relate to procedures in the event of a timeout. The page to be displayed for the message has to be specified in the Internet page input field.
Timeout question: A message, which is best displayed in a separate window of its own, can be specified here to tell the customer that he or she has not made an input for some time. If the customer confirms this message, the separate window closes and the customer is taken back to the input/choice page. If the customer does not confirm the message, the
May 2008 231
Controls The Contents STD control
Contents STD control automatically loads the Internet page that has been defined for the current timeout message. If no confirmation question is needed, no page is specified in the Internet page input field.
Fig. 72: Timeout confirmation question
Timeout message: The Internet page that is specified here tells the customer that the time for inputs has elapsed. This message can be output in a window of its own, and should only appear briefly. The Contents STD control automatically loads the Internet page that has been specified for After timeout. If no timeout message is needed, no page is specified in the HTML page input field.
Fig. 73: Timeout message
232 May 2008
The Contents STD control Controls
After timeout: The Contents STD control loads the page that is specified here when the confirmation question and timeout message have been displayed, or when no Internet page has been specified for either of these options. If, for example, no message is needed for the actual timeout, then it is sufficient to specify an Internet page for After timeout.
default check box: If this check box is activated, the Internet pages for the three options listed above are read from a parameter. If no Internet page is specified in any of the three parameters, the message in question is not displayed.The parameter for the Timeout question is TimeoutQuestionHref (see "TimeoutQuestionHref" on page 638 in the Parameters chapter). If this message is due to be output in a separate window, the TimeoutQues-tionWindow parameter is changed (see "TimeoutQuestionWindow" on page 638 in the Parameters chapter).The parameter for Timeout message is TimeoutHref (see "Timeout Href" on page 637 in the Parameters chapter). If this message is due to be output in a separate window, the TimeoutWindow parameter is changed (see "TimeoutWindow" on page 637 in the Parameters chapter).The parameter for After timeout is AfterTimeoutHref (see "AfterTime-outHref" on page 638 in the Parameters chapter). If this message is to be output in a separate window, the AfterTimeoutWindow parameter is changed (see "AfterTimeoutWindow" on page 638 in the Parameters chapter).
HTML page: The Internet page belonging to the list item from the Timeout window list box is entered in this input field.
in new window checkbox: If this check box is activated, the page specified under Internet page is shown in a new browser instance (see "Button control - General 2 page for selection buttons" on page 93).
Coordinates button: The coordinates to be used for displaying the new window can be defined by selecting this button. It is only possible to specify one set of coordinates, and these are used to display all pages for a timeout (see "Button control - General 2 page for selection buttons" on page 93). If the default checklist is activated, then the coordinates are read from the following parameters:TimeoutWindowLeft corresponding to X pos(see "TimeoutWindowLeft" on page 639 in the Parameters chapter), TimeoutWindowTop corresponding to Y pos(see "TimeoutWindowTop" on page 639 in the Parameters chapter), TimeoutWindowHeight corresponding to Height
May 2008 233
Controls The Contents STD control
(see "TimeoutWindowHeight" on page 639 in the Parameters chapter), TimeoutWindowWidth corresponding to Width(see "TimeoutWindowWidth" on page 639 in the Parameters chapter).
The coordinates that are entered here apply to all three timeout windows.
Timeout combo box: This combo box is used to specify the time in seconds that the user has on this page to make a choice or input data. Either one of the displayed timers can be selected from the list or a figure can be typed in directly. The ready-made timers are represented by parameters so they can be defined for the specific application in question.
The ready-made timers should be used as far as possible as they ensure that timeout periods can be changed fast by modifying param-eters. If non-standard settings are used and system testing reveals that changes are necessary, every single page has to be tackled.
The ready-made timers can be adjusted and extended easily. Every ready-made timer is represented by a Registry entry under the Values key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsTimeout
ValuesCorrectTimeout=10...
To be able to display another entry in the Contents STD control, a new entry is simply made. The value after the entry represents the timeout in seconds.
234 May 2008
The Contents STD control Controls
Contents STD control - Cancel page
This page is used, in the same way as the timeout, to define which Internet page has to be displayed as a confirmation question or cancellation message when the customer presses Cancel. The Internet page that has to be displayed after the cancellation message is specified on the Function key page for the Cancel function key, however.
Fig. 74: Contents STD control - Cancel page
Window for cancel: This list box contains two entries – Confirmation question and Cancel message – relating to cancellation. The page to be displayed for the message in question has to be specified in the Internet page input field.
Cancel question: A message, which is best displayed in a separate window of its own, can be specified here. The customer should be asked whether he or she really does want to cancel. If the customer negates this message, the separate window closes and the customer is taken back to the input/choice page. If the customer affirms this message, the
May 2008 235
Controls The Contents STD control
Contents STD control automatically loads the Internet page that was specified for the cancellation message. If no confirmation question is required, no page is specified in the HTML page input.
Fig. 75: Cancellation confirmation question
Cancelmessage: The Internet page specified here tells the customer that the function will now be cancelled. This message can be output in a window of its own, and should only appear briefly. The Contents STD control automatically loads the Internet page that was specified for the Cancel button on the Function key page. If no cancellation message is required, no page is specified in the HTML page input field.
Fig. 76: Cancellation message
default check box: If this check box is activated, the Internet pages for the two options listed above are read from a parameter. If no Internet page is specified in either of the two parameters, the message in question is not displayed.
236 May 2008
The Contents STD control Controls
The parameter for Confirmation question is CancelQuestionHref (see "CancelQuestionHref" on page 636 in the Parameters chapter). If this message is to be output in a separate window, the CancelQuestion-Window parameter is changed (see "CancelQuestionWindow" on page 636 in the Parameters chapter).The parameter for Cancel message is CancelHref (see "CancelHref" on page 635 in the Parameters chapter). If this message is due to be output in a separate window, the CancelWindow parameter is changed (see "CancelWindow" on page 635 in the Parameters chapter).
HTML page: The Internet page belonging to the respective list item from the Window for Cancel list box is entered in this input field (see also section ’Button control - General 2 page for selection buttons’ on page 91).
in new window checkbox: If this check box is activated, the page specified under HTML page is shown in a new browser instance (see "Button control - General 2 page for selection buttons" on page 91).
Coordinates button: The coordinates to be used for displaying the new windows can be defined by selecting this button. It is only possible to specific one set of coordinates, and these are used to display all pages for a cancellation (see "Button control - General 2 page for selection buttons" on page 91). If the default checklist is activated, then the coordi-nates are read from the following parameters:CancelWindowLeft corresponding to X pos(see "CancelWindowLeft" on page 636 in the Parameters chapter)CancelWindowTop corresponding to Y pos(see "CancelWindowTop" on page 636 in the Parameters chapter)CancelWindowHeight corresponding to Height(see "CancelWindowHeight" on page 637 in the Parameters chapter)CancelWindowWidth corresponding to Width(see "CancelWindowWidth" on page 637 in the Parameters chapter)
The coordinates entered here apply to both cancellation windows.
Contents STD control - Functionkey page
This page is used to define for each created function key whether an Internet page has to be loaded or whether a Transaction FW class needs to be called. The state of the function key is also defined here. Just to remind you: Function keys are buttons with a special meaning such as Cancel, Correct and Confirm
May 2008 237
Controls The Contents STD control
which ought to be placed in an HTML frame of their own (see "Function keys with a fixed meaning" on page 87). The Contents STD control for the current Internet page can show or hide the function keys of another frame.
Fig. 77: Contents STD control - Function key page (hidden)
Functionkey: The list of all function keys is shown here. The state or action for each function key can be selected. The appearance of the Function key page changes, depending on the selected state or required action.
disabled: The function key is placed in the Button disabled state (see "States of controls" on page 79). In this state, the function key cannot be pressed.
hidden: The function key is placed in the Button hidden state (see "States of controls" on page 79). In this state, the function key is hidden from sight.
up: The button will appear in the up state, and can be pressed. It is necessary to specify an Internet page that is to be loaded.
pressed: The button will appear as pressed. This is only meaningful if the Toggle lock field was set to yes (see "Button control - General 1 page" on page 81).
If up or pressed is selected, the following additional properties are shown:
238 May 2008
The Contents STD control Controls
Fig. 78: Contents STD control - Function key page (HTML page)
HTML page radio button: When this radio button is selected, the appearance of the page changes as follows:
HTML page: The Internet page belonging to the selected function button is entered in this input field (see also section ’Button control - General 2 page for selection buttons’ on page 91).
in a new window check box: If this check box is activated, the page specified under HTML page is shown in a new browser instance (see "Button control - General 2 page for selection buttons" on page 91).
coordinates button: The coordinates to be used for displaying the new window can be defined by selecting this button. (see "Button control - General 2 page for selection buttons" on page 91). The coordinates that are entered here apply to all return codes for Steps, Steps After and Function keys.
Step after button: This radio button has to be selected if a Transaction FW class needs to be loaded when the key has been pressed. The requisite Step is selected on the Step After page. The appearance of the page changes as follows:
May 2008 239
Controls The Contents STD control
Fig. 79: Contents STD control - Function key page (Step)
Contents STD control - EPP Keys page
This page is used to define, if the EPP is used for normal numerical input or for PIN input. If no input field is at the current Internet page, no type of input has to be selected.
240 May 2008
The Contents STD control Controls
Fig. 80: Contents STD control - EPP Keys page
Activate EPP Keys: The mode of the EPP is selected here:
No input: There is no input field on the current Internet page.
Automatic mode: No configuration of the EPP Keys needed. But there are a few restrictions to keep in mind, when using this automatic mode:
– All Softkeys, which are connected by reference at a Selection Button, Edit or List control, are activated, even if they are disabled or invisible.
– When an Edit control is in the page all numeric EPP Keys and even the keys right and left of the 0 are enabled.
– For Functionkeys only those Softkeys, which are activated by this page are enabled. That means a Functionkey can not be activated by script after the Contents STD/ATM control is initialized.
Normal input: There are one or more input fields on the current Internet page. Numeric input is made via the EPP.
Pin input: A PIN input is activated. The EPP control has to be placed on the current Internet page. The user is requested to enter his PIN. The user defined asterisks are presented by the EPP control.
May 2008 241
Controls The Contents STD control
Automatic mode
If the automatic mode is selected, an EPP error HTML page property is available additionally.
Fig. 81: Contents STD control - EPP Keys Page (Automatic)
Input field EPP Error HTML page: This input field may be used to define an error page to which the Contents STD Control will navigate, if the EPP hardware is not responding or in case of a configuration error. This is an optional field, but it is more secure to enter an error page here. In case of a EPP hardware problem there is no other way to cancel the transaction than this link here. This field is shown when Normal input or Pin input is active.
Normal Input
Additionally to the EPP error HTML page there is the EPP Keys configuration Button available.
242 May 2008
The Contents STD control Controls
Fig. 82: Contents STD control - EPP Keys Page (Normal input)
The EPP Keys configuration button is shown when Normal input or Pin input is active. The Property pages which are opened by pressing this button are described later in this chapter.
May 2008 243
Controls The Contents STD control
PinInput
Fig. 83: Contents STD control - EPP Keys Page (Pin input)
Inputf ield Continue with HTML page: The HTML page entered in this field will be loaded after a successful PIN input.
PIN input options radio button fields. The number of entered PIN digits and the confirmation of the PIN is specified in here:
PIN 4-digits: The user is allowed to enter a 4-digit PIN.
PIN 6-digits: The user is allowed to enter a 6-digit PIN.
User defined:The mininum and the maximun numbers of PIN-digits may be specified in here.
Input field Min.: The minimun numbers of PIN-digits must be entered here.
Input field Max.: The maximum numbers of PIN-digits must be entered here. Please make sure, that the maximum number is larger than the minimum number.
Continue without Confirm-Key: After entering 4 or 6 digits, the return code is automatically sent to the application.
244 May 2008
The Contents STD control Controls
Continue after Timeout: After entering the minimum digits and after the amount of seconds specified in the corresponding input field the Contents STD Control automatically proceeds with the page from Continue with HTML page. This feature is used to give customers the chance to continue with the transaction, even when it is necessary to confirm the PIN entry. Some customers do not notice to confirm the PIN, when it was not necessary to do this with an earlier release of the appli-cation.
EPP Keys configuration button: A dialog is opened, when pressing this button. The property pages Active Keys, Terminating Keys and Keycode change may be selected, to specify those types of keys.
Active Keys: The EPP keys which should be active while this Internet page is displayed is specified at this property page. Each active button must be in pressed state.
Fig. 84: Contents STD control - EPP Keys conf. (Active Keys)
Terminating Keys: During PIN input there may be keys specified which will end a PIN input. During normal input these may be used in Softkey dialogs. They will end the Softkey dialog immediately. The Contents STD/ATM control does not have to cancel the EPP procedure additionally. Those buttons, which should be used as Terminating Keys, must be in pressed state.
May 2008 245
Controls The Contents STD control
Fig. 85: Contents STD control - EPP Keys conf. (Terminating Keys)
Keycode change: At this property page it is possible to change the keycodes beneath the 0 and the Replacement sign, which will be shown in EPP control during PIN input.
Fig. 86: Contents STD control - EPP Keys conf. (Keycode change)
246 May 2008
The Contents STD control Controls
,-Key: Enter the keycode which shall be shown in an edit control when pressing the button right to the 0 button of the EPP keyboard here. This may be a single character or a group of characters.
*-Key: Enter the keycode which shall be shown in an edit control when pressing the button left to the 0 button of the EPP keyboard here. This may be a single character or a group of characters.
Replacement Sign: Enter the Replacement Sign for a PIN input here. This sign will be shown in the EPP control during PIN input. This may be a single character or a group of characters.
There are two Data Dictionary Variables VAR_PIN_ENTRY_DIGITS_L and VAR_PIN_ENTRY_COMPLETION_L since Version 1.1/13, which will be filled after PIN entry with the number of PIN digits and the returncode of PIN Entry (see also section ’Get number of PIN Digits’ on page 277).
Contents STD control - Step After page
This page is used to define the calling of a Transaction FW class when a button has been pressed. This applies to each button for which Step after button/Step after press was specified. All Steps that are available on the device are shown in a list.
May 2008 247
Controls The Contents STD control
Fig. 87: Contents STD control - Access to application
Access to the application is the core task of the Contents STD control. In turn, for example, this makes it possible to access the hardware of a self-service device. Internally, the Contents STD control accesses the ProTopas Transaction Framework. The referenced Transaction FW class is executed, and can terminate with up to 20 return codes. An Internet page can be assigned to each return code, and this is then loaded at the end of the Trans-action FW class. In this way, calling the application and parameterizing the return codes reflects the general logic of the application.
Connecting Internet pages for workflow processing: Workflow
Pro DeviceSpecial HardwarePro DeviceSpecial Hardware
InternetBrowser
Pro Topas Modules
Connector Control
OK DruckenAbbruch Hilfe
Please wait for printout…invisible Control
5. Access to theprinter via ProDevice
3. Transmission betweenInternet-browser
and ProTopas modules
8. Loading of the new HTML-page
4. Call of theProTopas Module
`PRINT`
6. Transmission of the returncode
to the Contents-control
OK DruckenAbbruch Hilfe
Printout ready
2. Activation of theContents-control
invisible Control
7. Conversion of the return-code into a link to a new
HTML-page
1. Loading of the HTML-page`PRINT.HTM`
248 May 2008
The Contents STD control Controls
Fig. 88: Contents STD control - Step After page
Step After: This field shows a list of Transaction FW classes (also called Steps) that are available for the entire application. To parameterize the appli-cation flow the designer of the Internet pages needs to collaborate closely with the programmer of the application. If no Transaction FW class needs to be selected, the keyword none has to be entered here. It is at the top of the list.
The list that is shown here is made up of the keys that have been created in the Registry under the Steps key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/Steps/
PCStep_application_STARTUP...
When a new Step is created, the list has to be extended accordingly.
Parameter: It is possible to edit an input parameter for the Step after here. It is even possible to edit Variables in the same manner, as inserting then as a caption of the Button control (see also ’Inserting a variable in a control’ on page 288). The maximum size for this parameter is 1024 bytes.
May 2008 249
Controls The Contents STD control
Returnvalue: If a Step After was selected, all return codes for this Step are displayed in this list. An Internet page has to be specified for each return-value. This is then loaded for this return code.
This list is made up of the names of all Registry parameters that are available under the key name for the Step that was selected above. The value of this parameter contains the numeric return code of the ProTopas application. The return codes can range from 0 to 19.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/Steps/
PCStep_application_STARTUPGeneral error = 18...
HTML page: The Internet page to be loaded for the selected return code can be entered in this input field (see also section ’Button control - General 2 page for selection buttons’ on page 91).
in a new window check box: If this check box is activated, the page specified under Internet page is shown in a new browser (see "Button control - General 2 page for selection buttons" on page 91).
Coordinates button: The coordinates to be used for displaying the new window can be defined by selecting this button. (see "Button control - General 2 page for selection buttons" on page 91). The coordinates that are entered here apply to all return codes for Steps, Steps After and Function keys.
250 May 2008
The Contents STD control Controls
Contents STD control - Step page
This page is basically identical to the Step After page. The only difference is an additional check box to define whether softkeys and EPP buttons are allowed on this page. The Step that is selected here, however, is not activated when a certain button has been pressed but directly after the page has been loaded. The result is that there can be Internet pages which do not interact with the customer but activate a Transaction FW class and wait for it to finish.
Fig. 89: Contents STD control - Step page
The inputs and list boxes are identical to those on the Step After page (see also ’Contents STD control - Step After page’ on page 246). The list items are also read from the same Registry key.
Softkeys and functionkeys allowed: This field is only available for old Prere-leases of ProTopas/Web-Extensions 1.0: If this check box is selected, the keys on the EPP can also be used to input numeric values, or function keys can be used. If the device features softkeys and these have been assigned to a button control (see "Button control - General 2 page for function keys" on page 85), pressing a softkey can activate the button that is assigned to this softkey. If this check box is not activated, pressing a softkey has no effect on the application.
May 2008 251
Controls The Contents STD control
Contents STD control - Instance return page
This property page is used to configure links, after a new window has been closed and the INSTANCERETURNnnn value has been set into VAR_DLG_INPUT_RESULT_S variable (see also section ’Closing a new browser instance’ on page 271). So Sub routines may be designed, which can be reused at different locations in the Web. An example would be the card return page, which may be called at the end of any transaction or in cash out trans-action before presenting the cash.
Fig. 90: Contents STD control - Instance return page
New input field: In this edit field the number if the return value has to be edited. After pressing the Add Button, this number is shown in the List box Return code. In the edit field URL the link to the next page is inserted.
Add Button:By pressing this button, the number, which is edited in the New input field is added to the list of return values in the Listbox Return code.
Remove button: The return value, which is actually shown in the Return code Listbox is removed.
Return code Listbox: This listbox shows all previously added return values and is used to select the one, whose URL shall be edited.
252 May 2008
Content STD Control - Property Listing Controls
URL edit field: In this field the URL for the Return value, which is actually shown in the Listbox Return code, must be entered.
Target FRAME Listbox: This Listbox contains 4 items to select from:
– _self: This is the default value and means, the navigation is done in the same frame as the currently loaded page.
– _new: This has the same meaning than the Checkbox in a new window. The coordinates button will show up, when selecting this enty.
Coordinates Button: (see also section ’Button control - General 2 page for selection buttons’ on page 91)
– _parent:The navigation will be done in the parent window. If f.e. the appli-cation works with a frameset and on of those frames has a nested frameset inside and the Contents STD control is in one of its pages, the navigation will be done in the frame, which former opened the nested frameset.
– _top: The navigation will be done at the topmost window. That means, when working with a frameset, the frameset gets lost and the next page has to be another frameset angain.
Content STD Control - Property Listing
The following list gives an overview about all Content STD Control properties in the HTML View of an HTML page.
Table 5: HTML properties of Content STD Control
Property Range Meaning/Reference
PageHeadline String Headline (see also section ’Contents STD control - General page’ on page 228)
SubmitControlName one of the function key id’s
Confirm key list box (see also section ’Contents STD control - General page’ on page 229)
May 2008 253
Controls Content STD Control - Property Listing
WithoutSubmitButtont 0 (default): Continue with confirm key1: Continue without confirm key
Continue without confirm key (see also section ’Contents ATM control - Confirm page’ on page 215)
PageInstruction String Instruction hint (see also section ’Contents STD control - General page’ on page 229)
PageBeep 0: No beep1: At start of page2: At timeout3: At start of page/timeout4 (default): Default from registry
Beep (see also section ’Contents STD control - General page’ on page 228)
PageTimeout Numerical value: -1 to 32787 or predifini
Timeout como box (see also section ’Contents STD control - Timeout page’ on page 233)
TimeoutStdHref String HTML Page to navigate to when a timeout has occured (see also section ’Contents STD control - Timeout page’ on page 232)
TimeoutStdWindow For TimeoutStdHref:0 (default): not in a new window1: in a new window
In an new window checkbox (see also section ’Contents STD control - Timeout page’ on page 232)
Property Range Meaning/Reference
254 May 2008
Content STD Control - Property Listing Controls
TimeoutQuestionHref String HTML Page to navigate to first when a timeout has occured to ask the customer to proceed (see also section ’Contents STD control - Cancel page’ on page 236)
TimeoutQuestion-Window
For TimeoutQues-tionHref:0 (default): not in a new window1: in a new window
In an new window checkbox (see also section ’Contents STD control - Timeout page’ on page 232)
AfterTimeoutHref String HTML Page to navigate to after timeout (see also section ’Contents STD control - Cancel page’ on page 236)
AfterTimeoutWindow For AfterTimeoutHref:0 (default): not in a new window1: in a new window
In an new window checkbox (see also section ’Contents STD control - Timeout page’ on page 232)
TimeoutWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Top-Position for In a new window for Timeout (see also section ’Contents STD control - Timeout page’ on page 232)
Property Range Meaning/Reference
May 2008 255
Controls Content STD Control - Property Listing
TimeoutWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Left-Position for In a new window for Timeout (see also section ’Contents STD control - Timeout page’ on page 232)
TimeoutWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Width for In a new window for Timeout (see also section ’Contents STD control - Timeout page’ on page 232)
TimeoutWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Height for In a new window for Timeout (see also section ’Contents STD control - Timeout page’ on page 232)
CancelStdHref String HTML Page to navigate to when customer has canceled (see also section ’Contents STD control - Cancel page’ on page 236)
Property Range Meaning/Reference
256 May 2008
Content STD Control - Property Listing Controls
CancelStdWindow For CancelStdHref:0 (default): not in a new window1: in a new window
In an new window checkbox (see also section ’Contents STD control - Cancel page’ on page 236)
CancelQuestionHref String HTML Page to navigate to first when the customer has canceled (see also section ’Contents STD control - Cancel page’ on page 236)
CancelQuestionWindow For TimeoutQues-tionHref:0 (default): not in a new window1: in a new window
In an new window checkbox (see also section ’Contents STD control - Cancel page’ on page 236)
CancelWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Top-Position for In a new window for Cancel (see also section ’Contents STD control - Cancel page’ on page 236)
CancelWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Left-Position for In a new window for Cancel(see also section ’Contents STD control - Cancel page’ on page 236)
Property Range Meaning/Reference
May 2008 257
Controls Content STD Control - Property Listing
CancelWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Width for In a new window for Cancel (see also section ’Contents STD control - Cancel page’ on page 236)
CancelWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = -16000
Height for In a new window for Cancel (see also section ’Contents STD control - Cancel page’ on page 236)
FunctionKeyID01 Default is: CANCEL Function key with ID 01 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID02 Default is: CONFIRM Function key with ID 02 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID03 Default is: CONFIRMALL
Function key with ID 03 (see also section ’Contents STD control - Functionkey page’ on page 237)
Property Range Meaning/Reference
258 May 2008
Content STD Control - Property Listing Controls
FunctionKeyID04 Default is: HELP Function key with ID 04 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID05 Default is: CORRECT Function key with ID 05 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID06 unused Function key with ID 06 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID07 unused Function key with ID 07 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID08 Default is: SURFING_CANCEL
Function key with ID 08 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID09 Default is: SURFING_BACK
Function key with ID 09 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID10 Default is: SURFING_FORWARD
Function key with ID 10 (see also section ’Contents STD control - Functionkey page’ on page 237)
Property Range Meaning/Reference
May 2008 259
Controls Content STD Control - Property Listing
FunctionKeyID11 Default is: SURFING_SCROLL_UP
Function key with ID 11 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID12 Default is: SURFING_SCROLL_DOWN
Function key with ID 12 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID13 Default is: SURFING_SCROLL_LEFT
Function key with ID 13 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID14 Default is: SURFING_SCROLL_RIGHT
Function key with ID 14 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID15 Default is: SURFING_PRINT
Function key with ID 15 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID16 unused Function key with ID 16 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID17 unused Function key with ID 17 (see also section ’Contents STD control - Functionkey page’ on page 237)
Property Range Meaning/Reference
260 May 2008
Content STD Control - Property Listing Controls
FunctionKeyID18 unused Function key with ID 18 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID19 unused Function key with ID 19 (see also section ’Contents STD control - Functionkey page’ on page 237)
FunctionKeyID20 unused Function key with ID 20 (see also section ’Contents STD control - Functionkey page’ on page 237)
HtmlOrStepAfterFlag Bitfield (Default = 0) for all function keys. If Up or Pressed is configured this bitfield sets HTML/Step after:0: HTML Page (Default)1: Step after button
HTML Page/ Step after Function keys (see also section ’Contents STD control - Functionkey page’ on page 238)
FunctionKeyViewState Bytefield for Viewstates0: up1: pressed2: diabled3: hidden (Default)
Viewstate for Function keys. Bytevalue for FunctionKeyID01 is set into Byte1, etc. (see also section ’Contents STD control - Functionkey page’ on page 237)
HtmlWindow Bytefield for Function-KeyIDnn HTML page:0 (default): not in a new window1: in a new window
In a new window checkbox for FunctionKeyID01 is set into Byte1, etc. (see also section ’Contents STD control - Functionkey page’ on page 238)
Property Range Meaning/Reference
May 2008 261
Controls Content STD Control - Property Listing
StepAfterHtmlWindow Bytefield for StepAfter for returncode nn (nn from 0 to 19):0 (default): not in a new window1: in a new window
In a new window checkbox for Returncode 0 (StepAfterHtml00) is set into Byte1, etc. (see also section ’Contents STD control - Functionkey page’ on page 238)
StepStartHtmlWindow Bytefield for StepStart for returncode nn (nn from 0 to 19):0 (default): not in a new window1: in a new window
In a new window checkbox for Returncode 0 (StepStartHtml00) is set into Byte1, etc. (see also section ’Contents STD control - Functionkey page’ on page 238)
StepAfter String: Name of Step after
Step after (see also section ’Contents STD control - Step After page’ on page 248)
StepAfterHtml00 String: HTML page HTML page for step after returncode 0 (see also section ’Contents STD control - Step After page’ on page 249)
StepAfterHtml01 String: HTML page HTML page for step after returncode 1 (see also section ’Contents STD control - Step After page’ on page 249)
... ... ...
Property Range Meaning/Reference
262 May 2008
Content STD Control - Property Listing Controls
StepAfterHtml19 String: HTML page HTML page for step after returncode 19 (see also section ’Contents STD control - Step After page’ on page 249)
HtmlAfter01 String: HTML page HTML page for Function key 01 (see also section ’Contents STD control - Functionkey page’ on page 238)
HtmlAfter02 String: HTML page HTML page for Function key 02 (see also section ’Contents STD control - Functionkey page’ on page 238)
... ... ...
HtmlAfter20 String: Html page HTML page for Function key 20 (see also section ’Contents STD control - Functionkey page’ on page 238)
StepStart String: Name of step Step Start (see also section ’Contents STD control - Step After page’ on page 248)
StepStartSoftkeysAl-lowed
Default = 2, do not change
Do not change , only for compatibility reasons (see also section ’Contents STD control - Step page’ on page 250)
Property Range Meaning/Reference
May 2008 263
Controls Content STD Control - Property Listing
StepStartHtml00 String: Html page HTML page for step returncode 0 (see also section ’Contents STD control - Step After page’ on page 249)
StepStartHtml01 String: Html page HTML page for step returncode 1 (see also section ’Contents STD control - Step After page’ on page 249)
... ... ...
StepStartHtml19 String: Html page HTML page for step returncode 19 (see also section ’Contents STD control - Step After page’ on page 249)
TimeoutDefault 0 (default): read values from property page1: Read values from registry
Timeout property page, default checkbox (see also section ’Contents STD control - Timeout page’ on page 232)
CancelDefault 0 (default): read values from property page1: Read values from registry
Cancel property page, default check box (see also section ’Contents STD control - Cancel page’ on page 235)
NewWindowTop Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = 54
Top coordinate for all function keys new window (see also section ’Contents STD control - Functionkey page’ on page 238)
Property Range Meaning/Reference
264 May 2008
Content STD Control - Property Listing Controls
NewWindowLeft Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = 44
Left coordinate for all function keys new window (see also section ’Contents STD control - Functionkey page’ on page 238)
NewWindowWidth Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = 712
Width for all function keys new window (see also section ’Contents STD control - Functionkey page’ on page 238)
NewWindowHeight Smallest non percentage value = 0Largest non percentage value = 9999Smallest percentage value = 0% ' 10000Largest percentage value = 100% ' 20000. Default = 260
Height for all function keys new window (see also section ’Contents STD control - Functionkey page’ on page 238)
Property Range Meaning/Reference
May 2008 265
Controls Content STD Control - Property Listing
PinEntry Bitwise calculated field:ggggggffffffffeeeeeeee0dcbbaaaAdd the following valuesa: Activate EPP keys0 = No input1 = Normal input2 = Pin input7 = Automaticb: Pin digits0 = 4-digits8 = 6-digits16 = user definedc: Continue without confirm key0 = off32 = ond: once changed the EPP keys configuration0 = off64 = one: User defined min.:number multiplied by 256f: User defined max.:number multiplied by 65536g: Continue after timeout value:number multiplied by 16777216
EPP-Keys Submenu (see also section ’Contents STD control - EPP Keys page’ on page 240)Please make sure that not all combination make sense. Better is to use frontpage for automatic calculation.
Property Range Meaning/Reference
266 May 2008
Content STD Control - Property Listing Controls
EPPConfigActiveFDK Add the values of the active Softkeys:F1: 1F2: 2F3: 4F4: 8F5: 16F6: 32F7: 64F8: 128
Values of the selected active Softkeys (see also section ’PinInput’ on page 244) and (see also section ’PinInput’ on page 244)
EPPConfigActiveFK Add the values for the active keys:0: 11: 22: 43: 84: 165: 326: 647: 1288: 2569: 512Enter: 1024Cancel: 2048Clear: 4096Help: 16384DecPoint(*): 262144Res1(,): 32787
Values of the selected active EPP keyboard keys (see also section ’PinInput’ on page 244)
EPPConfigTermi-nateFDK
Add the values of the terminate Softkeys:F1: 1F2: 2F3: 4F4: 8F5: 16F6: 32F7: 64F8: 128
Values of the selected terminate Softkeys (see also section ’PinInput’ on page 244) and (see also section ’Button control - General 2 page for function keys’ on page 86)
Property Range Meaning/Reference
May 2008 267
Controls Content STD Control - Property Listing
EPPConfigTermi-nateFK
Add the values for the terminate keys:0: 11: 22: 43: 84: 165: 326: 647: 1288: 2569: 512Enter: 1024Cancel: 2048Clear: 4096Help: 16384DecPoint(*): 262144Res1(,): 32787
Values of the selected terminate EPP keyboard keys (see also section ’PinInput’ on page 244)
EPPConfigValue_FK_Decpoint
single alphanumeric character or group of alphanumeric characters
The value of the ,-key (see also section ’PinInput’ on page 246)
EPPConfigValue_FK_res1
single alphanumeric character or group of alphanumeric characters
The value of the *-key (see also section ’PinInput’ on page 246)
EPPConfigValue_FK_sub
single alphanumeric character or group of alphanumeric characters
The replacement sign for PIN input (see also section ’PinInput’ on page 246)
EPP_OK_Href String: HTML page Continue with HTML page (see also section ’PinInput’ on page 243)
EPP_NOK_Href String: HTML page EPP Error HTML page(see also section ’Automatic mode’ on page 241)
Property Range Meaning/Reference
268 May 2008
The ActiveStep control Controls
The ActiveStep control
The ActiveStep control is not visible at runtime. The job of this control is to communicate with the ProTopas/Web-Extensions application. Accordingly, it must exist on every Internet page on which a Trans-
StepStartParam String Input Parameter for steps (see also section ’Contents STD control - Step After page’ on page 248)
StepAfterParam String Input parameter for step after (see also section ’Contents STD control - Step After page’ on page 248)
InstanceReturn String Array divided by semicolon (;)Byte 1-3 Instance returncodeByte 4:0: _self1: _new2: _parent3: _topByte 5-semicolon:HTML Page
Instance return string (see also section ’Contents STD control - Instance return page’ on page 251)
ADACommand (see also section ’Range for ADA Command’ on page 225)
ADA configuration Panel(see also section ’ADA configuration panel’ on page 202)
CTRLstatus -1: Init0: Do not navigate1: Navigation allowed
Read only property: may be used to ask in script, if a navigation is allowed.
Property Range Meaning/Reference
May 2008 269
Controls The ActiveStep control
action FW class was defined in the Contents STD control. Without the ActiveStep control, the Transaction FW class would not execute and the hardware or Host Protocol Frameware could not be accessed.
The default setting of the ActiveStep control is to communicate with the Trans-action FW, so in general no changes are necessary. Therefore no relevant changes can be done on its property page. It is possible to change the default framework communicated to by the ActiveStep. As an additional framework to communicate with today only the CCServiceFW is supported. If you want the ActiveStep to communicate with the CCService framework you can configure the settings in the HTML code. All corresponding frameworks must contain the special step ProcessStep (pzDummy, pzStepName, pzStepParam). The HTML sourcecode of the ActiveStep looks like:
<object classid="clsid:47ED0993-B589-11D0-9302-0000E8A6CB06" id="ActiveStep1" width="100" height="50">
<param name="_Version" value="65536"><param name="_ExtentX" value="2646"><param name="_ExtentY" value="1323"><param name="_StockProps" value="0"><param name="StepParameter" value><param name="Framework" value>
</object>
The relevant parameters to change the framework communication are StepParameter and Framework.
StepParameter: Here a function input parameter of a step can be defined, which later can be queried by the step. But is is better to fill this parameter in the property page of the Contents STD Control (see also section ’Contents STD control - Step page’ on page 250).
Framework: The framework which should be communicated with can be configured here. The name of the framework must match the synthax in the registry in ...Wincor Nixdorf/ProTopas/Current-Version/CCREPMGR/FRM_REPOSITORY key, e.g. CCTransactionFW. At the moment all Steps are settled in the Transaction FW, which is the default setting of the ActiveStep control. Even if the value is empty the Transaction FW will be used!
It only makes any sense to change the framework if you implement your own Steps in other frameworks!
270 May 2008
The ActiveStep control Controls
Additionally the ActiveStep can be used to call Steps without using the Contents STD control. Therefore several scripting methods are designed (see also section ’ActiveStep control’ on page 473). This is necessary when a Step should be called only in a special situation which can’t be handled by the Contents STD control.
Example: A good example is the BAS_WINPRINT Step. This Step shall be called only if the print button would be pressed. The following sourcecode shows handling the Step scripting:
function PCContentsSTD1_afterButtonPressed(FieldID){
// Check if the print button was pressedif (FieldID == 6){
ActiveStep1.ProcessStep("BAS_WINPRINT");}
}
This function analyzes if the print button was pressed. If the print Button was pressed, the Step BAS_WINPRINT is called. The command ActiveStep1.ProcessStep causes the ActiveStep control to call a Step, where ActiveStep1 is the ID of the ActiveStep control.
function ActiveStep1_RunComplete(sRetCode){
// Analyse the return codes from the BAS_WINPRINT stepswitch(sRetCode){
//...different cases...}
}
<SCRIPT LANGUAGE=javascript FOR=ActiveStep1EVENT=RunComplete>
<!--ActiveStep1_RunComplete(arguments[0])//--></SCRIPT>
This function analyzes the return code of the called Step. All possible return codes must be handled in the switch term.
May 2008 271
Controls Closing a new browser instance
Closing a new browser instance
Activating the In a new window check box, which is available for almost all parameters involving an Internet page, opens a new browser instance that overlays the previous screen contents as a popup window. This is frequently used to display Help or correction pages but can additionally be used to specify Sub routines of HTML page sequences, which may be reused at different locations during the application.
In this new browser instance, in turn, as many Internet pages can be called in succession as required.
However, a trick is needed to close this new instance again. The browser instance is closed by loading an Internet page named CLOSE.HTM.
This can be done by using a script or by a selection button which navigates directly to CLOSE.HTM (see also section ’Button control - General 2 page for selection buttons’ on page 91). The value of the selection button should be InstanceEndRestart. A predefined selection key Close-Popup-Window is already available after instal-lation of the ProTopas/Web-Extensions.
The script - mostly used for navigating after timeout - may be as follows:
<SCRIPT ID=clientEventHandlersVBS LANGUAGE=vbscript>
<!--Sub window_onload()
’close after 10 seccall window.setTimeout("callContents.NavigateGotoURL(’close.htm’)",10000)
end sub-->
</script>
It is not admissible to use the Timer of the Contents ATM Control, because this would send a return code to the application instead of closing the instance.
272 May 2008
Closing a new browser instance Controls
When the new browser instance has been closed, control returns to the Internet page that opened the instance. The timer on this page is automatically restarted.
When the new browser instance has been closed, control returns to the Internet page that opened the instance. The timer on this page is automatically restarted. Navigation to a new Internet page is controlled from there by writing one of the return codes of the following table to the VAR_DLG_INPUT_RESULT_S variable before closing the new browser instance.
The easiest way to write data to this variable is to create a selection button which has the corresponding value and simultaneously loads the CLOSE.HTM page. The Contents STD control automatically writes the value of the pressed button to the VAR_DLG_INPUT_RESULT_S variable before it closes the new browser instance.
Another way of setting this variable is to include it in a script. This can be done with the OnUnload script or, for example, with an OnTimeout in the Contents STD control. (see "Scripting" on page 455).
Return code Meaning
"InstanceEndRestart" If a Transaction FW class was entered in the loading Internet page, it is restarted. The process continues with the return code of the Transaction FW class.
If no Transaction FW class is active, the process continues after the press of a button.
"InstanceCancelStd" The Internet page specified for Cancel message on the Cancel page of the Contents STD control is loaded.
"InstanceCancelQuestion" The Internet page specified for Confirmation question on the Cancel page of the Contents STD control is loaded.
May 2008 273
Controls Closing a new browser instance
When VAR_DLG_INPUT_RESULT_S is not available or does not contain any of the value above after closing the new window, the Contents STD/ATM Control will not restart any Step, but wait for the Timeout in the opener page.
On Timeout in the new window the variable VAR_DLG_INPUT_RESULT_S will get the value InstanceEndRestart automatically, when none of the values above has been set into this variable before.
"InstanceTimeoutStd" The Internet page specified for Timeout message on the Timeout page of the Contents STD control is loaded.
"InstanceTimeoutQuestion" The Internet page specified for Confirmation question on the Timeout page of the Contents STD control is loaded.
"InstanceAfterTimeout" The Internet page specified for After timeout on the Timeout page of the Contents STD control is loaded.
"InstanceAfter00" The Internet page specified for the first item in the Function key list box on the Functionkey page is loaded.
"InstanceReturn000" The Internet page specified in the property page Instance return (see also section ’Contents STD control - Instance return page’ on page 251) in Contents STD control for returncode 0 is loaded.
... ...
"InstanceReturn999" The Internet page specified in the property page Instance return (see also section ’Contents STD control - Instance return page’ on page 251) in Contents STD control for returncode 999 is loaded.
Return code Meaning
274 May 2008
Hiding controls with Viewstate variables Controls
Creating sub routines without opening a new Window
When working with frames or having sub routines in full screen it is not advisable to create sub routines by starting the first sub routine page in a new window. There may be a flicker when the new browser instance closes. There is a solution for creating sub routines but navigating in the same browser window. The trick is to use one of the following keywords as a prefix at the link.
WN_TFN_FLAT_SELF: Subroutine is using current frame for navigation
WN_TFN_FLAT_TOP: Subroutine is started in top mode without a frameset
Example for a link: WN_TFN_FLAT_SELFmypage.htm
Additionally there must be no checkbox in a new window activated.
The subroutine still ends with a navigation to close.htm, even if there is no in a new window activated and the variable VAR_DLG_INPUT_RESULT_S has still to be set to InstanceReturnxxx (where xxx is in a range of 000 to 999). So the only difference between a subroutine running in a new browser instance and a subroutine running in the same browser is the prefix keyword and the ’in a new window’ not activated.
Hiding controls with Viewstate variables
The way to hide or show a control is to set a Viewstate variable which is called on one of the following pages. It is not possible to set a Viewstate variable to change the display of a control on the Internet page that is currently loaded. Any change to a Viewstate variable does not take effect until a new page is loaded. This behavior is controlled in so far as every control automatically ascertains the name of its associated Viewstate variable and keeps it as a property. The syntax has been chosen in such a way that the HTML generator recognizes this variable. The HTML generator can now replace the variable when loading the page if it has been defined. If the HTML generator does not find the variable, then this has no further impact. Parameterization of the state on the control’s page is evaluated. However, if the Viewstate variable does exist, this takes precedence.
The control is addressed via the name of the Viewstate variable. This name consists of the value of the control, a prefix and a suffix:
Value of the button: CARDOUT
May 2008 275
Controls Unicode Versions of the Controls
Viewstate variable: VAR_CARDOUT_VIEWSTATE_S
This string variable can assume the following states:
VIEW_STATE_DEFAULT_S ( -1): It is not the Viewstate variable that is evaluated but the setting in the State field for the control in question.
VIEW_STATE_UP_S (0): The button has to be shown as up.
VIEW_STATE_PRESSED_S (1): The button has to be shown as pressed (selected).
VIEW_STATE_DISABLED_S (2): The button is to be shown as disabled (not selectable).
VIEW_STATE_HIDDEN_S (3): The button is to be hidden.
These values cannot only be set in a Step but also in a script on the Internet page.
Unicode Versions of the Controls
With version 1.1 there is the possibility to install unicode versions of the controls, which have a visible user interface. These version may be used to display character in those languages that need Unicode to be displayed correctly. It is not complicate to build a static user interface with fixed text on top of the controls. The problem starts, when variable text shall be displayed.
To install the Unicode controls properly, it is necessary to install the Font Arial Unicode MS. This font is needed for some Texts on property pages of the controls. Without this font a standard font is used and all property boxes are spreaded over the property page. Arial Unicode MS can be loaded from Microsofts Internet pages or from the \Tools Directory (Aruniupd.exe) from the ProInstall Developer CD.
There is inserted text from the customer on the one hand and text from host machines on the other hand. Problem is the transition of Unicode characters into the ProTopas environment, because ProTopas Manager itself does not work with unicode data. So the Contents STD/ATM control transfers Unicode data into an array of characters. Depending on the Parameter UseUTF8 (see "UseUTF8" on page 648 in the Parameters chapter) the conversion is done from Unicode to ANSII or from Unicode to UTF8. However, in conversion from Unicode to ANSII some data might get lost. UFT8 is ASCII backwards compatible.
276 May 2008
Unicode Versions of the Controls Controls
If there has to be a complete transmission of unicode data from the host system to the user interface and vice versa, a new Host Protocol Framework and an overlay of the Data Dictionary Framework have to be implemented. This trans-mission does not mean the HTTP Protocol via TCP/IP. Unicode data can be transformed with this protocol very well. So new projects have to think about using this way to transport data to backend systems.
On the other hand even the trace output must use unicode to locate problems with Unicode interfaces. To achieve this a new version of TRCWAPI.DLL of TLS-W32 and of TRCDUMP.EXE (Version 2204) from ProTopas/Manager must be used. A new set of TED Files for Trace output has been built which uses these new versions for tracing even unicode texts.
Fig. 91: Unicode - Data flow
To install the unicode versions of the controls they have to be copied manually or by using a batch job during installation. The Unicode versions are located in
\ProTopas\Web\OCX\Unicode
They have to be copied into
\ProTopas\Web\OCX
The same has to be done with the TED files. They unicode versions are installed in
Controls
Button
Edit
List
Epp
SpinEdit
Trace
ContentsSTD/ATM Control
ProTopas
Frameworks
Unicode
Char
Unicode
UseUTF8 = 0: Unicode to ANSI(loss of Data possible)
UseUTF8 = 1: Unicode to UTF8
Unicode
May 2008 277
Controls Get number of PIN Digits
\CSCW32\Ted\Unicode
They have to be copied into
\CSCW32\Ted
The following SW Packages have to be installed for getting the versions of DLL’s which allow to trace unicode characters into the trace log:
ProTopas/Manager Version 3.0/30
TLS-W32 Version 2.0/20
To enable to create an Unicode tracefile, which can be opened in the Notepad-Editor, \ProTopas\Bin\td.cmd has to be changed. Instead of
trcdump trace error
the line has to be changed to
trcdump tracew error
The trace output in TraceView is presenting unicode automatically, if the right version of TLS-W32 is installed.
If ProTopas Frameworks must be implemented, which have to trace Unicode characters, please contact the development department. A special version of TrcErrW.lib and TrcErr_e.h has to be used.
Get number of PIN Digits
There are two variables VAR_PIN_ENTRY_DIGITS_L and VAR_PIN_ENTRY_COMPLETION_L defined since Version 1.1/13 of the ProTopas/Web-Extensions and ProTopas/HTML-Dialog, which can be used to get the Number of PIN digits and the returnvalue of the function call after a sucessful PIN entry. The variables do belong to the Web Graphical Service.
278 May 2008
Get number of PIN Digits Controls
The variables are initialised at the startup of the ProTopas/Web-Extensions and again before ExeCmdGetPin() function is started. After a successful end of the function is is filled with other values than after an end with error. See the values in the table below:
For more information about error code, usDigits and usCompletion check The ProTopas Programming Guide, chapter EPP Framework, function ExeCmdGetPin().
Properties VAR_PIN_ENTRY_DIGITS_L
VAR_PIN_ENTRY_COMPLETION_L
default (WebExt start) -1 0
before ExeCmdGetPin()
-1 0
after ExeCmdGetPin() error
-1 error code
after ExeCmdGetPin() OK
usDigits usCompletion
May 2008 279
Web Graphical Service components Components of the Internet browser
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Web Graphical Service componentsThis chapter describes the components of the Internet browser and the basic considerations that led to its design. These components are referred to jointly as the Web Graphical Service.
Components of the Internet browser
The Microsoft Internet Explorer forms the basis of the user interface. It is essential for this program to be installed on the terminal device. To output self-service Internet pages, the browser is switched to full-screen mode so that the Windows NT Desktop is not visible. The Microsoft Browser control is used for the Web Graphical Service. Note that the browser control is different to the Internet Explorer. Both are containers for internal Microsoft Web controls, but the may react in different ways. The Browser control is a control which, because the interfaces have been disclosed, allows the user interface to be set to full-screen mode and makes it possible to intervene in navigation through Internet pages. These are essential prerequisites to make a browser capable of self-service operations around the clock. Various rival products were examined but, in the end, only the Microsoft Internet Explorer was a viable option because it provides the necessary interfaces.
280 May 2008
Components of the Internet browser Web Graphical Service components
Fig. 92: Architecture of the Web Graphical Service
The self-service extensions to the Microsoft Browser Control are encapsulated in multiple shells. The PCBrowser control is used to activate the Microsoft Browser control. It operates with the interfaces of the Microsoft Browser control, handles windows, hides the cursor and, via a parameter, defines the home page with which the application is to start.
The HTMLGen control – the HTML generator – is responsible for editing and formatting variables on Internet pages. Every page in the application always runs through the generator to replace any variables that exist on this page. The Internet page is scanned for variables during the loading process. These are replaced and the page is then buffered in a temporary directory. Only then is the name of the temporary Internet page passed to the PC Browser control so that it can be displayed.
The AllowList control is an internal firewall. Only the Internet pages that are entered in the AllowList are displayed on the terminal device. To govern this, there is an AllowList file in which all valid Internet pages are recorded. Wildcards can be used. Using wildcards makes it easy to allow all Internet pages in the application that are stored on a particular intranet server. If an attempt is made to load a page that is not allowed, Intranet pages are displayed pointing this out to the customer.
Grafi ccal Service Archite etur
AllowList Control
HTMLGen Control
MS Browser Control
PCBrowser Control
PCView Control
Dialog-Framework
May 2008 281
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
The PCView control is available to control all controls described so far under a simple interface. Flow control that is needed to load a new Internet page is handled here. Externally, it provides a simple interface to navigate through Internet pages. This module also incorporates the recognition of offline (see "Switching the Web Graphical Service offline" on page 300) and the output of error messages when there is an attempt to navigate to disallowed Internet pages (see "Rejection of selected Internet pages" on page 296).
The Dialog Framework is a ProTopas framework module which has been imple-mented as an executable. This framework can be addressed by the other ProTopas frameworks via the ProTopas interfaces. The Dialog Framework is the only component of the Web Graphical Service that is visible and can be used externally.
The Dialog Framework offers the interface which is used by the appli-cation to load the Internet pages. The description of the interface is documented in the Dialog Framework (see also section ’Dialog Framework’ on page 322).
The Dialog Framework is only called from the application to implement language-specific settings when a new language has been chosen and for language-specific formatting. An overlay has been created for these functions. The name of this overlay framework is PCDialogFW (see "PCDialog framework" on page 342).
The Dialog Framework is internally using the Internet Explorer, as mentioned above. Because the IE may throw exceptions, if plug-ins are used, which are not stable or because of problems with Multi-media support modules, etc. , these exceptions will cause the Dialog Framework to exit with returncode 51. This is normal behavior. The maschine should be rebootet in this case.
The following sections describe the adaptations that can be made with the HTML generator and AllowList components.
HTML generator
The HTML generator is needed to display business data from the ProTopas modules on Internet pages. For example, account information is received via the ProTopas Host Protocol Framework and inserted in the appropriate variables. You can place these variables on Internet pages by entering their
282 May 2008
HTML generator Web Graphical Service components
names with an internal syntax at the appropriate position on the Internet pages. The HTML generator comes into action whenever a page is loaded. It scans the pages for this internal syntax and replaces every variable that it finds with the appropriate value of the Host Protocol Framework. Formatting can be specified for the replacement process.
The HTML generator is the only instance that performs any formatting. If input fields need to be formatted after the input, the check routines call the HTML generator. The format routine of the Web Graphical Service is used in this process (see also ’PCDialog framework’ on page 342).
Every page that is loaded is processed by the HTML generator. It generates the Internet page that is to be passed to the PCBrowser control in a temporary directory. The position of this temporary directory can be defined in the Web Graphical Service’s TempPath parameter (see "TempPath" on page 618 in the Parameters chapter).
Storing the pages in a temporary directory means that the relative reference to the address of the Internet page is lost. The Web Graphical Service employs a trick to allow relative paths for navigation nevertheless.
The base address is entered in the header of the Internet page as follows:
<BASE HREF="http://fabulous/proconsult/german/Start.htm">
In addition, an anchor in the form
<a ID=PC_GeneratedAnchor href=nopage.htm target=notarget></a>
is inserted at the start of the body of the Internet page. When a new page is accessed, the required Internet page is written to the href property of PC_GeneratedAnchor and PC_GeneratedAnchor is clicked automatically. Now the browser automatically loads the Internet page from its home address.
May 2008 283
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Fig. 93: HTML generator
The variable to be replaced can either be entered in a control or, if variables need to be placed in the middle of normal HMTL text, they can be entered in a specially developed WebBot for Microsoft FrontPage. A WebBot is a self-developed extension to the FrontPage editor. With the aid of this extension, variables, their formatting and default values can be inserted very easily at any point on an Internet page via a dialog page. It is possible to enter single variables, which content can be received by a data dictionary call or a variable out of an array.
The variable is requested from the Variable Framework first. If it is not available in this framework, the HTML Generator tries to get it from the Data Dictionary Framework. Arrays are directly requested from the Data Dictionary Framework, because this type of data is not available in the Variable Framework.
If the designer of the Internet pages does not like to work with FrontPage, the way to use ths technique is to write the syntax of the WebBot directly into the HTML code.The syntax in described in the next chapter. Because the Webbot Syntax is implemented in an HTML-comment, it is possible to use it in other tools. However, the WYSIWYG functionality to preview the variables is available only in FrontPage.
Name:
Account:
Balance:
Martin Miller121210031298765
Name: Martin Miller
Account: 1212100312
Balance: 987,65 DM
Windows NT
ProTopas
ProDevice
SOP
IntranetServer
HOST-System
During loading of the HTML-page the
variables will be filled with data.The browser will be given the completed page for display.
HTML-generator
HTML-Generator
HTML-generator
284 May 2008
HTML generator Web Graphical Service components
SNI_PC_VARIABLE WebBot
Sinse Version 1.1/37 from ProTopas/Web-Extensions it is not longer necessary to use a WebBot to insert Variables in the HTML Body outside of the controls. If the syntax:
[# name of PC variable ; formatting of PC variable; default value of PC variable #]
is used, this is sufficient. However, if the pages are shown in Frontpage and a WebBot is used only the preview will be visible. The pages are more readable though.
The dialog page of the WebBot is very simple. It contains the four input boxes described below:
Name of the variable: The name of the variable to be displayed is entered here. Array variables are are possibe, too. To enter the index, the index must be surrounded by [ ] (Example: MyArray[index]).
Formatting of the variable: The required formatting can be selected here from a list. The following values can be selected:
Leave the field empty (no formatting)
D (date - long)
S (date - short)
T (time)
C (currency with decimal places but without currency code)
M (currency with decimal places and currency code)
N (Number)
A free-format mask can also be specified. The @ character is used as a placeholder for the characters to be replaced. All characters other than @ are output at the position in which they appear in the mask. However, the first character must be either < or >. > means that the placeholder characters in the mask are entered from right to left. Leading zeros are suppressed as of the second character before the right-hand separator.< means that the characters are entered from left to right. Example:
Variable: 000345600 Mask: >@@@.@@@ % Result: 345.600 %
Variable: 000000600 Mask: >@@@.@@@ % Result: 0.600 %
May 2008 285
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
CCFORMAT:format from CCFormat FW. A format from the ProTopas Format Framework may be used in this case. For more information about the formats see ProTopas Module Construction Kit Programming Guide.
Example: CCFORMAT:#F
Default value of the variable: A default value for the field can be specified here. This default is displayed if the variable does not exist.
Preview value of the variable: Specify the text here, which shall be shown as a placeholder for the WebBot in the page. There are three different views, which are all set with the value entered here:
– The normal view in Frontpage: The PREVIEW="x" value is used.
– The preview view in Frontpage: The local_preview="x" value is used.
– The view in teh browser, when the page is not generated: The x between closing comment and opening of new comment (-->x<!--) is used.
Fig. 94: Inserting a variable by means of WebBot
Internally, a variable entry generates the following HTML syntax via a WebBot:
<!--webbot bot="SNI_PC_Variable" startspan PREVIEW="x" local_preview="x" clientside s-value="[#CCTAFW_PROP_DISPENSE_AMOUNT;M;#]" -->x<!--webbot bot="SNI_PC_Variable" I-CheckSum="120" endspan -->
286 May 2008
HTML generator Web Graphical Service components
The content that is actually important is stored in the s-value parameter.The syntax of the content is as follows:
[# name of PC variable ; formatting of PC variable ; default value of PC variable #]
The WebBot automatically generates the value in the :PREVIEW parameter. This value is displayed during editing in Microsoft FrontPage. In this way you can get a WYSIWYG display when creating a page.
Default values are displayed in a WebBot whenever the variable has not been defined. With this approach, context-sensitive contents can be shown or hidden. If the associated variable is set to a blank, the default value is not displayed. If the variable is deleted, the corre-sponding value is displayed.
Installing the WebBot in Front Page 98
The prerequisite for installing the WebBot is a PC running under Windows NT or Windows 95/98 on which Microsoft FrontPage has been installed. In a standard installation, FrontPage creates a directory named FrontPage Webs\Content\ in which all self-made Webs are stored. This is the main directory for the Web server. If a Web server other than the FrontPage Personal Web Server is installed, you have to create a subdirectory named _vti_bot\ in the main directory to store the WebBots. You must also create a subdirectory of that named SNI_PC_VARIABLE\ to which two files belonging to the WebBot are copied. These files are called SNI_PC_Variable.dll and SNI_PC_Variable.inf. Then you have to open the personal Web (local) in the FrontPage Explorer and choose the Recalculate Hyperlink function from the Tools menu.
If you now want to enter a variable in an Internet page, open the page in the FrontPage Editor by double clicking the file in FrontPage Explorer, place the cursor at the required position and call Frontpage Component from the Insert menu. Select SNI_PC_Variable from the list that now appears. The dialog page shown in Fig. 94: "Inserting a variable by means of WebBot" is opened. When SNI_PC_Variable is first selected, a dialog opens which ultimately places the WebBot in the installation directory of FrontPage.
It is not possible to use the WebBots by opening an HTML page directly and not using the FrontPage Explorer. This functionality is connected to a web in FrontPage. So the page has to be opened
May 2008 287
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
mandatory in FrontPage Explorer. There is no need to have an installed Web Server. FrontPage98 installs a personal Web Server which is sufficient for this functionality.
Installing the WebBot in Front Page 2000
The prerequisite for installing the WebBot is a PC running under Windows NT or Windows 95/98 on which Microsoft FrontPage has been installed. In a standard installation, FrontPage is installed in a directory named Program Files\Microsoft Office\Office\. There is a subdirectory named bots\ installed to store the WebBots. You must also create a subdirectory of that named SNI_PC_VARIABLE\ to which two files belonging to the WebBot are copied. These files are called SNI_PC_Variable.dll and SNI_PC_Variable.inf. Then you have to open FrontPage, open any web and choose the Recalculate Hyperlink function from the Tools menu.
Installing the WebBot in Front Page 2003
The difference to the installation of Office 2000 is the installation path: FrontPage is installed in a directory named Program Files\Microsoft Office\Office11\. There is a subdirectory named bots\ installed to store the WebBots. You must also create a subdirectory of that named SNI_PC_VARIABLE\ to which two files belonging to the WebBot are copied. These files are called SNI_PC_Variable.dll and SNI_PC_Variable.inf. Then you have to open FrontPage, open any web and choose the Recalculate Hyperlink function from the Tools menu.
If you now want to enter a variable in an Internet page, open the page in FrontPage, place the cursor at the required position and call Component from the Insert menu. Select Additional components and SNI_PC_Variable from the list that now appears. The dialog page shown in Fig. 94: "Inserting a variable by means of WebBot" is opened. When SNI_PC_Variable is first selected, a dialog opens which ultimately places the WebBot in the installation directory of FrontPage.
A web has to be opened before the WebBot components menu will be activated in FrontPage 2000. If the pages are not jet transferred into a web, please select New, Web, Webimport assistant and follow the Steps the assistant requests. An installed Web Server is not required foir this functionality.
288 May 2008
HTML generator Web Graphical Service components
Inserting a variable in a control
If you do not want to output a variable simply as an HTML text but, for example, as a caption on a button, then the WebBot cannot be used. In this case, the variable is entered directly in an input field of a control. To generate the caption of a Button control, for example, parameterization is as follows in the input field for the button caption:
[# name of PC variable ; formatting of PC variable ; default value of PC variable #]
See page 284. This provides a description of the syntax.
Generally each parameter value of the control can be configured as a variable with this syntax. But this has to be done by using a standard text editor. The ability to work with MS Frontpage is lost in most cases. So if you decide to use variables in controls, please check before if you want to work with MS Frontpage again. The only exception from this rule is the caption of the control or the HTML page names, all alphanumerical properties at least.
Formatting settings
The formatting of the date, time and amount inputs can be predefined on a language-specific basis by setting parameters. There are parameters to output the date in long and short format, as well the time and an amount (see "Param-eters for the HTML generator" on page 623 in the Parameters chapter). If you want to use Windows NT’s language-specific settings instead, you can do so by setting the UseLocales parameter to 1. The language-specific parameters are stored in the Windows Registry under the following key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraficalServicePCHTMLGen
(language)...
(language) stands for the name of the selected language. If the system is to operate with a choice of four languages, there must be four keys, each of which has the name of a language and a complete set of parameters. This means that different formats for the amount and date can be selected for each language (see "Converting language-specific formats" on page 308).
May 2008 289
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Easy multilanguage support
When all text is edited in the HTML pages in multilanguage applica-tions for every language a HTML page is needed. Those pages with different language are strored in different directories (see also section ’Language selection’ on page 305). This can be lots of maintenance work, when the pages are changing very often. A change in one page would have to be copied into all same pages in the language specific directories. To avoid this, it is possible to work with variable place-holders in the pages and to have all texts in a text file, one for each language, which will be copied into the registry during installation.
However - for a Web-Extensions/ClassicLink architecture all pages have to be copied into all language specific directories as well, but the content in each subdirectory will be the same.
For a Web-Extensions/HyperLink architecture the relativ changes of the language specific subdirectories may be omitted.
The placeholders in the pages have the following syntax:
[%WX_TEXT[Index];Default%]: Index is a string, which identifies the text, which should be replaced here. Default specifies a string, which is used for replacement if the Index string is not found. The Index string is read from the following registry section on startup from the DefaultLanguage (see "Default-Language" on page 619 in the Parameters chapter) and on every call of ChangeLanguage(), when the language specific format settings are updated (see also section ’Converting language-specific formats’ on page 308):
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraficalServicePCHtmlGen
<language>Text
GeneralText
So all texts for each each language are stored in the HTMLGen section in the language specific subkey under the key Text. The parameter name has to be the string Index from WX_TEXT placeholder. This string maybe a number or any string. Even subkeys may be used under the key Text for better structuring.
290 May 2008
HTML generator Web Graphical Service components
There is one section General/Text additionally to the language specific subkeys. This may be used to store some Index’s for every language. This is useful if texts for all languages is used or if the text replacement is extended to fill in complete sections of HTML tags, etc.
Example:
ProTopas/CurrentVersion/ActiveX/GraficalService
PCHtmlGen<language>
Text001="This is the first text."Base
OutOfService="Device is out of service."100="Thank you."
CashOutTake="Please take your notes."
Please take care to use the Index string as a unique name. It must not exisit twice under the key Text even if it is in different subkeys. As it is said, those subkeys (like Base and CashOut in the example above) are only used for a better structure.
In the HTML page the placeholders for the examples above have the following syntax:
[%WX_TEXT[001]%]
[%WX_TEXT[OutOfService];%]
[%WX_TEXT[Take];Please take your notes.%]
These placeholders can be at every position in the HTML page (in the controls, in normal HTML tags, in the Header, in Scripts, etc.), so the handling is quite different to the WebBots. Secondly these Index strings can not be read through the data dictionary control. If a string shall be used in a script, it is the best to apply it to an internal script variable. These placeholders’ use is only for static text.:
<SCRIPT LANGUAGE="javascript"><!--
try{
myVariable = "[%WX_TEXT[100]%]";...
May 2008 291
Web Graphical Service components HTML generator
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
}catch(e){}
//--></SCRIPT>
If WX_TEXT[100] would contain any " signs the upper script would not work properly. In this case you have to create a tag somewhere in the body of a web page ike this:
<p id="100">[%WX_TEXT[100]%]</p>
The script has to be changed to
try{
myVariable = document.getElementById("100").innerText;...
}
Using variables instead of constants in WX_TEXT
This function is available since version 1.1/37 of ProTopas/Web-Extensions.
It is possible to use a variable with the syntax
[# name of PC variable ; formatting of PC variable; default value of PC variable #]
as index of a WX_TEXT placeholder:
[%WX_TEXT[[# name of PC variable ;; default value of PC variable #]];default%]
or as default value of a WX_TEXT placeholder:
[%WX_TEXT[index];[# name of PC variable ;; default value of PC variable #]%]
The HTML generator runs two times. The first time it replaces the variable:
[%WX_TEXT[Value of PC variable];default%] or
[%WX_TEXT[index];Value of PC variable%]
292 May 2008
AllowList Web Graphical Service components
the second time it replaces the WX_TEXT placeholder with the value from the registry key Value of PC variable or index.
This is the Registry Contents of Value of PC variable
Another possibility to use variables in WX_TEXT is to have variables in the registry constants for WX_TEXT:
ProTopas/CurrentVersion/ActiveX/GraficalService
PCHtmlGen<language>
TextTest="This is [#name of PC variable ;
formatting of PC variable;default value of PC variable#]"
Testdirect="This is [&name of PC variable ;formatting of PC variable;default value of PC variable&]"
The variable in first constant Test is directly replaced at the beginning if the Web-Extensions or at any ChangeLanguage() call to the Web Graphical Service. The variable in constant Testdirect is replaced directly at the gener-ation of the HTML file, where the WX_TEXT[%Testdirect; default%] is used.
AllowList
Since the Web Graphical Service is implemented by an Internet browser, any Internet page can be downloaded from the Internet. This can be important, for instance, when you want to display stock exchange rates or information on any topics on the self-service device without the pages having to be created in the intranet. The size and design of such pages, however, always constitute a problem because they will generally not fit in with the chosen self-service design.
Since the Web Graphical Service is implemented by an Internet browser, any Internet page can be downloaded from an Internet Server. For security reasons the AllowList is an internal firewall, which protects the self-service system from displaying other Internet pages than desired. Displaying such pages on the self-service terminal would enable customers to surf the Internet freely. It is therefore important to allow access to certain Internet pages only. This is done
May 2008 293
Web Graphical Service components AllowList
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
by means of firewalls. These are programs which restrict access to Internet pages as a result of parameterization. The AllowList is a very simple firewall. Access restriction is achieved by parameterizing a simple Internet page – the AllowList. This page can be stored locally on the self-service device and on an Internet server. The location of the AllowList is notified to the Web Graphical Service by the ConfigPageURL parameter (see "ConfigPageURL" on page 615 in the Parameters chapter)
The AllowList is an Internet page with a simple table. It is best to edit this page with Microsoft FrontPage. The structure can be seen in Fig. 95: "AllowList". The wildcard character * can be used. The AllowList is parsed from the top to the bottom. So you have to take care about the use of wildcards. Rows without wildcards have to be specified on top of each table.
The AllowList is split up into a section for HTTP:\\ and a section for FILE:\\ access. Local accesses can thus be parameterized differently from Internet accesses. Other protocols can be edited by creating a section for this in the headline of the protocol (f.e. Javascript). Specification of General will include all possible protocols. But please be careful when using a General section because this may allow all actions to Internet pages.
Because the described structure has been enhanced from earlier versions a comment <!-- VERSION 002 --> must be located in the header of the AllowList. If this comment is not available, the Web Graphical Service assumes that the earlier version is installed. This did not contain the Port number. An AllowList with Port number column must contain the Version comment, otherwise an error will be reported.
The latest version of the AllowList inserts a 7th and an optional 8th column in each table. Column 7 may be used to insert own HTML code at different locations in foreign HTML pages before they are loaded in the browser (see also section ’Expand external pages with own code’ on page 296). This version of the AllowList is marked with a comment <!-- VERSION 006 --> in the header of the AllowList. Additionally the path of the reference file must eather be located in a comment in the header <!-- ExpandFileURL C:/ProTopas/Web/Allow/Expand.txt -->.
294 May 2008
AllowList Web Graphical Service components
Structure of the AllowList
Fig. 95: AllowList
Column 1 – DOMAIN: The names of all allowed servers are entered here. If * is entered, every server can be accessed. Even native IP-Adresses, symbolized in four 3-digits numbers (nnn.nnn.nnn.nnn) can be edited here. The * can be used at the beginning or end instead of those 3-digit numbers or instead of full server names.
Column 2 – OBJECT: All allowed Internet pages and Web paths are entered here. A domain name can be specified here, too. In this case, however, an * should be specified in the DOMAIN column. Here, it is essential to specify a suffix if you are not operating with the * wildcard. If no DOMAIN is given here, the OBJECT has to begin with a / . DOMAIN and OBJECT added builds the complete Internet adress.
Column 3 – SUFFIX: A file name suffix (e.g. htm) can be entered here in addition. This is not compulsory, though. As a rule, only the * wildcard will be entered here. This column is only intended to allow all files with the same suffix. No file or domain name is allowed to appear in this column, only the file name suffix.
Column 4 – PORT: A special Port number may be edited here. If there is a request to allow only page from a special port, please enter the Port number.
Column 5– GENERATE: This must be set to 1 for all ProTopas Internet pages. All Internet pages marked with a 1 here are generated by the HTML generator and placed in a temporary directory that the TempPath parameter points to (see "TempPath" on page 618 in the Parameters chapter). They are passed to the Web Graphical Service from there. A zero in this column means that the Internet page will not be generated. A zero should be entered
May 2008 295
Web Graphical Service components AllowList
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
for all pages that do not belong to the ProTopas application, but are to be loaded from the intranet or Internet. It is important to ensure that all pages belonging to a frameset have the same digit here because the Microsoft technology does not allow pages originating from different sources (temporary directory, domain, hard disk) to communicate with each other for security reasons.
Column 6– TIMER: This determines the timeout period for pages which do not belong to the ProTopas application. This value has to be set to zero for all Internet pages that are part of the ProTopas/Web-Extensions application because the timer is controlled from the pages themselves. The value that is entered here specifies the maximum time in milliseconds that will be waited until the application returns to the home page (see also ’Displaying external pages’ on page 449). But you have to understand, that the timer of the first internet page to be loaded in an instance of the external page mode is used during the complete external page mode session. So the timer of the other pages in this session will be out of interest.
Column 7– INSERTION: This column may be used to insert a reference number for a paragraph in the Expand.txt file (see also section ’Expand external pages with own code’ on page 296). This paragraph contains the reference number, the position where the HTML code should be inserted and the HTML code itself. There may be more than one paragraph to be inserted. Different reference numbers are seperated by a Semicolon.
Column 8– OPTIONAL: This column may be used for optional enhance-ments:
– The reserved keyword NO_LOCAL_CACHE is used in HTTPS:// Protocols for not cashing those pages (see also section ’Accessing https:// pages’ on page 452).
– The keyword WXmonitor may be used to activate a timer control (see also section ’Monitoring of navigation to another page’ on page 301) during the navigation from the current page to a trigger condition which will end this timer. If the trigger condition will not be reached the Web Graphical Service will navigate to the Offline page (see also section ’Switching the Web Graphical Service offline’ on page 300).
– The keyword WXmarketingmode ensures, that during a One-To-One marketing session the time for this complete session may be entered. If this timer is timing out because of any problem the Web
296 May 2008
Expand external pages with own code Web Graphical Service components
Graphical Service is navigating to the page specified behind this keyword (see also section ’Monitoring of more than one page’ on page 302).
– The keyword WNvikey:START activates the virtual keyboard, the keyword WNvikey:END deactivates it. (see also section ’Using the Virtual Keyboard’ on page 313)
Rejection of selected Internet pages
If an Internet page is selected which does not follow the pattern in the AllowList, then the link is rejected. In this case, the Web Graphical Service loads the Internet page which has been entered with its complete path in the Web Graphical Service’s ErrorURL parameter (see "ErrorURL" on page 619 in the Parameters chapter) in a new window. On this page the customer is told about the rejected HTML page. This page works as a popup window and will be closed automatically after a timeout of 10 seconds.
Expand external pages with own code
This is a good feature to add HTML code in an Internet page, before it is loaded into the browser. This gives the possibility to add self-service specific actions in pages, which were designed for Home PC’s. For example standard edit fields can be filled with application data by use of the Data Dictionary Control and a script, or Data from an HTML element can be set into the Data Dictionary vice versa.
This feature is provided by the AllowList. In column 7 of the AllowList a reference number may be specified, which references the number of a paragraph in the Expand.txt file. This paragraph contains the HTML code to be inserted. If more than one paragraph of HTML code should be inserted in one Internet file, the reference numbers in column 7 of the AllowList may be seperated by a semicolon. The Expand.txt file has the following syntax:
# This is a comment - if it is outside of the _RULE_ sentinels
PC_HTMLGEN_RULE_START
Reference number
Position
May 2008 297
Web Graphical Service components Expand external pages with own code
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
HTML code (more than one line possible)
optional (for Position 301): PC_HTMLGEN_RULE_SEPARATOR
optional (for Position 301): HTML code (more than one line possible)
PC_HTMLGEN_RULE_END
PC_HTMLGEN_RULE_START
...
Reference number specifies the number of the paragraph. It must be identical to the number in column 7 of the AllowList. The range may be from 1 to 16000.
Position specifies, where in the interent page the following HTML code should be inserted. The following positions are allowed:
101 Behind tag <Head>
102 Before tag </Head>
103 Behind tag <Body>
104 Before tag </Body>
110 Inside tag <Body> at the end
201 Don’t generate a tag <Base ...>
202 Dont generate an anchor tag <a ...>
301 Replace, insert or delete tags. Here the position is not predefiend, but any HTML Code can be specified, which should be replaces or behind which the code may be inserted or deleted.
The numbers 201 and 202 may be used to supress the generation of anchor and base tag to navigate in the temp directory. Each generated Internet page is stored in a temp directory, before it is loaded in the browser (see also section ’HTML generator’ on page 281). In the base tag the real address is stored, so a relative navigation will not try to load the page from the temp directory but from the real address.
The supression of the base and anchor tag may be useful, if external pages already have a base tag, which shall not be set twice in an Internet page.
298 May 2008
Expand external pages with own code Web Graphical Service components
HTML code may be any kind of HTML sourcecode, inluding scripts and objects.
Each paragraph in the Expand.txt file is separated from the others by the starting sentimel PC_HTMLGEN_RULE_START and the end sentinel PC_HTMLGEN_RULE_END. PC_HTMLGEN_RULE_SEPARATOR is used to separate the code, which should be replaced with the replacement code (only for position 301).
Only for position 301: With this position it is possible to insert, replace or delete HTML tags at each position inside the HTML page, because the tag has to be specified, which should be replaced. Here are examples for inserting, replacing and deleting HTML tags:
Inserting This is any text or tags.behind <p id="myP">this is any paragraph</p>:
PC_HTMLGEN_RULE_START7301<p id="myP">this is any paragraph</p>PC_HTMLGEN_RULE_SEPARATOR<p id="myP">this is any paragraph</p>This is any text or tags.PC_HTMLGEN_RULE_END
Replacing <p id="myP">this is any paragraph</p> with This is any text or tags.:
PC_HTMLGEN_RULE_START7301<p id="myP">this is any paragraph</p>PC_HTMLGEN_RULE_SEPARATORThis is any text or tags.PC_HTMLGEN_RULE_END
Deleting <p id="myP">this is any paragraph</p> :
PC_HTMLGEN_RULE_START7301<p id="myP">this is any paragraph</p>PC_HTMLGEN_RULE_SEPARATORPC_HTMLGEN_RULE_END
May 2008 299
Web Graphical Service componentsPrinting HTML pages in windows mode
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Printing HTML pages in windows mode
The general technique to print a page in windows print mode is to navigate to the URL about:SNI_SURFING_PRINT on the page, which has to be printed. This is automatically handled by the Function Key SURFING_PRINT. This will be found in the SurfingFooter since version 1.1/10 for the external page mode. For the normal mode, a button or a script with a link to about:SNI_SURFING_PRINT has to be placed directly into a page. So an existing print function of any page can be changed towards the self service print function.
If the SURFING_PRINT button is pressed, the Graphical Service searches in all loaded pages for the comment <!-- PC_HTMLGEN_RULE:PRINT_THIS --> If this is found the page will be printed. All pages from a frameset will be printed seperately one after the other like IE itself would do. The comments can be set into the page directly during creation, dynamically by use of a web server or dynamically by the help of the HTML-Generator (see also section ’Expand external pages with own code’ on page 296).
Example for Expand.txt enhancement:
PC_HTMLGEN_RULE_START1102<!-- PC_HTMLGEN_RULE:PRINT_THIS -->PC_HTMLGEN_RULE_END
In the Allow List a number 1 has to be placed into the column INSERTION for each page, which shall be printed Make sure, that even the GENERATE flag is set to 1. The following Parameter has to be set to 1, if the pages shall be checked for print comments.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraficalServicePCBrowser
WebExtPrintCheck = 1
300 May 2008
Switching the Web Graphical Service offlineWeb Graphical Service compon
Switching the Web Graphical Service offline
A very important property of the Web Graphical Service is to switch to locally stored Internet pages in the event of line problems. This can only happen if the browser is not accessing a set of Internet pages stored locally on the PC but pages from an Intranet Server. As soon as the Web Graphical Service recog-nizes that the requested Internet page cannot be loaded within the monitoring time defined in the TimeoutDataReceiveRequest parameter (see "TimeoutDa-taReceiveRequest" on page 623 in the Parameters chapter), it accesses the local Internet page that is specified in the OfflineURL parameter (see "OfflineURL" on page 619 in the Parameters chapter). The complete path for the offline page has to be specified in the parameter.
When the Web Graphical Service is switched to an offline page, there is normally a line problem so the application cannot be continued.
A special return code is provided in a script on that page. The appli-cation may go on and load other pages from the local directory. A query may be issued to check whether a card is still in the device and this is ejected if appropriate. To load a page from the Intranet Server again, ChangeLanguage() (see also section ’CCDialogFW.Change-Language’ on page 333) has to be called first. The next DoDialog() function tries to load the page from the intranet server. If this also fails, the page from the OfflineURL parameter is accessed. This sequence is repeated until the line is okay again.
On other local Internet pages a query is therefore issued to check whether a card is still in the device and this is ejected if appropriate. Then another attempt is made to access a page from the Intranet. If this also fails, the page from the OfflineURL parameter is accessed. This sequence is repeated until the line is okay again.
Offline Fallback
The offline handling has been improved. The Web Graphical Service automati-cally checks if the page, which can not be loaded is found in the offline directory, before it activates the page, which is configured in the OfflineURL parameter. To activate this handling, the OfflineFallback parameter (see "OfflineFallback" on page 622 in the Parameters chapter) has to be switched to 1. Now the RootPathOffline (see "RootPathOffline" on page 620 in the Parameters chapter) and RootPath parameter (see "RootPath" on page 620 in the Param-eters chapter) must be configured correctly. Web Graphical Service will try to
May 2008 301
Web Graphical Service componentsSwitching the Web Graphical Service off
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
extract the relative path to the page to be loaded by subtracting the RootPath parameter from the complete path. It enhances this again with the RootPathOf-fline. Now Web Graphical Service tries to load the page from the Offline directory. If it is found there, the page from the OfflineURL is loaded as described above.
Additionally the variable VAR_OFFLINE_HTML_NAME_S is filled, when the page can not be loaded. The variable contains the complete path and name of the unloadable page. This variable may be used to decide, where in the appli-cation the offline occured and to implement a proper reaction.
Monitoring of navigation to another page
The Web Graphical Service give the possibility to control a navigation to another page with the help of a configuration in the Allow List. The Column 8– OPTIONAL can be used to specify the keyword WXmonitor. With this keyword a timer can be started, which super-vises the navigation to another page or another trigger condition. If the page or trigger condition will not be reached during the period the timer is active, the Web Graphical Service will navigate to the Offline page(see also section ’Switching the Web Graphical Service offline’ on page 300).
The Column 8– OPTIONAL must be configured in the following way:
WXmonitor: param1 ; param2
param1: timer in seconds the navigation to the trigger may need (0-3600).
param2: (optional: default = 0) one of the following trigger conditions:
0: stop, when next Timer is started
1: stop at document complete event from next page
2: stop when next Contents STD/ATM Control is started
3: stop by next navigation to window.navigate("WXmonitor:OK")
With these conditions it is possible to create timer controllings to pages, which contain this condition. For example in page1.htm the timer is started and by configuration of the Allow List. param2 is set to 0. Even page2.htm is configured in the same way. When page2.htm is navigating to page3.htm the
302 May 2008
Switching the Web Graphical Service offlineWeb Graphical Service compon
timer from page1.htm is killed and replaced to the new timer, which is configured in the Allow List column for page2.htm. To reset this Timer queue, param1 must be set to 0 for the last page the link is navigating to.
When param2 is set to 1 the timer will be killed, when the page navigates to the next page and the document complete event from this page is fired.
When param2 is set to 2 the timer will be killed, when the next Contents STD/ATM Control is started. This must not obviously be on the next page but on a page, which does contain a Contents STD/ATM Contol.
When param2 is set to 3 the timer will be killed, when a navigation is done to WXmonitor:OK, which is a reserved keyword. This navigation can be place in a Button or Contents STD/ATM Control or by script ( window.navigate("WXmonitor:OK")). This must not be on the next page, but you have to keep in mind that the timer is long enough to do all these naviga-tions to reach the page, where this navigation is done.
Monitoring of more than one page
When a complete transaction flow shall be monitored as a single the keyword WXmarketingmode may be used. This ensures, that a transaction flow may be supervised by timer. When this timer expires normally this means that a problem has occured during this flow. In this case the Web Graphical Service navigates automatically to the specified page. This must be a page which returns to a transaction flow the transaction must proceed with. An optional flag FLAG_NAVINACTIVEPAGE specifies if the navigation will continue in the active frame. If this flag is not set this means that the navigation takes place in top without any frames.
The Column 8– OPTIONAL must be configured in the following way:
WXmarketingmode: Timer ; Page; Flag
Timer: timer in seconds the complete flow may need (0-3600).
Page: This page wil be called, when the timer will expire.
Flag (optional): Here the keyword FLAG_NAVINACTIVEPAGE may be configured if the navigation must take place in the current frame. Otherwise is takes place on top.
If this timer shall be stopped, the timer 0 has to be specified on the page, which shall stop it.
WXmarketingmode: 0
May 2008 303
Web Graphical Service components Starting the Web Graphical Service
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
An other way would be to navigate the the reserved keyword WXmarket-ingmode:0.
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript><!--function window_onload(){
//this will stop the transaction timerwindow.navigate("WXmarketingmode:0");
}//--></SCRIPT>
There are start/stop events from PCDialogFW with parameter, where the timer and pagenames can be retrieved with (see also section ’Additional Events’ on page 344).
Supervising the monitoring to the first offline page
The parameter OfflineMonitorTimer (see "OfflineMonitorTimer" on page 622 in the Parameters chapter) may be used to supervise the navigation to the first offline page, when an application page could not be loaded and this has been supervised by WXMonitor (see also section ’Monitoring of navigation to another page’ on page 301). If the timer expires, the Web Graphical Service will be restarted, because the offline handling is the fallback if some problems will occur. But when the offline pages itself are not accessible, it is better to restart the Web Graphical Service.
Starting the Web Graphical Service
As mentioned in the Components of the Internet browser section, the main module of the Web Graphical Service has been implemented as an executable. When the application is launched, this executable is loaded. When it has been initialized, this module loads the HTML home page. This is specified with its complete path in the StartPage parameter (see "StartPage" on page 615 in the Parameters chapter).
The full details contain the word FILE:// followed by the complete path name of the locally stored pages or HTTP:// followed by the domain name of the intranet server and the Web name.
Example: FILE://C:\ProTopas\Web\English\Start.htm
304 May 2008
Starting the Web Graphical Service Web Graphical Service components
or HTTP://Mymachine/ProTopas/English/Start.htm
Behind the configuration of the application’s home page lies the path from which other Internet pages are loaded. It is possible to reference the other Internet pages relatively, i.e. without specifying the complete path name. It must be stated that it is very advantageous to access pages of an application relatively so that the entire Web can be moved if necessary without having to revise all the links.
This initial page must necessarily contain a Contents ATM control, because the CCDialogFW.Open() function waits for the initialization event from Contents ATM control. It is preferable to show only a background. After the browser restart because of the memory leak of the Internet Explorer (see also section ’Memory leak of the Internet Explorer’ on page 309) the application starts with this background. The next page, which is loaded by calling the DoDialog() interface, loads the HTML page with the appropriate background. The Contents ATM Control must use an EndlessTimeout, because it shall never give a returncode to the Step.
If the application wants to work with frames, the HTML Start Page must contain the frameset.
If the application deals with several languages, a new frameset must be loaded directly after a call of ChangeLanguage() (see also section ’CCDialogFW.ChangeLanguage’ on page 333). ChangeLanguage changes the habit of the Dialog Framework. The next page after a ChangeLanguage() uses the complete screen context for loading. If the application uses framesets, a new frameset must be loaded here.
The next Internet pages will be loaded after a call of DoDialog(). The Graphical Service will automatically load this page into the frame that contains the Contents ATM control. It forms the URL of the Internet page, the Parameter RootPath (see "RootPath" on page 620 in the Parameters chapter) enhanced by the parameter DefaultLanguage (see "DefaultLanguage" on page 619 in the Parameters chapter) or the name of the language which was input as parameter of the ChangeLanguage() function.
Example: RootPath = FILE://C:\ProTopas\WebDefaultLanguage = GermanDoDialog ("Idle");
May 2008 305
Web Graphical Service components Hiding the cursor
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
The Graphical Service loads FILE://C:\ProTopas\Web\German\Idle.htm
If the home page cannot be loaded, there may be several reasons:
1. The path or the HTML name has not been entered correctly.
2. The page has not been entered in the AllowList.
3. The connection to the intranet server or proxy has not been configured correctly.
4. The StartPage, RootPath and DefaultLanguage parameter has not been entered in the Registry.
Hiding the cursor
Since the cursor is not intended to be visible in a self-service application unless editable fields for keyboard inputs are involved, it must be possible to turn the cursor on and off via a parameter. This is done with the CursorEnable parameter (see "CursorEnable" on page 604 in the Parameters chapter). 1 means that the cursor is visible, whereas 0 hides the cursor.
Language selection
The basic design consideration for Internet pages is to create a separate page for each language. In this way, an Internet page can be translated to the appearance that it will have at run time. The WYSIWYG idea has been imple-mented. If the texts were read from just one file, the data could be gathered and passed on for translation but there would be no guarantee that user interface elements would not be shifted if the text did not fit into the areas provided for it. Furthermore, text on some elements could simply be truncated.
To avoid this, a new set of Internet pages is created for every language. First, the application should be completed and tested in the standard language. Then the complete set of Internet pages has to be copied to a new language-specific directory, and each page needs to be translated. Structuring in language-specific subdirectories is a good approach. If images on the Internet pages are addressed relatively and the images are created on the same level as the language-specific HTML directories, the set of image elements only has to exist once. Language-specific images or sound files can be created as a subdirectory of an HTML directory. There is the following arrangement:
306 May 2008
Language selection Web Graphical Service components
English Internet pages: ProTopas\Web\English
German Internet pages: ProTopas\Web\German
Language-independent images: ProTopas\Web\Images
Language-specific images: ProTopas\Web\English\Images
Language-specific sound files: ProTopas\Web\English\Wav
A change of language is brought about easily by changing the directory through a language menu on an Internet page. If all Internet pages have a flat hierarchy in the \ProTopas\English directory, then the Internet pages can simply call each other by specifying just the name of the new Internet page without including a path: GeneralMainMenu.htm. To change the language, it is necessary to specify the relative path to the new language-specific HTML directory: ../English/GeneralMainMenu.htm
A change of language is brought about easily by changing the directory by calling the ChangeLanguage() function. If all Internet pages are located in the \ProTopas\Web\English directory, then the Internet pages can be loaded by: DoDialog("General-MainMenu"). To change the language, it is necessary to specify the name of the language-specific subdirectory as input parameter of the ChangeLanguage() function: ChangeLanguage("German"). In this case, the Dialog Framework builds a new path \ProTopas\Web\German for searching the next Internet pages. The path is built using the parameter RootPath (see "RootPath" on page 620 in the Parameters chapter), enhanced with the input parameter of the ChangeLanguage() function:
Example: RootPath = FILE://C:\ProTopas\WebChangeLanguage("German")DoDialog ("Idle");
The Graphical Service loads FILE://C:\ProTopas\Web\German\Idle.htm
Changing the complete frameset
If you are working with framesets and there are language-specific outputs on the Internet pages, the complete frameset has to be changed. The difficulty here lies in calling a completely new frameset
May 2008 307
Web Graphical Service components Language selection
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
from an involved Internet page. If you load another frameset from a frame page, this is loaded in the small section of the frame page. The following trick will overlay a frameset over the entire screen:
An Internet page is called without outputs. The new frameset is called from there by means of scripting. The content of the body of this page is the Active VarFW control and the following script:
<script language="JavaScript">
ActiveVarFW.VariableName = "VAR_WEBNAME_S"ActiveVarFW.GetStringValue()FrmSetMenu = ActiveVarFW.VariableValue +
'/English/LanguageFrmSetMenu.htm'
window.setTimeout("top.navigate(FrmSetMenu)",0);
</script>
The VAR_WEBNAME_S variable is set by the Web Graphical Service when the application starts. This variable contains the content from the RootPath parameter (see "RootPath" on page 620 in the Parameters chapter).
Two intermediate pages are thus loaded after a language selection: The first with the script shown above and the second as a frameset page.
The approach of loading a page with scripts followed by a new frameset page should also be taken when the layout needs to be changed while the application is running. If the screen is not split up into frames on information pages, for example, the same approach should be taken as when changing the language.
Changing the complete frameset
If you are working with framesets and there are language-specific outputs on the Internet pages, the complete frameset has to be changed. The difficulty here lies in calling a completely new frameset from an Internet page. The Web Graphical Service takes care of this. Directly after a ChangeLanguage() function call, the next file name specified in the DoDialog() function is loaded over the whole screen. If you are working with framesets, another language-specific frameset has to be loaded.
308 May 2008
Language selection Web Graphical Service components
If a frameset is loaded at any other time, this new frameset is loaded into the frame that Contents ATM control was positioned in. So this frameset is nested into the frameset specified in the StartPage parameter.
To load another frameset not following language selection, the ChangeLanguage() function may even be used. By specifying the same language as that already loaded, the Dialog Framework loads the next frameset over the whole screen.
Converting language-specific formats
If formatted inputs or outputs which are language-specific take place in the application, then the settings for the HTML generator also have to be converted.
This is made possible by using the interface in the Web Graphical Service (see "PCDialogFW.Format" on page 346). The name of the language must be passed as a string to the ChangeLanguage() function by the application. Internally, the HTML generator searches its parameter lists for a key that matches this. All parameters under this key define the formatting of the language-specific amount and date formats (see "Formatting settings" on page 288).
The Graphical Service itself is responsible for changing the format pattern in his ChangeLanguage() function. The name of the language must be passed as a string to the ChangeLanguage() function (see also section ’CCDialogFW.ChangeLanguage’ on page 333) by the application. Internally, the HTML generator searches its parameter lists for a key that matches this. All parameters under this key define the formatting of the language-specific amount and date formats (see "Formatting settings" on page 288).
When a new language is created for an existing application, then you not only have to copy the Internet pages to a new directory but also to create a new key with the name of the new language. All parameters of an existing key are trans-ferred to this key. Then the language-specific settings can be defined. Here, it is also possible to adapt the Windows NT language specifics by setting the UseLocals parameter (see also ’UseLocals’ on page 630) to 1.
May 2008 309
Web Graphical Service components Memory leak of the Internet Explorer
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Memory leak of the Internet Explorer
The Microsoft Internet Explorer is basically not designed to be used for applica-tions which run 7 days x 24 hours. Each page name is stored in memory to enable use of the back key functionality to jump back several links. There is no way to switch this functionality off.
The history list is switched off by default since version 1.1/10. To switch it on again, set Parameter WebExtNoHistory to 0 (see "WebExtNoHistory" on page 617 in the Parameters chapter).
The only way to solve the memory problem, is to close the Internet Explorer and reopen it again. This should only be done when the memory reaches a critical mass. During this time, the Display may contain no valid contents!
There is a Protopas framework available: HtmlDialogControl (HtmlDict.dll) which checks the amount of used memory and restarts CCDialog.exe if a given limit is reached. HtmlDialogControl offers a set of parameters which are documented at CCOpen parameters.
There is a parameter MAX_MEMORY_USE (see "MAX_MEMORY_USE" on page 681 in the Parameters chapter), which keeps the percentage of memory that may be in use until HtmlDialogControl shuts down the Web Graphical Service. The Web Graphical Service reopens automatically. Before shutdown, the application is closed by HtmlDialogControl. So the shutdown will not happen while a customer is in the middle of a transaction.
In a Web-Extensions/HyperLink architecture the step which is is loaded on the page that shows the Out-Of-Service interface must have a cancel method. It is necessary to finish the running step properly in the Contents STD Control closing routines.
Because there may be some peaks of max. used memory, the parameter MAX_MEMORY_USE_MINUTES (see "MAX_MEMORY_USE_MINUTES" on page 681 in the Parameters chapter) contains the time, the wasted memory must stay in maximum, before the Web Graphical Service is closed.
HTML Dialog Control Version 2240
Version 2240 of HtmlDialogControl uses when no Wincor Xfs SYN service is running (e.g. no CCSYNCFW is loaded), first the method ServiceHandlerRe-quest of an application fw (CCApplic.xpp). When ServiceHandlerRequest is not supported, the method OperatorSessionRequest of an application fw is used.
310 May 2008
Memory leak of the Internet Explorer Web Graphical Service components
When a Wincor Xfs SYN service is running, the method ProcessFunc APP::STOP of that SYN service is used. The application is closed with Sync.ProcessFunc ("APP::STOP") and restarted with Sync.ProcessFunc ("APP::RESUME");
Additionally the HtmlDialogControl provides a watchdog functionality for the Graphical Service. It calls the GetbStatus() function periodically. If it does not get a returncode, it will reboot the system. It will reboot the system also, if an unhandled exception in the Web Graphical Service occurs.
HtmlDialogControl also registers for the CCDIALOG_TEST_TIMER_OK events and checks if these are send. This is important because inside CCDialog a lot of timeouts are build with the Win32 SetTimer function and this function is very weak against invalid usage.
When the Web Graphical Service is restarted because of a memory problem, there is an option to show a graphic during the restart periode. The parameter JOB_BEFORE_KILL (see "JOB_BEFORE_KILL" on page 682 in the Param-eters chapter) and JOB_AFTER_KILL (see "JOB_AFTER_KILL" on page 682 in the Parameters chapter) may contain programms to load and to unload a Graphic, which looks like the startpage. Because the time to call the unload programm may be too short, a pause can be configured to wait until the graphic is loaded. Parameter AT_KILL_PAUSE_BETWEEN_JOBS (see "AT_KILL_PAUSE_BETWEEN_JOBS" on page 684 in the Parameters chapter) defines this timer value.
When Web Graphical Service is restarted because of an Exception, the are other parameters with the same meaning: JOB_BEFORE_EXCEPTION (see "JOB_BEFORE_EXCEPTION" on page 683 in the Parameters chapter), JOB_AFTER_EXCEPTION (see "JOB_AFTER_EXCEPTION" on page 683 in the Parameters chapter) and AT_EXCEPTION_PAUSE_BETWEEN_JOBS (see "AT_EXCEPTION_PAUSE_BETWEEN_JOBS" on page 684 in the Parameters chapter).
The procedure for stopping the customer service and reopen it again may be configured in two adtional parameters. If they are set to TRUE, the CloseCus-tomerService and OpenCustomerService function of the SyncFW are called. (see "AT_KILL_PAUSE_BETWEEN_JOBS" on page 684 in the Parameters chapter)(see "AT_KILL_APP_RESUME" on page 685 in the Parameters chapter). Parameter AT_KILL_GS_OPEN (see "AT_KILL_GS_OPEN" on page 685 in the Parameters chapter) specifies, if the Open() function of the Web Graphical Service should be called again or not.
May 2008 311
Web Graphical Service components Memory leak of the Internet Explorer
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
TIME_WAITFOR_RESTART_MEM (see "TIME_WAITFOR_RESTART_MEM" on page 685 in the Parameters chapter) and TIME_WAITFOR_RESTART_EXCEPTION (see "TIME_WAITFOR_RESTART_EXCEPTION" on page 685 in the Parameters chapter) are two parameters for fine tuning the amount of time to wait for the restart of the Web Graphical Service after a memory problem or after an exception.
TIME_SLEEP_WATCH (see "TIME_SLEEP_WATCH" on page 686 in the Parameters chapter) and TIME_MAX_WATCH_THREAD (see "TIME_MAX_WATCH_THREAD" on page 686 in the Parameters chapter) are used for configuring the amount of time in ms for the loop of the Watchdog thread or the Memory watch thread.
HTML Dialog Control Version 2242
There is a new functionality which allows to create a list with the name of all windows during the lifetime of the application. All window names, which are currently not in the list, are added at the end of the file and extend it. This list will kepp track, which popup windows have been created during a run of the appli-cation. Harmful windows like script error popups can be seen in this list very easy.
To activate this function the parameter POPUP_KILLER (see ’POPUP_KILLER’ in the Parameters manual on page 688) has to be switched to ON. In this case a file with the name POPUP.TXT will be created in the ProTopas/Web-Extensions Temp File (see ’TempPath’ in the Param-eters manual on page 618). If the content of the file shall be UNICODE, the parameter POPUP_KILLER_FILE_UNICODE (see ’POPUP_KILLER_FILE_UNICODE’ in the Parameters manual on page 688) has to be set to YES. The parameter POPUP_KILLER_TIME_SLEEP (see ’POPUP_KILLER_TIME_SLEEP’ in the Parameters manual on page 689) specifies the time in milliseconds the function for the check of all popup windows is reactivated again and again. The default here is 5000 ms.
This file may be used to watch all popup windows, even those which are shown in case of problems. This file shall be zipped together with the trace files in case of problems with the Web-pages.
HTML Dialog Control Version 2243
This version of the HTML Dialog control bings a better calculation of the memory growth. It is possible now to start an action when a configured amount of memory has been waisted. This is more secure
312 May 2008
Memory leak of the Internet Explorer Web Graphical Service components
than waiting for a percentage to be reached until an action starts. The parameter MAX_WEBEXTENSION_MEMORY_GROWTH (see ’MAX_WEBEXTENSION_MEMORY_GROWTH’ in the Parameters manual on page 689) is responsible for the activation of this process. HTML Dialog Control now monitors the memory every minute. If the amount of memory from the above mentioned parameter is reached, the HTML Dialog Control is restarting the Web Dialog.
Example: The parameter MAX_WEBEXTENSION_MEMORY_GROWTH is set to 32. The starting amount of memory after the start of the ProTopas/Web-Extensions is 10. When 43 MB of Memory are reached the Web Dialog will be restarted.
Calculation of the current memory usage:
The calculation of the current memory usage is done with the Win32 function GlobalMemoryStatus. This function offers among others the values:dwTotalPageFile (Total) and dwAvailPageFile (Avail).
The current memory usage is calculated by:CurrentUsed = (Total - Avail) / Total * 100
Unfortunately this calculation doesn’t contain a growing of the Swapfile. As far as Windows detects there is no more memory available, the swapfile grows and so also dwTotalPageFile grows, but dwAvailPageFile doesn’t change in a way that CurrentUsed would decrease!
That means in detail the Start Size of the Swapfile (see Windows System Set-tings Swapfile) determines the reboot of the system independent from the Max Size of the Swapfile!!!
If you have a Memory Leak that can not be fixed and CCRM.exe is restarting too often, you can increase the minimum (!) size of the Swapfile and so CCRM is not booting so often. But you should check, if the performance of the complete application is still fine, because the machine may busy by swapping!
Furthermore if your application can not be started, because CCRM detects dur-ing the start, that too much memory is used (Default more than 95 % over 5 min-utes) you can also increase the minimum size of the swapfile!
May 2008 313
Web Graphical Service components Using the Virtual Keyboard
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Using the Virtual Keyboard
The virtual keyboard may be used at Self Service Devices, which are using a Touch screen and which do not have an alphanumeric keyboard. The Virtual Keyboard is implemented as a separated Browser instance, which may be loaded on top of the Web Graphical Service into one of the edges. The Keyboard must not be visible all the time. Only by activation by a button or activation by script on those pages, which have an edit Control with alphanu-meric entry inside, the Keyboard may be brought to top.
The virtual Keyboard itself is an HTML page, so the keys, keystrockes and the layout of the keyboard may be configured by a person, who is able to program scripts on dynamic HTML pages.
Because the keyboard is implemented as an own instance, it is delivered an an own ProTopas executable file and has to be activated in the same way in the Restart manager as the Web Graphical Service.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
VK=C:\PROTOPAS\BIN\CCVK.EXE,4,1,6
The Programs parameter must therefore be changed as a result of the new entry. The Virtual Keyboard should be started before the Web Graphical Service:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
Programs=CCBase,CCBaseCtrl,application, VK, CCDialog,Appl_Check, CCStart
Additionally there are some parameters, which have to be configured, before starting the Virtual Keyboard: First of all the VirtualKeyboardOn Parameter (see "VirtualKeyboardOn" on page 598 in the Parameters chapter) has to be set to 1. The HRef Parameter (see "HRef" on page 604 in the Parameters chapter) contains the Virtual Keyboard HTML page. Width (see "Width" on page 602 in the Parameters chapter) and Height (see "Height" on page 602 in the Param-eters chapter) have to be used to configure the size of the Virtual Keyboard HTML page. Pos (see "Pos" on page 601 in the Parameters chapter) is used to configure the edge, into which the Virtual Keyboard shall be loaded. Additionally
314 May 2008
Using the Virtual Keyboard Web Graphical Service components
it is possible to load it into the middle of the screen, when Pos is set to 4 and the parameters Left (see "Left" on page 602 in the Parameters chapter) and Top (see "Top" on page 602 in the Parameters chapter) are used for specifying the upper left corner.
To activate a virtual Keyboard page at any HTML Page with an Edit Control the following script has to be inserted:
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript><!--function window_onload(){
//this will pop up Virtual keyboardwindow.navigate("WNvikey:START");
}
function window_onunload(){
//this will hide Virtual keyboardwindow.navigate("WNvikey:END");
}//--></SCRIPT>
The navigation to WNvikey:START activates the Virtual Keyboard and the navigation to WNvikey:END deactivates it. In this case the Keyboard is still active but not as the topmost window.
The Virtual Keyboard HTML page itself may be configured to change the layout of the Keyboard. There are a lot of functions to be used in script to activate the Keyboard, as there are:
window.navigate("WNVKstatus:INIT");
INIT is used to tell the Virtual Keyboard instance, that the Keyboard HTML page is ready to start it’s work. So this navigation should be done in an window_onload() function call.
window.navigate("WNVKcom:END");
This navigation stops the Virtual Keyboard entries and brings the Keyboard to the background. May be used for an <End> Button on the Keyboard HTML page.
window.navigate("WNVKcom:MOVE");
May 2008 315
Web Graphical Service components Using the Virtual Keyboard
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
This navigation moves to keyboard into the edges clockwise. May be used for a <move> Button on the Keyboard HTML page.
window.navigate("WNVKpos:LLLLTTTTWWWWHHHH");
This navigation moves to keyboard to the specified position and resizes it.LLLL - Distance from left side of screen to upper left cornerTTTT- Distance form top of screen to upper left cornerWWWW - WidthHHHH - Height
window.navigate("WNVKpos:MAX");
This keyword is used to maximize the virtual keyboard, when it is started minimized (by use of parameter MAXonStart=0). This might be useful, when another keyboard layout shall be used by scripting.
window.navigate("WNVKpos:MIN");
This keyword is used to minimize the virtual keyboard, when it stays maximized after end (by use of parameter MINonEnd=0).
window.navigate("WNVKpos:SHOW");
This keyword is used to activate and show the virtual keyboard instance. The difference between WNVKpos:MAX and WNVKpos:SHOW is that the maximize animation on a slow PC is not shown when using the WNVKpos:SHOW keyword.
window.navigate("WNVKpos:HIDE");
This keyword is used to deactivate and hide the virtual keyboard instance. The difference between WNVKpos:MIN and WNVKpos:HIDE is that the minimize animation on a slow PC is not shown when using the WNVKpos:HIDE keyword.
window.navigate("WNVKcom:FOCUS");
This navigation gives the focus back to the HTML page with the Edit Control.
window.navigate("WNVKkey:XXXYY");
This navigation sends the selected key to the Virtual Keyboard instance and gives the focus to the HTML page with the Edit Control. The Instance pops this key into the Keyboard buffer of the Operating System.
XXX: Virtual Key codeYY: shift state
316 May 2008
Using the Virtual Keyboard Web Graphical Service components
Example: ’WNVKkey:07501’this will send SHIFT + VK_K, if you have a western keyboard layout in your aplication(process) you will get: ’K’
window.navigate("WNVKchar:ZZZZZ");
This navigation sends the selected Character to the Virtual Keyboard instance and gives the focus to the HTML page with the Edit Control. The Instance pops this key into the Keyboard buffer of the Operating System.
ZZZZZ: numerical value of UNICODE character
Example: ’WNVKchar:8364’ (’€’ = ’8364’)If you have set a german keyboard layout this will send CTRL + ALT + VK_E, You will get:’€’.
window.navigate("WNVKtrclog:XXXTTTTTT");
This navigation write a trace into the TLS Tracelog. XXX specifies the tracebit and TTTTTT the trace text. The text is transferred into the Graphical Service as 100this%20is%20analyse%20trace! Only the %20 is replaced by a blank from the Graphical Service.
The tracebit has to be in the range of 000 to 255
window.navigate("WNVKerrlog:XXXTTTTTT");
This navigation writes an Error into the TLS Errorlog. XXX specifies the error number and TTTTTT the error text. The text is transferred into the Graphical Service as 10this%20is%20an%20error! Only the %20 is replaced by a blank from the Graphical Service.
The error number has to be one of the following numbers. It has to be stored decimal, but will show up in the error log in hex:
HEX DEC StCode Type Cause
0101 257 CCVK_GENERALEXCEPTION
0x64 Installation Error:An Exception was thrown inside the module/control
0102 258 CCVK_MEMORYEXCEPTION
0x64 Installation Error:A MemoryException was thrown inside the module/control
May 2008 317
Web Graphical Service components Using the Virtual Keyboard
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
Example:
<a href="WNVKerrlog:272this is a error log!">error</a>
ERROR DUMP:
12/09 061024 14:09:51.06 TRCERR CC_ENTRY PID:00000464.0000043C Data:128Type : Installation Error 0x64Module : CCVK (783) StClass: 0x6420Process: CCVK.exeAPIName: HTML ERRORStCode : CCVK_GENERAL_ERROR (0x24000110)SrcName: CCVKDlg.cpp SrcLine: 763Add : 'this is a error log!'Cause : A general ERROR inside the module/control
0103 259 CCVK_FILEEXCEPTION
0x64 Installation Error:A FileException was thrown inside the module/control
0104 260 CCVK_INTERNETEXCEPTION
0x64 Installation Error:An InternetException was thrown inside the module/control
0110 272 CCVK_GENERAL_ERROR
0x64 Installation Error:A general ERROR inside the module/control
0111 273 CCVK_ERROR_INSTALATION
0x63 Installation Error:An installation or configuration ERROR inside the module/control
0120 288 CCVK_WARNING
0x61 Invalid User Action:An Warning is issued inside the module/control
HEX DEC StCode Type Cause
318 May 2008
Using the Virtual Keyboard Web Graphical Service components
Please be careful by using those logging possibilities together with a real navigation. This could guide to double navigations which will harm the system. it is always a good idea to use window.setTimeout() when a few traces and a navigation shall be performed quickly one after another.
To see examples for all those navigations, please look into the HTML page for Virtual Keyboard, which is found in HRef Parameter (see "HRef" on page 604 in the Parameters chapter).
There are two scripts to be used at activation of the Virtual Keyboard page and at the deactivation at end. Those can be configured by parameters. ScriptAt-Start (see "ScriptAtStart" on page 604 in the Parameters chapter) contains eigher the script itself or the name of a function and ScriptAtEnd (see "ScriptAtEnd" on page 605 in the Parameters chapter) the script at the end of a keyboard session. In parameter ScriptLanguage (see "ScriptLanguage" on page 604 in the Parameters chapter) the language for thoise scripts must be specified. Those scripts may f.e. be used to jump to the language specific Keyboard layout page.
By use of the parameters MAXonStart (see "MAXonStart" on page 603 in the Parameters chapter) and MINonEnd (see "MINonEnd" on page 603 in the Parameters chapter) together with the keywords window.navigate("WNVKpos:MIN"); and window.navigate("WNVKpos:MAX"); the time when the virtual keyboard shall be visible can be determined. If MAXonStart is set to 0 the navigation to window.navigate("WNVKpos:MAX"); in the virtual keyboard page itself will show the virtual keyboard on the screen. The parameter WindowPlacement (see "Window-Placement" on page 603 in the Parameters chapter) configures the behaviour of the virtual keyboard. Aminimize/maximize behavior or a show/hide behavior can be configured. With min/max on slow machines it is possible that the window movement is visible.
The virtual keyboard supervises the used memory and the checks for hangup situations. Therefor a few parameters have been added which specify some timers and amont of used memory CCVK.exe will be restarted. The parameter CheckWND (see "CheckWND" on page 605 in the Parameters chapter), specifies the time interval of the check for hangup situations. CheckWNDmax (see "CheckWNDmax" on page 605 in the Parameters chapter) describes the time, the process will not respond until CCVK.exe reports a hangup situation. CheckMem (see "CheckMem" on page 605 in the Parameters chapter) specifies the interval the memory is checked for leaks and
May 2008 319
Web Graphical Service components Using the Virtual Keyboard
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
CheckMEMMax (see "CheckMEMmax" on page 606 in the Param-eters chapter) is the maximum amount of memory which might be allocated in CCVK.exe until the memory check will restart the instance. KillHardWAIT (see "KillHardWAIT" on page 606 in the Parameters chapter) will additionally check at restart situations, if CCVK.exe is really restarting. Othervice the complete application will be switched off.
There are a few container variables, which might be used to check the state of the Virtual Keyboard or which might be used as container array variables itself for what ever purpose they are needed. The following variables are available:
CCVK_VAR_CONTAINER_L [0-255]
CCVK_VAR_CONTAINER_S [0-255]
CCVK_VAR_STATUS_L (read only)
This variable will have the contents
CCVK_VK_OFFLINE event
The event CCVK_VK_OFFLINE may be used to determine if the requested page can not be loaded. Additionally an error log is written which contains details about this error.
The event is extremely useful to detect offline situations in the CCVK instance. The Web Graphical service will switch to offline mode in case of errors. CCVK has no offline handling, but with the help of this event for example the Virtual Keyboard instance may be switched to the background and initialize for the next use.
Meaning value
Virtual Keyboard has an error -1
Virtual Keyboard is ready 0
Virtual Keyboard is active 1
320 May 2008
Logging the flow of the HTML pages Web Graphical Service components
Parameter MarketingAllowFocus
This parameter allows the virtual Keyboard not to be always on top. The value 0 means that the virtual keyboard never looses the focus. All other windows are not visible when virtual keyboard is activated. Value 1 means it is allowed to loose the focus. To loose the focus can be necessary during development to view other windows, or when marketing should be active during a SOP session at the control panel i.e. (see "MarketingAllowFocus" on page 606 in the Parameters chapter)
Logging the flow of the HTML pages
Sometimes it is necessary to see the workflow of all HTML pages at one glimpse. So there is an option to trace this flow into a file. This function is designed only for test purposes. There are two log files created with the extension .0.LOG and .1.LOG. The Web Graphical Service creates the file with the extension .1.LOG when the file with the extension .0.LOG is full. If the file with the extension .1.LOG is even full, the file with the extension .0.LOG is overridden, etc. After reboot, the Web Graphical Service searches for the file it has written last and fills this file up until this is full.
Additionally the start, stop of the Web Graphical Service, memory leaks and exceptions are also logged.
To activate the logging mechanism, the LOGOn parameter (see "LOGOn" on page 597 in the Parameters chapter) has to be set to 1 and the path and filename without extension of the log file has to be specified in LOGFilePath parameter (see "LOGFilePath" on page 598 in the Parameters chapter). The size of one of both log files can be specified in LOGFileSize parameter (see "LOGFileSize" on page 598 in the Parameters chapter). And finally the size of the internal buffer queue is specified in LOGBufferSize (see "LOGBufferSize" on page 598 in the Parameters chapter) parameter, because not every entry can be written into the file directly, so it has to be buffered.
This file may now be used to see, which html pages have been loaded during the actual session. The contents of the file may be as follows:
27/08/2002 10:19:55 START27/08/2002 10:20:02 C:\PROTOPAS\Web\English\OutOfService.htm27/08/2002 10:20:06 C:\PROTOPAS\Web\English\OutOfService.htm
May 2008 321
Web Graphical Service componentsResizing the Web Graphical Service on a
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Gra
fical
Ser
vice
.fm
27/08/2002 10:20:16 C:\PROTOPAS\Web\English\OutOfService1.htm27/08/2002 10:20:17 file://C:\PROTOPAS\Web\English\CardInsert.htm27/08/2002 10:20:20 END
Resizing the Web Graphical Service on a PC
If the Web Graphical Service shall be used in a test environment on a PC or Laptop, there are four parameter for the starting coordinates, width and heigth. This is useful when the resolution of the PC or Laptop is larger than the resolution used in the HTML screens. Additinally some other windows may be placed around the HTML Window. Just create the following four DWORD parameter and restart the Web Graphical Service:
(see "WindowTop" on page 600 in the Parameters chapter),(see "WindowLeft" on page 600 in the Parameters chapter),(see "WindowWidth" on page 601 in the Parameters chapter),(see "WindowHeight" on page 601 in the Parameters chapter).
322 May 2008
Dialog Framework
Dialog Framework
The dialog framework controls the presentation of applications on the screen and the input of data from the pin pad. The interfaces and definitions are identical between the High Level Graphical Service and the Web Graphical service. This chapter deals about the interface functions both Graphical Service provide. The next chapter PCDialog framework (see page 322) deals about special functions only the Web Graphical Service provide.
Release specification
The Dialog Framework is released in an EXE named CCDialog.exe.
applications using this program have to include the file CCDialog.xpp.
Configuration
Is not necessary for an executable.
Parameters
See also chapter ’Graphical Service’ on page 597.
May 2008 323
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
Interaction with other frameworks
Methods from the following frameworks are used:
Data Framework (mandatory)
Variable Framework (optional)
Data Dictionary Framework (optional). If the framework is not loaded a warning is written into the trace.
Variables that are set and read to interact with the calling application are specified within the HTML pages.
They may be accessed either through the Variable Framework or through the Data Dictionary Framework. If the data dictionary is used, the variables must be supported by the calling framework.
324 May 2008
Dialog Framework
Public Interface
The Dialog Framework is implemented in the class ’CCDialogFW’. The Public Interface is defined completely in the include file CCDialog.xpp. It contains all public functions, events and required definitions for data structures and return codes.
Methods
The following public methods are defined in the dialog class:
CCDialogFW.Openopens the Dialog Framework
CCDialogFW.Closecloses the Dialog Framework
CCDialogFW.GetbStatusreturns the status of the PIN service
CCDialogFW.DoDialogcontrols the dialog
CCDialogFW.DoDialogAsynccontrols the dialog (asynchronous version)
CCDialogFW.CancelDialogcancels the currently active dialog
CCDialogFW.ChangeLanguagedefines a new secondary language
CCDialogFW.InitParmsrereads the "OPEN" section from the configuration parameters.
CCDialogFW.GetInputStringreturns the string entered by the customer or associated with the function key pressed.
CCDialogFW.GetInputLengthreturns the length of the data entered by the customer.
CCDialogFW.GetTerminateCharreturns the code of the termination key pressed by the customer.
CCDialogFW.Activatebrings the dialog window into the foreground.
May 2008 325
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.Deactivatestops automatic activation of the dialog window.
Definitions and data structures
The class CCDialogFW contains the following definitions and data structures:
Return codes:
Status flags:
Events
This framework does not issue any events.
Definition Value
CCDIALOG_OK 0
CCDIALOG_ERROR -2
CCDIALOG_CANCEL -3
CCDIALOG_TIMEOUT -4
CCDIALOG_SW_CANCEL -6
CCDIALOG_OFFLINE (Only HTML-GUI) -7
CCDIALOG_BUFFER_TOO_SMALL -2
CCDIALOG_PROPERTY_NOT_SET -4
CCDIALOG_IGNORED -500
CCDIALOG_FORCED_CANCEL -502
Definition Value
CCDIALOG_OPERATIONAL 0
CCDIALOG_NOT_OPERATIONAL 1
326 May 2008
Dialog Framework
Specification of the methods
In the following section all public methods are described in detail:
CCDialogFW.Open
Syntax:
SHORT Open(
VOID
)
Function:
This function opens the Dialog Framework
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
May 2008 327
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.Close
Syntax:
SHORT Close(
VOID
)
Function:
This function closes the Dialog Framework
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
328 May 2008
Dialog Framework
CCDialogFW.GetbStatus
Syntax:
SHORT GetbStatus (
VOID
)
Function:
This function returns the status of the dialog service
Return values:
CCDIALOG_OPERATIONAL (0)
The dialog service is operational.
CCDIALOG_NOT_OPERATIONAL (1)
The dialog service is not operational. This means either the PIN service failed or there are problems with a required system functionality.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
May 2008 329
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.DoDialog
Syntax:
SHORT DoDialog(
CHAR *szDialogName
CHAR *szDialogFlags
)
Function:
This function controls the dialog specified in the first parameter. If another previously called dialog is still active it will be cancelled prior to starting the one addressed within this call.
Parameters:
szDialogName (IN)
pointer to a character string with the name of the dialog to be executed.
szDialogFlags (IN)
This parameter is not used in this implementation. By default set to NULL.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
CCDIALOG_CANCEL (-3)
The current dialog is cancelled by the user.
CCDIALOG_TIMEOUT (-4)
The current dialog timed out.
CCDIALOG_SW_CANCEL (-6)
330 May 2008
Dialog Framework
The current dialog is cancelled by a function call from the application either explicitly or implicitly by calling a new dialog.
CCDIALOG_OFFLINE (-7)
This return code is only available for the ProTopas/Web-Extensions, if the HTML pages are stored on an intranet server and the connection to this server is interrupted.
CCDIALOG_FORCED_CANCEL (-502)
This dialog could not be canceled properly. SO Web-Ext did that.
May 2008 331
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.DoDialogAsync
Syntax:
SHORT DoDialogAsync(
CCFRMW_JOB_STATUS *pJobState
CHAR *szDialogName
CHAR *szDialogFlags
)
Asynchronous version of CCDialogFW.DoDialog. Description see above.
332 May 2008
Dialog Framework
CCDialogFW.CancelDialog
Syntax:
SHORT CancelDialog (
VOID
)
Function:
This function cancels the currently active dialog.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
May 2008 333
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.ChangeLanguage
Syntax:
SHORT ChangeLanguage (
CHAR *szLanguage,
SHORT sNavigate = 1
)
Function:
This function switches to a new language for the customer dialog. The new value is used to access dialog parameters.
Parameters:
szLanguage (IN)
Pointer to the string with the section name of the new secondary language.
sNavigate (IN)
Please use this parameter, if only the ADA langauge shall be changed. Otherwise leave it at 1.
1 (Default): the Format and WX-Text Variables are initialised with settings from hte new language. The directory may be changed and the next page is shown in TOP mode.
PCDIALOG_PARAM_CHANGELANGUAGE_ADAONLY:
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
334 May 2008
Dialog Framework
CCDialogFW.InitParms
Syntax:
SHORT InitParms(
VOID
)
Function:
This function updates the configuration parameters from the "OPEN" section.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
May 2008 335
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.GetInputString
Syntax:
SHORT GetInputString(
CHAR *szInputString
SHORT sStringLength
)
Function:
This function returns the string entered by the customer or associated with the function key pressed
Parameters:
szInputString (OUT)
Pointer to a character buffer to store the input string
sStringLength (IN)
Length of the character buffer
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_BUFFER_TOO_SMALL (-2)
The character buffer is too small for the data entered by the customer. The contents of the buffer are invalid.
CCDIALOG_PROPERTY_NOT_SET (-4)
There is no input string because the last input finished abnormally (cancel, time out). The contents of the buffer are invalid.
336 May 2008
Dialog Framework
CCDialogFW.GetInputLength
Syntax:
SHORT GetInputLength(
USHORT *usInputLength
)
Function:
This function returns the length of the data entered by the customer.
Parameters:
usInputLength (OUT)
Pointer to an unsigned short value to store the length of the data entered by the customer.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_PROPERTY_NOT_SET (-4)
There is no input string because the last input finished abnormally (cancel, time out). The returned value is invalid.
May 2008 337
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.GetTerminateChar
Syntax:
SHORT GetTerminateChar(
CHAR *chTerminateChar
)
Function:
This function returns the code of the key pressed by the customer to terminate the current input. The code returned depends on the configuration behind the following Registry key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsEPPKey
By default the following codes are specified:
Key Code
SOFTKEY_LEFT_1 G
SOFTKEY_LEFT_2 A
SOFTKEY_LEFT_3 B
SOFTKEY_LEFT_4 C
SOFTKEY_RIGHT_1 H
SOFTKEY_RIGHT_2 D
SOFTKEY_RIGHT_3 E
SOFTKEY_RIGHT_4 F
NUMERIC_KEY_0 0
NUMERIC_KEY_1 1
NUMERIC_KEY_2 2
NUMERIC_KEY_3 3
NUMERIC_KEY_4 4
NUMERIC_KEY_5 5
338 May 2008
Dialog Framework
Parameters:
chTerminateChar (OUT)
Pointer to a character value to store the terminate character
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_PROPERTY_NOT_SET (-4)
There is no input string because the last input finished abnormally (cancel, time out). The returned value is invalid.
NUMERIC_KEY_6 6
NUMERIC_KEY_7 7
NUMERIC_KEY_8 8
NUMERIC_KEY_9 9
Key Code
May 2008 339
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
CCDialogFW.Activate
Syntax:
SHORT Activate (
VOID
)
Function:
This function brings the dialog window into the foreground.
The default behavior is automatic activation of the dialog window prior to any call of the ’Activate’ function. The purpose of this function together with the ’Deactivate’ function is the synchronization of different self-service applica-tions. The use of this function requires that, prior to the activation call, the currently active window must be deactivated.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
CCDIALOG_IGNORED (-500)
The Dialog is already deactivated.
340 May 2008
Dialog Framework
CCDialogFW.Deactivate
Syntax:
SHORT Deactivate (
VOID
)
Function:
This function stops the automatic activation of the dialog window.
For remarks see the ’Activate’ function.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
CCDIALOG_IGNORED (-500)
The Dialog is already deactivated.
Access to customer input
The results from an input element are supported in extended handling. They are available in three different ways: access through the Data Dictionary Framework, through the Variable Framework or by methods of the Dialog Framework. These methods have already been described (see also section ’Specification of the methods’ on page 326).
In the case of access through variables, the following variable names are used by default unless other variables are specified within the configuration of the dialog element:
DLG_INPUT_RESULT_COUNT
contains the number of characters entered by the customer
May 2008 341
Dialog Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\D
ialo
gFW
.fm
DLG_INPUT_RESULT_STRING
contains the string entered by the customer or specified in the dialog configuration
DLG_INPUT_RESULT_TERM
contains the code of the key that terminates the input
For the Data Dictionary these default variables are held within the Dialog Framework and read access is permitted. In the case of an abnormal end of an input (cancel, time out) you will receive the return code CCDATADICTFW_PROPERTY_NOT_SET.
Trace and error logging
Trace and error logging for the Dialog Framework is initialized under the number 852.
The following trace levels are defined:
The error entries including description are in the rch file "852FERS.eng"
Definition Description Value
HLEVEL_ANALYSE Function entry / exit 20
HLEVEL_WARNING Configuration error 21
HLEVEL_LEVEL_2 Second level function entry and exit
22
HLEVEL_DATA General parameters 25
HLEVEL_PARAM Dialog parameters 26
HLEVEL_INPUT Data input 27
342 May 2008
PCDialog framework
PCDialog framework
The Dialog Framework controls the presentation of applications on the screen. This one uses HTML pages to present the user interface. The PCDialog contains additional interfaces only the Web Graphical Service is using.
Release specification
The Dialog Framework is released in an executable file named CCDialog.exe.
applications using this EXE have to include the file PCDialog.xpp. If the name of the Web Graphical Service should be other than CCDialog (see "Web-Exten-sions/ExtraLink" on page 21) please make sure, that the PCDialog proxy object is created after CCDialog.exe ist started.
Parameters
The dialogs in this implementation are described using a very flexible parameter scheme. Configuration of the Graphical Service requires numerous parameters and will be described in a separate chapter. See also chapter ’Parameters’ on page 597.
Interaction with other frameworks
Methods from the following frameworks are used:
Variable Framework (optional, but one is mandatory)
Data Dictionary Framework (optonal, but one is mandatory)
Check Framework (only when using the ProTopas/Web-Extensions Controls)
EPP Framework (only when using the ProTopas/Web-Extensions Controls)
Variables that are set and read to interact with the calling application are specified within the HTML page definitions.
They may be accessed either through the Variable Framework or through the Data Dictionary Framework. If the data dictionary is used, the variables must be supported by the calling framework.
May 2008 343
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
Public Interface
The PCDialog framework is implemented in the class ’PCDialogFW’. The public interface is defined completely in the include file PCDialog.xpp and CCDialog.xpp. PCDialog.xpp is an overlay of CCDialog.xpp. PCDialog.xpp contains additional public functions, events and required definitions for data structures and return codes. This can be
Methods
The following public methods are defined in the PCDialog class:
PCDialogFW.Formatformats a string with the given format ID. This is used for amount and date formatting.
PCDialogFW.PutIUnknownfor internal use only
PCDialogFW.CleanIUnknownfor internal use only
PCDialogFW.AllowUserInputfor internal use only
PCDialogFW.ForbidUserInputfor internal use only
PCDialogFW.Killclose CCDialog.exe
PCDialogFW.GetHWNDreturns the HWND of CCDialog.exe application.
PCDialogFW.GetFWNamereturns the name of the framework
PCDialogFW.GetPropertyreturns different types of Data Dictionary variables
PCDialogFW.SetPropertysets different types of Data Dictionary variables
PCDialogFW.ChangeLanguagesets the language for the user interface.
344 May 2008
PCDialog framework
Definitions and data structures
The class PCDialogFW contains the following definitions in addition to those already specified in the CCDialogFW:
Additional error defines:
Additional Events
The class PCDialogFW issues the following additional events:
CCDIALOG_MODE_SURFING_START
Send at start of surfing mode.
CCDIALOG_MODE_SURFING_END
Send at end of surfing mode.
CCDIALOG_MODE_NORMAL_START
Send at startup of the Web Graphical Service.
CCDIALOG_MODE_NORMAL_END
Send at shutdown of Web Graphical Service because of an exception or after calling the kill() function.
CCDIALOG_MODE_MARKETING
Send at start and stop of transaction supervision configured by allow list.
It contans the parameter MM_DATA:
Define Value
CCDIALOG_IGNORED -500
CCDIALOG_SURFING_END -501
CCDIALOG_FORCED_CANCEL -502
CCDIALOG_WE_PARAM_UNKNOWN -503
CCDIALOG_WE_WIN_ERROR -504
CCDIALOG_WE_PT_ERROR -505
May 2008 345
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
typedef struct _mm_data{
SHORT Event; // the reason of the event [1 start, 2 endok, 3 end timer, 4 end offline, 5 end forced]
CHAR strStartPage[512]; //the page that started MMCHAR strEndPage[512]; // the page that ended MMLONG lTimeout; // timeout valueSYSTEMTIME timeStart; // start time of MMSYSTEMTIME timeEnd; // end time of MM
} MM_DATA, * LPMM_DATA;
Additional interface function:
Specification of the methods
In the following section all public methods are described in detail:
Definition Value
CCDIALOG_FUNC_FORMAT 500
CCDIALOG_FUNC_KILL 505
CCDIALOG_FUNC_GET_HWND 506
346 May 2008
PCDialog framework
PCDialogFW.Format
Syntax:
SHORT Format(
CHAR * szContents
CHAR * szFormat
CHAR * szFormated
SHORT sFormatedLength
)
Function:
This function formats the input string with the format ID in the format parameter. The return value is given back in the third parameter, its length in the fourth.
Parameters:
szContents (IN)
pointer to a character buffer to store the input string
szFormat (IN)
Format identifier. This parameter specifies the format the szContents input string should be formatted with. The following formats are defined:
D: Long date format
S: Short date format
T: Time format
C: Currency format without currency sign
M: Currency format with currency sign
Free format: Build a mask with @ as placeholder sign. First sign ’<’: Placeholder characters are replaced from left to right. First sign ’>’: Placeholder characters are replaced from right to left.
(see also section ’SNI_PC_VARIABLE WebBot’ on page 284)
May 2008 347
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
szFormated (OUT)
pointer to a character buffer to store the output string
sFormatedLength (OUT)
Length of output string
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
The function completed with a general error.
348 May 2008
PCDialog framework
PCDialogFW.Kill
Syntax:
SHORT Kill()
Function:
This function close CCDialog.exe properly. CCDialog.exe is returning with 51 (CCRM:Restart)! In Web-Extensions/HyperLink architecture the Steps Cancel() function is called before the Dialog closes. In Web-Exten-sions/ClassicLink architecture the returncode CCDIALOG_SW_CANCEL (-6) is returned to the transaction framework, if a DoDialog() function is already active.
In case of an Exception the Dialog.exe ist restarting automatically. The same handling is done to cancel the Step or to give a returncode to the Step.
Parameters:
None.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
The function completed with a general error.
May 2008 349
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
PCDialogFW.GetHWND
Syntax:
SHORT GetHWND(
HWND *hwndApp
)
Function:
This function returns the HWND of CCDialog.exe application.
Parameters:
hwndApp (IN)
pointer to a HWND buffer to store the HWND of application.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_PROPERTY_NOT_SET (-4)
The function completed with a error. application HWND is not valid!
CCDIALOG_ERROR (-2)
The function completed with a general error.
350 May 2008
PCDialog framework
PCDialogFW.GetFWName
Syntax:
SHORT GetFWName(
CHAR * achBuffer
USHORT usBufferLen
)
Function:
This function returns the Frameworkname because this can be configured.
Parameters:
achBuffer (OUT)
pointer to a character buffer to store the Framework name.
usBufferLen (IN)
Length of the achBuffer.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_BUFFER_TOO_SMALL (-2)
The Buffer for the output is too small.
May 2008 351
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
PCDialogFW.WEPlaySound
Syntax:
SHORT WEPlaySound(
CHAR * szPlay
)
Function:
This mehod is used to play a Wave file or to activate a sound via the special electronics. See "AudioResponse" on page 651. for information about the syntax of szPlay.
Parameters:
szPlay (IN)
pointer to a string containing the Sound characteristics. See "AudioRe-sponse" on page 651. for information.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
The function completed with a general error.
CCDIALOG_WE_PARAM_UNKNOWN (-503)
The function completed with an unknown input parameter.
CCDIALOG_WE_WIN_ERROR (-504)
The function completed with a windows error.
CCDIALOG_WE_PT_ERROR (-505)
The function completed with a ProTopas error.
352 May 2008
PCDialog framework
PCDialogFW.JournalWrite
Syntax:
SHORT JournalWrite(
CHAR * szData
)
Function:
This method is used to write information into the Journal. szData is the data, which shall be logged (see also section ’Logging into Error/Trace Log or Journal by Script’ on page 494).
Parameters:
szData (IN)
pointer to a string containing the data to write in journal
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
The function completed with a general error.
May 2008 353
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
CCDialogFW.ChangeLanguage
Syntax:
SHORT ChangeLanguage (
CHAR *szLanguage,
SHORT sNavigate = 1
)
Function:
This function switches to a new language for the customer dialog. The new value is used to access dialog parameters.
Parameters:
szLanguage (IN)
Pointer to the string with the section name of the new secondary language.
sNavigate (IN)
Please use this parameter, if only the ADA langauge shall be changed. Otherwise leave it at 1.
Default (1): Use this setting when teh langauge shall really be changed. The Formats and WX_TEXT variables are initialised with settings from the new language. The directory may be changed and the next page is shown in TOP mode.
PCDIALOG_PARAM_CHANGELANGUAGE_ADAONLY (999): Only the language from ADA has been changed, keys and phrases have been updated.
Return values:
CCDIALOG_OK (0)
The function completed successfully.
CCDIALOG_ERROR (-2)
An error occurred executing the function.
354 May 2008
PCDialog framework
Trace and error logging
Trace and error logging for the Dialog Framework are initialized under the number 770.
The following trace levels are defined:
Definition Description Value
EXT_METHODS Traces entry and exit of methods exported by the controls interface
10
EXT_EVENTS Traces entry and exit of event-firing of the control
11
INT_METHODS Traces entry and exit of internal methods
12
TRACE_ERROR Traces error events 13
TRACE_IMPORTANT Traces important events
14
HND_REGISTER For use of HndRegister 20
SUB_FUNC Subfunction 30
ONWM_FUNC On Windows Message Handler
31
INTERN_FUNC Traces intern functions 34
PROP_METHODS_CHANGE
Traces property change functions
35
HTML_WINDOW HTML window data 65
HTML_PAGE HTML page data 66
PROPPAGE_ACTION Property Pages interac-tions methods
70
PROPPAGE_INIT Property Pages init methods
71
PROPPAGE_IMPORTANT
Property Pages important message
72
CDIB_IN Class CDIB - in method 80
May 2008 355
PCDialog framework
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
PC
Dia
logF
W.f
m
The error entries including description are in the rch file "770FERS.eng"
CDIB_OUT Class CDIB - out method
81
CDIB_DATA Class CDIB - data 82
PT_ANALYSE Tool Class analyse 90
PT_ENTRY Tool Class entry point 91
PT_EXIT Tool Class exit point 92
PT_SUB_ENTRY Tool Class sub functions entry point
93
PT_SUB_EXIT Tool Class sub functions exit point
94
PT_DATA Tool Class data 95
PT_HEXDATA Tool Class hexdata dump
96
PT_ERROR Tool Class error 97
PT_WARNING Tool Class warning 98
TRACE_ANALYSE Analyze trace 100
Definition Description Value
356 May 2008
PCDialog framework
May 2008 357
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
Virtual Keyboard Framework
The class of the Virtual Keyboard Framework is called ’CCVKfw’. In the following text ’VK’ is used as abbreviation.
The class CCVKfw is a summary of routines to handle the virtual keyboard. The main task of the class CCVKfw is the simulating the key press of a real keyboard.
Release specification
Version 1.0 of the class CCVKfw is released in a EXE named ’CCVK.EXE’.
Applications using this EXE have to include the file CCVK.XPP.
Start this EXE allways in separat process!
Note: VK is an MFC application using IE! VK is GUI application and the GUI is displayed as a HTML page.
Configuration
The logical name of the Virtual keyboard Framework is ’CCVK’.
Parameter
The following four parameters must be configured for the Virtual keyboard Framework. If the parameter is missing, default values will be used and an error will be generated.
Section "ACTIVEX\GraphicalService\VK"
Href
Specifies the URL of a HTML page for VK dialog.
Type: StringDefault: "about:blank"
Width
358 May 2008
Virtual Keyboard Framework
Specifies the width for VK dialog.
Type: DwordDefault: 100
Height
Specifies the height for VK dialog.
Type: DwordDefault: 100
Pos
Specifies the position at screen for VK dialog.
Type: StringDefault: "2"Range: "0" - Up left.
"1" - Up right."2" - Down right."3" - Down left."4" - Middle of the screen. See parameters Top and
Left for upper left corner
Left
This parameter specifies the distance from the left side of the screen to the upper left corner of the container (Virtual Keyboard Dialog Window) of the of the HTML page for Virtual Keyboard.
Type: DwordDefault: 0
Top
This parameter specifies the specifies the distance from the top of the screen to the upper left corner of the container (Virtual Keyboard Dialog Window) of the of the HTML page for Virtual Keyboard.
Type: DwordDefault: 0
May 2008 359
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
The following parameters are optional for the Virtual keyboard Framework. If the parameter is missing, default values will be used.
Section "ACTIVEX\GraphicalService\VK"
ScriptLanguage
Specifies the language for the start/end scripts.
Type: StringDefault: "javascript"
ScriptAtStart
Specifies the script that will be executed at start of VK session.
Type: StringDefault: ""
ScriptAtEnd
Specifies the script that will be executed at end of VK session.
Type: StringDefault: ""
CheckWND
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the hangup check is repeated. If during these milliseconds no response is received the Virtual Keyboard window will be restarted.
Type: DwordDefault: 60000
CheckWNDmax
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the Virtual Keyboard
360 May 2008
Virtual Keyboard Framework
instance waits for the response on a window event. If during these milliseconds no response is received the Virtual Keyboard window will be restarted.
Type: DwordDefault: 15000
CheckMem
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds to check for wasted memory (memory leaks).
Type: DwordDefault: 120000
CheckMEMmax
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the maximum memory in megabytes the Virtual Keyboard instance may grow up to until the instance is restarted.
Type: DwordDefault: 64
KillHardWAIT
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the instance will wait after it has received the WM_CLOSE event until it will call Termi-nateProcess(). In this case even hangups with a hanging main thread will be snapped.
Type: DwordDefault: 15000
MAXonStart
This parameter enables the virtual keyboard to become visible, when the keyword WNvikey:START is used. If the virtual keyboard is not maximized, this can be done with the keyword WNVKpos:MAX.
May 2008 361
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
Type: DwordDefault: 1Range: 0 - Stay minimized
1 - Start maximized with the sizes from Height, left, top, width
MINonEnd
This parameter enables the virtual keyboard to become invisible, when the keyword WNvikey:END is used. If the virtual keyboard is not minimized with this parameter, this can be done with the keyword WNVKpos:MIN.
Type: DwordDefault: 1Range: 0 - Stay maximized
1 - End minimized
WindowPlacement
This parameter specifies, which behavior of the virtual keyboard is desired. So a minimize/maximize behavior or a show/hide behavior can be configured. With min/max on slow machines it is possible that the window movement is visible.
Type: DwordDefault: 1Range: 0 - nothing on init, start & stop
1 - MIN on init, MAX on start, MIN on stop2 - HIDE on init, SHOW on start, HIDE on stop
Interactions with other frameworks
Methods from the following frameworks are used:
none
Public interface
The public interface is completely defined in the includefile CCVK.xpp.It contains all the public functions, events and the required definitions for data structures and returncodes.
362 May 2008
Virtual Keyboard Framework
Methods
The following public member functions are defined in class CCVKfw:
CCVKfw.Opendo nothing.
CCVKfw.Closedo nothing.
CCVKfw.InitParmsdo nothing.
CCVKfw.GetStatusreturns a state of a framework.
CCVKfw.VK_Startstart a VK session.
CCVKfw.VK_Endend a VK session.
CCVKfw.Killkill a framework instance.
May 2008 363
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
Defines and data structures
The class CCVKfw contains the following defines and data structures:
Error defintions
Returncodes for GetStatus
Data dictionary variables
VK_APP_DATA
The structure ’VK_APP_DATA’ is composed of the following components:
HWND hwndAppSpecifies the hWnd of calling application
define value
CCVK_OK 0
CCVK_ERROR -1
CCVK_IGNORED -2
CCVK_ERROR_VK_NOT_READY -10
CCVK_ERROR_VK_ACTIVE -11
CCVK_ERROR_VK_NOT_ACTIVE -12
CCVK_ERROR_HWND -13
define value
CCVK_NOK -1
CCVK_READY 0
CCVK_ACTIVE 1
name array
CCVK_VAR_CONTAINER_L 0 - 255
CCVK_VAR_CONTAINER_S 0 - 255
CCVK_VAR_STATUS_L (contains returncodes for GetbStatus)
364 May 2008
Virtual Keyboard Framework
Events
The CCVK framework issues the following events:
CCVK_VK_INIT
This event is sent when the framework is ready.
CCVK_VK_START
This event is sent when the session is started.
CCVK_VK_END
This event is sent when the session is ended.
CCVK_VK_ACTION
This event is sent when the framework got focus.
CCVK_VK_EXIT
This event is sent when the framework is exiting (restart).
CCVK_VK_WINDOW_MIN
This event is sent when the framework is minimized.
CCVK_VK_WINDOW_MAX
This event is sent when the framework is maximized.
CCVK_VK_OFFLINE
This event is sent when the requested page cannot be loaded.
May 2008 365
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
Specification of the methods
In the following section the public methods are described in detail.
CCVKfw.Open
Syntax:
SHORT CCVKfw.Open(
VOID
)
Function:
Do nothing.
Return values:
CCVK_OK (0)
Nothing happend
366 May 2008
Virtual Keyboard Framework
CCVKfw.Close
Syntax:
SHORT CCVKfw.Close(
VOID
)
Function:
Do nothing.
Return values:
CCVK_OK (0)
Nothing happend
May 2008 367
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
CCVKfw.InitParms
Syntax:
SHORT CCVKfw.InitParms(
VOID
)
Function:
Do nothing.
Return values:
CCVK_OK (0)
Nothing happend
368 May 2008
Virtual Keyboard Framework
CCVKfw.GetStatus
Syntax:
SHORT CCVKfw.GetStatus(
VOID
)
Function:
Get the framework status.
Return values:
CCVK_NOK (-1)
Framework loaded, but not ready yet
CCVK_READY (0)
Framework ready, minimized
CCVK_ACTIVE (1)
Framework session ongoing, maximized
May 2008 369
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
CCVKfw.VK_Start
Syntax:
SHORT CCVKfw.VK_Start(
VK_APP_DATA lpStruct,
)
Function:
Starts the VK session, maximize CCVK framework.
Input parameters:
lpStruct (IN)
HWND of calling application
Return values:
CCVK_OK (0)
Input data and VK state OK, start session triggered
CCVK_ERROR (-1)
General error
CCVK_ERROR_INPUT (-3)
NULL input pointer!
CCVK_ERROR_VK_NOT_READY (-10)
VK not ready
CCVK_ERROR_VK_ACTIVE(-11)
VK allready active
CCVK_ERROR_HWND (-13)
bad application HWND
370 May 2008
Virtual Keyboard Framework
CCVKfw.VK_End
Syntax:
SHORT CCVKfw.VK_End(
VOID
)
Function:
Ends the VK session, minimize CCVK framework.
Return values:
CCVK_OK (0)
Input data and VK state OK, end session triggered
CCVK_ERROR (-1)
General error
CCVK_ERROR_VK_NOT_ACTIVE(-12)
VK not active, nothing to end!
May 2008 371
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
CCVKfw.Kill
Syntax:
SHORT CCVKfw.Kill(
VOID
)
Function:
Force VK framework to restart itself.
Return values:
FrmAsyncResolve() return values
372 May 2008
Virtual Keyboard Framework
GUI
Release specification
The VK framework application is a container or a full size webcontrol(IE), that is at start showing a HTML page configured in ’Href’. The HTML page is comuni-cating with VK framework application through navigating to spezial URL’s (methods of CCVK for HTML page) and VK framework application is executing the scripts configured in ’ScriptAtStart’ and ’ScriptAtEnd’ (events of CCVK for HTML page).
Note: the VK framework application should never get a focus!
Configuration
This is a minimum page which is a full functional:
<html>
<head><title>VK demo</title></head>
<body scroll="no" onclick="window.navigate('WNVKcom:FOCUS')">
<a href="WNVKkey:07501">send a key 'K'</a>
<a href="WNVKcom:MOVE">move window</a>
<a href="WNVKcom:END">end session</a>
<script>
<!--
window.navigate("WNVKstatus:INIT");
-->
</script>
</body>
</html>
Note: <body> ’onclick’ event ensure that VK framework give focus away!
May 2008 373
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
Public interface
METHODES
WNVKstatus:INITcall this methode once after a HTML page is ready. It will set a framework state to CCVK_READY! After this a sessions can be started.
WNVKcom:ENDend session, give focus away.
WNVKcom:MOVEmove window, give focus away.
WNVKcom:FOCUSgive focus away
WNVKkey:XXXYYsend a key press sequence if session ongoing, give focus away.XXX is a Virtual Key code, YY is a shift state, see the following list for posible values!Example: ’WNVKkey:07501’this will send SHIFT + VK_K, if you have a western keyboard layout in your aplication(process) you will get: ’K’.
WNVKchar:ZZZZZsend a key press sequence if session ongoing, give focus away.ZZZZZ is a numerical value of UNICODE charecter you want to be sent!Example:’WNVKchar:8364’, NOTE ’€’ = ’8364’if you have set a german keyboard layout for VK application(process) this will send CTRL + ALT + VK_E, in your application(process) if you have set a german keyboard layout you will get:’€’.
WNVKpos:LLLLTTTTWWWWHHHHThis keyword is used to move the virtual Keyboard window to a special position on the screen. All values have to be set as four digits in pixels.LLLL - Distance from left side of screen to upper left cornerTTTT- Distance form top of screen to upper left cornerWWWW - WidthHHHH - Height
WNVKpos:MAXThis keyword is used to maximize the virtual keyboard, when it is started minimized (by use of parameter MAXonStart=0). This might be useful, when another keyboard layout shall be used by scripting.
374 May 2008
Virtual Keyboard Framework
WNVKpos:MINThis keyword is used to minimize the virtual keyboard, when it stays maximized after end (by use of parameter MINonEnd=0).
WNVKpos:SHOWThis keyword is used to activate and show the virtual keyboard instance.
WNVKpos:HIDEThis keyword is used to deactivate and hide the virtual keyboard instance.
WNVKtrclog:XXXTTTTTT
This navigation write a trace into the TLS Tracelog. XXX specifies the tracebit and TTTTTT the trace text. The text is transferred into the Graphical Service as 100this%20is%20analyse%20trace! Only the %20 is replaced by a blank from the Graphical Service.
WNVKerrlog:XXXTTTTTT
This navigation write an Error into the TLS Errorlog. XXX specifies the error number and TTTTTT the error text. The text is transferred into the Graphical Service as 10this%20is%20an%20error! Only the %20 is replaced by a blank from the Graphical Service.
Please be careful by using those logging possibilities together with a real navigation. This could guide to double navigations which will harm the system. it is always a good idea to use window.setTimeout() when a few traces and a navigation shall be performed quickly one after another.
EVENTS
ScriptAtStartat start of session, before maximize.
ScriptAtEndat end of session, before minimize.
May 2008 375
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
SHIFT STATE
00no additional key pressed.
01SHIFT key pressed.
02CTRL key pressed.
03SHIFT and CTRL keys pressed.
04ALT key pressed.
05SHIFT and ALT keys pressed.
06CTRL and ALT keys pressed.
07SHIFT and CTRL and ALT key pressed.
VIRTUAL KEY CODE LIST
001VK_LBUTTON
002VK_RBUTTON
003VK_CANCEL
004VK_MBUTTON
008VK_BACK
009VK_TAB
0x0CVK_CLEAR
376 May 2008
Virtual Keyboard Framework
0x0DVK_RETURN
0x10VK_SHIFT
0x11VK_CONTROL
0x12VK_MENU
0x13VK_PAUSE
0x14VK_CAPITAL
0x15VK_KANA
0x17VK_JUNJA
0x18VK_FINAL
0x19VK_KANJI
0x1BVK_ESCAPE
0x1CVK_CONVERT
0x1DVK_NONCONVERT
0x1EVK_ACCEPT
0x1FVK_MODECHANGE
0x20VK_SPACE
May 2008 377
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
0x21VK_PRIOR
0x22VK_NEXT
0x23VK_END
0x24VK_HOME
0x25VK_LEFT
0x26VK_UP
0x27VK_RIGHT
0x28VK_DOWN
0x29VK_SELECT
0x2AVK_PRINT
0x2BVK_EXECUTE
0x2CVK_SNAPSHOT
0x2DVK_INSERT
0x2EVK_DELETE
0x2FVK_HELP
048VK_0
378 May 2008
Virtual Keyboard Framework
049VK_1
050VK_2
051VK_3
052VK_4
053VK_5
054VK_6
055VK_7
056VK_8
057VK_9
065VK_A
066VK_B
067VK_C
068VK_D
069VK_E
070VK_F
071VK_G
May 2008 379
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
072VK_H
073VK_I
074VK_J
075VK_K
076VK_L
077VK_M
078VK_N
079VK_O
080VK_P
081VK_Q
082VK_R
083VK_S
084VK_T
085VK_U
086VK_V
087VK_W
380 May 2008
Virtual Keyboard Framework
088VK_X
089VK_Y
090VK_Z
0x5BVK_LWIN
0x5CVK_RWIN
0x5DVK_APPS
0x60VK_NUMPAD0
0x61VK_NUMPAD1
0x62VK_NUMPAD2
0x63VK_NUMPAD3
0x64VK_NUMPAD4
0x65VK_NUMPAD5
0x66VK_NUMPAD6
0x67VK_NUMPAD7
0x68VK_NUMPAD8
0x69VK_NUMPAD9
May 2008 381
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
0x6AVK_MULTIPLY
0x6BVK_ADD
0x6CVK_SEPARATOR
0x6DVK_SUBTRACT
0x6EVK_DIVIDE
0x6FVK_LBUTTON
0x70VK_F1
0x71VK_F2
0x72VK_F3
0x73VK_F4
0x74VK_F5
0x75VK_F6
0x76VK_F7
0x77VK_F8
0x78VK_F9
0x79VK_F10
382 May 2008
Virtual Keyboard Framework
0x7AVK_F11
0x7BVK_F12
0x7CVK_F13
0x7DVK_F14
0x7EVK_F15
0x7FVK_F16
0x80VK_F17
0x81VK_F18
0x82VK_F19
0x83VK_F20
0x84VK_F21
0x85VK_F22
0x86VK_F23
0x87VK_F24
0x90VK_NUMLOCK
0x91VK_SCROLL
May 2008 383
Virtual Keyboard Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
vk.f
m
0xE5VK_PROCESSKEY
0xF6VK_ATTN
0xF7VK_CRSEL
0xF8VK_EXSEL
0xF9VK_EREOF
0xFAVK_PLAY
0xFBVK_ZOOM
0xFCVK_NONAME
0xFDVK_PA1
0xFEVK_OEM_CLEAR
384 May 2008
Virtual Keyboard Framework
Trace and error logging
The trace and error logging for the CCVK Framework will be initialized under the number 783 (MODID_CCVK)
The following trace levels are defined: :
The error entries are described in the RCH file "783FERS.ENG".
Define Description Value
EXT_METHODS Extern methods 10
EXT_EVENTS Extern events 11
INT_METHODS Intern methods 12
TRACE_ERROR Errors traces 13
TRACE_IMPORTANT Important traces 14
HND_REGISTER Registry handling traces 20
SUB_FUNC Low Developer traces 30
WM_FUNC Low Developer traces 31
TRACE_ANALYSE Analysis trace flag 100
May 2008 385
WXPTBridge Overview
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
WXPTBridge
Overview
Targets
WXPTBridge is an HTML/script to ProTopas bridge implemented as a mix of ProTopas Framework and MFC ActiveX control.
Primary targets:
– connect: dynamic HTML with a ProTopas world.
– stability: all ProTopas function calls are asynchrony!
– performance: only minimum interface is supported!
– Security: in/out parameters checks, not self running!
– Error handling: errors recognise, error report, error count.
Implementation
WXPTBridge object is ProTopas framework that can be multi instanced. Its logical name is WX_PTBRIDGE_000 to WX_PTBRIDGE_999. There can be up to 1000 instances of WXPTBridge! It can be instanced only from one ActiveX container. This container should provide ProTopas Bus instance!
WXPTBridge is a Byte array transporting device. On a HTML side it is using a Byte arrays as String in HEX format, for easy scripting, on a ProTopas it is using Byte arrays and void pointers!
All ProTopas Functions and Events are handled in a working threads and the results are fired in a container’s WXPTBridge creation thread through WND messages. So in case of IE as a container the Main thread, where all objects from HTML are created, is not blocked with ProTopas processing!
386 May 2008
Public interface WXPTBridge
Public interface
ActiveX interface is defined in WXPTBRIDGELib. There are dispinterface _DWXPTBridge for methods and properties, and dispinterface _DWXPTBridgeEvents for events.
ProTopas functionality:
– ProTopas Functions
PTFunction
PTFunctionEnd
– ProTopas Events
PTEvent
RegisterForEvents
DeregisterForEvents
ListeningForEvents
Helper:
– ConvStr2Hex
– ConvHex2Str
– GetWXText from version 1003
ErrorHandling:
– BridgeError
– testErrors
Status:
– BridgeStatus
– BridgeErrors
– PTName
Logging:
– Log
May 2008 387
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Methods
short PTFunction(BSTR strFW, short sID, BSTR strParam1, short sLen1, BSTR strParam2, short sLen2, BSTR strParam3, short sLen3, long lIndex)
short RegisterForEvents(BSTR strFW)
short DeregisterForEvents(BSTR strFW)
BSTR ConvStr2Hex(BSTR strData)
BSTR ConvHex2Str(BSTR strData)
BSTR testErrors(short eID)
void Log(BSTR strLog, short sLogType)
BSTR GetWXText(BSTR strIndex, BSTR strDefault, BOOL bErrorLog)
388 May 2008
Public interface WXPTBridge
PTFunction
short PTFunction(BSTR strFW, short sID,
BSTR strParam1, short sLen1,
BSTR strParam2, short sLen2,
BSTR strParam3, short sLen3,
long lIndex)
Usage
Call functions over ProTopas Bus asynchrony, its check input parameters, convert it to byte arrays, and calls FrmAsyncResolve intern, return value is error or index of job. If the index is OK, and the called Framework end the function execution the PTFunctionEnd event is fired with return values of function! Prototype of PTFunction is mapping of ProTopas CCFrameWork class FrmResolve function:
SHORT FrmResolve( CHAR* pszFW,
SHORT sMethod,
VOID* pData1 = 0, SHORT sDataLen1 = 0,
VOID* pData2 = 0, SHORT sDataLen2 = 0,
VOID* pData3 = 0, SHORT sDataLen3 = 0,
ULONG ulHelp = 0)
Conditions
– BridgeStatus >= 0
– Alive Functions < 32766
May 2008 389
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Return value
NOTE: PTFunctionEnd’s short sIndex is the same as OK, index for this job!
Type Name Description
Short sIndex [-32768, -1] error[ 1, 32767] OK, index of function job
390 May 2008
Public interface WXPTBridge
Parameters description
NOTE: ProTopas is transporting Byte arrays as void* and length combination, on a COM side it’s a string representation of Byte arrays where every Byte is converted to a 2 digits HEX! Example: 0 – “00”, 1 – “01”, 10 – “0A”, 15 – “0F”, 16 – “10”, … , 255 –“ FF”. Higher level Typs are on x86 platforms stored as little edian order byte arrays, see http://de.wikipedia.org/wiki/Little_Endian for more info. One LONG with value: 2763244241, (0xA4B3C2D1) is „D1C2B3A4“ Byte array in a HEX format! More complex types like structs are, depending on OS platforms, aligned on DWORD(4 Bytes) borders @Windows32 for example!
Type Name Range Description
BSTR strFW char, length: [1-32]
Framework name
Short sID [0- 32767] Function ID
BSTR strParam1 char, length: [0-65534,even]
Parameter1 as byte array of HEXs
Short sLen1 [0- 32767] Parameter1 length of byte array
BSTR strParam2 char, length: [0-65534,even]
Parameter2 as byte array of HEXs
Short sLen2 [0- 32767] Parameter2 length of byte array
BSTR strParam3 char, length: [0-65534,even]
Parameter3 as byte array of HEXs
Short sLen3 [0- 32767] Parameter3 length of byte array
Long lIndex ULONG Parameter4
May 2008 391
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
There are 4 possible in/out combinations of BSTR strParam, short sLen pairs:
NOTE: only OUT params will be fired in PTFunctionEnd’s params as updated return values from a function execution! This is the way of replacing pointers in a HTML world!
Example:
Fire Events
– PTFunctionEnd, when successful with return values of function!
– BridgeError, when something gets wrong in bridge itself! PTFunc-tionEnd will not be fired for this call!
Combin. BSTR short Converting Void*
NULL 0 0 NULL
IN [0-65534,even]
0 Copy HEXs to Bytes
[0- 32767]
OUT 0 [0- 32767] Init with 0 [0- 32767]
IN/OUT [0-65534,even]
[0- 32767] Init with 0, (BSTR/2) < short,Copy HEXs to Bytes
[0- 32767]
Combin. BSTR short Converting Void*
NULL "" 0 NULL 0
IN "3130FF00" 0 49,48,255,0 4
OUT 0 4 0,0,0,0 4
IN/OUT "3130" 4 49,48,0,0 4
Description of situation when a Bridge Error is fired! BridgeErroreID
Sync Call failed, delete of CMap entry failed, memory leak! 4
Async Call failed, Some parameters out of range. 18
392 May 2008
Public interface WXPTBridge
Change Properties
– BridgeErrors
Async Call failed, Lookup of CMap failed! 4
Async Call failed, Exception in FrmResolve! 1
Async Call failed, Exception in call handling! 19
Async Call failed, General exception. 19
Async Result failed, Some parameters out of range. 18
Async Result failed, cant PostMessage! 2
Async Result failed, General exception. 19
Sync Result failed, Some parameters out of range. 18
Sync Result failed, Lookup of CMap failed! 4
Sync Result failed, COM fire failed! 3
Sync Result failed, General exception. 19
Description of situation when a Bridge Error is fired! BridgeErroreID
May 2008 393
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
RegisterForEvents
short RegisterForEvents(BSTR strFW)
Usage
Try to register for events from a target framework. If successful add the target Framework name to a ListeningForEvents property, and if it’s a first sniffed Framework than a BridgeStatus property is set to 2. Prototype of Regis-terForEvents is mapping of ProTopas CCFrameWork class FrmRegister-ForEvents function:
SHORT FrmRegisterForEvents(PSZ pszEventSender)
Conditions
– BridgeStatus >= 1
– strFW is not already sniffed!
Return value
Parameters description
Fire Events
– PTEvent, when OK and Framework fire!
Type Name Description
Short sRet 0 OK, remain error!
Type Name Range Description
BSTR strFW char, length: [1-32]
Framework name
394 May 2008
Public interface WXPTBridge
– BridgeError, when something gets wrong in bridge itself at event handling!
Change Properties
– BridgeErrors
– ListeningForEvents
– BridgeStatus
Description of situation when a Bridge Error is fired! BridgeErroreID
Sync Call failed, delete of CMap entry failed, memory leak! 4
Async Call failed, Some parameters out of range. 18
Async Event failed, data from ProTopas corrupt! 1
Async Event failed, new failed! 5
Async Event failed, cant PostMessage! 2
Async Event failed, General exception. 19
Sync Event failed, Some parameters out of range. 18
Sync Event failed, COM fire failed! 3
Sync Event failed, General exception. 19
May 2008 395
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
DeregisterForEvents
short DeregisterForEvents(BSTR strFW)
Usage
Try to deregister for events from a target framework. If successful remove the target Framework name to a ListeningForEvents property, and if it’s a last sniffed Framework than a BridgeStatus property is set to 1. Prototype of DeregisterForEvents is mapping of ProTopas CCFrameWork class FrmDeregisterForEvents function:
SHORT FrmDeregisterForEvents(PSZ pszEventSender)
Conditions
– BridgeStatus == 2
– strFW is sniffed!
Return value
Parameters description
Fire Events
– none
Change Properties
– ListeningForEvents
– BridgeStatus
Type Name Description
Short sRet 0 OK, remain error!
Type Name Range Description
BSTR strFW char, length: [1-32]
Framework name
396 May 2008
Public interface WXPTBridge
ConvStr2Hex
BSTR ConvStr2Hex(BSTR strData)
Usage
Convert input String to a Byte array string in HEX format.
Conditions
– none
Return value
Parameters description
Fire Events
– none
Change Properties
– none
Type Name Description
BSTR strOUT NULL NOK, remain converted string
Type Name Range Description
BSTR strData char, length: [0-MAX]
String to convert
May 2008 397
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
ConvHex2Str
BSTR ConvHex2Str(BSTR strData)
Usage
Convert input String from Byte array string in HEX format to normal String.
Conditions
– input String even length
– input String HEX chars (0,1,2,3,4,5,6,7,8,9,a,A,b,B,c,C,d,D,e,E,f,F)
Return value
Parameters description
Fire Events
– none
Change Properties
– none
Type Name Description
BSTR strOUT NULL NOK, remain converted string
Type Name Range Description
BSTR strData char, length: [0-MAX,even, HEX]
String to convert
398 May 2008
Public interface WXPTBridge
testErrors
BSTR testErrors(short eID)
Usage
Test interface for throwing all internal errors. Increment the BridgeErrors property. There will be a error log and mostly the BridgeError Event will be fired!
Conditions
– none
Return value
Parameters description
Fire Events
– BridgeError
Change Properties
– BridgeErrors
Type Name Description
BSTR strOUT NULL always!
Type Name Range Description
short eID 1-5,19-22,38-43,58-63,77-79
Internal error ID
May 2008 399
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Log
void Log(BSTR strLog, short sLogType)
Usage
This function is used for writing a Trace-Log or an Error-Log.
Conditions
– none
Return value
– none
Parameters description
Fire Events
– none
Change Properties
– none
Type Name Range Description
BSTR strLog char, length: [0-MAX]
Text to log into Trace- or Error-Log
short sLogType 0 - Write text into Trace-Log Bit 101 - Write Text into Error-Log
Target for Logging
400 May 2008
Public interface WXPTBridge
GetWXText
BSTR GetWXText(BSTR strIndex, BSTR strDefault, BOOL bErrorLog)
Usage
Scripting access to PCHTMLGenerator WX_TEXT variables. It is same as HTML page usage pattern [%WX_TEXT[Index];Default%]!
Conditions
– none
Return value
Parameters description
Fire Events
– none
Change Properties
– none
Type Name Description
BSTR strOUT Variable value (max length 4096 chars) or NULL at problems
Type Name Range Description
BSTR strIndex char, length: [0-4096]
Variable Index
BSTR strDefault char, length: [0-4096]
Default value
BOOL bErrorLog TRUE or FALSE Write error logs on errors in this method.
May 2008 401
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Events
void PTEvent(BSTR strFW, short sID, BSTR strData)
void PTFunctionEnd(short sIndex, short sRet, BSTR strParam1, BSTR strParam2, BSTR strParam3)
void BridgeError(short eID)
void PTCallback(short sID, BSTR strParam1, BSTR strParam2, BSTR strParam3, long lIndex)
402 May 2008
Public interface WXPTBridge
PTEvent
PTEvent(BSTR strFW, short sID, BSTR strData)
Usage
Fire the incoming ProTopas event to a COM. Prototype of PTEvent is mapping of ProTopas CCFrameWork class OnFrmEvent function:
OnFrmEvent(CHAR* pszSender, SHORT sEvent, VOID* pData, SHORT sLen);
Conditions
– Event sniffing is ON!
Parameters description
Type Name Range Description
BSTR strFW char, length: [1-32]
Framework name
short sID short Framework Event ID
BSTR strData char, length: [0-65534,even]
Framework DATA as byte array of HEXs
May 2008 403
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
PTFunctionEnd
PTFunctionEnd(short sIndex, short sRet, BSTR strParam1, BSTR strParam2, BSTR strParam3)
Usage
Fire at the end of PTFunction and give back a return values, the return code and the output parameters!
Conditions
– Function is running!
Parameters description
NOTE: if the one of Params is not declared as OUTPUT in a PTFunction then it will be a empty string!
Type Name Range Description
short sIndex [ 1, 32767] index of function job
short sRet short Function return code
BSTR strParam1 char, length: [0-65534,even]
Param1 as byte array of HEXs
BSTR strParam2 char, length: [0-65534,even]
Param2 as byte array of HEXs
BSTR strParam3 char, length: [0-65534,even]
Param3 as byte array of HEXs
404 May 2008
Public interface WXPTBridge
BridgeError
BridgeError(short eID)
Usage
Fires the error ID when internal error occurred!
Conditions
– error can’t be assumed through a return codes!
Parameters description
Type Name Range Description
short eID 1,2,3,4,5,18,19 Error ID
ID Description
1 ProTopas problems
2 WND windows problems
3 COM windows problems
4 MFC windows problems
5 Memory (new,delete) windows problems
18 Internal problems
19 General problems
May 2008 405
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
PTCallback
void PTCallback(short sID, BSTR strParam1, BSTR strParam2, BSTR strParam3, long lIndex)
Usage
Callback function, which will be fired with OnFrmRequest ID 91-98.
Conditions
– only for OnFrmRequest ID 91-98
Parameters description
NOTE: if the one of Params is not declared as OUTPUT in a PTFunction then it will be a empty string!
Type Name Range Description
short sID [ 1, 32767] index of function
BSTR strParam1 char, length: [0-65534,even]
Param1 as byte array of HEXs
BSTR strParam2 char, length: [0-65534,even]
Param2 as byte array of HEXs
BSTR strParam3 char, length: [0-65534,even]
Param3 as byte array of HEXs
long lIndex [1, max long] Param 4 as long
406 May 2008
Public interface WXPTBridge
Properties
[id(0x00000001)] BSTR PTName
[id(0x00000002)] BSTR ListeningForEvents
[id(0x00000003)] short BridgeStatus
[id(0x00000004)] long BridgeErrors
All properties are read only!
PTName
BSTR PTName
The name of this ProTopas Framework! At creation time the object is searching for a free name. The name can be from WX_PTBRIDGE_000 to WX_PTBRIDGE_999! If there are some problems the name will be WX_PTBRIDGE_ERROR!
Property can be read and set.
NOTE: can be NULL if problems occur!
ListeningForEvents
BSTR ListeningForEvents
The blank separated list of sniffed Frameworks!
NOTE: can be NULL if problems occur!
BridgeStatus
short BridgeStatus
May 2008 407
WXPTBridge Public interface
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Status of the Bridge object!
NOTE: Status 0, Half OK, used only in emergency cases!
BridgeErrors
long BridgeErrors
Counter of the errors.
NOTE: unique for a process!
short Description Status
-1 Not initialised NOK
0 ProTopas FrmSetName OK Half OK
1 ProTopas AddToRepository OK, WND OK
OK
2 ProTopas FrmRegisterForEvents OK
OK + sniffing!
408 May 2008
Trace and Error logging WXPTBridge
Trace and Error logging
Trace
Tracing is implemented in module 788.ted.
Trace bits
NOTE: turn always 11,12 on or better 10,11,12,13 on!
Error
Error logging is implemented in module 788FERR.eng.
Trace Name Description
1 MOD_INIT Reserved
10 ANALYSE Trace for analyse
11 EXCEPTION Trace for all exceptions!
12 ERROR Trace for all errors!
13 WARNING Trace for all warnings!
14 INFO Trace for infos
15 DATA Trace for data
16 SUB_DATA Trace for less important data
17 INOUT Trace for functions entry/exit points
18 SUB_INOUT Trace for less important functions entry/exit points
19 FREQ_INOUT Trace for very frequently used functions entry/exit points
May 2008 409
WXPTBridge Trace and Error logging
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
P
fad
: d:\P
roTo
pas\
We
b-E
xten
sio
ns\D
ocu\
Boo
k\w
xptb
ridg
e.fm
Error logs
ID Description
ERR_ERROR General error in system.
ERR_MANIPULATION Error in using of component.
ERR_DEVELOPER Error in logic, contact developer!
410 May 2008
Trace and Error logging WXPTBridge
May 2008 411
Input checks
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Input checksInput checks are separated from Edit controls. The input checks have been implemented as a ProTopas Check Framework so that they can be extended for specific projects. This makes it possible to overlay individual checks without having to recreate all checks.
In order to make individual checks more flexible you can create a dialog page for each check on which the parameters for this check can be defined. This dialog page is called while the Internet page is being created in FrontPage by selecting the <Parameter> button in the Edit control (see "Edit control - General 1 page" on page 122). Which check has to be called for every input field is defined in the parameters for the Edit controls. Parameters are stored for every input field that is needed in the application.
The names of all functions (remittance order, standing order etc.) are entered askeys under the key HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\ProTopas\CurrentVersion\ActiveX\PCEdit\Transaction\. Under each of these keys are the names of all input fields (payee name, bank code etc.) as further keys. There are only two parameters under theses keys: Check-Routine and Variable.
HKEY_LOCAL_MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionActiveX
PCEditTransaction
Remittance OrderPayee
CheckRoutine = 4Variable = VAR_INPUT_X1_S
BankcodeCheckRoutine = 6Variable = VAR_INPUT_X2_S
AccountNumber...
Message to the Bank...
412 May 2008
Calling Format() Input checks
The name of the variable in which the customer’s input is stored is Variable. CheckRoutine contains the number of the check routine for the input field.
The following check routines have been implemented in the standard:
0: No Check1: Alphanumeric check2: Numeric check3: Date check4: Amount check
The Check Framework is addressed via three function calls named Format(), Dialog() and Check(). They are called for various tasks. Internally, each of these functions branches to one of the check routines listed above (see "Check Framework" on page 435).
Projects, which implement own check routines shall start with number 0x1000 (4096)
Calling Format()
The Format() function is called to query default values for input fields or to return unformatted input values in the format that has been defined. This is used, for example, when values are passed from the host and these are to appear in input fields as default values.
Example of changing a standing order: All values for the selected standing order are transferred and displayed in the input fields. The amounts have to be formatted because the host expects them in pfennigs with leading zeros.
Calling Dialog()
Dialog() is used to parameterize the checks. It is called during a Microsoft FrontPage session when an input field is selected for parameterization. It carries out two tasks. Firstly, it passes all return codes of the check with a readable text string. The FrontPage user must enter an Internet page for the correction message after every return code (see "Edit control - General 1 page" on page 122).
May 2008 413
Input checks Calling Check()
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Secondly, it sets additional parameters for the check in question. Here, the function is called when the FrontPage user presses the <Parameter> button (see "Edit control - General 1 page" on page 122). The called function can display a dialog in which the FrontPage user can define settings. These settings are passed to the Edit control when the dialog closes, and the Edit control stores them on the Internet page. These parameters are passed to the Check() function so that it can carry out the check at runtime.
Calling Check()
Check() is the function that actually checks the input. The parameters stored by means of the Dialog() function are passed when the Check() function is called. After the check, one of the return codes that was passed to the Edit control when Dialog() was first called must be passed.
Input variables
The name of the input variables is stored in the Variable parameter of the input field in question, as described above. This is always a STRING variable even if numeric inputs only are allowed. The following notation should be chosen to make the code easier to read:
VAR_INPUT_xxx_S (xxx = keyword for the content of the variable)
The VAR_ prefix and the _S suffix are mandatory.
The final letter in the variable name must not be L because this is reserved for the associated input status variable.
The content of this variable is always a formatted input. Since the inputs must always also be available in an unformatted form, for example so that they can be sent to the host, there must also be variables to hold the unformatted values. The name of such a variable is derived from the name of the corresponding input variable by adding the suffix _UNFORMATTED_S to the variable name from the Variable parameter.
Input variable: VAR_INPUT_AMOUNT_S
Unformatted input variable: VAR_INPUT_AMOUNT_S_UNFORMATTED_S
414 May 2008
Input variables Input checks
If the application wants to work with the Data Dictionary Framework only, there are 10 input variables and 10 corresponding unformatted input variables predefined, whose owner is the Dialog Framework. The names of these variables are:
Each input variable is read or set via the Active Variable Framework or via the Data Dictionary Framework. It is possible to work with only one of these Frame-works or to configure both together. The access is as follows:
Reading of variables: If the Variable Framework is configured, the Contents (STD/ATM) control tries to obtain the data from this Framework first. If the variable is not found there or the Framework is not configured, it tries to obtain the variable from the Data Dictionary Framework.
Setting of variables: Setting is performed in a different way. The Contents (STD/ATM) control tries to set the variable in the Data Dictionay first. If it is not found there, because the variable is not configured or the Data Dictionary is not configured, the variable will be stored in the Variable Framework.
The business modules are responsible for initializing the input variables. The Check Framework, Contents (STD/ATM) control and every Transaction FW class have access to these Frameworks. When data is transferred from the host, it has to be stored in the unformatted input variables. In this case, the formatted input variables should be initialized with a null string. If an Internet page with input fields but without default values needs to be displayed, both the formatted and the unformatted input variables have to be initialized with a null string.
Variable Meaning
DLG_INPUT_RESULT1_S Input variable 1
... ...
DLG_INPUT_RESULT10_S Input variable 10
DLG_INPUT_RESULT1_S_UNFORMATTED_S
Unformatted input variable 1
... ...
DLG_INPUT_RESULT10_S_UNFORMATTED_S
Unformatted input variable 10
May 2008 415
Input checks Input status variables
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
If the preliminary input is not to be displayed, the checkbox don’t display preliminary input (see also section ’Edit control - Input page’ on page 133) must be checked. In this case the input variables may not be initialized by the Steps. Nevertheless it is better programming custom to initialize input variables.
Input status variables
To make sure that the input field sequence is controlled correctly, every input field has an input status variable. This is a LONG value which can assume different states (see "Input statuses" on page 419). Like the name of the unfor-matted input variable, the name of the status variable is derived from the name of the input variable. Since an input variable is always a string, its name ends in _S. This notation has become established practice because it is easy to read. To form the name of an input status variable, the _S is simply replaced by _L. This is why it is important that input variable names must never end in _L. It would be impossible to distinguish input variables from input status variables if they did. The VAR_ prefix and the _L suffix are mandatory.
Input variable: VAR_INPUT_AMOUNT_S
Input status variable: VAR_INPUT_AMOUNT_L
If the notation suggested above for input variables was not complied with, then the final letter is simply changed from _S to _L in order to ascertain the name of the input status variable. This is why it is important for the name of the input variable never to end with _L.
If the application wants to work with the Data Dictionary Framework only, there are 10 input status variables predefined, whose owner is the Dialog Framework. The names of these variables are:
Variable Meaning
DLG_INPUT_RESULT1_L Input status variable 1
... ...
DLG_INPUT_RESULT10_L Input status variable 10
416 May 2008
Field sequence control Input checks
Field sequence control
The Contents (STD/ATM) control is responsible for controlling the field sequence. Each input field has a sequence number in a set of parameters.
The sequence numbers for all Edit controls on an Internet page do not necessarily have to be consecutive in ascending order or begin with 1. However, they do have to be allocated and must not appear twice on an Internet page, as this would cause an error to be written to the error log. They must not overlap with the field IDs of the buttons (see "Button control - General 2 page for function keys" on page 85).
When the page is initialized, the Contents (STD/ATM) control ascertains the sequence number for every Edit control that is on the page, and builds an internal management facility for sequence control. Using the sequence numbers and input statuses, the Contents (STD/ATM) control can ascertain precisely which control has to get the input focus first.
Customers can freely choose the input field that they want to process next by touching it on the screen. When the input is confirmed, however, the focus automatically moves to the field which has the lowest sequence number. However, this only applies to fields whose input status has not yet been set to OK.
By setting the parameter SetInputFocusNext to 1 (see ’SetInputFo-cusNext’ in the Parameters manual on page 649) the focus will not move to the field with the lowest but to the field with the next sequence number. This might be a little more intuitive to the customer.
Customers can also use the <Tab> or the <Cursor up> key to move from field to field. Here, the Contents (STD/ATM) control moves the focus to the field which has the next higher sequence number. This continues until the field with the highest sequence number has been reached. If a customer simultaneously presses the <Tab> key and the <Shift> key or the <Cursor down> key, then the field with the next lower sequence number is selected. This continues until the field with the lowest sequence number has been reached. Jumping to other input fields with the <Tab> key or by selecting them directly via the touchscreen, however, does not have the same meaning as pressing the confirmation key. With the <Tab> key, only the focus is passed on. No input check is carried out.
May 2008 417
Input checks Field sequence control
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Input confirmations
Each input must be concluded with a confirmation key. This confirmation key can be the <Enter> key on the alphanumeric keyboard or the <Confirm> function key on the screen or Encrypted PIN Pad (EPP).
If an edit control is to run correctly and the Confirm key on the EPP to be used for input confirmation, there must be a function key with the value CONFIRM active on this page. If this button is not to be shown, a graphic with the size 1 x 1 pixels and the colour of the background must be assigned to it.
To be able to use the <Confirm> key on the EPP, the Normal input radio button in the Contents (STD/ATM) control for this Internet page has to be activated (see also ’Contents ATM control - EPP Keys page’ on page 208). In this case the Web Graphical Service monitors the EPP and, when a key is pressed, notifies the input field about the pressed key. The key, which is configured for the Softkey Confirm will be triggered automatically.
For a customer using a touchscreen it is more intuitive to use a CONFIRM button which can also be touched than having to push a key on the keyboard. Here, a function key with the CONFIRM value (see "Function keys with a fixed meaning" on page 87) must have been created. Normally, the Contents (STD/ATM) control will navigate to the specified Internet page when a function key is selected. However, when an Edit control has been created on the Internet page, the Contents (STD/ATM) control changes the behavior of the key which has the CONFIRM value. If this key is pressed now, the current input field is confirmed.
if the parameter TabAsConfirm (see "TabAsConfirm" on page 616 in the Parameters chapter) is switched to 1, every press of the <Tab> or <Shift><Tab> key will simulate a confirmation of each input field. So the check routine of this field will be started. But on the other hand this means, that a field with an user error this field may never been left with the <Tab> key unless the customer corrects the input.
Confirmation of a completely filled-in input page is a special aspect. If the Continue without Confirm key parameter (see "Contents ATM control - General page" on page 199) has been activated, the application immediately loads the Internet page that was specified for the CONFIRM function key when all fields have been input and checked. If Continue without Confirm key has not been activated, the operating hint from the Contents (STD/ATM) control is inserted in the page header when the final field has been input.
418 May 2008
Field sequence control Input checks
Then the application waits for the key that was specified in the Confirm key parameter in the Contents (STD/ATM) control (see "Contents ATM control - General page" on page 199). The application continues with the Internet page that was defined for the selected confirmation key.
Special input confirmation handling
Because some banks require another confirmation handling, there is an option to create a function key CONFIRMALL on pages with more than one edit field. This key will start the check routines of all input fields which have not been checked before.
This key may be used to leave the page. If the customer has jumped through the input field by use of the touch screen or <Tab> and <Cursor up>, <Cursor down> key this will help to do a final check at the end without activation fields, which have not been confirmed before. Of course if a check routine recognises an error, the corresponding field will be activated and the error message is shown.
Input corrections
Every input can be corrected with a correction key – the <Backspace> key on the alphanumeric keyboard or the <Correct> function key on the screen or Encrypted PIN Pad (EPP).
If an edit control is to run correctly and the Correct key on the EPP to be used for input correction, there must be a function key with the value CORRECT active on this page. If this button is not to be shown, a graphic with the size 1 x 1 pixels and the colour of the background should be assigned to it.
To use the <Correct> key on the EPP, the Normal input radio button in the Contents (STD/ATM) control for this Internet page has to be activated (see also ’Contents ATM control - EPP Keys page’ on page 208). The key which is configured for the Softkey Correct will be triggered automatically.
To use the button on the screen as a correction key, a function key with the CORRECT value must have been created and activated. When an input field is active on the Internet page, the mode of the function key is switched.
The <Backspace> key on the numeric keypad can be used for correction.
Pressing either of these keys deletes the character to the left of the cursor.
May 2008 419
Input checks Dependent input fields
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Dependent input fields
Dependencies between input fields are frequent in an application. For example, the bank code, account number and bank name fields depend directly on each other. If the bank code is input, the bank name and the number of the check digit routine for the account number are ascertained from a database. If the account number is the first data that is input, it cannot be checked immediately because the number of the check digit routine is not ascertained until the bank code has been input.
Another example is the input of FROM / TO dates. Here, too, the two fields depend directly on each other.
In order to handle these dependencies, a technique has been developed in the Contents (STD/ATM) control which builds a decision table on the basis of the input statuses. This decision table is used to assign the input focus.
Input statuses
An input status variable can hold the following values:
Input status (decimal value) Meaning
FIELD_NOT_CHECKED(1)
The field has not been checked. The Check() function has not been called yet.
FIELD_OK(2)
The field has been checked, and the input was OK.
FIELD_CHECKED_INFO_MISSING (4)
A dependent field has been input. The content cannot be set to FIELD_OK because the field on which the current field depends has not been input yet.
FIELD_CONTAINS_ERROR(8)
The Check() function ascertained errors in the input.
FIELD_NOK_USER_OVERWRITE (16)
The Check() function ascertained errors in the input but the customer was given the option to accept the errors anyway. The customer opted to do so.
420 May 2008
Dependent input fields Input checks
FIELD_BECAME_UNCHECKED (32)
The input of a value in a field on which others depend causes the status of the dependent fields to be set to this value in order to initiate another check of the dependent fields.
FIELD_HAS_SCANNER_ERRORS (512)
The default value contains special characters that have not been recog-nized. These must be changed by the customer first.
Input status (decimal value) Meaning
May 2008 421
Input checks Dependent input fields
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
The Check Framework is responsible for setting the input statuses.
FIELD_NOT_CHECKED is the initialization value which is used to call an input page without input field defaults.
FIELD_OK is set in the Check() function when the check routine returns without error.
FIELD_CONTAINS_ERROR is set when the check routine reports an error.
FIELD_CHECKED_INFO_MISSING is only set for dependent input fields when the check of the content depends on the content of another field which has not been input yet. When the dependent field has been input and is checked, the value should change from FIELD_CHECKED_INFO_MISSING to FIELD_BECAME_UNCHECKED. The Contents (STD/ATM) control then automatically calls the first check again. A good example is the account number. If this is input first, this status is set. When the bank code has been input, the status has to be changed to FIELD_BECAME_UNCHECKED.
FIELD_NOK_USER_OVERRIDE is set if the customer is given the option of accepting an incorrect input. The bank code is an example of this. If the specified bank code is not found in the database, the customer can accept it anyway if this has been parameterized. The database may not be up to date.
FIELD_BECAME_UNCHECKED is used for dependent fields when they already contain data and an input in the current field means that the dependent fields have to be checked again. The check routine is automati-cally called by the Contents (STD/ATM) control.
FIELD_HAS_SCANNER_ERRORS can be set in addition for all input fields by means of a bit-by-bit inclusive-OR operation if this field contains an unrecognized character. The business module which initiates scanning must check every value that is transferred from the scanner for unrecognized characters and set this flag in addition. If the VAR_SCANNER_ERROR_L variable has also been set to 1, the Contents(STD/ATM) control searches all status variables for this flag. The focus is given to input fields in which this flag has been set. The input field places the cursor on the character to be replaced. When the character has been corrected and confirmed, the cursor is moved to the next character to be replaced or to the next input field in which this flag has been set. The input checks are not carried out until the customer has corrected all characters that need to be corrected. The replacement character is taken from the following parameter:
422 May 2008
Dependent input fields Input checks
HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\CSC-W32/CurrentVersion/CSCSCAN/
SUBST_SIGN = 40
Editing scanned documents
When a document is scanned in, the customer can change any characters that are not recognized by the scanner. After input of a character and subsequent confirmation with the <Confirm> or <Return> key, the cursor is moved to the next unrecognized character. This continues until all unrecognized characters have been replaced. Only then is the input check called and possible error messages output. To enable replacement of unrecognized characters, the VAR_SCANNER_ERROR_L variable is set to 1.
There is the input status FIELD_HAS_SCANNER_ERRORS to ensure that it is not necessary to check every input field for unrecognized characters. This status must be set by the business modules for the relevant input status variables after document processing. This should be done with a bit-by-bit inclusive-OR operation to make it possible to set one of the other statuses per input field.
Even if no scanner errors are detected, VAR_SCANNER_ERROR_L has to be set in a scanner function before jumping to the input page. Only when this variable is set, will all input checks be performed. Otherwise each input field remains unchecked and has to be confirmed manually.
VAR_SCANNER_ERROR_L has to be set to 1 in a Transaction FW class just before loading the page with the input controls, because the Contents (STD/ATM) control automatically resets this control to 0.
Variable Length Meaning
VAR_SCANNER_ERROR_L LONG 0: Normal input check1: Replacement of unrecognized characters is enabled
May 2008 423
Input checks The Dialog() function
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
The Dialog() function
The Dialog() function is called directly from the Edit Control. It can only be called in an editor with which you can parameterize ActiveX controls. In addition to the input parameter for the number of the check routine the function returns three strings: The parameter string, the dependent input field string and the return code string. There is also a flag which determines whether the return code string and dependent input field string or the parameter string is to be returned. Accordingly, the dialog function is called twice during parameterization.
The first call is issued when the General 1 page of the Edit control is opened. This call is to pass the dependent input field string and the return code string. The return codes are then displayed in the Error list box. For every return code, the user must input an Internet page to display the corresponding message. The return code string has the following structure: Return code=Description of return::Return code=Description of return::.... Conse-quently, the description of the return must not contain any equals sign or colon.
A list of variable names for the dependent input fields is also returned at this point. The variable names are returned to the Edit control in the form Variable name::Variable name::.... Consequently the variable names must not contain a colon. The Edit control stores the string on the Internet page in its own CheckDependencies property. This string is passed again when the Check() function is called.
Dialog() is called the second time when the <Parameter> button is selected.At this point the developer can display a self-designed dialog asking for supple-mentary check parameters. The contents of the parameters are returned to the Edit control in the form Parameter name=Contents::Parametername=Contents::.... Consequently the parameter name and contents must not contain any equals signs or colons. The Edit control stores the parameter string on the Internet page in its own CheckParameter property. This parameter string is passed to the Format() and Check() functions for input checking and evalu-ation at runtime.
The Format() function
The Format() function is called by the Contents (STD/ATM) control when the page is initialized in order to determine default values or format unformatted variables so that they can be displayed. This function is important when data is transferred from the host and this data is to be made available in input fields for
424 May 2008
The Check() function Input checks
changes. The Format() function is only called for input fields whose formatted input variables do not contain data (see "Input variables" on page 413). If the formatted input variable is set, the content of the variable is passed directly to the Edit control.
If, however, only the unformatted variable contains data, it is passed to the Check Framework. The content is formatted and placed in the formatted input variable. At the end of Format(), the content of the formatted variable is ascer-tained by the Contents (STD/ATM) control and passed to the Edit control, where it is displayed.
If neither the formatted nor the unformatted variable contains data, the Format() function is also called to create any default values (e.g. the current date in a date check). The default value must be placed in the formatted input variable, and the corresponding input status variable has to be filled. The unformatted variable also has to be filled. Here, too, the contents of the formatted variable are passed to the Edit control for display purposes at the end of the Format() function.
In addition to the input parameter for the number of the check routine, this function incorporates two input parameters and one return parameter for strings: The input variable string, the parameter string and the output variable string. The name of the unformatted input variable is passed in the input variable string. The content of the Edit control’s CheckParameter property is passed in the parameter string. This string was edited by the Dialog() function. The name of the unformatted input variable is passed in the output variable string. The Contents (STD/ATM) control fetches the content of the variable and passes it to the Edit control, where it is displayed.
When default values are used in the Format() function, the input status variable must be given the FIELD_OK or FIELD_NOT_CHECKED status, regardless of whether the field is a mandatory or an optional field.
The Check() function
Check() is the function that actually checks the customer’s input. This function is called when the customer confirms an input. A correction message can be called on the basis of the return code. This is handled by the Contents (STD/ATM) control.
To make dependent input fields invalid or to set inputs in other fields during a field check, the return parameter of the Check() function provides a facility to notify the Contents (STD/ATM) control.
May 2008 425
Input checks Correction messages
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
In addition to the input parameter for the number of the check routine, this function incorporates two input parameters and one return parameter for strings: the input variable string, the parameter string and the output variable string. The name of the formatted input variable is passed in the input variable string. The content of the Edit control’s CheckParameter property is passed in the parameter string. This string was edited by the Dialog() function (see "The Dialog() function" on page 423). The content of the Edit control’s CheckDepen-dencies property is appended to this, separated by ::. This string was also edited by the Dialog() function. The Check() function evaluates the content of this string in the course of the check.
The name of the formatted input variable is passed in the output variable string. The Contents (STD/ATM) control fetches the content of the variable and passes it to the Edit control where it is displayed. It is also possible to pass the formatted variable name of dependent input fields in the output variable string. It is necessary to comply with the following syntax: Formatted input variable of the current field=::Formatted input variable of a dependent input field=::Formatted input variable of another dependent input field=::....
The Contents (STD/ATM) control ascertains the content of all input fields in the string and passes it to the Edit control, where it is displayed. The content of the associated status variables is ascertained automatically by the Contents (STD/ATM) control and included in internal status management. It is therefore important for all names of formatted variables for dependent input fields to be passed in the output variable string. All status variables of dependent input variables are set in the Check() function.
Correction messages
When the Check() function has been called, all return codes can be returned which were ascertained in the Dialog() function in the return code parameter. For every return code, the user must enter an Internet page which is to be loaded as a correction message. The Contents (STD/ATM) control ensures that the correct Internet page is displayed. The easiest way of addressing correction message pages is by means of In new window. In this case, when this Internet page is closed, the input field that contains the errored input is activated again. There are several variables to show the customer in which way the input contra-venes against the limit. The following variables are filled either with the values of the limit variables or, if the limit variables are empty, with the special limits entered on each limit check property page (see also section ’Standard input
426 May 2008
Input attempt counter Input checks
check dialogs’ on page 427). In this way the actual used limit is shown to the customer. The variable WX_CHECK_ACTUAL_STEP is related to the ’Pace’ function of ’Numeric check’ mentioned below.
These variables will only be filled with data if the input is not within the limit range.
However, it is also possible not to return to the input field containing the alleged error after a correction message. This is useful, for instance, if the customer has input a bank code that does not match the account number but the customer wants to keep it nonetheless. It could be the case that the bank code database is not up to date.
This behavior is controlled by the input status variable. If the status of the errored input is set to FIELD_NOK_USER_OVERRIDE, the Contents (STD/ATM) control moves the input focus not to the field which is supposed to be errored but to the next input field that has not been checked.
Input attempt counter
For every input field on an Internet page, the Contents (STD/ATM) control creates a variable containing the number of input attempts.
Input variable: VAR_INPUT_AMOUNT_S
Variable for input attempt counter: VAR_INPUT_AMOUNT_S_ERR_COUNTER_L
When the page is loaded, the Contents (STD/ATM) control initializes this variable to 0. Whenever the Check() function is called, the name of the counter can be formed, checked and incremented on the basis of the name of the input
Variable Limit Variable
WX_CHECK_ACTUAL_MAX WX_CHECK_LIMIT_MAX
WX_CHECK_ACTUAL_MIN WX_CHECK_LIMIT_MIN
WX_CHECK_ACTUAL_MIN_DATE WX_CHECK_LIMIT_DATE_FROM
WX_CHECK_ACTUAL_MAX_DATE WX_CHECK_LIMIT_DATE_TO
WX_CHECK_ACTUAL_STEP none
May 2008 427
Input checks Standard input check dialogs
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
variable. If the counter limit is exceeded, a separate return code (too many input errors) should be returned. This approach has already been implemented for the standard amount check.
Standard input check dialogs
The following sections explain the check dialogs that exist in the standard. There are the following input checks:
0: No Check1: Alphanumeric check2: Numeric check3: Date check4: Amount check
Alphanumeric check
The alphanumeric check is applied to inputs of one or more lines. It is possible to allow digits only or the DTA character set only. If 0 is specified as the minimum number of characters, the field is an optional one. If no further restrictions are selected, the check will always return OK.
Fig. 96: Alphanumeric check
Minimum number of characters: The minimum number of characters is input in this field. The value can range from 0 to 999. If the minimum number of characters is 0, then the field is optional and there are no compulsory inputs in it. The maximum number of characters, however, is entered on the Edit
428 May 2008
Standard input check dialogs Input checks
control’s Input page (see "Edit control - Input page" on page 131). It is also possible to set the maximum number of characters from business modules. If this is required, the maximum number of characters has to be set by the business modules in a variable whose name consists of the name of the input variable with the suffix _MAXCHARS_L. The variable is of the LONG type.
Input variable: VAR_INPUT_PURPOSE_S
Maximum input length: VAR_INPUT_PURPOSE_S_MAXCHARS_L
Numeric check
The numeric check is applied to inputs consisting primarily of digits but which can include some special characters which are not included in the range check. The range check involves an upper and lower limit. If there is an entry in the Pace field, only values that correspond to this increment are allowed to be input.
Fig. 97: Numeric check
Minimum: The minimum value to be input by the customer is entered here.
Maximum: The maximum value to be entered by the customer is entered here.
Pace: If each value is not allowed to be consecutive, the required increment can be input here.
May 2008 429
Input checks Standard input check dialogs
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Date check
The date check is applied to date fields. It is also possible to check a FROM date against a TO date, i.e. to make sure that the FROM date is before the TO date. The limits to be checked can also be specified as variables by business modules. In order to distinguish a FROM date from a TO date, the Check() routine requires unique variable names. These variable names must therefore be defined uniquely in a transaction.
Fig. 98: Date check
Default value: The input field can either not have a default value, or be defaulted to the current date, or to the date resulting from the Days until earliest possible date or Days until latest possible date, unless the input variable has already been filled by business modules. In this case, the content of the input variable is displayed. If the limits (see below) are passed from business modules, these take precedence over the values from Days until earliest possible date and Days until latest possible date.
Days until earliest possible date: Here you enter the number of days that defines the earliest date that can be input. This value depends on the Period in the past checkbox. If this check box is activated and a 5 is input, for example, this means that the date can be five days in the past. If this check box is not activated, the earliest date must be at least five days in the future. If the Check against limit check box is activated, the earliest date in days is read from the WX_CHECK_LIMIT_DATE_FROM variable. This STRING variable can be filled by business modules.
430 May 2008
Standard input check dialogs Input checks
Days until latest possible date: Here you enter the number of days that defines the latest date that can be input. This value depends on the Period in the past checkbox. If the Check against limit check box is activated, the latest date in days is read from the WX_CHECK_LIMIT_DATE_TO variable. This STRING variable can be filled by business modules.
Date format: There is a choice of Long date (language-specific) and Short date (language-specific) here. The formats are taken from the parameter settings of the HTML generator (see "Formatting settings" on page 288).
Period in the past: If this check box is activated, the Days until earliest possible date and the Days until latest possible date are allowed to be in the past. This means that the value for the earliest date must be greater than the value for the latest date.
Period in the past is activated, Days until earliest possible date = 20, Days until latest possible date = 10. Today is 30.07.00:
The date must lie between 10.07.00 and 20.07.00.
Check against limit: If this check box is activated, the limits can be trans-ferred from business modules via the WX_CHECK_LIMIT_DATE_FROM and WX_CHECK_LIMIT_DATE_TO variables. The data is expected in the form of days here. If this check box is activated but the variables do not contain data, the values from Days until earliest possible date and Days until latest possible date are used.
Compelling input: If this check box is activated, the date input is compulsory. If the input is not compulsory and a reasonable default value is available, the customer can skip this field.
If a non-compulsory date field is the only input field on a page and a default value is available, the page is only displayed briefly and the program continues as if the customer had confirmed an input.
Variable Length Meaning
WX_CHECK_LIMIT_DATE_FROM
STRING[4] Limit for Days until earliest possible date
WX_CHECK_LIMIT_DATE_TO
STRING[4] Limit for Days until latest possible date
May 2008 431
Input checks Standard input check dialogs
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Related: In some cases you wish to use two edit fields to enter a FROM date and a TO date. To make sure that a FROM date is before a TO date, this checkbox has to be activated.
From: To check the FROM date against the TO date, you have to activate this checkbox. Then the variable related to the ’TO edit field’ (see ’TO edit field’ property page or Registry) has to be entered into the textfield beneath the ’To’ checkbox.
To: To check the TO date against the FROM date, you have to activate this checkbox. Then the variable related to the ’FROM edit field’ (see ’FROM edit field’ property page or Registry) has to be entered into the textfield beneath the ’FROM’ checkbox.
Example: There are two edit fields, ’FROM’ and ’TO’. The edit field ’FROM’ uses the variable DLG_INPUT_RESULT1_S and the edit field ’TO’ uses the variable DLG_INPUT_RESULT2_S. Then you have to enter the variable DLG_INPUT_RESULT2_S into the textfield beneath the ’To’ checkbox on FROM edit field property page and vice versa.
Amount check
The amount check is a special numeric check in which decimal places and thousands separators can be specified. The hyphen is also accepted. The + sign and a blank are only accepted as characters before the actual amount. The number of decimal places and the formatted output can be defined.
Fig. 99: Amount check
432 May 2008
Standard input check dialogs Input checks
Minimum (unformatted): This field defines the smallest amount that can be input in the unit specified in the Currency exponent parameter on the Other format page (see Fig. 100: "Amount check formatting") or in the parameters for the HTML generator (see "Formatting settings" on page 288). If the Check against limit check box is activated, the minimum is read from the WX_CHECK_LIMIT_MIN variable. If the check box is activated and the variable does not exist or contains a null string, the content of this field is used in the check.
Currency exponent = -2: Amount has to be input in pfennigs, for instance.Example: 200 => 2.00
Currency exponent = -4: Amount has to be input with 4 decimal places but without a decimal point Example: 200 => 0.0200
Currency exponent = 0: Amount can be input in full deutschmarks, for instance.Example: 200 => 200
Maximum (unformatted): This field defines the highest amount that can be input in the unit specified in the Currency exponent parameter on the Other format page (see Fig. 100: "Amount check formatting"). If the Check against limit check box is activated, the maximum is read from the WX_CHECK_LIMIT_MAX variable. If the check box is activated and the variable does not exist or contains a null string, the content of this field is used in the check.
Check against limit: If this check box is activated, the contents of the WX_CHECK_LIMIT_MAX and the WX_CHECK_LIMIT_MIN variables are used for the check. If these variables do not exist or are a null string, the contents of the Maximum and Minimum fields are used.
Variable Length Meaning
WX_CHECK_LIMIT_MIN STRING[20] Minimum limit for amount check
Variable Length Meaning
WX_CHECK_LIMIT_MAX STRING[20] Maximum limit for amount check
May 2008 433
Input checks Standard input check dialogs
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Ein
gab
epru
efu
nge
n.fm
Number of input tries: The number of attempts to input the amount is limited here. If the customer tries to repeat the input more than the number of times specified here, the error message "Too many input errors" is output and this is rejected. The value 0 stands for an infinite number of attempts (see also section ’Input attempt counter’ on page 426).
Output format = according to HTML generator: If this check box is activated, the settings from the parameters of the HTML generator are used for input formatting (see "Formatting settings" on page 288). If it has been specified there, for example, that two decimal places are allowed, this applies automatically to the input of the amount. In this case, three decimal places would be rejected with an error message. The thousands grouping is also taken from the HTML generator’s parameter set. If this check box is not activated, the Other format button has to be pressed to open a formatting dialog.
other Format ...: The following dialog appears when this button is selected.Fig. 100: Amount check formatting
Number of post-comma digits: The number of decimal places that can be input or that is formatted for output is specified here.
Currency exponent: The currency exponent is used to form an unformatted variable or to check a limit variable.
Currency exponent = -2: Amount is converted to pfennigs, for instance.Example: 200.00 => 20000
434 May 2008
Standard input check dialogs Input checks
Currency exponent = 2: Input amount is converted to a currency with decimal places but no decimal point Example: 200 => 2
Currency exponent = 0: Amount can be specified in full deutschmarks, for instance, and is not converted.Example: 200 => 200
Grouping: This input field specifies how digits before the decimal point are grouped. The character specified in the Grouping point field is used as a separator. If there are fewer places before the decimal point than specified in this input field, no grouping can take place.
Grouping = 4, group separator = +, amount = 1234567890.00
Output: 12+3456+7890.00
Decimal point: The decimal separator is specified here.
Group point: The separator that applies to the number of characters specified in the Grouping field is specified here.
May 2008 435
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
Check Framework
The Check Framework is responsible for all kinds of input checks, e.g. numeric, alphanumeric, amount, date, etc. This framework is used after the customer has made an input, or to format an unformatted value or to show the formatted value in the input field. It even has an interface to show up a dialog for retrieving additional parameters for the check routine.
Release specification
Version 1.0 of the class CCCheckFW is released in a DLL named CCCHECKFW.DLL’. CCCHECKFW.DLL is a summary of classes which can be accessed in the framework model.
applications using this DLL must include the file CCCHECKFW.XPP.
Configuration
The logical name of the Check Framework is ’CCCheckFW’. You have to make the following entry available to the Repository manager:
"CCCheckFW" "x:\y\CCCHECKFW.DLL"
where x is the drive and y is the path to the DLL.
Parameters
There are no parameters which are used directly by the check framework. Nevertheless, there are parameters used by the HTML generator of the Internet Graphical Service which can be indirectly accessed in the format() function of the check framework. The format() function of PCDialog() can be used for formatting input variables (see also section ’PCDialogFW.Format’ on page 346).
436 May 2008
Check Framework
Interactions with other frameworks
Methods from the following frameworks are used:
Variable Framework CCVarFW
Internet Graphical Service PCDialogFW
Data Framework CCDataFW
Public Interface
The public interface is completely defined in the include file CCCHECKFW.XPP.It contains all the public functions, events and the required definitions for data structures and return codes.
Methods
The following public member functions are defined in class CCCheckFW:
CCCheckFW.DialogReturns all strings for return values and enables display of a dialog for retrieving additional parameters from the user.
CCCheckFW.FormatFormats an unformatted variable to show the formatted value in the input field later on. This function can be used if data from the host is to be displayed inside an input field. The customer can change this.
CCCheckFW.CheckChecks the customer input. Has the ability to return with up to 20 return codes for displaying error messages.
CCCheckFW.LookForLotterySearches an ODBC database for a pair consisting of bank code and account number.
Definitions and data structures
The class CCCheckFW contains the following definitions and data structures:
May 2008 437
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
Error definitions
Definition Value
CCCHECKFW_RC_SUCCESS 0
CCCHECKFW_RC_GENERAL_ERROR -1
CCCHECKFW_RC_INPUT_TOO_SHORT 1
CCCHECKFW_RC_INPUT_TOO_LONG 2
CCCHECKFW_RC_CHARS_NOT_ALLOWED 3
CCCHECKFW_RC_NOT_DTA 4
CCCHECKFW_RC_TOO_MANY_LINES 5
CCCHECKFW_RC_TOO_MANY_CHARS_PER_LINE 6
CCCHECKFW_RC_TOO_FEW_CHARS_PER_LINE 7
CCCHECKFW_RC_TOO_MANY_CHARS_DUE_TO_UMLAUTS 23
CCCHECKFW_RC_TOO_MANY_CHARS 25
CCCHECKFW_RC_NO_DIGITS 26
CCCHECKFW_RC_TOO_FEW_CHARS 27
CCCHECKFW_RC_NO_NUMERIC_INPUT 8
CCCHECKFW_RC_INPUT_TOO_HIGH 9
CCCHECKFW_RC_INPUT_TOO_SMALL 10
CCCHECKFW_RC_NOT_IN_StepRANGE 11
CCCHECKFW_RC_WRONG_LIMITS 12
CCCHECKFW_RC_AMOUNT_NOT_IN_LIMIT 13
CCCHECKFW_RC_TOO_MANY_ERRORS_CHIP_AMOUNT 24
CCCHECKFW_RC_TOO_MANY_POSTKOMMADIGITS 28
CCCHECKFW_RC_NO_DATE_FORMAT 14
CCCHECKFW_RC_DATE_TOO_EARLY 15
CCCHECKFW_RC_DATE_TOO_LATE 16
CCCHECKFW_RC_DATE_MISMATCH 30
CCCHECKFW_RC_DATE_IN_PAST_NOT_ALLOWED 34
CCCHECKFW_RC_CARDHOLDER_ACCOUNT 17
CCCHECKFW_RC_ACCOUNT_CHECKNUMBER_FAILED 18
CCCHECKFW_RC_ENTRY_NOT_FOUND 19
438 May 2008
Check Framework
Return codes of Calculation
CCCHECKFW_RC_ENTRY_NOT_UNIQUE 20
CCCHECKFW_RC_NO_KOMMA_IN_BANKNAME 21
CCCHECKFW_RC_BANKNAME_NOT_OF_BANKCODE 22
CCCHECKFW_RC_NOT_IN_TELEPHONE_FORMAT 29
CCCHECKFW_RC_DATE_ONLY_ONE_PERIOD 31
CCCHECKFW_RC_WRONG_STARTDATE 32
CCCHECKFW_RC_DATE_IS_NOT_IN_RHYTHM 33
Definition Value
CALCULATION_RETURN_READY 0
CALCULATION_RETURN_INPUT_CREDITAMOUNT 1
CALCULATION_RETURN_INPUT_PERIOD 2
Definition Value
May 2008 439
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
Specification of the methods
In the following section, the public methods are described in detail.
CCCheckFW.Dialog
Syntax:
SHORT CCCheckFW.Dialog(
const SHORT sMethodID,
PSZ pszParameter,
USHORT usParameterMaxLength,
PSZ pszDependentInputs,
USHORT usDependentInputsMaxLength,
PSZ pszErrorMsgs,
USHORT usErrorMsgsMaxLength,
ULONG ulFlag)
)
Function:
This function is called twice at parameterization of Edit control. Only when the user opens the dialog for parametrization in the parameter pszErrorMsgs are the return values of the corresponding check routine returned. Secondly, when the user presses the button ’Parameters’ on the ’General 1’ property page, this function can be used to show a dialog for retrieving additional parameters for this check routine.
Input parameters:
sMethodID (IN)
Number of the check routine.
pszParameter (IN/OUT)
440 May 2008
Check Framework
This pointer is used for returning the parameters after displaying the dialog. An empty string with the length of usParameterMaxLength must be used for input. The string is only filled if ulFlag = 0. The string must use the following syntax:
Parameter=Value;Parameter=Value;...
usParameterMaxLength (IN)
Length of the parameter string pszParameter
pszDependentInputs (IN/OUT)
This pointer is used for returning the names of the dependent input variables. An empty string with the length of usDependentInputsMax-Length must be used for input. The string is only filled if ulFlag = 0. The string must use the following syntax:
Variablename;Variablename;...
usDependentInputsMaxLength (IN)
Length of the parameter string usDependentInputs
pszErrorMsgs (IN/OUT)
This pointer is used for returning the error messages. An empty string with the length of usErrorMsgsMaxLength must be used for input. The flag is only filled if ulFlag = 1. The string must use the following syntax:
Returncode:Description;Returncode:Description;...
usErrorMsgsMaxLength (IN)
Length of the parameter string usErrorMsgsMaxLength
ulFlag (IN)
0: the dialog should be displayed1: the error messages should be returned
May 2008 441
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
Return values:
CCCHECKFW_RC_OK (0)
CCCheckFW returned successfully
CCCHECKFW_RC_GENERAL_ERROR (-1)
General error in Dialog function
CCCheckFW.Format
Syntax:
SHORT CCCheckFW.Format(
const SHORT sMethodID,
PSZ pszInput,
PSZ pszParameters,
PSZ pszOutput,
USHORT usOutputMaxLength
)
Function:
This function is called when an unformatted variable is to be displayed in Edit control. This variable has to be formatted first, using this routine. All parameters are received, because one of the parameters could be a mask for formatting the appropriate value. The name of the formatted variable has been filled into pszInput before the function was called. The formatted value has to be set to this variable. The unformatted value is retrieved from CCVarFW from the unformatted variable. The name of the unformatted variable can be built from the name out of pszInput, enhanced by _UNFORMATTED_S.
442 May 2008
Check Framework
Input parameters:
sMethodID (IN)
Number of the check routine.
pszInput (IN)
Contains a pointer to a string containing the name of the variable the formatted value should be set to. The name of the unformatted variable can be quickly built by expanding the name with the extension _UNFORMATTED_S. Use the Variable Framework to obtain and set the formatted and unformatted input variables.
pszParameters (IN)
This pointer is used for transferring the additional parameter string. This string is retrieved from the dialog() function. The string must use the following syntax:
Parameter=Value;Parameter=Value;...
pszOutput (IN/OUT)
Not yet used.
usOutputMaxLength (IN)
Not yet used.
Return values:
CCCHECKFW_RC_OK (0)
CCCheckFW returned successfully
CCCHECKFW_RC_GENERAL_ERROR (-1)
General error in Dialog function
May 2008 443
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
CCCheckFW.Check
Syntax:
SHORT CCCheckFW.Check(
const SHORT sMethodID,
PSZ pszInput,
PSZ pszParameters,
PSZ pszOutput,
USHORT usOutputMaxLength
)
Function:
This function is used for checking the input. It is called directly after user input. The check routine can return up to 10 values.
Input parameters:
sMethodID (IN)
Number of the check routine.
pszInput (IN)
Contains a pointer to a string containing the name of the variable with the formatted value.
pszParameters (IN)
This pointer is used for transferring the additional parameter string. This string is retrieved from the dialog() function. The string must use the following syntax:
Parameter=Value;Parameter=Value;...
pszOutput (IN/OUT)
This parameter can be used for transferrring the names of the dependent variables and the names of the status variables.
DependendInputVariable1;DependendInputVariable2;...
444 May 2008
Check Framework
usOutputMaxLength (IN)
Length of the buffer pszOutput.
Return values:
CCCHECKFW_RC_OK (0)
CCCheckFW returned successfully
CCCHECKFW_RC_GENERAL_ERROR (-1)
General error in Dialog function
May 2008 445
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
CCCheckFW.LookForLottery
Syntax:
SHORT CCCheckFW.LookForLottery(
PSZ pszBankCode,
PSZ pszBankName
)
Function:
This function looks for the bank code and account number in an ODBC database.
Input parameters:
pszBankCode (IN)
Contains the bank code that is to be looked up.
pszAccountNumber (IN)
Contains the account number that is to be looked up.
446 May 2008
Check Framework
Return values:
CCCHECKFW_RC_OK (0)
if the pair consisting of bank code and account number is found
CCCHECKFW_RC_GENERAL_ERROR (-1)
if the pair consisting of bank code and account number is not found
May 2008 447
Check Framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\cc
chec
kfw
.fm
Trace and error logging
Trace and error logging for the Check Framework are initialized under the number 780 (MODID_TA_CHECK)
The following trace levels are defined:
The error entries are described in the RCH file "780FERS.ENG".
Definition Description Value
T_CHECK_A ext. Function entries/exits & errors
10
T_CHECK_1 int. Function entries/exits 11
T_CHECK_2 Input/Output Values 12
T_CHECK_3 Control 13
T_CHECK_4 Status Control 14
T_TOOLS_A CheckTools: ext. Function entries/exits & errors
15
T_TOOLS_1 CheckTools: int. Function entries/exits
16
T_TOOLS_2 CheckTools: extended infor-mation
17
448 May 2008
Check Framework
May 2008 449
Displaying external pages Configuring external Internet pages
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Intr
ane
tSe
itenL
ade
n.fm
Displaying external pagesSince ProTopas/Web-Extensions are based on Internet technology, it is also possible to display Internet pages which are external to the product from any server. However, such pages will generally not have the same layout as pages which do belong to the product. When displaying Internet pages that are external to the product, ProTopas/Web-Extensions only takes up a small area of the screen, the navigation button bar, in order to leave as much space as possible for them. The size and position (top, bottom, left, right) of the navigation button bar can be defined freely. This bar is an Internet page containing special function keys.
Configuring external Internet pages
Every Internet page that does not belong to the application must be entered in the AllowList (see also section ’Structure of the AllowList’ on page 294). This can be done with the aid of wildcards or by allowing the entire Internet server on which the Internet page is stored. For all pages that do not belong to the product it is important to specify a 0 in the GENERATE column of the AllowList and a page timeout in the TIMER column. These two entries tell the Web Graphical Service that an intranet page is to be loaded and cause the screen to switch automatically to the mode that shows the navigation button bar. The timeout for the page is monitored automatically. If the customer does not make any inputs during the defined time, the Web Graphical Service clears the screen and launches the application with the Internet page that is specified in the StartPage parameter (see "StartPage" on page 615 in the Parameters chapter).
The addresses of all pages that are to be displayed must be entered in the AllowList. If an allowed page contains links to other Internet pages, for instance in order to load images, these addresses must also be specified. Otherwise the application will stop navigation to the page in question and will load the page specified in the ErrorURL parameter (see "ErrorURL" on page 619 in the Parameters chapter).
450 May 2008
Displaying the cursor Displaying external pages
Displaying the cursor
If the cursor is to be displayed in the mode for displaying external pages, the parameter InternetModeCursorEnable (see "InternetModeCursorEnable" on page 615 in the Parameters chapter) must be set to 1. This may be necessary, for example, if navigation through the external pages is to be performed with a trackball on the self-service device. If the parameter remains set to 0 (default), the cursor for displaying external pages will be deactivated, even if it is activated during the application (parameter CursorEnable (see "CursorEnable" on page 615 in the Parameters chapter)).
The navigation button bar
The navigation button bar is an Internet page whose width and height are defined by the SurfingBrowserWidth parameter (see "SurfingBrowserWidth" on page 608 in the Parameters chapter). The position at which the bar appears is read from the SurfingBrowserPos parameter (see "SurfingBrowserPos" on page 608 in the Parameters chapter). This bar can be displayed at the top, bottom, left or right edge of the screen. The name and address of this page are defined by the SurfingURL parameter (see "SurfingURL" on page 607 in the Parameters chapter). This page must show function keys that have been designed specifically to navigate on Internet pages. The values of these function keys all begin with SURFING_ (see "Function keys with a fixed meaning" on page 87).There is a button to return to the application, <Back> and <Forward> buttons, and scrolling buttons.
Displaying external pages without a navigation button bar
In keeping with the parameterization of the AllowList, an Internet page is either interpreted as an external or product-related Internet page. (see also ’Structure of the AllowList’ on page 294). In the case of external pages, the navigation button bar is always displayed to enable the possibility of cancellation, timeout and returning to the actual application.
There may also be cases in which a navigation button bar is considered an impediment. In this case, the navigation button bar can be hidden via the parameter SurfingBrowser (see "SurfingBrowser" on page 607 in the Parameters chapter). If the external pages are to offer the possibility of cancellation and returning to the product-related page, any element must be given a link
May 2008 451
Displaying external pages Stopping the Internet mode
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Intr
ane
tSe
itenL
ade
n.fm
about:SNI_CANCELSURFING. A click on this element exits display of the external pages. However, this only functions on devices with a touchscreen. If the Cancel button on the EPP is also to be used, a Button control must be created as a function key with the value SURFING_CANCEL, to which the softkey CANCEL is assigned. In addition, the Contents STD/ATM control is also required on this page, whereby care must be taken that its timeout is set to Endless Timeout.
Stopping the Internet mode
If the function key which has the value SURFING_CANCEL is pressed or if the customer fails to make an input within the time defined in the AllowList, an event CCDIALOG_MODE_SURFING_END is fired. The user interface appears completely gray for a short time. A message can be output in a box for the customer at this time. The size of this box is defined by the MessageDLGWidth parameter (see "MessageDLGWidth" on page 612 in the Parameters chapter) and the MessageDLGHeight parameter (see "MessageDLGHeight" on page 612 in the Parameters chapter). A message to be output in the box can be specified in the Text parameter (see "Text" on page 612 in the Parameters chapter). Other parameters define the position and font for the message.
During display of this message, the Web Graphical Service restarts. The next page it shows is the Internet page from the StartPage parameter (see "StartPage" on page 615 in the Parameters chapter).
A more elegant method to finish the internet mode is to show a bitmap fullscreen during the restart of the Web Graphical Service.The SurfingJOBSOn parameter (see "SurfingJOBSOn" on page 613 in the Parameters chapter) has to be set to 1 first. In the SurfingJOBSStart parameter (see "SurfingJOBSStart" on page 613 in the Parameters chapter) the programm for displaying the bitmap is configured. SurfingJOBSEnd (see "SurfingJOBSEnd" on page 614 in the Parameters chapter) contains the programm to stop the displaying of the bitmap. Because the time interval between the start and teh stop is too short, a pause may be configured in the SurfingJOBSPause parameter (see "Surfing-JOBSPause" on page 614 in the Parameters chapter). SurfingJOBSCheck (see "SurfingJOBSCheck" on page 614 in the Parameters chapter) double checks if both the start and the end programm for displaying the page have been stopped.
452 May 2008
Access violations Displaying external pages
Access violations
If the external pages have poorly programmed contents or if an attempt is made on a page to launch another browser instance, the browser will terminate immediately and return control to the application. In this case, however, the Internet page that is specified in the AccessViolationURL parameter is loaded (see "AccessViolationURL" on page 607 in the Parameters chapter) in a new window. This page tells the customer that the previously selected Internet page included actions that are not allowed on the self-service device. This page works as a popup window and is closed automatically after a timeout of 10 seconds.
Accessing https:// pages
While accessing https:// pages, there are some restrictions to know. It is always the best to access those pages directly without generating those pages. When the page should be generated, it is not possible to use the post methode, because generated pages are temporary stored on the harddisk, which means, from the browsers point of view they come from a different location than the https:// Server. When Generation is mandatory all pages have top be generated. Mixing generated and not generated pages from one https:// server is not allowed.
When the post method has to be used, it is good praxis to use the Keyword NO_LOCAL_CACHE in the OPTIONAL 8th column of the table in the AllowList (see also section ’AllowList’ on page 292).
Another problem occures, when a new browser window is opened from a page in https:// session. Normally the Web Graphical Service is loading an internal IE page into new windows. This may cause security exceptions in an https session. So a page from an https:// server must be used. The parameter Https-BlankPage (see "HttpsBlankPage" on page 649 in the Parameters chapter) must be used to specify any of the valid pages from the server to be used as an opener page.
May 2008 453
Displaying external pages Scripting with keys in external pages
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Intr
ane
tSe
itenL
ade
n.fm
Scripting with keys in external pages
In external Page mode scripting with keys not not possible for each key. This is a problem because of the architecture of the Web Graphical Service. Enhance-ments have been made to support at least the most importants keysstrokes in scripts. So the events OnKeyUp and OnKeyDown and the <Tab>-Key is supported now. To activate those Buttons for scripting the following Parameters have to be set to 1. Please keep in mind, that the pages are parsed for script events, when those parameter have been set to 1.
WebExtTabing (see "WebExtTabing" on page 616 in the Parameters chapter)
WebExtKeyScripting (see "WebExtKeyScripting" on page 617 in the Parameters chapter)
If there are more keys in a script in an external page, which are not supported and which are urgently needed, please post a change request to the ProTopas/Web-Extensions.
Opening, Closing and rezising Popup Windows
In external page mode it may be necessary in scripts to open a new browser instance as a popup window. This may be used for showing print dialogs, f.e. To open a new window as a popup there is a reserved keyword about:SNI_MSWND_OPEN, which has to be set as a Prefix in front of the Links to this new page and a suffix SNI_MSWND_OPEN_ENDMARK, which has to be added at the end of the link. By using a window.navigate() command, a page which is surounded by those tags, is opened in a new instance.
window.navigate(’about:SNI_MSWND_OPENhttp://kamrun/warning.htmSNI_MSWND_OPEN_ENDMARK’);
To resize this new instance the Keyword about:SNI_MSWND_MOVExxxxyyyywwwwhhhh has to be used. The digits behind this keyword determine the position and size of the instance on the screen. xxxx is the x coordinate, yyyy the y coordinate, wwww the width and hhhh the height. This keyword must be used in a window.navigate() command.
window.navigate(’about:SNI_MSWND_MOVE0044005407120260’);
454 May 2008
Opening, Closing and rezising Popup Windows Displaying external pages
To close the new browser instance please navigate to about:SNI_MSWND_CLOSE in a window.navigate() command.
window.navigate(’about:SNI_MSWND_CLOSE’);
Please keep in mind, that it takes a moment to load a new instance. Please wait with the resizing or closing, until the instance is properly loaded. To navigations in script direct behind each other will propably fail.
May 2008 455
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
ScriptingIt is not only possible to set up HTML pages with the ProTopas/Web-Extensions controls but also to create interactive pages with the aid of scripts. ProTopas/Web-Extensions controls provide interfaces which can be queried by scripts. For example, the Button control can be queried about the pressing of a button, and the Contents ATM control about the page timeout. Another control, the Active VarFW control, accesses the Variable Framework and is thus able to exchange data between scripts on HTML pages and Steps.
You should use scripting whenever the properties of the ProTopas/Web-Exten-sions controls are inadequate for the application that is being designed. Scripts can be used to draw upon Microsoft’s Dynamic HTML interface. This is particu-larly interesting when page contents need to be moved on the otherwise fairly rigid HTML pages. Access to databases, for example, has been implemented in the ProTopas/Web-Extensions application almost entirely with scripts.
People, who just start using the ProTopas/Web-Extensions must not use lots of scripts because scripts have to be used very carefully. Mostly it is easy to use scripts for changing the interface itself. Using scripts to navigate to other pages is not that easy, because it can result in a lockup of the system.
Please check the methods and events from the Contents STD/ATM Control. If an event is not found there, use the standard one from the browser. This means better use OnContentsUnload()than Window.OnUnload().
A lockup may result by calling a method from the Contents STD/ATM Control in a script, which is initiated by an event from the Contents STD/ATM Control. This means the function which fires the event is not finished, while the next function - the method call - is activated. For a navigation please use asynchronous working functions like window.setTimeout() to call the NavigateGotoURL() method of the Contents STD/ATM Control. In this case the function which was firing the event will finish before the NavigateGotoURL() function is called.
All controls are throwing exceptions when an internal erro occurs. Please use Try/Catch while calling the control methods. If the error code is not equal S_OK then E_FAIL or E_INVALIDARGS is returned (see section ’Error number for On Error Resume Next’).
Please keep these tips in mind while implementing the scripts.
456 May 2008
Scripting
Here is a list of scripting interfaces provided by the ProTopas/Web-Extensions controls.
Contents STD/ATM control:
Method Meaning
void Refresh() The control refreshes input status variables and contents of input variables of Edit controls and List controls
void NavigateGotoURL (BSTR Url)
Navigation to a new Internet page (Url), use PCEvt:RC=Value for to return a value to the DoDialog() interface. It may be used to navigate to CLOSE.HTM to close popup windows.
void NavigateOpenNewWindow (BSTR Url, int Left, int Top, int Width, int Height)
Opens a new browser at coordinates Left, Top, Width, Height and loads Internet page Url into this area.
void PlaySound(BSTR Soundfile)
This mehod is used to play a Wave file or to activate a sound via the special electronics. See "AudioRe-sponse" on page 651. for information about the syntax of Soundfile
May 2008 457
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
void Log(BSTR LogString, int iLogType)
This method is used to write infor-mation into Error Log Trace Log or into the Journal. LogString is the data, which shall be logged.iLogType:1: Log into Trace2: Log into Error Log3: Log into Journal(see also section ’Logging into Error/Trace Log or Journal by Script’ on page 494)
variantArray ADAExec(BSTR strCMD)
This method is used to activate ADA commands in script (see also section ’Scripting’ on page 507).
Event Meaning
OnTimeout()(only Contents STD control)
When a timeout occurs on the page, actions can still be carried out which have to be completed before navigating to the next page.
BeforeUserInter-action(short ID)
This event is fired after the Edit control and List control have fired the UserInteraction() event, but before the Contents STD/ATM control has executed its internal task.
AfterUserInteraction(short ID, BSTR Contents)
This event is fired after the Edit control has fired the UserInter-action() event, but after the Contents STD/ATM control has executed its internal task (Status variable is set to not checked and the Contents of the control are read and saved to the input variable). It can be used to format output strings.
Method Meaning
458 May 2008
Scripting
BeforeButtonPressed(short ID)
This event is fired after the Button control and List control has fired the ButtonPressed() event, but before the Contents STD/ATM control has executed its internal task.
AfterButtonPressed(short ID, short selection, BSTR FunctionValue)
This event is fired after the Button control has fired the Button-Pressed() event and after the internal task of the Contents STD/ATM control has been initialized. The FunctionValue and the selection is retrieved.selection:0: Menu Button1: FunctionKey2: Selection Button3: Radio Button
BeforeEditComplete(short ID)
This event is fired after the Edit control and List control has fired the EditComplete() event, but before the Contents STD/ATM control has executed its internal task.
AfterEditComplete(short ID, short reaction, BSTR Contents)
This event is fired after the Edit control has fired the EditCom-plete() event, but after the internal task of the Contents STD/ATM control has been initialized. The Contents of the input field and the reaction is retrieved.reaction:0: No reaction1: Confirmed2: Tab selected3: Backtab selected
BeforeGotFocus(short ID) This event is fired after any control has got the focus and before the action of the Contents STD/ATM control has executed its internal task.
Event Meaning
May 2008 459
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
AfterGotFocus(short ID) This event is fire, after any control has got the focus and after the action of the Contents STD/ATM control has executed its internal task.
beforeInputCheck(short ID, short EditState, short CheckRoutineID, BSTR Contents)
This event is fired before the check routine for Edit control has been called. The Contents of the input field are retrieved with this event.EditState:(see also section ’Input statuses’ on page 419).CheckRoutineID:Number of the CheckRoutine (see also section ’Standard input check dialogs’ on page 427).
afterInputCheckOK(short ID, BSTR Contents)
This event is fired after the check routine has successfully returned. It is not fired if a correction return code has been returned and it is not even fired if the check is not performed (see EditState FIELD_OK_USER_OVERRIDE).The Contents of the input field after the check routine are retrieved with this event. It may be formatted or changed.
Event Meaning
460 May 2008
Scripting
onALLInputCtrlsOK(short SubmitStatus)
This event is fired after the check routine of the last unchecked field has successfully returned. All Edit controls have the EditState FIELD_OK now.SubmitStatus:0: Event is fired when all edit controls are checked with FIELD_OK and there is a SUBMIT Button configured.1: This event is fired, when there is no SUBMIT button configured in the page.2: This event is fired, after the SUBMIT Button has been pressed. So the event with SubmitStatus 0 is fired and directly after this the event with SubmitStatus 2 is fired.
OnContentsStart() This event is fired after the Contents STD/ATM control is almost initialized. EPP initialization is not performed, input handling is not started and the timer is not activated.
OnContentsEnd() This event is fired after navigation to the next page has been triggered or before returning a code to the Step. Please add scripts to run at the end of a page here.
OnContentsLoad() This event is fired after all pages of a frameset have been loaded and before the Contents STD/ATM Control initializes itself.
Event Meaning
May 2008 461
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
void OnContentsScann() This event is fired after OnCon-tentsLoad() and before OnCon-tentsStart(). This event is fired after the page is scanned and possibly the variables are replaced. It should be used for variable replacements etc.
OnContentsUnload() This event is fired before the page will be destroyed. Please be carefully when you like to script this event. Many controls have already been destroyed.
OnContentsOpenNew-Window(BSTR Target)
This event is fired before a new browser instance is opened in a new window with the Internet page Target. It may be used to stop animations, activities or even a Step.
OnContentsRestart() This event is fired when a new browser instance has been closed and before the Contents STD/ATM control has been reinitialized.
OnStepEvent(BSTRbstrContents)
A Step in the Transaction Framwork can fire an Event ACTIVEStep_EVT_FIRE_STRING (see also section ’Programming a Transaction Framework’ on page 44) with an input parameter. This Event is fired into the Internet page by use of OnStepEvent.
Event Meaning
462 May 2008
Scripting
BeforeRunComplete(short sRetCode)
This event is fired, when a Step returns in Web-Exten-sions/HyperLink architecture or when a DoDialog() is called in Web-Extensions/ClassicLink architecture before the Contents STD/ATM Control starts its work.
sRetCode:0 ...19 = Returncode of Steps (only for Web-Extensions/HyperLink)20 = PIN entry OK21 = PIN entry error22 = PIN enty canceled25 = Data entry OK26 = Data entry error27 = Data entry canceled
Event Meaning
May 2008 463
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
AfterRunComplete(short sRetCode, BSTR bstrURL)
This event is fired, when a Step returns in Web-Exten-sions/HyperLink architecture or when a DoDialog() is called in Web-Extensions/ClassicLink architecture after the Contents STD/ATM Control has finished its work.
sRetCode:0 ...19 = Returncode of Steps (only for Web-Extensions/HyperLink)20 = PIN entry OK21 = PIN entry error22 = PIN enty canceled25 = Data entry OK26 = Data entry error27 = Data entry canceled
bstrURL for Web-Exten-sions/HyperLink:sRetCode 0 -19:Name of Internet page configured for the Steps returncode (only for Web-Extensions/HyperLink)sRetCode 20, 25:Name of Internet page for Continue with HTML page property.sRetCode 21, 26:Name of Internet page for EPP error HTML page property.sRetCode 22, 27:not set.bstrURL for Web-Exten-sions/ClassicLink:sRetCode 20, 25:PCEvt:RC=0sRetCode 21, 26:PCEvt:RC=-2sRetCode 22, 27:not set.
Event Meaning
464 May 2008
Scripting
OnSoftkeyPressed(BSTR bstrSoftkey)
This event is fired, when a softkey or functionkey of the EPP is pressed. bstrSoftkey may be "F1" to "F8" or "Confirm", "Correct", "Cancel", "Help", "Print".
OnKeyPressed(long lKey) This event is fired, when a numeric key of the EPP is pressed. lKey may be the ASCII value of 0 to 9 (48-57), 262144 for the key left of the 0 and 32768 for the key right from the 0.
OnPinKeyPressed(long lKey) This event is fired, when a numeric key of the EPP is pressed during PIN entry. lKey contains the replacement charcter from the CEN/XFS interface (268435456).
Property Meaning
int NewWindowTop x position (from upper left corner of the screen) of popup window for help messages
int NewWindowLeft y position (from upper left corner of the screen) of popup window for help messages
int NewWindowWidth Width of popup window
Event Meaning
May 2008 465
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
Button control:
int NewWindowHeight Height of popup window
int CTRLstatus Control initialisation status:If the Contents STD/ATM Control is loaded, this property may contain a 0 or a 1.
0 means, the control is initialized, but it is only allowed to call functions related to ProTopas (like Beeping).It is not allowed to navigate!
1 means, that it is now even allowed to navigate, because all initialization routines in the control are finished completely.
All other values mean there is an error in the control initialization.
Method Meaning
void PressButton() This method may be used to select a radio button or a button which is configured as a checkbox.
Property Meaning
466 May 2008
Scripting
void SetFocusToButton()void TriggerControl()
These methods may be used to select a button in script. The button will be pressed and released a second later. First the focus has to be given to the button by use of SetFo-cusToButton() and then the TriggerControl() method has to be called.
void EnterViewState (short ViewState)
This method may be used to change the state of the button:0: Up state1: Pressed state2: Disabled state3: Invisible state
Property Meaning
BSTR Text This property changes the caption of the button.
BSTR Font This property changes the font of the caption of the button.
short TextSize This property changes the font size of the caption.
short TextAlignX This property changes the X alignment of the caption.
short TextAlignY This property changes the Y alignment of the caption.
BOOL TextBold This property changes the caption font attributes to bold.
BOOL TextItalic This property changes the caption font attributes to italic.
BOOL TextUnderline This property changes the caption font attributes to underline.
BOOL TextStrikeout This property changes the caption font attributes to strikeout.
Method Meaning
May 2008 467
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
BSTR Href This property changes the HTML page to which the Dialog is to navigate after this button has been triggered.
BSTR ImageUp This property changes the image for the up state.
BSTR ImageDown This property changes the image for the down state.
BSTR ImagePressed This property changes the image for the pressed state.
BSTR ImageDisabled This property changes the image for the disabled state.
BSTR Icon This property changes the icon for the up state.
BSTR IconDisabled This property changes the icon for the disabled state.
Property Meaning
468 May 2008
Scripting
Edit control:
Method Meaning
void TriggerControl() This method may be used to select an input field in script.
void SetContents(BSTR Contents)
This method may be used to prefill data in an edit field or to empty an input field.
void Backspace() This method may be used to clear the character to the left of the cursor in script.
void Confirm() This method may to used to confirm an input in script. The check is then performed.
void SetSe-lection(short sStart, short sEnd)
This method may be used to highlight a portion of input text in an edit control with the cursor. If the customer now inserts any character these portion will be replaced by the input.Cursor at end of marker: (0,3)Cursor at beginning of marker: (3,0)Select all: (0,-1)Deselect all: (-1,0)
Short Correct() This method may be used to clear the complete edit field content at once in script.The function returns the number of deleted characters.
Property Meaning
BSTR Instruction This property changes the instruction hint of the edit field.
BSTR CaptionText This property changes the caption of the edit field.
BSTR CaptionFont This property changes the font of the caption of the edit field.
May 2008 469
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
short CaptionSize This property changes the font size of the caption of the edit field.
long CaptionColour This property changes the font colour of the caption.
long CaptionColourDisabled This property changes the font colour during disabled state of the caption.
short CaptionAlignX This property changes the X alignment of the caption.
short CaptionAlignY This property changes the Y alignment of the caption.
BOOL CaptionBold This property changes the caption font attributes to bold.
BOOL CaptionItalic This property changes the caption font attributes to italic.
BOOL CaptionUnderline This property changes the caption font attributes to underline.
BOOL CaptionStrikeout This property changes the caption font attributes to strikeout.
BSTR InputFont This property changes the font of the input field of the edit field.
short InputSize This property changes the font size of the input field of the edit field.
long InputColour This property changes the font colour of the input field.
long InputColourDisabled This property changes the font colour during disabled state of the input field.
short InputAlignX This property changes the X alignment of the input field.
short InputAlignY This property changes the Y alignment of the input field.
BOOL InputBold This property changes the input field font attributes to bold.
Property Meaning
470 May 2008
Scripting
BOOL InputItalic This property changes the input field font attributes to italic.
BOOL InputUnderline This property changes the input field font attributes to underline.
BOOL InputStrikeout This property changes the input field font attributes to strikeout.
short InputCharMax This property changes the maximum number of characters which may be entered in this Edit control.
BSTR ImageUp This property changes the image for the up state.
BSTR ImagePressed This property changes the image for the pressed state.
BSTR ImageDisabled This property changes the image for the disabled state.
BSTR IconUp This property changes the icon for the up state.
BSTR IconDisabled This property changes the icon for the disabled state.
Property Meaning
May 2008 471
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
List control:
Method Meaning
void TriggerControl() This method may be used to select a list control in script.
void SetContents(BSTR Contents)
This method may be used to prefill data into a list control or to empty a list control.
Property Meaning
BSTR Instruction This property changes the instruction hint of the list control
BSTR CaptionText This property changes the caption of the list control.
BSTR CaptionFont This property changes the font of the caption of the list control.
short CaptionSize This property changes the font size of the caption of the list control.
long CaptionColour This property changes the font colour of the caption.
long CaptionColourDisabled This property changes the font colour during disabled state of the caption.
short CaptionAlignX This property changes the X alignment of the caption.
short CaptionAlignY This property changes the Y alignment of the caption.
BOOL CaptionBold This property changes the caption font attributes to bold.
BOOL CaptionItalic This property changes the caption font attributes to italic.
BOOL CaptionUnderline This property changes the caption font attributes to underline.
BOOL CaptionStrikeout This property changes the caption font attributes to strikeout.
472 May 2008
Scripting
BSTR InputFont This property changes the font of the input field of the list control.
short InputSize This property changes the font size of the input field of the list control.
long InputColour This property changes the font colour of the input field.
long InputColourDisabled This property changes the font colour during disabled state of the input field.
short InputAlignX This property changes the X alignment of the input field.
short InputAlignY This property changes the Y alignment of the input field.
BOOL InputBold This property changes the input field font attributes to bold.
BOOL InputItalic This property changes the input field font attributes to italic.
BOOL InputUnderline This property changes the input field font attributes to underline.
BOOL InputStrikeout This property changes the input field font attributes to strikeout.
BSTR ImageUp This property changes the image for the up state.
BSTR ImagePressed This property changes the image for the pressed state.
BSTR ImageDisabled This property changes the image for the disabled state.
BSTR IconUp This property changes the icon for the up state.
BSTR IconDisabled This property changes the icon for the disabled state.
Property Meaning
May 2008 473
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
EPP Control:
ActiveStep control
Method Meaning
BOOL KeyPress(short Key) This method may be used to simulate display of any character (Key) in EPP control in script.
void Correct() This method may be used to clear the input field of the EPP control completely.
Property Meaning
BSTR PinImage This property changes the image of the EPP graphic.
BSTR CaptionText This property changes the caption text of the EPP control.
Method Meaning
short ProcessStep (BSTR SelectedStep)
This method may be used to call a Step (SelectedStep) of the Trans-action Framework without using the Contents STD control.
short ProcessStep2 (BSTR SelectedFramework, BSTR SelectedStep, BSTR Select-edParameter)
This method may be used to call a Step (SelectedStep) of the SelectedFramework and add the input parameter SelectedPar-ameter without using the Contents STD control.
void OnUnload() This method cancels a running Step. It should be called when the dialog navigates to another Internet page.
void End() This method cancels a running Step when a new browser instance is started
474 May 2008
Scripting
void Restart() This method restarts a Step after a popup window has been closed.
void Silent() This method switches all events off, a running Step may fire. No event notification will be received in the current page.
Event Meaning
RunComplete (short Returncode)
This event reports the Returncode from the Step.
StepEvent (BSTR String) Self defiend event number 10 may be fired in a step. It may contain an input parameter. This interface may be used to receive any event from a step in an Internet page.
Property Meaning
BSTR StepSelection This property may contain the Step to be called.
BSTR Framework This property may contain the Framework (only CCTransactionFW or CCServiceFW) which contains the step from property StepSe-lection. This property will be deleted with event End(), OnUnload() or OnRunComplete.
BSTR StepParameter This Property contains the input parameter data from step StepSe-lection. This property will be deleted with event End(), OnUnload() or OnRunComplete.
Method Meaning
May 2008 475
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
Active DataDictionary Control
short ReturnCode Copy from the Step RC. Will be deleted at ProcessStep() or ProcessStep2()
short Status Status:ACTIVESTEP_NOT_OPERATIONAL(0)ACTIVESTEP_OPERATIONAL (1)ACTIVESTEP_STEP_RUNNING(2)ACTIVESTEP_STEP_RUNNING_AND_FIREING_EVENTS (3)
Method Meaning
short GetBYTE(long Index) This method may be used if a binary value is to be read by the Data Dictionary. The byte at position Index will be retrieved.
The return codes of this method may be: -2001: GENERAL_ERROR-2007: INDEX_ERROR-2008: GETBYTEMUSTBEARRAY-2002: VARNAMEEMPTY
short ResetVariable() The data is reset. The property does not contain any input. VariableTyp is set to CCDATADICTFW_PROPERTY_NOT_SUPPORTED.
Property Meaning
BSTR VariableName The property contains the name of the Data Dictionary variable.
VARIANT VariableValue The property contains the value of the Data Dictionary variable.
Property Meaning
476 May 2008
Scripting
short VariableTyp (read only)
The property contains the type of variable:0: BOOL1: CHAR2: UCHAR3: SHORT4: USHORT5: LONG6: ULONG7: STRING8: BINARY
Additionally the return code from getting a variable can be retrieved with this function:-1: PROPERTY_NOT_SUPPORTED-2: BUFFER_TOO_SMALL-3: BUFFER_TOO_LARGE-4: PROPERTY_NOT_SET-5: GET_PROPERTY_NOT_SUPPORTED-6: SET_PROPERTY_NOT_SUPPORTED-7: RESET_PROPERTY_NOT_SUPPORTED-8: INDEX_OUT_OF_RANGE-10: DATADICTFW_ERROR-11: DATADICTFW_FRAMEWORK_NOT_FOUND-12: ATADICTFW_FUNCTION_NOT_SUPPORTED-13: DATADICTFW_FORMAT_NOT_SUPPORTED-14: DATADICTFW_VALUE_OUT_OF_RANGE-16: DATADICTFW_RC_FORMAT_ERROR...
Property Meaning
May 2008 477
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
short VariableTyp (read only) continue...
...-2001: GENERAL_ERROR-2002: VARNAMEEMPTY-2003: CANTLOADFRAMEWORK-2004: TYP_NOT_SUPPORTED-2005: SET_BINARY_MUSTBE_ARRAY-2006: INDEX_SYNTAX_ERROR-2007: INDEX_ERROR-2008: GET_BYTE_MUST_BE_ARRAY-2100: EXCEPTION_AT_GET_BOOL-2101: EXCEPTION_AT_GET_CHAR-2102: EXCEPTION_AT_GET_UCHAR-2103; EXCEPTION_AT_GET_SHORT-2104: EXCEPTION_AT_GET_USHORT-2105: EXCEPTION_AT_GET_LONG-2106: EXCEPTION_AT_GET_ULONG-2107: EXCEPTION_AT_GET_STRING-2108: EXCEPTION_AT_GET_BINARY-2109: EXCEPTION_AT_SET_BOOL-2110:EXCEPTION_AT_SET_CHAR-2111: EXCEPTION_AT_SET_UCHAR-2112: EXCEPTION_AT_SET_SHORT-2113: EXCEPTION_AT_SET_USHORT-2114: EXCEPTION_AT_SET_LONG-2115: EXCEPTION_AT_SET_ULONG-2116: EXCEPTION_AT_SET_STRING-2117: EXCEPTION_AT_SET_BINARY
long VariableIndex (read only)
The property contains the index of an array variable.
long VariableLength (read only)
The property contains the length of the contents of the variable. Use it with string and binary variables.
Property Meaning
478 May 2008
Scripting
short AutoGetOnVariable-NameChange
The Get() function for getting the content of the property is performed0 - (default) when the VariableName is set.1 - once not after setting VariableName-1 - always not after setting the VariableName
bool ErrorLogging This function switches on or off the error logging of the control0 - logging switched off1 - logging switched on (default)If logging is switched off the logging should be performed in the script itself. The property VariableTyp will always contain the number of the error, if its value is negative.
Property Meaning
May 2008 479
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
ActiveVariable Control
Method Meaning
short SetLongValue() This method is used to set a long value.Possible return values:CCVARFW_OK (0)CCVARFW_VAR_NOT_FOUND (-1)CCVARFW_VAR_TOO_SMALL (-2)CCVARFW_ERROR (-10)
short SetStringValue() This method is used to set a string value.Possible return values:CCVARFW_OK (0)CCVARFW_VAR_NOT_FOUND (-1)CCVARFW_VAR_TOO_SMALL (-2)CCVARFW_ERROR (-10)
short GetLongValue() This method is used to get a long value.Possible return values:CCVARFW_OK (0)CCVARFW_VAR_NOT_FOUND (-1)CCVARFW_VAR_TOO_SMALL (-2)CCVARFW_ERROR (-10)
short GetStringValue() This method is used to get a string value.Possible return values:CCVARFW_OK (0)CCVARFW_VAR_NOT_FOUND (-1)CCVARFW_VAR_TOO_SMALL (-2)CCVARFW_ERROR (-10)
Property Meaning
BSTR VariableName The property contains the name of the Data Dictionary variable.
BSTR VariableValue The property contains the value of the Data Dictionary variable.
480 May 2008
Scripting
ActivePTSniff Control
Method Meaning
boolean StartSniff() This Function starts the Sniffer. The function does only have to be called, when the property AutoStart is set to False(0) or when the AddSniff() function shall not be used.
boolean StopSniff() This function stops the Sniffer.
boolean AddSniff(BSTR strFramework)
This function adds a framework to the list of sniffed frameworks and automatically starts sniffing this framework.
boolean RemoveSniff(BSTR strFramework)
This function removes a framework from the list of sniffed frameworks.
boolean StartKeepAlive(long lInterval)
Only in external Page mode: This function stops the timeout monitoring and pauses for the specified time in milliseconds. After this the original timeout is restarted.
boolean StopKeepAlive() Only in external Page mode: The StartKeepAlive() is canceled and the original timeout will be restarted.
boolean IsRunningSniff() This method can be used to request if some frameworks are being sniffed.
boolean IsRunningKeep-Alive()
This method can be used to request if the original timeout in external page mode is paused.
May 2008 481
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
Property Meaning
boolean AutoStart This parameter is responsible to start the Sniffer automatically. So the function StartSniff() does not have to be called. 0 = False, any other value True.
BSTR Frameworks (set only in the properties of the control)
This property must be used in the property list of the control only. It makes sense to use this, when the framework should be sniffed at start automatically. If more than one framework should be loaded the separator is the ;
BSTR FrameworksRunning (get)
This property contains all Frame-works, which are activated to be sniffed by AddSniff(Framework) or by directly writing it to the Frame-works property.
482 May 2008
Scripting
Event Meaning
PTEvent(BSTR strSender, short sID, short sData-Length, VARIANT byteData, BSTR strData )
This event is fired, when a sniffed framework is fireing any kind of event. strSender is the FrameworkName,sID is the event number,sdataLength is the lenght of the variable data buffer,byteData represents the strucured variable data as an array of bytes. In scripts these data have to be mapped into the datafield individ-ually,strData is the string representation of the byteData mapped by use of ’% 3i’ (111,11,1 -> ’111 11 1).
PTRegistred(BSTR strFramework)
This event is fired, when any framework is added to the list of sniffed frameworks. This may happen when the framework to be sniffed is set automatically at start or by use of AddSniff().
PTDeregistred(BSTR strFramework)
This event is fired, when any framework is removed from the list of sniffed frameworks by use of RemoveSniff().
SNIFFStart() This event is fired, when the first framework Sniffer is started.
SNIFFStop() This event is fired, when the last framework Sniffer is stopped, so there is no more framework to be sniffed.
May 2008 483
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
KeepAliveStart() This event is fired, when the Start-KeepAlive() function has been called.
KeepAliveStop() This event will only be fired, when StartKeepAlive() has been activated. This event is fired, when the StopKeepAlive() function has been called, when the StartKeep-Alive() timer expired, or when StartKeepAlive() is still running and the PTSniff object is being destroyed.
Event Meaning
484 May 2008
Scripting
ActiveRegistry Control
Method Meaning
long toLONG() This method is used to convert eighter numerical strings (for REG_SZ parameter) into a long value or an ulong value into a long value (for REG_DWORD parameter)
BSTR toSTRING() This method can be used to convert the value of the read parameter into a string value, if it has been read out of a REG_DWORD parameter.
Property Meaning
BSTR Name (get/set) This property must be set to the name and path of the parameter in the registry. The base path is HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\Protopas\CurrentVersion\. The path from there must be part of the parameter name. it is allowed to read REG_DWORD and REG_SZ parameter only. REG_BINARY is not supported.
VARIANT Value (get) The content of the parameter will be in this property, after the Name property has been set. The property is of type variant. To convert these values into long or string use the methods toLong() or toString()
May 2008 485
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
BSTR Root (get/set) This property contains the default base path of the registry HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\Protopas\CurrentVersion\. It can be changed. Keep in mind to configure a \ as last character.
BSTR Type (get) The Type property may be used to check what type the property is. It may be NUMERIC, STRING or UNKNOWN. If it is UNKNOWN eigher the name of the parameter is wrong or it does not contain a value.
Property Meaning
486 May 2008
Scripting
WXPTBridge Control
Method Meaning
short PTFunction(BSTR strFW, short sID, BSTR strParam1, short sLen1, BSTR strParam2, short sLen2, BSTR strParam3, short sLen3, long lIndex)
Call functions over ProTopas Bus asynchrony, its check input param-eters, convert it to byte arrays, and calls FrmAsyncResolve intern, return value is error or index of job. (see also section ’PTFunction’ on page 388)
short RegisterFor-Events(BSTR strFW)
Try to register for events from a target framework. (see also section ’RegisterForEvents’ on page 393)
short DeregisterFor-Events(BSTR strFW)
Try to deregister for events from a target framework. (see also section ’DeregisterForEvents’ on page 395)
BSTR ConvStr2Hex(BSTR strData)
Convert input String to a Byte array string in HEX format. (see also section ’ConvStr2Hex’ on page 396)
BSTR ConvHex2Str(BSTR strData)
Convert input String from Byte array string in HEX format to normal String. (see also section ’ConvHex2Str’ on page 397)
BSTR testErrors(short eID) Test interface for throwing all internal errors. Increment the Bridg-eErrors property. There will be a error log and mostly the Bridg-eError Event will be fired!
May 2008 487
Scripting
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
void Log(BSTR strLog, short sLogType)
Log into Trace Log or Error LogstrLog = Text to logsLogType = 0: Log to Trace (bit10)=1: Log to Error log (Number 0x64)
BSTR GetWXText(BSTR strIndex, BSTR strDefault, BOOL bErrorLog)
With this function the language specific texts from the PCHTMLGen section can be loaded into the script.strIndex is the registry parameter to get, strDefault may be used to define a default message, if the parameter does not exist. bErrorLog may be set to false or true. Setting it to true fill force an error log if the parameter does not exist.
Property Meaning
BSTR PTName The name of this ProTopas Framework! At creation time the object is searching for a free name. The name can be from WX_PTBRIDGE_000 to WX_PTBRIDGE_999! If there are some problems the name will be WX_PTBRIDGE_ERROR! (see also section ’PTName’ on page 406)
BSTR ListeningForEvents The blank separated list of sniffed Frameworks! (see also section ’ListeningForEvents’ on page 406)
short BridgeStatus Status of the Bridge object. (see also section ’BridgeStatus’ on page 406)
long BridgeErrors Counter of the errors. (see also section ’BridgeErrors’ on page 407)
Method Meaning
488 May 2008
The Active VarFW control Scripting
The Active VarFW control
VarFW has been developed to exchange data between scripts on the HTML page and the business modules. This is another ActiveX control. It reads from the Variable Framework and writes to it. Both string variables and long variables can be read and set. Different access functions are provided for this.
First, the Active VarFW control has to be created on the HTML page for which scripts are intended to be used to exchange data with the Variable Framework:
<object ID="varFW" WIDTH="100" HEIGHT="51" CLASSID="CLSID:7E4AA518-12D9-11D1-934B-0000E8A6CB06">
<param name="_Version" value="65536"><param name="_ExtentX" value="2646"><param name="_ExtentY" value="1341"><param name="_StockProps" value="0">
</object>
Event Meaning
PTEvent(BSTR strFW, short sID, BSTR strData)
Fire the incoming ProTopas event to a COM. Prototype of PTEvent is mapping of ProTopas CCFrameWork class OnFrmEvent function. (see also section ’PTEvent’ on page 402)
void PTCallback(short sID, BSTR strParam1, BSTR strParam2, BSTR strParam3, long lIndex)
This event will be fired when OnFrm-Request with ID: 91-98 is incomming
PTFunctionEnd(short sIndex, short sRet, BSTR strParam1, BSTR strParam2, BSTR strParam3)
Fire at the end of PTFunction and give back a return values, the return code and the output parameters! (see also section ’PTFunc-tionEnd’ on page 403)
BridgeError(short eID) Fires the error ID when internal error occurred! (see also section ’Bridg-eError’ on page 404)
May 2008 489
Scripting The Active DataDict control
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
This control is invisible at runtime and cannot and must not be parameterized in FrontPage. The name of the variable that is to be read or set is notified to the Control in the script under VariableName. Under VariableValue, either the value can be read out or a value can be set. This results in the following scripts:
Reading a string variable
varFW.VariableName = "VAR_VARIABLE_S"if varFW.GetStringValue() = 0 then
strVariable = varFW.VariableValueend if
Reading a long variable
varFW.VariableName = "VAR_VARIABLE_L"if varFW.GetLongValue() = 0 then
lVariable = varFW.VariableValueend if
Setting a string variable
varFW.VariableName = "VAR_VARIABLE_S"varFW.VariableValue = strVariableif varFW.SetStringValue() <> 0 then
alert ("error")end if
Setting a long variable
varFW.VariableName = "VAR_VARIABLE_L"varFW.VariableValue = lVariableif varFW.SetLongValue() <> 0 then
alert ("error")end if
The Active DataDict control
Active DataDict control has even been developed to exchange data between scripts on the HTML page and the Steps. It reads from the Data Dictionary Framework and writes to it. All variable types which are available in the Data
490 May 2008
The Active DataDict control Scripting
Dictionary may be accessed. Use is easier than the use of the Active Variable Framework. The developer must not use different function calls for setting or getting different types of variables.
First, the Active DataDict control has to be created on the HTML page for which scripts are to be used to exchange data with the Data Dictionary:
<object ID="ActiveDataDictFW1" WIDTH="100" HEIGHT="51" CLASSID="CLSID:B2ED2838-FD46-11D2-961D-0800060BD9E4">
<param name="_Version" value="65536"><param name="_ExtentX" value="2646"><param name="_ExtentY" value="1341"><param name="_StockProps" value="0"><param name="BufferSize" value="4096">
</object>
This control is invisible at runtime and cannot and must not be parameterized in FrontPage. The name of the variable that is to be read or set is notified to the Control in the script under VariableName. Under VariableValue, either the value can be read out or a value can be set. When the VariableName is set, the value is automatically read from the Data Dictionary. By setting Variabl-eValue the value is automatically stored in the appropriate Framework. This results in the following scripts:
Reading a variable
ActiveDataDictFW1.VariableName = "VAR_VARIABLE_L"myVariable = ActiveDataDictFW1.VariableValueif ActiveDataDictFW1.VariableTyp < 0 then
alert ("error")end if
Setting a variable
ActiveDataDictFW1.VariableName = "VAR_VARIABLE_S"ActiveDataDictFW1.VariableValue = myVariableif ActiveDataDictFW1.VariableTyp < 0 then
alert ("error")end if
Arrays of variables are using the syntax:ActiveDataDictFW1.VariableName = "VAR_ARRAY_S[0]"
May 2008 491
Scripting ActivePTSniff Control
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
Adapting the maximum buffer size
The buffer size for strings is set to 4096 in default. If it is necessary to work with bigger buffers, please set property BufferSize to the maximun value necessary. Biggest size may be 32kb.
ActivePTSniff Control
This control may be used to receive any kinds of ProTopas events in an HTML page. So it is possible to create scripts which start when a ProTopas event has been fired. The easiest way to activate this mechanism is to set the ProTopas Framework name into the property Frameworks. After load of the page the Control is activated and starts sniffing. All events from the required Framework will be received by the PTEvent event now. With the help of the Parameter from this function, the Events can be separated from each other. Additionally the timer during the external page mode can be suspended with this control. This can be useful, if some pages should get a longer timeout than others.
ActiveRegistry Control
The ActiveRegistry Control can be used to read Parameter values from the registry. It is possible to read REG_SZ and REG_DWORD parameter only. REG_BINARY is not supported.
The syntax is similar to the one from the ActiveDataDictionary Control. The parameter name to get its value from must be set into properties of the control. After that the value Property might be used to read the value. Two methods may be used to to convert the values into a string or a long value for scripting in the page.
Reading a REG_SZ Parameter
ActiveRegistry1.Name="CCOPEN\\MYREGS\\MYREGSZ";
if (ActiveRegistry1.Type == "STRING"){
myString = ActiveRegistry1.Value;}else
492 May 2008
ActiveRegistry Control Scripting
{//Error Handling here
}
Reading a REG_DWORD parameter
ActiveRegistry1.Name="CCOPEN\\MYREGS\\MYREGDWORD";
if (ActiveRegistry1.Type == "NUMERIC"){
myLong = ActiveRegistry1.Value;myLong = ActiveRegistry1.toLONG();
}else{
//Error Handling here}
The type Property may be UNKNOWN, when the Parameter does not exist. It will be STRING or NUMERIC for REG_SZ or REG_DWORD Parameter. The ToLong() method may be used to convert the values from ULONG to LONG. This may be necessary to get negative values, if the values are meant to be negativ. The property Name does contain the parameters name and path starting from the Root property. Setting the Name will delete Name, Value and Type properties, build the full path, open the key and check its value, name and type of the registry. Getting the Value will query the data and close the key.
The Value property does contain the contents. Value is a VARIANT repre-senting the data. To check it’s type use the Typeof() function from javascript. It can be undefined, string or number.
The root property does contain the root path HKEY_LOCAL_MACHINE\SOFTWARE\Wincor Nixdorf\Protopas\CurrentVersion\ and may be changed, if necessary. Root is usefull for making the key name smaller. The ending \ has to be submitted. Parameters in the following primary keys are allowed: HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CLASSES_ROOT, HKEY_CURRENT_CONFIG, HKEY_CURRENT_USER, HKEY_PERFORMANCE_DATA, HKEY_DYN_DATA.
the ActiveRegistry Control is using 788 ted and rch files. There are no error logs at the moment.
May 2008 493
Scripting WXPTBridge Control
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
WXPTBridge Control
WXPTBridge is an HTML/script to ProTopas bridge implemented as a mix of ProTopas Framework and MFC ActiveX control.
Primary targets:
– connect: dynamic HTML with a ProTopas world.
– stability: all ProTopas function calls are asynchrony!
– performance: only minimum interface is supported!
– Security: in/out parameters checks, not self running!
– Error handling: errors recognise, error report, error count.
WXPTBridge object is ProTopas framework that can be multi instanced. Its logical name is WX_PTBRIDGE_000 to WX_PTBRIDGE_999. There can be up to 1000 instances of WXPTBridge! It can be instanced only from one ActiveX container. This container should provide ProTopas Bus instance!
WXPTBridge is a Byte array transporting device. On a HTML side its using a Byte arrays as String in HEX format, for easy scripting, on a ProTopas its using Byte arrays and void pointers!
All ProTopas Functions and Events are handled in a working threads and the results are fired in a container’s WXPTBridge creation thread through WND messages. So in case of IE as a container the Main thread, where all objects from HTML are created, is not blocked with ProTopas processing!
Scripting a Control
If a Button control shall not be supervised by the Contents STD/ATM Control, but it shall be used for scripting, the value 0 has to be set into the property FieldID on property page General2. In this case the interface functions of the button control do not affect the Contents STD/ATM Control. Itstead scripts have to be written, which are receiving the ButtonPressed Event, etc.
There may be more than only one button Control with FieldID 0 at one Internet page.
494 May 2008
Logging into Error/Trace Log or Journal by Script Scripting
The same handling work with the Edit and List Control, if the property sequence number on property page General2 is set to 0.
Logging into Error/Trace Log or Journal by Script
It is possible to log data into the Error Log and Trace Log or in Journal by script. There are two interfaces: Either the PCContents.Log() method may be used or window.navigate() method with a reserved keyword. The different methods are explained here in this chapter:
Write an Error entry
Use of window.navigate("WNerror:Text");
The navigate method is using the Keyword WNerror: with the text to be written to the error log direct behind it. This text is appearing in the Add: section of an error entry.
Use of PCContents.Log( "Text", 2)
With the Log() method there are two parameters to be filled. The first is the text to be written into the Add: section of an error entry and the second must be a static 2 for logging into an error log.
The error entry is as follows:
10/17 020823 19:50:45.01 TRCERR CC_ENTRY PID:00000528.00000544 Data:131Type : RCH_ACT_USER_APPL_4 0x64Module : CCDlgFW (770) StClass: 0x6413Process: CCDialog.exeAPIName: HTML scriptStCode : CCDIALOG_GENERAL_ERROR (0x24000110)SrcName: PCBrowserWnd.cpp SrcLine: 645
Add : 'Text'
Write a Trace entry
Use of window.navigate("WNtrace:Text");
The navigate method is using the Keyword WNtrace: with the text to be written to the trace log direct behind it. The trace flag TBM 770 SHARE DEFAULT on 67 has to be activated.
Use of PCContents.Log( "Text", 1)
May 2008 495
Scripting Logging into Error/Trace Log or Journal by Script
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Scr
iptin
g.fm
With the Log() method there are two parameters to be filled. The first is the text to be written into a trace log and the second must be a static 1for logging into the trace log. The trace flag TBM 773 SHARE DEFAULT on 67 has to be activated.
The trace entry is as follows:
30 020823 19:50:44.28 CCDialogFW HTML_SCRIP PID:00000528.00000544 Data:4Text
Write a Journal entry
Use of window.navigate("WNjournal:1050WEBEXT_SEPText");
The navigate method is using the Keyword WNjournal: with the entry to be written to the journal direct behind it. The entry needs to start with a journal number, a separator WEBEXT_SEP and the variable text to be filled into the journal define under this journal number. If more than one variable text shall be written a new separator and variable text must be added at the end.
Use of PCContents.Log( "1050WEBEXT_SEPText", 3)
With the Log() method there are two parameters to be filled. The first is the entry to be written into a journal and the second must be a static 3 for the journal entry. The entry needs to start with a journal number, a separator WEBEXT_SEP and the variable text to be filled into the journal define under this journal number. If more than one variable text shall be written a new separator and variable text must be added at the end.
The journal define in the registry is as follows:
@005 @001 Web message:'#1#'#NL#
This journal entry is the result:
19:50:42 1050 Web message:'Text'
496 May 2008
Logging into Error/Trace Log or Journal by Script Scripting
May 2008 497
Control of the ADA service
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
Control of the ADA service
General idea
The general idea of the ADA service is to create a possibility of using self-service applications by persons with disabilities. The ADA service gives chosen text to a text-to-speech engine which then would be read out. To specify which text should be read out the ADA service must be configured. Furthermore you can configure the starting method and a special timeout extension which increases the timout on pages using ADA.
Requirements
To activate ADA the ProTopas ADA Framework, EPPRC Framework, Special Electronics Framework and TTS Framework have to be loaded. For more details please refer to: ProTopas Module Construction Kit Programming Guide, chapter Frameworks, ADA Framework (since Version 4.1). ProTopas/Manager Version 4.1 and CEN/XFS SIU30 Service is needed at least .
Configuration
The configuration for the ADA Framework is listed in the ProTopas Module Construction Kit documentation. Additionally the following two Param-eters have to be set:
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
Current VersionActiveX
GraphicalServiceCCDialog
ADA=1 (Dword)EPPRTC=1 (Dword)
498 May 2008
Starting the service Control of the ADA service
Starting the service
Start/Stop of the ADA service
To start the ADA service you have to activate the checkboxes Epp RTC ’Start’, Command ’Idle’ and Tutorial ’Allow tutorial start’ (with one of its options) on the ADA configuration panel on the starting page, i.e. the first page of the appli-cation. If you don’t want to use a special starting event, then you have to activate the checkbox Command ’Start’ instead of Command ’Idle’.
To stop the ADA service you have to activate the checkboxes Epp RTC ’Stop’ and Command ’Stop’ on the last page of the application.
In some cases the first and the last page are identical. Therefore you need the Command ’Idle’ and ’Stop’ on this page because it is the first page at the beginning of each transaction and it is the last page at end of the transaction, too.
Tutorial
If the Command ’Idle’ is used the service needs a special start event to be started. In this case starting the service and starting the text-to-speech support are not the same. The Command ’Idle’ starts the service which waits for a start event. Only the configured start event starts the text-to-speech support. For this case the text-to-speech support is also called the tutorial.
To allow starting the tutorial from additional pages, you only have to activate the checkbox Tutorial ’Allow tutorial start’ (with one of its options) on these pages.
It is mandatory to activate ’Allow tutorial start’ in one of the pages after the ADA command is started, because a good ADA implementation needs an Tutorial mandatory. Otherwise no text will be spoken. If no Tutorial shall be spoken in the application, please configure ’Allow tutorial start’ with option ’skip’.
Starting Events
There are two possibilities of starting the service. You can either set a special key sequence or you can enable the ADA Framework to wait for phones plugged in to start the service.
KEY_SEQUENCE: determines which key sequence causes the ADA mode to be started. The sequence is specified by a non-empty comma separated list of key codes.
May 2008 499
Control of the ADA service Starting the service
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
PHONES_PLUGGED: determines whether the ADA mode is started when headphones are plugged into the jacket.
The starting events will be configured in the registry.
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
Current VersionADA
CCADAFWSTART_EVENTS
KEY_SEQUENCE = FUNCKEY_1,FUNCKEY_2,FUNCKEY_3
PHONES_PLUGGED = YES
500 May 2008
Default start values Control of the ADA service
Default start values
These defaults are considered for English as default language! If you want to change the language you have to change the default text, too. For this case you should create another section in the registry under the proper language in PCHtmlGen.
Please take care to seperate the Macros (starting with WX...) from the rest of the text strings. This should be done by blanks. If Macros specify a unique identifier, there will not be a problem to seperate those parameter even by punctuation mark. For example WX.Button.Text: Text is not unique. because there are other parameter like TextLayer... for the Button control. So if you add a punctuation mark without any blank, it will not find the proper parameter and not spek anything.
Entry Value
ADA 0
ADATimeoutExt 200
ADAActionOnStart SKIP
ADATextPageMenu You are in the WX.Contents.Page-Headline
ADATextPageHint WX.Contents.PageInstruction
ADATextPageContent WX.RT.p.WXADAContent.WXADA-Text
ADATextPageKeys WX.F.ActiveKeys
ADATextEditHint WX.Edit.Instruction!
ADATextEditContent You have entered WX.Edit.InputText, please confirm it!
ADAEchoButton WX.F.EchoKeys.all
ADAEchoEdit 0=null_WXSEP_1=one_WXSEP_2=two...
ADAEchoEPP Thanks
ADAMacroActiveKeys For WX.Button.Text press WX.But-ton.Softkey.
ADAMacroEchoKeys WX.Button.Text
May 2008 501
Control of the ADA service Default start values
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
On the other hand it is a problem at IBM ViaVoice to seperate a punctuation mark by a blank, because the voice engine will speak this sign like "exclamation mark". So please be careful in editing this parameters
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalService/PCHtmlGen/YourLanguage
ADAActionOnStart
This parameter describes the default Tutorial behavior of the service after a start event is recognized. There are three possibilities: SKIP, NAVIGATE and OPEN. Skip causes the service to skip the tutorial page and start directly. No param-eters are needed. Navigate causes the service to navigate to a new URL. The URL of the page has to be entered, too. Open causes the service to open a page ’in a new window’. On this page you can give some information about how to use the service and, more important, you can implement buttons to regulate some special things like the speech rate. The URL of the page and the position parameters are required. The syntax is ACTION+SEPARATOR+URL+SEPARATOR+POSITION-PARAMETERS. The separator is _WXSEP_.
Examples:
NAVIGATE_WXSEP_Tutorial.htm
OPEN_WXSEP_adatutorial.htm_WXSEP_left=50,top=50,width=500,height=500
502 May 2008
Macros Control of the ADA service
Macros
The macro syntax is Macro_Type.Object.Param, e.g. WX.Contents.PageHeadline. Macros could be used within a text, e.g. ’You are in the WX.Contents.PageHeadline menu’. In this case the macro must be separated from the text by blanks.
MACRO Type Action
WX. Special WebExtensions Object Macro
WX.F. Special WebExtensions Function Macro
WX.RT. Normal Real-Time HTML macro
OBJECT Action
Contents PCContentsCTRL
Button PCButton
Edit PCEdit
ActiveKeys Function macro (see also ’The macro ActiveKeys’)
EchoKeys Function macro (see also ’The macro EchoKeys’)
TAG.ID Normal HTML TAG with ID
PARAM used by Object
PageHeadline Contents
PageInstruction Contents
Softkey Button
Text Button
Text.1 ... n Button
Href Button
Function Button
FunctionValue Button
May 2008 503
Control of the ADA service Macros
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
Instruction Edit
InputText Edit
Numeric EchoKeys
Function EchoKeys
All EchoKeys
innerHTML RT specific
argument RT specific HTML TAG argument
PARAM used by Object
504 May 2008
Macros Control of the ADA service
Macro dependencies - some examples where to use several macros
Description of the important macros
WX.Contents.PageHeadline: This macro gives access to the Page Headline set by the PCContentsCTRL.
ADA configuration panel property Spec. Macro
Menu WX.Contents.PageHeadline
Hint WX.Contents.PageInstruction
TextPageContent WX.RT.p.WXADAContent.WXADA-Text
TextPageKeys WX.F.ActiveKeys
TextEditHint WX.Edit.Instruction
TextEditContent WX.Edit.InputText
EchoButton WX.F.EchoKeys.allWX.F.EchoKeys.numericWX.F.EchoKeys.function
EchoEdit No macros!
EchoEPP No macros!
MacroEchoKeys WX.Button.HrefWX.Button.FunctionWX.Button.FunctionValueWX.Button.TextWX.Button.Text.1WX.Button.Text.2...WX.Button.Text.n
MacroActiveKeys WX.Button.Softkey andWX.Button.HrefWX.Button.FunctionWX.Button.FunctionValueWX.Button.TextWX.Button.Text.1WX.Button.Text.2...WX.Button.Text.n
May 2008 505
Control of the ADA service Macros
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
WX.Contents.PageInstruction: Gives access to the Page Instruction of PCContentsCTRL
WX.F.ActiveKeys: Uses the macro ActiveKeys described below to read out the available buttons on the page.
WX.Edit.Instruction: This macro gives access to the Instruction Hint of the PCEdit.
WX.Edit.InputText: The text of the edit field would be read out after pressing confirm.
WX.Button.EchoKeys: Sets the echo of pressed buttons. The macro EchoButton would be used.
all: All pressed buttons would be echoed.
numeric: Numeric buttons [0-9] only would be echoed.
function: Only Function Keys [enter, confirm, cancel, help, print] would be echoed.
EchoButton
Here you can specify either one of the macros from the table above or the string ’0=null_WXSEP_1=one_WXSEP_2=two...’ With the string there is the possi-bility to configure only pats of the buttons or die suppress the spoken words completely.
EchoEdit
Here you can configure, which text shall be spoken by pressing an EPP key while an edit control is active. The string ’0=null_WXSEP_1=one_WXSEP_2=two...’ may be used to configure this.
EchoEPP
Here you can configure the output during a PIN input. This must be ’beep’, or any other word you like.
The macro ActiveKeys
The macro ActiveKey sets the output for the available buttons on the page. It uses several macros to get useful information about the button (see also section ’The Button control’ on page 80).
506 May 2008
Macros Control of the ADA service
WX.Button.Softkey: This macro scans the buttons for the softkey related to them.
WX.Button.Text: Gives access to the first text layer of the button (same as ...Button.Text.0).
WX.Button.Text.1 to ...Text.n: Gives access to the several text layers of the button, beginning with the second layer of the button.
WX.Button.Href: Gives access to the HTML page the button is linking to.
WX.Button.Function: The name of the Functionkey set on the PCButton property page would be read out.
WX.Button.FunctionValue: The value of the Functionkey set on the PCButton property page would be read out.
Please make sure that one of the Macros above are part of this ActiveKeys, because this macro need at least one button found by using one of the macros. It is not possible to fill plain text into this macro.
Another way to configure text for single buttons is to use the echo string and fill all active buttons by use of the follwong examle string:1=Account Service_WXSEP_2=Cash deposit_WXSEP_3=Cash...
Insted of fix text here like ’Account Sevice’, ’Cash deposit’, ... you may even use the WX.RT. runtime macros.
Please consider: To read out the text of the buttons, you have to decide which text layer (if more than one are used) should be read out.
Remember: ...Text or Text.0 (first layer or normal text)...Text.1 (second layer)...Text.2 (third layer)
...
The macro EchoKeys
This macro is nearly the same like the macro ActiveKeys, but it sets the echo which appears when a button is pressed.
May 2008 507
Control of the ADA service Privacy
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
The macro WX.RT.xxx
This macro is used to get the position of the text on a HTML page. The text can either be read out via innerHTML function or via argument function. But in every case the special tag and the ID must be set. In some cases the innerHTML function should not be used, especially when the text includes any HTML-specific tags like <br> which would be read out too.
Example innerHTML:
<p id="AccountNr>123456789</p>
To access the ’123456789’ use the macro WX.RT.p.AccountNr.innerHTML
Example argument:
<label id="AccountNr" number="987654321"></p>
To access the ’987654321’ use the macro WX.RT.label.AccountNr.number
Privacy
Some pages contain private content which should not be spoken through the system-speaker. In this cases you can use the privacy ability of the ADA service which disables the system-speaker output. The content would be spoken through the headphones only. If no headphones are plugged in no text would be spoken. To set the special content to privacy mode just activate the checkboxes HTML page overrides ’privacy’ on the ADA configuration panel and write the required text or macro in the textfield beneath it. To stop the normal output just activate the required checkbox on the ADA configuration panel and clear the textfield.
Scripting
Scripting is important to extend the default behavior of the ADA service, e.g. changing the language, the volume or the speech rate. It will be done over the ADAExec(strCMD) function of the PCContentsCTRL.
strCMD = strCommand + sep + strParam + ...sep = ’_WXSEP_’
508 May 2008
Scripting Control of the ADA service
Available commands with parameters and return values
Command Param 1 Param 2 Param 3 Retvalue[1]
Open
Close
Idle
Start
Stop
Reset
IsActive
Speak String Text Ushort Prio Ushort Pri-vacy
Speak Ushort MsgNr
CancelS-peak
SetLan-guage
String Lan-guage
GetLan-guage
String Lan-guage
SetVolume Ushort Vol-ume
GetVolume Ushort Vol-ume
IncreaseVol-ume
DecreaseVolume
CycleVol-ume
SetRate Short Rate
GetRate Short Rate
IncreaseR-ate
May 2008 509
Control of the ADA service Scripting
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
DecreaseR-ate
SetDefPri-vacy
Ushort Pri-vacy
GetDefPri-vacy
Ushort Pri-vacy
SetEcho Ulong CEN/XFS-Key
String Text
ResetEcho
Repeat-Command
Ushort RepeatType
Ushort Repeat-BufferLength
Command Param 1 Param 2 Param 3 Retvalue[1]
510 May 2008
Scripting Control of the ADA service
Parameter description and ranges
Parameter Meaning
Text any character string
Prio Priority class:0: Text will be queued1: Queue the text if a speech output with high priority is running, abandon any other running speech output2: Abandon any running speech out-put and use this new text for output
Privacy Privacy level:0: The text may be output over the system speaker1: The text must not be out-put over the system speaker
MsgNr Message Number:Number, which contains the output text and which is configured as regis-try parameter
Language Language (The engigne for this lan-guage must be installed. A list of the supported languages can be found in the documentation ProTopas module Contruction Kit in chapter ADA Framework
Volume The range for the volume is 0 ... 7
Rate The range for the rate is -10 ... 40
May 2008 511
Control of the ADA service Scripting
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
The ADAExec() function returns a variant array. The first element RetValue[0] contains the Return value from ADA Framework (see table below) and the second element RetValue[1] contains Return values listed in the table of Ada Commands above.
WOSAkey The list of keys is as follows:1: FUNCKEY_02: FUNCKEY_14: FUNCKEY_28: FUNCKEY_316: FUNCKEY_432: FUNCKEY_564: FUNCKEY_6128: FUNCKEY_7256: FUNCKEY_8512: FUNCKEY_91024: FUNCKEY_ENTER2048: FUNCKEY_CANCEL4096: FUNCKEY_CLEAR8192: FUNCKEY_BACKSPACE16384: FUNCKEY_HELP32768: FUNCKEY_DECPOINT262144: FUNCKEY_RES1
RepeatType(RepeatBufferLenght)
The repeat type is as follows:0: Delete the repeat buffer and set to default (11) behavior.1: Set to default behavior, which is 11 today.2: Clear the repeat buffer3: Get the size of the repeat butter. This will be retvalue[1] of the return buffer.11: Any spoken text will replace the old text from the repeat buffer12: The text will be accumulated and on unload of the page the buffer will be cleared.
Parameter Meaning
512 May 2008
Scripting Control of the ADA service
Retvalue[0] from ADA Framework
Error number for On Error Resume Next
Example VBScript
’NOTE: example is using alert to indicate action!’NOTE: WXCont shall be set to real PCContentsCTRL ID!’for error handlingOn Error Resume Next
SHORT Code
0 RC_OK
-1 RC_ERROR
-100 RC_IGNORED
-1000 RC_FW_NOT_FOUND
-1001 RC_FUNCTION_NOT_SUPPORTED
-1002 RC_BUS_ERROR
-1003 RC_TIMEOUT
-1004 RC_INVALID_FUNCTION_ARGUMENT
-1005 RC_EVENT_MANAGER_NOT_INSTALLED
-1006 RC_EVENT_MANAGER_ERROR
-2001 GENERAL ERROR
-2002 NO COMMAND FOUND
-2003 UNKNOWN COMMAND
HRESULT LONG HEX code
S_OK 0 0 OK
E_FAIL -2147467259 80004005 General Error
E_INVALIDARG -2147024809 80070057 Input params invalid
May 2008 513
Control of the ADA service DataDictionary-Scripting
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\A
DA
Ser
vice
Con
trol
.fm
’call func()myResult = WXCont.ADAExec ( "GetLanguage" )
’error checkif Err.Number = 0 then
’VARIANT check for Array (=8204)if VarType(myResult) = 8204 then
’check if function return code is okif myResult(0) = 0 then
’are there some input param?if UBound(myResult) > 0 then
’Language outputalert myResult(1)
end ifend if
end ifelse
’error handlingalert Err.Number’clean upErr.Clear()
end if
Example JavaScript
Please use the following function to get back an array in JavaScript:
var res = (new VBArray($C().ADAExec('GetLan-guage'))).toArray();
res[0] will contail the error code and res[1] the returned string (here: "en_US").
DataDictionary-Scripting
The default start values are stored in variables of the DataDictionary. You can change them via scripting if you need to.
DataDictionary variables Registry variables
WX_ADA_DEF_TIMEOUT_EXTENSION ADATimeoutExt
WX_ADA_DEF_TEXT_PAGE_MENU ADATextPageMenu
514 May 2008
DataDictionary-Scripting Control of the ADA service
Please consider: The changed values of the variables are stored permanent until the application is restarted!
ADA Status Variable
With the help of the ADA Status variable you can check if ADA is Active, Idle Stopped, etc. This is a Data Dictionary variable, which can be requested by the Active Data Dictionary Control in the HTML Pages.
WX_ADA_DEF_TEXT_PAGE_HINT ADATextPageHint
WX_ADA_DEF_TEXT_PAGE_CONTENT ADATextPageContent
WX_ADA_DEF_TEXT_PAGE_KEYS ADATextPageKeys
WX_ADA_DEF_MACRO_ACTIVEKEYS ADAMacroActiveKeys
WX_ADA_DEF_MACRO_ECHOKEYS ADAMacroEchoKeys
WX_ADA_DEF_ECHO_BUTTON ADAEchoButton
WX_ADA_DEF_ECHO_EPP ADAEchoEpp
WX_ADA_DEF_ECHO_EDIT ADAEchoEdit
WX_ADA_DEF_TEXT_EDIT_HINT ADATextEditHint
WX_ADA_DEF_TEXT_EDIT_CONTENT ADATextEditContent
DataDictionary variable Value
WX_ADA_STATUS 0 - ADA is OFF1 - ADA is Stopped2 - ADA is IDLE3 - ADA is Active, but Tutorial has not been played4 - ADA is running
DataDictionary variables Registry variables
May 2008 515
Customer Relationship Marketing
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Customer Relationship Marketing
General idea
The general idea of the CRM service is to make it possible to use additional GUI on top of running self-service applications. Stability and security are main goals for the CRM service. All components use Unicode and all ProTopas strings are UTF8 coded for multilanguage support.
Requirements
To use CRM, the ProTopas CCDataFW and CCDatDic frameworks have to be loaded. If the EPP services is used the EppRTC Framework has to be loaded. If the formating services are used in the variable exchange, the Format Frame-work has to be loaded. And finally if ADA service is used, the complete WebEx-tensions application has to be loaded. The Microsoft Internet Explorer 6 forms the basis of the user interface. It is essential for this program to be installed on the terminal device.
516 May 2008
Components of the CRM service Customer Relationship Marketing
Components of the CRM service
Architecture
The main components of CRM are CCCRM framework, HttpCtrl framework and CRMContentsCtrl framework. The CCCRM framework is implemented as a Uni-code MFC executable dialog and contains a HttpCtrl framework as an indepen-dent internal object. CRMContentsCtrl is implemented as a Unicode MFC ActiveX control.
The CRM uses a special type of parameter coding to ensure speed and the extendabilty of interfaces. Most parameters are strings with format:
CMD=ACTION_|_PARAM=SUBPARAM1=VALUE1_||_SUBPARAM2=VALUE2
CCDialog Framework
CCCrm Framework
Http Ctrl
MS Browser Ctrl
HTML page
CRM Contents
PCButton(s)
PCEdit(s)
COM
CRM Server(z.B. ProSales)
RequestResponse
DD Vars
CO
M
Pro
Topas
Pro
Topas
May 2008 517
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Note the main separator is _|_, the sub separator is _||_ and the equality sign is =. With this schema the method interface do not have to be changed when a new parameter is needed for some future extension!
In some cases, where the parameter set is finite and uniquely defined, the sep-arator sign for subparameters can be ",". For example:PARAM=SUBVALUE1,SUBVALUE2,SUBVALUE3
CCCRM framework
Release specification
Version 1.0 of CCCRM is released in an EXE named ’CCCRM.exe’.
Applications using this EXE have to include the file CCCRM.XPP.
Always start this EXE in a separat process!
Configuration
The logical name of the CRM Framework is ’CCCRM’.
Architecture
The CCCRM.exe is MFC dialog application. It contains:
CCCRM framework implementation
CCCRM_HTTP framework implementation
WebBrowser ActiveX object
Msxml2.XMLHTTP.3.0 ActiveX object
518 May 2008
CCCRM framework Customer Relationship Marketing
General idea
The CCCRM framework is GUI run in its own procces. The GUI is an HTML page shown in the internet explorer object. All navigations are disabled in the internet explorer object for security reasons. The loading and generating of pages is done in CCCRM_HTTP framework. The loading itself is done using an XMLHTTP object. The generated content is then written in the top HTML docu-ment of the internet explorer object. Frames and windows are not supported. There is always only HTML pages shown in the internet explorer object! The internet explorer object with HTML pages runs in the main thread of the appli-cation. All ProTopas methods and events are run in separate threads and do not interfere with GUI!
The CCCRM framework interface is designed for communication with external applications. It controls the CRM session and states visibility, position and run-ning time.
The CCCRM_HTTP framework interface is internal and there is no public inter-face! It controls the CRM session content and states loading, generating, show-ing and running in the internet explorer object.
CWinApp
CDialog
CCCRM
CWebBrowser2
HTML page
CCCRM_HTTP
Msxml2.XMLHTTP.3.0
May 2008 519
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
At the start, the CCCRM framework reads its default configuration, create a instance of WebBrowser with "about:blank" as initial page, loads and shows a default start HTML page. Then the CCCRM framework dialog is hidden and the framework is ready for use!
At the end of the session or when an error occurs, the state of the CCCRM and CCCRM_HTTP frameworks will be reset, the default start HTML page will be shown and the CCCRM framework dialog will be hidden. If this is not possible the CCCRM framework will be restarted over CCRM.
The CCCRM framework can constantly check the state of the main window and memory consumption, to prevent application slowdowns and hangup situations.
It is important to say that CRM should always interfere as little as possible with running applications! CRM is designed to provide the best passive way of inter-fering. Every additional activity and/or interaction from CRM contents will cause interferance with the application!
NOTE: CRM will always interfere visually with application!
Interactions with other frameworks
Methods from the following frameworks are used:
CCDataDictionaryFW
CCFormat
CCEppRtcFW
HTML tips
One and only page thats "loaded" in internet explorer object is "about:blank".
The BASE tag will be generated in downloaded content to allow using of relative paths if here is no BASE tag in original content.
The usage of ProTopas variable exchanges [#VAR;FORMAT;DEF#] in down-loaded content is allowed.
520 May 2008
CCCRM framework Customer Relationship Marketing
Parameter
The following parameters are optional for CCCRM. If the parameter is missing, default values will be used.
Section "CCCRM"
StartURL
Specifies the URL of a start HTML page for CRM dialog.
Type: StringDefault: "about:blank"
CursorEnable
Enable/disable cursor in CRM dialog.
Type: DwordDefault: 0
AllowFocus
Allow/forbid application focus for CRM dialog.
Type: DwordDefault: 0
InitEppRtc
Initialise/close and start/stop EppRtc framework for CRM dialog.
Type: DwordDefault: 0
WindowWidth
Specifies the width of the CRM dialog.
Type: DwordDefault: 320
May 2008 521
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
WindowHeight
Specifies the height of the CRM dialog.
Type: DwordDefault: 200
WindowLeft
This parameter specifies the distance from the left side of the screen to the upper left corner of the CRM dialog.
Type: DwordDefault: 0
WindowTop
This parameter specifies the distance from the top of the screen to the upper left corner of the CRM dialog.
Type: DwordDefault: 0
TimerSession
This parameter specifies the time in milliseconds that the CRM dialog waits for the end of the started CRM session. If during these millisec-onds no end of the CRM session is received, the CRM session will be ended.
Type: DwordDefault: 60000
TimerXMLHTTPRequest
This parameter specifies the time in milliseconds that the CRM dialog waits for the downloading of the URL over the XMLHTTP request object to be finished. If during these milliseconds no end of the down-loading is received, the CRM session will be ended.
Type: DwordDefault: 10000
522 May 2008
CCCRM framework Customer Relationship Marketing
TimerHTMLWrite
This parameter specifies the time in milliseconds that the CRM dialog waits for the end of showing the generated HTML page over the inter-net explorer object. If during these milliseconds no end of show is received, the CRM session will be ended.
Type: DwordDefault: 5000
TimerCRMContenstsResponse
This parameter specifies the time in milliseconds that the CRM dialog waits for the response of the CRMContentsCtrl object to its requests. If during these milliseconds no response is received, the CRM ses-sion will be ended.
Type: DwordDefault: 3000
XMLHTTPDefURL
Specifies the URL for navigation if USE_REGISTRY_DEFAULT is used in the SESSIONURL parameter in the navigation description.
Type: StringDefault: "about:blank"
XMLHTTPDefUSER
Specifies the USER for navigation if USE_REGISTRY_DEFAULT is used in the SESSIONUSER parameter in the navigation description.
Type: StringDefault: ""
XMLHTTPDefPASSWORD
Specifies the PASSWORD for navigation if USE_REGISTRY_DEFAULT is used in the SESSIONPASSWORD parameter in the navigation description.
Type: StringDefault: ""
May 2008 523
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CheckWND
This parameter belongs to a set of parameters which the CRM dialog instance checks constantly for hangup situations. This parameter specifies the length of time in milliseconds that the hangup check is repeated.
Type: DwordDefault: 60000
CheckWNDmax
This parameter belongs to a set of parameters which the CRM dialog instance checks constantly for hangup situations. This parameter specifies the length of time in milliseconds that the CRM dialog instance waits for the response on a window event. If during these milliseconds no response is received, the CRM dialog will be restarted.
Type: DwordDefault: 15000
CheckMem
This parameter belongs to a set of parameter which the CRM dialog instance checks constantly for hangup situations. This parameter specifies the time in milliseconds to check for wasted memory (mem-ory leaks).
Type: DwordDefault: 120000
CheckMEMmax
This parameter belongs to a set of parameter which the CRM dialog instance checks constantly for hangup situations. This parameter specifies the maximum size of memory in megabytes which the CRM dialog instance may take up before the instance is restarted.
Type: DwordDefault: 64
524 May 2008
CCCRM framework Customer Relationship Marketing
KillHardWAIT
This parameter belongs to a set of parameters which the CRM dialog instance checks constantly for hangup situations. This parameter specifies the time in milliseconds that the instance will wait, after it has received the WM_CLOSE event, before it calls TerminatePro-cess(). In this case even hangups with a hanging main thread will be snapped.
Type: DwordDefault: 15000
May 2008 525
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Public interface
The public interface is completely defined in the included CCCRM.xpp file.It contains all the public functions, events and the required definitions for data structures and return codes.
Methods
The following public member functions are defined in class CCCRMfw:
CCCRMfw .Opendoes nothing
CCCRMfw .Closedoes nothing
CCCRMfw .InitParmsdoes nothing
CCCRMfw .GetStatusreturns the state of the framework
CCCRMfw .GetVisibilityreturns the visibility of the framework dialog
CCCRMfw .Preloadloads in advance a CRM session start URL
CCCRMfw .Startstarts a CRM session
CCCRMfw .Stopends a CRM session
CCCRMfw .Resumeresumes a CRM session
CCCRMfw .Pausepauses a CRM session
CCCRMfw .Killkills a framework instance
CCCRMfw .Showshows the CRM dialog
CCCRMfw .Hidehides the CRM dialog
526 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw .GetSizegets the CRM dialog size
CCCRMfw .SetSizesets the CRM dialog size, resize CRM
CCCRMfw .GetPosgets the CRM dialog top, left coordinate
CCCRMfw .SetPossets the CRM dialog top, left coordinate, move CRM
May 2008 527
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Defines and data structures
The class CCCRMfw contains the following defines and data structures:
Error defintions
Returncodes for GetStatus
Returncodes for GetVisibility
define value
CCCRM_OK 0
CCCRM_ERROR -1
CCCRM_IGNORED -2
CCCRM_ERROR_INPUT -3
CCCRM_ERROR_SYS -4
define value
CCCRM_STATUS_NOK 0
CCCRM_STATUS_WAITING 1
CCCRM_STATUS_STARTING 2
CCCRM_STATUS_STARTED 3
CCCRM_STATUS_RUNNING 4
CCCRM_STATUS_STOPING 5
CCCRM_STATUS_STOPED 6
CCCRM_STATUS_DELAYEDSTOPING 7
define value
CCCRM_VISIBILITY_HIDDEN 0
CCCRM_VISIBILITY_VISIBLE 1
528 May 2008
CCCRM framework Customer Relationship Marketing
Input parameters of Start, Stop, Resume, Pause
Data dictionary variables array
define value
CCCRM_PARAM_NONE 0
CCCRM_PARAM_STARTANDSHOW 1
CCCRM_PARAM_STARTANDSHOWONSTARTREADY 2
CCCRM_PARAM_STARTANDWAITFORSHOW 3
CCCRM_PARAM_STOPANDHIDE 1
CCCRM_PARAM_STOPANDHIDEONSTOPREADY 2
CCCRM_PARAM_STOPANDWAITFORHIDE 3
CCCRM_PARAM_PAUSEANDHIDE 1
CCCRM_PARAM_PAUSEANDWAITFORHIDE 3
CCCRM_PARAM_RESUMEANDSHOW 1
CCCRM_PARAM_RESUMEANDWAITFORSHOW 3
name array
CCCRM_VAR_CONTAINER_L 0 - 255
CCCRM_VAR_CONTAINER_S 0 - 255
May 2008 529
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Data dictionary variables
Values for CCCRM_STATE_PRELOAD_STATUS_L
name description
CCCRM_STATE_STATUS_L read only, state of CCCRM
CCCRM_STATE_SESSION_RC_L read only, session RC
CCCRM_STATE_PRELOAD_STATUS_L read only, preload status
CCCRM_STATE_CONTENT_STATUS_L read only, state of CCCRM_HTTP
CCCRM_STATE_CONTENT_SESSION_RC_L
read only, session RC of CCRM_HTTP
CCCRM_VAR_DLG_INPUT_RESULT_S read only, result of session
CCCRM_VAR_DLG_INPUT1_S - CCCRM_VAR_DLG_INPUT9_S
variables for input control
CCCRM_ADA_TEXT_PAGE_MENU_S variable for ADA control
CCCRM_ADA_TEXT_PAGE_HINT_S variable for ADA control
CCCRM_ADA_TEXT_PAGE_CONTENT_S
variable for ADA control
CCCRM_ADA_TEXT_PAGE_KEYS_S variable for ADA control
CCCRM_ADA_ECHO_BUTTON_S variable for ADA control
CCCRM_ADA_ECHO_EDIT_S variable for ADA control
CCCRM_ADA_CTRL_BLOCKAPP_L variable for ADA control
define value
CCCRM_STATUS_PRELOAD_UNKNOWN 0
CCCRM_STATUS_PRELOAD_STARTED 1
CCCRM_STATUS_PRELOAD_LOADED 2
CCCRM_STATUS_PRELOAD_OK 3
530 May 2008
CCCRM framework Customer Relationship Marketing
Values for CCCRM_STATE_SESSION_RC_L
Values for CCCRM_STATE_CONTENT_STATUS_L
Values for CCCRM_STATE_CONTENT_SESSION_RC_L
define value
CCCRM_RC_SESSION_UNKNOWN 0
CCCRM_RC_SESSION_OK 1
CCCRM_RC_SESSION_UNKNOWN -1
CCCRM_RC_SESSION_TIMEOUT -2
CCCRM_RC_SESSION_CANCEL -3
define value
CCCRM_HTTP_STATUS_NOK 0
CCCRM_HTTP_STATUS_WAITING 1
CCCRM_HTTP_STATUS_LOADING 2
CCCRM_HTTP_STATUS_LOADED 3
CCCRM_HTTP_STATUS_PAUSED 4
CCCRM_HTTP_STATUS_INTERACTIVE 5
CCCRM_HTTP_STATUS_COMPLETE 6
CCCRM_HTTP_STATUS_ENDED 7
CCCRM_HTTP_STATUS_STOPING 8
CCCRM_HTTP_STATUS_STOPED 9
CCCRM_HTTP_STATUS_DEAD 10
CCCRM_HTTP_STATUS_PAUSING 11
CCCRM_HTTP_STATUS_RESUMING 12
define value
CCCRM_HTTP_RC_UNKNOWN 0
CCCRM_HTTP_RC_CONTENT_TIMEOUT 1
CCCRM_HTTP_RC_CONTENT_END 2
May 2008 531
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRM_HTTP_RC_ERROR_INPUT_DATA_INVALID -1
CCCRM_HTTP_RC_ERROR_STATE_INVALID -2
CCCRM_HTTP_RC_ERROR_SYS -3
CCCRM_HTTP_RC_TIMEOUT_SEND -4
CCCRM_HTTP_RC_SEND_CANCEL -5
define value
532 May 2008
CCCRM framework Customer Relationship Marketing
Events
The CCCRM framework issues the following events:
CCCRM_EVT_INIT
This event is sent when the framework is ready for use.
CCCRM_EVT_START
This event is sent when the session has been started.
CCCRM_EVT_STOP
This event is sent when the session has been ended.
CCCRM_EVT_PRELOAD_OK
This event is sent when the preload has ended successfully.
CCCRM_EVT_PAUSE
This event is sent when the session is paused.
CCCRM_EVT_RESUME
This event is sent when the session is resumed.
CCCRM_EVT_EXIT
This event is sent if the framework exists (restart).
CCCRM_EVT_ERROR
This event is sent when an error in session has occurred!
CCCRM_EVT_OFFLINE
This event is sent when the requested page loading timeouts.
CCCRM_EVT_SHOW
This event is sent when the frameworks dialog is shown.
CCCRM_EVT_HIDE
This event is sent when the frameworks dialog is hidden.
CCCRM_EVT_START_READY
This event is sent when the Start() method is called with the parameter CCCRM_PARAM_STARTANDWAITFORSHOW. It is used for the visual synchroni-sation of applications and framework dialogs!
May 2008 533
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRM_EVT_STOP_READY
This event is sent when the Stop() method is called with parameter CCCRM_PARAM_STOPANDWAITFORHIDE. It is used for the visual synchronisa-tion of applications and framework dialogs!
CCCRM_EVT_PAUSE_READY
This event is sent when the Pause() method is called with parameter CCCRM_PARAM_PAUSEANDWAITFORHIDE. It is used for the visual synchroni-sation of applications and framework dialogs!
CCCRM_EVT_RESUME_READY
This event is sent when the Resume() method is called with parameter CCCRM_PARAM_RESUMEANDWAITFORSHOW. It is used for the visual synchroni-sation of applications and framework dialogs!
CCCRM_EVT_ADA_CHANGE
This event is sent when the session content has changed ADA variables during the session. NOTE: not for the first change at the session start!
534 May 2008
CCCRM framework Customer Relationship Marketing
Specification of the methods
In the following section the public methods are described in detail.
CCCRMfw.Open
Syntax:
SHORT CCCRMfw.Open(
VOID
)
Function:
Does nothing.
Return values:
CCCRM_OK (0)
Nothing happened.
May 2008 535
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.Close
Syntax:
SHORT CCCRMfw.Close(
VOID
)
Function:
Does nothing.
Return values:
CCCRM_OK (0)
Nothing happened.
536 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.InitParms
Syntax:
SHORT CCCRMfw.InitParms(
VOID
)
Function:
Does nothing.
Return values:
CCCRM_OK (0)
Nothing happened.
May 2008 537
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.GetStatus
Syntax:
SHORT CCCRMfw.GetStatus(
VOID
)
Function:
Get the framework status.
Return values:
CCCRM_STATUS_NOK (0)
Framework loaded, but not ready yet, dialog hidden.
CCCRM_STATUS_WAITING (1)
Framework ready for use, dialog hidden.
CCCRM_STATUS_STARTING (2)
Framework session start ongoing, loading URL, dialog hidden.
CCCRM_STATUS_STARTED (3)
Framework session start ongoing, URL loaded, content loaded, hidden dialog waiting for show.
CCCRM_STATUS_RUNNING (4)
Framework session running, URL loaded, content complete, dialog shown.
CCCRM_STATUS_STOPING (2)
Framework session stop ongoing, stop request sent to session content, dialog visible.
CCCRM_STATUS_STOPED (3)
Framework session stop ongoing, session content stopped, dialog visi-ble waiting for hide.
538 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.GetVisibility
Syntax:
SHORT CCCRMfw.GetVisibility(
VOID
)
Function:
Get the framework dialog visibility.
Return values:
CCCRM_VISIBILITY_HIDDEN (0)
Framework dialog hidden.
CCCRM_VISIBILITY_VISIBLE (4)
Framework dialog visible.
May 2008 539
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.Preload
Syntax:
SHORT CCCRMfw.Preload(
CHAR* pstrData
)
Function:
Load a CRM session start URL in advance. Preload can be done only when no session is running. CRM status must be CCCRM_STATUS_WAITING or preload request will be ignored!
Input parameters:
pstrData (IN)
UTF8 string, preload data
Return values:
CCCRM_OK (0)
Preload initialised.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM not ready for preload.
540 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Start
Syntax:
SHORT CCCRMfw.Start(
CHAR* pstrData,
SHORT sShow
)
Function:
Start a CRM session. Start can be done only when no session is running. CRM status must be CCCRM_STATUS_WAITING or the start request will be ignored! Start can be done for ongoing or successfully carried out pre-load. If the start is done with new start session data over a preload, the pre-load will be cancelled, Start will be ignored and the CCCRM_EVT_ERROR event is fired!
Input parameters:
pstrData (IN)
UTF8 string, start session data
NULL or empty strings or strings containing only SESSIONTIMER parameters, start a previously preloaded content, or set a flag to start an ongoing preload content, when preload is finished!
All parameters are coded in one string in format: PARAMETER=VALUE_|_PARAMETER=VALUE ... Valid PARAMETERs for Start meth-ods:
SESSIONURLUTF16 unicode string, URL, used in navigation, check global XMLHTTPDefURL
SESSIONTIMERoptional, numeric converted to DWORD, overwrite the duration of the global TimerSession in miliseconds for this session, must be greater then 0.
May 2008 541
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
SESSIONUSERoptional, UTF16 unicode string, USER, used in navigation, check global XMLHTTPDefUSER
SESSIONPASSWORDoptional, UTF16 unicode string, PASSWORD, used in navigation, check global XMLHTTPDefPASSWORD
SESSIONXMLHTTPREQUESTTIMERoptional, numeric converted to DWORD, overwrite the duration of the global TimerXMLHTTPRequest in miliseconds for this naviga-tion, must be greater then 0. Can be used from version 1003 of CCCRM.EXE.
sShow (IN)
How to show the dialog: immediately, when the content is ready or exter-nally synchronised.
1, CCCRM_PARAM_STARTANDSHOW, show dialog immediately at success-ful start
2, CCCRM_PARAM_STARTANDSHOWONSTARTREADY, show dialog when the content is loaded and intialised
3, CCCRM_PARAM_STARTANDWAITFORSHOW waits for the extern method show, until a content has been loaded and intialised and event CCCRM_EVT_START_READY has been fired!
Return values:
CCCRM_OK (0)
Start initialised.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM not ready for start.
CCCRM_ERROR_INPUT (-3)
Input parameter sShow not in range.
542 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Stop
Syntax:
SHORT CCCRMfw.Stop(
CHAR* pstrData,
SHORT sHide
)
Function:
Stop a CRM session. Stop can be done only when a session is running, CRM status must be one of: CCCRM_STATUS_STARTING, CCCRM_STATUS_STARTED, CCCRM_STATUS_RUNNING or the stop request will be ignored!
Input parameters:
pstrData (IN)
UTF8 string, stop session data
All parameters are coded in one string in format: PARAMETER=VALUE_|_PARAMETER=VALUE ... Valid PARAMETERs for Stop meth-ods:
DELAYSTOPUNTILCRMENDoptional, "DELAYSTOPUNTILCRMEND=ON" will allow content to end itself, normal ends are: CCCRM_HTTP_RC_CONTENT_END and CCCRM_HTTP_RC_CONTENT_TIMEOUT!
sHide (IN)
How to hide the dialog: immediately, when content is ready or externally synchronised.
1, CCCRM_PARAM_STOPANDHIDE, hide dialog immediately at successful stop
2, CCCRM_PARAM_STOPANDHIDEONSTOPREADY, hide dialog when the content is ended
3, CCCRM_PARAM_STOPANDWAITFORHIDE, wait for an external hide. When a content is ended, event CCCRM_EVT_STOP_READY is fired!
May 2008 543
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Return values:
CCCRM_OK (0)
Stop initialised.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM not ready for stop.
CCCRM_ERROR_INPUT (-3)
Input parameter sHide not in range.
544 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Pause
Syntax:
SHORT CCCRMfw.Pause(
CHAR* pstrData,
SHORT sHide
)
Function:
Pause a CRM session. Pause can be done only when a session is running, CRM status must be CCCRM_STATUS_RUNNING or the pause request will be ignored! Double Pause method calls are ignored, too!
Input parameters:
pstrData (IN)
UTF8 string, not used at the moment
sHide (IN)
How to hide the dialog: immediately, when content is ready or externally synchronised.
1, CCCRM_PARAM_PAUSEANDHIDE, hide dialog immediately at successful pause
2, CCCRM_PARAM_PAUSEANDWAITFORHIDE, wait for extern hide, when the content is paused event CCCRM_EVT_PAUSE_READY is fired!
Return values:
CCCRM_OK (0)
Pause initialised.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM not ready for pause.
May 2008 545
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRM_ERROR_INPUT (-3)
Input parameter sHide not in range.
546 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Resume
Syntax:
SHORT CCCRMfw.Resume(
CHAR* pstrData,
SHORT sShow
)
Function:
Resume a CRM session. Resume can be done only when a session is run-ning, CRM status must be CCCRM_STATUS_RUNNING or the resume request will be ignored! Resume method can be called only after the pause method or it will be ignored!
Input parameters:
pstrData (IN)
UTF8 string, not used at the moment
sShow (IN)
How to show the dialog: immediately, when content is ready or externally synchronised.
1, CCCRM_PARAM_RESUMEANDSHOW, show dialog immediately at success-ful resume
2, CCCRM_PARAM_RESUMEANDWAITFORSHOW, wait for extern show, when a content is reintialised event CCCRM_EVT_RESUME_READY is fired!
Return values:
CCCRM_OK (0)
Resume initialised.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
May 2008 547
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CRM not ready for stop.
CCCRM_ERROR_INPUT (-3)
Input parameter sHide not in range.
548 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Kill
Syntax:
SHORT CCCRMfw.Kill(
VOID
)
Function:
Force CRM framework to restart itself.
Return values:
CCCRM_OK (0)
Restart initialised.
CCCRM_ERROR (-1)
General error.
May 2008 549
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.Show
Syntax:
SHORT CCCRMfw.Show(
VOID
)
Function:
This method shows the CRM framework window.
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM framework window already visible.
CCCRM_ERROR_SYS (-4)
System function failed.
550 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.Hide
Syntax:
SHORT CCCRMfw.Hide(
VOID
)
Function:
This method hides the CRM framework window.
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
CCCRM_IGNORED (-2)
CRM framework window already hidden.
CCCRM_ERROR_SYS (-4)
System function failed.
May 2008 551
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.GetSize
Syntax:
SHORT CCCRMfw.GetSize(
LONG* plWidth,
LONG* plHeight
)
Function:
This method returns the current width and hight of the CRM framework win-dow.
Input parameters:
plWidth (OUT)
The current width of the CRM framework window
plHeight (OUT)
The current height of the CRM framework window
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
CCCRM_ERROR_INPUT (-3)
Input parameter is NULL pointer.
552 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.SetSize
Syntax:
SHORT CCCRMfw.SetSize(
LONG lWidth,
LONG lHeight
)
Function:
This method sets the width and hight of the CRM framework window.
Input parameters:
lWidth (IN)
The new width of the CRM framework window
lHeight (IN)
The new height of the CRM framework window
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
May 2008 553
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CCCRMfw.GetPos
Syntax:
SHORT CCCRMfw.GetPos(
LONG* plX,
LONG* plY
)
Function:
This method returns the current top left position of the CRM framework win-dow.
Input parameters:
plX (OUT)
The current left (X) position of the CRM framework window
plY (OUT)
The current top (Y) position of the CRM framework window
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
CCCRM_ERROR_INPUT (-3)
Input parameter is NULL pointer.
554 May 2008
CCCRM framework Customer Relationship Marketing
CCCRMfw.SetPos
Syntax:
SHORT CCCRMfw.SetPos(
LONG lX,
LONG lY
)
Function:
This method sets the top left position of the CRM framework window.
Input parameters:
lX (IN)
The new left (X) position of the CRM framework window
lY (IN)
The new top (Y) position of the CRM framework window
Return values:
CCCRM_OK (0)
Function completed successfully.
CCCRM_ERROR (-1)
General error.
May 2008 555
Customer Relationship Marketing CCCRM framework
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Trace and error logging
The trace and error logging for the CCCRM Framework will be initialized under the number 784 (MODID_CCCRM)
The following trace levels are defined:
NOTE: turn always 11,12,13 on!
The error entries are described in the RCH file "784FERS.ENG".
Trace Name Description
1 MOD_INIT Reserved
10 ANALYSE Trace for analyse
11 EXCEPTION Trace for all exceptions!
12 ERROR Trace for all errors!
13 WARNING Trace for all warnings!
14 INFO Trace for infos
15 DATA Trace for data
16 SUB_DATA Trace for less important data
17 INOUT Trace for functions entry/exit points
18 SUB_INOUT Trace for less important functions entry/exit points
19 FREQ_INOUT Trace for very frequently used functions entry/exit points
556 May 2008
CRMContentsCtrl Customer Relationship Marketing
CRMContentsCtrl
Release specification
Version 1.0 of CRMContentsCtrl is released in a OCX named ’CRMContentsC-trl.ocx’.
CRMContentsCtrl is implemented as a Unicode MFC ActiveX control.
This control can be used only within CCCRM.exe!
Configuration
Like every ActiveX control, CRMContentsCtrl have to be registered before first usage.
For the trace and error logging, CRMContentsCtrl is using the CCCRM Frame-work 784 (MODID_CCCRM) trace and error settings!
Architecture
The CRMContentsCtrl is the bridge of communication between the HTML page and its components (CRM content) and the CCCRM_HTTP framework, which is controlling the CRM content from outside in CCCRM.exe.
The CRMContentsCtrl controls:
CRM Session synchronisation with CCCRM_HTTP framework
Start/Stop/Pause/Resume, PageTimeout control, external EndSession
CRM content
PCButton interactions, PCEdit interactions, external Navigation
EPP
EPP softkeys and pinpad keys usage
ADA
Extension of application ADA usage
May 2008 557
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
General idea
The CRMContentsCtrl controls the HTML part of the CCCRM framework. After the HTML code is downloaded and generated through the CCCRM_HTTP framework, it will be written directly into the active page, overwriting it com-pletely!
After the page is written, the CRMContentsCtrl will be initialised by the CCCRM_HTTP frameworks calls of Load, Init, Kick methods. This communica-tion is timer secured and implemented as a Request/Acknowledge sequence for every method call from the CCCRM_HTTP framework. The same applies to End, Pause, Resume methods that are called at Session end, pause or resume.
The HTML page is scanned at load method and the CRMContentsCtrl is con-nected with all the PCButtons and PCEdits that can be found. The properties are resolved if the ProTopas variable exchange is used, and the Page Timeout, EPP keys Takeover and ADA usage are started as configured. Now the HTML page is fully ready and interactive.
CRMContentsCtrl then reacts to Events from EPP, PCButton or PCEdit and to external usage (scripting) as discribed in public interface.
CRMContentsCtrl has property page and configuration dialogs for its properties that can be used with HTML page editors.
Interactions with other frameworks
Methods from the following frameworks are used:
CCCRM_HTTPfw
CCEppRtcFW
CCDataDictionaryFW
CCFormat
558 May 2008
CRMContentsCtrl Customer Relationship Marketing
Public interface
The public interface is completely defined in the old file CRMContentsCtrl.odl.This type library contains all the public properties, methods and events.
Properties
The following properties are defined in object CRMContentsCtrl.ocx:
BSTR PageTimeoutnumeric value, timer in milliseconds, range: [0,+LONG]
BSTR EPPConfigEPP configuration. Format: FDK=a,b_|_FK=c,d_|_FK2TXT=e=f_||_g=h...FDKs are Softkeys: F1,F2,F3...,F32FKs are pinpad keys: 0,1,2,3,4,5,6,7,8,9, CONFIRM, CANCEL, CLEAR, BACKSPACE, R,L,00,000, 19,20,21...31FK2TXT maps pinpad keys to a string that is sent to PCEdit when the pinpad key is pressed! Default maping is: CLEAR="\b", CONFIRM="\r", R=".", L="*", 00="00", 000="000", BACKSPACE="\b"Example: FDK=F1_|_FK=0,1,2,3,4,5,6,7,8,9, CONFIRM,CLEAR,CANCEL ,R,L_|_FK2TXT=CANCEL=_||_R=,
BSTR ADAConfigADA configuration. Format: CMD=POSITION=pos_||_TEXT=text_||_SUBSTITUTETEXT=subText_|_CMD2=POSITION=pos_||_TEXT=text_||_SUBSTITUTETEXT=subText...CMD are possible texts and macros that can be changed into WebExten-sions, that are: TEXT_PAGEMENU, TEXT_PAGEHINT, TEXT_PAGECONTENT, TEXT_PAGEKEYS, ECHO_BUTTON and ECHO_EDITPOSITION is position for paste of text in original texts and macros in WebEx-tension, that are: before, after and substitute.TEXT is text to paste.SUBSTITUTETEXT is text to substitute with TEXT when POSITION is sub-stitute!
NOTE: all properties can use one or more of ProTopas variable exchanges, the generator exchange [#VARIABLE;FOR-MAT;DEFAULT#] that is done by CCCRM_HTTP framework during page generation, or the real time exchange [&VARIABLE;FOR-
May 2008 559
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
MAT;DEFAULT&] that is done byCRMContentsCtrl during the moment of usage!
Methods
The following methods are defined in object CRMContentsCtrl.ocx:
boolean EndSession()Request the session end from CCCRM_HTTP framework
boolean Navigate(BSTR strURL)Request from CCCRM_HTTP framework to download, generate and show resource described in strURL.
Example: Navigate("SESSIONURL=file://C:\CRM\HTML\myPage.htm")
strURL format: PARAMETER=VALUE_|_PARAMETER=VALUE ... Valid PARAMETERs:
SESSIONURLUTF16 unicode string, URL, used in navigation, check global XMLHTTPDefURL parameter
SESSIONUSERoptional, UTF16 unicode string, USER, used in navigation, check glo-bal XMLHTTPDefUSER parameter
SESSIONPASSWORDoptional, UTF16 unicode string, PASSWORD, used in navigation, check global XMLHTTPDefPASSWORD parameter
SESSIONXMLHTTPREQUESTTIMERoptional, numeric converted to DWORD, overwrite the duration of the global TimerXMLHTTPRequest in miliseconds for this navigation, must be greater then 0. Can be used from version 1003 of CCCRM.EXE
boolean ADAChange()Request CCCRM framework to fire CCCRM_EVT_ADA_CHANGE event.
BSTR DoIt(BSTR strData)Calls some CCCRM framework functions, see specification of the methods for more information about parameters and return codes!
560 May 2008
CRMContentsCtrl Customer Relationship Marketing
Example: DoIt("CMD=SetPos_|_POSX=3_|_POSY=150")
The method returns a CCCRM framework functions return code as string or one of general error codes:"!ERROR! input parameter NULL pointer!","!ERROR! can't find CMD in data!","unknown CMD!"
strData format: PARAMETER=VALUE_|_PARAMETER=VALUE ... Valid PARAMETERs:
CMDVALUES one of:
SetPoscalls SetPos(X,Y) method of CCCRM framework. Needs POSX and POSY PARAMETERs! Additional return codes:"!ERROR! missing parameter 'POSX'!","!ERROR! missing parameter 'POSY'!"
SetSizecalls SetSize(W,H) method of CCCRM framework. Needs SIZEW and SIZEH PARAMETERs! Additional return codes:"!ERROR! missing parameter 'SIZEW'!","!ERROR! missing parameter 'SIZEH'!"
Showcalls Show() method of CCCRM framework.
Hidecalls Hide() method of CCCRM framework.
Killcalls Kill() method of CCCRM framework.
POSXused only with CMD=SetPos, numeric, x position
POSYused only with CMD=SetPos, numeric, y position
SIZEWused only with CMD=SetSize, numeric, width size
SIZEHused only with CMD=SetSize, numeric, height size
May 2008 561
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Events
The object CRMContentsCtrl.ocx issues the following events:
onLoad()
This event is sent by the CCCRM_HTTP framework to request Load func-tionality.
onInit()
This event is sent by the CCCRM_HTTP framework to request Init function-ality.
onKick()
This event is sent by the CCCRM_HTTP framework to request Kick function-ality.
onPause()
This event is sent by the CCCRM_HTTP framework to request Pause func-tionality.
onResume()
This event is sent by the CCCRM_HTTP framework to request Resume functionality.
onEnd()
This event is sent by the CCCRM_HTTP framework to request End function-ality.
onTimeout()
This event is sent when the Page timer expires.
onUserInteraction(short sID)
This event is sent when some User interaction has occurred from the PCBut-ton or PCEdit, for example, pressing the button, giving focus to PCEdit or writing in PCEdit. sID is the unique ID of PCButton or PCEdit.
OnEppInteraction(BSTR strInteraction)
This event is sent when some EPP interaction has occurred. For example, starting the service, stopping the service, or pressing some softkeys or pin-pad keys. strInteraction is "START", "END" or one of FDK or FK string.
562 May 2008
CRMContentsCtrl Customer Relationship Marketing
Using EPP
CRM uses EPP over existing application usage! This is done with CCEPPRtc takeover functionality. When the Softkey(FDK) or pinpad keys(FK) are taken over, the application will lose control over it and only CRMContentsCtrl will be informed when the takeover key is pressed! All 32 FDKs and all 32 FKs can be taken over!FK2TXT is mapped from CRMContentsCtrl of the FK to a string that is sent to PCEdit when a pinpad key is pressed and there is some PCEdit control in the HTML page! All 32 FKs can be mapped to another string different to the normal CCEppfw to CRMContentsCtrl string mapping!
Default mapping of pinpad keys to strings sent to PCEditl
NOTE: You can use EPP functionality only when the application is using standard ExeCmdGetData or doing nothing with EPP! If ExeC-mdGetPin is used or some other special EPP functionality is being used by the application the takeover functionality can not work!
NOTE: The usage of EPP in CRM will always interfere interactivity with applications that are using EPP!
CCEPPfw pinpad key string send to PCEditCCEPPFW_FUNCKEY_ENTER \r
CCEPPFW_FUNCKEY_CLEAR \b
CCEPPFW_FUNCKEY_BACKSPACE \b
CCEPPFW_FUNCKEY_DECPOINT R
CCEPPFW_FUNCKEY_RES1 L
CCEPPFW_FUNCKEY_00 00
CCEPPFW_FUNCKEY_000 000
May 2008 563
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Mapping CCEPPfw Softkeys to CRMContentsCtrl stringsl
CCEPPfw Softkey CRMContentsCtrl stringCCEPPFW_FUNCKEY_FDK01 F1
CCEPPFW_FUNCKEY_FDK02 F2
CCEPPFW_FUNCKEY_FDK03 F3
CCEPPFW_FUNCKEY_FDK04 F4
CCEPPFW_FUNCKEY_FDK05 F5
CCEPPFW_FUNCKEY_FDK06 F6
CCEPPFW_FUNCKEY_FDK07 F7
CCEPPFW_FUNCKEY_FDK08 F8
CCEPPFW_FUNCKEY_FDK09 F9
CCEPPFW_FUNCKEY_FDK10 F10
CCEPPFW_FUNCKEY_FDK11 F11
CCEPPFW_FUNCKEY_FDK12 F12
CCEPPFW_FUNCKEY_FDK13 F13
CCEPPFW_FUNCKEY_FDK14 F14
CCEPPFW_FUNCKEY_FDK15 F15
CCEPPFW_FUNCKEY_FDK16 F16
CCEPPFW_FUNCKEY_FDK17 F17
CCEPPFW_FUNCKEY_FDK18 F18
CCEPPFW_FUNCKEY_FDK19 F19
CCEPPFW_FUNCKEY_FDK20 F20
CCEPPFW_FUNCKEY_FDK21 F21
CCEPPFW_FUNCKEY_FDK22 F22
CCEPPFW_FUNCKEY_FDK23 F23
CCEPPFW_FUNCKEY_FDK24 F24
CCEPPFW_FUNCKEY_FDK25 F25
CCEPPFW_FUNCKEY_FDK26 F26
CCEPPFW_FUNCKEY_FDK27 F27
CCEPPFW_FUNCKEY_FDK28 F28
CCEPPFW_FUNCKEY_FDK29 F29
CCEPPFW_FUNCKEY_FDK30 F30
CCEPPFW_FUNCKEY_FDK31 F31
CCEPPFW_FUNCKEY_FDK32 F33
564 May 2008
CRMContentsCtrl Customer Relationship Marketing
Mapping CCEPPfw pinpad keys to CRMContentsCtrl stringsl
CCEPPfw pinpad key CRMContentsCtrl stringCCEPPFW_FUNCKEY_0 0
CCEPPFW_FUNCKEY_1 1
CCEPPFW_FUNCKEY_2 2
CCEPPFW_FUNCKEY_3 3
CCEPPFW_FUNCKEY_4 4
CCEPPFW_FUNCKEY_5 5
CCEPPFW_FUNCKEY_6 6
CCEPPFW_FUNCKEY_7 7
CCEPPFW_FUNCKEY_8 8
CCEPPFW_FUNCKEY_9 9
CCEPPFW_FUNCKEY_ENTER CONFIRM
CCEPPFW_FUNCKEY_CANCEL CANCEL
CCEPPFW_FUNCKEY_CLEAR CLEAR
CCEPPFW_FUNCKEY_BACKSPACE BACKSPACE
CCEPPFW_FUNCKEY_HELP HELP
CCEPPFW_FUNCKEY_DECPOINT R
CCEPPFW_FUNCKEY_RES1 L
CCEPPFW_FUNCKEY_00 00
CCEPPFW_FUNCKEY_000 000
0x00080000 19
0x00100000 20
0x00200000 21
0x00400000 22
0x00800000 23
0x01000000 24
0x02000000 25
0x04000000 26
0x08000000 27
0x10000000 28
0x20000000 29
0x40000000 30
0x80000000 31
May 2008 565
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Using ADA
CRM ADA is used over WebExtensions! CRM simply modifies the texts that the WebExtension uses for ADA. When one property has to be spoken from the WebExtension, it is first checked if the CRM wants to change the text, and then the text is changed as configured in CRM.These properties from WebExtension can be changed using CRM:
TEXT_PAGEMENU
TEXT_PAGEHINT
TEXT_PAGECONTENT
TEXT_PAGEKEYS
Example: TEXT_PAGEMENU=POSITION=after_||_TEXT= With marketing!
The Echos, that is the acustic reaction to the pressing of one of the pinpad keys, can only be overwritten from CRM. This is because in WebExtension the Echos can use macros, but macros cannot access the CRM proccess! So the WebEx-tension will configure the echos first and then if the ECHO_EDIT is present, it will be used, if not then if the ECHO_BUTTON is present, it will be used.These properties from WebExtension can be overwritten from CRM:
ECHO_BUTTON
ECHO_EDIT
NOTE: The Echo configuration format in WebExtension is: 0=text_WXSEP_1=text_WXSEP_CANCEL=text ...
Example: ECHO_BUTTON=TEXT=1=test_WXSEP_2=timer_WXSEP_3=end
566 May 2008
CRMContentsCtrl Customer Relationship Marketing
Mapping CCEPPfw pinpad keys to PCContentsCtrl stringsl
The usage of PCEdit and ADA in CRM is very limited. PCEdit can only be used in CRM with ADA functionality when there is no PCButtons or EPP usage in the CRM or WebExtension application. The ADA functionalities EDIT_HINT and EDIT_CONTENT are not supported in CRM.
NOTE: If ADA is not running in the application the ADA functionality cannot be used from CRM!
NOTE: The usage of ADA in CRM will always interfere audibly with applications that are using ADA!
CCEPPfw pinpad key PCContentsCtrl stringCCEPPFW_FUNCKEY_0 0
CCEPPFW_FUNCKEY_1 1
CCEPPFW_FUNCKEY_2 2
CCEPPFW_FUNCKEY_3 3
CCEPPFW_FUNCKEY_4 4
CCEPPFW_FUNCKEY_5 5
CCEPPFW_FUNCKEY_6 6
CCEPPFW_FUNCKEY_7 7
CCEPPFW_FUNCKEY_8 8
CCEPPFW_FUNCKEY_9 9
CCEPPFW_FUNCKEY_ENTER CONFIRM
CCEPPFW_FUNCKEY_CANCEL CANCEL
CCEPPFW_FUNCKEY_CLEAR CORRECT
CCEPPFW_FUNCKEY_HELP HELP
CCEPPFW_FUNCKEY_DECPOINT R
CCEPPFW_FUNCKEY_RES1 L
May 2008 567
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
In detail, the ADA functionality of CRM is implemented over CRM data dictio-nary variables. CRMContentsCtrl saves the variable values in the variable in the Init() phase of HTML start, and the PCContentsCtrl uses these variables to modify the original WebExtension application ADA settings. To synchronise this, the CRM session has to be started using the CCCRM_PARAM_STARTANDWAITFORSHOW parameter. The following changes in the variable values, as a result of the CRM HTML page change or CRM session end, will be signaled with the CCCRM_EVT_ADA_CHANGE event. PCCon-tentsCtrl will then restart the ADA handling of in page configuration in the WebExtension application. The CRM data dictionary variables for ADA controls are public and can be changed from CRM HTML pages using scripting, for example. To signal the change to the WebExtension application the CRMCon-tentsCtrl method ADAChange() should be used.
From version 1003 of CCCRM.EXE, version 1002 of CRMContentsCtrl.ocx and version 1244 of PCContentsSTDSvr.dll CRM cann block application ADA func-tionality with CTRL_BLOCKAPP=ON command in ADAconfig property. This will block application in page ADA activities, so the CRM ADA only configuration will be executed from application!
CRM ADA data dictionary variables
name description
CCCRM_ADA_TEXT_PAGE_MENU_S PAGE_MENU control
CCCRM_ADA_TEXT_PAGE_HINT_S PAGE_HINT control
CCCRM_ADA_TEXT_PAGE_CONTENT_S
PAGE_CONTENT control
CCCRM_ADA_TEXT_PAGE_KEYS_S PAGE_KEYS control
CCCRM_ADA_ECHO_BUTTON_S ECHO_BUTTON control
CCCRM_ADA_ECHO_EDIT_S ECHO_EDIT control
CCCRM_ADA_CTRL_BLOCKAPP_L Application ADA control
568 May 2008
CRMContentsCtrl Customer Relationship Marketing
Using PCButton and PCEdit
One or more of the PCButton and/or PCEdit controls from WebExtensions can be used in CRM. The CRMContentsCtrl will scan at the start for all controls in a page and connect the controls with links in CRMContentsCtrl.
For PCButton only FieldID, Softkey, Selection, FunctionValue and Href proper-ties and ButtonPressed event are used in CRMContentsCtrl. The FieldID is used to identify the controls, Softkey is used to press the buttons over EPP, Selection, FunctionValue and Href are used to define the action after the button has been pressed. After the button is pressed the following happens:
The FunctionValue is stored in CCCRM_VAR_DLG_INPUT_RESULT_S CRM variable.
If the Selection is equal to 1 (function button!) and the FunctionValue is equal to "END", the session end will be requested from the CCCRM_HTTP frame-work.
If the Selection is equal to 2 (selection button!), the navigation with parame-ter Href will be requested from the CCCRM_HTTP framework.
For PCEdit only FieldNumber, SoftkeyValue and FieldID properties, GotFocus, UserInteraction and EditComplete events are used in CRMContentsCtrl. The FieldNumber is used to identify the controls, SoftkeyValue is used to press the buttons over EPP, and FieldID is used to name one of the CRM internal vari-ables that will store the input value of the PCEdit control. The CRM variables CCCRM_VAR_DLG_INPUT1_S - CCCRM_VAR_DLG_INPUT9_S are reserved for this purpose! At the UserInteraction event from PCEdit control, the input value of the PCEdit control will be stored in a variable configured in FieldID.
All user interaction events with PCButton and PCEdit control will restart the CRMContentsCtrl timer and the CRMContentsCtrl will fire the OnUserInterac-tion event.
May 2008 569
Customer Relationship Marketing CRMContentsCtrl
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Property page
There is only one Property Page where all properties of CRMContentsCtrl can be modified.The properties are:
BSTR PageTimeoutnumeric value, timer in milliseconds, range: [0,+LONG]
BSTR EPPConfigString, EPP configuration.
BSTR ADAConfigString, ADA configuration.
NOTE: The usage of ProTopas variable exchanges, [#VAR;FOR-MAT;DEF#] or [&VAR;FORMAT;DEF&], in EPPConfig or ADAConfig property, will disable the corresponding configuration button!
570 May 2008
CRMContentsCtrl Customer Relationship Marketing
EPPConfig property can be configured directly in its edit field or using an EPP configuration dialog. The most commonly used softkeys and pinpad keys, in EPP configuration dialog, are shown below. Additional FDKs or FKs have to be configured directly in the edit field of property, the same applies for additional FK2TXT mapping.
The ADAConfig property can be configured directly in its edit field or over the ADA configuration dialog. In the ADA configuration dialog all subproperties can be comfortably configured.
May 2008 571
Customer Relationship Marketing Using WebExtensions with CRM
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
Using WebExtensions with CRM
General idea
The general idea is to control the CRM service over the HTML flow of the appli-cation with the help of the allow list. The CRM service is controlled by sessions with commands and some parameters. These commands and parameters are stored in optional parameters in allow list tables and transferred to CRM at the moment of the navigation of the application to this allow list table entry.
Requirements
At least version 1.1/35 of WebExtensions is needed for CRM usage.
Architecture
The PCView component is a key component for controlling CRM activity, the CCDialog itself is only routed through the Framework methods and events. CCDialog will pause CRM to deactivate WebExtensions, and resume CRM to activate WebExtensions to synchronise with SOP and other dialogs. All com-mands for CRM are directly transferred to CRM. Only the special synchronysing method, where the CRM is shown only when the WebExtension content and CRM content are downloaded and ready for use, is separately controlled by the special sync thread in PCView. It is possible to show the temporary page instead of the incomming HTML page that is navigated directly in WebExten-sions for the time the sync thread is running.
Configuration
To enable CRM handling the following parameters have to be set:
. HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
Current VersionActiveX
GraphicalServiceCCDialog
CRMAllowed=1 (Dword)
Default setting is 0, so CRM handling in WebExtension is "off"!
572 May 2008
Using WebExtensions with CRM Customer Relationship Marketing
There are two optional parameters for configuration of the sync thread:
. HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
Current VersionActiveX
GraphicalServicePCView
CRMSyncURL="c:\proto-pas\web\offline\CRMEmpty.htm" (String)
The default setting is "about:blank", this is the HTML page that will be shown on demand for the time the sync thread is running.
NOTE: This HTML page shall not be generated!
This is an example of an allow list entry for not generating a CRMSyncURL HTML page:
<tr>
<td width="250">*</td>
<td width="250">*CRMEmpty.htm*</td>
<td width="100">*</td>
<td width="100">*</td>
<td width="100">0</td>
<td width="100">0</td>
<td width="100"></td>
</tr>
May 2008 573
Customer Relationship Marketing Using WebExtensions with CRM
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
. HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
Current VersionActiveX
GraphicalServicePCView
CRMSyncTimeout=5000 (Dword)
Default setting is 15000. This is the time in milliseconds, which the sync thread waits for both WebExtension content and CRM content to be downloaded and ready. After this timeout the CRM session is stopped, and the original navigation will be shown. The CRM session is skipped due to sync timeout.
Allow list
The commands and parameters for the CRM service control are stored in optional parameters in the allow list tables entries.
This is an example of a CRM session control:
<tr>
<td width="250">*</td>
<td width="250">*basselection.htm*</td>
<td width="100">*</td>
<td width="100">*</td>
<td width="100">1</td>
<td width="100">0</td>
<td width="100"></td>
<td width="100">CRM:CMD=START_|_SESSIONURL=file://C:\start.htm</td>
</tr>
There can be multiple optional parameter entries in one allow list table entry. This allowes multiple commands at one point in HTML flow, that will be exe-cuted one after another!
574 May 2008
Using WebExtensions with CRM Customer Relationship Marketing
The general format of CRM service control entries is:
CRM:CMD=ACTION_|_PARAM=VALUE_|_PARAM=VALUE ...
The CRM: is header for the CRM service, CMD=ACTION are commands that are sent directly to CRM by calling the method with the same name, PARAM=VALUE are parameters for the commands/methods or parameter for the sync thread. The standard WebExtensions variable exchange [#VAR;for-mat;default#] can be used in complete optional parameter string, variable will be exchanged at moment of read of optional parameter at flow match. The real time variable exchange [&VAR;format;default&] can be used only in ACTION and VALUE substrings of optional parameter!
CMD=ACTION commands for CRM
NOTE: All commands are asynchronous requests, that can be ignored if the state of the CRM is not valid for that command!
action description
START starts the CRM session
STOP stops the CRM session
PAUSE pause the CRM session
RESUME resume the CRM session
PRELOAD preload the CRM session
START_STOP start the CRM session and stop it at next CancelDia-log() or DoDialog(), only the start parameter can be con-figured, stop method is called with empty string and CCCRM_PARAM_STOPANDHIDE parameter!
MOVE moves and/or resizes the CRM framework window
May 2008 575
Customer Relationship Marketing Using WebExtensions with CRM
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
CRM methods start(), stop(), pause(), resume() have always 2 parameters:
1. parameter: CHAR*string representing all data that this method needs
2. parameter: SHORThow to show/hide the dialog
CRM method preload() has 1 parameter:
1. parameter: CHAR*string representing all data that this method needs
Move is synthetic command that cann execute CRM methods SetSize() and/or SetPos(), both methods always have 2 parameters:
1. parameter: LONGLeft(X) position for setPos() or Width for SetSize()
2. parameter: LONGTop(Y) position for setPos() or Height for SetSize()
576 May 2008
Using WebExtensions with CRM Customer Relationship Marketing
PARAM=VALUE
param description
SYNCTYPE second parameter for start/stop/resume/pause methods of CRM, 3 as a value will start sync thread, wait for WebExtension content and CRM content to be downloaded and ready for use, than show instantly both and end sync thread
SYNCURL this URL will be shown for the time the sync thread is running, USE_REGISTRY_DEFAULT as a value will use PCView’s CRM-SyncURL registry value for this.
SESSIONTIMER first parameter for start method
SESSIONURL first parameter for start and preload methods
SESSIONXMLHTTPREQUESTTIMER first parameter for start and preload methods
SESSIONUSER first parameter for start and preload methods
SESSIONPASSWORD first parameter for start and preload methods
POSX first parameter for MOVE com-mand and SetPos method
POSY second parameter for MOVE command and SetPos method
SIZEW first parameter for MOVE com-mand and SetSize method
SIZEH second parameter for MOVE command and SetSize method
DELAYSTOPUNTILCRMEND first parameter for stop method, VALUE "ON" will allow content to end itself!
May 2008 577
Customer Relationship Marketing Using WebExtensions with CRM
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: D
:\Pro
Topa
s\W
eb-
Ext
ensi
ons
\Doc
u\B
ook\
CR
M.f
m
NOTE: The parameters that are sent to CRM methods as a string parameter shall be encoded in UTF8, the CRM is a UNICODE appli-cation that converts all incomming ProTopas method string parame-ters from UTF8 to UTF16!
Complex example:
<!--td width="100">CRM:CMD=START_|_SYNCTYPE=3_|_SYNCURL=USE_REGISTRY_DEFAULT_|_SESSIONURL=http://server/market-ing.htm_|_SESSIONTIMER=15000</td-->
Complex example of allow list entry with 2 commands and usage of variable:
<tr>
<td width="250">*</td>
<td width="250">*basselection.htm*</td>
<td width="100">*</td>
<td width="100">*</td>
<td width="100">1</td>
<td width="100">0</td>
<td width="100"></td>
<td width="100">CRM:CMD=MOVE_|_POSX=100_|_POSY=100</td>
<td width="100">CRM:CMD=START_|_SESSIONURL=[&MY_VAR;;http://server/marketing.default.htm&]</td>
</tr>
578 May 2008
Using WebExtensions with CRM Customer Relationship Marketing
May 2008 579
Installation The installation procedure
© S
iem
ens
Nix
dor
f In
form
atio
nssy
ste
me
AG
19
95
Pfa
d: d
:\Pro
Topa
s\W
eb-E
xten
sio
ns\D
ocu\
Boo
k\In
sta
llatio
n.fm
InstallationThis chapter describes the installation of the ProTopas/Web-Extensions as an add-on product of the ProTopas/Manager or the ProTopas/Kit. You should note here that the base product and the add-on product must be installed together in a single run of the installation program. Use the installation of ProTopas/Kit with ProTopas/Web-Extensions at a development PC and the installation of ProTopas/Manager and ProTopas/Web-Extensions on a self-service device.
The installation procedure
Launch Install program.
Insert the registration key diskette of the base product (i.e. ProTopas/Manager or ProTopas/Kit).
Respond to the prompt asking whether there is a further registration key diskette with "Yes".
Insert the registration key diskette of the add-on product (ProTopas/Web-Extensions or ProTopas/HTML-Dialog).
Respond to the prompt asking whether there is a further registration key diskette with "No" (unless you do have another registration key diskette for some other product).
Insert the customizing diskette of the base product (the file custom.ctl must contain settings for the ProTopas/Web-Extensions or ProTopas/HTML-Dialog).
During the installation of ProTopas/Manager you will need the hardware diskette of the self-service terminal on which it is being installed.
No hardware diskette will be requested during the installation of ProTopas/Kit.
If you are installing ProTopas/Web-Extensions or ProTopas/HTML-Dialog together with ProTopas/Kit you have the option of specifying an installation path other than the default path c:\protopas.
The chosen path is specified in the form: <drive letter>:\<path>
The remainder of the installation procedure is carried out automatically.
580 May 2008
Products to be installed Installation
When the installation has finished you will have to reboot the target system to enable the system configuration to be finalized (e.g. registration of the controls).
The installation of ProTopas/Web-Extensions or ProTopas/HTML-Dialog and the ProTopas/Manager or ProTopas/Kit must always be carried out during a single run of the installation program!
A subsequent separate installation of ProTopas/Web-Extensions alone is not possible and is not supported. Attempts to so this may give rise to problems with the parameter settings or in the registry, making it necessary to perform an entire reinstallation.
Products to be installed
ProTopas/Web-Extensions or ProTopas/HTML-Dialog
ProTopas/Web-Extensions or ProTopas/HTML-Dialog is the product which installs the Web Graphical Service and all the controls. This is an add-on product which may be installed together with a ProTopas/Manager or ProTopas/Kit installation on the target system. An additional key disk is required for installation. The customizing disk is shared this the ProTopas/Manager or ProTopas/Kit.
WebBot SNI_PC_Variable
The WebBot components are installed in the directory C:\PROTOPAS\WEBBOT.
To configure the WebBot for use in FrontPage, it has to be copied manually to another location (see also section ’Installing the WebBot in Front Page 2000’ on page 287).
Required preinstalled software
Before starting the installation of the corresponding product, the following base software installation must be executed:
Installation of Windows/NT 4.0 or Windows XP Workstation with current Service pack, Internet Explorer 6.x or 7.x and installed network adapter.
May 2008 581
Installation Tutorial
© S
iem
ens
Nix
dor
f In
form
atio
nssy
ste
me
AG
19
95
Pfa
d: d
:\Pro
Topa
s\W
eb-E
xten
sio
ns\D
ocu\
Boo
k\In
sta
llatio
n.fm
Please follow the installation description for this Microsoft operating system. Install the network adapter and connect the PC of the self-service system to the network.
Sound card driver installation (0ptional)
Most sound cards are soundblaster compatible.
Trace and Error Logging
To trace error situations, you are recommended to use the trace and error logging tool from CSCW32 or ProBase. All modules from ProTopas/Web-Extensions trace to this tool.
Required relevant base product
ProTopas/Manager 3.x/4.x or
ProTopas/Kit 3.x/4.x
Tutorial
The ProTopas/Development Suite shows how a ProTopas ATM appli-cation is implemented. It explains how to create a HyperLink driven Application and builds up a complete transaction set step after step by using the ProTopas/Web-Extensions as it’s user interface.
582 May 2008
Tutorial Installation
May 2008 583
Configuration Restart Manager configuration of High Level GS
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
ConfigurationThe differences between the High Level Graphical Service and the Web Graphical Service can be found in the Start options of the Dialog Framework. Because the Web Graphical Service is implemented as an executable file, there must be a special entry in the ProTopas Restart Manager section of the registry. The High Level Graphical Service is installed with the following options:
Restart Manager configuration of High Level GS
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
application=C:\PROTOPAS\BIN\FwLoadPm.EXE,4,1,21,,,CCDataFWCCDatDic CCOplFW CCEppFW CCCdmFW CCCashInFWCCJournal CCSmiFW CCSyncFW CCSelFW CCCardFWCCPresFW CCDialog CCScriptFW CCSecureFWCCTransactionFW CCProtFW1 CCServiceFW CCCrdValFWCCApplFW CCJourPrtFW CCFormat
The program ShowDlg.exe is responsible for waiting for the Dialog Framework to start up correctly. Then the application will start running and display the appropriate pages.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
ShowDlg=C:\PROTOPAS\BIN\ShowDlg.EXE,4,0,8,,,DIA_RESTART
The Programs parameter may be set like this:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
Programs=CCBase,CCBaseCtrl,application,ShowDlg,CCStart
584 May 2008
Restart Manager configuration of Web GS Configuration
Restart Manager configuration of Web GS
The underlined sections have to be changed for the ProTopas/Web-Extensions. CCPresFW and CCDialog must be omitted, HTMLDialogControl must be added:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
application=C:\PROTOPAS\BIN\FwLoadPm.EXE,4,1,21,,,CCDataFWCCDatDic CCOplFW CCEppFW CCCdmFW CCCashInFWCCJournal CCSmiFW CCSyncFW CCSelFW CCCardFWCCPresFW CCDialog CCScriptFW CCSecureFWCCTransactionFW CCProtFW1 CCServiceFW CCCrdValFWCCApplFW CCJourPrtFW CCFormat HTMLDialogControl
HTMLDialogControl is responsible for checking memory and restarting the Dialog Framework, if necessary (see also section ’Memory leak of the Internet Explorer’ on page 309).
The parameter ShowDlg.exe is no longer necessary and can be deleted.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
ShowDlg=C:\PROTOPAS\BIN\ShowDlg.EXE,4,0,8,,,
The browser must be started with the following option:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
CCDialog=C:\PROTOPAS\BIN\CCDialog.EXE,4,1,6
May 2008 585
Configuration Repository manager configuration
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
The CCCheckFW which is used for input checking must be started separately because of an internal exception handling:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
Appl_Check=C:\PROTOPAS\BIN\FwLoadPm.exe,4,1,19,,,CCCheckFW
The Programs parameter must therefore be changed as a result of the new entry for starting the browser:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
RESTARTapplication1
Programs=CCBase,CCBaseCtrl,application,CCDialog,Appl_Check, CCStart
Repository manager configuration
CCCheckFW and HTMLDialogControl must be added to the repository section, the entry for the dialog Framework can be deleted:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCREPMGR/
FRM_REPOSITORYCCCheckFW=C:\ProTopas\Bin\CCCheckFW.DLLHTMLDialogContol=C:\ProTopas\Bin\HTMLDiCt.DLLCCDialog=C:\ProTopas\Bin\CCDialog.DLL
Further configuration settings
All other configurations are used by the controls and the Dialog Framework itself. The settings can be found under the key:
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX
586 May 2008
Configuration of the softkeys Configuration
See also chapter ’Controls’ on page 77. See also chapter ’Web Graphical Service components’ on page 279. Here you will find further configuration settings of the controls.
Configuration of the softkeys
While working on a softkey machine with the ProTopas/Web-Extensions, a CEN/XFS configuration setting must be changed to retrieve to right codes from each softkey. There is a parameter SNIKeycodes, which has to be set to 0, meaning that the standard CEN/XFS softkey configuration is used and not a special one. The High Level Graphical Service uses a different configuration.
HKEY_CLASSES_ROOTWOSA
XFS_ROOTPHYSICAL_SERVICES
EPPSNIKeyCodes=0
While working with SNIKeyCodes=0, the position of the softkeys should be as follows:
Fig. 101: Positions of the softkeys
Help Print Cancel Correct Confirm
F1
F2
F3
F4F5
F6
F7
F8
May 2008 587
Configuration Configuration of the softkeys
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
Additionally, there is a possibility to configure the codes for the function GetTerminateChar() (see also section ’CCDia-logFW.GetTerminateChar’ on page 337). In the following section in the Registry there are parameters for each softkey and EPP key.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsEPPKey
0Value=0
1Value=1
......
9Value=9
F1Value=H
F2Value=D
...Value=...
F8Value=G
CancelValue=0x01
CorrectValue=0x02
HelpValue=0x03
ConfirmValue=0x04
PrintValue=0x05
ReservedValue=*
DecPointValue=,
In order to return different codes for the terminating character, the Value parameter of each section must be changed.
588 May 2008
Configuration of variables for all architectures Configuration
Configuration of variables for all architectures
All variables which are used to store the input values and the value of the pressed button are members of the Web Graphical Service. There are access functions which may be used to request those values via use of the Data Dictionary FW. To use these values correctly, the following configuration settings in the Data Dictionary parameters must be set:
Value of input fields 1 to 10
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict
PropertiesDLG_INPUT_RESULT1_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_SDATA_TYPE=STRINGOWNER_FW=CCDialog
...DLG_INPUT_RESULT10_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Value of unformatted input fields 1 to 10
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT1_S_UNFORMATTED_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_S_UNFORMATTED_SDATA_TYPE=STRINGOWNER_FW=CCDialog
...DLG_INPUT_RESULT10_S_UNFORMATTED_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
May 2008 589
Configuration Configuration of variables for all architectures
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
Value of status variables 1 to 10
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT1_L
DATA_TYPE=LONGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_LDATA_TYPE=LONGOWNER_FW=CCDialog
...DLG_INPUT_RESULT10_L
DATA_TYPE=LONGOWNER_FW=CCDialog
Value of Viewstate variables 1 to 10
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict
PropertiesDLG_INPUT_RESULT1_VIEWSTATE_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_VIEWSTATE_SDATA_TYPE=STRINGOWNER_FW=CCDialog
...DLG_INPUT_RESULT10_VIEWSTATE_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Error Counter Variables 1 to 10 for amount input retries
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT1_S_ERR_COUNTER_L
DATA_TYPE=LONGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_S_ERR_COUNTER_LDATA_TYPE=LONGOWNER_FW=CCDialog
590 May 2008
Configuration of variables for all architectures Configuration
...DLG_INPUT_RESULT10_S_ERR_COUNTER_L
DATA_TYPE=LONGOWNER_FW=CCDialog
Maximum mumber of characters Variables 1 to 10
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT1_S_MAXCHARS_L
DATA_TYPE=LONGOWNER_FW=CCDialog
DLG_INPUT_RESULT2_S_MAXCHARS_LDATA_TYPE=LONGOWNER_FW=CCDialog
...DLG_INPUT_RESULT10_S_MAXCHARS_L
DATA_TYPE=LONGOWNER_FW=CCDialog
Variables for setting the Web path in scripts
These variables are initialized by the Web Graphical Service during Startup. The content is taken from the parameters RootPath (see also section ’RootPath’ on page 620), DefaultLanguage (see also section ’DefaultLan-guage’ on page 619) or actual set language, RootPathOffline (see also section ’RootPathOffline’ on page 620).
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_WEBNAME_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
VAR_LANGUAGE_SDATA_TYPE=STRINGOWNER_FW=CCDialog
VAR_OFFLINE_WEBNAME_SDATA_TYPE=STRINGOWNER_FW=CCDialog
May 2008 591
Configuration Configuration of variables for all architectures
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
Value of selected item in popup page of a PCList Control
(see also section ’List control - General 1 page’ on page 169)
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_PCLIST_VALUE_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Variable to be set after scanner errors
(see also section ’Editing scanned documents’ on page 422)
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_SCANNER_ERROR_L
DATA_TYPE=LONGOWNER_FW=CCDialog
Variable that contains page name, which cannot be loaded
This variable can be used in the local pages in the offline directory. It deter-mines, which page should be loaded and could not be retrieved.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_OFFLINE_HTML_NAME_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Variable for resizing Web Graphical Service in test environment
These variables are used by test tools to resize the Web Graphical Service during the development cycle.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_PCDIALOG_RT_SIZEX_L
DATA_TYPE=LONGOWNER_FW=CCDialog
592 May 2008
Variables for Web-Extensions/ClassicLink Configuration
VAR_PCDIALOG_RT_SIZEY_LDATA_TYPE=LONGOWNER_FW=CCDialog
Variables for Web-Extensions/ClassicLink
The following variables are only valid in the architecture Web-Exten-sions/ClassicLink:
Value of last pressed button
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT_STRING
DATA_TYPE=STRINGOWNER_FW=CCDialog
Number of entered characters for last input field
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT_COUNT
DATA_TYPE=USHORTOWNER_FW=CCDialog
Code of last pressed termination key
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesDLG_INPUT_RESULT_TERM
DATA_TYPE=CHAROWNER_FW=CCDialog
May 2008 593
Configuration Variables for Web-Extensions/HyperLink
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
Variables for Web-Extensions/HyperLink
The following variables are only valid in the architecture Web-Exten-sions/HyperLink:
Value of last pressed button
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_DLG_INPUT_RESULT_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
594 May 2008
Variables for Web-Extensions/HyperLink Configuration
Chosen Identification value of menu button
(see also section ’Button control - General 2 page for menu buttons’ on page 94)
(see also section ’Special aspects of menu buttons’ on page 41)
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor NixdorfProTopas/CurrentVersion/DataDict/
PropertiesVAR_IDENTIFICATION_REQUEST_L
DATA_TYPE=LONGOWNER_FW=CCDialog
Caption of menu button
(see also section ’Button control - Caption page’ on page 101).
(see also section ’Special aspects of menu buttons’ on page 41).
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_HEADLINE_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Link to HTML page of menu button
(see also section ’Button control - General 2 page for menu buttons’ on page 94)
(see also section ’Special aspects of menu buttons’ on page 41)
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_FUNCTION_STARTPAGE_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
May 2008 595
Configuration Variables for Web-Extensions/ExtraLink
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Doc
u\B
ook\
Con
figur
atio
n.fm
Variable for current Internet page name
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_MY_HTML_NAME_S
DATA_TYPE=STRINGOWNER_FW=CCDialog
Variables for Web-Extensions/ExtraLink
The following variables are only valid in the architecture Web-Exten-sions/ExtraLink:
Frameworkname of the actual Web Dialog
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/DataDict/
PropertiesVAR_PCDIALOG_FW_NAME
DATA_TYPE=STRINGOWNER_FW=WebDialog
596 May 2008
Variables for Web-Extensions/ExtraLink Configuration
May 2008 597
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ParametersThe following chapter explains all parameters for the Graphical Service and for the ActiveX Controls. The properties of the ActiveX Controls are described in the Controls chapter (see also section ’Controls’ on page 77). The parameters described in this section will affect the controls at runtime. All of the default value settings in the properties of all ActiveX Controls are made in Registry sections of the self-service device. These settings are explained here.
Graphical Service
The following parameters describe the settings for the Browser overlay modules. The Start HTML page and other HTML pages can be configured here.
Parameters for CCDialog
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServiceCCDialog
LOGOn
With this parameter the logging of the HTML pages, which are shown in the Web browser is started. An extra log file is written, which contains the HTML names in chronological order. Even exceptions and memory leaks are logged. When the maximum number of entries in the log file is reached, the logging stopps automatically. This logging mechanism is not though to be a runtime log. It’s only for development reasons.
(see "LOGFilePath" on page 598), (see also section ’Logging the flow of the HTML pages’ on page 320)
Length: 1Range: 0 - Logging is off
1 - Logging is switched onDefault: 0
598 May 2008
Graphical Service Parameters
LOGBufferSize
This parameter determines the maximum number of logs, temporary stored in memory. For performance reasons not every page is directy logged into the file. Only at shutdown, this list is written into the file completely. This parameter has to be available, if Parameter LogOn = 1.
(see "LOGFilePath" on page 598), (see also section ’Logging the flow of the HTML pages’ on page 320)
Length: 3Range: 1 - 100Default: 10
LOGFilePath
This parameter keeps the filename without extension and path of the Log file. If the maximum number of entries is reached, the logging stopps automatically. This parameter has to be available, if Parameter LogOn = 1.
(see "LOGFileSize" on page 598), (see also section ’Logging the flow of the HTML pages’ on page 320)
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\temp\HTMLFlow
LOGFileSize
This parameter keeps the maximum size of the log file in Byte. When the maximum number is reached the Web Browser willl stop logging. This parameter has to be available, if Parameter LogOn = 1.
(see "LOGFilePath" on page 598), (see also section ’Logging the flow of the HTML pages’ on page 320)
Length: 8Range: 100 - 10 000 000Default: 1 000 000
VirtualKeyboardOn
With this parameter the activation of a virtual keyboard is enabled. The keyboard may automatically be started at pages, which need any alphanu-merical input. This is done by script in those pages. The activation mechanism is disabled, if this parameter is set to 0.
May 2008 599
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 1Range: 0 - Keyboard activation is disabled
1 - Keyboard activation is enabledDefault: 1
ADA
With this parameter the activation of ADA (Americans with Disabilities Act) is enabled. This does not mean, the activation is automatically done. This is done by Properties in the Contents STD/ATM Control.
Length: 1Range: 0 - ADA is disabled
1 - ADA activation is enabledDefault: 0
EppRTC
With this parameter the EPP Overlay is activated. This means, there is a continous ExeCommandGetData-function running and Web-Extensions do not have to call the EPP FW Open- and Close-functions all the time. This may speed up the transaction.
Length: 1Range: 0 - EppRTC is disabled
1 - EppRTC is enabledDefault: 1
ADATimeoutExt
This parameter prolongs the timeout periode in a percentage value. If ADA is activated, it might be better for people with disabilities to have a longer Timeout. This percentage value, which must be larger than 100, specifies the new timeout periode for ADA.
Length: 3Range: >100 Value in percentage, which prolongs the timeout value.Default: 200
ADAActionOnStart
This parameter may contain a script, which is started, when ADA is activated. This script can be used to start a tutorial or to link to a special page, etc.
600 May 2008
Graphical Service Parameters
Length: 20000Range: alphanumeric, ScriptDefault: SKIP
DoDialogTimer
This parameter supervises the time in milliseconds after a DoDialog() has been called by the Step until the page is been loaded. If there are problems loading the page, this timer will expire and the ProTopas/Web-Extensions will reboot the system. The time has to be specified dependent on the system capacity.
0 means ’No supervision’.
Length: 6Range: 0 - 60000Default: 0
DoDialogTimerPageTimerExtend
After the page timer of the Contents ATM Control has been expired, this parameter offers a little bit more time to end the DoDialog. If it is not returning to the step after this timer has expired the ProTopas/Web-Extensions will reboot the system.
Length: 6Range: 0 - 60000Default: 5000
WindowTop
Only in test environments on a laptop or PC. Please do not set on the maschines on customer environments.
X coordinate in pixels of the Web Graphical Services window upper left corner.
Length: 6Range: 0 - 232
Default: 0
WindowLeft
Only in test environments on a laptop or PC. Please do not set on the maschines on customer environments.
May 2008 601
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Y coordinate in pixels of the Web Graphical Services window upper left corner.
Length: 6Range: 0 - 232
Default: 0
WindowWidth
Only in test environments on a laptop or PC. Please do not set on the maschines on customer environments.
Width in pixels of the Web Graphical Services window.
Length: 6Range: 0 - 232
Default: Full screen width
WindowHeight
Only in test environments on a laptop or PC. Please do not set on the maschines on customer environments.
Height in pixels of the Web Graphical Services window.
Length: 6Range: 0 - 232
Default: Full screen height
Parameters for Virtual Keyboard
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServiceVK
Pos
This parameter specifies the position where the HTML page for Virtual Keyboard may be loaded. It’s the best not to cover input fields, where the input shall be displayed.
602 May 2008
Graphical Service Parameters
Length: 1Range: 0 - Upper left corner
1 - Upper right corner2 - Lower right corner3 - Lower left corner4 - Middle of the screen. See parameters Top and Left for upper left corner
Default: 2
Width
This parameter specifies the width of the container (Virtual Keyboard Dialog Window) of the HTML page for Virtual Keyboard.
Length: 5Range: 1 - 99999Default: 400
Height
This parameter specifies the height of the container (Virtual Keyboard Dialog Window) of the of the HTML page for Virtual Keyboard.
Length: 5Range: 1 - 99999Default: 150
Left
This parameter specifies the distance from the left side of the screen to the upper left corner of the container (Virtual Keyboard Dialog Window) of the of the HTML page for Virtual Keyboard.
Length: 5Range: 0 - 99999Default: 0
Top
This parameter specifies the specifies the distance from the top of the screen to the upper left corner of the container (Virtual Keyboard Dialog Window) of the of the HTML page for Virtual Keyboard.
May 2008 603
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 5Range: 0 - 99999Default: 0
MAXonStart
This parameter enables the virtual keyboard to become visible, when the keyword WNvikey:START is used. If the virtual keyboard is not maximized, this can be done with the keyword WNVKpos:MAX.
Length: 1Range: 0 - Stay minimized
1 - Start maximized with the sizes from Height, left, top, width
Default: 1
MINonEnd
This parameter enables the virtual keyboard to become invisible, when the keyword WNvikey:END is used. If the virtual keyboard is not minimized with this parameter, this can be done with the keyword WNVKpos:MIN.
Length: 1Range: 0 - Stay maximized
1 - End minimizedDefault: 1
WindowPlacement
This parameter specifies, which behavior of the virtual keyboard is desired. So a minimize/maximize behavior or a show/hide behavior can be configured. With min/max on slow machines it is possible that the window movement is visible.
Length: 1Range: 0 - nothing on init, start & stop
1 - MIN on init, MAX on start, MIN on stop2 - HIDE on init, SHOW on start, HIDE on stop
Default: 1
604 May 2008
Graphical Service Parameters
CursorEnable
This parameter specifies if the cursor shall be visible or invisible during a virtual keyboard session.
Length: 1Range: 0 - Cursor invisible
1 - Cursor visibleDefault: 1
HRef
This parameter specifies the name and path of the HTML page for Virtual Keyboard.
Length: 1024Range: alphanumericDefault: C:\ProTopas\Web\VK\vk.htm
ScriptLanguage
This parameter specifies the script language of the start and end script.
(see also ’ScriptAtStart’ on page 604) (see also ’ScriptAtEnd’ on page 605)
Length: 1024Range: alphanumericDefault: javascript
ScriptAtStart
This parameter specifies a script in the Virtual Keyboard page, which may be used at start of the keyboard session, when the page will be maximized. For example it could be necessary to read a language variable and then to switch to a language specific keyboard page. This parameter may contain a script directly in {} brackets or the name of a function.
Example: {window.myLabel.innerText='ON';} or vkOnStart()
Length: 1024Range: alphanumericDefault: -
May 2008 605
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ScriptAtEnd
This parameter specifies a script in the Virtual Keyboard page, which should be activated at the end of a keyboard session, when the page will be minimized again. This parameter may contain a script directly in {} brackets or the name of a function.
Example: {window.myLabel.innerText='ON';} or vkOnEnd()
Length: 1024Range: alphanumericDefault: -
CheckWND
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the hangup check is repeated. If during these milli-seconds no response is received the Virtual Keyboard window will be restarted.
Length: 10Range: 0 - 9999999999Default: 60000
CheckWNDmax
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the Virtual Keyboard instance waits for the response on a window event. If during these milliseconds no response is received the Virtual Keyboard window will be restarted.
Length: 10Range: 0 - 9999999999Default: 15000
CheckMem
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds to check for wasted memory (memory leaks).
606 May 2008
Graphical Service Parameters
Length: 10Range: 0 - 9999999999Default: 120000
CheckMEMmax
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the maximum memory in megabytes the Virtual Keyboard instance may grow up to until the instance is restarted.
Length: 10Range: 0 - 9999999999Default: 64
KillHardWAIT
This parameter belongs to a set of parameter the Virtual Keyboard instance is checking constantly for a hangup situation. This parameter specifies the time in milliseconds the instance will wait after it has received the WM_CLOSE event until it will call TerminateProcess(). In this case even hangups with a hanging main thread will be snapped.
Length: 10Range: 0 - 9999999999Default: 15000
MarketingAllowFocus
This parameter allows the virtual keyboard to loose the focus by demand. This may be necessary during development, because otherwise no other windows will be visible when Virtual Keyboard is activated.
Length: 1Range: 0 Virtual Keyboard is always on top
1 Virtual Keyboard may loose the focus if developperactivates another window.
Default: 0
May 2008 607
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Parameters for surfing
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServiceSurfing
SurfingURL
Specifies the URL with the keys "Cancel" "Back" "Forward" that are shown when pages which do not belong to the ProConsult application (e.g. Internet pages, pages of other servers) are shown.
The SurfingURL makes it possible to leave the non-ProConsult pages and return to the ProConsult application.
(see "SurfingBrowserWidth" on page 608), (see "SurfingBrowserPos" on page 608)
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\German\SurfingFooter.htm
AccessViolationURL
Specifies the URL that is shown when the Graphical Service tries to navigate to a non-ProConsult URL which contains scripts or other components that could make the return to the ProConsult application impossible.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Allow\AccessViolationStart.htm
SurfingBrowser
Specifies whether a second browser is called to show the SurfingURL with the keys "Cancel" "Back" "Forward" when pages which do not belong to the ProConsult application (e.g. Internet pages, pages of other servers) are shown.
The SurfingURL makes it possible to leave the non-ProConsult pages and return to the ProConsult application.
(see "SurfingURL" on page 607)
608 May 2008
Graphical Service Parameters
Length: 1Range: 0 - Non-ProConsult pages are shown in full-screen mode.
No second browser is called.1 - A second browser is called to show the SurfingURL.
Default: 1
SurfingBrowserPos
Specifies the position of the second browser for the SurfingURL when pages which do not belong to the ProConsult application (e.g. Internet pages, pages of other servers) are shown.
The SurfingURL makes it possible to leave the non-ProConsult pages and return to the ProConsult application.
(see "SurfingURL" on page 607), (see "SurfingBrowser" on page 607), (see "SurfingBrowserWidth" on page 608)
Length: 5Range: UP - The second browser is found at the top of the
screen.DOWN- The second browser is found at the bottom of the
screen.LEFT- The second browser is found at the left of
the screen.RIGHT- The second browser is found at the right of
the screen.Default: DOWN
SurfingBrowserWidth
Specifies the height in pixels (when SurfingBrowserPos= UP or DOWN) or the width in pixels (when SurfingBrowserPos= LEFT or RIGHT) of the second browser for the SurfingURL when pages which do not belong to the ProConsult application (e.g. Internet pages, pages of other servers) are shown.
(see "SurfingURL" on page 607), (see "SurfingBrowser" on page 607), (see "SurfingBrowserPos" on page 608)
Length: 3Range: 0-800Default: 74
May 2008 609
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TextFont
Specifies the font of the wait message when the new browser restarts.
Length: 128Range: alphanumericDefault: Arial
TextSize
Specifies the size of the wait message when the new browser restarts.
Length: 2Range: numericDefault: 12
TextColour
Specifies the colour of the wait message when the new browser restarts.
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
TextAlignX
Specifies the x-position in pixels of the wait message when the new browser restarts.
(see "TextCenterX" on page 609)
Length: 3Range: numericDefault: 0
TextCenterX
Specifies whether the wait message is horizontally centered on the button.
(see "TextAlignX" on page 609)
Length: 1Range: 0 - The wait message is not horizontally
centered (see exact x-position in TextAlignX).
610 May 2008
Graphical Service Parameters
1 - The wait message is horizontally centered(ignore TextAlignX).
Default: 1
TextAlignY
Specifies whether the wait message is vertically centered.
(see "TextCenterY" on page 610)
Length: 3Range: numericDefault: 0
TextCenterY
Specifies the y-position in pixels of the wait message relative to the button.
(see "TextAlignY" on page 610)
Length: 1Range: 0 - The wait message is not vertically centered
(see exact y-position in TextAlignX).1 - The wait message is vertically centered
(ignore TextAlignY).Default: 1
TextBold
Specifies whether the wait message is printed bold when the new browser is called.
Length: 1Range: 0 - The wait message is not printed bold.
1 - The wait message is printed bold.Default: 1
TextItalic
Specifies whether the wait message is printed in italics when the new browser is called.
Length: 1Range: 0 - The wait message is not printed in italics.
1 - The wait message is printed in italics.Default: 0
May 2008 611
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TextUnderline
Specifies whether the wait message is printed underlined when the new browser is called.
Length: 1Range: 0 - The wait message is not printed underlined.
1 - The wait message is printed underlined.Default: 0
TextStrikeout
Specifies whether the wait message is printed strikeout when the new browser is called.
Length: 1Range: 0 - The button's caption is not printed strikeout.
1 - The button's caption is printed strikeout.Default: 0
TextFontCharSet
Specifies the character set for the wait message, when the browser restarts.
Length: 3Range: 0 ANSI_CHARSET
1 DEFAULT_CHARSET2 SYMBOL_CHARSET77 MAC_CHARSET128 SHIFTJIS_CHARSET129 HANGUL_CHARSET130 JOHAB_CHARSET134 GB2312_CHARSET136 CHINESEBIG5_CHARSET161 GREEK_CHARSET162 TURKISH_CHARSET163 VIETNAMESE_CHARSET177 HEBREW_CHARSET178 ARABIC_CHARSET186 BALTIC_CHARSET204 RUSSIAN_CHARSET222 THAI_CHARSET238 EASTEUROPE_CHARSET
612 May 2008
Graphical Service Parameters
255 OEM_CHARSET... in future new charset available
Default: 0
MessageDLGWidth
Specifies the width of the window for the wait message when the browser restarts.
Length: 3Range: 10-800Default: 400
MessageDLGHeight
Specifies the height of the window for the wait message when the browser restarts.
Length: 3Range: 10-600Default: 200
Text
Specifies the text for the wait message when the browser restarts.
Length: 512Range: 10-800Default: Please wait...
SurfingScrollUp
Specifies the number of pixels the screen is scrolled when the ScrollUp button is pressed.
Length: 3Range: 0-600Default: 100
SurfingScrollDown
Specifies the number of pixels the screen is scrolled when the ScrollDown button is pressed.
May 2008 613
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 3Range: 0-600Default: 100
SurfingScrollLeft
Specifies the number of pixels the screen is scrolled when the ScrollLeft button is pressed.
Length: 3Range: 0-800Default: 50
SurfingScrollRight
Specifies the number of pixels the screen is scrolled when the ScrollRight button is pressed.
Length: 3Range: 0-800Default: 50
SurfingJOBSOn
This parameter activates the possibility to load a graphic during the restart of the Browser after the External page mode is finished.
(see "Stopping the Internet mode" on page 451), (see "SurfingJOBSStart" on page 613)
Length: 1Range: 0 - The Message Window with the contents of the Text
Parameter is displayed1 - The Bitmap from SufingJOBSStart is shown
Default: 0
SurfingJOBSStart
The programm to load the graphic is specified here. Normally the programm SHOWBMP.EXE is used here. It needs two input parameter. The first is the Graphic to be loaded and the second is TOPMOST to load the graphic on top of the othe windows.
614 May 2008
Graphical Service Parameters
Length: 1024Range: alphanumericDefault: -
SurfingJOBSEnd
The programm to unload the graphic is specified here. Normally the programm SHOWBMP.EXE StopWaiting is used here.
Length: 1024Range: alphanumericDefault: -
SurfingJOBSPause
The time interval between loading the graphic and unloading it is specified here. If the Unload would be too quick, an error would be generated, so it’s a good idea to wait a moment until the unload is called.
Length: 6Range: 000001 - 999999Default: 3000
SurfingJOBSCheck
This parameter is used as a double check mechanism, if the SurfingJOB-SStart and SurfingJOBSEnd jobs have already been finished after the time in ms specified here. If one or both are not finished jet, they will be killed automatically.
Length: 6Range: 000001 - 999999Default: 2500
Parameters for the AllowList
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServiceAllowList
May 2008 615
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ConfigPageURL
Specifies the URL of the AllowList.The AllowList is an HTML page that contains a table with all possible html pages which customers are permitted to call during the ProConsult appli-cation. Access is denied to all other pages.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Allow\AllowList.htm
Parameters for the Browser
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServicePCBrowser
StartPage
Specifies the URL that the PCBrowser uses as startpage. If no startpage is specified, the PCBrowser uses the startpage of MS Internet Explorer.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\German\Start.htm
CursorEnable
Specifies whether the cursor is to be shown during the application.
Length: 1Range: 0 - Cursor is not visible
1 - Cursor is visibleDefault: 0
InternetModeCursorEnable
Specifies whether the cursor is to be shown while external pages are shown. This may be useful if navigation through those pages is to be performed via trackball.
616 May 2008
Graphical Service Parameters
Length: 1Range: 0 - Cursor is not visible
1 - Cursor is visibleDefault: 0
TabAsConfirm
This parameter manipulates the reaction of the <Tab>-Key during multiple input.
Length: 1Range: 0 - Tab is used to jump to the next field without checking
the actual input1 - Tab is confirming and checking the actual input first and
activates the next input thenDefault: 0
WebExtTabing
This parameter will suport TAB key behavior during external page mode: tabing between text fields, links, frames and more.
Length: 1Range: 0 - Tab during external page mode is not possible
1 - Tab during external page mode is allowedDefault: 1
WebExtPrintCheck
This parameter will support search for <--PC_HTMLGEN_RULE:PRINT_THIS --> tags in external page mode (see also section ’Printing HTML pages in windows mode’ on page 299).
Length: 1Range: 0 - Searching for the tags is omitted. Pages are
generated quicker1 - Searching for the tags is done
Default: 1
WebExtOfflineCheck
This parameter will support Offline handling, even when IE would normally show one of the internal error pages. The Graphical service is doing offline handling in this case.
May 2008 617
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 1Range: 0 - IE internal error pages are shown in offline cases
1 - IE internal error pages are not shown in offline cases. Graphical Service Offline handling is done in this case.
Default: 1
WebExtNoHistory
This parameter surpresses the storage of a historie list, which is used for navigations to previous vistited pages. So the waste of memory will be reduced, when setting this parameter to 1.
Length: 1Range: 0 - Historie list is still stored
1 - Historie list is not stored. Less memory will be wasted. Default: 1
WebExtKeyScripting
This parameter enables online scripting support in external page mode. OnKeyUp and OnKeyDown events are not posted, if this parameter is not set to 1. If this parameter is switched to 1 each page will be parsed for those key events. This takes a bit of performance. If those key events are not used, this parameter should be switched to 0.
Length: 1Range: 0 - KeyEvents are not posted
1 - KeyEvents are postedDefault: 0
WorkaroundNoShell
This parameter is used to activate a workaround because of a problem in the windows system. When the application is started without the windows shell ’explorer.exe’ the problem in this situation is that all new Popup windows are not disapearing. This workaround searches in the list of all open windows for the one with the Popup window name and destroys the appropriate one. Any installations without a shell must activate this parameter.
618 May 2008
Graphical Service Parameters
Length: 1Range: 0 - Normal behaviour, when explorer.exe is active during
runtime.1 - Activation when running without a shell.
Default: 0
WorkaroundWhitePopUp
This parameter is removing the problem with white flickering. The Web Graphical Service loads an ’About:Blank’ page in a new window instance first, before the real HTML page is loaded. Because ’About:Blank’ is a white page it might flicker, when a new window instance is loaded. For this reason the parameter may be used to wait for the second document.complete event until the ready page is shown. But setting this value would mean, that scripting any popup window without use of the Web Graphical Service the first page would not be shown but the second. SO please be careful with setting this parameter.
Length: 1Range: 0 - Workaround not active
1 - Show the window after first document.complete event2 - Show the window after second document.complete
event...9 - Show the window after nineth document.complete
eventDefault: 0
Parameters for PCView
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServicePCView
TempPath
Specifies the path of the local numeric folder in which temporarily generated files are stored.
May 2008 619
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\temp
TempFileNumber
Specifies the number of temporarily generated files which are stored in the TempPath directory. There are three different sets of pages: Normal mode, SurfingFooter and Surfing mode area. Each set gets a different temp file name. This always starts with PCPg gets one of the characters A,B,C and then a three digits number. Example: PCPgA16.htm. For each mode another set of pages exists. So there may be up to three times TempFileNumber pages stored in the temp directory.
Length: 3Range: 10-999Default: 100
DefaultLanguage
Specifies the first language setting.
Length: 16Range: alphanumericDefault: GERMAN
Meaning: The first language is set to German.
OfflineURL
Specifies an URL that is shown when the Graphical Service tries to navigate to an unreachable URL (e.g. Server down, etc.).
OfflineURL has to contain a local file name.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Offline\OfflineStart.htm
ErrorURL
Specifies the URL that is shown when the Graphical Service tries to navigate to an URL that is not in the AllowList.
ErrorURL must contain a local file name.
620 May 2008
Graphical Service Parameters
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Allow\AllowStart.htm
RootPath
Specifies the URL path without the subdirectory for the language and without the specified name of the HTML page. This parameter is only used if the DoDialog() function is used to load an HTML page.
RootPath has to contain a local path or an URL beginning with HTTP://. To specify the HTML page to be loaded, RootPath is enhanced by the input parameter of the ChangeLanguage() function and the input parameter of DoDialog().
To prevent the Web Graphical Service from changing the directory from the ChangeLanguage() function the paramter has to contain the keyword ATM_PATH_NOLANG at the beginning. This is usefull when all texts are inserted dynamically by use of the WX_TEXT variables.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web
RootPathOffline
Specifies the URL for the Offline Web. Should be a directory on the hard disk.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Offline
EmptyPageURL
Only when working with multiple Graphical Services: Specifies the name and location for an empty page which is shown while the Web Graphical Service is switched to the background and the other Graphical Service is activated. The Web Graphical Service will do a top navigation for showing this page.
Length: 128Range: alphanumericDefault: ATM_ABS_NAVC:\ProTopas\Web\Offline\Empty.htm
May 2008 621
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
DontWaitForPCContentsOnOpen
Only when working with multiple Graphical Services: In Web-Exten-sions/ExtraLink architecture the Startpage must not contain any Contents STD/ATM Control, if the Web Graphical Service shall be switched to the background at Startup. In this case this parameter has to be set to 1, so that the Web Graphical Service will not wait for any Contents STD/ATM Control to be activated.
Length: 1Range: 0 - Standard use
1 - Use in Web-Extensions/ExtraLink architecture or whenusing the Web Graphical Service in an otherenvironment.
Default: 0
DontWaitForPCContentsOnCancelDialog
Only when working with Web-Extensions/ClassicLink: Each page, which is called by DoDialog() must contain a Contents ATM Control. If this DoDialog() shall be canceled, it is no problem. But if a page has been called by a script and does not contain a Contents ATM Control, this parameter has to be set to 1. Otherwise the Web Graphical Service waits for at least half a minute until he answers the Cancel().
Length: 1Range: 0 - Standard use
1 - Use in Web-Extensions/ClassicLink architecture whena page does not contain a Contents ATM Control andshall be canceled.
Default: 0
ActivePageURL
Only when working with multiple Graphical Services: Specifies the name and location for a page which is shown while the Web Graphical Service is switched to the foreground and the other Graphical Service is deactivated. The Web Graphical Service will do a top navigation for showing this page.
Length: 128Range: alphanumericDefault: -
622 May 2008
Graphical Service Parameters
BringWindowToTop
If this Parameter is activated, each time a page is loaded in ClassicLink architecture, the Web Graphical Service tries to make its window the topmost one, so it is visible.
Length: 1Range: 0 - Normal Handling
1 - Web Graphical Service tries to bring its window to topDefault: 0
OfflineFallback
This parameter activates the fallback mechanism for the Offline Handling. This means, that any not found pages are loaded from the Offline directory, if the pagewith the same name exists there. If the page is not available there, the page from OfflineURL is loaded.
(see "OfflineURL" on page 619) (see also section ’Switching the Web Graphical Service offline’ on page 300)
Length: 1Range: 0 - Page of OfflineURL is loaded directly
1 - Page with same name is loaded from Offline directoryDefault: 0
OfflineMonitorTimer
This parameter supervises the timer for the navigation to the Offline page. If the timer expires the Web Graphical service will restart itself.
(see also section ’Switching the Web Graphical Service offline’ on page 300)
Length: 1Range: 0 Navigation to offline page is not supervised
1-999 Timer in second to navigate to offline pageDefault: 0
May 2008 623
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Parameters for the HTML generator
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
GraphicalServicePCHtmlGen
Language
Specifies the language settings used for formatting input and output strings when starting the system. There must be a subkey with the same name for this entry. This subkey contains all language-specific settings.
Length: 128Range: alphanumericDefault: GERMAN
Meaning: German is supported at startup.
TimeoutConnect
Specifies the timeout in milliseconds when the connection request times out.
Length: 5Range: 1-32767Default: 5000
TimeoutDataSendRequest
Specifies the timeout in milliseconds when the data send request times out.
Length: 5Range: 1-32767Default: 10000
TimeoutDataReceiveRequest
Specifies the timeout in milliseconds when the data receive request times out.
Length: 5Range: 1-32767Default: 10000
624 May 2008
Graphical Service Parameters
Multilang
Specifies the possibility of the HTML Generator to replace all WX_TEXT variables in all generated Web-Pages.
(see also section ’Easy multilanguage support’ on page 289)
Length: 1Range: 0 - Switch the Multilanguage option off for better perfor-
mance1 - Switch the Multilanguage option on
Default: 1
Language specific parameters for the HTML generator
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCHtmlGen<Language>
This section must be created for each language which is available for user language selection. The name of the language is set by using the SetLan-guage() function of the CCDialog/PCDialog Framework.
AllowOverride
This parameter is used if the Windows system settings are used instead of the parameters of this section of the Registry. The parameter is only valid if the parameter UseLocals is set to 1 and UsedLcid contains a valid value.
(see "UsedLcid" on page 629)(see "UseLocals" on page 630)
Length: 1Range: 0 - Only the language-specific value from the language of
parameter UsedLcid is taken.1 - The language-specific value from the language of
parameter UsedLcid is taken and additionally the userdefined setting in the other property pages of the systems regional settings.
Default: 1
May 2008 625
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
CurrCurrencySymbol
This parameter stores the sign or the characters which are used as the currency symbol.
Length: 5Range: alphanumericDefault: DM
CurrDecimalSep
The decimal separator for currency formatting is set here.
Length: 3Range: alphanumericDefault: ,
CurrGrouping
The number of currency digits which are to be grouped using the group separator is set in this parameter.
Length: 1Range: 0 - 9Default: 3
CurrGroupSep
The group separator for currency values is set in this parameter. This sign is used for better readability of long values.
Length: 3Range: alphanumericDefault: .
CurrLeadingZero
This parameter specifies whether leading zeros for currency values are suppressed or shown, if they are present.
Length: 1Range: 0 - Leading zeros are suppressed
1 - Leading zeros are shown if they are present.Default: 1
626 May 2008
Graphical Service Parameters
CurrNegativeOrder
This parameter acts as a mask to show negative currency values.
Length: 2Range: 0 - ($1.1)
1 - -$1.12 - $-1.13 - $1.1-4 - (1.1$)5 - -1.1$6 - 1.1-$7 - 1.1$-8 - -1.1 $ (space before $)9 - -$ 1.1 (space after $)10 - 1.1 $- (space before $)11 - $ 1.1- (space after $)12 - $ -1.1 (space after $)13 - 1.1- $ (space before $)14 - ($ 1.1) (space after $)15 - (1.1 $) (space before $)
Default: 8
CurrNumDigits
This parameter stores the number of digits that follow the currency decimal separator.
Length: 1Range: 0 - 9Default: 2
CurrPositiveOrder
This parameter acts as a mask to show positive currency values.
Length: 2Range: 0 - Prefix, no separation
1 - Suffix, no separation2 - Prefix, 1-char separation3 - Suffix, 1-char separation
Default: 3
May 2008 627
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
CurrServerValueOffset
This value is used for building the unsigned currency variable.
Example for German Marks: The unsigned variable should be the smallest amount, which is Pfennigs. The number of digits after the decimal separator is 2. CurrServerValueOffset must be -2 in this case (Value: 10,00 -> Unsigned value: 1000).
Length: 3Range: -9 - 9Default: 4294967294 (-2: fffffffe)
LongDateFormat
This parameter is responsible for displaying the date in a long format, which may include the weekday and written month.
Length: 128Range: d - Numeric day in month without leading zeros (1, 2, ...)
dd - Numeric day in month with leading zeros (01, 02, ...)ddd - Weekday in short form (Mon,Tue, Wed, ...)dddd - Weekday in long form (Monday, Tuesday, ...)M - Month numeric without leading zeros (1, 2, ...)MM - Month numeric with leading zeros (01, 02, ...)MMM -Month in short form (Jan, Feb, ...)MMMM -Month in long form (January, February, ...)yy - Year 2 digits (99, 00, ...)yyyy - Year 4 digits (1999, 2000, ...)
Default: dddd, d. MMMM yyyy
NumDecimalSep
The decimal separator for numeric formatting is set in here.
Length: 3Range: alphanumericDefault: ,
NumGrouping
The number of numeric digits which is to be grouped using the group separator is set in this parameter.
628 May 2008
Graphical Service Parameters
Length: 1Range: 0 - 9Default: 3
NumGroupSep
The group separator for numeric values is set in this parameter. This sign is used for better readability of long values.
Length: 3Range: alphanumericDefault: .
NumLeadingZero
This parameter specifies whether leading zeros for numeric values are suppressed or shown, if they are present.
Length: 1Range: 0 - Leading zeros are suppressed
1 - Leading zeros are shown, if they are present.Default: 1
NumNegativeOrder
This parameter acts as a mask to show negative values.
Length: 2Range: 0 - (1.1)
1 - -1.12 - - 1.1 (space after -)3 - 1.1-4 - 1.1 - (space before -)
Default: 1
NumNumDigets
This parameter stores the number of digits following the decimal separator.
Length: 1Range: 0 - 9Default: 2
May 2008 629
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ShortDateFormat
This parameter is responsible for displaying the date in short format.
Length: 128Range: d - Numeric day in month without leading zeros (1, 2, ...)
dd - Numeric day in month with leading zeros (01, 02, ...)M - Month numeric without leading zeros (1, 2, ...)MM - Month numeric with leading zeros (01, 02, ...)yy - Year 2 digits (99, 00, ...)yyyy - Year 4 digits (1999, 2000, ...)
Default: dd.MM.yy
TimeFormat
This parameter is responsible for displaying the time.
Length: 128Range: h - Hour without leading zero (1, 2, ...) 12 h format
hh - Hour with leading zero (01, 02, ...) 12 h formatH - Hour without leading zero (1, 2, ...) 24 h formatHH - Hour with leading zero (01, 02, ...) 24 h formatmm - Minutes (00, 01, ...)ss - Seconds (00, 01, ...)tt - PM or AM
Default: hh:mm:ss
Currently the AM and PM must be configured in the regional systems settings in Windows XP. There are two parameters - one for the morning and one for the afternoon format.
UsedLcid
This parameter stores the value of the system language settings which are only used if parameter UseLocals is set to 1. To retrieve the number of the language, try the following: Open the regional settings icon in the Windows Control Panel. On the Property page ’Regional Setting’ choose the language you want to use. Close the Regional Settings. If the change requires a file from the Windows installation CD, cancel this request. Now look into the following section in the Windows Registry:
HKEY_CURRENT_USERControl Panel
International
630 May 2008
Graphical Service Parameters
The parameter Locale contains the value you are looking for.
(see "AllowOverride" on page 624)(see "UseLocals" on page 630)
Length: 8 hexRange: 0000 - 9999Default: 1024 (German)
UseLocals
The HTML generator is able to look up language-specific standards that are installed in the Windows system. The language to use to retrieve the settings can be determined in the parameter UsedLcid. If user-defined settings are made to the other property pages, the parameter AllowOverride has to be set to 1, too, otherwise only the systems language-specific parameters are used.
(see "UsedLcid" on page 629)(see "AllowOverride" on page 624)
Length: 1Range: 0 - Use values of this language-specific section of the Registry
1 - Take the Windows standardsDefault: 0
ADALanguage
This parameter specifies the ISO language code for the speech engine, which defines the language to be spoken.
The following codes are possible with the current version of the ProTopas/Web-Extensions:
Language Code
General American English en_US
General American English en_CA
British English en_GB
Castilian Spanish es_ES
Standard French fr_FR
Mexican Spanish es_MX
May 2008 631
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 5Range: alphanumeric ISO language CodeDefault: en_US
ADATextPageMenu
This parameter specifies the Default-Text of the page Headline to be spoken, when a page is loaded.
Macros like WX.Contents.PageHeadline may be used. (see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: You are in WX.Contents.PageHeadline.
ADATextPageHint
This parameter specifies the Default-Text of the page Instruction Hint to be spoken, when a page is loaded.
Macros like WX.Contents.PageInstruction may be used. (see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: WX.Contents.PageInstruction
Canadian French fr_CA
Standard German de_DE
Standard Italian it_IT
Brazilian Portuguese pt_BR
Standard Finnish fi_FI
Standard Dutch nl_NL
Standard Norwegian no_NO
Standard Swedish sv_SE
Standard Danish da_DK
Language Code
632 May 2008
Graphical Service Parameters
ADATextPageContent
This parameter specifies the Default-Text of the page Content to be spoken, when a page is loaded. It the best to give the text, which should be spoken, an ID and to specify a variable WXADAText, where the message to be spoken is repeated. So the visual text may be different from the spoken text, i.e. to explain blind people where to find the specific HW devices.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: WX.RT.P.WXADAContent.WXADAText
Example:
<table class="styleTableBlue"><tr>
<td class="styleTd"><p ID="WXADAContent" WXADAText="Please waita moment." class="textpopup">Please wait amoment...</p><p align="center"><img src="../images/animation/wait_message.gif" id="wait"></p>
</td></tr>
</table>
ADATextPageKeys
This parameter specifies the Default-Text to be spoken, when active keys are available on the page to tell the customer, which options are available. The parameter may specify text and macros. In default, this macro directs to WX.F.ActiveKeys, which means the macro ADAMacroActiveKeys (see also section ’ADAMacroActiveKeys’ on page 634). The macros may be used to get the caption of all buttons as well as the assigned numerical key.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: Please press WX.F.ActiveKeys!
May 2008 633
Parameters Graphical Service
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ADATextEditHint
This parameter specifies the Default-Text to be spoken, when an edit field becomes active. A macro may be used to specify the Instruction Hint to be spoken.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: WX.Edit.Instruction!
ADATextEditContent
This parameter specifies the Default-Text to be spoken, after a customer has confirmed an input and it has been positivly checked. A macro may be used to when an edit field becomes active. A macro may be used to specify the Instruction Hint to be spoken.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: You have entered WX.Edit.InputText, please confirm it!
ADAEchoButton
This parameter specifies the Default-Text to be spoken, when a button is pressed. A macro may be used. In default, this macro directs to ADAMacro-EchoKeys (see also section ’ADAMacroEchoKeys’ on page 634).
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: WX.F.EchoKeys.all
ADAEchoEdit
This parameter specifies the Default-Text to be spoken, when an Edit field is active and keys are pressed. The default value is to repeat the numerical value of each pressed EPP key. No macros are allowed here
Length: 1024Range: alphanumericDefault: 0=null_WXSEP_1=one_WXSEP_2=two...
634 May 2008
Parameters for the ActiveX controls Parameters
ADAEchoEPP
This parameter specifies the Default-Text to be spoken, when a key is pressed during PIN input. No macros are allowed here.
Length: 1024Range: alphanumericDefault: Thanks.
ADAMacroActiveKeys
This parameter contains the macro for WX.F.ActiveKeys (= all active Buttons on this page). This macro may be specified in one of the parameters where macros are allowed. Other macros are allowed here.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: WX.Button.Softkey for WX.Button.Text !
ADAMacroEchoKeys
This parameter contains the macro for WX.F.EchoKeys (= Button, which has been selected). This macro may be specified in one of the parameters where macros are allowed. Other macros are allowed here.
(see also section ’Macros’ on page 502)
Length: 1024Range: alphanumericDefault: You have selected WX.Button.Text
Parameters for the ActiveX controls
The following parameters configure the default values of the following ActiveX controls: Contents STD/ATM Control, Button Control, Edit Control and List Control. These default values change the user interface settings of all controls which have activated default checkboxes.
May 2008 635
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
General ActiveX parameters
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
FrontPageImagePath
Specifies the directory on a design computer on which the images are stored. If there is a relative (or absolute) path name in an ActiveX-Control, every entry up to "images" will be replaced by this path name.
This setting is only used on design computers, where FrontPage is used to design the HTML pages. On this PC, all the graphics files must be stored on your local computer. This setting is not used on a self-service device.
Length: 128Range: alphanumericDefault: C:\ProTopas\Web\Images
Parameters for the Contents STD Control cancel situa-tions
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsCancel
CancelHref
Href for the cancel message. If no HTML page is entered in this parameter, no cancel message will be displayed.
Length: 128Range: alphanumericDefault: GeneralCancelMessageWindow.htm
CancelWindow
Specifies whether the cancel message is shown in a new window, i.e. the browser is called again and does not cover the whole screen but only a smaller window.
636 May 2008
Parameters for the ActiveX controls Parameters
Length: 1Range: 0 - The cancel message is not shown in a new window.
1 - The cancel message is shown in a new window.Default: 1
CancelQuestionHref
Href for the cancel question "Do you really want to cancel?". If no HTML page is entered in this parameter, no cancel question will be shown.
Length: 128Range: alphanumericDefault: GeneralCancelQuestionWindow.htm
CancelQuestionWindow
Specifies whether the cancel question "Do you really want to cancel?" is shown in a new window, i.e. the browser is called again and does not cover the whole screen but only a smaller window.
Length: 1Range: 0 - The cancel question is not shown in a new window.
1 - The cancel question is shown in a new window.Default: 1
CancelWindowLeft
Specifies the left pixel position of the new window for the cancel situations (cancel, cancel question). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 44
CancelWindowTop
Specifies the upper pixel position of the new window for the cancel situations (cancel, cancel question). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 54
May 2008 637
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
CancelWindowHeight
Specifies the height of the new window for the cancel situations (cancel, cancel question). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 260
CancelWindowWidth
Specifies the width of the new window for the cancel situations (cancel, cancel question). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 712
Parameters for the Contents STD/ATM Control timeout situations
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsTimeout
Timeout Href
Href for the ’Timeoutmessage’. If no HTML page is entered in this parameter, no timeout message will be displayed.
Length: 128Range: alphanumericDefault: GeneralTimeoutMessageWindow.htm
TimeoutWindow
Specifies whether the ’Timeoutmessage’ is shown in a new window, i.e. the browser is called again and does not cover the whole screen but only a smaller window.
638 May 2008
Parameters for the ActiveX controls Parameters
Length: 1Range: 0 - The timeout message is not shown in a new window.
1 - The timeout message is shown in a new window.Default: 1
TimeoutQuestionHref
Href for the ’Security question’ "You have not made an input for a while ...?" If no HTML page is entered in this parameter, no timeout question will be shown.
Length: 128Range: alphanumericDefault: GeneralTimeoutQuestionWindow.htm
TimeoutQuestionWindow
Specifies whether the ’Security question’ "You have not made an input for a while ...?" is shown in a new window, i.e. the browser is called again and does not cover the whole screen but only a smaller window.
Length: 1Range: 0 - The timeout question is not shown in a new window.
1 - The timeout question is shown in a new window.Default: 1
AfterTimeoutHref
Href for the situation ’After timeout’.
Length: 128Range: alphanumericDefault: GeneralTimeoutFunction.htm
AfterTimeoutWindow
Specifies whether the situation ’After timeout’ is shown in a new window, i.e. the browser is called again and does not cover the whole screen but only a smaller window.
Length: 1Range: 0 - The situation after timeout is not shown in a new
window.1 - The situation after timeout is shown in a new window.
Default: 0
May 2008 639
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TimeoutWindowLeft
Specifies the left pixel position of the new window for the timeout situations (timeout, timeout question, after timeout). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 44
TimeoutWindowTop
Specifies the upper pixel position of the new window for the timeout situa-tions (timeout, timeout question, after timeout). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 54
TimeoutWindowHeight
Specifies the height of the new window for the timeout situations (timeout, timeout question, after timeout). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 260
TimeoutWindowWidth
Specifies the width of the new window for the timeout situations (timeout, timeout question, after timeout). By specifying a value >= 10000 the percentage numbers may be added. Fe. 5,55% means 10555.
Length: 5Range: 0 - 20000Default: 712
640 May 2008
Parameters for the ActiveX controls Parameters
Parameters for timeout values
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsTimeout
Values
StandardTimeout
Specifies the default timeout in seconds.
Length: 3Range: numericDefault: 60
InputTimeout
Specifies the default timeout on input pages.
Length: 3Range: numericDefault: 120
MessageTimeout
Specifies the default timeout to show messages.
Length: 3Range: numericDefault: 5
HelpTimeout
Specifies the default timeout to show help messages.
Length: 3Range: numericDefault: 60
CorrectTimeout
Specifies the default timeout to show correct messages.
May 2008 641
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 3Range: numericDefault: 10
EndlessTimeout
Specifies an endless timeout. May be used when a Step is called and the end of the Step is to continue the application.
Length: 3Range: not writableDefault: 0
ImmediateTimeout
Only used by Content ATM control. Specifies that the return code is to be reported immediately to the DoDialog() function.
Length: 3Range: not writableDefault: 0xffffffff
Parameters for beeping
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsBeep
BeepDefault
Specifies when the application should beep.
Length: 1Range: 0 - No beep
1 - There is a beep when a new HTML page is called.2 - There is a beep when a timeout occurs.3- There is a beep when a new HTML page is called
or a timeout occurs.Default: 0
642 May 2008
Parameters for the ActiveX controls Parameters
Parameters for EPP configuration
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsEPPKey
Value0
This parameter specifies the code for the key 0 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0.
Length: 4Range: alphanumericDefault: 0
Value1
This parameter specifies the code for the key 1 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 1.
Length: 4Range: alphanumericDefault: 1
Value2
This parameter specifies the code for the key 2 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 2.
Length: 4Range: alphanumericDefault: 2
May 2008 643
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Value3
This parameter specifies the code for the key 3 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 3.
Length: 4Range: alphanumericDefault: 3
Value4
This parameter specifies the code for the key 4 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 4.
Length: 4Range: alphanumericDefault: 4
Value5
This parameter specifies the code for the key 5 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 5.
Length: 4Range: alphanumericDefault: 5
Value6
This parameter specifies the code for the key 6 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 6.
Length: 4Range: alphanumericDefault: 6
644 May 2008
Parameters for the ActiveX controls Parameters
Value7
This parameter specifies the code for the key 7 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 7.
Length: 4Range: alphanumericDefault: 7
Value8
This parameter specifies the code for the key 8 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 8.
Length: 4Range: alphanumericDefault: 8
Value9
This parameter specifies the code for the key 9 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 9.
Length: 4Range: alphanumericDefault: 9
ValueF1
This Parameter specifies the code for the softkey F1 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is H.
Length: 4Range: alphanumericDefault: H
May 2008 645
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ValueF2
This Parameter specifies the code for the softkey F2 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is D.
Length: 4Range: alphanumericDefault: D
ValueF3
This Parameter specifies the code for the softkey F3 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is E.
Length: 4Range: alphanumericDefault: E
ValueF4
This Parameter specifies the code for the softkey F4 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is F.
Length: 4Range: alphanumericDefault: F
ValueF5
This Parameter specifies the code for the softkey F5 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is C.
Length: 4Range: alphanumericDefault: C
646 May 2008
Parameters for the ActiveX controls Parameters
ValueF6
This Parameter specifies the code for the softkey F6 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is B.
Length: 4Range: alphanumericDefault: B
ValueF7
This Parameter specifies the code for the softkey F7 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is A.
Length: 4Range: alphanumericDefault: A
ValueF8
This Parameter specifies the code for the softkey F8 returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is G.
Length: 4Range: alphanumericDefault: G
ValueCancel
This Parameter specifies the code for the functionkey or softkey CANCEL returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0x01.
Length: 4Range: alphanumericDefault: 0x01
May 2008 647
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ValueConfirm
This Parameter specifies the code for the functionkey or softkey CONFIRM returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0x04.
Length: 4Range: alphanumericDefault: 0x04
ValueCorrect
This Parameter specifies the code for the functionkey or softkey CORRECT returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0x02.
Length: 4Range: alphanumericDefault: 0x02
ValueHelp
This Parameter specifies the code for the functionkey or softkey HELP returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0x03.
Length: 4Range: alphanumericDefault: 0x03
ValuePrint
This Parameter specifies the code for the softkey PRINT returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is 0x05.
Length: 4Range: alphanumericDefault: 0x05
648 May 2008
Parameters for the ActiveX controls Parameters
ValueReserved
This parameter specifies the code for the key left to the 0 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is *
Length: 4Range: alphanumericDefault: *
ValueDecPoint
This parameter specifies the code for the key right to the 0 on the EPP keyboard returned by the function GetTerminateChar(). Hex. values may be specified by typing in 0xnn, where nn is the hex code.
The default value is , .
Length: 4Range: alphanumericDefault: ,
General parameters for Contents STD/ATM control
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCContentsGeneral
UseUTF8
Only when working with the Unicode versions of the controls:
This parameter specifies, in which format the variables are passed from the Contents STD/ATM Control from and to the ProTopas Frameworks, like the Data Dictionary and CheckFW. This is neccessary, because the ProTopas components is using Char values for its internal communication. The internal communication in the Unicode controls is using Wchar. So a conversion has to be done. This can either be done from Unicode to ANSI or Unicode to UTF8.
The default value is 0.
May 2008 649
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 1Range: 0- Convert using ANSI (Not all Unicode signs can be
converted)1- Convert using UTF8
Default: 0
HttpsBlankPage
This is a workaround for a problem with the Web Graphical Service in a HTTPS session. When during normal page mode a new window is popping up, this window is created using the page specified here. This should be one of the pages from the HTTPS-Server, which contains less content. If this page would not be specified, an ABOUT:Blank page would be created, which causes a warning message popup during a HTTPS session.
Length: 1024Range: alphanumericDefault: -
NCREppInit
Because the NCR Numeric Keyboard handling is very slow, the is an initial-ization command for Numeric Keyboard handling, which will be called at page initialization.
PLEASE USE THIS SWITCH ONLY ON NCR HARDWARE!!!
The default value is 0.
Length: 1Range: 0- All other hardware
1- Only on NCR EPP HardwareDefault: 0
SetInputFocusNext
Normally the input focus - after an edit field has been confirmed - is given to the edit field with the lowest field ID, which input has not been checked jet. With this parameter the input focus may be given to the field with the next field ID in the sequence.
Length: 1Range: 0- Input focus is given to the field with the lowest field ID
1- Input focus is given to the field with the next field IDDefault: 0
650 May 2008
Parameters for the ActiveX controls Parameters
This parameter may be used to get the old behaviour of The Immediate-Timout again. This had used a very short timeout before. Now it does not use any timer any more.
NewImmediateTimeout
This parameter may be used to configure a new behaviour of the ImmediateTimeout. ImmediateTimeout was implemented using a very short timeout. This could case a problem, that this timer never exires. The new behaviour is that the ImmediateTimeout is not using a timer any more, so that possible hangup situations are minimized.
Length: 1Range: 0- Old ImmediateTimeout behaviour with a very short
timer.1- New ImmediateTimeout behaviour without using a
timer.Default: 0
AutomaticEPPConfigForAllButtons
This parameter activates all active buttons to CEN/XFS, which viewstate variable is set to ’visible’, if at the property page EPP Config the mode is set to automatic. In the old behaviour this was done only for function keys.
Length: 1Range: 0- Old behaviour: Only the function key viewstates are
checked.1- New behaviour: For all buttons the viewstates are
checked.Default: 0
DeleteInputFieldsWithEmptyString
This parameter may be used to change the behaviour of deleting input fields. If the parameter is set to 0 it is not allowed to delete an edit field with an empty input varaibale. Empty input variables are not set in the old behaviour. With the new behaviour (1) it is possible now.
May 2008 651
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 1Range: 0- Old behaviour. No set of empty input variable possible.
1- New behaviour: Deleting a content of the input field ispossible with an empty input variable.
Default: 0
Parameters for the PCButton control
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButtonGeneral
AudioResponse
The audio response for the Button control may be configured here. The parameter has to contain a string with the following layout:
XXX_Y_ZZZZZZZZ
XXX = WAV for Wave filesXXX = SEL for Special electronic beepingY= S for synchronous playing (don’t play > 5 sec as sync.)Y= A for asynchronous playingY = X for stop previous playing (WAV only)ZZZZZZZZ = at WAV is relative or absolute path ( non local files will be
dowloaded to cache - check in alllow list)
ZZZZZZZZ - at SEL is one of the following sounds:BELL_OFFBELL_KEYPRESSBELL_EXCLAMATIONBELL_WARNINGBELL_ERRORBELL_CRITICALBELL_KEYPRESS_CONTINUOUSBELL_EXCLAMATION_CONTINUOUSBELL_WARNING_CONTINUOUSBELL_ERROR_CONTINUOUSBELL_CRITICAL_CONTINUOUS
Length: 1024Range: alphanumeric
652 May 2008
Parameters for the ActiveX controls Parameters
ButtonInstallation
Specifies whether the button control is used in the architecture Web-Exten-sions/ClassicLink or Web-Extensions/HyperLink. A menu button is not available for Web-Extensions/ClassicLink.
The default value is 0.
Length: 1Range: 0- Use button control in the architecture
Web-Extensions/HyperLink1- Use button control in the architecture
Web-Extensions/ClassicLinkDefault: 0 - Use button control in the architecture
Web-Extensions/HyperLink.
AnimationTimer
Specifies the time in milliseconds how long a button remains "down" when the button is pressed before it goes "up" again.
The default value is 500 milliseconds.
Length: 99Range: 1 - 9999Default: 500 - When a button is touched, it remains "down" for
half a second.
ImageUp
Specifies the default graphic of the button when it is in the state "up".
Length: 128Range: alphanumericDefault: ../images/controls/select_up.bmp
ImageDown
Specifies the default graphic of the button when it is in the state "down".
Length: 128Range: alphanumericDefault: ../images/controls/select_down.bmp
May 2008 653
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ImagePressed
Specifies the default graphic of the button when it is in the state "pressed".
Length: 128Range: alphanumericDefault: ../images/controls/select_pressed.bmp
ImageDisabled
Specifies the default graphic of the button when it is in the state "disabled".
Length: 128Range: alphanumericDefault: ../images/controls/select_disabled.bmp
PressOffset
Specifies the number of pixels that the text and the icon on the button will move in x- and y- directions when the button is pressed. The number cannot be larger than the height and the width of the button.
Length: 3Range: numericDefault: 3
TextFont
Specifies the font of the button's caption.
Length: 128Range: alphanumericDefault: Arial
TextSize
Specifies the size of the button's caption.
Length: 2Range: numericDefault: 12
TextColour
Specifies the colour of the button's caption when the button is up, down or pressed:
654 May 2008
Parameters for the ActiveX controls Parameters
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
TextColourDisabled
Specifies the colour of the button's caption if the button is disabled:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00808080
TextAlignX
Specifies the x-position in pixel of the caption relative to the button.
(see "TextCenterX" on page 654)
Length: 3Range: numericDefault: 0
TextCenterX
Specifies whether the caption is horizontally centered on the button.
(see "TextAlignX" on page 654)
Length: 1Range: 0 - The caption is left justified and the position is taken from
the TextAlignX property.1 - The caption is horizontally centered on the button
(ignore TextAlignX).2 - The caption is right justified and the position is taken
from the TextAlignX property.Default: 1
TextAlignY
Specifies whether the caption is vertically centered on the button.
(see "TextCenterY" on page 655)
May 2008 655
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 3Range: numericDefault: 0
TextCenterY
Specifies the y-position in pixels of the caption relative to the button.
(see "TextAlignY" on page 654)
Length: 1Range: 0 - The caption is not vertically centered on the button
(see exact y-position in TextAlignX).1 - The caption is vertically centered on the button
(ignore TextAlignY).Default: 1
TextBold
Specifies whether the button's caption is printed bold.
Length: 1Range: 0 - The button's caption is not printed bold.
1 - The button's caption is printed bold.Default: 1
TextItalic
Specifies whether the button's caption is printed in italics.
Length: 1Range: 0 - The button's caption is not printed in italics.
1 - The button's caption is printed in italics.Default: 0
TextUnderline
Specifies whether the button's caption is printed underlined.
Length: 1Range: 0 - The button's caption is not printed underlined.
1 - The button's caption is printed underlined.Default: 0
656 May 2008
Parameters for the ActiveX controls Parameters
TextStrikeout
Specifies whether the button's caption is printed strikeout.
Length: 1Range: 0 - The button's caption is not printed strikeout.
1 - The button's caption is printed strikeout.Default: 0
HoldPressedState
Specifies whether the button changes to the state "pressed" when it is pressed.
Length: 1Range: 0 - When the button is pressed it changes to the
state "down" and when it is released it changesback to the state "up".
1 - When the button is pressed it changes to thestate "down" and when it is released it changesto the state "pressed".
Default: 0
Identification
Specifies whether the customer must insert his card and/or enter the PIN after he has pressed the button.
Only relevant for menu buttons.
Length: 1Range: 0 - no card, no PIN
1 - with card, without PIN2 - with card, with PIN3 - mandatory with card, with PIN4 - with chipcard, without PIN5 - with chipcard, with PIN6 - mandatory with chipcard, with PIN
Default: 0
ShiftInPixelsMode
Specifies the mode fot the Shift in Pixels of the control. Should it be inter-preted as a shift to the lower right corner or be interpreted as a shift to whatever direction. Then the value is interpreted as a binary:
May 2008 657
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Format for offset:
short +/- 32768
FEDCBA98 76543210-yyyyyyy -XXXXXXX
Example:
x=3,y=3binary: 00000011 00000011short : (y(3*256)+x(2+1) ) -> 771
x:-3,y:-3 (build complements)binary: 11111101 11111101short : (y((256-3)*256+x(256-3)) -> 65021-65536 -> -515
Length: 1Range: 0 - Shift to lower left corner
1 - Shift to all directionsDefault: 0
Parameters for the PCEdit control
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCEditGeneral
AudioResponse
The audio response for the Edit control may be configured here. The parameter has to contain a string with the following layout:
XXX_Y_ZZZZZZZZ
XXX = WAV for Wave filesXXX = SEL for Special electronic beepingY= S for synchronous playing (don’t play > 5 sec as sync.)Y= A for asynchronous playingY = X for stop previous playing (WAV only)ZZZZZZZZ = at WAV is relative or absolute path ( non local files will be
dowloaded to cache - check in alllow list)
658 May 2008
Parameters for the ActiveX controls Parameters
ZZZZZZZZ - at SEL is one of the following sounds:BELL_OFFBELL_KEYPRESSBELL_EXCLAMATIONBELL_WARNINGBELL_ERRORBELL_CRITICALBELL_KEYPRESS_CONTINUOUSBELL_EXCLAMATION_CONTINUOUSBELL_WARNING_CONTINUOUSBELL_ERROR_CONTINUOUSBELL_CRITICAL_CONTINUOUS
Length: 1024Range: alphanumeric
ImageUp
Specifies the default graphic of the input field when it is in the state "up".
Length: 128Range: alphanumericDefault: ../images/controls/input_std_up.bmp
ImagePressed
Specifies the default graphic of the input field when it is in the state "pressed".
Length: 128Range: alphanumericDefault: ../images/controls/input_std_pressed.bmp
ImageDisabled
Specifies the default graphic of the input field when it is in the state "disabled".
Length: 128Range: alphanumericDefault: ../images/controls/input_std_disabled.bmp
May 2008 659
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
PressOffset
Specifies the number of pixels that the text, the input area and the icon on the input field will move in x- and y-direction when the input field is pressed. The number cannot be larger than the height and the width of the input field.
Length: 3Range: numericDefault: 3
TextFont
Specifies the font of the input field's caption.
Length: 128Range: alphanumericDefault: Arial
TextSize
Specifies the size of the input field's caption.
Length: 2Range: numericDefault: 10
TextColour
Specifies the colour of the input field's caption when the input field is up or pressed:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
TextColourDisabled
Specifies the colour of the input field's caption if the input field is disabled:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00808080
660 May 2008
Parameters for the ActiveX controls Parameters
TextAlignX
Specifies the x-position in pixels of the caption relative to the input field.
(see "TextCenterX" on page 660)
Length: 3Range: numericDefault: 19
TextCenterX
Specifies whether the caption is horizontally centered on the input field.
(see "TextAlignX" on page 660)
Length: 1Range: 0 - The caption is left justified and the position is taken from
the TextAlignX property.1 - The caption is horizontally centered on the button
(ignore TextAlignX).2 - The caption is right justified and the position is taken
from the TextAlignX property.Default: 0
TextAlignY
Specifies whether the caption is horizontally centered on the input field.
(see "TextCenterY" on page 660)
Length: 3Range: hexadecimalDefault: 6
TextCenterY
Specifies whether the caption is vertically centered on the input field.
(see "TextAlignY" on page 660)
Length: 1Range: 0 - The caption is not vertically centered on the input
field (see exact y-position in TextAlignX).1 - The caption is vertically centered on the input field
(ignore TextAlignY).Default: 0
May 2008 661
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TextBold
Specifies whether the input field's caption is printed bold.
Length: 1Range: 0 - The input field's caption is not printed bold.
1 - The input field's caption is printed bold.Default: 1
TextItalic
Specifies whether the input field's caption is printed in italics.
Length: 1Range: 0 - The input field's caption is not printed in italics.
1 - The input field's caption is printed in italics.Default: 0
TextUnderline
Specifies whether the input field's caption is printed underlined
Length: 1Range: 0 - The input field's caption is not printed underlined.
1 - The input field's caption is printed underlined.Default: 0
TextStrikeout
Specifies whether the input field's caption is printed strikeout.
Length: 1Range: 0 - The input field's caption is not printed strikeout.
1 - The input field's caption is printed strikeout.Default: 0
InputFont
Specifies the font of the customer's input.
Length: 128Range: alphanumericDefault: Courier
662 May 2008
Parameters for the ActiveX controls Parameters
InputSize
Specifies the size of the customer's input.
Length: 2Range: numericDefault: 10
InputColour
Specifies the colour of the customer's input when the input field is up or pressed:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
InputColourDisabled
Specifies the colour of the customer's input if the input field is disabled:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00808080
InputAlignX
Specifies the x-position in pixel of the input area relative to the input field.
Length: 3Range: 0 - 799Default: 16
InputAlignY
Specifies the y-position in pixels of the customer's input relative to the input field.
Length: 3Range: 0 - 409Default: 28
May 2008 663
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
InputWidth
Specifies the width in pixels of the input area on the input field. The width of the input area cannot be larger than the width of the input field.
Length: 3Range: 0 - 410Default: 272
InputHeight
Specifies the height in pixels of the input area on the input field. The height of the input area cannot be larger than the height of the input field.
Length: 3Range: 0 - 410Default: 18
InputBold
Specifies whether the customer's input is printed bold.
Length: 1Range: 0 - The consumer's input is not printed bold.
1 - The consumer's input is printed bold.Default: 0
InputItalic
Specifies whether the customer's input is printed in italics.
Length: 1Range: 0 - The customer's input is not printed in italics.
1 - The customer's input is printed in italics.Default: 0
InputUnderline
Specifies whether the customer's input is printed underlined
Length: 1Range: 0 - The customer's input is not printed underlined.
1 - The customer's input is printed underlined.Default: 0
664 May 2008
Parameters for the ActiveX controls Parameters
InputStrikeout
Specifies whether the customer's input is printed strikeout.
Length: 1Range: 0 - The customer's input is not printed strikeout.
1 - The customer's input is printed strikeout.Default: 0
InputTimeoutHalf
Specifies the timeout in seconds during an input. After this period of time the application beeps.
Length: 3Range: 0 There is no beep during the input.
1 - 999 After this period of time in seconds the appli-cation beeps.
Default: 600
ShiftInPixelsMode
Specifies the mode fot the Shift in Pixels of the control. Should it be inter-preted as a shift to the lower right corner or be interpreted as a shift to whatever direction. Then the value is interpreted as a binary:
Format for offset:
short +/- 32768
FEDCBA98 76543210-yyyyyyy -XXXXXXX
Example:
x=3,y=3binary: 00000011 00000011short : (y(3*256)+x(2+1) ) -> 771
x:-3,y:-3 (build complements)binary: 11111101 11111101short : (y((256-3)*256+x(256-3)) -> 65021-65536 -> -515
Length: 1Range: 0 - Shift to lower left corner
1 - Shift to all directionsDefault: 0
May 2008 665
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Parameters for the PCList control
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCListGeneral
AudioResponse
The audio response for the List control may be configured here. The parameter has to contain a string with the following layout:
XXX_Y_ZZZZZZZZ
XXX = WAV for Wave filesXXX = SEL for Special electronic beepingY= S for synchronous playing (don’t play > 5 sec as sync.)Y= A for asynchronous playingY = X for stop previous playing (WAV only)ZZZZZZZZ = at WAV is relative or absolute path ( non local files will be
dowloaded to cache - check in alllow list)
ZZZZZZZZ - at SEL is one of the following sounds:BELL_OFFBELL_KEYPRESSBELL_EXCLAMATIONBELL_WARNINGBELL_ERRORBELL_CRITICALBELL_KEYPRESS_CONTINUOUSBELL_EXCLAMATION_CONTINUOUSBELL_WARNING_CONTINUOUSBELL_ERROR_CONTINUOUSBELL_CRITICAL_CONTINUOUS
Length: 1024Range: alphanumeric
ImageUp
Specifies the default graphic of the PCList control when it is in the state "up".
666 May 2008
Parameters for the ActiveX controls Parameters
Length: 128Range: alphanumericDefault: ../images/controls/input_std_up.bmp
ImagePressed
Specifies the default graphic of the PCList control when it is in the state "pressed".
Length: 128Range: alphanumericDefault: ../images/controls/input_std_pressed.bmp
ImageDisabled
Specifies the default graphic of the PCList control when it is in the state "disabled".
Length: 128Range: alphanumericDefault: ../images/controls/input_std_disabled.bmp
PressOffset
Specifies the number of pixels that the text, the output area and the icon on the PCList control will move in x- and y-direction, if the PCList control is pressed. The number cannot be larger than the height and the width of the PCList control.
Length: 3Range: numericDefault: 3
TextFont
Specifies the font of the PCList control's caption.
Length: 128Range: alphanumericDefault: Arial
TextSize
Specifies the size of the PCList control's caption.
May 2008 667
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 2Range: numericDefault: 10
TextColour
Specifies the colour of the PCList control's caption, when the PCList control is up or pressed:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
TextColourDisabled
Specifies the colour of the PCList control's caption, if the PCList control is disabled:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00808080
TextAlignX
Specifies the x-position in pixel of the caption relative to the PCList control.
(see "TextCenterX" on page 667)
Length: 3Range: numericDefault: 19
TextCenterX
Specifies whether the caption is horizontally centered on the PCList control.
(see "TextAlignX" on page 667)
Length: 1Range: 0 - The caption is left justified and the position is taken from
the TextAlignX property.1 - The caption is horizontally centered on the button
(ignore TextAlignX).
668 May 2008
Parameters for the ActiveX controls Parameters
2 - The caption is right justified and the position is takenfrom the TextAlignX property.
Default: 0
TextAlignY
Specifies whether the caption is horizontally centered on the PCList control.
(see "TextCenterY" on page 668)
Length: 3Range: hexadecimalDefault: 6
TextCenterY
Specifies whether the caption is vertically centered on the PCList control.
(see "TextAlignY" on page 668)
Length: 1Range: 0 - The caption is not vertically centered on the
PCList control (see exact y-position in TextAlignX).1 - The caption is vertically centered on the
PCList control (ignore TextAlignY).Default: 0
TextBold
Specifies whether the PCList control's caption is printed bold.
Length: 1Range: 0 - The PCList control's caption is not printed bold.
1 - The PCList control's caption is printed bold.Default: 1
TextItalic
Specifies whether the PCList control's caption is printed in italics.
Length: 1Range: 0 - The PCList control's caption is not printed in italics.
1 - The PCList control's caption is printed in italics.Default: 0
May 2008 669
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TextUnderline
Specifies whether the PCList control's caption is printed underlined
Length: 1Range: 0 - The PCList control's caption is not printed underlined.
1 - The PCList control's caption is printed underlined.Default: 0
TextStrikeout
Specifies whether the PCList control's caption is printed strikeout.
Length: 1Range: 0 - The PCList control's caption is not printed strikeout.
1 - The PCList control's caption is printed strikeout.Default: 0
InputFont
Specifies the font of the output field.
Length: 128Range: alphanumericDefault: Courier
InputSize
Specifies the size of the output field.
Length: 2Range: numericDefault: 10
InputColour
Specifies the colour of the output field when the field is up or pressed:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00000000
670 May 2008
Parameters for the ActiveX controls Parameters
InputColourDisabled
Specifies the colour of the output field if the field is disabled:
00RRGGBB (RR=red, GG=green, BB=blue)
Length: 8Range: hexadecimalDefault: 00808080
InputAlignX
Specifies the x-position in pixels of the output field relative to the PCList control.
Length: 3Range: 0 - 799Default: 16
InputAlignY
Specifies the y-position in pixels of the output field relative to the PCList control.
Length: 3Range: 0 - 409Default: 28
InputXCentred
Specifies to which side of the cursor position of InputAlignX the output should be written.
Length: 1Range: 0 - Text should be written to the left
1 - Text should be centered relative to position ofInputAlignX
2 - Text should be written to the right Default: 0
InputYCentred
Specifies if the text in the output field should be centered vertically.
May 2008 671
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 1Range: 0 - Text should not be centered vertically
1 - Text should be centered verticallyDefault: 0
InputBold
Specifies whether the output field is printed bold.
Length: 1Range: 0 - The output field is not printed bold.
1 - The output field is printed bold.Default: 0
InputItalic
Specifies whether the output field is printed in italics.
Length: 1Range: 0 - The output field is not printed in italics.
1 - The output field is printed in italics.Default: 0
InputUnderline
Specifies whether the output field is printed underlined
Length: 1Range: 0 - The output field is not printed underlined.
1 - The output field is printed underlined.Default: 0
InputStrikeout
Specifies whether the output field is printed strikeout.
Length: 1Range: 0 - The output field is not printed strikeout.
1 - The output field is printed strikeout.Default: 0
672 May 2008
Parameters for the ActiveX controls Parameters
ShiftInPixelsMode
Specifies the mode fot the Shift in Pixels of the control. Should it be inter-preted as a shift to the lower right corner or be interpreted as a shift to whatever direction. Then the value is interpreted as a binary:
Format for offset:
short +/- 32768
FEDCBA98 76543210-yyyyyyy -XXXXXXX
Example:
x=3,y=3binary: 00000011 00000011short : (y(3*256)+x(2+1) ) -> 771
x:-3,y:-3 (build complements)binary: 11111101 11111101short : (y((256-3)*256+x(256-3)) -> 65021-65536 -> -515
Length: 1Range: 0 - Shift to lower left corner
1 - Shift to all directionsDefault: 0
Parameters for Schemes
These parameters may be used to describe Schemes for PCButton, PCEdit and PCList controls. Schemes may be used to configure all visible parameter of a control in the registry. The values are checked during runtime. These parameter will be found in parameter file C:\ProTopas\Conf\ActiveX.sdf with a template set of all parameters for the schemes for all three controls. This file may be used to add additional schemes in the registry.
Because most of the values are same as the Default values for the controls, only references to those parameter are given here.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/ActiveX/
PCButton or PCEdit or PCListGeneral
Scheme...
May 2008 673
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
ImageDown
Available for PCButton
(see also ’ImageDown’ on page 652)
ImagePressed
Available for PCButton, PCEdit, PCList
(see also ’ImagePressed’ on page 653)
ImageDisabled
Available for PCButton, PCEdit, PCList
(see also ’ImageDisabled’ on page 653)
ImageUp
Available for PCButton, PCEdit, PCList
(see also ’ImageUp’ on page 652)
IconAlignX
Available for PCButton, PCEdit, PCList
This parameter is used for configuring the X coordinate in pixels for an Icon from the upper left corner of the button graphic.
Length: 4Range: 0 - 9999
IconXCentered
Available for PCButton, PCEdit, PCList
This parameter is used to configure, if the Icon of a control shall be centered horizontally.
Length: 1Range: 0 - Icon should not be centered horizontally
1 - Icon should be centered horizontally
IconYCentered
Available for PCButton, PCEdit, PCList
674 May 2008
Parameters for the ActiveX controls Parameters
This parameter is used for configuring the Y coordinate in pixels for an Icon from the upper left corner of the button graphic.
Length: 4Range: 0 - 9999
IconAlignY
Available for PCButton, PCEdit, PCList
This parameter is used to configure, if the Icon of a control shall be centered vertically.
Length: 1Range: 0 - Icon should not be centered vertically
1 - Icon should be centered vertically
Icon
Available for PCButton, PCEdit, PCList
This parameter is used to configure the Icon.
Length: 128Range: alphanumeric
IconDisabled
Available for PCButton, PCEdit, PCList
This parameter is used to configure the disabled Icon.
Length: 128Range: alphanumeric
PressOffset
Available for PCButton, PCEdit, PCList
(see also ’PressOffset’ on page 653)
AudioResponse
Available for PCButton, PCEdit, PCList
The audio response for the controls may be configured here. The parameter has to contain a string with the following layout:
May 2008 675
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
XXX_Y_ZZZZZZZZ
XXX = WAV for Wave filesXXX = SEL for Special electronic beepingY= S for synchronous playing (don’t play > 5 sec as sync.)Y= A for asynchronous playingY = X for stop previous playing (WAV only)ZZZZZZZZ = at WAV is relative or absolute path ( non local files will be
dowloaded to cache - check in alllow list)
ZZZZZZZZ - at SEL is one of the following sounds:BELL_OFFBELL_KEYPRESSBELL_EXCLAMATIONBELL_WARNINGBELL_ERRORBELL_CRITICALBELL_KEYPRESS_CONTINUOUSBELL_EXCLAMATION_CONTINUOUSBELL_WARNING_CONTINUOUSBELL_ERROR_CONTINUOUSBELL_CRITICAL_CONTINUOUS
Length: 1024Range: alphanumeric
TextLayerCount
Available for PCButton, PCEdit, PCList
This Parameter contains the number of TextLayers. This has an impact to all the other parameter beginning with TextLayer... When there are more than one Layer, the values have to be separated by ;;
Length: 3Range: 1 - 999
TextLayerPosXYDefault
Available for PCButton, PCEdit, PCList
This Parameter specifies, if the Position Default Button at the caption or Headline property page is checked or not.
676 May 2008
Parameters for the ActiveX controls Parameters
Length: 1Range: 0 - Default checkbox shall not be checked
1 - Default checkbox shall be checked.
TextLayerTextAlignX
Available for PCButton, PCEdit, PCList
(see also ’TextAlignX’ on page 654)
TextLayerTextAlignY
Available for PCButton, PCEdit, PCList
(see also ’TextAlignY’ on page 654)
TextLayerTextAlignXTyp
Available for PCButton, PCEdit, PCList
(see also ’TextCenterX’ on page 654)
TextLayerYCentered
Available for PCButton, PCEdit, PCList
(see also ’TextCenterY’ on page 655)
TextLayerFontDefault
Available for PCButton, PCEdit, PCList
This parameter specifies, if the Font Default Button at the caption or Headline property page is checked or not.
Length: 1Range: 0 - Font Default checkbox shall not be checked
1 - Font Default checkbox shall be checked.
TextLayerFont
Available for PCButton, PCEdit, PCList
(see also ’TextFont’ on page 653)
May 2008 677
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
TextLayerFontCodePage
Available for PCButton, PCEdit, PCList
This Parameter specifies the Code Page for the font.
Length: 4Range: 001 - 9999
TextLayerTextSize
Available for PCButton, PCEdit, PCList
(see also ’TextSize’ on page 653)
TextLayerTextBold
Available for PCButton, PCEdit, PCList
(see also ’TextBold’ on page 655)
TextLayerTextItalic
Available for PCButton, PCEdit, PCList
(see also ’TextItalic’ on page 655)
TextLayerTextUnderline
Available for PCButton, PCEdit, PCList
(see also ’TextUnderline’ on page 655)
TextLayerTextStrikeout
Available for PCButton, PCEdit, PCList
(see also ’TextStrikeout’ on page 656)
TextLayerActiveColourDefault
Available for PCButton, PCEdit, PCList
This parameter specifies, if the ActiveColour Default Button at the caption or Headline property page is checked or not.
678 May 2008
Parameters for the ActiveX controls Parameters
Length: 1Range: 0 - ActiveColour Default checkbox shall not be checked
1 - ActiveColour Default checkbox shall be checked.
TextLayerInactiveColourDefault
Available for PCButton, PCEdit, PCList
This parameter specifies, if the InactiveColour Default Button at the caption or Headline property page is checked or not.
Length: 1Range: 0 - InactiveColour Default checkbox shall not be checked
1 - InactiveColour Default checkbox shall be checked.
TextLayerTextColour
Available for PCButton, PCEdit, PCList
(see also ’TextColour’ on page 653)
TextLayerTextColourDisabled
Available for PCButton, PCEdit, PCList
(see also ’TextColourDisabled’ on page 654)
InputAreaDefault
Available for PCEdit, PCList
This parameter specifies, if the Input/Output Range Default Button at the Input or Output property page is checked or not.
Length: 1Range: 0 - Range Default checkbox shall not be checked
1 - Range Default checkbox shall be checked.
InputAlignX
Available for PCEdit, PCList
(see also ’InputAlignX’ on page 662)
InputAlignY
Available for PCEdit, PCList
May 2008 679
Parameters Parameters for the ActiveX controls
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
(see also ’InputAlignY’ on page 662)
InputWidth
Available for PCEdit, PCList
(see also ’InputWidth’ on page 663)
InputHeight
Available for PCEdit, PCList
(see also ’InputHeight’ on page 663)
InputFontDefault
Available for PCEdit, PCList
This parameter specifies, if the Font Default Button at the Input or Output property page is checked or not.
Length: 1Range: 0 - Font Default checkbox shall not be checked
1 - Font Default checkbox shall be checked.
InputFont
Available for PCEdit, PCList
(see also ’InputFont’ on page 661)
InputFontCodePage
Available for PCEdit, PCList
This Parameter specifies the Code Page for the font.
Length: 4Range: 001 - 9999
InputSize
Available for PCEdit, PCList
(see also ’InputSize’ on page 662)
680 May 2008
CCOpen parameters Parameters
InputBold
Available for PCEdit, PCList
(see also ’InputBold’ on page 663)
InputUnderline
Available for PCEdit, PCList
(see also ’InputUnderline’ on page 663)
InputItalic
Available for PCEdit, PCList
(see also ’InputItalic’ on page 663)
InputStrikeout
Available for PCEdit, PCList
(see also ’InputStrikeout’ on page 664)
InputColour
Available for PCEdit, PCList
(see also ’InputColour’ on page 662)
InputColourDisabled
Available for PCEdit, PCList
(see also ’InputColourDisabled’ on page 662)
CCOpen parameters
These parameters are used by HTML_DIALOG_CONTROL. These parameters are currently not supervised by parac.
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
GLOBALTIME
May 2008 681
Parameters CCOpen parameters
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
MAX_MEMORY_USE
Please do not use this parameter any longer - it’s deprecated. Please use parameter MAX_WEBEXTENSION_MEMORY_GROWTH (see also section ’MAX_WEBEXTENSION_MEMORY_GROWTH’ on page 689) instead.
Percentage showing how much memory may have been wasted until the Internet Explorer is shut down and restarted, in order to solve the memory leak of the Internet Explorer. This parameter is used by the HTML_DIALOG_CONTROL (HTMLDiCT.DLL). For the calculation of the memory it is always the best to use the same minimum and maximum memory settings for extended memory in the Windows system environment settings.
(see also section ’Memory leak of the Internet Explorer’ on page 309).
Length: 3Range: 1 - 99Default: 85
MAX_MEMORY_USE_MINUTES
Minutes to wait, until the HTML_DIALOG_CONTROL (HTMLDiCT.DLL) restart the Internet Explorer, if maximum Amount of Memory has been reached. (see also section ’Memory leak of the Internet Explorer’ on page 309).
(see "MAX_MEMORY_USE" on page 681)
Length: 2Range: 1 - 99Default: 5
HKEY_LOCAL_MACHINE/SOFTWARE/Wincor Nixdorf/ProTopas/CurrentVersion/CCOPEN/
HTMLDICT
682 May 2008
CCOpen parameters Parameters
JOB_BEFORE_KILL
By this parameter a command job can be defined, that is called with system() directly before the last running Dialog is canceled and the Web Graphical Service exits and restarts! Errors from the system call are not checked. The tool showbmp.exe can be used for displaying a message during the restart (start showbmp c:\\Protopas\\xyz.bmp TOPMOST).
Length: 128Range: alphanumericDefault: ""
JOB_AFTER_KILL
By this parameter a job can be defined, that is called when the Web Graphical Service is operational again and opened! Showbmp.exe may be stopped here (showbmp StopWaiting).
Length: 128Range: alphanumericDefault: ""
WEBEXT_VERSION
By this parameter you can control the behavior of the HTML Dialog Control. Depending on the type of error, different behavior will result for different architecture of the ProTopas/Web-Extensions.
Length: 1Range: 0 - Web-Extensions/ClassicLink
1 - Web-Extensions/HyperLink Version 1.02 - Web-Extensions/HyperLink since Version 1.1
Default: 0
WEBEXT_VERSION
0 1 2
MEMORY LEAK
KILL KILL KILL
EXCEPTION REBOOT REBOOT RESTART
LOCK REBOOT REBOOT REBOOT
May 2008 683
Parameters CCOpen parameters
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
JOB_BEFORE_EXCEPTION
By this parameter a job can be defined, that is called when the Web Graphical Service has thrown an exception and HTML Dialog Control will restart/Reboot the system. This job can be used for displaying an image.
Length: 128Range: alphanumericDefault: ""
JOB_CHECK
This Parameter is only valid in Web-Extensions/HyperLink architecture. This Parameter specifies the time in ms after JOB_AFTER_XXX to check if both process ( JOB_BEFORE_XXX & JOB_AFTER_XXX ) are finished. If not, HTML Dialog Control tries to terminate those.
NOTE: There are two threads in HTML Dialog Control:
mem check - Checking for memory leaks
watch check - Checking for locks
Length: 8Range: 0 - 99999999Default: 5000
JOB_AFTER_EXCEPTION
By this parameter the Job before Exception can be stopped, f.e. Showbmp.exe may be stopped here (showbmp StopWaiting).
Length: 128Range: alphanumericDefault: ""
JOBS_KILL SYSTEM() PROCESS() PROCESS()
JOBS_EXCEPTION
NONE NONE PROCESS() ASYNC
WEBEXT_VERSION
0 1 2
684 May 2008
CCOpen parameters Parameters
AT_KILL_PAUSE_BETWEEN_JOBS
This parameter defines a pause between the JOB_BEFORE_KILL and JOB_AFTER_KILL in milliseconds. It may be necessary to wait until a JOB_BEFORE_KILL is initialized.
(see also section ’JOB_BEFORE_KILL’ on page 682)(see also section ’JOB_AFTER_KILL’ on page 682)
Length: 6Range: 1-600000Default: 100
AT_EXCEPTION_PAUSE_BETWEEN_JOBS
This parameter defines a pause between the JOB_BEFORE_EXCEPTION and JOB_AFTER_EXCEPTION in milliseconds. It may be necessary to wait until a JOB_BEFORE_EXCEPTION is initialized.
(see also section ’JOB_BEFORE_EXCEPTION’ on page 683)(see also section ’JOB_AFTER_EXCEPTION’ on page 683)
Length: 6Range: 1-600000Default: 100
AT_KILL_APP_STOP
By this parameter the close procedure in the application can be switched on and off. The application itself has to handle the open and close mechanism. This is done via the Application Framework together with the Sync Framework normally.
Length: 5Range: FALSE - CloseCustomerService() from the Application
Framework is not calledTRUE - CloseCustomerService() from the Application
Framework is calledDefault: TRUE
May 2008 685
Parameters CCOpen parameters
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
AT_KILL_APP_RESUME
By this parameter the open procedure in the application can be switched on and off. The application itself has to handle the open and close mechanism. This is done via the Application Framework together with the Sync Framework normally.
Length: 5Range: FALSE - OpenCustomerService() from the Application
Framework is not calledTRUE - OpenCustomerService() from the Application
Framework is calledDefault: TRUE
AT_KILL_GS_OPEN
By this parameter the Open() function of the Web Graphical Service can be called or not. It may be necessary not to open the Web Graphical Service in differnt situations (see also section ’Configuration of the start page’ on page 25). The best is to see and test, if an open is implemented in the Trans-action Framework.
Length: 5Range: FALSE - Open() from the Web Graphical Service is not
calledTRUE - Open() from the Web Graphical Service is
called.Default: TRUE
TIME_WAITFOR_RESTART_MEM
This parameter specifies the maximum time in ms, HTML Dialog Control waits for a restart of the Web Graphical Service, after the memory watch thread discovers a problem.
Length: 8Range: 0 -99999999Default: 120000
TIME_WAITFOR_RESTART_EXCEPTION
This parameter specifies the maximum time in ms, HTML Dialog Control waits for a restart of the Web Graphical Service, after the exception watch thread discovers a problem.
686 May 2008
CCOpen parameters Parameters
Length: 8Range: 0 -99999999Default: 120000
TIME_WAITFOR_RESTART_THREADS
This parameter specifies the maximum time in seconds, HTML Dialog Control will wait for restart of the internal threads after restarting the Web Graphical Service.
NOTE: There are two threads in HTML Dialog Control:
mem check - Checking for memory leaks
watch check - Checking for locks
Length: 8Range: 0 -99999999Default: 120
TIME_SLEEP_WATCH
This parameter specifies the time in ms, the HTML Dialog Control repeats the check for the Reaction of the system.
Length: 8Range: 0 -99999999Default: 15000
TIME_MAX_WATCH_THREAD
To make sure, the WatchThread in HtmlDict itself can not hang (CCDialog hangs?!), the WatchThread is controlled by the Software Watchdog from FwLoad. The maximum time in ms of one run of the Watchdog is defined by this parameter. The Default calculation of this max time is: TIME_TRYAGAIN_WM +TIME_WAITFOR_WM + TIME_TRYAGAIN_TIMER + TIME_WAITFOR_TIMER second.
If this time is too short, because any other timeouts (like V.24 timeout of the Hardware) takes longer, the parameter can be set. So its value must be higher than: TIME_TRYAGAIN_WM +TIME_WAITFOR_WM + TIME_TRYAGAIN_TIMER + TIME_WAITFOR_TIMER.
May 2008 687
Parameters CCOpen parameters
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 8Range: 0 -99999999Default: none
TIME_TRYAGAIN_INIT
This parameter specifies the time in ms for a pause, the HTML Dialog Control tries to call GetHWND the second time during initialization.
Length: 8Range: 0 -99999999Default: 15000
TIME_TRYAGAIN_WM
This parameter specifies the time in ms for a pause, the HTML Dialog Control tries to post a second Windows Message. It waits for the response of a Windows Message for a time specified in TIME_WAITFOR_WM.
(see also ’TIME_WAITFOR_WM’ on page 687)
Length: 8Range: 0 -99999999Default: 5000
TIME_WAITFOR_WM
This parameter specifies the time in ms, the HTML Dialog Control tries to wait for a Windows Message response.
(see also ’TIME_TRYAGAIN_WM’ on page 687)
Length: 8Range: 0 -99999999Default: 5000
TIME_TRYAGAIN_TIMER
This parameter specifies thesecond time in ms for a pause, the HTML Dialog Control tries to get a timer response.
Length: 8Range: 0 -99999999Default: 5000
688 May 2008
CCOpen parameters Parameters
TIME_WAITFOR_TIMER
This parameter specifies the time in ms, the HTML Dialog Control waits for getting a timer.
(see also ’TIME_TRYAGAIN_TIMER’ on page 687)
Length: 8Range: 0 -99999999Default: 10000
RESTART_AT
By this new parameter the WebDialog can be restarted at a given time to get rid of memory leaks (GDI leaks).
Syntax: "HHMM", "0200"
Length: 4Range: 0000 -2359Default: -
POPUP_KILLER
This parameter activates the Auditoring of all popup windows of the system during the lifetime of the application. A file will be created, which keeps all Windows names. It will be created in the ProTopas/Web-Extensions TEMP Path (see also ’TempPath’ on page 618) with the name POPUP.TXT.
To store it in Unicode please refer to parameter POPUP_KILLER_FILE_UNICODE.
(see also ’POPUP_KILLER_TIME_SLEEP’ on page 689)
Length: 3Range: ON: Activate the popup window check
OFF: Deactivate the popup window checkDefault: OFF
POPUP_KILLER_FILE_UNICODE
This parameter specifies the format of the POPUP.TXT file with the name of all popup windows.
(see also ’POPUP_KILLER’ on page 688)
May 2008 689
Parameters CCOpen parameters
© S
iem
ens
Nix
dor
f Inf
orm
atio
nss
yste
me
AG
199
5
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ions
\Do
cu\B
ook
\Use
rIn
terf
ace.
fm
Length: 3Range: YES: Store the file in Unicode
NO: Store the file in ANSIDefault: NO
POPUP_KILLER_TIME_SLEEP
This parameter specifies the time in milliseconds the thread for the inspection of the popup windows reactivates to check for new windows. It falls into sleep mode after this check until it is reactivated.
(see also ’POPUP_KILLER’ on page 688)
Length: 7Range: 1000 - 3600000Default: 5000
MAX_WEBEXTENSION_MEMORY_GROWTH
Amount of memory in megabytes showing how much memory may have been wasted until the Internet Explorer is shut down and restarted, in order to solve the memory leak of the Internet Explorer. This parameter is used by the HTML_DIALOG_CONTROL (HTMLDiCT.DLL).
If this parameter contains 30 and the start usage of menory is 50 MB the browser will be restarted, when 80 MB are reached.
This parameter is a successor of parameter MAX_MEMORY_USE.
(see also section ’Memory leak of the Internet Explorer’ on page 309).
Length: 5Range: 0 - 32768Default: 0
690 May 2008
CCOpen parameters Parameters
May 2008 691
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
ToolsIn this chapter several tools for the WebExtensions are explained.
WXCompressHTML tool
General idea
The general idea of this tool is to compress HTML-files generated with MS FrontPage. ActiveX elements generated with FrontPage are bigger in size than they need to, because FrontPage generates all default parameters of the elements into the HTML-source. The compressHTML tool will try to delete all unnecessary content in every HTML-file.
Installation
To install the necessary Parameter for this tool please call manually setup-tools.cmd in \ProTopas\Web\Tools\Conf. This will install the default parameter for the Web-Extensions with its default properties. Each Project has to adapt this Parameter List (see also section ’Configuring the compressHTML tool’ on page 693).
HTML
HTML-files are documents which a browser (like Internet Explorer) can read and interpret. Every HTML document consists of a special structure and every command is written into Tags (<>). A special form of a Tag is a comment which looks like <!-- -->.
A simple HTML structure
HTML documents consist of the following structure:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<TITLE>My first HTML document</TITLE>
692 May 2008
WXCompressHTML tool Tools
</HEAD>
<BODY>
<P>Hello world!</P>
</BODY>
</HTML>
This is only a simple one, which should show the special HTML structure. HTML source is handled in several frames, one Tag opens the frame , e.g. <HTML>, and another one closes the frame, e.g. </HTML>. The slash in the second frame tells the interpreter to close the frame, which is opened by the first frame. The more complex a HTML-file is made, the more frames are used.
WebExtensions HTML
HTML pages are used by the WebExtensions for the Graphical User Interface (GUI). The following components are used:
ActiveX objects
WebBots
special purpose Tags like
<BASE ...>
<a ID="PC_GeneratedAnchor" ...></a>
<div ID="DISPLAY_CONTROLS_BLOCK" ...></div>
<!-- PC_HTMLGEN_RULE:PRINT_THIS -->
ActiveX objects
All ActiveX components of the WebExtensions have a common structure.
This is an Example of the ActiveStep control:
<object classid="clsid:47ED0993-B589-11D0-9302-0000E8A6CB06" id="ActiveStep1" width="100" height="50">
<param name="_Version" value="65536">
<param name="_ExtentX" value="2646">
<param name="_ExtentY" value="1323">
May 2008 693
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
<param name="_StockProps" value="0">
<param name="StepParameter" value>
<param name="Framework" value>
</object>
The data in the first Tag configures the classid (the ActiveX object identifier), the id (DOM ID) and the position on the page (width, height). The properties of the ActiveX object are stored in the <param ...> Tags, where ’name’ describes the property name and ’value’ describes the property value. All default properties of the ActiveX objects are "known" by the object at runtime, so if there are no <param ...> Tags, default values would be used. This means all <param ...> TAGs of an unmodified ActiveX object could be deleted. This behaviour is exploited by the compressHTML tool.
The following ActiveX objects are used by the WebExtensions:
ActiveStep
ActiveVarFW
ActiveDataDictFW
ActiveRegistry
ActivePTSniff
WXPTBridge
PCContentsSTD or PCContentsATM
PCButton
PCEdit
PCEpp
PCList
and some other rare ActiveX components for testing purposes
Configuring the compressHTML tool
All dropping conditions are set in the registry and can easily be extended by configuring your own rules.
694 May 2008
WXCompressHTML tool Tools
Registry key
The base key of the compressHTML tool is:
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
??
Under this key you can find two subkey entries, Current and Data.
Current key
The entries in current key define the standard behaviour of the tool, e.g. the rules used or the initial opening path on startup.
The following entries are settled in the current key:
Registry Entry Type Default Value
WXVersion String 1.1/20
DeleteTextBetweenParamTagsInObjectTag dword 0
FileDialogOpenFilesReadBuffer dword 32768
FileDialogOpenFilesInitialDir String C:\Protopas\Web
FileDialogOpenFilesFilter String HTML (*.htm)|*.htm|HTML (*.html)|*.html||
FileDialogSaveProtocolInitialFilename String Compress.1
FileDialogSaveProtocolDefaultFilename-Extension
String *.prot
FileDialogSaveProtocolInitialDir String C:\ Temp\
FileDialogSaveProtocolFilter String PROTOCOL (*.prot)|*.prot||
FileDialogLoadListInitialDir String C:\ Temp\
May 2008 695
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
WXVersion
Describes which set of rules will be used from Data key. This entry is mandatory!
Length: 32Range: alphanumericalDefault: 1.1/20
DeleteTextBetweenParamTagsInObjectTag
This entry configures whether text between two param TAGs in an object TAG should be deleted or not.
Length: 1Range: numerical [0-1]
0 = turns deleting text off1 = turns deleting text on
Default: 0
FileDialogOpenFilesReadBuffer
A size of the buffer for a multiple selection in a TCHARs for OpenFiles dialog.
Length:Range: numericalDefault: 32768
FileDialogLoadListFilter String FIELLIST (*.filel-ist)|*.filelist||
FileDialogLoadListDefaultFilenameExten-sion
String *.filelist
FileDialogLoadListInitialFilename String Compress.1
FileDialogSaveListInitialDir String C:\ Temp\
FileDialogSaveListFilter String FIELLIST (*.filel-ist)|*.filelist||
FileDialogSaveListDefaultFilenameExten-sion
String *.filelist
FileDialogSaveListInitialFilename String Compress.1
Registry Entry Type Default Value
696 May 2008
WXCompressHTML tool Tools
FileDialogOpenFilesInitialDir
The initial directory for OpenFiles dialog will be configured here.
Length: 1024Range: alphanumericalDefault: C:\Protopas\Web
FileDialogOpenFilesFilter
This is a file filter in OpenFiles dialog. Only files with the specified extension (e.g. .htm) will be shown in the dialog window.
Length: 1024Range: alphanumericalDefault: HTML (*.htm)|*.htm|HTML (*.html)|*.html||
*InitialDir
The initial directories for OpenList, SaveList and SaveProtocoll dialogs will be configured here.
Length: 1024Range: alphanumericalDefault: C:\Temp
FileDialogSaveProtocolInitialFilename
The initial file name for SaveProtocoll which would be shown in the dialog at startup will be configured here.
Length: 1024Range: alphanumericalDefault: Compress.1
FileDialogSaveListInitialFilename
The initial file name for SaveList which would be shown in the dialog at startup will be configured here.
Length: 1024Range: alphanumericalDefault: Compress.1
May 2008 697
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
FileDialogLoadListInitialFilename
The initial file names for OpenList which would be shown in the dialog at startup will be configured here.
Length: 1024Range: alphanumericalDefault: Compress.1
FileDialogSaveListDefaultFilenameExtension
Default file name extension for SaveList dialog.
Length: 1024Range: alphanumericalDefault: *.filelist
FileDialogLoadListDefaultFilenameExtension
Default file name extension for LoadList dialog.
Length: 1024Range: alphanumericalDefault: *.filelist
FileDialogSaveProtocolDefaultFilenameExtension
Default file name extension for SaveProtocol dialog.
Length: 1024Range: alphanumericalDefault: *.prot
FileDialogSaveProtocolFilter
The file filters for SaveProtocoll dialog will be configured here. Only files with the specified extension will be shown in the dialog window.
Length: 1024Range: alphanumericalDefault: PROTOCOL (*.prot)|*.prot||
FileDialogSaveListFilter
The file filters for SaveList dialog will be configured here. Only files with the specified extension will be shown in the dialog window.
698 May 2008
WXCompressHTML tool Tools
Length: 1024Range: alphanumericalDefault: FIELLIST (*.filelist)|*.filelist||
FileDialogLoadListFilter
The file filters for OpenList, SaveList and SaveProtocoll dialogs will be configured here. Only files with the specified extension will be shown in the dialog window.
Length: 1024Range: alphanumericalDefault: FIELLIST (*.filelist)|*.filelist||
Data key
All rules for the compressing job will be configured in the data key. Several sets of rules can be configured there. A set consists of the set’s name key, the object identifier keys (clsid) and maybe of some dependencies. All rules of a special set are summarized under the set’s name key, e.g. 1.1/20 (for WebExtensions Version 1.1/release 20). Under the name key the object identifier subkeys are settled. The dependencies (if any) are settled under the special object identifier key.
May 2008 699
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Fig. 102: Default settings in the registry
This example should show the default set of rules. The set’s name key is 1.1/20, the object identifier keys are the classids of ActiveX objects of the WebExten-sions. The dependencies are configured in Dependency_Cancel, Dependency_PinEntry, etc.
The entries of rules for compressing data are settled in every object identifier key. The rules of dependency drop are settled in the special Dependency_* keys.
700 May 2008
WXCompressHTML tool Tools
How to configure your own rules
All rules for compressing are set in the data key in the registry. To configure your own rules you have to decide either to configure your own set of rules or to extend an existing set of rules.
The name of the set of rules
If you want to configure your own set of rules you have to determine a name of the set and create a new subkey in the data section in the registry.
Example: myRuleSet
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
DatamyRuleSet
Using the new rules
To force the tool to use the new rules you have to enter the name of the set of rules in the WXVersion parameter in the current key.
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
Current"WXVersion = myRuleSet"
May 2008 701
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Configuring the used ActiveX objects
New subkeys in the Data\myRuleSet section must be created. The name of each of the subkeys must be the classid of the special ActiveX object which should be compressed, following called identifier key.
Example: ActiveStep
The classid of the ActiveStep is clsid:47ED0993-B589-11D0-9302-0000E8A6CB06, so the name of the identifier key is exactly the same.
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
DatamyRuleSet
clsid:47ED0993-B589-11D0-9302-0000E8A6CB06
Configuring the compressing rules
The compressing rules must be configured for every ActiveX object. There are two different kinds of rules:
Normal drop: Normal drop is the standard way of compressing data. The rules of normal drop are settled in the object identifier key, e.g. for ActiveStep in the clsid:47ED0993-B589-11D0-9302-0000E8A6CB06 key. The normal drop rules are used mostly to drop the default parameters of every ActiveX object. There are two different kinds of dropping the content, DROP EXACT and DROP IF BEGIN WITH.
DROP EXACT is used to drop the content only if the whole term in the HTML file matches exact the term entered in the registry.Example: The rule in the registry looks like 01001 = <param name="Framework" value> and it is settled in the registry key of the ActiveStep (classid), then all terms which matches exact the term above and belong to the ActiveStep will be deleted, if the term in the HTML file looks like <param name="Framework" value="CCTransac-tionFW"> the whole term would not be deleted (see also the example below).
702 May 2008
WXCompressHTML tool Tools
DROP IF BEGIN WITH is used to drop every content which begins with the term in the registry, the value is irrelevant.Example: The rule in the registry looks like 02001 = <param name="Framework" value>, then the term would also be deleted if its value does not match the term in the registry. Only the beginning of the term must match.
Dependency drop: In some cases a few parameters are related to each other. In these cases only one <param ...> TAG value can decide either to delete a block of TAGs or not. Dependency drop rules are settled in a subkey (determine a name) in the identifier key section.Example: The schemes of the PCButton are a good example. If a scheme is used the properties of the used images, font, font-size (etc.) are set in the special schemes, so all <param ...> TAGs which describe these attributes of the schemes could be deleted if a scheme is used.
All entries in the identifier key are string values. Their names consist of a 5 digit keycode with the format XX YYY. XX is the value of the command and YYY is the value of its description. The following codes are possible:
The command value 00 is only for dependency drop use. You have to use both of them, if you want to configure a dependency drop. First you have to use the code 00 001 and the Condition type (if 0, if not 0, if string or if not string), then the code 00 002 and the condition value. If the Condition type is if not string additional condition to match the right row (<param ...>) for Condition value check should be used in 00 003! The following entries (must begin with 01 or 02) are the entries of param TAGs which should be deleted if the condition set before is true. If the command codes 01 or 02 are used the next 3 digits are only the serial number of each parameter. The value is irrelevant as long as there are no equal entries in the same registry key!
Example of a dependency drop rule:
XX YYY Command
00 001 Condition type (if 0, if not 0, if string, if not string)
00 002 Condition value
00 003 Row Condition value for if not string
01 001-999 Drop exact
02 001-999 Drop if begin with
May 2008 703
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
Data1.1/20
clsid:CAE3F5B3-93D3-11D0-A3C0-00C095ECC157
Scheme_new_m
In this example all <param ...> TAGs, which are determined by a scheme, are deleted if the scheme "new_m" is used by the ActiveX object (in this case the PCButton).
Example of a dependency drop rule using if not string:
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
Data
Registry entries Values
00001 if string
00002 <param name="Scheme" value="new_m">
02001 <param name="ImageDown"
02002 <param name="ImageUp"
02003 <param name="ImagePressed"
... ...
704 May 2008
WXCompressHTML tool Tools
1.1/20clsid:CAE3F5B3-93D3-11D0-
A3C0-00C095ECC157RadioButton
In this example <param name="RadioButtonName"...> TAG will be deleted if the Selection is not "3".
NOTE: 00003 is used only with if not string condition. It act like IF BEGIN WITH to select right row for Condition check!
Registry entries Values
00001 if not string
00002 <param name="Selection" value="3">
00003 <param name="Selection"
02002 <param name="RadioButtonName"
May 2008 705
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Examples of compressed components
The following examples should show how the compressHTML tool will work. The rules used are the 1.1/20 rules.
ActiveStep
OBJECT:
clsid:47ED0993-B589-11D0-9302-0000E8A6CB06
NOTE: The classid of the object is very important! Every ActiveX object can be recognized by it’s classid. The compressHTML tool then only deletes the param TAGs according to the correspondent ActiveX object.
Sourcecode before compressing with compressHTML tool:
<object classid="clsid:47ED0993-B589-11D0-9302-0000E8A6CB06" id="ActiveStep1" width="100" height="50">
<param name="_Version" value="65536">
<param name="_ExtentX" value="2646">
<param name="_ExtentY" value="1323">
<param name="_StockProps" value="0">
<param name="StepParameter" value>
<param name="Framework" value>
</object>
Compressed sourcecode:
<object classid="clsid:47ED0993-B589-11D0-9302-0000E8A6CB06" id="ActiveStep1" width="100" height="50">
</object>
Dropped sourcecode:
<param name="_Version"*
<param name="_ExtentX"*
<param name="_ExtentY"*
<param name="_StockProps"*
706 May 2008
WXCompressHTML tool Tools
<param name="StepParameter" value>
<param name="Framework" value>
Dependency drops: none
PCContentsSTD
OBJECT:
clsid:8E67054F-5F6B-11D1-A3F5-0060084B786A
Sourcecode before compressing:
<object classid="clsid:8E67054F-5F6B-11D1-A3F5-0060084B786A" id="PCContentsSTD1" width="100" height="100">
<param name="_cx" value="2646"><param name="_cy" value="2646"><param name="PageHeadline" value><param name="SubmitControlName" value><param name="WithoutSubmitButton" value="0"><param name="PageInstruction" value><param name="PageBeep" value="4"><param name="PageTimeout" value><param name="TimeoutStdHref" value><param name="TimeoutStdWindow" value="0"><param name="TimeoutQuestionHref" value><param name="TimeoutQuestionWindow" value="0"><param name="AfterTimeoutHref" value><param name="AfterTimeoutWindow" value="0"><param name="TimeoutWindowTop" value="-16000"><param name="TimeoutWindowLeft" value="-16000"><param name="TimeoutWindowWidth" value="-16000"><param name="TimeoutWindowHeight" value="-16000"><param name="CancelStdHref" value><param name="CancelStdWindow" value="0"><param name="CancelQuestionHref" value><param name="CancelQuestionWindow" value="0"><param name="CancelWindowTop" value="-16000">
May 2008 707
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
<param name="CancelWindowLeft" value="-16000"><param name="CancelWindowWidth" value="-16000"><param name="CancelWindowHeight" value="-16000"><param name="FunctionKeyID01" value><param name="FunctionKeyID02" value><param name="FunctionKeyID03" value><param name="FunctionKeyID04" value><param name="FunctionKeyID05" value><param name="FunctionKeyID06" value><param name="FunctionKeyID07" value><param name="FunctionKeyID08" value><param name="FunctionKeyID09" value><param name="FunctionKeyID10" value><param name="FunctionKeyID11" value><param name="FunctionKeyID12" value><param name="FunctionKeyID13" value><param name="FunctionKeyID14" value><param name="FunctionKeyID15" value><param name="FunctionKeyID16" value><param name="FunctionKeyID17" value><param name="FunctionKeyID18" value><param name="FunctionKeyID19" value><param name="FunctionKeyID20" value><param name="HtmlOrStepAfterFlag" value="0"><param name="FunctionKeyViewState" value="33333333333333333333"><param name="HtmlWindow" value="00000000000000000000"><param name="StepAfterHtmlWindow" value="00000000000000000000"><param name="StepStartHtmlWindow" value="00000000000000000000"><param name="StepAfter" value><param name="StepAfterHtml00" value><param name="StepAfterHtml01" value><param name="StepAfterHtml02" value><param name="StepAfterHtml03" value><param name="StepAfterHtml04" value><param name="StepAfterHtml05" value><param name="StepAfterHtml06" value><param name="StepAfterHtml07" value><param name="StepAfterHtml08" value><param name="StepAfterHtml09" value>
708 May 2008
WXCompressHTML tool Tools
<param name="StepAfterHtml10" value><param name="StepAfterHtml11" value><param name="StepAfterHtml12" value><param name="StepAfterHtml13" value><param name="StepAfterHtml14" value><param name="StepAfterHtml15" value><param name="StepAfterHtml16" value><param name="StepAfterHtml17" value><param name="StepAfterHtml18" value><param name="StepAfterHtml19" value><param name="HtmlAfter01" value><param name="HtmlAfter02" value><param name="HtmlAfter03" value><param name="HtmlAfter04" value><param name="HtmlAfter05" value><param name="HtmlAfter06" value><param name="HtmlAfter07" value><param name="HtmlAfter08" value><param name="HtmlAfter09" value><param name="HtmlAfter10" value><param name="HtmlAfter11" value><param name="HtmlAfter12" value><param name="HtmlAfter13" value><param name="HtmlAfter14" value><param name="HtmlAfter15" value><param name="HtmlAfter16" value><param name="HtmlAfter17" value><param name="HtmlAfter18" value><param name="HtmlAfter19" value><param name="HtmlAfter20" value><param name="StepStart" value><param name="StepStartSoftkeysAllowed" value="0"><param name="StepStartHtml00" value><param name="StepStartHtml01" value><param name="StepStartHtml02" value><param name="StepStartHtml03" value><param name="StepStartHtml04" value><param name="StepStartHtml05" value><param name="StepStartHtml06" value><param name="StepStartHtml07" value><param name="StepStartHtml08" value><param name="StepStartHtml09" value>
May 2008 709
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
<param name="StepStartHtml10" value><param name="StepStartHtml11" value><param name="StepStartHtml12" value><param name="StepStartHtml13" value><param name="StepStartHtml14" value><param name="StepStartHtml15" value><param name="StepStartHtml16" value><param name="StepStartHtml17" value><param name="StepStartHtml18" value><param name="StepStartHtml19" value><param name="TimeoutDefault" value="0"><param name="CancelDefault" value="0"><param name="NewWindowTop" value="54"><param name="NewWindowLeft" value="44"><param name="NewWindowWidth" value="712"><param name="NewWindowHeight" value="260"><param name="PinEntry" value="7"><param name="EPPConfigActiveFDK" value="0"><param name="EPPConfigActiveFK" value="0"><param name="EPPConfigTerminateFDK" value="0"><param name="EPPConfigTerminateFK" value="0"><param name="EPPConfigValue_FK_Decpoint" value><param name="EPPConfigValue_FK_res1" value><param name="EPPConfigValue_FK_sub" value="*"><param name="EPP_OK_Href" value><param name="EPP_NOK_Href" value><param name="StepStartParam" value><param name="StepAfterParam" value><param name="InstanceReturn" value><param name="ADACommand" value>
</object>
Compressed sourcecode:
<object classid="clsid:8E67054F-5F6B-11D1-A3F5-0060084B786A" id="PCContentsSTD1" width="100" height="100">
</object>
710 May 2008
WXCompressHTML tool Tools
Dropped sourcecode:
all <param ...> TAGs
Dependency drops:
IF NOT 0
<param name="CancelDefault" value="
DROP
<param name="CancelStdHref"*<param name="CancelStdWindow"*<param name="CancelQuestionHref"*<param name="CancelQuestionWindow"*<param name="CancelWindowTop"*<param name="CancelWindowLeft"*<param name="CancelWindowWidth"*<param name="CancelWindowHeight"*
The rules for this dependency drop could be found in
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionTools
WebExtensionsCompressHTML
Data1.1/20
clsid:8E67054F-5F6B-11D1-A3F5-0060084B786A
Dependency_Cancel
00001
This is the condition type of the dependency drop.
Length: 1024Range: alphanumericalDefault: if not 0
May 2008 711
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
00002
This is the condition value. In this case the value of the specific param must not be 0. The string must be entered up to the first quotation mark after the ’value=’. The condition is true if the value is not 0 or not empty.
Length: 1024Range: alphanumericalDefault: <param name="CancelDefault" value="
02nnn
All following parameters entered in the same key will be deleted if the condition before is true. Therefore the ’Drop if begin’ rule is the best way to do so.
The tool in action
Starting dialog
Fig. 103: At startup
At startup you have the following options:
File(s): Select one or more files. The initial directory is set in the registry.
712 May 2008
WXCompressHTML tool Tools
Clear file(s): All selected files will be deleted from the list.
Load list: Loads a saved list of files.
Save list: Creates a list of all selected files and saves it.
Select all: Selects all files shown in the window.
Deselect all: Deselects all files shown in the window.
Compress: This button starts the compress dialog.
Compress dialog
Fig. 104: Compress; Do it!
In the compress dialog you have the following options:
Do it!: This button starts the compressing job. All files selected in the starting dialog would be compressed if no error occurs. The compressed files have a new file ending .new to preserve the original files. The rules for compressing the files are set in the registry. To rename all *.new files to its original file names use DOS command: rename *.htm.new *.htm
May 2008 713
Tools WXCompressHTML tool
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Save protocol: The output shown in the dialog would be saved to a special protocol file. Rules for the protocol are set in the registry.
Exit: Exits the Compress dialog.
Error handling
The compressHTML tool can handle some errors.
Possible error values are:
Value Error description
-1 general error
-2 file is empty
-3 file is not HTML conform
-100 general exception
-101 file exception
714 May 2008
WXCompressHTML tool Tools
Fig. 105: Example of an error
May 2008 715
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Note what caused the error:
Fig. 106: Error file
The error was caused by a missing comment end tag! in the script!
Pagelogger
This tool is used for tracking the flow of a Web-Extensions/HyperLink appli-cation. It journals all HTML pages and all step entries and exits with the corre-sponding return values. In a separate configuration file data dictionary properties may be configured. These are logged together with the HTML pages as well as memory information (another option). Finally this tool may be configured to run automatically and to simulate a user in front of the application. In case of error situations a script file may be used to save log data. So this tool may be used to perform a long term test.
716 May 2008
Pagelogger Tools
Installation
To install the necessary parameter for this tool please call manually setup-pagelogger.cmd in \ProTopas\Web\Tools\Conf. This will install the default parameter and configuration files for Pagelogger with its default properties and copies the file PageLogger.dll from \ProTopas\Web\Tools to \ProTopas\Bin.
Please make sure, that the application is installed prior to the instal-lation of Pagelogger, otherwise the Repository entries from PageLogger will be overridden by the installation of the application. PageLogger creates overlays of the Data Dictionary FW and CCTransaction FW and these must be written as last entries in these parameters.
As soon as PageLogger is installed it will start logging. To switch it off, please remove manually the calls to the PageLogger.dll under the keys:
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
CurrentVersionCCRepMgr
FRM_RepositoryCCDatDicCCTransactionFW
Please remove ;C:\ProTopas\BIN\PageLogger.dll from these parameters.
Configuration
The configuration of PageLogger has to be done manually in the registry. The parameter are not supervised by Parac. An explanation of all parameter will be found in this chapter.
HKEY_LOCAL-MACHINESOFTWARE
Wincor NixdorfProTopas
May 2008 717
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
CurrentVersionCCOpen
PageLogger
Trace_File
This parameter specifies the path and name of the log file of PageLogger
(see also section ’The log file’ on page 720).
Length: 256Range: Alphanumerical
Path to PageLoggers log file.Default: C:\ProTopas\PageLogger\PageLogger.trc
Prop_File
This parameter contains a filename and path, which lists all data dictionary properties to be logged at the end of a step. The properties must be added - each line a parameter - in this file. Array properties may be entered as well, each array element on a separate line, e.g.
Arrayelement[0]Arrayelement[1]PropertyX
(see also section ’The property file’ on page 721)
Length: 256Range: Alphanumerical
Path to PageLoggers property fileDefault: C:\ProTopas\PageLogger\PageLogger.prp
Memcheck
This parameter specifies if memory data shall be logged at each entry in the log file.
(see also section ’The log file’ on page 720)
Length: 5Range: Alphanumerical
TRUE = Logging of Memory data is enabled. So at each Log entrythree memory values a written into the Log.
FALSE = Logging of Memory data is disabled.Default: FALSE
718 May 2008
Pagelogger Tools
Script_Handling
With this parameter you can switch the script handling on or off.
Length: 5Range: Alphanumerical
TRUE = Script handling is enabledFALSE = Script handling is disabled
Default: FALSE
Script_File
This parameter contains a filename prefix and path for the script file. This is used for automatic testing. If more than one script shall be used, the parameter Num_Scripts (see also section ’Num_Scripts’ on page 718) contains the number of script files to use. Each script file begins with the filename prefix from this parameter, is enhanced by a number (starting from 1) and has the extension .scr, e.g. Pagelogger1.scr, Pagelogger2.scr.
If Num_Scripts is 1, the number after the filename prefix will be omitted,e.g. Pagelogger.scr.
Remark: This filename must not have an extension. This is automatically added (.scr) (see also section ’Script file name’ on page 722).
Length: 256Range: Alphanumerical
Path to PageLoggers script file(s)Default: C:\ProTopas\PageLogger\PageLogger
Num_Scripts
This parameter contains the number of script files for automatic testing. This parameter is used to build the filename of the scriptfile together with the parameter Script_File (see also section ’Script_File’ on page 718).
(see also section ’Script file name’ on page 722)
Length: 3Range: Numerical
1 - 999Default: 1
May 2008 719
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Init_Page
The HTML name (without extension .htm) specified in this parameter is set as the starting point for the script files for the automatic test. The first script file starts and ends here and if the parameter Random (see also section ’Random’ on page 719) is not set to TRUE, after a waiting time specified in parameter Time_Between_Transactions (see also section ’Time_Between_Transactions’ on page 719) the next script file will start here as well. After the last scriptfile has passed the first scriptfile will restart, and so on.
Remark: The extension.htm must be omitted in this parameter.
Length: 256Range: Alphanumerical
Name of a HTML fileDefault: basidleloop
Random
This parameter specifies if the number of script files shall be started one after each other starting with script number 1 or if the script shall be started randomly.
Length: 5Range: Alphanumerical
TRUE = Scripts shall run randomlyFALSE = Script shall run in sequential order
Default: FALSE
Time_Between_Transactions
This parameter specifies the time in ms to wait after one script file is finished and the next (or the same) shall be started.
Length: 40Range: Numerical
Time to wait between script files in msDefault: 10000
Error_Pages
The HTML name of error pages (without extensions .htm), divided by the | sign, may be edited in this parameter. If one of these files has been passed during automatic test the script from parameter Error_Action (see also section ’Error_Action’ on page 720) is started.
720 May 2008
Pagelogger Tools
Length: 1024Range: Alphanumerical
Name or names of HTML file(s) divided by | Default: baserror
Error_Action
This parameter specifies a command file to be started, if one of the error pages (see also section ’Error_Pages’ on page 719) has been passed during the automatic test.
Length: 256Range: Alphanumerical
Name and path of a script file for the error action Default: C:\protopas\pagelogger\copy_error.cmd
LOG_MFC
This parameter specifies, if additionaly inforamtion should be written into the log file. These information are used by the tool ScriptGen.exe (see also section ’ScriptGen.exe’ on page 726) to build script files automatically.
Length: 1Range: 0 - Do not write log information into Tracefile for automatic
generation of script file1 - write log information into Tracefile for automatic generation ofscript file
Default: 0
The log file
The logfile contains information about the transaction flow of a Web-Exten-sions/HyperLink application. It records the HTML pages and the steps running in these pages. Every step is logged by a starting entry and by the return value passed from this step into the page. If properties have been specified in the property file, the contents of all properties listed in this file will be logged as well. Additionally a Memcheck may be activated by parameter which results in additional memory information per log entry of pages and steps. The name of the log file must be configured in parameter Trace_File (see also section ’Trace_File’ on page 717).
May 2008 721
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
An entry for the HTML page log with memory entry will look as follows:
11:55:53.28 <00000478> <00089448> <00091763>--> HTML : C:\PROTOPAS\Web\English\basselection.htm
There are 3 memory values (in <> brackets), which are posted when the parameter Memcheck is set to TRUE. They have the following meaning:
1. This counter is incremented for each UtiMalloc and decremented for each UtiFree. To make sure that there is no memory leak this counter should not grow.
2. This value returns the number of actual allocated bytes.
3. This value returns the maximum amount of allocated bytes.
An entry for a step (start and exit with return value) will look as follows:
11:55:49.88 <00000447> <00088373> <00090634>Step : BAS_CHECK_SELECTION()
11:55:49.88 <00000447> <00088373> <00090688>Return: BAS_CHECK_SELECTION --> 2
If there are internal steps called from inside a step those are listed as well. Every step, which is called by ProcessStepAsync or ProcessStep using the ProTopas Bus will be listed.
An entry for a property will like like this:
11:55:49.88 CCTAFW_PROP_TRANSACTION_STATUS[0] = <0>
The index [0] will be added even if the property is not part of an array!
Please remark: The log entries for the properties will be shown above the log entry of the step return. However, the data is read from the data dictionary after the step has finished.
The property file
The property file lists line by line all properties which should be logged. Even array elements may be used with the syntax [x]. Please make sure to set the name of the property file into the parameter Prop_File (see also section ’Prop_File’ on page 717)
722 May 2008
Pagelogger Tools
Arrayelement[0]Arrayelement[1]PropertyXPropertyY
The property file is interpreted each time the page from parameter Init_Page (see also section ’Init_Page’ on page 719) is passed, that means it is possible to change the property file even during runtime.
An example property file will have been copied into C:\ProTopas\Pagel-ogger with the name PageLogger.prp by the installation.
The script file
The script file can be configured to to perform actions automatically, what normally an user would have to do on MFCinput in order to run a transaction. It simulates key presses on MFCInput, which can be configured to run when a specified page is loaded.
Script file name
The name of the script file starts with the prefix, which is configured in the parameter Script_File (see also section ’Script_File’ on page 718). If only one script file shall be used, please use .scr as extension. If more than one script file shall be used this has to be configured in parameter Num_Scripts (see also section ’Num_Scripts’ on page 718). The name of the script file have to be
Prefix from Script_File + consecutive number + .scr
pagelogger1.scrpagelogger2.scrpagelogger3.scr...until it reaches the number from Num_Scripts.
The aim behind having more than one script file is that the script file may change by random or sequential. The starting point of the script is configured in Init_Page (see also section ’Init_Page’ on page 719). If the parameter Random (see also section ’Random’ on page 719) is set to TRUE, at this starting point a random script file out of the range of Num_Scripts will be started. If Random is set to FALSE, the new script file will be started at of sequence, restarting with the script file 1 after the last script file has been executed.
May 2008 723
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
Before a new script file starts the parameter Time_Between_Transactions (see also section ’Time_Between_Transactions’ on page 719) specifies the time in ms to wait for the start of the new script.
An example script file will have been copied into C:\ProTopas\Pagelogger with the name PageLogger.scr by the installation.
Syntax of the script file
A script file lists line by line all commands it has to perform on the MFCInput in order to run any transaction, starting with the command to leave the page configured in Init_Page.
Each line starts with the page name without extension on which the action must be performed, followed by a numerical value, which stands for the action itself. All other entries are optional: The sleeping time in ms before the action is started, a command file to be started after the page and finally a command file to be started when the page is loaded. All entries have to be separated by a | sign. Please make sure to add all separators in each line, even if the contents of any entry may be left empty:
page name | action | sleep | command to do after page (on next page) | command to do when page starts
Examples:
basidleloop|128|8000||
baspinentry4|1,2,3,4|1000||
basselection|38|1000||
The action can be one of these numerical values or the keyword RANDOM:
Action Define Meaning
0 0 Key 0
1 1 Key 1
2 2 Key 2
3 3 Key 3
4 4 Key 4
5 5 Key 5
6 6 Key 6
7 7 Key 7
724 May 2008
Pagelogger Tools
8 8 Key 8
9 9 Key 9
10 ASTERIX Key *
11 CROSS Key #
20 CONFIRM Functionkey Enter
21 CANCEL Funktionkey Cancel
22 CLEAR Funktionkey Correct
23 HELP Functionkey Help
24 PRINT not used
31 SUPERVISOR Functionkey Supervisor
33 F1 Softkey F1
34 F2 Softkey F2
35 F3 Softkey F3
36 F4 Softkey F4
37 F5 Softkey F5
38 F6 Softkey F6
39 F7 Softkey F7
40 F8 Softkey F8
128 INSERT_CARD Functionkey Card inserted
129 TAKE_CARD Functionkey Card taken
130 TAKE_MONEY Functionkey Money taken
131 TAKE_DOC Functionkey Doc taken
132 INSERT_ENV Functionkey Env. inserted
133 TAKE_ENV Functionkey Env. taken
134 INSERT_PBK Functionkey Passbook entry
Action Define Meaning
May 2008 725
Tools Pagelogger
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook\
Too
ls.f
m
All actions can be combined by separating two actions with a comma.
Please note that all buttons positions have to be entered as shown in the MFCInput control panel.F1 F5F2 F5F3 F7F4 F8
Action RANDOM[Min,Max,Modulo,SEP]: This action might be used to generate an action at random. Min and Max define the upper and lower value, which may be generated. Modulo tells by which value the generated entry must be divisable. SEP is a bool flag (TRUE, FALSE) which specifies if the separator sign shall be used during entering the values and may be specified optionally. This means for a ramdom Softkey press you have to specify RANDOM[33,40,1], for an amount entry which must be between 10 and 400 in Steps of 10 it is RANDOM[10,400,10,TRUE].
The sleeping time may be used to add a little amount of time before the action is performed. This makes it more realistic to real live, where the user needs a small amount of time, before he inserts his card or inserts any numerical value, etc.
The two command files may be used to save any trace data, for example.
Error Page action
By use of the parameter Error_Pages (see also section ’Error_Pages’ on page 719) pages may be configured, which may not be edited in a script file. Here the general error pages may be entered. It may be that any software (or even HW) error occurs. In this case the trace, journal and error file may be stored with a timestamp in a command file, which has to be entered in parameter Error_Action (see also section ’Error_Action’ on page 720).
135 TAKE_PBK Functionkey Passbook taken
RAMDOM[Min,Max,Modulo,SEP]
RANDOM The entry is generated at ramdom
Action Define Meaning
726 May 2008
Pagelogger Tools
ScriptGen.exe
If the parameter LOG_MFC (see also section ’LOG_MFC’ on page 720) has been set to 1, there are additional information written into the log file. ScriptGen-exe may use those information to build the script file automati-cally.
ScriptGen is using a command line for its parametrization. The following syntax has to be used:
ScriptGen.exe <input file> -s [page] -w nnn -t [file]-O <page> <script> -A <page> <script>
– parameters in [ ] brackets are optional
– parameters in < > brackets are mandatory
<input file> specifies the trace file. Make sure, that the additional infor-mation are available in this file (Parameter LOG_MFC = 1)
-s [page]: This parameter specifies the name of the init page, which is the activation point for pagelogger. If the page name is omitted basidleloop.htm is used.
-w nnn: nnn speficies the amount of time in ms to wait on the init page until the script is activated. The default is 1000, which is 1 second.
-t [file]: This is the name for the output script file. The default would be pagelogger.scr.
-O <page> <script>: This parameter specifies the name of a script to be started on a page. The parameter is optional, but when it is used the page name and script name are mandatory. This parameter can be specified more than once.
-A <page> <script>: This parameter specifies the name of a script to be started after a page. The parameter is optional, but when it is used the page name and script name are mandatory. This parameter can be specified more than once.
After the script file has been built it has to be checked, if everything is arranged like it should. It can be modified and extended by own scriptcode as well.
May 2008 727
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Web
Ext
Ab
kuer
zung
en.
fm
AbbreviationsANSI American National Standards Institute: The character set used in
Windows is based on an ANSI standard.
AVI Format for movie files that can be displayed in the Internet Explorer.
BMP Bit map: A pixel image format which is frequently used in Windows environments.
BOF Basic Operating Functions: Operating system extension for self-service devices. It incorporates drivers for controlling peripheral devices.
CIM86 Card Identification Module 86: Security module for checking whether ec or customer cards have been tampered with.
EPP Encrypted PIN Pad: Keyboard for entering the PIN on a self-service device. The EPP is also a secure repository for keys to encrypt the PIN.
EXT Extended Functionality: Operating extension for self-service devices. It incorporates drivers for controlling third-party peripheral devices.
FW Framework: ProTopas component incorporating a self-contained function.
GIF Format for image files. This is the most frequently used format. Moving pictures can also be stored in this format.
HTML Hypertext Markup Language: Language to describe Internet pages. A page described with HTML elements can be displayed in any browser.
HTTP Hypertext Transport Protocol: Interface protocol to exchange HTML pages between servers and terminal devices.
ID Identification. Often used in conjunction with the ID card. It describes a card which uniquely identifies the customer.
728 May 2008
Abbreviations
IDCU ID card unit: Device to read customer and ec cards.
ISO International Organization for Standardization: An international association of member countries, each of which is represented by its leading standard-setting organization.
JPEG Format for image files that is frequently used on the Internet. These files are compressed but cannot contain transparent images or moving pictures.
LAN Local Area Network: Network of PCs and other computers within buildings or campuses.
MODID Module Identification: Description of the version and date of files from ProTopas/Web-Extensions.
MOV Movie: File format for storing movies. This format can be displayed in the Internet Explorer.
ND97 Nixdorf printer 97: Forms printer for statements of account and large-format receipts. This printer has two paper feeds, and can retract documents that have not been removed.
ND99 Nixdorf printer 99: Printer for small-format receipts. The paper is in rolls.
ODBC Open Data Base Connection: Standardized protocol to access any databases in Windows systems.
OFX Open Financial Exchange: Protocol for the international exchange of data between home PCs and financial institutions’ computers. The protocol is geared to the HTML page description language.
PIN Personal Identification Number: Secret number that the customer has to input as a security precaution for ec or customer cards.
PMP ProConnect Message Protocol: Proprietary protocol for exchanging data between self-service devices and the ProConnect server.
SFP Security Facility Package: Operating system extension for self-service devices. It incorporates drivers for controlling security modules such as the Encrypted PIN Pad.
May 2008 729
Abbreviations
© S
iem
ens
Nix
dorf
Inf
orm
atio
nss
yste
me
AG
199
5 P
fad:
d:\
Pro
Topa
s\W
eb-E
xte
nsio
ns\
Do
cu\B
ook
\Web
Ext
Ab
kuer
zung
en.
fm
SOP Service and Operating: Functions to monitor and refill/empty paper/cash/cards on self-service devices.
SQL Structured Query Language: Language to access database elements.
TCP/IP Transmission Control Protocol/Internet Protocol: A suite of protocols used to transport data over the Internet.
URL Uniform Resource Locator: Address at which an HTML page can be found.
WAN Wide Area Network: Network of computers not in the same building or campus.
WAV File format for storing audio data that has not been recorded digitally.
CEN/XFS Windows Open System Architecture/Extensions for Financial Services: Standard interface for addressing peripheral hardware in self-service devices under Windows NT: Programs which address hardware via this interface can run on devices of manufacturers who support this interface.
WYSIWYG What You See Is What You Get: Data that is displayed on screen in an editor appears as it will later in a printout.
730 May 2008
Abbreviations
May 2008 731
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\W
ebE
xtF
achw
ort.f
m
GlossaryActive VarFW control
Control which permits access to the Variable Framework. Data can be read or stored there with the aid of this control. The control is used in conjunction with HTML page scripts.
AllowList
Positive list in which all HTML pages are specified that can be displayed on the self-service device.
AllowList control
Control which monitors the AllowList. This control cannot be edited in Microsoft FrontPage.
application Framework
ProTopas framework which handles synchronization between the Trans-action, Host Protocol and Service Frameworks.
Array
Data structure which can hold a certain number of data items.
Business module
ProTopas Transaction Framework module which is also called a Step. The business functionality of the application and access to the hardware is handled in these modules.
Browser
Module to display HTML pages. Microsoft’s Internet Explorer is used as the browser in ProTopas/Web-Extensions.
Button control
Control to represent a button on the screen. The optical appearance and the link for this button can be edited.
Cascaded style sheet
A description file defined for Internet pages which permits the elements on an Internet page to be positioned with pixel accuracy.
732 May 2008
Glossary
Check Framework
ProTopas Framework in which input checks have been implemented for ProTopas/Web-Extensions.
Contents STD/ATM control
Control in which access to business modules is parameterized and in which the appearance of function keys is described. The Contents ATM control also controls the input sequence and synchronizes the other ProTopas/Web-Extensions controls.
Context frame
Arrangement of the screen to load individual Internet pages. The main frame, in which the events of the application have been implemented, is called the Context frame.
Control
Independent component which incorporates a self-contained function and can be controlled or queried from outside.
Data Dictionary Framework
ProTopas framework which can be parameterized to manage the storage location of variables. Every ProTopas framework can read and set data via the Data Dictionary, and thus does not have to deal with the storage location of the data.
Default values
Basic settings that are used by default if nothing else is specified. Changing these default values results in a change to all modules which have been set to these values.
Device Framework
ProTopas framework which controls the hardware.
Dialog Framework
ProTopas framework which displays the user interface. The Dialog Framework has been implemented as a browser in ProTopas/Web-Exten-sions.
May 2008 733
Glossary
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\W
ebE
xtF
achw
ort.f
m
Dynamic HTML
Method of representing moving contents on an HTML page with the aid of scripts.
Edit control
Control to represent input fields. The appearance of this control can be freely designed. Standard input checks can be used, or new ones added.
Input status variable
Variable containing the status of an input field. This status indicates whether the input has already been checked or whether the check still needs to be carried out.
Input timeout
A value that can be set to ensure that the application returns to its original state if a customer leaves the device in the middle of a function.
Encrypted PIN Pad
Keyboard to input the personal identification number. This hardware also ensures that the PIN is encrypted immediately and is never sent in the clear over any line.
EPP control
Control that outputs asterisks when the PIN is input. An asterisk is displayed as a result of an event.
Error log
File in which errors are recorded. This file is written cyclically. The size of the file can be defined.
Retry counter
The retry counter indicates how often the customer has already input the PIN incorrectly. The retry counter can have the values 3, 2, 1 and 0. Whenever the PIN is entered incorrectly, the retry counter is reduced by 1. If the retry counter does not have a status of 3, 2, 1 or 0, the card has been tampered with.
Field ID
Numbering of controls on an HTML page. Each control on an HTML page must have a different field ID so that it can be addressed.
734 May 2008
Glossary
Firewall
Firewalls are programs which restrict access to HTML pages by way of parameterization.
Focus
Displaying the cursor for input purposes. Only the input field which has the focus can accept a keyboard input.
Font
A set of characters of the same typeface, size and style.
Frame
Arrangement of screen contents in small HTML pages. Each frame can hold an HTML page.
Frameset
HTML page describing the arrangement of the screen in frames.
Framework
Module which incorporates a self-contained function and can thus be regarded as an independent unit. Frameworks can, however, call each other in any sequence.
Host protocol
Description of the interface between the data on the host computer and the data on the terminal device.
Host server
ProConnect software component which implements a connection between the server and a host.
Host variables
Variables that are needed for further processing Steps and are provided by the host. Examples include the customer’s limit or the number of purpose lines that the host can receive.
HTMLGen control
This control of the HTML generator prepares HTML pages with data that is provided on the self-service device at runtime only, such as account details. This control cannot be edited in Microsoft FrontPage.
May 2008 735
Glossary
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\W
ebE
xtF
achw
ort.f
m
Icon
Symbol illustrating a function to make it easier to recognize.
Images
Graphics for controls
Instance
Multiple opening of a program. It is used to distinguish the main screen of the browser from additional browser windows.
ISO protocol
Standard protocol to authorize transactions from self-service devices.
List control
Control which is comparable with Windows list boxes to represent a choice of items. The selection is displayed via an HTML page.
Offline detection
Detection that the connection to the Internet server is no longer ready to transport data.
Offline mode
Switching to a set of HTML files that are installed on the terminal device. These are used to return the card to the customer and display the "Out of service" message.
PCBrowser control
Module to display the Internet Explorer window. This control cannot be edited in Microsoft FrontPage.
PCDialog Framework
Control with a connection to ProTopas frameworks which, in turn, incor-porate the PCView control.
PCView control
Control which incorporates the HTML generator, the AllowList control and the PCBrowser control.
736 May 2008
Glossary
Popup window
A window holding a new HTML page which overlays the previously displayed HTML page.
Property
Parameter for a control that can be edited with Microsoft FrontPage.
Registry
Windows database in which the parameters for all programs, and accord-ingly those of ProTopas/Web-Extensions, are stored.
Remote access
Access to a remote computer via a network.
Return codes
Values that are returned by functions and modules to indicate how the program code was executed.
Service Framework
ProTopas framework which synchronizes access to the Service and Operating program.
Script Framework
ProTopas framework which is only used with ProTopas/Web-Extensions. It is used in other ProTopas environments to parameterize the flow of business modules.
Scripting
Programming on HTML pages. Special programming languages have been developed for this (Visual Basic Script and Java Script).
Step
Business Transaction Framework module, also called a business module.
Style guide
An institution’s guide to presenting its image externally. Self-service devices should also adhere to this layout.
May 2008 737
Glossary
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
Web
-Ext
ens
ion
s\D
ocu\
Boo
k\W
ebE
xtF
achw
ort.f
m
Style sheet
See "".
Softkey
Key next to the screen of a self-service device which is used to control a transaction if no touchscreen has been installed.
SOP switch
Button which starts the Service and Operating program. This button is hidden inside the self-service device.
Suffix
The end of a file name, also called extension, to indicate that the file belongs to a particular program.
Transaction Framework
ProTopas framework which incorporates the business modules and can be addressed by the Contents and ActiveStep controls.
Variable Framework
ProTopas framework which can hold and return data as containers. The variables are addressed via names. Variables can also be deleted in the Variable Framework.
Viewstate variable
A variable which is used to set the state of a control to visible, hidden or disabled.
WebBot
Component that can be integrated into Microsoft FrontPage to edit variables with the ProTopas/Web-Extensions syntax in the FrontPage editor.
CEN/XFS SSP interface
Interface for vendor-independent access to peripheral devices of the self-service system. These include the card reader, Encrypted PIN Pad, special electronics, various printers, cash dispenser and scanner.
738 May 2008
Glossary
May 2008 739
© S
iem
ens
Nix
dor
f In
form
atio
nssy
stem
e A
G 1
995
P
fad:
d:\P
roTo
pas\
Web
-Ext
ensi
ons
\Do
cu\B
ook
\We
bExt
Lite
ratu
r.fm
DocumentationPlease contact your local branch office to order documentation.
[1] Wincor NixdorfProTopas Programming Guide
[2] MicrosoftWindows NT Online Help
[3] Wincor NixdorfProTopas/Web-ExtensionsTutorial ATM HyperLink
740 May 2008
Documentation
May 2008 741
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\W
ebE
xtA
VZ
.fm
FiguresFig. 1: Web-Extensions/ExtraLink . . . . . . . . . . . . . . . . . . 16
Fig. 2: Web-Extensions/ClassicLink . . . . . . . . . . . . . . . . . 17
Fig. 3: Web-Extensions/HyperLink . . . . . . . . . . . . . . . . . . 18
Fig. 4: Contents STD control - Access to hardware modules . . . . 40
Fig. 5: General architecture of ProTopas/Web-Extensions . . . . . 49
Fig. 6: Framework relationship of a ProTopas application . . . . . . 51
Fig. 7: Host Protocol Framework . . . . . . . . . . . . . . . . . . 53
Fig. 8: Flow of control via ProTopas modules . . . . . . . . . . . . 54
Fig. 9: Showing Internet pages from the application . . . . . . . . . 55
Fig. 10: Placement of function keys . . . . . . . . . . . . . . . . . . 65
Fig. 11: Placement of selection buttons . . . . . . . . . . . . . . . . 66
Fig. 12: Placement of menu buttons . . . . . . . . . . . . . . . . . 67
Fig. 13: Placement of the Contents (STD/ATM) control . . . . . . . . 69
Fig. 14: Arrangement of the screen in frames . . . . . . . . . . . . 72
Fig. 15: Controls based on a style sheet . . . . . . . . . . . . . . . 75
Fig. 16: Button control - General 1 page . . . . . . . . . . . . . . . 81
Fig. 17: Menu button to call more information . . . . . . . . . . . . 81
Fig. 18: Help function key . . . . . . . . . . . . . . . . . . . . . . . 82
Fig. 19: Selection button for an amount in DM . . . . . . . . . . . . 82
Fig. 20: Radio buttons to select DEM or EUR . . . . . . . . . . . . 82
Fig. 21: Button control - General 2 page for function keys . . . . . . 85
Fig. 22: Positions of the softkeys . . . . . . . . . . . . . . . . . . . 86
Fig. 23: Button control - General 2 page for selection buttons . . . . 91
Fig. 24: Input of coordinates for the new window . . . . . . . . . . . 93
742 May 2008
Figures
Fig. 25: Button control - General 2 page for menu buttons . . . . . 95
Fig. 26: Button control - General 2 page for radio buttons . . . . . . 97
Fig. 27: Button control - General 3 page . . . . . . . . . . . . . . . 98
Fig. 28: Button control - Caption page . . . . . . . . . . . . . . . . 101
Fig. 29: Standard colour dialog . . . . . . . . . . . . . . . . . . . . 103
Fig. 30: Standard font dialog . . . . . . . . . . . . . . . . . . . . . 104
Fig. 31: Button control - Graphic page . . . . . . . . . . . . . . . . 105
Fig. 32: Button control - Icon page . . . . . . . . . . . . . . . . . . 108
Fig. 33: Edit control - General 1 page . . . . . . . . . . . . . . . . 123
Fig. 34: Edit control - General 2 page . . . . . . . . . . . . . . . . 126
Fig. 35: Edit control - General 3 page . . . . . . . . . . . . . . . . 128
Fig. 36: Edit control - Headline page . . . . . . . . . . . . . . . . . 129
Fig. 37: Edit control - Graphic page . . . . . . . . . . . . . . . . . 130
Fig. 38: Edit control - Input page . . . . . . . . . . . . . . . . . . . 132
Fig. 39: Edit control - Direct format . . . . . . . . . . . . . . . . . . 135
Fig. 40: Edit control - Icon page . . . . . . . . . . . . . . . . . . . 138
Fig. 41: Edit control - Not allowed character page . . . . . . . . . . 139
Fig. 42: Edit control (PIN input) - General 1 page . . . . . . . . . . 140
Fig. 43: Edit control (PIN input) - General 2 page . . . . . . . . . . 141
Fig. 44: Edit control (PIN input) - Headline page . . . . . . . . . . . 142
Fig. 45: Edit control (PIN input) - Graphic page . . . . . . . . . . . 143
Fig. 46: Edit control (PIN input) - Input page . . . . . . . . . . . . . 144
Fig. 47: Edit control (PIN input) - Icon page . . . . . . . . . . . . . 145
Fig. 48: List controls - not active . . . . . . . . . . . . . . . . . . . 168
Fig. 49: List control - ’Paying turn’ - active . . . . . . . . . . . . . . 168
Fig. 50: List control - General 1 page . . . . . . . . . . . . . . . . 169
May 2008 743
Figures
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\W
ebE
xtA
VZ
.fm
Fig. 51: List control - General 2 page . . . . . . . . . . . . . . . . . 173
Fig. 52: Listcontrol - General 3 page . . . . . . . . . . . . . . . . . 175
Fig. 53: List control - Headline page . . . . . . . . . . . . . . . . . 176
Fig. 54: List control - Graphic page . . . . . . . . . . . . . . . . . . 177
Fig. 55: List control - Output page . . . . . . . . . . . . . . . . . . 178
Fig. 56: List control - Icon page . . . . . . . . . . . . . . . . . . . . 180
Fig. 57: EPP control - General page . . . . . . . . . . . . . . . . . 196
Fig. 58: EPP control - Input page . . . . . . . . . . . . . . . . . . . 197
Fig. 59: Contents ATM control - General page . . . . . . . . . . . . 199
Fig. 60: Contents ATM control - ADA configuration panel . . . . . . 202
Fig. 61: Contents ATM control - Functionkeys page . . . . . . . . . 207
Fig. 62: Contents ATM control - Functionkeys page (Help key) . . . . 208
Fig. 63: Contents ATM control - EPP Keys page . . . . . . . . . . . 209
Fig. 64: Contents ATM control - EPP Keys Page (Normal input) . . . 210
Fig. 65: Contents ATM control - EPP Keys Page (Pin input) . . . . . 210
Fig. 66: Contents ATM control - EPP Keys conf. (Active Keys) . . . . 212
Fig. 67: Contents ATM control - EPP Keys conf. (Terminating Keys) . 213
Fig. 68: Contents ATM control - EPP Keys conf. (Keycode change) . 213
Fig. 69: Contents ATM control - Confirm page . . . . . . . . . . . . 215
Fig. 70: Contents STD control - General page . . . . . . . . . . . . 228
Fig. 71: Contents STD control - Timeout page . . . . . . . . . . . . 230
Fig. 72: Timeout confirmation question . . . . . . . . . . . . . . . . 231
Fig. 73: Timeout message . . . . . . . . . . . . . . . . . . . . . . 231
Fig. 74: Contents STD control - Cancel page . . . . . . . . . . . . . 234
Fig. 75: Cancellation confirmation question . . . . . . . . . . . . . . 235
Fig. 76: Cancellation message . . . . . . . . . . . . . . . . . . . . 235
744 May 2008
Figures
Fig. 77: Contents STD control - Function key page (hidden) . . . . 237
Fig. 78: Contents STD control - Function key page (HTML page) . . 238
Fig. 79: Contents STD control - Function key page (Step) . . . . . . 239
Fig. 80: Contents STD control - EPP Keys page . . . . . . . . . . . 240
Fig. 81: Contents STD control - EPP Keys Page (Automatic) . . . . 241
Fig. 82: Contents STD control - EPP Keys Page (Normal input) . . . 242
Fig. 83: Contents STD control - EPP Keys Page (Pin input) . . . . . 243
Fig. 84: Contents STD control - EPP Keys conf. (Active Keys) . . . 244
Fig. 85: Contents STD control - EPP Keys conf. (Terminating Keys) 245
Fig. 86: Contents STD control - EPP Keys conf. (Keycode change) . 245
Fig. 87: Contents STD control - Access to application . . . . . . . . 247
Fig. 88: Contents STD control - Step After page . . . . . . . . . . . 248
Fig. 89: Contents STD control - Step page . . . . . . . . . . . . . . 250
Fig. 90: Contents STD control - Instance return page . . . . . . . . 251
Fig. 91: Unicode - Data flow . . . . . . . . . . . . . . . . . . . . . 276
Fig. 92: Architecture of the Web Graphical Service . . . . . . . . . 280
Fig. 93: HTML generator . . . . . . . . . . . . . . . . . . . . . . . 283
Fig. 94: Inserting a variable by means of WebBot . . . . . . . . . . 285
Fig. 95: AllowList . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Fig. 96: Alphanumeric check . . . . . . . . . . . . . . . . . . . . . 427
Fig. 97: Numeric check . . . . . . . . . . . . . . . . . . . . . . . . 428
Fig. 98: Date check . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Fig. 99: Amount check . . . . . . . . . . . . . . . . . . . . . . . . 431
Fig. 100: Amount check formatting . . . . . . . . . . . . . . . . . . 433
Fig. 101: Positions of the softkeys . . . . . . . . . . . . . . . . . . . 586
Fig. 102: Default settings in the registry . . . . . . . . . . . . . . . . 699
May 2008 745
Figures
© S
iem
ens
Nix
dorf
Info
rmat
ion
ssys
tem
e A
G 1
995
Pfa
d: d
:\P
roTo
pas\
We
b-E
xten
sion
s\D
ocu\
Boo
k\W
ebE
xtA
VZ
.fm
Fig. 103: At startup . . . . . . . . . . . . . . . . . . . . . . . . . . . 711
Fig. 104: Compress; Do it! . . . . . . . . . . . . . . . . . . . . . . . 712
Fig. 105: Example of an error . . . . . . . . . . . . . . . . . . . . . 714
Fig. 106: Error file . . . . . . . . . . . . . . . . . . . . . . . . . . . 715
746 May 2008
Figures
May 2008 747
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Index
1-to-1 marketing 1
Aabout
SNI_CANCELSURFING 451Access violations 452Account information transaction 53Active DataDict control 489
Reading a variable 490Setting a variable 490
Active VarFW control 307, 488Reading a long variable 489Reading a string variable 489Setting a long variable 489Setting a string variable 489
ActiveStep control 40, 268ActiveX control 634AfterTimeout 43AllowList 33, 292
DOMAIN 294GENERATE 294, 449INSERTION 295OBJECT 294OPTIONAL 4, 295, 301, 302PORT 294SUFFIX 294TIMER 295, 449
AmountCurrency exponent 432
Anchor 32Animation 53, 62, 70
Dynamic HTML 63GIF 63Loop 62
ApplicationAccess 247Design 59Flow of control 54Home page 295Response times 79
Application Framework 52Architecture 49ATM_ABS_NAV 35ATM_TOP_NAV 36Audio 63Authorization 81
BBackground 61Basic colours 102, 134Beep 199, 228
At end of input 128At input of not allowed
character 139At start of page 199, 228At start of page/timeout 199, 228At timeout 199, 228Default 200, 229No beep 199, 228
Bit maps 62Browser instance 93, 208, 238
Closing 93, 271Coordinates 93
Browser windowClosing 75
Business moduleCancellation 45Return code 83
ButtonCaption 41Confirmation 127Field ID 86Hiding 46Parameter 413, 423Round 80Showing 46State 84, 107Toggle 83Toggle lock 107, 207, 237Travel 64Type 81
748 May 2008
Index
Button control 54, 64, 80, 651Caption 101Caption page 101General 1 page 81General 2 page
Function keys 85Menu buttons 94Radio buttons 97Selection buttons 91
Graphic page 105Icon page 107Scripting interfaces 465
CCancel situations 635Cancellation
Cancel question 234Cancellation message 235, 272Confirmation question 272Coordinates 236Default 235Function key 235HTML page 236
Cancellation window 234Caption 122, 199
Add layer button 101Colour for active button 102Colour for inactive button 103Default font size 105Font size 104Input field for colour 102Multiple lines 101, 178New lines 101Position 103Remove layer button 101Shift 84Shifting 64Text layer Listbox 101X pos 103
Left, Centered, Right 103Y pos 103
Centered 104Card reader 50Cascaded style sheets 73
CCDialogFW.GetInputString 335Cell
Aligning elements 73Minimum size 73
CEN/XFS 49, 50Character to be replaced 421Character width 63Check Framework 342, 412, 435
Check() 122, 125, 133, 413, 424, 443
Dialog() 412, 423, 439Format() 282, 412, 423, 441LookForLottery() 445Return codes 424, 437Trace and error logging 447Windows dialog 423
Check parameters 122Check routines 412
Message 126Numbers 412
Chip 96Click() 32CLOSE.HTM 29, 43, 272Close-Popup-Window 29, 43Colour depth 60, 61Colours
Active buttonDefault 102
Colour changes 61Colour depth 61Green 60Red 60Selective use 60Striking 60Yellow 60
Components 49Business 50Main components 52ProTopas 50Standard 50Technical 50
ConfigurationCaption of menu button 594Error Counter variables 589
May 2008 749
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Frameworkname of the actual Web Dialog 595
Identification of menu button 594Input field 588Link of menu button 594Maximum number of characters
variables 590Number of entered
characters 592Repository Manager 585Restart Manager 583Selected item of PCList
Control 591Softkeys 586Status variable 589Termination key code 592Unformatted input field 588Value of button 592, 593VAR_LANGUAGE_S 590VAR_OFFLINE_WEBNAME_S
590VAR_WEBNAME_S 590Variable at scanner errors 591Variable for current Internet page
name 595Variable
VAR_OFFLINE_HTML_NAME_S 591
Variables 588Viewstate variable 589Web path 590
Confirmation button 127Contents (STD/ATM) control 69, 419
Field sequence control 69Positioning 69Tasks 69
Contents ATM control 198, 419, 635Administrative information 198Confirm key list box 215Confirm page 215EPP Keys page 208Functionkeys page 206General page 199Scripting interfaces 456
Contents STD control 226Administrative information 227Cancel page 234Confirm key list box 229EPP Keys page 239Function key page 236General page 228Instance return page 251Step After page 246Step page 250Timeout page 230
Context frame 65Continue without Confirm key 215,
229, 417Continuous text 71, 73Contrast 59Controls 10, 18, 77
Active DataDict control 490Active VarFW control 488ActiveStep control 54AllowList control 280Appearance 64Button control 54Defaults 79Edit control 54EPP control 54Graphics resolution 78Hiding by a Viewstate
variable 274HTMLGen control 280Images for 61List control 54PCBrowser control 280PCView control 281Round 62Standard 77States 79Synchronization 54
Conversion of umlauts 133Coordinates
Height 94Width 94X pos 94Y pos 94
750 May 2008
Index
Corporate design 59Correction 67Correction message 68, 424, 425
Structure of page 29, 43Correction pages 271CSC-W32 50, 56, 57
Drivers 50Currency exponent 432Cursor 67, 131, 418
Hiding 305Cursor position at the end 128Customer database 2Customer identification 67Customer projects 50
DDare
TO 429Data Dictionary 32, 490Data Dictionary Control 32Data Dictionary Framework 52, 342,
489Database query 170Date
Days until earliest date 429Days until latest date 429FROM 429Limit 429, 430Long date (language-
specific) 430Short date (language-
specific) 430Decimal places 433Design workstation 56Desktop resolution 61Device faults 50Device types
ProCash 55ProConsult 55ProInfo 55ProPrint 55
DialogDynamic 30
Dialog Framework 281, 322, 342
CCDialogFW.CancelDialog 332CCDialogFW.ChangeLanguage
333CCDialogFW.Close 327CCDialogFW.DoDialog 329CCDialogFW.DoDialogAsync 33
1CCDialogFW.GetbStatus 328CCDialogFW.GetInputLength 33
6CCDialogFW.GetInputString 335CCDialogFW.GetTerminateChar
337CCDialogFW.InitParms 334CCDialogFW.Open 326PCDialogFW.ChangeLanguage
346, 350, 351, 352PCDialogFW.Format 346PCDialogFW.GetFWName 350,
351, 352Dialog names 16Direct format
Character transformation 136Lowercase 136None 136Uppercase 136
Clear all 137Permitted characters 137
All 137Alpha characters 137Numeric characters 137
Pre-allocation 136Currency symbol 136Date separator 136Decimal symbol 136Digit grouping symbol 136None 136Time separator 136
Special 137Amount Entry DDC 137
Visible 136Always 136At input 136
Writeable 135
May 2008 751
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
No 136Yes 136
Directory_vti_bot 286bots 287Language-specific 305SNI_PC_VARIABLE 286, 287Temporary 282
Drivers 50DTA character set 427Dynamic HTML 63, 455
EEase of use 60Edit control 64, 122, 411, 423, 657
General 1 page 122General 2 page 126General 3 page 128Graphic page 129Headline page 129Icon page 138Input page 131Not allowed character page 138Property
CheckDependencies 423CheckParameter 423
Scripting interfaces 468Edit control (PIN input)
General 1 page 139General 2 page 140General 3 page 141Graphic page 142Headline page 141Icon page 144Input page 143Not allowed character page 145
Elements of navigation 64Elements of the user interface 10Encrypted PIN Pad 50, 56EPP 2, 50EPP control 195
Caption 196Colour 196Default 196
Font 196, 197Font colour 197Image 196Input orientation 197Input page 197Input position 197Position 196
EPP Framework 342EPP keypad 2EPP Keys
Automatic 209, 240Continue with HTML page 243EPP error HTML page 241EPP Keys configuration 242No input 209, 240Normal input 209, 240Pin input 209, 240
EPP Keys configuration 211, 244*-Key 246,-Key 246Active Keys 244Keycode change 245Replacement Sign 246Terminating Keys 244
Error and diagnostics concept 50External Internet pages
Configuration 449
FField 63, 68Field ID
Range 86Field sequence control 198, 226,
416Field size 64File
Allowlist 280Multimedia 63SNI_PC_Variable.dll 286, 287SNI_PC_Variable.inf 286, 287Style sheet 73Suffix 294
FILE accesses 293Firewall 293
752 May 2008
Index
FLAG_NAVINACTIVEPAGE 302Focus 75, 124, 170, 416Font 63Font formatting 128, 174, 200, 229Font size 63, 132Format
AVI 63GIF 78JPEG 78MOV 63WAV 63
Formatting 282Amount 288Changing language-specific 308Date 288Language-specific 281, 308Settings 288Time 288
Formatting settings 288Frame 71, 82
Function key bars 71Nesting 72Size 71
Frame technique 71Frameset 69, 71, 295
Changing 306, 307Changing at runtime 72Overlaying the entire screen 307Screen layout 72
FrameworkApplication Framework 52Check Framework 411Data Dictionary Framework 52Dialog Framework 281Host Protocol Framework 52,
281Low-level frameworks 52PCDialog framework 281Script Framework 55Service Framework 52Transaction Framework 52Variable Framework 455
Free-format mask 284Full-screen mode 279
Function key 46, 64, 82, 198, 227, 450Back 65Cancel 65Caption 72Confirm 65Confirmation 229Coordinates 208, 238Correct 65Disabled 207, 237Fixed meaning 87Forward 65Help 65, 127Help HTML page 208Hidden 207, 237HTML page 238ID 86, 88Pressed 207, 237Print 65State selection 207Step after button 238Up 207, 237Value 85, 87
CANCEL 89CONFIRM 88CONFIRMALL 88CORRECT 88HELP 89SURFING_BACK 89SURFING_CANCEL 89, 451SURFING_DOWN 89SURFING_FORWARD 89SURFING_LEFT 90SURFING_RIGHT 90SURFING_UP 89
Function key bar 71Function key page 237Function keys
Positioning 65Functionkeys page 207
GGeneral menu
Value 42
May 2008 753
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Graphical Service 279, 597Dialog 27Starting 303
Graphics program 61Group of radio buttons 97, 98, 168
HHardware
Access 40, 247Alphanumeric keyboard 56Encrypted PIN Pad 56Network card 56Pentium PC 56Softkeys 56Sound card 56Touchscreen 56
Header 69, 199, 228Assigning text 41
Help 59Context-sensitive 28, 59, 127
Help pages 271HelpTimeout 640High Level Graphical Service 583High Level GS CCDialog 16Home page 41, 303Host interface
Authorization request 43Command 43
Host Protocol Framework 52, 269HTML editors 73HTML generator 32, 53, 101, 280,
281, 294, 430, 623HTML page
Access restriction 292Address 282Ascertaining the name 47Body 282External to the product 449Overlay 75Temporary 280
HTTP accesses 293
IIcon 59, 70
For the active button 108For the active page
Input field 108For the disabled button 108
Input field 109On button 70Pixel X position 109
Centered 109Pixel Y position 109
Centered 109Scripting 70Setting 70Shift 84
IDObject ID 73
Identification 41, 67Default 96Mandatory with card and PIN 96With card 96With card and PIN 96With chipcard 96Without 96
ImageButton disabled 107
Default 107Input field 107
Button downDefault 106Input field 106
Button pressed 107Default 107Input field 107
Button up 105, 106Default 106Input field 106
Display at editing workstation 106
For input fields 67Formats 61Language-specific 305Pixel 62Size 60
Image element
754 May 2008
Index
Positioning in the Context frame 73
Image format 61Animated GIF 62BMP 61GIF 61, 62JPEG 61Windows bit map 61
Image pathRelative 106
In a new window 271In new window 75, 93, 126, 127,
172, 208, 232, 236, 238, 249, 425Increment 428Information service 42
General menu 42Levels 42
Initialization 52, 303Input
Confirmation 417List box
Error 126Input attempts 426
Initialization 426Variable name 426
Input check 68, 88, 411Alphanumeric 427
Minimum number of characters 427
Amount 431Check against limit 432Currency exponent 433Decimal places 433Decimal separator 434Group separator 434Grouping 434Maximum (unformatted) 432Minimum (unformatted) 432Number of input attempts 433Other formats 433Output formats acc. to HTML
generator settings 433Date 429
Check against limit 430
Compulsory input 430Date format 430Days until earliest date 429Days until latest date 430Default value 429Period in the Past 430
Numeric 428Increment 428Maximum 428Minimum 428
Input check dialog 427Input correction 418Input field 28, 43, 67, 282
Beep at end of input 128Checking 125Confirmation 127Cursor position at the end 128Default value 412Dependent 419, 425DF (Direct Format) 134Don’t display preliminary
input 133Error list box 423Field name 124Font 137
Default 137Font colour for active 134
Default 134Font colour for inactive 134Font colour for inactive (disabled)
Default 134Function 123HTML page for Help 127
Coordinates 127Initialization 29, 123Label 67Maximum characters 128Message
Coordinates 126HTML page 126
Operating hint 128, 174Parameter button 125Range 68Sequence number 124
May 2008 755
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Shift in pixels 127Default 127
Softkey 124State 127, 131
Hidden 127Up 127
Input field disabled 131Default 131
Input field pressed 131Default 131
Input field up 130Default 130
Input focus 124, 170, 416, 426Input length
Maximum 428Input limits 132
Maximum characters 132Maximum lines 133
Input orientation 132Centered 132Left-justified 132Right-justified 132
Input range 133Default 133Height 133Width 133X position 133Y position 133
Input sequence 68Input status variable 415, 425
Default value 424Initialization value 421Notation 415Status 419Unformatted 424
Input timeout 124Input variable 125, 413
Formatted 413, 424Initialization 414Notation 413Unformatted 413
Installation 579Instance 271Instance return
Add 251New 251Remove 251Return code 251Target FRAME 252
_new 252_parent 252_self 252_top 252
URL 252Interactive Internet applications 15Internet 295Internet browser 279
Components 279Intervention in navigation 279
Internet ExplorerPlugin 63
Internet pages 53Displaying 449Other products 20
Internet presence 60Internet solution 19Internet technology 60Internet user interface 10Intranet 295Intranet pages 89Intranet server 53, 280
KKey
Backspace 418Confirmation 416, 422Correct 418Cursor down 416Cursor up 416Enter 127, 417Return 422Tab 416Tab+Shift 416
Key disk 580
LLanguage
Changing 72, 306
756 May 2008
Index
Creating a new 308Standard language 305
Language selection 281, 288, 305, 306
Layout 307Line problem 53, 300Link
Changing at runtime 47List box 54, 68
Items 68List control 64, 167, 665
Coordinates 172Field name 170Function 169General 1 page 169General 2 page 173General 3 page 174General page 196Graphic page 177Headline page 176HTML page 170Icon page 180Operating hint 174Output 178
Centered 179Colour active 178Colour inactive 178Default 179Font 179Left-justified 179New line 178Right-justified 179X position 178Y position 179
Output page 178Output range 171
Syntax 171Scripting interfaces 471Sequence number 170Shift in pixels 174
Default 174State 173
Disabled 173Hidden 173
Up 173Logo 70, 72
MMacro 32Maintenance 50Menu 40, 81
Assigning a header 42Disabling contents 42General menu 42Level 42Maximum range 43Pages 43Step 41Variable 42
Menu button 20, 40, 46, 67, 81Disabling 43Enabling 43Identification 96Positioning 67Value 42
Microsoft ActiveX technology 77Microsoft Browser control 279Microsoft FrontPage 10, 57, 71, 106,
283, 286, 287Personal Web Server 286
Microsoft GIF Animator 62Microsoft Internet Explorer 53, 56,
279, 515Multimedia 63
Sound 63Video 63
Multimedia user interface 10
NNavigation
Elements 64Navigation button bar 33, 449, 450
No display 450New line 128Normal input 417, 418Not allowed character 139
May 2008 757
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
OOffline state
Recognition 281Operating
Reliability 59Operating hint 59, 69, 72, 122, 128,
174, 200, 229, 417operating hint 67Overlay
Context-sensitive Help 75Correction messages 75Position and size 75
PParameter
SchemeAudioResponse 674Icon 674IconAlignX 673IconAlignY 674IconDisabled 674IconXCentered 673IconYCentered 673ImageDisabled 673ImageDown 673ImagePressed 673ImageUp 673InputAlignX 678InputAlignY 678InputAreaDefault 678InputBold 680InputColour 680InputColourDisabled 680InputFont 679InputFontCodePage 679InputFontDefault 679InputHeight 679InputItalic 680InputSize 679InputStrikeout 680InputUnderline 680InputWidth 679PressOffset 674TextLayerActiveColourDefault
677TextLayerCount 675TextLayerFont 676TextLayerFontCodePage 677TextLayerFontDefault 676TextLayerInactiveColourDefaul
t 678TextLayerPosXYDefault 675TextLayerTextAlignX 676TextLayerTextAlignXTyp 676TextLayerTextAlignY 676TextLayerTextBold 677TextLayerTextColour 678TextLayerTextColourDisabled
678TextLayerTextItalic 677TextLayerTextSize 677TextLayerTextStrikeout 677TextLayerTextUnderline 677TextLayerYCentered 676
ParametersAccessViolationURL 452, 607ActivePageURL 621ADA 599ADAActionOnStart 599ADAEchoButton 633ADAEchoEdit 633ADAEchoEPP 634ADALanguage 630ADAMacroActiveKeys 634ADAMacroEchoKeys 634ADATextEditContent 633ADATextEditHint 633ADATextPageContent 632ADATextPageHint 631ADATextPageKeys 632ADATextPageMenu 631ADATimeoutExt 599AfterTimeoutHref 232, 638AfterTimeoutWindow 232, 638AllowList 614AllowOverride 624AnimationTimer 79, 652
758 May 2008
Index
AT_EXCEPTION_PAUSE_BETWEEN_JOBS 684
AT_KILL_APP_RESUME 685AT_KILL_APP_STOP 684AT_KILL_GS_OPEN 685AT_KILL_PAUSE_BETWEEN_JO
BS 684AudioResonse 651, 657, 665AutomaticEPPConfigForAllButton
s 650BeepDefault 641Beepdefault 200, 229BringWindowToTop 300, 622ButtonInstallation 652CancelHref 236, 635CancelQuestionHref 236, 636CancelQuestionWindow 236,
636CancelWindow 236, 635CancelWindowHeigh 637CancelWindowLeft 236, 636CancelWindowTop 236, 636CancelWindowWidth 236, 637CheckMem 605CheckMEMmax 606CheckWND 605CheckWNDmax 605ConfigPageURL 293, 615CurrCurrencySymbol 625CurrDecimalSep 625CurrGrouping 625CurrGroupSep 625CurrLeadingZero 625CurrNegativeOrder 626CurrNumDigits 626CurrPositiveOrder 626CurrServerValueOffset 627CursorEnable 305, 604, 615DefaultLanguage 619DeleteInputFieldsWithEmptyString
650DoDialogTimer 600DoDialogTimerPageTimerExtend
600
DontWaitForPCContentsOnCancelDialog 621
DontWaitForPCContentsOnOpen621
EmptyPageURL 620EPPRTC 599ErrorURL 296, 449, 619FrontPageImagePath 106, 635Height 313, 602HoldPressedState 83, 656HRef 313, 318, 358, 602, 604HttpsBlankPage 649Identification 96, 656ImageDisabled 107, 131, 653,
658, 666ImageDown 106, 652ImagePressed 107, 131, 653,
658, 666ImageUp 106, 130, 652, 658,
665InputAlignX 133, 179, 662, 670InputAlignY 133, 179, 662, 670InputBold 137, 663, 671InputColour 134, 662, 669InputColourDisabled 134, 662,
670InputFont 137, 661, 669InputHeight 133, 663InputItalic 137, 663, 671InputSize 137, 662, 669InputStrikeout 137, 664, 671InputTimeoutHalf 664InputUnderline 137, 663, 671InputWidth 133, 663InputXCentred 179, 670InputYCentred 179, 670InternetModeCursorEnable 615JOB_AFTER_EXCEPTION 683JOB_AFTER_KILL 682JOB_BEFORE_EXCEPTION 68
3JOB_BEFORE_KILL 682JOB_CHECK 683KillHardWAIT 606
May 2008 759
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Language 623Left 602LOGBufferSize 320, 598LOGFilePath 320, 598LOGFileSize 320, 598LOGOn 597LongDateFormat 627MarketingAllowFocus 606MAX_MEMORY_USE 681MAX_MEMORY_USE_MINUTES
681MAX_WEBEXTENSION_MEMOR
Y_GROWTH 689MAXonStart 603MaxOnStart 603MessageDLGHeight 451, 612MessageDLGWidth 451, 612MINonEnd 603MInOnEnd 603Multilang 624NCREppInit 649NewImmediateTimeout 650NumDecimalSep 627NumGrouping 627NumGroupSep 628NumLeadingZero 628NumNegativeOrder 628NumNumDigets 628OfflineFallback 622OfflineMonitorTimer 622OfflineURL 300, 619POPUP_KILLER 688POPUP_KILLER_FILE_UNICOD
E 688POPUP_KILLER_TIME_SLEEP
689Pos 313, 601PressOffset 84, 127, 174, 653,
659, 666Programs 583RESTART_AT 688RootPath 300, 620RootPathOffline 300, 620ScriptAtEnd 318, 605
ScriptAtStart 318, 604ScriptLanguage 318, 604SetInputFocusNext 649ShiftInPixelsMode 656, 664, 672ShortDateFormat 629StandardTimeout 640StartPage 89, 303, 305, 449,
451, 615SurfingBrowser 607SurfingBrowserPos 450, 608SurfingBrowserWidth 450, 608SurfingJOBSCheck 451, 614SurfingJOBSEnd 451, 614SurfingJOBSOn 451, 613SurfingJOBSPause 451, 614SurfingJOBSStart 451, 613SurfingScrollDown 612SurfingScrollLeft 613SurfingScrollRight 613SurfingScrollUp 612SurfingURL 450, 607TabAsConfirm 616TempFileNumber 619TempPath 282, 294, 618Text 451, 612TextAlignX 104, 609, 654, 660,
667TextAlignY 104, 610, 654, 660,
668TextBold 105, 610, 655, 661, 668TextCenterX 104, 609, 654, 660,
667TextCenterY 104, 610, 655, 660,
668TextColour 102, 609, 653, 659,
667TextColourDisabled 103, 654,
659, 667TextFont 105, 609, 653, 659, 666TextFontCharSet 611TextItalic 105, 610, 655, 661, 668TextSize 105, 609, 653, 659, 666TextStrikeout 105, 611, 656, 661,
669
760 May 2008
Index
TextUnderline 105, 611, 655, 661, 669
TIME_MAX_WATCH_THREAD686
TIME_SLEEP_WATCH 686TIME_TRYAGAIN_INIT 687TIME_TRYAGAIN_TIMER 687TIME_TRYAGAIN_WM 687TIME_WAITFOR_RESTART_EX
CEPTION 685TIME_WAITFOR_RESTART_ME
M 685TIME_WAITFOR_RESTART_TH
READS 686TIME_WAITFOR_TIMER 688TIME_WAITFOR_WM 687TimeFormat 629Timeout Href 637Timeout values
CorrectTimeout 640EndlessTimeout 641HelpTimeout 640ImmediateTimeout 641InputTimeout 640MessageTimeout 640StandardTimeout 640
TimeoutConnect 623TimeoutDataReceiveRequest 30
0, 623TimeoutDataSendRequest 623TimeoutHref 232TimeoutQuestionHref 232, 638TimeoutQuestionWindow 232,
638TimeoutWindow 232, 637TimeoutWindowHeight 232, 639TimeoutWindowLeft 232, 639TimeoutWindowTop 232, 639TimeoutWindowWidth 233, 639Top 358, 602UsedLcid 629UseLocales 288, 308UseLocals 630UseUTF8 648
Value0 642Value1 642Value2 642Value3 643Value4 643Value5 643Value6 643Value7 644Value8 644Value9 644ValueCancel 646ValueConfirm 647ValueCorrect 647ValueDecPoint 648ValueF1 644ValueF2 645ValueF3 645ValueF4 645ValueF5 645ValueF6 646ValueF7 646ValueF8 646ValueHelp 647ValuePrint 647ValueReserved 648VirtualKeyboardOn 598WEBEXT_VERSION 682WebExtKeyScripting 453, 617WebExtNoHistory 617WebExtOfflineCheck 616WebExtPrintCheck 616WebExtTabing 453, 616Width 313, 602WindowHeight 601WindowLeft 600WindowPlacement 603, 604WindowTop 600WindowWidth 601WorkaroundNoShell 617WorkaroundWhitePopUp 618
PC_GeneratedAnchor 282PCDialog Framework 342PCEvt 25Pentium PC 56
May 2008 761
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Pictograms 12References 13Registry entries 13Tips and tricks 13Warnings and hints 12Web-Extensions/ClassicLink 13,
20Web-Extensions/ExtraLink 13,
20Web-Extensions/HyperLink 13,
20PIN 54, 96PIN input 195PIN input options
Continue after Timeout 211, 244Continue without Confirm-
Key 211, 243PIN 4-digits 211, 243PIN 6-digits 211, 243User defined 211, 243
Max. 211, 243Min. 211, 243
PIN pad 195Pixel 62Plugin 63Popup dialog 169Popup window 43, 271Portable Network Graphic (png)
format 78Positioning
Contents(STD/ATM) control 69Exact 71, 73Function keys 65Header 69Logo 70Menu buttons 67Operating hint 69Selection buttons 66
Prefixhttp:// 44
Preinstalled softwareProTopas/Kit 581ProTopas/Manager 581SoundCard driver 581
Windows/NT 4.0 580Printer 50ProDevice 50Product information 15, 17Product versions 15
Areas of use 19Program
Runtime 63Property
CheckDependencies 425CheckParameter 424, 425
ProTopas 49, 50Application 52Basic frameworks 49ProCash/Topas 49ProConsult/Topas 49ProPrint/Topas 49ProTopas/HTML-Dialog 56, 57ProTopas/KIT 57ProTopas/Manager 56ProTopas/Web-Extensions 56,
57ProTopas High Level GS 19
RRadio button 82
Group 82, 97, 168Registry
CheckRoutine 125, 411Function-Key 85Language 288Radiobutton 97, 98Selection 91Steps 248Transaction 42, 95, 123, 125,
169, 411Transaction/(function) 124, 170Values 201, 233Variable 125, 171, 411
Relative branch 304Relative path 106, 108, 130Requirements
Hardware 55Software 56
762 May 2008
Index
Resolution 60Restart Manager 20Return code 40, 54, 247
Range 249
SSales 2Scanner 50Screen interface
Arrangement 71Screen resolution 60, 71Script 24, 307, 455
Loading external pages 24OnTimeout 272
Script Framework 15, 55Selection button 29, 43, 46, 66, 82
HTML page 92Input field for HTML page 92Step after button 92Values 66
Self-service applicationLayout 68
Sequence number 68, 416Server 294Server/host 52Service and Operating 52, 55Service Framework 52Service Pack 5 56Shift in pixels 64, 84
Default 84Softkey 2, 86, 124, 170, 250
Position 86Value 27
Softkeys and function keys allowed 250
SOP 55Sound 53Sound card 56Special characters 420, 428Special electronics 50Standard colour dialog 102, 134Standard font dialog 104Standard graphics program 57Standard Windows elements 60
StatesButton disabled 84Button hidden 84Button pressed 84Button up 84Disabled 64, 79Down 64, 79Hidden 79Pressed 64, 79Up 64, 79
Status messages 72Status variable 67Step 44, 47
Self defined event 45Step After 248
Coordinates 249HTML page 249None 248Parameter 248Returnvalue 249
Stock exchange rates 292Style guide 60Style sheet 71, 73
Content of file 74Reference 73
SubHeader 128, 174, 200, 229Suffix 294Surfing the Internet freely 292Switching to offline state 300Syntax
Special 282System requirements 49
TTable 73TCP/IP 56Template pages 53Text font 63
Bold 63Non-proportional 63Proportional 63Underlined 63
Third-party manufacturer 50Thousands grouping 433
May 2008 763
Index
© S
iem
ens
Nix
dorf
Info
rma
tions
syst
em
e A
G 1
995
Pfa
d: d
:\Pro
Topa
s\W
eb-
Ext
ensi
ons\
Doc
u\B
ook\
Web
Ext
SIX
.fm
Ticket sales 2Timeout 200
After timeout 230, 232, 273Confirmation question 273Coordinates 232Default 232HTML page 230, 232Timeout combo box 233Timeout message 230, 231, 273Timeout question 230
Timeout period 200, 233Timeout situations 637Timer 200, 233, 295
Custom settings 200, 233Monitoring 198, 226, 449Ready-made 200, 233
Toggle lockNo 83Yes 83, 84
Touchscreen 2, 50, 68, 451Trackball 450Traditional interfaces 1Transaction Framework 20, 52
Access 40Cancel() 44Events 44
Transaction FW class 52Restart 272
Travel services 2Typographical conventions 12
UUser interface 59
Elements 10Internet 10Multimedia 10Standard elements 61
User interface elements 64
VVariable 280, 281
(Name-of-input-variable)_MAXCHARS_L 133
Default value 171, 285Inserting in a control 288Reading 414Setting 414VAR_DLG_INPUT_RESULT_S
83, 86, 272, 273VAR_FUNCTION_STARTPAGE_
S 41VAR_HEADLINE_S 41, 42VAR_IDENTIFICATION_REQUES
T_L 41VAR_LANGUAGE_S 590VAR_LIMIT_DATE_FROM_S 43
0VAR_LIMIT_DATE_TO_S 430VAR_LIMIT_S 432VAR_MY_HTML_NAME_S 48VAR_OFFLINE_WEBNAME_S
590VAR_PCLIST_VALUE_S 171VAR_SCANNER_ERROR_L 42
1, 422VAR_WEBNAME_S 307, 590Viewstate variable 274
Variable Framework 342, 488Video 53, 63Videoconferencing 53Viewstate variable 32, 43, 274
States 275
WWeb browser 1Web Graphical Service 11, 15, 53,
198, 227Web server 286WebBot 284
Default value of PC variable 171Default value of the variable 285Formatting of PC variable 171Formatting of the variable 284Hiding contents 286Installation 286, 287Name of PC variable 171Name of the variable 284
764 May 2008
Index
PREVIEW 286Preview value of the variable 285Showing contents 286SNI_PC_VARIABLE 284s-value 286
Welcome loop 125Wildcard 280, 449Windows bitmap format 78Windows control
Button 80Check box 80Radio button 80
Windows NT 49, 56Windows Registry 79WN_TFN_FLAT_SELF 274WN_TFN_FLAT_TOP 274WN_TFN_PARENT 93WN_TFN_TOP 93WXmarketingmode 302WYSIWYG 305
Comments on ProTopas/Web-Extensions V 1.2/00Programming Guide
CommentsSuggestionsCorrections
✁
Submitted by
Wincor Nixdorf International GmbHUser Documentation BD PSD 633106 PaderbornGermany
Fax: +49 5251 693 3792
Comments on ProTopas/Web-Extensions V 1.2/00Programming Guide
CommentsSuggestionsCorrections
✁
Submitted by
Wincor Nixdorf International GmbHUser Documentation BD PSD 633106 PaderbornGermany
Fax: +49 5251 693 3792
send me information/course programs on the following topics
Wincor Nixdorf International GmbHTraining BD PSD 633106 PaderbornGermany
Fax: +49 5251 693 3792
The Wincor Nixdorf Application Software department offers training for a wide range of Banking Software products. Write to us for information and course programs.
CoursesConsulting
Self-tuition media
Submitted by
✁
send me information/course programs on the following topics
Wincor Nixdorf International GmbHTraining BD PSD 633106 PaderbornGermany
Fax: +49 5251 693 3792
The Wincor Nixdorf Application Software department offers training for a wide range of Banking Software products. Write to us for information and course programs.
CoursesConsulting
Self-tuition media
Submitted by
✁