Access modificare più report.

di il
13 risposte

Access modificare più report.

Salve,

sto creando un piccolo database con acces 2007, ma mi trovo in difficoltà. Nello specifico, ho due tabelle, una contenente una semplice numerazione con nomi assegnati ad ogni numero, ed una con i suddetti nomi e altri dati relativi ad essi. Come posso fare per creare una maschera che mi permetta di modificare il nome associato a diversi numeri? Per spiegarmi meglio, avendo ad esempio 1 associato a Marco, 2 a Luca, 3 a Giovanni ecc, avrei bisogno di una maschera che mi permetta di selezionare un range di numeri, dall'1 al 2 per dire, e modificare i nomi ad essi associati, ottenendo ad esempio 1 Paolo, 2 Paolo 3 Giovanni.
Spero di essere stata abbastanza chiara.

13 Risposte

  • Re: Access modificare più report.

    Potresti essere più chiara, ossia:
    - nomi propri di tabelle
    - tutti i nomi propri dei campi con elezione di chiave primaria
    - relazione/i
    - cosa vuoi fare

    Il titolo dice "modificare più report", ma poi parli di maschere. Cosa vuoi fare veramente?
  • Re: Access modificare più report.

    Ok allora, grazie per aver spostato il messaggio. Il nome delle due tabelle in questione è "numero scatola" e "studio". La prima tabella ha come campi il "numero scatola" e "nome studio", con numero scatola come chiave primaria, mentre la seconda ha "nome studio" come chiave primaria e altri campi non rilevanti ai fini di questa discussione.Il concetto è che ci sono diverse scatole numerate contenenti documenti di vari studi, per cui spesso mi si presenta la situazione che scatole dalla 1 alla 10 hanno documenti di uno stesso studio, dalla 11 alla 20 di un'altro e così via. Mi sarebbe utile quindi poter modificare il contenuto di diverse scatole contemporaneamente, nel caso di movimentazione di documenti. La mia idea è stata quindi di creare una maschera che mi permetta di inserire il range di scatole da modificare, scrivendo il primo ed ultimo numero, e il nome dello studio da associare ad esse. A quel punto, da quanto ho capito, dovrei assegnare ad un pulsante della maschera una amcro per far partire una update query che svolga il lavoro prelevando i dati dalla maschera appena compilata, ma non riesco a venirne a capo. cioè, non so se è la soluzione più appropiata, ne riesco a creare la macro nè ad assegnare i campi della maschera alla query. Non sono molto pratica di access, è il primo database che creo quindi scusate ancora per le mie imprecisioni.
  • Re: Access modificare più report.

    Secondo me ti manca una tabella di congiunzione perchè uno Studio può stare in molte Scatole e una Scatola può contenere molti Studi. La tabella di congiunzione si dovrebbe chiamare proprio Documenti con i seguenti campi:
    IDDocumento (numerazione automatica, chiave primaria)
    DataDocumento
    Documento
    ...altri eventuali campi...
    Studio
    Scatola

    Relazioni:
    Studi.Studio uno-a-molti Documenti.Studio
    Scatole.Scatola uno-a-molti Documenti.Scatola
  • Re: Access modificare più report.

    Ok, sono riuscita in ogni caso, dopo giorni di ricerche ho fatto una update query collegata alla maschera e funziona alla perfezione. Non mi è stato necessario aggiungere una tabella perchè una scatola può contenere documenti di uno studio, mentre uno studio può essere contenuto in diverse scatole. Ora mi sorge un'altro problema però: La numerazione delle scatole non è una progressione normale. Ad esempio, le prime 18 scatole sono numerate come. 001, 002, 003...009, 011, 012, 013...019. E' possibile inserire un nuovo tipo di dati che si compili in automatico tramite una funzione? perchè scrivere tutti i numeri uno ad uno è un suicidio..
  • Re: Access modificare più report.

    uba ha scritto:


    Non mi è stato necessario aggiungere una tabella perchè una scatola può contenere documenti di uno studio, mentre uno studio può essere contenuto in diverse scatole.
    Questa frase mi suona come una contraddizione. Con le tue stesse parole hai detto che Scatole e Studi (attraverso i Documenti...questa cosa ti sfugge) sono in relazione molti-a-molti. La relazione molti-a-molti si esplicita SEMPRE attraverso una tabella di congiunzione.

    uba ha scritto:


    La numerazione delle scatole non è una progressione normale. Ad esempio, le prime 18 scatole sono numerate come. 001, 002, 003...009, 011, 012, 013...019. E' possibile inserire un nuovo tipo di dati che si compili in automatico tramite una funzione? perchè scrivere tutti i numeri uno ad uno è un suicidio..
    Lo sai che esiste un particolare TIPO di campo che si chiama NUMERAZIONE AUTOMATICA? Svolge esattamente quella funzione che stai cercando.
  • Re: Access modificare più report.

    Uhm. Il concetto sarebbe che una scatola può contenere i documenti di UN SOLO studio, mentre uno studio può essere contenuto in più scatole. Di conseguenza, ad ogni scatola dovrò associare solo un nome di studio, per questo non credo mi serva un'ulteriore tabella per i documenti.. Sbaglio in qualcosa?
    Per il secondo punto, non posso usare la numerazione automatica perchè se noti, non vengono mai riportati i numeri con lo 0 finale (000,010,020 etc). Per di più ho riportato come esempio solo 3 cifre della numerazione effettiva che dovrò usare per le scatole come esempio, se necessario posso dirti che la numerazione completa è 00Q001, 00Q002...00Q009,00Q011...etc. Secondo alcuni criteri che non credo sia necessario mi metta qui a spiegare dovrò cambiare anche le prime due cifre del numero, quindi avrei proprio bisogno di un sistema per inserire una funzione che mi permetta di numerare in automatico.
  • Re: Access modificare più report.

    uba ha scritto:


    Uhm. Il concetto sarebbe che una scatola può contenere i documenti di UN SOLO studio, mentre uno studio può essere contenuto in più scatole. Di conseguenza, ad ogni scatola dovrò associare solo un nome di studio, per questo non credo mi serva un'ulteriore tabella per i documenti.. Sbaglio in qualcosa?
    Per il secondo punto, non posso usare la numerazione automatica perchè se noti, non vengono mai riportati i numeri con lo 0 finale (000,010,020 etc). Per di più ho riportato come esempio solo 3 cifre della numerazione effettiva che dovrò usare per le scatole come esempio, se necessario posso dirti che la numerazione completa è 00Q001, 00Q002...00Q009,00Q011...etc. Secondo alcuni criteri che non credo sia necessario mi metta qui a spiegare dovrò cambiare anche le prime due cifre del numero, quindi avrei proprio bisogno di un sistema per inserire una funzione che mi permetta di numerare in automatico.
    Quello che dici è chiaro...!
    (1)Studio---->(M)Scatole

    Poi lasciamo stare che ogni studio possa distribuire in varie scatole i propri Documenti... è implicito nella 1-M...
    Il Vincolo è che (1) Scatola può contenere solo Documenti di (1)Studio...!

    Ora attento a non confondere campi di Codifica Documenti con PK, possono coincidere ma non è obbligatorio...
    Potresti usare PK(Counter) e Campi di Codifica differenziandoli... rendendo Obbligatorio il Campo codifica ecc...
  • Re: Access modificare più report.

    uba ha scritto:


    spesso mi si presenta la situazione che scatole dalla 1 alla 10 hanno documenti di uno stesso studio, dalla 11 alla 20 di un'altro e così via.
    Questa frase mi era sfuggita. OK, mi rimetto in carreggiata anch'io: 1 Studio--->Molte Scatole.
    Se non ho capito male ti servirebbe una "query di aggiornamento". Leggi qui per capire di che si tratta
    https://support.office.com/it-it/article/Aggiornare-dati-tramite-una-query-80e77f3e-bc2b-4690-bb78-42b6444619b7
    Fin qui per risponderti alla lettera.

    Mia opinione personale (forse fuori tema): ma ti conviene fare periodici aggiornamenti così? Io propenderei per:
    A) Se voglio mantenere una numerazione progressiva, tale sia in assoluto e continuo a compilare...ma qualcosa non convince neanche me
    B) Se fossi io, darei un nome più esplicito (quindi non numerico progressivo) alle singole scatole, mettendo il NomeStudio e accanto Da/A. In questo modo si evitano spostamenti periodici.
  • Re: Access modificare più report.

    OsvaldoLaviosa ha scritto:


    uba ha scritto:


    spesso mi si presenta la situazione che scatole dalla 1 alla 10 hanno documenti di uno stesso studio, dalla 11 alla 20 di un'altro e così via.
    Questa frase mi era sfuggita. OK, mi rimetto in carreggiata anch'io: 1 Studio--->Molte Scatole.
    Se non ho capito male ti servirebbe una "query di aggiornamento". Leggi qui per capire di che si tratta
    https://support.office.com/it-it/article/Aggiornare-dati-tramite-una-query-80e77f3e-bc2b-4690-bb78-42b6444619b7
    Fin qui per risponderti alla lettera.

    Mia opinione personale (forse fuori tema): ma ti conviene fare periodici aggiornamenti così? Io propenderei per:
    A) Se voglio mantenere una numerazione progressiva, tale sia in assoluto e continuo a compilare...ma qualcosa non convince neanche me
    B) Se fossi io, darei un nome più esplicito (quindi non numerico progressivo) alle singole scatole, mettendo il NomeStudio e accanto Da/A. In questo modo si evitano spostamenti periodici.

    Purtroppo non dipende da me la numerazione da assegnare agli scatoloni... Devo per forza usare la dicitura che prima ti ho scritto. I probabili aggiornamernti riguarderanno solo il contenuto delle scatole, non la loro numerazione, quindi mi servirebbe solo un modo per numerarle tutte. Non esiste quindi un modo, come su excel, che scrivi una funzione su un campo e in automatico si compilano tutti quei campi della tabella?
  • Re: Access modificare più report.

    uba ha scritto:


    Non esiste quindi un modo, come su excel, che scrivi una funzione su un campo e in automatico si compilano tutti quei campi della tabella?
    Non sono sicuro di risponderti correttamente. Quel modo stile Excel di cui parli, in Access (nel caso tuo specifico) si espleta con la "query di aggiornamento". Il fatto che l'aggiornamento dovrà avvenire in base a un valore che tu vorrai inserire, significa che devi rendere la query di aggiornamento più varia/complessa, ossia deve avere un "parametro" da inserire in base al quale i valori devono aggiornarsi.
    Spero di non aver forato un'altra volta...magari attendi un consiglio più esperto.
  • Re: Access modificare più report.

    Buonasera scusatemi se forse sbaglio nel inserire la mia domanda ma se qualcuno puo aiutarmi ne sarei veramente grato
    cerco di realizzare un db access, vorrei inserire un comando vba che dica al db di estrarmi il contenuto delle due caselle combinate che specificano nome e mese nella tabella attivita lavoratori. grazie
  • Re: Access modificare più report.

    Benvenuto nel forum.
    Leggi il regolamento.
    Se hai intenzione di dare un contributo inerente l'argomento (thread) in cui si parla qui, OK.
    Se devi fare una nuova domanda, apri un nuovo thread con titolo appropriato.
  • Re: Access modificare più report.

    OsvaldoLaviosa ha scritto:


    uba ha scritto:


    Non esiste quindi un modo, come su excel, che scrivi una funzione su un campo e in automatico si compilano tutti quei campi della tabella?
    Non sono sicuro di risponderti correttamente. Quel modo stile Excel di cui parli, in Access (nel caso tuo specifico) si espleta con la "query di aggiornamento". Il fatto che l'aggiornamento dovrà avvenire in base a un valore che tu vorrai inserire, significa che devi rendere la query di aggiornamento più varia/complessa, ossia deve avere un "parametro" da inserire in base al quale i valori devono aggiornarsi.
    Spero di non aver forato un'altra volta...magari attendi un consiglio più esperto.
    Ho risolto nel modo più semplice possibile: usando un foglio excel in cui ho inserito la funzione necessaria affinchè compilasse in automatico tutti i numeri, per poi importare il tutto su access. Grazie mille comunque per la tua disponibilità, mi hai aiutata veramente molto.
    Buona giornata.
Devi accedere o registrarti per scrivere nel forum
13 risposte