Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**************************************************************************************************************************/
- $arquivo = "nf.txt";
- session_start();
- $_SESSION['conteudo']="";
- //qtd de caracteres que cabem no campo
- $tam_campo['saida']=1;
- $tam_campo['entrada']=1;
- $tam_campo['natureza']=30;
- $tam_campo['cfop']=9;
- $tam_campo['ie_subst']=29;
- $tam_campo['razao']=70;
- $tam_campo['cnpj']=39;
- $tam_campo['dt_emiss']=16;
- $tam_campo['endereco']=70;
- $tam_campo['bairro']=22;
- $tam_campo['cep']=17;
- $tam_campo['dt_movto']=16;
- $tam_campo['municipio']=42;
- $tam_campo['fone']=20;
- $tam_campo['uf']=8;
- $tam_campo['iestadual']=39;
- $tam_campo['hora']=16;
- $tam_campo['codigo']=8;
- $tam_campo['descricao']=62;
- $tam_campo['cf']=5;
- $tam_campo['sit_trib']=6;
- $tam_campo['unid']=5;
- $tam_campo['qtd']=9;
- $tam_campo['vl_unit']=9;
- $tam_campo['vl_tot']=10;
- $tam_campo['aliq_icms']=3;
- $tam_campo['aliq_ipi']=2;
- $tam_campo['val_ipi']=9;
- $tam_campo['bs_icms']=19;
- $tam_campo['vl_icms']=19;
- $tam_campo['bs_icms2']=19;
- $tam_campo['vl_icms2']=19;
- $tam_campo['vl_totprod']=18;
- $tam_campo['vl_frete']=19;
- $tam_campo['vl_seguro']=19;
- $tam_campo['out_despesas']=19;
- $tam_campo['vl_ipi']=18;
- $tam_campo['vl_nota']=18;
- $tam_campo['razao_trans']=32;
- $tam_campo['resp_frete']=2;
- $tam_campo['placa']=9;
- $tam_campo['uf_placa']=2;
- $tam_campo['cnpj_trans']=21;
- $tam_campo['ender_trans']=33;
- $tam_campo['munisc_trans']=24;
- $tam_campo['uf_trans']=3;
- $tam_campo['ie_trans']=21;
- $tam_campo['qtd_volume']=7;
- $tam_campo['especie']=31;
- $tam_campo['marca']=9;
- $tam_campo['numero']=9;
- $tam_campo['peso_br']=11;
- $tam_campo['peso_lq']=14;
- $tam_campo['dado_adic']=35;
- $tam_campo['num_nf']=10;
- /**************************************************************************************************************************
- function imprime_lpt1(arg1)
- Descricao: Funcao responsavel pela impressao diretamente na porta lpt1.
- Requisitos: Internet Explorer superior que 5.0, mas nao testado no 5.5, testado e funcionando no 6.0.
- Nao testado em outros browsers
- ****** IMPORTANTISSIMO ******
- Se estas alteracoes nao forem feitas, a impressao nao ocorrera corretamente.
- Alteracao das configuracoes de seguranca do navegador:
- Ferramentas -> Opcoes de Internet -> Seguranca ->
- Intranet local -> Nivel Personalizado ->
- Iniciar e executar scripts de controle ActiveX nao marcados como seguro -> Ativar
- Caso nao funcione:
- Internet -> Nivel Personalizado ->
- Iniciar e executar scripts de controle ActiveX nao marcados como seguro -> Ativar
- Entrada: Linha que sera impressa na autenticacao ou o comprovante de pagamento.
- Saida: Impressao em impressora fiscal do argumento de entrada.
- **************************************************************************************************************************/
- function linha($lin){
- for($i=1;$i<=$lin;$i++)
- $_SESSION['conteudo'] .= "\r\n";
- }
- function coluna($sp){
- for($i=1;$i<=$sp;$i++)
- $_SESSION['conteudo'] .= " ";
- }
- /**************************************************************************************************************************/
- $fp = fopen($arquivo, "w");
- linha(5);coluna(76);
- $_SESSION['conteudo'].='X';
- coluna(11);
- $_SESSION['conteudo'].='X';
- linha(8);coluna(3);
- $_SESSION['conteudo'].='VENDA MERCADORIA';
- $_POST['natureza']='Venda de Mercadoria';
- coluna($tam_campo['natureza']-strlen($_POST['natureza'])+7);
- $_SESSION['conteudo'].='5.102';
- $_POST['cfop']='5.102';
- coluna($tam_campo['cfop']-strlen($_POST['cfop'])+5);
- $_SESSION['conteudo'].='123.456.789.123';
- linha(3);coluna(3);
- $_SESSION['conteudo'].='Nome do Cliente';
- $_POST['razao']='Nome do Cliente';
- coluna($tam_campo['razao']-strlen($_POST['razao'])+5);
- $_SESSION['conteudo'].='060.033.100/0001-04';
- $_POST['cnpj']='060.033.115/0001-04';
- coluna($tam_campo['cnpj']-strlen($_POST['cnpj'])+8);
- $_SESSION['conteudo'].='19/02/2008';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='Endereço do Cliente';
- $_POST['endereco']='Endereço do Cliente';
- coluna($tam_campo['endereco']-strlen($_POST['endereco'])+5);
- $_SESSION['conteudo'].='Bairro';
- $_POST['bairro']='Bairro';
- coluna($tam_campo['bairro']-strlen($_POST['bairro'])+5);
- $_SESSION['conteudo'].='09790-290';
- $_POST['cep']='09790-290';
- coluna($tam_campo['cep']-strlen($_POST['cep'])+3);
- $_SESSION['conteudo'].='19/02/2008';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='Municipio do Cliente';
- $_POST['municipio']='Municipo do Cliente';
- coluna($tam_campo['municipio']-strlen($_POST['municipio'])+2);
- $_SESSION['conteudo'].='(11)4334-2345';
- $_POST['fone']='(11)4334-2345';
- coluna($tam_campo['fone']-strlen($_POST['fone'])+3);
- $_SESSION['conteudo'].='SP';
- $_POST['uf']='SP';
- coluna($tam_campo['uf']-strlen($_POST['uf'])+3);
- $_SESSION['conteudo'].='321.321.321.321';
- $_POST['iestadual']='321.321.321.321';
- coluna($tam_campo['iestadual']-strlen($_POST['iestadual'])+6);
- $_SESSION['conteudo'].='10:40';
- linha(3);coluna(3);
- $_SESSION['conteudo'].='Dados de Faturamento ao cliente'.chr(15);
- linha(3);
- /*************************** PRODUTOS ******************************/
- for($r=1;$r<=18;$r++){
- linha(1);coluna(3);
- $_SESSION['conteudo'].='Cod.P.';
- $_POST['codigo'.$r].='Cod.P.';
- coluna($tam_campo['codigo']-strlen($_POST['codigo'.$r])+1);
- $_SESSION['conteudo'].='Descrição do Produto Descrição do Produto Descrição do';
- $_POST['descricao'.$r].='Descrição do Produto Descrição do Produto Descrição do';
- coluna($tam_campo['descricao']-strlen($_POST['descricao'.$r])+3);
- $_SESSION['conteudo'].='(1)';
- $_POST['cf'.$r].='(1)';
- coluna($tam_campo['cf']-strlen($_POST['cf'.$r])+1);
- $_SESSION['conteudo'].='ST';
- $_POST['sit_trib'.$r].='ST';
- coluna($tam_campo['sit_trib']-strlen($_POST['sit_trib'.$r])+1);
- $_SESSION['conteudo'].='Un';
- $_POST['unid'.$r].='Un';
- coluna($tam_campo['unid']-strlen($_POST['unid'.$r])+2);
- $_SESSION['conteudo'].='Qt.';
- $_POST['qtd'.$r].='Qt.';
- coluna($tam_campo['qtd']-strlen($_POST['qtd'.$r])+1);
- $_SESSION['conteudo'].='VlUnit';
- $_POST['vl_unit'.$r].='VlUnit';
- coluna($tam_campo['vl_unit']-strlen($_POST['vl_unit'.$r])+2);
- $_SESSION['conteudo'].='Valor T.';
- $_POST['vl_tot'.$r].='Valor T.';
- coluna($tam_campo['vl_tot']-strlen($_POST['vl_tot'.$r])+5);
- $_SESSION['conteudo'].='12';
- }
- // coluna($tam_campo['aliq_icms']-strlen($_POST['aliq_icms'.$r])+1);
- // $_SESSION['conteudo'].=$_POST['aliq_ipi'.$r];
- // coluna($tam_campo['aliq_ipi']-strlen($_POST['aliq_ipi'.$r])+1);
- // $_SESSION['conteudo'].=$_POST['val_ipi'.$r];
- /*******************************************************************/
- linha(3);coluna(3);
- $_SESSION['conteudo'].='bs_icms';
- $_POST['bs_icms'].='bs_icms';
- coluna($tam_campo['bs_icms']-strlen($_POST['bs_icms'])+10);
- $_SESSION['conteudo'].='vl_icms';
- $_POST['vl_icms'].='vl_icms';
- coluna($tam_campo['vl_icms']-strlen($_POST['vl_icms'])+10);
- $_SESSION['conteudo'].='bs_icms2';
- $_POST['bs_icms2'].='bs_icms2';
- coluna($tam_campo['bs_icms2']-strlen($_POST['bs_icms2'])+10);
- $_SESSION['conteudo'].='vl_icms2';
- $_POST['vl_icms2'].='vl_icms2';
- coluna($tam_campo['vl_icms2']-strlen($_POST['vl_icms2'])+9);
- $_SESSION['conteudo'].='vl_totprod';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='vl_frete';
- $_POST['vl_frete'].='vl_frete';
- coluna($tam_campo['vl_frete']-strlen($_POST['vl_frete'])+10);
- $_SESSION['conteudo'].='vl_seguro';
- $_POST['vl_seguro'].='vl_seguro';
- coluna($tam_campo['vl_seguro']-strlen($_POST['vl_seguro'])+10);
- $_SESSION['conteudo'].='out_despesas';
- $_POST['out_despesas'].='out_despesas';
- coluna($tam_campo['out_despesas']-strlen($_POST['out_despesas'])+10);
- $_SESSION['conteudo'].='vl_ipi';
- $_POST['vl_ipi'].='vl_ipi';
- coluna($tam_campo['vl_ipi']-strlen($_POST['vl_ipi'])+10);
- $_SESSION['conteudo'].='vl_nota';
- linha(3);coluna(3);
- $_SESSION['conteudo'].='razao_trans';
- $_POST['razao_trans'].='razao_trans';
- coluna($tam_campo['razao_trans']-strlen($_POST['razao_trans'])+51);
- $_SESSION['conteudo'].='1';
- $_POST['resp_frete'].='resp_frete';
- coluna($tam_campo['resp_frete']-strlen($_POST['resp_frete'])+14);
- $_SESSION['conteudo'].='placa';
- $_POST['placa'].='placa';
- coluna($tam_campo['placa']-strlen($_POST['placa'])+5);
- $_SESSION['conteudo'].='uf';
- $_POST['uf_placa'].='uf_placa';
- coluna($tam_campo['uf_placa']-strlen($_POST['uf_placa'])+11);
- $_SESSION['conteudo'].='cnpj_trans';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='ender_trans';
- $_POST['ender_trans'].='ender_trans';
- coluna($tam_campo['ender_trans']-strlen($_POST['ender_trans'])+40);
- $_SESSION['conteudo'].='munisc_trans';
- $_POST['munisc_trans'].='munisc_trans';
- coluna($tam_campo['munisc_trans']-strlen($_POST['munisc_trans'])+7);
- $_SESSION['conteudo'].='uf';
- $_POST['uf_trans'].='uf_trans';
- coluna($tam_campo['uf_trans']-strlen($_POST['uf_trans'])+10);
- $_SESSION['conteudo'].='ie_trans';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='qtd_volume';
- $_POST['qtd_volume'].='qtd_volume';
- coluna($tam_campo['qtd_volume']-strlen($_POST['qtd_volume'])+10);
- $_SESSION['conteudo'].='especie';
- $_POST['especie'].='especie';
- coluna($tam_campo['especie']-strlen($_POST['especie'])+2);
- $_SESSION['conteudo'].='marca';
- $_POST['marca'].='marca';
- coluna($tam_campo['marca']-strlen($_POST['marca'])+13);
- $_SESSION['conteudo'].='numero';
- $_POST['numero'].='numero';
- coluna($tam_campo['numero']-strlen($_POST['numero'])+15);
- $_SESSION['conteudo'].='peso_br';
- $_POST['peso_br'].='peso_br';
- coluna($tam_campo['peso_br']-strlen($_POST['peso_br'])+13);
- $_SESSION['conteudo'].='peso_lq';
- linha(2);coluna(3);
- $_SESSION['conteudo'].='dado_adic1';
- linha(1);coluna(2);
- $_SESSION['conteudo'].='dado_adic2';
- linha(1);coluna(2);
- $_SESSION['conteudo'].='dado_adic3';
- linha(1);coluna(2);
- $_SESSION['conteudo'].='dado_adic4';
- linha(1);coluna(2);
- $_SESSION['conteudo'].='dado_adic5';
- linha(1);coluna(2);
- $_SESSION['conteudo'].='dado_adic6';
- linha(7);coluna(115);
- $_SESSION['conteudo'].='num_nf';
- $escreve = fwrite($fp, $_SESSION['conteudo']);
- fclose($fp);
- ?>
- <html>
- <head>
- <script>
- function cria_bat(){
- //Cria objeto para manipulacao de arquivos no cliente.
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- if ( !(fso.FileExists("c:\\imprime.bat")) ) {
- //Cria o arquivo imprime.bat, escreve o comando responsavel pela impressao e fecha o arquivo.
- var b = fso.CreateTextFile("c:\\imprime.bat", true);
- b.WriteLine("type G:\\\\httpraiz\\\\nf\\\\<?=$arquivo;?> > LPT1");
- b.Close();
- }
- }
- function imprime() {
- //Cria um objeto para execucao de um programa no computador do cliente.
- var WshShell = new ActiveXObject("WScript.Shell");
- //Executa o arquivo responsavel pela impressao do arquivo imprime.prn.
- var oExec = WshShell.Exec("c:\\imprime.bat");
- }
- </script>
- </head>
- <body>
- <script>
- cria_bat();
- imprime();
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement