Difference between revisions of "Broker help/TOC"

From VistApedia
Jump to: navigation, search
 
Line 21: Line 21:
  
 
==[[Broker_help/Orientation|Orientation]]  ==
 
==[[Broker_help/Orientation|Orientation]]  ==
  ** Patches **
 
This version of the RPC Broker includes the following patches (listed in sequence order):
 
<table>
 
<tr><th>Seq #</th><th>Patch</th><th>Subject</th><th>Release Date</th></tr>
 
 
<tr><td>1</td><td>XWB*1.1*1</td><td>Some Small Fixes</td><td>02/18/98</tr>
 
<tr><td>2</td><td>XWB*1.1*2</td><td>Encryption, Data Collection, Agent</td><td>07/27/98</tr>
 
<tr><td>3</td><td>XWB*1.1*3</td><td>Security Log Problem (XWBSEC Routine)</td><td>01/06/99</tr>
 
<tr><td>4</td><td>XWB*1.1*5</td><td>RUM Support</td><td>03/31/99</tr>
 
<tr><td>5</td><td>XWB*1.1*7</td><td>Broker Listener/Available Slots</td><td>06/04/99</tr>
 
<tr><td>6</td><td>XWB*1.1*4</td><td>Updated BDK and Kernel Login Fixes</td><td>06/24/99</tr>
 
<tr><td>7</td><td>XWB*1.1*6</td><td>Eliminate Orphaned Server Jobs</td><td>09/09/99</tr>
 
<tr><td>8</td><td>XWB*1.1*8</td><td>GUI Multi-Division Support</td><td>12/10/99</tr>
 
<tr><td>9</td><td>XWB*1.1*9</td><td>Caché License Fix</td><td>01/24/00</tr>
 
<tr><td>10</td><td>XWB*1.1*11</td><td>Delphi V. 5 Support</td><td>01/24/00</tr>
 
<tr><td>11</td><td>XWB*1.1*15</td><td>Broker Command Error Fix</td><td>04/12/00</tr>
 
<tr><td>12</td><td>XWB*1.1*10</td><td>RPC Availability</td><td>08/04/00</tr>
 
<tr><td>13</td><td>XWB*1.1*12</td><td>Server to Server RPC's</td><td>08/04/00</tr>
 
<tr><td>14</td><td>XWB*1.1*18</td><td>XWB2HL7 Routine Fix</td><td>10/17/00</tr>
 
<tr><td>15</td><td>XWB*1.1*14</td><td>Release Source Code for BDK</td><td>10/17/00</tr>
 
<tr><td>16</td><td>XWB*1.1*20</td><td>RDV Proper Setup of DUZ</td><td>05/10/01</tr>
 
<tr><td>17</td><td>XWB*1.1*22</td><td>Name and Null Subscript Error</td><td>10/03/01</tr>
 
<tr><td>18</td><td>XWB*1.1*24</td><td>Correct Problem with Reading Registry</td><td>11/09/01</tr>
 
<tr><td> </td><td> </td><td>(Updated BDK, Delphi 4 and 5 versions only)</td></tr>
 
<tr><td>19</td><td>XWB*1.1*16</td><td>Read/Write Errors</td><td>02/06/02</tr>
 
<tr><td>20</td><td>XWB*1.1*27</td><td>Remote Data Request Processing</td><td>03/15/02</tr>
 
<tr><td>21</td><td>XWB*1.1*13</td><td>Silent Logon, Bug Fixes, & Delphi V. 6</td><td>(Current)</td></tr>
 
</td><td> </td><td> </td><td> </td><td>Support (Updated BDK)</tr>
 
</table>
 
 
To develop VISTA applications in a 32-bit environment you must have Delphi V. 2.0 or greater. This version of the TRPCBroker component does not allow you to develop applications in Delphi V. 1.0. However, the Broker routines on the M server will continue to support VISTA applications previously developed in the 16-bit environment.
 
 
The default installation of the Broker creates a separate Broker Development Kit (BDK) directory (i.e., BDK32) that contains the required Broker files for development.
 
 
The Office of Information (OI) will support the Broker Development Kit running in the currently offered version of Delphi and the immediately previous version of Delphi. This level of support became effective 6/12/2000.
 
 
Sites may continue to use outdated versions of the RPC Broker Development Kit but do so with the understanding that support will not be available and that continued use of outdated versions will not afford features that may be essential to effective client/server operations in the VISTA environment. An archive of old (no longer supported) Broker Development Kits will be maintained at: http://vista.med.va.gov/broker/archives/index.html
 
  
 
==[[Broker_help/About_this_version| About this Version of the RPC Broker]] ==
 
==[[Broker_help/About_this_version| About this Version of the RPC Broker]] ==

Latest revision as of 18:41, 21 December 2010

This is a conversion of the Broker.hlp file to mediawiki format using the helpdeco converter program converted to vistapedia.net by Ignacio Valdes of Astronaut, LLC The original formatting such as Table of Contents linking and screen shots is not present.
Base broker.hlp>main
Title RPC Broker Developer's Guide

RPC Broker V. 1.1 Developer's Guide

Contents

Overview

Introduction

The RPC Broker is a client/server system within VA's Veterans Health Information Systems and Technology Architecture (VISTA) environment. It enables client applications to communicate and exchange data with M Servers.

This manual describes the development features of the RPC Broker. The emphasis is on using the RPC Broker in conjunction with Borland's Delphi software. However, the RPC Broker supports other development environments.

This manual provides a complete reference for development with the RPC Broker. For an overview of development with the RPC Broker component, see the "RPC Broker V. 1.1 Getting Started with the Broker Development Kit" manual.

This document is intended for the VISTA development community and Information Resource Management (IRM) staff. A wider audience of technical personnel engaged in operating and maintaining the Department of Veterans Affairs (VA) software might also find it useful as a reference.

Broker Overview

For the latest RPC Broker product information, please refer to the RPC Broker Home Page on the web at: http://vista.med.va.gov/broker/index.html.


Orientation

About this Version of the RPC Broker

This version of the Broker provides programmers with the capability to develop new VISTA client/server software using the Broker Delphi component (i.e., TRPCBroker) in the 32-bit environment.

What's New in the BDK

What’s New Through May 2002?

Support for Delphi V. 6.0

As of Patch XWB*1.1*13, the BDK supports Delphi V. 6.0.


Developer Considerations

Application Issues

Silent Login

Context-sensitive Help for the TRPCBroker Component

RPC Broker Components and Classes

TRPCBroker Component

New TRPCBroker Component Properties

As of Patch XWB*1.1*13, the following properties are new with this version of the RPC Broker:

  • Property
  • CurrentContext (Public)
  • KerneLogIn (Published)
  • LogIn (Public)
  • OnRPCBFailure (Public)
  • RPCBError (Public)
  • ShowErrorMsgs (Published)
  • User (Public)

TXWBRichEdit Component

TMult Class

TParamRecord Class

TParams Class

TVistaLogin Class

TVistaUser Class

EBrokerError Exception

Units

Hash Unit

LoginFrm Unit

MFunStr Unit

RPCConf1 Unit

RpcSLogin Unit

SplVista Unit

TRPCB Unit

TVCEdit Unit

Remote Procedure Calls (RPCs)

Overview

What Makes a Good RPC?

Creating RPCs

Using an Existing M API

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

Cleanup 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

Other RPC Broker APIs

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

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

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 Zxxx RETRIEVE RPC

Step 11: Register RPCs

See Also: FileMan Delphi Components (FMDC)

Tutorial Source Code

DLL Interface

Introduction

DLL Special Issues

RPC Results from DLL Calls

GetServerInfo Function and the DLL

DLL Exported Functions

RPCBCall

RPCBCreate

RPCBCreateContext

RPCBFree

RPCBMultItemGet

RPCBMultPropGet

RPCBMultSet

RPCBMultSortedSet

RPCBParamGet

RPCBParamSet

RPCBPropGet

RPCBPropSet

Guidelines for C++

Overview

TRPCBroker C++ Class Methods

Initialize the Class

Create Broker Instances

Connect to the Server

Execute RPCs

Destroy Broker Instances

Guidelines for C

Overview

Initialize—LoadLibrary and GetProcAddress

Create Broker Components

Connect to the Server

Execute RPCs

Destroy Broker Components

Guidelines for Visual Basic

Overview

Initialize

Create Broker Components

Connect to the Server

Execute RPCs

Destroy Broker Components