Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [Access 2000]Problemi di selezione multipla

    Il mio problema è il seguente:
    devo realizzare un DB per la registrazione di servizi erogati.
    Finchè un servizio è erogato da un operatore ad un utente è tutto facile (come è facile immaginare).
    I miei problemi iniziano nel momento in cui io devo registrare che un servizio è dato, ad esempio, da 3 operatori a 50 utenti, soprattutto per il fatto che devo non sapere i numeri, ma devo sapere chi ha erogato questo servizio e a favore di chi.
    Grazie per l'aiuto
    Desperado
    ...io non sono il Sig. Lebowski. Lei è il Sig. Lebowski. Io sono Drugo. E' così che deve chiamarmi, capito? O se preferisce Drughetto,...oppure Drugantibus...o Drughino se è di quelli che mettono il diminutivo a ogni costo...

  2. #2
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Le informazioni sono un po' poche.
    Comunque potresti fare 3 tabelle:

    Operatori
    Utenti
    Servizi

    e in una quarta tabella Erogazioni salvi la combinazione idOperatore, idUtente e idServizio.

  3. #3
    Hai ragione, forse non mi sono spiegato bene.
    Il DB (molto semplicemente) è così strutturato:

    Tbl_Fruitori
    • ID_fruitore
    • Nome
    • Cognome
    • etc


    Tbl_operatori
    • ID_operatore
    • Nome
    • Cognome
    • etc


    Tbl_servizi_erogati
    • ID_servizio
    • Tipo_servizio
    • ID_fruitore
    • ID_operatore


    In questo modo però non ho l'opportunità di "legare" a ciascun servizio più fruitori o più opertori (e se si può non so come si fa) ed è proprio questo il mio problema.
    Desperado
    ...io non sono il Sig. Lebowski. Lei è il Sig. Lebowski. Io sono Drugo. E' così che deve chiamarmi, capito? O se preferisce Drughetto,...oppure Drugantibus...o Drughino se è di quelli che mettono il diminutivo a ogni costo...

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Infatti, così non puoi riuscirci.
    Secondo me, come dicevo, devi fare 4 tabelle:

    Tbl_Fruitori (un record per utente)
    • ID_fruitore
    • Nome
    • Cognome
    • etc


    Tbl_operatori (un record per operatore)
    • ID_operatore
    • Nome
    • Cognome
    • etc


    Tbl_tipi_servizo (un record per ogni tipo di servizio)
    • ID_servizio
    • Tipo_servizio


    Tbl_servizi_erogati (ogni record rappresenta ogni volta che un servizio viene erogato da un operatore per un cliente)
    • ID_servizio
    • ID_operatore
    • ID_fruitore
    • Data_ora_erogazione


    I campi ID delle prime tre tabelle vanno messe in relazione coi rispettivi campi nella quarta.

    Concettualmente le prime tre tabelle sono le "anagrafiche" di clienti, operatori e servizi, mentre la quarta rappresenta effettivamente le singole erogazioni, composte dall'unione di un tipo di servizio, un operatore e un cliente unite alla data/ora dell'avvenuta erogazione.

  5. #5
    Ecco, è proprio quello... In quel modo registro un servizio per un fruitore con un operatore... I problemi nascono quando un servizio è dato da più operatori a più utenti ad esempio...
    Desperado
    ...io non sono il Sig. Lebowski. Lei è il Sig. Lebowski. Io sono Drugo. E' così che deve chiamarmi, capito? O se preferisce Drughetto,...oppure Drugantibus...o Drughino se è di quelli che mettono il diminutivo a ogni costo...

  6. #6
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    [supersaibal]Originariamente inviato da Desperado
    Ecco, è proprio quello... In quel modo registro un servizio per un fruitore con un operatore... I problemi nascono quando un servizio è dato da più operatori a più utenti ad esempio... [/supersaibal]
    Dovresti essere più chiaro nello spiegare cosa succede esattamente. Le soluzioni possono essere diverse, a seconda della situazione che devi gestire.

    Quando dici che un servizio è dato da più operatori a più utenti, significa che è importante legare indissolubilmente il lavoro di Operatore1 per Utente1 con il lavoro di Operatore2 per Utente2?

    Oppure ti serve associarli solo per fini statistici?

    Insomma... come è realmente la situazione?

  7. #7
    Pardon, hai ragione.
    Mettiamo che io abbia (per semplicità) 2 operatori (operatore1 e operatore2) che erogano un servizio a favore di 2 utenti (utente1 e utente2).
    A me serve sapere che operatore1 ha erogato lo stesso servizio sia ad utente1 sia ad utente2 contemporaneamente e stesso discorso per operatore2.
    Di contro devo sapere che utente1 e utente2 hanno ricevuto il servizio in contemporanea da 2 operatori.
    Il problema è che esiste la possibilità che siano coinvolti sia molti operatori sia molti utenti.
    Desperado
    ...io non sono il Sig. Lebowski. Lei è il Sig. Lebowski. Io sono Drugo. E' così che deve chiamarmi, capito? O se preferisce Drughetto,...oppure Drugantibus...o Drughino se è di quelli che mettono il diminutivo a ogni costo...

  8. #8
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    [supersaibal]Originariamente inviato da Desperado
    Il problema è che esiste la possibilità che siano coinvolti sia molti operatori sia molti utenti. [/supersaibal]
    Quindi, un solo lavoro, un solo tipo di servizio, più operatori, più utenti?

  9. #9
    [supersaibal]Originariamente inviato da longline
    Quindi, un solo lavoro, un solo tipo di servizio, più operatori, più utenti? [/supersaibal]
    bingo
    Desperado
    ...io non sono il Sig. Lebowski. Lei è il Sig. Lebowski. Io sono Drugo. E' così che deve chiamarmi, capito? O se preferisce Drughetto,...oppure Drugantibus...o Drughino se è di quelli che mettono il diminutivo a ogni costo...

  10. #10
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Tbl_Fruitori (un record per utente)
    ID_fruitore, Nome, Cognome, etc...

    Tbl_operatori (un record per operatore)
    ID_operatore, Nome, Cognome, etc...

    Tbl_tipi_servizo (un record per ogni tipo di servizio)
    ID_Tipo_servizio, Descrizione_Tipo_servizio

    Tbl_lavori (ogni record rappresenta ogni volta che un lavoro viene effettuato)
    ID_lavoro, ID_Tipo_servizio

    Tbl_Coppie (ogni record rappresenta ogni coppia operatore/utente coinvolta per ogni lavoro)
    ID_Coppia, ID_Lavoro, ID_Fruitore, ID_Utente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.