USP_IDMAPPER_CREDIT_TO_SALESORDER

Parameters

Parameter Parameter Type Mode Description
@SOURCEID uniqueidentifier IN
@TARGETID uniqueidentifier INOUT

Definition

Copy


CREATE procedure  dbo.USP_IDMAPPER_CREDIT_TO_SALESORDER(
    @SOURCEID uniqueidentifier,
    @TARGETID uniqueidentifier output
)
as
    set nocount on;

    select @TARGETID = isnull(SALESORDER.ID, EXT.SALESORDERID)
    from dbo.FINANCIALTRANSACTION as FT
    inner join dbo.CREDIT_EXT as EXT on EXT.ID = FT.ID
    left outer join dbo.SALESORDER on SALESORDER.REVENUEID = FT.PARENTID
    where FT.ID = @SOURCEID;

    if @TARGETID is null begin
        select top 1
            @TARGETID = isnull(SALESORDER.ID, EXT.SALESORDERID)
        from
            dbo.CREDITITEM_EXT as EXT
        inner join
            dbo.FINANCIALTRANSACTIONLINEITEM as LI on LI.ID = EXT.ID
        inner join
            dbo.FINANCIALTRANSACTION as FT on FT.ID = LI.FINANCIALTRANSACTIONID
        left outer join
            dbo.SALESORDER on SALESORDER.REVENUEID = FT.ID
        where
            EXT.CREDITID = @SOURCEID
            and LI.TYPECODE = 5  --Discount

            and FT.TYPECODE in (5, 99)  -- Discount, Orphaned;

    end

    return 0;