Skip to main content

Comando: Crea modulo di estensione

Simbolo: ac_icon_create_extension.png

Il comando crea un file modulo di estensione per uno slot del sottomodulo. È disponibile solo se nell'albero dei moduli è selezionato uno slot modulo vuoto o un sottomodulo.

Il comando apre una finestra di dialogo in cui si definisce se l'estensione deve essere creata come nuovo modulo ("Nessuna variazione") o come variazione di un modulo esistente o di un'istanza di modulo. A questo scopo in un elenco a discesa vengono offerti tutti i moduli adatti allo slot.

Ci sono due opzioni:

Derivare la variazione

Il modulo di estensione deriva dal modulo o dall'istanza del modulo selezionato in Variazione di. Il modulo scelto viene importato tramite IMPORTS al modulo di estensione e il blocco funzione del nuovo modulo deriva dal blocco funzione del modello di modulo.

Copia sorgente per Variation

Un nuovo modulo di estensione viene creato copiando la dichiarazione completa del modulo compreso il blocco funzione e le relative visualizzazioni dal modulo selezionato in Variazione di (incluso il codice sorgente). Ciò è possibile solo se il modulo selezionato in Variazione di è disponibile nel codice sorgente e non solo come modulo di una libreria compilata.

I moduli di estensione servono per aggiungere qualsiasi modifica o estensione specifica dell'utente ai moduli esistenti e predefiniti o alle istanze del modulo.

Dopo aver chiuso la finestra di dialogo con OK verrà creata una nuova cartella nel file POU pool con il nome del modulo di estensione.

In questa cartella verranno creati i seguenti oggetti (dove <nome> è il nome del modulo di estensione):

  • Caso standard: un blocco funzione con il nome <name>, estendendo la classe "Moduli" e implementando l'interfaccia richiesta del tipo di slot. In questo blocco funzione verranno creati tutti i metodi e le proprietà che esistono in un'interfaccia implementata ma che non sono implementati in nessuna classe base.

  • Caso variante: Come nel caso standard, verrà creato un blocco funzione corrispondente. Questo blocco funzione deriva dal blocco funzione del modello di modulo scelto (Derivare la variazione) o ne è una copia (Copia sorgente per Variation).

  • Un pool di immagini e un elenco di testi (nome IP_<name> O TL_<name>). Il pool di immagini contiene due icone con identificatore Icon_16 E Icon_32. L'elenco dei testi contiene la voce Desc, che è riempito con a <name>. Non ci sono lingue nell'elenco dei testi, solo la colonna Standard.

  • Una pagina di visualizzazione vuota Visu_M_<name>, che implementa l'interfaccia richiesta. Se Copia la variazione dalla fonte è selezionato, vengono invece copiate le visualizzazioni del modulo sorgente.

  • All'albero dei moduli verrà aggiunto un modulo di estensione che non ha né parametri né I/O. Per i metadati verranno utilizzate le immagini, i testi e gli elementi di visualizzazione creati. La categoria è "Estensione". Se si tratta di una variante "derivata", la dichiarazione del modello di modulo viene inoltre importata tramite IMPORTS. Se si tratta di una variazione "copiata", la dichiarazione del modello del modulo viene copiata e adattata in modo tale da utilizzare gli elenchi di testi e i pool di immagini corrispondenti del modulo di estensione.