Import data from excel to form grid.

IMPORT EXCEL TO FORM GRID:- 

static void InsertRecords(Args _args)

{

    SysExcelApplication                       application;

    SysExcelWorkbooks                       workbooks;

    SysExcelWorkbook                         workbook;

    SysExcelWorksheets                       worksheets;

    SysExcelWorksheet                        worksheet;

    SysExcelCells                                 cells;

    COMVariantType                           type;

    Name                                              name;

    FileName                                       filename;

    int                                                   row = 1;

    int                                                   i = 0;

    str                                                   Account;

    str                                                   AccountType;

    str                                                   OffsetAccountType;

    LedgerJournalTrans                       ledgerJournalTrans;

    Dialog                                            dialog;

    DialogField                                   dialogField;

    LedgerJournalACType                 ledgerJournalACType;

    container                                      ledgerDimention, offsetDim , dimCon ,con ,offsetAccount;

    BankAccountTable                     bankAccountTable;

    RecId                                          ledgerDimensionId,ledgerDimension;


    application                =                 SysExcelApplication::construct();

    workbooks                =                application.workbooks();

    dialog                        =                new Dialog("FileOpen");

    dialogfield                 =               dialog.addField(extendedTypeStr(Filenameopen), "File Name");

    dialog.run();



    if (dialog.run())

    {

       filename = (dialogfield.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();



    do

    {

ttsBegin;

        row++;


          ledgerJournalTrans.clear();

          ledgerJournalTrans.JournalNum                  =   "00472";

          ledgerJournalTrans.TransDate                     =   cells.item(row, 1).value().date();

          ledgerJournalTrans.Voucher                           =   cells.item(row, 2).value().bStr();

          ledgerJournalTrans.AccountType                   =   str2enum(ledgerJournalACType,cells.item(row,3).value().bStr());

          ledgerJournalTrans.LedgerDimension            = DimensionStorage::getDynamicAccount(cells.item(row,4).value().bStr(),LedgerJournalACType::Cust);

          ledgerJournalTrans.OffsetAccountType          =   ledgerJournalACType::Vend;

          ledgerJournalTrans.Txt                                    =   cells.item(row, 5).value().bStr();

          ledgerJournalTrans.AmountCurDebit             =   cells.item(row, 6).value().double();

          ledgerJournalTrans.AmountCurCredit            =   cells.item(row, 7).value().double();

          ledgerJournalTrans.OffsetLedgerDimension   = DimensionStorage::getDynamicAccount(cells.item(row,9).value().bStr(),LedgerJournalACType::Vend);

          ledgerJournalTrans.CurrencyCode                  =   "USD--EUD";

          ledgerJournalTrans.insert();


ttsCommit;


         i++;

         type = cells.item(row+1, 1).value().variantType();

   }


     while (type != COMVariantType::VT_EMPTY);

     application.quit();

     info("Done");

     info(strFmt("%1 records Uploaded sucessfully", i));

}

Comments