Crear ficha con enlaces a maestros


([N4] franpino) #1

Buenas a todos, tengo una duda que probablemente sea de novato, pero no doy con la clave.

Estoy en vERP y tengo la tabla contactos y sus direcciones ( ENT_M -> DIR_M)

Estoy creando un proceso para importar las direcciones en su tabla desde un CSV, en principio se crea cada ficha pero los campos ENT y NAME de la tabla DIR_M se me quedan vacios,(los demás bien) pienso que es porque ambos campos son un enlace a maestro de ENT, y no se en estos casos como actuar.
Os dejo una imagen del proceso. Basicamente si no encuentra una dirección igual la crea.



([N1] vgegeo) #2

No conozco la estructura de vERP, pero estas haciendo es dar de alta direcciones en la tabla direcciones.
Si esta tabla es plural de ENT_M, y los campos ENT y NAME son enlaces a maestro de esta tabla, tendras que conocer el ID del maestro para modificar ese campo.

Si no conoces el ID del maestro, tendras que buscar antes, a que maestro corresponde la direccion que ha leido en el fichero, obtienes el ID, y este ID es el que pondras en esos campos enlace maestro.

Es decir, ahora mismo tendras direcciones huerfanas, sin su maestro asociado, ¿no?


([N4] carlitos) #3

Hola

yo utilizaria la opción de importación desde excel, pero como dice gegeo, te falta el vínculo de la entidad y la dirección.
de todas amneras, mira la importaciòn dinámica que va muy bien y te ahorras procesos.


([N4] franpino) #4

Teníais razón, era eso lo que me faltaba, no tenía el concepto todavía claro.

Muchas gracias a los dos por la aclaración.


([N1] icocu) #5

hola

yo tambien soy novato y en una aplicacion de 6x por hobby tengo el mismo problema
podrías poner como quedo finalmente el proceso para ver si me guio un poco.

Muchas gracias y un saludo


([N1] vgegeo) #6

“Sencillo”
Tu fichero es un listado de direcciones.
Estas direcciones pertenecen a una ficha maestra.
Tu no sabes cual es el ID de ese maestro en la tabla o igual ni existe aún.

Por lo tanto,
Cada vez que leas un direccion en el fichero, antes de dar de alta la dirección, tendras que buscar si su maestro existe:
-Si existe, lees el ID del maestro, y lo guardas en una variable para utilizarlo en el alta de la dirección que estas procesando.
-Si no existe, primero das de alta el maestro (con los datos que tengas), lees el ID del maestro que has grabado, y lo guardas en una variable para utilizarlo en el alta de la dirección que estas procesando.

Esto asi mientras estés leyendo lineas en el fichero de direcciones que quieres importar.

Espero esto te ayude a situar cada parte en el proceso


([N1] icocu) #7

Buenas vgegeo

He probado a hacerlo con un ejemplo de EXPEDIENTES - ACTUACIONES un poco diferente
La tabla Expedientes tiene un campo NumExp con indice de clave unica
El fichero de importacion de Actuaciones tiene ese campo (creo que para este caso es mejor guardar ese campo al exportar que el campo CODIGO)
El problema de dar de alta en la maestra lo he solucionado rapidamente con tus instrucciones, pero me he atascado al modificar el campo enlazado al dar de alta ACTUACIONES porque le pasaba siempre el dato de NumExp, hasta que he caido que le tenia que pasar el CODIGO xD.
Ahora parece que me funciona…pongo el codigo por si veis algo raro o mejorable, aunque sea de 6x igual a algun otro novato como yo le puede servir…el foro 6x esta paradillo ;D
En todo caso muchas gracias por tu ayuda

Un saludo a todos



([N1] vgegeo) #8

Mas que mejorable, es que depende de QUE tienes en el fichero de PLURALES que quieres importar, y como tienes los MAESTROS a los que pertenece.

El proceso lo tienes claro, ahora ya depende si en el fichero de plurales tienes datos para asociar, buscar o dar de alta el maestro, en el caso de que exista o no en tu tabla de MAESTROS.

Yo esto lo tenia montado para dar de alta pedidos y lineas de un fichero que contenia sólo las líneas de los pedidos, pero en cada linea, traia los datos de la cabecera del pedido, y la referencia original.

Era un poco mas complejo porque tenia que comprobar:
1.-Si la cabecera del pedido estaba dada de alta (con varios campos involucrados), tabla maestra PEDIDOS, si no estaba, primero daba de alta cabecera y despues…
2.-Después buscaba la referencia original del fichero en la tabla productos para saber el ID del producto que va en la linea, tabla maestra PRODUCTOS
3.-Por último, daba de alta la linea que habia leido, conociendo ya el ID del PEDIDO, y el ID del PRODUCTO en la base de datos.

Lo importante es que el proceso lo tienes claro, ya que tus lineas del fichero son PLURALES de ALGUIEN, y tienes que saber quien ese ese ALGUIEN antes de dar de alta. De lo contrario, si, daras de alta las lineas, pero se te quedaran en la tabla huerfanas, sin su maestro asociado.

Otro aspecto que tuve en cuenta, es que tanto en la tabla MAESTRA como en la PLURAL, guardaba el nombre del fichero importado, y un indice para buscar registros dados de alta por proceso de importación, para poder verificar en caso de problema de que fichero venía.

Saludos


([N1] icocu) #9

Buenas,

Ok, si el proceso asi es correcto y me he quedado con la idea perfecto.
Creo que sabre adaptarlo a otras situaciones porque en principio el trasvase de datos que busco entre aplicaciones gira siempre en ese NumExp y detalles o plurales concretos sin tener que hacer un proceso de importacion enorme o mas complejo.

Conoci Velneo6x hara unos diez años y acabe por hacerme una aplicacion domestica para controlar mis expedientes que hacia tiempo que no mejoraba, soy abogado. Y en estos ratos que estoy desarrollandola me vienen esas sensaciones que tuve al conocer la aplicacion y ver que lo que hacia funcionaba, es como un vicio. La v7 la toque un poquillo y ahora veo que la plataforma ha crecido muchisimo en funcionalidades, sin embargo parece que sigue sin ser muy conocida, la verdad es que no lo entiendo…Con lo bien que irían la Justicia y LexNet en Velneo!!! a ver si os animais

De nuevo muchas gracias por tu interés y ayuda
Un saludo a todos