RPC Broker Help: Difference between revisions
From VistApedia
Jump to navigationJump to search
No edit summary |
No edit summary |
||
| Line 3: | Line 3: | ||
<HR> | <HR> | ||
<H1>RPC Broker V 1.1 Developer's Guide</H1> | |||
* Overview | * <h2>Overview</h2> | ||
** [[RPC_HELP_Contents|Contents]] | ** [[RPC_HELP_Contents|Contents]] | ||
** [[RPC_HELP_Introduction|Introduction]] | ** [[RPC_HELP_Introduction|Introduction]] | ||
| Line 16: | Line 16: | ||
** [[RPC_HELP_Silent_Login|Silent Login]] | ** [[RPC_HELP_Silent_Login|Silent Login]] | ||
** [[RPC_HELP_Context-sensitive_Help|Context-sensitive Help for the RPC Broker]] | ** [[RPC_HELP_Context-sensitive_Help|Context-sensitive Help for the RPC Broker]] | ||
* RPC Broker Components, Class, and Units | |||
** Classes | * <h2>RPC Broker Components, Class, and Units</h2> | ||
** <h3>Classes</h3> | |||
*** [[RPC_HELP_TMult|TMult]] | *** [[RPC_HELP_TMult|TMult]] | ||
*** [[RPC_HELP_TParamRecord|TParamRecord]] | *** [[RPC_HELP_TParamRecord|TParamRecord]] | ||
| Line 24: | Line 25: | ||
*** [[RPC_HELP_TVistaUser|TVistaUser]] | *** [[RPC_HELP_TVistaUser|TVistaUser]] | ||
*** [[RPC_HELP_TXWBWinsock|TXWBWinsock]] | *** [[RPC_HELP_TXWBWinsock|TXWBWinsock]] | ||
**Components | ** <h3>Components</h3> | ||
*** [[RPC_HELP_TCCOWRPCBroker|TCCOWRPCBroker]] | *** [[RPC_HELP_TCCOWRPCBroker|TCCOWRPCBroker]] | ||
*** [[RPC_HELP_TRPCBroker|TRPCBroker]] | *** [[RPC_HELP_TRPCBroker|TRPCBroker]] | ||
| Line 30: | Line 31: | ||
*** [[RPC_HELP_TSharedRPCBroker|TSharedRPCBroker]] | *** [[RPC_HELP_TSharedRPCBroker|TSharedRPCBroker]] | ||
*** [[RPC_HELP_TXWBRichEdit|TXWBRichEdit]] | *** [[RPC_HELP_TXWBRichEdit|TXWBRichEdit]] | ||
** Units | ** <h3>Units</h3> | ||
*** [[RPC_HELP_Hash|Hash]] | *** [[RPC_HELP_Hash|Hash]] | ||
*** [[RPC_HELP_LoginFrm|LoginFrm]] | *** [[RPC_HELP_LoginFrm|LoginFrm]] | ||
| Line 40: | Line 41: | ||
*** [[RPC_HELP_TVCEdit|TVCEdit]] | *** [[RPC_HELP_TVCEdit|TVCEdit]] | ||
** [[RPC_HELP_EBrokerError_Exception|EBrokerError Exception]] | ** [[RPC_HELP_EBrokerError_Exception|EBrokerError Exception]] | ||
* [[RPC_HELP_RPCs|Remote Procedure Calls (RPCs)]] | |||
* | * <h2>[[RPC_HELP_RPCs|Remote Procedure Calls (RPCs)]]</h2> | ||
* | ** <h3>M Entry Point for an RPC</h3> | ||
* | *** Relationship Between an M Entry Point and an RPC | ||
*** First Input Parameter | |||
*** Return Value Types | |||
*** Input Parameters | |||
*** Examples | |||
** <h3>RPC Entry in the Remote Procedure File</h3> | |||
*** RPC Entry in the Remote Procedure File | |||
*** RPC Version in the Remote Procedure File | |||
*** Blocking an RPC in the Remote Procedure File | |||
*** Cleaning after RPC Execution | |||
*** Documenting RPCs | |||
** <h3>Executing RPCs from Clients</h3> | |||
*** How to Execute an RPC from a Client | |||
*** RPC Security: How to Register an RPC | |||
*** RPC Limits | |||
*** BrokerExample Online code Example | |||
** <h3>Overview</h3> | |||
** <h3>What Makes a Good RPC?</h3> | |||
** <h3>Creating RPCs</h3> | |||
** <h3>Using an Existing M API</h3> | |||
** <h3>Other RPC Broker APIs</h3> | |||
* <h2>Other RPC Broker APIs</h2> | |||
** <h3>Running RPCs on a Remote Server</h3> | |||
*** Options for Running RPCs on a Remote Server | |||
*** Checking RPC Availability on a Remote Server | |||
*** XWB DIRECT RPC | |||
*** XWB REMOTE RPC | |||
*** XWB REMOTE STATUS CHECK | |||
*** XWB REMOTE GETDATA | |||
*** XWB REMOTE CLEAR | |||
** <h3>Deferred RPCs</h3> | |||
*** Overview of Deferred RPCs | |||
*** XWB DEFERRED RPC | |||
*** XWB DEFERRED STATUS | |||
*** XWB DEFERRED GETDATA | |||
*** XWB DEFERRED CLEAR | |||
*** XWB DEFERRED CLEARALL | |||
** Overview | |||
** Encryption Functions | |||
** GetServerInfo Function | |||
** M Emulation Functions | |||
** VistA Splash Screen Procedures | |||
** $$BROKER^XWBLIB | |||
** $$RTRNFMT^XWBLIB | |||
** XWB ARE RPCS AVAILABLE | |||
** XWB IS RPC AVAILABLE | |||
** XWB GET VARIABLE VALUE RPC | |||
* <h2>Debugging and Troubleshooting</h2> | |||
** Overview | |||
** How to Debug Your Application | |||
** RPC Error Trapping | |||
** Identifying the Listener Process on the Server | |||
** Identifying the Handler Process on the Server | |||
** Testing Your RPC Broker Connection | |||
** Client Timeout and Buffer Clearing | |||
** Memory Leaks | |||
* <h2>Developer Utilities</h2> | |||
** RPC Broker Programmer Preferences | |||
* <h2>Tutorial</h2> | |||
** Introduction | |||
** Advanced Preparation | |||
** Step 1: Create Application with an RPC Broker Component | |||
** Step 2: Get Server/Port | |||
** Step 3: Establish Broker Connection | |||
** Step 4: RPC Routine to List Terminal Types | |||
** Step 5: RPC To List Terminal Types | |||
** Step 6: Call the ZxxxTT LIST RPC | |||
** Step 7: Associate IENs | |||
** Step 8: Routine to Retrieve Terminal Types | |||
** Step 9: RPC To Retrieve Terminal Types | |||
** Step 10: Call ZxxxRETRIEVE RPC | |||
** Step 11: Register RPCs | |||
** See Also: FileMan Delphi Components (FMDC) | |||
** Tutorial Source Code | |||
* [[RPC_HELP_DLL_Interface|DLL Interface]] | * [[RPC_HELP_DLL_Interface|DLL Interface]] | ||
Revision as of 04:08, 4 July 2015
Editor's note: The RPC broker development kit (BDK) comes with a Broker.hlp file that contains valuable information. However it seems to be Win95 technology, and doesn't work with newer versions of Windows Help. I found a program that helped me get to the content.
RPC Broker V 1.1 Developer's Guide
Overview
RPC Broker Components, Class, and Units
Remote Procedure Calls (RPCs)
M Entry Point for an RPC
- Relationship Between an M Entry Point and an RPC
- First Input Parameter
- Return Value Types
- Input Parameters
- Examples
RPC Entry in the Remote Procedure File
- RPC Entry in the Remote Procedure File
- RPC Version in the Remote Procedure File
- Blocking an RPC in the Remote Procedure File
- Cleaning after RPC Execution
- Documenting RPCs
Executing RPCs from Clients
- How to Execute an RPC from a Client
- RPC Security: How to Register an RPC
- RPC Limits
- BrokerExample Online code Example
Overview
What Makes a Good RPC?
Creating RPCs
Using an Existing M API
Other RPC Broker APIs
Other RPC Broker APIs
Running RPCs on a Remote Server
- Options for Running RPCs on a Remote Server
- Checking RPC Availability on a Remote Server
- XWB DIRECT RPC
- XWB REMOTE RPC
- XWB REMOTE STATUS CHECK
- XWB REMOTE GETDATA
- XWB REMOTE CLEAR
Deferred RPCs
- Overview of Deferred RPCs
- XWB DEFERRED RPC
- XWB DEFERRED STATUS
- XWB DEFERRED GETDATA
- XWB DEFERRED CLEAR
- XWB DEFERRED CLEARALL
- Overview
- Encryption Functions
- GetServerInfo Function
- M Emulation Functions
- VistA Splash Screen Procedures
- $$BROKER^XWBLIB
- $$RTRNFMT^XWBLIB
- XWB ARE RPCS AVAILABLE
- XWB IS RPC AVAILABLE
- XWB GET VARIABLE VALUE RPC
Debugging and Troubleshooting
- Overview
- How to Debug Your Application
- RPC Error Trapping
- Identifying the Listener Process on the Server
- Identifying the Handler Process on the Server
- Testing Your RPC Broker Connection
- Client Timeout and Buffer Clearing
- Memory Leaks
Developer Utilities
- RPC Broker Programmer Preferences
Tutorial
- Introduction
- Advanced Preparation
- Step 1: Create Application with an RPC Broker Component
- Step 2: Get Server/Port
- Step 3: Establish Broker Connection
- Step 4: RPC Routine to List Terminal Types
- Step 5: RPC To List Terminal Types
- Step 6: Call the ZxxxTT LIST RPC
- Step 7: Associate IENs
- Step 8: Routine to Retrieve Terminal Types
- Step 9: RPC To Retrieve Terminal Types
- Step 10: Call ZxxxRETRIEVE RPC
- Step 11: Register RPCs
- See Also: FileMan Delphi Components (FMDC)
- Tutorial Source Code