[Access] Invulformulieren voor patiëntendatabase

Pagina: 1
Acties:

  • StanTheMan
  • Registratie: Oktober 2000
  • Laatst online: 12-07 07:48
Op het Software Engineering & Architecture forum ben ik heel goed geholpen wat betreft het opzetten en indelen van mijn tabellen voor een onderzoeksdatabase.
Zie het volgende topic:
[rml][ DB] Indeling patiëntendatabase*[/rml]

Nu heb ik wat problemen met het maken van formulieren:

Zo heb ik de relaties:
Afbeeldingslocatie: http://www.stanleyoei.nl/IMG/threlaties15jun.JPG

Ik heb eigenlijk 2 kwesties:
het eerste gaat over dit aneurysmaformulier
Via mijn hoofdmenu kan ik een patientnr/naam selecteren, en via een knop kom ik in dit scherm.
Bovenaan komen de PatientID en Naam te staan, en in het subformulier worden netjes de bij die persoon behorende aneurysma's getoond.
Wat ik nu wil is, dat ik ook in het SubSubformulier erboven een aneurysma kan selecteren, waarna het record wordt gekozen in het Subformulier. Er moet dus weer een terugkoppeling zijn vanuit het subsubformulier naar het subformulier.
Enige tips hoe ik dat moet doen?

Tweede kwestie gaat over het behandelingsformulier.
Vanuit de opname wil ik de behandelingen invullen. Ik wil hier in plaats van het vakje AneurysmaID een lijstje hebben van de aneurysma's die bekend zijn bij deze patiënt (het AneurysmaID en de bijbehorende locatie).
Met een query kan ik wel de juiste lijst krijgen, maar ik weet niet hoe je in dit geval de query vanuit een formulier kan aanroepen zodat hij alleen maar de waarden voor een bepaald BehandelingID weergeeft (en een BehandelingID is via de OpnameID, via de PatientID naar de aneurysmaID's gekoppeld).
Dit laatste kan ik dan ook weer toepassen op het Follow-Up gebeuren wat ik eigenlijk op dezelfde manier als de behandelingen aangepast heb.
Moet er bijvoorbeeld iets in de query regel staan dat ervoor zorgt dat het actieve BehandelingsID het criterium wordt voor de query in die kolom?
code:
1
2
3
SELECT [AneurysmaBijOpname].[AneurysmaID], [AneurysmaBijOpname].[BehandelingID], [AneurysmaBijOpname].[Omschrijving_Locatie]
FROM AneurysmaBijOpname
ORDER BY [AneurysmaBijOpname].[BehandelingID];


Ik hoop dat jullie me snel op weg kunnen helpen hiermee, want ik zit alweer enkele uren te stoeien hiermee.

Wellicht dat een mod de vergeten N in de titel kan zetten, staat zo dom..

[ Voor 13% gewijzigd door StanTheMan op 15-06-2006 16:14 ]


  • PromoX
  • Registratie: Februari 2002
  • Laatst online: 28-07 15:11

PromoX

Flying solo

Wat je 2e kwestie betreft:
Met de toevoeging van de 3e regel zou het moeten lukken.
code:
1
2
3
4
SELECT [AneurysmaBijOpname].[AneurysmaID], [AneurysmaBijOpname].[BehandelingID], [AneurysmaBijOpname].[Omschrijving_Locatie]
FROM AneurysmaBijOpname
WHERE ((([AneurysmaBijOpname].[AneurysmaID])=[Forms]![FormulierNaam]![Veldnaam]))
ORDER BY [AneurysmaBijOpname].[BehandelingID];

Op het moment dat je op het formulier een ID kiest, laat de query vervolgens enkel de aneurysma's zien die daarbij horen.

edit: Je eerste kwestie:
Ik weet niet waar het SubSubFormulier verder voor dient maar je zou hier ook een keuzelijst voor kunnen gebruiken met daarin alle aneurysma's van de betreffende patient.
De keuzelijst (die je dan wel op hoofdformulier zou moeten plaaten) kun je met behulp van een query maken die afhankelijk is van de op het formulier gekozen patiënt.
Vervolgens maak je het SubFormulier weer afhankelijk van de keuzelijst.

Nadat je een patiënt gekozen hebt, laat je een requery uitvoeren op de keuzelijst; nadat je een aneurysma gekozen hebt, laat je een requery uitvoeren op het subformulier. Eventueel kun je nog criteria toevoegen, zodat, wanneer je geen aneurysma kiest alle aneurysma's van de betreffende patiënt weergegeven worden.

Ik hoop dat het een beetje duidelijk is en dat ik hierboven geen onzin getypt heb...

[ Voor 49% gewijzigd door PromoX op 15-06-2006 18:18 ]

And I'm the only one and I walk alone.


  • StanTheMan
  • Registratie: Oktober 2000
  • Laatst online: 12-07 07:48
Bedankt voor het nemen van de moeite om hiernaar te kijken, ik ga nu even kijken of ik er wat van kan maken!

Edit:
deze code deed het:
code:
1
2
3
4
SELECT AneurysmaBijOpname.AneurysmaID, AneurysmaBijOpname.BehandelingID, AneurysmaBijOpname.Omschrijving_Locatie
FROM AneurysmaBijOpname
WHERE (((AneurysmaBijOpname.BehandelingID)=[Forms]![SubBehandeling]![BehandelingID]))
ORDER BY AneurysmaBijOpname.AneurysmaID;


Alleen, zou het nu nog mooier zijn dat het aanklikken van een ander aneurysma ook een ander record laat selecteren, voor de tabel waar het in dat formulier om gaat...Nu loop je het risico dat je gewoon het aneurysma verandert, terwijl de rest van de ingevulde gegevens om de vorige keuze ging.
Zit hier de clue in de "AfterUpdate" vba code?

Nu nog die 1e kwestie uitproberen.

[ Voor 94% gewijzigd door StanTheMan op 15-06-2006 20:41 ]


  • PromoX
  • Registratie: Februari 2002
  • Laatst online: 28-07 15:11

PromoX

Flying solo

StanTheMan schreef op donderdag 15 juni 2006 @ 20:11:
Alleen, zou het nu nog mooier zijn dat het aanklikken van een ander aneurysma ook een ander record laat selecteren, voor de tabel waar het in dat formulier om gaat...Nu loop je het risico dat je gewoon het aneurysma verandert, terwijl de rest van de ingevulde gegevens om de vorige keuze ging.
Zit hier de clue in de "AfterUpdate" vba code?
Via AfterUpdate / Na bijwerken moet je inderdaad een requery laten uitvoeren op het (sub)formulier dat de bijbehorende gegevens moet tonen.

[ Voor 7% gewijzigd door PromoX op 15-06-2006 21:01 ]

And I'm the only one and I walk alone.


  • StanTheMan
  • Registratie: Oktober 2000
  • Laatst online: 12-07 07:48
Heb jij nog goede links die jou het antwoorden op mijn vragen zullen besparen?

  • PromoX
  • Registratie: Februari 2002
  • Laatst online: 28-07 15:11

PromoX

Flying solo

StanTheMan schreef op donderdag 15 juni 2006 @ 21:15:
Heb jij nog goede links die jou het antwoorden op mijn vragen zullen besparen?
Je zou 's op zoek kunnen gaan naar databases met voorbeelden. Microsoft heeft bijvoorbeeld een database samengesteld met verschillende formulieren. Hier kun je, als je kijkt hoe ze opgebouwd zijn, veel van leren.

Microsoft heeft daarnaast ook databases met queries en reports samengesteld.

Ook hier staan vele voorbeelden.

En ook op GoT is er genoeg te vinden natuurlijk.

Mocht je toch nog ergens mee vastlopen kun je je vraag hier natuurlijk altijd weer stellen, maar laat dan wel zien wat het probleem is en wat je zelf al geprobeerd hebt. Op die manier kunnen mensen je ook weer beter helpen :).

[ Voor 8% gewijzigd door PromoX op 15-06-2006 21:41 ]

And I'm the only one and I walk alone.


  • StanTheMan
  • Registratie: Oktober 2000
  • Laatst online: 12-07 07:48
Thanks, genoeg stof voor morgen. Van die voorbeeld databases van microsoft is wel een goed idee, aangezien die databases veelal voor bedrijfsadministraties zijn voldeden ze niet echt vaak als voorbeeld voor de opbouw van de tabellen, maar wat betreft de formulieren kan en moet ik natuurlijk wel weer gaan kijken..
Pagina: 1