SQL/MP Programming Manual for COBOL

Writing Pathway Servers
HP NonStop SQL/MP Programming Manual for COBOL529758-003
E-7
CALL Model: SQL Main Program
PROCEDURE DIVISION.
MAIN-SECTION SECTION.
a-init.
OPEN INPUT msg-in.
OPEN OUTPUT msg-out SYNCDEPTH 1.
PERFORM b-trans UNTIL close-from-requester.
STOP RUN.
b-trans.
MOVE SPACES to entry-reply, entry-msg.
MOVE ZERO to reply-code OF entry-reply.
READ msg-in
AT END STOP RUN
END-READ.
MOVE pw-header OF msg-in TO pw-header OF msg-out.
IF entry-type = "U" THEN
MOVE partnum OF parts-info TO partnum OF parts-
params.
MOVE inventory OF parts-info TO inventory OF parts-
params.
CALL update-parts USING BY REFERENCE
parts-params
reply-code OF entry-reply
error-code OF entry-reply
ON EXCEPTION MOVE 9996 TO reply-code OF entry-reply.
END-CALL
ELSE
IF entry-type = "I" THEN
MOVE partnum OF parts-info TO partnum OF parts-
params.
MOVE partname OF parts-info TO partname OF parts-
params.
MOVE inventory OF parts-info TO inventory OF parts-
params.
MOVE location OF parts-info TO location OF parts-
params.
MOVE price OF parts-info TO price OF parts-
params.
CALL insert-parts USING BY REFERENCE
parts-params
reply-code OF entry-reply
error-code OF entry-reply
ON EXCEPTION MOVE 9996 TO reply-code OF entry-reply.
END-CALL
ELSE
MOVE 9997 TO reply-code OF entry-reply
END-IF.
WRITE entry-reply END-WRITE.
Example E-2. CALL Model Main Program (page 3 of 3)