CONTENTS Title Page Copyright Page Preface Acknowledgment 1 Using DSM Callable Routines Overview Database Concepts MUMPS Global Variables Global Storage Callable Routines Data Structures Used to Represent Global References Global Data Block Global Data Block Utility Routines Subscript Data Block Subscript Data Block Utility Routines Specifying MUMPS Naked References 2 Programming Techniques Calling DSM Routines Configuration Access from the Callable Routines Rules for Writing Programs that Call DSM DSM Interaction with AST Service Routines Passing Arguments to DSM Routines Allocating Storage for Arguments Condition Values Returned Linking with the DSM Image 3 Callable Routine Descriptions Callable Routine Arguments DSM$DSM DSM$GDB_CLEAR DSM$GDB_CREATE DSM$GDB_EXTRACT DSM$GDB_FREE DSM$GDB_INITIALIZE DSM$GDB_INSERT DSM$GLOBAL_$DATA DSM$GLOBAL_$ORDER DSM$GLOBAL_$QUERY DSM$GLOBAL_GET_D - DSM for OpenVMS VAX DSM$GLOBAL_GET_F - DSM for OpenVMS VAX DSM$GLOBAL_GET_L DSM$GLOBAL_GET_T DSM$GLOBAL_KILL DSM$GLOBAL_LOCK DSM$GLOBAL_SET_D - DSM for OpenVMS VAX DSM$GLOBAL_SET_F - DSM for OpenVMS VAX DSM$GLOBAL_SET_L DSM$GLOBAL_SET_NULL DSM$GLOBAL_SET_T DSM$GLOBAL_UNLOCK DSM$INITIALIZE DSM$LOCAL_GET DSM$LOCAL_KILL DSM$LOCAL_SET DSM$RU_ABORT DSM$RU_COMMIT DSM$RU_ID DSM$RU_LEVEL DSM$RU_START DSM$RUNDOWN DSM$SDB_CLEAR DSM$SDB_COUNT DSM$SDB_CREATE DSM$SDB_EXTRACT_LIST DSM$SDB_EXTRACT_ONE_D - DSM for OpenVMS VAX DSM$SDB_EXTRACT_ONE_F - DSM for OpenVMS VAX DSM$SDB_EXTRACT_ONE_L DSM$SDB_EXTRACT_ONE_T DSM$SDB_FREE DSM$SDB_INITIALIZE DSM$SDB_INSERT_LIST DSM$SDB_INSERT_NULL DSM$SDB_INSERT_ONE_D - DSM for OpenVMS VAX DSM$SDB_INSERT_ONE_F - DSM for OpenVMS VAX DSM$SDB_INSERT_ONE_L DSM$SDB_INSERT_ONE_T DSM$XECUTE A DSM$ADBOOK.PAS Example B DSM$ORDER.FOR Example C DSM$GLIST_COBOL.COB Example D DSM$GLIST_C.C Example EXAMPLES 2-1 DSM$GLISTP.PAS Example A-1 DSM$ADBOOK.PAS Example B-1 DSM$ORDER.FOR Example C-1 DSM$GLIST_COBOL.COB Example D-1 DSM$GLIST_C.C Example FIGURES 1-1 Global Data Block Data Structure 1-2 Subscript Data Block Data Structure 3-1 Single Item Descriptor 3-2 Single Item Descriptor TABLES 1-1 Initialization and Rundown Routines 1-2 Database Access Routines 1-3 Interpreter Routines 1-4 Transaction Processing Routines 1-5 GDB Utility Routines 1-6 SDB Utility Routines 2-1 Definition Files 2-2 Constants for Allocating Storage 2-3 Language Related Constants 3-1 Supported VMS Data Types 3-2 Supported VMS Data Types