Editar ficha de una tabla con los datos de otra tabla


([N3] blanyi) #1

Buenas tardes.

Tengo una tabla A (permanencia en Disco) y otra tabla B (permanencia en memoria) cuya estructura es muy similar a la tabla A. Cuando voy a crear nuevos registros en la tabla A lo hago por medio de un Tubo de Ficha en el que lleno los datos de la Tabla A con los de la Tabla B.

En ocasiones requiero modificar los datos de la Tabla A, pero con los datos de la Tabla B. El asunto es que no se como hacerlo. Así como se crea un registro en una tabla con base en los datos de otra tabla por medio de un tubo de ficha, así mismo no puedo actualizar los datos de una ficha de una tabla con base en los de otra ficha de otra tabla?.

Gracias a quien pueda ayudarme.

YIMY MORA ACONCHA


([N1] wikan) #2

Buenas,
o bien muestra un formulario después o usas el formulario de confirmación de los tubos


([N3] blanyi) #3

Hola Manuel, disculpame, pero no entendí tu respuesta.

Aclaro, por si hace falte, el usuario digita unos datos que van a la Tabla B, la idea es que como esa tabla es casi idéntica la Tabla A, poder actualizar la Tabla A con esos datos que el usuario ha modificado.

Gracias nuevamente.

YIMY MORA ACONCHA


([N1] comercial) #4

Hola, puedes crear un proceso ficha de B que lea la tabla A con los datos de B si existe modifica y si no pues crea, este proceso lo llamas desde los procesos de tabla (triguers), posterior a alta y modificación incluso borrado si lo necesitas para quitar.

Saludos.
Miguel.


([N3] blanyi) #5

Hola Miguel, gracias por tu respuesta.

Cuando dices “puedes crear un proceso ficha de B que lea la tabla A con los datos de B”.

Como se hace esto. Podrías por favor darme un ejemplo para entender mejor.
A qué te refieres cuando dices “proceso ficha de B”.

Precisamente una de las dudas que tengo en Velneo es saber como estando en una ficha de la Tabla A leer o tener acceso a los datos de una ficha de una tabla B. Teniendo en cuenta que estas dos tablas no tienen enlace, la una no es maestra de la otra ni nada parecido. Son dos tablas independiente, solo que la tabla B la utilizo como una tabla temporal, por eso es residente en memoria.

Gracias una vez más.

YIMY MORA ACONCHA


([N1] comercial) #6

Hola, los procesos de tabla (triguers) se encuentran en el proyecto de datos, en las tablas declaradas, un proceso posterior a modificación o alta puede modificar otras tablas, solo tienes que cargar lista de la tabla A hasta tener el registro de A que te interese o crear uno nuevo, en cuanto a tu pregunta me refiero a que un proceso tiene una entrada y una salida, la entrada puede ser una ficha de B y la salida pues… en este caso no es necesaria, creas un proceso por ejemplo:

como el proceso es de ficha de B tenemos la ficha de B disponible
guardamos lo que vallamos a necesitar para modificar/crear A
cargar lista de A ‘con algún indice resuelto con un dato de B’
si no existe (Syslistsice=0) lo creas
en caso contrario modificas lo que sea

y lo ejecutas desde los triguers de B.

de todas formas quizas, en este caso pudiera ser mejor conectar las dos tablas con puntero quizas virtual ¿?.


([N3] blanyi) #7

Ok, Miguel, entendido. Muchas gracias.
El asunto es que para modificar la Tabla A, debo guardar primero los datos de B en variables locales para luego en la tabla A utilizar modificar campo y asignarla el valor de la variable que corresponda.
Eso me parece tedioso porque la tabla contiene muchos campos, lo que me interesa saber es si hay algo así como se arman los tubos en los que se relacionan los campos de una tabla con el correspondiente campo de la otra tabla.
Algo así como las instrucciones SQL que indico a continuacion.

Estando en la ficha de la tabla A tener una instrucción como esta.

MODIFICAR CAMPO concepto, Tabla_B.campo_TablaB

Gracias.

YIMY MORA ACONCHA