Conoscere il nome della routine attiva

di il
20 risposte

20 Risposte - Pagina 2

  • Re: Conoscere il nome della routine attiva

    27/04/2025 - By65Franco ha scritto:

    Mi sembra che ci sia più o meno tutto... se hai bisogno di ulteriori istruzioni e/o chiarimenti, chiedi pure e ti sarà dato ....
    Prova a provare ;-)  e vedi se può andare bene al tuo scopo.

    Ciao, sono riuscito a dargli un'occhiata veloce e inserendo il codice nel mio DB al primo lancio tutto ha funzionato senza errori o problemi.

    Mi sembra che sia proprio quello che mi serviva! 

    Ho dovuto partire per lavoro e per qualche settimana avrò poco tempo da dedicarci; quando l'avrò testato  e analizzato meglio nel caso condividerò eventuali dubbi o ulteriori richieste.

    Per il momento un grande grazie

  • Re: Conoscere il nome della routine attiva

    29/04/2025 - darioV ha scritto:

    Ciao, sono riuscito a dargli un'occhiata veloce e inserendo il codice nel mio DB al primo lancio tutto ha funzionato senza errori o problemi.

    Ok... mi raccomando prendi il codice, la query e la form di gestione dalla Demo che ho messo nell'ultimo post.

    Rispetta i nomi di questi 3 oggetti, fondamentale per escludere gli stessi dall'attvita di tracciamento, soprattiutto quando viene stoppata per la rimozione del codice aggiunto in tutte le routine.

    Buon lavoro... e fai sapere comeè andata.

    [nota]
    Non ho messo la gestione di riprendere l'attività di tracciamento quando in precedenza è stata avviata e poi stoppata.

    Se vuoi puoi gestirlo manualmente ;

    • Poniamo che dopo una attività di tracciamento, il processo venga stoppato. E poniamo che si voglia riprendere il tracciamento senza perdere i dati tracciati in precedenza... e quindi andare in aggiunta con i nuovi tracciamenti, mantenendo l'attività precedente:
      • Stoppare il processo di tracciamento
      • Fare una copia della Tabella di tracciamento
      • Avviare un nuovo processo di tracciamento
      • Prendere la Tabella di tracciamento e sostituirla a quella nuova appena ricreata.

    .
    A questo punto i nuovi dati di tracciamento si sommano a quelli accumulati in precedenti. (considera che questo tipo di approccio va bene solo se nel progetto non vengono aggiunte nuove routine)

    Comunque in giornata aggiorno la demo con questa funzione che ovviamente terrà conto anche di eventuali aggiornamenti apportati nel progetto,
    Nel prossimo post rilascio la nuva versione. 

  • Re: Conoscere il nome della routine attiva

    28/04/2025 - By65Franco ha scritto:

    è semplice

    Abbiamo un concetto diverso di "semplice" si vede. XD

    Io onestamente avrei optato per la compilazione condizionale. La logica di base sarebbe la stessa, quindi avrei comunque predisposto una tabella per il conteggio delle esecuzioni e la relativa Sub che aggiorna. Ma avrei evitato di accedere al codice per inserire/togliere codice. Quando devo tracciare, setto una costante #Trace a True/False e fa tutto da solo. Imposto all'inizio di ogni Sub/Function, come hai fatto tu, le linee

    #If Trace Then
        MyUpdateTraceNumber ...
    #End If

    per poi non toglierle più. Anche a distribuire il file compilato, se Trace è False quella roba è come se non esistesse, non devo andarla a togliere. Così non me ne dimentico nemmeno, che io ed i pesci rossi siam parenti a livello di memoria.

  • Re: Conoscere il nome della routine attiva

    30/04/2025 - Sgrubak ha scritto:

    per poi non toglierle più. Anche a distribuire il file compilato, se Trace è False quella roba è come se non esistesse, non devo andarla a togliere. Così non me ne dimentico nemmeno, che io ed i pesci rossi siam parenti a livello di memoria.

    Ciao,

    si la logica non cambia... perchè no... ?

    Ho preferito fare in questo modo per il semplice motivo che verrà fatto tutto in automatico e non vi è pericolo di saltare qualche sub o function, etc....
    E alla fine puoi ripulire il progetto dal Tracing eliminando automaticamente la riga di Trace e manualmente rimuovere solo Form, Codice , Tabella e Query.

    Fa tutto da solo, in automatico ... mette e toglie la riga di codice di Tracing dopo ogni dichiarazione delle routine con estrema "semplicità" ;-)

    Il tuo ragionamento mi torna, però sarebbe faticoso e/o lungo inserire il Tracing in un vecchio progetto dove devi andare a modificare manualmente in tutti i moduli tutte le routine.

    Mentre invece in questo modo basta copiare nel proprio progetto i 3 oggetti Form, Modulo di codice e la Query.

    Operativamente è più "semplice" e poi è veloce e preciso e... si risparmia tempo ;-) 

  • Re: Conoscere il nome della routine attiva

    29/04/2025 - darioV ha scritto:

    Ciao, sono riuscito a dargli un'occhiata

    Ciao,

    Come anticipato nel precedente post, metto la nuova versione della demo che riporta alcune info in più come la data di inizio e fine del Tracing e sarà possibile stoppare e riprendere in un momento successivo il Tracing. 

    https://1drv.ms/u/c/46aacde0762d4e68/EWpiJYEusNJAnZMs_oIURbgB-2V0cjxFmJMJtthhPKy7Fg?e=rXvTze

    Quando si riprende l'attività di Tracing, verranno sottoposte a Trace anche le eventuali nuove routine inserite nel progetto e  i dati si accumulano con il Tracing precedente.

    Altrimenti sarà sempre possibile ripartire da Zero con una nuova rilevazione di Trace.

    Premere il Button Start Trace e verrà richiesto:

    • Se esiste una attività precedente di Tracing verrà proposto il Restart
      • Yes = Restart Tracing e i dati si accumulano alla precedente rilevazione
      • No = Verrà eseguita una nuova sessione di Tracing e i dati precedenti
        verranno eliminati.
      • Annulla = Abbandona la richiesta
    • Se non esiste un attività precedente di Tracing verrà richiesto solo la conferma
      se continuare o abbandonare l'operazione con un nuovo Tracing.

    Nel caso In cui viene scelto il RESTART riparte l'attività di Tracing

    accumulando i nuovi dati alla rilevazione precedente.
    .

  • Re: Conoscere il nome della routine attiva

    Versione aggiornata con l'inserimento di un report temporaneo creato da Codice Vba, per stampare il contenuto del Modulo selezionato nella combobox.

    Allo scopo di mantenere il proprio progetto pulito dall'analisi di Tracing, alla chiusura del Report verrà rimosso: 

    • La tabella temporanea atta alla stampa del Modulo selezionato
    • Il Report creato dinamicamente da codice Vba 

    e non rimane traccia di codice e oggetti che non fanno parte del proprio progetto.

    https://1drv.ms/u/c/46aacde0762d4e68/EWpiJYEusNJAnZMs_oIURbgB-2V0cjxFmJMJtthhPKy7Fg?e=rXvTze

    or

    https://www.transfernow.net/dl/20250506K3SXyUgg

    questo è il report che si ottiene del modulo con tutte le sue routine, dove alla fine del codice viene riportata anche una statistica delle righe Vba, quanto di codice e quanto di commenti....

Devi accedere o registrarti per scrivere nel forum
20 risposte