UFN_BATCHBBNCMEMBERSHIP_GETMEMBERS_TOITEMLISTXML

Returns Blackbaud Internet Solutions membership members as xml.

Return

Return Type
xml

Parameters

Parameter Parameter Type Mode Description
@BATCHBBNCMEMBERSHIPID uniqueidentifier IN

Definition

Copy


            CREATE function dbo.UFN_BATCHBBNCMEMBERSHIP_GETMEMBERS_TOITEMLISTXML
            (
                @BATCHBBNCMEMBERSHIPID uniqueidentifier
            )
            returns xml
            as
            begin
                --The generated functions had trouble with the nested xml, so I had to write my own

                return
                (
                    select
                        ID,
                        MEMBERID,
                        MEMBERCONSTITUENTID,
                        MEMBERISPRIMARY,
                        MEMBERUPDATEADDRESS,
                        MEMBERADDADDRESS,
                        MEMBERMAKEADDRESSPRIMARY,
                        MEMBERADDRESSTYPECODEID,
                        SEQUENCE,
                        (
                            select
                                S.d.value('PROCESS[1]', 'bit') as [PROCESS],
                                S.d.value('FIELD[1]', 'nvarchar(max)') as [FIELD],
                                S.d.value('CHANGEDFROM[1]', 'nvarchar(max)') as [CHANGEDFROM],
                                S.d.value('NEWVALUE[1]', 'nvarchar(max)') as [NEWVALUE],
                                S.d.value('CURRENTVALUE[1]', 'nvarchar(max)') as [CURRENTVALUE],
                                S.d.value('ACTION[1]', 'tinyint') as [ACTION],
                                S.d.value('FIELDKEY[1]', 'nvarchar(max)') as [FIELDKEY],
                                S.d.value('DATATYPE[1]', 'smallint') as [DATATYPE],
                                S.d.value('ATTRIBUTETYPEID[1]', 'int') as [ATTRIBUTETYPEID],
                                S.d.value('ALLOWMULTIPLES[1]', 'bit') as [ALLOWMULTIPLES],
                                S.d.value('CODETABLEID[1]', 'int') as [CODETABLEID],
                                S.d.value('TABLEENTRYIDLIST[1]', 'nvarchar(max)') as [TABLEENTRYIDLIST]
                            from MEMBERBIOINFO.nodes('/MEMBERBIOINFO/ITEM') S(d)
                            for xml raw('ITEM'),type,elements,BINARY BASE64
                        ) as [MEMBERBIOINFO],
                        (
                            select
                                S.d.value('PROCESS[1]', 'bit') as [PROCESS],
                                S.d.value('FIELD[1]', 'nvarchar(max)') as [FIELD],
                                S.d.value('CHANGEDFROM[1]', 'nvarchar(max)') as [CHANGEDFROM],
                                S.d.value('NEWVALUE[1]', 'nvarchar(max)') as [NEWVALUE],
                                S.d.value('CURRENTVALUE[1]', 'nvarchar(max)') as [CURRENTVALUE],
                                S.d.value('ACTION[1]', 'tinyint') as [ACTION],
                                S.d.value('FIELDKEY[1]', 'nvarchar(max)') as [FIELDKEY],
                                S.d.value('DATATYPE[1]', 'smallint') as [DATATYPE],
                                S.d.value('ATTRIBUTETYPEID[1]', 'int') as [ATTRIBUTETYPEID],
                                S.d.value('ALLOWMULTIPLES[1]', 'bit') as [ALLOWMULTIPLES],
                                S.d.value('CODETABLEID[1]', 'int') as [CODETABLEID],
                                S.d.value('TABLEENTRYIDLIST[1]', 'nvarchar(max)') as [TABLEENTRYIDLIST]
                            from MEMBERBIOINFOALL.nodes('/MEMBERBIOINFOALL/ITEM') S(d)
                            for xml raw('ITEM'),type,elements,BINARY BASE64
                        ) as [MEMBERBIOINFOALL],
                        (
                            select
                                S.d.value('FIELDKEY[1]','nvarchar(max)') as [FIELDKEY],
                                S.d.value('PHONETYPE[1]','nvarchar(max)') as [PHONETYPE],
                                S.d.value('ISEMAIL[1]','bit') as [ISEMAIL]
                            from MEMBERPHONETYPES.nodes('/MEMBERPHONETYPES/ITEM') S(d)
                            for xml raw('ITEM'),type,elements,BINARY BASE64
                        ) as [MEMBERPHONETYPES],
                        (
                            select
                                S.d.value('PROCESS[1]', 'bit') as [PROCESS],
                                S.d.value('FIELD[1]', 'nvarchar(max)') as [FIELD],
                                S.d.value('CHANGEDFROM[1]', 'nvarchar(max)') as [CHANGEDFROM],
                                S.d.value('NEWVALUE[1]', 'nvarchar(max)') as [NEWVALUE],
                                S.d.value('CURRENTVALUE[1]', 'nvarchar(max)') as [CURRENTVALUE],
                                S.d.value('ACTION[1]', 'tinyint') as [ACTION],
                                S.d.value('FIELDKEY[1]', 'nvarchar(max)') as [FIELDKEY],
                                S.d.value('DATATYPE[1]', 'smallint') as [DATATYPE],
                                S.d.value('ATTRIBUTETYPEID[1]', 'int') as [ATTRIBUTETYPEID],
                                S.d.value('ALLOWMULTIPLES[1]', 'bit') as [ALLOWMULTIPLES],
                                S.d.value('CODETABLEID[1]', 'int') as [CODETABLEID],
                                S.d.value('TABLEENTRYIDLIST[1]', 'nvarchar(max)') as [TABLEENTRYIDLIST]
                            from MEMBERADDRESSINFO.nodes('/MEMBERADDRESSINFO/ITEM') S(d)
                            for xml raw('ITEM'),type,elements,BINARY BASE64
                        ) as [MEMBERADDRESSINFO],
                        (
                            select
                                S.d.value('PROCESS[1]', 'bit') as [PROCESS],
                                S.d.value('FIELD[1]', 'nvarchar(max)') as [FIELD],
                                S.d.value('CHANGEDFROM[1]', 'nvarchar(max)') as [CHANGEDFROM],
                                S.d.value('NEWVALUE[1]', 'nvarchar(max)') as [NEWVALUE],
                                S.d.value('CURRENTVALUE[1]', 'nvarchar(max)') as [CURRENTVALUE],
                                S.d.value('ACTION[1]', 'tinyint') as [ACTION],
                                S.d.value('FIELDKEY[1]', 'nvarchar(max)') as [FIELDKEY],
                                S.d.value('DATATYPE[1]', 'smallint') as [DATATYPE],
                                S.d.value('ATTRIBUTETYPEID[1]', 'int') as [ATTRIBUTETYPEID],
                                S.d.value('ALLOWMULTIPLES[1]', 'bit') as [ALLOWMULTIPLES],
                                S.d.value('CODETABLEID[1]', 'int') as [CODETABLEID],
                                S.d.value('TABLEENTRYIDLIST[1]', 'nvarchar(max)') as [TABLEENTRYIDLIST]
                            from MEMBERADDRESSINFOALL.nodes('/MEMBERADDRESSINFOALL/ITEM') S(d)
                            for xml raw('ITEM'),type,elements,BINARY BASE64
                        ) as [MEMBERADDRESSINFOALL]
                        from dbo.UFN_BATCHBBNCMEMBERSHIP_GETMEMBERS(@BATCHBBNCMEMBERSHIPID)
                        for xml raw('ITEM'),type,elements,root('MEMBERSINFO'),BINARY BASE64
                )
            end