Gestione ingressi per anno

di il
10 risposte

Gestione ingressi per anno

Ciao a tutti ,
sono alle prese con un piccolo database per la gestione di ingressi di pz in uno studio.
il tutto è finalizzato alla stampa di un report giornaliero , a tabella , con i seguenti campi:
anno
nome cognome
numero progressivo ingresso per paziente (nell'anno)
data di nascita

non so come filtrare tutti i dati in base all'anno.
ogni pz avrà un numero progressivo di ingressi( e non so come farli progressivi, indipendente dall'id), ad ogni inizio anno ripartirà da 0

Premetto che sono neofita e che ho a dispozizione access 2003.

vi ringrazio per i preziosi suggerimenti

a presto

stefano

10 Risposte

  • Re: Gestione ingressi per anno

    Per filtrare i record in base a un anno, puoi sfruttare sia il "filtro in base a selezione" oppure impostare una query con parametro:
    Like [Digita l'anno da filtrare]

    Per la numerazione progressiva relativa, non è una cosa semplice, tuttavia prova a cercare nei forum argomenti del tipo "contatore relativo".
  • Re: Gestione ingressi per anno

    Ciao , Grazie, proverò.
    potresti spiegarmi meglio come faresti la queri con like?
    ciao
  • Re: Gestione ingressi per anno

    Puoi descrivere come è strutturato il tuo mini-DB in termini di quali tabelle e come sono composte (quali colonne)?
    In questo modo sarà possibile aiutarti presentandoti delle ipotesi di query.
  • Re: Gestione ingressi per anno

    stefanoart ha scritto:


    Ciao , Grazie, proverò.
    potresti spiegarmi meglio come faresti la queri con like?
    ciao
    Dai un'occhiata sulla guida in linea su "creare una query di selezione" e "query con parametri".
  • Re: Gestione ingressi per anno

    Non riesco ad inviare allegato con relazioni fra tabelle.
    le tabelle:
    Day hospital: relazione 1 molti con ingressi (tabella facoltativa, di presentazione)
    anni: 1a molti con ingressi
    ingressi:1a molti con dettaglio ingressi
    dettaglio ingressi molti a 1 con pazienti
    pazienti.
    mi piacerebbe riuscire a filtrare tutti gli ingressi in base all'anno e fare alcune operazioni di conteggio, prima fra tutte, numero di ingressi che ogni pz fa in un anno e rendere automatica quest operazione nel report giornaliero che devo stampare.

    grazie
  • Re: Gestione ingressi per anno

    Spero si capisca!! scusate se vi farò venire il torcicollo!!
    Allegati:
    13833_741bb3d47398de5cc593ac9abfc7ad77.jpg
    13833_741bb3d47398de5cc593ac9abfc7ad77.jpg
  • Re: Gestione ingressi per anno

    Grazie per i suggerimenti e d i consigli. speravo di fare meno errori allegando le relazioni fra tabelle , ma girato così pare illeggibile.Spero così sia più comprensibile

    Tabella day hospital( facoltativa, anzi credo inutile)
    Id_Day Hospital (contatore - chiave primaria)
    Nome - testo
    Id dipendente - numerico
    Id_ingresso numerico

    tabella _Ingressi
    Id_ingresso - contatore Chiave 1aria
    Id Contatto - Numerico
    Id dipendente -Numerico
    data ingresso - data
    N° ingresso - Numerico
    Id day hospital - Numerico
    Id_anno - Numerico
    T_dettaglio ingresso
    Id_dettaglio contatore chiave primaria
    id_contatto -Numerico
    id provenienza - Numerico
    id ingresso- Numerico
    data data
    Tabella Contatti
    id contatto - Contatore, chiave primaria
    nome testo
    cognome testo
    indirizzo.. testo...seguono altre generalità
    ..data di nascita data
    data ultimo incontro data
    numero ingressi numerico
    T_anno
    id_anno - contatore chiave primaria
    anno numerico
    queste dovrebbero essere le tabelle principali.
    relazioni
    [day_hospital].[campo chiave piemaria] 1 a molti [t_ingressi]. [campo numerico relativo]
    [anni].[campo chiave piemaria] 1 a molti [t_ingressi]. [campo numerico relativo]
    [ingressi].[campo chiave piemaria] 1 a molti [t_dettaglio ingressi]. [campo numerico relativo]
    [dettaglio_ingressi].[campo numerico relativo] molti a 1 [contatti].[campo chiave primaria]

    mi rendo conto che ci sono ripetizioni e ridondanze.
    vorrei ottenere una gestione per anno dei contatti , indicando per ognuno di essi il numero di ingressi progressivo, nell'anno.
    le maschere che vorrei:
    da un menu a tendina selezionare l'anno in modo da avere i dati aggiornati o controllare lo storico.
    maschera contatti, con sottomaschera ingressi(layout foglio dati), campi: numero progressivo e data, che variano a seconda dell'anno selezionato.
    maschera ingressi: Layout foglio dati: campi: nome , cognome, data nascuita, anno, numero progressivo ingresso(in quell'anno), reparto.
    questa maschera vorrei si aprisse con un pulsante dal menù, aggiornata al giorno .

    a fine giornata stampa di un report come da maschera ingressi.
    a fine anno: statistiche...ma quelle le vedò poi....

    spero di non essere stato troppo disordinato nell'esporre il progetto.

    grazie a chi dedicherà tempo per aiutarmi.

    ciao
  • Re: Gestione ingressi per anno

    Prima di parlare di maschere, query, statistiche ecc... occorre strutturare tutto in maniera normalizzata. Non pretendo che tu sappia benissimo cosa sia la normalizzazione (non te la so spiegare neanche io), si tratta piuttosto di incanalare tutti i campi nelle giuste tabelle evitando di commettere errori ridondanti. Cerchiamo di analizzare punto per punto:

    1) Mi dai OK che possiamo eliminare la tabella DayHospital?

    2) La tabella Contatti è una normale tabella Anagrafica e qui dentro, SOLO QUI DENTRO, devi indicare tutti i valori tipici e strettamente legati a una Persona. Già, Persona sarebbe il termine più generico per descrivere sia i Pazienti, sia i Dipendenti perchè tutti hanno gli stessi campi Cognome, Nome, DataNascita ecc...

    3) Puoi spiegare perchè avresti una tabella Ingressi e una DettagliIngressi? Se fai degli esempi espliciti con 3-4 record rendi meglio l'idea.

    4) Per il momento tralascerei il discorso del numero progressivo relativo all'anno. Si tratta di una cosa affatto semplice, occorre implementare un codice VBA che nè io sono in grado di fornirti, nè immagino tu capiresti. Io ci ho rinunciato spesso e preferisco numerare manualmente.

    5) Il campo Anno...mi sembra superfluo. Un bel campo Data è sicuramente più efficace.

    6) In seguito ai punti 4) e 5) un campo Data per tutti va bene in eterno. Statistiche future con opportune query risponderanno a tutti i tuoi quesiti.

    Fermiamoci qua per ora.
  • Re: Gestione ingressi per anno

    Day hospital...eliminata
    tu consigli di fare una tabella unica di persone ed assegnare un ruolo( paziente, dipendente....)
    tieni presente che i medici hanno un reparto di provenienza a cui vorrei associarli, potrebbe essere una complicazione?
    relazione molti a molti, tra ingressi e pazienti...un paziente ha molti ingressi, ogni ingresso ha molti pazienti....diciamo che i database che ho preso per esempio sono quelli di gestione ordini di microsoft.
    mi sembrava fosse simile a quello che mi serve...
    numero progressivo...elemento fondamentale su cui ruota il Db.
    io pensavo di associare ad un pulsante di inserimento nuovo record, nella tabella ingressi,a cui si aggiunge un numero, il contrario di quando si scarica un prodotto a magazzino.

    attendo vs preziosi consigli

    grazie
    Allegati:
    13833_78e2b3ba958a7ca7315b5ba3ac1640c7.jpg
    13833_78e2b3ba958a7ca7315b5ba3ac1640c7.jpg
  • Re: Gestione ingressi per anno

    stefanoart ha scritto:


    tu consigli di fare una tabella unica di persone ed assegnare un ruolo( paziente, dipendente....)
    Questo è un punto un po' dolente. Proprio recentemente, con un altro utente, ho dovuto cedere all'idea di separare due tabelle Medici e Pazienti perchè per i Medici si volevano conoscere TUTTE le generalità, anche Indirizzo, Tel. ecc....mentre per i Pazienti solo Cognome e Nome. I Medici presentavano utili ripetizioni, i Pazienti si ripetevano rarissimamente nell'arco di un anno...anzi tornava fastidioso anche avere una tabella Pazienti (però non prendere alla lettera questo esempio per paragonarlo al tuo caso). Ti dirò che il lavoro è risultato, per certi aspetti, più snello così. Anche le future query sarebbero più semplici da impostare.
    Se scegli la tabella unica, l'eventuale assegnazione del ruolo ce l'avresti automaticamente in una tabella figlia che vedrebbe un IDMedico e IDPaziente, entrambi provenienti da [Persone].[IDPersona]
    Io voto la tabella unica perchè domani anche un Medico può essere un Paziente. Nel tuo caso, penso che vorresti tenere traccia di tutte le notizie anagrafiche di entrambi. Nel tuo caso si verificheranno molto probabili ripetizioni di richiamo record.

    stefanoart ha scritto:


    tieni presente che i medici hanno un reparto di provenienza a cui vorrei associarli, potrebbe essere una complicazione?
    No, basta saperlo e impostare opportunamente le tabelle. Piuttosto bisogna tenere presente che un Reparto avrà i suoi n Medici che non vivranno lì in eterno, quindi l'associazione Reparti uno-a-molti con Medici andrebbe vincolata con un campo Data sulla tabella del lato molti. Mi ma mi sa che Reparti e Medici sono in relazione molti-a-molti attraverso una tabella di congiunzione Assegnazioni.

    stefanoart ha scritto:


    relazione molti a molti, tra ingressi e pazienti...un paziente ha molti ingressi, ogni ingresso ha molti pazienti
    Per me no. Un Paziente ha molti Ingressi: OK
    Penso che ogni Paziente venga trattato singolarmente. Penso sia FALSO un Ingresso molti Pazienti.

    stefanoart ha scritto:


    diciamo che i database che ho preso per esempio sono quelli di gestione ordini di microsoft. mi sembrava fosse simile a quello che mi serve...
    A me proprio quelli hanno depistato per anni. Le argomentazioni di ogni database sono da osservare caso per caso.

    Non ho chiaro un eventuale concetto di Ingressi e DettagliIngressi. Lo immagino e ipotizzo utilmente, ma ho bisogno di utili campi (qua serve la tua competenza professionale) per giustificare DettagliIngressi.
Devi accedere o registrarti per scrivere nel forum
10 risposte