9 Kasım 2017 Perşembe

Sayfanın Sığmaması

Çıktı almaya çalışırken aşağıdaki gibi bir çıktı sorunuyla karşılaşırsanız;


FitToPage(Sayfayı sığdır) alanını YES yaptığınızda düzelecektir.


2 Kasım 2017 Perşembe

Kullanıcı verilerini aktarma

SYSPERSONALIZATION sık kullanılanların saklandığı tablo
SYSLASTVALUE kullanıcının özelleştirmelerinin saklandığı tablo (ax rapor filtreleri vs.)

UPDATE [dbo].[SYSLASTVALUE]
   SET [USERID] = 'yeniuserid'    
 WHERE [USERID] = 'eskiuserid'
GO

UPDATE [dbo].[SYSPERSONALIZATION]
   SET [USERID] = 'yeniuserid'
 WHERE [USERID] = 'eskiuserid'
GO

Kaynak : https://daxapta.wordpress.com/2017/11/02/kullanici-verilerini-aktarma/
 

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();
    }
}

22 Ağustos 2017 Salı

Tarih metodları (Date methods)


static void date_Functions(Args _args)
{
    Transdate    d;
    ;

    d = today();

    info(strfmt("Date – %1",d));

    //Gets the month for the given date…
    info(strfmt("Month – %1",mthofYr(d)));

    //Gets the month name from the given date…
    info(strfmt("Month Name – %1",mthname(mthofYr(d))));

    //Gets the day for the given date…
    info(strfmt("Day – %1",dayOfMth(d)));

    //Gets the day name from the given date…
    info(strfmt("Day Name – %1",dayname(dayOfMth(d))));

    //Gets the year for the given date…
    info(strfmt("Year – %1",year(d)));

    //Gets the current weekday number from the date…
    info(strfmt("Weekday number – %1",dayOfwk(d)));

    //Gets the day of the year from the given date…
    info(strfmt("Day of year – %1",dayOfyr(d)));

    //Gets the week of the year from the given date…
    info(strfmt("Week of the year – %1",wkofyr(d)));

    //Gets the start of the month from the given date…
    info(strfmt("Start of the month – %1", DateStartMth(d)));

    //Gets the end of the month from the given date…
    info(strfmt("Enf of the month – %1", endMth(dateMthFwd(d, 0))));

    //Gets the previous month from the given date…
    info(strfmt("The previous month – %1",prevMth(d)));

    info(strfmt("The previous month – %1",maxDate()));

    info(strfmt("current system time %1", DateTimeUtil::utcNow()));

    info(strfmt("current system time %1", DateTimeUtil::applyTimeZoneOffset(DateTimeUtil::utcNow(), DateTimeUtil::getUserPreferredTimeZone())));
}

Total ciro

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