Rabu, 07 Maret 2018

Warning information for over budget control when vendor invoice amount is entrered

This link will automaticaly bring you the tutorial how to put a warning in journal vendor invoice.if the amount over the budget control the warning infornation will appear.
https://dynamicsax-fico.com/2016/04/16/budget-control-for-fixed-assets-part-1-ax2012/
»»  READMORE...

Minggu, 04 Maret 2018

Field Sales Tax and SSRS report

 "I want to view information about tax in SSRS report like taxcode, taxamount, in the report there is such a tablix as a hidden when i set to visiable i only see a Label but no data. I found this in class SalesInvoiceDP/InsertIntoSalesInvoiceTmp"
So this question i found it at ms dynamics ax forum. I think it would be nice if i rewrite in my blog.
This question also completed/solved by simple way.
We can set the value by set up field Sales Tax . If none..so the view cannot showed us the value.
Accounts Receivable > Setup > Forms > Form setup
»»  READMORE...

Kamis, 01 Maret 2018

Some sources for import data from excel file

Maybe this information can help you to start import some data from excel.
We can use some clases as a guideline/sample(tools)
Class :
Tutorial_RunBaseBatch
Tutorial_Progress
SysExcelApplication
SysExcelWorkbooks
TutorialJournalCreateExample

»»  READMORE...

Senin, 26 Februari 2018

Create windows title di AX

Jika kita memiliki dua environment Axapta, misalkan LIVE dan TEST. Terkadang kita akan dibuat bingung yang mana yang TEST yang mana Yang LIVE.
Code berikut bisa membantu kita untuk mengatasi problem tersebut.
Kita akan menambahkan judul pada setiap windowsnya.
Cari Class Info
dan temukan method
»»  READMORE...

Rabu, 03 Juni 2015

Passing value from parents form to child form

Morning SpAXrtan
Ohayou
Gunaydin

this time i share a steps how to get value from Parent form,wraped it become parameter,send to child form.

> Create a Display menuItem of child form
> Drag it to Parents form to become a button.
> Override the method click of menuItem button  

// #! INCIDENT !#.LAST.04.06.15.Husna.Yu:
//Menangkap nilai yang disortir digrid(diform parent),dijadikan parameter lalu dilempar ke form child
void clicked()
{
    /*
    Args                        args;
    FormRun                     formrun;
    super();

    args = new Args(formStr(PTGITTransaction));
    args.record(PTGITInventtable);
    formrun = classFactory.formRunClass(args);
    formrun.init();
    */

    Args                        parameters = new Args();
    MenuFunction                addressFormatmenu;
    ;

    addressFormatmenu = new MenuFunction(menuitemDisplayStr(PTGITTransaction),MenuItemType::Display);
    parameters.caller(element);
    parameters.parm(Grid_PTGItemcode.text());
    addressFormatmenu.run(parameters);

}

> on the datasource of childs form, overide the init method

// #! INCIDENT !#.LAST.04.06.15.Husna.Yu:
public void init()
{
    FormRun         callerForm = element.args().caller();
    super();

    if(callerForm)
    {
        if(callerForm.name() == formStr(PTGITInventtable))
        {
            //info(element.args().parm()); //cek parameter yang dilempar
        this.query().dataSourceNo(1).addRange(fieldNum(vwPTGITJournaltrans, PTGItemcode)).value(element.args().parm()); //memfilter record datasource agar menampilkan data sesuai parameter (element.args().parm())
        }
    }

}

done.

http://microsoft.public.axapta.programming.narkive.com/ZnRRSzzp/set-form-data-source-filter-from-x
»»  READMORE...

Rabu, 17 Desember 2014

Refresh Datasource dari sebuah form

Jika kita membuat suatu Form terutama DropDialog yang diperuntukan untuk mengentry data, terkadang sukar sekali untuk merefresh form induknya supaya memperlihatkan hasil entry kita.
berikut adalah contoh untuk merefresh datasource induk.

Di form Childnya (DropDialog) ...
Buka node method
di method CloseOK()
tambahkan macro #Task

public void closeOk()
{
      #Task
      FormRun formRun;

      super();

      formrun = element.args().caller();

      if(formrun)
      {
             formrun.task(#taskF5);
       }
}

implementasinya bisa speerti ini :

public void closeOk()
{

      #Task
      FormRun formRun;

      RefRecId custRecId = element.args().record().RecId;
      RefRecId caseRecId;
  
      Inventtable            ITinventtable;

      ITinventtable.InventId = FieldInventId.valueStr();
      ITinventtable.Name     = FieldInventname.valueStr();

      ITinventtable.insert();
   
      formrun = element.args().caller();
      formrun.task(#taskF5);

     if(formHasMethod(element.args().caller(), identifierstr('setTouched')))
    {
        element.args().caller().setTouched();
       
    }

    super();

   element.savelastvalues();

}

private void saveLastValues()
{
    xSysLastValue::putValue([FieldInventId.valueStr()], curext(), curuserid(), UtilElementType::Form, form.name());
}
»»  READMORE...

Senin, 15 Desember 2014

Melempar value dari form ke form

Kali ini adalah script untuk melempar value dari Form A ke Form B.

Misalkan kita mempunyai form A dengan value 'husna'. Nilai 'husna' ini ingin kita transfer/lempar ke form B.

Pertama kita mempunyai 2 Form, A dan B
Buat juga menuitem displaynya untuk ke dua form tersebut.

Di form A, tarik menuitem display formB ke form A, jadikan sebagai button link ke form B.
Expand node menuitembutton B ke node method.
tambahkan method Clicked()
void clicked()
{
    Args                    args;
    FormRun                 formrun;
    super();

    args = new Args(formStr([formB]));
    args.record([datasource darimana value berasal]);
    formrun = classFactory.formRunClass(args);
    formrun.init();
   
}
contoh :
void clicked()
{
    Args                    args;
    FormRun                 formrun;
    super();

    args = new Args(formStr(FormB));
    args.record(EmplTable);
    formrun = classFactory.formRunClass(args);
    formrun.init();
    //formrun.run();
    //formrun.wait();
    //formrun.detach();
}
di Classdeclaration Form B
public class FormRun extends ObjectRun
{
    [table value yang akan ditangkap berasal]
    Contoh
    Empltable      empltable;
}
Tambahkan juga method init di form B
public void init()
{
     super();
    empltable = element.args().record();
}

selanjutnya..silahkan diolah ..
misalnya anda ingin menangkap value dari field employeeId.
tinggal ambil dari empltable.

empltable.EmployeeId
»»  READMORE...