Es ist schon eine Weile her, dass ich mein erstes ereignisgesteuertes Szenario in SAP Business One implementiert habe. Seit ich angefangen habe, bin ich auf ein „Meer“ von Möglichkeiten/Plattformen/Diensten gestoßen, die so ziemlich den gleichen Ansatz bieten, wie man das erreichen kann, und von denen jeder seine eigenen Vor- und Nachteile hat.

Es besteht kein Zweifel daran, dass die Branche gut entwickelt ist und zahlreiche Möglichkeiten bietet, Dinge zu erledigen, und ich bin ein wenig „übereifrig“, wenn es darum geht, neue Technologien zu erlernen (schließlich ist das unser Brot und Butter). Aber wenn ich mich hinsetze, um einen Projektentwurf zu schreiben, versuche ich, mich an den „One-Stop“-Ansatz zu halten, bei dem die Wiederverwendung von Werkzeugen und Diensten, die in die B1-Anwendung selbst eingebettet sind, wahrscheinlich ganz oben auf meiner Liste stehen würde.

Diese Tools sind seither auf dem Markt und haben sich im Laufe der Jahre weiterentwickelt und sind nicht nur nicht veraltet, sondern haben auch ihre Fähigkeiten und Leistungen erweitert.

Verstehen Sie mich nicht falsch: Ich denke, dass die SAP BTP-Plattform beispielsweise unendlich viele Möglichkeiten bietet, wenn es um die Nutzung von REST-Webdiensten geht, die mit unseren SAP-Systemen interagieren können, und auch die Wiederverwendung einiger der leistungsfähigsten Konnektoren zur Integration mit anderen SAP-/Nicht-SAP-Systemen sowie zur Erweiterung unserer Geschäftsanwendungen und -prozesse ermöglicht. Das SAP BTP nutzt auch hochmoderne Dienste wie AI Builders und Fiori Apps Tools. Es geht hier also nicht darum, das SAP BTP, das seinen Platz zu Recht verdient hat, schlecht zu machen, sondern lediglich darum, festzustellen, dass das SAP BTP nicht das einzige Spiel in der Stadt ist.

Diejenigen von Ihnen, die versucht haben, sich durch diesen Ozean von Daten auf der SAP BTP-Plattform zu bewegen, haben wahrscheinlich schon erkannt, dass BTP sehr stark auf S4/HANA ausgerichtet ist und nicht speziell auf SAP Business One-Entwickler zugeschnitten ist.

Darüber hinaus weist das BTP einige offensichtliche Defizite auf:

  1. Langwierige und mühsame Einrichtung – das Hinzufügen eines Abonnements/einer Instanz/einer Berechtigung kostet Zeit, und in den meisten Fällen klappt es nicht beim ersten Mal.
  2. Die Preisstufen sind für KMU-Kunden einfach nicht geeignet. Solange Sie das „kostenlose“ Abonnement für nicht-produktive Umgebungen verwenden, sollte alles in Ordnung sein, aber sobald Sie in die „Pay-As-You-Go“-Abonnementstufen übergehen und in die Produktion gehen, wird es in den meisten Fällen zu einem „Overkill“ für jedes SMB-basierte Projekt und auch ziemlich kostspielig.
  3. Es hat kein eingebautes Bewusstsein für die B1-Objekte. Wir können sie wie jede andere API verwenden und aufrufen, um ihr mitzuteilen, was wir abrufen wollen.

Kommen wir also gleich zur Sache: Wie können wir ein Ereignisweiterleitungsszenario implementieren und die erhaltenen Informationen nutzen, um andere B1-bezogene Lösungen auszulösen/zu erstellen, ohne die Dinge zu sehr zu verkomplizieren?

Normalerweise müssten wir Folgendes tun:

  1. Einrichten einer SAP Event Mesh-Instanz auf BTP
  2. Eine SAP CAP-Anwendung, die die Ereignisse in BTP verarbeitet (normalerweise für den Aufbau von
    Unternehmen
    -Grade-Dienste und -Anwendungen, was wiederum bei SAP B1 ein „Schlag ins Wasser“ ist)
  3. Wir müssten einen zusätzlichen Schritt programmieren, um das Token abzurufen, damit wir uns gegenüber der SAP Event Mesh-Instanz auf der SAP BTP-Plattform authentifizieren können.

 

Die architektonische Übersicht würde wie folgt aussehen:

 

Wie wäre es, wenn ich Ihnen sage, dass wir den Teil überspringen können, in dem wir das BTP abonnieren und direkt zu unserem B1-Integrations-Framework (B1If) gehen, um diese Ereignisse zu konsumieren und sie weiter zu nutzen, um das Verhalten unserer B1-Anwendung mit Microsoft Azure zu erweitern?

Vorausgesetzt, Sie haben B1iF installiert und in Ihrer Umgebung korrekt eingerichtet, haben Sie einen guten Start hingelegt.

Ich würde Ihnen dringend raten, die folgenden Schritte zu unternehmen, um sicherzustellen, dass Sie alle Voraussetzungen erfüllen:

** Wenn Sie Probleme mit der Konfiguration des B1iF haben, können Sie sich gerne an mich wenden, und ich werde Sie gerne beraten und unterstützen**

 

Schließlich möchten wir unseren B1iF Event Sender so einrichten, dass er Ereignisse auslöst.

Die B1iF-Best-Practices schreiben vor, dass wir uns an Folgendes halten:

1) Stellen Sie sicher, dass Sie auf das Integration Framework 2.0 statt 1.0 zugreifen:

Dies bringt mehrere entscheidende Vorteile mit sich:

  • Hinzu kommt das Integrationsframework – alle Programmiermodelle können gleichzeitig und parallel laufen.
  • Optimiert für Cloud Computing
  • Integrierte Mehrmandantenfähigkeit – Mehr Flexibilität bei der Bereitstellung von Szenarien
  • Entwickelt für alle Integrationsentwickler
    • Höhere Flexibilität
    • Mehr Kontrolle und Transparenz bei der Entwicklung von Integrationsinhalten
  • „Klassische“ Entwickler fühlen sich durch die neue browserbasierte IDE wohler
  • Bis zu 10 Mal schneller – läuft direkt auf der Integrationsplattform
  • Ersetzt nicht das derzeitige Programmiermodell Migration bestehender Szenarienpakete nicht erforderlich, es sei denn, Sie möchten die Mandantenfähigkeit in Cloud-Umgebungen nutzen

 

 

2. Vergewissern Sie sich, dass alle Ihre SLD-Verbindungen korrekt getestet wurden:

Wenn eine dieser Verbindungen unterbrochen wird, gefährdet dies den Prozess und verhindert später die Kommunikation mit dem HANA-Server / Service Layer. Daher sollten Sie sicherstellen, dass alle Verbindungen fehlerfrei sind, und, falls dies nicht der Fall ist, die Verbindungszeichenfolgen neu konfigurieren.

 

3) Stellen Sie sicher, dass B1i-Ereignisse gefiltert werden, indem Sie zu Wartung -> B1 Event Filter navigieren und die Option „B1i User Filter Switched On“ (B1i-Benutzerfilter eingeschaltet ) aktivieren – so stellen Sie sicher, dass Sie alle Systemereignisse loswerden, die Sie nicht hören wollen.

 

Beachten Sie, dass Sie diese Konfiguration auch in die Version 1.X einbinden können, indem Sie sie direkt aus der Version 2.0 aufrufen (unter Extras ->Version 1) und zum Ereignissender-Assistenten navigieren.

Hier sollten Sie auch Ihre B1-Objekt-IDs für alle Objekte angeben, für die Sie Ereignisse abrufen möchten

 

Die vollständige Liste der B1-Objekte finden Sie am Ende dieses Themas

Alternativ können Sie diesen Wert auch direkt aus der Anwendung B1 abrufen, indem Sie den Abfragegenerator starten und die Spalte „<table_name>“.“ ObjType“ Spalte:

 

 

4) Der wichtigste Schritt besteht darin, zu testen, dass IHRE Ereignisse NICHT herausgefiltert werden, sondern an den B1 Event Monitor weitergeleitet werden, wenn Ihr Szenario ausgelöst wird.

In meinem Fall habe ich einfach einen Geschäftspartner erstellt und die Anzeige aktualisiert, um zu sehen, dass B1iF das Ereignis abfangen konnte:

Hinweis: Der Testlauf wird nur dann erfolgreich sein, wenn Sie sicherstellen, dass Sie eine neue Verteilung zum „Verteilungs-Panel“ Ihres Szenarios hinzufügen und ein gültiges Sender-/Empfängersystem aus Ihrem SLD zuweisen – dieses Fenster ist die neue (und coole!) Funktion in Version 2.0, die es Ihnen ermöglicht, einen einzigen Überblick über alle Ihre Szenario-Artefakte zu erhalten.

 

Sobald wir sicher sind, dass unser Ereignis-Sender unsere Ereignisse korrekt verarbeitet, können wir mit dem Aufbau unseres Szenarios in BizFlow fortfahren.

Nun ist es wichtig, dass wir genau verstehen, was wir hier erreichen wollen:

Wir möchten lediglich, dass B1iF jedes Ereignis, das unsere Filterkriterien erfüllt, an einen externen HTTP-WebHook-basierten Workflow in Form einer XML-Nutzlast weiterleitet, aus der wir dann Daten analysieren und abrufen können.

Das ist alles, was es zu sagen gibt!

Wenn Sie sich fragen „Warum?“, dann ist die Antwort ziemlich einfach:

Mit
Azure Logic Apps
und dem integrierten HTTP-Webhook-Connector können wir automatisierte Aufgaben und Workflows erstellen, die einen Service-Endpunkt abonnieren, indem sie eine Callback-URL registrieren, auf bestimmte Ereignisse warten und auf der Grundlage dieser Ereignisse ausgeführt werden, anstatt diesen Endpunkt regelmäßig zu überprüfen oder abzufragen.

Dies ist besonders nützlich und vorteilhaft in Fällen, in denen PaaS (Platforms as a Service) wie Microsoft-Azure pro Ausführung berechnet werden.

Stellen Sie sich einmal vor, wie viele Ausführungen innerhalb eines 24-Stunden-Zeitraums ausgelöst werden, wenn ein Workflow alle 15 Minuten ausgeführt werden soll (96 Ausführungen), im Vergleich zu 3 Ausführungen für die 3 neuen Geschäftspartner, die Sie erstellt haben, wenn der Workflow nur unmittelbar nach dem Hinzufügen des Geschäftspartnerdatensatzes zur B1-Datenbank ausgelöst.

Dies wirkt sich direkt auf den Verbrauch und damit auf die Höhe der Abrechnung am Monatsende aus.

 

Im nächsten Teil dieses Blogs werde ich die Logic App-Seite unseres Projekts behandeln.

 

Lassen Sie uns zunächst unser Szenario und die Szenarioschritte abschließen.

Unser BizFlow-Diagramm wird ein relativ einfaches Diagramm sein:

 

Wir betrachten einen typischen „asynchronen“ Prozessmodus, bei dem das Ereignis ausgelöst, abgerufen und dann an das Inbound Atom weitergeleitet wird, wo es dann über ein XSLT Atom transformiert wird, um in unserem HTTPCall Atom verwendet zu werden.

Beachten Sie, dass B1iF die Daten immer intern als XML verarbeitet. In unserem Fall möchten wir also nur die XML-Darstellung unseres Ereignisses vom Sendersystem (Ereignissender) abrufen und sie als Teil unseres HTTP-Aufrufkörpers verwenden.

 

Eine gute Möglichkeit, die Struktur der Nachrichten während der Laufzeit zu analysieren, ist die Verwendung des B1iF-Debuggers:

 

Unser XSL-Transformations-Atom muss nur angepasst werden, um die eingehende XML-Nutzlast des B1-Ereignisses zu holen, wo dann ein XPATH-Ausdruck zu unserem HTTPCall-Atom hinzugefügt wird.

 

Wir werden zu unserem HttpCall Atom zurückkehren, nachdem wir unsere Diskussion über Logic App (WebHook) in Teil 2 dieses Blogs abgeschlossen haben.

 

Lassen Sie uns zusammenfassen, was wir bisher erreicht haben:

  1. Wir haben unser Hauptthema – Ereigniserstellung und Weiterleitung in SAP Business One – vorgestellt.
  2. Wir haben einige der gängigsten Methoden zur Ereignisbehandlung behandelt und die Vor- und Nachteile der einzelnen Ansätze erläutert.
  3. Wir sind einige der grundlegenden Einstellungen und Konfigurationen des SAP Business One Integration Frameworks durchgegangen
  4. Wir haben über die neuen Verbesserungen der B1iF-Version 2.0 berichtet
  5. Wir erhielten einen detaillierten Überblick über die Einrichtung des Ereignissenders und lernten, wie man erfolgreich Filterkriterien für B1-Objekte festlegt, für die man Ereignisse erhalten möchte
  6. Wir haben gelernt, wie man eine Entwicklung über das „Deployment Panel“ unseres Szenarios einsetzt und ein SLD-Sender/Empfänger-System zuweist.
  7. Wir haben HTTP WebHooks besprochen und verstanden, dass sie eine wichtige Rolle bei der Verringerung der Anzahl von Workflow-Ausführungen spielen, die sich letztendlich auf unsere Rechnungsstellung auswirken.
  8. Wir haben die verschiedenen Schritte des Szenarios durchlaufen, um eine eingehende Nachricht (Ereignis) zu empfangen, sie zu verarbeiten und umzuwandeln und sie dann für HTTPCall Atom vorzubereiten.

 

Besuchen Sie uns auf der SAP Business One Community Blog Seite für Teil 2 der Implementierung eines Event-Forwarding Mechanismus mit SAP Business One B1iF und Microsoft Azure.

 

Liste der SAP Business One-Objekttypen

 

Tabelle Beschreibung der Tabelle Primärschlüssel Objekttyp
OACT Sachkonten AcctCode 1
OCRD Geschäftspartner CardCode 2
ODSC Bankleitzahlen AbsEntry 3
OITM Artikel ArtikelCode 4
OVTG Steuerliche Definition Code 5
OPLN Preislisten ListeZahl 6
OSPP Besondere Preise CardCode, ItemCode 7
OITG Artikel-Eigenschaften ItmsTypCod 8
ORTM Tarifunterschiede ZeileNum, IsSysCurr 9
OCRG Kartengruppen GroupCode 10
OCPR Kontaktpersonen CntctCode 11
OUSR Benutzer USERID 12
OINV Ausgangsrechnung DocEntry 13
ORIN Ausgangsgutschrift DocEntry 14
ODLN Lieferung DocEntry 15
ORDN Rückgabe DocEntry 16
ORDR Kundenauftrag DocEntry 17
OPCH Eingangsrechnung DocEntry 18
ORPC Eingangsgutschrift DocEntry 19
OPDN Wareneingang PO DocEntry 20
ORPD Rücksendung von Waren DocEntry 21
OPOR Bestellung DocEntry 22
OQUT Verkaufsangebot DocEntry 23
ORCT Eingehende Zahlung DocEntry 24
ODPS Einzahlung Einzahlung 25
OMTH Geschichte der Versöhnung MthAcctCod, IsInternal, MatchNum 26
OCHH Scheckheft CheckKey 27
OBTF Vorerfasster Beleg BatchNum, TransId 28
OBTD Liste der Journalbelege BatchNum 29
OJDT Journaleintrag TransId 30
OITW Artikel – Lager ItemCode, WhsCode 31
OADP Druck-Einstellungen PrintId 32
OCLG Aktivitäten ClgCode 33
ORCR Wiederkehrende Buchungen RcurCode, Instanz 34
ONNM Dokumentennummerierung ObjectCode, DocSubType 35
OCRC Kreditkarten Kreditkarte 36
OCRN Währungs-Codes CurrCode 37
OIDX CPI-Codes IdexCode 38
OADM Verwaltung Code 39
OCTG Zahlungsbedingungen GruppeNummer 40
OPRF Präferenzen FormNumber, UserSign 41
OBNK Externer Kontoauszug erhalten AcctCode, Sequence 42
OMRC Hersteller FirmCode 43
OCQG Eigenschaften der Karte GroupCode 44
OTRC Codes für Journaleinträge TrnsCode 45
OVPM Ausgehende Zahlungen DocEntry 46
OSRL Seriennummern ArtikelCode, SerienNummer 47
OALC Ladekosten AlcCode 48
OSHP Lieferarten TrnspCode 49
OLGT Länge Einheiten UnitCode 50
OWGT Gewichtseinheiten UnitCode 51
OITB Artikelgruppen ItmsGrpCod 52
OSLP Vertriebsmitarbeiter SlpCode 53
OFLT Bericht – Auswahlkriterien FormularNummer, BenutzerZeichen, FilterName 54
OTRT Buchungsvorlagen TrtCode 55
OARG Zollgruppen CstGrpCode 56
OCHO Schecks zur Zahlung CheckKey 57
OINM Whse Journal TransNum, Instanz 58
OIGN Wareneingang DocEntry 59
OIGE Warenausgang DocEntry 60
OPRC Kostenstelle PrcCode 61
OOCR Kostensatz OcrCode 62
OPRJ Projekt-Codes PrjCode 63
OWHS Lagerhäuser WhsCode 64
OCOG Gruppen der Kommission GroupCode 65
OITT Produktbaum Code 66
OWTR Übertragung des Inventars DocEntry 67
OWKO Produktionsanweisungen BestellNummer 68
OIPF Gelandete Kosten DocEntry 69
OCRP Zahlungsarten CrTypeCode 70
OCDT Zahlung mit Kreditkarte Code 71
OCRH Verwaltung von Kreditkarten AbsId, Instanz 72
OSCN Kunde/Lieferant Kat. Nein. ItemCode, CardCode, Substitute 73
OCRV Kredit-Zahlungen AbsId, PayId, Instanz 74
ORTT VPI und BZ-Sätze RateDate, Währung 75
ODPT Nachschüssige Einzahlung Einzahlung 76
OBGT Haushalt AbsId 77
OBGD Budget Kostenbewertung. Mthd BgdCode 78
ORCN Einzelhandelsketten KettenCode 79
OALT Vorlage für Warnmeldungen Code 80
OALR Warnungen Code 81
OAIB Empfangene Warnungen AlertCode, UserSign 82
OAOB Gesendete Nachricht AlertCode, UserSign 83
OCLS Tätigkeit Themen Code 84
OSPG Sonderpreise für Gruppen CardCode, ObjType, ObjKey 85
SPRG Anwendung Start LineNum, UserCode 86
OMLS Verteilerliste Code 87
OENT Versandarten DocEntry 88
OSAL Ausgehend von DocEntry 89
OTRA Überleitung DocEntry 90
OBGS Budget-Szenario AbsId 91
OIRT Zinsen Preise Zähler 92
OUDG Benutzer-Standardeinstellungen Code 93
OSRI Seriennummern für Artikel ItemCode, SysSerial 94
OFRT Vorlagen für Finanzberichte AbsId 95
OFRC Kategorien des Finanzberichts TemplateId, CatId 96
OOPR Gelegenheit Einspruch 97
OOIN Zinsen Ziffern 98
OOIR Zinsniveau Ziffern 99
OOSR Informationsquelle Ziffern 100
OOST Opportunitätsphase Ziffern 101
OOFR Defekt Ursache Ziffern 102
OCLT Arten von Aktivitäten Code 103
OCLO Sitzungsort Code 104
OISR Service-Anrufe AnfrageNummer 105
OIBT Charge Nr. für Artikel ItemCode, BatchNum, WhsCode 106
OALI Alternative Positionen 2 UrsprünglichesElement, AltesElement 107
OPRT Partner PrtId 108
OCMT Wettbewerber CompetId 109
OUVV Benutzer-Validierungen IndexID, Zeilennummer 110
OFPR Buchungszeitraum AbsEntry 111
ODRF Entwürfe DocEntry 112
OSRD Chargen und Seriennummern ItemCode, DocType, DocEntry, DocLineNum 113
OUDC Benutzeranzeige Kat. CodeID 114
OPVL Darlehensgeber – Pelecard Code 115
ODDT Hierarchie des Quellensteuerabzugs Zähler 116
ODDG Quellensteuerabzugsgruppen Zähler 117
OUBR Zweigstellen Code 118
OUDP Abteilungen Code 119
OWST Bestätigungsstufe WstCode 120
OWTM Genehmigungsvorlagen WtmCode 121
OWDD Dokumente. zur Konfirmation WddCode 122
OCHD Schecks für Zahlungsanweisungen CheckKey 123
CINF Infos zum Unternehmen Version 124
OEXD Fracht-Einrichtung ExpnsCode 125
OSTA Umsatzsteuerbehörden Code, Typ 126
OSTT Umsatzsteuerbehörden Typ AbsId 127
OSTC Umsatzsteuer-Codes Code 128
OCRY Länder Code 129
OCST Staaten Land, Code 130
OADF Adressformate Code 131
OCIN Ausgangskorrektur-Rechnung DocEntry 132
OCDC Bargeld-Rabatt Code 133
OQCN Abfrage-Kategorien KategorieId 134
OIND Dreiecksgeschäft Code 135
ODMW Migration von Daten Code 136
OCSTN Workstation-ID Code 137
OIDC Indikator Code 138
OGSP Warenversand Code 139
OPDF Zahlungsanweisung DocEntry 140
OQWZ Abfrage-Assistent Code 141
OASG Konto-Segmentierung AbsId 142
OASC Kategorien der Kontensegmentierung SegmentId, Code 143
OLCT Standort Code 144
OTNN 1099 Formulare FormCode 145
OCYC Zyklus Code 146
OPYM Zahlungsarten für den Zahlungsassistenten PayMethCod 147
OTOB 1099 Eröffnungsbilanz VendCode, Formular1099, Box1099 148
ORIT Mahnwesen Zinssatz Code 149
OBPP BP-Prioritäten PrioCode 150
ODUN Mahnbriefe ZeileNummer 151
CUFD Benutzerfelder – Beschreibung TabelleID, FeldID 152
OUTB Benutzer-Tabellen Tabellenname 153
OCUMI Meine Menüpunkte UserSign , Id_ 154
OPYD Zahlungslauf Code 155
OPKL Auswahlliste AbsEntry 156
OPWZ Zahlungs-Assistent IdNummer 157
OPEX Tabelle der Zahlungsergebnisse AbsEntry 158
OPYB Zahlungssperre AbsEntry 159
OUQR Abfragen IntrnalSchlüssel, QKategorie 160
OCBI Zentralbank Ind. Indikator 161
OMRV Neubewertung der Bestände DocEntry 162
OCPI Einnahme-Korrektur-Rechnung DocEntry 163
OCPV Eingangskorrektur Rechnungsstorno DocEntry 164
OCSI Ausgangskorrektur-Rechnung DocEntry 165
OCSV Ausgangskorrektur Rechnungsstorno DocEntry 166
OSCS Status der Serviceabrufe statusID 167
OSCT Arten von Serviceabrufen callTypeID 168
OSCP Serviceanrufe Problemtypen prblmTypID 169
OCTT Vertragsvorlage TmpltName 170
OHEM Mitarbeiter empID 171
OHTY Mitarbeitertypen typeID 172
OHST Arbeitnehmerstatus statusID 173
OHTR Grund der Beendigung reasonID 174
OHED Bildungstypen edType 175
OINS Kundengerätekarte insID 176
OAGP Name des Vertreters AgentCode 177
OWHT Quellensteuer WTCode 178
ORFL Bereits angezeigte Berichte 347, 349 und WTax DocEntry, ReportType, DocType, LineNum, TaxCode, OrdinalNum 179
OVTR Steuerbericht AbsEntry 180
OBOE Wechsel zur Zahlung BoeKey 181
OBOT Wechsel-Transaktion AbsEntry 182
OFRM Dateiformat AbsEntry 183
OPID Zeitraum-Indikator Indikator 184
ODOR Zweifelhafte Schulden AbsEntry 185
OHLD Feiertagstisch HldCode 186
OCRB BP – Bankkonto Land, BankCode, Konto, CardCode 187
OSST Status der Serviceabruflösung Nummer 188
OSLT Service Call Lösungen SltCode 189
OCTR Service-Verträge VertragID 190
OSCL Service-Anrufe callID 191
OSCO Ursprünge von Serviceabrufen originID 192
OUKD Benutzerschlüssel Beschreibung Tabellenname, SchlüsselId 193
OQUE Warteschlange queueID 194
OIWZ Inflations-Assistent AbsEntry 195
ODUT Mahnwesen Begriffe TermCode 196
ODWZ Mahnungs-Zauberer WizardId 197
OFCT Umsatzprognose AbsID 198
OMSN MRP-Szenarien AbsEntry 199
OTER Territorien territorialeID 200
OOND Branchen IndCode 201
OWOR Produktionsauftrag DocEntry 202
ODPI Kreditorische Anzahlung DocEntry 203
ODPO Kreditorische Anzahlung DocEntry 204
OPKG Paket-Typen PkgCode 205
OUDO Benutzerdefiniertes Objekt Code 206
ODOW Dateneigentum – Objekte Objekt, Unterobjekt 207
ODOX Dateneigentum – Ausnahmen QueryId, Objekt, SubObjekt 208
209
OHPS Mitarbeiter Position posID 210
OHTM Mitarbeiterteams teamID 211
OORL Beziehungen OrlCode 212
ORCM Empfehlung Daten DocEntry 213
OUPT Benutzerautorisierungsbaum AbsId 214
OPDT Vordefinierter Text AbsEntry 215
OBOX Box Definition BoxCode, ReportType, BosCode 216
OCLA Status der Aktivität statusID 217
OCHF 312 ObjName 218
OCSHS Benutzerdefinierte Werte IndexID 219
OACP Zeiträume Kategorie AbsEntry 220
OATC Anhänge AbsEntry 221
OGFL Gitternetz-Filter FormID, GridID, UserCode 222
OLNG Tabelle der Benutzersprache Code 223
OMLT Mehrsprachige Übersetzung TranEntry 224
OAPA3 225
OAPA4 226
OAPA5 227
SDIS Dynamische Schnittstelle (Strings) FormId, ItemId, ColumnId, Sprache 229
OSVR Gespeicherte Abgleiche acctCode 230
DSC1 Hausbankkonten AbsEntry 231
RDOC Dokument DocCode 232
ODGP Parametersätze für die Dokumentenerstellung AbsEntry 233
OMHD #740 AlertCode 234
OACG Konto-Kategorie AbsId 238
OBCA Zuweisungscodes für Bankgebühren Code 239
OCFT Cashflow-Transaktionen – Zeilen CFTId 241
OCFW Cash Flow Einzelposten CFWId 242
OBPL Geschäftlicher Ort BPLId 247
OJPE Lokaler Epochenkalender Code 250
ODIM Dimension der Kostenrechnung DimCode 251
OSCD Service Code Tabelle AbsEntry 254
OSGP Servicegruppe für Brasilien AbsEntry 255
OMGP Werkstoff-Gruppe AbsEntry 256
ONCM NCM-Code AbsEntry 257
OCFP CFOP für Nota Fiscal ID 258
OTSC CST-Code für Nota Fiscal ID 259
OUSG Verwendung der Nota Fiscal ID 260
OCDP Stichtag Verfahren ClsDateNum 261
ONFN Nota Fiscal Nummerierung ObjectCode, DocSubType 263
ONFT Nota Fiscal Steuerkategorie (Brasilien) AbsId 264
OCNT Landkreise AbsId 265
OTCD Ermittlung des Steuerkennzeichens AbsId 266
ODTY BoE Dokumenttyp AbsEntry 267
OPTF BoE-Portfolio AbsEntry 268
OIST BoE-Anweisung AbsEntry 269
OTPS Steuerliche Parameter AbsId 271
OTFC Steuerart-Kombination AbsId 275
OFML Steuerformel-Stammtabelle AbsId 276
OCNA CNAE-Code AbsId 278
OTSI Umsatzsteuer-Rechnung DocEntry 280
OTPI Kaufsteuerrechnung DocEntry 281
OCCD Zollanmeldungsnummern der Fracht CCDNum 283
ORSC Ressourcen ResCode 290
ORSG Ressourcen-Eigenschaften ResTypCod 291
ORSB ResGrpCod ResGrpCod 292
RecordSet 300
Brücke 305
OITR Interne Abstimmung ReconNum 321
OPOS POS-Stammdaten Ausrüstungsnr. 541
ODRF Aktienübertragungsvertrag DocEntry 1179
OMSG Einstellungen des Nachrichtendienstes USERID 10000105
OBTN Chargennummern Stammdaten AbsEntry 10000044
OSRN Seriennummern Stammdaten AbsEntry 10000045
OIVK IVL vs. OINM-Schlüssel TransSeq 10000062
OIQR Bestandsbuchung DocEntry 10000071
OFYM Haushaltsjahr Master AbsId 10000073
OSEC Sektionen AbsId 10000074
OCSN Zertifikat-Serie AbsId 10000075
ONOA Art des Steuerpflichtigen AbsId 10000077
RTYP Dokumenttyp-Liste CODE 10000196
OUGP UoM-Gruppe UgpEntry 10000197
OUOM UoM-Stammdaten UomEntry 10000199
OBFC Behälterfeld-Konfiguration AbsEntry 10000203
OBAT Attribut Behälterstandort AbsEntry 10000204
OBSL Unterebene des Lagers AbsEntry 10000205
OBIN Speicherort AbsEntry 10000206
ODNF DNF-Code AbsEntry 140000041
OUGR Berechtigungsgruppe GroupId 231000000
OEGP E-Mail-Gruppe EmlGrpCode 234000004
OGPC Staatlicher Zahlungscode AbsId 243000001
OIQI Vorräte Anfangsbestand DocEntry 310000001
OBTW Chargenattribute im Standort AbsEntry 310000008
OLLF Legal List Format AbsEntry 410000005
OHET Objekt: HR Mitarbeitertransfer TransferID 480000001
OTCX Ermittlung des Steuerkennzeichens DocEntry 540000005
OPQT Kaufangebot DocEntry 540000006
ORCP Vorlage für wiederkehrende Transaktionen AbsEntry 540000040
OCCT Kostenstellenart CctCode 540000042
OACR Abgrenzungsart Code 540000048
ONFM Nota Fiscal Model AbsEntry 540000056
OBFI Brasilien Fuel Indexer ID 540000067
OBBI Brasilien Getränkeindexierer ID 540000068
OCPT Cockpit-Haupttisch AbsEntry 1210000000
OWTQ Antrag auf Bestandsumlagerung DocEntry 1250000001
OOAT Pauschalvereinbarung AbsID 1250000025
OKPI Paket mit Leistungsindikatoren AbsEntry 1320000000
OTGG Zielgruppe ZielCode 1320000002
OCPN Kampagne CpnNo 1320000012
OROC Retorno Operation Codes AbsEntry 1320000028
OPSC Produkt-Quellcode Code 1320000039
ODTP Anlagevermögen Abschreibungsarten Code 1470000000
OADT Ermittlung des Anlagekontos Code 1470000002
ODPA Abschreibungsbereiche des Anlagevermögens Code 1470000003
ODPP Abschreibungsart Pools Code 1470000004
OACS Asset-Klassen Code 1470000032
OAGS Asset-Gruppen Code 1470000046
ODMC Sachkontenbestimmungskriterien – Inventar DmcId 1470000048
OACQ Kapitalisierung DocEntry 1470000049
OGAR Erweiterte Regeln für Sachkonten AbsEntry 1470000057
OACD Gutschrift DocEntry 1470000060
OBCD Barcode-Stammdaten BcdEntry 1470000062
OINC Inventurzählung DocEntry 1470000065
OEDG Rabatt-Gruppen AbsEntry 1470000077
OCCS Bestimmung der Zykluszahl WhsCode 1470000092
OPRQ Anfrage zum Kauf DocEntry 1470000113
OWLS Workflow – Aufgabendetails AufgabeID 1620000000