Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fsilvarib

Bematech Funções

Recommended Posts

OLá tudo bom pessoal?

 

Estou desenvolvendo um sistema em PHP, e como a Bematech só fez scripts em JS resolvi postar aqui as minhas dúvidas.

 

Gostaria de saber como posso passar os valor diretamente, sem precisar ficar digitando em um INPUT e clicando no botão? Pois vou pegar os dados do DB em PHP e passar para esse script.

 

Esse script abaixo é o exemplo WEB deles para imprimir.

 

Arquivo Completo:

<HTML>	<HEAD>		<TITLE>Exemplo de utilização de impressora não fiscal na web</TITLE>		<META name="vs_snapToGrid" content="False">		<META name="vs_showGrid" content="False">		<STYLE type="text/css"> 			.text{ font-family:Verdana,Arial,Helvetica,sans-serif; font-size:12px; color:##FFFF00 }			.title1{ font-family:Verdana,Arial,Helvetica,sans-serif; font-size:12px; vertical-align:top; color:##FFFF00 }			.title2{ font-family:Verdana,Arial,Helvetica,sans-serif; font-size:12px; vertical-align:center; color:##FFFF00 }			.stText{font-family:Verdana,Arial,Helvetica,sans-serif; font-size:11px; color:#000000; background-color:C5D8EB; font-weight:bold }			.Buttom{border:1px solid #777777; font:normal 11px Courier New,verdana,tahoma; padding-left:5px; margin-top:2px; font-weight:bold; width=250px; }			.ButtomShort{border:1px solid #777777; font:normal 11px Courier New,verdana,tahoma; padding-left:5px; margin-top:2px; font-weight:bold; width=150px; }			.kltable{border:1px black solid; bgcolor:#FBFBFB; background-color:#FCFCFC; width="100%"; }		</STYLE>		<OBJECT id="BemaPrinter1" height="14" width="14" classid="clsid:310DBDAC-85FF-4008-82A8-E22A09F9460B"  VIEWASTEXT>	</OBJECT>		</HEAD><BODY onload="Inicializa()" onunload="Finaliza()">				<script language="JAVASCRIPT" type="TEXT/JAVASCRIPT">	function CaracteresAcentuados() { // Insere todos os caracteres acentuados			document.FormPrinter.EdTxtImpressao.value = " âäàáãÃÂÄÁÀ êëèéÊËÉÈ ïíìîÎÍÌÏ öóòôõÖÓÒÔÕ üúùûÜÙÚÛ Çç ÿ Ññ  ";		} 			function ImprimeTextoSemFormatacao() {		sNumeroVezes = window.prompt("Quantas vezes você deseja imprimir?","");				if (sNumeroVezes != null)		{					iNumeroVezes = parseInt(sNumeroVezes);					for (i=0; i<iNumeroVezes; i++){				BemaPrinter1.FormataTX(document.FormPrinter.EdTxtImpressao.value + "\n", 3, 0, 0, 0, 0);						}		}	}			function Inicializa(){		document.FormPrinter.EdTxtImpressao.value = "Digite seu texto aqui.";		// Abre a porta de comunicacao		iRetorno = BemaPrinter1.IniciaPorta("LPT1");		if (iRetorno <= 0)			alert("Problemas ao abrir a porta de Comunicação LPT1. " + iRetorno);		else		{		  // Configura o modelo da impressora para MP20 CI		  ModeloImpressora(2);				}					}	function Finaliza(){		BemaPrinter1.FechaPorta();	}		function AbrePorta(valor) {		iRetorno = BemaPrinter1.IniciaPorta(valor);		if (iRetorno <= 0)			alert("Problemas ao abrir a porta de Comunicação " + valor + ". " + iRetorno);				}		function ModeloImpressora(valor) {			document.FormPrinter.BtnAguardarTexto.disabled	= false; 		document.FormPrinter.btnAutenticar.disabled = false; 				document.FormPrinter.BtnCorteParcial.disabled = false; 		document.FormPrinter.BtnCorteTotal.disabled = false; 		document.FormPrinter.BtnDesabilitarPresenter.disabled = false; 		document.FormPrinter.btnDocInserido.disabled = false; 		document.FormPrinter.BtnHabilitarNLinhas.disabled = false; 		document.FormPrinter.BtnProgamarNLinhas.disabled = false; 		document.FormPrinter.BtnPapelPresenter.disabled = false; 		document.FormPrinter.BtnProgramarPresenter.disabled = false; 					PrinterNumber = parseInt(valor);				switch (PrinterNumber)		{			case 1: 									document.FormPrinter.BtnAguardarTexto.disabled	= true;				document.FormPrinter.BtnCorteParcial.disabled = true; 				document.FormPrinter.BtnCorteTotal.disabled = true; 				document.FormPrinter.BtnDesabilitarPresenter.disabled = true; 							document.FormPrinter.BtnPapelPresenter.disabled = true; 				document.FormPrinter.BtnHabilitarNLinhas.disabled = true; 				document.FormPrinter.BtnProgamarNLinhas.disabled = true;				document.FormPrinter.BtnProgramarPresenter.disabled = true; 							break;			case 2: // MP2000 CI				document.FormPrinter.BtnCorteParcial.disabled = true; 				document.FormPrinter.BtnCorteTotal.disabled = true; 							case 3:	// MP2000 TH				document.FormPrinter.BtnAguardarTexto.disabled	= true; 				document.FormPrinter.btnAutenticar.disabled = true; 						document.FormPrinter.BtnDesabilitarPresenter.disabled = true; 				document.FormPrinter.btnDocInserido.disabled = true; 								document.FormPrinter.BtnPapelPresenter.disabled = true; 				document.FormPrinter.BtnHabilitarNLinhas.disabled = true; 				document.FormPrinter.BtnProgamarNLinhas.disabled = true;				document.FormPrinter.BtnProgramarPresenter.disabled = true; 											PrinterNumber = 0;				break;			default:								PrinterNumber = 2;				break;		}				iRetorno = BemaPrinter1.ConfiguraModeloImpressora(PrinterNumber)		if (iRetorno == -2)			alert("Parâmetro inválido na função ConfiguraModeloImpressora.");			}	function ImprimeTextoFormatado() {		sNumeroVezes = window.prompt("Quantas vezes você deseja imprimir?","");		if (sNumeroVezes != null)		{			iNumeroVezes = parseInt(sNumeroVezes);				if (document.FormPrinter.MImpressao[0].checked)				modo = 2; // Normal			else				if (document.FormPrinter.MImpressao[1].checked)					modo = 3; // elite				else					modo = 1; // condensado								Expandido	= 0;			Italico		= 0;			Negrito		= 0;			Sublinhado	= 0;					if (document.FormPrinter.CbExpandido.checked)				Expandido = 1;					if (document.FormPrinter.CbItalico.checked)				Italico = 1;					if (document.FormPrinter.CbNegrito.checked)				Negrito = 1;						if (document.FormPrinter.CbSublinhado.checked)				Sublinhado = 1;								for (i=0; i<iNumeroVezes; i++){				BemaPrinter1.FormataTX(document.FormPrinter.EdTxtImpressao.value + "\n", modo, Italico, Sublinhado, Expandido, Negrito);								}		}	}		function ProgramarPresenter() {		NumeroLinha = parseInt(document.FormPrinter.EdTimePresenter.value);		iRetorno = BemaPrinter1.ProgramaPresenterRetratil(NumeroLinha);		if (iRetorno == 0)		  alert("Problemas na programação do presenter. /n Possíveis causas: Impressora desligada, off-line ou sem papel");		 	}		function HabilitarPresenter(){			if (document.FormPrinter.BtnDesabilitarPresenter.value == "Habilitar"){					document.FormPrinter.BtnDesabilitarPresenter.value = "Desabilitar";			iRetorno = BemaPrinter1.HabilitaPresenterRetratil(1);			if (iRetorno == 0)				alert("Problemas na programação do presenter./n Possíveis causas: Impressora desligada, off-line ou sem papel");		}		else {			document.FormPrinter.BtnDesabilitarPresenter.value = "Habilitar";			iRetorno = BemaPrinter1.HabilitaPresenterRetratil(0);			if (iRetorno == 0)				alert("Problemas na programação do presenter./nPossíveis causas: Impressora desligada, off-line ou sem papel");		}			}		function ProgramarTamanhoExtrato() {		NumeroLinha = parseInt(document.FormPrinter.EdNumeroLinha.value);		iRetorno = BemaPrinter1.ProgramaPresenterRetratil(NumeroLinha);		if (iRetorno == 0)		  alert("Problemas na programação do tamanho do extrato./nPossíveis causas: Impressora desligada, off-line ou sem papel");		 	}		function HabilitarExtratoLongo(){		if (document.FormPrinter.BtnHabilitarNLinhas.value == "Habilitar"){					document.FormPrinter.BtnHabilitarNLinhas.value = "Desabilitar";			iRetorno = BemaPrinter1.HabilitaExtratoLongo(1);			if (iRetorno == 0)				alert("Problemas na programação do tamanho do extrato./n Possíveis causas: Impressora desligada, off-line ou sem papel");		}		else {			document.FormPrinter.BtnHabilitarNLinhas.value = "Habilitar";			iRetorno = BemaPrinter1.HabilitaExtratoLongo(0);			if (iRetorno == 0)				alert("Problemas na programação do tamanho do extrato./nPossíveis causas: Impressora desligada, off-line ou sem papel");		}			}		function PrinterStatus() {		iRetorno = BemaPrinter1.Le_Status();		switch (iRetorno)		{			case 0 : alert("Desligada ou cabo desconectado");				break;						case 32 : // pouco papel e off-line na LPT				if ( document.FormPrinter.PortaComunicacao.selectedIndex == 0 )					alert("Pouco papel e off-line");				else 								alert("Off-line ou Fim de papel");				break;			case 4 : // pouco papel e off-line na serial				alert("Pouco papel e off-line");				break;			case 40 : // fim de papel na LPT				alert("Fim de papel");				break;			case 5:			case 48 : // 5 = pouco papel serial e 48 na LPT				alert("Pouco papel e on-line");				break;			case 79 : // off-line na LPT				alert("Off-line");				break;			case 9:			case 128 : // 9 = head-up na serial e 128 na LPT				alert("Head Up");				break			case 24:			case 144 : // 24 = on-line na serial e 144 na LPT				alert("Impressora ok"); // 24 (COM) e 144 (LPT)				break;			default:				alert("Status desconhecido: " + iRetorno); 				break;		}	}	function FullCut() {		iRetorno = BemaPrinter1.AcionaGuilhotina(1);  // modo total (full cut)		if (iRetorno != 1)			alert("Problemas no corte do papel../nPossíveis causas: Impressora desligada, off-line ou sem papel");	}		function PartialCut() {		iRetorno = BemaPrinter1.AcionaGuilhotina(0);  // modo total (full cut)		if (iRetorno != 1)			alert("Problemas no corte do papel../nPossíveis causas: Impressora desligada, off-line ou sem papel");	}		function PapelNoPresenter(){				iRetorno = BemaPrinter1.VerificaPapelPresenter();		switch (iRetorno)		{			case -1 : alert("Erro de execução da função."); 				break;			case 0 : alert("Problemas da verificação do papel no presenter./nPossíveis causas: Impressora desligada, off-line ou sem papel.");				break;						case 1 : alert("Papel posicionado no presenter.");				break;			case 2 : alert("Papel não posicionado no presenter.");				break;			case 3 : alert("Erro desconhecido.");				break;			default: 				alert("Unknown error.");					break;		}	}	function Autenticar(){		tempo = parseInt(document.FormPrinter.EdAutenticarTempo.value) * 1000;		iRetorno = BemaPrinter1.AutenticaDoc(document.FormPrinter.EdAutenticarTexto.value,tempo)		if (iRetorno == 0)			alert("Problemas na autenticação do documento.\nPossíveis causas: Impressora desligada, off-line ou sem papel");		else			if (iRetorno == -1)				alert("Tempo maior que o permitido.");	}		function DocInserido(){		iRetorno = BemaPrinter1.DocumentInserted();		if (iRetorno == 1)			alert("Documento inserido.");		else			alert("Documento não inserido.");				}	</SCRIPT>		<FORM name="FormPrinter">			<DIV align="center">				<TABLE class="kltable" width="889">					<TR>						<TD class="title1"><B>Porta de comunicação:<SELECT size="1" name="PortaComunicacao" onchange="AbrePorta(this.value)">									<OPTION value="LPT1" selected>LPT1</OPTION>									<OPTION value="COM1">COM1</OPTION>									<OPTION value="COM2">COM2</OPTION>								</SELECT></B></TD>						<TD class="title1"><B>Modelo da impressora:<SELECT size="1" name="ModeImpressora" onchange="ModeloImpressora(this.value)">									<OPTION value="1" selected>MP-20 CI</OPTION>									<OPTION value="1">MP-20 MI</OPTION>									<OPTION value="3">MP-20 TH</OPTION>									<OPTION value="2">MP-2000 CI</OPTION>									<OPTION value="3">MP-2000 TH</OPTION>									<OPTION value="4">58mm Kiosk Printer</OPTION>									<OPTION value="4">76/80mm Kiosk Printer</OPTION>									<OPTION value="4">112mm Kiosk Printer</OPTION>								</SELECT></B></TD>					</TR>					<TR>						<TD width="879" height="69" colspan="2">							<INPUT type="text" name="EdTxtImpressao" class="stText" size="62" value="Digite seu texto aqui.">							<INPUT type="button" class="Buttom" value="Caracteres Acentuados" name="BtnCarcAcentuados"								onclick="CaracteresAcentuados()">						</TD>					</TR>					<TR>						<TD class="title1" width="380" height="54" valign="top" align="left">							<B>Modos de Impressão</B><BR>							<FONT class="title1"><INPUT type="radio" value="2" name="MImpressao" checked>Normal <INPUT type="radio" value="3" name="MImpressao">Elite								<INPUT type="radio" value="1" name="MImpressao">Condensado </FONT>						</TD>						<TD class="title1" width="493" height="54" valign="top" align="left">							<B>Modos de formatação</B>							<TABLE border="0" cellpadding="0" cellspacing="0" width="100%">								<TR>									<TD class="title1" width="50%"><INPUT type="checkbox" name="CbNegrito" value="ON">Negrito</TD>									<TD class="title1" width="50%"><INPUT type="checkbox" name="CbItalico" value="ON">Itálico</TD>								</TR>								<TR>									<TD class="title1" width="50%"><INPUT type="checkbox" name="CbSublinhado" value="ON">Sublinhado</TD>									<TD class="title1" width="50%"><INPUT type="checkbox" name="CbExpandido" value="ON">Expandido</TD>								</TR>							</TABLE>						</TD>					</TR>					<TR>						<TD width="879" height="27" colspan="2" align="center">							<INPUT type="button" class="Buttom" value="Imprime Texto sem Formatação" name="BtnTextoSemFormatacao"								onclick="ImprimeTextoSemFormatacao()"> <INPUT type="button" class="Buttom" value="Imprime Texto com Formatação" name="BtnTextoComFormatacao"								onclick="ImprimeTextoFormatado()">						</TD>					</TR>				</TABLE>				<BR>				<TABLE class="kltable" width="100%">					<TR>						<TD width="33%" class="title1"><B>Programação do Presenter</B></TD>						<TD width="67%"></TD>					</TR>					<TR>						<TD width="33%" class="title2">							Tempo para retração: <INPUT type="text" class="stText" name="EdTimePresenter" size="11" id="Text1">Seg.</TD>						<TD width="67%">							<INPUT type="button" class="Buttom" value="Programar" name="BtnProgramarPresenter" onclick="ProgramarPresenter()"><BR>							<INPUT type="button" class="Buttom" value="Habilitar" name="BtnDesabilitarPresenter" onclick="HabilitarPresenter()">						</TD>					</TR>				</TABLE>				<BR>				<TABLE class="kltable" width="100%">					<TR>						<TD width="33%" class="title1"><B>Autenticação de documentos</B>						</TD>						<TD width="67%"></TD>					</TR>					<TR>						<TD width="33%" class="title2">Time-out:<INPUT type="text" class="stText" name="EdAutenticarTempo" size="11">Seg.<BR>							Texto: <INPUT type="text" class="stText" name="EdAutenticarTexto" size="27"></TD>						<TD width="67%" valign="middle">							<INPUT type="button" class="Buttom" value="Autenticar Documento" name="btnAutenticar" onclick="Autenticar()"><BR>							<INPUT type="button" class="Buttom" value="Verificar Documento Inserido" name="btnDocInserido"								onclick="DocInserido()">						</TD>					</TR>				</TABLE>				<BR>				<TABLE class="kltable" width="100%">					<TR>						<TD width="33%" class="title1"><B>Tamanho do Extrato</B>						</TD>						<TD width="67%"></TD>					</TR>					<TR>						<TD width="33%" class="title2">							Numero de linhas:<INPUT type="text" class="stText" name="EdNumeroLinha" size="11"></TD>						<TD width="67%" valign="middle">							<INPUT type="button" class="Buttom" value="Programar" name="BtnProgamarNLinhas" onclick="ProgramarTamanhoExtrato()"><BR>							<INPUT type="button" class="Buttom" value="Habilitar" name="BtnHabilitarNLinhas" onclick="HabilitarExtratoLongo()">						</TD>					</TR>				</TABLE>				<BR>				<TABLE class="kltable">					<TR>						<TD align="center">							<INPUT type="button" class="Buttom" value="Status da impressora" name="BtnStatusImpressora"								onclick="PrinterStatus()">							<INPUT type="button" class="Buttom" value="Imprimir caracter gráfico" name="BtnCaracGrafico" onclick="CaracterGrafico()"><BR>							<INPUT type="button" class="Buttom" value="Corte Total do Papel" name="BtnCorteTotal" onclick="FullCut()">							<INPUT type="button" class="Buttom" value="Corte Parcial do Papel" name="BtnCorteParcial"								onclick="PartialCut()"><BR>							<INPUT type="button" class="Buttom" value="Aguardar impressão texto" name="BtnAguardarTexto">							<INPUT type="button" class="Buttom" value="Verificar Papel Presenter" name="BtnPapelPresenter"								onclick="PapelNoPresenter()">						</TD>					</TR>				</TABLE>			</DIV>		</FORM>	</BODY></HTML>

De que forma eu poderia passar os dados?

 

Muito obrigado pela atenção de todos e até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então...esse código é pra mandar imprimir...usando uma impressora não fiscal da bematech.O que eu preciso fazer é pegar os dados do DB em PHP e jogar nesse script para imprimir.O problema é que não sei como vou passar os dados para esse script, sem usar esse formulário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.