info@playoptions.it Chiedi un consulto
+39 0425 792923 Lunedì - Venerdì, 9.00 - 18.00
Contattaci
toggle menu
info@playoptions.it Chiedi un consulto
+39 0425 792923 Lunedì - Venerdì, 9.00 - 18.00
Contattaci
toggle menu
Pagina 16 di 16 Prima ... 6141516

Discussione: Scripts di esempio

  1. #151
    L'avatar di Apocalips
    Data Registrazione
    May 2011
    Località
    PESCARA
    Messaggi
    2,630
    Citazione Originariamente Scritto da nevada Visualizza Messaggio
    ... appena clicco mi compaiono in sequenza 5 diverse finestre con errori di Access Violation nel modulo FiutoPro.exe agli indirizzi 00B13E70 e 000002AC
    a me compare lo stesso identico errore 2 volte di seguito prima di aprirsi l'editor.

    WIN8 64 bit.
    ....non si desidera ciò che è facile ottenere (Ovidio)....

  2. #152
    L'avatar di Francario Massimiliano
    Data Registrazione
    Jul 2008
    Messaggi
    791
    Gli errori di Access Violation non dovrebbero mai verificarsi.
    Chiedo ad entrambi, se possibile, di riprodurre il problema ed inviare il file di Log di FiutoPRO (Barra del menù principale di FiutoPRO -> Utilities -> File di log -> Invia file di log al supporto tecnico).

    Per quanto riguarda il problema relativo ad ExtCtrls, verrà risolto nella prossima release di FiutoPRO.

    Tornando alla discussione relativa all'utilizzo dei timer, il modo più semplice per fare funzionare il sistema è quello di includere il codice all'interno di una funzione/procedura, e dall'evento del timer richiamare la funzione/procedura appena creata.
    Nell'evento del timer, è buona norma disabilitare e riabilitare il timer prima dell'esecuzione del codice vero e proprio, in modo da evitare di trovarsi con segnalazioni di eventi dei timer accodate all'infinito se il tempo di esecuzione è maggiore dell'intervallo del timer stesso. Il codice vero e proprio andrebbe anche inserito in un blocco try...catch...end try, per assicurarsi che anche in caso di errore il timer venga effettivamente riattivato. In questo modo l'intervallo del timer non è rispettato perfettamente, ma si evitano i possibili errori di stack-overflow.
    Il codice dell'evento di un timer dovrebbe assomigliare a questo:

    SUB Timer1Timer(Sender AS TObject)
        Timer1.Enabled = false
        Try
            ' Codice da eseguire allo scadere dell'intervallo del timer
        Catch
            ' Codice per la gestione degli errori
        End Try
        Timer1.Enabled = true
    END SUB
    Max Francario

  3. #153

    Data Registrazione
    Apr 2013
    Messaggi
    13
    Salve Massimiliano, ho ppena inviato il file di log, come prima cosa dopo aver ricevuto i 5 errori di access violation aprendo l'editor di script.

    grazie

    Renato.

  4. #154

    Data Registrazione
    Aug 2008
    Località
    Edolo (BS)
    Messaggi
    693
    Citazione Originariamente Scritto da Francario Massimiliano Visualizza Messaggio
    Gli errori di Access Violation non dovrebbero mai verificarsi.
    Chiedo ad entrambi, se possibile, di riprodurre il problema ed inviare il file di Log di FiutoPRO (Barra del menù principale di FiutoPRO -> Utilities -> File di log -> Invia file di log al supporto tecnico).

    Per quanto riguarda il problema relativo ad ExtCtrls, verrà risolto nella prossima release di FiutoPRO.

    Tornando alla discussione relativa all'utilizzo dei timer, il modo più semplice per fare funzionare il sistema è quello di includere il codice all'interno di una funzione/procedura, e dall'evento del timer richiamare la funzione/procedura appena creata.
    Nell'evento del timer, è buona norma disabilitare e riabilitare il timer prima dell'esecuzione del codice vero e proprio, in modo da evitare di trovarsi con segnalazioni di eventi dei timer accodate all'infinito se il tempo di esecuzione è maggiore dell'intervallo del timer stesso. Il codice vero e proprio andrebbe anche inserito in un blocco try...catch...end try, per assicurarsi che anche in caso di errore il timer venga effettivamente riattivato. In questo modo l'intervallo del timer non è rispettato perfettamente, ma si evitano i possibili errori di stack-overflow.
    Il codice dell'evento di un timer dovrebbe assomigliare a questo:

    SUB Timer1Timer(Sender AS TObject)
        Timer1.Enabled = false
        Try
            ' Codice da eseguire allo scadere dell'intervallo del timer
        Catch
            ' Codice per la gestione degli errori
        End Try
        Timer1.Enabled = true
    END SUB
    Max Francario
    Grazie come sempre Max!
    Allora non vedo l'ora che esca la nuova release

    Nel frattempo però perndo spunto per chiederti un altro paio di cosette:

    1. Dici "includere il codice all'interno di una funzione/procedura, e dall'evento del timer richiamare la funzione/procedura appena creata"...
    Questa è una cosa che ancora non sono riuscito a fare...con che comando richiamo una procedura specifica all'interno di un'altra procedura?

    2. Ho notato che se creo una procedura, devo sempre dichiarare le variabili al suo interno, ma immagino che ci sia un modo per condividere la variabili tra una procedura e l'altra...

  5. #155
    L'avatar di Francario Massimiliano
    Data Registrazione
    Jul 2008
    Messaggi
    791
    Citazione Originariamente Scritto da chrisbasetta Visualizza Messaggio
    Grazie come sempre Max!
    Allora non vedo l'ora che esca la nuova release

    Nel frattempo però perndo spunto per chiederti un altro paio di cosette:

    1. Dici "includere il codice all'interno di una funzione/procedura, e dall'evento del timer richiamare la funzione/procedura appena creata"...
    Questa è una cosa che ancora non sono riuscito a fare...con che comando richiamo una procedura specifica all'interno di un'altra procedura?

    2. Ho notato che se creo una procedura, devo sempre dichiarare le variabili al suo interno, ma immagino che ci sia un modo per condividere la variabili tra una procedura e l'altra...
    Salve,
    ecco le risposte.

    1. Supponiamo di avere questa procedura "Test" da qualche parte nel nostro codice:
    SUB Test()
        A = 1 
    END SUB
    Se vogliamo richiamare questa procedura dobbiamo usare il seguente codice:
    .... ' Qui c'e' il codice prima della chiamata alla procedura Test
    Test()
    .... ' Qui c'e' il codice dopo la chiamata alla procedura Test
    La cosa potrebbe complicarsi se la procedura Test fosse implementata in un file diverso da quello dove la si vuole utilizzare. In questo caso, la procedura Test deve essere dichiarata come pubblica:
    PUBLIC SUB Test()
        A = 1
    END SUB
    Nel file dove si vuole richiamare la procedura Test è necessario includere il file dove quella procedura viene utilizzata nella clausola USES.




    2. La domanda si riferisce allo "scope" delle variabili e delle funzioni/procedure, cioè al loro ciclo di vita ed al loro livello di visibilità. Normalmente le funzioni/procedure hanno necessità sia di variabili locali (cioè dichiarate direttamente all'interno della funzione/procedura stessa) sia di variabili non locali (cioè dichiarate all'esterno della funzione/procedura). Ecco un esempio:

    DIM NonLocale As Integer    ' Dichiarazione di una variabile visibile a livello di file
    PUBLIC Globale              ' Dichiarazione di una variabile globale, visibile in tutti i file
    
    SUB Test()
        ' Dichiarazione di una variabile locale, visibile solo a livello di procedura/funzione
        DIM Locale As Integer     
        ....
        ' Utilizzo di tutte le variabili disponibili
        NonLocale = NonLocale + Locale
        Globale = Locale + 1
        ....
    END SUB
    
    ' Questo non e' corretto perche' la variabile Locale non esiste al di fuori della procedura Test
    Locale = 1
    
    ' Queste invece sono corrette perche' entrambe le variabili sono visibili in questo punto del file
    NonLocale = 2
    Globale = 3

    Max Francario

  6. #156

    Data Registrazione
    Aug 2008
    Località
    Edolo (BS)
    Messaggi
    693
    Ottimo Max!
    Grazie ancora...faccio delle prove così allora...

  7. #157

    Data Registrazione
    Aug 2008
    Località
    Edolo (BS)
    Messaggi
    693
    Ciao max...
    so che sarai impegnatissimo...ma ho notato che la libreria Extctrl da ancora errore... solo per ricordartelo eventualmente per la prossima release

  8. #158
    L'avatar di Apocalips
    Data Registrazione
    May 2011
    Località
    PESCARA
    Messaggi
    2,630
    Ciao Chrisbasetta

    come procede lo studio dello scripting di Fiutopro?
    hai mandato in esecuzione in real qualche codice oppure sei in paper ?
    te lo chiedo per avere conferma se di fatto è sufficentemente stabile e quindi affidabile per la messa a mercato in real.

    grazie
    Apo
    ....non si desidera ciò che è facile ottenere (Ovidio)....

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Contattaci

Chiama gli esperti
+39 0425 792923

Chiamaci
Email

Richiedi informazioni via E-MAIL
info@playoptions.it

Scrivici
Nostri Uffici

Vieni a trovarci
45100 Rovigo

Contattaci

Serve Aiuto?

Contattaci per maggiori informazioni.

Denis MorettoSpecialista Finanziario
Contattaci