/*
 * $Id: sayget.txt 9312 2008-09-05 00:08:34Z vszakats $
 */

/*
 * Las siguientes partes son derechos adquiridos de sus autores individuales.
 * www - http://www.harbour-project.org
 *
 * Copyright 2003 Alejandro de Grate <alex_degarate@hotmail.com>
 * Documentacin en Espaol de:
 *          @...GET, @...SAY
 *
 * Vea doc/license.txt por los trminos de la licencia.
 *
 */

/*  $DOC$
 *  $COMMANDNAME$
 *      @...GET
 *  $CATEGORY$
 *      Comando
 *  $ONELINER$
 *      Crea un objeto GET y lo visualiza en pantalla
 *  $SYNTAX$
 *      @ <nFila>,<nCol> [SAY <cSay> [PICTURE <cSayPict>] COLOR <cSayColor> ]
 *                        GET <xVar> [PICTURE <cGetPict>] [COLOR <cGetColor>]
 *                  [WHEN <lWhen>] [VALID <lValid> / RANGE <xInicio>,<xFin>]
 *  $ARGUMENTS$
 *      <nFila>     La fila donde se visualiza el SAY/GET
 *
 *      <nCol>      La columna donde se visualiza el SAY/GET
 *
 *      <cSay>      Mensaje a visualizar
 *
 *      <cSayPict>  Expresin de Caracteres para el PICTURE del SAY
 *
 *      <cSayColor> Color a ser Usado por la expresin SAY.
 *
 *      <xVar>      El nombre de la variable/campo
 *
 *      <cGetPict>  Expresin de Caracteres para el PICTURE del GET
 *
 *      <lWhen>     Expresin lgica para permitir el GET.
 *
 *      <lValida>   Expresin lgica para validar la entrada del GET
 *
 *      <xInicio>   Valor inferior de RANGE
 *
 *      <xFin>      Valor superior de RANGE.
 *
 *      <cGetColor> Cadena de Color a ser usada por la expresin GET
 *  $RETURNS$
 *      Ninguno
 *  $DESCRIPTION$
 *      Este comando agrega un objeto GET al array pblico reservado llamado
 *      GETLIST[] y lo muestra en pantalla. El campo  variable a ser
 *      agregada al objeto GET es especificada en <xVar> y es visualizada
 *      en las coordenadas fila, columna <nFila>, <nCol>.
 *
 *      Si la clusula SAY es usada el mensaje <cSay> ser visualizado
 *      comenzando en <nFila>,<nCol>, mientras que la variable de campo
 *      <xVar> ser visualizada en ROW(), COL()+ 1.
 *
 *      Si la clusula PICTURE es usada para la expresin SAY, el molde
 *      <cSayPicr> es usado, todas las reglas de formato contenidas en l se
 *      aplicarn. Vea la funcin TRANSFORM I, para mayor informacin.
 *
 *      Si <cGetPict> es especificado, la clusula PICTURE de <xVar> ser
 *      usada para el objeto GET y todas las reglas de formato sern
 *      aplicadas. Vea las reglas de formato para GET en la tabla ms abajo.
 *
 *      Si la clusula WHEN es especificada, entonces <lWhen> se evala por
 *      una condicin lgica (.T.) y en ese caso el objeto GET ser activado
 *      De otro modo el objeto GET ser saltado y ninguna informacin ser
 *      obtenida a travs de la pantalla. El nombre de una funcin definida
 *      por el usuario que retorne true (.T.)  false ( F.)  un codeblock
 *      puede ser especificado en <lWhen>. Esta clusula no ser activada
 *      hasta que un comando READ  una funcin READMODAL() sea ejecutada.
 *
 *      Si la clusula VALID es especificada, <lValida> se evala por una
 *      condicin lgica (.T.), si se cumple, el GET actual se considera
 *      vlido y la operatoria del GET continuar hasta encontrar el prximo
 *      objeto GET activo. De lo contrario el cursor permanecer en este
 *      objeto GET hasta que la operacin se aborte  la condicin en
 *      <lValid> se cumpla (.T.).  El nombre de una funcin definida por
 *      el usuario que retorne true (.T.)  false ( F.)  un codeblock
 *      puede ser especificado en <lValida>. Esta clusula no ser activada
 *      hasta que un comando READ  una funcin READMODAL() sea ejecutada.
 *
 *      Si la clusula RANGE (rango) es especificada, en lugar de la clusula
 *      VALID, los dos valores que limitan el rango deben ser especificados
 *      en <xInicio> y <xFin>. La variable que se evala debe ser del mismo
 *      tipo que las que constituyen el rango. Si la variable <xVar> es del
 *      tipo de fecha (DATE), <xInicio> y <xFin> deben ser tambin del tipo
 *      DATE.  Si la variable <xVar> es del tipo NUMERICo <xInicio> y <xFin>
 *      deben ser tambin del tipo numrico. Si un valor falla el test RANGE,
 *      un mensaje de "OUT OF RANGE" (fuera de rango) aparecer en el area
 *      SCOREBOARD (fila = 0, col. = 60). El mensaje de RANGE puede ser
 *      desactivado si el comando SET SCOREBOARD  la funcion SET() apropiada
 *      es puesta a .F.
 *
 *      <fixed>
 *      <table>
 *      Funcin     Reglas de Formateo del GET
 *        @A        Permite solamente caracteres alfabticos
 *        @B        Los nmeros sern justificados a la izquierda
 *        @C        Todos los nmeros positivos sern seguidos por CR
 *        @D        Todas las fechas usarn el formato SET DATE
 *        @E        Las fechas estarn en formato Britnico y los nmeros
 *                  en formato Europeo.
 *        @K        Permite que un valor sugerido sea visto dentro del GET
 *                  pero borrado si se presiona alguna tecla que no sea la
 *                  de cursores cuando el cursor esta en la primera posicin
 *                  en el rea del GET.
 *        @R        Los caracteres que se indican sern insertados
 *        @S<nSize> Permite el desplazamiento horizontal de un campo 
 *                  variable que es de <nSize> caracteres de ancho.
 *        @X        Todos los nmeros negativos sern seguidos por DB
 *        @Z        Visualiza los valores numricos cero como blancos
 *        @!        Fuerza la conversin a maysculas de los caracteres
 *        @(        Visualiza los nmeros negativos en parentesis con
 *                  espacios adelante
 *        @)        Visualiza los nmeros negativos en parentesis sin
 *                  espacios adelante
 *      </table>
 *      </fixed>
 *
 *      <fixed>
 *      <table>
 *      Molde  Reglas de Formateo del GET
 *        A    Slo caracteres alfabticos son permitidos
 *        N    Slo caracteres alfabticos y numricos son permitidos
 *        X    Cualquier caracter es permitido
 *        L    Slo T  F son permitidos para datos lgicos
 *        Y    Slo Y  N son permitidos para datos lgicos
 *        9    Slo digitos, incluyendo signos sern permitidos
 *        #    Slo digitos, signos y espacios sern permitidos
 *        !    Caracteres alfabticos son convertidos a Maysculas
 *        S    El signo Pesos ser visualizado en lugar de espacios, delante
 *             del tipo de dato numrico (aqui visto cmo una "S")
 *        *    El signo Asterisco ser visualizado en lugar de espacios
 *             delante del tipo de dato numrico
 *        .    Punto, define la posicin del punto decimal
 *        ,    Coma, define la posicin del separado de miles.
 *      </table>
 *      </fixed>
 *      Nota:
 *      Las funciones de formateo para PICTURE pueden ser agrupadas juntas
 *      cuando sean usandas conjuntamente con los moldes para PICTURE.
 *      Sin embargo un espacio en blanco debe ser insertado en la cadena de
 *      PICTURE si existen ambas: funciones y moldes.
 *  $EXAMPLES$
 *      FUNCTION Main()
 *       LOCAL cVar := Space(50)
 *       LOCAL nId  := 0
 *       CLS
 *       @ 3,1 SAY "Nombre" GET cVar PICTURE "@!S 30"
 *       @ 4,1 SAY "Ident." GET nId  PICTURE "999.999"
 *       READ
 *       ? "El nombre que Ud. ingres es:", cVar
 *       ? "La Ident. que Ud. ingres es:", nId
 *      RETURN NIL
 *  $TESTS$
 *      Ver ejemplos
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      Este comando es totalmente compatible con CA-Cl*pper.
 *  $PLATFORMS$
 *      Todas
 *  $FILES$
 *      La librera asociada es rtl
 *  $SEEALSO$
 *      @...SAY,READ,TRANSFORM()
 *  $END$
 */

/*  $DOC$
 *  $COMMANDNAME$
 *      @...SAY
 *  $CATEGORY$
 *      Comando
 *  $ONELINER$
 *      Visualiza datos en las coordenadas dadas en el dispositivo actual
 *  $SYNTAX$
 *      @ <nFila>,<nCol> SAY <xValor> [ PICTURE <cPict> ] [COLOR <cColor>]
 *  $ARGUMENTS$
 *      <nFila>    La fila donde se visualiza el SAY
 *
 *      <nCol>     La columna donde se visualiza el SAY
 *
 *      <xValor>   Valor a visualizar
 *
 *      <cPict>    Formato para el PICTURE
 *
 *      <cColor>   Cadena de Color
 *  $RETURNS$
 *      Ninguno
 *  $DESCRIPTION$
 *      Este comando visualiza el contenido de <xValor> en las coordenadas
 *      <nFila>, <nCol>. Una clusula PICTURE puede ser especificada en
 *      <cPict>. Si el dispositivo actual es establecido a la impresora, la
 *      salida ir a la impresora; Por defecto todas las salidas son
 *      dirigidas a la pantalla.
 *
 *      Para una lista completa de los Moldes y Funciones para PICTURES, vea
 *      el comando @...GET
 *  $EXAMPLES$
 *      FUNCTION Main
 *       CLS
 *       @ 2,1 SAY "Harbour"
 *       @ 3,1 SAY "is" COLOR "b/r+"
 *       @ 4,1 SAY "Power" PICTURE "@!"
 *      RETURN NIL
 *  $TESTS$
 *      Ver ejemplos
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      Este comando es totalmente compatible con CA-Cl*pper.
 *  $PLATFORMS$
 *      Todas
 *  $FILES$
 *      La librera asociada es rtl
 *  $SEEALSO$
 *      @...GET,SET DEVICE,TRANSFORM()
 *  $END$
 */


