The Mumps side I understand pretty well.  I do not understand the role of the Remote Procedure file in interfacing to Delphi/Pascal.  Is it just documentation?  I assumed it played some active role in the interface.  In the case in question there is only one input parameter in the formal list on the line tag and that is GRMCO.  Y is of course the return parameter used by remote procedure calls.  In this case the entry in file 8994 says there are two input parameters.  Is it just incorrect documentation?  Or can it affect the funtioning of the interface?
Jim Gray
----- Original Message -----
Sent: Friday, July 15, 2005 1:48 PM
Subject: Re: [Hardhats-members] RPC MISMATCH

I don't think I'm quite sure what you are asking. In MUMPS, if a parameter is not supplied, the corresponding variable is undefined in the called routine. In cases where the parameters you wish to omit are at the end of the list, you can simply leave them out

D CALL(X,Y)

but if they are not at the end, you need to supply a "slot" for the missing parameter as in

D CALL(X,,Z)

Now, if the code being called was something like

CALL(V1,V2,V3)    ;
;do stuff
Q

then, in the first case V3 would be undefined, and in the second, V2 would be undefined. Of course, it goes without saying that if the variable bound to the actual parameter (in this case, X, Y or Z) is undefined, you will get a run time error.

===
Gregory Woodhouse

"Nothing is as powerful than an idea 
whose time has come."
-- Victor Hugo


On Jul 15, 2005, at 11:06 AM, James Gray wrote:

Are there any issues if there is a mismatch between the number of input parameters listed in file 8994 for an RPC call and the number of parameters in the formal list on the line tag.  Here is what the line tag looks like:
 
 URG(Y,GMRCO) ;new urgency from 101.42
 
Here is the info from the Remote Procedure file
 
NUMBER: 859                             NAME: ORQQCN URGENCIES
  TAG: URG                              ROUTINE: ORQQCN1
  RETURN VALUE TYPE: ARRAY              AVAILABILITY: SUBSCRIPTION
 DESCRIPTION:
 Returns a list of applicable urgencies from PROTOCOL file 101,
 given a ConsultIEN and type.
INPUT PARAMETER: Consult ID             PARAMETER TYPE: LITERAL
  MAXIMUM DATA LENGTH: 16               REQUIRED: YES
 DESCRIPTION:
 Internal file number of consult in file 123.
INPUT PARAMETER: Request type           PARAMETER TYPE: LITERAL
  MAXIMUM DATA LENGTH: 30               REQUIRED: NO
 DESCRIPTION:
 Consult or procedure.  Pointer to PROTOCOL file 101.  Value is
 either 'GMRCOR CONSULT' or 'GMRCOR REQUEST'.
 RETURN PARAMETER DESCRIPTION:
 Returns list of urgencies that apply to this request or procedure.
 in the format IEN^text.  IENs are pointers to PROTOCOL file 101.


Reply via email to