Dynamics ax 2012′de kodla satınalma siparişi oluşturmak

Merhaba

Bu yazımda AIF servis sınıfları kullanarak bir satınalma siparişi oluşturacağım. Örneği inceleyelim.

static void FD_CreatePurchaseOrder(Args _args)
{
    PurchTable      purchTable;
    PurchLine       purchLine;

    AxPurchTable    axPurchTable;
    AxPurchLine     axPurchLine;
// Kullanacağımız sınıflar

    InventDim       inventDim;
    ;

    purchTable.initFromVendTable(VendTable::find("2002"));

    axPurchTable = AxPurchTable::newPurchTable(purchTable);
    axPurchTable.parmPurchaseType(PurchaseType::Purch);
    axPurchTable.parmDocumentStatus(DocumentStatus::PurchaseOrder);
    axPurchTable.parmPurchName("Deneme siparişi");
    axPurchTable.parmAccountingDate(08\06\2013);
    axPurchTable.parmDeliveryDate(08\06\2013);
    axPurchTable.parmItemBuyerGroupId("20");
    axPurchTable.parmPurchPoolId("02");
    axPurchTable.parmInventSiteId("2");
    axPurchTable.parmPurchStatus(PurchStatus::Backorder);
    axPurchTable.doSave();
// İstediğimiz bilgileri doldurup kaydediyoruz. PurchTable'ı kendisi oluşturuyor.

    purchTable = axPurchTable.purchTable();
    purchLine.initFromPurchTable(purchTable);

    inventDim.clear();
    inventDim.InventLocationId  = "11";
    inventDim.InventSiteId      = "1";

    inventDim = inventDim::findOrCreate(inventDim);   

    axPurchLine = AxPurchLine::newPurchLine(purchLine);
    axpurchLine.parmItemId("0004");
    axPurchLine.parmPurchQty(2);
    axPurchLine.parmPurchPrice(10);
    axPurchLine.parmInventDimId(inventDim.inventDimId);
    axPurchLine.doSave();
// PurchLine oluşturuluyor. 

    info(strfmt("%1 nolu sipariş oluşturuldu.",purchTable.PurchId ));

}

Birden çok PurchLine satırını bu yöntemle oluşturamadım. Nasıl yapıldığını bilen varsa bana da bilgi versin, memnun olurum. Biraz araştırdım, yapılıp yapılamadığına dair bir bilgi bulamadım ama gördüğüm bütün örnekler tek satır üzerine yapılmıştı. Tek satır yapabilmek çok kullanışlı değil mutlaka bir yolu olmalı, eğer bir yolu yoksa bu sınıflar eksik olmuş demektir.

Selamlar.

 
  • Trackback are closed
  • Comments (5)
    • Oğuzhan
    • Haziran 26th, 2013 11:49am

    Fatih bey merhaba yazılarınız okuyorum ax2012 içi aif ile inbound ve outbound mantığı anlatan bir makale veya xpo varmı internet üzerinde custom servis örneği var ama deploy kısmında sürekli hata çıkıyor.
    Teşekkürler,

    • Ahmet Varol
    • Eylül 13th, 2014 3:48pm

    Merhaba Fatih Hocam,

    Bugün şirketde Toplu satın alma yaparak stok oluşturmamız gerekiyordu. Internetde bu şekilde bir kod örneği ile denedim. Aldığım hatayı aradığımda sizin sayfanıza yöneldim. Bırakmış olduğunuz notdan dolayı cevap yazmak istedim.

    Bu kod örneğinde benimde karşılaştığım sorunu çözmek için ilk bakışda PurchTable dan Purchline i init ediyor olduğunu gördim ve Purchline in döngüde clear olmadığını gördüm.

    purchLine.initFromPurchTable(purchTable); in hemen üstüne purchline.clear; eklendiğinde kod çalışmaya devam ediyor. (Genel bir ax 2009 alışkanlığı diyelim. :) )

    Bilgi vermek istedim. İyi çalışmalar.

Comment are closed.