UFN_REVENUESPLITBUSINESSUNIT_CONVERTAMOUNTSINXML

Fills in multicurrency fields in the given business units XML.

Return

Return Type
xml

Parameters

Parameter Parameter Type Mode Description
@BUSINESSUNITS xml IN
@BASECURRENCYID uniqueidentifier IN
@ORGANIZATIONEXCHANGERATEID uniqueidentifier IN

Definition

Copy


            create function dbo.UFN_REVENUESPLITBUSINESSUNIT_CONVERTAMOUNTSINXML(
                @BUSINESSUNITS xml,
                @BASECURRENCYID uniqueidentifier,
                @ORGANIZATIONEXCHANGERATEID uniqueidentifier
            )
            returns xml
            as
            begin

                declare @ORGANIZATIONCURRENCYID uniqueidentifier = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();

                return (
                    select 
                        ID,
                        BUSINESSUNITCODEID,
                        AMOUNT,
                        @BASECURRENCYID BASECURRENCYID,
                        case
                            when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
                                then dbo.UFN_CURRENCY_CONVERT(AMOUNT, @ORGANIZATIONEXCHANGERATEID)
                            else AMOUNT
                        end ORGANIZATIONAMOUNT,
                        @ORGANIZATIONEXCHANGERATEID ORGANIZATIONEXCHANGERATEID

                    from dbo.UFN_REVENUESPLITBUSINESSUNIT_GETBUSINESSUNITS_FROMITEMLISTXML(@BUSINESSUNITS)
                    for xml raw('ITEM'),type,elements,root('BUSINESSUNITS'),BINARY BASE64
                )
            end