Marko Apfel - Afghanistan/Belgium/Germany

Management, Architecture, Programming, QA, Coach, GIS, EAI

  Home  |   Contact  |   Syndication    |   Login
  168 Posts | 2 Stories | 133 Comments | 4 Trackbacks

News



Twitter | LinkedIn | Xing

Article Categories

Archives

Post Categories

BizTalk

C#

Enterprise Library

SAP

SQL Server

Technologie

BizTalk

Situation By installing BizTalk in a distributed environment it is essential, that the MS DTC (Microsoft Distributed Transaction Controller) have a unique CID. Notably by cloning machines in a virtual environment this is often not the case, if the customizing after cloning is too simple established. A lot of system guys don’t care about this IDs – they only change the SIDs of the systems. To verify this, you have compare these IDs via RegEdit. Start RegEdit Goto HKCR\CID (there are around 4 GUIDs ......

Durch Verwendung des Mass Copy Functoid ist es möglich die Elemente unterhalb des Quell-Knotens mit den Elementen unterhalb des Zielknotens zu verbinden. Fast die gleiche Semantik ergibt sich auch durch einzelnes Verbinden der untergeordneten Elemente. Wobei dies recht einfach durch das Verwenden von SHIFT beim Ziehen einer Verbindung zwischen Quell- und Zielknoten. Einen entscheidenden Unterschied gibt es aber: Beim Verwenden des Mass Copy Functoid wird ein Wildcard-XSLT-Template verwendet und bei ......

Mapping <Any>-Elements in a BizTalk-Map is not possible. You can not draw a direct connect from or to <Any>-Elements. Some sources in the web describe the possibility to use a scripting-functoid with a special XSLT to do that, other sources recommand to write a special .NET-component to insert the wished tree under the <Any>-Element. My way use the XmlDocument.ImportNode()-me... to do that. The need for me was to create a message wich contains the request to and the response from ......

For sending emails out of a BizTalk-Orchestration to varying recipients you can use a dynamic send port. The sending-parameters you can set directly in the orchestration. You need a "Message Assignment" and an "Expression"-shape. In the "Message Assignment"-shape you set the parameters for the smtp-stuff: msgSend(SMTP.CC) = "xyz@sample.com; ..."; msgSend(SMTP.Subject) = "TESTMAIL: blabla"; msgSend(SMTP.From) = "BizTalk@sample.com"; msgSend(SMTP.SMTPHost) = "smtp.sample.com"; msgSend(SMTP.SMTPAuthenticate) ......

Zum Verschicken von Mails aus einer BizTalk-Orchestration an unterschiedliche Empfänger, bietet sich ein "Dynamic Send Port" an. Die Sende-Parameter können direkt in der Orchestration gesetzt werden. Dazu braucht man ein "Message Assigment"- und ein "Expression"-Shape. Im "Message Assigment"-Shape werden die Eigenschaften für den SMTP-Adapter gesetzt: msgSend(SMTP.CC) = "xyz@sample.com; ..."; msgSend(SMTP.Subject) = "TESTMAIL: blabla"; msgSend(SMTP.From) = "BizTalk@sample.com"; msgSend(SMTP.SMTPHost) ......

Im Zusammenhang mit verlorenengegangenen Werten innerhalb des mySAP-Adapters war es interessant das Verhalten genauer zu protokollieren. Dafür gibt es Trace-Variablen. Umgebungsvariablen setzen Man lege folgende 3 System-Umgebungsvariablen an CPIC_TRACE=1 RFC_TRACE=1 RFC_TRACE_DIR=C:\Tracedir Nach einem Reboot werden vom mySAP-Adapter Low-Level-Informationen in verschiedene Files im oben angegebenen Verzeichnis geschrieben ......

Nach dem Unzug eines Projektes von einem Rechner auf einen anderen, gab es die Warnung und Fehlermeldung: The adapter failed to transmit message going to send port "spZ_ESRI_DEBITOR_CREATE.SAP" with URL "sap://AS:xxx/00/800/". It will be retransmitted after the retry interval specified for this Send Port. Details:"SAP .Net connector is not installed". A message sent to adapter "SAP" on send port "spZ_ESRI_DEBITOR_CREATE.SAP" with URI "sap://AS:xxx/00/800/" is suspended. Error details: SAP .Net connector ......

Pivotal erzeugt mittels GenerateSchema.ASP für die Integration Adapter ein XDR-Schema. Dieses Schema ließ sich unter BizTalk Server 2002 auch anstandslos importieren und weiterverwenden. Der BizTalk Server 2006 erwartet allerdings XSD-Schema. Alle Varianten die XDR- nach XSD-Schema zu wandeln schlugen fehl. Einzig alleine die Neuerzeugung von XSD-Schema auf Basis übetragender XML-Dokumente war erfolgreich. Konvertierungsvarianten Folgende Varianten der XDR zu XSD Konvertierung wurden probiert. Verwendung ......

Für die direkte Anbindung von Pivotal PXIE an den BizTalk Server 2006 mittels des HTTP-Adapters ist die Möglichkeit gegeben dies über diverse HTTP-Receive Locations zu handeln. Leider muss im Falle der Parameterübergabe für jede Variante des Parameters ein eigene Receive-Location vorgesehen werden. Das ist nicht wartbar für viele verschiedene Pivotal-Entitäten, aber für einzelne Entitäten durchaus praktikabel. Receive Location Properties Type: HTTP Receive Handler: BizTalkServerIsolatedHost Receive ......

Gerade im Zusammenhang mit nullable Types im .NET FW 2.0 ist es interessant eine XSD-Definition mit leeren (nicht-string) Elementen zu erlauben. Das Attribut "nillable" reichte dazu nicht aus (zumindest nicht im Zusammenhang mit BizTalk). Bleibt also noch die Definition eines eigenen Elementes. Das lässt sich mittels der UNION-Ableitung recht einfach realisieren. Meine Umsetzung sieht wie folgt aus: ......

Eigene Functoide für den BizTalk zu entwickeln ist ziemlich easy. Die Dokumentation mit den Beispielen ist OK und ausreichend. Trotzdem gibt es ein paar Dinge die man im Eifer des Gefechtes schnell mal übersieht. Das Assembly mit den Functoiden braucht eine GUID. Diese einfach per Attribut [assembly: Guid("...")] in die AssemblyInfo.cs einbinden. Das Assembly in den GAC kopieren. Das Assembly ins Verzeichnis "Microsoft BizTalk Server 2004/Developer Tools/Mapper Extensions" kopieren. Typische Fehlermeldung ......

Unterschiedliche Namespaces zwischen Schemas und Instanzen führen immer wieder zu kryptischen Fehlermeldungen. Die Erfahrung zeigt, dass es einige besonders tückische Stellen gibt, die man sofort verifizieren sollte. Typische Fehlermeldungen Namespace-Referenzierung in der Instanz passt nicht zur deklarierten im Schema There was a failure executing the receive pipeline: "Microsoft.BizTalk.DefaultP... Microsoft.BizTalk.DefaultPi... Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad36... ......

Obwohl die Assemblies mit den Schemas im GAC und deployed sind, kommt es beim Aufpicken einer Schemainstanz zu 2 Fehlereinträgen im Eventlog und die Message wird supended. Fehler Event Id: 5753 A message received by adapter "FILE" on receive location "XML" with URI "C:File_InORDERS01*.xml" is suspended. Error details: There was a failure executing the receive pipeline: "Microsoft.BizTalk.DefaultP... Microsoft.BizTalk.DefaultPi... Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad36... ......

Now with some little corrections the IDoc goes to SAP. Both Flatfile and XML IDocs can be pickuped and delivered to SAP. First at all you need a Send Pipeline (e.g. spORDERS01) with a Flat File Assembler to transform a XML- to a Flatfile-IDoc. As the Document Schema you specify the imported schema from SAP (e.g. ORDERS01). This Send Pipeline you must choose as the Send Pipeline in the configurationdialog from the Send Port for the SAP-system. It is a good idea to put all pipelines in a own assembly. ......

Unser gestriges Inhouse-Consulting für die Kopplung von BizTalk zu SAP über den "Microsoft BizTalk Adapter v2.0 for mySAP Business Suite" mittels IDocs hatte leider auch keinen Erfolg. Der Consultant (aus einem "Microsoft Gold Partner" zertifizierten Systemhaus) hat im Vorfeld die Sachen ausprobiert & musste einige Calls bei Microsoft schalten. Unsere Architekturentscheidung bleibt weiterhin offen. Der schon vom SAP-Systemhaus vermittelte Eindruck, dass sowohl Microsoft als auch SAP ......

.. soll Ende des ersten Quartals 2006 sein

Quelle:

http://groups.google.de/group/microsoft.public.biztalk.general/browse_frm/thread/3071589aa4c8ea09/67c1f8306f4ac90b

 

Nachtrag:

heute von Microsoft erfahren, dass es April so weit sein wird