Gruppo Report con il campo scelto da cbo maschera

di il
11 risposte

Gruppo Report con il campo scelto da cbo maschera

Ciao a tutti,
Provo a farla semplice: ho un Report con 1 gruppo riferito ad un campo del DB in cui scelgo dal suo contenuto la voce da visualizzare tramite cbo in una maschera in query, avrei bisogno però nel report di aggiungere un altro gruppo (che metterò in cima) che tramite una seconda cbo potrò scegliere quale campo del DB associare al quel gruppo del report. ovvero il report avrà un gruppo con il campo scelto dalla cbo in maschera, la lista campi nella cbo me la creo io in una tabella a parte con le voci interessate scritte identiche ai campi del DB in modo che poi saranno coincidenti.
Alla fine ci sarà un report solo che potrà aprirsi o per data, o per utente, o per genere ecc... Si può fare?
Vi ringrazio moltissimo per l'aiuto. Ciao. MM

11 Risposte

  • Re: Gruppo Report con il campo scelto da cbo maschera

    Potresti rispiegare tutto usando i nomi propri di report, tabelle, campi?
  • Re: Gruppo Report con il campo scelto da cbo maschera

    Se ho capito bene ... io la faciliterei così:
    crei un SQL in cui metti il "raggruppamento variabile" rinominato (es: " ... as GRP1") e sul report imposti di conseguenza, così da VBA setti il GRP1 a piacimento
  • Re: Gruppo Report con il campo scelto da cbo maschera

    Ciao, come mi avete chiesto provo a rispiegare con i nomi.
    Maschera_Spese ha cboTipo e cboGenere, la seconda si aggiorna in base alla scelta nella prima.
    Report_Spese ha come origine la Query del DB dove nelle colonne Tipo e Genere i rispettivi criteri collegano alle 2 cbo della maschera, Report_Spese quindi ha i 2 gruppi in cui i 2 campi di riferimento elencano in base alle scelte delle 2 cbo.
    Ora però nel Report ho bisogno di un terzo gruppo (sarà il primario in alto) in cui il suo campo di riferimento viene scelto da un terzo campo in maschera (i nomi saranno in una tabella a parte scritti identici a quelli del DB), in poche parole in maschera devo scegliere che campo assegnare al gruppo principale del report.
    A cose fatte in maschera in quel terzo campo se sceglierò Data verrà creato il report per gruppo Data, se sceglierò Utente il report sarà compilato per gruppo Utente e così via.
    Spero di avere espresso meglio. Vi ringrazio ancora.
  • Re: Gruppo Report con il campo scelto da cbo maschera

    Per come hai rispiegato direi che confermo quanto ti ho scritto prima (almeno per come ho inteso io)
  • Re: Gruppo Report con il campo scelto da cbo maschera

    muttley005 ha scritto:


    Per come hai rispiegato direi che confermo quanto ti ho scritto prima (almeno per come ho inteso io)
    Grazie per la risposta, puoi fare un esempio scritto sia dell'SQL che del vba? Purtroppo non sono ai tuoi livelli o quelli di @Alex
    Ti ringrazio tantissimo
    Ciao
  • Re: Gruppo Report con il campo scelto da cbo maschera

    Io non ho capito tutto l'ingarbuglio. Io avrei creato più report impostati secondo le varie impostazioni e poi li richiamerei uno per uno (caso per caso) nella maniera più semplice con i loro rispettivi nomi.
  • Re: Gruppo Report con il campo scelto da cbo maschera

    OsvaldoLaviosa ha scritto:


    Io non ho capito tutto l'ingarbuglio. Io avrei creato più report impostati secondo le varie impostazioni e poi li richiamerei uno per uno (caso per caso) nella maniera più semplice con i loro rispettivi nomi.
    Ciao, questa cosa che mi dici è già lo stato attuale del programma, ci sono oltre 220 report impostati diversificati per ogni tipo di necessità che vengono aperti tramite vba dentro una funzione che viene richiamata in base alla scelta di 2 cbo. Io volevo snellire il tutto eliminando tutti i report creandone uno solo che si compone in base alle scelte delle cbo. Però per far questo mi serve un gruppo del report in cui la sua colonna del DB (il suo nome) viene selezionata dalla maschera. CIao
  • Re: Gruppo Report con il campo scelto da cbo maschera

    Te l'ho praticamente scritto ma ti faccio un esempio che tu poi adatterai alle tue esigenze/nomi
    hai detto che li hai già gli N report no?
    quindi avrai:
    Report1 che raggruppa per il campo1 (oltre che agli altri 2 sottolivelli che hai detto essere fissi che chiamiamo CampoA e CampoB)
    Report2 che raggruppa per il campo2 ( " " " " " )
    etc
    bene, prendi l'SQL di report1, immagino sarà qualcosa tipo:
    
    select campo1, campoA, campoB, ...
    from tuaFonte
    Where tueCondizioni
    
    esattamente come per Report2 sarà:
    
    select campo2, campoA, campoB, ...
    from tuaFonte
    Where tueCondizioni
    
    giusto?
    e se cambi il codice SQL così ?
    
    select campo1 as myGRP, campoA, campoB, ...
    from tuaFonte
    Where tueCondizioni
    
    a quel punto potresti avere un unico report che raggruppa per myGRP, campoA e CampoB no?
    chiaramente da vba dovrai sostituire la parte del campo1 con il nome del campo scelto dalla apposta combo
  • Re: Gruppo Report con il campo scelto da cbo maschera

    muttley005 ha scritto:


    ...
    e se cambi il codice SQL così ?
    select campo1 as myGRP, campoA, campoB, ...
    Ciao, tutti gli N Report hanno come Origine record la Query del DB e basta senza criteri, vengono aperti tramite la scelta di 2 cbo in una maschera che con il tasto "Apri Report" fa una call e richiama le varie combinazioni dentro una funzione che riferisce agli ID delle tabelle.
    Questi 2 report sono fissi e identici ma si distinguono solo per il nome del gruppo, uno elenca per Mese, l'altro elenca per Pagamento.
    Ora, il Campo1 subito dopo SELECT come dici tu, nella SQL dei Report non c'è, inizia subito con i campi del DB quindi non so come fare il tuo suggerimento.
    Ho provato a cercare sulla SQL del report che ha un gruppo ma non capisco dove viene scritto che "sta facendo un gruppo", quando apro la SQL vedo solamente la query di riferimento senza BROUP BY. Io ho provato a scriverlo in coda ma all'esecuzione tutti gli campi vengono messi come "espressione" e da un errore dal primo campo che non può appartenere al raggruppamento.
    In che parte del report è scritto che deve fare un gruppo?
    Ti ringrazio tantissimo per la risposta, e anche gli altri che intervengono su questo quesito per l'aiuto.
    Ciao
  • Re: Gruppo Report con il campo scelto da cbo maschera

    MaxM DEVI usare i TAG CODE come da regolamento e non copiare-incollare codice nemmeno indentato
    poi ... tralasciando anche tutti gli if ifelse etc che avresti probabilmente potuto sostituire con un Select case (a prima occhiata rapida)

    poi ... questa
    Questi 2 report sono fissi e identici ma si distinguono solo per il nome del gruppo, uno elenca per Mese, l'altro elenca per Pagamento
    conferma ciò che ti ho detto e questa
    Ora, il Campo1 subito dopo SELECT come dici tu, nella SQL dei Report non c'è
    mi fa capire che non hai capito ma non so sinceramente come altro spiegartelo, campo1 devi sostituirlo con il campo di raggruppamento tuo da vba
    
    SQL = "select " & me.miaCBO & " as myGRP, CampoA, CampoB, ... FROM ... WHERE ..."
    questa
    Ho provato a cercare sulla SQL del report che ha un gruppo ma non capisco dove viene scritto che "sta facendo un gruppo", quando apro la SQL vedo solamente la query di riferimento senza BROUP BY
    se ho capito bene cosa intendi devi "un attimo" rivedere le tue conoscenze su SQL di origine e report. E' chiaro che non troverai nessun group by nell'sql, il raggruppamento lo imposti sul report

    il tuo ultimo post mi lascia parecchio perplesso
  • Re: Gruppo Report con il campo scelto da cbo maschera

    muttley005 ha scritto:


    MaxM DEVI usare i TAG CODE come da regolamento e non copiare-incollare codice nemmeno indentato
    ---
    SQL = "select " & me.miaCBO & " as myGRP, CampoA, CampoB, ... FROM ... WHERE ..."[/code]
    CIao muttley, mi scuso con tutti per il Tag Code mi sono perso un punto del regolamento, nel caso ditemelo che modifico il post e lo cancello subito.
    Per quanto riguarda l'SQL, si ammetto che sono neofita, me lo aveva detto anche @Alex tempo fa ma ci sto dando sempre sotto, la materia non è facile.
    Prima di scrivere questo post avevo cercato molto in giro e chiesto pareri in giro ma penso di avere fatto un po' di confusione con le procedure e questo è successo .
    Intanto grazie del tuo consiglio ultimo, ci provo a vedere se riesco ad inserirlo.
    CIao
Devi accedere o registrarti per scrivere nel forum
11 risposte