sending variable-size string through broker

I’ve (re)written a VB application that calls a broker in order to retreive information from ADABAS. My problem comes in sending information back through the broker. The information returned is a comma-delimited string that can be of many different lengths depending on the data that is found in the database. The VB problem doesn’t seem to recognize when the broker is done sending data.

I found a sample program on these forums to send variable-length data asynchonously through a broker to a java program. But the broker functions available to VB do not seem to include all the functionality of those available to Java (setMaxReceiveLength, setAdjustReceiveLength). In VB, I only seem to be able to set the ReceiveLength, not the MaxReceiveLength. And I haven’t found anything similar to setAdjustReceiveLength.

The VB side never returns from InvokeBrokerFunction, which with the old version of the Natural program I’ve rewritten would return when the broker was called from Natural to send the data retreived from ADABAS back to the VB side.

Any help would be much appreciated.

sounds like an installation / configuration issue if you are not getting any return from InvokeBrokerFunction.

The .Net API includes comparable methods and properties to the Java API, including setting receive lengths (AdjustReceiveLength and MaximumReceiveLength). See the documentation at http://techcommunity.softwareag.com/ecosystem/documentation/crossvision/eli/aci_net/factyperef.htm#d0e2422

How far back does this ACI exist? I’m currently using EntireX Communicator 7.2.1.50, and I can’t upgrade to a newer version because that’s what’s currently running on the rest of our machines.

The .Net API is new with EXX7.3. However, the good news is: you can upgrade selected workstation and clients to EXX7.3 even if your Broker and/or RPC server is running EXX7.2.