UFN_DISBURSEMENTTRANSACTIONS_FROMITEMLISTXML

Converts xml into a table that represents Disbursement Transactions.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@ITEMLISTXML xml IN

Definition

Copy


CREATE function dbo.UFN_DISBURSEMENTTRANSACTIONS_FROMITEMLISTXML(
  @ITEMLISTXML xml
) RETURNS TABLE AS
RETURN (
SELECT
  case
        when T.c.value('(TYPECODE)[1]','tinyint') = 102 then -- need to change negatives from UI to positives for use in FTA table.

            -T.c.value('(AMOUNTTOPAY)[1]','money')
        else
            T.c.value('(AMOUNTTOPAY)[1]','money')
    end AS 'AMOUNTTOPAY',
  T.c.value('(DISCOUNTAMOUNT)[1]','money') AS 'DISCOUNTAMOUNT',
    T.c.value('(DISCOUNTTAKEN)[1]','money') AS 'DISCOUNTTAKEN',
  T.c.value('(DUEDATE)[1]','date') AS 'DUEDATE',
  T.c.value('(ID)[1]','uniqueidentifier') AS 'ID',
  T.c.value('(INCLUDE)[1]','bit') AS 'INCLUDE',
  T.c.value('(NETAMOUNT)[1]','money') AS 'NETAMOUNT',
  T.c.value('(NUMBER)[1]','nvarchar(60)') AS 'NUMBER',
  T.c.value('(SCHEDULEDAMOUNT)[1]','money') AS 'SCHEDULEDAMOUNT',
  T.c.value('(TRANSACTIONDATE)[1]','date') AS 'TRANSACTIONDATE',
  T.c.value('(TYPECODE)[1]','tinyint') AS 'TYPECODE'
  FROM @ITEMLISTXML.nodes('/DISBURSEMENT/ITEM') T(c)
)