Crystal Reports - Usando uma tecla de atalho para imprimir um relatório
Você já pensou em usar uma tecla de Atalho para imprimir um relatório Crystal Reports ???
Você exibe o relatório para o usuário e o mesmo usando uma tecla de atalho , por exemplo : CTRL + P , envia o relatório para a impressora. E Então ??? Vamos mostrar o pulo do gato...
1- Primeiro você deve criar um relatório no Crystal Reports . Pode ser qualquer um , no exemplo vou usar um relatório chamado clientes.rpt que se encontra no diretório c:\teste . E tem o seguinte formato:
2- Agora vamos criar um projeto padrão no Visual Basic e além do formulário padrão - form1 - criado pelo VB , vamos inserir outro formulário chamado - form2.
3- No formulário form1 , insira um botão de comando - command1 - , e uma caixa de texto - TextBox - com a seguinte aparência :
No evento Click do
botão de comando - command1 - insira o seguinte
código :
|
4- Agora no formulário - form2 - vamos primeiro inserir o seguinte código no evento Activate :
Private
Sub Form_Activate() Me.WindowState = 2 CrystalReport1.WindowParentHandle = Form2.hWnd CrystalReport1.ReportFileName = "c:\teste\clientes.rpt" CrystalReport1.WindowState = 2 CrystalReport1.Action = 1 End Sub |
Este código vincula o
formulário form2 ao relatório Crystal reports - Observe que maximizamos o formulário e o relatório (WindowStare =2) |
5- Para finalizar altera a propriedade KeyPreview do formulário - form2 - para True , afim de interceptar o pressionamento das teclas - Ctrl + P - pelo usuário , e insira o código abaixo no evento KeyDown do formulário.
Private
Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 80 And Shift = vbCtrlMask Then CrystalReport1.Destination = 1 CrystalReport1.Action = 1 End If End Sub |
Ao pressionar
Ctrl+P ativamos a impressão do relatório : CrystalReport1.Destination = 1 |
Ao executar o projeto e clicar no botão de comando - command1 - teremos :
O relatório clientes.rpt aberto no interior do formulário - form2 | CTRL+P imprime o relatório |
até a próxima dica ...