USP_RECORDOPERATION_RECEIPTINGPROCESSMARKLETTERSSENT

Executes the "Receipting Process: Mark Receipts Sent" record operation.

Parameters

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

Definition

Copy


                    CREATE procedure dbo.USP_RECORDOPERATION_RECEIPTINGPROCESSMARKLETTERSSENT
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null
                    )
                    as
                        set nocount on;

                        declare @OUTPUTTABLE nvarchar(128);
                        declare @XMLPARENTOUTPUTTABLE nvarchar(128);
                        declare @XMLCHILDOUTPUTTABLE nvarchar(128);
                        declare @CURRENTDATE datetime;

                        set @CURRENTDATE = getdate();

                        select @OUTPUTTABLE = TABLENAME from dbo.BUSINESSPROCESSOUTPUT where BUSINESSPROCESSSTATUSID = @ID and TABLEKEY = 'OUTPUT';
                        select @XMLPARENTOUTPUTTABLE = TABLENAME from dbo.BUSINESSPROCESSOUTPUT where BUSINESSPROCESSSTATUSID = @ID and TABLEKEY = 'CONSOLIDATEDOUTPUT';
                        select @XMLCHILDOUTPUTTABLE = TABLENAME from dbo.BUSINESSPROCESSOUTPUT where BUSINESSPROCESSSTATUSID = @ID and TABLEKEY = 'CONSOLIDATEDOUTPUTCHILD';

                        if @OUTPUTTABLE is not null
                            exec dbo.USP_SCHEMA_TABLE_SETDATEEXTENDEDPROPERTY @OUTPUTTABLE, @CURRENTDATE, 'BB_RECEIPTSENTDATE';

                        if @XMLPARENTOUTPUTTABLE is not null
                            exec dbo.USP_SCHEMA_TABLE_SETDATEEXTENDEDPROPERTY @XMLPARENTOUTPUTTABLE, @CURRENTDATE, 'BB_RECEIPTSENTDATE';

                        if @XMLCHILDOUTPUTTABLE is not null
                            exec dbo.USP_SCHEMA_TABLE_SETDATEEXTENDEDPROPERTY @XMLCHILDOUTPUTTABLE, @CURRENTDATE, 'BB_RECEIPTSENTDATE';


                        update 
                            dbo.REVENUERECEIPT
                        set 
                            RECEIPTDATE = @CURRENTDATE,
                            CHANGEDBYID = @CHANGEAGENTID,
                            DATECHANGED = @CURRENTDATE
                        where
                            RECEIPTINGPROCESSSTATUSID = @ID;

                        declare @SQL nvarchar(250);
                        declare @PARAMDEF nvarchar(25);

                        set @SQL = N'update dbo.' + @OUTPUTTABLE + ' set PROCESS_RECEIPTDATE = @DATE';
                        set @PARAMDEF = N'@DATE datetime';

                        if @OUTPUTTABLE is not null 
                            exec sp_executesql @SQL, @PARAMDEF, @DATE = @CURRENTDATE;

                        set @SQL = N'update dbo.' + @XMLPARENTOUTPUTTABLE + ' set PROCESS_RECEIPTDATE = @DATE';
                        set @PARAMDEF = N'@DATE datetime';

                        if @XMLPARENTOUTPUTTABLE is not null 
                            exec sp_executesql @SQL, @PARAMDEF, @DATE = @CURRENTDATE;

                        return 0;