Hi Jerry,
Yes I have defined "PurchaseOrderId" in Item table, I am posting code again.
Local table Types:-
create type tt_pi_quantity as table (
PurchaseOrderId NVARCHAR(10),
CreatedAt DATE ,
PartnerId NVARCHAR(10),
InvoicingStatus Nvarchar(1),
PurchaseOrderItem NVARCHAR(10),
Currency nVARCHAR(5),
GrossAmount DECIMAL(15,2),
ProductId NvARCHAR(10),
Quantity DECIMAL(13,3),
QuantityUnit NvARCHAR(3)
)
SQL Script
CREATE PROCEDURE _SYS_BIC.get_pi_quantity_ce (
IN InvoicingStatus NVARCHAR(1),
OUT pi_quantity tt_pi_quantity )
LANGUAGE SQLSCRIPT
SQL SECURITY INVOKER
READS SQL DATA AS
BEGIN
/*****************************
Write your procedure logic
*****************************/
lt_po =
CE_COLUMN_TABLE("SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::purchaseOrder",
["PurchaseOrderId", "CreatedAt", "PartnerId","InvoicingStatus"]);
lt_po_proj = CE_PROJECTION (:lt_po,
["PurchaseOrderId", "CreatedAt", "PartnerId" , "InvoicingStatus" ],
'"InvoicingStatus" = :InvoicingStatus' );
lt_pi =
CE_COLUMN_TABLE("SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::purchaseOrderItem",
["PurchaseOrderItem"," PurchaseOrderId " , "Currency", "GrossAmount","ProductId","Quantity","QuantityUnit"]);
pi_quantity = CE_JOIN(:lt_po_proj, :lt_pi, [ " PurchaseOrderId " ],
["PurchaseOrderId", "CreatedAt", "PartnerId", "InvoicingStatus",
"PurchaseOrderItem" , "Currency", "GrossAmount" , "ProductId" , "Quantity" , "QuantityUnit"]);
END;