Duda concepto relación de tablas


([N4] franpino) #1

Tengo dudas sobre el concepto de relacionar tablas en Velneo.

Estoy en vERP
Tablas:
-Artículos
-Proveedor ( Contactos )

Tengo que relacionar 1 articulo con su proveedor por su CIF( el cif del proveedor también lo tengo en la tabla articulo porque no son exactamente artículos pero para que lo entendáis la llamaremos artículos ) y no tengo muy claro como hacerlo, pensaba que con crear un enlace a maestro en ART_M hacia ENT_M y un indice CIF bastaba, pero esta claro que no es así y me asaltan dudas por todos lados.

Podríais echarme una mano?

Muchas gracias.


([N2] Mgalvezh) #2

Quisieramos pero la cosa no está clara, en art_m creas un enlace a maestro, siempre que un registro de art_m solo pueda pertenecer a un registro de ENT_M, y ya esta, comprueba que se crea un indice de ese campo enlazdo, si voy perdido me lo dices.


([N4] franpino) #3

Gracias Mgalvezh por contestar.

ART_M es un articulo especial en el que es dueño un propietario, imaginemos que una casa, por lo que tiene un campo PRO_NIF
ENT_M son los propietarios en el que tenemos el CIF

He creado un enlace a maestro en ART_M apuntando a ENT_M y se ha creado un indice que su parte de indice lo he puesto como PRO_NIF.

Pero no me funciona.


([N4] Infortic) #4

Hola.

Yo no entiendo muy bien lo que quieres hacer.

En vERP:

La tabla ENT_M ya tiene el campo CIF, cada entidad tiene un CIF.
La tabla ART_M ya tiene un campo PRV que es el proveedor.

O no ten entiendo muy bien o para mí no haría falta crear el campo CIF en artículo: a un artículo le asignas una entidad y la entidad tiene su CIF.
Para mí no hace falta que crees ningún campo.

Entidades
ID NOMBRE CIF
1 JORGE 11111111H
2 JUAN 22222222J

Artículos:
ID NOMBRE PROVEEDOR
1 ARTICULO1 1
2 ARTICULO2 2
3 ARTICULO3 2
4 ARTICULO4 1

No hace falta que crees el cif en el artículo, ya que con el id del proveedor puedes obtener su cif.

Si luego quieres buscar artículos por CIF del proveedor ya es otra cosa, hay varias formas de hacerlo, lee los artículos que te han recomendado en el otro post sobre búsquedas antes y si tienes duda consulta exáctamente cual es tu problema, que tipo de formulario quieres hacer y qué problema te está dando.

Un saludo.


([N4] franpino) #5

[quote quote=50650]Hola.

Yo no entiendo muy bien lo que quieres hacer.

En vERP:

La tabla ENT_M ya tiene el campo CIF, cada entidad tiene un CIF.
La tabla ART_M ya tiene un campo PRV que es el proveedor.

O no ten entiendo muy bien o para mí no haría falta crear el campo CIF en artículo: a un artículo le asignas una entidad y la entidad tiene su CIF.
Para mí no hace falta que crees ningún campo.

Entidades
ID NOMBRE CIF
1 JORGE 11111111H
2 JUAN 22222222J

Artículos:
ID NOMBRE PROVEEDOR
1 ARTICULO1 1
2 ARTICULO2 2
3 ARTICULO3 2
4 ARTICULO4 1

No hace falta que crees el cif en el artículo, ya que con el id del proveedor puedes obtener su cif.

Si luego quieres buscar artículos por CIF del proveedor ya es otra cosa, hay varias formas de hacerlo, lee los artículos que te han recomendado en el otro post sobre búsquedas antes y si tienes duda consulta exáctamente cual es tu problema, que tipo de formulario quieres hacer y qué problema te está dando.

Un saludo.

[/quote]

Gracias por contestar compañero.

Pues no me había dado cuenta del enlace a maestro de PRV.

Entonces lo dejo tal cuál. Ahora para encontrar un proveedor a partir de su CIF.
-He creado una búsqueda con dos componentes, ID y cruzado PRV.
-Manejador de eventos que cuando abra el formulario de ART_M me cargue la búsqueda:

–Crear manejador de objeto(BUS_PRO Búsqueda ART_M_BUS_PRO@vERP2_app)
–Disparar objeto (BUS_PRO, No aplicable, )

no se si voy por buen camino, sería algo así?


([N4] Infortic) #6

Hola.

Si lo que quieres es desde el artículo poder buscar un proveedor por su CIF es más sencillo que todo eso, no tienes que hacer nada.

El índice que usa ese localizador tiene incluido el campo CIF, esto es, si en el artículo en el campo proveedor le das a F5 y escribes el CIF te va a buscar el proveedor automáticamente, sin cambiar nada.


([N2] AyudaVelneo) #7

Hola @franpino:

Espero que este post, te ayude a definir las relaciones entre las tablas en velneo.

Un saludo


([N2] AyudaVelneo) #8

Hola @franpino:

Espero que este post, te ayude a definir las relaciones entre las tablas en velneo.

Un saludo


([N4] franpino) #9

Si, me ha servido y mucho para comprender todo este concepto.

El caso es un tanto particular, es decir, por defecto, si haces una compra a un proveedor de un articulo, ciertamente no tienes que hacer nada, sale que proveedor que me da ese articulo, la relación ya es perfecta sin hacer ninguna búsqueda.

El tema es que yo he importado, articulos, y proveedores(propietarios), y en un principio habrá que decirle que proveedores tienen ciertos articulos, no se si me explico, si fueran pocos articulos podría relacionarlos manualmente, pero son 3000 y yo imagino que tendría que hacer una búsqueda por el único campo que comparten que es el CIF.

Lo mismo soy yo el que no lo entiende, perdonad mi torpeza.


([N4] franpino) #10

Bueno lo tengo casi ya hecho, pero necesito que me digáis como hacer algo.

Tengo un formulario de ART_M con un campo CIF y lanzo la búsqueda en la tabla ENT_M, según unas pruebas funciona pero me falta pasarle el CIF que quiero.

Necesitaría pasarle el valor de CIF a la variable de búsqueda, como puedo hacerlo teniendo en cuenta que lanzo la búsqueda desde un formulario con origen ART_M y la búsqueda en ENT_M ?


([N4] Infortic) #11

Hola.

A ver, yo creo que te estás liando.

Una cosa es la importación inicial de datos y otra la operativa diaria.

La operativa diaria yo creo que es correcta, cuando das de alta una artículo, buscas su proveedor con el localizador bien por nombre, bien por cif.

El problema que supongo que tienes es que has importado datos y tienes guardado en el artículo el CIF pero no tienes cargado el campo PRV.
el campo CIF es auxiliar, sólo te serviría para esta acrga inicial de datos, yo hasta lo quitaría del formulario.

Entonces, lo que necesitas es un proceso que te carge el campo PRV en todos los artículos importados, usando el campo CIF para buscar el proveedor.

¿ Me equivoco ?

Yo haría un proceso como el que te adjunto, lo ejecutas una vez y ya tienes el campo cargado.

A partir de ahí los artículos nuevos ya lo seleccionas por medio del localizador, que busca por CIF.



([N4] franpino) #12

[quote quote=50690]Hola.

A ver, yo creo que te estás liando.

Una cosa es la importación inicial de datos y otra la operativa diaria.

La operativa diaria yo creo que es correcta, cuando das de alta una artículo, buscas su proveedor con el localizador bien por nombre, bien por cif.

El problema que supongo que tienes es que has importado datos y tienes guardado en el artículo el CIF pero no tienes cargado el campo PRV.
el campo CIF es auxiliar, sólo te serviría para esta acrga inicial de datos, yo hasta lo quitaría del formulario.

Entonces, lo que necesitas es un proceso que te carge el campo PRV en todos los artículos importados, usando el campo CIF para buscar el proveedor.

¿ Me equivoco ?

Yo haría un proceso como el que te adjunto, lo ejecutas una vez y ya tienes el campo cargado.

A partir de ahí los artículos nuevos ya lo seleccionas por medio del localizador, que busca por CIF.

[/quote]

Efectivamente compañero, ese es el problema.

He hecho tu proceso tal cuál lo he dejado un rato ejecutandose, pero sigo sin poder ver el PRV del articulo.

Por cierto gracias por tu ayuda.


([N4] Infortic) #13

Entonces tendrás que debuggear y ver donde falla, si al buscar el proveedor o donde.

En principio debería de funcionar.

Pon un pantallazo de tu proceso que lo veamos y de los campos que has añadido a la tabla de artículos.

¿ Tienes cargado el campo CIF en ENT_M ?

Un saludo.


([N4] franpino) #14

Vale Infortic ya parece que funciona, el error fue mio.

Gracias por toda la ayuda brindada por todos, sois geniales.