Aprire report diversi a seconda dei dati inseriti

di il
9 risposte

Aprire report diversi a seconda dei dati inseriti

Ciao a tutti.

Ho un quesito da porre.

Mi ritrovo a dover gestire un semplice db di access dove il db deve generarmi un report diverso a seconda dei dati inseriti.

In parole povere ho una serie di caselle di testo da compilare ed una serie di caselle combinate dove scegliere dei dati preimpostati.

A seconda del tipo di dati scelti nelle caselle combinate, il db deve aprire un diverso report (che sarà poi un documento da stampare). Nel caso specifico sarà un permesso/diniego di autorizzazione per una diversa attività. Credo dovrò realizzare almeno 8 report diversi.

Pensavo di creare un pulsante e gestire il tutto tramite una macro nella condizione where.

Attualmente, essendo il db più scarno (ovvero solo un tipo di report con scritto autorizzazione/diniego) ho creato un pulsante con, nella condizione where della macro, il comando [ID]=[Maschere]![RICHIESTE Query]![ID], per poter aprire il report che mi apra solo il record di interesse. I diversi testi da proporre all'interno del report variano con funzioni “iif” presenti all'interno dello stesso report. Ma non è per nulla la condizione di lavoro corretta.

È tramite questa stessa funzione che potrò determinare quale report aprire?

grazie

9 Risposte

  • Re: Aprire report diversi a seconda dei dati inseriti

    Con questa descrizione dubito che qualcuno possa indirizzarti verso la soluzione.

    8 report? Non riesci a creare un solo report?

    Un esempio di 2 report potrebbe essere lista tabellare o etichetta.

    Sono di diversa impostazione e devi necessariamente creare due report, ma 8 report per cosa si differenziano? Intendo per impostazione grafica non di dati.

    Es. Tabellare

    Nominativo.     Indirizzo.              Telefono. 

    Tizio.                  Via dei tigli.          123456

    Caio.                   Via allodola.         67543

    Es. Etichetta

    Tizio.                                  Caio.  

    Via dei tigli.                       Via allodola. 

    Tel. 123456.                      Tel. 67543

  • Re: Aprire report diversi a seconda dei dati inseriti

    Se vuoi un consiglio lascia perdere le macro innanzitutto. A tirare a indovinare ti serve una where condition su apertura report, ma con informazioni fornite la vedo dura, a meno di mostrare la struttura del db e la query da associare al report.

  • Re: Aprire report diversi a seconda dei dati inseriti

    Eccomi… allego alcuni screenshot per spiegare meglio la situazione. questa sotto è la maschera di inserimento dati, sulla query RICHIESTE Query

    questa sotto è l'attuale struttura del report:

    Come vedete è già abbastanza pasticciata così. Tra qualche settimana le variabili in gioco aumenteranno e sarà per me essenziale gestire in report diversi le stampe di autorizzazione e diniego.

    Posto che devo ancora sedermi ad un tavolo con i colleghi per impaginare le diverse stampe, la mia necessità è quella di creare un tasto unico nella maschera che indirizzi su diversi tipi di report creando a monte le combinazioni.

    L'attuale pulsante indirizza all'unico report presente: 

    dove la condizione WHERE serve solo a creare un report sul record di riferimento.

    Quindi immagino di dover gestire tutto tramite il Condizione WHERE, creando una macro di questo tipo ma con più azioni a seconda delle combinazioni che potranno esserci

  • Re: Aprire report diversi a seconda dei dati inseriti

    Uhm…

    tutto quell'ambaradan ciccì coccò devi scriverlo per tirarti fuori una query e da quella inserire i campi nel modulo di stampa.

    devi distinguere gli eventi:

    1. form creazione autorizzazione (non tabellare)
    2. form tabellare che attinge alle varie voci da inserire nell'istanza
    3. form di stampa tramite query di ciò che hai selezionato.

    vada pure per la vista tabellare in inserimento (io la vedrei come consultazione o ricerca), ma al doppio click o con pulsante apri la riga selezionata su un altro form per le modifiche.

    comunque sia:

    1. oggetto: istanza per bal bla… (non aggiungere l'esito che si evince dal corpo del modulo)
    2. aggiungi a parte Protocollo nr ______ data _________
    3. testo: in riferimento all'oggetto bla bla… 
    4. campo [autorizzazione] dalla tendina presumo vi siano due valori si autorizza / non si autorizza
    5. continui il testo con bla bla…
    6. transito via roma e via mazzini non lo vedo tra i campi; e' un dato costante? se si non usa una if ma scrivilo e basta.

    il resto lo metterei come clausole generiche e avvertenze ("nel caso in cui dovessero incorrere cambiamenti…" e nel caso tipo domanda invalidi “la scadenza della presente autorizzazione coincide…”)

    fai tante if quando il dato e' già palese.

    scrivi “si comunica che” e lasci che una if completi il testo con “ l'istanza è stata rigettata” in parte uguale a “ l'istanza è stata accettata” Cambia solo il valore del campo)? scrivi direttamente : “si comunica che l'istanza è stata ” e aggiungi il campo [accolta/rigettata] magari con un carattere grassetto per saltare all'occhio di chi controlla l'autorizzazione.

    a me piu' che un modulo sembra un tema o un romanzo… scrivilo come fosse un fac-simile da riempire anche a mano (metti che il pc va in tilt).

    posso consigliarti la guida del 730, non trovi scritto il sig. tizio deve spuntare la casella r2 trovi norme generiche. anche sul biglietto del bus trovi le varie clausole generiche per ogni situazione. tu devi solo inserire le condizioni,il resto sta scritto nelle clausole.

    se invece hai questa necessità puoi passare il testo da una variabile stringa e inserire una casella di testo che attinge dalla variabile

  • Re: Aprire report diversi a seconda dei dati inseriti

    L'impostazione della maschera è nata come conseguenza di una gestione delle richieste fatte precedentemente in excel.

    L'amministrazione per cui lavoro non ha mai fornito suite per la gestione completa di tutte le attività (più che un posto fisso, è un posto “figo”… e qua mi fermo). 

    Quindi è tutto partito come una semplice tabella e relativa maschera dove tenere in memoria tutte le richieste avanzate con i relativi esiti.

    Dovendo poi stampare il provvedimento finale, ho deciso di velocizzare il lavoro ed evitare tutte le volte di dover riportare i dati (riducendo eventuali margini di errore), creando appunto questo report che va ad attingere dalla query tutti i dati inseriti e predisponendo delle frasi tipo a seconda del provvedimento finale.

    Ora gli esiti sono 4 (transito accordato/non accordato – permesso accesso disabili accordato/ non accordato)

    Adesso che i varchi aumenteranno, e con esso le combinazioni possibili, continuare con gli iif mi pareva un'eresia e a questo punto la necessità di creare tanti report quante sono le combinazioni possibili, istruendo access ad aprirne uno piuttosto che un altro.

  • Re: Aprire report diversi a seconda dei dati inseriti

    28/12/2023 - drt87 ha scritto:


    Ora gli esiti sono 4 (transito accordato/non accordato – permesso accesso disabili accordato/ non accordato)

    Sempre 2 sono… non credo che usi 4 maschere per inserire un record.

    Cambia che il campo autorizzazione vale “concesso” o “negato” e il campo disabile si/no, così come non hai n maschere per inserire il nr. Protocollo o la data.

  • Re: Aprire report diversi a seconda dei dati inseriti

    La struttura del report è sempre la stessa?

    Sarebbe utile avere un'immagine della finestra delle relazioni dove sia possibile vedere tutte le tabelle, con tutti i relativi campi, e le relazioni fra esse.

    Se addirittura postassi un file di esempio sarebbe tutto ancora più semplice.

  • Re: Aprire report diversi a seconda dei dati inseriti

    La struttura del report che hai proposto è complessa. Hai detto pure che prevedi altre variazioni di testo. Molti non hanno capito la struttura del database…mi associo anch'io che la vedo dura. Al di là di una descrizione completa e puntuale…ammesso che io ci abbia capito qualcosa…pensa anche all'ipotesi di lavorare con la “stampa unione” che permette ad Access di dialogare con Word attraverso i segnalibri (bookmarks).

  • Re: Aprire report diversi a seconda dei dati inseriti

    Ciao,

    ecco il file caricato su piattaforma 

    Edit

Devi accedere o registrarti per scrivere nel forum
9 risposte