Dynamics AX Blog - Dynamics AX 2012 - whs

RSS-Feed dieser Version
Ladung an Lagerort freigebenDas folgende Code-Snippet führt die Funktion "Für Lagerort freigeben" einer Ladung aus, allerdings ohne die Wellen/Arbeiten zu generieren. static void Job1(Args _args) { ttsBegin; WHSLoadPostEngine::post(whsLoadTable::find('USMF-000004', true)); ttsCommit; } |
Welle per Code verarbeitenMit Hilfe des folgenden Code, kann man eine Welle verarbeiten. Dies wird abhängig von den WHS-Parametern bei Aufruf der Funktion "Für Lagerort freigeben" ausgeführt. WHSPostEngine::post(WaveTable::find('USMF-000000003'));
|
Auftragspositionen zu bestehender Ladung hinzufügenIn diesem Beitrag möchte ich zeigen, wie man alle Positionen eines Auftrages bzw. auch nur einzelne Auftragspositionen per Code zu einer bestehenden Ladung hinzufügen kann. |
Mobile Device Portal: Einfache Prüfung eines FeldesUnlängst hatte ich erstmalig die Anforderung, im Mobile Device Portal (MDP) eine einfache Feldvalidierung einzubauen. Nachdem ich mich etwas mit den WHSWorkExecute-Klassen auseinander gesetzt habe, habe ich die Klassenmethode WHSRFControlData.processData() als gut geeignet für solcherart Prüfungen gefunden. case #Qty: qty = WHSWorkExecuteDisplay::str2numDisplay(data); if (qty <= 0) { errorMessage = "@WAX1172"; hasError = true; break; } //--> Start if (pass.exists(#ProdId) && pass.lookupStr(#ProdId) != "" && mode == WHSWorkExecuteMode::ReportAsFinished) { my_ProdTable = ProdTable::find(pass.lookup(#ProdId)); if (qty + my_ProdTable.reportedFinishedGood() + my_ProdTable.reportedFinishedError() > my_ProdTable.QtyStUp) { errorMessage = "@SYS16097"; hasError = true; break; } } //<-- End |
|
|
|
|
|
|
Das folgende Code-Schnipsel zeigt, wie man per Code Wellen und Arbeiten für eine oder mehrere Lieferungen erzeugen kann. Dies wird normalerweise auch aufgerufen, wenn man die Funktion "Für Lagerort freigeben" ausführt.