Bestellposition per Code erstellen

Ein einfach gehaltenes Beispiel wir man unter Verwendung der AX<Table>-Klasse der Tabelle PurchLine eine Bestellposition per Code erstellen kann.

static void createPurchLine(Args _args)
{
    axPurchLine axPurchLine;
    purchLine purchLine;
   
    axPurchLine = AxPurchLine::newPurchLine(purchLine);
    axPurchLine.validateInput(true);
    axPurchLine.continueOnError(false);
   
    axpurchLine.parmPurchId("P00001");
    axpurchLine.parmItemId("1000");
    axPurchLine.parmPurchQty(10);
    axPurchLine.parmPurchPrice(24.50);
    axPurchLine.save();
}
Dieser Beitrag bezieht sich auf die Versionen:
Dynamics AX 2012, Dynamics AX 2009

Bruno 03.06.2015 14:14 | #1

Hallo,
vielen Dank für den nützlichen Beitrag. Warum verwenden wir hier kein axPurchLine.doInsert()?

Heinz Schweda 06.06.2015 10:23 | #2

Ich nehme an, es ist bei der Frage die doSave() gemeint, eine doInsert() kenne ich nur von der Tabelle, nicht aber der AxBC-Klasse.
Die doSave() wird von der save() sowieso aufgerufen. Unterschied der beiden dürfte nur sein, daß evtl. Policies nicht berücksichtigt werden, wenn man die doSave() direkt aufruft.
Aber prinzipiell mag ich diese doSomeThing()-Methoden nicht so gerne, weil dadurch die eigentlich Methode explizit nicht aufgerufen wird. Und ich als Entwickler möchte davon ausgehen, daß wenn ich in der insert/update/delete Logik einbaue, die jedesmal ausgeführt wird.

Bruno 21.06.2015 19:57 | #3

Hallo Heinz,
vielen Dank. Ich dachte mit der Klasse erstellen wir einen neuen Datensatz - daher war die Frage mit dem (do)Insert().

 
 

 

 
 
 
Beiträge des aktuellen Monats
November 2024
MoDiMiDoFrSaSo
 123
45678910
11121314151617
18192021222324
252627282930 
 
© 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