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
 public override void Load(BinaryReader reader)
 {
     base.Load(reader);
     PresetValue = new ValueDate();
     PresetValue.Load(reader);
     VControl.SetValue(PresetValue);
 }
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
        protected override string GenerateBankFileDetail(GenericBankFileDetail bankFileDetail)
        {
            string[] bankFileDetailRecord = new string[10];

            bankFileDetailRecord[0] = " ";
            bankFileDetailRecord[1] = bankFileDetail.EmpNo.PadRight(12).Substring(0, 12);
            bankFileDetailRecord[2] = bankFileDetail.EmpBankAccountHolderName.PadRight(20).Substring(0, 20);
            bankFileDetailRecord[3] = bankFileDetail.BankCode.PadRight(3).Substring(0, 3);
            bankFileDetailRecord[4] = bankFileDetail.BranchCode.PadRight(3).Substring(0, 3);
            bankFileDetailRecord[5] = bankFileDetail.AccountNo.PadRight(9).Substring(0, 9);
            bankFileDetailRecord[6] = bankFileDetail.Amount.ToString("00000000.00").Replace(".", "");
            if (m_PlanCode == "F" || m_PlanCode == "G")
            {
                bankFileDetailRecord[7] = string.Empty.PadLeft(4, ' ');
            }
            else
            {
                bankFileDetailRecord[7] = ValueDate.ToString("ddMM");
            }

            bankFileDetailRecord[8] = bankFileDetail.EmpNo.PadRight(20).Substring(12, 6);
            bankFileDetailRecord[9] = string.Empty.PadLeft(12, ' ');

            string bankFileDetailData = String.Join(FIELD_DELIMITER, bankFileDetailRecord);

            if (bankFileDetailData.Length != 80)
            {
                throw (new Exception("Incorrect Detail Length of Payment for " + bankFileDetail.EmpBankAccountHolderName + ":" + bankFileDetailData.Length));
            }
            return(bankFileDetailData);
        }
        private void EnsureVanillaPrice()
        {
            if (VanillaPrice > 0)
            {
                return;
            }
            var prev = candles[0];

            if (candles.First().timeOpen > ValueDate)
            {
                LogMessage("Первая свеча ({0}) начинается позже даты валютирования {1}",
                           prev.timeOpen.ToStringUniform(), ValueDate.ToStringUniform());
                return;
            }
            foreach (var candle in candles)
            {
                if (candle.timeOpen > ValueDate)
                {
                    VanillaPrice = (decimal)candle.open;
                    return;
                }
                if (candle.timeClose > ValueDate)
                {
                    CalcVanillaPrice(candle.timeOpen, candle.timeClose, candle.open, candle.close);
                    return;
                }
            }
            LogMessage("Последняя свеча ({0}) заканчивается прежде даты валютирования {1}",
                       candles.Last().timeOpen.ToStringUniform(), ValueDate.ToStringUniform());
        }
Esempio n. 6
0
 public override int GetHashCode()
 {
     return(MovementDate.GetHashCode() +
            ValueDate.GetHashCode() +
            Amount.GetHashCode() +
            TotalBalanceAfterMovement.GetHashCode() +
            Description.GetHashCode());
 }
Esempio n. 7
0
        protected virtual string GenerateBankFileFooter()
        {
            string[] bankFileFooter = new string[3];
            bankFileFooter[0] = BankCode + BranchCode + AccountNo;
            bankFileFooter[1] = TotalAmount.ToString("0.00");
            bankFileFooter[2] = ValueDate.ToString("yyyyMMdd");

            return(string.Join(FIELD_DELIMITER, bankFileFooter));
        }
Esempio n. 8
0
        public Value ConvertToValue()
        {
            ValueDate date = new ValueDate();

            if (SelectedDate != null)
            {
                date.DTime = (DateTime)SelectedDate;
            }
            return(date);
        }
Esempio n. 9
0
        public override string SqlInsertString()
        {
            // Ensure file entry is there and grab the ID
            StringBuilder sql = new StringBuilder();

            sql.AppendFormat("declare @ID int\r\nEXEC @ID=InsertSwiftFile '{0}'", ContainingSwiftFileName.Replace(".working", ""));

            sql.AppendFormat("EXEC InsertMT300message @ID,'{0}','{1}','{2}','{3}','{4}','{5}','{6}'",
                             ApplicationID,
                             ServiceID,
                             LogicalTerminalAddress,
                             SessionNumber,
                             SequenceNumber,
                             Direction,
                             ReceiverAddress);

            sql.AppendFormat(",'{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}'",
                             Priority,
                             DeliveryMonitor,
                             ObsolescencePeriod,
                             InputDate,
                             InputTime,
                             MessageInputReference,
                             OutputDate,
                             OutputTime
                             );

            sql.AppendFormat(",'{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}'",
                             SenderReference,
                             TypeOfOperation,
                             CommonReference,
                             PartyA,
                             PartyB,
                             TradeDate.ToString("yyyyMMdd"),
                             ValueDate.ToString("yyyyMMdd"),
                             ExchangeRate
                             );

            sql.AppendFormat(",'{0}','{1}','{2}','{3}','{4}','{5}'",
                             BoughtCurrency,
                             BoughtAmount,
                             BoughtReceivingAgent,
                             SoldCurrency,
                             SoldAmount,
                             SoldReceivingAgent
                             );

            sql.AppendFormat("\r\ndeclare @recid int\r\nselect @recid = recid from tblrec where name='FX Confirmation'\r\nEXEC ScheduleRec @recid,'{0:ddMMMyy}'", ValueDate);

            return(sql.ToString());
        }
Esempio n. 10
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = DataPropertyName.GetHashCode();
         hashCode = (hashCode * 397) ^ Visible.GetHashCode();
         hashCode = (hashCode * 397) ^ Sort;
         hashCode = (hashCode * 397) ^ Width;
         hashCode = (hashCode * 397) ^ DisplayIndex;
         hashCode = (hashCode * 397) ^ (Operator.GetHashCode());
         hashCode = (hashCode * 397) ^ (ValueText.GetHashCode());
         hashCode = (hashCode * 397) ^ ValueDate.GetHashCode();
         hashCode = (hashCode * 397) ^ (ValueFilters != null ? ValueFilters.GetHashCode() : 0);
         return(hashCode);
     }
 }
Esempio n. 11
0
        protected override string GenerateBankFileHeader()
        {
            string[] bankFileHeader = new string[13];

            // Record Type 9(1)
            bankFileHeader[0] = "1";
            // Service Type X(10)
            bankFileHeader[1] = "IBGINORM  ";
            // Originating Bank Code 9(3)
            bankFileHeader[2] = BankCode.PadRight(3).Substring(0, 3);
            // Originating Branch Code 9(3)
            bankFileHeader[3] = BranchCode.PadRight(3).Substring(0, 3);
            // Originating Account No 9(11)
            bankFileHeader[4] = ((string)("0" + AccountNo)).PadRight(11).Substring(0, 11);
            // Originating A/C Name
            bankFileHeader[5] = AccountHolderName.PadRight(20).Substring(0, 20);
            // Creation Date 9(8)
            bankFileHeader[6] = AppUtils.ServerDateTime().ToString("yyyyMMdd");
            // Value Date 9(8)
            bankFileHeader[7] = ValueDate.ToString("yyyyMMdd");
            // Filler X(5)
            bankFileHeader[8] = "     ";
            // Hash Indicator X(1)
            bankFileHeader[9] = " ";
            // Payment Advice Header Line1 X(105)
            bankFileHeader[10] = "".PadRight(105);
            // Payment Advice Header Line2 X(105)
            bankFileHeader[11] = "".PadRight(105);
            // Filler X(320)
            bankFileHeader[12] = "".PadRight(320);


            string bankFileHeaderData = string.Join(FIELD_DELIMITER, bankFileHeader);

            if (bankFileHeaderData.Length != 600)
            {
                throw new Exception("Incorrect Bank File Header Length:\r\n" + bankFileHeaderData);
            }
            return(bankFileHeaderData);
        }
Esempio n. 12
0
        override public bool Accept(ValueDate v)
        {
            ValueDate r = Reference as ValueDate;

            return(r.ToString().Contains(v.ToString()));
        }
Esempio n. 13
0
 public RecordDescriptionDate()
 {
     VControl    = new InputControlDate();
     PresetValue = new ValueDate();
 }
Esempio n. 14
0
        override public bool Accept(ValueDate v)
        {
            ValueDate r = Reference as ValueDate;

            return(r.DTime < v.DTime);
        }
Esempio n. 15
0
        public void SetValue(Value value)
        {
            ValueDate d = value as ValueDate;

            this.SelectedDate = d.DTime;
        }
Esempio n. 16
0
        protected FileInfo GenerateSingleBankFile(string BankPaymentCode, List <GenericBankFileDetail> BankFileDetails)
        {
            int    RecordCount  = 0;
            double TotalAmount  = 0;
            string bankFileData = string.Empty;

            foreach (GenericBankFileDetail bankFileDetail in BankFileDetails)
            {
                bankFileData += GenerateBankFileDetail(bankFileDetail);
                TotalAmount  += bankFileDetail.Amount;
                RecordCount++;
            }


            string[] bankFileHeader = new string[13];

            bankFileHeader[0] = m_PlanCode.PadRight(1).Substring(0, 1);
            bankFileHeader[1] = m_BranchCode.PadRight(3).Substring(0, 3) + m_AccountNo.PadRight(9).Substring(0, 9);
            bankFileHeader[2] = BankPaymentCode.PadRight(3).Substring(0, 3);
            bankFileHeader[3] = m_FirstPartyReference.PadRight(12).Substring(0, 12);

            if (m_PlanCode == "F" || m_PlanCode == "G")
            {
                bankFileHeader[4] = ValueDate.ToString("ddMMyy");
            }
            else
            {
                bankFileHeader[4] = string.Empty.PadLeft(6, ' ');
            }
            //  Media: K - Diskette
            bankFileHeader[5] = "K";
            bankFileHeader[6] = string.Empty.PadLeft(8, '*');
            if (RecordCount >= 100000 || TotalAmount >= 99999999.99)
            {
                bankFileHeader[7]  = string.Empty.PadLeft(5, ' ');
                bankFileHeader[8]  = string.Empty.PadLeft(10, ' ');
                bankFileHeader[9]  = RecordCount.ToString("0000000");
                bankFileHeader[10] = TotalAmount.ToString("0000000000.00").Replace(".", "");
            }
            else
            {
                bankFileHeader[7]  = RecordCount.ToString("00000");
                bankFileHeader[8]  = TotalAmount.ToString("00000000.00").Replace(".", "");
                bankFileHeader[9]  = string.Empty.PadLeft(7, ' ');
                bankFileHeader[10] = string.Empty.PadLeft(12, ' ');
            }
            bankFileHeader[11] = "  ";
            bankFileHeader[12] = "1";

            string bankFileHeaderData = string.Join(FIELD_DELIMITER, bankFileHeader) + RECORD_DELIMITER;

            if (bankFileHeaderData.Length != 80)
            {
                throw (new Exception("Incorrect Header Length:" + bankFileHeaderData.Length));
            }


            FileInfo     result = GenerateTempFileName();
            StreamWriter writer = new StreamWriter(result.OpenWrite());

            writer.Write(bankFileHeaderData);
            writer.Write(bankFileData);
            writer.Close();

            //string filename = System.IO.Path.Combine(result.DirectoryName, "BankFile_" + AppUtils.ServerDateTime().ToString("yyyyMMddHHmmss") + "_" + BankPaymentCode + BankFileExtension());
            //int subIndex = 0;
            //while (File.Exists(filename))
            //{
            //    subIndex++;
            //    filename = System.IO.Path.Combine(result.DirectoryName, "BankFile_" + AppUtils.ServerDateTime().ToString("yyyyMMddHHmmss") + "_" + BankPaymentCode + "-" + subIndex + BankFileExtension());
            //}
            //result.MoveTo(filename);
            return(result);
        }
Esempio n. 17
0
 virtual public bool Accept(ValueDate v)
 {
     return(false);
 }