Como recuperar todos los atributos de una relacion N:N y insertar registros?

14 Oct '15, 05:43 AM
40,836 Views
No Forum Badges

Hola eh estado intentando entender como se puede realizar la recuperacion de todos los atributos de una relacion N:N.  Se que cuando se tiene una relacion de N:N, webratio genera una tabla intermedia automaticamente en la base de datos como por ejemplo user_group. El problema esta cuando yo inserto un nuevo atributo en una tabla generada automaticamnete cuando se tiene una relacion N:N. Nose como recuperarlo.

Y mi segunda pregunta es. Tengo una entidad llamada libros y otra llamada prestamos. Es una relacion de N:N pero hice la tabla manualmente llamada detalle_prestamo y relacione prestamo con detalle_prestamo(N:1) y detalle_prestamo con libros (1:N). La clave primaria de detalle_prestamo es id_prestamo y id_libro. El problema es que nose como insertar un nuevo registro en detalle_prestamo.

 

Si me podrian ayudar se los agradeceria, ya probe varias cosas pero no consigo resolverlo. Desde ya muchas gracias. 

 

Saludos. 

 
x 0
Follow
Answer Answer at this question and get points!
Forum Starter - Level 2

Hola cyber,

Nosotros cuando necesitamos atributos en una relación N:N creamos en el Modelo de Datos directamente la tabla intermedia, tal y como lo haces en tu segunda pregunta y siguendo la quinta forma normal: https://es.wikipedia.org/wiki/Quinta_forma_normal

Si aplicas esto en el modelo de datos de WR, en vez de manualmente sobre la BBDD, puedes crear tuplas en la entidad intermedia como en cualquier entidad normal.

Un Saludo!

 
x 0
No Forum Badges

Gracias por responder, pero el problema es que nose como hacerlo, es decir, cuando agrego un nuevo atributo a la entidad intermedia nose como recuperarlo para visualizarlo. Utilize el selector pero la entidad intermedia generada no me sale. Aun siguiendo un ejemplo para recuperar los grupos de la entidad user-group generada asociados a los usuarios no me sale para seleccionar un atributo agregado a esa entidad generada.

 

Desde ya muchas gracias. 

 

Saludos.

 
x 0
Forum Starter - Level 2

Vuelvo a intentar explicarme con otras palabras :)

 

Cuando necesites atributos en una relación Tabla1 - N:N - Tabla2,

mejor crea:

Tabla1 - 1:N - Tabla Intermedia con atributos - N:1 - Tabla2

Creando 2 relaciones 1:N y la tabla intermedia en el DataModel y borrando la relación N:N, sino como dices no se puede mostrar esa tabla intermedia que crea WebRatio automáticamente en la BBDD.

Espero que no sea mucho trauma, jeje.

 
x 0
No Forum Badges

Eh ahi el problema de mi segunda pregunta, cuando creo la relacion de Prestamos a Detalle (N:1) y de Detalle a Libros (N:1), cuando intento agregar un nuevo registro con la operacion +, no me lo agrega. Le paso por parametros el id_prestamo y el id_libro a la entidad Detalle pero no me agrega un nuevo registro. Antes habia intentado hacer la relacion de Prestamos a Libros de N:N para que webratio me genere automaticamente la entidad detalle y le habia agregado un nuevo atributo pero no lo podia recuperar.

 

Saludos.

 
x 0
Forum Starter - Level 2

Pues nosotros usamos la Create Unit con esas relaciones y no tenemos problemas :(

Posibles causas de que no te inserte una tupla en la tabla intermedia que se me ocurran así de primeras:

- Que no estén bien mapeadas las tablas. ¿Te has fijado si da algún error en la consola de Tomcat cuando intentas insertar una tupla?

- Que no exista algún ID que le estás pasando a la tabla intermedia en las otras dos tablas.

 

Otra cosa, nosotros cuando creamos la tabla intermedia, no ponemos como clave primaria los ids de las otras dos tablas, las dejamos como claves secundarias y como clave primaria su propio oid, esto facilita mucho todo.

 
x 0
No Forum Badges

Eh logrado insertar una fila en la entidad detalle. Tengo una lista de libros. Se selecciona uno. Hago un flujo de esa lista hacia un create unit de prestamo. Despues de ese create unit de prestamo hago un flujo verde pasandole el id de prestamo hacia un create unite de detalle. El segundo parametro que seria id_libro lo paso como parameter passing desde la lista de libros hacia el create unit de prestamo. Y luego ese mismo id lo pongo en el flujo verde desde el create unit de prestamo hacia el create unit de detalle. Aun asi no entiendo muy bien como funciona el parameter passing porque como se pueden prestar varios libros entonces me cree una entidad temporal volatil tipo carrito de compra donde se almacen los libros seleccionados. Esa entidad tiene el id_libro y la cantidad por defecto 1. Entonces en la lista de libros seleccionaria solicitar y abajo se pone una lista de los libros seleccionados. La idea era apartir de esa lista de libros seleccionados tirar un flujo desde ahi hacia el create unit de prestamo pero sin embargo no lo toma bien al id_libro de la entidad volatil.

 

Saludos.

 
x 0
Forum Starter - Level 2

Un create desde un Selector Unit de la volátil que te has creado así tal cual a una Create Unit teniendo que guardar información variada no es buena idea.

Deberías poner después del selector una Loop Unit que recorra uno a uno los libros guardados en la entidad volátil y cree sus correspondientes tuplas en la BBDD.

 
x 0
No Forum Badges

Justamente estaba pensando en un loop para poder insertar varias tuplas en la entidad detalle. Todavia nose utilizar esa componente y tendre que verla para entender su funcionamiento.

 

Saludos.

 
x 0
Answer at this question and get points!

Related questions

502 proxy error-generate and run Adding and deleting from the database Agregar boton de cambio de contraseña en el login Alimentar graficas con base de datos Atributos Condicionales heredados Attribute comparison in a selector unit [beginner] - How to store and browse data collected with BPM app? Business object data Cancellare campi e tabelle dal database Cannot add a Database in the Domain Model Cannot connect to MySQL Cannot insert an entity in the database Cannot invoke method selectSingleNode() on null object Can't generate and run database or start tomcat server! Change uplod directory and protect anauthorized access to files Como mostrar una imagen en una lista o en la componente detalles? Conexion a Oracle 12g Connection refused. connect to Cloud Convert data in a Calculated attribute Convert selector component result to single value Creación DB Apache Derby - Modelado BPMN Criptare dati sensibili nel database Database connection, Host and Port number Database password encrypting Database properties Database resource consumption Database Tables Creation After Remote Deploy DB in Data Service Project Deploy in Cloud Amazon Beanstalk with Postgres Dynamic data type Empty record mistakenly saved Error updating metadata process EverLasting error "The TCP/IP connection to the host has failed. Connection refused" Execute truncate sql query file analysis then update MySQL database Find Model Problemas Foriegn key relationship Generate and run locally on webratio professional edition. getting data from database Groovy and Database Guardar Saltos de LINEA Hide a form if condition if true How can I import a view in the Domain Model as an attribute of an Entity? How database or datamodel migration? How I can receive the primary key value after adding into database from OK Port. How to block empty string in Database How to disble derby database? How to fix Network error(status 0) How to show certain values derived from relations in the domain model? I can't run any application with WebRatio (Table/View 'APP.POST' does not exist) Image in List field Insert data into database Is it possible to create a derived relationship between databases? JDBC4 Postgresql Driver JDBC connection with mysql on mac Job not start correctly Mapping database of the entity '...' is unspecified [MOBILE] Can't synchronize domain model with beck end DB Mostrar datos de diferentes tablas/ show dates from diferentes entities MS SQL server jdbc file multi selections field problem MySQL Driver jdbc No Apache Derby driver found No Database on Cloud account No database on my cloud account Passing JSON Object to Model Personalizzare lo stile di un progetto PostgreSQL Predefined values in database Problem accessing MySQL with WebRatio 6 Problema Grafo da una lista gerarchica Problema ¨HTTP Status 404" Problemas con el Operations View Delete Problem saving multi selection from input Problems to connect Sql Server DB from Webratio Problems with Database Metadata Problem with fields with accents used in attribute condition Problem with query unit! Problem with stored procedure Problem with the deletion of more than 50.000 records in a table publish web service for storing information in PostgreSQL DB following XSD Resource query a database Refresh and Synchronize DB Problems Relaciones Removing the User-Group-Module tagles Retrieve a value and add some value to it reverse engineering, problema con le relazioni di default Script Unit e Mysql Share database connection Solve "Generation Error" with Generate and Run option Statistics Component for WebRatio > 7.2.0 Status ProcessInstance and activityInstance in spanish Sybase JConnect 4 JAR replace Sync DataService Project with Mobile Project Table 'freeapp43.profesion' doesn't exist Tarea de servicio no me evalua el valor Trying to Synchronize Domain Model Unable to execute the script java.lang.NullPointerException Unknow property on Dynaclass after generation Unspecified BPM Engine Database Update mutiple records with the same value upload file and the move it to other location User Login Timestamp Username come chiave Using own User and Group tables Web ratio data model WebRatio - list results of joined tables Web Ratio Mobile and Foreign Key Web Ratio Mobile - Remote data mapping problem WebRatio no imports all attributes (fields) of a table Where is the ACME demo data stored?! White report