API - Produktion
api_get
Diese generische Methode ist hier dokumentiert: API & OTA-Integration#Datenlesenmitapi_get
Die Optionen innerhalb der Projekte API sind hier gelistet
Verfügbare Tabellen | gesperrte Felder |
---|---|
Stuckliste | PKUUID_17 |
Kantenbilder | PKUUID_109 |
StkSuchfeld | PKUUID_143 |
StliVorgabezeit | PKUUID_84 |
Stk_Beschicht | PKUUID_39 |
StkKonstanten | PKUUID_201 |
StkBelagKanteCode | PKUUID_196 |
Hilfreiche api_get-Aufrufe für Produktion
Projekte abrufen
mit AuftragsNr, Bauvorhaben, Bezeichnung, Erfassungsdatum, Lieferwoche, Status und KundenNr
http://meinserver:8080/4DAction/api_get?token=F9608E0E6CBD4177A02FB5934AAD2B4F&table=Auftrag&fields=AuftragsNr,Bauvorhaben,Bezeichnung,Erfassungsdatum,Lieferwoche,Status,KundenNr
Projektpositionen abrufen
mit Ausgabe der ElementID und einschränken auf ein gegebenes Projekt
http://meinserver:8080/4DAction/api_get?token=66B4E4AE9AD14F62ABA8B17C44C2D712&table=Stuckliste&fields=AuftragsNr,PositionsNr,Bezeichnung,ElementID&query=AuftragsNr=PF-16-035
api_put_part - Bauteile anlegen oder ändern
Ein neues Bauteil anlegen:
http://meinserver:8080/4DAction/api_get?token=ABC123&AuftragsNr=P00043&PositionsNr=100&Anzahl=3&ArtikelNr=P2_19
Man kann hier also alle String- oder Zahlenfelder der Stückliste verwenden und die passenden Werte zuweisen.
Um explizit ein neues Teil anzulegen verwendet man den Parameter append=True (default ist True) und für die Änderung eines vorhandenen Felder ergänzt man die LfdNr (LfdNr=12) und update=True (default ist False).
api_get_weight - Gewichte von Bauteilen ermitteln
Gewicht alles Bauteile eines Projekts ermitteln:
http://meinserver:8080/4DAction/api_get_weight?token=ABC123&AuftragsNr=P00043
Rückmeldung - Beispiel:
{"error":"","success":true,"startProcess":85907272,"responseMode":"JSON","licenseOK":true,"weight":13.8439,"partCount":1,"endProcess":85908041,"processingTime":769,"errorMsg":""}
Folgende Parameter sind möglich:
- AuftragsNr - wenn alleine übergeben, wird das Gewicht aller Bauteile im Projekt ermittelt
- PositionsNr - nur zusammen mit AuftragsNr. Ermittelt das Gewicht aller Bauteile einer Position
- RecNum - ermittelt für das mit der RecNum identifizierte Bauteil das Gewicht
Die Gewichtsermittlung berücksichtigt alle Trägermaterialien, Kanten, Beläge und Beschichtungen. Zur Berechnung ist erforderlich, dass die Artikel im Artikelstamm ein Mengeneinheitsgewicht hinterlegt haben.
api_get_stkkennzahlen - Ermittelt statistische Kennzahlen der Stücklisten
Gewicht alles Bauteile eines Projekts ermitteln:
http://meinserver:8080/4DAction/api_get_stkkennzahlen?token=ABC123&AuftragsNr=A000002
Rückmeldung - Beispiel:
{"error":"","success":true,"startProcess":177279869,"responseMode":"JSON","licenseOK":true,"material":[{"restteile":0},{"umfang":4.798},{"kantenlaenge":2.2},{"belagsflaeche":0},{"oberflaeche":0},{"anzahlplatten":7}],"times":[{"taetigkeit":"Sonstige","menge":0,"einheit":"Stück","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:51:00","durchVorgabezeit":"0:00:00"},{"taetigkeit":"Zuschnitt","menge":4.79,"einheit":"lfm","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:32:36","durchVorgabezeit":"0:06:48"},{"taetigkeit":"Bekanten","menge":2.2,"einheit":"lfm","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:13:12","durchVorgabezeit":"0:06:00"},{"taetigkeit":"Furnieren und Belegen","menge":0,"einheit":"m2","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:00:00","durchVorgabezeit":"0:00:00"},{"taetigkeit":"Lackieren","menge":0,"einheit":"m2","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:34:08","durchVorgabezeit":"0:00:00"},{"taetigkeit":"Zusammenbauen","menge":7,"einheit":"Stück","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:00:00","durchVorgabezeit":"0:00:00"}],"endProcess":177281316,"processingTime":1447,"errorMsg":""}
Folgende Parameter sind möglich:
- AuftragsNr - wenn alleine übergeben, werden die Kennzahlen für das ganze Projekt ermittelt
- PositionsNr - nur zusammen mit AuftragsNr. Ermittelt die Kennzahlen für die übergebene Position
Die Ermittlung der Kennzahlen liefert die gleichen Daten wie der gleichnamige Dialog in der Stückliste. Dementsprechend werden die Gesamtmengen an Trägermaterialien, Kanten, Belägen und Beschichtungen ermittelt. Außerdem die Vorgabezeiten und die erfassten Zeiten.
Produktion - API-Methoden
api_getproduction (API-Produktion) - Gibt eine Projektübersicht im HTML-Format wieder
Erforderliche Parameter:
Token
Konkretes Beispiel:
http://meinserver:8080/4DAction/api_getproduction?token=5223EE4D186449B0BDBE9ED7EC53F747
Liefert eine Webseite mit allen über den Token zugänglichen Projekten. Die einzelnen Projekte sind verlinkt mit api_getproductionposition.
api_productionposition - Liefert alle zugehörigen Stücklisten zu einem Projekt
Erforderliche Parameter:
Token, projectnr
Konkretes Beispiel:
http://meinserver:8080/4DAction/api_productionposition?token=F9608E0E6CBD4177A02FB5934AAD2B4F&projectnr=PF-16-041
Liefert die alle zu einem Projekt gehörigen Stücklisten auf im HTML-Format. Die einzelnen Stücklisten sind verknüpft mit api_partitem.
api_partitem - Liefert eine Stückliste aus (ElementID)
Erforderliche Parameter:
Token, ElementID
Konkretes Beispiel:
http://meinserver:8080/4DAction/api_partitem?token=F9608E0E6CBD4177A02FB5934AAD2B4F&ElementID=97e6173dd80afb1ca7d746d99b0ade5d
Gibt eine Web-Ansicht der gegebenen Stückliste wieder. Der Parameter ElementID ist in der Tabelle Stuckliste einsehbar.
api_partcncqrcode - gibt den QR-Code für ein CNC-Programm aus
api_partdone - Fortschrittsmeldung in einer Stückliste
api_partstation - Setzt den Status einer Stückliste und gibt ihn wieder
api_qasignature - Speichert eine digitale Unterschrift oder liefert sie aus
Neuer api-Befehl: api_get_stkkennzahlen
Erforderliche Parameter:
token, AuftragsNr, PositionsNr (optional)
Wird die Positionsnummer nicht übergeben, werden alle Positionen zur Ermittlung herangezogen
Konkretes Beispiel:
http://meinserver:8080/4DAction/api_get_stkkennzahlen?token=ABC123&AuftragsNr=P00043&PositionsNr=-1
Es werden die Kennzahlen für alle Positionen des übergebenen Projekts ermittelt und zurückgegeben.
Beispiel einer Rückgabe:
{"error":"","success":true,"startProcess":-1137156098,"responseMode":"JSON","licenseOK":true,
"material":[{"restteile":0},{"umfang":4.798},{"kantenlaenge":2.2},{"belagsflaeche":0},{"oberflaeche":0},{"anzahlplatten":5}],
"times":[{"taetigkeit":"Sonstige","menge":0,"einheit":"Stück","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:35:00","durchVorgabezeit":"0:00:00"},
{"taetigkeit":"Zuschnitt","menge":4.79,"einheit":"lfm","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:26:36","durchVorgabezeit":"0:05:33"},
{"taetigkeit":"Bekanten","menge":2.2,"einheit":"lfm","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:13:12","durchVorgabezeit":"0:06:00"},
{"taetigkeit":"Furnieren und Belegen","menge":0,"einheit":"m2","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:00:00","durchVorgabezeit":"0:00:00"},
{"taetigkeit":"Lackieren","menge":0,"einheit":"m2","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:30:08","durchVorgabezeit":"0:00:00"},
{"taetigkeit":"Zusammenbauen","menge":5,"einheit":"Stück","gesamtzeitErf":"0:00:00","durchschnitt":"0:00:00","kosten":"0","vorgabezeiten":"0:00:00","durchVorgabezeit":"0:00:00"}],
"endProcess":-1137155472,"processingTime":626,"errorMsg":""}