USP_DATAFORMTEMPLATE_EDITLOAD_RESERVATIONDEPOSIT

The load procedure used by the edit dataform template "Reservation Deposit Edit Data Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@DEPOSITREQUIRED bit INOUT Deposit required
@DEPOSITAMOUNT money INOUT Amount due
@DEPOSITDUEDATE date INOUT Date due
@TOTALAMOUNTDUE money INOUT
@DEFAULTAMOUNT money INOUT
@DEFAULTPERCENT decimal(5, 2) INOUT
@DEFAULTTYPECODE tinyint INOUT
@DEPOSITTYPECODE tinyint INOUT
@FINALDUEDATE date INOUT Final payment due

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RESERVATIONDEPOSIT(
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @TSLONG bigint = 0 output,
                    @DEPOSITREQUIRED bit = null output,
                    @DEPOSITAMOUNT money = null output,
                    @DEPOSITDUEDATE date = null output,
                    @TOTALAMOUNTDUE money = null output,
                    @DEFAULTAMOUNT money = null output,
                    @DEFAULTPERCENT decimal(5,2) = null output,
                    @DEFAULTTYPECODE tinyint = null output,
                    @DEPOSITTYPECODE tinyint = null output,
                    @FINALDUEDATE date = null output
                )
                as

                    set nocount on;

                    set @DATALOADED = 0
                    set @TSLONG = 0

                    select
                        @DATALOADED = 1,
                        @TSLONG = TSLONG,
                        @DEPOSITREQUIRED = DEPOSITREQUIRED,
                        @DEPOSITAMOUNT = DEPOSITAMOUNT,
                        @DEPOSITDUEDATE = DEPOSITDUEDATE,
                        @TOTALAMOUNTDUE = dbo.UFN_SALESORDER_GETAMOUNTDUE(@ID),
                        @FINALDUEDATE = FINALDUEDATE
                    from dbo.RESERVATION
                    where ID = @ID

                    if @DATALOADED = 1
                    begin
                        if @DEPOSITREQUIRED = 1 and @DEPOSITAMOUNT = 0.0
                        begin
                            set @DEPOSITTYPECODE = 1 -- Percent, has not been set before

                            set @DEPOSITAMOUNT = null
                        end
                        else
                            set @DEPOSITTYPECODE = 0 -- Amount


                        select
                            @DEFAULTTYPECODE = DEPOSITTYPECODE,
                            @DEFAULTAMOUNT = DEPOSITAMOUNT,
                            @DEFAULTPERCENT = DEPOSITPERCENT
                        from dbo.GROUPSALESDEFAULT
                    end

                    return 0;