Errore apertura report in anteprima stampa

di il
21 risposte

21 Risposte - Pagina 2

  • Re: Errore apertura report in anteprima stampa

    Eliminando completamenti i 2 eventi il report si apre.
    Lasciando anche solo la definizione degli eventi (sub dichiarate ma senza codice) appare l'errore.
    Anche decompilando e ricompilando non si risolve il problema.
    Adegua comunque il nome dei campi delle tabelle/query/maschere non lasciando spazi (puoi sostituirli con _ ) e non usando caratteri strani (sigma2^F,sigma2^L puoi sempre trasformarli in Varianza2F e Varianza2L)

    Puoi provare a creare un db nuovo e a importare i vari oggetti (tbl,maschere e eport) .... anche se non mi piace come soluzione.
  • Re: Errore apertura report in anteprima stampa

    Vi ringrazio molto per l'aiuto!
    Ho cambiato i nomi dei campi delle query senza usare lettere particolari e simboli. Ho anche importato tutti gli oggetti in un nuovo db. Purtroppo il problema persiste nello stesso modo. se faccio partire il report senza usare la form mStampa e togliendo i codici dagli eventi del report, allora nvece dell errore 2501 mi compare la finestra popup della query con la dicitura "[Mascgere]![mDati]![cmbDitta]" e sotto lo spazio vuoto per inserire il criterio. Forse è proprio questo il problema, cosa che non appare se faccio partire i codici (di stampa ad esempio) del report.
    Perchè mai quando apro il report quella query mi dà errore sui criteri, mentre se io apro quella query normalmente mi fa vedere normalmente i risultati?
    Ultima cosa che vorrei precisare, se io faccio un report vuoto e ci inserisco i controlli del report "carta" e poi ci metto anche il subreport, allora la prima volta il report si apre (non tramite maschera e senza codici sugli eventi del report).
    Grazie mille per l'aiuto e mi scuso per il tedio che causa questo thread

    PS: ho aggiornato il db come ha suggerito max

    Jibi
  • Re: Errore apertura report in anteprima stampa

    jibi ha scritto:


    ...Ultima cosa che vorrei precisare, se io faccio un report vuoto e ci inserisco i controlli del report "carta" e poi ci metto anche il subreport, allora la prima volta il report si apre (non tramite maschera e senza codici sugli eventi del report).
    A costo di passare per antipatico, capisci bene la natura del mio intervento: il database di esempio è utilissimo, a questo punto dico fondamentale, però deve essere ridotto al minimo, senza errori "diversi" da quello che segnali (mi riferisco ai file mancanti del mio post del 05/05/2018 - 13.18) e che permangono nell'ultima versione che hai caricato (anche se forse non incidono sul problema principale). Poi scrivi passo passo come riprodurre l'errore, come hai provato a risolverlo anche se con esisto negativo. Sii conciso, schematico ma completo, altrimenti il thread diventa illeggibile e caotico. Non è facile, me ne rendo conto (se chiedessero a me di essere concisco, schematico ma completo si sentirebbe un tuono in risposta) ma prenditi il tempo che serve per renderci più facile aiutarti.
  • Re: Errore apertura report in anteprima stampa

    Ok , mi scuso..
    Mi sembra giusto spiegare in maniera esaustiva e concisa:
    Il mio problema è che non riesco ad aprire un report, chiamato "carta"
    Il report deve essere filtrato in base a una lst che si trova nella maschera mStampa.
    Ecco il percorso da fare per accedervi.
    Un per primo deve aprire mDati, selezionare valori dalle cmb , premere sul pulsante adiacente che esegue i requery .
    Ora si preme il pulsante in alto a destra con il disegnino della stampa. Questo apre la maschera mStampa in dialogo.
    a questo punto bisogna selezionare uno o più valori dalla lst nella maschera, poi premere il pulsante di stampa in basso. Tale pulsante apre in anteprima stampa il report. Ecco l'errore:mi compare errore runtime 2501 (se faccio debug mi seleziona la riga dell openreport).
    Allora subito mi sorge il dubbio che il pulsante dell openreport abbia qualche riga errata; in effetti quel pulsante possiede il codice per filtrare il report in base alla selezione della lst su mStampa. Che sia questo il problema? no, poi spiego.
    Allora immagino che il problema sia che ci siano codici sul report che generino errori... No, i codici del report sono su Attivato e su apertura, ma se li cancello il problema rimane.
    Allora mi rimangono a logica due opzioni: o genera errore il sottoreport del report (collegato a una query diversa del main report) che ha qualche semplice codice su caricamento, o si è corrotto l'oggetto. Ho provato a togliere tutti i codici dal report e dal sottoreport ma compare sempre l'errore.
    Andabdo con ordine ecco gli errori che compaiono:
    -se lascio tutti i codici: errore runtime 2501 e mi evidenzia l openreport
    -se tolgo i codici dal report e dal sottoreport (anche aprendo il report dal riquadro di spostamento) : si aprono le finestre popup della query collegata al report o al sottoreport (e non so perchè)
    -se lascio i codici nel report e sottoreport ma tolgo il filtro dal tasto di apertura del report nella maschera mStampa: errore 2501

    L'errore compare an che se apro il report non in anteprima di stampa.

    Quindi il problema non è il filtro, nè i codici nel report. Non capisco tuttavia perchè l'errore 2501 appaia nè perche mi compaiono le finestre popup della query collegata se tolgo i codici dal report.

    Questo è tutto quel che so riguardo al problema.

    Altre info utili non credo ce ne siano eccetto i codici che posto di seguito. Ah, il campo da filtrare è di tipo numerico intero ed è "anno" il suo nome, omonimo nella query, nella tabella a esso collegato e nella casella report.

    codici

    Questo è il codice del bottone che fa partire la stampa (si trova in mStampa):
    Private Sub cmdStampa_Click()
        Dim strItems As String
        strItems = FillItems(Me.lst_anno)
        If Len(strItems) > 0 Then
            If Me.FilterOn = True Then Me.FilterOn = False
            Me.Filter = "anno IN (" & strItems & ")"
            Me.FilterOn = True
        End If
        DoCmd.OpenReport "carta", acViewPreview, , Me.Filter
    End Sub
    
    Private Function FillItems(lst As Access.ListBox) As String
        Dim varItem As Variant
        Dim strItems As String
        
        For Each varItem In lst.ItemsSelected
            strItems = strItems & lst.Column(0, varItem) & ","
        Next
        If Len(strItems) > 0 Then strItems = Mid$(strItems, 1, Len(strItems) - 1)
        FillItems = strItems
    End Function

    questi sono i codici che si trovano nel main report (che deve essere filtrato):
    Private Sub Report_GotFocus()
    On Error GoTo Macro3_Err
    
        DoCmd.RunCommand acCmdPrint
    
    
    Macro3_Exit:
        DoCmd.RunCommand acCmdCloseWindow
        DoCmd.Close acReport, "carta"
        Exit Sub
    
    Macro3_Err:
        Resume Macro3_Exit
    DoCmd.RunCommand acCmdCloseWindow
    DoCmd.Close acReport, "carta"
    End Sub
    
    
    Private Sub Report_Open(Cancel As Integer)
    If Len(Forms("mStampa").Name) > 0 Then
        Me.Grafico.Visible = Forms!mStampa!chkGrafico
        Me.PièDiPaginaReport.Visible = Forms!mStampa!chkGrafico
    End If
    If Len(Forms("mStampa").Name) > 0 Then
        Me.SezioneIntestazionePagina = Forms!mStampa!chkRiepilogo
        Me.Corpo.Visible = Forms!mStampa!chkRiepilogo
    End If
    End Sub
    
    Questo è il codice nel sottoreport:
    Private Sub Report_Load()
    Testo176.Visible = (nome_ogg = "Strumento portatile")
    Testo131.Visible = (nome_ogg = "Strumento portatile")
    Testo183.Visible = (nome_ogg = "Strumento portatile")
    Testo87.Visible = (nome_ogg = "Portale A") Or (nome_ogg = "Portale B")
    Testo185.Visible = (nome_ogg = "Portale A") Or (nome_ogg = "Portale B")
    Testo140.Visible = (nome_ogg = "Portale B") Or (nome_ogg = "Portale A")
    End Sub
    db corretto:
  • Re: Errore apertura report in anteprima stampa

    Visto che il report presentava diversi problemi l'ho ricostruito e qui
    ***
    puoi vedere l'esempio.
    Rimango del fatto che il database non è strutturato in modo dovuto partendo dalle relazioni, dalla necessità di creare un minimo di normalizzazione delle tabelle, mancata impostazione della proprietà Richiesto almeno di alcuni campi, indici per il controllo Doppioni e velocizzazione ricerche, controllo dimensione campi di testo, impostazione della struttura delle maschere ( ripetizione di Origine record, duplicazione dati vedi smRiepTitolo che riportano i dati già presenti nei controlli di ricerca), ecc...
  • Re: Errore apertura report in anteprima stampa

    X CarlettoFed : ti ho segnalato diverse volte di non inserire link a risorse esterne... !
  • Re: Errore apertura report in anteprima stampa

    Ringrazio molto per l aiuto datomi!
    PS: niente possiamo dinanzi ad un gran maestro della Divina scuola di Hokuto
Devi accedere o registrarti per scrivere nel forum
21 risposte