AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX Blogs
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.09.2012, 17:11   #1  
Blog bot is offline
Blog bot
Участник
 
25,617 / 848 (80) +++++++
Регистрация: 28.10.2006
axaptacorner: How to Import CSV files and how make Log files in Ax 2012 through X++
Источник: http://axaptacorner.blogspot.com/201...-how-make.html
==============

Through following code we can import data in Data base and can make log file for details !!!!

static void CsvFileReadAndInsert(Args _args)
{
Dialog dialog = new Dialog();
DialogField dialogField;
AsciiIo importFile,logFile;
str filePath,fileNameOnly;
filetype type;
container record;
CustTable custTable;
CustAccount custAccount;
CustName custName;
CustGroupId custGroupId;
CustCurrencyCode custCurrencyCode;
DirPartyTable dirPartyTable;
int totalRecords, totalInserted,totalFail;
;
dialogField=dialog.addField(extendedTypeStr(FilenameOpen),"Select File","Select file to import");
dialog.caption("File Picker");
dialog.filenameLookupFilter(['csv','*.csv']);
if(!dialog.run())
return;
[filePath, fileNameOnly, type] = fileNameSplit(dialogField.value());
importFile = new AsciiIo(dialogField.value(), 'R');
if((!importFile) || (importFile.status() != IO_Status::Ok))
{
warning("Error in opening import file");
throw(Exception::Error);
}
importFile.inFieldDelimiter(",");
logFile = new AsciiIo(filePath + "\\Customer Import Log File.txt", 'a+');
if((!importFile) || (importFile.status() != IO_Status::Ok))
{
warning("Error in opening log file");
throw(Exception::Error);
}
logFile.write(strfmt("Log Details"));
logFile.write(strfmt("Import Date: %1 Import Time: %2",date2str(today(),123,2,-1,2,-1,4),time2str(timenow(),1,1)));
try
{
ttsbegin;
record = importFile.read();
while(importFile.status() == IO_Status::Ok)
{
record = importFile.read();
if(!record)
break;
totalRecords = totalRecords + 1;
custAccount = "";
custAccount = conpeek(record,1);
custName=conpeek(record,2);
custCurrencyCode=conpeek(record,2);

if(custAccount == "")
{
logFile.write("Account Num is blank");
totalFail = totalFail + 1;
continue;
}
select custTable
where custTable.AccountNum == custAccount;
if(custTable.RecId)
{
logFile.write((strfmt("Customer %1 already exists.",custAccount)));
custTable.clear();
custTable = null;
totalFail = totalFail + 1;
continue;
}
custTable.AccountNum = custAccount;
custTable.CustGroup=custGroupId;
custCurrencyCode=custCurrencyCode;
custTable.insert();



totalInserted = totalInserted + 1;
}
logFile.write((strfmt("Import Log:")));
logFile.write((strfmt("Total records: %1,added/imported in to the database: %2 and rejected / NOT imported into the database: %3",totalRecords,totalInserted,totalFail)));
ttscommit;
}
catch(Exception::Error)
{
Throw(Exception::Error);
}
}

Happy Coding !!!!



Источник: http://axaptacorner.blogspot.com/201...-how-make.html
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: AX 2012 Retail: How to enable tracing in AX 2012 Retail Blog bot DAX Blogs 0 07.08.2012 15:11
Gareth Tucker: MyCRM add-ons for Microsoft CRM 2011 Blog bot Dynamics CRM: Blogs 0 06.07.2012 18:11
Gareth Tucker: Scribe Insight and Microsoft CRM 2011 Blog bot Dynamics CRM: Blogs 0 06.05.2012 02:18
emeadaxsupport: New Content for Microsoft Dynamics AX 2012 : October 2011 Blog bot DAX Blogs 0 27.10.2011 17:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 06:04.