Código: Selecionar todos
xim:= "I" + (StrZero(Val(StrTran(Str(Seconds()), ".", "")), 7)) + ".txt"
Set Console Off
Set Device To Printer
Set Printer To &xim
Set Printer On
?? "P"
?? "2"
?? "C!"
While (tconta <= Val(op3))
tlin:= Prow()
@ tlin, 0 Say "Pedido N§:"
@ tlin, 11 Say StrZero(xnp,6)
?? "E"
@ tlin, 20 Say "Firma:"
@ tlin, 27 Say xnome
tlin++
@ tlin, 0 Say "Valor do Pedido:"
@ tlin, 17 Say xtotal Picture "@ze 999,999.99"
If (xprazo == 0)
@ tlin, 39 Say "A vista"
Else
@ tlin, 39 Say "Venc:"
@ tlin, 44 Say xdata + xprazo
EndIf
If (xprazo1 != 0)
@ tlin, 55 Say xdata + xprazo1
EndIf
If (xprazo2 != 0)
@ tlin, 66 Say xdata + xprazo2
EndIf
?? "F"
tlin++
@ tlin, 0 Say "End.:"
@ tlin, 6 Say xend
@ tlin, 50 Say "Bairro:"
@ tlin, 58 Say xbairro
tlin++
@ tlin, 0 Say "Cidade:"
@ tlin, 8 Say xcidade
@ tlin, 45 Say "Estado:"
@ tlin, 53 Say xestado
@ tlin, 58 Say "Fone:"
@ tlin, 63 Say xfone
tlin++
@ tlin, 0 Say "Data:"
@ tlin, 6 Say xdata
@ tlin, 18 Say "Prazo:"
If (xprazo == 0)
@ tlin, 25 Say "A vista"
Else
@ tlin, 25 Say xprazo Picture "99"
If xprazo1 != 0
@ tlin, 27 Say "/"
@ tlin, 28 Say xprazo1 Picture "99"
EndIf
If xprazo2 != 0
@ tlin, 30 Say "/"
@ tlin, 31 Say xprazo2 Picture "99"
EndIf
If xprazo1 != 0 .And. xprazo2 == 0
@ tlin, 31 Say "Dias"
ElseIf xprazo2 != 0
@ tlin, 34 Say "Dias"
Else
@ tlin, 28 Say "Dias"
EndIf
EndIf
tlin++
@ tlin, 0 Say "Vendedor:"
@ tlin, 10 Say xnomevend Picture "@!"
@ tlin, 26 Say "Tipo de Pagto:"
@ tlin, 41 Say xpagt Picture "@!"
tlin:= tlin + 2
@ tlin, 0 Say ;
" Cod.|Quant.| Un | Produto | Pre‡o | Total "
tlin++
@ tlin, 0 Say ;
"ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ"
tlin++
For s:= 1 To (xitem - 1)
@ tlin, 1 Say Trim(xcodprod[s])
@ tlin, 5 Say "|"
@ tlin, 6 Say xquant[s] Picture "@ze 99,999"
@ tlin, 12 Say "|"
@ tlin, 14 Say xunid[s]
@ tlin, 17 Say "|"
@ tlin, 18 Say Trim(xprod[s])
@ tlin, 56 Say "|"
@ tlin, 57 Say xpreco[s] Picture "@ze 9,999.99"
@ tlin, 66 Say "|"
@ tlin, 68 Say xtpreco[s] Picture "@ze 999,999.99"
tlin++
Next s
If nPrecoSug > 0 .And. nPrecoSug <= 7
tlin++
@ tlin, 20 Say "Preco Sugerido 10% 15% 20%"
tlin++
For s:= 1 To nPrecoSug
nPreco10:= (((xpreco[s]/6)*(nPSug[s]+100))/100)
nPreco15:= (((xpreco[s]/6)*(nPSug1[s]+100))/100)
nPreco20:= (((xpreco[s]/6)*(nPSug2[s]+100))/100)
* @ tlin, 5 Say "|"
@ tlin, 6 Say Trim(xprod[s])
* @ tlin, 45 Say "|"
@ tlin, 46 Say nPreco10 Picture "@ze 999.99"
* @ tlin, 52 Say "|"
@ tlin, 53 Say nPreco15 Picture "@ze 999.99"
* @ tlin, 59 Say "|"
@ tlin, 60 Say nPreco20 Picture "@ze 999.99"
* @ tlin, 66 Say "|"
tlin++
Next s
EndIf
If nPrecoSug == 0
If xitem < 15
For x:= xitem To 15
@ tlin, 5 Say "|"
@ tlin, 12 Say "|"
@ tlin, 17 Say "|"
@ tlin, 56 Say "|"
@ tlin, 66 Say "|"
tlin++
Next x
EndIf
Else
tlin+= ((15 - xitem) - nPrecoSug)
EndIf
@ tlin, 0 Say ;
"ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ"
tlin++
@ tlin, 0 Say "Quant:|"
@ tlin, 6 Say xsquant Picture "@e 99,999"
@ tlin, 12 Say "|"
@ tlin, 60 Say "Total:|"
@ tlin, 68 Say xtotal Picture "@e 999,999.99"
If xobs != Space(40)
tlin++
@ tlin, 0 Say "Obs:"
@ tlin, 5 Say xobs Picture "@!"
EndIf
tlin+= 2
@ tlin, 0 Say ;
"Assinatura:................................ Data:..../..../"
@ tlin, 58 Say Year(Date())
tconta++
Eject
End
?? "CB"
Set Printer To
Set Device To Screen
Set Printer Off
Set Console On
cPrinter:= SetaImp()
If ! Empty(cPrinter)
PrintFile(cPrinter, xim, "Relatorio de Vendas")
EndIf
FErase(xim)
Exit
Else
If (LastKey() == 27)
Close DataBases
Return
EndIf
If xitem <= 11
lin:= xitem + 8
x_te:= xitem
Else
lin:= 20
If x_te == 15
x_te:= xitem - 1
Else
x_te:= xitem
EndIf
EndIf
Loop
EndIf
End
Código: Selecionar todos
********************************
Function SetaImp()
Local aPrinter, op, x2:= 10, TelaAnt
TelaAnt:= SaveScreen()
aPrinter:= GetPrinters()
@ 9, 23 Clear To (10 + LEN(aPrinter)), 51
@ 9, 23 To (10 + LEN(aPrinter)), 51
For x:= 1 TO LEN(aPrinter)
xp:= 20 - Len(AllTrim(aPrinter[x,2]))
@ x2, 25 Prompt Str(x, 2) + "-> " + aPrinter[x, 2] + Space(xp)
x2++
Next
Menu To op
RestScreen(,,,,TelaAnt)
If LastKey() == 27
Return Nil
EndIf
If Empty(aPrinter)
@ 24, 10 Clear
@ 24, 13 Say "Nao ha Impressora instalada!"
Return Nil
Else
Return aPrinter[op, 2]
EndIf
Return Nil