Post Transaction Notification
-- B1 DEPENDS: BEFORE:PT:PROCESS_START
DROP PROCEDURE SBO_SP_TransactionNotification;
CREATE PROCEDURE SBO_SP_TransactionNotification
(
in object_type nvarchar(30), -- SBO Object Type
in transaction_type nchar(1), -- [A]dd, [U]pdate, [D]elete, [C]ancel, C[L]ose
in num_of_cols_in_key int,
in list_of_key_cols_tab_del nvarchar(255),
in list_of_cols_val_tab_del nvarchar(255)
)
LANGUAGE SQLSCRIPT
AS
-- Return values
error int; -- Result (0 for no error)
error_message nvarchar (200); -- Error string to be displayed
-- Variable necesaries INTRX
uDim1 nvarchar(50);
uDim2 nvarchar(50);
uDim3 nvarchar(50);
uCardCode nvarchar(50);
uTipusIC nvarchar(1);
begin
error := 0;
error_message := N'Ok';
-- No deixar crear un client sense centres de cost
-- Autor: David Marti (Última modificacio 7/5/2019)
if (:object_type='2' and (:transaction_type='A' or :transaction_type='U')) then
uCardCode:=:list_of_cols_val_tab_del;
select "CardType" into uTipusIC from OCRD where "CardCode"=:uCardCode;
if (uTipusIC='C') then
select "U_ECO_DIM1" into uDim1 from OCRD where "CardCode"=:uCardCode;
select "U_ECO_DIM2" into uDim2 from OCRD where "CardCode"=:uCardCode;
select "U_ECO_DIM3" into uDim3 from OCRD where "CardCode"=:uCardCode;
if (uDim1='' or uDim2='' or uDim3='' or uDim1 is null or uDim2 is null or uDim3 is null) then
error:=-100;
error_message:='No se puede crear o modificar un cliente sin centros de coste';
end if;
end if;
end if;
-- Select the return values
select :error, :error_message FROM dummy;
end;
Post Transaction Notice
DROP PROCEDURE SBO_SP_PostTransactionNotice; CREATE PROCEDURE SBO_SP_PostTransactionNotice ( in object_type nvarchar(30), -- SBO Object Type in transaction_type nchar(1), -- [A]dd, [U]pdate, [D]elete, [C]ancel, C[L]ose in num_of_cols_in_key int, in list_of_key_cols_tab_del nvarchar(255), in list_of_cols_val_tab_del nvarchar(255) ) LANGUAGE SQLSCRIPT AS -- Return values error int; -- Result (0 for no error) error_message nvarchar (200); -- Error string to be displayed -- Variable necesaries INTRX uDim1 nvarchar(50); uDim2 nvarchar(50); uDim3 nvarchar(50); uCardCode nvarchar(50); begin error := 0; error_message := N'Ok'; -- Assignació de centres de cost a les comandes de clients segons la informació del mestre de clients -- Assignació de centres de cost en devolucions i abonaments -- Autor: David Marti (última modificació 07/05/2019) if (:object_type='14' or :object_type='17' or :object_type='16') and (:transaction_type='A' or :transaction_type='U') then select "CardCode" into uCardCode from ORDR where "DocEntry"=:list_of_cols_val_tab_del; select "U_ECO_DIM1" into uDim1 from OCRD where "CardCode"=:uCardCode; select "U_ECO_DIM2" into uDim2 from OCRD where "CardCode"=:uCardCode; select "U_ECO_DIM3" into uDim3 from OCRD where "CardCode"=:uCardCode; update RDR1 set "OcrCode"=:uDim1,"OcrCode2"=:uDim2,"OcrCode3"=:uDim3 where "DocEntry"=:list_of_cols_val_tab_del; end if; -- Assignació de centres de cost a les comandes de compres fixe, segons indicacions del client (ECOALF) -- Autor: David Marti (última modificació 11/04/2019) if :object_type='22' and (:transaction_type='A' or :transaction_type='U') then update RDR1 set "OcrCode"='ST_STR',"OcrCode2"='ST_S001',"OcrCode3"='DP_SOU' where "DocEntry"=:list_of_cols_val_tab_del; end if; --INICIO DEL CODIGO INSERTADO AUTOMATICAMENTE | INTAREX - IIS | NO MODIFICAR | Wednesday, April 10, 2019 | SYSTEM/ECOAPP/ECOALF CALL IISDB_SP_POSTTRANSACTIONNOTICE (object_type, transaction_type, num_of_cols_in_key, list_of_key_cols_tab_del, list_of_cols_val_tab_del); -- FIN DEL CODIGO INSERTADO AUTOMATICAMENTE (Para cualquier problema con este codigo contactar con david.marti@intarex.com) -- Select the return values select :error, :error_message FROM dummy; end;