Incident Database

Status
Niet open voor verdere reacties.

Webklus

Gebruiker
Lid geworden
22 okt 2014
Berichten
164
Beste lezer,

Ik ben bezig met een database systeem voor het vastleggen van incidenten. Ik heb een database aangemaakt met wat algemene gegevens als naam e-mailadres en een database waar ik gegevens over de incidenten in opsla. Deze twee database heb ik aan elkaar gekoppeld met primaire sleutels op veld naam en veld naam van incident maker. Nu wil ik een formulier maker waar ik de incidenten kan invullen en een gedeelte waar ik per persoon de incidenten stuk voor stuk kan bekijken. Kan iemand mijn uitleggen hoe ik dat verder maak?

Alles is gemaakt in acces 2016.
 
Beste Webklus,

Zonder voorbeeld is het lastig om gedetailleerde antwoorden te kunnen geven.

Op het tabblad maken kun je een formulier aanmaken.
Selecteer hiervoor de tabel met de foreign key. (dat zal in jou geval waarschijnlijk de incidenten tabel zijn)

Als ik het goed begrijp wil jij verder nog een overzicht waarin je een naam invult en dan alle incidenten van deze persoon te zien krijgt.
dit doe je in een query.

Op het tabblad maken staat ook een knop: Query ontwerp.
Hier kun je de tabellen aanklikken die je wilt gebruiken.

Sleep vervolgens de kolommen die jij wilt zijn in de tabel daaronder.
Als je nu op het tabblad ontwerpen op de knop parameters klikt dan kun je hier de criteria invullen (zorg dat dit veld gelijk is aan de kolom naam waarin je wilt filteren.)

dus als jij wilt zoeken op de voornaam van een werknemer en die kolom heet Vnaam dan moet je bij de parameter ook Vnaam invullen.
Deze zal dan van het type tekst zijn.

Ik hoop dat dit jou opweg helpt.

Anders kun je ook even op deze link kijken: https://support.office.com/nl-nl/ar...n-vragen-bf1d0f69-31ed-4ce7-8b74-f5b759317718
hier wordt stap voor stap uitgelegd hoe je een query met parameters maakt.
 
Ik kom er zojuist achter dat ik denk ik iets fout heb gedaan in de relaties tussen de databases. bij het aanmaken van het formulier krijg ik dit ik gok dat dit niet goed is, ik heb een bijlage toegevoegd met een foto.
 

Bijlagen

  • incidenten form.png
    incidenten form.png
    28,7 KB · Weergaven: 84
Ik begrijp je vraag, maar niet het antwoord van NGG. Dat negeer ik dus even, met alle respect. :).
Je hebt een tabel [Personen] met het veld [PersoonID] als sleutelveld, en een tabel [Incidenten] met een veld [IncidentID] als sleutelveld. In de tweede tabel heb je, als het goed is, óók een veld [PersoonID] gezet, dat je met een één-op-veel relatie in Relaties koppelt aan de tabel [Personen]. Nu kun je per persoon meerdere incidenten vastleggen, zoals de bedoeling is.

Je kunt nu twee formulieren maken: één op basis van Incidenten, waarin je met een keuzelijst met invoervak op basis van het veld [PersoonID] een persoon kiest. De keuzelijst is gekoppeld (Rijbron) aan de tabel [Personen] zodat je de juiste personen kunt kiezen. Het formulier frmIncidenten heeft dus géén subformulier voor persoonsgegevens (nodig).

Als je een formulier frmPersonen maakt, op basis van de tabel [Personen] dus, krijg je vermoedelijk van Access automatisch een subformulier met alle incidenten van die persoon, dit omdat je de koppeling tussen de tabellen correct hebt gelegd.
En zo simpel is het eigenlijk!
 
Ik heb had geen persoonid in incidenten staan maar heb dit aangepast zie bijlage heb ik het goed gedaan?
 

Bijlagen

  • incidenten.png
    incidenten.png
    20,4 KB · Weergaven: 61
  • personen.png
    personen.png
    17,1 KB · Weergaven: 69
Ziet er goed uit. Zijn de velden goed te koppelen met Referentiële Integriteit, zodat je ook echt een één-op-veel relatie hebt?
 
En dat is ik weet zo gauw niet waarover je het hebt sorry. Zou je wat uitleg kunnen geven?
 
Tuurlijk :). Als je in het venster Relaties tabellen aan elkaar koppelt, staat de optie <Referentiële integriteit afdwingen> standaard uit. Maar die moet je dus altijd aanvinken, anders is de relatie tussen de tabellen waardeloos. Als je de relatie vervolgens niet kan opslaan, weet je dat het fout zit in de tabellen.
Met RI controleer je dat in de gekoppelde tabel geen data kan worden opgeslagen die niet in de hoofdtabel staat. In jouw voorbeeld betekent dat: je kunt in de tabel <Incidenten> géén incident opslaan op naam van een persoon die niet in de tabel <Personen> staat. Is ook logisch natuurlijk, want je kunt geen incident maken voor niet-bestaande personen.
 
Ik heb nu de relatie gelegd tussen de tabel personen en dan het veld personenid en de incidenten met veld personenid en toen RI afgedwongen deze kon ik opslaan dus de tabellen zijn goed. Hoe maak ik nui van persoonid in incidenten een keuze lijst of gaat dat automatisch.
 
Dat gaat niet automatisch, maar dat kun je met de wizard doen door een nieuwe keuzelijst te maken. Of, handmatig: rechtsklikken op het tekstveld, en dan <Wijzigen in> selecteren. Vervolgens kun je de Rijbron van de keuzelijst aanpassen, en de overige instellingen van de keuzelijst.
 
Het is mijn gelukt er een keuzelijst van te maken maar zoals je ziet vallen sommige titels onder het invoerveld ik heb geprobeerd de titels los te maken van de velden om de volledige titel te kunnen zien maar dit is mijn niet gelukt.
 

Bijlagen

  • incident aanmaken.png
    incident aanmaken.png
    18,7 KB · Weergaven: 63
Ik zou een <keuzelijst met invoervak> gebruiken en geen keuzelijst; je kunt toch maar één persoon aan een incident hangen? En labels kun je makkelijk los verplaatsen door het juiste blokje te verslepen. Je moet de muis dan op de linker bovenhoek zetten van het label. Als je de muis boven het label of het tekstvak houdt en je gaat slepen, neem je ze beiden mee. Pak je label of tekstvak in de linker bovenhoek, dan pak je alleen dat object.
 
Ik heb er een keuzelijst met invoer vak van gemaakt. Moet er ook nog een opslaan knop op zodat ik vervolgens het volgende incident kan aanmaken? Nu moet ik nog iets maken dat ik een overzicht krijg van die persoon en eventueel dat wanneer ik iets wil aanpassen het kan aanpassen. Graag zou ik ook een knop kunnen drukken dat er een rapport uitkomt van dat bepaalde incident kan dat?
 
Alles kan :). Een overzicht per persoon heb ik al in bericht #4 uitgelegd; zodra je een formulier maakt op basis van de tabel Personen zal Access zelf een subformulier erbij zetten met de incidenten. En anders maak je dat zelf; zolang het subformulier correct is gekoppeld aan het hoofdformulier, zal je de juiste incidenten zien.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan