FoxPro/Visual FoxPro - Filtro en reporte!!!!

 
Vista:

Filtro en reporte!!!!

Publicado por Raul (151 intervenciones) el 12/11/2004 16:24:41
BUENOS DIAS AMIGOS, MI PREGUNTA ES LA SIGUIENTE:

YO TENGO UN FORMULARIOM QUE TIENE UN GRID Y UNOS TEXTBOX CON RANGOS DE FECHA, FECHA INICIAL Y FECHA FINAL, EN DICHO GRID QUIERO MOSTRAR TODAS LAS ESTRADAS Y SALIDAS DE TODOS LOS ARTICULOS EN GENERAL, PERO EN UN DETERMINADO RANGO DE FECHAS, TENGO UN BOTON OK, Y EN ELCLIC DE ESTE TENGO LO SIGUIENTE:
SELECT articulos
SET ORDER TO 1 && CCVEART
SELECT entsal
SET ORDER TO 1 && CCVEART

SELECT entsal.cident,entsal.ccveart,entsal.cprov,entsal.cdesc,;
entsal.cmarca,entsal.cmod,entsal.cserie,entsal.dfecent,;
entsal.dfecsal,entsal.ncantent,entsal.ncantsal,articulos.nexis,;
entsal.npreccomp,entsal.nprecpub FROM entsal,articulos WHERE Thisform.TxtDFECINI.Value <= entsal.DFECSAL AND;
entsal.DFECSAL <= Thisform.TxtDFECFIN.Value AND;
articulos.ccveart == entsal.ccveart ORDER BY cprov ASC INTO CURSOR tmparticulos

SELECT tmparticulos
browse
Thisform.grid1.RecordSource = 'TmpArticulos'
Thisform.grid1.Refresh()
OJALA ME PUEDAN ORIENTAR, GRACIAS!!!!
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

RE:Filtro en reporte!!!!

Publicado por Plinio (7841 intervenciones) el 12/11/2004 17:00:29
El grid no te presenta los datos???

Si es asi prueba con Thisform.refresh en vez de Thisform.grid1.Refresh.
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

RE:Filtro en reporte!!!!,discupa, no funciona!!!

Publicado por Raul (151 intervenciones) el 12/11/2004 20:57:48
HOLA DE NUEVO AMIGOS, PUES AQUI CON EL MISMO PROBLEMA, FIJENSE, YO TENGO UNA BD DONDE HAY ARTICULOS Y ESTOS TIENEN FECHAS DE ENTRADA Y SALIDA,(DFECENT Y DFECSAL) RESPECTIVAMENTE, LO QUE QUIERO HACER EN UN GRID EN EL CUAL HAY UNOS TEXT BOX QUE REPRESENTAN UN RANGO DE FECHAS, DFECINI(FECHA INICIO) Y DEFECFIN(FECHA FIN), ENTONCES DESEO FILTRAR TODOS LOS MOVIMIENTOS EN EL GRID NO IMPORTA SI ES ENTRADA O SALIDA, SIMPLEMENTE QUE ESTEN DENTRO DEL RANGO DE FECHAS QUE YO ESPECIFIQUE.

MI CODIGO ES EL SIGUIENTE, PERO NO ME FUNCIONA, NO SALE NADA EN EL GRID,GRACIAS:
SELECT entsal
SET ORDER TO 1 && CCVEART

SELECT entsal.cident,entsal.ccveart,entsal.cprov,entsal.cdesc,;
entsal.cmarca,entsal.cmod,entsal.cserie,entsal.dfecent,;
entsal.dfecsal,entsal.ncantent,entsal.ncantsal,Articulos.nexis,;
entsal.npreccomp,entsal.nprecpub FROM articulos,entsal WHERE Thisform.TxtDFECINI.Value <= entsal.DFECSAL AND;
entsal.DFECSAL <= Thisform.TxtDFECFIN.Value AND;
entsal.DFECENT <= Thisform.TxtDFECINI.Value AND;
entsal.DFECENT <= Thisform.TxtDFECFIN.Value AND;
entsal.cident == \'ENTRADA\' AND entsal.cident == \'SALIDA\' ORDER BY entsal.cprov ASC INTO CURSOR tmparticulos

SELECT tmparticulos
browse
Thisform.grid1.RecordSource = \'TmpArticulos\'
Thisform.grid1.Refresh() (EN ESTA LINEA ME DIJO EL AMIGO PLINIO QUE YO PONGA NADA MAS THISFORM.REFRESH,PERO NO FUNCIONA NO SALE NADA EN MI GRID)
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

RE:Filtro en reporte!!!!,discupa, no funciona!!!

Publicado por Roman Suazo (2723 intervenciones) el 13/11/2004 04:15:15
Primero me parece que tienes mal el SELECT ya que la unica forma en que puedes combinar datos de diferentes tablas en un cursor producto de un SELEC es a traves de las palabras reservadas [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN usando campos en ambas tablas que te permitan crear la relacion...Otro punto es que cheques que los datos que sacas de los textboxes SEAN FECHAS, puedes hacer la conversion con de variables tipo caracter a fechas con CTOD( ). Tambien en las clausulas WHERE del SELEC usa este formato WHERE micampo<=Mivariable y no como lo estas haciendo. Con rangos de fechas tambien te recomiendo que cheques la funcion BETWEEN() para usarla en el SELEC. Bueno, estos son unos puntos en los cuales tienes que trabajar
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

RE:Filtro en reporte!!!!,discupa, no funciona!!!

Publicado por Roman Suazo (2723 intervenciones) el 13/11/2004 04:51:34
*SELECT ya que la unica forma en que puedes combinar datos de *diferentes tablas en un cursor producto de un SELEC es a traves de las *palabras reservadas [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL

con este parte me refiero a que estas palabras reservadas te daran como resultado un cursor donde se encuentren registros coincidentes en ambas tablas (que es lo que generalmente se busca). Si creas el SELEC de tu forma te saldran un numero exagerado (dependiendo de los registros de ambas tablas) de registro que no tendran ningun sentido para el usuario ya que la informacion te la tirara mezclada....
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