Tabla de extensión en punto de inserción


([N1] wikan) #1

Buenas, me estoy dando en la cabeza con esto.

He añadido una tabla de extensión y estoy insertando un formulario nuevo en un punto se inserción.
Dicho formulario usa la tabla de extensión con los flags 10,5,11

Cuando ejecuto y entro, la tabla principal ya tiene datos, solo voy a rellenar la extendida, pero no hay manera, no graba, no crea…

¿Esto funciona? o ¿sigue habiendo problemas con las tablas extendidas?


([N4] velavisual) #2

@wikan

Actualiza a la 7.15.1 que ha salido hoy y vuelve a probar para salir de dudas.


([N1] wikan) #3

Buenas, nada.
sigue sin funcionar.
Ahora por lo menos parece que se da de alta la ficha de extensión, pero…
no se resuelve los maestros, la tabla principal es una tabla submaestra.

Mandaré un soporte a ver que me dicen.


([N4] velavisual) #4

@Wikan

Las tablas de extensión sólo podemos crearlas sobre tablas normales y arboladas


([N1] wikan) #5

@velavisual, si, ha sido fallo mio de documentación.

Ahora a estrujarme como lo soluciono.

Gracias.


([N1] wikan) #6

Buenos días,
después del currazo de cambiar la tabla a maestra…
Creo que las tablas de extensión en formularios insertados todavía esta…un poco raro.
Dentro de ese formulario tengo dos campos, un maestro y un submaestro de el. Y nada, sigue borrando el contenido del submaestro
Es una ampliación para añadir contabilidad, de ahi PGC Y CUENTA.
Aunque PGC guarda bien el valor, el campo CUENTA no hay manera, no lanza el localizador de maestro, ni el formulario de alta, no guarda contenido.

O tengo la cabeza en otro sitio o…yo no veo que estoy haciendo mal.


([N1] wikan) #7

Ok, encontrado el problema.

Tened cuidado por que no se puede usar la acción o comando localizar maestro sobre un formulario que tiene declarado una tabla de extensión. Ya que “sus maestros” son los de la ficha principal, no se pueden llegar a los maestros de la ficha de extensión, por eso no se muestro ni localizar, ni formulario de alta ni nada.


([N3] pacosatu) #8

Hola Manuel.

No he entendido bien el problema. Si tienes un campo puntero a maestro en la Ficha de Extensión ¿No funciona la Acción Localizar Maestro sobre ese campo extendido?

Yo creo que sí funciona, siempre y cuando pongas en la propiedad Ficha de extensión del botón que lanza la Acción el identificativo del subobjeto “Extensión de ficha” que vayas a usar.

Comprueba si es eso
Saludos
Paco Satué


([N1] wikan) #9

Buenas Paco,
Ahora no estoy delante pero te lo confirmo desde que llegue Paco.
De todas formas, yo para los menus (localizar, alta, edit) uso código javascript para lanzarlos. Probe on #EXTENSION.CAMPO y nada, no lanzaba.
Pero pruebo lo que me dices y lo posteo.


([N1] wikan) #10

@seh
probé lo que comentas, y tienes razón. Usando la acción desde un botón funciona. Pero…y si la acción la queremos poner en un menú para incrustarlo en el edit, ya la liamos. Pones la tabla extendida, pero al usar el menú desde el edit, creo que ocurre lo mismo.
Estamos en la tabla principal, y la acción lanza el localizar de la tabla extendida por el que el campo no lo reconoce.


([N3] pacosatu) #11

Hola Manuel.

Evidentemente lo que planteas no puede funcionar, dices:

y si la acción la queremos poner en un menú para incrustarlo en el edit, ya la liamos. Pones la tabla extendida, pero al usar el menú desde el edit, creo que ocurre lo mismo.

La cuestión es que el subobjeto “Extensión de ficha” solo funciona en el contexto del formulario contenedor. Este subobjeto es el que se encarga de gestionar la edición de la Ficha de extensión.

Por lo tanto cualquier Acción que lanzamos desde un menú es un proceso externo al formulario y ya no tendrá en su alcance la Ficha de extensión, a lo sumo recibirá un VRegisterIn que será el registro principal del formulario y a través de éste acceder a la Ficha de extensión.

La verdad es que todo esto da para un buen seminario avanzado.

Saludos
Paco Satué


([N2] AyudaVelneo) #12

Hola Paco:

Efectivamente no funciona cuando las acciones las ponemos en un menú. La pregunta es… si podemos poner dentro un formulario de maestro una ficha de extensión y dentro de esta ficha de extensión campos enlazados a maestro ¿cómo seleccionamos los registros? o cómo damos de alta un nuevo registro de un campo enlazado a maestro?

Un saludo


([N3] pacosatu) #13

Hola Vila.

Eso deberían de responderlo los ingenieros de diseño de Velneo. Por eso digo que da para un buen seminario avanzado.

Si lanzas una Acción desde un Formulario lo único que se induce es el registro (VRegister) de la tabla principal, no de la tabla extendida. La Ficha de Extensión es un subobjeto del formulario y no es capaz de inducir nada.

Lo que sí puedes es a través de la Ficha Principal del formulario, inducida como registro de entrada (VRegisterIn) al Proceso que llamas desde el menú, acceder a los campos de la tabla extendida.

Lo que lía un poco todo es la Ficha de Extensión, que no está completa todavía en funcionalidades. Siempre tener claro que lo que se induce desde el formulario a otros Procesos es la Ficha de la Tabla principal no de la Tabla extendida. O así lo creo yo, porque con Velneo estoy en un permanente prueba y error.

Saludos
Paco Satué


([N4] velavisual) #14

Buenas tardes,

El verdadero problema (según lo veo yo) es asignar el ID correspondiente a los enlaces a tablas maestras apuntadas en las tablas de extensión.

Para hacerlo hago uso de lo siguiente:

  • Formulario sin origen que hace las veces de ‘Localizador Avanzado/Personalizado’
  • Alimento la vista de datos con los resultados de la búsqueda, yo uso índices complejos ejecutados en 3er plano.
  • Cuando selecciono el registro interesado lo retorno en una variable
  • Para ponerlo en marcha siempre uso una función que lo ejecuta mediante manejador de objeto para disponer del registro devuelto en cada momento.La función la usas donde quieras.
  • Está claro que se ha de usar el ‘Pegar Como’ si queremos disponer de esta funcionalidad con distintas tablas. Hablando en modo Life Is Soft…
  • Con esto consigo la misma funcionalidad del localizador.A veces me olvido del localizador estandar y uso el ‘LAP’ (Localizador Avanzado Personalizado).

([N1] wikan) #15

@velavisual,
y dónde modificas el campo maestro de la tabla de extensión?
Supongo que mediante un evento, pero…te refresca el contenido del edit?

Saludos