public AccountValut BaseValut() { if (db == null) { throw new ArgumentNullException("DB connection is null!"); } AccountValut val = new AccountValut(); try { string sql = String.Format("SELECT * FROM valut WHERE deleted IS NULL AND isbase = 1"); AtLog.AddMessage(sql); DataRow row = db.GetDataRow(sql); if (row == null) { return(null); } val.idvalut = (int)row["idvalut"]; val.name = (string)row["name"]; val.shortname = (string)row["shortname"]; val.ValutRate = 1d; } catch (Exception ex) { AtLog.AddMessage(ex.ToString()); } return(val); }
void AcceptBtnClick(object sender, EventArgs e) { if (importStrategies == null) { return; } try { foreach (DataRow row in importStrategies.PaymentTable().Rows) { if (row[PaymentImport.IDCUSTOMER_COLUMN] == DBNull.Value) { AtMessageBox.Show("У одного или более платежей не указан контрагент!"); return; } } string paymentGroupName = DateTime.Now.Date.ToString("yyyy-MM-dd"); int paymentGroupId = accountingDoc.ExistPaymentGroup(paymentGroupName); if (paymentGroupId == -1) { paymentGroupId = accountingDoc.AddPaymentGroup(paymentGroupName); } DataTable pTable = importStrategies.PaymentTable(); AccountValut valut = accountingDoc.BaseValut(); for (int count = pTable.Rows.Count - 1; count >= 0; count--) { Payment payment = importStrategies.GetPayment(paymentGroupId, valut, pTable.Rows[count]); if (!accountingDoc.SavePayment(payment)) { return; } pTable.Rows.Remove(pTable.Rows[count]); } AtMessageBox.Show("Импортирование платежей закончено!"); } catch (Exception exp) { AtLog.AddMessage(exp.Message + " " + exp.StackTrace); } }
public override Payment GetPayment(int idPaymentGroup, AccountValut valut, DataRow paymentRow) { Payment payment = new Payment(); payment.Name = (string)paymentRow[PAYMENT_NUMBER]; payment.DtCre = (DateTime)paymentRow[PAYMENT_DATE]; payment.DtDoc = (DateTime)paymentRow[PAYMENT_DATE]; payment.IdPeople = Settings.idpeople; payment.IdCustomer = (int)paymentRow[IDCUSTOMER_COLUMN]; payment.loginCre = Settings.people_fio; payment.SmDoc = (double)paymentRow[PAYMENT_SUM]; payment.AddStr = (string)paymentRow[PAYMENT_DESCRIPTION]; payment.Valut = valut; payment.SmBase = (double)paymentRow[PAYMENT_SUM]; payment.IdPaymentDocGroup = idPaymentGroup; payment.IdDocOper = Payment.DOCOPER_INCOMING_PAYMENT_ORDER; return(payment); }
public abstract Payment GetPayment(int idPaymentGroup, AccountValut valut, DataRow paymentRow);