Difference between revisions of "Lenguaje de formatos"

From ABCD Wiki
Jump to: navigation, search
(Página creada con «==Extractores de campos== El lenguaje de formatos permite extraer información de un registro CDS/Isis, prepararla y presentarla al usuario por pantalla o enviarla a i...»)
 
(Extractores de campos)
Line 1: Line 1:
 
==Extractores de campos==
 
==Extractores de campos==
El lenguaje de formatos permite extraer información de un registro CDS/Isis, prepararla y presentarla al usuario por pantalla o enviarla a impresoras u otros medios de salida.
+
El lenguaje de formatos permite extraer información de un registro CDS/Isis, prepararla y presentarla al usuario por pantalla o enviarla a impresoras u otros medios de salida.
Para extraer información de un registro se usan los extractores de campos, los cuales, en su forma más sencilla se forman con la letra v (en mayúscula o minúscula, indistintamente), seguida por la etiqueta del campo cuyo contenido se desea extraer:
+
  Vxx Incluye en la salida el campo cuya etiqueta representa el valor xx
+
Para extraer información de un registro se usan los extractores de campos, los cuales, en su forma más sencilla se forman con la letra v (en mayúscula o minúscula, indistintamente), seguida por la etiqueta del campo cuyo contenido se desea extraer:
Ej: v10 Si el campo posee subcampos, en la extracción del campo se debe indicar el subcampo que se desea acceder Vxx^a Incluye en la salida el subcampo (^a) o equivalente presente en campo con etiqueta xx
+
        Vxx   Incluye en la salida el campo cuya etiqueta representa el valor xx
Ej: v10^a, v10^r
+
              Ej:v10  
+
Si el campo posee subcampos, en la extracción del campo se debe indicar el subcampo que se desea acceder
Cuando el primer subcampo de un elemento de datos es obligatorio, como en el caso de los nombres personales los cuales se forman con el apellido y el nombre propiamente dicho estando siempre presente el apellido; entonces, en este caso no es necesario identificar el apellido con un delimitar de subcampos ya que es un elemento obligarorio. El ingreso se podrá realizar de la siguiente forma: Ascencio^nGuilda.
+
      Vxx^a   Incluye en la salida el subcampo (^a) o  
El primer subcampo del campo es Ascencio y para referenciarse al mismo se usa la construcción ^* lo cual es equivalente a primer subcampo del campo, entendiendose como primer subcampo la cadena de caracteres existente desde el inicio del campo hasta que se encuentre un delimitador de subcampos (^..) o el fin del campo. Bajo este concepto, si la etiqueta del campo nombre es 10, el comando v10^*,", "v10^n producirá como salida Ascencio, Guilda
+
              equivalente presente en campo con etiqueta xx. Ej: v10^a, v10^r
 +
Cuando el primer subcampo de un elemento de datos es obligatorio, como en el caso de los nombres personales los cuales se forman con el apellido y el nombre propiamente dicho estando siempre presente el apellido; entonces, en este caso no es necesario identificar el apellido con un delimitar de subcampos ya que es un elemento obligarorio. El ingreso se podrá realizar de la siguiente forma:  
 +
              Ruiz Alvarado^nFernando
 +
El primer subcampo del campo es '''Ruiz Alvarado''' y para referenciarlo se usa la construcción '''^*''' lo cual es equivalente a primer subcampo del campo, entendiendose como primer subcampo la cadena de caracteres existente desde el inicio del campo hasta que se encuentre un delimitador de subcampos (^) o el fin del campo. Bajo este concepto, si la etiqueta del campo nombre es 10, el comando  
 +
              v10^*,", "v10^n  
 +
producirá como salida
 +
              Ruiz Alvarado, Fernando
 
 
Extractores virtuales de campo
+
==Extractores virtuales de campo==
Estos elementos del lenguaje de formatos se utilizan para generar un literal en el formato de salida, dependiendo de si un campo está presente o ausente. Son los siguientes:
+
Estos elementos del lenguaje de formatos se utilizan para generar un literal en el formato de salida, dependiendo de si un campo está presente o ausente. Son los siguientes:
  Dxx   Presenta en la salida el literal asociado, si el campo con etiqueta xx  está presente en el registro:
+
              Dxx  
Ej: "El campo tiene materias. "d76
+
Presenta en la salida el literal asociado, si el campo con etiqueta xx  está presente en el registro:
En la salida se incluye el rótulo El campo tiene materias.  si el campo 76 está presente en el registro. Si el campo 76 está ausente, no se genera el literal correspondiente   Nxx   Coloca en la salida el literal asociado si el campo con etiqueta xx está ausente.
+
              Ej: "El campo tiene materias. "d76
Ej: "S/F"n43
+
En la salida se incluye el rótulo El campo tiene materias.  si el campo 76 está presente en el registro. Si el campo 76 está ausente, no se genera el literal correspondiente  
En la salida aparecerá el literal S/F si el campo 43 está ausente. Si el campo está presente no se genera salida ninguna En ninguno de estos casos se coloca el contenido del campo en la salida generada.
+
              Nxx  
 +
Coloca en la salida el literal asociado si el campo con etiqueta xx está ausente.
 +
              Ej: "S/F"n43
 +
En la salida aparecerá el literal S/F si el campo 43 está ausente. Si el campo está presente no se genera salida ninguna
 +
 
 +
En ninguno de estos casos se coloca el contenido del campo en la salida generada.
 +
 +
==Extractores parciales de campo==
 +
El lenguaje de formatos permite extraer una subcadena de caracteres de un campo especificando el inicio de la cadena a extraer y la longitud de la misma.
 +
 +
Para ilustrar este aspecto, consideremos el caso de un campo de fecha tratado bajo la norma ISO, la cual establece que el ingreso debe realizarse de la siguiente manera: AAAAMMDD, o sea, que el ańo simpre será el primer elemento del campo y constará de dos dígitos, a continuación se colocará el mes, siempre con dos dígitos y al final del día, también con dos dígitos.
 +
 +
El ańo, al ser el primer elemento del campo, está desplazado 0 (cero) caracteres respecto al inicio del campo; el mes está desplazado 4 caracteres respecto al inicio del campo y el día está desplazado 6 caracteres respecto al inicio del campo.
 
 
Extractores parciales de campo
 
El lenguaje de formatos permite extraer una subcadena de caracteres de un campo especificando el inicio de la cadena a extraer y la longitud de la misma.
 
La ilustrar este aspecto, consideremos el caso de un campo de fecha tratado bajo la norma ISO, la cual establece que el ingreso debe realizarse de la siguiente manera: AAAAMMDD, o sea, que el ańo simpre será el primer elemento del campo y constará de dos dígitos, a continuación se colocará el mes, siempre con dos dígitos y al final del día, también con dos dígitos.
 
El ańo, al ser el primer elemento del campo, está desplazado 0 (cero) caracteres respecto al inicio del campo; el mes está desplazado 4 caracteres respecto al inicio del campo y el día está desplazado 6 caracteres respecto al inicio del campo.
 
 
Gráficamente, ésto corresponde a la siguiente situación:
 
Gráficamente, ésto corresponde a la siguiente situación:
+
          Contenido del campo  Desplazamientos respecto al orígen del campo
Contenido del campo20011001 Desplazamientos respecto al orígen del campo01234567
+
                20011001       01234567
Para extraer porciones de un campo, el lenguaje de formatos permite expresar una porción de un campo en términos de su posición respecto al orígen (desplazamiento) y de la cantidad de caracteres a tomar en cuenta a partir de esa posicion inicial (longitud). El símbolo para identificar el valor del desplazamiento es el * (asterisco) y la longitud se expresa con símbolo . (punto). Entonces, la construcción   Vxx*D.L    extraerá L caracteres del campo xx tomados a partir del desplazamiento D respecto al inicio del campo.
+
Para extraer porciones de un campo, el lenguaje de formatos permite expresar una porción de un campo en términos de su posición respecto al orígen (desplazamiento) y de la cantidad de caracteres a tomar en cuenta a partir de esa posicion inicial (longitud). El símbolo para identificar el valor del desplazamiento es el * (asterisco) y la longitud se expresa con símbolo . (punto). Entonces, la construcción  
Ej. Si el campo 44 se ingresó con el valor 20010915, tendremos:
+
                Vxx*D.L    extraerá L caracteres del campo xx tomados a partir del
          v44*6.2 = 15         v44*4.2 = 09         v44*0.4 = 2001
+
                          desplazamiento D respecto al inicio del campo.
Si el desplazamiento es cero, esto es, la porción que deseamos obtener se encuentra al inicio del campo, entonces, no es necesario especificar es desplazamiento sino lo solo la longitud del segmento a extraer. Ejm: v44*0.4 = v44.4
+
Ej. Si el campo 44 se ingresó con el valor 20010915, tendremos:
Si la longitud del segmento que deseamos extraer se ubica a partir de un desplazamiento x hasta el final del campo, no es necesario especificar la longitud a extraer. Ejm: v44*6.2 = v44*6 .Al ommitirse la  longitud se toma desde la posición 6 el resto de caracteres presentes en el campo (2)
+
                v44*6.2 = 15
 +
                v44*4.2 = 09
 +
                v44*0.4 = 2001  
 +
Si el desplazamiento es cero, esto es, la porción que deseamos obtener se encuentra al inicio del campo, entonces, no es necesario especificar es desplazamiento sino lo solo la longitud del segmento a extraer.  
 +
                Ejm: v44*0.4 = v44.4
 +
Si la longitud del segmento que deseamos extraer se ubica a partir de un desplazamiento x hasta el final del campo, no es necesario especificar la longitud a extraer.
 +
                Ejm: v44*6.2 = v44*6  
 +
Al omitirse la  longitud se toma desde la posición 6 el resto de caracteres presentes en el campo (2)

Revision as of 11:35, 21 December 2013

Extractores de campos

El lenguaje de formatos permite extraer información de un registro CDS/Isis, prepararla y presentarla al usuario por pantalla o enviarla a impresoras u otros medios de salida.

Para extraer información de un registro se usan los extractores de campos, los cuales, en su forma más sencilla se forman con la letra v (en mayúscula o minúscula, indistintamente), seguida por la etiqueta del campo cuyo contenido se desea extraer:

       Vxx    Incluye en la salida el campo cuya etiqueta representa el valor xx
              Ej:v10 

Si el campo posee subcampos, en la extracción del campo se debe indicar el subcampo que se desea acceder

      Vxx^a   Incluye en la salida el subcampo (^a) o 
              equivalente presente en campo con etiqueta xx. Ej: v10^a, v10^r

Cuando el primer subcampo de un elemento de datos es obligatorio, como en el caso de los nombres personales los cuales se forman con el apellido y el nombre propiamente dicho estando siempre presente el apellido; entonces, en este caso no es necesario identificar el apellido con un delimitar de subcampos ya que es un elemento obligarorio. El ingreso se podrá realizar de la siguiente forma:

              Ruiz Alvarado^nFernando 						

El primer subcampo del campo es Ruiz Alvarado y para referenciarlo se usa la construcción ^* lo cual es equivalente a primer subcampo del campo, entendiendose como primer subcampo la cadena de caracteres existente desde el inicio del campo hasta que se encuentre un delimitador de subcampos (^) o el fin del campo. Bajo este concepto, si la etiqueta del campo nombre es 10, el comando

              v10^*,", "v10^n 

producirá como salida

              Ruiz Alvarado, Fernando 				

Extractores virtuales de campo

Estos elementos del lenguaje de formatos se utilizan para generar un literal en el formato de salida, dependiendo de si un campo está presente o ausente. Son los siguientes:

             Dxx 

Presenta en la salida el literal asociado, si el campo con etiqueta xx está presente en el registro:

              Ej: "El campo tiene materias. "d76				

En la salida se incluye el rótulo El campo tiene materias. si el campo 76 está presente en el registro. Si el campo 76 está ausente, no se genera el literal correspondiente

              Nxx 

Coloca en la salida el literal asociado si el campo con etiqueta xx está ausente.

              Ej: "S/F"n43

En la salida aparecerá el literal S/F si el campo 43 está ausente. Si el campo está presente no se genera salida ninguna

En ninguno de estos casos se coloca el contenido del campo en la salida generada.

Extractores parciales de campo

El lenguaje de formatos permite extraer una subcadena de caracteres de un campo especificando el inicio de la cadena a extraer y la longitud de la misma.

Para ilustrar este aspecto, consideremos el caso de un campo de fecha tratado bajo la norma ISO, la cual establece que el ingreso debe realizarse de la siguiente manera: AAAAMMDD, o sea, que el ańo simpre será el primer elemento del campo y constará de dos dígitos, a continuación se colocará el mes, siempre con dos dígitos y al final del día, también con dos dígitos.

El ańo, al ser el primer elemento del campo, está desplazado 0 (cero) caracteres respecto al inicio del campo; el mes está desplazado 4 caracteres respecto al inicio del campo y el día está desplazado 6 caracteres respecto al inicio del campo.

Gráficamente, ésto corresponde a la siguiente situación:

         Contenido del campo   Desplazamientos respecto al orígen del campo
               20011001		      01234567				 		

Para extraer porciones de un campo, el lenguaje de formatos permite expresar una porción de un campo en términos de su posición respecto al orígen (desplazamiento) y de la cantidad de caracteres a tomar en cuenta a partir de esa posicion inicial (longitud). El símbolo para identificar el valor del desplazamiento es el * (asterisco) y la longitud se expresa con símbolo . (punto). Entonces, la construcción

               Vxx*D.L    extraerá L caracteres del campo xx tomados a partir del
                          desplazamiento D respecto al inicio del campo.		

Ej. Si el campo 44 se ingresó con el valor 20010915, tendremos:

                v44*6.2 = 15
                v44*4.2 = 09
                v44*0.4 = 2001 

Si el desplazamiento es cero, esto es, la porción que deseamos obtener se encuentra al inicio del campo, entonces, no es necesario especificar es desplazamiento sino lo solo la longitud del segmento a extraer.

                Ejm: v44*0.4 = v44.4		

Si la longitud del segmento que deseamos extraer se ubica a partir de un desplazamiento x hasta el final del campo, no es necesario especificar la longitud a extraer.

                Ejm: v44*6.2 = v44*6 

Al omitirse la longitud se toma desde la posición 6 el resto de caracteres presentes en el campo (2)