QR REPORT imprime um relatório para tabela, criado com o editor de relatórios rápidos . O editor de relatórios rápidos permite aos usuários criar seus próprios relatórios. Para maior informação sobre a criação de relatórios rápidos com a ajuda do editor de relatórios rápidos, consulte Relatórios rápidos ou Relatórios rápidos (64 bits) no Manual de Desenho de 4D.
Notas:
- O editor não aparece se a tabela tiver sido declarada “Invisível.”
- Quando o editor se chama utilizando o comando QR REPORT, a opção Todas as relações automáticas, que permite modificar o estado automático/manual das relações é ocultada. Isso permite ao desenvolvedor administrar ele mesmo esse estado utilizando os comandos SET AUTOMATIC RELATIONS e SET FIELD RELATION.
- O editor é chamado em uma janela externa e não é possível utilizar o comando QR ON COMMAND neste contexto. No entanto, pode utilizar o parâmetro nomMetodo para executar código personalizado quando um comando de interface se ativa (ver abaixo).
- O parâmetro documento é um documento de relatório que foi criado com o editor de relatórios rápidos e guardado em disco. O documento guarda as especificações do relatório, não os registros a imprimir. Se uma cadeia vazia ("") se passa em documento, QR REPORT mostra uma caixa de diálogo de abertura de arquivos, na qual o usuário pode selecionar o relatório a imprimir.
- Se o parâmetro documento especifica um documento que não existe (por exemplo, se passa Char(1) em documento), se mostra o editor de relatórios rápidos.
- O parâmetro hierarquico indica se as tabelas Muitos relacionadas são mostradas na lista de seleção de campos. Por padrão, este valor é 0 (as tabelas Muitos não são mostradas).
- O parâmetro assistente indica se o botão Abrir o assistente vai ser mostrado no editor de relatórios rápidos, permitindo ou não o aceso ao assistente. Por padrão, este valor é False (não há acesso ao assistente).
- O parâmetro pesquisa indica se o botão Nova pesquisa e o menu suspenso Tabela principal aparecerão no editor de relatórios rápidos, portanto permitindo ou não a modificação da tabela atual e da tabela principal atual. Por padrão, este valor é False (não há acesso às ferramentas de pesquisa e a tabela principal).
- O parâmetro nomMetodo designa um método de projeto 4D que é executado cada vez que um comando do editor de relatórios rápidos for chamado pela seleção de um elemento do menu ou clicar em um botão. Utilizar este parâmetro é equivalente a utilizar QR ON COMMAND no contexto da janela do editor de relatórios rápidos (QR ON COMMAND só funciona no contexto de uma área incluida). Mas em particular, pode se utilizar este novo parâmetro para mudar o jogo de caracteres usado pelo relatório rápido.
O método nomMetodo recebe dois parâmetros: - $1 contém a referência da área (inteiro longo).
- $2 contém o número de comando selecionado (inteiro longo). Pode comparar este valor com as constantes de tema QR Comandos.
- Nota: se desejar compilar seu banco de dados usando o compilador, deve declarar os parâmetros $1 e $2 explícitamente como inteiros longos, mesmo se não os utilizar.
- Se deseja executar o comando inicial escolhido pelo usuário, utilize a seguinte instrução no método nomMetodo:
Se o parâmetro nomMetodo for uma string vazia ( "") ou for omitido, nenhum método será chamado e se aplica a operação padrão de QR REPORT.
Uma vez selecionado um relatório, as caixas de diálogo de impressão são mostradas, a não ser que especifique o parâmetro
*. Se for especificado este parâmetro, não são mostradas estas caixas de diálogo e se imprime o relatório.
Se não for mostrado o editor de relatórios rápidos, a variável sistema OK toma o valor 1 se for imprimir um relatório; do contrário, toma o valor 0 (zero) (por exemplo, se o usuário clicar em
Cancelar nas caixas de diálogo de impressão).
4D Server: este comando pode ser executado no servidor 4D Server no marco de um procedimento armazenado. Neste contexto:
- Tenha certeza de que não apareça nenhuma caixa de diálogo na máquina servidor (exceto para um requerimento especifico). Para fazer isso, é necessário chamar o comando com o parâmetro *.
- A sintaxe que faz aparecer o editor Quick Report não funciona com 4D Server; neste caso, a variável sistema OK toma o valor 0.
- No caso de um problema relacionado com a impressora (sem papel, impressora desconectada, etc.), não se gera um erro.
O exemplo a seguir permite ao usuário realizar uma pesquisa na tabela [Pessoas], e depois imprime automaticamente o relatório “Lista detalhada”:
QUERY([Pessoas])
If(OK=1)
QR REPORT([Pessoas];"Detailed Listing";False;False;False;*)
End if
O exemplo a seguir permite ao usuário realizar uma pesquisa na tabela [Pessoas], e depos selecionar o relatório a imprimir:
QUERY([Pessoas])
If(OK=1)
QR REPORT([Pessoas];"";False;False;False)
End if
O exemplo a seguir permite ao usuário realizar uma pesquisa na tabela [Pessoas], e depois mostra o editor de relatórios rápidos de maneira que o usuário possa desenhar, salvar, carregar e imprimir relatórios com ou sem o assistente:
QUERY([Pessoas])
If(OK=1)
QR REPORT([Pessoas];Char(1);False;True)
End if
Consulte o exemplo do comando SET FIELD RELATION.
Você deseja converter o conjunto de caracteres utilizado em um relatório rápido chamado utilizando QR REPORT em Mac Roman:
QR REPORT([MyTable];Char(1);False;False;False;"myCallbackMeth")
O método myCallbackMeth converte o relatório quando é gerado: