- 26 Sep 2024
- 6 Minutes to read
- Print
- DarkLight
- PDF
Passive Actions
- Updated on 26 Sep 2024
- 6 Minutes to read
- Print
- DarkLight
- PDF
Passive Actions werden von moveIT CONBOX als WebService bereitgestellt. Es gibt keine Benutzeroberfläche seitens moveIT CONBOX für den Endnutzer. Die Kommunikation zwischen den Systemen erfolgt vollständig im Hintergrund und ist für den Benutzer nicht sichtbar.
Die erforderlichen Parameter werden als JSON im Payload Body der HTTP-Anfrage übermittelt. Die Antworten werden ebenfalls im JSON-Format im HTTP-Response zurückgegeben. Der Content-Type der Nachrichten muss dabei stets application/json
sein.
In diesem Szenario werden die im Fremdsystem benötigten Informationen synchron direkt im Response des WebService-Calls zurückgegeben.
Authentifizierung:
Im WebService-Call erfolgt die Authentifizierung am WebServer (z.B. per Digest- oder Basic-Auth - je nachdem was der Betreiber der moveIT CONBOX Installation definiert).
Zusätzlich erfolgt die Identifizierung des Users per User-Code und UserAPIKey (
🆕 ) im JSON-Body.
SilentCopy
Kopiervorgang der im Hintergrund, ohne User Interaktion, durchgeführt werden kann.
Copy per PositionGUID
Wird die Copy Action oder SilentCopy Action ausgelöst, so kann dies ohne Beleg-Infos und nur mit der GUID einer Position geschehen. Werden keine Beleg-Infos mitgegeben, wird einfach ein neuer Beleg im Hintergrund erstellt und darin die Position kreiert.
Typ: HTTP POST
ContentType: application/json
Request - Payload Body
{
"Service": "CONBOX",
"Language": "DE",
"UserCode": "<Usercode>",
"ServiceData": {
"Action": "SilentCopy",
"Amount": 1, // Optional
"PositionGUID": "550e8400-e29b-41d4-a716-446655440000", // Optional
"SrcDocTyp": 2, // Optional
"SrcDocNbr": "Test02", // Optional
"DocTyp": 2, // Optional
"DocNbr": "Test01", // Optional
"SrcPosNbr": "Pos02", // Optional
"PosNbr": "Pos01", // Optional
"PosImgWidth": 300, // Optional
"PosImgHeight": 300 // Optional
}
}
Response
{
"Success": true,
"ErrorMessage": "",
"ServiceReturnData": {
"Action": "SilentCopy",
"PositionGUID": "550e8400-e29b-41d4-a716-446655440000",
"DocTyp": 2,
"DocNbr": "Test01",
"PosNbr": "Pos01",
"SrcDocTyp": 2,
"SrcDocNbr": "Test01",
"SrcPosNbr": "Pos02",
"Amount": 1,
"PosImgWidth": 300,
"PosImgHeight": 300,
"WarNbr": "TestArticle",
"ProductText": "",
"ProductTextRTF": "",
"PrdGrp": "ET",
"PrGrpDSC": "Ersatzteil",
"ListPrice": 1234.56,
"WarDsc": "TestArticle Beschreibung",
"WarDscEx1": "TestArticle Beschreibung Ex1",
"WarDscEx2": "TestArticle Beschreibung Ex1",
"FCoPrc": 123.45,
"PosImgURL": "http://...",
"PosImg": "[Base64]"
}
}
Delete
Löschen einer Position
Delete per PositionGUID
Die Delete Action kann rein mit der GUID einer Position ausgelöst werden. Es werden keine anderen Beleg-Infos benötigt. Wird die Position gelöscht und ist die einzige Position in einem Beleg, so ist der Beleg leer. Es wird empfohlen, die Reorganisation von leeren Belegen einzurichten.
Typ: HTTP POST
ContentType: application/json
Request - Payload Body
{
"Service": "CONBOX",
"Language": "DE",
"UserCode": "<Usercode>",
"ServiceData": {
"Action": "Delete",
"PositionGUID": "550e8400-e29b-41d4-a716-446655440000", // Optional
"DocNbr": "Test01", // Optional
"DocTyp": 2, // Optional
"PosNbr": "Pos01" // Optional
}
}
Response
{
"Success": true,
"ErrorMessage": "",
"ServiceReturnData": {
"Action": "Delete",
"DocTyp": 2,
"PositionGUID": "550e8400-e29b-41d4-a716-446655440000",
"DocNbr": "Test01",
"PosNbr": "Pos01"
}
}
Purchase
Bestellauslösung – parallel zum Fremdsystem. Die Industrie fordert im Normalfall auch eine technische moveIT Bestellung.
Purchase per PositionGUID
Bestellungen können rein über GUIDs von Konfigurations-Positionen zusammengestellt werden. In diesem Step kann auch die Menge geändert werden.
Typ: HTTP POST
ContentType: application/json
Request - Payload Body
{
"Service": "CONBOX",
"Language": "DE",
"UserCode": "<Usercode>",
"ServiceData": {
"Action": "Purchase",
"DocNbr": "Test01",
"DocTyp": 2,
"FinalCustomerLndCde": "D",
"PosNbr": "Pos01", // Optional
"ExtPchNbr": "Bestellung01", // Optional
"Subject": "Betreff", // Optional
"DlvAdr": { // Optional
"AdrTit": "Titel",
"AdrNam01": "Name",
"AdrNam02": "Name2",
"OrdNam": "Ansprecher",
"AdrStr": "Strasse",
"AdrLnd": "D",
"AdrPcd": "PLZ",
"AdrReg": "Ort"
},
"PosData": [{[ // Optional
"PosNbr": "Pos01",
"LVNbr": "Pos01",
"NotTxt": "Fertigungshinweis"
}, {
"PosNbr": "Pos02",
"LVNbr": "Pos02",
"NotTxt": "Fertigungshinweis"
}]
}
}
Response
{
"Success": true,
"ErrorMessage": "",
"ServiceReturnData": {
"Action": "Purchase",
"DocTyp": 2,
"DocNbr": "Test01",
"FinalCustomerLndCde": "D",
"PosNbr": "Pos01",
"ExtPchNbr": "Purchase01",
"Subject": "Betreff",
"DlvAdr": {
"AdrTit": "Titel",
"AdrNam01": "Name",
"AdrNam02": "Name2",
"OrdNam": "Ansprecher",
"AdrStr": "Strasse",
"AdrLnd": "D",
"AdrPcd": "PLZ",
"AdrReg": "Ort"
},
"PosData": [{
"PosNbr": "Pos01",
"LVNbr": "Pos01",
"NotTxt": "Fertigungshinweis"
}, {
"PosNbr": "Pos02",
"LVNbr": "Pos02",
"NotTxt": "Fertigungshinweis"
}]
}
}
SaveDocumentAs
Hiermit kann ein Angebot als Angebot, Angebot als Auftrag oder ein Auftrag als Auftrag gespeichert werden.
Typ: HTTP POST
ContentType: application/json
Request - Payload Body
{
"Service": "CONBOX",
"Language": "DE",
"UserCode": "<Usercode>",
"ServiceData": {
"Action": "SaveDocumentAs",
"DocNbr": "Test01",
"DocTyp": 2,
"SrcDocNbr": "Test02",
"SrcDocTyp": 2
}
}
Response
{
"Success": true,
"ErrorMessage": "",
"ServiceReturnData": {
"Action": "SaveDocumentAs",
"DocTyp": 2,
"DocNbr": "Test01",
"SrcDocTyp": 2,
"SrcDocNbr": "Test01"
}
}
SetReadyStatus
Mit der Action SetReadyStatus kann man ein Angebot oder einen Auftrag auf fertig setzen. Dies kann relevant sein, wenn dadurch weitere Schnittstellenfunktionen ausgelöst werden.
Typ: HTTP POST
ContentType: application/json
Request - Payload Body
{
"Service": "CONBOX",
"Language": "DE",
"UserCode": "<Usercode>",
"UserAPIKey": "7546b3a7-73e8-40a7-a7b6-645b4d648ac1",
"ServiceData": {
"Action": "SetReadyStatus",
"DocTyp": 2,
"DocNbr": "Test02",
"ReadyStatus": true
}
}
Response
{
"Success": true,
"ErrorMessage": "",
"ServiceReturnData": {
"Action": "SetReadyStatus",
"DocTyp": 2,
"DocNbr": "Test02",
"ReadyStatus": true
}
}