MKG API Productieorders

Dit artikel bevat de veelgebruikte API-aanroepen voor Productieorders.

Getest op API V3 en MKG Versie 005.91.014.


Inhoudsopgave


Data dictionary
Voor informatie over endpoints, velden en acties, zie dit artikel.

 

Postman
Voor voorbeelden van API-aanroepen, zie dit artikel.

 

Opvragen

Crediteur
Voor het opvragen en aanmaken van een crediteur, zie dit artikel.

 

Artikel
Voor het opvragen en aanmaken van een artikel, zie dit artikel.

 

Productieorderheaderlijst

Voor het opvragen van een productieorderlijst kan gebruik worden gemaakt van de volgende call. Er is een filter beschikbaar om historisch uit te sluiten, of mee te nemen: 

GET {{restUrl}}/Documents/prdh?Filter=prdh_historisch = false&FieldList=admi_num,prdh_num,mkg_grbv_prdh

{{restUrl}}/Documents/prdh?Filter=prdh_historisch = false&FieldList=admi_num,prdh_num,mkg_grbv_prdh

 

Productieorderheader zoeken

Voor het opvragen van een specifieke productieorder kan gebruik worden gemaakt van de volgende call: 

GET {{restUrl}}/Documents/prdh?Filter=Search = "0013"&NumRows=10&FieldList=admi_num,prdh_num,mkg_grbv_prdh

{{restUrl}}/Documents/prdh?Filter=Search = "0013"&NumRows=10&FieldList=admi_num,prdh_num,mkg_grbv_prdh

 

Productieorderregel

Voor het opvragen van alle productieorderregels onder een productieorder kan gebruik worden gemaakt van de volgende call. Wanneer je een specifieke regel wilt ophalen, kun je het regelnummer meegeven met het filter prdr_num=1:

GET {{restUrl}}/Documents/prdr/?Filter=prdh_num = "60210013"&FieldList=prdr_num,prdr_oms_1

{{restUrl}}/Documents/prdr/?Filter=prdh_num = "60210013"&FieldList=prdr_num,prdr_oms_1

 

Productieordermateriaal

Voor het opvragen van productieordermateriaal kan gebruik worden gemaakt van de volgende call:

GET {{restUrl}}/Documents/prdr/1+{{prdh_num}}+{{prdr_num}}/prdr_prmv/{{prmv_num}}?FieldList=prdh_num,prdr_num,prmv_num,vrdg_num,prmv_kostprijs,prmv_adviesprijs,prmv_totaal_prijs

{{restUrl}}/Documents/prdr/1+{{prdh_num}}+{{prdr_num}}/prdr_prmv/{{prmv_num}}?FieldList=prdh_num,prdr_num,prmv_num,vrdg_num,prmv_kostprijs,prmv_adviesprijs,prmv_totaal_prijs

 

Productieorderbewerking

Voor het opvragen van een productieorderbewerking kan gebruik worden gemaakt van de volgende call:

GET {{restUrl}}/Documents/prdr/1+{{prdh_num}}+{{prdr_num}}/prdr_prbv/{{prbvnum}}?FieldList=prdh_num,prdr_num,prbv_num,prbv_bew_tarief_advies,prbv_bew_tarief_netto,prbv_bew_kostprijs

{{restUrl}}/Documents/prdr/1+{{prdh_num}}+{{prdr_num}}/prdr_prbv/{{prbvnum}}?FieldList=prdh_num,prdr_num,prbv_num,prbv_bew_tarief_advies,prbv_bew_tarief_netto,prbv_bew_kostprijs

 

Aanmaken

 

Productieorderheader

Voor het aanmaken van een productieorder hoeft geen crediteur aangemaakt te zijn waar deze aan wordt gekoppeld. Wanneer je enkel een losse productieorder aanmaakt, zal deze standaard niet voor een klant worden aangemerkt. Dit zorgt ervoor dat de productieorder voor de voorraad wordt geproduceerd. 

POST {{restUrl}}/Documents/prdh

{{restUrl}}/Documents/prdh

Request body:

{
    "request": {
        "InputData": {
          "prdh": [
                {
                    "admi_num": {{admi_num}},
                  "cred_num": {{cred_num}},
                  "prdh_oms_1": "Omschrijving",
                  "iorh_ref_uw": "Creditor reference",
                  "iorh_ordernummer_extern": "Customer order code",
"prdh_dat_order": "31-12-2025",
"prdh_dat_planning": "31-12-2025"
                }
            ]
        }
    }
}

 

Productieorderregel

Voor het aanmaken van een productieorderregel moet een productieorder zijn aangemaakt waar deze aan wordt gekoppeld. Deze productieorder wordt gekoppeld met de variabele {{prdh_num}}.

POST {{restUrl}}/Documents/prdh/{{prdh_num}}/prdh_eindproduct/

{{restUrl}}/Documents/prdh/{{prdh_num}}/prdh_eindproduct/

Request body:

{
    "request": {
        "InputData": {
          "prdr": [
                {
                    "admi_num": {{admi_num}},
"arti_code": "Artikel",
                  "prdr_oms_1": "Sales order line",
                  "prdr_aantal": 100,
                  "eenh_code": "st."
                }
            ]
        }
    }
}

 

Productieordermateriaal

Voor het aanmaken van productiemateriaal moeten een productieorder en productieorderregel zijn aangemaakt waar deze aan wordt gekoppeld. Deze wordt gekoppeld met de variabelen {{prdh_num}} + {{prdr_num}}.

POST {{restUrl}}/Documents/prdr/{{prdh_num}}+{{prdr_num}}/prdr_prmv 

{{restUrl}}/Documents/prdr/{{prdh_num}}+{{prdr_num}}/prdr_prmv

Request body:

{
    "request": {
        "InputData": {
            "prmv": [
                {
                "admi_num": {{admi_num}},
                  "prmv_oms_1": "API materiaal test",
                  "cred_num": {{crednum}}
                }
            ]
        }
    }
}

 

Productieorderbewerkingen

Voor het aanmaken van een productieorderbewerking moeten een productieorder en productieorderregel zijn aangemaakt waar deze aan wordt gekoppeld. Deze wordt gekoppeld met de variabelen {{prdh_num}} {{prdr_num}}.

POST {{restUrl}}/Documents/prdr/{{prdh_num}}+{{prdr_num}}/prdr_prbv  

{{restUrl}}/Documents/prdr/{{prdh_num}}+{{prdr_num}}/prdr_prbv

Request body:

{
    "request": {
        "InputData": {
          "prbv": [
                {
                  "admi_num": {{admi_num}},
                  "bwrk_num": 1000,
                  "prbv_tijd_per_stuk": 60
                }
            ]
        }
    }
}

 

Acties

 

Productieorderregel accepteren

In MKG is het mogelijk om een productieorderregel te accepteren. Dit kan enkel voor één regel tegelijk. Het accepteren van een productieorderregel zorgt ervoor dat deze regel wordt vastgelegd en geaccepteerd. De regel is daarmee goedgekeurd en klaar voor productie.

Voor het accepteren van een productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_accepteren

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_accepteren

 

Inkooporder maken

Als je een productieorderregel hebt, is het ook mogelijk om een inkooporder aan te maken, als niet alle benodigde materialen aanwezig zijn voor productie.

Voor het aanmaken van een inkooporder voor een productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/s_createpurchaseorder

{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/s_createpurchaseorder

 

Create backflush

Backflushing in een ERP-systeem is een methode om de administratie van materiaalverbruik te vereenvoudigen door kosten en voorraadvermindering automatisch toe te wijzen, nadat een productieorder is voltooid. 

Voor het uitvoeren van een backflush maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/CreateBackflush

{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/CreateBackflush

 

In productie nemen

Voor het in productie nemen van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_in_productie

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_in_productie

 

Picklist

Voor het starten van een picklist voor een productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_picklist

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_picklist

Request body:

{
    "request": {
        "InputData": {
            "PickListAction": [
                {
                  "t_dat_uitgifte": "{{TodayReverse}}",
                  "mgub_num": "MA230010",
                  "t_uitgeven": true,
                  "t_memo": "Memo Picklist",
                  "t_afgewerkt": true,
                    "RowKey": "x"
                }
            ]
        }
    }
}

 

Terugmelden picklist

Voor het terugmelden van de picklist maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_terugmelden_picklist

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_terugmelden_picklist

Request body:

{
    "request": {
        "InputData": {
            "PickListAction": [
                {
                  "t_dat_uitgifte": "{{TodayReverse}}",
                  "mgub_num": "MA230010",
                  "t_memo": "Terugmelden picklist",
                    "RowKey": "x" 
                }
            ]
        }
    }
}

 

Plannen

Voor het plannen van de productie van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_plannen

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_plannen

 

Vrijgeven planning

Voor het vrijgeven van de planning van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_vrijgeven

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_vrijgeven

 

Herplan order

Voor het herplannen van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_herplan_order

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_herplan_order

Request body:

{
    "request": {
        "InputData": {
            "ReSchedule": [
                {
                  "Rowkey": 1,
                  "t_planorder_methode": 2,
                  "t_cap_methode": 0,
                  "t_plan_richting": 0,
                  "t_bucket_methode": 1,
                  "t_optimaliseren": false
                }  
            ]
        }
    }
}

 

Aanmaken reservering

Voor het aanmaken van een reservering van materiaal voor een productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/s_createreservation

{{restUrl}}/Documents/prmv/{{admi_num}}+{{prdh_num}}+{{prdr_num}}+{{prmv_num}}/Service/s_createreservation

Request body:

{
    "request": {
        "InputData": {
            "Reservation": [
                {
                  "t_eenh_reservering": "st.",
                  "t_afgewerkt": true,
                  "t_uitgeven": false,
                  "t_uitgifte_datum": "2023-04-06",
                  "RowKey": 1
                }
            ],
            "StockAvailableList": [
                {
                  "RowKey": 1,
                  "t_ingave": 1,
                  "t_link_aantal": 1,
                  "t_pamt_row": "0x0000000003c14e6d"
                }
            ]
        }
    }
}

 

Verwijderen reservering

Voor het verwijderen van een reservering van materiaal voor een productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prmv/0/Service/s_deletereservations

{{restUrl}}/Documents/prmv/0/Service/s_deletereservations

Request body:

{
    "request": {
        "InputData": {
             "t_selected_rows": [
                {
                  "t_value": "0x00000000000b24a0"
                },
                {
                  "t_value": "0x00000000000b2503"
                }
            ]
        }
    }
}
 

Productie gereedmelden

Wanneer een productieorderregel gereed is dan kan deze gereed worden gemeld. Je hebt de mogelijkheid om één regel gereed te melden, of meerdere regels tegelijk.

Voor het gereedmelden van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_aantal_gereed?FieldList=part.part_num

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_aantal_gereed?FieldList=part.part_num

Request body:

{
    "request": {
        "InputData": {
            "prdr": [
                {
                  "RowKey": 1,
                  "t_verwerk_aantal": 10,
                  "t_verwerk_datum": "2022-07-27",
                  "t_part_id": "{{$randomUUID}}",   
                  "t_part_magl": "{{magl_code}}", 
                  "t_part_memo": "memo" 
                }
            ]
        }
    }
}

 

Voor het gereedmelden van meerdere productieorderregels maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/x/Service/s_actie_aantal_gereed?Fieldlist=part.part_num

{{restUrl}}/Documents/prdr/x/Service/s_actie_aantal_gereed?Fieldlist=part.part_num

Request body:

{
    "request": {
        "InputData": {
            "prdr": [
                {
                    "RowKey": "x",
                  "t_verwerk_datum": "2023-12-13"           
                 }
            ],
            "t_selected_rows": [
                {
                  "t_value": "1+60142337+1"
                },
                {
                    "t_value": "1+60142337+2"
                }
            ]
        }
    }
}

 

Financieel gereedmelden

Wanneer een productieorderregel helemaal is afgerond, kun je deze financieel gereedmelden. Dit kan enkel per productieorderregel en niet met meerdere regels tegelijk.

Voor het financieel gereedmelden van één productieorderregel maak je gebruik van de volgende call:

PUT{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_financieel_gereed

{{restUrl}}/Documents/prdr/{{admi_num}}+{{prdh_num}}+{{prdr_num}}/Service/s_actie_financieel_gereed

Request body:

{
    "request": {
        "InputData": {
            "prdr": [
                {
                    "RowKey": "1",
                  "t_verwerk_aantal": 1,
                  "t_verwerk_afgewerkt": true,
                  "t_verwerk_datum": "{{TodayReverse}}",
                    "t_part_id": "{{$randomUUID}}",
                  "t_part_memo": "memo",
                    "prdr_parent": {{prdrnum_EP}}
                 }
            ]
        }
    }
}