Campos de un DataSource

El siguiente código te devuelve los nombres de campo del Data Source entre comillas y separador por TAB

// Resumen: Devuelve una cadena con los nombres de campo del 
// Data Source entre comillas y separados por TAB
// Descripción de los parámetros de entrada/salida de 'GetDataSourceEncabezado':
//
// Sintaxis:
//[ <Result> = ] GetDataSourceEncabezado (<dsTabla> is data source)
//
// Parámetros:
//            dsTabla (data source): <indique aquí el rol de dsTabla>
// Valor de retorno:
//            ANSI string: //    Ninguno
//
// Ejemplo:
// Indique un ejemplo.
//
PROCEDURE GetDataSourceEncabezado(LOCAL dsTabla is Data Source):string
 
sReturn is string
sListItm is string
 
WHEN EXCEPTION IN
               
       // Lista campos en el Data Source
       sListItm = HListItem(dsTabla)
               
       // Componemos la cabecera
       FOR EACH STRING sAnItem OF sListItm SEPARATED BY CR
           sReturn += [TAB] + """"+sAnItem + """"
       END      
 
DO
       sReturn  = ""
       Error( ExceptionInfo(errMessage) )
END
 
RESULT (sReturn)