Listers, We provision our Microsoft Active Directory (and our SAP Logistics, and ..., and ...) from our UniVerse HR system [UV 10.0.x on Windows Server 2003 - we are pretty much a Windows shop]. Currently the data transfer is done by an overnight batch process, which we have used for several years, but we now wish to provide a more real-time solution.
The mechanism chosen by our architecture team is Microsoft BizTalk Server, which comes with interfaces to AD and SAP already available and tested. Our preferred method of talking to BizTalk is via Microsoft Message Queuing Services, because this is an assured-delivery transport [if it tells you it's got the message, it *will* arrive at the destination]. We have a Windows '.dll' and an '.exe' command-line utility which will talk to MSMQ from any Windows box. In order to achieve the real-time aspect, the obvious thing to do is to add a trigger to the relevant base file in UV, which will put a message into MSMQ to send to BizTalk to tell everything else about the change. To do this, we must be in Transaction State (if you weren't already, a trigger automagically puts you into Transaction State). This brings us to a difficulty: we can't use the command-line utility because 'PERFORM "DOS ..." ' is not allowed in transaction state, nor can we directly insert the record in a remote SQL database because BCI CONNECT is also not allowed in Transaction State. I think that leaves us with three theoretical possibilities: a) Write a UV Basic program using the Sockets Interface to talk directly to MSMQ b) Write a C routine to talk to MSMQ via a published API (or calling our '.dll'), and invoke this via the UniVerse GCI or c) Make the Trigger write a UV flag record, monitoring that file with a Phantom which will talk to MSMQ via the DOS Shell "c" is kind of a crude, 'Rube Goldberg' lash-up and less real-time, but it would work and we could do that in a few hours programming work. But our architecture guys would probably snigger at my 'old-fashioned' technology. I don't know if "a" or "b" will work in Transaction State, and we have no institutional knowledge of either mechanism so it would be expensive in time to try to find out. Please can anyone offer any experienced-based advice here, or suggest an alternative "d" which is easier, better, and/or quicker than my ideas. And yes, I'd at least consider a "buy my excellent product ..." response. Thanks in advance Mike The information contained in this Internet Email message is intended for the addressee only and may contain privileged information, but not necessarily the official views or opinions of the New Zealand Defence Force. If you are not the intended recipient you must not use, disclose, copy or distribute this message or the information in it. If you have received this message in error, please Email or telephone the sender immediately. ------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/