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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.01.2019, 17:13   #1  
Blog bot is offline
Blog bot
Участник
 
25,459 / 846 (79) +++++++
Регистрация: 28.10.2006
axaptacorner: How to read excel and update record in AX2012 through X++ code
Источник: http://axaptacorner.blogspot.com/201...record-in.html
==============


static void POCUpdatePurchaseDetails_JS(Args _args)
{
SysExcelApplication application;
SysExcelWorkbooks workbooks;
SysExcelWorkbook workbook;
SysExcelWorksheets worksheets;
SysExcelWorksheet worksheet;
SysExcelCells cells;
COMVariantType type;
Dialog dialog = new Dialog("Excel upload utility");
dialogField dialogFilename;
int row;
int totalUpdatedRecord = 0;
FileName filename;
InventTable inventTable;
ItemId itemId;
ItemGroup itemGroup;
InventTableModule inventTableModule;


;
application = SysExcelApplication::construct();
workbooks = application.workbooks();
dialogFilename = dialog.addField(extendedTypeStr(FilenameOpen),"@SYS53125");


dialog.filenameLookupTitle("Update data from excel file");
dialog.filenameLookupFilter(["@SYS28576",'*XLSX', "@SYS28576",'*XLS']);
if (!dialog.run())
return;
filename = dialogFilename.value();
try
{
workbooks.open(filename);
}
catch (Exception::Error)


{
throw error("File cannot be opened.");
}
workbook = workbooks.item(1);
worksheets = workbook.worksheets();
worksheet = worksheets.itemFromNum(1);
cells = worksheet.cells();
row=1;
do
{
row++;
itemId = cells.item(row, 1).value().bStr();


ttsbegin;


inventTable = InventTable::find(itemId,true);
inventTableModule=InventTableModule::find(inventTable.ItemId,ModuleInventPurchSales::Purch,true);
if (inventTable)
{
inventTableModule.Price=str2num(cells.item(row, 2).value().bStr());
inventTableModule.PriceUnit=str2num(cells.item(row, 3).value().bStr());
inventTableModule.update();
totalUpdatedRecord++;
}


ttscommit;
type = cells.item(row+1, 1).value().variantType();
}
while (type != COMVariantType::VT_EMPTY);
application.quit();


info(strFmt('Data updated, total record=%1 record',totalUpdatedRecord));


}





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

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 15 Blog bot Dynamics CRM: Blogs 1 10.02.2016 10:26
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 17 Blog bot Dynamics CRM: Blogs 0 10.05.2014 06:30
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 16 Blog bot Dynamics CRM: Blogs 0 23.01.2014 03:15
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 13 Blog bot Dynamics CRM: Blogs 0 27.03.2013 22:12
wiki.dynamicsbook: Changes Made in Navision Attain 3.60 Blog bot Dynamics CRM: Blogs 0 02.09.2008 13:23
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:45.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.