Determines how many parameters were sent with the current RPC by the remote client or server.
COPY SYGWCOB.
01 TDPROC PIC S9(9) USAGE COMP SYNC. 01 NUMBER-OF-PARMS PIC S9(9) USAGE COMP SYNC.
CALL 'TDNUMPRM' USING TDPROC, NUMBER-OF-PARMS.
(I) Handle for this client/server connection. This must be the same value specified in the associated TDACCEPT call. The TDPROC handle corresponds to the connection and command handles in Open Client Client-Library.
(O) Number of parameters accepted as part of the current RPC. This argument replaces the RETCODE argument for this function and is where the result of function execution is stored.
This function returns the number of parameters in the NUMBER-OF-PARMS argument.
The following code fragment illustrates a typical use of TDNUMPRM. It does the following: calls TDNUMPRM to determine how many parameters to retrieve; calls TDLOCPRM to ascertain the number of the parameter with the information it wants; calls TDINFPRM for a description of the parameter; calls TDRCVPRM to retrieve the parameter data. This example is taken from the sample program, SYCCSAR2, in Appendix B, “Sample RPC Application for CICS.”
* Get number of parameters ... should be two CALL 'TDNUMPRM' USING GWL-PROC, GWL-NUMPRM-PARMS. IF GWL-NUMPRM-PARMS NOT = 2 THEN PERFORM TDNUMPRM-ERROR GO TO END-PROGRAM END-IF. * Get return parameter information MOVE 1 TO GWL-INFPRM-ID. PERFORM GET-PARM-INFO. (IF GWL-INFPRM-STATUS NOT = TDS-RETURN-VALUE AND IF GWL-INFPRM-STATUS NOT = TDS-RETURN-VALUE-NULLABLE) THEN PERFORM TDINFPRM-NOT-RETURN-PARM-ERROR GO TO END-PROGRAM END-IF. MOVE GWL-INFPRM-USER-DATA TO GWL-SETPRM-USER-DATA. MOVE GWL-INFPRM-ID TO GWL-SETPRM-ID. MOVE GWL-INFPRM-DATA-L TO GWL-SETPRM-DATA-L. MOVE GWL-INFPRM-TYPE TO GWL-SETPRM-TYPE. * Get department id parameter number from known name MOVE '@parm2' TO GWL-INFPRM-NAME. MOVE 6 TO GWL-INFPRM-NAME-L. CALL 'TDLOCPRM' USING GWL-PROC, GWL-INFPRM-ID, GWL-INFPRM-NAME, GWL-INFPRM-NAME-L. * Get department parameter information PERFORM GET-PARM-INFO. IF GWL-INFPRM-TYPE NOT = TDSVARYCHAR THEN PERFORM TDINFPRM-NOT-CHAR-PARM-ERROR GO TO END-PROGRAM END-IF. * Get department parameter data CALL 'TDRCVPRM' USING GWL-PROC, GWL-RC, GWL-INFPRM-ID, PARM-DEPT, GWL-INFPRM-TYPE, GWL-INFPRM-MAX-DATA-L, GWL-RCVPRM-DATA-L. *----------------------------------------------------------------- GET-PARM-INFO. *----------------------------------------------------------------- CALL 'TDINFPRM' USING GWL-PROC, GWL-RC, GWL-INFPRM-ID, GWL-INFPRM-TYPE, GWL-INFPRM-DATA-L, GWL-INFPRM-MAX-DATA-L GWL-INFPRM-STATUS, GWL-INFPRM-NAME, GWL-INFPRM-NAME-L, GWL-INFPRM-USER-DATA.
A server application uses this function to determine how many parameters were sent with a client RPC.
When a cursor command is received, this function returns the number of cursor parameters for the current cursor.
Use this function to determine how many parameters you need to retrieve with TDRCVPRM. You must call TDRCVPRM once for each parameter.
Related functions
Copyright © 2005. Sybase Inc. All rights reserved. |
![]() |