• Welcome to the upgraded JDELIST forum and thank you for your patience.
    Please restrict discussions and issues regarding the new forum software to the Off Topic forum. We will be monitoring that forum for issues.
    If you have trouble logging in, please reset your password using the forgotten password form: https://www.jdelist.com/community/index.php?lost-password/
    If you are unable to successfully reset your password, please contact us: Click here!
    We hope that you enjoy the upgraded forum.
  • Introducing Dark Mode! Switch by clicking on the lightbulb icon next to Search or by clicking on Default style at the bottom left of the page!

Execute JD Edwards Logic or Business Function After Data Inserted Via SQL

czarcasm

Active Member
Curious if anyone has ever found a way around this... JD Edwards obviously does not play well with regards to JDE based table triggers recognizing data when it is inserted/changes using SQL. I have a situation i'm trying to work around where an external application is pushing data into a temporary table and I would ideally like to have JDE execute some business functions with this data that has been inserted - I cannot determine a way to get JDE to recognize that the data is there. That being said, could obviously execute a UBE on a schedule but that is not nearly real time enough for this operation. Any ideas are appreciated.
 

shearerj

Reputable Poster
A few ideas:
1. Could you put a UBE into "subsystem" mode and continually poll the table?
2. Your tools in your signature indicate 'current'. Could you have you third party app make a service call to Orchestrator and let Orchestrator write to the temp table and call the business logic?
 

czarcasm

Active Member
Great idea on the subsystem mode, yes. I'll explore that.

I work with a few different installations and this particular install does not have Orchestrator. I did lobby for that as an option ;)
 

czarcasm

Active Member
nkuebelbeck and Craig,

I actually put together a XMLInterop process (with some examples from nkuebelbeck - thanks again). I was able to create a windows service to act as a listener where our third party app could use the service to dispatch the actual XML call. Had to do it this way because the app is 64bit and the edwards install is 32bit... made for a few creative weeks. Anyway, that was all working but the roundtrip for the transactions was VERY lengthy. The box making the call was located across the US from the Edwards install. We started toying with SQL inserts as a way to avoid some of the overhead (since XML has to establish a connection, handshake, post the file, etc.). SQL turned out to be much quicker (since JDBC can be established then direct inserts until transactions are complete) and then come back only when more interaction is required. Anyway, I thought about what you both suggested - basically allow for the SQL inserts to continue and basically have the XML Interop call send a message just to notify JDE that there was some activity performed and that it should go through and process whatever it finds in that table. The only concern I have, and the reason i've avoided doing it, is due to the increase in transaction time. If the volume weren't high and this was a one-off process, i'd go for it, but the frequency of usage will be very high and I think over time the compounding of that transaction time would cause issues.
 
Top