Skip to Content
0
Jan 24, 2023 at 05:30 AM

INV AMOUNT GREATER THAN PO

60 Views

IF :transaction_type='A' or :transaction_type='U' AND :object_Type='18' then
Declare Qty decimal (19,4);
Declare TQty decimal (19,4);
SELECT Max("VisOrder" )into RowCount from "PCH1" where "DocEntry"= :list_of_cols_val_tab_del;


While j <=:RowCount 
DO 


Textdummy= TO_VARCHAR(j+1);
SELECT   (T1."LineTotal")  INTO Qty 
 FROM OPOR T0 INNER JOIN POR1 T1 ON T0."DocEntry" = T1."DocEntry" 
 LEFT OUTER JOIN PCH1 T3 ON T3."BaseEntry" = T0."DocEntry"  AND T3."BaseLine" = T1."LineNum" 
 LEFT OUTER JOIN OPCH T2 ON T2."DocEntry" = T3."DocEntry"
 LEFT OUTER JOIN "OITM" T5 ON T5."ItemCode" = T1."ItemCode"
 LEFT OUTER  JOIN "OITB" T6 ON T5."ItmsGrpCod" = T6."ItmsGrpCod"
WHERE T0."DocEntry" = :list_of_cols_val_tab_del  and T3."VisOrder"=:j;

SELECT   (T3."LineTotal") INTO TQty 
 FROM OPOR T0 INNER JOIN POR1 T1 ON T0."DocEntry" = T1."DocEntry" 
 LEFT OUTER JOIN PCH1 T3 ON T3."BaseEntry" = T0."DocEntry"  AND T3."BaseLine" = T1."LineNum" 
 LEFT OUTER JOIN OPCH T2 ON T2."DocEntry" = T3."DocEntry" 
 LEFT OUTER JOIN "OITM" T5 ON T5."ItemCode" = T1."ItemCode"
 LEFT OUTER  JOIN "OITB" T6 ON T5."ItmsGrpCod" = T6."ItmsGrpCod"
WHERE T0."DocEntry" = :list_of_cols_val_tab_del and T3."VisOrder"=:j ;
If  Qty < TQty  Then
error:=100001;
error_message:= 'INV VALUE Is Greater Than PO VALUE For LineNum ' || :Textdummy || ' 1';
 
 End if;
 
 j:= j+1;
End While;
End if;