# Inserción

Subobjeto de [formularios](../../../buenas-practicas-de-programacion/buenas-practicas-de-rendimiento/formularios), [acciones](../accion) y de [alternadores de lista](../alternador-de-lista) para uso en [herencia inversa](../../../herencia). Si en un proyecto heredado por el proyecto actual hemos activado a un formulario o a una acción o a un alternador de lista el estilo **punto de inserción**, mediante este subobjeto podremos resolver qué formulario, acción o alternador respectivamente será usando en aquel.

En un punto de inserción de un formulario solamente podremos incluir formularios, en un punto de inserción de una acción solamente podremos incluir acciones y en un punto de inserción de un alternador de lista solamente podremos incluir alternadores.

Un punto de inserción no es un punto de entrada para un único formulario/acción/alternador, sino que en un mismo punto de inserción podremos insertar n formularios/acciones/alternadores. Esto implica que los objetos declarados como punto de inserción solamente podrán ser usados desde objetos que soporten multiplicidad, como pude ser el [Separador formularios](../formulario/contenedores/separador-de-formularios) en el caso de los formularios, [toolbars](../toolbar) o [menús](../menu) en el caso de las acciones o alternadores, en el caso del alternador.

Para crear un sub-objeto de este tipo pulsaremos sobre el botón ![](https://content.gitbook.com/content/hGRTr5J3e6YsZ6MYIEDz/blobs/NLIu5Q86Rr25kKewsZyi/add_button.png) del panel de subobjetos del panel de propiedades del objeto y seleccionaremos la opción Inserción.

Esto hará que se añada el nuevo sub-objeto inserción en el panel de sub-objetos. Para editar sus propiedades, haremos doble clic sobre él.&#x20;

## Propiedades

### Identificador

Etiqueta alfanumérica que identifica de forma unívoca al sub-objeto dentro del proyecto.

Constará de mayúsculas y números exclusivamente. Al identificar de forma unívoca un objeto no puede haber duplicidad dentro del mismo objeto.

### Nombre

Etiqueta alfanumérica que servirá como descriptor del objeto. Se usará para presentar información del objeto en otros objetos y en los inspectores.

Podemos definir una etiqueta por cada idioma presente en el proyecto.

## Estilos

Podemos definir el estilo siguiente:

#### Privado

Limita el acceso del usuario final al objeto desde puntos donde no se haya programado el acceso al mismo.

### Comentarios

Esta propiedad nos permite documentar el uso del objeto.

### Punto de inserción

En esta propiedad seleccionaremos el objeto marcado como punto de inserción del proyecto heredado en el que queremos insertar el objeto en curso.

### Condición visible

Esta propiedad es específica de las inserciones de formularios.

Permite especificar una condición para que el objeto sea visible. La condición se establecerá mediante una fórmula que podremos escribir usando el asistente para edición de fórmulas. Para ello pulsar el botón que aparece al editar esta propiedad.

### Tabla de extensión

Esta propiedad es específica de las inserciones de formularios.

Esta propiedad solamente estará activa si la tabla asociada al formulario es un maestro de extensión de otra tabla, podremos insertarlo mediante herencia inversa en un formulario punto de inserción de la tabla padre. Es decir, que si hemos creada una tabla Clientes como maestro de Extensión de la tabla Entidades, podremos incluir en un punto de inserción de la tabla de Entidades un formulario de su extensión Clientes. En ella podremos activar/desactivar las opciones siguientes:

#### Botón alta tabla de extensión

Esta propiedad es específica de las inserciones de formularios.

Si activamos esta opción, en ejecución, dentro de la pestaña correspondiente a este formulario, se incluirá un botón que permitirá dar de alta el registro de la tabla de extensión si no existe.

#### Botón baja tabla de extensión

Esta propiedad es específica de las inserciones de formularios.

Si activamos esta opción, en ejecución, dentro de la pestaña correspondiente a este formulario, se incluirá un botón que permitirá eliminar el registro de la tabla de extensión.

![](https://content.gitbook.com/content/hGRTr5J3e6YsZ6MYIEDz/blobs/MzCOh2z1i0DLJ8YhrKDO/res_1981.png)

Las acciones con herencia inversa solamente podrán ser usadas en [menús.](../menu)

Los formularios con herencia inversa solamente podrán ser usados en controles de tipo separador formularios.
