Hola, bueno para que este codigo funcione, es necesario tener una clase llamada ExcelImportADO, la cual MS Dynamics AX no la tiene :S, pero les dejo el link donde la puedan bajar:
http://www.axaptapedia.com/Image:ExcelImportADO.zip
----------------------------------------------------------------------------
Counter cnTotal = 0;
ItemId itemId;
ItemName itemName;
AmountCur price;
Filename strFilename;
container conSheets;
ExcelImportADO xlImport;
;
strFilename = @"c:\import.xls"; // nombre del archivo
xlImport = new ExcelImportADO(strFilename);
try
{
// abre la primera hoja por default
if(!xlImport.openFile())
throw error(strfmt("Error opening Excel file «%1»", strFilename));
if(xlImport.getFieldsCount() < 3)
throw error(strfmt("Too few columns in the recordset:" +
" found %1, expected at least %2",
xlImport.getFieldsCount(), 3));
while(!xlImport.eof())
{
itemId = xlImport.getFieldValue(1);
itemName = xlImport.getFieldValue('ItemName');
price = xlImport.getFieldValue('ItemPrice', false);
// process data...
cnTotal++;
xlImport.moveNext();
}
xlImport.finalize();
Box::info(strfmt("%1 registros leidos", cnTotal));
}
catch(Exception::Error)
{
xlImport.finalize();
}
---------------------------------------------------------------------------
Este codigo me pareció muy interesante porque me ayudo a leer un excel donde se guardaban varios registros contables y luego con las clases respectivas registrarlas y contabilizarlas.
Saludos.