4D v16.3

QR REPORT

Inicio

 
4D v16.3
QR REPORT

QR REPORT 


 

QR REPORT ( {tabla ;} doc {; jerarquico {; asistente {; busqueda {; nomMetodo {; *}}}} ) 
Parámetro Tipo   Descripción
tabla  Tabla in Tabla a utilizar para el informe o tabla por defecto si se omite
doc  Cadena in Documento de informe rápido a cargar
jerarquico  Booleano in True = Mostrar las tablas Muchos relacionadas False o si se omite = No mostrar (por defecto)
asistente  Booleano in True = Mostrar el botón del asistente False o si se omite = No mostrar (por defecto)
busqueda  Booleano in True = Mostrar las herramientas de búsqueda y la tabla principal False o si se omite = No mostrar (por defecto)
nomMetodo  Cadena in Nombre del método a llamar
Operador in Eliminación de las cajas de diálogo de impresión

QR REPORT imprime un informe para tabla, con ayuda del editor de informes rápidos de 4D. Este editor permite a los usuarios crear sus propios informes. Para mayor información sobre la creación de informes rápidos con la ayuda del editor de informes rápidos, consulte la sección Informes rápidos o Informes rápidos (64 bits) en el Manual de Diseño de 4D.

Notas:

  • El editor no aparece si la tabla ha sido declarada “Invisible.”
  • Cuando el editor se llama utilizando el comando QR REPORT, las relaciones entre las tablas conservan su estado manual,  donde aplique. Este principio permite al desarrollador administrar él mismo este estado utilizando los comandos SET AUTOMATIC RELATIONS y SET FIELD RELATION. En versiones 32 bits, la opción Todas las relaciones en automático que se utiliza para modificar el estado automático/manual de las relaciones se oculta.
  • El editor se llama en una ventana externa y no es posible utilizar el comando QR ON COMMAND en este contexto. Sin embargo, puede utilizar el parámetro nomMetodo para  ejecutar código personalizado cuando un comando de interfaz se activa (ver abajo).

El parámetro documento es un documento de informe que fue creado con el editor de informes rápidos y guardado en disco. El documento guarda las especificaciones del informe, no lo registros a imprimir. Si una cadena vacía ("") se pasa en documento, QR REPORT muestra una caja de diálogo de apertura de archivos, en la cual el usuario puede seleccionar el informe a imprimir.
Si el parámetro documento especifica un documento que no existe (por ejemplo, si pasa Char(1) en documento), se muestra el editor de informes rápidos.

Versiones 32 bits únicamente:

  • El parámetro jerarquico indica si las tablas Muchos relacionadas se muestran en la lista de selección de campos. Por defecto, este valor es 0 (las tablas Muchos no se muestran).
  • El parámetro asistente indica si el botón Abrir el asistente se va a mostrar en el editor de informes rápidos, permitiendo o no el acceso al asistente. Por defecto, este valor es False (no hay acceso al asistente).
  • El parámetro busqueda indica si el botón Nueva búsqueda y el menú desplegable Tabla principal aparecerán en el editor de informes rápidos, por lo tanto permitiendo o no la modificación de la tabla actual y de la tabla principal actual. Por defecto, este valor es False (no hay acceso a las herramientas de búsqueda y a la tabla principal).
  • El parámetro nomMetodo designa un método de proyecto 4D que se ejecuta cada vez que un comando del editor de informes rápidos es llamado por la selección de un elemento del menú o hacer clic en un botón. Utilizar este parámetro es equivalente a utilizar QR ON COMMAND en el contexto de la ventana del editor de informes rápidos (QR ON COMMAND sólo funciona en el contexto de un área incluida). Más en particular, se puede utilizar este nuevo parámetro para cambiar el juego de caracteres usado por el informe rápido.
    El método nomMetodo recibe dos parámetros:
    • $1 contiene la referencia del área (entero largo).
    • $2 contiene el número del comando seleccionado (entero largo). Puede comparar este valor con las constantes del tema QR Comandos.

    Nota: si desea compilar su base usando el compilador, debe declarar los parámetros $1 y $2 explícitamente como enteros largos, incluso si no los utiliza.

    Si desea ejecutar el comando inicial elegido por el usuario, utilice la siguiente instrucción en el método nomMetodo:


    Si el parámetro nomMetodo es una cadena vacía ( "") o se omite, ningún método se llama y se aplica la operación estándar de QR REPORT.

Una vez seleccionado un informe, se muestran las cajas de diálogo de impresión, a menos que se especifique el parámetro *. Si se especifica este parámetro, no se muestran estas cajas de diálogo y se imprime el informe.

Si no se muestra el editor de informes rápidos, la variable sistema OK toma el valor 1 si se imprime un informe; de lo contrario, toma el valor 0 (cero) (por ejemplo, si el usuario hace clic en Cancelar en las cajas de diálogo de impresión).

4D Server: este comando puede ejecutarse en el servidor 4D Server en el marco de un procedimiento almacenado. En este contexto:

  • Asegúrese de que no aparezca ninguna caja de diálogo en el equipo servidor (excepto para un requerimiento especifico). Para hacer esto, es necesario llamar al comando con el parámetro *.
  • La sintaxis que hace aparecer el editor Quick Report no funciona con 4D Server; en este caso, la variable sistema OK toma el valor 0.
  • En el caso de un problema relacionado con la impresora (sin papel, impresora desconectada, etc.), no se genera un error.

El siguiente ejemplo permite al usuario efectuar una búsqueda en la tabla [Personas], y luego imprime automáticamente el informe “Lista detallada”:

 QUERY([Personas])
 If(OK=1)
    QR REPORT([Personas];"Detailed Listing";False;False;False;*)
 End if

El siguiente ejemplo permite al usuario efectuar una búsqueda en la tabla [Personas], y luego seleccionar el informe a imprimir:

 QUERY([Personas])
 If(OK=1)
    QR REPORT([Personas];"";False;False;False)
 End if

El siguiente ejemplo permite al usuario efectuar una búsqueda en la tabla [Personas], y luego muestra el editor de informes rápidos de manera que el usuario pueda diseña, guardar, cargar e imprimir informes con o sin el asistente:

 QUERY([Personas])
 If(OK=1)
    QR REPORT([Personas];Char(1);False;True)
 End if

Consulte el ejemplo del comando SET FIELD RELATION.

Usted desea convertir el conjunto de caracteres utilizado en un informe rápido llamado utilizando QR REPORT en Mac Roman:

 QR REPORT([MyTable];Char(1);False;False;False;"myCallbackMeth")

El método myCallbackMeth convierte el informe cuando se genera:

 C_LONGINT($1;$2)
 If($2=qr cmd generate//si generamos un informe
    C_BLOB($myblob)
    C_TEXT($path;$text)
    C_LONGINT($type)
    QR EXECUTE COMMAND($1;$2//ejecución del comando
    QR GET DESTINATION($1;$type;$path//recuperación del destino
    If(($type=qr HTML file)|($type=qr text file))
       DOCUMENT TO BLOB($path;$myblob)
  //conversión del texto utilizando UTF-8
       $text:=Convert to text($myblob;"UTF-8")
  //uso del conjunto MacRoman
       CONVERT FROM TEXT($text;"MacRoman";$myblob)
  //Reenvío del informe convertido
       BLOB TO DOCUMENT($path;$myblob)
    End if
 Else //de lo contrario, ejecución del comando
    QR EXECUTE COMMAND($1;$2)
 End if



Ver también 

PRINT LABEL
PRINT SELECTION
SET ALLOWED METHODS

 
PROPIEDADES 

Producto: 4D
Tema: Informes rápidos
Número 197

Este comando modifica la variable sistema OKComportamiento diferente en modo remoto

 
HISTORIA 

Modificado: 4D 2004
Modificado: 4D v14

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)