private static void Get_OffAccountsStatement(xing xd, int start_fs_id, int end_fs_id, ic.church_sub_unitC _unit, string _account_name) { string _str = string.Format("select source_name,source_type_id,source_id,fs_date,fs_id,off_id,receipt_total,transaction_id from off_main_tb where fs_id between {0} and {1} and source_type_id={2} and source_id={3} and receipt_status=1", start_fs_id, end_fs_id, em.off_source_typeS.church_sub_unit.ToInt16(), _unit.sb_unit_id); ic.account_AL_statementC _obj = null; List <ic.account_AL_statementC> _temp_list = new List <ic.account_AL_statementC>(); using (var _dr = xd.SelectCommand(_str)) { while (_dr.Read()) { _obj = new ic.account_AL_statementC(); _obj.dr_amount = 0; _obj.description = _dr["source_name"].ToStringNullable(); _obj.fs_date = _dr.GetDateTime("fs_date"); _obj.fs_id = _dr["fs_id"].ToInt32(); _obj.reference_no = string.Format("R-{0}", _dr["off_id"].ToInt32()); _obj.reference_type = em.account_AL_referenceTypeS.receipt; _obj.statement_type = em.account_statement_typeS.income_offering; _obj.transaction_id = _dr["transaction_id"].ToInt64(); _obj.account_name = _account_name; _temp_list.Add(_obj); _obj = null; } } var _cr_account_id = accn.GetCrExpLinkAccountID(em.link_accTypes.creditor, datam.DATA_ACCOUNTS[_unit.sys_gp_account_id], xd); foreach (var k in _temp_list) { k.dr_amount = xd.ExecuteScalarInt(string.Format("select sum(cr) as _sm from journal_tb where transaction_id={0} and account_id={1}", k.transaction_id, _cr_account_id)); if (k.dr_amount > 0) { accn.DATA_ASSET_LIABILITY_STATEMENT.Add(k); } } }
public static void FillChurchSubUnits(xing xd) { if (DATA_CHURCH_SUB_UNIT == null) { DATA_CHURCH_SUB_UNIT = new SortedList <int, MTOMS.ic.church_sub_unitC>(); } bool is_new = false; bool load_all = false; string _str = string.Empty; if (wdata.TABLE_STAMP == null) { wdata.TABLE_STAMP = new SortedList <string, long>(); } string _table_name = "church_sub_unit_tb"; if (wdata.TABLE_STAMP.IndexOfKey(_table_name) == -1) { wdata.TABLE_STAMP.Add(_table_name, 0); } var _stamp = xd.GetTimeStamp(_table_name); if (DATA_CHURCH_SUB_UNIT.Keys.Count == 0) { _str = "select * from church_sub_unit_tb"; load_all = true; } else { if (_stamp == wdata.TABLE_STAMP[_table_name]) { return; } _str = string.Format("select * from church_sub_unit_tb where fs_time_stamp > {0}", wdata.TABLE_STAMP[_table_name]); } wdata.TABLE_STAMP[_table_name] = _stamp; ic.church_sub_unitC _obj = null; #region database fill using (var _dr = xd.SelectCommand(_str)) { while (_dr.Read()) { _obj = null; if (load_all) { _obj = new MTOMS.ic.church_sub_unitC(); is_new = true; } else { try { _obj = datam.DATA_CHURCH_SUB_UNIT[_dr["sb_unit_id"].ToInt32()]; is_new = false; } catch (Exception ex) { if (_obj == null) { _obj = new MTOMS.ic.church_sub_unitC(); is_new = true; } } } if (is_new) { _obj.sb_unit_id = _dr["sb_unit_id"].ToInt32(); _obj.sb_unit_category = (em.sb_unit_categoryS)_dr["sb_unit_cat_id"].ToInt32(); _obj.sb_unit_name = _dr["sb_unit_name"].ToStringNullable(); _obj.sys_gp_account_id = _dr["sys_gp_account_id"].ToInt32(); datam.DATA_CHURCH_SUB_UNIT.Add(_obj.sb_unit_id, _obj); } _obj.sb_unit_name = _dr["sb_unit_name"].ToStringNullable(); } _dr.Close(); _dr.Dispose(); } #endregion }
public static void Get_AssetLiabilityAccountStatement(xing xd, int start_fs_id, int end_fs_id, int account_id, string _account_name) { datam.InitAccount(xd); datam.LoadCrExpOffItems(xd); ic.accountC PrimaryAccount = datam.DATA_ACCOUNTS[account_id]; switch (PrimaryAccount.account_dept_category) { case em.account_d_categoryS.Liablity: { var _cr_inc_item = datam.DATA_CR_EXP_OFFITEMS.Values.Where(k => k.gen_account_id == account_id & k._type == em.link_accTypes.creditor).FirstOrDefault(); if (_cr_inc_item == null) { return; } int cg_id = _cr_inc_item.cg_id; int _income_acc_id = _cr_inc_item.account_id; ic.accountC _parent = datam.DATA_ACCOUNTS[_income_acc_id].p_account_id == 0 ? null : datam.DATA_ACCOUNTS[datam.DATA_ACCOUNTS[_income_acc_id].p_account_id]; if (_parent != null && _parent.account_id == -2360) { ic.church_sub_unitC _unit = (from c in datam.DATA_CHURCH_SUB_UNIT.Values where c.sys_gp_account_id == _income_acc_id select c).FirstOrDefault(); if (_unit != null) { int _expense_acc_id = datam.DATA_CR_EXP_OFFITEMS.Values.Where(k => k.link_id == _cr_inc_item.link_id & k._type == em.link_accTypes.expense_accrued).FirstOrDefault().gen_account_id; // Get_OffAccountsStatement(xd, start_fs_id, end_fs_id, _unit, _account_name); Get_CreditorExpenseStatement(xd, start_fs_id, end_fs_id, _expense_acc_id); Get_AccountTransfers(xd, start_fs_id, end_fs_id, account_id); // } } else { int _expense_acc_id = datam.DATA_CR_EXP_OFFITEMS.Values.Where(k => k.link_id == _cr_inc_item.link_id & k._type == em.link_accTypes.expense_accrued).FirstOrDefault().gen_account_id; // var _income_account = datam.DATA_ACCOUNTS[_income_acc_id]; if (_income_account.owner_type == em.AccountOwnerTypeS.CHURCH_GROUP_SHARED | _income_account.account_id == -2435) { cg_id = _cr_inc_item.cg_id; } else { cg_id = -1; } Get_OffAccountsStatement(xd, start_fs_id, end_fs_id, _income_acc_id, cg_id, _account_name); Get_CreditorExpenseStatement(xd, start_fs_id, end_fs_id, _expense_acc_id); Get_AccountTransfers(xd, start_fs_id, end_fs_id, account_id); // } break; } case em.account_d_categoryS.Asset: { ic.accountC _account = datam.DATA_ACCOUNTS[account_id]; switch (_account.p_account_id) { case -2499: //accn.GetAccountByAlias("BANK_ACCOUNT").account_id: { datam.GetBankAccounts(xd); ic.bankAccountC _bank = (from k in datam.DATA_BANK_ACCOUNTS.Values where k.sys_account_id == account_id select k).FirstOrDefault(); if (_bank != null) { Get_BankingStatement(xd, start_fs_id, end_fs_id, _bank.un_id); Get_BankingWithDrawStatement(xd, start_fs_id, end_fs_id, _bank.un_id); Get_BankExpenseStatement(xd, start_fs_id, end_fs_id, account_id); } break; } case -2404: // accn.GetAccountByAlias("UNBANKED").account_id: { break; } } break; } } }