simatic hmi wincc v7.4 - scripting (vbs, ansi-c, vba)€¦ · simatic hmi wincc v7.4 wincc:...

2696
SIMATIC HMI WinCC V7.4 WinCC: Scripting (VBS, ANSI-C, VBA) Manuale di sistema Stampa della Guida in linea 02/2016 A5E37536063-AA VBS per creare procedure e azioni 1 ANSI-C per creare funzioni e azioni 2 VBA per la progettazione automatizzata 3

Upload: others

Post on 21-Jul-2020

117 views

Category:

Documents


6 download

TRANSCRIPT

  • SIMATIC HMI

    WinCC V7.4WinCC: Scripting (VBS, ANSI-C, VBA)

    Manuale di sistema

    Stampa della Guida in linea

    02/2016A5E37536063-AA

    VBS per creare procedure e azioni 1ANSI-C per creare funzioni e azioni 2VBA per la progettazione automatizzata 3

  • Avvertenze di leggeConcetto di segnaletica di avvertimento

    Questo manuale contiene delle norme di sicurezza che devono essere rispettate per salvaguardare l'incolumità personale e per evitare danni materiali. Le indicazioni da rispettare per garantire la sicurezza personale sono evidenziate da un simbolo a forma di triangolo mentre quelle per evitare danni materiali non sono precedute dal triangolo. Gli avvisi di pericolo sono rappresentati come segue e segnalano in ordine descrescente i diversi livelli di rischio.

    PERICOLOquesto simbolo indica che la mancata osservanza delle opportune misure di sicurezza provoca la morte o gravi lesioni fisiche.

    AVVERTENZAil simbolo indica che la mancata osservanza delle relative misure di sicurezza può causare la morte o gravi lesioni fisiche.

    CAUTELAindica che la mancata osservanza delle relative misure di sicurezza può causare lesioni fisiche non gravi.

    ATTENZIONEindica che la mancata osservanza delle relative misure di sicurezza può causare danni materiali.Nel caso in cui ci siano più livelli di rischio l'avviso di pericolo segnala sempre quello più elevato. Se in un avviso di pericolo si richiama l'attenzione con il triangolo sul rischio di lesioni alle persone, può anche essere contemporaneamente segnalato il rischio di possibili danni materiali.

    Personale qualificatoIl prodotto/sistema oggetto di questa documentazione può essere adoperato solo da personale qualificato per il rispettivo compito assegnato nel rispetto della documentazione relativa al compito, specialmente delle avvertenze di sicurezza e delle precauzioni in essa contenute. Il personale qualificato, in virtù della sua formazione ed esperienza, è in grado di riconoscere i rischi legati all'impiego di questi prodotti/sistemi e di evitare possibili pericoli.

    Uso conforme alle prescrizioni di prodotti SiemensSi prega di tener presente quanto segue:

    AVVERTENZAI prodotti Siemens devono essere utilizzati solo per i casi d’impiego previsti nel catalogo e nella rispettiva documentazione tecnica. Qualora vengano impiegati prodotti o componenti di terzi, questi devono essere consigliati oppure approvati da Siemens. Il funzionamento corretto e sicuro dei prodotti presuppone un trasporto, un magazzinaggio, un’installazione, un montaggio, una messa in servizio, un utilizzo e una manutenzione appropriati e a regola d’arte. Devono essere rispettate le condizioni ambientali consentite. Devono essere osservate le avvertenze contenute nella rispettiva documentazione.

    Marchio di prodottoTutti i nomi di prodotto contrassegnati con ® sono marchi registrati della Siemens AG. Gli altri nomi di prodotto citati in questo manuale possono essere dei marchi il cui utilizzo da parte di terzi per i propri scopi può violare i diritti dei proprietari.

    Esclusione di responsabilitàAbbiamo controllato che il contenuto di questa documentazione corrisponda all'hardware e al software descritti. Non potendo comunque escludere eventuali differenze, non possiamo garantire una concordanza perfetta. Il contenuto di questa documentazione viene tuttavia verificato periodicamente e le eventuali correzioni o modifiche vengono inserite nelle successive edizioni.

    Siemens AGDivision Digital FactoryPostfach 48 4890026 NÜRNBERGGERMANIA

    A5E37536063-AAⓅ 03/2016 Con riserva di modifiche

    Copyright © Siemens AG 2016.Tutti i diritti riservati

  • Indice del contenuto

    1 VBS per creare procedure e azioni............................................................................................................11

    1.1 VBS per creare procedure e azioni........................................................................................11

    1.2 Impiego di Visual Basic Script in WinCC................................................................................12

    1.3 Moduli e procedure................................................................................................................16

    1.4 Azioni.....................................................................................................................................19

    1.5 Utilizzo multiplo di procedure ed azioni..................................................................................22

    1.6 Connessioni con CrossReference..........................................................................................24

    1.7 Utilizzo di variabili globali in VBS...........................................................................................26

    1.8 Gli editor di VBScript..............................................................................................................281.8.1 Gli editor di VBScript..............................................................................................................281.8.2 L'editor Global Script..............................................................................................................291.8.3 Lavorare nella finestra di editing............................................................................................321.8.4 Lavorare con le barre degli strumenti.....................................................................................351.8.5 Eliminazione di azioni o procedure........................................................................................37

    1.9 Creare e modificare delle procedure......................................................................................391.9.1 Creare e modificare delle procedure......................................................................................391.9.2 Creazione di una nuova procedura........................................................................................421.9.3 Scrittura del codice di procedura............................................................................................441.9.4 Utilizzo di procedure predefinite e di progetto........................................................................471.9.5 Aggiunta delle informazioni ausiliarie al modulo....................................................................481.9.6 Protezione di un modulo con una password..........................................................................501.9.7 Salvataggio di una procedura................................................................................................511.9.8 Rinomina di una procedura o di un modulo...........................................................................53

    1.10 Creare e modificare le azioni.................................................................................................551.10.1 Creazione e modifica di azioni...............................................................................................551.10.2 Creazione di una nuova azione..............................................................................................591.10.3 Modifica di un'azione..............................................................................................................601.10.4 Aggiunta di informazioni ausiliarie all'azione..........................................................................641.10.5 Protezione di un'azione tramite password..............................................................................661.10.6 Salvataggio di un'azione........................................................................................................671.10.7 Trigger....................................................................................................................................681.10.7.1 Trigger....................................................................................................................................681.10.7.2 Trigger di animazione.............................................................................................................721.10.7.3 Aggiunta di un trigger del tipo "timer".....................................................................................731.10.7.4 Come aggiungere un trigger del tipo "variabile".....................................................................751.10.7.5 Modifica di un trigger..............................................................................................................761.10.7.6 Eliminazione di un trigger.......................................................................................................761.10.8 Rinomina di un'azione............................................................................................................78

    1.11 Attivazione delle azioni globali in runtime..............................................................................79

    1.12 Diagnostica............................................................................................................................80

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 3

  • 1.12.1 Diagnostica............................................................................................................................801.12.2 GSC - Diagnostica.................................................................................................................811.12.2.1 GSC - Diagnostica.................................................................................................................811.12.2.2 Inserimento della finestra di diagnostica GSC in una pagina.................................................821.12.2.3 Attributi di diagnostica GSC...................................................................................................821.12.2.4 Barra degli strumenti di diagnostica GSC..............................................................................831.12.3 GSC - Runtime.......................................................................................................................841.12.3.1 GSC - Runtime.......................................................................................................................841.12.3.2 Inserimento in una pagina della finestra di GSC runtime.......................................................851.12.3.3 Attributi di runtime GSC.........................................................................................................861.12.4 Controllare con il debugger....................................................................................................871.12.4.1 Controllare con il debugger....................................................................................................871.12.4.2 Come attivare il debugger......................................................................................................891.12.4.3 Fondamenti del debugging.....................................................................................................901.12.4.4 Struttura dei file VBScript.......................................................................................................931.12.4.5 Nome di azioni e di procedure nel debugger.........................................................................951.12.4.6 Selezione di uno script per l'elaborazione..............................................................................961.12.4.7 Esecuzione di uno script passo per passo.............................................................................971.12.4.8 Impostazione di punti d'interruzione.......................................................................................981.12.4.9 Eliminazione dei punti di interruzione...................................................................................1001.12.4.10 Impostazione di segnalibri nello script.................................................................................1001.12.4.11 Identificazione e modifica di valori di variabili e di proprietà................................................1011.12.4.12 Esecuzione di comandi di script...........................................................................................102

    1.13 Stampa di VBScript..............................................................................................................104

    1.14 Riferimento VBS...................................................................................................................1051.14.1 Referenza VBS....................................................................................................................1051.14.2 Oggetti ed elenchi................................................................................................................1071.14.2.1 Oggetti ed elenchi................................................................................................................1071.14.2.2 Oggetto Alarm......................................................................................................................1101.14.2.3 Oggetto Alarms (elenco)......................................................................................................1101.14.2.4 Oggetto AlarmLogs..............................................................................................................1121.14.2.5 Oggetto DataItem.................................................................................................................1131.14.2.6 Oggetto DataLogs................................................................................................................1141.14.2.7 Oggetto DataSet (elenco)....................................................................................................1161.14.2.8 Oggetto HMIRuntime...........................................................................................................1181.14.2.9 Oggetto Item........................................................................................................................1191.14.2.10 Oggetto Layer......................................................................................................................1201.14.2.11 Oggetto Layers (elenco).......................................................................................................1211.14.2.12 Oggetto Logging...................................................................................................................1221.14.2.13 Oggetto ProcessValue.........................................................................................................1231.14.2.14 Oggetto ProcessValues (elenco).........................................................................................1241.14.2.15 Oggetto Project....................................................................................................................1241.14.2.16 Oggetto ScreenItem.............................................................................................................1251.14.2.17 Oggetto ScreenItems (elenco).............................................................................................1291.14.2.18 Oggetto Screen....................................................................................................................1311.14.2.19 Oggetto Screens (elenco)....................................................................................................1341.14.2.20 Oggetto SmartTags..............................................................................................................1361.14.2.21 Oggetto Tag.........................................................................................................................1371.14.2.22 Oggetto Tags (elenco).........................................................................................................1401.14.2.23 Oggetto TagSet (elenco)......................................................................................................1411.14.3 Tipi di oggetto dell'oggetto ScreenItem................................................................................143

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)4 Manuale di sistema, 02/2016, A5E37536063-AA

  • 1.14.3.1 Tipi di oggetto dell'oggetto ScreenItem................................................................................1431.14.3.2 Oggetti predefiniti.................................................................................................................1441.14.3.3 Oggetti Smart.......................................................................................................................1691.14.3.4 Oggetti Windows..................................................................................................................2011.14.3.5 Oggetti del tubo....................................................................................................................2161.14.3.6 Control..................................................................................................................................2191.14.3.7 Oggetto utente.....................................................................................................................2991.14.3.8 Gruppo.................................................................................................................................3011.14.4 Proprietà...............................................................................................................................3021.14.4.1 Proprietà...............................................................................................................................3021.14.4.2 A...........................................................................................................................................3031.14.4.3 B...........................................................................................................................................3221.14.4.4 C...........................................................................................................................................3631.14.4.5 D...........................................................................................................................................3971.14.4.6 E...........................................................................................................................................4071.14.4.7 F...........................................................................................................................................4161.14.4.8 G..........................................................................................................................................4381.14.4.9 H...........................................................................................................................................4421.14.4.10 I............................................................................................................................................4511.14.4.11 L...........................................................................................................................................4571.14.4.12 M..........................................................................................................................................4891.14.4.13 N...........................................................................................................................................5101.14.4.14 O..........................................................................................................................................5121.14.4.15 P...........................................................................................................................................5291.14.4.16 Q..........................................................................................................................................5471.14.4.17 R...........................................................................................................................................5481.14.4.18 S...........................................................................................................................................5581.14.4.19 T...........................................................................................................................................5961.14.4.20 U...........................................................................................................................................6711.14.4.21 V...........................................................................................................................................6791.14.4.22 W..........................................................................................................................................6961.14.4.23 X - Z.....................................................................................................................................7011.14.5 Metodi..................................................................................................................................7091.14.5.1 Metodi..................................................................................................................................7091.14.5.2 Metodi da A a E....................................................................................................................7101.14.5.3 Metodi Get............................................................................................................................7191.14.5.4 Metodi da H a M...................................................................................................................7671.14.5.5 Metodi da N a R...................................................................................................................7771.14.5.6 Metodi S fino a T..................................................................................................................7961.14.5.7 Metodi U fino a Z..................................................................................................................8101.14.6 Appendice............................................................................................................................8181.14.6.1 Segnalazione d'errore dal campo banche dati.....................................................................818

    1.15 Esempi per VBScript............................................................................................................8211.15.1 Esempi per VBScript............................................................................................................8211.15.2 Esempi in WinCC.................................................................................................................8211.15.2.1 Esempi in WinCC.................................................................................................................8211.15.2.2 Esempio: Accesso agli oggetti nel Graphics Designer.........................................................8221.15.2.3 Esempio: Come determinare il colore degli oggetti..............................................................8231.15.2.4 Esempio: Progettazione di una commutazione lingua.........................................................8231.15.2.5 Esempio: Disattivazione di Runtime.....................................................................................8241.15.2.6 Esempio: Progettazione di un cambio di pagina globale.....................................................8241.15.2.7 Esempio: Come progettare un cambio di pagina tramite una proprietà...............................825

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 5

  • 1.15.2.8 Esempio: Progettazione della visualizzazione della diagnostica tramite il Trace.................8251.15.2.9 Esempio: Scrittura di valori di variabili.................................................................................8261.15.2.10 Esempio: Lettura di valori di variabili....................................................................................8281.15.2.11 Esempio: Scrittura delle proprietà dell'oggetto.....................................................................8311.15.2.12 Esempio: Avviamento di un'azione al server (oggetto Logging)..........................................8341.15.2.13 Esempio: Collegamento o scollegamento del backup di una banca dati con VBS..............8361.15.2.14 Dinamizzazione dei Control.................................................................................................8391.15.3 Esempi generali...................................................................................................................8531.15.3.1 Esempi generali per VBScript..............................................................................................8531.15.3.2 Esempio: Progettazione di una connessione con la banca dati mediante VBS...................8541.15.3.3 Esempio: Utilizzo dell'interfaccia MS Automation................................................................8561.15.3.4 Esempio: Avvio di un'applicazione esterna..........................................................................857

    1.16 Fondamenti di VBScript.......................................................................................................8591.16.1 Fondamenti di VBScript.......................................................................................................8591.16.2 Fondamenti VBScript...........................................................................................................859

    2 ANSI-C per creare funzioni e azioni.........................................................................................................861

    2.1 Creazione di funzioni ed azioni con ANSI-C........................................................................861

    2.2 Creazione di funzioni e azioni..............................................................................................862

    2.3 Caratteristiche delle funzioni di progetto..............................................................................865

    2.4 Caratteristiche delle funzioni predefinite..............................................................................866

    2.5 Caratteristiche delle funzioni interne....................................................................................868

    2.6 Caratteristiche delle azioni locali..........................................................................................869

    2.7 Caratteristiche della azioni globali........................................................................................870

    2.8 Inserimento del Global Script Runtime nella lista di avvio del progetto...............................871

    2.9 Utilizzo delle variabili C globali.............................................................................................872

    2.10 Utilizzo di DLL in funzioni e azioni........................................................................................874

    2.11 Editor Global Script..............................................................................................................8762.11.1 Editor Global Script..............................................................................................................8762.11.2 Lavorare nella finestra di editing..........................................................................................8782.11.2.1 Lavorare nella finestra di editing..........................................................................................8782.11.2.2 Funzioni di editing mediante tastiera....................................................................................8802.11.2.3 Funzioni di editing mediante mouse.....................................................................................8812.11.3 Lavorare con le barre degli strumenti...................................................................................8812.11.4 Impostazione di diverse visualizzazioni...............................................................................8842.11.5 Impostazione dello stile del carattere...................................................................................8842.11.6 Utilizzo di "Salva con nome...".............................................................................................8852.11.7 Eliminazione di azioni oppure di funzioni di progetto o predefinite......................................8862.11.8 Rigenerazione dello header.................................................................................................8872.11.9 Compilazione di tutte le funzioni..........................................................................................8872.11.10 Ricerca nei file......................................................................................................................8882.11.11 Stampa di funzioni e azioni..................................................................................................8892.11.11.1 Stampa di funzioni e azioni..................................................................................................8892.11.11.2 Impostazione dei parametri di stampa.................................................................................8892.11.11.3 Apertura dell'anteprima di stampa........................................................................................8902.11.11.4 Stampa di una documentazione di progetto.........................................................................890

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)6 Manuale di sistema, 02/2016, A5E37536063-AA

  • 2.12 Creazione e modifica funzioni..............................................................................................8912.12.1 Creazione e modifica funzioni..............................................................................................8912.12.2 Creazione di una nuova funzione.........................................................................................8942.12.3 Scrittura dei codici di funzione.............................................................................................8952.12.4 Utilizzo di funzioni interne....................................................................................................8962.12.5 Utilizzo delle funzioni predefinite e di progetto.....................................................................8972.12.6 Aggiunta di informazioni ausiliarie alla funzione..................................................................8982.12.7 Protezione di una funzione da modifiche e presa in visione................................................8992.12.8 Compilazione e salvataggio di una funzione........................................................................9002.12.9 Rinomina di una funzione.....................................................................................................9012.12.10 Utilizzo di funzioni di altre fonti.............................................................................................902

    2.13 Creare e modificare le azioni...............................................................................................9042.13.1 Creare e modificare le azioni...............................................................................................9042.13.2 Regole di codifica WinCC....................................................................................................9072.13.3 Creazione di una nuova azione............................................................................................9082.13.4 Modifica di un'azione............................................................................................................9092.13.5 Aggiunta di informazioni ausiliarie all'azione........................................................................9102.13.6 Protezione di un'azione da modifiche e presa in visione......................................................9102.13.7 Compilazione e salvataggio di un'azione.............................................................................9112.13.8 Trigger..................................................................................................................................9132.13.8.1 Trigger..................................................................................................................................9132.13.8.2 Aggiunta di un nuovo trigger del tipo "Timer".......................................................................9152.13.8.3 Aggiunta di un nuovo trigger del tipo "Variabile"..................................................................9172.13.8.4 Modifica di un trigger............................................................................................................9182.13.8.5 Eliminazione di un trigger.....................................................................................................9182.13.9 Assegnazione di un'autorizzazione......................................................................................9192.13.10 Esportazione di un'azione....................................................................................................9202.13.11 Importazione di un'azione....................................................................................................9212.13.12 Cambiamento del nome di un'azione...................................................................................9212.13.13 Utilizzo di azioni esterne al progetto....................................................................................922

    2.14 Comportamento delle azioni a tempo di esecuzione...........................................................9232.14.1 Comportamento delle azioni a tempo di esecuzione...........................................................9232.14.2 GSC-Runtime.......................................................................................................................9242.14.2.1 GSC-Runtime.......................................................................................................................9242.14.2.2 Inserimento di GSC-Runtime in una pagina di processo.....................................................9272.14.2.3 L'attributo di GSC-Runtime..................................................................................................9282.14.2.4 Modifica di un'azione............................................................................................................9292.14.3 Diagnostica GSC..................................................................................................................9302.14.3.1 Diagnostica GSC..................................................................................................................9302.14.3.2 Inserimento della diagnostica GSC in una pagina di processo............................................9312.14.3.3 Gli attributi della diagnostica GSC.......................................................................................9322.14.3.4 La barra degli strumenti della diagnostica GSC...................................................................932

    2.15 Descrizione delle funzioni ANSI-C.......................................................................................9342.15.1 lpszPictureName..................................................................................................................9342.15.2 Funzioni predefinite..............................................................................................................9342.15.2.1 Funzioni predefinite - Breve descrizione..............................................................................9342.15.2.2 Alarm....................................................................................................................................9352.15.2.3 Graphics...............................................................................................................................9392.15.2.4 Obsolete functions...............................................................................................................9442.15.2.5 Report..................................................................................................................................998

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 7

  • 2.15.2.6 WinCC................................................................................................................................10002.15.2.7 Windows.............................................................................................................................10072.15.3 Funzioni interne..................................................................................................................10082.15.3.1 Funzioni interne - Breve descrizione..................................................................................10082.15.3.2 allocate...............................................................................................................................10092.15.3.3 c_bib...................................................................................................................................10102.15.3.4 graphics..............................................................................................................................10942.15.3.5 tag......................................................................................................................................14072.15.3.6 WinCC................................................................................................................................15122.15.4 Esempi...............................................................................................................................15192.15.4.1 Esempi da A a G................................................................................................................15192.15.4.2 Esempi - da GetAlarmHigh a GetPropChar.......................................................................15202.15.4.3 Esempi - da GetRangeMax a GetWidth.............................................................................15372.15.4.4 Esempi - da H a S..............................................................................................................15602.15.4.5 Esempio - SetAlarmHigh bis SetPropChar........................................................................15622.15.4.6 Esempi - da SetRangeMax a SetWidth..............................................................................15722.15.4.7 Esempi di WinCC Control..................................................................................................15822.15.4.8 Esempi - Obsolete functions..............................................................................................15852.15.5 Elenchi...............................................................................................................................15932.15.5.1 Orientamento della barra grafica........................................................................................15932.15.5.2 Scala della barra grafica....................................................................................................15932.15.5.3 Frequenze di lampeggio.....................................................................................................15932.15.5.4 Formato di uscita campo I/O..............................................................................................15942.15.5.5 Campo I/O, tipo di dati del contenuto del campo...............................................................15952.15.5.6 Campo I/O, tipo di campo..................................................................................................15952.15.5.7 Allineamento degli elementi nelle caselle di controllo e nei pulsanti di opzione................15952.15.5.8 Tavolozza dei colori...........................................................................................................15952.15.5.9 Descrizioni del formato.......................................................................................................15962.15.5.10 Motivo di riempimento........................................................................................................15972.15.5.11 Stile delle linee...................................................................................................................15982.15.5.12 Estremità della linea...........................................................................................................15992.15.5.13 Tipo di lista.........................................................................................................................15992.15.5.14 ID della lingua....................................................................................................................15992.15.5.15 Allineamento del testo........................................................................................................16012.15.5.16 Stati delle variabili..............................................................................................................16012.15.6 Definizioni della struttura....................................................................................................16022.15.6.1 Definizione della struttura CCAPErrorExecute...................................................................16022.15.6.2 Definizione della struttura CCAPTime................................................................................16032.15.6.3 Definizione della struttura CMN_ERROR...........................................................................16042.15.6.4 Definizione della struttura DM_TYPEREF..........................................................................16052.15.6.5 Definizione della struttura DM_VAR_UPDATE_STRUCT..................................................16062.15.6.6 Definizione della struttura DM_VAR_UPDATE_STRUCTEX.............................................16072.15.6.7 Definizione della struttura DM_VARKEY............................................................................16082.15.6.8 Definizione della struttura LINKINFO.................................................................................16082.15.6.9 Definizione della struttura MSG_FILTER_STRUCT...........................................................16102.15.6.10 Definizione della struttura MSG_RTDATA_STRUCT.........................................................1613

    3 VBA per la progettazione automatizzata................................................................................................1615

    3.1 Progettazione automatizzata..............................................................................................1615

    3.2 Introduzione: Utilizzo di VBA in WinCC..............................................................................16163.2.1 Introduzione: Utilizzo di VBA in WinCC..............................................................................16163.2.2 Differenziazione: Utilizzo di VBA........................................................................................1616

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)8 Manuale di sistema, 02/2016, A5E37536063-AA

  • 3.2.3 Organizzazione del codice VBA nel progetto WinCC........................................................16173.2.4 Esportazione ed importazione del codice VBA..................................................................16203.2.5 Esecuzione di macro VBA in Graphics Designer...............................................................1621

    3.3 VBA in Graphics Designer.................................................................................................16233.3.1 VBA in Graphics Designer.................................................................................................16233.3.2 Adattare Graphics Designer a VBA....................................................................................16253.3.2.1 Adattare Graphics Designer a VBA....................................................................................16253.3.2.2 Progettazione in funzione della lingua con VBA................................................................16263.3.2.3 Creare menu e barre strumenti personalizzati...................................................................16283.3.2.4 Accesso alla biblioteca dei moduli con VBA......................................................................16483.3.3 Modificare pagine con VBA................................................................................................16553.3.3.1 Modifica di pagine con VBA...............................................................................................16553.3.3.2 Creazione di menu e barre degli strumenti specifiche della pagina...................................16563.3.3.3 Modifica di livelli con VBA..................................................................................................16583.3.3.4 Modificare una copia di un'immagine con VBA..................................................................16593.3.4 Modificare oggetti con VBA................................................................................................16613.3.4.1 Modificare oggetti con VBA................................................................................................16613.3.4.2 Oggetti predefiniti, Smart, Windows e del tubo..................................................................16633.3.4.3 Oggetti gruppi.....................................................................................................................16743.3.4.4 Oggetti utente.....................................................................................................................16823.3.5 Creazione di dinamizzazione con VBA..............................................................................16863.3.5.1 Creazione di dinamizzazione con VBA..............................................................................16863.3.5.2 Dinamizzazione delle proprietà di oggetti e pagine............................................................16873.3.5.3 Progettazione di azioni comandate da eventi con VBA.....................................................16993.3.5.4 Modifica di trigger...............................................................................................................17073.3.6 Event Handling...................................................................................................................17103.3.7 Accesso alle applicazioni esterne con VBA.......................................................................17133.3.7.1 Accesso alle applicazioni esterne con VBA.......................................................................17133.3.7.2 Esempio: Accesso a MS Excel con VBA...........................................................................1714

    3.4 VBA in WinCC Configuration Studio..................................................................................17253.4.1 VBA in WinCC Configuration Studio..................................................................................17253.4.2 Esempio: VBA in WinCC Configuration Studio..................................................................1726

    3.5 AddIns................................................................................................................................17343.5.1 AddIns................................................................................................................................17343.5.2 Collegare AddIns................................................................................................................17343.5.3 Caricamento di un AddIn nel Graphics Designer...............................................................17373.5.4 Esempio: Creazione di AddIns...........................................................................................17383.5.4.1 Esempio: Creazione di AddIns...........................................................................................17383.5.4.2 Esempio: Creazione di AddIn con Visual Basic 6.0...........................................................1739

    3.6 Riferimento VBA.................................................................................................................17453.6.1 Il modello oggetti del Graphics Designer...........................................................................17453.6.1.1 Riferimento VBA.................................................................................................................17453.6.1.2 Riferimento VBA: ActionDynamic.......................................................................................17473.6.1.3 Riferimento VBA: HMIObjects............................................................................................17493.6.1.4 Riferimento VBA: Languages.............................................................................................17513.6.1.5 Eventi.................................................................................................................................17523.6.1.6 Metodi................................................................................................................................17863.6.1.7 Oggetti e elenchi................................................................................................................18963.6.1.8 Proprietà.............................................................................................................................21093.6.2 VBA in altri editor di WinCC...............................................................................................2570

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 9

  • 3.6.2.1 VBA in altri editor di WinCC...............................................................................................25703.6.2.2 VBA in Gestione variabili....................................................................................................25723.6.2.3 VBA in Tag Logging...........................................................................................................25843.6.2.4 VBA in Text Library............................................................................................................26183.6.2.5 VBA in Alarm Logging........................................................................................................2632

    Indice analitico........................................................................................................................................2647

    Indice del contenuto

    WinCC: Scripting (VBS, ANSI-C, VBA)10 Manuale di sistema, 02/2016, A5E37536063-AA

  • VBS per creare procedure e azioni 11.1 VBS per creare procedure e azioni

    ContenutoWinCC offre la possibilità di dinamizzare il proprio ambiente runtime per mezzo di Visual Basic Script. Con VBS si possono sia programmare azioni globali e procedure, che rendere dinamici in runtime degli oggetti di grafica e attivare delle azioni.

    Il presente capitolo illustra

    ● come lavorare con gli editor VBScript

    ● come creare e modificare delle procedure

    ● come creare e modificare delle azioni

    ● come attivare degli script VBS in runtime

    ● come eseguire una diagnostica degli script in runtime

    ● il modello per gli oggetti del sistema di runtime

    ● esempi dettagliati per l'applicazione di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 11

  • 1.2 Impiego di Visual Basic Script in WinCC

    IntroduzioneIn WinCC, per dinamizzare l'ambiente di runtime di WinCC, è a disposizione, oltre a C script, anche la lingua di programmazione VBScript, come interfaccia di programmazione.

    Gruppo target della documentazioneQuesta documentazione è destinata a progettisti con conoscenze di Visual Basic o del vecchio modo di script in WinCC (C).

    opzioni per l'usoCon VBScript (VBS) è possibile accedere in runtime a variabili e oggetti del sistema grafico di runtime ed eseguire delle azioni indipendenti dalla pagina:

    ● Variabili: è possibile leggere e scrivere i valori delle variabili per es. per dare ad un pulsante, tramite comando del mouse, dei valori di variabili per il controllo.

    ● Oggetti: è possibile dinamizzare con azioni delle proprietà degli oggetti e attivare delle azioni tramite eventi sugli oggetti.

    ● azioni indipendenti dalla pagina: è possibile attivare delle azioni indipendenti dalle pagine in modo ciclico o in modo controllato da valori di variabili, per es. trasferire ogni giorno dei valori in una tabella Excel.

    VBS può essere impiegato in WinCC nelle seguenti posizioni:

    ● nell'editor Global Script: qui si progettano azioni e procedure indipendenti dalla pagina. Le procedure si possono utilizzare in azioni dipendenti dalla pagina e indipendenti dalla stessa. Diverse procedure vengono riassunte in modo tematico in un modulo.

    ● In Graphics Designer: qui si progettano azioni dipendenti dalla pagina con le quali è possibile dinamizzare le proprietà degli oggetti di grafica oppure reagire a eventi in runtime.

    ● In menu e barre degli strumenti personalizzati: Qui si possono progettare procedure richiamabili con l'ausilio dei menu e delle barre degli strumenti in Runtime.

    NotaAggiornare la configurazione modificata in Runtime

    Uno script VB modificato, collegato con "Menu e barre degli strumenti", viene aggiornato solo dopo un riavvio di Runtime.

    Quando si modificano le proprietà dei "Menu e barre degli strumenti" in Runtime, le modifiche saranno applicate solo nei seguenti casi:● Dopo un cambio di pagina, quando la modifica della configurazione non è relativa alla

    pagina di base.● Con il caricamento di un altro file di configurazione e il nuovo caricamento del file di

    configurazione modificato.

    VBS per creare procedure e azioni1.2 Impiego di Visual Basic Script in WinCC

    WinCC: Scripting (VBS, ANSI-C, VBA)12 Manuale di sistema, 02/2016, A5E37536063-AA

  • Variabili registrate in menu e barre degli strumentiLe variabili registrate negli script "Menu e barre degli strumenti" restano registrate nella deselezione della pagina. In caso di lettura indiretta dalla pagina di processo, le variabili vengono registrate ed annullate dopo la deselezione della pagina. Negli script "Menu e barre degli strumenti" le variabili restano tuttavia registrate in caso di deselezione della pagina.

    Scenari di applicazioneCon VBS è per es. possibile in runtime:

    ● progettare l'assegnazione di valori nominali per variabili nel comando di un oggetto di grafica, per es. al fine di assegnare tramite clic del mouse un valore per il controllo.

    ● progettare la commutazione della lingua di runtime nel comando di un oggetto di grafica.

    ● progettare un viraggio di colore, per es. ciclico (lampeggio) oppure per la rappresentazione di stati (motore on).

    Oltre alle applicazioni specifiche WinCC è anche possibile utilizzare le funzionalità VBS generali per l'adattamento del proprio ambiente Windows, per es.:

    ● trasmissione di dati in un altre applicazioni (per es. Excel.

    ● avvio di applicazioni esterne da WinCC.

    ● creazione di file e cartelle.

    Per l'adattamento del proprio ambiente Windows sono a disposizione degli oggetti di automazione del proprio ambiente.

    Nota

    Tutti gli oggetti che vengono esportati con Windows Script Host (WSH) di Microsoft si possono collegare nel proprio ambiente tramite il metodo standard VBS CreateObject. Pero dal VBS di WinCC non si ha alcun accesso all'oggetto WSH.

    Per la funzione VBS che permette l'adattamento dell'ambiente Windows non può essere concessa nessuna garanzia e non può essere offerto il supporto WinCC.

    Limitazione ad altre lingue di programmazione in WinCC

    VBS e CIn WinCC è possibile utilizzare parallelamente VBScript e C-Script, ma non mischiare i due tipi di script:

    ● all'interno di una pagina e di un progetto si possono progettare sia script VBS che script C.

    ● gli script C non si possono richiamare negli script VBS e viceversa.

    ● in VBS sono a disposizione interfacce interne per variabili e oggetti di pagina, mentre nell'ambiente C è anche possibile accedere ad altri sottosistemi di WinCC (per es. i protocolli).

    VBS per creare procedure e azioni1.2 Impiego di Visual Basic Script in WinCC

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 13

  • VBS e VBAVBA si utilizza nella configurazione WinCC durante la progettazione per adattare il Graphics Designer alle proprie esigenze individuali e per semplificare e automatizzare la progettazione. I programmi VBA girano solo nell'ambiente di progettazione di WinCC.

    Al contrario di VBA, gli script VBS funzionano solo in runtime di WinCC ove permettono l'accesso ad oggetti e variabili di grafica. Con VBS non è possibile creare oggetti e immagini né modificarli permanentemente come invece con VBA.

    Le differenze linguistiche fondamentali fra VBA e VBS sono per es.:

    ● VBS è stato sviluppato per l'impiego in Internet, VBA per l'automatizzazione di applicazioni software.

    ● il tipo di dati delle variabili VBS è sempre VARIANT. VBA differenzia invece i singoli tipi di dati, come INT, DOUBLE, STRING ecc.

    ● determinati costrutti linguistici di VBA sono stati rimossi oppure completati in VBS.

    ● la gestione degli errori in VBS è risolta in modo diverso rispetto a VBA.

    Un elenco completo delle differenze fra VBA e VBS si trova nell'appendice sotto "Fondamenti di VBScript".

    Procedure, moduli e azioniVBS in WinCC permette l'impiego di procedure, moduli e azioni per la dinamizzazione del proprio ambiente runtime:

    ● Procedure: Una procedura corrisponde ad una funzione in C. Nelle procedure si creano dei codici che si desiderano utilizzare in diversi punti della propria progettazione. Si richiama il codice in un'azione o in un'altra procedura, richiamando il nome della procedura. In WinCC si possono creare delle procedure con o senza valore di ritorno. Le procedure non possiedono un proprio trigger, il richiamo avviene sempre per mezzo di un'azione.

    ● Moduli: nei moduli si raggruppano delle procedure in un'unità secondo criteri logici. Per es. vengono creati moduli per procedure utilizzate in una determinata pagina oppure appartenenti ad una determinata tematica, per esempio delle funzioni matematiche ausiliarie oppure funzioni di accesso ad una banca dati.

    ● Azioni: le azioni vengono sempre portate allo svolgimento per mezzo di un trigger, vale a dire di un evento attivante. Le azioni vengono progettate su proprietà degli oggetti di grafica, su eventi che si verificano su un oggetto di grafica o globalmente nel progetto. Nelle azioni si possono richiamare, sotto forma di procedura, dei codici impiegati più volte.

    VBS per creare procedure e azioni1.2 Impiego di Visual Basic Script in WinCC

    WinCC: Scripting (VBS, ANSI-C, VBA)14 Manuale di sistema, 02/2016, A5E37536063-AA

  • VBS per creare procedure e azioni1.2 Impiego di Visual Basic Script in WinCC

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 15

  • 1.3 Moduli e procedure

    IntroduzioneLe procedure si utilizzano per rendere disponibili dei codici in più posizioni del proprio progetto, creandoli però una sola volta. Invece di inserire il codice più volte è sufficiente richiamare la relativa procedura. Il codice è in questo modo più chiaro e si elabora più facilmente.

    Delle procedure che hanno a che fare l'una con l'altra si salvano sempre in moduli. Se si richiama un determinata procedura mediante un'azione in runtime, viene sempre caricato anche il modulo che contiene tale procedura. Nella strutturazione dei propri moduli e delle procedure tenere sempre presente quanto segue:

    ● più moduli bisogna caricare richiamando una pagina, peggiore è la prestazione in runtime.

    ● più grande è un modulo, vale a dire più procedure contiene, maggiore è il tempo di caricamento del modulo.

    Strutturare perciò i moduli in modo ragionevole, per es. un modulo con procedure per un determinato elemento dell'impianto/pagina.

    Un altro tipo di strutturazione di procedure in moduli è una strutturazione funzionale, per es. un modulo con funzioni matematiche. Si può utilizzare questa strutturazione per es. per moduli ai quali si desidera accedere per tutto il progetto. Il seguente esempio mostra un modulo nel quale sono create delle funzioni matematiche derivate da funzioni standard:

    VBS per creare procedure e azioni1.3 Moduli e procedure

    WinCC: Scripting (VBS, ANSI-C, VBA)16 Manuale di sistema, 02/2016, A5E37536063-AA

  • Caratteristiche di procedureLe procedure in in WinCC hanno le seguenti proprietà:

    ● vengono create e modificate dal progettista stesso.

    ● possono essere protette con una password dalla modifica e dalla visualizzazione.

    ● non sono dotate di un trigger.

    ● sono salvate in un modulo.

    WinCC non mette a disposizione nessuna procedura predefinita, offre però modelli di codice e Intellisense per semplificare la programmazione. Le procedure si differenziano, a seconda del modulo al quale appartengono, in:

    ● procedure standard, che non valgono solo nel progetto, ma in tutti i progetti sul computer sul quale sono state create.

    ● procedure di progetto, che si possono solo utilizzare all'interno del progetto nel quale sono state create.

    VBS per creare procedure e azioni1.3 Moduli e procedure

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 17

  • Caratteristiche di moduliUn modulo è un file nel quale sono state salvate una o più procedure. I moduli di WinCC hanno le seguenti proprietà:

    ● possono essere protette con una password dalla modifica e dalla visualizzazione.

    ● hanno la terminazione *.bmo.

    I moduli si differenziano, a seconda della validità delle proprie procedure, in:

    ● moduli standard: contengono procedure che sono a disposizione al di fuori del progetto. I moduli standard sono archiviati nel sistema di file di WinCC sotto:

  • 1.4 Azioni

    IntroduzioneUn'azione viene sempre attivata da un trigger. Un'azione viene eseguita in runtime per es. nel caso in cui un oggetto viene comandato col clic del mouse, in cui è arrivato un determinato punto temporale o in cui si è modificato il valore di una variabile.

    Caratteristiche di azioniDelle azioni in Global Script vengono definite una volta e sono quindi disponibili indipendentemente dalla pagina. Delle azioni Global Script sono solo valide nel progetto nel quale sono state definite. Delle azioni collegate con oggetti di grafica sono solo valide nella pagina nella quale sono state definite.

    Nota

    In VBS non è al momento possibile la creazione di azioni specifiche per un computer.

    Per client in un sistema a più posti vale: tutte le azioni globali progettate su un server vengono anche eseguite all'apertura di un progetto su un client. Per i client in un sistema distribuito vale: se si vogliono utilizzare le azioni su un computer client, occorre copiare i file delle azioni nella corrispondente directory di progetto sul client.

    Le azioni hanno le seguenti proprietà:

    ● le azioni vengono create e modificate dal progettista stesso.

    ● le azioni in Global Script possono essere protette contro le modifiche e la visualizzazione con un password.

    ● le azioni sono dotate di almeno un trigger.

    ● le azioni in Global Script hanno la terminazione di file *.bac.

    ● le azioni di Global Script sono archiviate nel sistema di file WinCC sotto: \ScriptAct\Nome_di_azione.bac

    Trigger per le azioniI trigger sono necessari per eseguire delle azioni in runtime. Un trigger viene collegato con un'azione e forma l'evento che attiva il richiamo dell'azione. Azioni senza trigger non vengono eseguite.

    In WinCC sono a disposizione i seguenti tipi di trigger:

    ● Temporizzatore: trigger aciclico oppure ciclico per es. nel richiamo di una pagina od ogni ora.

    ● Variabili: modifica di valori

    ● Eventi: modifica di proprietà degli oggetti (per es. cambiamento di colore) oppure eventi su un oggetto (per es. clic del mouse.

    VBS per creare procedure e azioni1.4 Azioni

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 19

  • Esecuzione di azioni in runtime

    In Graphics DesignerNon è possibile eseguire contemporaneamente in runtime due azioni dello stesso tipo. Per fare in modo che per es. delle azioni cicliche non vengano impedite da un'azione che viene eseguita sul clic del mouse, in Graphics Designer le azioni attivate da eventi e le azioni cicliche/aventi trigger di variabili vengono eseguite in modo indipendente le une dalle altre.

    Nota

    Tenere presente che in WinCC una sincronizzazione fra i due tipi di azioni può avvenire solo da parte dell'oggetto DataSet oppure di variabili interne a WinCC. A causa dell'esecuzione separata non esiste nessuna area dati in comune fra azioni attivate da eventi e azioni cicliche/aventi trigger di variabili.

    Se, per es. a causa di un alto carico di sistema, viene impedita l'esecuzione di azioni cicliche in pagine o di altre azioni, non appena possibile le relative azioni vengono di nuovo eseguite una volta. I cicli non eseguiti non vengono tenuti in una successione di attesa, ma vengono rifiutati.

    Degli script ancora in corso dopo un cambio di pagina vengono terminati automaticamente un minuto dopo tale cambio.

    Script che sono ancora eseguiti all'uscita da runtime sono terminati dopo 5 secondi.

    In Global ScriptDelle azioni da Global Script indipendenti dalla pagina vengono eseguite in runtime, dopo l'attivazione, una dopo l'altra. Se un'azione viene attivata, mentre è già attiva un'altra azione, la seconda azione viene tenuta in un loop di attesa, fino a che è possibile la sua esecuzione.

    Nota

    Tenere presente che una sincronizzazione fra azioni in Global Script e in Graphics Designer può avvenire solo tramite l'oggetto DataSet oppure variabili WinCC interne. Non esiste alcuna area dati in comune fra le azioni in Graphics Designer e in Global Script.

    Utilizzo delle azioniLe azioni possono essere utilizzate come segue:

    ● in Global Script: le azioni globali qui definite vengono eseguite in runtime indipendentemente dalla figura.

    ● In Graphics Designer: le azioni qui definite vengono eseguite solo nella pagina progettata. In Graphics Designer un'azione viene sempre progettata su una proprietà di un oggetto o su un evento di un oggetto di grafica.

    Vedere ancheCreazione e modifica di azioni (Pagina 55)

    Fondamenti di VBScript (Pagina 859)

    VBS per creare procedure e azioni1.4 Azioni

    WinCC: Scripting (VBS, ANSI-C, VBA)20 Manuale di sistema, 02/2016, A5E37536063-AA

  • Moduli e procedure (Pagina 16)

    Impiego di Visual Basic Script in WinCC (Pagina 12)

    VBS per creare procedure e azioni1.4 Azioni

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 21

  • 1.5 Utilizzo multiplo di procedure ed azioni

    IntroduzioneUn'azione progettata con VBS in WinCC vale sempre per il progetto nel quale è stata definita.

    Le procedure hanno i seguenti campi di validità:

    ● procedure standard, che non valgono solo nel progetto, ma in tutti i progetti sul computer sul quale sono state create.

    ● procedure di progetto, che si possono solo utilizzare all'interno del progetto nel quale sono state create. Se viene copiato un progetto, insieme ad esso vengono anche copiate le procedure (i moduli) di progetto.

    Utilizzare più volte procedure e azioniSe si desiderano utilizzare azioni o procedure/moduli in altri progetti o su altri computer sono a disposizione due possibilità:

    ● utilizzare la funzione "Salva con nome", per salvare l'azione o il modulo in un'altra directory di progetto oppure su un dischetto.

    ● copiare il file dell'azione o del modulo in Windows Explorer e nella relativa directory di progetto o standard del computer di destinazione.

    Le proprietà e i trigger progettati vengono mantenuti nella copiatura. I moduli copiati sono direttamente a disposizione in runtime. Le azioni copiate vengono eseguite in runtime dopo essere state aperte e salvate una volta.

    Nota

    Delle variabili utilizzate in un'azione o in una procedura devono anche essere presenti sul computer di destinazione. Se la variabile non è presente l'azione o la procedura non viene eseguita.

    Delle procedure richiamate in un'azione devono essere presenti sul computer di destinazione. L'assenza della procedura provoca un errore di tempo di esecuzione in runtime.

    Salvataggio di procedureSe si desiderano copiare delle procedure in altre directory di progetto, per utilizzarle in altri progetti o su altri computer, occorre tenere presente il percorso di salvataggio delle procedure all'interno del sistema di file di WinCC:

    ● procedure standard: \ApLib\ScriptLibStd\Nome_di_modulo.bmo

    ● procedure di progetto: \ScriptLib\Nome_di_modulo.bmo

    VBS per creare procedure e azioni1.5 Utilizzo multiplo di procedure ed azioni

    WinCC: Scripting (VBS, ANSI-C, VBA)22 Manuale di sistema, 02/2016, A5E37536063-AA

  • Nota

    Dal momento che le procedure vengono sempre salvate in moduli, copiare sempre il modulo (*.bmo) che contiene la procedura.

    Le procedure/i moduli copiati vengono visualizzati dopo l'aggiornamento della finestra di navigazione di Global Script (comando del menu di scelta rapida "Aggiorna") oppure dopo il riavvio dell'editor.

    Salvataggio di azioniSe si desiderano copiare delle azioni in altre directory di progetto, per es. per utilizzarle in altri progetti o su altri computer, occorre tenere presente il percorso di salvataggio delle azioni all'interno del sistema di file di WinCC:

    \ScriptAct\Nome_di_azione.bac

    Ogni azione viene salvata in un file separato. Quando si copiano delle azioni vengono anche copiati tutti i trigger relativi all'azione.

    Nota

    Vengono salvate nel sistema di file di WinCC solo azioni che sono state create in Global Script. Le azioni programmate in Graphics Designer vengono sempre salvate con la pagina attuale e non si possono trasferire singolarmente. Quando si copia una pagina di Graphics Designer in un'altra directory di progetto, le azioni salvate con la pagina vengono anche trasferite insieme ad essa.

    Le azioni copiate vengono visualizzate dopo l'aggiornamento della finestra di navigazione di Global Script (comando del menu di scelta rapida "Aggiorna") oppure dopo il riavvio dell'editore.

    Vedere ancheModuli e procedure (Pagina 16)

    Rinomina di una procedura o di un modulo (Pagina 53)

    Salvataggio di una procedura (Pagina 51)

    Protezione di un modulo con una password (Pagina 50)

    Aggiunta delle informazioni ausiliarie al modulo (Pagina 48)

    Utilizzo di procedure predefinite e di progetto (Pagina 47)

    Scrittura del codice di procedura (Pagina 44)

    Creazione di una nuova procedura (Pagina 42)

    Creare e modificare delle procedure (Pagina 39)

    VBS per creare procedure e azioni1.5 Utilizzo multiplo di procedure ed azioni

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 23

  • 1.6 Connessioni con CrossReference

    CrossReference e trigger di variabiliCon CrossReference di WinCC si possono trovare velocemente tutti i punti di utilizzo di variabili anche in azioni VBS. Per i trigger di variabili da azioni in Graphics Designer, con CrossReference si possono "modificare le connessioni", vale a dire che si possono sostituire in tutti i punti o in determinati punti

    Nota

    Si possono modificare le connessioni delle variabili anche direttamente nel Graphics Designer, contrassegnando l'oggetto di grafica e selezionando dal menu di scelta rapida il comando "Modifica connessioni...".

    Delle indicazioni più dettagliate vengono riportate nella documentazione di WinCC relativa a CrossReference.

    Azioni e CrossReferenceSi possono visualizzare tutte le azioni utilizzate in una pagina tramite le proprietà della pagina. Contrassegnare a tal scopo la pagina in WinCCExplorer e selezionare il comando del menu di scelta rapida "Proprietà". Con un doppio clic su una registrazione si ottengono informazioni dettagliate relativamente al tipo di dinamizzazione.

    È inoltre anche possibile far visualizzare tutte le variabili e le pagine utilizzate in azioni tramite CrossReference di WinCC. Con CrossReference è anche possibile modificare comodamente le connessioni di variabili di azioni di Graphics Designer.

    Variabili e CrossReferenceTutte le variabili indirizzate con la formula standard vengono rilevate automaticamente da CrossReference di WinCC ed incluse nelle proprietà della pagina.

    ' VBS1HMIRuntime.Tags("Nome Tag")

    Se si usa un'altra formulazione nel codice per accedere alle variabili, esse si possono fare conosciute al CrossReference mediante la sezione seguente:

    ' ' WINCC:TAGNAME_SECTION_STARTConst TagNameInAction = "TagName"' WINCC:TAGNAME_SECTION_END

    VBS per creare procedure e azioni1.6 Connessioni con CrossReference

    WinCC: Scripting (VBS, ANSI-C, VBA)24 Manuale di sistema, 02/2016, A5E37536063-AA

  • Questa sezione si può aggiungere nelle azioni VBS quante volte si vuole.

    Nota

    Il rilevamento di nomi di variabili composti dal CrossReference non si può garantire.

    Pagine e CrossReferenceTutte le pagine indirizzate con la formula standard vengono rilevate automaticamente da CrossReference di WinCC ed incluse nelle proprietà della pagina.

    'VBS2HMIRuntime.BaseScreenName = "Nome schermo"

    Se si usa un'altra formulazione nel codice per accedere alle pagine, esse si possono fare conosciute al CrossReference mediante la sezione seguente:

    ' ' WINCC:SCREENNAME_SECTION_STARTConst ScreenNameInAction = "ScreenName"' WINCC:SCREENNAME_SECTION_END

    Questa sezione si può aggiungere nelle azioni VBS quante volte si vuole.

    Nota

    Per assicurare la compatibilità con versioni future, i nomi di pagina vanno scritti sempre senza estensione di file ".PDL".

    Vedere ancheReferenza VBS (Pagina 105)

    Gli editor di VBScript (Pagina 28)

    Fondamenti di VBScript (Pagina 859)

    Azioni (Pagina 19)

    Moduli e procedure (Pagina 16)

    Impiego di Visual Basic Script in WinCC (Pagina 12)

    VBS per creare procedure e azioni1.6 Connessioni con CrossReference

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 25

  • 1.7 Utilizzo di variabili globali in VBS

    IntroduzioneNell'editor Global Script è possibile definire variabili globali che possono quindi essere utilizzate in tutte le azioni e le procedure.

    Utilizzo di variabili globali in Graphics Designer e in Global ScriptQuando si utilizzano delle variabili in Graphics Designer e in Global Script tenere presenti le seguenti condizioni marginali:

    ● in Graphics Designer per utilizzare una variabile globale in un'azione, occorre richiamare la procedura nella quale la variabile è definita, in modo tale che il corrispondente modulo venga caricato in runtime.

    ● in Global Script per utilizzare una variabile globale in un'azione, occorre richiamare in almeno un'azione globale almeno una procedura dal modulo nel quale la variabile è definita, in modo che il modulo venga caricato in runtime di Global Script. Tale procedura non deve essere necessariamente quella nella quale la variabile è stata definita.

    Questo procedimento è necessario, dal momento che azioni da Global Script e da Graphics Designer vengono eseguite in runtime indipendentemente le une dalle altre. Fra i due sistemi di runtime non vi è alcuna area dati in comune.

    Se è necessario sincronizzare azioni da Global Script e da Graphics Designer, utilizzare l'oggetto DataSet oppure variabili interne di WinCC.

    Utilizzo di variabili globali all'interno di Graphics DesignerSe si utilizzano in Graphics Designer variabili globali di azioni, occorre tenere presenti le seguenti condizioni marginali:

    ● in Graphics Designer, per utilizzare una variabile globale in un'azione ciclica o avente trigger di variabili, occorre richiamare la procedura nella quale la variabile è definita. Ciò vale anche se la variabile è già stata richiamata in un'azione attivata da un evento.

    ● in Graphics Designer, per utilizzare una variabile globale in un'azione attivata da un evento, occorre richiamare la procedura nella quale la variabile è definita. Ciò vale anche se la variabile è già stata richiamata in un'azione ciclica o in un'azione con trigger di variabili.

    Questo procedimento è necessario, dal momento che azioni cicliche/aventi trigger di variabili e invece azioni attivate da eventi da Global Script e dal Graphics Designer vengono eseguite in runtime indipendentemente le une dalle altre. Fra i due tipi di azione non vi è alcuna area dati in comune.

    Se occorre sincronizzare azioni cicliche/aventi trigger di variabili e azioni attivate da eventi, si dovranno utilizzare l'oggetto DataSet oppure variabili interne di WinCC.

    Nel Graphics Designer è addizionalmente possibile definire delle variabili globali in un'area di dichiarazione separata. Poiché in runtime le azioni attivate da eventi e azioni cicliche/aventi trigger di variabili vengono eseguite separatamente, è possibile accedere qui in comune solo alle variabili globali all'interno delle azioni attivate da eventi o all'interno delle azioni cicliche/aventi trigger di variabili.

    VBS per creare procedure e azioni1.7 Utilizzo di variabili globali in VBS

    WinCC: Scripting (VBS, ANSI-C, VBA)26 Manuale di sistema, 02/2016, A5E37536063-AA

  • Vedere ancheFondamenti di VBScript (Pagina 859)

    Struttura dei file VBScript (Pagina 93)

    Creazione e modifica di azioni (Pagina 55)

    Creare e modificare delle procedure (Pagina 39)

    Gli editor di VBScript (Pagina 28)

    Connessioni con CrossReference (Pagina 24)

    Azioni (Pagina 19)

    Moduli e procedure (Pagina 16)

    VBS per creare procedure e azioni1.7 Utilizzo di variabili globali in VBS

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 27

  • 1.8 Gli editor di VBScript

    1.8.1 Gli editor di VBScript

    IntroduzioneIn WinCC è possibile programmare gli script VBS in due posizioni:

    ● in Global Script: Global Script è l'editor centrale per la programmazione VBS e si richiama per mezzo di WinCCExplorer.

    ● In Graphics Designer: in Graphics Designer vengono programmate le azioni sulle proprietà degli oggetti o eventi sugli oggetti di grafica. In Graphics Designer l'editor di azioni si richiama per mezzo del menu di scelta rapida nella finestra delle proprietà di un oggetto di grafica.

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)28 Manuale di sistema, 02/2016, A5E37536063-AA

  • Delimitazione Global Script - Graphics DesignerIn Graphics Designer è possibile programmare azioni e procedure specifiche per una pagina, ma non procedure globali valide per tutto il progetto. È però possibile richiamare delle procedure globali programmate in Global Script.

    Nota

    In questa documentazione viene descritto principalmente Global Script e si fa eventualmente riferimento a differenze di funzionalità rispetto a Graphics Designer. Una descrizione dettagliata dell'editor di azioni in Graphics Designer si trova nell'argomento della guida WinCC "Dinamizzazione".

    Ulteriori informazioniInformazioni più dettagliate sono riportate nella documentazione WinCC "Dinamizzazione".

    Vedere ancheL'editor Global Script (Pagina 29)

    1.8.2 L'editor Global Script

    IntroduzioneLe procedure e le azioni globali si creano e si elaborano nell'editor Global Script.

    Global Script mette a disposizione un insieme di funzioni simili a quello dell'editor C Script in WinCC.

    Nota

    Una descrizione dettagliata dell'editor di azioni per la creazione di azioni e procedure dipendenti da una pagina in Graphics Designer si trova sotto l'argomento della guida di WinCC "Dinamizzazione".

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 29

  • Richiamo di Global ScriptGlobal Script viene avviato per mezzo del comando del menu di scelta rapida "Apri" nella finestra del progetto di WinCCExplorer.

    Global Script viene anche richiamato automaticamente all'apertura in WinCCExplorer di un modulo o di un'azione tramite doppio clic.

    Struttura di Global ScriptGlobal Script è strutturato in base agli standard Windows.

    L'editor di azioni in Graphics Designer mette a disposizione una funzionalità simile a quella di Global Script. Una descrizione dell'editor di azioni in Graphics Designer si trova nell'argomento della guida WinCC "Dinamizzazione".

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)30 Manuale di sistema, 02/2016, A5E37536063-AA

  • Barra dei menu (1) e barre degli strumenti (2)Nella barra dei menu e nelle barre degli strumenti si trovano tutti i comandi necessari per la creazione di procedure e di azioni.

    Le barre degli strumenti si possono mostrare e nascondere tramite il comando del menu "Visualizza" > "Barre degli strumenti" e si possono quindi spostare in qualsiasi posizione si desideri all'interno dell'editor.

    Finestra di navigazione (3)All'interno della finestra di navigazione è possibile gestire procedure, moduli e azioni. Inoltre contiene modelli di codice inseribili nell'azione o nella procedura attraverso il drag&drop.

    Una procedura si può inoltre richiamare in un'altra procedura o azione tirandola dalla finestra di navigazione, tramite drag&drop, nella relativa posizione nel codice.

    La visualizzazione nella finestra di navigazione viene aggiornata sempre solo salvando il documento modificato. Se un file è in corso di modifica questo stato verrà contrassegnato da un * posto dopo il nome del file.

    Nella finestra di navigazione le procedure contenute in un modulo vengono visualizzate al di sotto dei file del modulo. Sulla scheda delle azioni vengono addizionalmente visualizzati i trigger progettati sull'azione e le procedure eventualmente definite direttamente in un modulo dell'azione.

    Nella finestra di navigazione è inoltre possibile:

    ● creare delle sottodirectory per la creazione dei propri script.

    ● spostare, copiare, incollare, eliminare e cambiare il nome a moduli e a directory.

    È possibile configurare individualmente la visualizzazione nella finestra di navigazione con il comando di menu "Visualizza" > "Stazione di lavoro". Qui è possibile decidere se devono essere visualizzati tutti i tipi di file, solo i file script o solo i file script sintatticamente corretti. Con il comando di menu "Visualizza" > "Stazione di lavoro" > "Rappresenta" si può ora mostrare o nascondere la finestra di visualizzazione.

    Finestra di editazione (4)Nella finestra di editazione si scrivono e si modificano procedure e azioni. Ogni procedura o azione viene aperta in una propria finestra di editazione. È possibile tenere aperte contemporaneamente più finestre di editazione.

    Nella finestra di editazione l'utente viene aiutato per mezzo di evidenziazione della sintassi e Intellisense. Sono inoltre disponibili tutte le comuni funzioni di editing (per es. Undo/Redo, Trova/Sostituisci, copia, incolla, taglia, impostazioni del font, aiuto per la stampa).

    Finestra dei risultati (5)Nella finestra dei risultati vengono visualizzati, dopo la verifica della sintassi, le segnalazioni di errore. Con un doppio clic sulla relativa riga di errore si raggiunge la corrispondente posizione nel codice.

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 31

  • Barra di stato (6)La barra di stato contiene informazioni sulla funzione attualmente selezionata o suggerimenti relativi alla programmazione.

    Nota

    Se si desiderano informazioni su singoli comandi o icone dell'editor, selezionare il comando di menu "?" > "Guida rapida". Fare clic quindi con il mouse sulla corrispondente icona/sul comando. Per tutti gli elementi di comando dell'editor si riceve in questo modo un veloce aiuto dalla guida rapida. Se si vuole di nuovo uscire dal modo della guida rapida, premere "ESC".

    Ancoraggio delle finestreL'ancoraggio delle finestre consente di ordinare le finestre in modo flessibile. È possibile riposizionare liberamente le finestre, salvarle come finestre separate o riunirle in gruppi di schede. Posizionare ad es. le azioni affiancate, una sotto l'altra oppure come schede. È possibile attivare e disattivare automaticamente le finestre quando necessario.

    Vedere ancheEliminazione di azioni o procedure (Pagina 37)

    Lavorare con le barre degli strumenti (Pagina 35)

    Lavorare nella finestra di editing (Pagina 32)

    1.8.3 Lavorare nella finestra di editing

    Introduzione Nella finestra di editazione si modificano procedure e azioni.

    Area di dichiarazione nelle azioni (solo Graphics Designer)Creando delle azioni nell'editor di azioni del Graphics Designer è possibile attivare la visualizzazione dell'area di dichiarazione dell'azione nella finestra di editazione con il pulsante

    .

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)32 Manuale di sistema, 02/2016, A5E37536063-AA

  • Nell'area di dichiarazione è inoltre possibile dare delle definizioni generali che si desiderano utilizzare solo per la pagina attuale, per es.:

    ● Definizioni di variabili

    ● Procedure da utilizzare solo in questa pagina

    Nota

    Nell'area di dichiarazione non creare nessun codice direttamente eseguibile!

    Osservare che alla creazione di una variabile questa non contiene alcuno valore (Value = VT_EMPTY). Inizializzare la variabile dopo la dichiarazione con un valore corrispondente.

    Nelle definizioni nell'area di dichiarazione mantenere la struttura dei file script descritta in "Struttura di file VBScript".

    "Option explicit" nelle azioniAlla creazione di una nuova azione viene registrata, in modo automatico e senza la possibilità di cancellazione, l'istruzione "Option explicit" nell'area di dichiarazione (Graphics Designer) oppure nella prima riga di un'azione (Global Script). L'istruzione è necessaria per evitare errori dovuti a scrittura errata di variabili senza dichiarazione. L'istruzione rende necessario definire sempre le variabili nel proprio codice con l'istruzione "Dim".

    Nota

    Non usare mai l'istruzione "Option explicit" nel Codice perché altrimenti potrebbero apparire errori di runtime.

    Aiuto per l'utente nella finestra di editazioneNel proprio lavoro nella finestra di editazione l'utente riceve un aiuto per mezzo delle seguenti funzioni.

    Codifica di colore e rientro nella finestra di editazioneDeterminate parti del codice sono contrassegnate con un colore predefinito come qui di seguito descritto:

    Colore Significato Esempioblu

    FunzioniSub, End Sub, Next

    verde Commenti ' questo è un commentorosso stringhe (stringhe di caratteri e

    numeri)"Object1"

    blu scuro istruzioni per preprocessori --nero grassetto costanti vbTrue, vbFalsenero altri codici --

    La codifica di colore nella finestra di editazione può essere definita individualmente tramite le impostazioni dell'editor. Richiamare a tal scopo la finestra di dialogo "Opzioni Script Editor" tramite il comando di menu "Strumenti" > "Opzioni" e definire in tale finestra le impostazioni.

    VBS per creare procedure e azioni1.8 Gli editor di VBScript

    WinCC: Scripting (VBS, ANSI-C, VBA)Manuale di sistema, 02/2016, A5E37536063-AA 33