Belege und Positionen anlegen

Allgemeine Erklärung

In diesem Kapitel wird erklärt, wie Vorgangs-Belege und Positionen programmiertechnisch erstellt werden können. Hierbei geht es sowohl um die Neuanlage von Belegen, als auch um das ergänzen bestehender Belege um weitere Positionen.

Einen neuen Beleg mit Positionen anlegen

Folgende Beispiele dienen zum Anlegen eines neuen Beleges mit Positionen. Es können verschiedene Parameter verwendet werden, die in den Beispielen nicht alle ausgereizt wurden. Die GUIDs (Artikel und Adresse) sind natürlich durch exisiterende auszutauschen, wenn die Beispiele in der Form getestet werden sollen.

Beispiel 1: Hier wird eine neue Rechnung als Beleg-Objekt generiert, dann werden diesem Objekt zwei Artikel als Positionen sowie eine manuelle Position hinzugefügt und anschließend werden mit einer Prozedur 'GeneriereBelegMitPositionen' der Beleg und die hinzugefügten Positionen in der Datenbank in den entsprechenden Tabellen angelegt.

Beispiel 2: In diesem Beispiel wird zunächst ein Beleg-Objekt für eine neue Rechnung angelegt und die Rechnung in der Datenbank durch die Prozedur 'GeneriereNeuenBeleg' erzeugt. Jetzt werden erst zwei Artikel als Positionen sowie eine manuelle Position dem Beleg-Objekt hinzugefügt und anschließend durch 'GeneriereAllePositionen' in der Datenbank ergänzt. Das Erzeugen des Beleges und das Hinzufügen von (weiteren) Positionen kann also getrennt voneinander durchgeführt werden.

VB.NET: Beispiel 1

  

#Region " Button1_Click-Ereignis " 

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

                '>>> Beispiel-Daten bereitstellen 

                Dim adresseGUID As Guid = New Guid("894018b3-7ee6-4727-a7cd-f2ee91775e74"

                Dim artikel1GUID As Guid = New Guid("83bcb926-1938-4a94-a85c-398971b19efd"

                Dim artikel2GUID As Guid = New Guid("483f34fe-dfe8-4e34-804d-effb4099a694"

                '>>> Beleg-Objekt anlegen und Positionen zum Objekt hinzufügen 

                Dim neuerBeleg As New Beleg(BT.VkRechnung, adresseGUID) 

                neuerBeleg.AddArtikelPosition(artikel1GUID, 5) 

                neuerBeleg.AddArtikelPosition(artikel2GUID, 13) 

                neuerBeleg.AddManuellePosition(19, 10.99, New Guid(PF.F1), "Fahrrad TF-100"

                '>>> Neuen Beleg mit Positionen in Datenbank generieren 

                neuerBeleg.GeneriereBelegMitPositionen(False

        End Sub 

#End Region

VB.NET: Beispiel 2

  

#Region " Button1_Click-Ereignis " 

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

                '>>> Beispiel-Daten bereitstellen 

                Dim adresseGUID As Guid = New Guid("894018b3-7ee6-4727-a7cd-f2ee91775e74"

                Dim artikel1GUID As Guid = New Guid("83bcb926-1938-4a94-a85c-398971b19efd"

                Dim artikel2GUID As Guid = New Guid("483f34fe-dfe8-4e34-804d-effb4099a694"

                '>>> Beleg-Objekt anlegen und Positionen zum Objekt hinzufügen 

                Dim neuerBeleg As New Beleg(BT.VkRechnung, adresseGUID) 

                '>>> Neuen Beleg mit Positionen in Datenbank generieren 

                neuerBeleg.GeneriereNeuenBeleg() 

                '>>> Positionen dem Beleg-Objekt hinzufügen 

                neuerBeleg.AddArtikelPosition(artikel1GUID, 5) 

                neuerBeleg.AddArtikelPosition(artikel2GUID, 13) 

                neuerBeleg.AddManuellePosition(19, 10.99, New Guid(PF.F1), "Fahrrad TF-100"

                '>>> Hinzugefügte Positionen in der Datenbank erstellen und dem Beleg zuordnen, Beleg anpassen 

                neuerBeleg.GeneriereAllePositionen(False

        End Sub 

#End Region

Position zu einem bestehenden Beleg ergänzen

Mit dem folgenden Code lässt sich ein Beleg um eine neue Positon ergänzen, welche auf einem Artikel aus dem Artikelstamm basiert, und um eine weitere manuelle Position. Es wird die Klasse 'Beleg' verwendet, welche entsprechende Funktionen anbietet.

VB.NET SDK-Programmcode

  

#Region " Button1_Click-Ereignis " 

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

                Dim bestehenderBeleg As Beleg 

                Dim bestehenderArtikel As Guid 

                bestehenderBeleg = New Beleg(New Guid("dd2cdb0c-41db-4d23-9a99-f7eed7b4e6ab")) 

                bestehenderArtikel = New Guid("63c742e8-af59-45af-87d4-cd5c7c01412c"

                '>>> Artikel-Position dem Objekt hinzufügen 

                bestehenderBeleg.AddArtikelPosition(bestehenderArtikel, 12) 

                '>>> Manuelle Position dem Objekt hinzufügen 

                bestehenderBeleg.AddManuellePosition(23, 1.99, New Guid(PF.F1), "Apfel Elstar"

                '>>> Änderungen in Datenank durchführen mit Aktualisierung der Beleg-Werte 

                bestehenderBeleg.GeneriereAllePositionen(False

        End Sub 

#End Region

Beratung erwünscht?

Gerne können Sie mich oder einen mein­er freund­lichen Kollegen telefonisch er­reichen:  +49 2161 277 680

Alter­na­tiv schrei­ben Sie uns an  info@it-easy.de oder nutz­en Sie das nach­folgende Kontakt­formular.

Ihr Ralf Jasper
Kundenservice

Mitarbeiterfoto von Herrn Ralf Jasper


Rückruf-Service

Für eine möglichst unkomplizierte Kontaktaufnahme füllen Sie bitte das unten stehende Formular aus und klicken auf „Rückruf anfordern“.