OBJECT Codeunit 50998 Send IP Port mit Reply { OBJECT-PROPERTIES { Datum=12.10.11; Zeit=10:45:06; Ge„ndert=Ja; Versions Liste=SalAG; } PROPERTIES { OnRun=BEGIN Send('localhost',8079); END; } CODE { VAR CC2@1000000000 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{01018FA5-E4B4-413C-A47C-AD34B0CC2647}:'Navision Communication Component version 2'.CommunicationComponent" WITHEVENTS; SBA@1000000001 : Automation "{CF450AFF-91CE-4DF0-92DE-AFE4C28AAFC7} 1.0:{4CBE9566-34EA-429D-963A-911E270CBE4F}:'Navision Socket Bus Adapter'.SocketBusAdapter"; OutMsg@1000000002 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{6CB9762C-E61C-4F96-BA34-8B20D3A5B46E}:'Navision Communication Component version 2'.OutMessage"; ReplyMsg@1000000004 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{D184D0AC-61C9-4AC1-B537-0D28C277FEDE}:'Navision Communication Component version 2'.InMessage"; OutS@1000000003 : OutStream; InStrm@1000000006 : InStream; Reply@1000000005 : Boolean; txt@1000000007 : Text[1000]; retval@1000000008 : Integer; PROCEDURE Send@1000000000(Receiver@1000000000 : Text[30];Port@1000000001 : Integer); BEGIN IF ISCLEAR(CC2) THEN CREATE(CC2); IF ISCLEAR(SBA) THEN CREATE(SBA); CC2.AddBusAdapter(SBA, 0); OutMsg:= CC2.CreateoutMessage('Sockets://' + Receiver + ':' + FORMAT(Port)); OutS:= OutMsg.GetStream(); OutS.WRITE('KOM0000000,4,1,2'); ReplyMsg := OutMsg.SendWaitForReply(10); InStrm := ReplyMsg.GetStream; WHILE NOT (InStrm.EOS) DO BEGIN InStrm.READ(txt); MESSAGE(txt); END; MESSAGE(txt); ReplyMsg.CommitMessage; MESSAGE('fertig'); END; EVENT CC2@1000000000::MessageReceived@1(VAR InMessage@1000000000 : Automation ":{00020400-0000-0000-C000-000000000046}:''.IDISPATCH"); BEGIN END; BEGIN END. } } OBJECT Codeunit 51000 Receive Msg IP Port mit Reply { OBJECT-PROPERTIES { Datum=11.10.11; Zeit=15:32:46; Ge„ndert=Ja; Versions Liste=SalAG; } PROPERTIES { SingleInstance=Ja; OnRun=BEGIN Start(8079); END; } CODE { VAR CC2@1000000000 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{01018FA5-E4B4-413C-A47C-AD34B0CC2647}:'Navision Communication Component version 2'.CommunicationComponent" WITHEVENTS; SBA@1000000001 : Automation "{CF450AFF-91CE-4DF0-92DE-AFE4C28AAFC7} 1.0:{4CBE9566-34EA-429D-963A-911E270CBE4F}:'Navision Socket Bus Adapter'.SocketBusAdapter"; InMsg@1000000002 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{D184D0AC-61C9-4AC1-B537-0D28C277FEDE}:'Navision Communication Component version 2'.InMessage"; InS@1000000003 : InStream; txt@1000000004 : Text[1000]; Reply@1000000005 : Boolean; ReplyMsg@1000000006 : Automation "{F9A57667-8AC5-45C5-9416-99D3955BCAC0} 1.0:{6CB9762C-E61C-4F96-BA34-8B20D3A5B46E}:'Navision Communication Component version 2'.OutMessage"; OutStrm@1000000007 : OutStream; PROCEDURE Start@1000000000(Port@1000000000 : Integer); BEGIN IF ISCLEAR(CC2) THEN CREATE(CC2); IF ISCLEAR(SBA) THEN CREATE(SBA); CC2.AddBusAdapter(SBA, 0); SBA.OpenSocket(Port, ''); END; EVENT CC2@1000000000::MessageReceived@1(VAR InMessage@1000000000 : Automation ":{00020400-0000-0000-C000-000000000046}:''.IDISPATCH"); BEGIN InMsg:= InMessage; InS:= InMsg.GetStream(); WHILE NOT (InS.EOS) DO BEGIN InS.READ(txt); MESSAGE(txt); END; Reply := InMsg.ExpectReply; IF Reply THEN BEGIN ReplyMsg := InMsg.CreateReply; OutStrm := ReplyMsg.GetStream; OutStrm.WRITETEXT('Reply message',13); ReplyMsg.Send(0); END; InMsg.CommitMessage(); END; BEGIN END. } }