En una datawindow

Viejo, tengo una tabla de la cual quisiera extraer información y guardar la en variables, como por ejemplo: la tabla usuario con los campos usuario-clave-perfil, sacar por decir información de esta tabla, específicamente del campo perfil y guardarla en un string.
Si me puedes ayudar
Respuesta
1
Crea un datawindow con los campos de la tabla usuario: usuario, clave, perfil... puedes ponerle un retrieval argument de tal manera que recuperes un usuario... haz
long il_fila /*Número de fila*/
string as_usuario
string ls_perfil
as_usuario = 'REPV'
/*Jala los datos*/
dw_1.retrieve(as_usuario)
/*Recupera # fila*/
il_fila = dw_1.getrow()
/*Recuperacion de los datos*/
ls_perfil = dw_1.object.perfil[il_fila]
ojo q el nombre después del object. Debe ser idéntico al nombre de la columna...

1 respuesta más de otro experto

Respuesta
1
Bueno puedes hacerlo de dos formas, usando datawindows o usando SQL embebido.
- Usando dw: Simplemente crea el dw que traiga la información{on que quieres. Luego de tenerla ahí, en un botón o donde quieras, extraes la información de los campos del datawindow usando las funciones, getitemnumber(fila, col) que sirve para tomar valores numéricos, getitemdate(fila, col), getitemdatetime(fila, col), getitemstring(fila, col) bueno supondrás para que son las otras. Se usan así:
string ls_variable
ls_variable = dw_1.getitemstring(dw_1.getrow(),"cod_empleado")
Lo anterior toma el dato de la fila donde esta actualmente de la columna cod_empleado de la tabla que hizo el dw. Y así puede tomar cualquier campo del dw y pasarlo a variables.
- Cos SQL embebido: Otra manera de hacerlo es hacer una instrucción SQL que solo devuelva una fila, que son los datos que necesitas así:
string ls_variable
select cod_empleado into
:ls_variable
from empleado
where perfil = 1;
Fíjese el uso de into y luego la variable con ":" dos punto antes. Y la finalizar la instrucción ; punto y coma.
Bueno la idea es que mire cual le parece más fácil, pero recuerde que si va a usar sql embebido solo debe retornar una fila el select.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas