Troç de codi per al Transaction Notification de SAP Business One per comprovar que els preus dels articles especificats a una comanda no siguin per sota del preu de compra:

/*
  DMB: Comprovar per les comandes que els preus dels articles no siguin més baixos que els preus de compra
*/
if @object_type='17' and @transaction_type='A'
begin
  declare @linia as int
  declare @itemCode as nvarchar(50)
  declare @preu as numeric(19,6)
  declare @ultimPreuDeCompra as numeric(19,6)

  DECLARE linies CURSOR FOR
  SELECT T1.VisOrder,IT.ItemCode,T1.Price, IT.LastPurPrc
  FROM ORDR T0
  JOIN RDR1 T1 on T1.DocEntry=T0.DocEntry
  JOIN OITM IT on IT.ItemCode=T1.ItemCode
  WHERE T0.DocEntry=@list_of_cols_val_tab_del;

  OPEN linies;
  FETCH NEXT FROM linies INTO @linia,@itemcode,@preu,@ultimPreuDeCompra;
  WHILE @@FETCH_STATUS = 0  
  BEGIN
    if @preu<@ultimPreuDeCompra
	begin
	  set @error='9001';
	  set @error_message='L''article '+@itemCode+' de la linia '+CAST(@linia+1 as nvarchar)+' te un preu inferior al de compra.';
	  BREAK;
	end;
    FETCH NEXT FROM linies INTO @linia,@itemcode,@preu,@ultimPreuDeCompra;
  END;
  CLOSE linies;
  DEALLOCATE linies;
end