Visualizzazione incompleta campo "testo lungo" in un report

di il
11 risposte

Visualizzazione incompleta campo "testo lungo" in un report

Buongiorno

questa volta la mia difficoltà , per las quale chiedo l'aiuto del Forum, è la seguente.

Ho una tabella con il campo NoteRevisione cui ho assegnato il formato “testo lungo”.

Ho una form frmInsEsitoRazionalizzazione che utilizzo con un controllo associato a tale campo al quale ho settato a “SI” la proprietà Riducibile. Nella form visualizzo correttamente l'intero contenuto del campo NoteRevisione che inserisco.

Nel report rptSintDetenute la cui origine dati è una query che contiene tra l'altro il campo NoteRevisione della tblEsitoRevisione ,ho inserito un controllo denominato sempre NoteRevisione associato a tale campo, nel quale ho settato a “SI” la proprietà Riducibile.

Se tramite la form inserisco nel campo NoteRevisione un testo maggiore di 210 caratteri, nella tabella il testo viene correttamente memorizzato, nella form è visualizzato interamente, mentre nel report la visualizzazione risulta troncata.

Ho ricercato sul web inutilmente una soluzione.

Allego gli screenshot della tabella, della form e del report sia in visualizzazione struttura che in visualizzazione dati e spero che qualcuno mi possa/voglia aiutare.

Grazie

11 Risposte

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Le Query tagliano i Campi MEMO a 255 Caratteri è risaputo, ma non hai pubblicato il predicato SQL della tua query…. hai inserito un DISTINCT…?

    Leggi questo articolo se fa al caso tuo:

    https://www.access-programmers.co.uk/forums/threads/truncation-of-memo-field-in-an-access-report.316309/

    Leggi anche questo:

    http://allenbrowne.com/ser-63.html

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Buongiorno Alex grazie mille per la tempestività del tuoi aiuto. Avevo il vago sospetto che il problema fosse ascrivibile alla Query nella quale, in effetti, ho inserito un SELECT DISTINCT. Ti trasmetto il codice SQL e mi leggo con attenzione i contenuti dei link che mi hai inviato. Se hai qualche suggerimento da darmi te ne sarei grato.

    Grazie mille.

    SELECT DISTINCT tblEntiSocietà.idAcronimo, tblEntiSocietà.Denominazione, tblEntiSocietà.[codice fiscale], tblEntiSocietà.[Data di costituzione], tblEntiSocietà.MisuraPartecipazione, tblEntiSocietà.DescrizioneAttività, tblEsitoRazionalizzazione.EsercizioFinanziario, tblEsitoRazionalizzazione.EsitoRevPeriod, tblEsitoRazionalizzazione.idTipoRazionalizzazione, tblEsitoRazionalizzazione.Terminerazionalizzazione, tblEsitoRazionalizzazione.NoteRevisione, tblEsitoRazionalizzazione.DataDelibera, tblEntiSocietà.StatoAttività
    FROM tblEntiSocietà INNER JOIN tblEsitoRazionalizzazione ON tblEntiSocietà.idAcronimo = tblEsitoRazionalizzazione.idAcronimo
    WHERE (((tblEsitoRazionalizzazione.EsercizioFinanziario)=intEsFin()) AND ((tblEntiSocietà.StatoAttività) Not Like "cancellata" And (tblEntiSocietà.StatoAttività) Not Like "cessata") AND ((tblEntiSocietà.Razionalizzata)=False))
    ORDER BY tblEntiSocietà.Denominazione;
  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Se vedi necessario l'uso del DISTINCT, usa una TextBox non associata nella quale metti un DLOOOKUP come ControlSource e rimuovi il campo dalla Query.

    =DLOOOKUP("NomeTabella";"CampoMEMO";"PK=" & Me!CampoPK) 
  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Grazie mille Alex

    ho provato a fare a meno del DISTINCT e funziona perfettamente. Qualora non ne possa fare a meno ricorrerò alla seconda soluzione che mi hai indicato.

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Grazie mille Alex !

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    13/11/2023 - @Alex ha scritto:


    Se vedi necessario l'uso del DISTINCT, usa una TextBox non associata nella quale metti un DLOOOKUP come ControlSource e rimuovi il campo dalla Query.

    =DLOOOKUP("NomeTabella";"CampoMEMO";"PK=" & Me!CampoPK) 

    Funzione DLookup - Supporto tecnico Microsoft

    @Alex, credo ci sia un errore di inversione di argomenti. Forse volevi scrivere

    =DLOOOKUP("CampoMEMO";"NomeTabella";"PK=" & Me!CampoPK) 
  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Si avevo notato anche io che era sfuggita una inversione e comunque volevo chiedere a cosa si riferiscono PK e CampoPK inseriti nella condizione del lookup 

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Primary Key 

    Chiave primaria

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Grazie Oregon. Sto facendo delle prove a valorizzare il campo inserendo una casella di testo non associata e la funzione dlookup  perchè non mi funziona la condizione per qualche motivo che non mi è ancora chiaro. Ho inserito questa istruzione nell'evento load della form.

     Me.Testo137 = DLookup("NoteRevisione", "tblEsitoRazionalizzazione", "idEsitoRazionalizzazione=" & Me.idEsitoRazionalizzazione)
    

    Se la query che alimenta il report ha un criterio di ordinamento, il valore del campo lookup è sempre lo stesso per ciascun record, e corrisponde al valore del campo “NoteRevisione” della “tblEsitoRazionalizzazione” relativa al record identificato dall'"Me.idEsitoRazionalizzazione" dell'ultimo record della query.

    Se nella query non inserisco alcun criterio di ordinamento, la funzione dlookup assume valore nullo.  Di seguito il codice sql della query con criterio di ordinamento la visualizzazione della query e quella del report.

    Ringrazio anticipatamente chi avrà voglia di aiutarmi.

    SELECT tblEntiSocietà.idAcronimo, tblEntiSocietà.Denominazione, tblEntiSocietà.[codice fiscale], tblEntiSocietà.[Data di costituzione], tblEntiSocietà.MisuraPartecipazione, tblEntiSocietà.DescrizioneAttività, tblEsitoRazionalizzazione.EsercizioFinanziario, tblEsitoRazionalizzazione.EsitoRevPeriod, tblEsitoRazionalizzazione.idTipoRazionalizzazione, tblEsitoRazionalizzazione.Terminerazionalizzazione, tblEsitoRazionalizzazione.DataDelibera, tblEntiSocietà.StatoAttività, tblEsitoRazionalizzazione.idEsitoRazionalizzazione
    FROM tblEntiSocietà LEFT JOIN tblEsitoRazionalizzazione ON tblEntiSocietà.idAcronimo = tblEsitoRazionalizzazione.idAcronimo
    WHERE (((tblEsitoRazionalizzazione.EsercizioFinanziario)=intEsFin()) AND ((tblEntiSocietà.StatoAttività) Not Like "cancellata" And (tblEntiSocietà.StatoAttività) Not Like "cessata") AND ((tblEntiSocietà.Razionalizzata)=False))
    ORDER BY tblEntiSocietà.Denominazione;
    
    
  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Devi inserire il recupero del campo con DLOOKUP, nell'evento FORMAT della sezione del REPORT in cui metti la TextBox…!!!!!!!

  • Re: Visualizzazione incompleta campo "testo lungo" in un report

    Scusami Alex se abuso della tua pazienza.

    Il campo si chiama Text137 ed è inserito nel corpo del report.

    L'evento format sarebbe : Private Sub Corpo_Format(Cancel As Integer, FormatCount As Integer) ?

    E cosa si intende con “recupero del campo con DLOOKUP” ?

    Nell'evento load della maschera devo comunque inserire il DLOOKUP ?

    Grazie per la disponibilità 

Devi accedere o registrarti per scrivere nel forum
11 risposte