Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics GP (Archived)

Payment Term does not exist error number=7030

(0) ShareShare
ReportReport
Posted on by 110

Error showing when updating the price details against orderid

we using eConnect_EntryPoint  method for update price details.

when we pass all details which include customer id and customer payment id and order details its throwing below error:

Sql procedure error codes returned:

Error Number = 7030  Stored Procedure taSopHdrRecalc  Error Description = Payment Term does not exist
Node Identifier Parameters: taSopHdrRecalc                                     
SOPNUMBE = ORD0010272
SOPTYPE = 2

Please guide me to resolve this..

Thanks in Advance..

*This post is locked for comments

  • Suggested answer
    soma Profile Picture
    soma 24,408 on at
    RE: Payment Term does not exist error number=7030

    Pass "UpdateExisting = 1" in the header section salesHdr like as shown below then try again.

    salesHdr.UpdateExisting  = 1;

    Note: Also no need to pass the PYMTRMID = "COMPANY CHECK" if the customer ACP001 mapped with this COMPANY CHECK payment terms in customer maintenance.

    Hope this helps!!!

  • Deenuji Profile Picture
    Deenuji 110 on at
    RE: Payment Term does not exist error number=7030

    I am doing order fulfillment process which already i created order for some customer now i need to allocate some serial number against this order.

    In GP sales Serial Number Entry we have serial number in available list i want to allocate serial number based on the qty from available serial to allocated serial which thing i wanna achieve through asp.net application using econnect service.

    I tried with following code but getting error

    "7030- Payment term doesnot exist"

    For order fulfillment process i checked with SOPTYPE=2 and 6 but failed to reach.

    using System;

    using System.Xml;

    using System.Xml.Serialization;

    using System.IO;

    using System.Text;

    using Microsoft.Dynamics.GP.eConnect;

    using Microsoft.Dynamics.GP.eConnect.Serialization;

    using System.Web.UI.WebControls;

    using System.Configuration;

    using Microsoft.Dynamics.GP.eConnect.MiscRoutines;

    namespace EconnectSample

    {

       public partial class WebForm1 : System.Web.UI.Page

       {

           protected void Page_Load(object sender, EventArgs e)

           {

           }

           protected void Button1_Click(object sender, EventArgs e)

           {

               string salesOrderDocument;

               string sConnectionString;

               bool eResult;

               eConnectMethods eConCall = new eConnectMethods();

               try

               {

                   // Call the SerializeSalesOrderObject subroutine and specify

                   // a file name

                   SerializeSalesOrderObject("SalesOrder.xml");

                   // Create an XML document object and load it with the XML from the

                   // file that the SerializeSalesOrder subroutine created

                   XmlDocument xmldoc = new XmlDocument();

                   xmldoc.Load("SalesOrder.xml");

                   salesOrderDocument = xmldoc.OuterXml;

                   string csName = ConfigurationManager.AppSettings["eConnectConnStringName"];

                   string cs = ConfigurationManager.ConnectionStrings[csName].ToString();

                   eResult = eConCall.eConnect_EntryPoint(cs, EnumTypes.ConnectionStringType.SqlClient, salesOrderDocument, EnumTypes.SchemaValidationType.None, "");

                   if (eResult)

                   {

                       //   logger.Debug("Magento Order Succecssfully integrated");

                       //SendMail(strSOPNumber, magentoOrder.order_id);

                   }

                   else

                   {

                       //  LogManager.GetLogger("Mail").Error(ex);

                   }

               }

               catch (eConnectException exp)

               {

               }

               catch (System.Exception ex)

               {

               }

               finally

               {

                   eConCall.Dispose();

               }

           }

             public string GetNextSopNumber(int sopType, string docId, string strOrder)

           {

               string strSOPNumber = "";

               string csName = ConfigurationManager.AppSettings["eConnectConnStringName"];

               string cs = ConfigurationManager.ConnectionStrings[csName].ToString();

               //EventLog.WriteEntry("Time", cs);

               GetNextDocNumbers GetNxtNo = new GetNextDocNumbers();

               if (strOrder == "Order")

               {

                   strSOPNumber = GetNxtNo.GetNextSOPNumber(GetNextDocNumbers.IncrementDecrement.Increment, "ORDER", GetNextDocNumbers.SopType.SOPOrder, cs);

               }

               else

               {

                   strSOPNumber = GetNxtNo.GetNextSOPNumber(GetNextDocNumbers.IncrementDecrement.Increment, "INV", GetNextDocNumbers.SopType.SOPInvoice, cs);

               }

               return strSOPNumber;

           }

             void SerializeSalesOrderObject(string filename)

             {

                 SOPTransactionType salesOrder = new SOPTransactionType();

                 taSopSerial_ItemsTaSopSerial serialno = new taSopSerial_ItemsTaSopSerial();

                 taSopLineIvcInsert_ItemsTaSopLineIvcInsert salesLine = new taSopLineIvcInsert_ItemsTaSopLineIvcInsert();

                 taSopLineIvcInsert_ItemsTaSopLineIvcInsert salesLine2 = new taSopLineIvcInsert_ItemsTaSopLineIvcInsert();

                 taSopHdrIvcInsert salesHdr = new taSopHdrIvcInsert();

                 taSopLineIvcInsert_ItemsTaSopLineIvcInsert[] LineItems=new taSopLineIvcInsert_ItemsTaSopLineIvcInsert[1];

                 try

                 {

                     int countLine = 1;

                     GetNextDocNumbers GetNxtNo = new GetNextDocNumbers();

                     string strSalesDoc = "", strlocation = ""; ;

                     string csName = ConfigurationManager.AppSettings["eConnectConnStringName"];

                     string cs = ConfigurationManager.ConnectionStrings[csName].ToString();

                     bool eResult;

                     string strSOPNumber;

                     string strDociD = ConfigurationManager.AppSettings["GPOrderDocumentType"];

                     strSOPNumber = GetNextSopNumber(2, strDociD, "Order").Trim();

                     decimal dUnitPrice = 0;

                     string gpSku = null;

                     string gpSiteId = null;

                     gpSku = "BLB008330-10B2-ALBAL11A-0C/210";//magentoLineItem.sku;

                     string strValue = gpSku;

                     if (strValue.Contains("/"))

                     {

                         string[] strArray = strValue.Split('/');

                         gpSku = "BLB008330-10B2-ALBAL11A-0C";//strArray[0];

                         salesLine.SOPTYPE = Convert.ToByte(6);

                         salesLine.DOCID = "ORDER";

                         salesLine.SOPNUMBE = "ORD0010001";

                         salesLine.CUSTNMBR = "ABCP001";//OrderImportSettings.CustomerKey;

                         salesLine.DOCDATE = DateTime.Now.ToString("MM/dd/yyyy");

                         salesLine.ITEMNMBR = gpSku;

                         salesLine.QUANTITY = 1;

                         salesLine.AUTOALLOCATESERIAL = 1;

                         // ItemIVC.UOFM = "EACH";  

                         strlocation = "FINGOODS";

                         gpSiteId = strlocation.Trim();

                         dUnitPrice = 100;//(Math.Round(magentoLineItem.price ?? (0), 2));

                         salesLine.XTNDPRCE = dUnitPrice * salesLine.QUANTITY;

                         salesLine.UNITPRCE = dUnitPrice;

                         salesLine.LOCNCODE = gpSiteId;

                         salesLine.NONINVEN = 0;

                         salesLine.PRCLEVEL = "DEFAULT";

                         salesLine.UpdateIfExists = 1;                    

                         salesLine.ADDRESS1 = "xxx";

                         salesLine.CITY = "xxx";

                         salesLine.STATE = "NC";

                         salesLine.COUNTRY = "USA";

                        // salesLine.p

                        // salesLine.SOPTYPE = 3;  

                         salesLine.ITEMDESC = "";

                         LineItems[0] = salesLine;

                         object Preserve;

                         // salesOrder.taSopLineIvcInsert_Items(1);

                         salesOrder.taSopLineIvcInsert_Items = LineItems;

                         // Populate the elements of the taSopHdrIvcInsert XML node

                         // With...

                         // Today

                         salesHdr.SOPTYPE = Convert.ToByte(6);

                         salesHdr.PYMTRMID = "COMPANY CHECK";

                         salesHdr.ADDRESS1 = "703 SE GREENVILLE BLVD";

                         salesHdr.CITY = "GREENVILLE";

                         salesHdr.STATE = "NC";

                         salesHdr.COUNTRY = "USA";

                         salesHdr.CUSTNAME = "ABC";

                         salesHdr.CUSTNMBR = "ABCP001";

                         salesHdr.DOCID = "ORDER";

                         salesHdr.SOPNUMBE = "ORD0010001";

                         salesHdr.LOCNCODE = gpSiteId;

                         salesOrder.taSopHdrIvcInsert = salesHdr;

                         eConnectType eConnect = new eConnectType();

                         SOPTransactionType[] MySopTransactionType = { salesOrder };

                         eConnect.SOPTransactionType = MySopTransactionType;

                         FileStream fs = new FileStream(filename, FileMode.Create);

                         XmlTextWriter writer = new XmlTextWriter(fs, new UTF8Encoding());

                         // Serialize the eConnect document object to the file using the XmlTextWriter.

                         XmlSerializer serializer = new XmlSerializer(eConnect.GetType());

                         serializer.Serialize(writer, eConnect);

                         writer.Close();

                     }

                 }

                 catch (System.Exception ex)

                 {

                     //Console.Write(ex.ToString);

                 }

             }

       }

    }

    My Error:

    Sql procedure error codes returned:
    Error Number = 7030  Stored Procedure taSopHdrRecalc  Error Description = Payment Term does not exist
    Node Identifier Parameters: taSopHdrRecalc                                     
    SOPNUMBE = ORD0010665
    SOPTYPE = 2
    Related Error Code Parameters for Node : taSopHdrRecalc                                     
    PYMTRMID =  Note: This parameter was not passed in, no value for the parameter will be returned.


    Error Number = 1731  Stored Procedure taSopLineIvcInsert  Error Description = Unable to update SOP Header values
    Node Identifier Parameters: taSopLineIvcInsert                                 
    SOPNUMBE = ORD0010665
    SOPTYPE = 2
    Related Error Code Parameters for Node : taSopLineIvcInsert                                 
    UpdateIfExists = 1


    <taSopLineIvcInsert><SOPTYPE>2</SOPTYPE><SOPNUMBE>ORD0010665</SOPNUMBE><CUSTNMBR>ACP001</CUSTNMBR><DOCDATE>03/27/2015</DOCDATE><LOCNCODE>FINGOODS</LOCNCODE><ITEMNMBR>BLB00330-10B2-ALBAL11A-0C</ITEMNMBR><UNITPRCE>100</UNITPRCE><XTNDPRCE>100</XTNDPRCE><QUANTITY>1</QUANTITY><PRCLEVEL>DEFAULT</PRCLEVEL><DOCID>ORDER</DOCID><ADDRESS1>703 SE GREENVILLE BLVD</ADDRESS1><CITY>XXXX</CITY><STATE>YYY</STATE><COUNTRY>ZZZ</COUNTRY><AUTOALLOCATESERIAL>1</AUTOALLOCATESERIAL><UpdateIfExists>1</UpdateIfExists></taSopLineIvcInsert>

  • soma Profile Picture
    soma 24,408 on at
    RE: Payment Term does not exist error number=7030

    Yes. This is correct schema.

    Could you share you coding? so that we can easily identify your issues.

  • Deenuji Profile Picture
    Deenuji 110 on at
    RE: Payment Term does not exist error number=7030

    I have several work order id with multiple and single sku with multiple serial number .i want to do order fulfillment process for this work orders.

    taSopLineIvcInsert_ItemsTaSopLineIvcInsert class is correct class or not ??

    I want to move  all sales available serial items into selected items list through my asp.net (C#)application  using econnect

  • Suggested answer
    Mahmoud Saadi Profile Picture
    Mahmoud Saadi 32,738 on at
    RE: Payment Term does not exist error number=7030

    You need to check the customer card, which includes a field for the payment terms. Apparently, the one you are passing is not one of the predefined terms in GP.

    Another option, why do you need to pass it anyway since you are just updating the prices with this schema ?

    If I am not mistaken, the. Schema which you are using is the SOP recalc one, which doesn't require the payment terms .

    Your feedback is highly appreciated,

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Payment Term does not exist error number=7030

    Did you check the Payment Term exists in GP?

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Congratulations 2024 Spotlight Honorees

Kudos to all of our 2024 community stars! 🎉

Meet the Top 10 leaders for December

Congratulations to our December super stars! 🥳

Start Your Super User Journey

Join the ranks of our community heros! 🦹

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,711 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,458 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans