Hi All,
I need help in processing my batch job class.
Here is the screenshot of error.
and here are the classes invloved
ATM_BATCH
run
public void run()
{
ATM_Interface generate = new ATM_Interface();
;
permission = new InteropPermission(Interopkind::ClrInterop);
permission.assert();
generate.run();
}
ATM_INTERFACE
run
public void run()
{
;
ATM_Interface::ImportFromATM();
}
ATM_INTERFACE
ImportfromATM
public static boolean ImportFromATM()
{
InterfaceFileDirectory iFileDirectory;
LedgerJournalTable ledgerJournalTable;
LedgerJournalTrans ledgerJournalTrans;
utcdatetime dateNow;
date nowDate;
TransDate transDate;
str strDate, strTransDate, description;
Amount amountDebit, amountCredit;
CommaIo csvFileHeader, csvFileLines;
Filename filenameH, filenameL;
container readCon1, readCon2;
NumberSequenceTable numberSequenceTable;
Voucher voucher;
LedgerJournalCheckPost ledgerJournalCheckPost;
Set permissionSet;
;
//initialize
amountDebit = 0;
amountCredit = 0;
//select directory path of the ATM output file
dateNow = System.DateTime::get_Now();
nowDate = datetimeutil::date(dateNow);
strDate = date2str(nowDate,321,2,0,2,0,4);
SELECT * FROM iFileDirectory
WHERE iFileDirectory.InterfaceCode == “ATM”;
filenameH = iFileDirectory.InterfaceFilePath + “\ATMH_” + strDate + “.txt”;
filenameL = iFileDirectory.InterfaceFilePath + “\ATML_” + strDate + “.txt”;
csvFileHeader = new CommaIo(filenameH, ‘rw’);
csvFileLines = new CommaIo(filenameL, ‘rw’);
readCon1 = csvFileHeader.read();
readCon2 = csvFileLines.read();
try
{
if (csvFileHeader && csvFileLines)
{
ttsbegin;
while(readCon1/csvFileHeader.status() == IO_Status::Ok/)
{
description = conPeek(readCon1,3);
ledgerJournalTable.clear();
ledgerJournalTable.initValue();
ledgerJournalTable.JournalNum = JournalTableData::newTable(ledgerJournalTable).nextJournalId();
ledgerJournalTable.journalType = LedgerJournalType::Daily;
ledgerJournalTable.JournalName = conPeek(readCon1,1);
ledgerJournalTable.Name = description;
ledgerJournalTable.initFromLedgerJournalName(ledgerJournalTable.JournalName);
ledgerJournalTable.insert();
readCon1 = csvFileHeader.read();
//numberSequenceTable = NumberSequenceTable::find(LedgerJournalName::find(ledgerJournalTable.JournalName).VoucherSeries);
//voucher = NumberSeq::newGetVoucherFromCode(numberSequenceTable.NumberSequence).voucher();
while(readCon2/csvFileLines.status() == IO_Status::Ok/)
{
//assigning transaction date
strTransDate = conPeek(readCon2,2);
transDate = str2date(strTransDate, 213);
//assigning debit and credit
amountDebit = conPeek(readCon2,6);
amountCredit = conPeek(readCon2,7);
ledgerJournalTrans.clear();
ledgerJournalTrans.initValue();
ledgerJournalTrans.voucher = conPeek(readCon2,1); //voucher;
ledgerJournalTrans.JournalNum = ledgerJournalTable.JournalNum;
ledgerJournalTrans.Txt = conPeek(readCon2,5);
ledgerJournalTrans.transDate = transDate;
ledgerJournalTrans.AccountType = LedgerJournalACType::Ledger;
ledgerJournalTrans.AccountNum = conPeek(readCon2,4);
ledgerJournalTrans.AmountCurDebit = amountDebit;
ledgerJournalTrans.AmountCurCredit = amountCredit;
ledgerJournalTrans.Company = strLRTrim(conPeek(readCon2,13));
ledgerJournalTrans.CurrencyCode = “PHP”;
ledgerJournalTrans.Dimension[1] = strLRTrim(conPeek(readCon2,9));
ledgerJournalTrans.Dimension[2] = strLRTrim(conPeek(readCon2,10));
ledgerJournalTrans.Dimension[3] = strLRTrim(conPeek(readCon2,11));
ledgerJournalTrans.insert();
readCon2 = csvFileLines.read();
}
ledgerJournalCheckPost = ledgerJournalCheckPost::newLedgerJournalTable(ledgerJournalTable,NoYes::Yes);
ledgerJournalCheckPost.run();
}
ttscommit;
}
}
catch(Exception::Error)
{
info(strFmt("%1",Exception::Error));
}
return true;
}
Thank you