[Gelöst] AutoSplitKey für Funktionen

11. Oktober 2007 10:15

Hallo Leute,
habe wieder mal ein Problem.

Ich habe eine Funktion, welche über den MSMQ Nachrichten empfängt und diese in verschiedene Tabellen als neuen Datensatz hinzufügt.

Nun ist es so, das manche Tabellen als PK ein Code-Feld und ein "Line No." Feld haben. Ich möchte erreichen, dass dieses "Line No." Feld automatisch gefüllt wird, wie es in SubForms passiert, wenn AutoSplitKey auf True gesetzt ist.

Wie kann ich das erreichen?

Vielen Danke im Vorraus!!!
Zuletzt geändert von LEXER am 11. Oktober 2007 14:01, insgesamt 1-mal geändert.

11. Oktober 2007 10:24

Im Code muss dieses Feld manuell versorgt werden, AutosplitKey ist nur bei Eingaben in Forms wirksam. Sieh dir den z.B. den Anfang der Funktion InsertItemJnlLine in Report 790 "Lagerbestand berechnen"an.

11. Oktober 2007 10:44

Hallo Kowa,

danke für die schnelle Antwort! Leider hilft mir das so nicht weiter, da ich nicht für jede x-beliebige Tabelle eine solche Funktion implementieren möchte.

11. Oktober 2007 11:06

Hallo Peter,

wie Kai schon geschrieben hat, muss das im C/AL-Code selber programmiert werden. Der Aufwand hält sich doch in Grenzen. Vor dem Erzeugen eines Datensatzes schreibst du in etwa folgenden Code:

Code:
IF Table.FIND('+') THEN
  LastLineNo:=Table."Line No."

Gruß, Marc

11. Oktober 2007 13:58

Hallo Marc,

danke für die Antwort, aber das ist für mich so nicht händelbar, ich werde mit die Daten direkt vom SQL-Server holen und dann über den MSMQ versenden.

11. Oktober 2007 14:15

Hi Lexer,
irgendwie blicke ich jetzt nicht mehr durch.
Wieso brauchst du autosplitkey zum versenden?

11. Oktober 2007 14:40

Hallo Michael,
ich brache das nicht zum versenden, sondern zum hinzufügen neuer DS, die über MSMQ empfangen werden. Da das ganze mit dynamischer Tabellenanbindung funktionieren muss, kann ich das oben beschriebene Verfahren nicht nutzen.

Da ich sowieso Daten von SQL-Server direkt abholen muss, kann ich mir diese Informationen auch noch holen und entsprechend so vorbereiten, das ich gleich die neuen Line No. für die DS erzeugen lasse (außerhalb von NAV)

11. Oktober 2007 15:00

achso, jetzt ist klar.... ;-)