Sage 100 Konnektor
Überblick
Die Anbindung setzt eine unterstützte Sage 100-Version voraus. Danach sind es zwei Dinge: Sie richten den Zugang in Ihrer Sage 100 ein, und Sie teilen uns drei Angaben mit, die wir bei Workist hinterlegen.
Voraussetzung an Ihre Sage 100
Sage 100 der Sage GmbH (Deutschland, Österreich, Schweiz), ab Version 9.0.8, sowie eine Lizenz 3rd Party Gateway.
In Ihrer Sage 100 einzurichten
| Schritt | Wo |
|---|---|
| Sage Connectivity Gateway verbinden | Sage Server Manager → Externe API |
| Workist API-Erweiterung installieren | AppDesigner (Metadatenimport) |
| Berechtigungen und Workist-Felder einspielen | AppDesigner bzw. SQL Server Management Studio |
| Datenbanken für die API freigeben | Sage 100 Administrator |
| Workist Client-ID als Benutzer eintragen und berechtigen | Sage 100 Administrator |
| Applikationsserver neu starten | Sage Server Manager |
Die vollständige Schritt-für-Schritt-Anleitung mit Downloads, Client-ID, Berechtigungen und Fehlerbehebung steht unter Sage 100 – Installation.
Angaben, die Workist von Ihnen benötigt
| Angabe | Wo Sie sie finden |
|---|---|
| EntitlementID | Sage Server Manager → Externe API → Ihr Server → Konfiguration |
| DataSet | Sage 100 Administrator |
| Belegart | Sage 100 Warenwirtschaft |
| Version der Workist API-Erweiterung | Dateiversion der Workist-DLLs, letzte Stelle |
Mit Version 9 der Erweiterung kommen Preisprüfung, offene Angebote, Bestellungen mit Angebotsbezug und die ERP-Funktionen der Agenten dazu – siehe Funktionen ab Version 9.
Unterstützte Sage 100-Versionen
Der Konnektor arbeitet mit der Sage 100 der Sage GmbH – der Ausprägung für Deutschland, Österreich und die Schweiz. Unterstützt werden diese Versionen:
| Sage 100-Version | Unterstützt |
|---|---|
| 9.0.11 | ja |
| 9.0.10 | ja |
| 9.0.9 | ja |
| 9.0.8 | ja |
| 9.0.7 und älter | nein |
Die Workist API-Erweiterung enthält für jede dieser Versionen ein eigenes Paket. Installiert wird ausschließlich das Paket, das zu Ihrer Sage 100-Version passt – die Pakete sind nicht untereinander austauschbar. Welche Version bei Ihnen im Einsatz ist, nennt Ihnen Ihr Sage 100-Partner.
Läuft Ihre Sage 100 auf einer älteren Version, ist ein Update auf mindestens 9.0.8 Voraussetzung für die Anbindung. Ist Ihre Version hier nicht aufgeführt, sprechen Sie uns an – wir prüfen die Verfügbarkeit des passenden Pakets.
Ab Version 9.0.9 erzeugt der Metadatenimport Berechtigungen. Das mitgelieferte SQL-Skript führen Sie mit Version 9 der Erweiterung trotzdem auf allen Sage 100-Versionen aus – siehe Installation, Schritt 4.
Sage vertreibt in anderen Märkten eigenständige Produkte unter demselben Namen – etwa Sage 100 in den USA (früher Sage MAS 90 bzw. MAS 200) oder Sage 100 Comptabilité und Gestion Commerciale in Frankreich. Diese haben ein anderes Datenmodell und eine eigene Versionszählung. Mit ihnen ist der Workist Sage 100-Konnektor nicht kompatibel.
Einrichtung in Ihrer Sage 100
Damit Workist Daten aus Ihrer Sage 100 lesen und Belege anlegen kann, werden zusätzliche API-Endpunkte in Sage 100 installiert. Die Einrichtung nimmt in der Regel Ihre IT oder Ihr Sage 100-Partner vor, meist gemeinsam mit Workist. Planen Sie dafür ein Wartungsfenster ein: Zum Abschluss muss der Applikationsserver neu gestartet werden.
Alle Schritte, die Downloads und die Fehlerbehebung finden Sie unter Sage 100 – Installation.
Angaben für die Workist-Konfiguration
Damit Workist Ihre Sage 100 ansprechen kann, brauchen wir drei Angaben von Ihnen. Alle drei entnehmen Sie Ihrer Sage 100 – an der Schnittstelle selbst müssen Sie nichts einrichten. Dazu kommt die Version der installierten Workist API-Erweiterung.
| Angabe | Wo Sie sie finden | Wofür |
|---|---|---|
| EntitlementID | Server Manager → Externe API → Ihr Server → Konfiguration | Identifiziert Ihre Installation im Connectivity Gateway |
| DataSet | Sage 100 Administrator, Statusleiste oder Anmeldedialog | Datenbankname, „;" und Mandantennummer, z. B. WAWI_DB;1 – bestimmt Datenbank und Mandant |
| Belegart | Sage 100 Warenwirtschaft | Bestimmt, welche Belegart Workist anlegt |
| Version der Erweiterung | Dateiversion der Workist-DLLs, letzte Stelle | Bestimmt, welche Felder und Funktionen Workist nutzt |
EntitlementID
Die EntitlementID identifiziert Ihre Sage 100-Installation gegenüber dem Connectivity Gateway. Sie entsteht bei der Lizenzierung des 3rd Party Gateway und ist im Sage 100 Server Manager unter Externe API → Ihr Server → Konfiguration einsehbar. Dort lässt sie sich nicht ändern – sie wird beim Herstellen der Verbindung gesetzt, siehe Installation, Schritt 1. Im selben Dialog legen Sie fest, an welchen Applikationsserver Anfragen weitergeleitet werden, und hinterlegen bei Bedarf einen Proxy.
DataSet
Das DataSet bestimmt, in welcher Datenbank und in welchem Mandanten Ihrer Sage 100 Workist liest
und schreibt. Es besteht aus dem Datenbanknamen, einem Semikolon und der Mandantennummer – etwa
WAWI_DB;1. Schreiben Sie den Datenbanknamen genau so, wie er in Sage 100 steht, ohne
Leerzeichen.
Datenbankname und Mandantennummer finden Sie an diesen Stellen:
- Statusleiste – ganz unten im Hauptfenster der geöffneten Sage 100
- Anmeldedialog – bei der Auswahl des Mandanten steht die Mandantennummer direkt vor dem Firmennamen
- Sage 100 Administrator – im linken Baum unter Mandanten
Eine Verbindung arbeitet in genau einem Mandanten. Dessen Datenbank muss im Sage 100 Administrator mit der Option Für API freigeben freigegeben sein – siehe Installation, Schritt 6. Für Test- und Produktivdatenbank legt Workist jeweils eine eigene Verbindung an.
Belegart
Welche Belegart Workist anlegt, legen Sie fest – in der Regel Ihr Vertrieb oder Ihre Auftragsbearbeitung. Technisch wird sie über ein Kennzeichen angesprochen. Anlegen lassen sich ausschließlich Verkaufs-Initialbelegarten; Einkaufsbelege wie eine Bestellung an einen Lieferanten sind nicht möglich. Im Standard von Sage 100 sind das diese Belegarten:
| Kennzeichen | Bezeichnung |
|---|---|
VFR | Rechnung |
VLL | Lieferschein |
VPA | Angebot |
VPM | Musterbeleg |
VSD | Direktrechnung |
VSL | Sofortrechnung |
VSS | Sofortauftrag |
VVA | Auftragsbestätigung |
Maßgeblich ist, welche Belegarten in Ihrer Sage 100 konfiguriert sind – auch selbst angelegte
Initialbelegarten mit eigenem Kennzeichen lassen sich verwenden. Geben Sie keine Belegart an,
legt Workist Sofortaufträge (VSS) an.
Sie können auch eine eigene Belegart anlegen – etwa mit dem Kennzeichen VVK und der Bezeichnung
„Workist-Bestellung" –, damit Belege aus Workist in Sage 100 auf einen Blick erkennbar sind.
Hinterlegt wird in Workist immer das Kennzeichen, nicht die Bezeichnung. Gibt es das
Kennzeichen im Mandanten nicht, lehnt Sage 100 den Beleg mit der Meldung ab, der Wert sei für das
Feld Belegtyp-Kennzeichen nicht gültig.
Statt direkt eine Auftragsbestätigung anzulegen, kann sich auch ein wirkungsloser Vorbeleg lohnen, den Ihre Auftragsbearbeitung prüft und dann in eine Auftragsbestätigung übernimmt. Ändern Sie die Belegart nachträglich, prüfen Sie am nächsten übertragenen Beleg, ob die Änderung greift.
Eine Verbindung legt genau eine Belegart an. Sollen etwa Bestellungen und Preisanfragen als unterschiedliche Belegarten ankommen, richtet Workist dafür getrennte Verbindungen mit jeweils eigenen Kanälen ein.
Die vollständige Übersicht führt Sage in der Dokumentation der Beleg-API:
Beleg API – Sage Dokumentation ↗Version der Workist API-Erweiterung
Welche Version der Erweiterung installiert ist, zeigt die letzte Stelle der Dateiversion der Workist-DLLs – siehe Installation, Schritt 9. Workist hinterlegt sie in der Verbindung (Sage 100 API Version: Version 5, 7 oder 9). Ohne Angabe arbeitet Workist wie mit Version 5.
| Version | Was Workist zusätzlich nutzt |
|---|---|
| 5 | Grundumfang: Stammdaten lesen, Verkaufsbelege anlegen |
| 7 | Die Lieferbedingung aus dem Dokument (Incoterm) wird an den Beleg übergeben |
| 9 | Alle Funktionen ab Version 9 |
Workist liest die Version nicht selbst aus Ihrer Sage 100. Geben Sie uns nach einem Update der Erweiterung Bescheid, damit wir die Version in der Verbindung anpassen.
Mit Version 7 übergibt Workist die Lieferbedingung aus dem Dokument in das Feld Lieferbedingung des Belegs. Sage 100 nimmt dort nur Lieferbedingungen an, die in Ihrem Mandanten angelegt sind. Prüfen Sie das an einem Testbeleg, bevor die Version umgestellt wird.
Angebots-Belegart
Für den Abgleich mit offenen Angeboten liest Workist die Angebote einer
Belegart, im Standard VPA (Angebot). Verwenden Sie für Angebote ein eigenes Kennzeichen, hinterlegt
Workist dieses (Sage 100 Offer Document Type). Benötigt Version 9 der Erweiterung.
Funktionen ab Version 9 der Erweiterung
Mit Version 9 der Workist API-Erweiterung liest Workist zusätzlich Preise, Preislisten, Lagerbestände und Verkaufsbelege aus Ihrer Sage 100. In Workist stehen die folgenden Funktionen nur zur Verfügung, wenn die Verbindung auf Version 9 steht. Bei älteren Versionen sind die zugehörigen Einstellungen ausgegraut.
| Funktion | Einstellung in der Verbindung | Im Standard |
|---|---|---|
| Preisprüfung mit der Sage-Preisfindung | Check order prices against Sage 100, Compare against | aus |
| Preise ohne Kunde | Standard price list | keine |
| Offene Angebote | Sage 100 Offer Document Type, Ignore expired offers | VPA, abgelaufene ignoriert |
| Bestellungen mit Angebotsbezug | Feld Angebotsnummer im Kanal | – |
| Hinweistext als Belegmemo | Feld Hinweistext (Note Text) im Kanal | – |
| Belege als Entwurf | Save documents in Sage 100 as drafts | aus |
| ERP-Funktionen der Agenten | Allow agentic writes (nur für das Schreiben) | Schreiben aus |
Preisprüfung mit der Sage-Preisfindung
Workist fragt für jede Bestellposition den Preis ab, den Sage 100 für diesen Kunden, Artikel, diese Menge und Mengeneinheit ermittelt – mit Ihren Preislisten, Staffelpreisen und Kundenrabatten. Gegen diesen Preis prüft Workist den bestellten Einzelpreis. Ändert jemand in der Workbench Menge, Einheit, Artikel oder Kunde, fragt Workist den Preis erneut ab.
- Compare against legt fest, womit verglichen wird: mit dem Einzelpreis vor Rabatt (Standard) oder mit dem Nettopreis nach Kundenrabatt.
- Im Kanal muss die Einzelpreis-Prüfung eingeschaltet sein.
- Kann Sage 100 eine Position nicht bepreisen, etwa weil der Artikel fehlt, prüft Workist diese Position ohne Zielpreis.
Preise ohne Kunde
Sage 100 ermittelt einen kundenbezogenen Preis nur mit Kundennummer. Ist kein Kunde bekannt, nimmt Workist den Preis aus der Standardpreisliste der Verbindung (Standard price list). Zur Auswahl stehen die aktiven, heute gültigen Preislisten Ihrer Sage 100. Listen mit Bruttopreisen sind in der Auswahl gekennzeichnet: Ihre Preise enthalten die Umsatzsteuer.
- Der Preis gilt für die Verkaufsmengeneinheit des Artikels und berücksichtigt Staffelpreise.
- Workist nutzt ihn, wenn kein Kunde bekannt ist: für nicht erkannte Anrufer des Sprachagenten, in Worki und im Inbox-Agenten ohne Kunde und für die Preisprüfung einer Bestellung ohne Kundennummer. Der Agent nennt ihn als allgemeinen Preis, nicht als Preis des Kunden.
- Ohne Standardpreisliste nennt Workist ohne Kunde keinen Preis.
Offene Angebote
Workist liest mit der Stammdatenaktualisierung alle offenen Angebote der Angebots-Belegart, über alle Kunden. Jede Artikelposition wird ein Eintrag für den Angebotsabgleich:
- Angebotsnummer als Belegjahr und -nummer, z. B.
2026-30006 - Kunde, Angebotsdatum und, falls gesetzt, Angebot gültig bis
- Position aus Sage 100, Artikel, Bezeichnung, Menge und Mengeneinheit
Offen ist ein Angebot, solange es Sage 100 nicht als übernommen führt und nichts daraus entstanden ist. Angebote mit dem Angebotsstatus Übernahme in Vorgang oder Angebot im erfüllten Vorgang liest Workist nicht. Mit Ignore expired offers (im Standard eingeschaltet) lässt Workist auch Angebote weg, deren Gültigkeit abgelaufen ist. Ein Angebot ohne Gültigkeitsdatum gilt ab dem Angebotsdatum. Abgelehnte Angebote kann Workist nicht erkennen, weil Sage 100 diesen Status über die Schnittstelle nicht bereitstellt.
Workist liest die Angebote nur, wenn in einem Kanal der Verbindung eine Angebots-Stammdatenliste eingerichtet ist.
Bestellungen mit Angebotsbezug
Ist im Kanal das Feld Angebotsnummer eingerichtet und nennt eine Bestellung ein offenes Angebot aus Sage 100, legt Workist den Beleg mit Bezug auf dieses Angebot an. Sage 100 führt Angebot und Auftrag dann im selben Vorgang und setzt das Angebot auf Angenommen.
- Die Positionen kommen aus der Bestellung, nicht aus dem Angebot.
- Nennen die Positionen unterschiedliche Angebote oder ist das Angebot nicht mehr offen, legt Workist den Beleg ohne Bezug an.
- Sage 100 trägt das Angebot im Feld Beleg zu des Auftrags ein.
Hinweistext als Belegmemo
Ist im Kanal das Kopffeld Hinweistext (Note Text) eingerichtet, übernimmt Workist dessen Inhalt in das Memo des Belegs.
Belege als Entwurf
Mit Save documents in Sage 100 as drafts legt Workist Belege geparkt an statt gespeichert. Geparkte Belege erhalten eine Nummer aus dem Nummernkreis für geparkte Belege und werden in Sage 100 von Ihren Mitarbeitenden fertiggestellt. Die Einstellung gilt für alle Belege, die Workist in Sage 100 anlegt – aus Bestellungen ebenso wie von Agenten.
ERP-Funktionen der Agenten
Mit Version 9 greifen Worki, Inbox-Agenten und Sprachagenten live auf Ihre Sage 100 zu:
| Funktion | Was der Agent liefert | Worki | Inbox-Agent | Sprachagent |
|---|---|---|---|---|
| Preis | Nettopreis des Kunden nach Rabatt, mit Staffelpreisen | ja | ja | ja |
| Verfügbarkeit | Lagerbestand über alle Lager | ja | ja | ja |
| Liefertermin | Liefertermin einer Bestellung | ja | ja | – |
| Versanddatum | Datum des ersten Folgebelegs einer Bestellung, meist des Lieferscheins | ja | – | – |
| Offene Angebote und Belege | Offene Angebote und offene Belege einer Belegart, für einen oder alle Kunden | ja | – | – |
| Auftragsstatus | Bestellung mit den daraus entstandenen Belegen | ja | – | – |
| Beleg lesen | Beliebiger Verkaufsbeleg mit Positionen und den Belegen desselben Vorgangs | ja | – | – |
| Beleg anlegen | Verkaufsbeleg direkt in Sage 100 | ja | – | – |
| Angebot in Auftrag übernehmen | Auftrag mit den Positionen und Preisen des Angebots, im Vorgang des Angebots | ja | – | – |
| Kunde anlegen | Kunde direkt in Sage 100, mit der nächsten freien Kundennummer eines Nummernkreises | ja | – | – |
- Schreiben ist im Standard aus. Belege, Angebotsübernahmen und Kunden legt Worki nur an, wenn in der Verbindung Allow agentic writes eingeschaltet ist, und erst nachdem der Benutzer bestätigt hat. Sonst antwortet Worki, dass das Schreiben ausgeschaltet ist.
- Ohne Kunde gilt die Standardpreisliste. Einem nicht erkannten Anrufer nennt der Sprachagent den Preis aus der Standardpreisliste, als allgemeinen Preis. Ist keine hinterlegt, nennt er keinen Preis.
- Verfügbarkeit ist der Lagerbestand. Reservierungen und Zugänge liefert die Schnittstelle nicht. Bestände in Sperrlagern zählen mit.
- Offen heißt bei Belegen: Es ist noch kein Folgebeleg daraus entstanden. Teillieferungen erkennt Workist nicht.
- Belegarten werden über ihr Kennzeichen angesprochen. Welche Kennzeichen es in Ihrem Mandanten gibt, sieht der Agent an den Belegen, die er liest.
Einrichtung in den Agenten
Worki, Inbox-Agenten und Sprachagenten werden jeweils separat lizenziert. Ihre Ansprechperson bei Workist schaltet sie frei – siehe Freischaltung.
| Agent | So verbinden Sie ihn mit Ihrer Sage 100 | Lizenz |
|---|---|---|
| Inbox-Agent | Im Agenten unter Integrationen → ERP Sage 100 und, bei mehreren, die Verbindung wählen. Unter Fähigkeiten Preis-Anfrage, Verfügbarkeit und Lieferdatum einschalten. | Inbox-Agenten |
| Worki | Das Gespräch im Projekt eines Inbox-Agenten führen, der mit Sage 100 verbunden ist. Worki nutzt dann dessen Verbindung, einschließlich der Funktionen zum Lesen und Anlegen von Belegen. | Worki (Chat-Agenten) |
| Sprachagent | Unter Werkzeuge im Bereich ERP-Liveverbindung Sage 100 und die Verbindung wählen und die Werkzeuge Artikelpreis und Artikelverfügbarkeit einschalten. | Sprachagenten |
Damit Worki in Sage 100 schreibt, muss außerdem in der Sage 100-Verbindung Allow agentic writes eingeschaltet sein.
Was Workist in Ihrer Sage 100 berührt
Für die Einführung ist weniger die Schnittstelle selbst relevant als das Datenmodell dahinter: welche Tabellen Workist liest, wo geschrieben wird und was die Installation an Ihrem Datenbestand verändert.
Gelesene Daten
Workist liest, um Angaben aus dem eingehenden Dokument gegen Ihr System zu validieren: Stammdaten zu Kunde, Artikel, Lieferadresse, Projekt. Ab Version 9 der Erweiterung liest Workist zusätzlich Preise, Lagerbestände und Verkaufsbelege.
| Bereich | Sage 100-Tabellen | Wofür Workist es liest |
|---|---|---|
| Kundenstamm | Kundenstamm (Sage-Datensatz recKundenstamm) | Kundenerkennung |
| Lieferanschriften | KHKAdressen, KHKAdressenverweise, KHKKontokorrent | Auflösen der Lieferadresse |
| Ansprechpartner | KHKAnsprechpartner + dieselben Adresstabellen | Ansprechpartner am Beleg |
| Artikel | KHKArtikel, KHKArtikelVarianten (+ KHKArtikelgruppen, KHKVariantenAnzeigeTexte u. a.) | Artikelerkennung, Mengeneinheiten |
| Projekte | KHKProjekte | Rahmenverträge |
| Verkaufsbelege (ab Version 9) | KHKVKBelege, KHKVKBelegePositionen | Offene Angebote, Bestellungen mit Angebotsbezug, Agenten |
| Preise (ab Version 9) | Preisfindung von Sage 100 | Preisprüfung, Agenten |
| Preislisten (ab Version 9) | Preislisten | Auswahl der Standardpreisliste, Preise ohne Kunde |
| Lagerbestände (ab Version 9) | Lagerplatzbestände und Lager | Agenten |
Alle Lesezugriffe erfolgen mandantenbezogen – die Abfragen filtern auf den Mandanten des angesprochenen DataSets.
Geschriebene Daten
Workist schreibt nicht per SQL in Ihre Tabellen. Belege entstehen über die Belegerfassung von Sage 100, Kunden über den Kundenstamm. Damit greifen Ihre Nummernkreise, Preisfindung, Steuerlogik und Validierungen unverändert.
| Was Workist anlegt | Über | Ergebnis in Sage 100 |
|---|---|---|
| Verkaufsbeleg mit Positionen | Belegerfassung | Beleg in KHKVKBelege / KHKVKBelegePositionen, gespeichert oder geparkt |
| Auftrag aus einem Angebot (ab Version 9) | Belegerfassung | Beleg im Vorgang des Angebots |
| Kunde (ab Version 9, durch Worki) | Kundenstamm | Datensatz im Kundenstamm |
Bestehende Belege werden nicht geändert oder gelöscht – es gibt ausschließlich die Anlage. Legt Workist einen Auftrag mit Bezug auf ein Angebot an, setzt Sage 100 selbst das Angebot auf Angenommen.
Zusätzliche Felder in Ihren Tabellen
Die Installation legt zwei benutzerdefinierte Felder an. Sie werden über das mitgelieferte
Skript …-UpdateUserFields-Workist.sql erzeugt und dienen der Rückverfolgbarkeit.
| Feld | Bezeichnung in Sage 100 | Typ | Tabellen |
|---|---|---|---|
USER_WorkistBearbeiter | Bearbeitet von in Workist | varchar(200) | KHKVKBelege, KHKArchivVKBelege, tKHKPrintBelegKopfVK |
USER_WorkistReferenz | Workist Referenz | varchar(200) | KHKVKBelege, KHKArchivVKBelege, tKHKPrintBelegKopfVK |
Zusätzlich werden die Felder in USysClassFields für die Klasse VKBeleg registriert, damit
sie in Sage 100 verfügbar sind.
Diese beiden Felder werden nicht über den Metadatenimport angelegt. Das Skript
…-UpdateUserFields-Workist.sql aus dem Paketordner SKRIPTE muss auf den betroffenen
Datenbanken ausgeführt werden – siehe
Installation, Schritt 5.
Feldreferenz
Welche Felder Workist im Einzelnen in den Verkaufsbeleg schreibt und welche Stammdatenfelder Workist aus Ihrer Sage 100 liest, steht in der Sage 100 Feldreferenz.