USP_DATAFORMTEMPLATE_EDITLOAD_PRICELIST

The load procedure used by the edit dataform template "Price List Edit 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.
@NAME nvarchar(100) INOUT Name
@DESCRIPTION nvarchar(255) INOUT Description
@PRICES xml INOUT Prices
@PROGRAMS xml INOUT This price list will be saved to these programs

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PRICELIST
                (
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @TSLONG bigint = 0 output,
                    @NAME nvarchar(100) = null output,
                    @DESCRIPTION nvarchar(255) = null output,
                    @PRICES xml = null output,
                    @PROGRAMS xml = null output
                )
                as

                    set nocount on;

                    set @DATALOADED = 0
                    set @TSLONG = 0

                    select
                        @DATALOADED = 1,
                        @TSLONG = TSLONG,
                        @NAME = NAME,
                        @DESCRIPTION = DESCRIPTION
                    from dbo.PRICELIST
                        where ID = @ID

                    set @PRICES = dbo.UFN_PRICELIST_GETPRICES_TOITEMLISTXML(@ID);

                    set @PROGRAMS =
                    (
                        select
                            PROGRAM.ID as ID
                        from dbo.PROGRAM
                        where PROGRAM.PRICELISTID = @ID
                        for xml raw ('ITEM'), type, elements, root('PROGRAMS'), BINARY BASE64
                    )

                    return 0;