EDI Besprechungsraum vorbereiten Beispieledi

In diesem Beispiel wird die Einrichtung eines EDIs unter Mithilfe eines Jobs im MS SQL Agents (MS SQL Standard Edition) gezeigt. 
Voraussetzung ist die funktionsfähige Installation der EDI Komponenten. Siehe http://flace.de/?p=1636
Ein Video zum Thema findet man hier: https://youtu.be/Cb-FskJqtSg


Es wird ein Beratungstermin mit einem Interessenten vereinbart. Hierzu gibt es eine Quellaktivität von der Art Termin mit folgendem Aufbau:

Diese wird dementsprechend angelegt:

1. Schritt zum Aufbau des Edis:
In der SSMS des SQL Servers einen Job Besprechungsraum anlegen.

2. Schritt das SQL Script im Agent
use bnwins
insert Trigger2EDI (Mandant, Vorgang, Vorgangsnummer, Adresse,
Platzhalter1, Platzhalter1_ID, Platzhalter1_Kuerzel,
Platzlter4, Platzhalter4_ID, Platzhalter4_Kuerzel,
Platzhalter5, Platzhalter5_ID, Platzhalter5_Kuerzel,
erstellt, Beschreibung)
SELECT ‚ ‚,’sonstiges‘,‘ ‚,A.AdrNrGes,
a.BenutzerFeld1,’$Benutzerf1′,’Raum‘,
a.Benutzerfeld2,’$Benutzerf2′,’Anzahl‘,
convert(varchar,m.terminvon,4) as [vonDatum],’$vonDatum‘,’vonDatum‘,
convert(varchar,m.terminvon,8) as [vonUhrzeit],’$vonUhrzeit‘,’vonUhrzeit‘,
–Länge des Substrings anpassen–
substring(m.Kurzbezeichnung,17,50),’$Kurzbezeichnung‘,’Kurzbezeichnung‘,
getdate(), ‚Besprechungsraum‘
FROM wflowAktivitaeten as a LEFT OUTER JOIN MontStrgTermine as M ON a.TerminId = M.TerminID
where a.art=’7′ and a.BenutzerFeld11=’1′
–Job wird ausgelöst zwei Std vor dem Besprechungstermin in einem Zeitfenster von 10 Minuten–
and Sysdatetime() between dateadd(minute,-120,terminvon) and dateadd(minute,-106,terminvon)

3. Schritt
Einen täglichen Zeitplan anlegen der alle 15 min in der Zeit von 07:00 Uhr bis 19:00 Uhr abgearbeitet wird.

4. Schritt
Job Besprechungsraum testen. Wenn Datensätze zu den Bedingungen vorhanden sind, werden diese in die Tabelle Trigger2Edi geschrieben.

USE [BNWINS]
SELECT [Mandant]
,[Benutzerid]
,[Vorgang]
,[Vorgangsnummer]
,[Adresse]
,[erstellt]
,[Beschreibung]
,[ID]
,[xmlerzeugt]
FROM [dbo].[Trigger2EDI]
GO


Für den Datensatz in Zeile 6 wurde noch keine XML Datei im vordefinierten Verzeichnis K:\bnwin\SQL2EDI abgelegt. Die Erzeugung der XML Datei wird durch den Job SQL2EDI – alle 5 min laut Zeitplan durchgeführt.

In der Tabelle Trigger2EDI wird noch etwas Verwirrung gestiftet. Die Datenfelder vom Typ (Varchar(50))
füllen den Platzhalter Knoten der XML Datei in wie folgt:
Platzhalter#_ID                     Platzhalter#ID              = Name des DBFeldes 
Platzhalter#_Kuerzel          Kuerzel=                          = $Beschreibungskuerzel
Platzhalter#                             Beschreibung               = Beschreibung 
Auf diese Variablen greift das Textfeld der Ereignisaktivität zurück.

5. Schritt Datei wflowEreignisseIndividuell.xml im Ordner Vorlagen anpassen.

<ProgrammTeil Name=“Besprechungsraum XML“>
<Aktion Bezeichnung =“Besprechungsraum“ Id =“Besprechungsraum“>
<Beschreibung>Besprechungsraum</Beschreibung>
<Platzhalter>
<Platzhalter1 Id=“BenutzerFeld1″>
<Kuerzel>$Raum</Kuerzel>
<Beschreibung>Raum</Beschreibung>
</Platzhalter1>
<Platzhalter2 Id=“BenutzerFeld2″>
<Kuerzel>$Anzahl</Kuerzel>
<Beschreibung>Anzahl</Beschreibung>
</Platzhalter2>
<Platzhalter3 Id=“vonDatum“>
<Kuerzel>$vonDatum</Kuerzel>
<Beschreibung>Datum des Termins</Beschreibung>
</Platzhalter3>
<Platzhalter4 Id=“vonUhrzeit“>
<Kuerzel>$vonUhrzeit</Kuerzel>
<Beschreibung>Uhrzeit des Termins</Beschreibung>
</Platzhalter4>
<Platzhalter5 Id=“Kurzbezeichnung“>
<Kuerzel>$Terminbez</Kuerzel>
<Beschreibung>Terminbezeichnung</Beschreibung>
</Platzhalter5>
</Platzhalter>
</Aktion>
</ProgrammTeil> 6. Schritt Aufbau der auszulösenden Aktivität.
Das Teammitglied Andrea ist für die Räume verantwortlich und soll eine Aktivität als Aktennotiz erhalten:

7. Schritt Prüfung des BnNet Workflow Dienstes. Dieser muss gestartet sein, ansonsten wird die erzeugte XML Datei nicht weiterverarbeitet.

Ergebnisse im bnInfocenter:
Push

Vollständige Anzeige