Integrări / ERP / QAD Adaptive ERP
Ghid de integrare QAD Adaptive ERP pentru programarea producției cu SkyPlanner APS
Acest ghid de integrare QAD Adaptive ERP arată partenerilor și echipelor IT cum să conecteze QAD Adaptive ERP la SkyPlanner APS, inclusiv în cazul instalărilor mai vechi QAD Enterprise Edition și MFG/PRO. SkyPlanner se integrează bidirecțional cu QAD Adaptive ERP, folosind interfețele proprii QAD:
- În SkyPlanner sunt importate comenzile de producție și operațiile acestora, articolele, structurile de produs, fluxurile tehnologice, centrele de lucru, calendarele de producție, stocurile și comenzile de achiziție.
- Datele de lansare și termenele de finalizare stabilite prin programare sunt trimise înapoi în Work Order Maintenance (16.1).
- Pontajele operatorilor sunt trimise înapoi prin Labor Feedback by Work Order (16.20.1), iar cantitățile finalizate prin Work Order Receipt (16.11).
- Webhook-urile SkyPlanner transmit modificările programului pe măsură ce apar.
Echipa SkyPlanner configurează integrarea în funcție de configurația dumneavoastră QAD în etapa de implementare și asigură asistență după punerea în funcțiune. Acest ghid se adresează partenerilor și dezvoltatorilor care doresc să participe sau să dezvolte singuri soluții folosind REST API documentat al SkyPlanner (documentația API).
Interfețele de integrare QAD
QAD oferă trei căi de integrare pentru un sistem extern de programare a producției:
- QAD QXtend Inbound (QXI). QAD îl descrie astfel: “a Web services-based, SOAP-compliant, XML framework, enabling complete platform-independent access to QAD Enterprise Applications business functionality.” (un cadru XML bazat pe servicii web, compatibil SOAP, care oferă acces complet la funcțiile de business QAD Enterprise Applications, independent de platformă). Fiecare cerere este un QDoc care execută un program QAD cu aceleași validări ca în interfața acestuia și primește un QDoc de răspuns. Printre QDocs disponibile se numără
maintainItemMaster,maintainRoutingșimaintainPurchaseOrder. Pentru programele fără un QDoc disponibil, instrumentul QGen de la QAD mapează programul din meniu: “QGen is used to map custom programs or QAD Enterprise Applications programs that do not have released QDoc schemas and events files.” (QGen este folosit pentru a mapa programe personalizate sau programe QAD Enterprise Applications pentru care nu sunt disponibile scheme QDoc și fișiere de evenimente). QAD folosește chiar această cale: “QAD Production Scheduler uses QAD QXtend to update work orders.” (QAD Production Scheduler folosește QAD QXtend pentru a actualiza comenzile de producție). (Ghid QXtend) - QAD QXtend Outbound (QXO). QXO “exports user-configurable business objects as XML QDocs out of QAD products.” (exportă din produsele QAD obiecte de business configurabile de utilizator, sub formă de QDocs XML). Obiectele de business standard includ Item, Product Structure, Routing, Work Center, Department, Inventory Transaction și Inventory Status.
- REST API pentru documente de business. Începând cu Adaptive ERP 2022.1, “Query REST APIs are now available for business documents,” (sunt disponibile REST API de interogare pentru documentele de business), cu filtrare, sortare, paginare și preluare parțială a datelor. Acestea sunt documentate în Swagger pe instanța dumneavoastră (note de versiune).
Scrierile se fac prin QXtend. Citirile se fac prin QXO și REST API de interogare.
Autentificare și licențiere
- QXtend Inbound. Când opțiunea Require Authentication este activată pe receptor, fiecare QDoc conține un Session ID sau un nume de utilizator și o parolă QAD. QXI verifică drepturile de acces ale utilizatorului la meniu înainte de a executa programul.
- Utilizator de integrare. Creați un utilizator QAD dedicat, cu acces strict la programele din meniu pe care le apelează integrarea: Work Order Maintenance, Labor Feedback by Work Order, Work Order Receipt și programele pentru nomenclatoare.
- Licența QXtend. Licențierea QXtend se face în funcție de agenți și receptori. Ghidul QAD precizează că traficul prin servicii web către și dinspre o aplicație externă nu este gratuit, așa că verificați licența QXtend înainte de începerea proiectului.
În SkyPlanner, autentificarea pentru REST API se face cu un token API în antetul Authorization-Token (SkyPlanner Settings > API), iar documentația este disponibilă în Swagger/OpenAPI. Tutorialul de integrare vă ghidează prin primele apeluri.
Evenimente și modificări ale datelor
QXtend Outbound este mecanismul QAD pentru transmiterea modificărilor datelor. “A change occurs to watched data in QAD Enterprise Applications. Change notifications are written out to the qxevents database.” (Când se modifică datele monitorizate în QAD Enterprise Applications, notificările de modificare sunt scrise în baza de date qxevents.) QXO construiește apoi documentele QDoc și le livrează “to a directory location where the subscriber polls for and picks up new QDocs,” (într-un director pe care abonatul îl verifică periodic pentru a prelua noile QDocs) sau către un serviciu web care ascultă la un URL.
SkyPlanner se abonează ca serviciu web la datele publicate de QXO și folosește interfețele REST API de interogare pentru a prelua periodic datele pe care QXO nu le acoperă. Work Order nu se numără printre obiectele de business standard QXO. Prin urmare, integrarea fie adaugă un obiect de business QXO bazat pe tabelele comenzilor de producție (wo_mstr, wr_route), fie preia comenzile de producție prin interfețele REST API de interogare la fiecare câteva minute.
SkyPlanner trimite webhook-uri când se modifică starea sau programul de producție, astfel că scrierea înapoi în QAD este declanșată de evenimente.
Corespondența datelor
| Obiect QAD (program, interfață) | Obiect SkyPlanner | Sens | Frecvență |
|---|---|---|---|
| Articole (Item Master Maintenance 1.4.1; QXO Item) | Produse și materiale | QAD → SkyPlanner | Încărcare inițială, apoi la modificare prin QXO |
| Structuri de produs (13.5; QXO Product Structure) | Structura produsului, subproduse, materiale pentru fiecare produs | QAD → SkyPlanner | Încărcare inițială, apoi la modificare prin QXO |
| Fluxuri tehnologice (14.13.1; QXO Routing): timpi de așteptare la coadă, pregătire, execuție, așteptare după execuție și transport | Etape de proces cu durate, timpi de pregătire și de demontare | QAD → SkyPlanner | Încărcare inițială, apoi la modificare prin QXO |
| Centre de lucru (14.5) și departamente (14.1; QXO Work Center, Department) | Centre de lucru, grupuri de centre de lucru, valori de eficiență | QAD → SkyPlanner | Încărcare inițială, apoi rar |
| Calendarele de producție și ale centrelor de lucru | Schimburi și zile nelucrătoare | QAD → SkyPlanner | Zilnic sau cu schimburi proprii definite în SkyPlanner |
| Comenzi de producție (16.1) cu fluxul tehnologic aferent (16.13.13) și componente | Comenzi și operații cu termene și necesar de materiale | QAD → SkyPlanner | Obiect QXO personalizat sau interogare periodică prin REST la fiecare câteva minute |
| Stocuri (QXO Inventory Status, Inventory Transaction) | Solduri de stoc | QAD → SkyPlanner | La modificare sau la fiecare oră |
| Comenzi de achiziție cu termene de livrare | Comenzi de achiziție, materiale de primit în funcție de data livrării | QAD → SkyPlanner | Interogare la fiecare oră sau la generarea programului de producție |
| Datele de lansare și termenele de finalizare ale comenzilor de producție (Work Order Maintenance 16.1, QXtend Inbound QDoc) | Momentele planificate de început și de sfârșit pentru fiecare comandă | SkyPlanner → QAD | La modificarea programului de producție, printr-un webhook SkyPlanner |
| Labor Feedback by Work Order (16.20.1): timp de pregătire și de execuție pentru fiecare operație | Pontaje și confirmări ale operatorilor | SkyPlanner → QAD | La fiecare confirmare sau schimb, dacă se optează pentru aceasta |
| Work Order Receipt (16.11) | Cantități finalizate | SkyPlanner → QAD | La fiecare confirmare, dacă se optează pentru aceasta |
| Nu există în QAD | Matricea timpilor de pregătire, scule cu disponibilitate limitată, utilaje alternative și personal de înlocuire | Gestionate în SkyPlanner | Configurate în etapa de implementare inițială |
Modele de integrare
1. Încărcarea inițială a nomenclatoarelor. Preluați articolele, structurile de produs, fluxurile tehnologice, centrele de lucru și calendarele prin QXO sau REST API de interogare. Stabiliți cu atenție corespondența centrelor de lucru: un centru de lucru cu patru utilaje devine un grup de centre de lucru sau patru centre de lucru. Liniile de producție repetitivă din Production Line Maintenance pot deveni și ele centre de lucru.
2. Sincronizarea comenzilor de producție. Preluați comenzile de producție cu planificare fermă și pe cele lansate, împreună cu fluxurile tehnologice și componentele lor, precum și comenzile de achiziție deschise. SkyPlanner consideră materialul comandat disponibil la data de livrare din comanda de achiziție și actualizează stocul când aceasta este marcată cu starea Delivered.
Programați comenzile de producție, nu comenzile planificate de MRP. Mai întâi, comenzile planificate trebuie să devină în QAD comenzi de producție cu planificare fermă sau comenzi lansate.
3. Scrierea programului de producție înapoi în QAD. Când motorul de programare plasează sau mută o comandă, un webhook SkyPlanner declanșează un QDoc QXtend Inbound pentru Work Order Maintenance (16.1). Acesta setează data de lansare la data primei operații programate și termenul de finalizare la data ultimei operații. QXtend execută programul cu validările proprii QAD și returnează un QDoc de răspuns, pe care integrarea îl verifică.
Succesiunea operațiilor pe fiecare utilaj rămâne în SkyPlanner și ajunge la operatori prin Mobile Confirmations. Astfel, integrarea nu este afectată de blocarea fluxului tehnologic în QAD pentru comenzile lansate.
4. Confirmări din producție. Operatorii înregistrează activitatea cu SkyPlanner Mobile Confirmations sau Production Timer, iar pontajele mențin programul de producție la zi. Dumneavoastră decideți dacă timpii efectivi sunt trimiși înapoi în QAD. Dacă da, timpii de pregătire și de execuție sunt trimiși în Labor Feedback by Work Order pentru fiecare operație, iar cantitățile finalizate în Work Order Receipt. Dacă nu, manopera se introduce în QAD ca înainte.
5. Responsabilitatea pentru date și regulile de soluționare a conflictelor. Documentați-le înainte de punerea în funcțiune:
| Date | Sistem responsabil |
|---|---|
| Articole, structuri de produs, fluxuri tehnologice, cantități, starea comenzilor de producție | QAD |
| Succesiunea operațiilor, momentele de început și de sfârșit, alocarea pe utilaje | SkyPlanner |
| Datele de lansare și termenele de finalizare ale comenzilor de producție | SkyPlanner scrie, QAD stochează |
| Matricea timpilor de pregătire, necesarul de scule și operatori, resurse alternative | SkyPlanner |
| Schimburi și zile nelucrătoare | Un singur sistem, ales la definirea domeniului |
| Manoperă, ieșiri de componente din stoc și recepții | QAD, prin introducere directă sau preluare din pontajele SkyPlanner |
Alegeți un singur sistem care să scrie datele calendaristice ale comenzilor de producție. SkyPlanner nu necesită niciun modul QAD de programare a producției. Prin urmare, pentru comenzile pe care le programează, SkyPlanner preia scrierea datelor calendaristice de la instrumentele de programare existente sau de la alte sisteme de programare.
Etapele obișnuite ale proiectului
În mod normal, implementarea se finalizează în câteva săptămâni de la începerea configurării inițiale. Înainte de aceasta, validați programul de producție în perioada de probă gratuită de 30 de zile, folosind centre de lucru, fluxuri tehnologice și comenzi de producție deschise, exportate din QAD în format CSV sau Excel.
- Mapare. Stabiliți tabelul de corespondență, regulile privind responsabilitatea pentru date, locațiile și domeniile incluse în proiect, frecvențele de sincronizare și dacă manopera va fi trimisă înapoi în QAD.
- Acces QAD. Creați utilizatorul de integrare, verificați licențierea QXtend și configurați receptorul QXtend și abonatul QXO. Efectuați mai întâi verificările într-un domeniu de test.
- Configurare QDoc. Folosiți QDocs disponibile acolo unde există și generați cu QGen documentele QDoc pentru Work Order Maintenance, Labor Feedback by Work Order și Work Order Receipt, acolo unde este necesar.
- Încărcare inițială. Articole, structuri de produs, fluxuri tehnologice, centre de lucru, calendare.
- Sincronizarea comenzilor de producție și de achiziție. Evenimente QXO sau interogare periodică prin REST, cu filtre, paginare și reîncercări.
- Configurarea constrângerilor în SkyPlanner. Matricea timpilor de pregătire, scule, numărul de operatori pentru fiecare operație și utilaje sau personal alternativ.
- Scrierea programului înapoi în QAD și testarea în paralel. Transmiteți datele calendaristice ca răspuns la webhook-urile SkyPlanner, rulați programarea în paralel cu planul curent, comparați datele și corectați nomenclatoarele.
- Punere în funcțiune. Activați scrierea înapoi în QAD după ce datele corespund.
Ce trebuie să aveți în vedere la integrarea cu QAD Adaptive ERP
- Rulările repetate ale CRP. CRP reprogramează toate operațiile deschise ale comenzilor de producție selectate. QAD păstrează datele introduse manual numai când „you also adjusted the work order release and due date to match,” (ați ajustat și datele de lansare și de finalizare ale comenzii de producție astfel încât să corespundă), ceea ce face și SkyPlanner la scrierea datelor. Rulați CRP după scrierea datelor înapoi în QAD sau excludeți comenzile programate de SkyPlanner.
- Fluxurile tehnologice lansate nu mai pot fi modificate. „Once the work order status is Exploded, Allocated, or Released, no more changes can be made to the routing.” (După ce comanda de producție ajunge în starea Exploded, Allocated sau Released, fluxul tehnologic nu mai poate fi modificat.) Citiți fluxul tehnologic la lansare și modificați-l numai pentru comenzile planificate sau planificate ferm.
- Unitățile de timp din fluxul tehnologic. Timpii de pregătire și de execuție reprezintă încărcare, în timp ce „queue, wait, and move times are excluded from load calculations.” (timpii de stat la coadă, de așteptare și de transport sunt excluși din calculele de încărcare). Modelați acești timpi în SkyPlanner ca etape care au doar durată și verificați dacă timpul de execuție este definit pe unitate sau pe comandă.
- Capacitatea de procesare QXtend. QAD avertizează că „UI API adapter performance may be unacceptable when processing high volumes of data or real-time transactions.” (performanța adaptorului UI API poate fi inacceptabilă la procesarea unor volume mari de date sau a tranzacțiilor în timp real). Trimiteți în loturi doar comenzile modificate și folosiți QDocs native acolo unde există.
- Domenii și unități de producție. Instalările QAD cu mai multe domenii păstrează centrele de lucru și comenzile de producție separat, pe domeniu și unitate de producție. Asociați fiecare unitate inclusă în proiect cu propriul grup de centre de lucru.
- Producție repetitivă și discretă în aceeași fabrică. Liniile Advanced Repetitive folosesc programe de producție repetitivă, nu comenzi de producție. Stabiliți în etapa de definire a domeniului ce linii va programa SkyPlanner.
Cine configurează integrarea cu QAD și asigură asistența
- Echipa SkyPlanner configurează integrarea în etapa de implementare și asigură asistența după punerea în funcțiune, pentru QDocs, abonamentele QXO și interogările REST convenite. Fiecare fabrică folosește QAD în felul său, iar aceste particularități sunt luate în calcul aici.
- Partenerul dumneavoastră QAD poate participa. Acesta vă cunoaște domeniile, personalizările și condițiile de licențiere și poate configura QXtend, QGen QDocs și utilizatorul de integrare împreună cu echipa SkyPlanner.
- Dezvoltatorii dumneavoastră pot extinde integrarea folosind interfața REST API a SkyPlanner cu un token API. Un token API este suficient pentru a începe, iar echipa SkyPlanner oferă asistență la nevoie. Consultați documentația de integrare SkyPlanner.
SkyPlanner pornește de la 199 € pe lună, cu 5 centre de lucru incluse și facturare lunară. Oferta pentru integrare este stabilită de la început, în funcție de procesele și nevoile dumneavoastră, împreună cu abonamentul. Consultați prețurile, programarea cu capacitate finită pentru QAD Adaptive ERP, pagina QAD Adaptive ERP și secțiunea de integrări ERP.
Ce spun producătorii despre SkyPlanner
2 heconomisite în fiecare săptămână
„Cu SkyPlanner, am trecut de la planificarea producției în foi Excel la optimizarea producției în timp real.”
Kalle Kalliomäki, specialist în lanțul de aprovizionare
UTU · Tablouri electrice și aparataj de comutație
Planificarea producției economisește 2 ore de lucru în fiecare săptămână, iar o nouă listă de operații ajunge pe linie în câteva secunde.
+90%eficiență în producție
„Eficiența în producție a crescut cu 90%.”
Abdul Rucyinga, director IT
Laboratory & Allied · Producție farmaceutică
Eficiența în producție a crescut cu 90%, iar un plan optimizat pe trei luni, pentru toate centrele de lucru, se realizează în mai puțin de 30 de minute.
Peste 1.000de comenzi de producție programate automat
„Avem un cu totul alt control asupra producției, iar capacitatea de producție o înțelegem la un nivel complet diferit.”
Hannu Ryynänen, director general
Mamec · Mixere industriale, pompe și producție la comandă de înaltă tehnologie
Mii de comenzi de producție sunt programate automat, iar întreaga organizație are o imagine în timp real a producției.
99,2%respectarea termenelor de livrare
„SkyPlanner ne-a oferit vizibilitatea necesară pentru a identifica blocajele și a adus mai multă claritate în gestionarea producției.”
Toni Tuori, director de producție
Piristeel · Sisteme de siguranță pentru acoperișuri și sisteme pluviale
Rata de respectare a termenelor de livrare a ajuns la 99,2% anul acesta, iar programarea economisește până la patru ore de lucru pe zi.
Întrebări frecvente
QAD Adaptive ERP are un API pentru comenzile de producție?
Da. QXtend Inbound execută Work Order Maintenance și programele din atelier prin SOAP și QDocs XML, generate cu QGen acolo unde nu există un QDoc publicat. API-urile REST pentru documente de afaceri oferă în plus acces la interogări cu filtrare și paginare.
QAD acceptă webhook-uri?
Mecanismul QAD pentru transmiterea modificărilor de date este QXtend Outbound: declanșatoarele din tabele înregistrează modificările, iar QXO livrează QDocs la URL-ul unui serviciu web sau într-un director verificat periodic. Webhook-urile proprii SkyPlanner transmit modificările programului de producție pe măsură ce apar.
Cum sunt transferate înapoi în QAD datele din programul de producție?
Printr-un QDoc QXtend Inbound pentru Work Order Maintenance (16.1), care stabilește datele de lansare și de finalizare ale comenzii de producție pe baza programului SkyPlanner. QAD validează QDoc folosind aceleași reguli ca în interfață și returnează un QDoc de răspuns.
Cum ajung confirmările operatorilor în QAD?
Timpii de pregătire și de execuție se înregistrează prin Labor Feedback by Work Order (16.20.1), iar cantitățile finalizate prin Work Order Receipt (16.11), în ambele cazuri sub formă de QDocs QXtend Inbound. Decizia de a trimite aceste date înapoi se ia în etapa de definire a domeniului.
Un partener QAD ar trebui să propună QAD Advanced Scheduling sau SkyPlanner?
SkyPlanner, atunci când clientul lucrează cu comenzi de producție discretă și dorește un program funcțional cu capacitate finită în câteva săptămâni. QAD descrie Advanced Scheduling ca pe un program pentru fiecare linie din fiecare fabrică, prezentat alături de DSCP Production Planning și Redzone (QAD). SkyPlanner se conectează prin QXtend, programează fiecare utilaj, operator, unealtă și material, replanifică automat și permite un număr nelimitat de utilizatori, de la 199 € pe lună.
Putem testa SkyPlanner înainte de a realiza integrarea?
Da. Perioada de testare gratuită de 30 de zile permite utilizarea a până la 20 de centre de lucru, cu importuri CSV sau Excel din QAD, fără card bancar. Începeți testarea sau discutați cu echipa de vânzări pentru definirea domeniului integrării.