FoxPro/Visual FoxPro - problemas al imprimir los resultados de las variables

   
Vista:

problemas al imprimir los resultados de las variables

Publicado por many (84 intervenciones) el 08/05/2014 19:49:31
Saludo a todos:

Mi problema,

Tengo un sistema hecho en foxpro 2.6 y este imprime etiquetas para los articulos (codigos de barras).

Ahora tengo un sistema en visual foxpro 9 y tome el procedimiento para imprimir etiquetas pero en visual no me funciona, aquí solo imprime el codigo fuente y debe imprimir los resultados de las variables siguientes:

m.codigo
m.descripcion
m.precio
etc.

el printer es: LP 2842 PLUS

este es el codigo:

**********************************************

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
m.codigo     = UPPER(ALLTRIM(thisform.codigo.value))
  m.descrip    = UPPER(ALLTRIM(thisform.descrip.value))
  m.cantidad   = ALLTRIM(STR(thisform.cantidad.value))
  m.precio     = ALLTRIM(STR(thisform.venta.Value,10,2))
 
   SET PRINTER TO LPT1
 
   thisform.inITPRINT.Click  ( llama algo que esta al final, pero es el contenido de boton solo lo pegue para aclarar)
 
   SET DEVICE TO PRINTER
 
   	?'q288'
	?'Q152,40'
	?'N'
	?'ZT'
	?"A25,00,0,1,1,2,N,"+'"'+" TITULO"+'"'
	*?"A80,22,0,1,1,1,N,"+'"'+"TEL.E"+'"'
	?"B60,35,0,1,2,3,35,B,"+'"'+M.CODIGO+'"'
	?"A25,98,0,1,1,1,N,"+'"'+M.DESCRIP+'"'
	?"A25,116,0,3,1,1,N,"+'"'+M.PRECIO+'"'
	?"P"+M.CANTIDAD
    ?'FK'+'"'+"*"+'"'
 
   thisform.finprint.click ()
 
   MESSAGEBOX("Proceso Exitoso")
 
   thisform.codigo.SetFocus
 
**********************************************
 
 
initprint
  Set Device To Printer
  Set Print On
  Set Console Off
 
 
finprint
 Set Print Off
  Set Device To Screen

Pense que al pasarlo a visual foxpro todo funcionaria bien y ahora estoy bien apurado por el tiempo

Diganme algo por favor, de todos modos sigo trabando en esto.
gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda de todo el foro

Publicado por Fidel José (558 intervenciones) el 08/05/2014 21:11:34
Algunas cosas son distintas. En las impresiones con ? y ?? para laser o deskjet, utilizo un código más o menos parecido al que pongo en IniPrint y FinPrint

PROCEDURE initprint
1
2
3
4
5
6
7
8
9
10
11
*-------------------------------
*!* Set Device To Printer && NO VA
local lcImpresora
lcImpresora=GetPrinter()
if empty(lcImpresora)
       Return .F.
ENDIF
SET PRINTER TO NAME (lcImpresora)        && impresora instalada en el equipo
Set Print On
Set Console Off
RETURN .T.


PROCEDURE FINPRINT
* --------------------------------
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SET CONSOLE ON
Set Printer Off
SEt printer to
 
 
*<Impresion>
IF !INIPRINT()
       RETURN
ENDIF
?'q288'
?'Q152,40'
?'N'
?'ZT'
?"A25,00,0,1,1,2,N,"+'"'+" TITULO"+'"'
*?"A80,22,0,1,1,1,N,"+'"'+"TEL.E"+'"'
?"B60,35,0,1,2,3,35,B,"+'"'+M.CODIGO+'"'
?"A25,98,0,1,1,1,N,"+'"'+M.DESCRIP+'"'
?"A25,116,0,3,1,1,N,"+'"'+M.PRECIO+'"'
?"P"+M.CANTIDAD
?'FK'+'"'+"*"+'"'
FINPRINT()
 
*</Impresion>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda de todo el foro

Publicado por MANY (84 intervenciones) el 10/05/2014 23:03:32
Saludo nuevamente

Por favor ponganme esto que imprima por lo meno un codigo en esta impresora, lo de bucle y demas lo hago yo.

Para imprimir etiquetas ahora tengo este codigo, tengo xp y un USB, ZEDRA printer LP 2824.

En primer lagar solo se ve en pantalla impreso el codigo fuente como (no va al printer)


set textmerge on
set textmerge to (wtmp)
SET DEVICE TO PRINTER
\N
\q816
\Q560,24+0
\S2
\D8
\ZT
\TTh:m
\TDy2.mn.dd
\A41,41,0,2,1,2,N,"FARCIA CENTRO" en esta caso imprime todo (a41.41,0 etc)
\A03,107,0,4,2,2,N,"<<m.descrip>>"
\A03,197,0,4,2,2,N,"<<m.cantida>>"
\A670,41,0,2,1,2,N,"<<m.codigo>>"
*\A05,254,0,4,1,2,N,"<<wdir1>>"
*\A05,354,0,4,1,2,N,"<<wdir2>>"
*\A196,486,0,5,1,2,N,"<<wfac>>"
\P1
\
set textmerge to
!copy &wtmp USB001 pongo esto porque es usb.

Con seguridad de respuesta, gracias a todos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar