4.4. Beleg API

4.4. Beleg API

Die API für Belege beruht auf die Annahme dass eine externe Applikation, z.B. ein WebShop, seine eigene Datenhaltung hat. Belege sollen in die Sage 100 zur Verbuchung übertragen werden. Die Relation zwischen den externen und den Sage 100 internen Belegen muss auf dem externen System verwaltet werden.

Die API bietet die Möglichkeit initiale Einkaufs- und Verkaufsbelege zu erzeugen, zu lesen oder zu löschen.

Die Nutzung der Beleg-API erfordert, dass die “Sage 100 Oberfläche” für die “Belegerfassung Einkauf und Verkauf” im den Dialogeinstellungen des Administrators aktiviert ist. Die Nutzung der API iin Verbindung mit der Access-Oberfläche ist nicht möglich.

Ein Ändern oder eine Beleg-/Vorgangsübernahme ist nicht vorgesehen.

Besonderheiten Belegkopf

  • Nur Neuerstellung, Lesen, Löschen (sofern erlaubt) - Kein Ändern, keine Vorgangsübernahme

  • Es können nur Belege gelöscht werden, die über die API angelegt wurden.

  • Eines Belegsuche ist separat über die folgenden Endpunkte eptVKBelegSuche und eptEKBelegSuche möglich.

  • Es wird immer nur ein Beleg mit neuem Vorgang erstellt. Über die API können nicht mehrere Belege zum Vorgang angelegt werden (keine Beleg-/Vorgangsübernahme)

  • Zulässige Belegarten (siehe Tabelle unten)

    • Nur Initialbelegarten

    • Keine Schlussrechnung, kein Sammelbeleg, keine XRM-Belegarten, keine Rahmenvertragsart, Keine Projektbelegarten (Anzahlungsrechnungen, Projektschlussrechnung)

    • Achtung: Die Erstellung eines Lieferscheins erzeugt neuen Vorgang

  • XRM-Sonderfunktionalitäten nach Beleg speichern wird für die API nicht unterstützt.

  • Belegworkflow bei Neuanlage von Belegen wird nicht untersützt (Folgebelege, Wiedervorlagen, etc.)

  • Belegerfassung in Access nicht möglich. Beleganlage via API wird abgelehnt, falls entsprechendes Mandatenproperty gesetzt ist.

  • Berechtigung zum Anlegen von Belegen in der Sage 100 wird auch über die API geprüft.
    D. h. keine Anlage, falls der Nutzer keine Berechtigung hat über die Sage 100 Belege anzulegen.

Besonderheiten Belegpositionen

  • Varianten
    DIe Varianteneingabe (Feld AuspraegungsHandle) ist für die Belegposition optional. Falls das Feld nicht gefüllt ist, so wird bei der Beleganlage das Feld mit 0 gefüllt (Grundvariante bzw. Artikel ohne Variante) - sprich Artikel inkl. Variante können angegeben werden.

  • Zubehörartikel
    Die Hauptartikel können per API übertagen werden. Zubehör wir NICHT hinzugefügt (obligatorische Zubehörartikel) und es wird auch keine Auswahl angezeigt (optionale Zubehörartikel).

  • Handelsstücklisten
    Handelsstücklisten für Verkaufsbelege sind möglich. Achtung: Im Response sind die Unterpositionen nicht ersichtlich.
    Handelsstücklisten für EK sind nicht möglich, da sie nicht aufgelöst werden können.

  • Mengenberechnung
    Nutzung von Artikel mit Mengenberechnung ist nicht möglich, da z. B. LxBxH eingegeben werden müssten. Immer wenn das Mengenfeld über die Sage 100 Oberfläche nicht änderbar ist, kann der Beleg nicht erstellt werden.

  • Änderung Einzelpreis
    Soll der Einzelpreis bei Beleganlage geändert werden, so ist das über die API nur möglich, wenn dies auch in Belegerfassung selbst möglich ist. In gewissen Konstellationen ist das Überschreiben des Einzelpreises bereits in der Belegerfassung selbst nicht möglich und in diesem Fall würde auch die API einen Fehler liefern.

  • Manuelle Einkaufspreise (nur Einkaufbelege)
    In den Mandanteneinstellungen gibt es die Auswahl "Manuelle Einkaufspreise". Bei der Auswahl "Auf Anfrage übernehmen" werden die Einkaufspreise nicht in den Artikelstamm übernommen.

Zulässige Belegarten

Wie oben beschrieben, können die folgende Belegarten aus dem Standardlieferumfang der Sage 100 über die API erzeugt werden.

Verkauf

Kennzeichen

Bezeichnung

Kennzeichen

Bezeichnung

VFR

Rechnung

VLL

Lieferschein

VPA

Angebot

VPM

Musterbeleg

VSD

Direktrechnung

VSL

Sofortrechnung

VSS

Sofortauftrag

VVA

Auftragsbestätigung

Die Belegarten können mit folgender Abfrage ermittelt werden:

SELECT Kennzeichen, Bezeichnung FROM KHKVKBelegarten WHERE Kennzeichen NOT IN ('VLV') and IstInitialbeleg = -1 AND Kennzeichen NOT IN (SELECT Gruppe FROM KHKGruppen WHERE Typ=44000) AND IstSammelbeleg=0 AND IstDialoganlage = -1 AND NOT (Projekt <> 0 OR OptionXRM <> 0 OR Kennzeichen = 'VRV')

Einkauf

Kennzeichen

Bezeichnung

EBB

Bestellung

ELL

Wareneingang

EPA

Preisanfrage

ERD

Direktrechnung

ERS

Sofortrechnung

Die Belegarten können mit folgender Abfrage ermittelt werden:

SELECT Kennzeichen, Bezeichnung FROM KHKEKBelegarten WHERE Kennzeichen NOT IN (SELECT Gruppe FROM KHKGruppen WHERE Mandant=123 AND Typ=44100) AND IstInitialbeleg = -1 AND IstSammelbeleg=0 AND IstDialoganlage = -1 AND Kennzeichen <> 'ERV'