Power Builder - para recuperar un dato de un dddw

 
Vista:

para recuperar un dato de un dddw

Publicado por johan (21 intervenciones) el 18/09/2002 23:08:22
hola a todos..
lo que deseo es recuperar un dato de un dddw, tengo creado uno donde tengo codigo y nombre ,pero solo deseo recuperar el codigo nose si esto me pueda servir:
integer nfila
nfila = dw_seleccion.getrow()
if nfila>0 then
sle_codigo.text= trim( dw_seleccion.getitemstring(nfila,"codigo"))
else
dw_seleccion.reset()
end if
si este script me sirve haganmelo saber sino indiquenme una buena solucion.
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:para recuperar un dato de un dddw

Publicado por Milson Cardona (613 intervenciones) el 19/09/2002 00:26:02
En realidad, cuando tu defines un DDDW, debes decir cual dato quieres que se despliege (DISPLAY COLUMN), y cual dato quieres que en realidad se lleve a la columna ( DATA COLUMN).
en este orden de ideas, me aventuré a imaginarme que definistes como DISPLAY COLUMN el nombre y como DATA COLUMN el codigo.............si esto es así es muy fácil recuperar el código de ese DDDW, mira este ejemplo donde nom_columna, es la columna que tienes como DDDW

nfila = dw_seleccion.getrow()
IF nfila>0 THEN
sle_codigo.text = trim(dw_seleccion.getitemstring(nfila,"nom_columna"))
ELSE
dw_seleccion.reset()
END IF

si te fijas bien solo es recuperar el dato como si fuera cualquier columna del DW.

espero que esto te sirva, y me comentes la evolucion de tu problema

un saludo especial desde COLOMBIA
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:para recuperar un dato de un dddw

Publicado por johan (21 intervenciones) el 19/09/2002 00:44:00
es cierto pero el display column esta definido como computer 1 ya que use en un dw anterior y relacionado a al de detalles el computer field, por lo demas esta todo igual lo que quiero recuperar es el codigo nada mas para guardarlo en la carpeta titulos.
tengo otro problemita con los codigos, cada que ingreso uno chanca al otro y asi no consigo nada.
quisiera que me ayudes con esto:
integer nrow1,nrow2,// mi problema es como inicializo nreg
string n,c1
nreg++ //nreg+1
cb_grabar.enabled = false
cb_nuevo.enabled = true
n=UPPER(sle_carpeta.text)//+" "+UPPER(sle_fuente.text)
c1= UPPER(left(sle_carpeta.text,3))
nrow1 =lb_1.additem(n)
sle_codigo.text = c1+right("00"+string(nreg),3)
nrow2 =lb_2.additem(sle_codigo.text)

lo que quiero es que no se repitan los codigos y que se guarden para cuando ingrese otro la numeracion continue donde se quedo.
seguro de tu ayuda nos vemos
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:para recuperar un dato de un dddw

Publicado por Milson Cardona (613 intervenciones) el 19/09/2002 16:04:33
dejame te explico, para ver si entiendo tu problema, tienes nombres de carpetas de 6 caracteres, los 3 primeros son la abreviatura de un nombre ej"CAR" Y los 3 ultimos son un consecutivo ej"001", lon que deseas hacer es incrementar automáticamente el consecutivo, para formar un nombre de carpeta diferente y consecutivo del anterior, el problema es que no sabes como incrementar la parte numérica del nombre..

si esto es así, te envió tu código corregido, espero que te funcione

integer nrow1,nrow2,nreg
string n,c1,c2

cb_grabar.enabled = false
cb_nuevo.enabled = true

//como la parte numerica del nombre de la carpeta siempre serán los últimos 3 caracteres
//del nombre de la carpeta, entonces sacamos el integer de estos 3 caracteres,
//y le sumamos 1 para encontrar el siguiente número de carpeta
nreg = INTEGER(RIGTH(sle_carpeta.text,3)) + 1
//convertimos el nuevo código en string
c2 = STRING(nreg)
//debemos adicionar ceros a la derecha para ajustar 3 caracteres
IF LEN(c2) = 1 THEN
c2 = '00' + c2
ELSE
IF len(c2) = 2 THEN
c2 = '0' + c2
END IF
END IF

n=UPPER(sle_carpeta.text)+" "+UPPER(sle_fuente.text)

c1 = UPPER(left(sle_carpeta.text,3))
nrow1 = lb_1.additem(n)

sle_codigo.text = c1 + c2
nrow2 =lb_2.additem(sle_codigo.text)

NOTA: como un consejo, acostumbrate a nombrar tus variables con un nombre más nemotecnico, como por ejemplo en vez de C1(ls_nombre), C2(ls_codigo), para que cuando vas a revizar el al
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:para recuperar un dato de un dddw

Publicado por johan (21 intervenciones) el 22/09/2002 22:47:44
gracias, pero estos codigos se guardaran , ya que tengo un registro bastante grande esta es mi ultima inquietud, claro por ahora jeje.
espero una respuesta de tu parte como siempre.
un saludo desde peru.
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

Cual es tu última inquietud??

Publicado por Milson Cardona (613 intervenciones) el 23/09/2002 15:12:01
Bueno, no te entiendo lo de tu última inquietud, cual es en realidad, porque en tu comentario no veo ninguna pregunta......

puedes ser más explicito por favor.

un saludo especial desde COLOMBIA
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:Cual es tu última inquietud??

Publicado por johan (21 intervenciones) el 23/09/2002 22:45:50
no la puse, bueno me equivoque entonces al escribir pero tengo un problema pero sobre sql ,lo que pasa es que para lo scaneados eso lo guardo como image en sql (en una tabla)pero cuando lo quiero ver en un datawindow ole solo me muestra el codigo no el campo de image
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:Cual es tu última inquietud??

Publicado por Milson Cardona (613 intervenciones) el 24/09/2002 15:07:18
Si lo que quieres es recuperar la imagen desde una tabla y luego colocarla en un objeto grafico, trata de recuperarla con la sentencia SELECTBLOB, (porque me imagino que el campo de la tabla es tipo BLOB),

NOTA: esta sentecia solo la he utilizado en SQL embebido y funciona perfectamente................, debo suponer que también podrá funcionar desde un datawindow....

para la muestra te envio un ejemplo de la sentecia en SQL embebido

Blob lb_vble_blob

SELECTBLOB campo_tipo_blob
INTO :lb_vble_blob
FROM tabla
WHERE tabla.codigo = 100
USING variable_transaccional;

//asignamos la imagen recuperada al objeto grafico
OBJETO_OLE.SetPicture(lb_vble_blob)

espero que sea de tu ayuda

un saludo especial desde COLOMBIA.

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