Power Builder - Variable Global

 
Vista:
sin imagen de perfil
Val: 37
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

Variable Global

Publicado por Juan (231 intervenciones) el 13/11/2008 18:07:44
Hola a todos:
deseo hacer una consulta.
Tengo una base de datos la cual consta de 3 tablas: "Clientes", "Accesorios", "pagos".

Yo ya he guardado los accesorios en la tabla accesorios:

Ahora antes de que abra la ventana cliente, previamente he creado una ventanita la cual, al dar click en nuevo cliente se apertura y en ella me permite buscar el accesorio que le voy a asignar al cliente, luego al darle click en siguiente habre recien la ventana cliente y esta se cierra.

Ahora mi pregunta es: ¿Alguien tiene algun código pequeño que en el momento de buscar y encontrar el accesorio en esa ventanita, se guarde este en la variable global? que tambien la he creado (ES STRING Y SE LLAMA LS_SERIE) y despues de dar siguiente en esa ventanita automáticamente grave la serie del producto en el campo de la tabla cliente al que lo he llamado (serie_equipo_asignado) este campo es varchar de 35.

Clatro, vale la aclaración que el campo de la tabla accesorios se llama (serie) y tambien es un varchar de 35.

Demen una manito con esto se lo agradeceria muchisimo.

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:Variable Global

Publicado por Willman Chavez (3 intervenciones) el 13/11/2008 20:43:21
No crees variables globales para pasar datos de ventana

para pasar datos declara la variable solo en la ventana en donde receptas y de donde envias

desde la ventana que regresas la variable la capturas y la retornas de la sgte.
manera

ejemplo
string ls_serie
LS_SERIE = dw_series.object.series[dw_series.getrow()]
closewithreturn(parent,ls_serie)

y le ventana que receptas el dato lo hace la siguiente forma

string ls_serie
ls_serie = message.stringparm
dw_clientes.object.serie[dw_clientes.getrow] = ls_serie

La ventana que capturas la serie tiene que ser de tipo response.

saludos ,Espero te sirva

Willman
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
sin imagen de perfil
Val: 37
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

RE:Variable Global

Publicado por Juan (231 intervenciones) el 16/11/2008 19:03:22
Hola hermano, disculpa pero en este código:

string ls_serie
ls_serie = message.stringparm
dw_clientes.object.serie[dw_clientes.getrow] = ls_serie

no me acepta el tipo de función getrow, me indica un error no se de que dependerá

Este codigo lo estoy poniendo en la ventana que deseo que al abrirse y al darle nuevo automáticamente se grave el número de serie en el campo de ese datawindows que lo he llamado (serie_equipo_asignado)

Gracias por tu respuesta estaré esperando tu corrección
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:Variable Global

Publicado por Jancarlo (890 intervenciones) el 19/11/2008 05:43:25
Debes colocar el paréntesis a la función: GetRow => GetRow()

string ls_serie
ls_serie = message.stringparm
dw_clientes.object.serie[dw_clientes.getrow()] = ls_serie

Suerte!
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
sin imagen de perfil
Val: 24
Ha aumentado 1 puesto en Power Builder (en relación al último mes)
Gráfica de Power Builder

RE:Variable Global

Publicado por Javier (75 intervenciones) el 22/07/2018 09:10:46
Hola Willman buenas noches, podras apoyarme en mi caso? es muy similar pero en la ventanta receptora quiero que el valor enviado se coloque en un control SLE, este es mi ejemplo:

En la primer ventana, en el botón "guardar" (donde hago update a mi datawindow) tengo este código que tome la idea del tuyo:

1
2
3
string ls_num_pol
ls_num_pol = dw_1.getitemstring(dw_1.getrow(),'num_poliza')
closewithreturn(parent,ls_num_pol)


y en la ventana receptora, en el evento open coloque el otro código, esperando que en el SLE me saliera el dato enviado:

1
2
3
4
dw_1.settransobject(sqlca)
string ls_num_pol
ls_num_pol = message.stringparm
sle_pol.text= ls_num_pol


Pero se abre la ventana receptora sin aparecer el numero o dato enviado de la otra ventana, espero que me puedas ayudar a detectar el problema.

Saludos
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:Variable Global

Publicado por Jancarlo (890 intervenciones) el 13/11/2008 20:44:21
Puedes utilizar el objeto Message y la funcion CloseWithParm:

Ejemplo:

// En el evento donde invocas la ventana
String ls_accesorio

Open(w_accesorio)
//....1

// Desde algún evento en la ventana w_accesorio
String ls_accesorio

// Asignas el valor
ls_accesorio = <valor>

// Cierras la ventana enviando como parámetro la variable
CloseWithReturn(w_accesorio, ls_accesorio)

// Continuamos desde el evento donde invocaste la ventana
/....1
ls_accesorio = Message.StringParm

// Ahora ya puedes utilizar la variable que envio la ventana w_accesorio

Espero se entienda la idea.

Saludos!
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:Variable Global

Publicado por ferchu (1 intervención) el 01/02/2009 23:28:41
hola m pueden decir que es una variable global y cuales son?
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