®ogerVB
|
OSASCO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 22/07/2005 11:46 hs
Estou precisando imprimir um nota fiscal no vb... Mas estou com um problema, não tenho nem ideia de como configurar o layout da nota, para imprimir cada campo no seu devido lugar... Hoje estou fazendo meus relatórios pelo Crystal, mas não sei se pode ser feito por lá, mas não tem problema, pode ser pelo próprio vb.... Alguém tem alguma dica??? Obrigado!!!
|
|
|
|
|
|
Rochª
|
RIO DE JANEIRO RJ - BRASIL
|
|
Postada em 22/07/2005 11:56 hs
Eu uso o crystal mesmo, O unico problema e se a nota for de tamanho diferente ao papel padrao (A4 LETTER e etc). Se for voce vai ter um pouco de trabalho se nao basta fazer o relatorio. Tente assim faca de qualquer jeito e imprima em uma folha em branco, depois pegue a folha e coloque encima do formulario da nota (preimpresso) e vai fazendo as correcoes. Quando estiver mais certo imprima em uma nota fiscal (DE TESTE) ate finalizar.  OBS : Voce nao deve usar NF verdadeiras pois voce depois teria que cancelar. Deve usar NF de teste (sem numeracao). Pode ser feito com printer (via VB) mais acho mais trabalhoso. 
__________________________________________________________________________ Qualquer coisa post Rochª
|
|
|
|
®ogerVB
|
OSASCO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 22/07/2005 11:59 hs
Até aí tudo bem... Mas não tem um jeito que eu informe a linha e coluna que eu começaria a imprimir o campo???
|
|
|
|
Rochª
|
RIO DE JANEIRO RJ - BRASIL
|
|
Postada em 22/07/2005 12:38 hs
No Crystal NAO. Ele é um gerador de relatorios e nao traca como linha e coluna e sim como um formulario. Basta colocar o campo e depois arrasta-lo como se fosse o word. Vai ajeitando ate ficar do jeito que voce quer. No inicio é dificil mais depois vai se acostumando e pegando o jeito. Acho mais dificil fazer com PRINTER. Para imprimir em coordenada faca assim Private Sub Command1_Click() ' este exemplo irá imprimir Macoratti na coordenada 100,300 Printer.CurrentX = 100 Printer.CurrentY = 300 Printer.Print "Macoratti" Printer.EndDoc End Sub Nao uso printer mais de uma olhada aqui que pode ajudar
__________________________________________________________________________ Qualquer coisa post Rochª
|
|
|
|
|
|
Postada em 22/07/2005 16:40 hs
Eu costumo fazer assim: Open "lpt1" For Output As #1 Print #1, Chr(27) + "3" + Chr(52) Print #1, Chr(27) + "G"; Chr(18); Chr(27) + Chr(69); Right(pNroCtrc, 6); Chr(27) + "3" + Chr(27); Chr(27) + Chr(70); Chr(27) + Chr(71) Print #1, Chr(15); Tab(5); Format(!Data!Emissao, "dd/mm/yyyy"); Tab(18); Format(!Data!Emissao, "dd/mm/yyyy"); Tab(30); strCFOP; Tab(50); strCavalo Print #1, Print #1, Print #1, Tab(12); strNomRem; Tab(80); strNomDes Print #1, Tab(12); strEndRem; Tab(80); strEndDes Print #1, Tab(12); strCidRem; Tab(59); strCGCRem; Tab(80); strCidDes; Tab(126); strCGCDes Print #1, Tab(12); strEstRem; Tab(58); strCepRem; Tab(59); strInsRem; Tab(80); strEstDes; Tab(105); strCepDes; Tab(126); strInsDes; Chr(27) + "3" + Chr(33) Print #1, Tab(12); strNomCon; Chr(27) + "3" + Chr(27) Print #1, Tab(12); strEndCon; Tab(80); strNomRed Print #1, Tab(12); strCidCon; Tab(56); strEstCon; Tab(80); strEndRed; Chr(27) + "3" + Chr(28) If !CNPJ_Remetente = !CNPJ_Resp_Frete Then Print #1, Tab(18); "X"; Tab(80); strCidRed; Tab(124); strEstRed Else Print #1, Tab(35); "X"; Tab(80); strCidRed; Tab(124); strEstRed End If Print #1, Tab(12); strCidCal; Tab(80); strCGCRed Print #1, Chr(27) + "3" + Chr(24) Print #1, Print #1, Tab(5); strNatureza; Tab(33); strNroNF; Tab(52); Space(15 - Len(strVmer)) & strVmer; Tab(70); Space(8 - Len(strPeso)) & strPeso; Tab(83); Space(8 - Len(strM3)) & strM3; Tab(94); Space(6 - Len(strQuantidade)) & strQuantidade; Tab(104); strUnidMedida; Chr(27) + "3" + Chr(30) Print #1, Print #1, Chr(27) + "3" + Chr(4) Print #1, Chr(27) + "3" + Chr(28) Print #1, Print #1, Print #1, Print #1, Tab(0); Space(16 - Len(strFretePeso)) & strFretePeso; Tab(23); Space(10 - Len(strFreteValor)) & strFreteValor; Tab(34); Space(9 - Len(strSecCat)) & strSecCat; Tab(44); Space(9 - Len(strDespacho)) & strDespacho; Tab(54); Space(9 - Len(strPedagio)) & strPedagio; Tab(65); Space(9 - Len(strOutros)) & strOutros; Tab(75); Space(18 - Len(strTotalFrete)) & strTotalFrete; Tab(96); Space(16 - Len(strBaseICMS)) & strBaseICMS; Tab(114); Space(5 - Len(strAliq)) & strAliq; Tab(120); Space(17 - Len(strICMS)) & strICMS; Chr(27) + "3" + Chr(20) Print #1, Chr(27) + "3" + Chr(24) Print #1, Tab(60); strManifesto; Tab(83); strColeta; Tab(123); strEntrega; Chr(27) + "3" + Chr(29) Print #1, Tab(60); strObs1; Chr(27) + "3" + Chr(25) Print #1, Tab(60); strObs2 Print #1, Tab(60); strObs3 Print #1, Tab(60); strObs4 Print #1, Tab(60); strObs5; Chr(27) + "3" + Chr(40) Print #1, Close #1
Sds, Joeldo
|
|
|
|
|