Macros de Función [Guía de Usuario de Enterprise Architect]

Top Previous Next

Macros de Función

button_main button_prev button_next

Macros de Función son una manera conveniente de manipular y dar formato varios elementos de datos. Cada macro de función devuelve una cadena de resultado. Hay dos maneras principales de utilizar los resultados de macros de función:

Sustitución directa de la cadena devuelta hacia una salida, tal como: %TO_LOWER(attName)%

Almacenar en la cadena devuelta como parte de una definición de variable tal como: $name = %TO_LOWER(attName)%

 

Los macros de función pueden obtener parámetros, los cuales pueden ser pasados a otros macros como:

Literales de Cadena, encerrado entre comillas dobles

Macros de sustitución directa, sin los signos de porcentaje que lo encierren

Referencias de variables

Literales numéricos

 

Múltiples parámetros pasados utilizando una lista separada por comas.

Los macros de función son nombrados de acuerdo con el estilo de Todas-Mayúsculas, como en: %CONVERT_SCOPE(opScope)%

Los macros de función disponible se describen abajo. Los parámetros son denotados por paréntesis angulares, como en: FUNCTION_NAME(<param>).

CONVERT_SCOPE(<umlScope>):

Para su uso con lenguajes soportados, para convertir <umlScope> al teclado de alcance apropiado para el lenguaje siendo generado. La siguiente tabla muestra la conversación de <umlScope> con respeto a los lenguajes dados.

Lenguaje

Paquete

Público

Privado

Protegido

C++

Público

Público

Privado

Protegido

 

C#

interno

Público

Privado

Protegido

 

Delphi

Protegido

Público

Privado

Protegido

 

Java

 

Público

Privado

Protegido

 

PHP

Público

Público

Privado

Protegido

 

VB

Protegido

Público

Privado

Protegido

 

VB .Net

Friend

Público

Privado

Protegido

 

COLLECTION_CLASS(<language>):

Da la colección de Clase apropiada para el lenguaje especificado para el atributo vinculado actual.

CSTYLE_COMMENT(<wrap_length>):

Convierte las notas para el elemento actualmente al alcance para comentarios de estilo-C, utilizando /* y */.

DELPHI_PROPERTIES(<scope>, <separator>, <indent>):

Genera una propiedad Delphi.

DELPHI_COMMENT(<wrap_length>):

Convierte las notas para el elemento actualmente al alcance a comentarios Delphi.

EXEC_ADD_IN(<addin_name>, <function_name>, <prm_1>, ..., <prm_n>):

Invoca una función de Add-In de Enterprise Architect, la cual puede devolver una cadena de resultado.

<addin_name> y <function_name> especifican los nombres del Add-In y función a ser invocados.

Los parámetros para las función de Add-In pueden ser especificados a través de parámetros <prm_1> a <prm_n>.

$result = %EXEC_ADD_IN("MyAddin","ProcessOperation",classGUID, opGUID)%

 

Cualquier función que está por ser llamada por el macro EXEC_ADD_IN debe tener dos parámetros: un objeto de EA.Repository, y un arreglo de Variante que contiene cualquier parámetro adicional de la llamada EXEC_ADD_IN. El tipo de retorno debería ser Variante.

Public Function ProcessOperation(Repository As EA.Repository, args As Variant) As Variant

 

FIND(<src>, <subString>):

Posición de la primera instancia de <subString> en <src>; -1 si no hay ninguna.

GET_ALIGNMENT():

Devuelve una cadena donde todo el texto de la línea actual de salida se convierte en espacios y pestañas.

JAVADOC_COMMENT(<wrap_length>):

Convierte las notas para el elemento actualmente al alcance a comentarios de estilo-javadoc.

LEFT(<src>, <count>):

Los primeros caracteres <count> de <src>.

LENGTH(<src>):

Longitud de <src>. Devuelve una cadena.

MID(<src>, <start>)

MID(<src>, <start>, <count>):

Subcadenas de <src> comenzando en <start> e incluyendo caracteres <count>. Donde <count> está omitido el resto de la cadena está incluida.

PI(<option>, <value>, {<option>, <value>}):

Configura el PI para la plantilla actual <value>. Los <valores> válidos son:

"\n"

"\t "

 

 

 

<opción> controla cuando toma efecto la nueva PI. Valores válidos para <opción> son:

I, Inmediato: el nuevo PI es generado antes de la siguiente línea de plantilla no vacía

S, Siguiente: el nuevo PI es generado después de la siguiente línea de plantilla no vacía

 

Varios pares de opciones están permitidos en una llamada. Un ejemplo de la situación donde esto sería utilizados donde una palabra clave está siempre en una nueva línea, como se ilustra abajo:

 

%PI=" "%

%classAbstract ? "abstract"%

%if classTag:"macro" != ""%

%PI("I", "\n", "N", " ")%

%classTag:"macro"%

%endIf%

class

%className%

 

 

Para más detalles, vea la descripción de PI.

PROCESS_END_OBJECT(<template_name>):

Permite que las Clases que están una Clase más lejos de la Clase base, para ser transformado en objetos (tal como atributos, operaciones, paquetes, parámetros y columnas) de la Clase base. <template_name> se refiere a la plantilla de trabajo que almacena temporalmente los datos.

REMOVE_DUPLICATES(<source>, <separator>):

Donde <source> es una lista separada<separator>; esto elimina cualquier duplicado o cadenas vacías.

REPLACE(<string>, <old>, <new>):

Reemplaza todas las ocurrencias de <old> con <new> en la cadena dada <string>.

RESOLVE_OP_NAME():

Resuelve los enfrentamientos en los nombres de interfaces donde dos método de interfaces tienen el mismo nombre.

RESOLVE_QUALIFIED_TYPE()

RESOLVE_QUALIFIED_TYPE(<separator>)

RESOLVE_QUALIFIED_TYPE(<separator>, <default>):

Genera un tipo calificado para el atributo actual, atributo vinculado, padre vinculado, operación o parámetro. Permite la especificación de un separador aparte de . y un valor predeterminado para cuando se requiere algún valor.

RIGHT(<src>, <count>):

Los últimos caracteres <count> de <src>.

TO_LOWER(<string>):

Convierte <string> a minúscula.

TO_UPPER(<string>):

Convierte <string> a mayúscula.

TRIM(<string>)

TRIM(<string>, <trimChars>):

Eliminar espacios en blancos dirigidos y arrastrados desde <string>. Si <trimChars> está especificado, todos los caracteres dirigidos y arrastrados en el conjunto de <trimChars> son eliminados.

TRIM_LEFT(<string>)

TRIM_LEFT(<string>, <trimChars>):

Elimina los caracteres dirigidos especificados desde <string>.

TRIM_RIGHT(<string>)

TRIM_RIGHT(<string>, <trimChars>):

Elimina los caracteres arrastrados especificados desde <string>.

VB_COMMENT(<wrap_length>):

Convierte las notas para el elemento actualmente al alcance a comentarios de estilo Visual Basic.

WRAP_COMMENT(<comment>, <wrap_length>, <indent>, <start_string>):

Envuelve el texto <comment> con grosor <wrap_length> poniendo <indent> y <start_string> al principio de cada línea.

 

$behavior = %WRAP_COMMENT(opBehavior, "40", " ", "//")%

 

<wrap_length> todavía debe ser pasado como una cadena, aunque WRAP_COMMENT trate este parámetro con un entero.

WRAP_LINES(<text>, <wrap_length>, <start_string>( , <end_string ) ):

Envuelve <text> como designado para ser <wrap_length>, agregando <start_string> al principio de cada línea y <end_string> al final de la línea si está especificado.

XML_COMMENT(<wrap_length>):

Convierte las notas para el elemento actualmente al alcance a comentarios de estilo - XML.