Power Builder - Modify y SetSQL

 
Vista:

Modify y SetSQL

Publicado por Marce (119 intervenciones) el 25/11/2005 20:49:32
Hola gente! aqui va mi problema:
No logro hacer funcionar el modify para agregar una clausula where a un dw.
este codigo esta un boton de aceptar y quiero recuperar las filas en un determinado periodo.
Aqui solo pruebo mayor o igual que alguna fecha que le doy.
Las fechas de inicio y fin las saco de otros dws.¿alguien me dice que estoy haciendo mal?

string original_select, mod_string, rc, whereclause, orderclause, selectmodificado
datetime ld_fecha1

ld_fecha1= dw_1.getitemdatetime(dw_1.getrow(),"fecha" )

original_select = tab_1.tabpage_1.dw_todos.Describe("DataWindow.Table.Select")
mle_1.text= original_select //para ver como es el Select Actual

whereclause= "WHERE stockdiario.fecha >= " +":"+string( ld_fecha1) // ya probe sin los 2 puntos, no sale

mod_string = "DataWindow.Table.Select=' " + original_select + whereclause +" ' "

rc = tab_1.tabpage_1.dw_todos.Modify(mod_string)

selectmodificado=tab_1.tabpage_1.dw_todos.describe("Datawindow.Table.Select")
mle_2.text= selectmodificado // para ver como quedo el select, y aparentemente esta bien

IF rc = " " THEN

tab_1.tabpage_1.dw_todos.Retrieve( )

ELSE

MessageBox("Status", "Modify Failled" + rc) // esto es lo que siempre sale

END IF

Probe entonces con SetSQL

string OldSyn, NewSyn

ld_fecha1= dw_1.getitemdatetime(dw_1.getrow(),"fecha" )

original_select = tab_1.tabpage_1.dw_todos.Describe("DataWindow.Table.Select")

NewSyn= original_select + ' WHERE stockdiario.fecha >= 05-09-05' // o sino + string(ld_fecha1, "dd-mm-yy")
mle_2.text= NewSyn

Aqui no sale ningun error, simplemente no aparece ninguna fila.
Lo curioso es que probe con otro campo (uno numerico) y anduvo ok.¿ tengo que hacer algo
de especial por ser una fecha?

A parte, obviamente, si hago click dos veces me pega dos veces la calusula where
y esto ya no anda.
¿Cual es la mejor manera de resolver esto sin tener que hacer otro dw
con argumentos de recuperacion?

Gracias por la atencion
Marcela
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:Modify y SetSQL

Publicado por amilcar (327 intervenciones) el 25/11/2005 22:21:21
hola , mira yo tenia eso problema y lo q hice para resolverlo fue crear dos argumentos en el dw , "desde" y "hasta" de tipo fecha ya q sabia q iba a usarlos
(no se si es lo mas acertado pero al menos pude resolver mi problema.)

luego en el script dos cambios
el select originan tendrias q almacenarlo en una variable de instancia en el open de tu ventana, asi de esta forma siempre tendras el original

la clausula where seria
" where detalle_cc_os_fecha>=:desde and detalle_cc_os_fecha<=:hasta"

por lo demas tendria q funcionar
espero te sirva
sino comenta y tratarems entre todos de solucionarlo
un saludo desde argentina
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:Modify y SetSQL

Publicado por Marcela (119 intervenciones) el 15/12/2005 00:16:27
Gracias!
Tarde pero anduvo. Lo que no hacia era eso de especificar los argumentos. como siempre te los pide cuando abris el dw, pense que me iba a dar problemas ,era cuestion de buiscarle la vuelta.

Marcela
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