FIELDWBLOCK( )

 Devuelve un bloque de código de asignación/lectura de un campo en un área de trabajo determinada

Sintaxis

     FIELDWBLOCK(<cNombreCampo>, <nAreaTrabajo>) –> bBloqueCampoT

Argumentos

<cNombreCampo> es el nombre del campo especificado como una cadena de caracteres.

<nAreaTrabajo> es el número de área de trabajo donde reside el campo especificado.

Devuelve

FIELDWBLOCK() devuelve un bloque de código que, cuando se evalúa, asigna u obtiene el valor de <cNombreCampo> en el área de trabajo designada por <nAreaTrabajo>. Si <cNombreCampo> no existe en el área de trabajo especificada, FIELDWBLOCK() devuelve NIL.

Descripción

FIELDWBLOCK() es una función de base de datos que crea un bloque de código. Cuando se evalúa el bloque de código con la función EVAL(), en primer lugar, selecciona el <nAreaTrabajo> designada. Si se ha pasado un argumento, el bloque de código asigna el valor del argumento a <cNombreCampo>. Si no se ha pasado ningún argumento, el bloque de código obtiene el valor de <cNombreCampo>. El área de trabajo original se vuelve a seleccionar antes de que el bloque de código devuelva el control.

Observe que es posible que no exista la variable de campo especificada cuando se cree el bloque de código, pero debe existir antes de que se ejecute.

 Notas

     ¦  FIELDWBLOCK() es similar a FIELDBLOCK(), con la excepción de que FIELDWBLOCK() incorpora un área de trabajo fija en el bloque de asignación/lectura.

 Ejemplos

     ¦  Este ejemplo compara FIELDWBLOCK() con un bloque de código creado utilizando el operador de macro. Observe que utilizando FIELDWBLOCK() se evitan los problemas de velocidad y tamaño asociados con el operador de macroexpresiones:

        // Bloque de asignación/lectura para el área de trabajo 1

        // definido con el operador de macroexpresiones

        bAsilec := &( “{ ValorAsig IF( ValorAsig == NIL, ;

           1->NomC, 1->NomC := ValorAsig ) }” )

        // Bloque de asignación/lectura definido por medio de

        // FIELDWBLOCK()

 

        // bAsilec creado aquí es el equivalente

        // funcional del bAsilec anterior

        bAsilec := FIELDWBLOCK(“NomC”, 1)

 Ficheros:  La biblioteca asociada es DPXBASE.CH.