CONTENTS Title Page Copyright Page Preface 1 Introduction to Run-Time Processing 1.1 How the Form Manager Initiates and Controls Run-Time Communication 1.2 How the Form Manager Transfers Data Between the Application Program and the Form 1.3 How the Form Manager Uses Responses to Control Run-Time Processing 1.4 How the Form Manager Uses the Activation List 2 Developing the Application Program 2.1 Calling DECforms Requests 2.1.1 Enabling Requests 2.1.2 Moving Data from a Form to a Program 2.1.3 Sending Data from a Program to a Form 2.1.4 Asynchronous SEND Requests 2.1.5 Transceiving Data 2.1.6 The DISABLE Request 2.1.7 Canceling Requests 2.2 Compiling, Linking, and Running the Application Program 2.3 Writing and Calling Escape Routines 2.3.1 Linking Escape Routines in a Shareable Image 2.3.2 Creating a Vector Object Module 2.3.3 Linking Escape Routines Directly with a Program 2.3.4 Combining the Direct Link and Shareable Image Methods 2.4 Using the Form Manager Trace Facility 2.4.1 Controlling Tracing 2.4.2 Enabling and Disabling Tracing 2.4.3 Exception Conditions During Tracing 2.4.4 A Tracing Command Procedure and a Trace File 3 How the Form Manager Processes Requests 3.1 The Initialize Request Phase 3.1.1 Initializing Requests (Excluding ENABLE) 3.1.2 Initializing the ENABLE Request 3.2 The Data Distribution Phase 3.2.1 How the Form Manager Determines Where to Store Values 3.2.2 How the Data is Distributed 3.2.3 Using the DATA TRANSFER Clause 3.2.4 Shadow Records 3.2.5 Data Conversion 3.3 The Response Processing Phase 3.3.1 Performing Control Text Responses 3.3.2 Performing Responses to Requests 3.3.3 The Response Steps 3.4 Accept Phase 3.4.1 Form Data Assignment Stage 3.4.2 Panel Entry Response Stage 3.4.3 Group Entry Response Stage 3.4.4 Field Entry Response Stage 3.4.5 Operator Input Stage 3.4.6 Data Conversion Stage 3.4.7 Function Response Stage 3.4.8 Field Validation Stage 3.4.9 Field Validation Response Stage 3.4.10 Field Exit Response Stage 3.4.11 Group Validation Response Stage 3.4.12 Group Exit Response Stage 3.4.13 Panel Exit Response Stage 3.4.14 Termination Check Stage 3.4.15 Altering the Order of Activation Item Processing 3.4.16 Help Processing 3.4.16.1 Starting Help Processing 3.4.16.2 How the Help Activation List Works 3.4.16.3 Help Processing Using DECforms Defaults 3.4.16.4 Customized Help 3.5 The Request Exit Response Phase 3.6 The Form Data Collection Phase 3.6.1 Initializing Record Field Data During Data Collection 3.6.2 Receive Shadow Records 3.7 Data Transfer of Arrays 3.8 The Request Termination Phase 4 DECforms Request Calling Description ENABLE DISABLE SEND RECEIVE TRANSCEIVE CANCEL A Elementary Conditions B Receive Control Text Items C Input Processor Built-In Field Editing Functions C.1 Editing Functions C.2 Performance Considerations C.3 Default Key Bindings for Built-In Functions C.4 Built-In Function Response Syntax D Display and Performance Considerations D.1 Use of DOUBLE HIGH and DOUBLE WIDE Attributes D.2 Clearing the Display Efficiently D.3 Scrolling Efficiently D.4 Using Multiple Sessions D.5 Improving Input Performance EXAMPLES 2-1 Enabling a Form from the Sample FORTRAN Program 2-2 Calling the RECEIVE Request from the Sample FORTRAN Program 2-3 Calling the SEND Request from the Sample FORTRAN Program 2-4 Calling the TRANSCEIVE Request from the Sample FORTRAN Program 2-5 Calling the DISABLE Request from the Sample FORTRAN Program 2-6 Calling the CANCEL Request from the Sample FORTRAN Program 2-7 Turning Tracing On with the FORMS$ENABLE Call 2-8 Sample DCL Command Procedure that Invokes the Trace Facility 2-9 A Trace File Created from the Sample FORTRAN Application TABLES 2-1 Request Arguments 3-1 Default Responses 3-2 Form Manager Message Codes 4-1 FORMS$ENABLE Request Options Items 4-2 FORMS$DISABLE Request Options Items 4-3 FORMS$SEND Request Options Items 4-4 FORMS$RECEIVE Request Options Items 4-5 FORMS$TRANSCEIVE Request Options Items 4-6 FORMS$CANCEL Request Options Items B-1 Receive Control Text Items C-1 Default Key Bindings for Built-In Functions