Stampe da access

di il
18 risposte

Stampe da access

Salve, mi sono appena iscritto al forum per chiedervi un aiuto sulla stampa di access. vi Spiego il mio problema ( per qualcuno di voi sarà un problema semplice) allora: ho creato sull'oggetto report 2 stampe ognuno diversa dall'altra, sulla maschera ho messo un campo si/no, ho creato un tasto per lanciare la stampa che dicevo prima, adesso nasce il problema, vorrei che schiacciando il tasto, se il campo si/no è fleggato mi fa una stampa altrimenti se non è fleggato mi fa l'altra. spero di essermi spiegato bene. vi ringrazio anticipatamente. Flex

18 Risposte

  • Re: Stampe da access

    Flex ha scritto:


    ... ho creato sull'oggetto report 2 stampe ognuno diversa dall'altra, sulla maschera ho messo un campo si/no, ho creato un tasto per lanciare la stampa che dicevo prima, adesso nasce il problema, vorrei che schiacciando il tasto, se il campo si/no è fleggato mi fa una stampa altrimenti se non è fleggato mi fa l'altra. spero di essermi spiegato bene...
    Vediamo se ti sei spiegato bene in base alla spiegazione di quello che ho capito io: hai un report che contiene 2 sottoreport. Di questi due sottoreport, comunque, solo uno deve essere stampato e questa scelta la fai nella maschera che apre il report principale, spuntando o meno una casella di controllo.
    Sei proprio sicuro che questa procedura sia la migliore, quella di inserire due sottoreport che non possono comunque essere stampati contemporaneamente, in un report principale?
    Dopo questo spunto di riflessione, direi che dovresti impostare a False la proprietà Visible del container (il controllo che contiene il sottoreport) che non vuoi stampare.
    Ad intuito lo potresti fare con il parametro OpenArgs di DoCmd.OpenReport ed intercettandolo al Load del Report.
    Se serve altro aiuto riporta il codice di apertura del report principale, il nome della casella di controllo e il nome dei due controlli che contengono i sottoreport.
  • Re: Stampe da access

    Grazie per avermi risposto. mi spiego meglio (almeno spero). nell'ogetto report di access ho creato due lettere ( chiaramente una diversa dall'altra) lettera A lettera B. Nella maschera principale dove ci sono tanti campi, devo aggiungere un campo dove mettere un fleg per la lettera A e nessun fleg per la lettera B. Detto questo, ho creato un tasto che schiacciandolo mi stampi la lettera a secondo se ho messo il fleg nella maschera. Quindi schiacciando il tasto stampa il programma deve stamparmi la lettere A se c'è il fleg o la lettera B se il fleg non ci sta.
    grazie
  • Re: Stampe da access

    Flex ha scritto:


    grazie per avermi risposto. mi spiego meglio (almeno spero). nell'ogetto report di access ho creato due lettere ( chiaramente una diversa dall'altra) lettera A lettera B. Nella maschera principale dove ci sono tanti campi, devo aggiungere un campo dove mettere un fleg per la lettera A e nessun fleg per la lettera B. Detto questo, ho creato un tasto che schiacciandolo mi stampi la lettera a secondo se ho messo il fleg nella maschera. Quindi schiacciando il tasto stampa il programma deve stamparmi la lettere A se c'è il fleg o la lettera B se il fleg non ci sta.
    grazie
    Ok, parli di lettere ma confermi che NON sono documenti Word ma Report? (è uno scrupolo mio).
    Per il resto, confermo la strada che ti ho indicato prima. Sai come usare OpenArgs e come impostare Visible di un controllo container al caricamento del Report?
  • Re: Stampe da access

    Word non centra niente sono lettere creati con il report cone dei campi che prende i dati dalla maschera. Purtroppo non conosco OpenArgs e come impostare Visible di un controllo container al caricamento del Report? DoCmd.OpenReport Method (Access). Ti ringrazio anticipatamente
  • Re: Stampe da access

    Flex ha scritto:


    Word non centra niente sono lettere creati con il report cone dei campi che prende i dati dalla maschera. Purtroppo non conosco OpenArgs e come impostare Visible di un controllo container al caricamento del Report? DoCmd.OpenReport Method (Access). Ti ringrazio anticipatamente
    Un po' di link per vedere come funziona OpenArgs (oltre alla guida in linea e al sito Microsoft) li avevo elencati tempo fa in questo thread:
    Qui trovi le sintassi per accedere alle proprietà di maschere e sottomaschere ma lo stesso concetto vale per i report, sostituitendo ovviamente [Forms!] con [Reports!] e [Form] con [Report] (l'avresti mai detto?) : Refer to Form and Subform properties and controls
  • Re: Stampe da access

    Li guardo e ti faccio sapere grazie buona giornata
  • Re: Stampe da access

    Ho dato un'occhiata, ti dirò la verità, ho capito ben poco, non so quale procedura vedere e usare e qual'è quella buona per il mio caso, scusa ma sono un po bianco per queste cose un pò più complesse.
  • Re: Stampe da access

    Flex ha scritto:


    ho dato un'occhiata, ti dirò la verità, ho capito ben poco, ....
    Dopo averti complicato ben bene le idee ho riorganizzato le idee e trovato una strada più semplice, che va bene per il caso specifico e che ti permette di avvicinarti al "meccanismo", migliorabile con OpenArgs quando avrai maggiore padronanza.
    Premesse: il tutto funziona solo se l'apertura del report avviene tramite il pulsante presente nella maschera o almeno a maschera aperta e con la casella di controllo già valorizzata.
    Definizioni:
    1) nome della maschera da cui si apre il report: frmApriReport
    2) nome della casella di controllo = chkBox
    3) nome del report principale = rptMain
    4) nome del controllo che contiene il sottoreport1 = rptSub1 (che non è il nome del subReport, l'ho impostato io a mano proprio per tenere distinti i due "oggetti")
    5) nome del controllo che contiene il sottoreport2 = rptSub2 (con le stesse precisazioni del punto 4)
    Impostazioni particolari:
    1) la casella di controllo deve essere spuntata o bianca, non quel "grigio" che indica che non è né True né False (anche se si potrebbe gestire, ma semplifichiamo)
    2) per i controlli rptSub1 e rptSub2 e per la sezione Corpo di rptMain (dove sono inseriti i due sottoreport) le proprietà Espandibile e Riducibile devono essere impostate a Sì (occhio che Riducibile di default è No)
    Comportamento: con chkBox NON spuntato (false) stampa (o meglio, visualizza in stampa) solo il primo subreport; con chkBox spuntato stampa (o meglio, visualizza in stampa) solo il secondo subreport.
    Codice dell'evento Open di rptMain
    Private Sub Report_Open(Cancel As Integer)
    Me!rptSub1.Visible = Not Forms!frmApriReport!chkBox.Value
    Me!rptSub2.Visible = Not Me!rptSub1.Visible
    End Sub
    Da qui si può solo migliorare. (avrebbe poco senso peggiorare)
  • Re: Stampe da access

    Sei un genio. faccio la prova e poi ti faccio sapere. 1000 grazie
  • Re: Stampe da access

    Flex ha scritto:


    sei un genio. faccio la prova e poi ti faccio sapere. 1000 grazie
    Hai invertito l'ordine di scrittura: prima dovevi ringraziare (per l'impegno), poi dire che provavi e solo alla fine, se tutto andava bene, scrivere che sono un genio (non è vero, so qualcosa e vado tanto ad intuito).
  • Re: Stampe da access

    Rieccomi ho provato a scrivere e riportare i nomi originale della maschera e dei report, ma purtroppo senza risultato, non mi apre niente e non fa niente. ti faccio vedere come si presenta la mia maschera e cosa vorrei ottenere. ti allego un allegato per vedere come ho fatto le cose, magari sarà più chiaro.
    Allegati:
    videata della maschera principale
    videata della maschera principale
  • Re: Stampe da access

    Flex ha scritto:


    rieccomi ho provato a scrivere e riportare i nomi originale della maschera e dei report, ma purtroppo senza risultato, non mi apre niente e non fa niente.
    Quale codice c'è nel pulsante di comando di apertura del report? Cosa hai scritto nell'evento Open del report principale, che contiene i due sottoreport?
  • Re: Stampe da access

    Nel tasto stampa che vedi nella maschera non c'è niente di particolare, c'è solo una semplice macro che mi apriva il report ruolo in anteprima. quindi fin qui nessuna difficolta, la difficolta nasce dopo, è venuta l'esigenza di inserire il report ruolo1 perché deve dare informazioni diverse e tutto questo nasce dal famoso campo si/no. Come ormai avrai capito se il campo si/no e fleggato appena io schiaccio il tasto stampa deve stampare in anteprima il ruolo1 se non è fleggato appena schiaccio il tasto stampa deve stampare in anteprima il ruolo. Il tasto stampa posso anche eliminarlo se tu hai idee diverse e gestire la cosa in modo che tu ritieni più idonea. Il mio scopo da raggiungere ormai lo conosci. grazie ciao
  • Re: Stampe da access

    Cosa hanno di diverso i report Ruolo e Ruolo1 da giustificare il solo flag sulla checkbox?
    Io avrei gestito diversamente la cosa:
    - 2 pulsanti diversi
    - oppure un "gruppo di opzioni" con 2 scelte e un eventuale pulsante di conferma

    Hai scritto tutto senza:
    - nome proprio della maschera (a mala pena si capisce l'immagine che hai postato)
    - nomi propri di tutti i controlli (almeno quelli che interessano)
    - descrivere i campi dei 2 report e loro eventuali differenze
    - descrivere le macro o codici VBA che gestiscono tutti i tuoi movimenti

    Potresti darci un quadro chiaro e dettagliato di tutta la situazione?
Devi accedere o registrarti per scrivere nel forum
18 risposte