Beispiel #1
0
        public string addBp()
        {
            string result = "";

            SAPbobsCOM.BusinessPartners defbp = (SAPbobsCOM.BusinessPartners)Program.objHrmsUI.oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBusinessPartners);

            defbp.GetByKey("W-00006935");


            SAPbobsCOM.BusinessPartners bp = (SAPbobsCOM.BusinessPartners)Program.objHrmsUI.oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBusinessPartners);


            bp.CardCode = dtCard.GetValue("CardCode", 0).ToString();;
            bp.CardType = SAPbobsCOM.BoCardTypes.cCustomer;
            bp.CardName = dtCard.GetValue("BName", 0).ToString();;

            bp.Phone1       = dtCard.GetValue("CTel", 0).ToString();;
            bp.EmailAddress = dtCard.GetValue("CEmail", 0).ToString();;
            bp.FederalTaxID = "EX";



            bp.GroupCode           = defbp.GroupCode;
            bp.PayTermsGrpCode     = defbp.PayTermsGrpCode;
            bp.DownPaymentClearAct = defbp.DownPaymentClearAct;
            bp.DefaultAccount      = defbp.DefaultAccount;
            bp.DebitorAccount      = defbp.DebitorAccount;



            bp.ContactEmployees.Name   = dtCard.GetValue("CNID", 0).ToString();;
            bp.ContactEmployees.Phone1 = dtCard.GetValue("CNTel", 0).ToString();;
            bp.ContactEmployees.E_Mail = dtCard.GetValue("CNEmail", 0).ToString();;

            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();;
            string statecode = StateCode(dtCard.GetValue("BState", 0).ToString());

            if (statecode != "")
            {
                bp.Addresses.State = statecode;
            }
            bp.Addresses.ZipCode = dtCard.GetValue("BZip", 0).ToString();;
            bp.Addresses.UserFields.Fields.Item("U_PhoneNum").Value = dtCard.GetValue("BTel", 0).ToString();;
            bp.Addresses.UserFields.Fields.Item("U_EMail").Value    = dtCard.GetValue("BEmail", 0).ToString();;
            bp.Addresses.TaxCode = "EX";
            bp.Addresses.Add();

            bp.Addresses.AddressType = SAPbobsCOM.BoAddressType.bo_ShipTo;
            bp.Addresses.AddressName = "S-" + dtCard.GetValue("SName", 0).ToString();;
            bp.Addresses.Street      = dtCard.GetValue("SStPO", 0).ToString();;
            bp.Addresses.City        = dtCard.GetValue("SCity", 0).ToString();;
            statecode = StateCode(dtCard.GetValue("SState", 0).ToString()).ToString();;
            if (statecode != "")
            {
                bp.Addresses.State = statecode;
            }

            bp.Addresses.ZipCode = dtCard.GetValue("SZip", 0).ToString();
            bp.Addresses.UserFields.Fields.Item("U_PhoneNum").Value = dtCard.GetValue("STel", 0);
            bp.Addresses.UserFields.Fields.Item("U_EMail").Value    = dtCard.GetValue("SEmail", 0);
            bp.Addresses.TaxCode = "EX";
            bp.Addresses.Add();


            int bpSuccess = bp.Add();

            if (bpSuccess != 0)
            {
                int    erroCode = 0;
                string errDescr = "";
                Program.objHrmsUI.oCompany.GetLastError(out erroCode, out errDescr);
                oApplication.StatusBar.SetText("Failed to add BP : " + errDescr);
            }
            return(result);
        }
Beispiel #2
0
        public string postDocument()
        {
            Program.objHrmsUI.loadSettings();
            string outStr  = "";
            string TaxCode = Program.objHrmsUI.getSetting("TAX").ToString();

            try
            {
                if (dtORDR.Rows.Count == 0)
                {
                    return("No Items");
                }

                SAPbobsCOM.Documents        Doc = (SAPbobsCOM.Documents)Program.objHrmsUI.oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oPurchaseOrders);
                SAPbobsCOM.BusinessPartners bp  = (SAPbobsCOM.BusinessPartners)Program.objHrmsUI.oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBusinessPartners);

                bool bpexist = bp.GetByKey(dtHead.GetValue("CardCode", 0).ToString());


                Doc.CardCode   = dtHead.GetValue("CardCode", 0).ToString();
                Doc.DocDate    = Convert.ToDateTime(dtHead.GetValue("InvDate", 0));
                Doc.DocDueDate = Convert.ToDateTime(dtHead.GetValue("InvDate", 0));
                // Doc.SalesPersonCode = Convert.ToInt16( Program.objHrmsUI.settings["WebSlpCode"].ToString());
                Doc.PickRemark      = "LTD A/R Invoice " + dtHead.GetValue("InvNum", 0).ToString(); // dtORDR.GetValue("NumAtCard", 0).ToString();
                Doc.NumAtCard       = "LTD Inv # " + dtHead.GetValue("InvNum", 0).ToString();
                Doc.Comments        = dtHead.GetValue("REM", 0).ToString();
                Doc.DiscountPercent = Convert.ToDouble(dtHead.GetValue("DP", 0));
                int ItemLineNum = -1;
                for (int i = 0; i < dtRDR1.Rows.Count; i++)
                {
                    if (dtRDR1.GetValue("ItemCode", i).ToString() != "")
                    {
                        Doc.Lines.ItemCode        = dtRDR1.GetValue("ItemCode", i).ToString();
                        Doc.Lines.ItemDescription = dtRDR1.GetValue("ItemName", i).ToString(); //rs.Fields.Item("ItemName").Value;
                        Doc.Lines.Quantity        = Convert.ToDouble(dtRDR1.GetValue("Qty", i));
                        Doc.Lines.UnitPrice       = Convert.ToDouble(dtRDR1.GetValue("Price", i));
                        Doc.Lines.DiscountPercent = Convert.ToDouble(dtRDR1.GetValue("DiscP", i));
                        Doc.Lines.UoMEntry        = getUomEntry(dtRDR1.GetValue("UOM", i).ToString());
                        // Doc.Lines.VatGroup = TaxCode.ToString();
                        Doc.Lines.TaxCode = TaxCode;
                        Doc.Lines.Add();
                        ItemLineNum++;
                    }
                    else
                    {
                        Doc.SpecialLines.LineType        = SAPbobsCOM.BoDocSpecialLineType.dslt_Text;
                        Doc.SpecialLines.LineText        = dtRDR1.GetValue("ItemName", i).ToString();
                        Doc.SpecialLines.AfterLineNumber = ItemLineNum;
                        Doc.SpecialLines.Add();
                    }
                }

                try
                {
                    if (Doc.Add() != 0)
                    {
                        int    erroCode = 0;
                        string errDescr = "";
                        Program.objHrmsUI.oCompany.GetLastError(out erroCode, out errDescr);
                        outStr = "Error:" + errDescr + outStr;
                        oApplication.StatusBar.SetText("Failed to post Order : " + errDescr);
                    }
                    else
                    {
                        outStr = Convert.ToString(Program.objHrmsUI.oCompany.GetNewObjectKey());
                    }
                }
                catch (Exception ex)
                {
                    oApplication.StatusBar.SetText("Failed in Exec Query on Posting Document.  : " + ex.Message);
                }
                finally
                {
                }
            }

            catch (Exception ex)
            {
                oApplication.SetStatusBarMessage("Error in posting document : " + ex.Message);
            }
            return(outStr);
        }
Beispiel #3
0
        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."));
        }