El iniciador de formularios básico (referencia) genera dos botones: el botón de referencia y el botón de proyección. Si el usuario pulsa el botón de referencia, se abre el formulario de la tabla relacionada, con un filtro definido en el registro actual.
Hay una diferencia entre referencia y proyección: el botón de referencia muestra elementos relacionados del registro actual. El botón de proyección muestra los elementos relacionados de todos los registros que hay en el filtro actual.
La primera vez que abre un formulario, Conjunto de herramientas AutoCAD Map 3D crea un iniciador de formularios básico según las entradas de TB_RELATIONS. La mayoría de iniciadores de formularios básicos son de este tipo. Sin embargo, en casos muy especiales, puede definir sus propias referencias.
Propiedad |
Descripción |
Categoría System |
|
ClassName (nombre de clase) |
Reference |
Name (nombre) |
Nombre, por defecto = $REFERENCE1 |
Categoría Specific |
|
Detail (detalle) |
Las propiedades de Detail pueden editarse en el cuadro de diálogo Opciones de referencia. Pulse la fila de propiedad y, a continuación, pulse . |
DetailIndustryModel |
Muestra detalles o formularios que pertenecen a otro modelo de sector. |
DetailAttributeName (atributo de detalle) |
Child_column_name. Por ejemplo, FID_PARENT. |
DetailFilter (filtro de detalles) |
Filtro por defecto = vacío = todos los registros relacionados. Puede definir un filtro adicional para este filtro. |
DetailTable (tabla de detalles) |
Child_table_name. Por ejemplo, POINT_TEXT. |
MasterAttributeName (nombre de atributo principal) |
Parent_column_name. Por ejemplo, FID. Nota: el formulario actual es la tabla principal. |
ProjectionButton (botón de proyección) |
True = se genera un botón de proyección. Éste es el valor por defecto. |
ReferenceButton (botón de referencia) |
True = se genera un botón de referencia. Éste es el valor por defecto. |
Para DetailFilter, puede definir qué registros relacionados se van a mostrar. Por ejemplo, en el formulario de clase de elemento Tubería de agua, puede crear un botón de referencia que muestre todos los puntos relacionados de un tipo en concreto (TYPE):
Puede usar cualquier expresión SQL (es decir, la parte que sigue a WHERE), por ejemplo:
TYPE = 'Fireplug' or TYPE = 'any' OR
TYPE = 'Fireplug' and TYPE in (select ty from tytable where v1='any'
Para DetailIndustryModel puede abrir un formulario que pertenezca a una tabla de otro modelo de sector . Hay que abrir este modelo de sector de manera que se pueda seleccionar de una lista desplegable. Por ejemplo, hay un proyecto con dos modelos de sector abiertos, y desea mostrar datos de Propiedad inmobiliaria en un formulario de Agua. En este formulario, es necesario que seleccione PI (Propiedad inmobiliaria) para DetailIndustryModel.
Puede que el modelo de sector detallado no exista o que no se abra en el proyecto actual del usuario. Esto puede ocurrir si el creador de formularios selecciona su nombre de modelo de sector (plantilla), pero el usuario ha entrado en un modelo de sector con otro nombre (por ejemplo, la plantilla con el nombre propiedad_inmobiliaria se registró como el modelo de sector mi_propiedad_inmobiliaria). En este caso, Conjunto de herramientas AutoCAD Map 3D buscará todos los modelos de sector de este formulario.
El creador de formularios usa la propiedad DetailIndustryModel para seleccionar el formulario del modelo de sector en un cuadro de lista. Esta propiedad también es útil si existe el mismo nombre de tabla en varios modelos de sector (por ejemplo, tablas TB_*), lo cual es un caso extremadamente raro. Normalmente, todas las aplicaciones de modelos de sector usan un prefijo para distinguir los nombres de tabla (A = agua, PI= Propiedad inmobiliaria, etc.), de modo que no existirá el problema de abrir la tabla equivocada cuando el nombre del modelo de sector detallado no sea el correcto.
Si no se especifica la propiedad DetailIndustryModel, el sistema busca en la base de datos actual, y si se especifica (aunque su nombre no tenga sentido), busca en todas las bases de datos abiertas.