in data 09-19-2011 03:39 AM
Buongiorno a tutti.
Ho sviluppato in LabVIEW 2010 un'applicazione (delle dimensioni di circa 400 tra vi e controlli) con al suo interno delle Functional Global Variable che hanno come comandi degli enumeratori (formati da una ventina di comandi) che ho definito typedef impostando "autoupdate from typedef" ogni volta che ho usato la vi (circa 60 volte).
Mi è capitato, nel corso dello sviluppo, di aggiungere nuovi comandi all'enumeratore della Functional Global Variable, di solito va tutto bene, ma qualche volta capita che viene cambiato qualche comando senza che me ne accorga di solito ritrovandomi degli init (prima voce dell'enumeratore) al posto del comando che avevo impostato nello sviluppo, con lo spiacevole effetto di introdurre dei bachi a mia insaputa.
Sto sbagliando a usare autoupdate from typedef? E' un limite di LabVIEW?
Grazie
in data 09-19-2011 07:40 AM
Il mio problema è molto simile a quello descritto qui
Type Definition Constatn Can lose Value....
Solo che utilizzo lv 2010 e non ho nodi di feedback sulla vi
in data 09-23-2011 04:30 AM
Ciao euTeam,
Questo è un problema che esiste in LV2010. Sto usando LV 2011 e quando provo ad aggiungere i casi all' interno della enum,si aggiornano correttamente.
Dopo una piccola ricerca, ho scoperto che una possibile soluzione potrebbe essere quella di CLear Compiled ObjectCache.Puoi trovare tutti i dettagli su come cancellare la cache, cercando in Labview "Clear Compiled Object Chache Dialog Box".
Un altra cosa che ho trovato è che per avere il valore corretto, devi aprire il .VI da Windows Explorer.
se apri il VI nel progetto selezionando File--> Open, o aprendo il Vi dallaschermata iniziale, il valore sarà sbagliato.
Potresti provare queste cose e vediamo cosa succede 🙂
in data 10-05-2011 04:12 AM
Il problema non capita sempre, la maggior parte delle volte funziona e i valori si aggiornano correttamente, qualche volta trovo qualche costante enum impostata al valore di default.
Ora ho sistemato a mano l'errore nel mio progetto e non è più capitato.
Ho tentato di riprodurre il problema fuori dal progetto, ma non ci sono riuscito. Può essere che durante lo sviluppo capiti qualche evento (crash di labview, utilizzo di svn come il revert...) che inizializza gli enum.
Grazie