protected override string GenerateBankFileHeader() { string[] bankFileHeader = new string[11]; bankFileHeader[0] = "H"; bankFileHeader[1] = m_ClientCode.PadRight(10).Substring(0, 10); bankFileHeader[2] = m_MyProductCode.PadRight(10).Substring(0, 10); bankFileHeader[3] = string.Empty.PadRight(1); bankFileHeader[4] = m_PaymentProduct.PadRight(10); bankFileHeader[5] = AccountNo.PadRight(20).Substring(0, 20); bankFileHeader[6] = ValueDate.ToString("ddMMyyyy"); bankFileHeader[7] = "ACH".PadRight(20).Substring(0, 20); bankFileHeader[8] = string.Empty.PadLeft(40, ' '); bankFileHeader[9] = string.Empty.PadLeft(20, ' '); bankFileHeader[10] = string.Empty.PadLeft(2085, ' '); string bankFileHeaderData = string.Join(FIELD_DELIMITER, bankFileHeader); if (bankFileHeaderData.Length != 2225) { throw (new Exception("Incorrect Header Length:" + bankFileHeaderData.Length)); } return(bankFileHeaderData); }
protected override string GenerateBankFileDetail(GenericBankFileDetail bankFileDetail) { EBankList banklist = new EBankList(); banklist.BankCode = bankFileDetail.BankCode; if (EBankList.db.select(dbConn, banklist)) { BankName = banklist.BankName; } string[] bankFileDetailRecord = new string[45]; bankFileDetailRecord[0] = "TRN"; bankFileDetailRecord[1] = "PAYROL"; // PAYROL - Hong Kong Payroll ACH Payment (AUTOPAY) //bankFileDetailRecord[2] = "omit";.Substring(0, 3) bankFileDetailRecord[4] = "6055"; // 6055 - BOA Hong Kong, HK bankFileDetailRecord[5] = AccountNo.PadRight(31).Substring(0, 31).TrimEnd(); //bankFileDetailRecord[6] = "";//bankFileDetail.BranchCode;//.Substring(0, 9); bankFileDetailRecord[7] = "HKD"; bankFileDetailRecord[8] = "PAY"; // PAY - Payment bankFileDetailRecord[9] = "D"; // D - Payment Only //bankFileDetailRecord[10] = FIELD_POSTINGINDICATOR;//.Substring(0, 1); //bankFileDetailRecord[11] = "";//.Substring(0, 16); //bankFileDetailRecord[12] = FIELD_PRIORITYINDICATOR;//.Substring(0, 1); bankFileDetailRecord[13] = AppUtils.ServerDateTime().ToString("MMddHHmmss") + TransactionID.ToString("000000"); //bankFileDetailRecord[14] = "";//.Substring(0, 2); bankFileDetailRecord[15] = AccountHolderName.ToUpper().PadRight(35).Substring(0, 35).Trim(); //bankFileDetailRecord[16] = "";.Substring(0, 15); bankFileDetailRecord[17] = PostalAddress1.PadRight(35).Substring(0, 35).Trim(); bankFileDetailRecord[18] = PostalAddress2.PadRight(35).Substring(0, 35).Trim(); bankFileDetailRecord[19] = PostalCityName.PadRight(30).Substring(0, 30).Trim(); bankFileDetailRecord[22] = "HK"; bankFileDetailRecord[23] = bankFileDetail.EmpName.ToUpper().PadRight(70).Substring(0, 70).Trim(); //bankFileDetailRecord[25] = "ADDRESS LINE 1"+" " "; //bankFileDetailRecord[27] = "HONG KONG"; bankFileDetailRecord[30] = "HK"; bankFileDetailRecord[31] = bankFileDetail.ValueDate.ToString("yyyyMMdd"); bankFileDetailRecord[33] = "HKD"; bankFileDetailRecord[34] = bankFileDetail.Amount.ToString("0.00"); bankFileDetailRecord[37] = BankName.ToUpper().PadRight(33).Substring(0, 33).Trim(); bankFileDetailRecord[39] = bankFileDetail.BankCode.PadRight(3).Substring(0, 3) + bankFileDetail.BranchCode.PadRight(3).Substring(0, 3); bankFileDetailRecord[41] = bankFileDetail.AccountNo.PadRight(9).Substring(0, 9).Trim(); bankFileDetailRecord[43] = "HONG KONG"; bankFileDetailRecord[44] = "HK"; string bankFileDetailData = "\"" + String.Join(FIELD_DELIMITER, bankFileDetailRecord) + "\""; bankFileDetailData = bankFileDetailData.Replace("\"\"", string.Empty); //if (bankFileDetailData.Length > 715) // throw (new Exception("Incorrect Detail Length of Payment for " + bankFileDetail.EmpBankAccountHolderName + ":" + bankFileDetailData.Length)); return(bankFileDetailData); }
protected override string GenerateBankFileFooter() { string[] bankFileFooter = new string[7]; bankFileFooter[0] = "CI"; bankFileFooter[1] = BankCode.PadRight(3).Substring(0, 3) + BranchCode.PadRight(3).Substring(0, 3) + AccountNo.PadRight(8).Substring(0, 8); bankFileFooter[2] = this.AccountHolderName.ToUpper().PadRight(50).Substring(0, 50); if (FileType == FileTypeEnum.Autopay) { bankFileFooter[3] = "CR"; bankFileFooter[4] = ValueDate.ToString("yyyyMMdd"); bankFileFooter[5] = RecordCount.ToString("00000"); bankFileFooter[6] = TotalAmount.ToString("0.00").PadLeft(12); string bankFileFooterData = string.Join(FIELD_DELIMITER, bankFileFooter); if (bankFileFooterData.Length != 93) { throw (new Exception("Incorrect Detail Length of Payment for Footer")); } return(bankFileFooterData); } else { bankFileFooter[3] = ValueDate.ToString("yyyyMMdd"); bankFileFooter[4] = RecordCount.ToString("00000"); bankFileFooter[5] = TotalAmount.ToString("0.00").PadLeft(12); bankFileFooter[6] = string.Empty.PadLeft(7); string bankFileFooterData = string.Join(FIELD_DELIMITER, bankFileFooter); if (bankFileFooterData.Length != 98) { throw (new Exception("Incorrect Detail Length of Payment for Footer")); } return(bankFileFooterData); } }
public override string ActualBankFileName() { return(BranchCode.PadRight(3).Substring(0, 3) + AccountNo.PadRight(5).Substring(0, 5) + BankFileExtension()); }
protected override string GenerateBankFileHeader() { string[] bankFileHeader = new string[5]; bankFileHeader[0] = m_BatchID.PadRight(5).Substring(0, 5).Trim(); bankFileHeader[1] = ((int)m_TransactionType).ToString("00"); string companyAccountNo = BankCode.PadRight(3).Substring(0, 3) + "-" + BranchCode.PadRight(3).Substring(0, 3) + "-" + AccountNo.PadRight(9).Substring(0, 9).Trim(); bankFileHeader[2] = companyAccountNo; bankFileHeader[3] = AccountHolderName.PadRight(20).Substring(0, 20); bankFileHeader[4] = m_BatchName; string bankFileHeaderData = "\"" + string.Join(FIELD_DELIMITER, bankFileHeader) + "\""; //if (bankFileHeaderDetail.Length != 83) // throw new Exception("Incorrect Bank File Header Length:\r\n" + bankFileHeaderDetail); return(bankFileHeaderData); }