HP NonStop Pathway/iTS Web Client Programming Manual

Size: px
Start display at page:

Download "HP NonStop Pathway/iTS Web Client Programming Manual"

Transcription

1 HP NonStop Pathway/iTS Web Client Programming Manual Abstract This manual describes how to convert SCREEN COBOL requesters to web clients and explains how to build and deploy those clients. It also provides the information Java developers and web designers need to modify and enhance the Java and HTML portions of the converted clients. Product Version Pathway/iTS 1.1 Supported Release Version Updates (RVUs) This publication supports J06.03 and all subsequent J-series RVUs and H06.03 and all subsequent H-series RVUs, until otherwise indicated by its replacement publications. Part Number Published May 2008

2 Document History Part Number Product Version Published Pathway/iTS 1.0 October Pathway/iTS 1.0 Update June Pathway/iTS 1.1 May Pathway/iTS 1.1 May 2008

3 Legal Notices Copyright 2008 Hewlett-Packard Development Company L.P. Confidential computer software. Valid license from HP required for possession, use or copying. Consistent with FAR and , Commercial Computer Software, Computer Software Documentation, and Technical Data for Commercial Items are licensed to the U.S. Government under vendor's standard commercial license. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein. Export of the information contained in this publication may require authorization from the U.S. Department of Commerce. Microsoft, Windows, and Windows NT are U.S. registered trademarks of Microsoft Corporation. Intel, Itanium, Pentium, and Celeron are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Java is a U.S. trademark of Sun Microsystems, Inc. Motif, OSF/1, UNIX, X/Open, and the "X" device are registered trademarks and IT DialTone and The Open Group are trademarks of The Open Group in the U.S. and other countries. Open Software Foundation, OSF, the OSF logo, OSF/1, OSF/Motif, and Motif are trademarks of the Open Software Foundation, Inc. OSF MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THE OSF MATERIAL PROVIDED HEREIN, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. OSF shall not be liable for errors contained herein or for incidental consequential damages in connection with the furnishing, performance, or use of this material. 1990, 1991, 1992, 1993 Open Software Foundation, Inc. This documentation and the software to which it relates are derived in part from materials supplied by the following: 1987, 1988, 1989 Carnegie-Mellon University. 1989, 1990, 1991 Digital Equipment Corporation. 1985, 1988, 1989, 1990 Encore Computer Corporation Free Software Foundation, Inc. 1987, 1988, 1989, 1990, 1991 Hewlett-Packard Company. 1985, 1987, 1988, 1989, 1990, 1991, 1992 International Business Machines Corporation. 1988, 1989 Massachusetts Institute of Technology. 1988, 1989, 1990 Mentat Inc Microsoft Corporation. 1987, 1988, 1989, 1990, 1991, 1992 SecureWare, Inc. 1990, 1991 Siemens Nixdorf Informationssysteme AG. 1986, 1989, 1996, 1997 Sun Microsystems, Inc. 1989, 1990, 1991 Transarc Corporation. This software and documentation are based in part on the Fourth Berkeley Software Distribution under license from The Regents of the University of California. OSF acknowledges the following individuals and institutions for their role in its development: Kenneth C.R.C. Arnold, Gregory S. Couch, Conrad C. Huang, Ed James, Symmetric Computer Systems, Robert Elz. 1980, 1981, 1982, 1983, 1985, 1986, 1987, 1988, 1989 Regents of the University of California. Printed in the US

4

5 HP NonStop Pathway/iTS Web Client Programming Manual Index Examples Figures Tables Legal Notices What s New in This Manual vii Manual Information vii New and Changed Information About This Manual xi Who Should Read This Manual Related Documentation xi Notation Conventions xiii vii xi 1. Introduction to Pathway/iTS Web Clients Development Process for Web Clients 1-2 Run-Time Environment for Web Clients 1-3 Java Import Package 1-3 Router Process 1-4 Terminal Control Process (TCP) 1-4 Gateway Threads 1-5 Pathway/iTS How to Compile, Build, and Maintain a Pathway/iTS Web Client 1. Prepare the SCREEN COBOL Object File Create a Configuration File Run the Converter Modify Java or SCREEN COBOL Code as Needed Run PROFDBM to Set Up the User Profile Database Build the Converted Client 2-5 Set Up the Build Environment in an OSS Environment 2-5 Set Up the Build Environment in a Windows Environment 2-6 Build (Compile) the Application in an OSS Environment 2-8 Build (Compile) the Application in a Windows Environment 2-9 Hewlett-Packard Company i

6 Contents 2. How to Compile, Build, and Maintain a Pathway/iTS Web Client (continued) 2. How to Compile, Build, and Maintain a Pathway/iTS Web Client (continued) 7. Deploy the Web Client 2-9 Deploy the Web Client on an OSS Environment 2-9 Deploy the Web Client on a Windows Environment Customize the Screens 2-12 Copy the HTML Files to be Customized 2-12 Modify the HTML Files 2-13 Redeploy Customized HTML Files Specify the Port Number of the Router Process Configure Pathway Servers for User Profiles and User Conversion Routines Tune the Application for Performance by Changing the Session-Length Parameter Maintain the Client 2-16 Modify SCREEN COBOL Source Code 2-16 Modify Java Source Code Only Logon Security and User Profiles Logon Security 3-1 User Profiles 3-1 Actions of the Web Client 3-2 Contents of the User Profile Database 3-2 User Profile Options in the Control File 3-3 Use the PROFDBM Utility 3-5 Configure the User Profile Server Class User-Written User Conversion Procedures for Web Clients Build Your User Conversion Library 4-2 Configure the User Conversion Server Class SCREEN COBOL-to-Web Conversion Mappings Components of the Web Client 5-2 Main Java Applet 5-2 Starting Page 5-2 Initial Page 5-2 Control Page 5-3 Java Classes for the Program Units 5-3 User HTML Pages for the Screen Sections 5-3 Conversion Mappings 5-3 Mappings to Java Classes 5-3 ii

7 Contents 5. SCREEN COBOL-to-Web Conversion Mappings (continued) 5. SCREEN COBOL-to-Web Conversion Mappings (continued) Mappings to User HTML Pages Java Import Package Reference Host Connectivity Classes 6-2 Class Gateway 6-2 Class ServerReplyCode 6-11 HTML Screen Interaction Classes 6-13 Class ScreenFieldIdentifier 6-13 Class ScreenField 6-13 Class ScreenFieldArray 6-22 Class ScreenFieldGroup 6-30 Class HTMLHandler 6-32 Class FunctionKey 6-43 Data-Type Classes 6-44 Class ScobolType 6-44 Class ScobolGroupType 6-53 Class Pic Class Pic9P 6-72 Class Pic9V 6-84 Class PicN 6-97 Class PicX Transform Class Class Transform ProgramUnit Class Class ProgramUnit Special-Register Classes Class ScobolLib Class Cursor Exception Classes Class ExitProgramException Class ScobolException Class ScobolSendException Class ScobolTxnException Class StopRunException Class TransformException User Conversion Classes Class UserConversion Class ScLibUserConversion iii

8 Contents 7. Introduction to Pathway/iTS Introduction to Pathway/iTS 1.1 Architecture of Pathway/iTS SCOBOL Verbs and Special Register 7-3 Web Clients in Pathway/iTS Difference Between Pathway/iTS 1.0 and Pathway/iTS Server Process Opener and Timeouts on Send to Servers 7-4 TCP Checkpoint Strategy 7-4 Special Registers 7-5 FREEZE SERVER Command Changes 7-6 Statistics Collected by Pathway/iTS Fault Tolerance in Pathway/iTS Error Handling in Pathway/iTS A. Client Error Messages General Information A-1 Message s A-1 B. SCREEN COBOL Features Not Supported for Web Conversion Index Examples Example 2-1. Sample Configuration File for mycfg 2-3 Example 2-2. Sample CONTROL.html File 2-16 Example 5-1. SCREEN COBOL Working-Storage Code Fragment 5-4 Example 5-2. Java Code Resulting From Conversion of Working-Storage Code 5-4 Example 5-3. SCREEN COBOL Paragraph 5-5 Example 5-4. Java Code Resulting From Conversion of SCREEN COBOL Paragraph 5-5 Example 5-5. SCREEN COBOL Input-Output Element 5-6 Example 5-6. Java Code Resulting From Conversion of SCREEN COBOL Input- Output Element 5-6 Example 5-7. SCREEN COBOL Screen Section 5-8 Example 5-8. HTML Code Resulting From Conversion of SCREEN COBOL Screen Section 5-8 Example 7-1. Sample TCP Statistics for QUEUE INFO. 7-7 Figures Figure 1-1. Development of a Pathway/iTS Web Client 1-2 iv

9 Contents Figures (continued) Figures (continued) Tables Figure 1-2. Run-Time Environment for a Pathway/iTS Web Client 1-3 Figure 7-1. Architecture of Pathway/iTS Table B-1. Web Conversion Support Limitations B-2 v

10 Contents vi

11 What s New in This Manual Manual Information Abstract HP NonStop Pathway/iTS Web Client Programming Manual This manual describes how to convert SCREEN COBOL requesters to web clients and explains how to build and deploy those clients. It also provides the information Java developers and web designers need to modify and enhance the Java and HTML portions of the converted clients. Product Version Pathway/iTS 1.1 Supported Release Version Updates (RVUs) This publication supports J06.03 and all subsequent J-series RVUs and H06.03 and all subsequent H-series RVUs, until otherwise indicated by its replacement publications. Part Number Published May 2008 Document History Part Number Product Version Published Pathway/iTS 1.0 October Pathway/iTS 1.0 Update June Pathway/iTS 1.1 May Pathway/iTS 1.1 May 2008 New and Changed Information Changes in the H06.14/J06.03 manual: Supported release statements have been updated to include J-series RVUs. Added an overview of Pathway/iTS 1.1 on page 1-5. Added four delegation methods to the list of Class Gateway on page 6-3 and added their descriptions on page 6-6. Added a data member to Class ScobolLib on page Added Section 7, Introduction to Pathway/iTS 1.1. vii

12 What s New in This Manual Product Changes in G06.27 Added these error messages: 3115 on page A on page A on page A on page A on page A on page A on page A on page A on page A on page A on page A on page A on page A-19 Product Changes in G06.27 The Pathway/iTS product, formerly called Pathway/TS, was renamed to conform to current HP product naming standards and to reflect the internet (web client) capabilities of the product. After the first reference to the product name in each manual section, subsequent references use the shortened form of the name, Pathway/iTS. Section 2: How to Compile, Build, and Maintain a Pathway/iTS Web Client Added a Deployment Environment section tosample Configuration File for mycfg on page 2-3. Reorganized and added detailed information and examples to 6. Build the Converted Client on page Deploy the Web Client on page Customize the Screens on page Changed the step for setting up the user profile database from optional to required. See 5. Run PROFDBM to Set Up the User Profile Database on page 2-4. Section 4: User-Written User Conversion Procedures for Web Clients Corrected the nld utility command description in Build Your User Conversion Library on page 4-2. viii

13 What s New in This Manual Corrections and Enhancements to the Manual Section 5: SCREEN COBOL-to-Web Conversion Mappings Added a description of the Initial page in Initial Page on page 5-2. Modified the name of the starting page file from name_page1.html to name_start.html in Starting Page on page 5-2. Corrected the code in Example 5-2 on page 5-4 Example 5-6 on page 5-6 Example 5-7 on page 5-8 Example 5-8 on page 5-8 Updated information in Mappings to User HTML Pages on page 5-7. Section 6: Java Import Package Reference Updated the Method send on page Added the pow method to the ScobolLib class. See Method pow on page Modified the displayoverlay method in the HTMLHandler class. See Method displayoverlay on page Added the displayoverlayspaces method to the HTMLHandler class. See Method displayoverlayspaces on page Added the addscoboldata method to the ScobolGroupType calss. See Method addscoboldata on page Removed the Class Overlay Manager, Method addoverlay (single overlay screen), and Method addoverlay (multiple overlay screens). General, throughout the manual Removed references to the Unix operating system. Corrected several examples Corrections and Enhancements to the Manual These enhancements have been made to the material in this manual: References to Compaq trademarks have been updated. Miscellaneous terminology changes and editorial corrections have been made. ix

14 What s New in This Manual Corrections and Enhancements to the Manual x

15 About This Manual This manual describes how to convert SCREEN COBOL requesters to web clients and explains how to build and deploy those clients. It also provides the information Java developers and web designers need to modify and enhance the Java and HTML portions of the converted clients. Who Should Read This Manual This manual is intended for these types of readers: Application developers who are converting SCREEN COBOL requesters to web clients Java developers who are modifying and enhancing the Java portion of converted web clients Web designers who are modifying the HTML output of converted web clients The primary focus of this manual is on describing the unmodified converted clients and how to use them, rather than on how to enhance the clients after conversion. However, this manual provides information about the structure and content of the converted Java code and HTML pages so that developers and web designers can modify them if desired. Related Documentation The Pathway environment is supported by three products: HP NonStop Pathway/iTS HP NonStop Transaction Services/MP (NonStop TS/MP) HP NonStop Pathway/XM xi

16 About This Manual Related Documentation These manuals may be useful: Pathway/iTS SCUP Reference Manual Pathway/iTS SCREEN COBOL Reference Manual Pathway/iTS TCP and Terminal Programming Guide Pathway/iTS System Management Manual NonStop TS/MP System Management Manual Pathway/XM System Management Manual Pathway/iTS Management Programming Manual Pathway Products Glossary Operator Messages Manual Describes the utility program that enables SCREEN COBOL application programmers to control and manipulate SCREEN COBOL object files. This manual includes detailed syntax for the CONVERT command, used to convert SCREEN COBOL object files to web clients. Describes the SCREEN COBOL programming language, which is used for writing programs that define and control terminal displays or intelligent devices for online transaction processing applications running in a PATHMON environment. A guide for programmers who are writing SCREEN COBOL requesters to be used in Pathway applications. Describes the interactive management interface to the Pathway/iTS product and describes how to configure and manage Pathway/iTS objects. Describes the interactive management interface to the NonStop TS/MP product and describes how to configure and manage NonStop TS/MP objects. This interface is used together with the Pathway/iTS management interface to configure and manage a Pathway environment. Describes the higher-level management interface provided by the Pathway/XM product, which you might want to use to configure and manage your Pathway environment rather than use the management interfaces provided by Pathway/iTS and NonStop TS/MP. Describes the management programming interface for Pathway/iTS objects in the PATHMON environment. Defines technical terms used in this manual and in other manuals for the Pathway products: Pathway/iTS, NonStop TS/MP, and Pathway/XM. Describes all messages that are distributed by the Event Management Service (EMS), including those generated by NonStop TS/MP and Pathway/iTS processes. xii

17 About This Manual Notation Conventions Notation Conventions Hypertext Links Blue underline is used to indicate a hypertext link within text. By clicking a passage of text with a blue underline, you are taken to the location described. For example: This requirement is described under Backup DAM Volumes and Physical Disk Drives on page 3-2. General Notation The following list summarizes the notation conventions for syntax presentation in this manual. UPPERCASE LETTERS. Uppercase letters indicate keywords and reserved words; enter these items exactly as shown. Items not enclosed in brackets are required. For example: MAXATTACH lowercase italic letters. Lowercase italic letters indicate variable items that you supply. Items not enclosed in brackets are required. For example: file-name [ ] Brackets. Brackets enclose optional syntax items. For example: TERM [\system-name.]$terminal-name INT[ERRUPTS] A group of items enclosed in brackets is a list from which you can choose one item or none. The items in the list may be arranged either vertically, with aligned brackets on each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines. For example: FC [ num ] [ -num] [ text] K [ X D ] address-1 { } Braces. A group of items enclosed in braces is a list from which you are required to choose one item. The items in the list may be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines. For example: LISTOPENS PROCESS { $appl-mgr-name } { $process-name } ALLOWSU { ON OFF } xiii

18 About This Manual General Notation Vertical Line. A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces. For example: INSPECT { OFF ON SAVEABEND } Ellipsis. An ellipsis immediately following a pair of brackets or braces indicates that you can repeat the enclosed sequence of syntax items any number of times. For example: M address-1 [, new-value ]... [ - ] { }... An ellipsis immediately following a single syntax item indicates that you can repeat that syntax item any number of times. For example: "s-char..." Punctuation. Parentheses, commas, semicolons, and other symbols not previously described must be entered as shown. For example: error := NEXTFILENAME ( file-name ) ; LISTOPENS SU $process-name.#su-name Quotation marks around a symbol such as a bracket or brace indicate the symbol is a required character that you must enter as shown. For example: "[" repetition-constant-list "]" Item Spacing. Spaces shown between items are required unless one of the items is a punctuation symbol such as a parenthesis or a comma. For example: CALL STEPMOM ( process-id ) ; If there is no space between two items, spaces are not permitted. In this example, there are no spaces permitted between the period and any other items: $process-name.#su-name Line Spacing. If the syntax of a command is too long to fit on a single line, each continuation line is indented three spaces and is separated from the preceding line by a blank line. This spacing distinguishes items in a continuation line from items in a vertical list of selections. For example: ALTER [ / OUT file-spec / ] CONTROLLER [, attribute-spec ]... xiv

19 About This Manual Notation for Messages Notation for Messages The following list summarizes the notation conventions for the presentation of displayed messages in this manual. Bold Text. Bold text in an example indicates user input typed at the terminal. For example: ENTER RUN CODE?123 CODE RECEIVED: The user must press the Return key after typing the input. Nonitalic text. Nonitalic letters, numbers, and punctuation indicate text that is displayed or returned exactly as shown. For example: Backup Up. lowercase italic letters. Lowercase italic letters indicate variable items whose values are displayed or returned. For example: p-register process-name [ ] Brackets. Brackets enclose items that are sometimes, but not always, displayed. For example: Event number = number [ Subject = first-subject-value ] A group of items enclosed in brackets is a list of all possible items that can be displayed, of which one or none might actually be displayed. The items in the list might be arranged either vertically, with aligned brackets on each side of the list, or horizontally, enclosed in a pair of brackets and separated by vertical lines. For example: proc-name trapped [ in SQL in SQL file system ] { } Braces. A group of items enclosed in braces is a list of all possible items that can be displayed, of which one is actually displayed. The items in the list might be arranged either vertically, with aligned braces on each side of the list, or horizontally, enclosed in a pair of braces and separated by vertical lines. For example: obj-type obj-name state changed to state, caused by { Object Operator Service } process-name State changed from old-objstate to objstate { Operator Request. } { Unknown. } Vertical Line. A vertical line separates alternatives in a horizontal list that is enclosed in brackets or braces. For example: Transfer status: { OK Failed } xv

20 About This Manual Change Bar Notation % Percent Sign. A percent sign precedes a number that is not in decimal notation. The %þnotation precedes an octal number. The %Bþnotation precedes a binary number. The %Hþnotation precedes a hexadecimal number. For example: % P=%p-register E=%e-register Change Bar Notation Change bars are used to indicate substantive differences between this manual and its preceding version. Change bars are vertical rules placed in the right margin of changed portions of text, figures, tables, examples, and so on. Change bars highlight new or revised information. For example: The message types specified in the REPORT clause are different in the COBOL85 environment and the Common Run-Time Environment (CRE). The CRE has many new message types and some new message type codes for old message types. In the CRE, the message type SYSTEM includes all messages except LOGICAL-CLOSE and LOGICAL-OPEN. xvi

21 1 Introduction to Pathway/iTS Web Clients The web client feature of HP NonStop Pathway/iTS lets you convert a SCREEN COBOL application (a group of related compiled program units within an object library) to a web client and then build and deploy the resulting client in a Pathway environment. The converted web client consists of a combination of Java code and HTML pages. These can be deployed on any web server hosted on the HP NonStop Kernel operating system. The Java client, working with a standard web browser, communicates with existing Pathway servers by means of router processes, a run-time web gateway, and the terminal control process (TCP). Any valid block-mode requester programs for terminal types T , T , T , and IBM-3270 can be converted. (Intelligent device support (IDS) requesters cannot be converted.) The specified program units are converted in such a way that most of the functionality of the original SCREEN COBOL program remains unchanged. The conversion feature allows you to maintain the same SCREEN COBOL source code for both terminals and web clients. Thus you can migrate terminals to the web gradually. Alternatively, you can fully migrate your terminal requesters to the web and then use standard web publishing tools to modify and enhance the Java code and the HTML presentation. You can configure and manage Pathway applications containing converted web clients by using either HP NonStop Pathway/XM or PATHCOM. However, HP recommends using Pathway/XM for this purpose; Pathway/XM provides fuller and easier-to-use management capabilities for web client configurations, including configuration and management of router processes. Information about configuring and managing Pathway/iTS web clients through Pathway/XM is provided in the Pathway/XM System Management Manual. Information about configuring and managing Pathway/iTS web clients through PATHCOM is given in the Pathway/iTS System Management Manual. 1-1

22 Introduction to Pathway/iTS Web Clients Development Process for Web Clients Development Process for Web Clients The process of creating a Pathway/iTS web client is shown in Figure 1-1. To convert a SCREEN COBOL object program to a web client, you invoke the Pathway/iTS converter utility through the CONVERT command in the SCREEN COBOL Utility Program (SCUP). The converter scans the compiled SCREEN COBOL object code and generates an equivalent web client. Figure 1-1. Development of a Pathway/iTS Web Client TM Compaq NonStop System SCREEN COBOL Source SCREEN COBOL Compiler SCREEN COBOL Object Code Directory Symbol Table SCUP Utility Java Source Code HTML Pages with JavaScript optional Standard Web Publishing Tools Web Server VST001.vsd The web client consists of a combination of Java code and HTML pages. Requesterbased business logic is converted to Java classes. Screen components are converted to HTML pages with embedded JavaScript code to link them to the Java business logic. 1-2

23 Introduction to Pathway/iTS Web Clients Run-Time Environment for Web Clients Optionally, before deployment you can customize the converted HTML pages by using standard web publishing tools. Run-Time Environment for Web Clients The run-time environment for a Pathway/iTS web client is shown in Figure 1-2. Figure 1-2. Run-Time Environment for a Pathway/iTS Web Client Java Import Package Residing on Browser-Based Web Client Internet Proxy Proxy Compaq NonStop TM System Router Gateway Threads TCP Pathway Server Class VST002.vsd Java Import Package Pathway/iTS provides a Java import package used by the converted web clients. This package consists of classes that enable Java-based clients to interact with Pathway applications. The Java import package includes public classes in these categories: Host connectivity (gateway) classes, which define the connectivity protocol with the host HP NonStop system and also delegate certain host processing on behalf of the clients. 1-3

24 Introduction to Pathway/iTS Web Clients Router Process HTML screen interaction classes, which define the attributes and structures associated with SCREEN COBOL screen fields and the SCREEN COBOL statements associated with displaying and accepting screens. Data-type classes, which define the storage and casting rules associated with SCREEN COBOL alphanumeric (PIC X), numeric integer (PIC 9), and numeric non-integer (PIC 9P and PIC 9V) data types. The Transform class, which provides methods to implement the SCREEN COBOL TRANSFORM statement The Program Unit class, which provides methods for setting attributes for a program unit for example, the currency symbol and the decimal-point character Special-register classes, which define the Java equivalents of the SCREEN COBOL special registers Exception classes, which provide handling for SCREEN COBOL exceptions User conversion classes, which define the Java equivalent of the standard user conversion routines in PATHTCPL The classes and methods in the Java import package are described in detail in Section 6, Java Import Package Reference. Note. Although the Pathway/iTS router processes, described in the following subsection, support both HTTP and raw sockets protocols, the Java import package requires the use of the HTTP protocol. Router Process The Java client, working with a standard web browser, communicates with existing Pathway servers by sending connection requests to a Pathway/iTS router process residing on a NonStop system. The router processes listen and distribute connection requests for servicing. Each router process is configured with a TCP/IP port used to associate an application with connection requests. The router processes support converted web clients that use the HTTP or the raw sockets protocol and user-written intelligent device support (IDS) requesters that use the raw sockets protocol. The router processes distribute connection requests from web clients or intelligent devices to started TERM objects within the TCPs in such a way that the connection load is optimally balanced among all the TCPs in the Pathway environment. When all the TERM objects in all the configured TCPs are in use, the router queues new connection requests until a TERM object is available. The router also queues the TERM objects that are ready for a connection until a connection request arrives. Terminal Control Process (TCP) In support of web clients, the TCPs perform link management and line handling, as they do for SCREEN COBOL terminal requesters. Within a TCP, each TERM object 1-4

25 Introduction to Pathway/iTS Web Clients Gateway Threads that handles a web client is configured with its FILE attribute pointing to a router process. Each such TERM object sends a message to the router process indicating that it is available to service a connection. When a client requests a connection, the request is sent to the router and the router passes the client information to the TCP. The TCP then establishes a socket connection to the client, verifies access rights, and passes control to the gateway thread. The combination of the router and TCP processes provides general load balancing for gateway threads. TERM objects within multiple TCP processes are associated with a given router process. This enables the router process to identify the gateway thread that will process the connection request. Multiple routers can thus be used to support more than one gateway application. Gateway Threads The run-time web gateway is implemented as a Pathway/iTS intelligent device support (IDS) requester running on the NonStop system under control of the TCP. This requester program is provided as part of Pathway/iTS. It handles requests from the browser-based web client, treating the client as an intelligent device. The gateway validates user access and performs certain functions on behalf of the client including beginning and ending transactions, user conversion routines, and send operations to Pathway server processes. Client communications with the Pathway/iTS web gateway can use the standard HTTP protocol to allow optional use of Internet proxy servers. Alternatively, for intranet applications, a client can use the raw sockets protocol. The protocol is specified by the system manager when starting the router process. Pathway/iTS 1.1 PATHTCP4, the TCP component uses SERVERCLASS_SEND_* APIs to process the existing SEND verb for SCOBOL requesters and converted Java clients. The features are: PATHTCP4 does not communicate with either owner or external PATHMON process for link management activities. Instead of performing Guardian WRITEREAD on Pathway server processes to communicate with them, PATHTCP4 becomes a Pathsend requester and uses Pathsend APIs to communicate with Pathway servers. Therefore, any existing Pathway/iTS 1.0 application can be used with Pathway/iTS 1.1 with minimal changes to the applications. PATHTCP4 provides four SCOBOL verbs, DIALOG-ABORT, DIALOG-BEGIN, DIALOG-END, and DIALOG-SEND to enable SCOBOL requesters and converted Java clients to establish context-sensitive communication with Pathway servers. The context-sensitive communication allows SCOBOL requesters and converted Java clients to send more than 32,000 bytes of data to the same Pathway server process. 1-5

26 Introduction to Pathway/iTS Web Clients Pathway/iTS 1.1 The SCUP and Web client components of Pathway/iTS 1.1 product are changed to support these functionalities. For compatibility reasons, Pathway/iTS 1.1 package includes PATHTCP3, the legacy TCP component. For more information, see Section 7, Introduction to Pathway/iTS

27 2 How to Compile, Build, and Maintain a Pathway/iTS Web Client This section describes the steps you need to take to convert a SCREEN COBOL program into a Pathway/iTS web client and to compile, build, deploy, and maintain the resulting web client. The steps are: 1. Prepare the SCREEN COBOL Object File 2. Create a Configuration File 3. Run the Converter 4. Modify Java or SCREEN COBOL Code as Needed 5. Run PROFDBM to Set Up the User Profile Database 6. Build the Converted Client 7. Deploy the Web Client 8. Customize the Screens 9. Specify the Port Number of the Router Process 10. Configure Pathway Servers for User Profiles and User Conversion Routines 11. Tune the Application for Performance by Changing the Session-Length Parameter 12. Maintain the Client For each step, a generic description of the step is followed by an example that refers to a sample SCREEN COBOL application. The sample application used in this section consists of four program units: LOG1, LOG2, INV1, and INV2. Program units LOG1 and LOG2 are located in the program file LGINCOD and program units INV1 and INV2 are located in the program file INVYCOD. Program units LOG1 and LOG2 perform the login and user authentication functions for the application. If the login is successful, the program unit INV1 is called, which in turn calls INV2 to begin process user requests. The initial program unit for this sample application (as specified in the INITPROG parameter) is LOG1. 2-1

28 How to Compile, Build, and Maintain a Pathway/iTS Web Client 1. Prepare the SCREEN COBOL Object File 1. Prepare the SCREEN COBOL Object File Before you run the converter, organize the SCREEN COBOL object (POBJ) file so that repeated conversions can be done easily. First, copy the SCREEN COBOL object file to be converted to the desired volume and subvolume. If the SCREEN COBOL object program has its symbols stripped, rebuild the object file with symbols. The converter uses the symbols when creating equivalent Java variable names. The equivalent symbolic names the converter creates when symbols are available help make the converted code readable and maintainable. If the converter cannot locate symbols, it generates an error and does not convert that program unit. For each application, verify that all the program units that make up this application are in a single SCREEN COBOL object file, including the program that is specified in the INITPROG parameter. Doing this enables you to convert the entire application in a single invocation of the converter. In addition, this organization of the SCREEN COBOL object code makes it easier to regenerate the Java and HTML files when you do future enhancements in SCREEN COBOL. In the sample application, you would move the program units LOG1, LOG2, INV1, and INV2 into a single SCREEN COBOL object file. 2. Create a Configuration File Create a configuration file to contain the default values the converter will use. By creating a configuration file, you can avoid having to repeatedly specify frequently used values. In addition, because the default compile (build) environment is the HP NonStop Kernel operating system OSS, you must specify a configuration file if your compile environment is the Microsoft Windows NT operating system. Example 2-1 shows a sample configuration file called mycfg. 2-2

29 How to Compile, Build, and Maintain a Pathway/iTS Web Client 3. Run the Converter Example 2-1. Sample Configuration File for mycfg [Screen Section] Background = mylogo.gif; Foreground = Black; Font Type = Courier; Font Size = 12; [Convert Environment] Java Location = \system.$java.appa; HTML Location = \system.$html.appa; [Compile Environment] OS = NSK; [Deployment Environment] Web Root = /usr/webserver/root; [Limits Section] To provide a common look and feel for all the web pages, the example provides default values for background color, foreground color, font type, and font size. For the background parameter, you could choose a color or a.gif file that contains the company logo. Specifying default locations for Java and HTML files in the Convert Environment section allows you to save the converted files in a well-known location. Details about the converter configuration file are given in the description of the CONVERT command in the Pathway/iTS SCUP Reference Manual. 3. Run the Converter Next, convert the SCREEN COBOL files to a web client. You invoke the converter by bringing up the SCREEN COBOL Utility Program (SCUP) from a HP Tandem Advanced Command Language (TACL) prompt: TACL> SCUP SCUP displays its starting banner followed by a question-mark prompt. Optionally, you can redirect the output of the SCUP program to a file by using the OUT command or by specifying the OUT option while invoking the SCUP program. If OUT is specified, messages from the converter will be redirected to that file. At the question-mark prompt, you enter the SCUP CONVERT command, which is described in detail in the Pathway/iTS SCUP Reference Manual. For the sample application, you could enter this CONVERT command:?convert invy (*(1)), INITPROG LOG1, CONFIGFILE mycfg, & APPNAME inventory 2-3

30 How to Compile, Build, and Maintain a Pathway/iTS Web Client 4. Modify Java or SCREEN COBOL Code as Needed This command converts version 1 of all the program units in the Inventory application (stored in invy* object files) and generates the equivalent Java source and HTML files. The converted files are created in the subvolumes specified in the configuration file mycfg. The look and feel of the generated HTML files are based on the values specified in the Screen Section of the configuration file. Because all the program units are already in the INVYCOD program file, the converter does not generate a warning message. If the converter encounters any error or warning conditions, messages are displayed on the SCUP terminal (or if the OUT command or option was specified, written to the specified OUT file). For the user's convenience, a conversion summary is displayed after each individual Program Unit is converted and at the end of CONVERT command. Detailed syntax for the CONVERT command, the CONVERT summary, and message text, cause, effect, and recovery information for all converter error messages are provided in the Pathway/iTS SCUP Reference Manual. 4. Modify Java or SCREEN COBOL Code as Needed When you run the converter, it returns error or warning messages if it finds any problems or any unsupported SCREEN COBOL statements. In such cases, comments or error messages may also appear in the resulting Java code. If unsupported statement error messages are returned, you must do one of these: Analyze the impact of the unsupported statement and replace it with appropriate Java code. Modify the SCREEN COBOL source code by removing the unsupported SCOBOL statement and then run the converter again. For detailed information about the error and warning messages that can be returned by the converter, see the Pathway/iTS SCUP Reference Manual. Also, if you plan to use the user profile feature described in Section 3, Logon Security and User Profiles, you must add Java code to the converted code to check the user profile field in the logon screen and then use the information in the USERPROF user profile data base to take appropriate action in accordance with the needs of your application. 5. Run PROFDBM to Set Up the User Profile Database If you are using the user profile feature for web clients, you must set up the user profile database using the user profile database manager utility, PROFDBM. For detailed instructions, see Contents of the User Profile Database on page 3-2 and Use the PROFDBM Utility on page

31 How to Compile, Build, and Maintain a Pathway/iTS Web Client 6. Build the Converted Client 6. Build the Converted Client You can build (compile) the converted client either on the NonStop system under the Open System Services (OSS) environment of the NonStop Kernel operating system or on another machine running the Windows NT operating system. Doing this involves three steps: 1. Set up the build environment 2. Transfer files to the build environment (if the build environment is Windows NT) 3. Build (compile) the application Set Up the Build Environment in an OSS Environment Pathway/iTS provides a TACL MACRO utility named JMAKENV, which is used to set up the build environment for the converted web client. This utility uses the MAP file that is created at the time of conversion to generate the build environment. The MAP file is created at the same location ($volume.subvolume) from which the CONVERT command was run. The MAP file name is composed of the first four or five SCOBOL object file characters plus the characters MAP. For example, if the SCOBOL objects are named MYAPPCOD, MYAPPDIR, and MYAPPSYM, then the MAP file name is MYAPPMAP. If the build environment is on a NonStop system under the OSS environment, JMAKENV creates the application home directory under OSS, copies the converted files to this directory and creates a make file for building and deploying the application. You must set the CLASSPATH variable to point to the itsjlib.jar file (the Java import package) and to the current directory. export CLASSPATH=/usr/tandem/Pathway-iTS/itsjlib.jar:$CLASSPATH The itsjlib.jar file must be available on the local machine. If it is not available, copy the file from the installation CD. Set other environment variables for Java compilation: for example: Add /usr/tandem/java/bin to $PATH Add /usr/tandem/java/lib/classes.zip to $CLASSPATH Add /usr/tandem/java/lib/tandemvm.zip to $CLASSPATH From the TACL prompt on a NonStop system, run JMAKENV as: RUN JMAKENV file-name application-home makefile-name file-name is the name of the SCREEN COBOL object-file (the POBJ file). 2-5

32 How to Compile, Build, and Maintain a Pathway/iTS Web Client Set Up the Build Environment in a Windows Environment application-home is the full path name of the OSS directory from which the application will be run. makefile-name is the name of the make file to be created that is used when building and running the application int he OSS environment. JMAKENV does these: Creates a directory named application-home/build. Creates a directory named application-home/bin where the built objects will be stored. Copies all the appropriate files from the Java and HTML location (specified at the time of the conversion) to the application-home/build directory. The files are copied with the appropriate.java and.html extensions. Creates a make file for building the application. The name of the make file is specified in the JMAKENV command and is copied to the applicationhome/build directory as make-file.mk. Sets up the environment variables used by the make file. Note. The user running JMAKENV must have permission to create and copy files to the application-home directory in the OSS environment. For example, you would run the JMAKENV file for the sample application as: TACL> JMAKENV invy /usr/test/inventory invymk JMAKENV in the sample application does these: Creates the directory /usr/test/inventory/build. Creates the directory /usr/test/inventory/bin where the built objects will be stored. Copies all the necessary files from the specified Java and HTML location (in this example, the volumes default to the same volume and subvolume as mycfg) to the NonStop Kernel OSS directory /usr/test/inventory/build. Creates a make file named invymk for building the application. Sets up the environment variables used by invymk. Copies invymk to the directory /usr/test/inventory/build as invymk.mk. Set Up the Build Environment in a Windows Environment Pathway/iTS provides a TACL MACRO utility named JMAKENV, which is used to set up the build environment for the converted web client. 2-6

33 How to Compile, Build, and Maintain a Pathway/iTS Web Client Set Up the Build Environment in a Windows Environment This utility uses the MAP file that is created at the time of conversion to generate the build environment. The MAP file is created at the same location ($volume.subvolume) from which the CONVERT command was run. The MAP file name is composed of the first four or five SCOBOL object file characters plus the characters MAP. For example, if the SCOBOL objects are named MYAPPCOD, MYAPPDIR, and MYAPPSYM, then the MAP file name is MYAPPMAP. If the build environment is on a Windows NT server, JMAKENV creates two batch files to move the converted files to the desired environment and copy the Java class and HTML files to a directory under OSS for deployment. From the TACL prompt on a NonStop, run JMAKENV as: RUN JMAKENV file-name NT file-name is the name of the SCREEN COBOL object-file. JMAKENV does this when run with the NT option: Creates two batch files (JGETFILE and JPUTFILE) in the same location from which JMAKENV was run. JGETFILE includes FTP commands to move files from the OSS environment to the Windows NT platform. JPUTFILE includes FTP commands to move files from a Windows NT environment to the OSS deployment directory. For example, you would run the JMAKENV file for the sample application as: TACL> JMAKENV invy NT JMAKENV in the sample application does these: Creates the JGETFILE and JPUTFILE files in the same location from which JMAKENV was run. To move the generated Java and HTML files from a NonStop to a Windows environment, run JGETFILE from the Windows environment. To move the JGETFILE file onto a Windows environment, use these steps: 1. At the Windows DOS prompt, execute the command ftp host-address where host-address is the IP address of the NonStop where the Java and HTML files are generated. 2. At the FTP prompt: Logon to the system. Set the remote directory to the location where JGETFILE is located. Set the local directory to location where JGETFILE is to be transferred. 2-7

34 How to Compile, Build, and Maintain a Pathway/iTS Web Client Build (Compile) the Application in an OSS Environment Set the transfer mode to ASCII. 3. Transfer JGETFILE then exit the FTP session using the commands ftp> ASCII ftp> get JGETFILE JGETFILE.BAT ftp> bye 4. When JGETFILE.BAT is copied to the Windows NT environment, copy the generated Java and HTML files using the command JGETFILE host-name user-id password host-name is the IP address or name of the NonStop containing the generated Java and HTML files. user-id is a valid userid on the NonStop server. The userid must have the authority to read Java and HTML files. password is the password for the userid. This command copies the Java and HTML files to the local directory from where this batch file was run and automatically assigns the appropriate names to the files. After all the files have been transferred, build the application. Build (Compile) the Application in an OSS Environment The JMAKENV utility you run to set up the build environment generates the make file that you use to build the converted application code. To build the converted application, you invoke the make file with this command: make -f makefile-name all To clean up the build environment (that is, to delete any previously built components), you invoke the make file with this command: make -f makefile-name clean For example, you could build the sample application by running the make file from the OSS environment by using a command sequence such as: TACL> OSS % cd /usr/test/inventory % make -f invymk.mk all This is an example of a make file generated by JMAKENV: BUILDHOME = $(APPHOME)\build CLASSPATH = $(APPHOME);$(CLASSPATH) 2-8

35 How to Compile, Build, and Maintain a Pathway/iTS Web Client Build (Compile) the Application in a Windows Environment OUTDIR = $(APPHOME)\bin WEBROOT = /usr/tandem/webserver/root JAVAC = Javac -d $(OUTDIR).SUFFIXES:.java.class PROGRAM_FILES = abc.java \ xyz.java \ main.java HTML_FILES = start.html \ Ctrl.html GIF_FILES = background.gif all: $(PROGRAM_FILES) clean: del /f/q $(BUILDHOME)\*.class.java.class: $(JAVAC) -classpath $(CLASSPATH) $? publish: all html gif Build (Compile) the Application in a Windows Environment Once the Java files are transferred to a Windows environment, you can use the Java compiler available on the machine to compile the Java source. A typical Java compilation on a Windows environment is as: DOS> javac *.java 2> error.txt This compiles all Java files in the current directory and creates one or more class files. Compilation errors are stored in the error.txt file. 7. Deploy the Web Client You are now ready to deploy and test the converted application on the web server. Two parameters are needed for deployment: The location (under the specified web root) where the files are to be published The TCP/IP port number of the router process Deploy the Web Client on an OSS Environment Transfer the application files to the web server If you built the client on a Windows platform, you must first transfer the application files to the web server on the NonStop and then deploy the client. If you built the client on a NonStop, you can skip the file transfer step and deploy the client immediately. Use the make file to deploy it on the web server by issuing this command from the OSS prompt: make -f makefile-name DEPLOY = path-name publish 2-9

36 How to Compile, Build, and Maintain a Pathway/iTS Web Client Deploy the Web Client on an OSS Environment makefile-name is the name of the make file generated by JMAKENV path-name is the relative pathname (under web-root) from which the web pages are served. To deploy the sample application, execute the make file with this command: make -f invymk.mk DEPLOY=testapp publish Executing this make file does these: Copies all the HTML files from the /usr/test/inventory/bin directory to the usr/webserver/root/testapp directory, where /usr/webserver/root is obtained from the WEBROOT variable in the make file. Copies all the compiled Java files from the /usr/test/inventory/bin directory to the /usr/webserver/root/testapp directory, where /usr/webserver/root is obtained from the WEBROOT variable in the make file. Move installation files to the web server Before running the application, you must move these files to the application directory on the web server (these files were created when Pathway/iTS was installed): ITSJLIB.jar, BPathwayiTS.js, OVPathwayiTS.js, and blank.html. Copy these files to the application directory in the root using these commands: cp /usr/tandem/pathway-its/itsjlib.jar /usr/tandem/webserver/root/application-dir/itsjlib.jar cp /usr/tandem/pathway-its/bpathwayits.js /usr/tandem/webserver/root/application-dir/bpathwayits.js cp /usr/tandem/pathway-its/ovpathwayits.js /usr/tandem/webserver/root/application-dir/ovpathwayits.js cp /usr/tandem/pathway-its/blank.html /usr/tandem/webserver/root/application-dir/blank.html In addition, HP recommends you also move the file end.html to the application directory on the server. This file is displayed when the application terminates and can be modified. Copy the file using this command: cp /usr/tandem/pathway-its/end.html /usr/tandem/webserver/root/application-dir/end.html Test the converted application If the URL for the default page on the web server is you can now test the converted application by using this URL:

37 How to Compile, Build, and Maintain a Pathway/iTS Web Client Deploy the Web Client on a Windows Environment Additional options available in the make file are as: Publish only the HTML files from /usr/test/inventory/build -f invymk.mk DEPLOY=testapp html Publish only the class files from /usr/test/inventory/bin -f invymk.mk DEPLOY=testapp class Delete all the class files from /usr/test/inventory/bin -f invymk.mk clean Compile all the Java source files and create the class files in /usr/test/inventory/bin -f invymk.mk all Publish all the gif files (which must be in /usr/tandem/webserver/root) -f invymk.mk DEPLOY=testapp gif Deploy the Web Client on a Windows Environment To deploy the compiled Java class files and the HTML files from a Windows environment to an OSS directory under the webroot directory, run the JPUTFILE from the Windows environment. To get the JPUTFILE onto a Windows environment, use these steps: 1. From the Windows DOS prompt, execute the command: ftp host-address where host-address is the IP address of the NonStop Server where the Java and HTML files are generated 2. At the FTP prompt: Logon to the system. Set the remote directory to the location where JGETFILE is located; this the same directorywhere all the class files are generated and the HTML files are located Set the transfer mode to ASCII. 3. Transfer JGETFILE then exit the FTP session using the commands ftp> ASCII ftp> get JPUTFILE JPUTFILE.BAT ftp> bye Once JPUTFILE.BAT is copied to a Windows environment, deploy the compiled Java files and HTML files using this command: JPUTFILE hostname user-id password application-home 2-11

38 How to Compile, Build, and Maintain a Pathway/iTS Web Client 8. Customize the Screens hostname is the IP address or name of the NonStop server where the application is to be deployed user-id is the valid user ID on the NonStop server password is the password for the user ID. application-home is the full path name of the OSS directory where the application is to be deployed. This directory should be subdirectory to the root directory of the web server. If the URL for the default page on the web server is you can now test the converted application by using this URL: 8. Customize the Screens Copy the HTML Files to be Customized After you deploy the converted application, you can customize the HTML files. Because most of the standard HTML editors run on a Windows platform, you probably need to copy the HTML files from the deployment directory to some directory on Windows, as: 1. At the Windows DOS prompt, execute ftp host-address where host-address is the IP address of the NonStop server where the files are deployed. 2. Logon to the NonStop server then specify the remote OSS directory where the HTML files are deployed. Specify local directory to which the files will get copied. Set the transfer mode to ASCII. ftp > user x.y password ftp > cd /usr/webserver/root/testapp ftp > lcd c:\htmledit ftp > ASCII 3. Use the get or mget command to get one or more HTML files. When the files are transferred, exit the ftp session. ftp > prompt off ftp > mget *.html ftp > bye 2-12

39 How to Compile, Build, and Maintain a Pathway/iTS Web Client Modify the HTML Files Modify the HTML Files Using a standard web editor, open the HTML files, make any modifications, and save the file in the directory. You might also want to save the modified file in your source change control database for future use. Redeploy Customized HTML Files Once the pages are changed, they need to be deployed again. Use ftp to put the files back into a OSS deployment directory. 1. At the Windows DOS prompt, execute ftp host-address where host-address is the IP address of the NonStop server where the files are to be deployed. 2. Logon to the NonStop server then specify the remote OSS directory where the HTML files are deployed. Specify local directory to which the files will get copied. Set the transfer mode to ASCII. ftp > user x.y password ftp > cd /usr/webserver/root/testapp ftp > lcd c:\htmledit ftp > ASCII 3. Use the get or mput command to put one or more HTML files. When the files are transferred, exit the ftp session. ftp > prompt off ftp > mput *.html ftp > bye 9. Specify the Port Number of the Router Process After you deploy the converted application on the web server, you must configure the converted Java applet to communicate with a router process running on the NonStop system. You do this by using the SETPORT utility, provided with the Pathway/iTS software, to specify an IP port number that matches the port number specified for the router process. Run the SETPORT utility on the NonStop system by issuing this command from the /usr/tandem/pathway-its/ directory in the OSS environment: SETPORT port-num control-name 2-13

40 How to Compile, Build, and Maintain a Pathway/iTS Web Client 10. Configure Pathway Servers for User Profiles and User Conversion Routines port-num is the TCP/IP port number assigned to this application. This number must match the port number specified when the router process was started, as described in the Pathway/iTS System Management Manual. control-name is either the program-id specified in the INITPROG parameter or the app-name specified in the APPNAME parameter when the application was converted with the SCUP CONVERT command that included the full OSS path. If both the INITPROG and the APPNAME parameters were specified in the CONVERT command, the app-name from the APPNAME parameter must be used for control-name. For example, in the sample application you could use this command: SETPORT 2500 /usr/tandem/webserver/root/deploydirectory/inventory This command configures the converted Java application to send messages to the router started with port number 2500 on the host NonStop system. 10. Configure Pathway Servers for User Profiles and User Conversion Routines Whether an end user is required to enter a password or a user profile is controlled by the userauthenticate and getprofile parameters in the control file that is generated by the CONVERT command. To use the user profile feature, set the getprofile parameter to true, as described in User Profile Options in the Control File on page 3-3, and configure the Pathway server class for the user profile server as detailed in Configure the User Profile Server Class on page 3-6. If your application uses user-written conversion routines running on the NonStop host, you must configure the Pathway server class for USER-LIB-SERVER as described in Configure the User Conversion Server Class on page Tune the Application for Performance by Changing the Session-Length Parameter The Java applet portion of the converted SCREEN COBOL application communicates with the TCP so that the required tasks can be performed on the NonStop host system. Such tasks include: Send operations to server classes Beginning, ending, and aborting transactions 2-14

41 How to Compile, Build, and Maintain a Pathway/iTS Web Client 11. Tune the Application for Performance by Changing the Session-Length Parameter Accept day/date/time operations User conversion routines These tasks are delegated to the Pathway/iTS web gateway requester threads under the control of the TCP. Each task involves one complete socket communication cycle (a write and a read) or one I/O operation in a session. A session begins when the applet opens the communication channel with the host NonStop by establishing a socket connection with the TCP. The session ends when the connection is closed by the applet after the task delegated to the gateway thread is completed. While opening a session, the applet sends a connection request to the router process on the NonStop. The router process assigns the connection request to a waiting gateway thread associated with a TERM object. The gateway thread then establishes a socket connection with the applet. The router distributes client connection requests to the waiting gateway threads while balancing the load optimally among the TCP processes in the Pathway environment. The number of I/O operations in a session affects the performance of the application environment. For example, if this number is specified as 5, then the session with the client will be kept alive until 5 socket communication cycles are done. In other words, one gateway thread, with which the connection was established at the beginning of the session, will be dedicated to that client (applet) until it has performed 5 delegated tasks. After the 5 tasks are completed, the socket connection is broken, the session is closed, and the gateway thread is freed to service another connection request from an applet. There is one case where the specified number of I/O operations is ignored: the BT-ET block. After a begin-transaction operation, the session is kept alive, regardless of the specified number of I/O operations, until the end-transaction operation is done. After the end-transaction operation, the session is closed. The length of the session is important in view of the response times when several hundreds of applets are running. One gateway thread should not be tied to one client for a long duration. Neither should the length be too small, as each beginning of a session incurs a fixed overhead of time and resources. Pathway/iTS provides a default value for the number of I/O operations in a session. You can modify this value to tune the application for optimal performance. The value is specified in the sessionlength parameter in the file named app-name_control.html generated during the conversion process. The contents of this file are shown in Example. In this example, the INITPROG of the application is named LOGON, and the name of the control file is LOGON_CONTROL.html. 2-15

42 How to Compile, Build, and Maintain a Pathway/iTS Web Client 12. Maintain the Client Example 2-2. Sample CONTROL.html File <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" content="text/html; charset=iso "> <TITLE> Control Frame </TITLE> <SCRIPT LANGUAGE="JavaScript"> </SCRIPT> </HEAD> <BODY> <applet code="logon_mainapp.class", name="pathwayits", archive="itsjlib.jar" width=10, height=10, MAYSCRIPT> <param name=portnumber value="2500"> <param name=sessionlength value="20"> <param name=userauthenticate value="true"> <param name=getprofile value="true"> <param name=encoding value="8859_1"> </applet> </BODY> </HTML> To modify the number of I/O operations in a session, replace the param sessionlength default value (within the double quotes; 20 in the example) with the desired integer value. 12. Maintain the Client You can maintain the client by modifying either the SCREEN COBOL source files or the Java source files. If both terminal clients and web clients access the converted application, you might want to make future modifications in the SCREEN COBOL files to avoid maintaining two sets of source-code files. On the other hand, if all the clients accessing the application are web clients, modifying the Java source might be a better option. Modify SCREEN COBOL Source Code Enhancements and maintenance changes to the SCREEN COBOL source code fall into one of these categories: Changes to business logic only Changes to business logic and display Changes to display section only Changes to Business Logic Only If only the business logic changes, all the corresponding changes to the web clients are in the Java code. In this case, to generate a newer version of the web client, do these: 1. Reconvert the SCREEN COBOL application. 2-16

43 How to Compile, Build, and Maintain a Pathway/iTS Web Client Modify Java Source Code Only 2. Build the converted application. 3. Discard the generated HTML files and copy the previously customized HTML files to the /usr/test/inventory/bin directory. 4. Deploy and test the application. Changes to Business Logic and Display If the business logic changes and also new display fields are added or existing fields are changed or removed, the corresponding changes for the web clients will be in both the Java code and the HTML files. To generate a newer version of the web clients, do these: Reconvert the SCREEN COBOL application. Build the converted application. Customize the generated HTML files. Deploy and test the application. This situation requires you to reapply the screen customizations that were done before the last deployment. If this kind of change occurs frequently, you might want to limit the amount of customization you do to the screens. Changes to Display Section Only In this scenario, no new fields are added or existing fields deleted. The changes are cosmetic and involve moving fields around or adding new or modifying existing literal text. To generate a newer version of the web clients, the only changes you need to make are to the HTML files. Modify the HTML files as described under 8. Customize the Screens and then deploy and test the modified application. Modify Java Source Code Only To enhance or maintain the Java source files, use your choice of commercially available Java development environments on a platform of your choosing, or use the NonStop Kernel environment. 2-17

44 How to Compile, Build, and Maintain a Pathway/iTS Web Client Modify Java Source Code Only 2-18

45 3 Logon Security and User Profiles This section describes the logon security and user profile features presented to the user whenever a Pathway/iTS web client is first started. It also describes how to set up the user profile database. Logon Security Whenever an end user opens the browser and goes to the URL for a Pathway/iTS web client application, a logon screen may be displayed, if required. This screen requires the user to enter a user name and password and a profile name. The user name and password must be a Guardian user name and password that is valid on the NonStop system where the Pathway/iTS software runs. Pathway/iTS validates the entered user name and password. If the validation fails, the logon screen reappears. This cycle continues until the user gives a valid user name and password combination. The user can get out of this loop by clicking Cancel on the logon screen. User Profiles The logon screen also provides a third field for the user to enter a user profile keyword, which typically identifies a user role such as admin. As the application programmer, you decide whether to use this feature, and if you use it, you customize it to the needs of your application. To set up your application for user profiles, you do these steps as part of the sequence described in Section 2, How to Compile, Build, and Maintain a Pathway/iTS Web Client: Specify the userauthenticate and getprofile parameters in the control file generated by the CONVERT command. If you set the getprofile parameter to false, you do not need to complete the additional user profile configuration steps. If you set the getprofile parameter to true, you must: Use the PROFDBM utility to set special-register values for each user profile you want to define. Add Java code to the applet to use the values of the special registers, in accordance with the needs of your application. Configure the Pathway server that retrieves values from the user profile database. 3-1

46 Logon Security and User Profiles Actions of the Web Client Actions of the Web Client If the logon is successful (that is, if the end user enters a valid user name/password combination), the client application begins to run. However, before the browser displays the starting page of the client application, the application communicates with the host NonStop to retrieve information associated with the profile entered by the end user. This information resides in a database (with the Guardian file name USERPROF) on the NonStop. A Pathway server program supplied as part of Pathway/iTS reads the database and obtain the profile information on behalf of the application. The applet stores this information in various special registers for later use. Then the browser displays the starting page that is, the HTML page corresponding to the INITIAL program unit in the SCREEN COBOL source program and the client application continues to run. If the end user does not enter a profile (that is, if the entered profile is null), the user ID and password are validated, but no values are retrieved or set for any of the special registers. If the end user enters a valid profile, the profile is sent via the web gateway to the server. The server retrieves from the database and returns to the application the values of the seven special registers associated with user profiles (defined in the following subsection), and also returns values for the PW-TCP-PROCESS-NAME, PW-TCP-SYSTEM-NAME, and TERMINAL-FILENAME special registers. (All other SCREEN COBOL special registers have no meaning for web clients; these special registers always have default values in the converted Java code.) If the end user enters an invalid profile (one that is not in the user profile database), a Profile Not Found popup message appears. In this case, no values are returned to the application for the seven special registers associated with user profiles, but values are returned for the other three special registers. Contents of the User Profile Database The USERPROF database is a key-sequenced database with the profile name as the key. Each record of the user profile database consists of the key and seven fields; the values of the seven fields are stored in corresponding special registers in the Java applet. The fields are as: Field Name Type and Length Corresponding Special Register in Applet TERMINAL-PRINTER PIC X(36) TerminalPrinter LOGICAL-TERMINAL-NAME PIC X(16) logicalterminalname USER-PROFILE-1 PIC X(36) userprofile1 USER-PROFILE-2 PIC X(36) userprofile2 USER-PROFILE-3 PIC X(36) userprofile3 USER-PROFILE-4 PIC X(36) userprofile4 USER-PROFILE-5 PIC X(36) userprofile5 3-2

47 Logon Security and User Profiles User Profile Options in the Control File The TERMINAL-PRINTER and LOGICAL-TERMINAL-NAME fields correspond to the SCREEN COBOL special registers of the same names. The five USER-PROFILE-n fields are new special registers in the applet; these fields have no corresponding special registers in SCREEN COBOL programs. Java definitions of the special registers are given under Special-Register Classes on page After the applet has received the values of these special registers from the NonStop host, the applet uses the values during execution, just as a SCREEN COBOL requester does. User Profile Options in the Control File Whether an end user is required to enter a password or a user profile is controlled by the userauthenticate and getprofile parameters in the control file that is generated by the CONVERT command. The encoding parameter specifies which byte-to-string conversion scheme the applet should use. The control file is named appname_control.html or initprog_control.html and contains these: <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" content="text/html; charset=iso "> <TITLE> Control Frame </TITLE> <SCRIPT LANGUAGE="JavaScript"> </SCRIPT> </HEAD> <BODY> <applet code="appname_mainapp.class", name="pathwayits", archive="itsjlib.jar", width=10, height=10, MAYSCRIPT > <param name=portnumber value="port_number" > <param name=sessionlength value="20" > <param name=userauthenticate value="true" > <param name=getprofile value="true" > <param name=encoding value="8859_1" > </applet> </BODY> </HTML> 3-3

48 Logon Security and User Profiles User Profile Options in the Control File Parameter Values userauthenticate=true getprofile = true userauthenticate=true getprofile = false userauthenticate =false getprofile = true userauthenticate =false getprofile = false encoding Specifies that the user must enter a valid Guardian user name, password, and the profile name. The user is authenticated and the profile data from the profile server is retrieved. In addition to the values of the registers in the profile database, values for the PW-TCP-PROCES-SNAME, PW-TCP-SYSTEM-NAME, and TERMINAL-FILENAME special registers are also retrieved from the GATEWAY TERM object. Specifies that the user must enter a valid Guardian user name and password only. The user is authenticated and the values for the PW-TCP-PROCESS-NAME, PW-TCP- SYSTEM-NAME, and TERMINAL-FILENAME special registers are retrieved from the GATEWAY TERM object. The registers of the profile database are set to spaces. Specifies that the user must enter a valid profile name only. No authentication is performed. The values of the registers in the profile database, and the values for the PW-TCP- PROCESS-NAME, PW-TCP-SYSTEM-NAME, and TERMINAL-FILENAME special registers are retrieved from the GATEWAY TERM object. Specifies that no logon screen is displayed. When the user opens the browser and goes to the URL for the Pathway/iTS web application, the application's first screen loads in the browser. However, before the first screen loads, the values for the PW-TCP-PROCES-SNAME, PW-TCP-SYSTEM- NAME, and TERMINAL-FILENAME special registers are retrieved from the GATEWAY TERM object, and the registers of the profile database are set to spaces. Specifies which encoding scheme the applet is to use when converting the byte-format data it receives from the host to a string format; valid for single-byte character sets only. The default value is 8859_1, which supports applications using the US ASCII character set. To support applications that use a European character-set, you must specify the appropriate encoding scheme. To specify the encoding scheme for applications that use a Japanese double-byte Kanji-Katakana character set, use the CHARSET SJIS parameter in the CONVERT command instead of the encoding parameter in the user profile. 3-4

49 Logon Security and User Profiles Use the PROFDBM Utility Use the PROFDBM Utility The user profile database manager (PROFDBM) utility allows you to add, update, search for, and delete records in the USERPROF database. Before using PROFDBM, create the database as: TACL> FUP CREATE USERPROF, TYPE K, REC 248, KEYLEN 16 Note. You must use the name USERPROF for this database; do not use any other name. Then run USERPROF from the TACL prompt: TACL> RUN PROFDBM The starting banner for the user profile database manager appears and prompts you to enter a number corresponding to the action you want to take. Add a Record To add a record to the database: 1. Enter the number When prompted, enter the user profile name and press ENTER. This is the name (maximum 16 characters) that the end user will enter in the logon screen. 3. Then, as prompted, enter the desired special-register values, starting with the value for TERMINAL-PRINTER ( user printer name ). Press ENTER to enter each value and go on to the next one. To enter a null value, just press ENTER. 4. After you have entered all values, 1 RECORD ADDED will be displayed, and PROFDBM prompts you to select another command. Update a Record To update one or more values in an existing record in the database: 1. Enter the number When prompted, enter the user profile name for the record and press ENTER. 3. PROFDBM displays the current value of the first special register and then prompts you to enter a new value. To change the value, enter the desired new value and then press ENTER. To leave that value the same and go to the next value, just press ENTER. Proceed the same way with the other special registers. 4. After you have entered all values, 1 RECORD UPDATED is displayed, and PROFDBM prompts you to select another command. 3-5

50 Logon Security and User Profiles Configure the User Profile Server Class Search for a Record To search for an existing record in the database: 1. Enter the number When prompted, enter the user profile name for the record and press ENTER. 3. PROFDBM displays the current values of all the special registers in that record. A blank after the equals sign for a register indicates a null value. 4. After the values are displayed, PROFDBM prompts you to select another command. Delete a Record To delete a record from the database: 1. Enter the number When prompted, enter the user profile name for the record and press ENTER RECORD DELETED is displayed, and PROFDBM prompts you to select another command. Exit the PROFDBM Utility To exit and return to the TACL prompt, enter any character other than 1, 2, 3, or 4. Configure the User Profile Server Class Pathway/iTS provides a Pathway server program for the server that retrieves values from the user profile database. To configure the server class for this server, add these lines to your Pathway/XM configuration source file or your PATHCOM configuration file: RESET SERVER SET SERVER AUTORESTART 0 SET SERVER DEBUG OFF SET SERVER HIGHPIN OFF SET SERVER LINKDEPTH 1 SET SERVER MAXSERVERS 5 SET SERVER NUMSTATIC 2 SET SERVER PRI 115 SET SERVER PROGRAM PROFSERV SET SERVER SECURITY "N" SET SERVER TMF ON SET SERVER VOLUME $vol.userprof-subvol ADD SERVER USR-PROF-SERVER Note. The name of the server class specified in the ADD SERVER command must be USR-PROF-SERVER. User profiles will be retrieved correctly only if this name is used. 3-6

51 Logon Security and User Profiles Configure the User Profile Server Class Note. For performance tuning in large applications, you might want to change some of the specified configuration values later. 3-7

52 Logon Security and User Profiles Configure the User Profile Server Class 3-8

53 4 User-Written User Conversion Procedures for Web Clients If the SCREEN COBOL application you are converting to a web client includes USER CONVERSION clauses and user-written user conversion procedures, Pathway/iTS supports your existing ptal user conversion routines running on a NonStop. User conversion procedures used with web clients are bound to a special user conversion server class called USER-LIB-SERVER. This server class is then configured to run in the Pathway environment. When user conversion is needed, the converted Java code sends a message to the USER-LIB-SERVER server class, and the appropriate user conversion procedure services the request. The server then sends its the reply to the browser. Because the USER CONVERSION clause is associated with each screen field item, multiple messages to the USER-LIB-SERVER server class would ordinarily be needed if the screen has multiple screen fields with a USER CONVERSION clause specified. Pathway/iTS optimizes the number of messages sent to USER-LIB-SERVER by collecting all user conversion information in a given screen and sending the message once to USER-LIB-SERVER. If a SCREEN COBOL field has a USER CONVERSION clause specified, the ScreenField class in the converted code will have the user conversion attribute set. Whenever the converted Java application needs to communicate with the NonStop (for example, to perform an accept or server-class send operation), the Gateway class packages the information for all the fields needing user conversion and sends one message to USER-LIB-SERVER to perform the user conversion. To use your existing user conversion procedures on the NonStop, you perform two steps: Build your existing user conversion library by binding it with the special user conversion server class Configure the user conversion server class This section explains only what you need to do to use existing user conversion routines that are installed and running correctly. For information on maintaining or modifying your existing user conversion routines, see the Pathway/iTS TCP and Terminal Programming Guide. 4-1

54 User-Written User Conversion Procedures for Web Clients Build Your User Conversion Library Build Your User Conversion Library Assuming that the appropriate SLIB, ILIB, and TLIB files are in place and your user conversion object file has been compiled without errors, build the user conversion library, binding it to the USER-LIB-SERVER server class, by invoking the nld utility from the TACL prompt as: NLD user-conversion-object $volume.zpits.scusero -SET RUNNAMED ON -O scmyuser user-conversion-object is the ptal object file for your user conversion library. $volume is the volume where the installation subvolume ZPATHWAY resides. SCUSERO is the skeleton server-class object file provided by Pathway/iTS for use with the USER-LIB-SERVER server class. scmyuser is the name to be used for the final server-class program file. You will use this name in the SET SERVER PROGRAM attribute when you configure the server class. For example, the folowing command binds the user conversion object file MYCONV with the skeleton object file SCUSERO to generate a program object file named SCUSRCNV for the special server class: TACL> NLD MYCONV $volume.zpits.scusero -SET RUNNAMED ON -O SCUSRCNV Configure the User Conversion Server Class To configure the USER-LIB-SERVER server class, add these lines to your Pathway/XM configuration source file or your PATHCOM configuration file: RESET SERVER SET SERVER AUTORESTART 0 SET SERVER DEBUG OFF SET SERVER HIGHPIN OFF SET SERVER LINKDEPTH 1 SET SERVER MAXSERVERS 5 SET SERVER NUMSTATIC 2 SET SERVER PRI 115 SET SERVER PROGRAM scmyuser SET SERVER SECURITY "N" 4-2

55 User-Written User Conversion Procedures for Web Clients Configure the User Conversion Server Class SET SERVER TMF ON ADD SERVER USER-LIB-SERVER where scmyuser is the program file name you specified when you built your user conversion library. If you are using a PATHCOM configuration file, also include this command in the list of SET SERVER commands: SET SERVER PROCESSTYPE GUARDIAN Note. The name of the server class specified in the ADD SERVER command must be USER-LIB-SERVER. The converted code will work correctly only if this name is used. 4-3

56 User-Written User Conversion Procedures for Web Clients Configure the User Conversion Server Class 4-4

57 5 SCREEN COBOL-to-Web Conversion Mappings This section describes the structure and content of a Pathway/iTS Web client as generated by the converter invoked by the SCUP CONVERT command. It also describes how the elements of the SCREEN COBOL program map into the corresponding elements of the client Java and HTML code. The information in this section can be useful to you if you are modifying portions of the Java or HTML code after conversion. The converter generates a Web client from a SCREEN COBOL application (a set of program units within a SCREEN COBOL object file) as: The Working-Storage Section and Procedure Division components are converted to Java classes, which call and include the necessary classes from the Pathway/iTS Java import package. The Screen Section, Screen entry, and other screen components are converted to HTML pages. The HTML pages include embedded JavaScript code to link them to the Java code. This section includes these topics: Components of the Web Client Main Java Applet Starting Page Initial Page Control Page Java Classes for the Program Units User HTML Pages for the Screen Sections Conversion Mappings Mappings to Java Classes Mappings to User HTML Pages 5-1

58 SCREEN COBOL-to-Web Conversion Mappings Components of the Web Client Components of the Web Client For each SCREEN COBOL application, the converter generates these Java classes and HTML files: Main Java applet Starting page Initial page Control page Java classes for the program units User HTML pages for the Screen Sections Main Java Applet The main applet is contained in a file named initprog_mainapp.java, where initprog is the Program Unit name specified in the INITPROG parameter of the CONVERT command. If the APPNAME parameter is specified in the CONVERT command, then the file name has the format appname.java. The main applet contains the generic applet code, which acts as a container for individual program unit classes. It starts an execution thread for the program units and retains the context across program units during CALL processing. It also provides methods to be called from HTML pages on completion of HTML events. Starting Page The starting page is an HTML page. This is the first application component to be loaded by the client s browser. This page defines a START button. When the user clicks the START button, a new browser window is created and the Initial page is loaded. The name of the HTML file is derived from the user-specified INITPROG or APPPNAME parameter followed by _START; hyphens in the user-specified parameter are replaced with underscores (_) in the generated name. For example, if the name of the INITIAL program unit is MY-SCOBOL-APP, the name of the generated starting page is MY_SCOBOL_APP_START.html. Initial Page The initial page is an HTML page. This is the second application component to be loaded by the client's browser. This page defines the frames on the browser window. The name of the HTML file is derived from the user-specified INITPROG or APPNAME parameter followed by _PAGE1; hyphens in the user-specified parameter are replaced with underscores (_) in the generated name. For example, if the name of the INITIAL program unit is MY-SCOBOL-APP, the name of the generated initial page is MY_SCOBOL_APP_PAGE1.html. 5-2

59 SCREEN COBOL-to-Web Conversion Mappings Control Page Control Page Each converted SCREEN COBOL application is managed through a control page. This HTML page is loaded into a control frame that is created by the starting page. The control page contains a MainApp applet. This page is not visible to the end user. It remains active throughout the execution of the application. The name of the control page is derived from the user-specified INITIAL program unit followed by _CONTROL. For example, if the name of the INITIAL program unit is MY- SCOBOL-APP, the name of the generated control page will be called MY_SCOBOL_APP_CONTROL.html. Java Classes for the Program Units For each program unit, the converter creates a Java class. The name of the Java file for the class is derived from the name of the program unit. The conversion mappings are described under Mappings to Java Classes later in this section. User HTML Pages for the Screen Sections The Screen Section of the SCREEN COBOL program is converted into a set of HTML pages. The conversion mappings are described under Mappings to User HTML Pages later in this section. Conversion Mappings This section describes how the various elements of a SCREEN COBOL program are converted to elements of Java classes or user HTML pages. Mappings to Java Classes For each program unit in the SCREEN COBOL program, the converter creates a Java class. The name of the Java file is derived from the name of the corresponding program unit. The conversion mapping is as: The Working-Storage section is converted to Java classes. Each paragraph in the program unit is converted to methods within the Java class. Input-output elements in the Screen Section are converted to ScreenField objects in the Java class. The Java code files are generated at the location specified by the JAVAVOL parameter in the CONVERT command or at the Java location specified in the configuration file. Conversion of Working-Storage Section Each group-level item in the SCREEN COBOL program unit is represented as a nested class within the Java class. Each such nested class implements the necessary 5-3

60 SCREEN COBOL-to-Web Conversion Mappings Mappings to Java Classes methods defined in the ScobolType base class in the Pathway/iTS Java import package, as described in Section 6, Java Import Package Reference. The name of the nested Java class is derived by prefixing the name of the group item with c_. Each data item in the Working-Storage Section is mapped to a Java object. Hyphens in the SCREEN COBOL names are replaced by underscores in the Java names. An instance of each elementary item is created by using the data-type objects provided in the Java import package. Example 5-1 shows a fragment of SCREEN COBOL Working-Storage code, and Example 5-2 illustrates the corresponding Java code. Example 5-1. SCREEN COBOL Working-Storage Code Fragment 01 WS-NAME. 05 FIRST-NAME PIC X (10). 05 LAST-NAME PIC X (20). Example 5-2. Java Code Resulting From Conversion of Working-Storage Code class c_ws_name extends ScobolType{ public PicX FIRST_NAME; PicX LAST_NAME; // Constructor of the group class public c_ws_name{ FIRST_NAME = new PicX (10); addscoboldata(first_name); } LAST_NAME = new PicX (20); addscoboldata(last_name); } c_ws_name WS_NAME; // Implementation of other methods In Example 5-2, these conversion mappings occur: The group item WS-NAME is converted to the class name c_ws_name. The data items FIRST-NAME and LAST-NAME, of type PIC X (), are converted respectively to the Java objects FIRST_NAME and LAST_NAME, of type PicX. The data items are instantiated in the constructor of c_ws_name and added to the ScobolGroupType class using addscoboldata API. For details about the various library classes used, see Class PicX in Section 6, Java Import Package Reference. 5-4

61 SCREEN COBOL-to-Web Conversion Mappings Mappings to Java Classes Conversion of Paragraphs Each program unit class has a method named execute. This method provides the starting point for executing that class. Each paragraph in the SCREEN COBOL program is converted to a method in the Java code. The names of these methods are derived from the names of the corresponding paragraphs, with hyphens replaced by underscores. In addition to the methods created for each paragraph, the converter creates extra methods in the program unit class to perform tasks such as handling level-88 data items and handling parameter passing between calling and called program units. The names for these methods are generated internally by the converter. The converter generates one or more Java statements for each SCREEN COBOL statement. The converter uses the HTMLHandler class from the Pathway/iTS Java import package to manage the screen-related functions. Similarly, all SCREEN COBOL functions related to the NonStop Kernel, such as the BEGIN-TRANSACTION and SEND statements, are implemented by calling methods in the Gateway class in the Java import package. Example 5-3 shows a sample SCREEN COBOL paragraph, and Example 5-4 illustrates the corresponding Java code. Example 5-3. SCREEN COBOL Paragraph MAIN-PARA. PERFORM PROCESS-PARA. PROCESS-PARA. MOVE SPACES TO FIRST-NAME, LAST-NAME. DISPLAY BASE NAME-SCREEN. Example 5-4. Java Code Resulting From Conversion of SCREEN COBOL Paragraph public void execute () { PROCESS_PARA ("PROCESS-PARA"); } public void PROCESS_PARA (String ret_func) throws ScobolTxnException { FIRST_NAME.setSpaces(); LAST_NAME.setSpaces(); HTMLHandler.displayBase("TEST_SCRN0000.html", "SCRFORM", "UFrame", "Action"); } In Example 5-4, this conversion mappings occur: The statement PERFORM PROCESS-PARA is converted to a call to the method PROCESS_PARA(). 5-5

62 SCREEN COBOL-to-Web Conversion Mappings Mappings to Java Classes In PROCESS-PARA, the MOVE SPACES statement is converted to calls to the setspaces() methods in the FIRST_NAME and LAST_NAME data objects. To display the NAME-SCREEN base screen, the converted code invokes the displaybase method in the HTMLHandler object, passing the name of the related HTML file. Conversion of Screen Fields Each input-output element used in the Screen Section of the SCREEN COBOL program is converted into a ScreenField object in the Java class. The name of this ScreenField object is derived by prefixing the name of the SCREEN COBOL data object with s_. The ScreenField objects in the Java classes are related to their corresponding HTML fields by means of this name attribute. The same name is used to set the name attribute in the corresponding field in the HTML pages. Example 5-5 shows a sample SCREEN COBOL input-output element that is related to a Working-Storage item. Example 5-6 illustrates the corresponding Java code. Example 5-5. SCREEN COBOL Input-Output Element 10 EMP-FIRST-NAME at 10, 20 PIC X(10) using FIRST-NAME. Example 5-6. Java Code Resulting From Conversion of SCREEN COBOL Input- Output Element s_first_name = new ScreenField("s_FIRST_NAME", WS_NAME.FIRST_NAME, WS_NAME.FIRST_NAME 10, 20, XXXXXXXXXX ); The name of the screen field object s_first_name is obtained by prefixing with s_ the name of the FIRST_NAME data object that represents the Working-Storage item FIRST-NAME. Differences in Behavior Between SCREEN COBOL Statements and Their Java Implementations The SCREEN COBOL ACCEPT statement and its Java implementation have somewhat different behavior. In SCREEN COBOL, the displayed value of a screenfield item is not moved into the corresponding working-storage data item unless it has been modified by the user or unless the MDTON (Modified Data Tag On) attribute is specified for that screen-field item. However, in Java the displayed value of the screen-field item is always moved to the corresponding working-storage data item. But if the length of the screen-field value is zero, the corresponding working-storage data item remains unmodified. 5-6

63 SCREEN COBOL-to-Web Conversion Mappings Mappings to User HTML Pages For example, suppose that these declarations appear in the SCREEN COBOL source code: WORKING-STORAGE SECTION. 01 WS-ITEM1 PIC 9(4) VALUE WS-ITEM2 PIC 9(4) VALUE SCREEN SECTION SCR-ITEM1 AT 10,10 PIC 9(4) FROM WS-ITEM1 TO WS-ITEM2. Then this statement will display 4444 on the screen: DISPLAY SCR-ITEM1. This statement will move a value to WS-ITEM2 only when it is changed on the screen: ACCEPT SCR-ITEM1 UNTIL F1. The value of WS-ITEM2 retains its initial value ( 8888) until SCR-ITEM1 is modified on the screen. However, in the Java implementation, the corresponding working-storage item is immediately modified with the displayed value. In the Java implementation of this example, WS-ITEM2 will contain the value Mappings to User HTML Pages The converter converts the Screen Section of the SCREEN COBOL program into a set of HTML pages. Each Base and Overlay screen gets converted into an HTML page. The overlay areas within the Base Screen get converted to IFRAME elements. Each HTML page has one HTML form, named SCRFORM. The names for the screen HTML pages are derived from the names of the program units. The screen files are generated at the location specified by the HTMLVOL parameter in the CONVERT command or at the HTML location specified in the configuration file. Screen fields that are part of the corresponding base and overlay screen are converted to HTML fields of INPUT TYPE. Each HTML field has Name, MaxLength, and Size attributes. The Name attributes associate each HTML field with one ScreenField object in the Java class. During the processing of Accept statements, you can click any of the function buttons that are displayed near the bottom of the browser window. When you finish interacting with the HTML page, click the desired function key button. The Termination Status is updated according to the button that you click. The HTML page also has two JavaScript functions, onloadfunc and onokbtnfunc. These functions are called, respectively, when the page is loaded in UFrame and when you click the OK button. Indirectly these functions call methods of the MainApp applet and resume the execution of the applet. 5-7

64 SCREEN COBOL-to-Web Conversion Mappings Mappings to User HTML Pages Example 5-7 shows a sample Screen Section in a SCREEN COBOL program. Example 5-7. SCREEN COBOL Screen Section 01 NAME-SCREEN BASE SIZE 24, FILLER AT 05, 10 VALUE "ENTER FIRST NAME". 05 EMP-FIRST-NAME AT 05, 30 PIC X(10) USING FIRST-NAME. 05 FILLER AT 10, 10 VALUE "ENTER LAST NAME". 05 EMP-LAST-NAME AT 10, 30 PIC X(30) USING LAST-NAME. 05 OV-AREA AREA AT 12, 10 SIZE 5, 50 Example 5-8 illustrates the corresponding HTML code. Example 5-8. HTML Code Resulting From Conversion of SCREEN COBOL Screen Section <HTML><HEAD><TITLE>Base screen for TESTPROGRAM </TITLE> <STYLE TYPE="text/css"> INPUT {font-family:courier; font-size:12; color:black; border-style:none; border-bottom-style:inset; } BODY {font-family:courier; font-size:12; color:black; } </STYLE> <SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript" SRC="BPathwayiTS.js"> </SCRIPT> </HEAD> <BODY OnLoad= "onloadfunc()" BGColor="WHITE" oncontextmenu="return false"> <FORM NAME="SCRFORM"> <SPAN STYLE="position:absolute; top:98; left:87; ">ENTER FIRSTNAME</SPAN> <INPUT STYLE="position:absolute; top:98; left:267;" type="text" name="s_first_name01" value = "" MAXLENGTH = "010" SIZE = "010" onfocus="savefieldname('s_first_name01')" > <SPAN STYLE="position:absolute; top:208; left:87; ">ENTER LASTNAME</SPAN> <INPUT STYLE="position:absolute; top:208; left:267;" type="text" name="s_last_name01" value = "" MAXLENGTH = "030" SIZE = "030" onfocus="savefieldname('s_last_name01')" > <IFRAME STYLE="position:absolute; top:252; left:87;" id="oa0000" name="oa0000" width="450" height="110" marginwidth="0" frameborder="0" > </IFRAME> </FORM></BODY></HTML> 5-8

65 6 Java Import Package Reference This section defines the public classes and methods in the Pathway/iTS Java import package, pathway.its. This package enables Java-based clients to interact with Pathway applications. The Java import package includes public classes in these categories: Host Connectivity Classes Class Gateway on page 6-2 Class ServerReplyCode on page 6-11 HTML Screen Interaction Classes Class ScreenFieldIdentifier on page 6-13 Class ScreenField on page 6-13 Class ScreenFieldArray on page 6-22 Class ScreenFieldGroup on page 6-30 Class HTMLHandler on page 6-32 Class FunctionKey on page 6-43 Data-Type Classes Class ScobolType on page 6-44 Class ScobolGroupType on page 6-53 Class Pic9 on page 6-60 Class Pic9P on page 6-72 Class Pic9V on page 6-84 Class PicN on page 6-97 Class PicX on page Transform Class Class Transform on page ProgramUnit Class Class ProgramUnit on page Special-Register Classes Class ScobolLib on page Class Cursor on page Exception Classes Class ExitProgramException on page Class ScobolException on page Class ScobolSendException on page Class ScobolTxnException on page Class StopRunException on page Class TransformException on page User Conversion Classes Class UserConversion on page Class ScLibUserConversion on page s of the methods for these classes identify the corresponding statements and data types in the SCREEN COBOL source program. 6-1

66 Host Connectivity Classes Host Connectivity Classes The host connectivity (gateway) classes define the connectivity protocol with the host NonStop and also delegate certain host processing on behalf of the clients. Class Gateway The Gateway class encapsulates the connectivity protocol with the host NonStop and also delegates certain host processing on behalf of the clients. Package pathway.its public pathway.its.gateway This class has these responsibilities: Handles communication with the host NonStop Forwards (delegates) certain processing tasks to the host Examples of delegated tasks are server-class send operations and transaction management (begin transaction, end transaction, and abort transaction). Member Summary Constructor Gateway() 6-2

67 Class Gateway Delegation Methods aborttransaction() acceptdate() acceptday() accepttime() begintransaction() dialogabort() dialogbegin() dialogend() dialogsend() endtransaction() send() Aborts the current transaction on the NonStop; equivalent to the SCREEN COBOL ABORT- TRANSACTION statement. Gets the NonStop date; equivalent to the SCREEN COBOL ACCEPT DATE statement. Gets the NonStop Julian day; equivalent to the SCREEN COBOL ACCEPT DAY statement. Gets the NonStop time; equivalent to the SCREEN COBOL ACCEPT TIME statement. Initiates a transaction on the NonStop; equivalent to the SCREEN COBOL BEGIN-TRANSACTION statement. Aborts the current dialog in the terminal; equivalent to the SCREEN COBOL DIALOG-ABORT statement. Does a server-class dialog begin operation; equivalent to the SCREEN COBOL DIALOG-BEGIN statement. Ends the current dialog in the terminal after the server ends it; equivalent to the SCREEN COBOL DIALOG-END statement. Does a server-class dialog send operation; equivalent to the SCREEN COBOL DIALOG-SEND statement. Ends the current transaction on the NonStop; equivalent to the SCREEN COBOL END-TRANSACTION statement. Does a server-class send operation; equivalent to the SCREEN COBOL SEND statement. Method Constructor public Gateway (String address, int port) Constructor for the Gateway class. 6-3

68 Class Gateway hostaddress port The TCP/IP host name for the NonStop (the n.n.n.n form is also valid) The TCP/IP port number on which the router process is configured Method aborttransaction Purpose Aborts a transaction on the NonStop on behalf of this client. public void aborttransaction () throws ScobolTxnException Equivalent to the SCREEN COBOL ABORT-TRANSACTION statement. Method acceptdate Purpose Gets the date from the NonStop. public void acceptdate (ScobolType date, boolean yyyymmdd) throws ScobolTxnException Equivalent to the SCREEN COBOL ACCEPT DATE statement. date yyyymmdd The object that will receive the date. If true, the date will be returned in yyyymmdd format; otherwise, it will be in yymmdd format. Method acceptday Purpose Gets the Julian day from the NonStop. 6-4

69 Class Gateway public void acceptday (ScobolType day, boolean yyyyddd) throws ScobolTxnException Equivalent to the SCREEN COBOL ACCEPT DAY statement. day yyyyddd The object that will receive the Julian day. If true, the day will be returned in yyyyddd format; otherwise, it will be in yyddd format. Method accepttime Purpose Gets the time from the NonStop. public void accepttime (ScobolType time) throws ScobolTxnException Equivalent to the SCREEN COBOL ACCEPT TIME statement. time The object that will receive the time Method begintransaction Purpose Initiates a transaction on the NonStop on behalf of this client. public void begintransaction () throws ScobolTxnException Equivalent to the SCREEN COBOL BEGIN-TRANSACTION statement. 6-5

70 Class Gateway Side Effects Sets the values of ScobolLib.terminationStatus, ScobolLib.transactionId, and ScobolLib.restartCounter. Method begintransaction (for ON ERROR clause) Purpose Initiates a transaction on the NonStop on behalf of this client. public void begintransaction (String ontxnerrormethod, Object param) throws ScobolTxnException Equivalent to the ON ERROR clause associated with the SCREEN COBOL BEGIN- TRANSACTION statement. The signature of ontxnerrormethod() must be: void ontxnerrormethod (Object arg) ontxnerrormethod param The name of the transaction error-handling method. If null or if the method name is not found, then no method is invoked if a transaction error occurs. The object that will be the parameter to the ontxnerrormethod() call. Side Effects Sets the values of ScobolLib.terminationStatus, ScobolLib.transactionId, and ScobolLib.restartCounter. Method dialogabort Purpose Forcibly aborts the dialog from the client side that was initiated by a previous dialogbegin() call. Public void dialogabort ( ) throws ScobolSendException 6-6

71 Class Gateway Equivalent to the SCREEN COBOL DIALOG-ABORT statement. The Exception class, ScobolSendException, is defined in the pathway.its package. Side Effects Sets the values of ScobolLib.terminationStatus, ScobolLib.terminationSubStatus, and ScobolLib.dialogInfo. Method dialogbegin Purpose Performs a server-class dialog begin operation to the specified server class. Public void dialogbegin (ScobolType() senditems, String serverclassname, String pathmonname, String systemname, ServerReplyCode replymap) throws ScobolTxnException, ScobolSendException Equivalent to the SCREEN COBOL DIALOG-BEGIN statement. The data types ScobolType and ServerReplyCode are already defined in the pathway.its package. Similarly, the Exception classes ScobolTxnException and ScobolSendException are also defined in the pathway.its package. senditems serverclassname An array of data items to be sent to the server. Identifies the server class with which the dialog needs to be established. 6-7

72 Class Gateway pathmonname systemname replymap Identifies the Pathmon process for which the server class is configured. If this value is not specified, the value is NULL. This parameter is optional; if the server class is monitored by the same Pathmon process as the gateway terminal, then this parameter is not necessary. If the server class is remote, you must specify the name of the server class Pathmon process. Identifies the system on which the Pathmon process is running. If this value is not specified, the value is NULL. This parameter is optional; if the server class is monitored by the same Pathmon process as the gateway terminal, then this parameter is not necessary. If the server class is remote, then you must specify the name of the system on which the server class Pathmon process is running. Object encapsulating the REPLY CODE and YIELDS clause values of the DIALOG-BEGIN statement. Side Effects Sets the values of ScobolLib.terminationStatus, ScobolLib.terminationSubStatus, and ScobolLib.dialogInfo. Method dialogend Purpose Ends the dialog from the client side that was initiated by a previous dialogbegin() call. Public void dialogend ( ) throws ScobolSendException Equivalent to the SCREEN COBOL DIALOG-END statement. The Exception class, ScobolSendException, is defined in the pathway.its package. Side Effects Sets the value of ScobolLib.terminationStatus, and ScobolLib.dialogInfo. 6-8

73 Class Gateway Method dialogsend Purpose Continues to perform the send operation to a server class identified by a previously initiated dialogbegin () call. Public void dialogsend (ScobolType() senditems, ServerReplyCode replymap) throws ScobolTxnException, ScobolSendException Equivalent to the SCREEN COBOL DIALOG-SEND statement. Note that ScobolType and ServerReplyCode data types are already defined in pathway.its package. Similarly, ScobolTxnException and ScobolSendException are Exception classes already defined in pathway.its package. senditems replymap An array of data items to be sent to the server. Object encapsulating the REPLY CODE and YIELDS clause values of the DIALOG-SEND statement. Side Effects Sets the values of ScobolLib.terminationStatus, ScobolLib.terminationSubStatus, and ScobolLib.dialogInfo. Method endtransaction Purpose Ends a transaction on the NonStop on behalf of this client. public void endtransaction () throws ScobolTxnException Equivalent to the SCREEN COBOL END-TRANSACTION statement. 6-9

74 Class Gateway Method send Purpose Performs a server-class send operation to the specified server class. public void send (ScobolType[] senditems, String serverclassname, String pathmonname, String systemname, ServerReplyCode replymap) throws ScobolTxnException, ScobolSendException Equivalent to the SCREEN COBOL SEND statement. senditems serverclassname pathmonname systemname replymap An array of data items to be sent to the server Identifies the server class for which the message is intended Identifies the Pathmon process for which the server class is configured. If this value is not specified, the value is null. This parameter is optional; if the server class is monitored by the same Pathmon process as the gateway terminal, then this parameter is not necessary. If the server class is remote, you must specify the name of the server class Pathmon process. Identifies the system on which the Pathmon process is running. If this value is not specified, the value is null. This parameter is optional; if the server class is monitored by the same Pathmon process as the gateway terminal, then this parameter is not necessary. If the server class is remote, you must specify the name of the system in which the server class Pathmon process is running. Object encapsulating the REPLY CODE and YIELDS clause values of the SEND statement Side Effects Sets the values of ScobolLib.terminationStatus and ScobolLib.terminationSubStatus. 6-10

75 Class ServerReplyCode Class ServerReplyCode The ServerReplyCode class allows the user to specify the server reply code in a SCREEN COBOL SEND statement. The ServerReplyCode object is a required parameter in the Gateway.send method. Package pathway.its public pathway.its.serverreplycode This class contains methods that allow the user to specify a server reply code. Member Summary Constructor ServerReplyCode() Methods addreplycode() Equivalent to the YIELDS clause of the SCREEN COBOL SEND statement Method Constructor public ServerReplyCode () Constructor for the ServerReplyCode class. Method addreplycode (Single Data Identifier) public void addreplycode (Integer replycode, int terminationstatus, ScobolType identifier) 6-11

76 Class ServerReplyCode Equivalent to the REPLY CODE reply-code-value YIELDS identifier-2 clause of the SCREEN COBOL SEND statement. This method is called once for each reply-code-value in the YIELDS clause. replycode terminationstatus identifier Equivalent to reply-code-value in the YIELDS clause of the SEND statement. If null, this is the same as REPLY CODE OTHER. The value to which ScobolLib.terminationStatus is to be set when the server s reply code matches the value of replycode. Equivalent to identifier-2 in the YIELDS clause. Side Effects Sets the value of ScobolLib.terminationStatus. Method addreplycode (Multiple Data Identifiers) public void addreplycode (Integer replycode, int terminationstatus, ScobolType[] identifier) Equivalent to the REPLY CODE reply-code-value YIELDS {identifier-2}... clause of the SCREEN COBOL SEND statement. This method is called once for each reply-code-value in the YIELDS clause. 6-12

77 HTML Screen Interaction Classes replycode terminationstatus identifier Equivalent to reply-code-value in the YIELDS clause of the SEND statement. If null, this is the same as REPLY CODE OTHER. The value to which ScobolLib.terminationStatus is to be set when the server s reply code matches the value of replycode. An array of identifier values; equivalent to identifier-2 in the YIELDS clause. Side Effects Sets the value of ScobolLib.terminationStatus. HTML Screen Interaction Classes The HTML screen interaction classes define the attributes and structures associated with SCREEN COBOL screen fields and the SCREEN COBOL statements associated with displaying and accepting screens. Class ScreenFieldIdentifier The ScreenFieldIdentifier class is an interface class for the ScreenField, ScreenFieldArray, and ScreenFieldGroup classes. Package pathway.its public interface ScreenFieldIdentifier This interface class allows the API to treat objects of the classes ScreenField, ScreenFieldArray, and ScreenFieldGroup polymorphically. Class ScreenField The ScreenField class is the Java representation of the SCREEN COBOL screen fields. 6-13

78 Class ScreenField Package pathway.its public pathway.its.screenfield implements ScreenFieldIdentifier This class provides methods to set the various attributes associated with a screen field. Member Summary Data Members public static final int ATTR_BELL public static final int ATTR_BLINK public static final int ATTR_DEFAULT public static final int ATTR_HIDDEN public static final int ATTR_MDTON public static final int ATTR_OUTLINE public static final int ATTR_PROTECTED public static final int ATTR_RVIDEO public static final int ATTR_UNDERLINE public static final int CLEAR public static final int SKIP public static final int UPSHIFT_INPUT public static final int UPSHIFT_INPUTOUTPUT public static final int UPSHIFT_OUTPUT Constructor ScreenField() 6-14

79 Class ScreenField Methods setadvisory() setcontrolledby() setconvertblanks() setfill() setinitattribute() setlength() setmustbe() setshadowed() setupshift() setuserconversion() setvalue() setwhenabsent() setwhenblank() Equivalent to the ADVISORY field-characteristic clause Equivalent to the CONTROLLED [BY] fieldcharacteristic clause Equivalent to the CONVERT BLANKS fieldcharacteristic clause Equivalent to the FILL field-characteristic clause Sets the initial attributes of a screen field Equivalent to the LENGTH [MUST BE] fieldcharacteristic clause Equivalent to the MUST [BE] field-characteristic clause Equivalent to the SHADOWED [BY] fieldcharacteristic clause Equivalent to the UPSHIFT field-characteristic clause Equivalent to the USER [CONVERSION] fieldcharacteristic clause Equivalent to the VALUE field-characteristic clause Equivalent to the WHEN ABSENT field-characteristic clause Equivalent to the WHEN BLANK field-characteristic clause Method Constructor public ScreenField (String name, ScobolType from, ScobolType to, int row, int col, String validationpic) Equivalent to this SCREEN COBOL data description entry: screen-field-name [AT] line-spec, column-spec TO data-name FROM data-name PIC [IS] character-string 6-15

80 Class ScreenField name from to row col validationpic The value of the name attribute of the HTML control element. For example, for <INPUT TYPE="TEXT" NAME="WS-ITEM1">, name = new String ("WS-ITEM1"). Corresponds to the data item in the FROM clause in the SCREEN COBOL field description. This parameter can be null. Corresponds to the data item in the TO clause in the SCREEN COBOL field description. This parameter can be null. Corresponds to the numeric literal line-spec in the AT clause in the SCREEN COBOL field description. Corresponds to the numeric literal column-spec in the AT clause in the SCREEN COBOL field description. Corresponds to the string literal in the PIC clause in the SCREEN COBOL field description. Method setadvisory public void setadvisory() Equivalent to the ADVISORY field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string ADVISORY Method setcontrolledby public void setcontrolledby (ScobolType controlobject) Equivalent to the CONTROLLED [BY] field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string CONTROLLED [BY] data-name

81 Class ScreenField controlobject Corresponds to data-name-1 in the CONTROLLED [BY] clause Method setconvertblanks public void setconvertblanks() Equivalent to the CONVERT BLANKS field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string USER [CONVERSION] numeric-literal CONVERT BLANKS Method setfill public void setfill (char fillchar) Equivalent to the FILL field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string FILL nonnumeric-literal fillchar Corresponds to the one-character nonnumeric-literal in the FILL clause Method setinitattribute public void setinitattribute (int attribute) 6-17

82 Class ScreenField This method sets the initial attributes of a screen field. For example, the SCREEN COBOL data description entry screen-field-name [AT] line-spec, column-spec PIC [IS] character-string PROTECTED, MDTON has this Java equivalent: screenfieldobject.setinitattribute (ScreenField.ATTR_PROTECTED ScreenField.ATTR_MDTON) attribute Represents the initial screen-field attributes to be set at run time, constructed by bitwise ORing of the attribute literals to be set Method setlength public void setlength (int[] lengtharray) Equivalent to the LENGTH [MUST BE] field-characteristic clause. For example, the SCREEN COBOL data description entry screen-field-name [AT] line-spec, column-spec PIC [IS] character-string LENGTH 6 THRU 8, 10 has this Java equivalent: int[] lengtharray = {6,8,10,10}; screenfieldobject.setlength (lengtharray); 6-18

83 Class ScreenField lengtharray Corresponds to the literal-n values in the LENGTH [MUST BE] clause. The array must be of the form {minlen1,maxlen1,minlen2, maxlen2,...}. Each maxlenx must be >= minlenx. If a value is to be discrete rather than a range, then set minlenx and maxlenx to the same discrete value. Method setmustbe public void setmustbe (String[] valuemustbe) Equivalent to the MUST [BE] field-characteristic clause. For example, the SCREEN COBOL data description entry screen-field-name [AT] line-spec, column-spec PIC [IS] character-string MUST BE 10 THRU 20, HELLO has this Java equivalent: String[] valuemustbe = {"10","20","HELLO","HELLO"}; screenfieldobject.setmustbe (valuemustbe); valuemustbe Corresponds to the literal-n values in the MUST [BE] clause. The array must be of the form {minval1,maxval1,minval2, maxval2,...}. Each maxvalx must be >= minvalx. If a value is to be discrete rather than a range, then set minvalx and maxvalx to the same discrete value. Method setshadowed public void setshadowed (ScobolType shadowbyte, boolean isreturnbitalwaysset) Equivalent to the SHADOWED [BY] field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string SHADOWED [BY] data-name

84 Class ScreenField shadowbyte isreturnbitalwaysset Corresponds to data-name-1 in the SHADOWED [BY] clause Must be TRUE if the modified data tag (MDT) for the screen field is set to ON; otherwise, must be FALSE Method setupshift public void setupshift (int i) Equivalent to the UPSHIFT field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string UPSHIFT { INPUT OUTPUT INPUT-OUTPUT } i Method setuserconversion public void setuserconversion (int usercode, Object contextobject) Must be ScreenField.UPSHIFT_INPUT, ScreenField.UPSHIFT_OUTPUT, or ScreenField.UPSHIFT_INPUTOUTPUT; otherwise, the parameter is ignored Equivalent to the USER [CONVERSION] field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string USER [CONVERSION] numeric-literal 6-20

85 Class ScreenField usercode contextobject Corresponds to the routine number (numeric-literal) in the USER [CONVERSION] clause. A user-defined object returned by calling screenfieldobject.getcontextobject(). This parameter can be null. Method setvalue public void setvalue (String initialvalue) Equivalent to the VALUE field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string VALUE nonnumeric-literal initialvalue Corresponds to nonnumeric-literal in the VALUE clause Method setwhenabsent public void setwhenabsent (int whenabsent) Equivalent to the WHEN ABSENT field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string USING data-name-1 WHEN ABSENT { CLEAR SKIP } whenabsent Must be either CLEAR or SKIP Method setwhenblank public void setwhenblank (int whenblank) 6-21

86 Class ScreenFieldArray Equivalent to the WHEN BLANK field-characteristic clause, as in: screen-field-name [AT] line-spec, column-spec PIC [IS] character-string USING data-name-1 WHEN BLANK { CLEAR SKIP } whenblank Must be either CLEAR or SKIP Class ScreenFieldArray The ScreenFieldArray class is the Java representation of the OCCURS clause for screen fields. Package pathway.its public pathway.its.screenfieldarray implements ScreenFieldIdentifier This class implements the equivalent of the OCCURS field-characteristic clause. It is essentially a container for all the screen field objects that are part of an OCCURS clause. 6-22

87 Class ScreenFieldArray Member Summary Data Members public static final int ATTR_BELL public static final int ATTR_BLINK public static final int ATTR_DEFAULT public static final int ATTR_HIDDEN public static final int ATTR_MDTON public static final int ATTR_OUTLINE public static final int ATTR_PROTECTED public static final int ATTR_RVIDEO public static final int ATTR_UNDERLINE public static final int CLEAR public static final int SKIP public static final int UPSHIFT_INPUT public static final int UPSHIFT_INPUTOUTPUT public static final int UPSHIFT_OUTPUT Constructor ScreenFieldArray() 6-23

88 Class ScreenFieldArray Methods addfield() setadvisory() setcontrolledby() setconvertblanks() setfill() setinitattribute() setlength() setmustbe() setshadowed() setupshift() setuserconversion() setvalue() setwhenabsent() setwhenblank() Adds a screen field to the array Equivalent to the ADVISORY field-characteristic clause Equivalent to the CONTROLLED [BY] fieldcharacteristic clause Equivalent to the CONVERT BLANKS fieldcharacteristic clause Equivalent to the FILL field-characteristic clause Sets the initial attributes of the screen fields Equivalent to the LENGTH [MUST BE] fieldcharacteristic clause Equivalent to the MUST [BE] field-characteristic clause Equivalent to the SHADOWED [BY] fieldcharacteristic clause Equivalent to the UPSHIFT field-characteristic clause Equivalent to the USER [CONVERSION] fieldcharacteristic clause Equivalent to the VALUE field-characteristic clause Equivalent to the WHEN ABSENT field-characteristic clause Equivalent to the WHEN BLANK field-characteristic clause Method Constructor public ScreenFieldArray (long maxoccurs, Pic9 dependingon) Constructs the equivalent of an OCCURS field-characteristic clause. 6-24

89 Class ScreenFieldArray maxoccurs dependingon The value of columns-literal* lines-literal in the fieldcharacteristic clause OCCURS IN columns-literal COLUMNS ON lines-literal LINES. Corresponds to data-name-1 in the field-characteristic clause OCCURS IN columns-literal COLUMNS ON lines-literal LINES DEPENDING [ON] data-name-1. This parameter can be null. Method addfield public void addfield (ScreenField field) This method is invoked once for each ScreenField object in the OCCURS clause. field A ScreenField object that is part of the OCCURS clause Method setadvisory public void setadvisory() Equivalent to the ADVISORY field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES ADVISORY Method setcontrolledby public void setcontrolledby (ScobolType controlobject) Equivalent to the CONTROLLED [BY] field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES CONTROLLED [BY] data-name

90 Class ScreenFieldArray controlobject Corresponds to data-name-1 in the CONTROLLED [BY] clause Method setconvertblanks public void setconvertblanks() Equivalent to the CONVERT BLANKS field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES USER [CONVERSION] numeric-literal CONVERT BLANKS Method setfill public void setfill (char fillchar) Equivalent to the FILL field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES FILL nonnumeric-literal fillchar Corresponds to the one-character nonnumeric-literal in the FILL clause Method setinitattribute public void setinitattribute (int attribute) This method sets the initial attributes of a screen field. For example, the SCREEN COBOL clause OCCURS IN columns-literal COLUMNS ON lines-literal LINES PROTECTED, MDTON 6-26

91 Class ScreenFieldArray has this Java equivalent: screenfieldarrayobject.setinitattribute (ScreenFieldArray.ATTR_PROTECTED ScreenFieldArray.ATTR_MDTON) attribute Represents the initial screen-field attributes to be set at run time, constructed by bitwise ORing of the attribute literals to be set Method setlength public void setlength (int[] lengtharray) Equivalent to the LENGTH [MUST BE] field-characteristic clause. For example, the SCREEN COBOL clause OCCURS IN columns-literal COLUMNS ON lines-literal LINES LENGTH 6 THRU 8, 10 has this Java equivalent: int[] lengtharray = {6,8,10,10}; screenfieldarrayobject.setlength (lengtharray); lengtharray Corresponds to the literal-n values in the LENGTH [MUST BE] clause. The array must be of the form {minlen1,maxlen1,minlen2, maxlen2,...}. Each maxlenx must be >= minlenx. If a value is to be discrete rather than a range, then set minlenx and maxlenx to the same discrete value. Method setmustbe public void setmustbe (String[] valuemustbe) 6-27

92 Class ScreenFieldArray Equivalent to the MUST [BE] field-characteristic clause. For example, the SCREEN COBOL clause OCCURS IN columns-literal COLUMNS ON lines-literal LINES MUST BE 10 THRU 20, HELLO has this Java equivalent: String[] valuemustbe = {"10","20","HELLO","HELLO"}; screenfieldarrayobject.setmustbe (valuemustbe); valuemustbe Corresponds to the literal-n values in the MUST [BE] clause. The array must be of the form {minval1,maxval1,minval2, maxval2,...}. Each maxvalx must be >= minvalx. If a value is to be discrete rather than a range, then set minvalx and maxvalx to the same discrete value. Method setshadowed public void setshadowed (ScobolType shadowbyte, boolean isreturnbitalwaysset) Equivalent to the SHADOWED [BY] field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES SHADOWED [BY] data-name-1 shadowbyte isreturnbitalwaysset Corresponds to data-name-1 in the SHADOWED [BY] clause Must be TRUE if the modified data tag (MDT) for the screen field is set to ON; otherwise, must be FALSE Method setupshift public void setupshift (int i) 6-28

93 Class ScreenFieldArray Equivalent to the UPSHIFT field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES UPSHIFT { INPUT OUTPUT INPUT-OUTPUT } i Method setuserconversion public void setuserconversion (int usercode, Object contextobject) Must be ScreenFieldArray.UPSHIFT_INPUT, ScreenFieldArray.UPSHIFT_OUTPUT, or ScreenFieldArray.UPSHIFT_INPUTOUTPUT; otherwise, the parameter is ignored Equivalent to the USER [CONVERSION] field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES USER [CONVERSION] numeric-literal usercode contextobject Corresponds to the routine number (numeric-literal) in the USER [CONVERSION] clause. A user-defined object returned by calling screenfieldobject.getcontextobject(). This parameter can be null. Method setvalue public void setvalue (String initialvalue) Equivalent to the VALUE field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES VALUE nonnumeric-literal initialvalue Corresponds to nonnumeric-literal in the VALUE clause 6-29

94 Class ScreenFieldGroup Method setwhenabsent public void setwhenabsent (int whenabsent) Equivalent to the WHEN ABSENT field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES USING data-name-1 WHEN ABSENT { CLEAR SKIP } whenabsent Must be either CLEAR or SKIP Method setwhenblank public void setwhenblank (int whenblank) Equivalent to the WHEN BLANK field-characteristic clause, as in: OCCURS IN columns-literal COLUMNS ON lines-literal LINES USING data-name-1 WHEN BLANK { CLEAR SKIP } whenblank Must be either CLEAR or SKIP Class ScreenFieldGroup The ScreenFieldGroup class is the Java representation of a SCREEN COBOL screen group. Package pathway.its public pathway.its.screenfieldgroup implements ScreenFieldIdentifier 6-30

95 Class ScreenFieldGroup This class implements the equivalent of a SCREEN COBOL screen group. It is essentially a container for all the screen field objects that are part of a screen group. Member Summary Constructor ScreenFieldGroup() Methods addfield() addfieldarray() Adds a screen field to this object Adds a screen field array (that is, a screen field associated with an OCCURS clause) to this object Method Constructor public ScreenFieldGroup () Constructs the equivalent of a SCREEN COBOL screen group. Method addfield public void addfield (ScreenField field) Adds a screen field to this object. field A previously instantiated ScreenField object that is part of this ScreenFieldGroup object Method addfieldarray public void addfieldarray (ScreenFieldArray fieldarray) 6-31

96 Class HTMLHandler Adds a screen field array to this object. field A previously instantiated ScreenFieldArray object (that is, a screen field associated with an OCCURS clause) that is part of this ScreenFieldGroup object Class HTMLHandler The HTMLHandler class encapsulates the SCREEN COBOL statements associated with displaying and accepting SCREEN COBOL screens. Examples of such statements are DISPLAY BASE, DISPLAY, and ACCEPT. Package pathway.its public pathway.its.htmlhandler This class provides methods for rendering an HTML page as well as setting HTML field values and getting HTML field values from corresponding working-storage items. Member Summary Constructor HTMLHandler() 6-32

97 Class HTMLHandler UI Interaction Methods accept() clearinput() display() displaybase() displayoverlay() displayoverlayspaces() resetattribute() resetdata() setnewcursor() turn() Equivalent to the SCREEN COBOL ACCEPT statement Equivalent to the SCREEN COBOL CLEAR INPUT statement Equivalent to the SCREEN COBOL DISPLAY statement Equivalent to the SCREEN COBOL DISPLAY BASE statement Equivalent to the SCREEN COBOL DISPLAY OVERLAY statement Equivalent to the SCREEN COBOL DISPLAY OVERLAY SPACES AT statement Equivalent to the SCREEN COBOL RESET ATTR statement Equivalent to the SCREEN COBOL RESET DATA statement Equivalent to the SCREEN COBOL SET NEW- CURSOR statement Equivalent to the SCREEN COBOL TURN statement Method Constructor public HTMLHandler (Applet anapplet) Constructor for the HTML Handler class. anapplet The instance of the applet object that is present in the control frame Method accept Purpose Gets the HTML field values and updates the corresponding working storage for the respective ScreenField objects. 6-33

98 Class HTMLHandler public void accept (ScreenFieldIdentifier[] fieldids, FunctionKey[] untilfunckeys, FunctionKey[] escfunckeys public void accept (ScreenFieldIdentifier[] fieldids, FunctionKey[] untilfunckeys, FunctionKey[] escfunckeys, int timeout, int timeoutterminationstatus) The first form of the syntax is equivalent to the SCREEN COBOL statement: ACCEPT {screen-identifier}... UNTIL comp-condition-1 ESCAPE [ON] comp-condition-2 where comp-condition-2 has no timeout value. The second form is equivalent to the SCREEN COBOL statement: ACCEPT {screen-identifier}... UNTIL comp-condition-1 ESCAPE [ON] comp-condition-2 where comp-condition-2 specifies a timeout value. fieldids untilfunckeys escfunckeys timeout timeoutterminationstatus An array of ScreenIdentifier objects; corresponds to screen-identifiers in the ACCEPT statement An array of FunctionKey objects corresponding to the function keys associated with the UNTIL clause of the ACCEPT statement An array of FunctionKey objects corresponding to the function keys associated with the ESCAPE clause of the ACCEPT statement The value corresponding to the TIMEOUT clause of the ACCEPT statement The value to which ScobolLib.terminationStatus is set in the event of a timeout 6-34

99 Class HTMLHandler Method clearinput Purpose Clears the HTML field values. public void clearinput() Equivalent to the SCREEN COBOL CLEAR INPUT statement. Method display Purpose Displays the corresponding HTML field values for ScreenField objects. public void display (ScreenFieldIdentifier[] fieldids) public void display (ScreenFieldIdentifier[] fieldids, boolean istemporary, String literal, Pic9 dependingon) public void display (ScreenFieldIdentifier[] fieldids, boolean istemporary, String literal, boolean isshadowed) The first form of the syntax is equivalent to the SCREEN COBOL statement: DISPLAY {screen-identifier},... The second form is equivalent to the SCREEN COBOL statement: DISPLAY [TEMP] [nonnumeric-literal IN] {screen-identifier},... [DEPENDING [ON] identifier] The third form is equivalent to the SCREEN COBOL statement: DISPLAY [TEMP] [nonnumeric-literal IN] {screen-identifier},... [SHADOWED] 6-35

100 Class HTMLHandler fieldids istemporary literal dependingon isshadowed An array of ScreenIdentifier objects; corresponds to screen-identifiers in the DISPLAY statement If true, corresponds to the presence (and if false, to the absence) of the TEMP clause of the DISPLAY statement If non-null, corresponds to the presence (and if null, to the absence) of the IN clause of the DISPLAY statement If non-null, corresponds to the presence (and if null, to the absence) of the DEPENDING [ON] clause of the DISPLAY statement If true, corresponds to the presence (and if false, to the absence) of the SHADOWED clause of the DISPLAY statement Method displaybase Purpose Sets the context of the HTML page on which subsequent methods such as display() and accept() work. public void displaybase (String htmlfilename, String formname, String framename, String selectctrlname) This method is equivalent to the SCREEN COBOL statement DISPLAY BASE basescreen-name. It must be called before calling display(). This method does not display an HTML page; the actual display is done during the call to display(). 6-36

101 Class HTMLHandler htmlfilename formname framename selectctrlname The name of the HTML file to be displayed; for example, page.html. It is assumed that this HTML file is in the same directory as the HTML file containing the applet (cframe.html in the example). The value of the NAME attribute in the <FORM> tag present in the page.html document. The value of the NAME attribute in the <FRAME> tag present in the frameset.html document. The value of the NAME attribute in the <SELECT> tag present in the page.html document. Example For example, suppose frameset.html is the frameset document and page.html is the page that must be displayed in the frame named UFRAME. Then this HTML code would be present in frameset.html: <FRAMESET COLS="*,*"> <FRAME SRC="cframe.html", NAME="CFrame"> <FRAME SRC="page.html", NAME="UFrame"> </FRAMESET> And this code would be present in page.html: <FORM NAME="THEFORM"> <SELECT NAME="SELECTCTRL"> <OPTION> </SELECT> </FORM> This call would invoke the method for this example: displaybase ("page.html", "THEFORM", "UFRAME", "SELECTCTRL"); Method displayoverlay Purpose Sets the context of the HTML page on which subsequent methods such as display() and accept() work. void displayoverlay (String overlayscreenname, String overlayarea, String screenidentifier, int rowoffset, int coloffset) 6-37

102 Class HTMLHandler This method is equivalent to the SCREEN COBOL statement DISPLAY OVERLAY overlay-area-name. It must be called before calling display(). This method does not display an HTML page; the actual display is done during the call to display(). overlayscreenname overlayarea screenidentifier rowoffset coloffset The name of the HTML file that contains the overlay screen to be displayed The name of the Overlay Area on the screen. Identifiers assigned to the overlay screens. The row number of the Overlay Area at which the overlay screen is to be displayed. The column number of the Overlay Area at which the overlay screen is to be displayed. Example displayoverlay("scrn0000.html, ovarea, ov0000,5,34"); displayoverlay( LOGON_SCRN0001.html, OA0000, OVLAYSCR01,5,1); Method displayoverlayspaces Purpose Implements the SCREEN COBOL statement DISPLAY OVERLAY SPACES AT void displayoverlayspaces (String overlayarea) This method is equivalent to the SCREEN COBOL statement DISPLAY OVERLAY SPACES AT overlay-area-name, which clears an overlay screen by writing spaces to it. This method does not display an HTML page; the actual display is done during the call to display(). overlayarea The name of the Overlay Area on the screen. Example displayoverlayspaces("ovarea"); displayoverlayspaces( OA0000 ); 6-38

103 Class HTMLHandler Method resetattribute Purpose Resets the HTML field attributes for a selected number of fields. public void resetattribute (ScreenFieldIdentifier[] fieldids, boolean istemporary) public void resetattribute (ScreenFieldIdentifier[] fieldids, boolean istemporary, ScobolType dependingon) public void resetattribute (ScreenFieldIdentifier[] fieldids, boolean istemporary, boolean isshadowed) The first form of the syntax is equivalent to the SCREEN COBOL statement: RESET ATTR {screen-identifier},... The second form is equivalent to the SCREEN COBOL statement: RESET [TEMP] ATTR {screen-identifier},... [DEPENDING [ON]] identifier The third form is equivalent to the SCREEN COBOL statement: RESET [TEMP] ATTR {screen-identifier},... [SHADOWED] 6-39

104 Class HTMLHandler fieldids istemporary dependingon isshadowed An array of ScreenIdentifier objects; corresponds to screen-identifiers in the RESET ATTR statement If true, corresponds to the presence (and if false, to the absence) of the TEMP clause of the RESET ATTR statement If non-null, corresponds to the presence (and if null, to the absence) of the DEPENDING [ON] clause of the RESET ATTR statement If true, corresponds to the presence (and if false, to the absence) of the SHADOWED clause of the RESET ATTR statement Method resetdata Purpose Clears the corresponding HTML field values for a selected number of fields. public void resetdata (ScreenFieldIdentifier[] fieldids, boolean istemporary) public void resetdata (ScreenFieldIdentifier[] fieldids, boolean istemporary, ScobolType dependingon) public void resetdata (ScreenFieldIdentifier[] fieldids, boolean istemporary, boolean isshadowed) The first form of the syntax is equivalent to the SCREEN COBOL statement: RESET DATA {screen-identifier},... The second form is equivalent to the SCREEN COBOL statement: RESET [TEMP] DATA {screen-identifier},... [DEPENDING [ON]] identifier The third form is equivalent to the SCREEN COBOL statement: RESET [TEMP] DATA {screen-identifier},... [SHADOWED] 6-40

105 Class HTMLHandler fieldids istemporary dependingon isshadowed An array of ScreenIdentifier objects; corresponds to screen-identifiers in the RESET DATA statement If true, corresponds to the presence (and if false, to the absence) of the TEMP clause of the RESET DATA statement If non-null, corresponds to the presence (and if null, to the absence) of the DEPENDING [ON] clause of the RESET DATA statement If true, corresponds to the presence (and if false, to the absence) of the SHADOWED clause of the RESET DATA statement Method setnewcursor Purpose Stores the position of the indicated HTML field in ScobolLib.newCursor. (The position is the row and column number as specified in the constructor of the ScreenField object.) public void setnewcursor (ScreenFieldIdentifier[] fieldids) public void setnewcursor (ScreenFieldIdentifier[] fieldids, ScobolType dependingon) public void setnewcursor (ScreenFieldIdentifier[] fieldids, boolean isshadowed) The first form of the syntax is equivalent to the SCREEN COBOL statement: SET NEW-CURSOR AT {screen-identifier},... The second form is equivalent to the SCREEN COBOL statement: SET NEW-CURSOR AT {screen-identifier},... [DEPENDING [ON]] identifier The third form is equivalent to the SCREEN COBOL statement: SET NEW-CURSOR AT {screen-identifier},... [SHADOWED] 6-41

106 Class HTMLHandler fieldids dependingon isshadowed An array of ScreenIdentifier objects; corresponds to screen-identifiers in the SET NEW-CURSOR statement If non-null, corresponds to the presence (and if null, to the absence) of the DEPENDING [ON] clause of the SET NEW-CURSOR statement If true, corresponds to the presence (and if false, to the absence) of the SHADOWED clause of the SET NEW- CURSOR statement Method turn Purpose Changes the display attributes of a selected number of HTML fields. public void turn (ScreenFieldIdentifier[] fieldids, boolean istemporary, int attrflag) public void turn (ScreenFieldIdentifier[] fieldids, boolean istemporary, int attrflag, ScobolType dependingon) public void turn (ScreenFieldIdentifier[] fieldids, boolean istemporary, int attrflag, boolean isshadowed) The first form of the syntax is equivalent to the SCREEN COBOL statement: TURN [TEMP] {...} IN {screen-identifier},... The second form is equivalent to the SCREEN COBOL statement: TURN [TEMP] {...} IN {screen-identifier},... [DEPENDING [ON]] identifier The third form is equivalent to the SCREEN COBOL statement: TURN [TEMP] {...} IN {screen-identifier},... [SHADOWED] 6-42

107 Class FunctionKey fieldids istemporary attrflag dependingon isshadowed An array of ScreenIdentifier objects; corresponds to screen-identifiers in the TURN statement If true, corresponds to the presence (and if false, to the absence) of the TEMP clause of the TURN statement If 0, implies the DYNAMIC clause of the TURN statement; otherwise, the value is the ORed combination of attributes from the DisplayAttribute class If non-null, corresponds to the presence (and if null, to the absence) of the DEPENDING [ON] clause of the TURN statement If true, corresponds to the presence (and if false, to the absence) of the SHADOWED clause of the TURN statement Class FunctionKey The FunctionKey class is the Java representation of the function keys in SCREEN COBOL programs. Package pathway.its public pathway.its.functionkey This class encapsulates the SCREEN COBOL function key settings. Member Summary Constructor FunctionKey() Method Constructor public FunctionKey (String keylabel, int terminationstatusvalue) 6-43

108 Data-Type Classes Constructor for the FunctionKey class. keylabel terminationstatusvalue The literal that appears in the function-key dropdown box on the HTML page The value to which ScobolLib.terminationStatus is to be set if this function key is selected during accept processing Data-Type Classes The SCREEN COBOL data-type classes encapsulate the storage and casting rules associated with SCREEN COBOL alphanumeric (PIC X), numeric integer (PIC 9), and numeric non-integer (PIC 9V and PIC 9P) data types. Class ScobolType Package pathway.its public abstract pathway.its.scoboltype This abstract class is the super-class for all SCREEN COBOL data types implemented in Java. Member Summary Data Members public static final char HIGHVALUES public static final char LOWVALUES public static final char QUOTES public static final char SPACES public static final char ZEROS Constructor ScobolType() 6-44

109 Class ScobolType Abstract Methods gethostlength() gethostvalue() sethostvalue() Non-Abstract Methods isequalto() isequaltoall() isgreaterthan() isgreaterthanall() islessthan() islessthanall() isvaluenumeric() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array Equivalent to the SCREEN COBOL relation condition IS [NOT] EQUAL [TO] Equivalent to the SCREEN COBOL relation condition IS [NOT] EQUAL [TO] ALL Equivalent to the SCREEN COBOL relation condition IS [NOT] GREATER [THAN] Equivalent to the SCREEN COBOL relation condition IS [NOT] GREATER [THAN] ALL Equivalent to the SCREEN COBOL relation condition IS [NOT] LESS [THAN] Equivalent to the SCREEN COBOL relation condition IS [NOT] LESS [THAN] ALL Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Method Constructor public ScobolType() Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public abstract int gethostlength() 6-45

110 Class ScobolType Return Value Returns the number of bytes required to represent the data item in the NonStop Kernel. Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public abstract byte [] gethostvalue() The NonStop Kernel defines the data representation (bit pattern) for representing variables of a given type. The gethostvalue() method returns the identical bit pattern, independent of its internal storage representation. In other words, this method implements a mapping from the way data is represented in the class to the way the same data is represented in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public abstract void sethostvalue (byte[] data) This method provides a mechanism by which the data value corresponding to the NonStop Kernel data representation can be stored. data.length() must be greater than or equal to ScobolType.getHostLength(). After calling sethostvalue(data1), if you call data2=gethostvalue(), then data1 must be equal to data2. data Corresponds to the NonStop Kernel byte representation of the data Method isequalto (double data) public boolean isequalto (double data) 6-46

111 Class ScobolType Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] noninteger-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (long data) public boolean isequalto (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] integer-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (ScobolType data) public boolean isequalto (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] ws-item-2. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. 6-47

112 Class ScobolType Method isequalto (String data) public boolean isequalto (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] string-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequaltoall public boolean isequaltoall (char ch) Equivalent to the SCREEN COBOL relation condition value-1 IS [NOT] EQUAL [TO] ALL character-literal, where character-literal represents an alphanumeric character. ch The character to be compared with the value of this object Return Value Returns TRUE if all the characters in this object are [not] the same as ch, or FALSE otherwise. 6-48

113 Class ScobolType Method isgreaterthan (double data) public boolean isgreaterthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] noninteger-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (long data) public boolean isgreaterthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] integer-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (ScobolType data) public boolean isgreaterthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] ws-item

114 Class ScobolType data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (String data) public boolean isgreaterthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] string-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthanall public boolean isgreaterthanall (char ch) Equivalent to the SCREEN COBOL relation condition value-1 IS [NOT] GREATER [THAN] ALL character-literal, where character-literal represents an alphanumeric character. ch The character to be compared with the value of this object Return Value Returns TRUE if all the characters in this object have [do not have] ASCII values greater than ch, or FALSE otherwise. 6-50

115 Class ScobolType Method islessthan (double data) public boolean islessthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] noninteger-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (long data) public boolean islessthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] integer-numeric-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (ScobolType data) public boolean islessthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] ws-item

116 Class ScobolType data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (String data) public boolean islessthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] string-literal. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthanall public boolean islessthanall (char ch) Equivalent to the SCREEN COBOL relation condition value-1 IS [NOT] LESS [THAN] ALL character-literal, where character-literal represents an alphanumeric character. ch The character to be compared with the value of this object Return Value Returns TRUE if all the characters in this object have [do not have] ASCII values less than ch, or FALSE otherwise. 6-52

117 Class ScobolGroupType Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Class ScobolGroupType Package pathway.its public abstract pathway.its.scobolgrouptype extends ScobolType This abstract class is the super-class for all SCREEN COBOL group data types implemented in Java. This class is extended by all classes that represent the group items in SCREEN COBOL. Member Summary Constructor ScobolGroupType() Abstract Methods gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array 6-53

118 Class ScobolGroupType Non-Abstract Methods isvaluealphabetic() isvaluenumeric() moveall() sethighvalues() setlowvalues() setquotes() setspaces() setvalue() setzeroes() Equivalent to the SCREEN COBOL class condition IS [NOT] ALPHABETIC Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Equivalent to the SCREEN COBOL MOVE ALL statement Equivalent to the SCREEN COBOL MOVE HIGH- VALUES statement Equivalent to the SCREEN COBOL MOVE LOW- VALUES statement Equivalent to the SCREEN COBOL MOVE QUOTES statement Equivalent to the SCREEN COBOL MOVE SPACES statement Equivalent to the SCREEN COBOL statement MOVE data-name-1 TO group-2 Equivalent to the SCREEN COBOL MOVE ZEROS statement Method Constructor public ScobolGroupType() Method addscoboldata Purpose Adds to the group SCREEN COBOL data objects in a group item. void addscoboldata (ScobolType ScobolDataObject) This method is used in the constructor of the group item subclass. It adds the group items to the group. 6-54

119 Class ScobolGroupType ScobolDataObject An object of type ScobolType in the group that that is being added. Example This is an example SCREEN COBOL group data item: 01 CURRENT-TIME. 05 TIME-AT-START PIC 9(8). 05 DATE-AT-START PIC 9(8). 05 TIME-NOW PIC 9(8). The corresponding Java code for this gorup data item is as: class c_current_time extends ScobolGroupType { Pic9 TIME_AT_START; Pic9 DATE_AT_START; Pic9 TIME_NOW; public c_current_time() { TIME_AT_START = new Pic9(8,Pic9.DISPLAY,Pic9.UNSIGNED); addscoboldata(time_at_start); DATE_AT_START = new Pic9(8,Pic9.DISPLAY,Pic9.UNSIGNED); addscoboldata(date_at_start); TIME_NOW = new Pic9(8,Pic9.DISPLAY,Pic9.UNSIGNED); addscoboldata(time_now); } public int gethostlength() { return(24); } public void setinitvalue() { } } c_current_time CURRENT_TIME ; Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data in the group. public abstract int gethostlength() Return Value Returns the number of bytes required to represent the data item in the NonStop Kernel. 6-55

120 Class ScobolGroupType Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public abstract byte [] gethostvalue() The NonStop Kernel defines the data representation (bit pattern) for representing variables of a given type. The gethostvalue() method returns the identical bit pattern, independent of its internal storage representation. In other words, this method implements a mapping from the way data is represented in the class to the way the same data is represented in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public abstract void sethostvalue (byte[] data) This method provides a mechanism by which the data value corresponding to the NonStop Kernel data representation can be stored. data.length() must be greater than or equal to ScobolGroupType.getHostLength(). After calling sethostvalue(data1), if you call data2=gethostvalue(), then data1 must be equal to data2. data Corresponds to the NonStop Kernel byte representation of the data Method isvaluealphabetic public boolean isvaluealphabetic() Equivalent to the SCREEN COBOL class condition IS [NOT] ALPHABETIC. 6-56

121 Class ScobolGroupType Return Value Returns TRUE if the value of this object is [not] alphabetic, or FALSE otherwise. Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Method moveall public void moveall (String s) Equivalent to the SCREEN COBOL statement MOVE ALL string-literal TO group-item. s The string literal to be moved into this object Method sethighvalues public void sethighvalues() Equivalent to the SCREEN COBOL statement MOVE HIGH-VALUES TO group-item. Method setlowvalues public void setlowvalues() 6-57

122 Class ScobolGroupType Equivalent to the SCREEN COBOL statement MOVE LOW-VALUES TO group-item. Method setquotes public void setquotes() Equivalent to the SCREEN COBOL statement MOVE QUOTES TO group-item. Method setspaces public void setspaces() Equivalent to the SCREEN COBOL statement MOVE SPACES TO group-item. Method setvalue (double data) public void setvalue (double data) Equivalent to the SCREEN COBOL statement MOVE noninteger-numericliteral TO group-2, where group-2 is this object. data The data used to set the value of this object Method setvalue (long data) public void setvalue (long data) Equivalent to the SCREEN COBOL statement MOVE integer-numeric-literal TO group-2, where group-2 is this object. 6-58

123 Class ScobolGroupType data The data used to set the value of this object Method setvalue (ScobolType data) public void setvalue (ScobolType data) Equivalent to the SCREEN COBOL statement MOVE data-name-1 TO group-2, where data-name-1 is the parameter to this method and group-2 is this object. data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) Equivalent to the SCREEN COBOL statement MOVE string-literal TO group-2, where group-2 is this object. Method setzeroes public void setzeroes() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO ws-item, where ws-item is a group name. 6-59

124 Class Pic9 Class Pic9 Package pathway.its public pathway.its.pic9 extends ScobolType This class is the Java representation of the SCREEN COBOL numeric integer (both computational and display) data types. SCREEN COBOL numeric integer data types are those that are described by the PIC 9 clauses. Member Summary Constructor Pic9() Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array 6-60

125 Class Pic9 Class-Specific Methods getvalue() isequalto() isgreaterthan() islessthan() isvaluenumeric() setvalue() setzeroes() Returns the value in native Java type Equivalent to the SCREEN COBOL relation condition IS [NOT] EQUAL [TO] Equivalent to the SCREEN COBOL relation condition IS [NOT] GREATER [THAN] Equivalent to the SCREEN COBOL relation condition IS [NOT] LESS [THAN] Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Equivalent to the SCREEN COBOL statement MOVE data-name-1 TO data-name-2 Equivalent to the SCREEN COBOL MOVE ZEROS statement Literals COMP DISPLAY SIGNED SIGNLEADING SIGNLEADINGSEPARATE SIGNTRAILING SIGNTRAILINGSEPARATE UNSIGNED Method Constructor (Computational or Display) public Pic9 (int numdigits, boolean computational, boolean signed) This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type PIC 9(n) COMP PIC S9(n) COMP PIC 9(n) PIC S9(n) Java Type new Pic9 (n, Pic9.COMP, Pic9.UNSIGNED) new Pic9 (n, Pic9.COMP, Pic9.SIGNED) new Pic9 (n, Pic9.DISPLAY, Pic9.UNSIGNED) new Pic9 (n, Pic9.DISPLAY, Pic9.SIGNED) 6-61

126 Class Pic9 numdigits The number of digits in the integer; must be between 1 and 18, inclusive computational signed Method Constructor (Sign Leading or Trailing) public Pic9 (int numdigits, int signflag) Must be either Pic9.COMP or Pic9.DISPLAY Must be either Pic9.SIGNED or Pic9.UNSIGNED This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type PIC S9(n) sign lead PIC S9(n) sign trail PIC S9(n) sign lead separate PIC S9(n) sign trail separate Java Type new Pic9 (n, Pic9.SIGNLEADING) new Pic9 (n, Pic9.SIGNTRAILING) new Pic9 (n, Pic9.SIGNLEADINGSEPARATE) new Pic9 (n, Pic9.SIGNTRAILINGSEPARATE) numdigits The number of digits in the integer; must be between 1 and 18, inclusive signflag Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Must be one of Pic9.SIGNLEADING, Pic9.SIGNTRAILING, Pic9.SIGNLEADINGSEPARATE, or Pic9.SIGNTRAILINGSEPARATE 6-62

127 Class Pic9 Return Value Returns the number of bytes required to represent the equivalent SCREEN COBOL data item in the NonStop Kernel. Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public byte [] gethostvalue() The byte array does not necessarily represent an actual numeric item. Any arbitrary byte pattern can be stored in this object with the sethostvalue() method. However, if setvalue(long data) is used to set this object, the byte array will be a replica of the byte array used to represent the same numeric value in the NonStop Kernel. The length of the returned byte array will be the same as that returned by gethostlength(). Return Value Returns the byte array used to represent the numeric value in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. Whether the byte array represents a valid numeric value is not verified. (In SCREEN COBOL, a numeric variable can hold nonnumeric data if the variable is part of a group and the group is the target of a group move.) 6-63

128 Class Pic9 data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method getvalue public long getvalue() If the object is non-computational, the byte contents must be ASCII 0 through ASCII 9 (except for the sign byte). Return Value Returns the numeric value stored in the object. Method isequalto (double data) public boolean isequalto (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] noninteger-numeric-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (long data) public boolean isequalto (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] integer-numeric-literal, where ws-item-1 is a PIC 9 identifier. 6-64

129 Class Pic9 data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (ScobolType data) public boolean isequalto (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] ws-item-2, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (String data) public boolean isequalto (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] string-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. 6-65

130 Class Pic9 Method isgreaterthan (double data) public boolean isgreaterthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (long data) public boolean isgreaterthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (ScobolType data) public boolean isgreaterthan (ScobolType data) 6-66

131 Class Pic9 Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] ws-item-2, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (String data) public boolean isgreaterthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] string-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method islessthan (double data) public boolean islessthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9 identifier. 6-67

132 Class Pic9 data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (long data) public boolean islessthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (ScobolType data) public boolean islessthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] ws-item-2, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (String data) public boolean islessthan (String data) 6-68

133 Class Pic9 Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] string-literal, where ws-item-1 is a PIC 9 identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Method setvalue (double data) public void setvalue (double data) Equivalent to the SCREEN COBOL statement MOVE noninteger-numericliteral TO ws-item, where ws-item is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (long data) public void setvalue (long data) 6-69

134 Class Pic9 Equivalent to the SCREEN COBOL statement MOVE integer-numeric-literal TO ws-item, where ws-item is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (Pic9 data) public void setvalue (Pic9 data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where both ws-item-src and ws-item-dest are PIC 9 identifiers. data The data used to set the value of this object Method setvalue (Pic9P data) public void setvalue (Pic9P data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9P identifier and ws-item-dest is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (Pic9V data) public void setvalue (Pic9V data) 6-70

135 Class Pic9 Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9V identifier and ws-item-dest is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (PicX data) public void setvalue (PicX data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC X identifier and ws-item-dest is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (ScobolGroupType data) public void setvalue (ScobolGroupType data) Equivalent to the SCREEN COBOL statement MOVE ws-group-item TO wsitem-dest, where ws-group-item is a group item identifier and ws-item-dest is a PIC 9 identifier. data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) 6-71

136 Class Pic9P Equivalent to the SCREEN COBOL statement MOVE string-numeric-literal TO ws-item, where ws-item is a PIC 9 identifier. data The data used to set the value of this object Method setzeroes public void setzeroes() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO data-name-1, where data-name-1 is this object. Class Pic9P Package pathway.its public pathway.its.pic9p extends ScobolType This class is the Java representation of the SCREEN COBOL numeric (both computational and display) data types having the P character-string symbol. Member Summary Constructor Pic9P() 6-72

137 Class Pic9P Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array Class-Specific Methods getvalue() isequalto() isgreaterthan() islessthan() isvaluenumeric() setvalue() setzeroes() Returns the value in native Java type Equivalent to the SCREEN COBOL relation condition IS [NOT] EQUAL [TO] Equivalent to the SCREEN COBOL relation condition IS [NOT] GREATER [THAN] Equivalent to the SCREEN COBOL relation condition IS [NOT] LESS [THAN] Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Equivalent to the SCREEN COBOL statement MOVE data-name-1 TO data-name-2 Equivalent to the SCREEN COBOL MOVE ZEROS statement Literals COMP DISPLAY SIGNED SIGNLEADING SIGNLEADINGSEPARATE SIGNTRAILING SIGNTRAILINGSEPARATE UNSIGNED Method Constructor (Computational or Display) public Pic9P (int numdigits, int scalingfactor, boolean computational, boolean signed) 6-73

138 Class Pic9P This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type PIC 9(m)P(n) COMP PIC S9(m)P(n) COMP PIC 9(m)P(n) PIC S9(m)P(n) PIC P(n)9(m) COMP PIC SP(n)9(m) COMP PIC P(n)9(m) PIC SP(n)9(m) Java Type new Pic9P (m, n, Pic9P.COMP, Pic9P.UNSIGNED) new Pic9P (m, n, Pic9P.COMP, Pic9P.SIGNED) new Pic9P (m, n, Pic9P.DISPLAY, Pic9P.UNSIGNED) new Pic9P (m, n, Pic9P.DISPLAY, Pic9P.SIGNED) new Pic9P (m, -(m+n), Pic9P.COMP, Pic9P.UNSIGNED) new Pic9P (m, -(m+n), Pic9P.COMP, Pic9P.SIGNED) new Pic9P (m, -(m+n), Pic9P.DISPLAY, Pic9P.UNSIGNED) new Pic9P (m, -(m+n), Pic9P.DISPLAY, Pic9P.SIGNED) numdigits The number of digits in the integer; must be between 1 and 16, inclusive scalingfactor Indicates scaling of digits; must be between -16 and 15, inclusive; the sum of numdigits and scalingfactor must be between -15 and 16, inclusive computational signed Method Constructor (Sign Leading or Trailing) Must be either PicP9.COMP or PicP.DISPLAY Must be either Pic9P.SIGNED or Pic9P.UNSIGNED public Pic9P (int numdigits, int scalingfactor, int signflag) 6-74

139 Class Pic9P This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type PIC S9(m)P(n) sign lead PIC S9(m)P(n) sign trail PIC S9(m)P(n) sign lead separate PIC S9(m)P(n) sign trail separate PIC SP(n)9(m) sign lead PIC SP(n)9(m) sign trail PIC SP(n)9(m) sign lead separate PIC SP(n)9(m) sign trail separate Java Type new Pic9P (m, n, Pic9P.SIGNLEADING) new Pic9P (m, n, Pic9P.SIGNTRAILING) new Pic9P (m, n, Pic9P.SIGNLEADINGSEPARATE) new Pic9P (m, n, Pic9P.SIGNTRAILINGSEPARATE) new Pic9P (m, -(m+n), Pic9P.SIGNLEADING) new Pic9P (m, -(m+n), Pic9P.SIGNTRAILING) new Pic9P (m, -(m+n), Pic9P.SIGNLEADINGSEPARATE) new Pic9P (m, -(m+n), Pic9P.SIGNTRAILINGSEPARATE) numdigits The number of digits in the integer; must be between 1 and 16, inclusive scalingfactor Indicates scaling of digits; must be between -16 and 15, inclusive; the sum of numdigits and scalingfactor must be between -15 and 16, inclusive signflag Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Return Value Must be one of PicP.SIGNLEADING, Pic9P.SIGNTRAILING, PicP.SIGNLEADINGSEPARATE, or PicP.SIGNTRAILINGSEPARATE Returns the number of bytes required to represent the equivalent SCREEN COBOL data item in the NonStop Kernel. 6-75

140 Class Pic9P Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public byte [] gethostvalue() The byte array does not necessarily represent an actual numeric item. Any arbitrary byte pattern can be stored in this object with the sethostvalue() method. However, if setvalue(double data) is used to set this object, the byte array will be a replica of the byte array used to represent the same numeric value in the NonStop Kernel. The length of the returned byte array will be the same as that returned by gethostlength(). Return Value Returns the byte array used to represent the numeric value in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. Whether the byte array represents a valid numeric value is not verified. (In SCREEN COBOL, a numeric variable can hold nonnumeric data if the variable is part of a group and the group is the target of a group move.) 6-76

141 Class Pic9P data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method getvalue public double getvalue() If the object is non-computational, the byte contents must be ASCII 0 through ASCII 9 (except for the sign byte). Return Value Returns the numeric value stored in the object. Method isequalto (double data) public boolean isequalto (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] noninteger-numeric-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (long data) public boolean isequalto (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] integer-numeric-literal, where ws-item-1 is a PIC 9P identifier. 6-77

142 Class Pic9P data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (ScobolType data) public boolean isequalto (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] ws-item-2, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (String data) public boolean isequalto (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] string-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isgreaterthan (double data) public boolean isgreaterthan (double data) 6-78

143 Class Pic9P Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (long data) public boolean isgreaterthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (ScobolType data) public boolean isgreaterthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] ws-item-2, where ws-item-1 is a PIC 9P identifier. 6-79

144 Class Pic9P data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (String data) public boolean isgreaterthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] string-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method islessthan (double data) public boolean islessthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. 6-80

145 Class Pic9P Method islessthan (long data) public boolean islessthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (ScobolType data) public boolean islessthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] ws-item-2, where ws-item-1 is a PIC 9P identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (String data) public boolean islessthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] string-literal, where ws-item-1 is a PIC 9P identifier. 6-81

146 Class Pic9P data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Method setvalue (double data) public void setvalue (double data) Equivalent to the SCREEN COBOL statement MOVE noninteger-numericliteral TO ws-item, where ws-item is a PIC 9P identifier. data The data used to set the value of this object Method setvalue (Pic9 data) public void setvalue (Pic9 data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC9 identifier and ws-item-dest is a PIC 9P identifier. 6-82

147 Class Pic9P data The data used to set the value of this object Method setvalue (Pic9P data) public void setvalue (Pic9P data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where both ws-item-src and ws-item-dest are PIC 9P identifiers. data The data used to set the value of this object Method setvalue (Pic9V data) public void setvalue (Pic9V data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9V identifier and ws-item-dest is a PIC 9P identifier. data The data used to set the value of this object Method setvalue (PicX data) public void setvalue (PicX data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC X identifier and ws-item-dest is a PIC 9P identifier. 6-83

148 Class Pic9V data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) Equivalent to the SCREEN COBOL statement MOVE string-literal TO ws-item, where ws-item is a PIC 9P identifier. data The data used to set the value of this object Method setzeroes public void setzeroes() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO data-name-1, where data-name-1 is this object. Class Pic9V Package pathway.its public pathway.its.pic9v extends ScobolType This class is the Java representation of the SCREEN COBOL numeric real data types (both computational and display). SCREEN COBOL numeric real data types are those that are described by the PIC 9V clauses. 6-84

149 Class Pic9V Member Summary Constructor Pic9V() Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array Class-Specific Methods getvalue() isequalto() isgreaterthan() islessthan() isvaluenumeric() setvalue() setzeroes() Returns the value in native Java type Equivalent to the SCREEN COBOL relation condition IS [NOT] EQUAL [TO] Equivalent to the SCREEN COBOL relation condition IS [NOT] GREATER [THAN] Equivalent to the SCREEN COBOL relation condition IS [NOT] LESS [THAN] Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Equivalent to the statement MOVE data-name-1 TO data-name-2 Equivalent to the SCREEN COBOL MOVE ZEROS statement Literals COMP DISPLAY SIGNED SIGNLEADING SIGNLEADINGSEPARATE SIGNTRAILING SIGNTRAILINGSEPARATE UNSIGNED 6-85

150 Class Pic9V Method Constructor (Signed or Unsigned) public Pic9V (int numintegerdigits, int numfractiondigits, boolean computational, boolean signed) This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type PIC 9(m)V9(n) COMP PIC S9(m)V9(n) COMP PIC 9(m)V9(n) PIC S9(m)V9(n) numintegerdigits numfractiondigits computational signed Java Type new Pic9V (m, n, Pic9V.COMP, Pic9V.UNSIGNED) new Pic9V (m, n, Pic9V.COMP, Pic9V.SIGNED) new Pic9V (m, n, Pic9V.DISPLAY, Pic9V.UNSIGNED) new Pic9V (m, n, Pic9V.DISPLAY, Pic9V.SIGNED) The number of digits in the integer portion of the number; must be between 0 and 16, inclusive The number of digits in the fractional portion of the number; must be between 0 and 16, inclusive; the sum of numintegerdigits and numfractiondigits must be between 1 and 16, inclusive Must be either Pic9V.COMP or Pic9V.DISPLAY Must be either Pic9V.SIGNED or Pic9V.UNSIGNED Method Constructor (Sign Leading or Trailing) public Pic9V (int numintegerdigits, int numfractiondigits, int signflag) 6-86

151 Class Pic9V This form is used to construct these SCREEN COBOL types: SCREEN COBOL Type Java Type PIC S9(m)V9(n) sign lead new Pic9V (m, n, Pic9V.SIGNLEADING) PIC S9(m)V9(n) sign trail new Pic9V (m, n, Pic9V.SIGNTRAILING) PIC S9(m)V9(n) sign lead separate PIC S9(m)V9(n) sign trail separate new Pic9V (m, n, Pic9V.SIGNLEADINGSEPARATE) new Pic9V (m, n, Pic9V.SIGNTRAILINGSEPARATE) numintegerdigits numfractiondigits signflag The number of digits in the integer portion of the number; must be between 0 and 16, inclusive The number of digits in the fractional portion of the number; must be between 0 and 16, inclusive; the sum of numintegerdigits and numfractiondigits must be between 1 and 16, inclusive Must be one of Pic9V.SIGNLEADING, Pic9V.SIGNTRAILING, Pic9V.SIGNLEADINGSEPARATE, or Pic9V.SIGNTRAILINGSEPARATE Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Return Value Returns the number of bytes required to represent the equivalent SCREEN COBOL data item in the NonStop Kernel. 6-87

152 Class Pic9V Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public byte [] gethostvalue() The byte array does not necessarily represent an actual numeric item. Any arbitrary byte pattern can be stored in this object with the sethostvalue() method. However, if setvalue(double data) is used to set this object, the byte array will be a replica of the byte array used to represent the same numeric value in the NonStop Kernel. The length of the returned byte array will be the same as that returned by gethostlength(). Return Value Returns the byte array used to represent the numeric value in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. Whether the byte array represents a valid numeric value is not verified. (In SCREEN COBOL, a numeric variable can hold nonnumeric data if the variable is part of a group and the group is the target of a group move.) 6-88

153 Class Pic9V data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method getvalue public double getvalue() If the object is non-computational, the byte contents must be ASCII 0 through ASCII 9 (except for the sign byte). Return Value Returns the numeric value stored in the object. Method isequalto (double data) public boolean isequalto (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] noninteger-numeric-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (long data) public boolean isequalto (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] integer-numeric-literal, where ws-item-1 is a PIC 9V identifier. 6-89

154 Class Pic9V data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (ScobolType data) public boolean isequalto (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] ws-item-2, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isequalto (String data) public boolean isequalto (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] EQUAL [TO] string-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] equal to data, or FALSE otherwise. Method isgreaterthan (double data) public boolean isgreaterthan (double data) 6-90

155 Class Pic9V Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (long data) public boolean isgreaterthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (ScobolType data) public boolean isgreaterthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] ws-item-2, where ws-item-1 is a PIC 9V identifier. 6-91

156 Class Pic9V data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method isgreaterthan (String data) public boolean isgreaterthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] GREATER [THAN] string-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] greater than data, or FALSE otherwise. Method islessthan (double data) public boolean islessthan (double data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] noninteger-numeric-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. 6-92

157 Class Pic9V Method islessthan (long data) public boolean islessthan (long data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] integer-numeric-literal, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (ScobolType data) public boolean islessthan (ScobolType data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] ws-item-2, where ws-item-1 is a PIC 9V identifier. data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method islessthan (String data) public boolean islessthan (String data) Equivalent to the SCREEN COBOL relation condition ws-item-1 IS [NOT] LESS [THAN] string-literal, where ws-item-1 is a PIC 9V identifier. 6-93

158 Class Pic9V data The value to be compared with the value of this object Return Value Returns TRUE if the value of this object is [not] less than data, or FALSE otherwise. Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Method setvalue (double data) public void setvalue (double data) Equivalent to the SCREEN COBOL statement MOVE noninteger-numericliteral TO ws-item, where ws-item is a PIC 9V identifier. data The data used to set the value of this object Method setvalue (Pic9 data) public void setvalue (Pic9 data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9 identifier and ws-item-dest is a PIC 9V identifier. 6-94

159 Class Pic9V data The data used to set the value of this object Method setvalue (Pic9P data) public void setvalue (Pic9P data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9P identifier and ws-item-dest is a PIC 9V identifier. data The data used to set the value of this object Method setvalue (Pic9V data) public void setvalue (Pic9V data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where both ws-item-src and ws-item-dest are PIC 9V identifiers. data The data used to set the value of this object Method setvalue (PicX data) public void setvalue(picx data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC X identifier and ws-item-dest is a PIC 9V identifier. 6-95

160 Class Pic9V data The data used to set the value of this object Method setvalue (ScobolGroupType data) public void setvalue (ScobolGroupType data) Equivalent to the SCREEN COBOL statement MOVE ws-group-item TO ws-item-dest, where ws-group-item is a group item identifier and ws-item-dest is a PIC 9V identifier. data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) Equivalent to the SCREEN COBOL statement MOVE string-literal TO ws-item, where ws-item is a PIC 9V identifier. data The data used to set the value of this object Method setzeroes public void setzeroes() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO data-name-1, where data-name-1 is this object. 6-96

161 Class PicN Class PicN Package pathway.its public pathway.its.picn extends ScobolType This class is the Java representation of the SCREEN COBOL double-byte data types; that is, those that are described by the PIC N clause. Member Summary Constructor PicN() Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array 6-97

162 Class PicN Class-Specific Methods getvalue() isdoublebyte() moveall() setspaces() setvalue() Returns the value in native Java type Equivalent to the SCREEN COBOL clause IS [NOT] DOUBLEBYTE in the IF... DOUBLEBYTE statement Equivalent to the SCREEN COBOL MOVE ALL statement Equivalent to the SCREEN COBOL MOVE SPACES statement Equivalent to the statement MOVE data-name-1 TO data-name-2 Literals LEFTJUSTIFIED RIGHTJUSTIFIED Method Constructor public PicN (int size) In this form, data is left-justified. Upon construction, the object will contain blanks. size The number of double-byte characters this object can hold 6-98

163 Class PicN Method Constructor (Justification Specified) public PicN (int size, boolean justification) Upon construction, the object will contain blanks. size justification The number of double-byte characters this object can hold Must be either PicN.LEFTJUSTIFIED or PicN.RIGHTJUSTIFIED Method Constructor (Initialized Data, Left-Justified) public PicN (int size, String data) In this form, data is left justified. If the number of characters is less than the specified size, the data will be padded with blanks in accordance with SCREEN COBOL rules. If the number of characters is more than the specified size, the data will be truncated in accordance with SCREEN COBOL rules. size data The number of double-byte characters this object can hold The initial value for this object Method Constructor (Initialized Data, Justification Specified) public PicN (int size, boolean justification, String data) If the number of characters is less than the specified size, the data will be padded with blanks in accordance with SCREEN COBOL rules. If the number of characters is more than the specified size, the data will be truncated in accordance with SCREEN COBOL rules. 6-99

164 Class PicN size justification data The number of double-byte characters this object can hold Must be either PicN.LEFTJUSTIFIED or PicN.RIGHTJUSTIFIED The initial value for this object Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Return Value Returns the number of bytes required to represent the equivalent SCREEN COBOL (PIC N) data item in the NonStop Kernel. This will be double the size with which the data was declared in the SCREEN COBOL program. For example, for a PIC N (10) item, this method will return 20. Method gethostvalue Purpose Returns the NonStop Kernel representation of the alphanumeric data as a byte array. public byte [] gethostvalue() The length of the returned byte array will be the same as that returned by gethostlength(), which is double the size of the PIC N item. Return Value Returns the byte array used to represent the double-byte value in the NonStop Kernel. This will be a pure byte stream. For example, for PIC N (5), this method will return an array of 10 bytes

165 Class PicN Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method getvalue public String getvalue() Return Value Returns the object as a Java string. Method isdoublebyte public boolean isdoublebyte() Equivalent to the SCREEN COBOL clause IS [NOT] DOUBLEBYTE in the statement IF ws-item IS [NOT] DOUBLEBYTE, where ws-item is a PIC N identifier. Return Value Returns TRUE if all the characters in this object are double-byte characters, or FALSE if at least one of them is a single-byte character. If negated, returns FALSE if all the characters in this object are double-byte characters, or TRUE if at least one of them is a single-byte character

166 Class PicN Method moveall public void moveall (String str) Equivalent to the SCREEN COBOL statement MOVE ALL string-literal TO ws-item, where ws-item is a PIC N identifier. str The string literal to be moved into this object Method setspaces public void setspaces() Equivalent to the SCREEN COBOL statement MOVE SPACES TO ws-item, where ws-item is a PIC N identifier. Method setvalue (PicN data) public void setvalue (PicN data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where both ws-item-src and ws-item-dest are PIC N identifiers. data The data used to set the value of this object Method setvalue (PicX data) public void setvalue (PicX data) 6-102

167 Class PicX Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC X identifier and ws-item-dest is a PIC N identifier. The PIC X identifier can contain a combination of double-byte and singlebyte characters. data The data used to set the value of this object Method setvalue (ScobolGroupType data) public void setvalue (ScobolGroupType data) Equivalent to the SCREEN COBOL statement MOVE ws-group-item TO ws-item-dest, where ws-group-item is a group item identifier and ws-item-dest is a PIC N identifier. data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) Equivalent to the SCREEN COBOL statement MOVE string-literal TO ws-item, where ws-item is a PIC N identifier. data The data used to set the value of this object Class PicX Package pathway.its 6-103

168 Class PicX public pathway.its.picx extends ScobolType This class is the Java representation of the SCREEN COBOL alphanumeric data types; that is, those that are described by the PIC X clause. Member Summary Constructor PicX() Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array 6-104

169 Class PicX Class-Specific Methods getvalue() isdoublebyte() isvaluealphabetic() isvaluenumeric() moveall() sethighvalues() setlowvalues() setquotes() setspaces() setvalue() setzeroes() Returns the value in native Java type Equivalent to the SCREEN COBOL clause IS [NOT] DOUBLEBYTE in the IF... DOUBLEBYTE statement Equivalent to the SCREEN COBOL class condition IS [NOT] ALPHABETIC Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC Equivalent to the SCREEN COBOL MOVE ALL statement Equivalent to the SCREEN COBOL MOVE HIGH-VALUES statement Equivalent to the SCREEN COBOL MOVE LOW-VALUES statement Equivalent to the SCREEN COBOL MOVE QUOTES statement Equivalent to the SCREEN COBOL MOVE SPACES statement Equivalent to the statement MOVE data-name-1 TO data-name-2 Equivalent to the SCREEN COBOL MOVE ZEROS statement Literals LEFTJUSTIFIED RIGHTJUSTIFIED Method Constructor public PicX (int size) In this form, data is left-justified. Upon construction, the object will contain blanks

170 Class PicX size The number of characters this object can hold Method Constructor (Justification Specified) public PicX (int size, boolean justification) Upon construction, the object will contain blanks. size justification The number of characters this object can hold Must be either PicX.LEFTJUSTIFIED or PicX.RIGHTJUSTIFIED Method Constructor (Initialized Data, Left-Justified) public PicX (int size, String data) In this form, data is left justified. If the number of characters is less than the specified size, the data will be padded with blanks in accordance with SCREEN COBOL rules. If the number of characters is more than the specified size, the data will be truncated in accordance with SCREEN COBOL rules. size data The number of characters this object can hold The initial value for this object Method Constructor (Initialized Data, Justification Specified) public PicX (int size, boolean justification, String data) If the number of characters is less than the specified size, the data will be padded with blanks in accordance with SCREEN COBOL rules. If the number of characters is more 6-106

171 Class PicX than the specified size, the data will be truncated in accordance with SCREEN COBOL rules. size justification data The number of characters this object can hold Must be either PicX.LEFTJUSTIFIED or PicX.RIGHTJUSTIFIED The initial value for this object Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Return Value Returns the number of bytes required to represent the equivalent SCREEN COBOL data item in the NonStop Kernel. Method gethostvalue Purpose Returns the NonStop Kernel representation of the alphanumeric data as a byte array. public byte [] gethostvalue() The length of the returned byte array will be the same as that returned by gethostlength(). Return Value Returns the byte array used to represent the alphanumeric value in the NonStop Kernel

172 Class PicX Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method getvalue public String getvalue() Return Value Returns the object as a Java string. Method isdoublebyte public boolean isdoublebyte() Equivalent to the SCREEN COBOL clause IS [NOT] DOUBLEBYTE in the statement IF ws-item IS [NOT] DOUBLEBYTE, where ws-item is a PIC X identifier. Return Value Returns TRUE if all the characters in this object are double-byte characters, or FALSE if at least one of them is a single-byte character. If negated, returns FALSE if all the characters in this object are double-byte characters, or TRUE if at least one of them is a single-byte character

173 Class PicX Method isvaluealphabetic public boolean isvaluealphabetic() Equivalent to the SCREEN COBOL class condition IS [NOT] ALPHABETIC. Return Value Returns TRUE if the value of this object is [not] alphabetic, or FALSE otherwise. Method isvaluenumeric public boolean isvaluenumeric() Equivalent to the SCREEN COBOL class condition IS [NOT] NUMERIC. Return Value Returns TRUE if the value of this object is [not] numeric, or FALSE otherwise. Method moveall public void moveall (String s) Equivalent to the SCREEN COBOL statement MOVE ALL string-literal TO ws-item, where ws-item is a PIC X identifier. s The string literal to be moved into this object Method sethighvalues public void sethighvalues() 6-109

174 Class PicX Equivalent to the SCREEN COBOL statement MOVE HIGH-VALUES TO ws-item, where ws-item is a PIC X identifier. Method setlowvalues public void setlowvalues() Equivalent to the SCREEN COBOL statement MOVE LOW-VALUES TO ws-item, where ws-item is a PIC X identifier. Method setquotes public void setquotes() Equivalent to the SCREEN COBOL statement MOVE QUOTES TO ws-item, where ws-item is a PIC X identifier. Method setspaces public void setspaces() Equivalent to the SCREEN COBOL statement MOVE SPACES TO ws-item, where ws-item is a PIC X identifier. Method setvalue (double data) public void setvalue (double data) Equivalent to the SCREEN COBOL statement MOVE noninteger-literal TO ws-item, where ws-item is a PIC X identifier

175 Class PicX data The data used to set the value of this object Method setvalue (long data) public void setvalue (long data) Equivalent to the SCREEN COBOL statement MOVE integer-literal TO ws-item, where ws-item is a PIC X identifier. data The data used to set the value of this object Method setvalue (Pic9 data) public void setvalue (Pic9 data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9 identifier and ws-item-dest is a PIC X identifier. data The data used to set the value of this object Method setvalue (Pic9P data) public void setvalue (Pic9P data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9P identifier and ws-item-dest is a PIC X identifier

176 Class PicX data The data used to set the value of this object Method setvalue (Pic9V data) public void setvalue (Pic9V data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where ws-item-src is a PIC 9V identifier and ws-item-dest is a PIC X identifier. data The data used to set the value of this object Method setvalue (PicX data) public void setvalue (PicX data) Equivalent to the SCREEN COBOL statement MOVE ws-item-src TO ws-itemdest, where both ws-item-src and ws-item-dest are PIC X identifiers. data The data used to set the value of this object Method setvalue (ScobolGroupType data) public void setvalue (ScobolGroupType data) Equivalent to the SCREEN COBOL statement MOVE ws-group-item TO ws-item-dest, where ws-group-item is a group item identifier and ws-item-dest is a PIC X identifier

177 Transform Class data The data used to set the value of this object Method setvalue (String data) public void setvalue (String data) Equivalent to the SCREEN COBOL statement MOVE string-literal TO ws-item, where ws-item is a PIC X identifier. data The data used to set the value of this object Method setzeroes public void setzeroes() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO ws-item, where ws-item is a PIC X identifier. Transform Class The Transform class implements the SCREEN COBOL TRANSFORM statement. Class Transform Package pathway.its public pathway.its.transform This class implements the SCREEN COBOL TRANSFORM statement

178 Class Transform Member Summary Constructor Transform() Methods dotransform() yields() Implements the TRANSFORM statement Equivalent to the YIELDS clause of the TRANSFORM statement Method Constructor (no select code field) public Transform (ScobolType[] inrec) This form instantiates an object to implement a TRANSFORM statement without the SELECT CODE FIELD [IS] clause. inrec An array of ScobolType objects, each of which corresponds to a working-storage item specified in trans-rec-out in the TRANSFORM statement Method Constructor (with select code field) public Transform (ScobolType[] inrec, ScobolType selectcode, int offset) This form instantiates an object to implement a TRANSFORM statement with the SELECT CODE FIELD [IS] clause

179 Class Transform inrec selectcode offset An array of ScobolType objects, each of which corresponds to a working-storage item specified in trans-rec-out in the TRANSFORM statement The ScobolType object corresponding to the working-storage item specified in the SELECT CODE FIELD [IS] clause in the TRANSFORM statement Indicates the position of the selectcode value within trans-rec-out in the TRANSFORM statement Method dotransform public void dotransform() throws TransformException Implements the SCREEN COBOL statement TRANSFORM. This method must be preceded by one or more calls to the yields() method. Method yields (no select code) public void yields (ScobolType[] outrec) This form is equivalent to the YIELDS trans-rec-in clause of the SCREEN COBOL TRANSFORM statement. It instantiates a Pic9 object as the code-field. outrec An array of ScobolType objects, each one corresponding to a trans-rec-in value in the YIELDS clause Method yields (select code with integer value) public void yields (int selectcode, ScobolType[] outrec) 6-115

180 Class Transform This form is equivalent to this clause of the SCREEN COBOL TRANSFORM statement: [SELECT CODE FIELD [IS] code-field] CODE select-code YIELDS trans-rec-in where the select-code value is specified as an integer depending on the business logic. This form instantiates a Pic9 object as the code-field. This method is called once for each select-code value in the YIELDS clause. selectcode outrec The select-code value in the YIELDS clause, specified as an integer An array of ScobolType objects, each one corresponding to a trans-rec-in value in the YIELDS clause Method yields (select code with string value) public void yields (String selectcode, ScobolType[] outrec) This form is equivalent to this clause of the SCREEN COBOL TRANSFORM statement: [SELECT CODE FIELD [IS] code-field] CODE select-code YIELDS trans-rec-in where the select-code value is specified as a string literal depending on the business logic. This form instantiates a PicX object as the code-field. This method is called once for each select-code value in the YIELDS clause. selectcode outrec The select-code value in the YIELDS clause, specified as a string literal An array of ScobolType objects, each one corresponding to a trans-rec-in value in the YIELDS clause Method yields (select code with working-storage value) public void yields (ScobolType selectcode, ScobolType[] outrec) 6-116

181 ProgramUnit Class This form is equivalent to this clause of the SCREEN COBOL TRANSFORM statement: [SELECT CODE FIELD [IS] code-field] CODE select-code YIELDS trans-rec-in where the select-code value is specified as a working-storage item. This form instantiates a ScobolType object as the code-field. This method is called once for each select-code value in the YIELDS clause. selectcode outrec The select-code value in the YIELDS clause, specified as a working-storage item An array of ScobolType objects, each one corresponding to a trans-rec-in value in the YIELDS clause ProgramUnit Class The ProgramUnit class provides methods to perform actions that apply to a program unit. Class ProgramUnit Package pathway.its public abstract pathway.its.programunit This abstract class provides methods for these actions: Setting the currency and decimal point symbols Exiting and stopping a program Obtaining a handle to an instance of the OverlayManager class The Java representation of each SCREEN COBOL program unit must extend this class

182 Class ProgramUnit Member Summary Data Members public static final char COMMA public PicX diagnosticallowed public static final char PERIOD public PicX tellallowed Represents the character ',' Equivalent to the DIAGNOSTIC-ALLOWED special register Represents the character '.' Equivalent to the TELL-ALLOWED special register Constructor ProgramUnit() Methods exitprogram() getnewoverlaymanager() setcurrencysign() setdecimalpointcharacter() stoprun() Equivalent to the EXIT PROGRAM statement Returns a handle to an OverlayManager object Equivalent to the CURRENCY[ SIGN] IS clause Equivalent to the DECIMAL-POINT IS clause Equivalent to the STOP RUN statement Method Constructor public ProgramUnit() Method exitprogram public void [] exitprogram() throws ExitProgramException Equivalent to the SCREEN COBOL statement EXIT PROGRAM

183 Class ProgramUnit Method getnewoverlaymanager public OverlayManager getnewoverlaymanager (String basehtmlfilename) Obtains a handle to an OverlayManager object that is local to this program unit. basehtmlfilename The file name of the HTML page that corresponds to the base screen Return Value Returns a handle to an object of type OverlayManager. Method setcurrencysign Purpose Sets the character to be used as the currency symbol. public final void [] setcurrencysign (char currencychar) Equivalent to the CURRENCY [SIGN] IS clause in the SPECIAL-NAMES paragraph of a SCREEN COBOL program. currencychar The character that is to represent the currency symbol Method setdecimalpointcharacter Purpose Sets the character to be used as the decimal point. public final void [] setdecimalpointcharacter (char decimalchar) 6-119

184 Special-Register Classes Equivalent to the DECIMAL-POINT IS clause in the SPECIAL-NAMES paragraph of a SCREEN COBOL program. decimalchar The character that is to represent the decimal point Method stoprun public void [] stoprun() throws StopRunException Equivalent to the SCREEN COBOL statement STOP RUN. Special-Register Classes The special-register classes define the Java equivalents of the SCREEN COBOL special registers, plus five additional special registers to support user profiles in converted web clients. Class ScobolLib Package pathway.its public pathway.its.scobollib This class defines the Java equivalents of all the SCREEN COBOL special registers, plus five additional special registers to support user profiles in converted web clients. It also provides a method to specify the character set

185 Class ScobolLib Member Summary Data Members public static final int ASCII public static Pic9 dialoginfo public static final int KANJI_KATAKANA public static PicX logicalterminalname public static Cursor newcursor public static Cursor OldCursor public static PicX pwqueuefkeytimeout public static PicX pwqueuefkeyump public static PicX pwtcpprocessname public static PicX pwtcpsystemname public static PicX pwterminalerroroccurred public static PicX pwunsolicitedmessagequeued public static PicX pwusenewcursor public static PicX redisplay public static Pic9 restartcounter public static Pic9 stopmode public static PicX terminalfilename public static PicX terminalprinter public static Pic9 terminationstatus public static Pic9 terminationsubstatus public static PicX transactionid public static PicX userprofile1 public static PicX userprofile2 public static PicX userprofile3 public static PicX userprofile4 public static PicX userprofile5 Constructor None. Methods delay() setcharset() Equivalent to the SCREEN COBOL DELAY statement Equivalent to the SCREEN COBOL CHARACTER-SET IS statement in the OBJECT-COMPUTER paragraph of the Environment Division Method delay Purpose Delays program execution for a specified period of time. public static void delay (long delaytime) 6-121

186 Class ScobolLib Equivalent to the SCREEN COBOL DELAY statement. delaytime The value to delay, in seconds Method setcharset Purpose Specifies the character set. public static void setcharset (int charsetvalue) Equivalent to the SCREEN COBOL CHARACTER-SET IS statement in the OBJECT- COMPUTER paragraph of the Environment Division. No special character-set values are required for European-language character sets, as Java takes care of those character sets. charsetvalue Must be either KANJI_KATAKANA or ASCII Method pow Purpose Calculates the result of an exponentiation operation between two items. Use this method only when the result of the operation is intermediate in an arithmetic expression. The number of decimal places in the result is equal to the number of decimal places in the first operand. This method has four types as given below in the. public static double pow (ScobolType operand1, ScobolType operand2) public static double pow (ScobolType operand1, double operand2) public static double pow (double operand1, ScobolType operand2) public static double pow (double operand1, double operand2) Equivalent to the SCOBOL statement operand1 ** operand2 in an arithmetic expression.. The result of this operation is an intermediate result

187 Class Cursor operand1 operand2 The first operand in the intermediate operation of exponentiation. The second operand; an integer. Class Cursor Package pathway.its public pathway.its.cursor extends ScobolType This abstract class is the Java representation of the SCREEN COBOL special registers NEW-CURSOR and OLD-CURSOR. Member Summary Data Members Pic9 cursorcol Pic9 cursorrow Object representation of the field NEW-CURSOR-COL or OLD-CURSOR-COL Object representation of the field NEW-CURSOR-ROW or OLD-CURSOR-ROW Constructor Cursor() 6-123

188 Class Cursor Abstract Method Implementation gethostlength() gethostvalue() sethostvalue() Returns the number of bytes required to store the NonStop Kernel representation of the data Returns the NonStop Kernel representation of the data as a byte array Updates the value of the object with the given byte array Class-Specific Methods initialize() Equivalent to the SCREEN COBOL statement MOVE ZEROS to NEW-CURSOR or MOVE ZEROS TO OLD-CURSOR Method Constructor public Cursor() Method gethostlength Purpose Returns the number of bytes required to store the NonStop Kernel representation of the data. public int gethostlength() Return Value Returns the number of bytes required to represent the equivalent SCREEN COBOL data item in the NonStop Kernel. Method gethostvalue Purpose Returns the NonStop Kernel representation of the data as a byte array. public byte [] gethostvalue() 6-124

189 Class Cursor The length of the returned byte array will be the same as that returned by gethostlength(). Return Value Returns the byte array used to represent the numeric value in the NonStop Kernel. Method sethostvalue Purpose Updates the value of the object with the given byte array. public void sethostvalue (byte[] data) This method is used to store a byte pattern in this object. data The byte array whose contents will be the new value of this object. The length of the array must be greater than or equal to gethostlength(). Method initialize Purpose Sets the values of the cursorrow and cursorcol objects to zeros. public void initialize() Equivalent to the SCREEN COBOL statement MOVE ZEROS TO NEW-CURSOR or MOVE ZEROS TO OLD-CURSOR

190 Exception Classes Exception Classes The exception classes provide handling for the Java equivalents of SCREEN COBOL exceptions. Class ExitProgramException Package pathway.its public pathway.its.exitprogramexception extends RunTimeException This class represents the exception that is thrown when an error is encountered during processing of an EXIT PROGRAM statement. Member Summary Constructor ExitProgramException() Method Constructor public ExitProgramException() Class ScobolException Package pathway.its public pathway.its.scobolexception extends java.lang.runtimeexception This class represents the exception that is thrown when an unrecoverable error is encountered. In general, this exception is thrown in cases where the terminal executing the SCREEN COBOL program would be suspended

191 Class ScobolSendException Member Summary Constructor ScobolException() Method Constructor (int argument) public ScobolException (int errornum) A string corresponding to the error number is passed to the parent class (RuntimeException) and is then available through a call to tostring(). errornum The error number that caused the exception to be thrown Method Constructor (String argument) public ScobolException (String exceptionstring) exceptionstring A string that is passed to the parent class (RuntimeException) and is then available through a call to tostring() Class ScobolSendException Package pathway.its public pathway.its.scobolsendexception extends java.lang.exception This class represents the exception that is thrown when an error is encountered during a SEND operation to a server class

192 Class ScobolTxnException Member Summary Constructor ScobolSendException() Method Constructor (int argument) public ScobolSendException (int errornum) A string corresponding to the error number is passed to the parent class (Exception) and is then available through a call to tostring(). errornum The error number that caused the exception to be thrown Method Constructor (String argument) public ScobolSendException (String exceptionstring) exceptionstring A string that is passed to the parent class (Exception) and is then available through a call to tostring() Class ScobolTxnException Package pathway.its public pathway.its.scoboltxnexception extends java.lang.exception This class represents the exception that is thrown when an error is encountered during processing of a transactional operation (BeginTransaction, EndTransaction, or AbortTransaction)

193 Class StopRunException Member Summary Constructor ScobolTxnException() Method Constructor public ScobolTxnException() Class StopRunException Package pathway.its public pathway.its.stoprunexception extends RunTimeException This class represents the exception that is thrown when an error is encountered during processing of a STOP RUN statement. Member Summary Constructor StopRunException() Method Constructor public StopRunException() Class TransformException Package pathway.its public pathway.its.transformexception extends RunTimeException 6-129

194 Class TransformException This class represents the exception that is thrown when an error is encountered during processing of a TRANSFORM statement. Member Summary Constructor TransformException() Method Constructor public TransformException() 6-130

195 User Conversion Classes User Conversion Classes The user conversion classes define the Java equivalent of the standard user conversion routines in PATHTCPL. Class UserConversion Package pathway.its public interface pathway.its.userconversion This interface class is used by the ScLibUserConversion class. Member Summary Constructor UserConversion() Methods doinputuserconversion() dooutputuserconversion() Interface to the screen input user conversion routines Interface to the screen output user conversion routines Method Constructor public UserConversion() Method doinputuserconversion public boolean doinputuserconversion (ScreenField[] fldarray) 6-131

196 Class ScLibUserConversion fldarray An array of ScreenField objects for which user conversion is to be done; corresponds to screen fields having the USER CONVERSION clause in SCREEN COBOL This method is automatically invoked during execution of the accept() method. It is called before the data is moved from the screen fields to the associated TO objects. It is equivalent to the USER^ALPHA^INPUT^CONVERSION and USER^NUMERIC^INPUT^CONVERSION procedures in the TCP user library object file, PATHTCPL. Method dooutputuserconversion public boolean dooutputuserconversion (ScreenField[] fldarray) fldarray An array of ScreenField objects for which user conversion is to be done; corresponds to screen fields having the USER CONVERSION clause in SCREEN COBOL This method is automatically invoked during execution of the display() method. It is called before the data is updated in the HTML fields. It is equivalent to the USER^ALPHA^OUTPUT^CONVERSION and USER^NUMERIC^OUTPUT^CONVERSION procedures in the TCP user library object file, PATHTCPL. Class ScLibUserConversion Package pathway.its public pathway.its.sclibuserconversion This class provides the Java equivalent of the standard user conversion routines provided in the TCP user library object file, PATHTCPL

197 Class ScLibUserConversion Member Summary Constructor ScLibUserConversion() Methods doinputuserconversion() dooutputuserconversion() getserverclassname() Implementation of the standard screen input user conversion routines Implementation of the standard screen output user conversion routines Returns the name of the server class that performs the user conversion Method Constructor public ScLibUserConversion (String serverclass, Gateway gateway) Constructor for the ScLibUserConversion class. serverclass gateway Name of the user conversion server class Gateway object to be used for server-class send operations to the user conversion server Method doinputuserconversion Purpose Performs input user conversion. public boolean doinputuserconversion (ScreenField[] fldarray) 6-133

198 Class ScLibUserConversion fldarray An array of ScreenField objects for which user conversion is to be done; corresponds to screen fields having the USER CONVERSION clause in SCREEN COBOL This method is automatically invoked during execution of the accept() method. It is called before the data is moved from the screen fields to the associated TO objects. It is equivalent to the USER^ALPHA^INPUT^CONVERSION and USER^NUMERIC^INPUT^CONVERSION procedures in the TCP user library object file, PATHTCPL. Method dooutputuserconversion Purpose Performs output user conversion. public boolean dooutputuserconversion (ScreenField[] fldarray) fldarray An array of ScreenField objects for which user conversion is to be done; corresponds to screen fields having the USER CONVERSION clause in SCREEN COBOL This method is automatically invoked during execution of the display() method. It is called before the data is updated in the HTML fields. It is equivalent to the USER^ALPHA^OUTPUT^CONVERSION and USER^NUMERIC^OUTPUT^CONVERSION procedures in the TCP user library object file, PATHTCPL. Method getserverclassname public String getserverclassname() Return Value Returns the name of the server class used for user conversion

199 7 Introduction to Pathway/iTS 1.1 Pathway/iTS 1.1 provides large message (more than 32,000 bytes) communication support between SCOBOL requesters (and converted Java clients) and Pathway servers. Today, support for large message communication is available to TS/MP Pathsend requesters in the form of context-sensitive APIs (SERVERCLASS_DIALOG_* APIs). Pathway/iTS 1.1 intends to support large message communication by introducing a new TCP process called PATHTCP4. The new TCP component of Pathway/iTS 1.1 is a Pathsend requester and uses Pathsend APIs to forward the application message to Pathway servers. Four new SCOBOL verbs (DIALOG-ABORT, DIALOG-BEGIN, DIALOG-END, and DIALOG-SEND) are introduced in Pathway/iTS 1.1 to support large message communication. To process the SEND verb in SCOBOL program (and in converted Java clients), PATHTCP4 makes SERVERCLASS_SEND_ API call, and to process the DIALOG-* verbs, PATHTCP4 makes SERVERCLASS_DIALOG_* API calls. PATHTCP4 never communicates to any PATHMON process directly for link management activities. The SCUP and Web Client components of Pathway/iTS 1.1 are also changed to support the new functionalities. Any existing Pathway/iTS 1.0 application can be used along with PATHTCP4 component of Pathway/iTS 1.1 with minimal changes or no changes to the applications. However, for compatibility reasons, Pathway/iTS 1.1 package also includes PATHTCP3, the legacy TCP component. 7-1

200 Introduction to Pathway/iTS 1.1 Architecture of Pathway/iTS 1.1 Architecture of Pathway/iTS 1.1 Figure 7-1. Architecture of Pathway/iTS 1.1 NonStop TS/MP Environment SERVER CLASS COMMAND TERM Server Processes Application Database PATHCOM PATHMON $zlnn TERM (Temporary, from RUN Program) PATHTCP4 APPLICATION TERM Screen Program TERM (Configured) WEB CLIENT Router Pathway/iTS 1.1 Environment VST003.VSD 7-2

DSM/SCM Messages Manual

DSM/SCM Messages Manual DSM/SCM Messages Manual Abstract This manual provides cause, effect, and recovery information for messages and errors that you might encounter while using the Distributed Systems Management/Software Configuration

More information

HPE NonStop Development Environment for Eclipse 6.0 Debugging Supplement

HPE NonStop Development Environment for Eclipse 6.0 Debugging Supplement HPE NonStop Development Environment for Eclipse 6.0 Debugging Supplement Part Number: 831776-001 Published: June 2016 Edition: L16.05 and subsequent L-series RVUs, J06.20 and subsequent J-series RVUs Copyright

More information

HPE NonStop Remote Server Call (RSC/MP) Messages Manual

HPE NonStop Remote Server Call (RSC/MP) Messages Manual HPE NonStop Remote Server Call (RSC/MP) Messages Manual Abstract This manual provides a listing and description of RSC/MP messages that are reported on the HPE NonStop host and on RSC/MP workstations.

More information

HP NonStop MXDM User Guide for SQL/MX Release 3.2

HP NonStop MXDM User Guide for SQL/MX Release 3.2 HP NonStop MXDM User Guide for SQL/MX Release 3.2 HP Part Number: 691119-001 Published: August 2012 Edition: J06.14 and subsequent J-series RVUs; H06.25 and subsequent H-series RVUs Copyright 2012 Hewlett-Packard

More information

Code Profiling Utilities Manual

Code Profiling Utilities Manual Code Profiling Utilities Manual Part Number: P04195-001 Published: April 2018 Edition: L15.02 and all subsequent L-series RVUs, J06.03 and all subsequent J-series RVUs, and H06.03 and all subsequent H-series

More information

NonStop Development Environment for Eclipse 7.0 Debugging Supplement

NonStop Development Environment for Eclipse 7.0 Debugging Supplement NonStop Development Environment for Eclipse 7.0 Debugging Supplement Part Number: 831776-002 Published: August 2017 Edition: L15.02 and all subsequent L-series RVUs, J06.18 and all subsequent J-series

More information

Safeguard Administrator s Manual

Safeguard Administrator s Manual Safeguard Administrator s Manual Part Number: 862340-003a Published: June 2017 Edition: L15.02, J06.03, H06.08, and G06.29, and later L-series, J-series, H-series, and G-series RVUs. 2011, 2017 Hewlett

More information

Spooler Plus Programmer s Guide

Spooler Plus Programmer s Guide Spooler Plus Programmer s Guide Abstract This manual describes the Spooler Plus subsystem, its uses, and its applications. This guide is intended for application programmers who want to use the Spooler

More information

HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers

HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers HPE Code Coverage Tool Reference Manual for HPE Integrity NonStop NS-Series Servers Abstract This manual describes the HPE Code Coverage Tool for HPE Integrity NonStop NS-Series Servers. It addresses application

More information

DLL Programmer s Guide for TNS/E Systems

DLL Programmer s Guide for TNS/E Systems DLL Programmer s Guide for TNS/E Systems Abstract This guide describes how application programmers can use the DLL facilities provided on TNS/E systems and recommends good practices in using them. Product

More information

HP Database Manager (HPDM) User Guide

HP Database Manager (HPDM) User Guide HP Database Manager (HPDM) User Guide HP Part Number: 597527-001 Published: March 2010 Edition: HP Neoview Release 2.4 Service Pack 2 Copyright 2010 Hewlett-Packard Development Company, L.P. Legal Notice

More information

Native Inspect Manual

Native Inspect Manual Native Inspect Manual Part Number: 528122-015R Published: November 2015 Edition: H06.23 and subsequent H-series RVUs, J06.12 and subsequent J-series RVUs, and L15.02 and subsequent L-series RVUs Copyright

More information

Virtual Hometerm Subsystem (VHS) Manual

Virtual Hometerm Subsystem (VHS) Manual Virtual Hometerm Subsystem (VHS) Manual Abstract This manual describes the Compaq NonStop Virtual Hometerm Subsystem (VHS). VHS acts as a virtual home terminal for applications by emulating a 6530 terminal.

More information

Mid-Range Library Media Manager Installation and User s Guide

Mid-Range Library Media Manager Installation and User s Guide Mid-Range Library Media Manager Installation and User s Guide Abstract This guide describes how to install and use the Mid-Range Library Media Manager software. It includes information about connection

More information

Library Media Manager Installation and User s Guide

Library Media Manager Installation and User s Guide Library Media Manager Installation and User s Guide Abstract This guide describes how to install and use the Library Media Manager software. It includes information about connection with an HP Integrity

More information

EMS FastStart Manual. Abstract. Product Version. Supported Releases. Part Number Published Release ID

EMS FastStart Manual. Abstract. Product Version. Supported Releases. Part Number Published Release ID EMS FastStart Manual Abstract This manual provides information about the EMS FastStart program including installation, event message design, instructions for running the program, and customizing EMS FastStart

More information

Native Inspect Manual

Native Inspect Manual Native Inspect Manual Abstract This manual describes how to use the symbolic command-line debugger Native Inspect for debugging TNS/E native processes and snapshot files on HP NonStop Series TNS/E systems.

More information

TNS/R Native Application Migration Guide

TNS/R Native Application Migration Guide TNS/R Native Application Migration Guide Abstract This manual introduces the HP NonStop Series/RISC (TNS/R) native development and execution environments and explains how to migrate existing HP NonStop

More information

HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide

HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide HP NonStop SQL/MX 2.3.x to SQL/MX 3.0 Database and Application Migration Guide Abstract This manual explains how to migrate databases and applications from HP NonStop SQL/MX 2.3.x to SQL/MX Release 3.0

More information

HP Business Availability Center

HP Business Availability Center HP Business Availability Center for the Windows and Solaris operating systems Software Version: 8.00 Embedded UCMDB Applets Using Direct Links Document Release Date: January 2009 Software Release Date:

More information

HPE NonStop SQL/MX Release Guide to Stored Procedures in Java

HPE NonStop SQL/MX Release Guide to Stored Procedures in Java HPE NonStop SQL/MX Release 3.2.1 Guide to Stored Procedures in Java Part Number: 691166-003R Published: November 2015 Copyright 2013, 2015 Hewlett Packard Enterprise Development LP The information contained

More information

HP NonStop Server Guide for BEA WebLogic Server 9.2

HP NonStop Server Guide for BEA WebLogic Server 9.2 HP NonStop Server Guide for BEA WebLogic Server 9.2 Abstract This manual describes the installation, configuration, and management of the BEA WebLogic Server on HP Integrity NonStop NS-series servers.

More information

HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide

HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide HP NonStop Remote Server Call (RSC/MP) Installation and Configuration Guide Abstract This manual describes the installation, configuration, and management of RSC/MP software on a HP NonStop system acting

More information

HP Database Manager (HPDM) User Guide

HP Database Manager (HPDM) User Guide HP Database Manager (HPDM) User Guide HP Part Number: 613120-001 Published: July 2010 Edition: HP Neoview Release 2.5 Copyright 2010 Hewlett-Packard Development Company, L.P. Legal Notice Confidential

More information

Guidelines for using Internet Information Server with HP StorageWorks Storage Mirroring

Guidelines for using Internet Information Server with HP StorageWorks Storage Mirroring HP StorageWorks Guidelines for using Internet Information Server with HP StorageWorks Storage Mirroring Application Note doc-number Part number: T2558-96338 First edition: June 2009 Legal and notice information

More information

HP NonStop SQL/MX Release Guide to Stored Procedures in Java

HP NonStop SQL/MX Release Guide to Stored Procedures in Java HP NonStop SQL/MX Release 3.2.1 Guide to Stored Procedures in Java HP Part Number: 691166-003 Published: June 2013 Copyright 2013 Hewlett-Packard Development Company L.P. Confidential computer software.

More information

NonStop Server for Java Message Service User s Manual

NonStop Server for Java Message Service User s Manual NonStop Server for Java Message Service User s Manual Abstract NonStop Server for Java Message Service (NSJMS) is an implementation of Sun Microsystems Java Message Service (JMS) API on HP NonStop S-series

More information

LOB Guide. Version 2.4.0

LOB Guide. Version 2.4.0 Version 2.4.0 Table of Contents 1. About This Document........................................................................... 4 1.1. Intended Audience.........................................................................

More information

Enform Plus Reference Manual

Enform Plus Reference Manual Enform Plus Reference Manual Abstract This manual provides detailed information about the syntax of the Enform Plus language. Product Version Enform Plus D46 Supported Releases This manual supports D46.00

More information

NonStop Development Environment for Eclipse 4.0 Debugging Supplement

NonStop Development Environment for Eclipse 4.0 Debugging Supplement NonStop Development Environment for Eclipse 4.0 Debugging Supplement HP Part Number: 732675-001 Published: October 2013 Edition: NSDEE 4.0, J06.03 and subsequent J-series RVUs, H06.08 and subsequent H-series

More information

CROSSREF Manual. Tools and Utilities Library

CROSSREF Manual. Tools and Utilities Library Tools and Utilities Library CROSSREF Manual Abstract This manual describes the CROSSREF cross-referencing utility, including how to use it with C, COBOL 74, COBOL85, EXTENDED BASIC, FORTRAN, Pascal, SCREEN

More information

dba/m Database Manager V7.1 User s Guide

dba/m Database Manager V7.1 User s Guide dba/m Database Manager V7.1 User s Guide Release 7.1. May, 2005 Copyright Information Copyright 1996-2005 by Genus Software, Incorporated. All rights reserved. Trademark Acknowledgments NonStop dba/m Database

More information

HP NonStop Open System Services ODBC/MX Client Driver

HP NonStop Open System Services ODBC/MX Client Driver HP NonStop Open System Services ODBC/MX Client Driver Abstract This manual describes how to install and configure the HP NonStop Open System Services (OSS) ODBC/MX Client Driver. This product enables applications

More information

HP NonStop SQL/MX Release 3.2 Installation and Upgrade Guide

HP NonStop SQL/MX Release 3.2 Installation and Upgrade Guide HP NonStop SQL/MX Release 3.2 Installation and Upgrade Guide HP Part Number: 691118-003 Published: May 2013 Edition: J06.14 and subsequent J-series RVUs; H06.25 and subsequent H-series RVUs Copyright 2013

More information

Videoscape Distribution Suite Software Installation Guide

Videoscape Distribution Suite Software Installation Guide First Published: August 06, 2012 Last Modified: September 03, 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800

More information

OSI/FTAM Responder Manual

OSI/FTAM Responder Manual OSI/FTAM Responder Manual Abstract This manual describes the operation of the Compaq Open Systems Interconnection/File Transfer, Access and Management (OSI/FTAM) responder and its virtual filestore (VFS).

More information

ViewSys User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published

ViewSys User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published ViewSys User s Guide Abstract ViewSys provides system managers and system operators the ability to view system resources on HP NonStop servers. This manual describes how the ViewSys program operates and

More information

HP Web Jetadmin Report Generation Plug-in

HP Web Jetadmin Report Generation Plug-in HP Web Jetadmin Report Generation Plug-in HP Web Jetadmin Report Generation Plug-in Reference Manual Copyright notice 2006 Copyright Hewlett-Packard Development Company, L.P. Reproduction, adaptation

More information

HP Intelligent Management Center Remote Site Management User Guide

HP Intelligent Management Center Remote Site Management User Guide HP Intelligent Management Center Remote Site Management User Guide Abstract This book provides overview and procedural information for Remote Site Management, an add-on service module to the Intelligent

More information

HP Integrity NonStop BladeSystem Planning Guide

HP Integrity NonStop BladeSystem Planning Guide HP Integrity NonStop BladeSystem Planning Guide HP Part Number: 545740-08 Published: November 202 Edition: J06.3 and subsequent J-series RVUs Copyright 202 Hewlett-Packard Development Company, L.P. Legal

More information

Cisco TEO Adapter Guide for

Cisco TEO Adapter Guide for Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387) Fax: 408 527-0883 Text Part

More information

IBM Network Station Runtime Environment for RS/6000 Network Station Browser Guide

IBM Network Station Runtime Environment for RS/6000 Network Station Browser Guide IBM Network Station Runtime Environment for RS/6000 Network Station Browser Guide Document Number NSBR-NETW-ST To view or print the latest update, go to http://www.as400.ibm.com/networkstation/rs6000/

More information

PEEK Reference Manual

PEEK Reference Manual PEEK Reference Manual Abstract This manual describes PEEK, a utility used to monitor the statistical data of processors in HPE Integrity NonStop BladeSystems, HPE Integrity NS-series systems, HPE NonStop

More information

HP X.25 for OpenVMS Security Guide

HP X.25 for OpenVMS Security Guide HP X.25 for OpenVMS Security Guide Order Number: AA Q2P2C TE July 2005 This manual explains how to set up, manage, and monitor X.25 Security to protect your X.25 system from unauthorized incoming calls

More information

Cisco TEO Adapter Guide for Microsoft Windows

Cisco TEO Adapter Guide for Microsoft Windows Cisco TEO Adapter Guide for Microsoft Windows Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800

More information

Telserv Manual Abstract Product Versions Supported Release Version Updates (RVUs) Part Number Published

Telserv Manual Abstract Product Versions Supported Release Version Updates (RVUs) Part Number Published Telserv Manual Abstract This manual describes the HP NonStop Telserv subsystem. Part I contains a product overview. Part II contains operational and configuration information for system administrators,

More information

Cisco Connected Grid Design Suite (CGDS) - Substation Workbench Designer User Guide

Cisco Connected Grid Design Suite (CGDS) - Substation Workbench Designer User Guide Cisco Connected Grid Design Suite (CGDS) - Substation Workbench Designer User Guide Release 1.5 October, 2013 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone

More information

HP OpenVMS Software-Based iscsi Initiator Technology Demonstration Kit Configuration and User s Guide

HP OpenVMS Software-Based iscsi Initiator Technology Demonstration Kit Configuration and User s Guide HP OpenVMS Software-Based iscsi Initiator Technology Demonstration Kit Configuration and User s Guide November 2007 This manual describes how to configure and use the HP OpenVMS Software-Based iscsi Initiator

More information

HPE Intelligent Management Center

HPE Intelligent Management Center HPE Intelligent Management Center Service Health Manager Administrator Guide Abstract This guide provides introductory, configuration, and usage information for Service Health Manager (SHM). It is for

More information

HP DECset for OpenVMS Guide to the Code Management System

HP DECset for OpenVMS Guide to the Code Management System HP DECset for OpenVMS Guide to the Code Management System Order Number: AA KL03H TE July 2005 This manual describes the concepts, commands, and features of the Code Management System (CMS). Revision/Update

More information

TIC Server Object Gateway User s Guide

TIC Server Object Gateway User s Guide TIC Server Object Gateway User s Guide Glossary Index Figures Tables What s New in This Manual ix Manual Information ix New and Changed Information ix About This Manual xi Objectives of This Manual Audience

More information

Authentication of a WS Client Using a SAP Logon Ticket

Authentication of a WS Client Using a SAP Logon Ticket Authentication of a WS Client Using a SAP Logon Ticket Release 650 HELP.BCWEBSERVICES_TUTORIALS SAP Online Help 04.04.2005 Copyright Copyright 2004 SAP AG. All rights reserved. No part of this publication

More information

HP 3PAR OS MU1 Patch 11

HP 3PAR OS MU1 Patch 11 HP 3PAR OS 313 MU1 Patch 11 Release Notes This release notes document is for Patch 11 and intended for HP 3PAR Operating System Software HP Part Number: QL226-98041 Published: December 2014 Edition: 1

More information

Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007

Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007 Cisco TEO Adapter Guide for Microsoft System Center Operations Manager 2007 Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com

More information

Standardize Microsoft SQL Server Cluster Provisioning Using HP DMA

Standardize Microsoft SQL Server Cluster Provisioning Using HP DMA Technical white paper Standardize Microsoft SQL Server Cluster Provisioning Using HP DMA HP Database and Middleware Automation version 10.30 Table of Contents Purpose 2 Prerequisites 4 Process Overview

More information

ExpressCluster X SingleServerSafe 3.2 for Windows. Configuration Guide. 2/19/2014 1st Edition

ExpressCluster X SingleServerSafe 3.2 for Windows. Configuration Guide. 2/19/2014 1st Edition ExpressCluster X SingleServerSafe 3.2 for Windows Configuration Guide 2/19/2014 1st Edition Revision History Edition Revised Date Description First 2/19/2014 New manual Copyright NEC Corporation 2014.

More information

L-Series Application Migration Guide

L-Series Application Migration Guide L-Series Application Migration Guide Abstract This guide introduces the L-series application development and execution environments and explains how to migrate existing H- and J- series applications to

More information

Cisco C880 M4 Server User Interface Operating Instructions for Servers with E v2 and E v3 CPUs

Cisco C880 M4 Server User Interface Operating Instructions for Servers with E v2 and E v3 CPUs Cisco C880 M4 Server User Interface Operating Instructions for Servers with E7-8800 v2 and E7-8800 v3 CPUs November, 2015 THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT

More information

HPE ALM Excel Add-in. Microsoft Excel Add-in Guide. Software Version: Go to HELP CENTER ONLINE

HPE ALM Excel Add-in. Microsoft Excel Add-in Guide. Software Version: Go to HELP CENTER ONLINE HPE ALM Excel Add-in Software Version: 12.55 Microsoft Excel Add-in Guide Go to HELP CENTER ONLINE http://alm-help.saas.hpe.com Document Release Date: August 2017 Software Release Date: August 2017 Legal

More information

HP Operations Orchestration Software

HP Operations Orchestration Software HP Operations Orchestration Software Software Version: 7.51 HP SiteScope Integration Guide Document Release Date: August 2009 Software Release Date: August 2009 Legal Notices Warranty The only warranties

More information

Introduction to. Pathmaker D20

Introduction to. Pathmaker D20 Data Management Library Introduction to Pathmaker Abstract Part Number 067867 Edition This manual introduces the Pathmaker product. It defines basic Pathmaker terminology, suggests several approaches for

More information

Structure and Overview of Manuals

Structure and Overview of Manuals FUJITSU Software Systemwalker Operation Manager Structure and Overview of Manuals UNIX/Windows(R) J2X1-6900-08ENZ0(00) May 2015 Introduction Purpose of This Document Please ensure that you read this document

More information

Measure User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published

Measure User s Guide Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published Measure User s Guide Abstract This manual describes how to use the Measure performance monitor to collect and examine data, through either a command interface or programmatic interface. This manual is

More information

Introducing HP Reporter. HP Reporter Window. How HP Reporter Works. Generated and Custom Reports. Customizing Reporter. Scalability and Requirements

Introducing HP Reporter. HP Reporter Window. How HP Reporter Works. Generated and Custom Reports. Customizing Reporter. Scalability and Requirements Introducing HP Reporter HP Reporter Window How HP Reporter Works Generated and Custom Reports Customizing Reporter Scalability and Requirements Configuring Secure Communication Advanced Topics Configuring

More information

HP-UX TN3270 Users Guide

HP-UX TN3270 Users Guide HP-UX TN3270 Users Guide Edition 1 HP Part Number J2656-90030 J2656-90030 HP 9000 Networking E03/98 Printed in: United States Copyright 1998 Hewlett-Packard Company, 1998. All rights reserved Legal Notices

More information

HPE 3PAR OS MU3 Patch 24 Release Notes

HPE 3PAR OS MU3 Patch 24 Release Notes HPE 3PAR OS 3.1.3 MU3 Patch 24 Release Notes This release notes document is for Patch 24 and intended for HPE 3PAR Operating System Software + P19. Part Number: QL226-99298 Published: August 2016 Edition:

More information

Guardian Procedure Errors and Messages Manual

Guardian Procedure Errors and Messages Manual Guardian Procedure Errors and Messages Manual Abstract This manual describes the Guardian messages for HP systems that use the HP NonStopTM operating system. The manual covers the following types of messages:

More information

HP Intelligent Management Center Branch Intelligent Management System (BIMS) User Guide

HP Intelligent Management Center Branch Intelligent Management System (BIMS) User Guide HP Intelligent Management Center Branch Intelligent Management System (BIMS) User Guide Abstract This guide contains basic information for network administrators, engineers, and operators who use the Branch

More information

HP NonStop CORBA Administration Guide

HP NonStop CORBA Administration Guide HP NonStop CORBA 2.6.1 Administration Guide HP NonStop CORBA 2.6.1 Administration Guide Part number: 867608 001. Published September 2016. Legal Notice Abstract This manual provides information for administrators

More information

HP Database and Middleware Automation

HP Database and Middleware Automation HP Database and Middleware Automation For Windows Software Version: 10.10 SQL Server Database Refresh User Guide Document Release Date: June 2013 Software Release Date: June 2013 Legal Notices Warranty

More information

Cisco TEO Adapter Guide for SAP Java

Cisco TEO Adapter Guide for SAP Java Release 2.3 April 2012 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387) Fax: 408 527-0883 Text Part

More information

HP 3PAR OS MU3 Patch 18 Release Notes

HP 3PAR OS MU3 Patch 18 Release Notes HP 3PAR OS 3.2.1 MU3 Patch 18 Release Notes This release notes document is for Patch 18 and intended for HP 3PAR Operating System Software 3.2.1.292 (MU3). HP Part Number: QL226-98326 Published: August

More information

BEA Liquid Data for. WebLogic. Deploying Liquid Data

BEA Liquid Data for. WebLogic. Deploying Liquid Data BEA Liquid Data for WebLogic Deploying Liquid Data Release: 1.0.1 Document Date: October 2002 Revised: December 2002 Copyright Copyright 2002 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend

More information

DataLoader/MX Reference Manual

DataLoader/MX Reference Manual DataLoader/MX Reference Manual Abstract This manual describes the features and functionality of the DataLoader/MX product, a tool to load HP NonStop SQL/MX, SQL/MP, and Enscribe databases. Product Version

More information

EView/400i Management for HP BSM. Operations Manager i

EView/400i Management for HP BSM. Operations Manager i EView/400i Management for HP BSM Operations Manager i Concepts Guide Software Version: 7.00 July 2015 Legal Notices Warranty EView Technology makes no warranty of any kind with regard to this document,

More information

HPE FlexNetwork MSR Router Series

HPE FlexNetwork MSR Router Series HPE FlexNetwork MSR Router Series Comware 7 OAA Configuration Guides Part number: 5998-8789 Software version: CMW710-E0407 Document version: 6W100-20160526 Copyright 2016 Hewlett Packard Enterprise Development

More information

Setting Up an Environment for Testing Applications in a Federated Portal Network

Setting Up an Environment for Testing Applications in a Federated Portal Network SAP NetWeaver How-To Guide Setting Up an Environment for Testing Applications in a Federated Portal Network Applicable Releases: SAP NetWeaver 7.0 IT Practice: User Productivity Enablement IT Scenario:

More information

HP DECwindows Motif for OpenVMS Documentation Overview

HP DECwindows Motif for OpenVMS Documentation Overview HP for OpenVMS Documentation Overview Order Number: BA402-90002 July 2006 This overview provides information about for OpenVMS Version 1.6 documentation. Revision/Update Information: This manual supersedes

More information

HP StorageWorks 4000/6000/8000 Enterprise Virtual Array connectivity for Sun Solaris installation and reference guide

HP StorageWorks 4000/6000/8000 Enterprise Virtual Array connectivity for Sun Solaris installation and reference guide HP StorageWorks 4000/6000/8000 Enterprise Virtual Array connectivity for Sun Solaris installation and reference guide Part number: 5697-5263 First edition: May 2005 Legal and notice information Copyright

More information

HP Operations Manager

HP Operations Manager HP Operations Manager Software Version: 9.22 UNIX and Linux operating systems Java GUI Operator s Guide Document Release Date: December 2016 Software Release Date: December 2016 Legal Notices Warranty

More information

HP 3PAR OS MU3 Patch 17

HP 3PAR OS MU3 Patch 17 HP 3PAR OS 3.2.1 MU3 Patch 17 Release Notes This release notes document is for Patch 17 and intended for HP 3PAR Operating System Software. HP Part Number: QL226-98310 Published: July 2015 Edition: 1 Copyright

More information

HPE 3PAR OS GA Patch 12

HPE 3PAR OS GA Patch 12 HPE 3PAR OS 3.3.1 GA Patch 12 Upgrade Instructions Abstract This upgrade instructions document is for installing Patch 12 on the HPE 3PAR Operating System Software OS-3.3.1.215-GA. This document is for

More information

TCP/IP Applications and Utilities User Guide

TCP/IP Applications and Utilities User Guide TCP/IP Applications and Utilities User Guide HP Part Number: 427639-010 Published: August 2013 Edition: This manual supports J06.03 and subsequent J-series RVUs, H06.03 and subsequent H-series RVUs, and

More information

Visual Composer for NetWeaver CE: Getting Started with a Typical Workflow

Visual Composer for NetWeaver CE: Getting Started with a Typical Workflow Visual Composer for NetWeaver CE: Getting Started with a Typical Workflow Applies to: Visual Composer for SAP NetWeaver Composition Environment 7.1 Summary This article aims to help you get started modeling

More information

SQL Studio (BC) HELP.BCDBADASQL_72. Release 4.6C

SQL Studio (BC) HELP.BCDBADASQL_72. Release 4.6C HELP.BCDBADASQL_72 Release 4.6C SAP AG Copyright Copyright 2001 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express

More information

Debug Manual Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published

Debug Manual Abstract Product Version Supported Release Version Updates (RVUs) Part Number Published Debug Manual Abstract This manual describes the Guardian debug facility (Debug) on HP NonStop systems. Product Version G07 Supported Release Version Updates (RVUs) This publication supports G06.06 and

More information

Software Product Description

Software Product Description Software Product Description PRODUCT NAME: HP SNA APPC/LU6.2 Programming SPD 26.88.12 This SPD describes the HP SNA APPC/LU6.2 Programming Interface for OpenVMS, which is available for the OpenVMS Operating

More information

HPE 3PAR OS MU5 Patch 49 Release Notes

HPE 3PAR OS MU5 Patch 49 Release Notes HPE 3PAR OS 3.2.1 MU5 Patch 49 Release Notes This release notes document is for Patch 49 and intended for HPE 3PAR Operating System Software + P39. Part Number: QL226-99362a Published: October 2016 Edition:

More information

HP NonStop Server Guide for BEA WebLogic Server 8.1

HP NonStop Server Guide for BEA WebLogic Server 8.1 HP NonStop Server Guide for BEA WebLogic Server 8.1 Abstract This manual describes the installation, configuration, and management of the BEA WebLogic Server on HP Integrity NonStop NS-series servers.

More information

Cisco UCS Director API Integration and Customization Guide, Release 5.4

Cisco UCS Director API Integration and Customization Guide, Release 5.4 Cisco UCS Director API Integration and Customization Guide, Release 5.4 First Published: November 03, 2015 Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com

More information

Compaq Availability Manager User s Guide

Compaq Availability Manager User s Guide Compaq Availability Manager User s Guide Order Number: AA-RNSJB-TE June 2002 This guide explains how to use Compaq Availability Manager software to detect and correct system availability problems. Revision/Update

More information

nld Manual Abstract Product Version Supported Release Updates (RVUs) Part Number Published

nld Manual Abstract Product Version Supported Release Updates (RVUs) Part Number Published nld Manual Abstract This publication explains how to use the TNS/R native link editor nld (T6017), which links and changes object file attributes. Product Version nld D44 Supported Release Updates (RVUs)

More information

HP OpenView Storage Data Protector Integration Guide

HP OpenView Storage Data Protector Integration Guide HP OpenView Storage Data Protector Integration Guide for IBM Applications: Informix DB2 Lotus Notes/Domino Manual Edition: October 2004 Manufacturing Part Number: B6960-90110 Release A.05.50 Copyright

More information

TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation

TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ Installation Software Release 7.6 November 2015 Two-Second Advantage Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE.

More information

SAP NetWeaver How-To Guide. SAP NetWeaver Gateway Virtualization Guide

SAP NetWeaver How-To Guide. SAP NetWeaver Gateway Virtualization Guide SAP NetWeaver How-To Guide SAP NetWeaver Gateway Virtualization Guide Version 1.01 May 2012 Copyright 2012 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any

More information

Project and Portfolio Management Center

Project and Portfolio Management Center Project and Portfolio Management Center Software Version: 9.42 Getting Started Go to HELP CENTER ONLINE http://admhelp.microfocus.com/ppm/ Document Release Date: September 2017 Software Release Date: September

More information

QuickSpecs. Compaq NonStop Transaction Server for Java Solution. Models. Introduction. Creating a state-of-the-art transactional Java environment

QuickSpecs. Compaq NonStop Transaction Server for Java Solution. Models. Introduction. Creating a state-of-the-art transactional Java environment Models Bringing Compaq NonStop Himalaya server reliability and transactional power to enterprise Java environments Compaq enables companies to combine the strengths of Java technology with the reliability

More information

HP Intelligent Management Center v7.1 MySQL 5.6 Installation and Configuration Guide (Windows)

HP Intelligent Management Center v7.1 MySQL 5.6 Installation and Configuration Guide (Windows) HP Intelligent Management Center v7.1 MySQL 5.6 Installation and Configuration Guide (Windows) Abstract This document provides installation and configuration information for MySQL. It includes the procedures

More information

HP OpenView Service Desk

HP OpenView Service Desk HP OpenView Service Desk OpenView Operations Integration Administrator s Guide Software Version: 5.10 For the Windows and UNIX Operating Systems Manufacturing Part Number: None Document Release Date: August

More information

Upgrading Software Version 3.1 to Version 4. HP ProCurve Secure Access 700wl Series.

Upgrading Software Version 3.1 to Version 4. HP ProCurve Secure Access 700wl Series. Upgrading Software Version 3.1 to Version 4 HP ProCurve Secure Access 700wl Series www.hp.com/go/hpprocurve HP PROCURVE SECURE ACCESS 700WL SERIES UPGRADING SOFTWARE VERSION 3.1 TO VERSION 4 Copyright

More information