Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
            }
        }
Esempio n. 4
0
 public override string ActualBankFileName()
 {
     return(BranchCode.PadRight(3).Substring(0, 3) + AccountNo.PadRight(5).Substring(0, 5) + BankFileExtension());
 }
Esempio n. 5
0
        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);
        }