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 :
Private Sub Command1_Click()
Form2.Show
End Sub

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
CrystalReport1.Action = 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 ...