USP_DATAFORMTEMPLATE_ADD_BILLINGITEM_VARYBYGRADELEVEL

The save procedure used by the add dataform template "Billing Item Vary By Grade Level Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@STARTDATE date IN From
@ENDDATE date IN To
@DATERANGETYPECODE tinyint IN Date range type
@BILLINGITEMGRADELEVELENTRIES xml IN

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_BILLINGITEM_VARYBYGRADELEVEL
                    (
                        @ID uniqueidentifier = null output,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @NAME nvarchar(100) = null,
                        @DESCRIPTION nvarchar(255) = null,
                        @STARTDATE date = null,
                        @ENDDATE date = null,
                        @DATERANGETYPECODE tinyint = 0,
                        @BILLINGITEMGRADELEVELENTRIES xml = null
                    )
                    as

                    set nocount on

                    if @ID is null
                        set @ID = newid()

                    if @CHANGEAGENTID is null  
                        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

                    declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                    declare @BILLINGITEMDATESID uniqueidentifier 

                    begin try
                        -- handle inserting the data

                        insert into dbo.PRODUCT (ID, NAME, DESCRIPTION, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                            values (@ID, @NAME, @DESCRIPTION, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

                        insert into dbo.BILLINGITEM
                            (ID, PRICETYPECODE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                            values
                            (@ID, 2, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

                        if @DATERANGETYPECODE=0
                        begin
                            set @STARTDATE=null
                            set @ENDDATE=null
                        end

                        set @BILLINGITEMDATESID=newid()

                        insert into dbo.BILLINGITEMDATES (ID, BILLINGITEMID, STARTDATE, ENDDATE, DATERANGETYPECODE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
                        values (@BILLINGITEMDATESID, @ID, @STARTDATE, @ENDDATE, @DATERANGETYPECODE, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

                        exec dbo.USP_BILLINGITEM_GETGRADELEVELENTRIES_ADDFROMXML @BILLINGITEMDATESID, @BILLINGITEMGRADELEVELENTRIES, @CHANGEAGENTID, @CURRENTDATE;                                        


                    end try

                    begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                    end catch

                    return 0