private void addBillTo(SAPbobsCOM.BusinessPartners bp) { int addressFound = 0; int addressCNt = 0; for (int i = 0; i < bp.Addresses.Count; i++) { bp.Addresses.SetCurrentLine(i); if (bp.Addresses.AddressName == dtCard.GetValue("BName", 0) && bp.Addresses.AddressType == SAPbobsCOM.BoAddressType.bo_BillTo) { bp.Addresses.Street = dtCard.GetValue("BStPO", 0).ToString(); bp.Addresses.City = dtCard.GetValue("BCity", 0).ToString(); string statecode = StateCode(dtCard.GetValue("BState", 0).ToString()); if (statecode != "") { bp.Addresses.State = statecode; } bp.Addresses.ZipCode = dtCard.GetValue("BZip", 0).ToString(); addressFound = 1; } addressCNt++; } if (addressFound == 0) { bp.Addresses.Add(); bp.Addresses.SetCurrentLine(addressCNt); bp.Addresses.AddressType = SAPbobsCOM.BoAddressType.bo_BillTo; bp.Addresses.AddressName = dtCard.GetValue("BName", 0).ToString(); bp.Addresses.Street = dtCard.GetValue("BStPO", 0).ToString(); bp.Addresses.City = dtCard.GetValue("BCity", 0).ToString(); bp.Addresses.TaxCode = "EX"; string statecode = StateCode(dtCard.GetValue("BState", 0).ToString()); if (statecode != "") { bp.Addresses.State = statecode; } bp.Addresses.ZipCode = dtCard.GetValue("BZip", 0).ToString(); } bp.Update(); }
private void addShipTo(SAPbobsCOM.BusinessPartners bp) { int addressFound = 0; int addressCnt = 0; for (int i = 0; i < bp.Addresses.Count; i++) { bp.Addresses.SetCurrentLine(i); if (bp.Addresses.AddressName == "S-" + dtCard.GetValue("SName", 0) && bp.Addresses.AddressType == SAPbobsCOM.BoAddressType.bo_ShipTo) { bp.Addresses.ZipCode = dtCard.GetValue("SZip", 0).ToString(); bp.Addresses.AddressType = SAPbobsCOM.BoAddressType.bo_ShipTo; bp.Addresses.Street = dtCard.GetValue("SStPO", 0).ToString(); bp.Addresses.City = dtCard.GetValue("SCity", 0).ToString(); // bp.Addresses.TaxCode = "EX"; string statecode = StateCode(dtCard.GetValue("SState", 0).ToString()); if (statecode != "") { bp.Addresses.State = statecode; } addressFound = 1; } addressCnt++; } if (addressFound == 0) { bp.Addresses.Add(); bp.Addresses.SetCurrentLine(addressCnt); bp.Addresses.AddressName = "S-" + dtCard.GetValue("SName", 0); bp.Addresses.ZipCode = dtCard.GetValue("SZip", 0).ToString(); bp.Addresses.AddressType = SAPbobsCOM.BoAddressType.bo_ShipTo; bp.Addresses.Street = dtCard.GetValue("SStPO", 0).ToString(); bp.Addresses.City = dtCard.GetValue("SCity", 0).ToString(); // bp.Addresses.TaxCode = "EX"; string statecode = StateCode(dtCard.GetValue("SState", 0).ToString()); if (statecode != "") { bp.Addresses.State = statecode; } bp.Addresses.UserFields.Fields.Item("U_PhoneNum").Value = dtCard.GetValue("STel", 0).ToString();; // sTel == null ? "" : sTel; bp.Addresses.UserFields.Fields.Item("U_EMail").Value = dtCard.GetValue("BEmail", 0).ToString(); // sEmail == null ? "" : sEmail; } int result = bp.Update(); if (result != 0) { int erroCode = 0; string errDescr = ""; Program.objHrmsUI.oCompany.GetLastError(out erroCode, out errDescr); if (errDescr.Contains("This entry already exists in the following tables")) { } else { oApplication.StatusBar.SetText("Failed to post Order : " + errDescr); } } else { // oApplication.StatusBar.SetText("Sales Order Posted Successfully for " + dtORDR.GetValue("WBID", 0), BoMessageTime.bmt_Short, BoStatusBarMessageType.smt_Success); } }
public async Task <IActionResult> PostBPMaster(BusinessPartnerVM VM) { bool IsCreate = true, IsRecordFound = false; SAPEntity.Instance.InitializeCompany(); if (SAPEntity.Company.Connected) { SAPbobsCOM.BusinessPartners SAPBusinessPartner = (SAPbobsCOM.BusinessPartners)SAPEntity.Company.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBusinessPartners); if (!string.IsNullOrEmpty(VM.cardcode) && SAPBusinessPartner.GetByKey(VM.cardcode)) { IsCreate = false; } else { SAPBusinessPartner.CardCode = _BPrepo.GetNewCardCodeForLead("L"); SAPBusinessPartner.CardType = BoCardTypes.cLid; } if (VM.Type == "Portfolio") { SAPBusinessPartner.CardType = BoCardTypes.cCustomer; } SAPBusinessPartner.CardName = VM.cardname; SAPBusinessPartner.EmailAddress = VM.email; SAPBusinessPartner.Website = VM.website; SAPBusinessPartner.Phone1 = VM.telephone; SAPBusinessPartner.Notes = VM.sector; SAPBusinessPartner.Currency = VM.currency; SAPBusinessPartner.FreeText = VM.Notes; //adress for (var i = 0; i <= SAPBusinessPartner.Addresses.Count - 1; i++) { IsRecordFound = false; SAPBusinessPartner.Addresses.SetCurrentLine(i); if (SAPBusinessPartner.Addresses.AddressName == VM.temp_address && SAPBusinessPartner.Addresses.AddressType == BoAddressType.bo_ShipTo && SAPBusinessPartner.Addresses.RowNum == Convert.ToInt32(VM.lineNum) && SAPBusinessPartner.Addresses.BPCode == SAPBusinessPartner.CardCode) { IsRecordFound = true; break; } } if (!IsRecordFound) { SAPBusinessPartner.Addresses.SetCurrentLine(SAPBusinessPartner.Addresses.Count - 1); if (!string.IsNullOrEmpty(SAPBusinessPartner.Addresses.AddressName)) { SAPBusinessPartner.Addresses.Add(); } SAPBusinessPartner.Addresses.SetCurrentLine(SAPBusinessPartner.Addresses.Count - 1); } SAPBusinessPartner.Addresses.SetCurrentLine(SAPBusinessPartner.Addresses.Count - 1); SAPBusinessPartner.Addresses.AddressType = BoAddressType.bo_ShipTo; SAPBusinessPartner.Addresses.AddressName = VM.adressname; SAPBusinessPartner.Addresses.Street = VM.street; SAPBusinessPartner.Addresses.AddressName2 = VM.landmark; SAPBusinessPartner.Addresses.Country = VM.country; SAPBusinessPartner.Addresses.State = VM.state; SAPBusinessPartner.Addresses.City = VM.city; SAPBusinessPartner.Addresses.ZipCode = VM.zipcode; //GST if (!string.IsNullOrEmpty(VM.gstin)) { SAPBusinessPartner.Addresses.GstType = BoGSTRegnTypeEnum.gstRegularTDSISD; SAPBusinessPartner.Addresses.GSTIN = VM.gstin; } //Contact person if (!string.IsNullOrEmpty(VM.pfname)) { IsRecordFound = false; for (var i = 0; i <= SAPBusinessPartner.ContactEmployees.Count - 1; i++) { SAPBusinessPartner.ContactEmployees.SetCurrentLine(i); if (SAPBusinessPartner.ContactEmployees.InternalCode == Convert.ToInt32(VM.pcntctCode)) { IsRecordFound = true; SAPBusinessPartner.ContactEmployees.SetCurrentLine(i); break; } } if (!IsRecordFound) { SAPBusinessPartner.ContactEmployees.SetCurrentLine(SAPBusinessPartner.ContactEmployees.Count - 1); if (!string.IsNullOrEmpty(SAPBusinessPartner.ContactEmployees.Name)) { SAPBusinessPartner.ContactEmployees.Add(); } SAPBusinessPartner.ContactEmployees.SetCurrentLine(SAPBusinessPartner.ContactEmployees.Count - 1); } SAPBusinessPartner.ContactEmployees.Name = VM.pfname + " " + VM.plname; SAPBusinessPartner.ContactEmployees.FirstName = VM.pfname; SAPBusinessPartner.ContactEmployees.LastName = VM.plname; SAPBusinessPartner.ContactEmployees.MobilePhone = VM.pmobile; SAPBusinessPartner.ContactEmployees.E_Mail = VM.pemail; SAPBusinessPartner.ContactEmployees.Phone1 = VM.ptel; SAPBusinessPartner.ContactEmployees.Position = VM.pposition; } if (!string.IsNullOrEmpty(VM.sfname)) { IsRecordFound = false; for (var i = 0; i <= SAPBusinessPartner.ContactEmployees.Count - 1; i++) { SAPBusinessPartner.ContactEmployees.SetCurrentLine(i); if (SAPBusinessPartner.ContactEmployees.InternalCode == Convert.ToInt32(VM.scntctCode)) { IsRecordFound = true; SAPBusinessPartner.ContactEmployees.SetCurrentLine(i); break; } } if (!IsRecordFound) { SAPBusinessPartner.ContactEmployees.SetCurrentLine(SAPBusinessPartner.ContactEmployees.Count - 1); if (!string.IsNullOrEmpty(SAPBusinessPartner.ContactEmployees.Name)) { SAPBusinessPartner.ContactEmployees.Add(); } SAPBusinessPartner.ContactEmployees.SetCurrentLine(SAPBusinessPartner.ContactEmployees.Count - 1); } SAPBusinessPartner.ContactEmployees.Title = "Mr/Mrs"; SAPBusinessPartner.ContactEmployees.Name = VM.sfname + " " + VM.slname; SAPBusinessPartner.ContactEmployees.FirstName = VM.sfname; SAPBusinessPartner.ContactEmployees.LastName = VM.slname; SAPBusinessPartner.ContactEmployees.MobilePhone = VM.smobile; SAPBusinessPartner.ContactEmployees.E_Mail = VM.semail; SAPBusinessPartner.ContactEmployees.Phone1 = VM.stel; SAPBusinessPartner.ContactEmployees.Position = VM.sposition; } if (!string.IsNullOrEmpty(VM.pan)) { IsRecordFound = false; for (var i = 0; i <= SAPBusinessPartner.FiscalTaxID.Count - 1; i++) { SAPBusinessPartner.FiscalTaxID.SetCurrentLine(i); if (SAPBusinessPartner.FiscalTaxID.BPCode == SAPBusinessPartner.CardCode && SAPBusinessPartner.FiscalTaxID.Address == SAPBusinessPartner.Address) { IsRecordFound = true; break; } } if (!IsRecordFound) { SAPBusinessPartner.FiscalTaxID.SetCurrentLine(SAPBusinessPartner.FiscalTaxID.Count - 1); if (!string.IsNullOrEmpty(SAPBusinessPartner.FiscalTaxID.BPCode)) { SAPBusinessPartner.FiscalTaxID.Add(); } SAPBusinessPartner.FiscalTaxID.SetCurrentLine(SAPBusinessPartner.FiscalTaxID.Count - 1); } SAPBusinessPartner.FiscalTaxID.TaxId0 = VM.pan; } if (IsCreate) { if (SAPBusinessPartner.Add() == 0) { string ObjCode; SAPEntity.Company.GetNewObjectCode(out ObjCode); return(StatusCode(201)); } else { string Message = SAPEntity.Company.GetLastErrorDescription(); return(BadRequest(Message)); } } else { if (SAPBusinessPartner.Update() == 0) { string ObjCode; SAPEntity.Company.GetNewObjectCode(out ObjCode); return(StatusCode(201)); } else { string Message = SAPEntity.Company.GetLastErrorDescription(); return(BadRequest(Message)); } } } return(BadRequest("not able to connect sap.")); }