USP_DATAFORMTEMPLATE_ADD_MERCHANDISEINVENTORYBATCHROWCOMMIT

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT
@VALIDATEONLY bit IN
@BATCHROWID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@ACTIONTYPECODE tinyint IN
@MERCHANDISEPRODUCTID uniqueidentifier IN
@MERCHANDISEPRODUCTINSTANCEID uniqueidentifier IN
@QUANTITY int IN
@COST money IN
@PRICE money IN
@VENDORID uniqueidentifier IN
@LOOKUPCODE nvarchar(25) IN
@MERCHANDISEADJUSTMENTREASONCODEID uniqueidentifier IN
@COMMENTS nvarchar(255) IN
@UPDATECURRENTCOST bit IN
@LOOKUPITEMS xml IN

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_MERCHANDISEINVENTORYBATCHROWCOMMIT
(
    @ID uniqueidentifier = null output,
    @VALIDATEONLY bit = 0,
    @BATCHROWID uniqueidentifier = null,
    @CHANGEAGENTID uniqueidentifier = null,
    @ACTIONTYPECODE tinyint = null,
    @MERCHANDISEPRODUCTID uniqueidentifier = null,
    @MERCHANDISEPRODUCTINSTANCEID uniqueidentifier = null,    
    @QUANTITY int = null,
    @COST money = null,
    @PRICE money = null,
    @VENDORID uniqueidentifier = null,
    @LOOKUPCODE nvarchar(25) = null,
    @MERCHANDISEADJUSTMENTREASONCODEID uniqueidentifier = null,
    @COMMENTS nvarchar(255) = null,
    @UPDATECURRENTCOST bit = 1,
      @LOOKUPITEMS xml = null
)
as

    set nocount on;

    begin try
        declare @BATCHID uniqueidentifier;

        select
            @BATCHID = BATCH.ID
        from dbo.BATCHMERCHANDISEINVENTORY
        inner join dbo.BATCH
            on BATCHMERCHANDISEINVENTORY.BATCHID = BATCH.ID
        where BATCHMERCHANDISEINVENTORY.ID = @BATCHROWID;

        exec dbo.USP_MERCHANDISEPRODUCTINSTANCE_UPDATEINVENTORY @ID output, @VALIDATEONLY, @CHANGEAGENTID, @MERCHANDISEPRODUCTINSTANCEID, 1, @ACTIONTYPECODE, @QUANTITY, @COST, @PRICE, @VENDORID, @LOOKUPCODE, @MERCHANDISEADJUSTMENTREASONCODEID, @BATCHID, @COMMENTS;

            exec dbo.USP_MERCHANDISEPRODUCTINSTANCE_GETLOOKUPITEMS_UPDATEFROMXML @MERCHANDISEPRODUCTINSTANCEID, @LOOKUPITEMS, @CHANGEAGENTID

        if @ACTIONTYPECODE = 0 and @UPDATECURRENTCOST = 1
        begin
            update dbo.MERCHANDISEPRODUCTINSTANCEVENDOR 
            set
            COST=@COST
            where MERCHANDISEPRODUCTINSTANCEID=@MERCHANDISEPRODUCTINSTANCEID
        end

    end try

    begin catch
        exec dbo.USP_RAISE_ERROR;
        return 1;
    end catch    

    return 0;