AntoFratto Inserito: 19 dicembre 2014 Segnala Inserito: 19 dicembre 2014 Salve, è da pochissimo che ho iniziato a programmare i pannelli HMI. voglio realizzare un contatore che si incrementa ogni secondo. Ho implementato questa funzione: Il nome della funzione è IncrementVar e accetta come parametro una variabile interna. Dim t_succ t_succ = DateAdd("s",10,Now()) Do Until (Now > t_succ) IncrementVar = par_1 par_1 = par_1+1 Loop Non mi viene visualizzata la variabile. Io voglio che per 10 secondi si incrementa e mi venga visualizzata a video nel campo I/O Grazie a tutti
bigalex Inserita: 19 dicembre 2014 Segnala Inserita: 19 dicembre 2014 (modificato) Se vuoi visualizzare una qualsiasi variabile questa deve essere dichiarata come powertag o come variabile interna (non scambiata con plc o altri dispositivi). Le variabili interne ad uno script VBA non sono visibili al di fuori dello script stesso. Poi ..... non usare "Loop". Come richiami lo script ? Che io sappia gli script non vengono gestiti in multi-threading e non devi restare all'infinito all'interno di uno script altrimenti il motore che gestisce gli script non processerà niente altro che lo script in cui è attivo il loop. Almeno di aver preso lucciole per lanterne così dovrebbe essere. Nell'_help in linea è presente una sezione che spiega come avviene la gestione degli script da parte di WinccFlexible, ti consiglio comunque di prenderne visione. bigalex Modificato: 19 dicembre 2014 da bigalex
AntoFratto Inserita: 19 dicembre 2014 Autore Segnala Inserita: 19 dicembre 2014 Ho dichiarato una variabile interna. Se l'istruzione: IncrementVar = par_1 la inserisco dopo loop, viene visualizzata
bigalex Inserita: 19 dicembre 2014 Segnala Inserita: 19 dicembre 2014 E quando è che esci dal Loop ? Comunque come ti ho detto i loop infiniti non si devono utilizzare . Cerca sempre di spiegare all'inizio e nel dettaglio quello che hai fatto . Poi se questa è una funzione e non uno script significa che il parametro in uscita alla funzione è appunto "in uscita" dalla funzione o meglio parametro di ritorno . Ti avevo chiesto : Come richiami lo script ? Non mi pare tu abbia risposto. bigalex
bigalex Inserita: 19 dicembre 2014 Segnala Inserita: 19 dicembre 2014 Avevo preso un abbaglio. Il tuo non è un loop infinito bigalex
AntoFratto Inserita: 20 dicembre 2014 Autore Segnala Inserita: 20 dicembre 2014 Il loop lo chiamo quando immetto un parametro. Oppure ho provato a chiamarlo quando accedo alla pagina E' giusto un esempio per prendere confidenza con WinCC flexible e VBS
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora