public async Task <IActionResult> PutDbCurrency(Guid id, DbCurrency dbCurrency) { if (id != dbCurrency.Id) { return(BadRequest()); } _context.Entry(dbCurrency).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!DbCurrencyExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <DbCurrency> > PostDbCurrency(DbCurrency dbCurrency) { _context.Currencies.Add(dbCurrency); await _context.SaveChangesAsync(); return(CreatedAtAction("GetDbCurrency", new { id = dbCurrency.Id }, dbCurrency)); }
public async Task <IActionResult> Edit(Guid id, [Bind("Id")] DbCurrency dbCurrency, string currency) { if (id != dbCurrency.Id) { return(NotFound()); } if (ModelState.IsValid) { try { dbCurrency.Currency = new Currency(currency); _context.Update(dbCurrency); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!DbCurrencyExists(dbCurrency.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(dbCurrency)); }
protected void ctlCurrencyForm_ItemUpdating(object sender, FormViewUpdateEventArgs e) { short currencyId = Convert.ToInt16(ctlCurrencyForm.DataKey.Value); TextBox ctlSymbol = (TextBox)ctlCurrencyForm.FindControl("ctlSymbol"); TextBox ctlComment = (TextBox)ctlCurrencyForm.FindControl("ctlComment"); CheckBox ctlActiveChk = (CheckBox)ctlCurrencyForm.FindControl("ctlActiveChk"); DbCurrency currency = DbCurrencyService.FindByIdentity(currencyId); currency.Symbol = ctlSymbol.Text; currency.Comment = ctlComment.Text; currency.Active = ctlActiveChk.Checked; currency.UpdBy = UserAccount.UserID; currency.UpdDate = DateTime.Now; currency.UpdPgm = ProgramCode; try { DbCurrencyService.UpdateCurrency(currency); ctlCurrencyGrid.DataCountAndBind(); ctlCurrencyForm.ChangeMode(FormViewMode.ReadOnly); CloseCurrencyPopUp(); } catch (ServiceValidationException ex) { ValidationErrors.MergeErrors(ex.ValidationErrors); } }
protected void ctlReport_DataBound(object sender, EventArgs e) { Dbpb dbPb = ScgDbQueryProvider.DbPBQuery.FindByIdentity(Convert.ToInt64(ctlPbDropdownList.SelectedValue)); DbCurrency dbCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(Convert.ToInt16(dbPb.MainCurrencyID)); ctlReport.Columns[6].HeaderText = string.Format(GetProgramMessage("ctlMainCurrency"), "(" + dbCurrency.Symbol + ")"); }
protected void ctlCurrency_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(ctlReturnAction.Value)) { SelectedValue = ctlReturnValue.Value; if (NotifyPopupResult != null) { NotifyPopupResult(this, ctlReturnAction.Value, SelectedValue); } ctlReturnAction.Value = string.Empty; } else { DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindByCurrencySymbol(ctlCurrency.Text.ToUpper(), IsExpense, IsAdvanceFR); if (string.IsNullOrEmpty(ctlCurrency.Text) || currency == null) { ResetControl(); } else { SelectedValue = currency.CurrencyID.ToString(); } if (NotifyPopupResult != null) { NotifyPopupResult(this, "textChange", ctlCurrency.Text); } } if (NotifyCurrencyChanged != null) { NotifyCurrencyChanged(this); } }
private static DbCurrency CreateCurrency(string currencyCode) { var currency = new DbCurrency { Code = currencyCode, Id = Guid.NewGuid(), //TODO: use identity factory CreatedDate = DateTime.Now //TODO use utc date }; return(currency); }
public string DisplayCurrency(Object obj) { ExpenseDataSet.FnExpenseInvoiceItemRow row = (ExpenseDataSet.FnExpenseInvoiceItemRow)obj; if (!string.IsNullOrEmpty(row["CurrencyID"].ToString())) { DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(UIHelper.ParseShort(row["CurrencyID"].ToString())); if (currency != null) { return(Server.HtmlEncode(currency.Symbol)); } } return(string.Empty); }
public async Task <IActionResult> Create([Bind("Id")] DbCurrency dbCurrency, string currency) { if (ModelState.IsValid) { dbCurrency.Id = Guid.NewGuid(); dbCurrency.Currency = new Currency(currency); _context.Add(dbCurrency); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(dbCurrency)); }
protected void ctlRemittanceGridview_DataBound(object sender, EventArgs e) { ExpenseDataSet expenseDS = (ExpenseDataSet)TransactionService.GetDS(this.TransactionId); ExpenseDataSet.FnExpenseDocumentRow row = expenseDS.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID); SS.Standard.WorkFlow.DTO.WorkFlow wf = null; int Ordinal = 0; if (Request["wfid"] != null) { WorkFlowID = UIHelper.ParseLong(Request["wfid"].ToString()); wf = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(WorkFlowID); CurrentState = wf.CurrentState.Name; Ordinal = wf.CurrentState.Ordinal; } DbCurrency mainCurrency = null; if (!row.IsMainCurrencyIDNull()) { mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(row.MainCurrencyID); } if (mainCurrency != null) { ctlRemittanceGridview.Columns[7].HeaderText = string.Format(GetProgramMessage("ctlLblRemittanceMainAmount"), "(" + mainCurrency.Symbol + ")"); } string expenseType = FnExpenseDocumentService.GetExpenseType(this.ExpDocumentID, this.TransactionId); bool isRepOffice = row.IsIsRepOfficeNull() ? false : row.IsRepOffice; if (!expenseType.Equals(ZoneType.Domestic)) { if (isRepOffice) { if (CurrentState.Equals(WorkFlowStateFlag.WaitVerify) || Ordinal > 5) { ctlRemittanceGridview.Columns[7].Visible = true; ctlRemittanceGridview.Columns[8].Visible = true; } else { ctlRemittanceGridview.Columns[7].Visible = true; ctlRemittanceGridview.Columns[8].Visible = false; } } else { ctlRemittanceGridview.Columns[7].Visible = false; ctlRemittanceGridview.Columns[8].Visible = true; } } }
protected void ctlCurrency_RowCommand(object sender, GridViewCommandEventArgs e) { int rowIndex; if (e.CommandName.Equals("CurrencyEdit")) { rowIndex = ((GridViewRow)((ImageButton)e.CommandSource).NamingContainer).RowIndex; CurrencyId = UIHelper.ParseShort(ctlCurrencySetupGrid.DataKeys[rowIndex].Values["CurrencyID"].ToString()); ctlCurrencyEditor.Initialize(FlagEnum.EditFlag, CurrencyId); ctlCurrencyEditor.ShowPopUp(); } if (e.CommandName.Equals("CurrencyDelete")) { try { rowIndex = ((GridViewRow)((ImageButton)e.CommandSource).NamingContainer).RowIndex; CurrencyId = UIHelper.ParseShort(ctlCurrencySetupGrid.DataKeys[rowIndex].Value.ToString()); // delete by cascade on delete //IList<DbCurrencyLang> clang = SsDbQueryProvider.DbCurrencyLangQuery.FindCurrencyLangByCID(CurrencyId); //DbCurrencyLangService.DeleteCurrencyLang(clang); DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindCurrencyById(CurrencyId); DbCurrencyService.DeleteCurrency(currency); } catch (Exception ex) { if (((System.Data.SqlClient.SqlException)(ex.GetBaseException())).Number == 547) { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "AlertInUseData", "alert('This data is now in use.');", true); ctlCurrencySetupGrid.DataCountAndBind(); } } ctlCurrencySetupGrid.DataCountAndBind(); ctlCurrencySetupUpdatePanel.Update(); } }
public void Initialize(string mode, short?currencyID) { Mode = mode.ToString(); if (currencyID.HasValue) { CurrencyID = currencyID.Value; } if (mode.Equals(FlagEnum.EditFlag)) { DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(CurrencyID); ctlSymbol.Text = currency.Symbol; ctlComment.Text = currency.Comment; ctlActive.Checked = currency.Active; ctlCurrencyEditorGrid.DataCountAndBind(); ctlCurrencyUpdatePanel.Update(); ctlCurrencySymbol.Text = currency.CurrencySymbol; } else if (mode.ToString() == FlagEnum.NewFlag) { ResetValue(); } }
protected void ctlAdvanceGridview_DataBound(object sender, EventArgs e) { ExpenseDataSet expenseDS = (ExpenseDataSet)TransactionService.GetDS(this.TransactionId); if (expenseDS != null) { ExpenseDataSet.FnExpenseDocumentRow row = expenseDS.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID); SS.Standard.WorkFlow.DTO.WorkFlow wf = null; int Ordinal = 0; if (Request["wfid"] != null) { WorkFlowID = UIHelper.ParseLong(Request["wfid"].ToString()); wf = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(WorkFlowID); CurrentState = wf.CurrentState.Name; Ordinal = wf.CurrentState.Ordinal; } //DbCurrency localCurrency = null; DbCurrency mainCurrency = null; //if (!row.IsLocalCurrencyIDNull()) //{ // localCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(row.LocalCurrencyID); //} if (!row.IsMainCurrencyIDNull()) { mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(row.MainCurrencyID); } //if (localCurrency != null) //{ // ctlAdvanceGridView.Columns[4].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + localCurrency.Symbol + ")"); //} //else //{ ctlAdvanceGridView.Columns[4].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), ""); //} if (mainCurrency != null) { ctlAdvanceGridView.Columns[5].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + mainCurrency.Symbol + ")"); ctlAdvanceGridView.HeaderRow.Cells[5].Text = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + mainCurrency.Symbol + ")"); } else { ctlAdvanceGridView.Columns[5].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), ""); } string expenseType = FnExpenseDocumentService.GetExpenseType(this.ExpDocumentID, this.TransactionId); bool isRepOffice = row.IsIsRepOfficeNull() ? false : row.IsRepOffice; if (expenseType.Equals(ZoneType.Domestic)) { if (isRepOffice) { if (CurrentState.Equals(WorkFlowStateFlag.WaitVerify) || Ordinal > 5) { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = true; ctlAdvanceGridView.Columns[6].Visible = true; } else { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = true; ctlAdvanceGridView.Columns[6].Visible = false; } } else { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = false; ctlAdvanceGridView.Columns[6].Visible = true; } } else { if (isRepOffice) { if (CurrentState.Equals(WorkFlowStateFlag.WaitVerify) || Ordinal > 5) { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = true; ctlAdvanceGridView.Columns[6].Visible = true; } else { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = true; ctlAdvanceGridView.Columns[6].Visible = false; } } else { ctlAdvanceGridView.Columns[4].Visible = false; ctlAdvanceGridView.Columns[5].Visible = false; ctlAdvanceGridView.Columns[6].Visible = true; } } } if (ctlAdvanceGridView.Rows.Count == 0) { ctlTANoLookup.Enabled = true; ctlDeleteTA.Enabled = true; //this.ClearRemittanceGridview(); } }
protected void ctlInvoiceItem_DataBound(object sender, EventArgs e) { BaseGridView gridview = (BaseGridView)sender; if (DocumentType.Equals(ZoneType.Domestic)) { gridview.Columns[5].Visible = false; gridview.Columns[4].Visible = false; gridview.Columns[6].Visible = false; } else { gridview.Columns[5].Visible = true; gridview.Columns[4].Visible = true; gridview.Columns[6].Visible = true; } if (IsRepOffice) { SS.Standard.WorkFlow.DTO.WorkFlow workflow = null; if (!string.IsNullOrEmpty(Request.Params["wfid"]) && UIHelper.ParseInt(Request.Params["wfid"]) > 0) { long workFlowID = UIHelper.ParseLong(Request.Params["wfid"]); try { workflow = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(workFlowID); } catch (Exception ex) { throw ex; } } gridview.Columns[7].Visible = true; //local currency gridview.Columns[7].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + SelectedCurrency + ")"); ExpenseDataSet expDs = (ExpenseDataSet)TransactionService.GetDS(TransactionId); ExpenseDataSet.FnExpenseDocumentRow expRow = expDs.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID); if (!expRow.IsMainCurrencyIDNull()) { DbCurrency mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(expRow.MainCurrencyID); if (mainCurrency != null) { gridview.Columns[8].HeaderText = string.Format(GetMessage("AmountCurrencyHeaderColumn"), "(" + mainCurrency.Symbol + ")"); } } if ((workflow != null && workflow.CurrentState.Ordinal >= 5) && (UserAccount.IsAccountant || UserAccount.IsPayment)) { if (!expRow.IsMainCurrencyIDNull() && !expRow.IsLocalCurrencyIDNull() && (expRow.MainCurrencyID == expRow.LocalCurrencyID)) { gridview.Columns[8].Visible = false; //hide main currency } else { gridview.Columns[8].Visible = true; //show main currency } gridview.Columns[9].Visible = true; //THB } else { gridview.Columns[8].Visible = false; gridview.Columns[9].Visible = false; } } else { gridview.Columns[7].Visible = false; gridview.Columns[8].Visible = false; gridview.Columns[9].Visible = true; } }
public void BindControl() { SS.Standard.WorkFlow.DTO.WorkFlow workflow = null; long workFlowID = 0; if (!string.IsNullOrEmpty(Request.Params["wfid"]) && UIHelper.ParseInt(Request.Params["wfid"]) > 0) { workFlowID = UIHelper.ParseLong(Request.Params["wfid"]); workflow = WorkFlowQueryProvider.WorkFlowQuery.FindByIdentity(workFlowID); } if (DocumentType.Equals(ZoneType.Foreign) || this.IsRepOffice) { ctlAddMilage.Style["display"] = "none"; } else { ctlAddMilage.Style["display"] = string.Empty; } if (!InitialFlag.Equals(FlagEnum.ViewFlag) && (workflow == null || (workflow != null && !workflow.CurrentState.Name.Equals(WorkFlowStateFlag.Hold)))) { ctlAddGeneralExpense.Enabled = true; ctlAddPerdiem.Enabled = true; ctlAddMilage.Enabled = true; } else { ctlAddGeneralExpense.Enabled = false; ctlAddPerdiem.Enabled = false; ctlAddMilage.Enabled = false; } ctlSimpleExpense.DocumentType = this.DocumentType; ctlPerdiemPopupCaller.URL = ShowPerdiemPopup(InitialFlag, null); ctlInvoicePopupCaller.URL = String.Format(invoiceURL.Replace("[mode]", FlagEnum.NewFlag), this.TransactionId, this.ExpDocumentID, this.DocumentType, this.DocumentID, string.Empty); ctlMileagePopupCaller.URL = ShowMileagePopup(InitialFlag); ExpenseDataSet expDs = (ExpenseDataSet)TransactionService.GetDS(this.TransactionId); ExpenseDataSet.FnExpenseDocumentRow expenseDocumentRow = expDs.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID); this.DocumentID = expenseDocumentRow.DocumentID; ctlDivExchangeRateLocalInfo.Style["display"] = "none"; ctlDivExchangeRateMainInfo.Style["display"] = "none"; if (!InitialFlag.Equals(FlagEnum.NewFlag) && IsRepOffice) { try { if ((workflow != null && workflow.CurrentState.Ordinal >= 5) && (UserAccount.IsAccountant || UserAccount.IsPayment)) { string mainCurrencySymbol = string.Empty; string localCurrencySymbol = string.Empty; if (!expenseDocumentRow.IsLocalCurrencyIDNull()) { DbCurrency localCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(expenseDocumentRow.LocalCurrencyID); localCurrencySymbol = localCurrency.Symbol; } if (!expenseDocumentRow.IsMainCurrencyIDNull()) { DbCurrency mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(expenseDocumentRow.MainCurrencyID); mainCurrencySymbol = mainCurrency.Symbol; } ctlExRateMainCurrencyLabel.Text = GetProgramMessage("DisplayExchangeRateInfo"); ctlExchangeRateMain.Text = UIHelper.BindExchangeRate(expenseDocumentRow.IsExchangeRateMainToTHBCurrencyNull() ? string.Empty : expenseDocumentRow.ExchangeRateMainToTHBCurrency.ToString()); ctlExchangeRateMainUnit.Text = CurrencySymbol.THB + "/" + mainCurrencySymbol; ctlExRateLocalCurrencyLabel.Text = GetProgramMessage("DisplayExchangeRateInfo"); ctlExchangeRateLocal.Text = UIHelper.BindExchangeRate(expenseDocumentRow.IsExchangeRateForLocalCurrencyNull() ? string.Empty : expenseDocumentRow.ExchangeRateForLocalCurrency.ToString()); ctlExchangeRateLocalUnit.Text = localCurrencySymbol + "/" + mainCurrencySymbol; ctlDivExchangeRateMainInfo.Style["display"] = "block"; if (!expenseDocumentRow.IsMainCurrencyIDNull() && !expenseDocumentRow.IsLocalCurrencyIDNull() && (expenseDocumentRow.MainCurrencyID != expenseDocumentRow.LocalCurrencyID)) { ctlDivExchangeRateLocalInfo.Style["display"] = "block"; } } } catch (Exception ex) { throw ex; } } }
protected void ctlExchangeForm_ItemInserting(object sender, FormViewInsertEventArgs e) { //modify by tom 28/01/209 //SCG.eAccounting.Web.UserControls.Calendar ctlFromDateCalendar = ctlExchangeForm.FindControl("Calendar1") as SCG.eAccounting.Web.UserControls.Calendar; //SCG.eAccounting.Web.UserControls.Calendar ctlToDateCalendar = ctlExchangeForm.FindControl("Calendar2") as SCG.eAccounting.Web.UserControls.Calendar; UserControls.Calendar ctlFromDateCalendar = ctlExchangeForm.FindControl("Calendar1") as UserControls.Calendar; UserControls.Calendar ctlToDateCalendar = ctlExchangeForm.FindControl("Calendar2") as UserControls.Calendar; TextBox ctlFromDate = ctlFromDateCalendar.FindControl("txtDate") as TextBox; TextBox ctlToDate = ctlToDateCalendar.FindControl("txtDate") as TextBox; TextBox ctlBuyRate = (TextBox)ctlExchangeForm.FindControl("ctlBuyRate"); TextBox ctlSellRate = (TextBox)ctlExchangeForm.FindControl("ctlSellRate"); TextBox ctlComment = (TextBox)ctlExchangeForm.FindControl("ctlComment"); CheckBox ctlActiveChk = (CheckBox)ctlExchangeForm.FindControl("ctlActiveChk"); DbExchangeRate exchangeRate = new DbExchangeRate(); DbCurrency currency = new DbCurrency(UIHelper.ParseShort(ctlCurrencyGrid.SelectedValue.ToString())); exchangeRate.Currency = currency; if (!string.IsNullOrEmpty(ctlFromDate.Text)) { //exchangeRate.FromDate = UIHelper.ParseDate(ctlFromDateCalendar.DateValue, UserCulture).Value; //UIHelper.ParseDate("01-Jan-2009").Value; } if (!string.IsNullOrEmpty(ctlToDate.Text)) { //exchangeRate.ToDate = UIHelper.ParseDate(ctlToDateCalendar.DateValue, UserCulture).Value; //UIHelper.ParseDate("01-Jan-2009").Value; } if (!string.IsNullOrEmpty(ctlBuyRate.Text)) { try { exchangeRate.BuyRate = Convert.ToSingle(ctlBuyRate.Text); } catch (FormatException) { ValidationErrors.AddError("Currency.Error", new Spring.Validation.ErrorMessage("BuyrateFormat")); } } if (!string.IsNullOrEmpty(ctlSellRate.Text)) { try { exchangeRate.SellRate = Convert.ToSingle(ctlSellRate.Text); } catch (FormatException) { ValidationErrors.AddError("Currency.Error", new Spring.Validation.ErrorMessage("SellrateFormat")); } } exchangeRate.Comment = ctlComment.Text; exchangeRate.Active = ctlActiveChk.Checked; exchangeRate.CreBy = UserAccount.UserID; exchangeRate.CreDate = DateTime.Now; exchangeRate.UpdBy = UserAccount.UserID; exchangeRate.UpdDate = DateTime.Now; exchangeRate.UpdPgm = ProgramCode; try { DbExchangeRateService.AddExchangeRate(exchangeRate); ctlExchangeGrid.DataCountAndBind(); ctlExchangeForm.ChangeMode(FormViewMode.ReadOnly); CloseExchangePopUp(); } catch (ServiceValidationException ex) { ValidationErrors.MergeErrors(ex.ValidationErrors); } }
public override void CreatePostData(long DocID, string DocKind) { Hashtable paramete = new Hashtable(); paramete.Add("@DOCUMENT_ID", DocID.ToString()); DataSet dstPosting = new DBManage().ExecuteQuery("ADVANCE_POSTING", paramete); bool repOffice = false; string mainCurrencySymbol = string.Empty; SCGDocument doc = SCG.eAccounting.Query.ScgeAccountingQueryProvider.SCGDocumentQuery.FindProxyByIdentity(DocID); DbSapInstance sap = SCG.DB.Query.ScgDbQueryProvider.DbCompanyQuery.GetSAPDocTypeForPosting(doc.CompanyID.CompanyCode); if (dstPosting.Tables[0].Rows.Count > 0) { if (!string.IsNullOrEmpty(dstPosting.Tables[0].Rows[0]["IsRepOffice"].ToString())) { repOffice = bool.Parse(dstPosting.Tables[0].Rows[0]["IsRepOffice"].ToString()); } // get main currency symbol if (repOffice) { DbCurrency mainCurrency = SS.DB.Query.SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(short.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyID"].ToString())); if (mainCurrency != null) { mainCurrencySymbol = mainCurrency.Symbol; } } if (dstPosting.Tables[0].Rows[0]["AdvanceType"].ToString() == ZoneTypeConst.Domestic) { #region HEAD Bapiache09 che09 = new Bapiache09(); che09.DocId = DocID; che09.DocSeq = "M"; che09.DocKind = DocKind; che09.BusAct = PostingConst.BusAct; che09.Username = sap.UserCPIC; //PostingConst.UserCPIC; che09.CompCode = dstPosting.Tables[0].Rows[0]["COMP_CODE"].ToString().Substring(0, 4); che09.DocDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.DocKind = DocKind; che09.DocType = sap.DocTypeAdvancePostingDM;//DocTypeConst.KR; che09.PstngDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.ReverseDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.RefDocNo = SAPUIHelper.SubString(16, dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString()); che09.DocStatus = "N"; if (dstPosting.Tables[0].Rows[0]["PaymentType"].ToString() == PaymentTypeConst.DomesticCash) { che09.DocAppFlag = "A"; } else { che09.DocAppFlag = "V"; } che09.Active = true; che09.CreBy = 1; che09.CreDate = DateTime.Now; che09.UpdBy = 1; che09.UpdDate = DateTime.Now; che09.UpdPgm = "AdvancePosting"; BapiServiceProvider.Bapiache09Service.Save(che09); #endregion HEAD #region Foolter Bapiacextc cextc = new Bapiacextc(); cextc.DocId = DocID; cextc.DocSeq = "M"; cextc.DocKind = DocKind; cextc.Field1 = PostingConst.BRNCH; cextc.Field2 = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); cextc.Active = true; cextc.CreBy = 1; cextc.CreDate = DateTime.Now; cextc.UpdBy = 1; cextc.UpdDate = DateTime.Now; cextc.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc); Bapiacextc cextc1 = new Bapiacextc(); cextc1.DocId = DocID; cextc1.DocSeq = "M"; cextc1.DocKind = DocKind; cextc1.Field1 = PostingConst.VAT; cextc1.Field2 = TaxCodeConst.NV; cextc1.Active = true; cextc1.CreBy = 1; cextc1.CreDate = DateTime.Now; cextc1.UpdBy = 1; cextc1.UpdDate = DateTime.Now; cextc1.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc1); #endregion Foolter #region Domestic Bapiacap09 capItem1 = new Bapiacap09(); Bapiacap09 capItem2 = new Bapiacap09(); Bapiaccr09 accrItem1 = new Bapiaccr09(); Bapiaccr09 accrItem2 = new Bapiaccr09(); if (!repOffice) { if (dstPosting.Tables[0].Rows[0]["PaymentType"].ToString() == PaymentTypeConst.DomesticCash) { #region Cash #region Credit capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = "1"; capItem1.VendorNo = dstPosting.Tables[0].Rows[0]["PBCode"].ToString(); capItem1.PmntBlock = PostingConst.PmntBlock; capItem1.Pmnttrms = PostingConst.Pmnttrms; capItem1.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem1.AllocNmbr = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["ReceiverID"].ToString())).EmployeeName; capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem1.ItemText = dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "AdvancePosting"; accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = "1"; accrItem1.Currency = PostingConst.Currency; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "AdvancePosting"; #endregion Credit #region Debit capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = "2"; capItem2.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["RequesterID"].ToString())).VendorCode; capItem2.Pmnttrms = PostingConst.Pmnttrms; capItem2.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem2.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem2.PmntBlock = PostingConst.PmntBlock; capItem2.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem2.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[0]["DueDate"].ToString() + "/" + dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem2.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; capItem2.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "AdvancePosting"; accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = "2"; accrItem2.Currency = PostingConst.Currency; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "AdvancePosting"; #endregion Debit #endregion Cash } else { #region Transfer หรือ Cheque #region Credit capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = "1"; capItem1.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["ReceiverID"].ToString())).VendorCode; capItem1.PmntBlock = ""; capItem1.Pmnttrms = PostingConst.Pmnttrms; capItem1.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem1.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem1.ItemText = dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem1.Pmtmthsupl = dstPosting.Tables[0].Rows[0]["Supplementary"].ToString(); capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "AdvancePosting"; accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = "1"; accrItem1.Currency = PostingConst.Currency; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "AdvancePosting"; #endregion Credit #region Debit capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = "2"; capItem2.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["RequesterID"].ToString())).VendorCode; capItem2.Pmnttrms = PostingConst.Pmnttrms; capItem2.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem2.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem2.PmntBlock = ""; capItem2.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem2.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[0]["DueDate"].ToString() + "/" + dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem2.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; capItem2.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem2.Pmtmthsupl = dstPosting.Tables[0].Rows[0]["Supplementary"].ToString(); capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "AdvancePosting"; accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = "2"; accrItem2.Currency = PostingConst.Currency; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "AdvancePosting"; #endregion Debit #endregion Transfer หรือ Cheque } } else //for rep office { #region Credit capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = "1"; capItem1.VendorNo = dstPosting.Tables[0].Rows[0]["PBCode"].ToString(); capItem1.PmntBlock = PostingConst.PmntBlock; capItem1.Pmnttrms = PostingConst.Pmnttrms; capItem1.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem1.AllocNmbr = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["ReceiverID"].ToString())).EmployeeName; capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem1.ItemText = dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "AdvancePosting"; accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = "1"; accrItem1.Currency = mainCurrencySymbol; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyAmount"].ToString()); accrItem1.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[0]["ExchangeRateMainToTHB"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "AdvancePosting"; #endregion Credit #region Debit capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = "2"; capItem2.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["RequesterID"].ToString())).VendorCode; capItem2.Pmnttrms = PostingConst.Pmnttrms; capItem2.PymtMeth = dstPosting.Tables[0].Rows[0]["PaymentMethod"].ToString(); capItem2.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem2.PmntBlock = PostingConst.PmntBlock; capItem2.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem2.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[0]["DueDate"].ToString() + "/" + dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem2.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; capItem2.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "AdvancePosting"; accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = "2"; accrItem2.Currency = mainCurrencySymbol; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyAmount"].ToString()); accrItem2.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[0]["ExchangeRateMainToTHB"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "AdvancePosting"; #endregion Debit } BapiServiceProvider.Bapiacap09Service.Save(capItem1); BapiServiceProvider.Bapiacap09Service.Save(capItem2); BapiServiceProvider.Bapiaccr09Service.Save(accrItem1); BapiServiceProvider.Bapiaccr09Service.Save(accrItem2); #endregion Domestic } else if (dstPosting.Tables[0].Rows[0]["AdvanceType"].ToString() == ZoneTypeConst.Foreign) { #region Foreign if (!repOffice) { #region HEAD Bapiache09 che09 = new Bapiache09(); che09.DocId = DocID; che09.DocSeq = "M"; che09.DocKind = DocKind; che09.BusAct = PostingConst.BusAct; che09.Username = sap.UserCPIC;//PostingConst.UserCPIC; che09.CompCode = dstPosting.Tables[0].Rows[0]["COMP_CODE"].ToString().Substring(0, 4); che09.DocDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.DocKind = DocKind; che09.DocType = sap.DocTypeAdvancePostingFR;//DocTypeConst.KZ; che09.PstngDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.ReverseDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.RefDocNo = SAPUIHelper.SubString(16, dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString()); che09.DocStatus = "N"; che09.DocAppFlag = "A"; che09.Active = true; che09.CreBy = 1; che09.CreDate = DateTime.Now; che09.UpdBy = 1; che09.UpdDate = DateTime.Now; che09.UpdPgm = "AdvancePosting"; BapiServiceProvider.Bapiache09Service.Save(che09); #endregion HEAD #region Foolter Bapiacextc cextc = new Bapiacextc(); cextc.DocId = DocID; cextc.DocSeq = "M"; cextc.DocKind = DocKind; cextc.Field1 = PostingConst.BRNCH; cextc.Field2 = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); cextc.Active = true; cextc.CreBy = 1; cextc.CreDate = DateTime.Now; cextc.UpdBy = 1; cextc.UpdDate = DateTime.Now; cextc.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc); Bapiacextc cextc1 = new Bapiacextc(); cextc1.DocId = DocID; cextc1.DocSeq = "M"; cextc1.DocKind = DocKind; cextc1.Field1 = PostingConst.VAT; cextc1.Field2 = TaxCodeConst.NV; cextc1.Active = true; cextc1.CreBy = 1; cextc1.CreDate = DateTime.Now; cextc1.UpdBy = 1; cextc1.UpdDate = DateTime.Now; cextc1.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc1); #endregion Foolter Bapiacgl09 capItem1 = new Bapiacgl09(); Bapiacap09 capItem2 = new Bapiacap09(); Bapiaccr09 accrItem1 = new Bapiaccr09(); Bapiaccr09 accrItem2 = new Bapiaccr09(); #region Credit capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = "1"; capItem1.GlAccount = dstPosting.Tables[0].Rows[0]["BankAccount"].ToString(); capItem1.ValueDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem1.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.ItemText = dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); //capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "AdvancePosting"; accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = "1"; accrItem1.Currency = PostingConst.Currency; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "AdvancePosting"; #endregion Credit #region Debit capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = "2"; capItem2.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["RequesterID"].ToString())).VendorCode; capItem2.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem2.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[0]["DueDate"].ToString() + "/" + dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem2.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; capItem2.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "AdvancePosting"; accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = "2"; accrItem2.Currency = PostingConst.Currency; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[0]["Amount"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "AdvancePosting"; #endregion Debit BapiServiceProvider.Bapiacgl09Service.Save(capItem1); BapiServiceProvider.Bapiacap09Service.Save(capItem2); BapiServiceProvider.Bapiaccr09Service.Save(accrItem1); BapiServiceProvider.Bapiaccr09Service.Save(accrItem2); } else // post ADF for rep office { #region HEAD Bapiache09 che09 = new Bapiache09(); che09.DocId = DocID; che09.DocSeq = "M"; che09.DocKind = DocKind; che09.BusAct = PostingConst.BusAct; che09.Username = sap.UserCPIC;//PostingConst.UserCPIC; che09.CompCode = dstPosting.Tables[0].Rows[0]["COMP_CODE"].ToString().Substring(0, 4); che09.DocDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.DocKind = DocKind; che09.DocType = sap.DocTypeAdvancePostingFR;//DocTypeConst.KR; che09.PstngDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.ReverseDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.RefDocNo = SAPUIHelper.SubString(16, dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString()); che09.DocStatus = "N"; che09.DocAppFlag = "A"; che09.Active = true; che09.CreBy = 1; che09.CreDate = DateTime.Now; che09.UpdBy = 1; che09.UpdDate = DateTime.Now; che09.UpdPgm = "AdvancePosting"; BapiServiceProvider.Bapiache09Service.Save(che09); #endregion HEAD #region Foolter Bapiacextc cextc = new Bapiacextc(); cextc.DocId = DocID; cextc.DocSeq = "M"; cextc.DocKind = DocKind; cextc.Field1 = PostingConst.BRNCH; cextc.Field2 = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); cextc.Active = true; cextc.CreBy = 1; cextc.CreDate = DateTime.Now; cextc.UpdBy = 1; cextc.UpdDate = DateTime.Now; cextc.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc); Bapiacextc cextc1 = new Bapiacextc(); cextc1.DocId = DocID; cextc1.DocSeq = "M"; cextc1.DocKind = DocKind; cextc1.Field1 = PostingConst.VAT; cextc1.Field2 = TaxCodeConst.NV; cextc1.Active = true; cextc1.CreBy = 1; cextc1.CreDate = DateTime.Now; cextc1.UpdBy = 1; cextc1.UpdDate = DateTime.Now; cextc1.UpdPgm = "AdvancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc1); #endregion Foolter Bapiacap09 capItem1 = new Bapiacap09(); Bapiacap09 capItem2 = new Bapiacap09(); Bapiaccr09 accrItem1 = new Bapiaccr09(); Bapiaccr09 accrItem2 = new Bapiaccr09(); #region Credit capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = "1"; capItem1.VendorNo = dstPosting.Tables[0].Rows[0]["PBCode"].ToString(); capItem1.PmntBlock = PostingConst.PmntBlock; capItem1.Pmnttrms = PostingConst.Pmnttrms; capItem1.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem1.AllocNmbr = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["ReceiverID"].ToString())).EmployeeName; capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.ItemText = dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "AdvancePosting"; accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = "1"; accrItem1.Currency = mainCurrencySymbol; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyAmount"].ToString()); accrItem1.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[0]["ExchangeRateMainToTHB"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "AdvancePosting"; #endregion Credit #region Debit capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = "2"; capItem2.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[0]["RequesterID"].ToString())).VendorCode; capItem2.Pmnttrms = PostingConst.Pmnttrms; capItem2.BlineDate = dstPosting.Tables[0].Rows[0]["BaseLineDate"].ToString(); capItem2.PmntBlock = PostingConst.PmntBlock; capItem2.AllocNmbr = dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString(); capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem2.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[0]["DueDate"].ToString() + "/" + dstPosting.Tables[0].Rows[0]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem2.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; capItem2.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[0]["BusinessArea"].ToString(); } capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "AdvancePosting"; accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = "2"; accrItem2.Currency = mainCurrencySymbol; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyAmount"].ToString()); accrItem2.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[0]["ExchangeRateMainToTHB"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "AdvancePosting"; #endregion Debit BapiServiceProvider.Bapiacap09Service.Save(capItem1); BapiServiceProvider.Bapiacap09Service.Save(capItem2); BapiServiceProvider.Bapiaccr09Service.Save(accrItem1); BapiServiceProvider.Bapiaccr09Service.Save(accrItem2); } #endregion Foreign } } }
protected void ctlAdd_Click(object sender, ImageClickEventArgs e) { DbCurrency currency; if (Mode.Equals(FlagEnum.EditFlag)) { currency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(CurrencyID); } else { currency = new DbCurrency(); } currency.Symbol = ctlSymbol.Text; currency.Active = ctlActive.Checked; currency.CreBy = UserAccount.UserID; currency.CreDate = DateTime.Now; currency.UpdBy = UserAccount.UserID; currency.UpdDate = DateTime.Now; currency.UpdPgm = UserAccount.CurrentProgramCode; currency.Comment = ctlComment.Text; currency.CurrencySymbol = ctlCurrencySymbol.Text; try { DbCurrencyService.SaveOrUpdate(currency); // save or update currencylang IList <DbCurrencyLang> list = new List <DbCurrencyLang>(); foreach (GridViewRow row in ctlCurrencyEditorGrid.Rows) { short languageId = UIHelper.ParseShort(ctlCurrencyEditorGrid.DataKeys[row.RowIndex]["LanguageID"].ToString()); TextBox ctrDescription = row.FindControl("ctrDescription") as TextBox; TextBox ctrComment = row.FindControl("ctrComment") as TextBox; CheckBox ctlActiveCl = row.FindControl("ctlActive") as CheckBox; TextBox ctlMainUnit = row.FindControl("ctlMainUnit") as TextBox; TextBox ctlSubUnit = row.FindControl("ctlSubUnit") as TextBox; if ((!string.IsNullOrEmpty(ctrDescription.Text)) || (!string.IsNullOrEmpty(ctrComment.Text))) { DbCurrencyLang currencyLang = new DbCurrencyLang(); currencyLang.Description = ctrDescription.Text; currencyLang.Comment = ctrComment.Text; currencyLang.Active = ctlActiveCl.Checked; currencyLang.Currency = currency; currencyLang.CreBy = UserAccount.UserID; currencyLang.CreDate = DateTime.Now; currencyLang.UpdBy = UserAccount.UserID; currencyLang.UpdDate = DateTime.Now; currencyLang.Language = new DbLanguage(languageId); currencyLang.UpdPgm = UserAccount.CurrentProgramCode; currencyLang.MainUnit = ctlMainUnit.Text; currencyLang.SubUnit = ctlSubUnit.Text; list.Add(currencyLang); } } if (Mode.Equals(FlagEnum.EditFlag)) { DbCurrencyLangService.UpdateCurrencyLang(list); } if (Mode.Equals(FlagEnum.NewFlag)) { DbCurrencyLangService.AddCurrencyLang(list); } Notify_Ok(sender, e); } catch (ServiceValidationException ex) { this.ValidationErrors.MergeErrors(ex.ValidationErrors); } }
protected void ctlCurrencyGrid_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "UserEdit") { int rowIndex = ((GridViewRow)((ImageButton)e.CommandSource).NamingContainer).RowIndex; short currencyId = Convert.ToInt16(ctlCurrencyGrid.DataKeys[rowIndex].Value); ctlCurrencyForm.PageIndex = (ctlCurrencyGrid.PageIndex * ctlCurrencyGrid.PageSize) + rowIndex; ctlCurrencyForm.ChangeMode(FormViewMode.Edit); IList <DbCurrency> currencyList = new List <DbCurrency>(); DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(currencyId); currencyList.Add(currency); ctlCurrencyForm.DataSource = currencyList; ctlCurrencyForm.DataBind(); ctlCurrencyGrid.DataCountAndBind(); UpdatePanelCurrencyForm.Update(); ctlCurrencyModalPopupExtender.Show(); } if (e.CommandName == "UserEdit") { foreach (GridViewRow row in ctlCurrencyGrid.Rows) { if ((row.RowType == DataControlRowType.DataRow) && (((CheckBox)row.FindControl("ctlSelectChk")).Checked)) { try { short currencyId = UIHelper.ParseShort(ctlCurrencyGrid.DataKeys[row.RowIndex].Value.ToString()); DbCurrency currency = SsDbQueryProvider.DbCurrencyQuery.FindProxyByIdentity(currencyId); DbCurrencyService.Delete(currency); ExchangeRateGridViewFinish(); } catch (Exception ex) { if (((System.Data.SqlClient.SqlException)(ex.GetBaseException())).Number == 547) { ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "AlertInUseData", "alert('This data is now in use.');", true); ctlCurrencyGrid.DataCountAndBind(); ctlCurrencyUpdatePanel.Update(); } } } } } if (e.CommandName == "Select") { int rowIndex = ((GridViewRow)((LinkButton)e.CommandSource).NamingContainer).RowIndex; string currencyId = ctlCurrencyGrid.DataKeys[rowIndex].Value.ToString();//UIHelper.ParseShort(ctlCurrencyGrid.DataKeys[rowIndex].Value.ToString()); ctlCurrencyIdHidden.Value = currencyId; ctlExchangeGrid.DataCountAndBind(); ctlExchangeButton.Visible = true; ctlExchangeGrid.Visible = true; ctlExchangeFds.Visible = true; //if (ctlExchangeGrid.Rows.Count <= 0) //{ // ctlExchangeGrid.EmptyDataText = "$No result.$"; // ctlExchangeGrid.DataBind(); //} ctlCurrencyGrid.DataCountAndBind(); ctlExchangeRateUpdatePanel.Update(); ctlCurrencyUpdatePanel.Update(); } }
public override void CreatePostData(long DocID, string DocKind) { Hashtable paramete = new Hashtable(); paramete.Add("@DOCUMENT_ID", DocID.ToString()); DataSet dstPosting = new DBManage().ExecuteQuery("REMITANCE_POSTING", paramete); bool repOffice = false; string mainCurrencySymbol = string.Empty; SCGDocument doc = SCG.eAccounting.Query.ScgeAccountingQueryProvider.SCGDocumentQuery.FindProxyByIdentity(DocID); DbSapInstance sap = SCG.DB.Query.ScgDbQueryProvider.DbCompanyQuery.GetSAPDocTypeForPosting(doc.CompanyID.CompanyCode); if (dstPosting.Tables[0].Rows.Count >= 1) { if (!string.IsNullOrEmpty(dstPosting.Tables[0].Rows[0]["IsRepOffice"].ToString())) { repOffice = bool.Parse(dstPosting.Tables[0].Rows[0]["IsRepOffice"].ToString()); } // get main currency symbol if (repOffice) { DbCurrency mainCurrency = SS.DB.Query.SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(short.Parse(dstPosting.Tables[0].Rows[0]["MainCurrencyID"].ToString())); if (mainCurrency != null) { mainCurrencySymbol = mainCurrency.Symbol; } } #region HEAD Bapiache09 che09 = new Bapiache09(); che09.DocId = DocID; che09.DocSeq = "M"; che09.DocKind = DocKind; che09.DocStatus = "N"; che09.BusAct = PostingConst.BusAct; che09.Username = sap.UserCPIC;//PostingConst.UserCPIC; che09.CompCode = dstPosting.Tables[0].Rows[0]["CompanyCode"].ToString(); che09.DocDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.DocType = sap.DocTypeRmtPosting;//DocTypeConst.SV; che09.PstngDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.ReverseDate = dstPosting.Tables[0].Rows[0]["PostingDate"].ToString(); che09.RefDocNo = SAPUIHelper.SubString(16, dstPosting.Tables[0].Rows[0]["DocumentNo"].ToString()); che09.Active = true; che09.CreBy = 1; che09.CreDate = DateTime.Now; che09.UpdBy = 1; che09.UpdDate = DateTime.Now; che09.UpdPgm = "RemetancePosting"; BapiServiceProvider.Bapiache09Service.Save(che09); #endregion HEAD #region Foolter Bapiacextc cextc = new Bapiacextc(); cextc.DocId = DocID; cextc.DocSeq = "M"; cextc.DocKind = DocKind; cextc.Field1 = PostingConst.BRNCH; cextc.Field2 = dstPosting.Tables[0].Rows[0]["BranchCode"].ToString(); cextc.Active = true; cextc.CreBy = 1; cextc.CreDate = DateTime.Now; cextc.UpdBy = 1; cextc.UpdDate = DateTime.Now; cextc.UpdPgm = "RemetancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc); Bapiacextc cextc1 = new Bapiacextc(); cextc1.DocId = DocID; cextc1.DocSeq = "M"; cextc1.DocKind = DocKind; cextc1.Field1 = PostingConst.VAT; cextc1.Field2 = TaxCodeConst.NV; cextc1.Active = true; cextc1.CreBy = 1; cextc1.CreDate = DateTime.Now; cextc1.UpdBy = 1; cextc1.UpdDate = DateTime.Now; cextc1.UpdPgm = "RemetancePosting"; BapiServiceProvider.BapiacextcService.Save(cextc1); #endregion Foolter #region คู่บัญชี int intSeq = 0; for (int i = 0; i < dstPosting.Tables[0].Rows.Count; i++) { if (!repOffice) { #region Credit intSeq++; Bapiacap09 capItem1 = new Bapiacap09(); capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = intSeq.ToString(); capItem1.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[i]["RequesterID"].ToString())).VendorCode; capItem1.AllocNmbr = dstPosting.Tables[0].Rows[i]["AdvanceNo"].ToString(); capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.ItemText = dstPosting.Tables[0].Rows[i]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[i]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; capItem1.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[i]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "RemetancePosting"; BapiServiceProvider.Bapiacap09Service.Save(capItem1); Bapiaccr09 accrItem1 = new Bapiaccr09(); accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = intSeq.ToString(); accrItem1.Currency = PostingConst.Currency; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[i]["RemittanceAmount"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "RemetancePosting"; BapiServiceProvider.Bapiaccr09Service.Save(accrItem1); #endregion Credit #region Debit intSeq++; Bapiacgl09 cglItem2 = new Bapiacgl09(); cglItem2.DocId = DocID; cglItem2.DocSeq = "M"; cglItem2.DocKind = DocKind; cglItem2.ItemnoAcc = intSeq.ToString(); cglItem2.GlAccount = PostingConst.GLAccount; cglItem2.AllocNmbr = dstPosting.Tables[0].Rows[i]["AdvanceNo"].ToString(); cglItem2.AllocNmbr = SAPUIHelper.SubString18(cglItem2.AllocNmbr); cglItem2.ItemText = dstPosting.Tables[0].Rows[i]["Description"].ToString(); cglItem2.ItemText = SAPUIHelper.SubString50(cglItem2.ItemText); if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { cglItem2.BusArea = dstPosting.Tables[0].Rows[i]["BusinessArea"].ToString(); } cglItem2.Active = true; cglItem2.CreBy = 1; cglItem2.CreDate = DateTime.Now; cglItem2.UpdBy = 1; cglItem2.UpdDate = DateTime.Now; cglItem2.UpdPgm = "RemetancePosting"; BapiServiceProvider.Bapiacgl09Service.Save(cglItem2); Bapiaccr09 accrItem2 = new Bapiaccr09(); accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = intSeq.ToString(); accrItem2.Currency = PostingConst.Currency; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[i]["RemittanceAmount"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "RemetancePosting"; BapiServiceProvider.Bapiaccr09Service.Save(accrItem2); #endregion Debit } else //post RMT for rep office { #region Credit intSeq++; Bapiacap09 capItem1 = new Bapiacap09(); capItem1.DocId = DocID; capItem1.DocSeq = "M"; capItem1.DocKind = DocKind; capItem1.ItemnoAcc = intSeq.ToString(); capItem1.VendorNo = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[i]["RequesterID"].ToString())).VendorCode; capItem1.Pmnttrms = PostingConst.Pmnttrms; capItem1.BlineDate = dstPosting.Tables[0].Rows[i]["BaseLineDate"].ToString(); capItem1.PmntBlock = PostingConst.PmntBlock; capItem1.AllocNmbr = dstPosting.Tables[0].Rows[i]["AdvanceNo"].ToString(); capItem1.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem1.ItemText = dstPosting.Tables[0].Rows[i]["Description"].ToString(); capItem1.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem1.Businessplace = dstPosting.Tables[0].Rows[i]["BranchCode"].ToString(); capItem1.TaxCode = TaxCodeConst.NV; capItem1.SpGlInd = SpGlIndConst.D; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem1.BusArea = dstPosting.Tables[0].Rows[i]["BusinessArea"].ToString(); } capItem1.Active = true; capItem1.CreBy = 1; capItem1.CreDate = DateTime.Now; capItem1.UpdBy = 1; capItem1.UpdDate = DateTime.Now; capItem1.UpdPgm = "RemittancePosting"; BapiServiceProvider.Bapiacap09Service.Save(capItem1); Bapiaccr09 accrItem1 = new Bapiaccr09(); accrItem1.DocId = DocID; accrItem1.DocSeq = "M"; accrItem1.DocKind = DocKind; accrItem1.ItemnoAcc = intSeq.ToString(); accrItem1.Currency = mainCurrencySymbol; accrItem1.AmtDoccur = 0 - decimal.Parse(dstPosting.Tables[0].Rows[i]["RemittanceAmountMainCurrency"].ToString()); accrItem1.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[i]["ExchangeRateMainToTHB"].ToString()); accrItem1.Active = true; accrItem1.CreBy = 1; accrItem1.CreDate = DateTime.Now; accrItem1.UpdBy = 1; accrItem1.UpdDate = DateTime.Now; accrItem1.UpdPgm = "RemittancePosting"; BapiServiceProvider.Bapiaccr09Service.Save(accrItem1); #endregion Credit #region Debit intSeq++; Bapiacap09 capItem2 = new Bapiacap09(); capItem2.DocId = DocID; capItem2.DocSeq = "M"; capItem2.DocKind = DocKind; capItem2.ItemnoAcc = intSeq.ToString(); capItem2.VendorNo = dstPosting.Tables[0].Rows[i]["PBCode"].ToString(); capItem2.PmntBlock = PostingConst.PmntBlock; capItem2.Pmnttrms = PostingConst.Pmnttrms; capItem2.BlineDate = dstPosting.Tables[0].Rows[i]["BaseLineDate"].ToString(); capItem2.AllocNmbr = SAPUIHelper.GetEmployee(long.Parse(dstPosting.Tables[0].Rows[i]["RequesterID"].ToString())).EmployeeName; capItem2.AllocNmbr = SAPUIHelper.SubString18(capItem1.AllocNmbr); capItem2.ItemText = dstPosting.Tables[0].Rows[i]["Description"].ToString(); capItem2.ItemText = SAPUIHelper.SubString50(capItem1.ItemText); capItem2.Businessplace = dstPosting.Tables[0].Rows[i]["BranchCode"].ToString(); capItem2.TaxCode = TaxCodeConst.NV; if (bool.Parse(dstPosting.Tables[0].Rows[0]["RequireBusinessArea"].ToString())) { capItem2.BusArea = dstPosting.Tables[0].Rows[i]["BusinessArea"].ToString(); } capItem2.Active = true; capItem2.CreBy = 1; capItem2.CreDate = DateTime.Now; capItem2.UpdBy = 1; capItem2.UpdDate = DateTime.Now; capItem2.UpdPgm = "RemittancePosting"; BapiServiceProvider.Bapiacap09Service.Save(capItem2); Bapiaccr09 accrItem2 = new Bapiaccr09(); accrItem2.DocId = DocID; accrItem2.DocSeq = "M"; accrItem2.DocKind = DocKind; accrItem2.ItemnoAcc = intSeq.ToString(); accrItem2.Currency = mainCurrencySymbol; accrItem2.AmtDoccur = decimal.Parse(dstPosting.Tables[0].Rows[i]["RemittanceAmountMainCurrency"].ToString()); accrItem2.ExchRate = decimal.Parse(dstPosting.Tables[0].Rows[i]["ExchangeRateMainToTHB"].ToString()); accrItem2.Active = true; accrItem2.CreBy = 1; accrItem2.CreDate = DateTime.Now; accrItem2.UpdBy = 1; accrItem2.UpdDate = DateTime.Now; accrItem2.UpdPgm = "RemittancePosting"; BapiServiceProvider.Bapiaccr09Service.Save(accrItem2); #endregion Debit } } #endregion คู่บัญชี } }
public void BindDifferenceAmountSummary() { FnExpenseDocumentService.CalculateTotalExpense(this.TransactionId, this.ExpDocumentID, IsRepOffice); FnExpenseDocumentService.CalculateDifferenceAmount(this.TransactionId, this.ExpDocumentID, IsRepOffice); ExpenseDataSet expDS = (ExpenseDataSet)TransactionService.GetDS(this.TransactionId); if (expDS != null) { ExpenseDataSet.FnExpenseDocumentRow expRow = expDS.FnExpenseDocument.FindByExpenseID(this.ExpDocumentID); if (expRow != null) { if (!IsRepOffice) { DivTotalSummaryForThailand.Style["display"] = "block"; DivTotalSummaryForRepOffice.Style["display"] = "none"; ctlTotalExpense.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalExpense.ToString()); ctlTotalExpense.ForeColor = expRow.TotalExpense < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalAdvance.Text = UIHelper.BindDecimalNumberAccountFormat((-1 * expRow.TotalAdvance).ToString()); ctlTotalAdvance.ForeColor = (-1 * expRow.TotalAdvance) < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalRemitted.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalRemittance.ToString()); ctlTotalRemitted.ForeColor = expRow.TotalRemittance < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlDifferenceAmount.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.DifferenceAmount.ToString()); ctlDifferenceAmount.ForeColor = expRow.DifferenceAmount < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; } else { DivTotalSummaryForThailand.Style["display"] = "none"; DivTotalSummaryForRepOffice.Style["display"] = "block"; ctlTHBCurrencyTab.Visible = false; ctlMainCurrencyTab.Visible = false; if (CounterCashierID.HasValue) { Dbpb pb = ScgDbQueryProvider.DbPBQuery.FindByIdentity(CounterCashierID.Value); DbCurrency localCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(LocalCurrencyID.HasValue ? LocalCurrencyID.Value : (short)0); DbCurrency mainCurrency = SsDbQueryProvider.DbCurrencyQuery.FindByIdentity(pb.MainCurrencyID.HasValue ? pb.MainCurrencyID.Value : (short)0); if (localCurrency != null) { ctlLocalCurrencyTab.HeaderText = localCurrency.Symbol; } if (mainCurrency != null) { ctlMainCurrencyTab.HeaderText = mainCurrency.Symbol; } } #region Amount LocalCurrency Tab ctlLocalCurrencyTab.Visible = true; ctlTotalExpenseLocal.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalExpenseLocalCurrency.ToString()); ctlTotalExpenseLocal.ForeColor = expRow.TotalExpenseLocalCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; if (!expRow.IsTotalAdvanceLocalCurrencyNull()) { ctlTotalAdvanceLocal.Text = UIHelper.BindDecimalNumberAccountFormat((-1 * expRow.TotalAdvanceLocalCurrency).ToString()); ctlTotalAdvanceLocal.ForeColor = (-1 * expRow.TotalAdvanceLocalCurrency) < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; } if (!expRow.IsTotalRemittanceLocalCurrencyNull()) { ctlTotalRemittanceLocal.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalRemittanceLocalCurrency.ToString()); ctlTotalRemittanceLocal.ForeColor = expRow.TotalRemittanceLocalCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; } if (!expRow.IsDifferenceAmountLocalCurrencyNull()) { ctlDifferenceAmtLocal.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.DifferenceAmountLocalCurrency.ToString()); ctlDifferenceAmtLocal.ForeColor = expRow.DifferenceAmountLocalCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; } #endregion SS.Standard.WorkFlow.DTO.WorkFlow workflow = SS.Standard.WorkFlow.Query.WorkFlowQueryProvider.WorkFlowQuery.GetWorkFlowByDocumentID(expRow.DocumentID); if (workflow != null && workflow.CurrentState.Ordinal >= 5) { if (UserAccount.IsAccountant || UserAccount.IsPayment) { #region Amount MainCurrency Tab if (expRow.LocalCurrencyID != expRow.MainCurrencyID) { ctlMainCurrencyTab.Visible = true; } ctlTotalExpenseMainCurrency.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalExpenseMainCurrency.ToString()); ctlTotalExpenseMainCurrency.ForeColor = expRow.TotalExpenseMainCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalAdvanceMainCurrency.Text = UIHelper.BindDecimalNumberAccountFormat((-1 * expRow.TotalAdvanceMainCurrency).ToString()); ctlTotalAdvanceMainCurrency.ForeColor = (-1 * expRow.TotalAdvanceMainCurrency) < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalRemittanceMainCurrency.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalRemittanceMainCurrency.ToString()); ctlTotalRemittanceMainCurrency.ForeColor = expRow.TotalRemittanceMainCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlDifferenceAmtMainCurrency.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.DifferenceAmountMainCurrency.ToString()); ctlDifferenceAmtMainCurrency.ForeColor = expRow.DifferenceAmountMainCurrency < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; #endregion #region Amount THB Currency Tab ctlTHBCurrencyTab.Visible = true; ctlTotalExpenseTHB.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalExpense.ToString()); ctlTotalExpenseTHB.ForeColor = expRow.TotalExpense < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalAdvanceTHB.Text = UIHelper.BindDecimalNumberAccountFormat((-1 * expRow.TotalAdvance).ToString()); ctlTotalAdvanceTHB.ForeColor = (-1 * expRow.TotalAdvance) < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlTotalRemittanceTHB.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.TotalRemittance.ToString()); ctlTotalRemittanceTHB.ForeColor = expRow.TotalRemittance < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; ctlDifferenceAmtTHB.Text = UIHelper.BindDecimalNumberAccountFormat(expRow.DifferenceAmount.ToString()); ctlDifferenceAmtTHB.ForeColor = expRow.DifferenceAmount < 0 ? System.Drawing.Color.Red : System.Drawing.Color.Black; #endregion } } } } } }