Dynamics AX Blog - whs

Momentan angezeigt werden nur Beiträge, bei denen das Schlagwort »whs« eingetragen wurde. Filter entfernen

Wellen für eine oder mehrere Lieferungen erstellen

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.

WHSWaveTable::buildWaveFromShipments(['USMF-000006','USMF-000007']);

 
 
 

Ladung an Lagerort freigeben

Das 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 verarbeiten

Mit 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ügen

In 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 Feldes

Unlä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.

Eine solche Prüfung könnte wie folgt aussehen:

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

 
 
 

 

 
 
 
Beiträge des aktuellen Monats
März 2024
MoDiMiDoFrSaSo
 123
45678910
11121314151617
18192021222324
25262728293031
 
© 2006-2024 Heinz Schweda | Impressum | Kontakt | English version | Mobile Version
Diese Webseite verwendet Cookies, um Benutzern einen besseren Service anzubieten. Wenn Sie weiterhin auf der Seite bleiben, stimmen Sie der Verwendung von Cookies zu.  Mehr dazu