Condividi tramite

Errore nel salvataggio dell'Origine Dati di una text in report principale che richiama una textbox in sottoreport (BUG?)

Anonimo
2023-08-08T07:56:27+00:00

Questa situazione l'ho scoperta nel 2015, verificata con Access2013, 2016 e 365.

Modalità per riprodurre il problema:

Utilizzando Access in italiano in una relazione uno a molti, creare il report principale per la tabella lato 1, ed un sottoreport per la tabella lato Molti. Inserire nel sottoreport una textbox (dal contenuto fisso o calcolato, non importa). Inserire nel report principale un'altra textbox e tramite il generatore di espressione andare a collegarla alla textbox del sottoreport.

L'origine dati della textbox del report principale riporta

=[NomeSottoreport]![Report]![NomeTextbox]

in alternativa si può anche digitare manualmente la stessa cosa che si ottiene con l'uso del generatore di espressioni.

Visualizzare in anteprima di stampa il report. La textbox del report principale visualizza #Nome?

Origine del problema

Per constatare che l'origine dati della textbox è diversa da quanto visualizzato dall'interfaccia grafica, tramite VBA controllare la proprietà ControlSource. Questa risulterà essere

[NomeSottoreport]![Reports]![NomeTextbox]

con la lettera S alla fine di Report

La stessa cosa è riscontrabile esportando il report principale con il metodo non documentato SaveAsText.

Dall'interfaccia grafica non c'è un sistema per fare in modo che l'origine dati (ControlSource) sia salvata senza la S dopo Report.

Workaround

  1. Tramite VBA aprire in modalità struttura il report principale, attribuire alla proprietà ControlSource dalla textbox il valore corretto: "=[NomeSottoreport]![Report]![NomeTextbox]"; salvare e chiudere il report.
  2. Esportare il report con SaveAsText; aprire il file creato con un editor di testo, individuare la proprietà ControlSource della textbox e sostituire a "=[NomeSottoreport]![Reports]![NomeTextbox]" il testo "=[NomeSottoreport]![Report]![NomeTextbox]". Salvare il file ed importarlo nel database con il metodo non documentato LoadFromText.

Aprire il report in anteprima di stampa per constatare il corretto funzionamento della textbox del report principale.

Questo comportamento non si presentava fino alla versione 2003.

NB: questo errore si presenta solo nella versione italiana di Access. Ho provato la versione Inglese, Francese e Spagnola di Access 2021 e con quelle funziona correttamente.

Una situazione simile riguarda anche le maschere con sottomaschere, in cui il generatore di espressioni popola l'origine dati con

=[NomeSottoMaschera]..Scheda![NomeTextBox]

ma l'errore è rilevato immediatamente, non è permesso uscire dal Generatore di Espressioni.

Microsoft 365 e Office | Accesso | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
{count} voti

5 risposte

Ordina per: Più utili
  1. Anonimo
    2023-08-18T22:36:12+00:00

    Salve,

    > [NomeSottoMaschera]..Scheda![NomeTextBox]

    Si trattava di un vecchissimo bug che avevo segnalato al team Access di Microsoft qualche tempo fa sulla base di una discussione in un newsgroup, quindi è stato risolto nel 2022. È il secondo fix in questo elenco. Pertanto, non dovrebbe più essere presente nelle versioni ragionevolmente recenti di Access 2016 e 365. Per le versioni più vecchie di Access (2013 e precedenti) che non sono più supportate, il problema non viene più risolto.

    Quella correzione era più ampia e intendeva di risolvere tutti questi problemi di traduzione eccessiva. Puoi indicare i numeri di build esatti di Access 2016 e 365 in cui trovi l'altro con "Reports"?

    Servus
    Karl
    ****************
    Access Bug Trackers
    Access News
    Access DevCon
    Access-Entwickler-Konferenz AEK

    0 commenti Nessun commento
  2. Anonimo
    2023-08-19T04:36:02+00:00

    > [NomeSottoMaschera]..Scheda![NomeTextBox]

    Si trattava di un vecchissimo bug che avevo segnalato al team Access di Microsoft qualche tempo fa sulla base di una discussione in un newsgroup, quindi è stato risolto nel 2022.

    però lo fa ancora, nelle versioni indicate sotto.

    Quella correzione era più ampia e intendeva di risolvere tutti questi problemi di traduzione eccessiva. Puoi indicare i numeri di build esatti di Access 2016 e 365 in cui trovi l'altro con "Reports"?

    Microsoft Access 2016 MSO - Versione 2307 Build 16.0.16626.20170 a 32 bit

    e

    Microsoft Access per Microsoft 365 MSO - Versione 2307 Build 16.0.16626.20170 a 32 bit

    Problema riverificato per scrupolo anche adesso: c'è.

    0 commenti Nessun commento
  3. Anonimo
    2023-08-19T18:15:57+00:00

    Salve,

    Ho installato la versione italiana e posso/devo confermare la tua descrizione. Informerò Microsoft che questi problemi sono ancora presenti, almeno nell'Access italiano. Riferirò se ci sono informazioni aggiornate da Microsoft al riguardo.

    Servus
    Karl
    ****************
    Access Bug Trackers
    Access News
    Access DevCon
    Access-Entwickler-Konferenz AEK

    0 commenti Nessun commento
  4. Anonimo
    2023-08-20T04:52:22+00:00

    Informerò Microsoft che questi problemi sono ancora presenti, almeno nell'Access italiano. Riferirò se ci sono informazioni aggiornate da Microsoft al riguardo.

    Grazie, era da tempo che cercavo qualcuno che potesse verificare quanto sostenevo e che potesse segnalare la cosa "ai piani alti", dove possono fare qualcosa per risolvere.

    0 commenti Nessun commento
  5. Anonimo
    2023-08-20T17:29:38+00:00

    Salve,

    Il team Access di Microsoft ha già confermato che puo ricreare i due problemi nella versione attuale e quindi la correzione citata non ha risolto il problema di "..Scheda" come credevo. Speriamo che risolvano presto i problemi.

    Servus
    Karl
    ****************
    Access Bug Trackers
    Access News
    Access DevCon
    Access-Entwickler-Konferenz AEK

    0 commenti Nessun commento