/*
 * $Id: rdd.txt 10694 2009-03-25 15:34:09Z vszakats $
 */

/*
 * Las siguientes partes son derechos adquiridos de sus autores individuales.
 * www - http://www.harbour-project.org
 *
 * Copyright 2003 Alejandro de G rate <alex_degarate@hotmail.com>
 * Documentaci¢n en Espa¤ol de: 
 *    DB*(), ORD*(), RDD*()
 *
 * Copyright 1999 Luiz Rafael Culik <culik@sl.conex.net>
 * Documentaci¢n en Ingl‚s de: 
 *    DB*(), ORD*(), RDD*()
 *
 * Vea COPYING por los t‚rminos de la licencia.
 *
 */

/*  $DOC$
 *  $FUNCNAME$
 *      RDDLIST()
 *  $CATEGORY$
 *      Base de Datos
 *  $ONELINER$
 *      Retorna un array con los Manejadores de Bases de Datos disponibles
 *  $SYNTAX$
 *      RDDLIST([<nTipoRDD>]) --> aRDDLista
 *  $ARGUMENTS$
 *      <nTipoRDD>  es un entero que representa el tipo de RDD que Ud. desea
 *                  listar.  Las constantes RDT_FULL y RDT_TRANSFER 
 *                  representan los dos tipos de RDDs actualmente disponibles
 *
 *      Resumen de Tipo de RDDs 
 *      ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
 *      Constante      Valor       Significado
 *      ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
 *      RDT_FULL         1         Implementaci¢n Completa de RDD
 *      RDT_TRANSFER     2         Solamente driver Importar/Exportar
 *      ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
 *
 *      RDT_FULL identifica a los RDDs que tienen todas las capacidades que
 *      se asocian con un RDD.
 *
 *      RDT_TRANSFER identifica a RDDs de capcidad limitada. Estos solamente
 *      pueden transferir registros entre archivos. Ud. no puede usar estos 
 *      limitados drivers para abrir un archivo en un  rea de trabajo.
 *      Los manejadores SDF y DELIM son ejemplos de este tipo de RDD.
 *      Ellos solamente son usados en la implementaci¢n de APPEND FROM y 
 *      COPY TO con archivos SDF ¢ DELIMITED.
 *  $RETURNS$
 *      RDDLIST() retorna un array unidimensional de los nombres de RDD 
 *      registrados con la aplicaci¢n como <nTipoRDD>.
 *  $DESCRIPTION$
 *      RDDLIST() es una funci¢n que devuelve una array de una dimensi¢n
 *      que contiene los nombres de todos los RDD disponibles.
 *
 *      Si Ud. no especifica <nTipoRDD>, ser n devueltos todos los RDD 
 *      disponibles sin importar el tipo.
 *  $EXAMPLES$
 *      En este ejemplo RDDLIST() retorna un array conteniendo las cadenas 
 *      de caracteres: "DBF", "SDF", "DELIM", "DBFCDX", and "DBFNTX":
 *
 *      REQUEST DBFCDX
 *      .
 *      . < sentencias >
 *      .
 *      aRDDs := RDDLIST()   // Retorna 
 *                           // {"DBF", SDF", "DELIM", "DBFCDX", "DBFNTX" }
 *
 *
 *      En este ejemplo RDDLIST() retorna un array conteniendo las
 *      cadenas de caracteres: "SDF" and "DELIM":
 *
 *      #include "rddsys.ch"
 *      .
 *      . < sentencias >
 *      .
 *      aImpExp := RDDLIST( RDT_TRANSFER )
 *
 *  $TESTS$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *
 *  $SEEALSO$
 *      RDDNAME()
 *  $INCLUDE$
 *      El archivo de cabecera es rddsys.ch
 *  $END$
 */

/*  $DOC$
 *  $FUNCNAME$
 *      RDDNAME()
 *  $CATEGORY$
 *      Base de Datos
 *  $ONELINER$
 *      Retorna el nombre del RDD actualmente activo
 *  $SYNTAX$
 *      RDDNAME() --> cNombreRDD
 *  $ARGUMENTS$
 *      Ninguno
 *  $RETURNS$
 *      Retorna una cadena de caracteres, el nombre registrado del RDD activo
 *      en el  rea de trabajo actual ¢ en el  rea especificada.
 *  $DESCRIPTION$
 *      RDDNAME() es una funci¢n que devuelve una cadena de caracteres con el
 *      nombre registrado del RDD activo en el  rea de trabajo actual ¢ en el 
 *       rea especificada.
 *
 *      Ud. puede especificar un  rea de trabajo distinta de la actual usando
 *      un alias con la funci¢n.
 *  $EXAMPLES$
 *      USE Customer VIA "DBFNTX" NEW
 *      USE Sales    VIA "DBFCDX" NEW
 *
 *      ? RDDNAME()                   // Retorna: DBFCDX (area actual)
 *      ? Customer->( RDDNAME() )     // Retorna: DBFNTX (area especificada)
 *      ? Sales->( RDDNAME() )        // Retorna: DBFCDX (area especificada)
 *  $TESTS$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *
 *  $SEEALSO$
 *      RDDLIST()
 *  $INCLUDE$
 *
 *  $END$
 */

/*  $DOC$
 *  $FUNCNAME$
 *      RDDSETDEFAULT()
 *  $CATEGORY$
 *      Base de Datos
 *  $ONELINER$
 *      Establece ¢ retorna el RDD por defecto para la aplicaci¢n.
 *  $SYNTAX$
 *      RDDSETDEFAULT( [<cNewDefaultRDD>] ) --> cPreviousDefaultRDD
 *
 *  $ARGUMENTS$
 *      <cNewDefaultRDD> es una cadena de caracteres, el nombre del RDD que
 *                       va a ser hecho el nuevo RDD por defecto para la 
 *                       aplicaci¢n.
 *  $RETURNS$
 *      RDDSETDEFAULT() retorna una cadena de caracteres conteniendo el 
 *      nombre del manejador por defecto anterior <cPreviousDefaultRDD>. 
 *  $DESCRIPTION$
 *      RDDSETDEFAULT() es una funci¢n que devuelve el nombre del manejador
 *      (driver) por defecto anterior <cPreviousDefaultRDD> y opcionalmente 
 *      establece el manejador actual, especificado por <cNewDefaultRDD>.
 *
 *      Si <cNewDefaultRDD> no es especificado, el nombre del manejador por 
 *      defecto actual es devuelto y ‚ste contin£a siendo el manejador por 
 *      defecto. El manejador por defecto es el driver que Harbour usa si Ud.
 *      no especifica expl¡citamente un RDD con la cl usula VIA en el comando
 *      USE.
 *
 *      Esta funci¢n reemplaza a la funci¢n DBSETDRIVER() 
 *  $EXAMPLES$
 *      // Si el manejador por defecto no es DBFNTX, ponerlo por defecto
 *
 *      IF ( RDDSETDEFAULT() != "DBFNTX" )
 *           cOldRdd := RDDSETDEFAULT( "DBFNTX" )
 *      ENDIF
 *  $TESTS$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *
 *  $SEEALSO$
 *      DBSETDRIVER()
 *  $INCLUDE$
 *
 *  $END$
 */


/*  $DOC$
 *  $FUNCNAME$
 *      __RDDSETDEFAULT()
 *  $CATEGORY$
 *      Base de Datos
 *  $ONELINER$
 *      Establece ¢ retorna el RDD por defecto para la aplicaci¢n.
 *  $SYNTAX$
 *      __RDDSETDEFAULT( [<cNewDefaultRDD>] ) --> cPreviousDefaultRDD
 *  $ARGUMENTS$
 *      <cNewDefaultRDD> es una cadena de caracteres, el nombre del RDD que
 *                       va a ser hecho el nuevo RDD por defecto para la 
 *                       aplicaci¢n.
 *  $RETURNS$
 *      __RDDSETDEFAULT() retorna una cadena de caracteres conteniendo el 
 *      nombre del manejador por defecto anterior <cPreviousDefaultRDD>. 
 *  $DESCRIPTION$
 *      __RDDSETDEFAULT() es una funci¢n que devuelve el nombre del manejador
 *      (driver) por defecto anterior <cPreviousDefaultRDD> y opcionalmente 
 *      establece el manejador actual, especificado por <cNewDefaultRDD>.
 *
 *      Si <cNewDefaultRDD> no es especificado, el nombre del manejador por 
 *      defecto actual es devuelto y ‚ste contin£a siendo el manejador por 
 *      defecto. El manejador por defecto es el driver que Harbour usa si Ud.
 *      no especifica expl¡citamente un RDD con la cl usula VIA en el comando
 *      USE.
 *      Esta es una funci¢n de bajo nivel y debe usarse RDDSETDEFAULT() en su
 *      lugar.
 *      Esta funci¢n reemplaza a la funci¢n DBSETDRIVER() 
 *  $EXAMPLES$
 *      // Si el manejador por defecto no es DBFNTX, ponerlo por defecto
 *
 *      IF ( __RDDSETDEFAULT() != "DBFNTX" )
 *           cOldRdd := __RDDSETDEFAULT( "DBFNTX" )
 *      ENDIF
 *  $TESTS$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *
 *  $SEEALSO$
 *      DBSETDRIVER()
 *  $INCLUDE$
 *
 *  $END$
 */ 



