Dudas de principiante


([N1] mirna) #1

Hola a todos! estoy en eso de “cambiarme el chip” y hasta ahora mi experiencia ha sido excelente, estoy haciendo una aplicación de cobranza para un colegio y he logrado en solo una semana, lo que no había podido avanzar en algunos meses haciéndolo con “mi modo tradicional”. Sin embargo, tengo rato dándole vuelta a un punto que estoy segura que es una tontería, pero no logro verlo: Tengo una tabla de ALUMNOS y una tabla de REPRESENTANTES, ambas maestras. Un alumno puede tener varios representantes, aunque uno solo de ellos es el “principal”. A su vez, un representante puede tener varios alumnos en el colegio, esto lo resuelvo con una tabla maestra ALUMNO-REPRESENTANTE, donde se han de guardar tantas parejas de alumno-representante como existan en el colegio (ojo, prefiero manejarme con tablas maestras hasta que no entienda bien la filosofía de los otros tipos de tabla), esta tabla tiene un campo ID, un enlace a ALUMNOS y otro a REPRESENTANTES.

En el formulario Alumnos, debo llenar todos los datos del alumno, y también debo incluir su representante, el caso es que no hallo como meter en el formulario la tabla REPRESENTANTES porque el formulario es de la tabla alumnos y tampoco se como llenar la tabla ALUMNO_REPRESENTANTE, una vez que logre llenar todos los datos del alumno.

El proceso ha de ser asi: Se crea un alumno y se guarda en la tabla ALUMNOS, se elige su representante de una lista de los representantes existentes >> Si no está se crea uno nuevo en la tabla REPRESENTANTES >> Se guarda la pareja creada en la tabla ALUMNO-REPRESENTANTE.

Por favor, si alguien me puede ayudar, una explicación para dummies, muchas gracias por anticipado!!!


([N1] Pepeto) #2

El esquema que planteas tienes 3 tablas:

  • Una maestra de Alumnos
  • Una maestra de Representantes
  • Y otra maestra, que a su vez es plural de las 2 anteriores (enlace a Alumnos y a Representantes)

Por tanto, a la hora de crear las relaciones, tendras un formulario para dar altas de Alumnos y otro para dar altas de Representantes,
y en ambos, necesitaras poner una rejilla (o alternador con rejilla) en un control “Vista de datos” para crear los enlaces.

  • En el formulario del alumno, necesitaras una vista de datos para ver la tabla plural de “Alumno-Representante” y hay es donde crearas esa relación
  • En el formulario del representante, necesitaras una vista de datos para ver la tabla plural de “Alumno-Representante” y hay es donde crearas esa relación

Asi, desde el alumno podras ver todos sus representantes, y desde el representante, podras ver todos sus alumnos.

un saludo
José Luis
http://www.ascsl.com


([N1] mirna) #3

Aja, desde el formulario alumnos, cree un campo tipo Vista de Datos, pero solo me permite poner en Objeto1 un formulario de los que tengo ya creados que involucran a la tabla Alumnos, no puedo poner una rejilla, ¿que estaré haciendo mal?


([N1] mirna) #4

Olvidé darte las gracias por tu pronta respuesta!
Nota: tengo creadas las rejillas de Representantes y de Alumnos-Representantes


([N1] Pepeto) #5

para poner la rejilla en una vista de datos en la ficha de Alumnos necesitas un proceso que haga lo siguiente:

Origen del proceso: Alumnos (ficha)
Destino: Alumnos-Representante (Lista)

Proceso:

  • cargar plurales (Alumos-Representante)
    ---- añadir lista a la salida

Luego en el formulario, en la “vista de datos”, pones como 1 objeto el proceso y como 2 objeto, la rejilla

Para el formulario de representantes, creas otro proceso similar cambiando el origen.

un saludo
José Luis
http://www.ascsl.com


([N1] mirna) #6

Perfecto Pepeto, Gracias! Velneo es una maravilla, incluyendo el apoyo en línea!. Ya logro ver en el formulario de alumnos, sus representantes y en el de los representantes sus alumnos…Ahora, bien, necesito que al dar de alta un alumno, desde su formulario, se pueda elegir su representante si existe y si no existe, crearlo, solo que como no tengo un enlace directo entre alumnos y representantes pareciera que desde el formulario de alumnos no puedo cargar los representantes, ¿otro proceso?


([N1] mirna) #7

A ver…de varios tutoriales que encontré en la red, hice lo siguiente:

  1. cree un puntero indirecto real desde la tabla de ALUMNOS hacia la de representantes, ahora me permite acceder desde el formulario de alumnos, a la tabla de REPRESENTANTES.
  2. Inserté en el formulario 2 campos con acceso al ID y Nombre del representante,
  3. Creé un botón para localizar un representante y le dije que el comando era Localizar Maestro, con el campo puntero a REPRESENTANTE, y el objeto un localizador.

Ahora bien, cuando lo ejecuto si busco con el miniscroll en el código de un representante no se me actualiza el otro campo con la información del representante y lo mismo si lo hago busco con el nombre. Si le doy al botón localizar, funciona pero no trae de regreso los datos del representante, ¿es correcto lo que hice?. Anexo una pantalla y una vez mas, mil gracias!


([N1] Pepeto) #8

Si instalas la open app OpenErp o cualquier otra open app como vBase, veras diferentes formas de hacer lo que pretendes.
Como enlazar a las tablas maestras desde otras tablas y poder dar altas, modificar y localizar registros.
En OpenErp, tienes un ejemplo en la tabla de albaranes para acceder a Entidades, o en Lineas de venta para acceder a Articulos.
En vBase tienes mas ejemplos, en cualquier formulario de una tabla que tenga un enlace a maestro.

un saludo
José Luis
http://www.ascsl.com


([N1] mirna) #9

Ok, gracias! estoy en eso de probar…

Un Abrazo!
Mirna