Question

The following code helps to import a sales line to an invoice:

        Dim LineItems(dtItem.Rows.Count) As taSopLineIvcInsert_ItemsTaSopLineIvcInsert
        Dim salesLine As New taSopLineIvcInsert_ItemsTaSopLineIvcInsert

        'Create Invoice Sales lines
        For Each dr In dtItem.Rows

            With salesLine
                .CUSTNMBR = dr.Item("acctno")
                .SOPNUMBE = invoiceNumber
                .SOPTYPE = 3
                .DOCID = "STD INV"
                .QUANTITY = dr.Item("Qty")
                .ITEMNMBR = dr.Item("Item")
                .ITEMDESC = dr.Item("Memo")
                .UNITPRCE = dr.Item("SalesPrice")
                .XTNDPRCE = dr.Item("Credit")
                .TAXAMNT = 0
                .UOFM = "Each" 
                .SALSTERR = "GENERAL"
                .ReqShipDate = dtHdr.Rows(0).Item("InvoiceDate").ToString()
                .FUFILDAT = dr.Item("Date1").ToString()
                .ACTLSHIP = dr.Item("Date1").ToString()
                '.NONINVEN = 0
                .DOCDATE = dtHdr.Rows(0).Item("InvoiceDate").ToString()
                .SLPRSNID = "C1" 
            End With

            LineItems(rowCtr) = salesLine
            rowCtr = rowCtr + 1
        Next

The fields for SLPRSNID & SALSTERR are just ignored. The invoice itself is being created with all the line items. ANY ideas from anyone with experience using this API are appreciated!

Was it helpful?

Solution

Since we are not integrating SOP commissions data, importing SLPRSNID & SALSTERR on line items using code like above is not supported. However, eConnect does expose pre and post stored procedures to customize business logic. The following was added in taSopHdrIvcInsertPost to implement the import:

/** Custom Business Logic */

if ((@I_vSLPRSNID <> '') and (@I_vSALSTERR <> '')) begin update SOP10200 set SLPRSNID = @I_vSLPRSNID, SALSTERR = @I_vSALSTERR where SOPNUMBE = @I_vSOPNUMBE and SOPTYPE = @I_vSOPTYPE end

/** Custom Business Logic */

NOTE: with this implementation, the specific SLPRSNID & SALSTERR will have to be provided to the line items, it will not automatically post from header data, or any customer setup data in GP - your integration has to pass the values in.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top