Solicitando Impressão do(s) Boleto(s)
Em nossa rotina de impressão é possível imprimir um lote de boletos de uma única vez, para isso basta separar os idIntegracao por vírgula. É importante lembrar que para serem impressos, os Boletos devem estar com a situação diferente de SALVO, FALHA, DESCARTADO ou REJEITADO.
Para realizar a impressão em lotes primeiramente é necessário solicitar a impressão, através do método FBoletoX.ImprimirLote, definindo qual será seu tipo; em seguida será retornado um Protocolo. Como é um processo assíncrono, posteriormente faremos uma consulta com este Protocolo para imprimir ou gerar um PDF dos boletos (veremos como fazer isso no próximo passo).
Importante: Como se trata de um processo assíncrono apenas 1 solicitação de impressão é necessária para cada pedido de impressão desejado. Ou seja, apenas 1 chamada neste método. O ideal é que a partir do momento em que se tenha acesso ao protocolo, o mesmo seja consultado na rota de consulta que devolverá o conteúdo do PDF.
Esta rota possui uma limitação de 5 chamadas por minuto para um mesmo idIntegracao (um mesmo boleto). Caso este valor seja excedido, a API retornará uma mensagem de erro indicando uso indevido.
Método
O método FBoletoX.ImprimirLote possui dois parâmetros no formato WideString. No primeiro parâmetro deve ser informado o IdIntegracao do boleto que deseja imprimir (Para imprimir mais de um boleto basta separar os IdIntegracao por vírgula) e no segundo parâmetro deve ser informado o tipo de impressão.
TspdBoletoX.ImprimirLote(WideString)
Campos
Para solicitar a impressão, o TX2 pode ter os seguintes campos:
Campo | Tipo | Descrição |
TipoImpressao | string |
Valores aceitos: 0 - Impressão normal. 1 - Impressão carnê duplo (paisagem). 2 - Impressão carnê triplo (retrato). 3 - Impressão dupla (retrato). 4 - Impressão normal (Com marca D'água). 99 - Impressão personalizada. |
Boletos | array | Array de Ids de integração. Para mais de um boleto, deve-se usar a vírgula como separador. |
Abaixo, segue um exemplo implementado de como solicitar a impressão para as seguintes linguagens.
Exemplos
Delphi
_ImprimirLoteList := FBoletoX.ImprimirLote (edtIdImpressao.Text, tipoImpressao);
Clique aqui para baixar um exemplo completo.
Clique aqui para visualizar um exemplo completo.
C#
_ImprimirLoteList = boletox.ImprimirLote (tbIdIntegracaoImpressao.Text, TipoImpressao);
Clique aqui para baixar um exemplo completo.
Clique aqui para visualizar um exemplo completo.
Visual Basic 6
Set ImprimirLoteList = FBoletoX.ImprimirLote (txtIntegracaoImpressao.Text, TipoImpressao)
Clique aqui para baixar um exemplo completo.
Clique aqui para visualizar um exemplo completo.
Fox Pro
ImprimirLoteList = Boleto.ImprimirLote (THISFORM.txtIdIntegracao.Value,TipoImpressao)
Clique aqui para baixar um exemplo completo.
Clique aqui para visualizar um exemplo completo.
Para prosseguirmos, é necessário que se tenha o Protocolo retornado em "_ImprimirLoteList.Protocolo" e que o campo de STATUS seja igual à SUCESSO. Este protocolo será consultado no próximo método Imprimindo para obtermos o PDF ou a Impressão do Boleto.
Comentários
0 comentário
Por favor, entre para comentar.