Skip to main content

Comando: Crear módulo de extensión

Símbolo: ac_icon_create_extension.png

El comando crea un módulo de extensión para una ranura de submódulo. Solo está disponible si se selecciona una ranura de módulo vacía o un submódulo en el árbol de módulos.

El comando abre un cuadro de diálogo, donde define si la extensión se creará como un nuevo módulo ("Sin variación") o como una variación de un módulo existente o una instancia de módulo. Para ello, todos los módulos adecuados para el slot se ofrecen en una lista desplegable.

Hay dos opciones:

Derivar variación

El módulo de extensión deriva del módulo o instancia de módulo seleccionado en Variación de. El módulo elegido se importa a través de IMPORTS al módulo de extensión y el bloque de funciones del nuevo módulo se deriva del bloque de funciones de la plantilla del módulo.

Copiar fuente para Variación

Se crea un nuevo módulo de extensión copiando la declaración completa del módulo, incluido el bloque de funciones y las visualizaciones relacionadas del módulo seleccionado en Variación de (incluido el código fuente). Esto es posible sólo si el módulo seleccionado en Variación de está disponible en código fuente y no solo como módulo de una biblioteca compilada.

Los módulos de extensión sirven para agregar cualquier modificación o extensión específica del usuario a los módulos o instancias de módulos existentes y predefinidos.

Después de cerrar el diálogo con OK se creará una nueva carpeta en el POU pool con el nombre del módulo de extensión.

En esta carpeta se crearán los siguientes objetos (donde <nombre> es el nombre del módulo de extensión):

  • Caso estándar: un bloque de función con el nombre <name>, extendiendo la clase "Módulos" e implementando la interfaz requerida del tipo de slot. En este bloque de funciones se crearán todos los métodos y propiedades que existen en una interfaz implementada pero que no están implementadas en ninguna clase base.

  • Caso de variación: Al igual que en el caso estándar, se creará un bloque de función correspondiente. Este bloque de funciones se deriva del bloque de funciones de la plantilla del módulo elegido (Derivar variación) o es una copia del mismo (Copiar fuente para Variación).

  • Un grupo de imágenes y una lista de texto (nombre IP_<name> o TL_<name>). El grupo de imágenes contiene dos iconos con identificador Icon_16 y Icon_32. La lista de texto contiene la entrada Desc, que está lleno de un <name>. No hay idiomas en la lista de texto, solo la columna Estándar.

  • Una página de visualización vacía Visu_M_<name>, que implementa la interfaz necesaria. Si Copiar variación de la fuente está seleccionado, las visualizaciones del módulo de origen se copian en su lugar.

  • Se agregará un módulo de extensión al árbol de módulos, que no tiene parámetros ni E/S. Para los metadatos se utilizarán las imágenes, textos y elementos de visualización creados. La categoría es "Extensión". Si se trata de una variación "derivada", la declaración de la plantilla del módulo se importa adicionalmente a través de IMPORTS. Si se trata de una variación "copiada", la declaración de la plantilla del módulo se copia y adapta de manera que utiliza las listas de texto y los conjuntos de imágenes correspondientes del módulo de extensión.