|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
Como abrir gaveta via wlanguage |
Iniciado por Boller, 30,ago. 2025 01:13 - No hay respuesta |
| |
| | | |
|
| |
Miembro registrado 4.520 mensajes |
|
Publicado el 30,agosto 2025 - 01:13 |
Boa tarde Adriano 😃
Sim, dá para abrir a gaveta de dinheiro ligada a uma impressora Epson USB diretamente pelo WLanguage (WinDev/WebDev/WM).
O segredo é que a gaveta não é controlada via porta separada, mas sim enviando um comando ESC/POS para a impressora.
Passos: 1. Identificar o nome/porta da impressora USB no Windows (ex: "EPSON TM-T20 Receipt"). 2. Usar iPrint ou iEscape para mandar os bytes de comando para a impressora. 3. O comando padrão ESC/POS para abrir a gaveta é: • ESC p m t1 t2 • m = 0 ou 1 (saída conectada, geralmente 0) • t1 = 25 (tempo ON em múltiplos de 2ms → 50ms) • t2 = 250 (tempo OFF em múltiplos de 2ms → 500ms)
⸻
Exemplo de Classe WLanguage
// Classe para controlar gaveta de dinheiro em impressora Epson ESC/POS CLASS clsCashDrawer PROCEDURE OpenDrawer(psPrinterName is string)
// Abre conexão com a impressora iDestination(psPrinterName) // Sequência ESC p 0 25 250 sCmd is string = Charact(27) + "p" + Charact(0) + Charact(25) + Charact(250)
// Envia comando bruto iPrint(sCmd) // Fecha spool iEndPrinting() RESULT True END
⸻
Exemplo de Uso
PROCEDURE TestOpenDrawer() cDrawer is clsCashDrawer IF cDrawer.OpenDrawer("EPSON TM-T20 Receipt") THEN Info("✅ Gaveta aberta com sucesso!") ELSE Error("❌ Falha ao abrir gaveta!") END
⸻
👉 Observações: • Troque "EPSON TM-T20 Receipt" pelo nome exato da impressora no Windows. • Se não abrir, teste Charact(1) no lugar de Charact(0) (alguns modelos usam a porta 1). • Em impressoras instaladas como Genéricas/Text Only
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|