CREAZIONE REPORT VUOTO CON N PAGINE

di il
22 risposte

CREAZIONE REPORT VUOTO CON N PAGINE

Ciao a tutti,
ho la necessità di creare un report che banalmente generi un numero di pagine prefissato, al cui interno non ho bisogno di riferimenti a dati esistenti (mi basta il numero pagina). Qual'è secondo voi il modo più semplice per farlo? L'unica cosa a cui ho pensato è tramite una query che mi generi un numero n di record fittizi e usarla come sorgente dati, ma al momento non ci sono riuscito..

22 Risposte

  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Non ho capito se vuoi un report con n record vuoti oppure devi stampare solo n pagine vuote con il numero progressivo in basso.
    L'idea query che hai avuto ci può stare, ma se ci spieghi più dettagli concreti (nomi propri di oggetti, campi ecc...) ci avviciniamo meglio.
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Certo Osvaldo,
    semplicemente devo stampare n pagine vuote col progressivo in basso, niente campi o dati collegati.
    Se possibile preferirei gestirla da codice ed evitare di "appoggiarmi" a tabelle o query come fonte dati fittizie..
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Detto così, Access (con i dati che dovrebbero riempire le tabelle) che centra?
    Non si può ottenere la stessa cosa con Word?
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Beh, grazie.. se lo volevo fare con word non scrivevo in un forum di access
    Ti spiego: questa funzionalità che vorrei implementare mi serve su un db esistente, e deve generare una sorta di "registro" prestampato che contiene soltanto testo fisso e il numero di pagina. Successivamente questo registro verrebbe vidimato ed usato a sua volta per stampare (sempre dallo stesso db) dati sensibili che avrebbero quindi una validità certificata legale. Questo per spiegarti la logica sottostante, ma in questo caso vista la semplicità apparente della questione direi che il perchè e il percome non è rilevante.
    La domanda è: posso da codice aprire in anteprima di stampa un report esistente di una sola pagina creato senza riferimenti a dati e impostare n pagine? Un modo potrebbe essere quello di accodare al report n volte un salto pagina, si può fare?
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Dimenticavo un informazione che ho dato per scontato: il numero di pagine è variabile..
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    NNL78 ha scritto:


    una sorta di "registro" prestampato che contiene soltanto testo fisso e il numero di pagina
    Questo vuol dire che vuoi mostrare almeno le etichette.

    Direi che dovresti prevedere comunque una tabella con un CampoID numerazione automatica e tutti gli altri campi sempre vuoti.

    Secondo me ci sono varie soluzioni. Provo a descrivere alcuni punti chiave che mi saltano subito in mente.
    1. Se disponi le etichette molto larghe e verticalmente tali da occupare un intero foglio A4, risulterà impossibile vedere il record successivo sulla stessa pagina.
    2. Alternativa più ortodossa al punto 1. Se imposti una di quelle impostazioni del Corpo riguardanti il "salto pagina" (non mi ricordo mai come ottimizzare) tipo "Interruzione pagina" e/o "Nuova riga o colonna", ottieni un record per pagina.
    3. Poniamo il caso che la tua tabella ha tutti i record numerati integralmente. Mi giocherei una query che poggia sulla tua tabella con un parametro sul CampoID tipo
    <=[Digita quante pagine vuoi stampare]
    4. Fai poggiare il tuo report sulla query
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    La tua richeista è fattibile, ma se conosci come funzionano i Report, mi chiedo come puoi pensare di non avere bisogno una Base di dati come Origine.
    Quindi quando BANALIZZI che non ti serve sia associato o altro... pensando di rendere il tutto più SEMPLICE, dimostri di non conosere i REPORT.

    NNL78 ha scritto:


    Certo Osvaldo,
    semplicemente devo stampare n pagine vuote col progressivo in basso, niente campi o dati collegati.
    Se possibile preferirei gestirla da codice ed evitare di "appoggiarmi" a tabelle o query come fonte dati fittizie..
    In questo caso pertanto la soluzione è bene ti venga data non proporla tu come fosse un assunto, proprio perchè, come in questo caso è sbagliato...!

    Un report di suo ha SOLO 1 Pagina, ne genera N se gli consenti di generarne N.

    Quindi per fare quello che vuoi devi essere tu che lo gestisci al fine di ottenere il Risultato.
    Come si risolve il tuo quesito...?
    Hai bisogno di 10 Pagine...?
    Serve una Tabella con 10 Records... e crei un Report basato su questa Tabella Raggruppando per il Campo e definendo il Salto Pagina ad ogni cambio Campo...

    Ti servono 25 pagine...? Svuoti la tabella, la riempi con 25 Records... basta un Ciclo 0÷24 con INSERT Valore...

    Quindi, va bene che fai la richiesta di cosa vuoi ottenere, non va bene se poni dei limiti tecnici NON SOSTENIBILI, per quelli penso tu debba ascoltare i suggerimenti, altrimenti effettivamente ci sono altri strumenti.
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    NNL78 ha scritto:


    Ciao a tutti,
    ho la necessità di creare un report che banalmente generi un numero di pagine prefissato, al cui interno non ho bisogno di riferimenti a dati esistenti (mi basta il numero pagina)

    @Alex ha scritto:


    La tua richeista è fattibile, ma se conosci come funzionano i Report, mi chiedo come puoi pensare di non avere bisogno una Base di dati come Origine.
    Quindi quando BANALIZZI che non ti serve sia associato o altro... pensando di rendere il tutto più SEMPLICE
    Forse è pura accademia (parolona per me) però dopo aver smanovrato un bel po': una maschera in cui ho una casella di testo (Testo3) in cui scrivo [quante pagine deve contenere il report](vedi nota1). Un pulsante che avvia la stampa (Comando8). Il report che si chiama ReportVuoto ha solo una casella di testo nel pié di pagina pagina che si chiama NrPagina
    Sul clic del pulsante della maschera
    Private Sub Comando8_Click()
    Dim i As Integer
    DoCmd.OpenReport "ReportVuoto", acViewPreview
    For i = 1 To Me.Testo3.Value
        Reports("ReportVuoto")("nrPagina").Value = i
        DoCmd.PrintOut acPrintAll
    Next
    End Sub
    Nota1: non [quante pagine deve contenere il report] ma [quante pagine numerate voglio stampare]
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Se non hai intestazione penso tu abbia ragione... ma se nel Report c'è un'intestazione di Report...?

    Fosse come dici sarebbe un foglio BIANCO CON un numero infondo... ma allora veramente serve un Report...?
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    @Alex ha scritto:


    Se non hai intestazione e nulla penso tu abbia ragione...
    Fosse come dici sarebbe un foglio BIANCO CON un numero infondo
    Sì, proprio così.

    @Alex ha scritto:


    ... ma allora veramente non serve un Report...?
    Boh... ho fatto esercizio (la famosa accademia di cui parlavo prima) sul primo post.
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    Ciao a tutti,
    mi rendo conto che la richiesta è abbastanza inusuale, ma ho già spiegato la motivazione alla base.
    Per il momento ho risolto con una tabella di appoggio; la vuoto e la popolo con n record corrispondenti alle pagine che voglio stampare:
    Private Sub Comando392_Click()
    Dim N As Integer
        CurrentDb.Execute ("delete * from tbl_Registro;")
        For N = 1 To 50
            CurrentDb.Execute ("insert into tbl_Registro(NP) values ('" & N & "');")
        Next
    End Sub
    Quello che mi chiedevo (magari è solo una fissa mia eh) visto che in questo caso che il report non poggia su una fonte dati (sì, in pratica è come un foglio bianco con il numero pagina in calce.. poi se c'è un'intestazione report o altre label sul corpo che sono solo label testuali che differenza fa?!?) è se fosse possibile avere lo stesso risultato senza la tabella di appoggio. Come finezza, diciamo, preferivo appoggiarmi ad una query (che non sono riuscito a costruire) o a soluzioni via codice (avevo pensato ad un ciclo che mi permettesse di inserire n salti pagina, ma non ho ancora approfondito la fattibilità).
    Grazie a Phil per il suggerimento, sembra promettente e appena riesco provo e vi faccio sapere..
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    NNL78 ha scritto:


    Quello che mi chiedevo (magari è solo una fissa mia eh) visto che in questo caso che il report non poggia su una fonte dati (sì, in pratica è come un foglio bianco con il numero pagina in calce.. poi se c'è un'intestazione report o altre label sul corpo che sono solo label testuali che differenza fa?!?) è se fosse possibile avere lo stesso risultato senza la tabella di appoggio
    Penso che ti abbiamo già risposto. Forse questa la risposta più pertinente.

    @Alex ha scritto:


    La tua richeista è fattibile, ma se conosci come funzionano i Report, mi chiedo come puoi pensare di non avere bisogno una Base di dati come Origine.

    NNL78 ha scritto:


    Come finezza, diciamo, preferivo appoggiarmi ad una query (che non sono riuscito a costruire)
    Io avevo proposto una tabella con moltissimi record. Per moltissimi dico un numero che tu ritieni possa essere il massimo sostenibile. Poi la query con il parametro che ti avevo indicato

    OsvaldoLaviosa ha scritto:


    3. Poniamo il caso che la tua tabella ha tutti i record numerati integralmente. Mi giocherei una query che poggia sulla tua tabella con un parametro sul CampoID tipo
    <=[Digita quante pagine vuoi stampare]
    4. Fai poggiare il tuo report sulla query
    Ritengo questa soluzione senza uso di VBA.

    Il salto di pagina mi sembra un ottimo strumento da sfruttare direttamente fra le proprietà del Corpo del Report.
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    NNL78 ha scritto:


    Ciao a tutti,
    mi rendo conto che la richiesta è abbastanza inusuale, ma ho già spiegato la motivazione alla base.
    Per il momento ho risolto con una tabella di appoggio; la vuoto e la popolo con n record corrispondenti alle pagine che voglio stampare:
    Private Sub Comando392_Click()
    Dim N As Integer
        CurrentDb.Execute ("delete * from tbl_Registro;")
        For N = 1 To 50
            CurrentDb.Execute ("insert into tbl_Registro(NP) values ('" & N & "');")
        Next
    End Sub
    Quello che mi chiedevo (magari è solo una fissa mia eh) visto che in questo caso che il report non poggia su una fonte dati (sì, in pratica è come un foglio bianco con il numero pagina in calce.. poi se c'è un'intestazione report o altre label sul corpo che sono solo label testuali che differenza fa?!?)
    La differenza sta proprio quì... ma devi anche cercare di capirne l'aspetto tecnico altrimenti insisti a banalizzare concetti che sono tecnici e pertanto no prescindibili...!
    Il codice che ti ha proposto PHIL non fa quello che dici... ma forse sei tu che ti esprimi male...!
    Tu chiedi un Report con N Pagine progressive numerate, il codice di PHIL stampa N report non N pagine e non è la stessa cosa...!
    La differenza è tecnica se hai l'intestazione con un testo oppure un LOGO.... avrai N Stampe di Report ognuno con Intestazione...

    Se ti va bene così non c'è problema ma sono 2 cose differenti... basta saperlo e capirlo, ovvero basta chiedere le cose giuste.

    NNL78 ha scritto:


    è se fosse possibile avere lo stesso risultato senza la tabella di appoggio. Come finezza, diciamo, preferivo appoggiarmi ad una query (che non sono riuscito a costruire) o a soluzioni via codice (avevo pensato ad un ciclo che mi permettesse di inserire n salti pagina, ma non ho ancora approfondito la fattibilità).
    Grazie a Phil per il suggerimento, sembra promettente e appena riesco provo e vi faccio sapere..
    Appunto...
  • Re: CREAZIONE REPORT VUOTO CON N PAGINE

    NNL78,
    se non vuoi implementare una tabella (con tanti record quanto le copie da produrre) leggi i seguenti link che trattano (con alcune varianti) l'opportunità di stampa in un numero di copie del report:
    http://www.databasedev.co.uk/print_multiple_copies.htm
    https://support.microsoft.com/it-it/help/2627824/vba-printer.copies-number-ignored-in-access-2007-and-access-2010
    http://access.mvps.org/access/reports/rpt0001.ht
    https://www.experts-exchange.com/questions/27034885/Printing-with-vba-code-in-MS-ACCESS-2010-setting-number-of-copies.html
Devi accedere o registrarti per scrivere nel forum
22 risposte