Scanner Control

Scanner Control foi desenvolvido em Applet e em JWS, e pode ser executado de qualquer navegador, com suporte a tecnologia Applet ou JWS, já vem com um exemplo (Xpz) funcional de como scannear um ou vários documentos em um único arquivo PDF, podendo salvar na maquina do usuário ou enviar para o servidor, como preferir, e armazenar no banco de dados, utiliza a DLL (jtwain.dll) que reconhecer o Scanner (ou Web Cam) na maquina do usuário, antes de enviar para o servidor tem como visualizar no próprio navegador, bem configurável (Mensagens, Texto dos botões, pastas temporários e etc.) para se ajustar ao seu sistema deixando-o mais moderno.

Scanner Control

Scanner Control

Principais características:

1. Rotina de escaneamento gera arquivos PDF;
2. Escaneamento vai gerar arquivos PDF single-page ou multi-page;
3. Pode escolher o nome dos arquivos e a pasta onde eles devem ser salvos(No cliente e no Servidor);
4. A rotina pode ser executada em uma estação qualquer e o arquivo pdf será enviado para o servidor;
5. Possibilita visualizar o arquivos PDF no navegador;
6. Textos, Botões, Mensagens e pastas parametrizáveis;
7. Vem com um exemplo funcionando em C#.
8. Fonte de dados do escaneamento configuráveis em tempo de execução.

 

Observações:

1. Precisa do Java 32-bit instalado na máquina do cliente;
2. Foi testado no Windows XP, Windows 7 e Windows 10 32-bits e 64-bits.
3. Precisa de um SoftWare de Scanner(ou Web Cam também reconhece) instalado no Cliente e a DLL (jtwain.dll)(Vem com o UC) colocada no Windows/system32, caso o sistema seja 64-bits colocar também na pasta Windows\SysWOW64.
4. Caso o UC esteja sendo executado de um servidor não local, configure o painel de control do java na aba segurança deve ser definida para média no cliente, para o UC acessar os drives da maquina do cliente;
New 5. Configure o servidor da Web para usar o tipo MIME do Java Web Start, Cada servidor da Web possui uma maneira específica de adicionar tipos MIME. Por exemplo, para o servidor da Web Apache, você deve incluir a seguinte linha no arquivo de configuração .mime.types: application/x-java-jnlp-file JNLP.
New 6. No IE o User Control abre embutido no navegador, no fire fox abre um pop-up,  e no chrome baixa o arquivo jnpl ao clicar no arquivo abre o pop-up com a funcionalidade (não abre automático no chrome, por limitação do navegador).
New 7. deve se colocar permissão de leitura e escrita na pasta do User Control no servidor de aplicação.

 [ IMPORTANTE ]  8. No Windows 10 não está funcionando corretamente a DLL de comunicação TWAIN.DLL , estamos verificando mas não temos solução imediata

Implementando

Se for executar em um sistema C# a configuração é a padrão do UC:

Na implementação Somente Editar o Procedimento PSetScannerControl para poder salvar no banco, para salvar no servidor e no cliente a configuração é no próprio UC.

 

IF &MENSAGEM.IsEmpty()
	&MENSAGEM = &MsgEnvioOk // "ARQUIVO ENVIADO COM SUCESSO!"
	//Salvando Arquivo no Servidor o Caminho foi configurado no UC.
	&HTTPREQUEST.ToFile(&CAMINHO_ARQ)
	/*
	//IMPLEMENTAR AQUI PARA SALVAR O ARQUIVO NO BANCO DE DADOS - EXEMPLO

	//FAVOR DESCOMENTAR E COLOCAR OS ATRIBUTOS DE ONDE SERÁ AMARZENADO O ARQUIVO PDF NO BANCO
	    FOR EACH
	        WHERE ScannerId = &ID
	           ScannerDigital = &CAMINHO_ARQ //ATUALIZANDO DOCUMENTO PDF
	    WHEN NONE //INCLUINDO UM NOVO DOCUMENTO PDF
	  NEW
	   ScannerId      = &ID
	   ScannerDigital = &CAMINHO_ARQ
	  WHEN DUPLICATE
	   ScannerDigital = &CAMINHO_ARQ
	  ENDNEW
	    ENDFOR
	//FIM DA IMPLEMENTAÇÃO*/
	ENDIF
	&HTTPRESPONSE.AddString(&MENSAGEM)

Sobre a DLL de comunicação TWAIN.DLL

Atualmente qualquer editor gráfico é capaz de receber dados do scanner insta­lado, graças ao padrão TWAIN. O Windows possui um driver chamado TWAIN source manager, encarregado de fazer a conexão entre programas gráficos e os drivers dos scanners. Todos os programas gráficos modernos são TWAIN compatíveis, assim como ocorre com os scanners. Este padrão faz com que o reconhecimento do scanner pelos programas gráficos seja tão padronizado como é o uso do mouse.

OBS: TWAIN não é abreviatura ou sigla de termo algum. Muitos brincam dizendo que significa “Technology without an interesting name”.

 

Figura 4

Funcionamento do sistema TWAIN.

A figura 4 mostra o funcionamento do sistema TWAIN. O centro de tudo é o TWAIN source manager, indicado como TWAIN.DLL (no Windows 9x/ME existem dois gerenciadores, o TWAIN.DLL e o TWAIN_32.DLL). Progra­mas Twain compatíveis en­viam comandos ao gerenciador TWAIN de uma forma padronizada, pedindo-lhes que seja enviado o arquivo gráfico capturado pelo scanner. A maioria dos editores gráficos modernos possui um co­mando Scan (ou Acquire, ou ainda Capture), obedecendo ao sistema TWAIN. O gerenciador TWAIN, por sua vez, envia comandos padronizados ao driver do dispositivo de entrada apropriado. Não é comum, mas um compu­tador pode ter diversos dispositivos de entrada TWAIN (TWAIN sources), como por exemplo, um scanner e uma câmera digital – como é exemplificado na figura 4. Cada dispositivo de entrada de imagem deve ter o seu próprio TWAIN driver, que é fornecido pelo seu fabricante. O UC Scanner control utiliza deste recurso da DLL para comunicar-se com os dispositivos de Scanner ou webcam instalados no computador do cliente


			

2 thoughts on “Scanner Control

  1. Olá Welton;

    Já fiz contato com você anteriormente sobre este user control (scanner).

    Ele já roda em ambiente Linux?

    Pois tenho interesse, porém, meu sistemas estão instalados em servidores Linux.

    No aguardo.

    Obrigado!

    Marlon.

    • gxusercontrol

      Bom dia Marlon,

      O User Control Scanner executa no cliente(Applet), o que eu tenho certeza é que o cliente tem que ser Windows pois utiliza DLLs para comunicação,
      já no servidor na teoria não importa, mas não fiz nenhum teste para poder estar confirmando, se funciona ou não com servidor Linux.

      Atenciosamente,
      Welton Justino do Nascimento

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *