FoxPro/Visual FoxPro - Imprimir todas las facturas en un solo Report en FoxPro

 
Vista:
Imágen de perfil de Hector
Val: 5
Ha aumentado su posición en 10 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Imprimir todas las facturas en un solo Report en FoxPro

Publicado por Hector (2 intervenciones) el 16/03/2019 04:05:00
Hola a todos, necesito una pequeña/gran ayuda para poder imprimir todas las facturas de un dia en el mismo reporte, es decir, que el usuario ingrese la fecha y aunque en el formulario no se vea el detalle de cada factura, pero a la hora de imprimir, que me salga el encabezado y el detalle de todas las facturas en un solo reporte. Gracias desde ya.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
sin imagen de perfil
Val: 315
Bronce
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Imprimir todas las facturas en un solo Report en FoxPro

Publicado por Jose Francisco (167 intervenciones) el 18/03/2019 22:53:04
formefechas)

Hola,te paso el código de mi programa, que en mi caso funciona perfecto.-
(Ver al final el resultado del reporte para ver si es lo que necesitas)

1)Crea el formulario de acuerdo a la imagen.
2) En el init del formulario:
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
SET SYSMENU OFF
SET DATE FRENCH
SET DELETED OFF
SET SAFETY OFF
 
SELECT 1
USE recibo.dbf IN 1 ALIAS xrec shared
****en tu caso es la factura.dbf****
SELECT 2
USE art1rec.dbf IN 2 ALIAS art1rec shared
 
Thisform.olecontrol1._Value=DATE()
thisform.olecontrol2._Value=DATE()
 
3)En el click del botón listar:
SELECT 2
USE art1rec.dbf IN 2 ALIAS art1rec shared
 
 
thisform.combo3.value=""
THISFORM.check2.value=0
IF thisform.text1.Value=CTOD('  /  /  ')  AND thisform.check2.Value=0 AND thisform.texto5.Value=0 AND thisform.texto7.Value=0
  MESSAGEBOX("Debe ingresar Fecha",48,"Error")
  thisform.text1.SetFocus
  RETURN
ENDIF
 
IF thisform.text2.Value=CTOD('  /  /  ') AND thisform.check2.Value=0 AND thisform.texto5.Value=0 AND thisform.texto7.Value=0
    MESSAGEBOX("Debe ingresar Fecha",48,"Error")
  thisform.text2.SetFocus
 RETURN
ENDIF
 
IF thisform.text3.Value=" " AND thisform.check2.Value=0 AND thisform.texto5.Value=0 AND thisform.texto7.Value=0
  MESSAGEBOX("Debe ingresar Sr ",48,"Error")
  thisform.text3.SetFocus
 RETURN
ENDIF
 
IF thisform.text3.Value="" AND thisform.check2.Value=1 AND thisform.text1.Value=CTOD('  /  /  ') AND thisform.text2.Value=CTOD('  /  /  ') OR thisform.texto5.Value>0 OR thisform.texto7.Value>0
 
SELECT XREC.nro_clie,XREC.Nro,XREC.Tipo_op,XREC.Fecha,XREC.Sr,XREC.Nombre,XREC.Dni,XREC.Direccion,;
    XREC.Ciudad,XREC.Nrocomb,ART1REC.Articulo,ART1REC.Descrip,;
    ART1REC.Unid,ART1REC.Importe,ART1REC.Nrocomb;
    FROM C:\GESTMAX4\RECIBO.DBF XREC INNER JOIN C:\GESTMAX4\ART1REC.DBF ART1REC ON XREC.NROCOMB = ART1REC.NROCOMB;
    ORDER BY XREC.Nro,XREC.Fecha,XREC.Sr WHERE nro_clie>=thisform.texto5.value and nro_clie<=thisform.texto7.value
 
 
ENDIF
 
thisform.combo3.rowsource = ""
IF thisform.text3.Value#""
SELECT XREC.nro_clie,XREC.Nro,XREC.Tipo_op,XREC.Fecha,XREC.Sr,XREC.Nombre,XREC.Dni,XREC.Direccion,;
    XREC.Ciudad,XREC.Nrocomb,ART1REC.Articulo,ART1REC.Descrip,;
    ART1REC.Unid,ART1REC.Importe,ART1REC.Nrocomb;
    FROM C:\GESTMAX4\RECIBO.DBF XREC INNER JOIN C:\GESTMAX4\ART1REC.DBF ART1REC ON XREC.NROCOMB = ART1REC.NROCOMB;
    ORDER BY XREC.Nro,XREC.Fecha,XREC.Sr WHERE fecha>=thisform.text1.value and fecha<=thisform.text2.value AND Sr=thisform.text3.Value
 
ENDIF
thisform.combo3.rowsource = ""
 
lnFiles = _TALLY
 
nAnwer=6
nAnwer=7
 
IF lnFiles > 0
 
 
  cMessageTitle = 'Mensaje'
  cMessageText = '¿Desea Realizar un reporte?'
  nDialogType = 4 + 32 + 256
  * 4 = Botones Sí y No.
  * 32 = Icono del signo de interrogación.
  * 256 = El segundo botón es el predeterminado.
  nAnswer = MESSAGEBOX(cMessageText, nDialogType, cMessageTitle)
  DO CASE
    CASE nAnswer = 6
 
 
    CASE nAnswer = 7
 
 
    thisform.Release
    DO FORM formefechas
    RETURN
 
 
  ENDCASE
 
  DEFINE WINDOW lw_Report FROM 0,0 TO SROWS(), ;
  SCOLS() In SCREEN TITLE "Reporte Fecha Limite" ;
  SYSTEM CLOSE NAME oPreview
  ZOOM WINDOW lw_Report MAX
  KEYBOARD '{CTRL+F10}' PLAIN CLEAR 
 
 
 IF thisform.text3.Value="" AND thisform.check2.Value=1 AND thisform.text1.Value=CTOD('  /  /  ') AND thisform.text2.Value=CTOD('  /  /  ') OR thisform.texto5.Value>0 OR thisform.texto7.Value>0
 
   *REPORT ENTRE NRO CLIENTES
  REPORT FORM repovtclie.frx FOR nro_clie>=thisform.texto5.value and nro_clie<=thisform.texto7.value PREVIEW IN SCREEN TO PRINTER prompt
 
  ENDIF
 
IF thisform.text3.Value#""
 
  REPORT FORM repovtclie.frx FOR fecha>=thisform.text1.value and fecha<=thisform.text2.value AND Sr=thisform.text3.Value PREVIEW IN SCREEN TO PRINTER prompt
 
ENDIF
 
thisform.Release
DO FORM FORMEFECHAS
 
ENDIF

4) en el botón salir:
1
2
3
4
5
6
7
8
9
10
thisform.combo3.rowsource = ""
*PARA QUE NO DE ERROR DE TABLA AL SALIR
 
thisform.text1.Value=CTOD('  /  /  ') 
thisform.text2.Value=CTOD('  /  /  ') 
thisform.text3.Value=""
thisform.check2.Value=0
CLOSE database
thisform.Release
SET SYSMENU ON

5) CUANDO HACES CLICK EN EL BOTÓN LISTAR, TE VA A MOSTRAR EL LISTADO SQL, AL SALIR DEL LISTADO CON LA X (ARRIBA A LA DERECHA) TE VA A PREGUNTAR SI : ...........DESEA RELIZAR UN REPORTE?.......... CON EL RESULTADO A CONTINUACIÓN.-
SUERTE Reporte
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
Imágen de perfil de Hector
Val: 5
Ha aumentado su posición en 10 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Imprimir todas las facturas en un solo Report en FoxPro

Publicado por Hector (2 intervenciones) el 21/03/2019 02:52:55
Muchas gracias, no es exactamente lo que necesito, porque es el reporte de un solo día, no importando el cliente, pero estoy tomando unas ideas del mismo, porque a la larga se asemeja mucho a mi inquietud, estoy probando y cuando finalice les comento como lo solucione.
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

Imprimir todas las facturas en un solo Report en FoxPro

Publicado por Jose Francisco (2 intervenciones) el 21/03/2019 03:17:31
Hola , de nada ,,,, para sacar datos y /o parámetros es más fácil que agregar ,,, y para un solo día tenés que listar por el mismo día.
Slds.
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