UDF in Rechnungstabelle (OINV) aktualiseren
Daniel Ebi
Hallo zusammen,von einem Kunden haben wir die Anforderung, eine Sammelrechnung zu erstellen, die einen eigenen Nummernkreis haben soll und mehrere Rechnungen beinhaltet.
Hierzu werden wir eine Query erstellen und ein Layout hinterlegen. Mit Druck dieser Sammelrechnung wird aus einer Benutzerdefinierten Tabelle die letzte Nummer ausgelesen, 1 addiert und auf dem Beleg gedruckt. Nun muss diese Nummer nun noch in allen Rechnungen in ein benutzerdefiniertes Feld (UDF "U_C_Sammel") geschrieben werden, so dass man erkennt, mit welcher Sammelrechnung diese Rechnung gedruckt wurde.
Mit der Funktion LD.Query... müsste das doch machbar sein - oder darf man das gar nicht?
Schoene Gruesse
Daniel Ebi
Philipp Knecht
Hi DanielIm Falle von Usertabellen -> Ja. Im Falle von B1 Tabellen -> Nein.
Dann kannst du aber die offizielle Variante übers DI gehen:
If Not Engine.IsDoublePass Then
If GetData("LD.Par.PrintMode") = "N" And GetData("LD.Par.Preview") = "N" Then
Try
Dim comp As SAPbobsCOM.Company = SwissAddonFramework.B1Connector.GetB1Connector().Company
Dim doc As SAPBobsCOM.Documents = comp.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
doc.GetByKey(GetData("B1_Data.Document.DocEntry"))
doc.UserFields.Fields.Item("U_PDFDate").Value = Now()
Dim i As Integer = doc.Update()
If i <> 0 Then
SwissAddonFramework.UI.Dialogs.MessageBox.Show(comp.GetLastErrorDescription(),"Ok")
End If
Catch Ex As Exception
SwissAddonFramework.UI.Dialogs.MessageBox.Show(Ex.Message,"Ok")
End Try
End If
End If
(Du musst noch oOrders mit oInvoices ersetzen und das UDF anpassen)
hth
0
Please sign in to leave a comment.
Comments
0 comments