Se muestra el editor SQL dentro de la pestaña Constructor de Búsqueda, en la cual usted pone como entrada la declaración SELECT.
El editor SQL está basado en el Editor de Código común, y proporciona una lista de autocompletar Intelli-sense rellena con la estructura del repositorio de Enterprise Architect; para mostrar la lista de autocompletar, presione Ctrl+Barra Espaciadora.
Una simple búsqueda puede ser localizar un objeto desde una tabla, dado un término de búsqueda que el usuario ingresa en el campo Término de Búsqueda
SELECT * FROM t_object WHERE NAME='<Search Term>'
En las declaraciones WHERE también puede utilizar los macros #xxx# como sustitutos de cadena, por lo que la misma búsqueda puede ser utilizada por personas diferentes en entornos diferentes; estos marcos incluyen:
•
|
#WC# - Obtiene el comodín apropiado para la base de datos actual, por lo que la búsqueda puede ser realizada en modelos en bases de datos diferentes
t_object.Name LIKE '#WC#Test#WC#'
|
•
|
#Author# - Obtiene el nombre de usuario desde el campo Autor en la página General de la ventana Opciones, para que la búsqueda definida puede ser realizada en objetos creados por ese usuario (este valor puede ser re-configurado manualmente en la ventana Opciones)
|
•
|
#DB=<DBNAME># donde <DBNAME> puede ser uno de los siguientes:
|
Sólo utiliza la sección de código entre dos macros coincidentes #DB=<DBNAME># si el tipo de base de datos actual coincide con el DBNAME especificado. Puede ser utilizado donde una sección del SQL puede requerir un manejo especial dependiendo del tipo de base de datos actual.
Por ejemplo:
#DB=ORACLE# t_object.ModifiedDate >= (SYSDATE - INTERVAL '<Search Term>' DAY) #DB=ORACLE#
•
|
#UserName# - Obtiene el nombre de la persona que ha iniciado sesión en el control de versiones
t_package.PackageFlags LIKE '#WC#VCCFG=#WC#CheckedOutTo=#UserName##WC#'
(esto es de la búsqueda incorporada Mis Paquetes Desprotegidos)
|
•
|
#Now# - Inserta la fecha actual más o menos un número determinado de horas o días; el valor predeterminado es días el formato de fecha se ajusta para adaptarse a la base de datos en uso)
t_object.ModifiedDate >=#Now <Search Term>#
Por ejemplo:
t_object.ModifiedDate >= #Now -4d# d es días
t_object.ModifiedDate >= #Now -5h# h es horas
t_object.ModifiedDate >= #Now +3#
t_object.ModifiedDate >= #Now#
|
•
|
#Package# - obtiene los Paquetes package_ID seleccionados actualmente
t_object.Package_ID = #Package#
|
•
|
#Branch# - obtiene los IDs de los Paquetes hijos del Paquete seleccionado actualmente, trabajando recursivamente hasta el nivel más bajo de sub-Paquete
t_object.Package_ID IN (#Branch#)
|
Para todas las funciones en las cuales utiliza una declaración SQL personalizada (tal como Informar Documento o Vistas de Modelo) la declaración debe devolver el guid y tipo del objeto encontrado para que el sistema pueda buscar el ítem seleccionado en el Explorador de Proyectos:
SELECT ea_guid AS CLASSGUID, Object_Type AS CLASSTYPE, Name FROM t_object
Puede extender la usabilidad de sus búsquedas SQL utilizando los aliases CLASSGUID y CLASSTYPE, para que pueda mostrar la ventana e ícono de Propiedades para elementos, conectores, atributos y operaciones, así como seleccionarlas en el Explorador de Proyectos.
Algunos ejemplos simples para utilizar estos campos con aliases se proporcionan abajo:
•
|
SELECT ea_guid AS CLASSGUID, Object_Type AS CLASSTYPE, Name FROM t_object
|
•
|
SELECT ea_guid AS CLASSGUID, Connector_Type AS CLASSTYPE, Name FROM t_connector
|
•
|
SELECT ea_guid AS CLASSGUID, 'Operation' AS CLASSTYPE, Name FROM t_operation
|
•
|
SELECT ea_guid AS CLASSGUID, 'Attribute' AS CLASSTYPE, Name FROM t_attribute
|
Puede activar a sus usuarios de búsqueda para arrastrar y soltar elementos desde los resultados de búsqueda hacia un diagrama, al incluir uno u otro de los siguientes en sus declaraciones de búsqueda SELECT:
•
|
(t_object.Object_ID and t_object.Object_Type) o
|
•
|
t_object. ea_guid AS CLASSGUID
|
Cuando haya definido la declaración SELECT, haga clic en el botón Guardar para guardar esta búsqueda; la búsqueda está entonces disponible desde la lista de despliegueBúsqueda.
|