USP_SIMPLEDATALIST_COMPLETEDORDER_DELIVERYMETHOD

Provide all delivery methods available for a completed order.

Parameters

Parameter Parameter Type Mode Description
@SALESORDERID uniqueidentifier IN SALESORDERID

Definition

Copy


            CREATE procedure dbo.USP_SIMPLEDATALIST_COMPLETEDORDER_DELIVERYMETHOD
            (
                @SALESORDERID uniqueidentifier
            )

            as

                declare @SALESMETHODID uniqueidentifier

                declare @CURRENTDELIVERYMETHODID uniqueidentifier

                select 
                    @SALESMETHODID = (select ID from dbo.SALESMETHOD where TYPECODE = SALESORDER.SALESMETHODTYPECODE),
                    @CURRENTDELIVERYMETHODID = DELIVERYMETHODID
                from dbo.SALESORDER
                where ID = @SALESORDERID;

                select
                    ID as VALUE,
                    NAME as LABEL
                from (
                    -- Include all available delivery methods for the sales method.

                    select 
                        DELIVERYMETHOD.ID,
                        DELIVERYMETHOD.NAME
                    from dbo.DELIVERYMETHOD
                    inner join dbo.SALESMETHODDELIVERYMETHOD
                        on SALESMETHODDELIVERYMETHOD.DELIVERYMETHODID = DELIVERYMETHOD.ID
                    where 
                        SALESMETHODDELIVERYMETHOD.SALESMETHODID = @SALESMETHODID and
                        DELIVERYMETHOD.ISACTIVE = 1

                    union

                    -- Ensure the currently selected method isn't filtered out due to configuration changes.

                    select
                        ID,
                        NAME
                    from dbo.DELIVERYMETHOD
                    where ID = @CURRENTDELIVERYMETHODID
                ) as DELIVERYMETHODS
                order by NAME asc