Obtener ID desde una Vista de Datos


([N1] joaquind) #1

Buenas a todos,

Consulto, tengo un formulario sin origen, y en él una vista de datos en la cual muestro una rejilla.

Tengo en el formulario una “conexión a evento” relacionada con el control vista de datos y a la señal de “items: cambio de seleccionado” debo ejecutar un evento. El problema es como obtener el valor ID del registro seleccionado desde la vista de datos.
Actualmente utilizo una variable global en la rejilla, pero me gustaría saber si existe otra forma sin utilizar estas variables.

Saludos
Joaquín Daneri


([N2] AyudaVelneo) #2

Hola Joaquín:

Crea una variable local en el formulario sin origen del mismo tipo que el id de la tabla en cuestión.

Después en el evento que tengas asociado a la conexión “Item: cambio del seleccionado”, le añades estas líneas:

Interfaz: Procesar (el control donde esté la vista de datos)
Leer ficha seleccionada
set ( VariableLocal, #ID)

Un saludo


([N1] joaquind) #3

Perfecto, muchas gracias Francisco por la rapidez de tus respuestas.

saludos
Joaquín


([N1] joaquind) #4

Ya probé el ejemplo y funcionó perfecto, ahora siguiendo el mismo criterio, tengo otro formulario sin origen en el cual muestro una vista de datos que ejecuta un proceso y trae una ficha.

En el formulario, muestra la ficha correctamente y con un evento quiero traer el ID de un campo de la ficha.

Interfaz: Procesar (vista_de_datos, todas)
Interfaz: Get campo (ID, VARIABLE_LOCAL_ID)

Entiendo que de esta forma debería obtener el valor del campo ID de la ficha que se muestra en la Vista de datos y asignarlo a VARIABLE_LOCAL_ID, pero me muestra cero.

Que estoy haciendo mal???

gracias


([N3] asesoria) #5

Estas procesando TODAS las fichas de la vista de datos, estas en un origen lista y quieres leer una ficha, procesa la seleccionadas y lee la ficha, así estarás en un origen ficha.

Juan


([N1] joaquind) #6

Hola Juan, estuve probando lo que me comentas, pero en mi caso muestro una ficha, la vista de datos tiene un proceso que finaliza en Añadir ficha a la salida y luego muestro el formulario ficha, no es una lista.

Al ingresar Interfaz: Procesar (vista de datos, Todas o Seleccionadas) desde un manejador de evento, no me permite ni leer ni seleccionar.

Me paro sobre la linea Get Campo(ID, ID_TAREA) y me dice que el origen es ficha, pero me muestra cero.

Estoy mal interpretando su uso, pero no se como se debería hacer.

saludos
Joaquín