Anhängen an eine Datenquelle mit einem Geschäftsprozess

Jan Lehmann

Mitglied
Hallo,

hat das jemand vielleicht bereits umgesetzt oder einen Vorschlag wie man es umsetzen kann?
Ich möchte eine Sage Datenquelle um eine Spalte erweitern, die als Datenherkunft kein SQL verwendet, sondern einen Geschäftsprozess.
Um konkret zu werden geht es um den Dispobestand, "dtsDispositionsbestand".
Wenn ich mich an die Datenquelle und die Liste anhänge sehe ich mein Feld, aber wie kann ich es mit Daten füllen?
Gibt es vielleicht eine DCM die man dafür verwenden kann?

Als letztes Mittel, welches mir einfällt, könnte ich einen eigene Datenquelle mit eigenem Geschäftsprozess erstelle und die orginal Liste ersetzen.
 
Hallo,

ich habe leider keine Lösung hierfür, aber die gleiche Anforderung.
Hat hierzu zwischenzeitlich noch jemand etwas neues herausgefunden?

Gruß
Benjamin Busch
 
Hallo,

können die Werte für die zusätzliche Spalte denn über SQl bestimmt werden oder wird wiederum ein Geschäftsprozess benötigt ?

Gruß Rouven
 
Zuletzt bearbeitet:
Hi, in meinem Fall wären die Daten via SQL ermittelbar.
Habe auch schon mit Subquery in der Datenherkunft des neuen Feldes experimentiert. Das hat leider nicht funktioniert. Vermutlich weil ich ja nicht auf eine Nicht-Sql-Spalte joinen kann...
 
Hi,

dann schau dir mal die Datenquelle dtsArtikelLagerbestaende mit dem dahinterliegenden Geschäftsprozess Artikellagerbestaende.Sage.Wawi an. In diesem Fall werden das Feld "Reserviert" und "VerfuegbarerBestand" über den BusinessProcess gesetzt (innerhalb der SQL-Abfrage = null"). Das sollte dir weiterhelfen, wenn nicht, sag gerne nochmal Bescheid.

Beste Grüße
 
Zuletzt bearbeitet:
Hallo,
die Frage ist zwar schon älter aber ich habe das selbe Problem. Ich habe mir die Datenquelle dtsArtikelLagerbestaende angesehen bin daraus aber nicht schlau geworden. Wie kann ich meine SQL Abfrage mit den Daten aus den Geschäftsprozess "joinen"? In meinen Fall möchte ich mich an dtsMahnlaufVorschlaege anhängen und das Feld VertreterNummer einfügen über SQL. Kann mir jemand weiterhelfen?

Beste Grüße
 
Moin,

bei Verwendung eines Geschäftsprozesses in einer Datenquelle gibt es grundsätzlich drei Arten des Funktionsaufbaus:

1. Der Geschäftsprozess durchläuft das übergebene RowSet. Basierend auf den bereits ermittelten Daten der SQL-Query kann dieses verändert sowie weitere Tupel hinzufügt werden. Attribute, die über den Geschäftsprozess gesetzt werden sollen, müssen mit NULL AS Attributname in der Datenquelle hinzugefügt werden, damit die SQL-Query bei Ausführung, bevor der Geschäftsprozess aufgerufen wird, auf keinen Syntax Fehler läuft. Beim Hinzufügen von Tupeln, ist auf den korrekten Datentyp der in der SQL-Query verwendeten Attribute zu achten.

2. Es ist keine SQL-Query in der Datenquelle hinterlegt. Der Geschäftsprozess erhält ein leeres RowSet und fügt diesem nach definierter Business Logic nur Tupel hinzu.

3. Der Geschäftsprozess wird vor der SQL-Query ausgeführt (Property: CallBusinessProcessBeforeSQL). Es wird im Geschäftsprozess ein RowSet erzeugt, welches in eine Temp-Tabelle (z.B tKHKProtokoll) eingefügt wird. Die SQL-Query kann dieses anschließend selektieren und dann natürlich auch andere Relationen joinen. Bei CallBusinessProcessBeforeSQL steht ein zurückgegebenes RowSet der Datenquelle nicht zur Verfügung. Der Datencontainer wird in diesem Fall nur über die SQL-Query befüllt.

Bei Datenquellen wie dtsMahnlaufVorschlaege ohne existierenden Tabellen Verweis ist ein hinterlegter Geschäftsprozess meistens nach Funktionsaufbau 2 strukturiert. Nur in Funktionsaufbau 3 haben wir die Möglichkeit auf eine vom Geschäftsprozess erstellte Relation zu joinen. Für die von Ihnen genannte Anforderung führt also kein Weg an einem eigenen Geschäftsprozess mit erweitertem Feld VertreterNummer vorbei.

Mein Kommentar aus dem letzten Jahr gilt nur für Datenquellen mit Geschäftsprozess nach Funktionsaufbau 1 wie zum Beispiel dtsArtikelLagerbestaende.
 
Zuletzt bearbeitet:
Zurück
Oben