26 Ekim 2017 Perşembe

Range verme | Daynamics Ax

Farklı tiplere range verme örneklerini aşağıdaki koddan görebilirsiniz.
Formun datasource'una ekliyorsunuz.

 this.query().dataSourceTable(tablenum(PurchLineTotals)).addSortField(fieldnum(PurchLineTotals, PurchId), SortOrder::Descending); // Büyükten küçüğe sıralama yapar.
    this.query().dataSourceTable(tablenum(PurchLineTotals)).addRange(fieldnum(PurchLineTotals, Dimension3)).value("IHR*"); // IHR ile başlayan kayıtları getirir.

this.query().dataSourceTable(tablenum(ExImpExpense_View)).addRange(fieldnum(ExImpExpense_View, MarkupCode)).value(queryvalue("D-Navlun"));  // MarkupCode'u D-Navlun olanları getir
this.query().dataSourceTable(tablenum(ETGChequeHistoryByDates)).addRange(fieldnum(ETGChequeHistoryByDates, LastTransACType)).value(enum2str(LedgerJournalACType::Cust));// Enum tipi için range

25 Ekim 2017 Çarşamba

Formdaki alanın genişliği

Ax'ta aşağıdaki gibi formun içinde bir alandaki veri hücreye sığmıyorsa;


Formda sağ tık > kurulum'dan Genişlik(lkarakter olarak) alanını kendinize göre ayarlayabilirsiniz.





Faturalanan Satış Siparişinde Değişiklik İstenirse Bakılacak Tablolar

Dynamics Ax'ta faturalanan sipariş ekstrem durumlarda değiştirilmesi istenir.
Genellikle sıkıntılı durumlardır. Böyle bir talep gelirse güncellenecek tablolar:
  1. CustInvoiceJour
  2. CustInvoiceTrans
  3. CustTrans
  4. LedgerTrans
  5. TaxTrans

Satınalma için;

Faturalanan Satınalma Siparişinde Değişiklik İstenirse Bakılacak Tablolar

Dynamics Ax'ta faturalanan sipariş ekstrem durumlarda değiştirilmesi istenir.
Genellikle sıkıntılı durumlardır. Böyle bir talep gelirse güncellenecek tablolar:
  1. VendInvoiceJour
  2. VendInvoiceTrans
  3. VendTrans
  4. LedgerTrans
  5. TaxTrans
Satış siparişi için;

23 Ekim 2017 Pazartesi

Farklı tabloyla ilişki kurma



if(inventTable::find(CustPackingSlipTrans.ItemId).WayControl == NoYes::Yes)
  {
    info("Var");
  }

19 Ekim 2017 Perşembe

Dynamics Ax iş akışındaki saat sorunu

İş akışındaki saat sorunu 
Ax'ta iş akışlarında saat sistemin saatiyle uyuşmuyorsa, güncellemeniz gereken alanlardan birisi,
İş akışı konfigürasyonlarında bulunan saat dilimi olacaktır. Burayı GMT+03:00 şeklinde güncellerseniz problem kalkacaktır.






Kullanıcıların saat dilimlerini toplu şekilde güncellemek için;

10 Ekim 2017 Salı

Ax'ta Tablodaki verileri diğer tabloya ekleme

Örneğin; DRT_SuggestionTable tablosunda istediğiniz alanların verilerini DRT_FarmerSuggestionTable tablosuna aktarmak istediğinizde aşağıdaki kod işinize yarayacaktır.
static void MAA_FarmerSuggestionTable(Args _args)
{
    DRT_FarmerSuggestionTable  FarmerSuggestionTable;
    DRT_SuggestionTable             SuggestionTable;

    ttsBegin;

      while select forUpdate SuggestionTable

        if(SuggestionTable.RecId)
            {
               FarmerSuggestionTable.FarmerID      =   SuggestionTable.FarmerID;
               FarmerSuggestionTable.VisitId           =   SuggestionTable.VisitId;
               FarmerSuggestionTable.Quantity         =   SuggestionTable.Quantity;
               FarmerSuggestionTable.CustAccount  =   SuggestionTable.CustAccount;
               FarmerSuggestionTable.CustName      =   SuggestionTable.CustName;
               FarmerSuggestionTable.ItemId             =   SuggestionTable.ItemId;
               FarmerSuggestionTable.insert();
            }

    info("bitti");

    ttsCommit;
}

5 Ekim 2017 Perşembe

Formun çalışması

Formun direk açılmasını önlemek için aşağıdaki methodu kullanabilirsiniz.
Formun methodunda initini ezerek çalıştırabilirsiniz.

public void init()
{
    if (!element.args().caller())
    {
        throw error("@SYS22996");
    }
    super();

    if (element.args() && element.args().record())
    {
        DRT_LegalEntity = element.args().record();
    }
}

Total ciro

static void MAA_SalesTableTotal(Args _args) { SalesTable SalesTable; utcDateTime dateTime; dateTime ...