https://shekhardiptiman.wordpress.com/2010/01/14/dynamics-ax-2009-%E2%80%93-import-customer-mastervendor-master-and-their-primary-addresses/
Wednesday, 19 October 2016
Friday, 30 September 2016
passing parameters between forms in AX
https://calebmsdax.wordpress.com/2013/02/22/passing-parameters-between-forms-in-ax/
Tuesday, 27 September 2016
Copy user groups from one user to another X++ in ax
//Copy user groups from one user to another X++
static void KR_AXEcopyUserGroup(Args _args)
{
usergrouplist usergrouplist,ins;
userid src,dest;
dialogfield srcdf,destdf;
dialog dialog;
;
dialog = new dialog("copying user's user groups");
srcdf = dialog.addField(typeid(userid),"Source");
destdf = dialog.addField(typeid(userid),"Destination");
if(dialog.run())
{
src = srcdf.value();
dest = destdf.value();
if(src!="" && dest !="")
{
ttsbegin;
while select * from usergrouplist
where usergrouplist.userId == dest
{
info(strfmt("Before update: '%1'-'%2'",usergrouplist.userid,usergrouplist.groupId));
}
info("Deleting user groups from destination user");
delete_from usergrouplist
where usergrouplist.userId == dest;
info("Copying user groups to destination user");
while select * from usergrouplist
where usergrouplist.userId == src
{
info(strfmt("source user: '%1'-'%2'",usergrouplist.userid,usergrouplist.groupId));
ins.clear();
ins.data(usergrouplist);
ins.UserId = dest;
ins.insert();
}
ttscommit;
info("User groups has been copied!");
}
}
else
{
info("Canceled by user");
}
}
Sunday, 11 September 2016
Thursday, 18 August 2016
Import Excel Data into Dynamics AX 2009
https://vasanthax.wordpress.com/2010/08/19/import-excel-data-into-dynamics-ax-2009/
Success One:: Class:
Class Declaraion:
public class KR_CustPaymentImport extends objectRun
{
}
//////////////////////////////////////////////////////////////////////////
2: Run:
void run()
{
LedgerJournalTable ledgerJournaltable;
LedgerjournalTrans ledgerjournalTrans;
LedgerJournalName ledgerJournalName;
NumberSeq numberSeq;
COMVariantType type,typeLoc;
LedgerJournalACType ledgerJournalACType;
Dialog dialog;
DialogField dialogField;
Filename filename;
// NumberSeq numSeq;
str jourName;
int lineNum;
COMVariant COMVariant1;
SysExcelApplication app;
SysExcelWorkbooks Workbooks;
SysExcelWorkbook Workbook;
SysExcelWorksheets Worksheets;
SysExcelWorksheet Worksheet;
SysExcelCells Cells;
SysExcelCell RCell;
int row;
int temp;
#Excel
str COMVariant2Str(COMVariant _cv,
int _decimals = 0,
int _characters = 0,
int _separator1 = 0,
int _separator2 = 0)
{
switch(_cv.variantType())
{
case (COMVariantType::VT_BSTR):
return _cv.bStr();
case (COMVariantType::VT_R4):
return num2str(_cv.float(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_R8):
return num2str(_cv.double(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_DECIMAL):
return num2str(_cv.decimal(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_DATE):
return date2str(_cv.date(),
123,
2,
1,
2,
1,
4);
case (COMVariantType::VT_EMPTY):
return "";
default:
throw error(strfmt("@SYS26908",
_cv.variantType()));
}
return "";
}
;
dialog = new Dialog("Import Customer Payment Journal.");
dialogfield = dialog.addField(typeid(Filenameopen), "Select File");
dialog.run();
if (dialog.run())
{
filename = (dialogfield.value());
}
app = SysExcelApplication::construct();
app.visible(false);
Workbooks = app.Workbooks();
Workbooks.open(filename,0);
Workbook = Workbooks.item(1);
Worksheets = Workbook.worksheets();
Worksheet = Worksheets.itemFromNum(1);
Cells = Worksheet.Cells();
row = 2;
RCell = Cells.Item(row, 1);
select firstonly ledgerjournalName where ledgerJournalName.JournalName == 'ARPay';
ledgerJournalTable.JournalName = LedgerJournalName.JournalName;
ledgerJournalTable.initFromLedgerJournalName();
ledgerJournalTable.insert();
numberSeq = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
// numberSeq = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
ttsbegin;
// while(RCell.Value().double() > 0)
do
{
ledgerJournalTrans.clear();
ledgerJournalTrans.voucher = numberSeq.voucher();
ledgerJournalTrans.LineNum = lineNum;
ledgerJournalTrans.AccountType = LedgerJournalACType::Cust;
//ledgerjournalTable.JournalNum =(Cells.Item(row, 1).value().bStr());
ledgerJournalTrans.JournalNum = ledgerJournalTable.JournalNum;
ledgerJournalTrans.initValue();
ledgerjournalTrans.Company= curext();
ledgerjournalTrans.TransDate =(Cells.Item(row, 1).value().date()); //any2date(Cells.Item(row, 1).value());//
ledgerJournalTrans.AccountNum =COMVariant2Str(Cells.Item(row, 2).value());
ledgerjournalTrans.MarkedInvoice = Cells.Item(row, 3).value().bStr();
ledgerjournalTrans.Txt =Cells.Item(row, 4).value().bStr();
ledgerjournalTrans.AmountCurDebit = (Cells.Item(row, 5).value().double());
ledgerjournalTrans.AmountCurCredit =(Cells.Item(row, 6).value().double());
ledgerJournalTrans.OffsetAccountType = str2enum(LedgerJournalACType,cells.item(row, 7).value().bStr());//cells.item(row, 7).value().variantType(); //LedgerJournalACType::Bank;// LedgerJournalACType::Bank;
ledgerJournalTrans.OffsetAccount =Cells.Item(row, 8).value().bStr();//'PNCUS'; //ledgerJournalTrans.findOffsetAccount();
ledgerJournalTrans.PaymMode =Cells.Item(row, 9).value().bStr();
ledgerjournalTrans.CurrencyCode =Cells.Item(row, 10).value().bStr();
ledgerjournalTrans.PaymReference=Cells.Item(row, 11).value().bStr();
ledgerjournalTrans.krDeductionType=Cells.Item(row, 12).value().bStr();
ledgerjournalTrans.Dimension[4]=Cells.Item(row, 2).value().bStr();
ledgerjournalTrans.insert();
// RCell = Cells.Item(row, 1);
type = cells.item(row+1, 1).value().variantType();
row++;
}
while (type != COMVariantType::VT_EMPTY);
ttscommit;
info("Customer payment lines imported Successfuly");
info(strfmt("journal Number %1" , ledgerJournalTable.JournalNum));
app.quit();
}
///
Static LedgerJournalTable createLedgerJournalTable(LedgerJournalNameID _ledgerJournalNameID)
{
LedgerJournalName ledgerJournalName;
LedgerJournalTable ledgerJournaltable;
NumberSeq numberSeqLoc;
;
/*elect firstonly ledgerjournalName where ledgerJournalName.JournalName == 'ARPay';
ledgerJournalTable.JournalName = LedgerJournalName.JournalName;
ledgerJournalTable.initFromLedgerJournalName();
ledgerJournalTable.insert();*/
// numberSeqLoc = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
return ledgerJournaltable;
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static void Main(Args _args)
{
KR_CustPaymentImport krCustPaymentImport;
krCustPaymentImport = new KR_CustPaymentImport();
krCustPaymentImport.run();
}
Success One:: Class:
Class Declaraion:
public class KR_CustPaymentImport extends objectRun
{
}
//////////////////////////////////////////////////////////////////////////
2: Run:
void run()
{
LedgerJournalTable ledgerJournaltable;
LedgerjournalTrans ledgerjournalTrans;
LedgerJournalName ledgerJournalName;
NumberSeq numberSeq;
COMVariantType type,typeLoc;
LedgerJournalACType ledgerJournalACType;
Dialog dialog;
DialogField dialogField;
Filename filename;
// NumberSeq numSeq;
str jourName;
int lineNum;
COMVariant COMVariant1;
SysExcelApplication app;
SysExcelWorkbooks Workbooks;
SysExcelWorkbook Workbook;
SysExcelWorksheets Worksheets;
SysExcelWorksheet Worksheet;
SysExcelCells Cells;
SysExcelCell RCell;
int row;
int temp;
#Excel
str COMVariant2Str(COMVariant _cv,
int _decimals = 0,
int _characters = 0,
int _separator1 = 0,
int _separator2 = 0)
{
switch(_cv.variantType())
{
case (COMVariantType::VT_BSTR):
return _cv.bStr();
case (COMVariantType::VT_R4):
return num2str(_cv.float(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_R8):
return num2str(_cv.double(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_DECIMAL):
return num2str(_cv.decimal(),
_characters,
_decimals,
_separator1,
_separator2);
case (COMVariantType::VT_DATE):
return date2str(_cv.date(),
123,
2,
1,
2,
1,
4);
case (COMVariantType::VT_EMPTY):
return "";
default:
throw error(strfmt("@SYS26908",
_cv.variantType()));
}
return "";
}
;
dialog = new Dialog("Import Customer Payment Journal.");
dialogfield = dialog.addField(typeid(Filenameopen), "Select File");
dialog.run();
if (dialog.run())
{
filename = (dialogfield.value());
}
app = SysExcelApplication::construct();
app.visible(false);
Workbooks = app.Workbooks();
Workbooks.open(filename,0);
Workbook = Workbooks.item(1);
Worksheets = Workbook.worksheets();
Worksheet = Worksheets.itemFromNum(1);
Cells = Worksheet.Cells();
row = 2;
RCell = Cells.Item(row, 1);
select firstonly ledgerjournalName where ledgerJournalName.JournalName == 'ARPay';
ledgerJournalTable.JournalName = LedgerJournalName.JournalName;
ledgerJournalTable.initFromLedgerJournalName();
ledgerJournalTable.insert();
numberSeq = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
// numberSeq = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
ttsbegin;
// while(RCell.Value().double() > 0)
do
{
ledgerJournalTrans.clear();
ledgerJournalTrans.voucher = numberSeq.voucher();
ledgerJournalTrans.LineNum = lineNum;
ledgerJournalTrans.AccountType = LedgerJournalACType::Cust;
//ledgerjournalTable.JournalNum =(Cells.Item(row, 1).value().bStr());
ledgerJournalTrans.JournalNum = ledgerJournalTable.JournalNum;
ledgerJournalTrans.initValue();
ledgerjournalTrans.Company= curext();
ledgerjournalTrans.TransDate =(Cells.Item(row, 1).value().date()); //any2date(Cells.Item(row, 1).value());//
ledgerJournalTrans.AccountNum =COMVariant2Str(Cells.Item(row, 2).value());
ledgerjournalTrans.MarkedInvoice = Cells.Item(row, 3).value().bStr();
ledgerjournalTrans.Txt =Cells.Item(row, 4).value().bStr();
ledgerjournalTrans.AmountCurDebit = (Cells.Item(row, 5).value().double());
ledgerjournalTrans.AmountCurCredit =(Cells.Item(row, 6).value().double());
ledgerJournalTrans.OffsetAccountType = str2enum(LedgerJournalACType,cells.item(row, 7).value().bStr());//cells.item(row, 7).value().variantType(); //LedgerJournalACType::Bank;// LedgerJournalACType::Bank;
ledgerJournalTrans.OffsetAccount =Cells.Item(row, 8).value().bStr();//'PNCUS'; //ledgerJournalTrans.findOffsetAccount();
ledgerJournalTrans.PaymMode =Cells.Item(row, 9).value().bStr();
ledgerjournalTrans.CurrencyCode =Cells.Item(row, 10).value().bStr();
ledgerjournalTrans.PaymReference=Cells.Item(row, 11).value().bStr();
ledgerjournalTrans.krDeductionType=Cells.Item(row, 12).value().bStr();
ledgerjournalTrans.Dimension[4]=Cells.Item(row, 2).value().bStr();
ledgerjournalTrans.insert();
// RCell = Cells.Item(row, 1);
type = cells.item(row+1, 1).value().variantType();
row++;
}
while (type != COMVariantType::VT_EMPTY);
ttscommit;
info("Customer payment lines imported Successfuly");
info(strfmt("journal Number %1" , ledgerJournalTable.JournalNum));
app.quit();
}
///
Static LedgerJournalTable createLedgerJournalTable(LedgerJournalNameID _ledgerJournalNameID)
{
LedgerJournalName ledgerJournalName;
LedgerJournalTable ledgerJournaltable;
NumberSeq numberSeqLoc;
;
/*elect firstonly ledgerjournalName where ledgerJournalName.JournalName == 'ARPay';
ledgerJournalTable.JournalName = LedgerJournalName.JournalName;
ledgerJournalTable.initFromLedgerJournalName();
ledgerJournalTable.insert();*/
// numberSeqLoc = NumberSeq::newGetVoucherFromCode(ledgerJournalName.VoucherSeries);
return ledgerJournaltable;
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static void Main(Args _args)
{
KR_CustPaymentImport krCustPaymentImport;
krCustPaymentImport = new KR_CustPaymentImport();
krCustPaymentImport.run();
}
Wednesday, 3 August 2016
Tuesday, 26 July 2016
Form Data displaying Asending Or Descending through code
// Changed on 26 Jul 2016 at 05:09:16 by jredd
public void init()
{
super();
this.query().dataSourceNo(1).addSortField(fieldnum(Kr_eDoc_CheckRegister,kr_ChequeNumber),SortOrder::Descending);
// this.query().dataSourceNo(1).addSortField(fieldnum(TableName, Fieldname),SortOrder::Descending);
}
public void init()
{
super();
this.query().dataSourceNo(1).addSortField(fieldnum(Kr_eDoc_CheckRegister,kr_ChequeNumber),SortOrder::Descending);
// this.query().dataSourceNo(1).addSortField(fieldnum(TableName, Fieldname),SortOrder::Descending);
}
Subscribe to:
Posts (Atom)