On 24-May-2016 07:27 -0500, Rob Berendt wrote:
Neither method <ed: create table from query of the UDTF and DSPFFD
nor query of SYSPARMS> leads to believe that the <ed: member text>
information is in there.
  And my suggestion [for how] to use a scalar UDF was problematic in a 
test; i.e. used in another lateral join of values-row-clause invoking 
that UDF, instead of functioning as expected [i.e. producing expected 
output] on v7r1, resulted in [even if I replace that UDF with the 
built-in REPLACE scalar, for example]:
  msgMCH3601 T/QQQVFMT TM/QQQVFMT TP/VFLDJREF STMT/34534 "Pointer not 
set for location referenced.
  msgCPF4204 F/QQQQUERY FM/QQQQUERY FP/QQQQUERY stmt/33065 QDT1 
"Internal failure occurred in query processor."
  msgSQL0901 rcCPF4204 et3107 f/QSQXCUTE
  The revised\failing invocation:
   SELECT  A.DBXLIB as SRCPF_LIBR
   , A.DBXFIL as SRCPF_NAME
   , B.SYSTEM_TABLE_MEMBER as SrcMbrName
   , B.LAST_SOURCE_UPDATE_TIMESTAMP as SRCPF_UDAT
   , B.SOURCE_TYPE as SRCPF_SRCTYPE
   , b.CREATE_TIMESTAMP as Source_Create_Timestamp
   , b.LAST_CHANGE_TIMESTAMP as Source_Type_Text_Change_Timestamp
   , c."Mbr_Text" /* originally c.* and no naming of col in NTE */
   FROM QSYS.QADBXATR A
      , LATERAL
        ( SELECT * FROM TABLE
          ( QSYS2.PARTITION_STATISTICS(A.DBXLIB, A.DBXFIL) ) AS X
        ) AS B
      , lateral
        ( values(replace(A.DBXLIB,A.DBXFIL,SYSTEM_TABLE_MEMBER))
        ) AS C ( "Mbr_Text" )
   WHERE A.DBXlib = 'MYLIBR'
     and A.DBXATR = 'PF'
     and A.DBXREL = 'Y'
     and A.DBXTYP = 'S'
     AND B.SOURCE_TYPE IS NOT NULL
As an Amazon Associate we earn from qualifying purchases.