Datensatzmodelle
Die Datensatztypen sind nicht allgemeingültig: Felder, Tabellen und Indizes hängen an der
jeweiligen microtech-ERP-Installation. Die Modelle werden deshalb mit dem Generator bpnext-gen gegen
die Zielinstanz erzeugt und als Assembly in Ihr Projekt eingebunden.
| Zugang | Assembly | Beispiele |
|---|---|---|
| COM | BpNexT.NET.Models.dll |
Artikel, Adressen, Vorgang |
| GraphQL | BpNexT.NET.Models.GraphQL.dll |
Products, Addresses, Transactions |
Generator installieren
Der Generator liegt als globales Tool im selben Feed wie die SDK-Pakete:
dotnet tool install -g BpNexT.NET.Generator.Cli --source BpNexT.NET
Danach steht der Befehl bpnext-gen zur Verfügung. Aktualisieren mit
dotnet tool update -g BpNexT.NET.Generator.Cli. Verwenden Sie die Version, die zu Ihren
SDK-Paketen passt: die erzeugten Modelle bauen auf den Verträgen dieser Version auf.
Das Tool läuft ohne erhöhte Rechte. Schreibt es in ein geschütztes Verzeichnis oder verlangt der COM-Zugriff Rechte, starten Sie es aus einer Administrator-Eingabeaufforderung.
Für Endkunden Ihrer Anwendung ist das Tool nicht gedacht, die haben keinen Feed-Zugang. Dort liefern Sie den Generator als Exe mit Ihrem Installer aus und rufen ihn nach der Installation einmal gegen die microtech-ERP-Instanz des Kunden auf. Wie Ihre Anwendung dabei den Fortschritt anzeigt, beschreibt Generator aus der Anwendung starten.
Modelle erzeugen
Der Generator läuft dort, wo die microtech-ERP-Instanz erreichbar ist, und meldet sich dafür selbst an.
bpnext-gen generate `
--user BENUTZER --password KENNWORT --mandant 1 `
--endpoint https://<host>/microtech/erp/<tenant>/graphql/v1 `
--client-id <client-id> --client-secret <client-secret> `
--out .\lib
| Aufruf | Wirkung |
|---|---|
generate |
COM-Modelle, zusätzlich GraphQL-Modelle, sobald Endpunkt und OAuth-Client angegeben sind |
com |
nur COM-Modelle |
graphql |
nur GraphQL-Modelle, benötigt vorhandene COM-Modelle über --models-dll |
check |
Zugangsdaten und Erreichbarkeit prüfen, ohne zu erzeugen |
Die GraphQL-Stufe leitet ihre Typen aus den COM-Modellen ab und setzt diese deshalb voraus. Im
kombinierten Lauf geschieht das ohne Zutun. Ohne --out schreibt der Generator in sein eigenes
Verzeichnis. bpnext-gen --help listet alle Parameter.
Important
Kennwort und Client-Secret sind auf der Kommandozeile in der Prozessliste sichtbar. Verwenden
Sie für automatisierte Läufe --credentials-from oder die Umgebungsvariablen, siehe
Generator aus der Anwendung starten.
Ändert sich die microtech-ERP-Konfiguration, etwa durch neue Felder oder ein Update, erzeugen Sie die Modelle neu.
Projektreferenz
Legen Sie die Assembly beispielsweise unter lib ab und referenzieren Sie sie in der
Projektdatei. Für COM:
<ItemGroup>
<Reference Include="BpNexT.NET.Models">
<HintPath>lib/BpNexT.NET.Models.dll</HintPath>
</Reference>
</ItemGroup>
Für GraphQL verwenden Sie entsprechend BpNexT.NET.Models.GraphQL und
lib/BpNexT.NET.Models.GraphQL.dll.