Maschere e Tabelle

di il
24 risposte

24 Risposte - Pagina 2

  • Re: Maschere e Tabelle

    Hai perfettamente ragione, soltanto che lavorandoci su penso che magari sono necessari altri campi, li aggiungo e nascono altri problemi. Ti ringrazio della pazienza che usi nei miei riguardi, quasi superiore alla mia che mi sto dilettando nella stesura di questo DB che mi sta facendo impazzire (ed è la seconda volta che lo rifaccio) La conclusione a cui sei giunto tu, come ho scritto nell'ultimo messaggio era quella a cui ero giunto io. Con mille anni di ritardo ma ci ero arrivato. Ti posto un'immagine esplicativa che può aiutare anche altri utenti del forum...
    Allegati:
    14396_50764b01b4f83ee8036240ee9281d930.jpg
    14396_50764b01b4f83ee8036240ee9281d930.jpg
  • Re: Maschere e Tabelle

    Adesso sto creando una query riassuntiva, per le maschere ed i report. Nel momento in cui inserisco IDGenere o IDComuneResidenza o ProvinciaResidenza o ProvinciaNascita ovviamente non riesco a gestirli perchè i valori sono chiaramente numeri. In questa query di riepilogo bisogna fare riferimento a delle sottoquery ComuniOrdinati e Genere (penso io, forse sbagliando). E' corretto?
  • Re: Maschere e Tabelle

    Non ha senso concepire tblGeneri. Quei campi puoi includerli tranquillamente in AnagraficaPazienti.
    Per Titolo cosa intendi? Semplicemente Sig., Sig.ra, Sig.na? Oppure anche Prof., Ing., Dott.....?
    Se sono solo i primi tre puoi usare una casella combinata con le seguenti proprietà:
    Tipo origine riga: Elenco valori
    Origine riga: "Sig"; "Sig.ra"; "Sig.na"

    Idem dicasi per il campo Sesso.
    Per i campi che prevedono pochi valori, vale la pena impostare "Elenco valori" e non una apposita tabella/query di richiamo.

    Per il campo DataNascita imposta il campo di tipo Data/Ora con un Formato che tu ritieni più facile da digitare oppure più bello da vedere.

    Per gestire quella query...effettivamente si tratta di un caso molto particolare. Trattandosi di 2 tabelle con 2 relazioni...ho fatto un test simile e non si va a parare da nessuna parte. Per risolvere/aggirare il problema, devi importare 2 volte tblComuni (apparirà tblComuni_1), cancellare un join e ricostruirlo su tblComuni_1. Quando trascini i campi nella griglia, trascina Comune, CAP e Provincia sia da tblComuni, sia da tblComuni_1 per vedere tutti i dati relativi a IDComuneNascita e IDComuneResidenza.
  • Re: Maschere e Tabelle

    Grazie davvero dell'aiuto. Allora, la query funziona. Ho scritto manualmente l'istruzione SQL, e va..Ho creato la tabella Genere per fare in modo che scegliendo Sig. automaticamente ci sia M di maschio per un eventuale calcolo del codice fiscale, e nato anzichè nata, e per i valori medici che si modificano se si tratta di un maschio o di una femmina. Tutto per snellire la procedura. Tutto a posto quindi? No, purtroppo. la query funziona ma mi restituisce solo i numeri IDComuneNascita eIDComuneResidenza. Trovo impossibile creare una maschera con una query del genere. Mi continua a dire che la funzione non è supportata. Forse rimane indicarlo in VB ma bisognerebbe conoscerlo, ed io non lo conosco, oppure con le query nidificate. Bisognerebbe dare l'istruzione "Leggi IDResidenza" poi vai sulla tblComuni cerca IDresidenza e restituiscimi i valori Comune, Provincia e CAP. Stessa cosa per la nascita. E come si fa?
    Appena inserisco le due tabelle tblComune e tblComune_1 il messaggio di errore di Access è: "Impossibile eseguire l'istruzione SQL perchè contiene outer join ambigui. per impostare 'istruzione in modo che uno dei join venga eseguito per primo, creare un'istruzione separata che esegue il primo join, quindi includere la query nell'istruzione sql." In poche parole le query nidificate.
  • Re: Maschere e Tabelle

    ddxrapper ha scritto:


    Ho creato la tabella Genere per fare in modo che scegliendo Sig. automaticamente ci sia M di maschio per un eventuale calcolo del codice fiscale, e nato anzichè nata, e per i valori medici che si modificano se si tratta di un maschio o di una femmina.
    Se il senso è questo, allora OK. Avrei da obiettare sul calcolo del codice fiscale. Ricordo di un altro thread dove si sconsiglia di creare una procedura o espressione che calcoli il codice fiscale. Bisogna considerare che esso, sia pur nel 95% dei casi è facilmente calcolabile, ma bisogna pur sempre ricordare che è un valore assegnato dal Ministero e andrebbe preso come tale. In sostanza è meglio digitarlo manualmente.

    ddxrapper ha scritto:


    Tutto a posto quindi? No, purtroppo. la query funziona ma mi restituisce solo i numeri IDComuneNascita eIDComuneResidenza.
    Ma questa porzione di risposta l'hai presa in considerazione?

    OsvaldoLaviosa ha scritto:


    Quando trascini i campi nella griglia, trascina Comune, CAP e Provincia sia da tblComuni, sia da tblComuni_1
    Tutto il resto mi suona strano.
  • Re: Maschere e Tabelle

    Sì ho fatto proprio come mi hai detto ma a me non funziona. L'istruzione SQL che funziona e con cui gestisco la residenza ed il luogo di nascita e che ho scritto manualmente è:
    SELECT tblComuni.IDComune, tblComuni.Comune, tblComuni.Provincia, tblAnagraficaPazienti.IDComuneNascita, tblComuni.CAP, tblComuni.Provincia, tblAnagraficaPazienti.IDComuneResidenza
    FROM tblComuni LEFT JOIN tblAnagraficaPazienti ON (tblComuni.IDComune = tblAnagraficaPazienti.IDComuneNascita) AND (tblComuni.IDComune = tblAnagraficaPazienti.IDComuneResidenza);"
    Questa funziona perfettamente.
    Acnhe la seguente funziona
    SELECT tblAnagraficaPazienti.IDPaziente, tblAnagraficaPazienti.DataInserimentoPaziente, tblGenere.Titolo, tblAnagraficaPazienti.IDGenere, tblGenere.Nato, [Cognome] & " " & [Nome] AS CognomeNome, tblAnagraficaPazienti.DataNascita, tblAnagraficaPazienti.IDComuneNascita, tblAnagraficaPazienti.IDComuneResidenza, [DenominazioneResidenza] & " " & [IndirizzoResidenza] & ", n° " & [NumeroResidenza] AS Indirizzo, "Telefono: " & [Telefono] & " Cellulare: " & [MobilPhone] & " Email: " & [Email] AS Contatti, tblAnagraficaPazienti.CodiceFiscale, tblAnagraficaPazienti.Privacy
    FROM tblGenere LEFT JOIN tblAnagraficaPazienti ON tblGenere.IDGenere = tblAnagraficaPazienti.IDGenere;"
    Ma ho come risultato IDComuneResidenza e ID ComuneNascita. Provo a nidificarli. Ma non riesco.
  • Re: Maschere e Tabelle

    ddxrapper ha scritto:


    Ma ho come risultato IDComuneResidenza e ID ComuneNascita. Provo a nidificarli. Ma non riesco.
    Che vuol dire che vuoi nidificarli?
    Nella tabella AnagraficaPazienti essi hanno la stessa importanza gerarchica, quindi è giusto che tu veda i seguenti campi:
    Cognome
    Nome
    ...altri campi...
    ComuneResidenza: tblComuni.Comune
    CAPResidenza: tblComuni.CAP
    ProvinciaResidenza: tblComuni.Provincia
    ComuneNascita: tblComuni_1.Comune
    CAPNascita: tblComuni_1.CAP
    ProvinciaNascita: tblComuni_1.Provincia
    ...altri campi...

    Direi di non includere nella query i campi IDComuneResidenza e IDComuneNascita in quanto numerici e insignificanti per te. Se interpreti correttamente quei 6 campi capirai che quello che sta scritto a sinistra dei due-punti diventa il nuovo nome colonna per renderti la leggibilità più chiara. Quello che sta a destra dei due-punti significa il campo che dovevi trascinare secondo le mie indicazioni.
  • Re: Maschere e Tabelle

    INfatti quella che scrivo di seguito è quella che tu mi hai indicato. Spero di no naver sbagliato qualcosa ma a me non funziona
    SELECT tblAnagraficaPazienti.DataInserimentoPaziente, tblAnagraficaPazienti.Cognome, tblAnagraficaPazienti.Nome, tblAnagraficaPazienti.DenominazioneResidenza, tblAnagraficaPazienti.IndirizzoResidenza, tblAnagraficaPazienti.NumeroResidenza, tblComuni.Comune, tblComuni.Provincia, tblComuni_1.Comune, tblComuni_1.CAP, tblComuni_1.Provincia
    FROM tblComuni, tblComuni AS tblComuni_1 LEFT JOIN tblAnagraficaPazienti ON tblComuni_1.IDComune = tblAnagraficaPazienti.IDComuneResidenza;
    A questo punto compare il messaggio che ti ho indicato sopra.
  • Re: Maschere e Tabelle

    Non mettere LEFT JOIN. Metti INNER JOIN.
  • Re: Maschere e Tabelle

    Bingo. Non vorrei cantare vittoria ma ci hai azzeccato ma a naso funziona! Come posso ringraziarti? Ho l'impressione che ti chiederò ancora aiuto ma davvero grazie.
Devi accedere o registrarti per scrivere nel forum
24 risposte