RSS

Etiket arşivi: InventItemSalesSetup

Varsayılan sipariş ayarları formunun boş gelmesi

Bugün bazı stok kartları için varsayılan satış tesisini tanımlama ihtiyacı doğdu. Her zamanki gibi Stok yönetimi –> Madde ayrıntıları –> Kurulum butonu –> Varsayılan sipariş ayarları formunu açmak istedim. Fakat her seferinde boş bir ekranla karşılaşıyordum…
1
2

Daha sonra araştırmalarım sonucu bu stok kartlarının veri aktarımı ile gelen stok kartları olduğunu tespit ettim ve stok kartı veri aktarımı sırasında boş değerlerle veri atılması gereken InventItemPurchSetup (Madde satınalma sipariş ayarları),InventItemInventSetup(Madde stoksipariş ayarları), InventItemSalesSetup (Madde satış sipariş ayarları) tablolarına kayıt atılmadığını gözlemledim. Bu 3 tablodan herhangi birinde dahi kayıt bulunamazsa form yukardaki gibi açılmaktadır.

Bu tablolara aşağıdaki job ile ilgili boş değerleri oluşturduktan sonra sorun çözüldü.

job farklı kurallara göre tekrar düzenlenebilir.

// Changed on 30 Kas 2010 at 13:37:43 by mesut
static void insertDefaultDimValues(Args _args)
{
    InventTable             inventTable;
    InventItemPurchSetup    inventItemPurchSetup;
    InventItemInventSetup   inventItemInventSetup;
    InventItemSalesSetup    inventItemSalesSetup;

    InventDimId             inventDimIdBlank = InventDim::inventDimIdBlank();
    ;
    ttsbegin;
    //Satınalma için
    while select inventTable
        where  inventTable.DimGroupId like "R*"
            notexists join inventItemPurchSetup
                where inventItemPurchSetup.ItemId      == inventTable.ItemId &&
                      inventItemPurchSetup.InventDimId == inventDimIdBlank

     {
        inventItemPurchSetup.initValue();

        inventItemPurchSetup.ItemId             = inventTable.ItemId;
        inventItemPurchSetup.InventDimId        = inventDimIdBlank;
        inventItemPurchSetup.InventDimIdDefault = inventDimIdBlank;

        inventItemPurchSetup.insert();
     }

     //Stok için
      while select inventTable
        where  inventTable.DimGroupId like "R*"
            notexists join inventItemInventSetup
               where inventItemInventSetup.ItemId      == inventTable.ItemId &&
                     inventItemInventSetup.InventDimId == inventDimIdBlank

     {
        inventItemInventSetup.initValue();

        inventItemInventSetup.ItemId             = inventTable.ItemId;
        inventItemInventSetup.InventDimId        = inventDimIdBlank;
        inventItemInventSetup.InventDimIdDefault = inventDimIdBlank;

        inventItemInventSetup.insert();
     }
     //Satış için
     while select inventTable
        where  inventTable.DimGroupId like "R*"
            notexists join inventItemSalesSetup
               where inventItemSalesSetup.ItemId      == inventTable.ItemId &&
                     inventItemSalesSetup.InventDimId == inventDimIdBlank

     {
        inventItemSalesSetup.initValue();

        inventItemSalesSetup.ItemId             = inventTable.ItemId;
        inventItemSalesSetup.InventDimId        = inventDimIdBlank;
        inventItemSalesSetup.InventDimIdDefault = inventDimIdBlank;

        inventItemSalesSetup.insert();
     }

    ttscommit;
}

NOT: Yazıda belirtilen kodun, değiştirilmeden veya değiştirilerek, development/test/canlı ortamlarında kullanılması sonucu oluşabilecek olumlu/olumsuz durumlarda tüm sorumluluk kodu kullanan kişiye aittir.

Mesut BOZTAŞ
Dynamics AX ERP Danışmanı ve
İstanbul Ticaret Üni. Y.Lisans öğrencisi

İstanbul

http://www.etg-it.com

 
Yorum yapın

Yazan: 30/11/2010 in 3S, Geliştirme

 

Etiketler: , , , ,