Hola a todos, la verdad es que llevo varios días bastante empanado, y estoy intentando hacer una cosa y no me sale.
Digamos que tengo una tabhla A, otra tabla B y una tabla C.
La tabla A, contiene una serie de registros. La tabla B, contiene enlace a Maestro a A y a C. Y la tabla C, es la tabla C :P
Desde un formuilario de Alta de la tabla A, quiero desde un botón, lanzar un formulario de Alta de la tabla C, y cuando acepte, recuperar el ID (en el evento desde donde llamé al formluario de alta), para poder crear manualmente el registro correspondiente.
Algo tal que así.
- Abre formulario de Alta TablaC
- Set IDTABLAC = valor devuelto al crear registro en TablaC
- Crear ficha en memoria TablaB
--Modificar Campos
--blablablablabla
- Refrescar rejilla.
Casi seguro soy yo el que lo está planteando mal, pero no veo como hacerlo, por que, por ejemplo, puedo levantar el formulario de alta de la tablaC con una acción, y desde el evento en el formulario, hacer un "Ejecutar Acción", pero lo que no veo es como recuperar el valor devuelto.
Supongo que estarás teniendo en cuenta que, en todo este proceso, estás en un *alta* de registro de A, luego el registro de A no está creado. Si la rejilla depende de A, tienes un problema. Quizá te interese no estar en un alta de A, sino en una modificación, tras crear el registro de A en "blanco" (como no sé qué es lo que quieres hacer, esto es sólo un pensamiento en voz alta).
Lo que yo haría para lo que pides es tener un botón que llame a un evento, y en el evento:
(Editado)
- Crear ficha en memoria de C
- Alta de ficha de C
- En ese momento, tomar el ID del registro de C (bajo Alta de ficha)
- Crear ficha en memoria de B (ojo: si A no está creado, no podrás enlazar a A)
- Alta de ficha de B
Sí, no he contado lo de tener creado A, porque lo daba por hecho. El problema, es, que yo necesito dar de alta un formulario de alta de C (no de B), donde no tiene relación alguna con "A". "B" es la tabla que relacionará cada "A" con uno o distintos "C". Por eso, el ID que necesito recuperar, es el del Alta de C.
Gracias Fran, precisamente era el comando "Pedir Formulario" el que desconocía y necesito, porque todos eran Alta de Ficha, etc..y no me servían para estos propósitos.
Un pequeño detalle, a lo dicho por Fran Varona,
Deberias controlar si el usuario ha Aceptado el formulario o ha pulsado Cancelar, porque si no, se creara la ficha igualmente.
Para ello, PEDIR FORMULARIO te permite indicar la variable de retorno de Ok
y usar la variable para saber si debes crear finalmente la ficha o se ha cancelado el formulario.