Thursday 15 October 2009

What I know about the transaction server

So I thought I’d write down some things about the transaction server that you might or might not know.

The JDE transaction server (for WAS) uses internal MQ queues for guaranteed message delivery.  All of my experience at this stage has been publishing messages out of JDE with the use of RTEs.

The RTE messages are published out of JDE with the use of jdeIEO_EventAdd() and other functions.  There are some tests in the code to see if the event is active, and if it is – start firing off the messages.

The RTE code sends a trigger message to the transaction server.  The transaction server then does the SELECTs and INSERTs on the F90710 based upon the trigger messages that it receives.  The Enterprise Server OCM’s (server maps) for service configuration define the port and host that the RTEs are sent to.  This is the incoming jdenet port in the SM configuration, not the port that the txn server is installed on.

The outbound messages are defined per environment per machine, so there is some good flexibility there.  Out of the box, the message queues are only 50000 deep – so you might want to increase them if your volumes are high.

Once the transaction server gets the trigger message, it puts the message into an event queue.  I believe that the once there, the code is executed to retrieve the F90710 record.  once this record is received and processed and deleted, the message is moved to a WQ_SubQueue.  You can see all of this in action if you download, install and configure the SIB explorer.

Transaction server installs are easy BUT WATCH YOUR PORTS.  Make sure that the incoming jdenet port is unique.  Don’t use ports like 9080 –> 9090, these are all used by internal WAS processing.  Ensure that you run netstat on the transaction server machine to ensure that the port is free.

WM will then connect to the install port of the txn server to get messages off the txn server.

3 comments:

Unknown said...
This comment has been removed by the author.
Unknown said...
This comment has been removed by the author.
Unknown said...

Hi Shannon

Very interesting your blog, my name is Francisco i'm a CNC Jr in my job and I have the following situation, I'll install BPM in my organization, this BPM will interconnect with my ERP (JDE) and IBM Cast Iron Cloud, but i need activate the Real-Time Events to capture a message every order sales, i read i need a transaction server and configure this server in the P90701A in JDE and after that, create the event, but I have no idea where to start so i dont know what i need install or where, can you give me a general panorama of what i need install and how do it?, thank you very much¡¡

Regards.