USP_PROGRAMPRICE_DELETE

Executes the "Program Price Delete" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being deleted.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the delete.

Definition

Copy


CREATE procedure dbo.USP_PROGRAMPRICE_DELETE
(
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier
)
as 
    set nocount on;
    if @CHANGEAGENTID is null  
        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    declare @PROGRAMID uniqueidentifier
    declare @PRICETYPECODEID uniqueidentifier
    select 
        @PROGRAMID = PROGRAMID,
        @PRICETYPECODEID = PRICETYPECODEID
    from dbo.PROGRAMPRICE 
    where ID = @ID

    if exists (select ID from dbo.DAILYSALEITEMPROGRAM where PROGRAMID = @PROGRAMID and PRICETYPECODEID = @PRICETYPECODEID)
        raiserror('ERR_PROGRAMPRICE_IN_USE_DAILYSALEBUTTON', 13, 1)

    update dbo.PROGRAM set
        PRICELISTID = null,
        CHANGEDBYID = @CHANGEAGENTID,
        DATECHANGED = @CURRENTDATE
    where ID = @PROGRAMID;

    exec USP_PROGRAMPRICE_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;

    return 0;