Sage 200 OBDC adding in Delivery Addresses

Hi,

I have the below code but need to add in the the delivery postcode (highlighted yellow below) - how would I add this in, I'm not to sure of the joins?

SELECT DocumentNo,
DocumentDate,
DocumentTypeID,
DocumentStatusID,
SOPOrderReturnLine.ItemCode,
SOPOrderReturnLine.ItemDescription,
CustomerAccountName,
LineQuantity,
UnitSellingPrice,
LineTotalValue,
CustomerDocumentNo,
SourceDocumentNo,
SOPOrderReturn.AnalysisCode3 [LostReason],
CASE WHEN DocumentStatusID = 2 THEN 'Won'
ELSE CASE WHEN SOPOrderReturn.AnalysisCode9 <> 'Pending' AND SOPOrderReturn.AnalysisCode9 <> ''
THEN CASE WHEN SOPOrderReturn.AnalysisCode9 = 'WON' OR SOPOrderReturn.AnalysisCode9 = 'LOST'
THEN SOPOrderReturn.AnalysisCode9
ELSE 'In Progress' END
ELSE CASE WHEN SOPOrderReturn.AnalysisCode3 = 'Not Applicable'
THEN 'In Progress'
ELSE 'Lost' END END END [QuoteStatus],
SOPOrderReturn.AnalysisCode6 [ContractRef],
DocumentCreatedBy,
SOPOrderReturn.AnalysisCode4 [Notes],
Warehouse.Name
FROM SLCustomerAccount
INNER JOIN SOPOrderReturn ON SLCustomerAccountID = CustomerID
LEFT JOIN Warehouse ON Warehouse.WarehouseID = SOPOrderReturn.WarehouseID
INNER JOIN SOPOrderReturnLine ON SOPOrderReturnLine.SOPOrderReturnID = SOPOrderReturn.SOPOrderReturnID
LEFT OUTER JOIN SOPStandardItemLink ON SOPStandardItemLink.SOPOrderReturnLineID = SOPOrderReturnLine.SOPOrderReturnLineID
WHERE SOPOrderReturn.DocumentTypeID = 3 OR SOPOrderReturn.DocumentTypeID = 2 OR SOPOrderReturn.DocumentTypeID = 0 OR SOPOrderReturn.DocumentTypeID = 1
ORDER BY DocumentNo DESC

Parents
  • 0

    Try this query:

    SELECT SOPOrderReturn.DocumentNo, SOPOrderReturn.DocumentDate, SOPOrderReturn.DocumentTypeID, SOPOrderReturn.DocumentStatusID, SOPOrderReturnLine.ItemCode, SOPOrderReturnLine.ItemDescription,
    CustomerAccountName, LineQuantity, UnitSellingPrice, SOPOrderReturnLine.LineTotalValue, SOPOrderReturn.CustomerDocumentNo,
    SourceDocumentNo,
    SOPOrderReturn.AnalysisCode3 [LostReason],
    CASE WHEN SOPOrderReturn.DocumentStatusID = 2 THEN 'Won'
    ELSE CASE WHEN SOPOrderReturn.AnalysisCode9 <> 'Pending' AND SOPOrderReturn.AnalysisCode9 <> ''
    THEN CASE WHEN SOPOrderReturn.AnalysisCode9 = 'WON' OR SOPOrderReturn.AnalysisCode9 = 'LOST'
    THEN SOPOrderReturn.AnalysisCode9
    ELSE 'In Progress' END
    ELSE CASE WHEN SOPOrderReturn.AnalysisCode3 = 'Not Applicable'
    THEN 'In Progress'
    ELSE 'Lost' END END END [QuoteStatus],
    SOPOrderReturn.AnalysisCode6 [ContractRef],
    DocumentCreatedBy,
    SOPOrderReturn.AnalysisCode4 [Notes],
    Warehouse.Name, SOPInvCredDelAddress.PostCode
    FROM SLCustomerAccount
    INNER JOIN SOPOrderReturn ON SLCustomerAccountID = CustomerID
    LEFT JOIN Warehouse ON Warehouse.WarehouseID = SOPOrderReturn.WarehouseID
    INNER JOIN SOPOrderReturnLine ON SOPOrderReturnLine.SOPOrderReturnID = SOPOrderReturn.SOPOrderReturnID
    LEFT OUTER JOIN SOPStandardItemLink ON SOPStandardItemLink.SOPOrderReturnLineID = SOPOrderReturnLine.SOPOrderReturnLineID
    LEFT OUTER JOIN SOPInvoiceCreditLine on SOPInvoiceCreditLine.SOPOrderReturnLineID = SOPOrderReturnLine.SOPOrderReturnLineID
    LEFT OUTER JOIN SOPInvoiceCredit ON SOPInvoiceCredit.SOPInvoiceCreditID = SOPInvoiceCreditLine.SOPInvoiceCreditID
    LEFT OUTER JOIN SOPInvCredDelAddress ON SOPInvCredDelAddress.SOPInvoiceCreditID = SOPInvoiceCredit.SOPInvoiceCreditID
    WHERE SOPOrderReturn.DocumentTypeID = 3 OR SOPOrderReturn.DocumentTypeID = 2 OR SOPOrderReturn.DocumentTypeID = 0 OR SOPOrderReturn.DocumentTypeID = 1
    ORDER BY DocumentNo DESC

Reply
  • 0

    Try this query:

    SELECT SOPOrderReturn.DocumentNo, SOPOrderReturn.DocumentDate, SOPOrderReturn.DocumentTypeID, SOPOrderReturn.DocumentStatusID, SOPOrderReturnLine.ItemCode, SOPOrderReturnLine.ItemDescription,
    CustomerAccountName, LineQuantity, UnitSellingPrice, SOPOrderReturnLine.LineTotalValue, SOPOrderReturn.CustomerDocumentNo,
    SourceDocumentNo,
    SOPOrderReturn.AnalysisCode3 [LostReason],
    CASE WHEN SOPOrderReturn.DocumentStatusID = 2 THEN 'Won'
    ELSE CASE WHEN SOPOrderReturn.AnalysisCode9 <> 'Pending' AND SOPOrderReturn.AnalysisCode9 <> ''
    THEN CASE WHEN SOPOrderReturn.AnalysisCode9 = 'WON' OR SOPOrderReturn.AnalysisCode9 = 'LOST'
    THEN SOPOrderReturn.AnalysisCode9
    ELSE 'In Progress' END
    ELSE CASE WHEN SOPOrderReturn.AnalysisCode3 = 'Not Applicable'
    THEN 'In Progress'
    ELSE 'Lost' END END END [QuoteStatus],
    SOPOrderReturn.AnalysisCode6 [ContractRef],
    DocumentCreatedBy,
    SOPOrderReturn.AnalysisCode4 [Notes],
    Warehouse.Name, SOPInvCredDelAddress.PostCode
    FROM SLCustomerAccount
    INNER JOIN SOPOrderReturn ON SLCustomerAccountID = CustomerID
    LEFT JOIN Warehouse ON Warehouse.WarehouseID = SOPOrderReturn.WarehouseID
    INNER JOIN SOPOrderReturnLine ON SOPOrderReturnLine.SOPOrderReturnID = SOPOrderReturn.SOPOrderReturnID
    LEFT OUTER JOIN SOPStandardItemLink ON SOPStandardItemLink.SOPOrderReturnLineID = SOPOrderReturnLine.SOPOrderReturnLineID
    LEFT OUTER JOIN SOPInvoiceCreditLine on SOPInvoiceCreditLine.SOPOrderReturnLineID = SOPOrderReturnLine.SOPOrderReturnLineID
    LEFT OUTER JOIN SOPInvoiceCredit ON SOPInvoiceCredit.SOPInvoiceCreditID = SOPInvoiceCreditLine.SOPInvoiceCreditID
    LEFT OUTER JOIN SOPInvCredDelAddress ON SOPInvCredDelAddress.SOPInvoiceCreditID = SOPInvoiceCredit.SOPInvoiceCreditID
    WHERE SOPOrderReturn.DocumentTypeID = 3 OR SOPOrderReturn.DocumentTypeID = 2 OR SOPOrderReturn.DocumentTypeID = 0 OR SOPOrderReturn.DocumentTypeID = 1
    ORDER BY DocumentNo DESC

Children