Copiar datos de una tabla a otra y referenciarlos

Hola,

Tengo una tabla "EX" y otra "PVIN", y en la tabla "PVIN" existe un campo referencia a "EX".

Construí  una "acción" que lleva algunos datos de la tabla "PVIN"  y crea un registro nuevo en la tabla "EX", pero no logro que en el registro de "PVIN" quede inmediatamente relacionado el registro recien creado con la "acción" en "EX". 

Es esto posible en Appsheet?

Solved Solved
0 11 90
2 ACCEPTED SOLUTIONS

Hola, lo logre de otra forma, me diste una buena idea. 

Lo que hice fue crear otra accion previa que me creara primero un UNIQUEID en la tabla PVIN para el campo ref de EX. Luego caundo copie los datos me lleva la llave que se creo previamente y la usa para crear la llave del nuevo registro en EX. 

Al finalizar, creo una accion que ejecuta secuencia de acciones y magicamente funciono. 

No sabia que una "acción" podia escribir datos en un "campo ref" sin que la llave estuviera creada previamente.

Por este motivo, incialmente no quedan referenciados cuando se ejectuta las primeras acciones pero al tener la misma llave magicamente luego se genera la referencia.

View solution in original post

Me alegro Carlos. Saludos! Marca tu solución para que otros usuarios puedan ver esto cuando lo necesiten! 

View solution in original post

11 REPLIES 11

Hola de nuevo Carlos, claro que es posible. 

Para copiar un registro de una tabla a otra existe una acción llamada "add a new row to another table usnig values from this row" 
Te va a solicitar la tabla origen y la tabla destino.

Te va a solicitar también los campos que quieres copiar 

Por ejemplo:

Tabla Destino Tabla Origen
Campo Ref (en tu caso EX en PVIN), es decir, el campo donde se almacenará el id de ex en PVIN EX_id de tabla origen 
Otros campos de tabla destino Otros campos de tabla origen
   

Si quieres una referencia en la tabla destino, asegúrate que el campo EX en PVIN sea de tipo Ref apuntando a la tabla Ex. Si bien no los vas a seleccionar manualmente, cuando se copien va a tomar esa relación.

CarlosSerrano_0-1742565302807.png

Hola nuevamente, gracias por la respuesta.
Intente, copia todo lo que necesito de la tabla PVIN a EX pero no queda relacionada en la tabla PVIN en registro recien creado en la tabla EX


No, creo que el error está en que estas poninendo  UNIQUEID() en id_EX y eso no es así porque le estas creando un id nuevo a la columnba id_EX y tu quieres que esa columna tenga el id de la tabla de la cual estás copiando. 

para eso, en lugar de escribir UNIQUEID() escribe [EX_id] si es que la tabla de la cual estás copiando es EX

Mira mi ejemplo 

Fijate aquí, estoy copiando (en mi caso de una tabla a la misma tabla) el campo item_family_id no le pongon UNIQUEID() sino que lo que copio es el  mismo id porque family es el parent dato que quiero relacionarFijate aquí, estoy copiando (en mi caso de una tabla a la misma tabla) el campo item_family_id no le pongon UNIQUEID() sino que lo que copio es el mismo id porque family es el parent dato que quiero relacionar

Hola gracias por le momentario,

Creo que hubo una confusión, no me supe explicar bien.

Lo que yo quiero es un nuevo registro en la tabla EX con datos de un registro de la tabla PVIN, pero a su vez quiero que la llave recien creada en la tabla EX quede relacionada en la tabla PVIN desde donde se copiaron los registro.

No necesito que el ID de PVIN quede copiado en la tabla EX, lo que requiero es lo contrario, que el registro recien creado en EX quede en PVIN.

Hola gracias por le momentario,

Creo que hubo una confusión, no me supe explicar bien.

Lo que yo quiero es un nuevo registro en la tabla EX con datos de un registro de la tabla PVIN, pero a su vez quiero que la llave recien creada en la tabla EX quede relacionada en la tabla PVIN desde donde se copiaron los registro.

No necesito que el ID de PVIN quede copiado en la tabla EX, lo que requiero es lo contrario, que el ID recien creado en EX quede en PVIN.

PVIN es la tabla a la cual le estas copiando el valor? o PVIN es la tabla desde la cual le copias el valor a EX

PVIN es la tabla desde donde estoy copiando los valores a EX

has probado poner [Id_EX] en lugar de UNIQUEID()?has probado poner [Id_EX] en lugar de UNIQUEID()?

Ha probado esto? cambiar la fórmula UNIQUEID() por el valor [id_Ex]

Entonces estamos haciendo al reves las cosas. Vas a tener que crear un BOT que escriba el valor en PVIN cada vez que se agregue un campo en Ex. El problema es que si Id_ex en PVIN es un campo que almacena varios ids vas a tener que considerar un campo enumlist de base type ref que almacene muchos. 

El bot debe encontrar cambios en la tabla ex (evento, cada vez que se agregue o actualice un campo) y luego ejecutar una acción en un conjunto de filas de la misma tabla EX ¿cual es ese conjunto de filas? LIST([_THISROW].[PVIN])

Lo que debes hacer es ejecutar una acción sobre un conjunto de filas de ex a la tabla ex y luego una acción desde ex a PVIN que setee el valor de la columna donde quieres copiar el id que es id_EX
 

Hola, lo logre de otra forma, me diste una buena idea. 

Lo que hice fue crear otra accion previa que me creara primero un UNIQUEID en la tabla PVIN para el campo ref de EX. Luego caundo copie los datos me lleva la llave que se creo previamente y la usa para crear la llave del nuevo registro en EX. 

Al finalizar, creo una accion que ejecuta secuencia de acciones y magicamente funciono. 

No sabia que una "acción" podia escribir datos en un "campo ref" sin que la llave estuviera creada previamente.

Por este motivo, incialmente no quedan referenciados cuando se ejectuta las primeras acciones pero al tener la misma llave magicamente luego se genera la referencia.

Me alegro Carlos. Saludos! Marca tu solución para que otros usuarios puedan ver esto cuando lo necesiten! 

Top Labels in this Space