Help aub join sleutel probleem

Status
Niet open voor verdere reacties.

Scubaman

Gebruiker
Lid geworden
19 mrt 2010
Berichten
99
Bekijk bijlage Instituut-Noord.zipGoede middag,


ik dacht dat ik al aardig op weg was met mijn database, maar helaas. Sinds vanochtend heb ik een probleem, dat ik niet kan oplossen. Heb het forum doorgespit, maar geen opllossing gevonden.


Ik mijn tabellen heb ik een tabel cursist en een tabel betaling. Nu wil ik graag een formulier maken waar ik de gegevens kan invullen. De query maken lukt wel, het formulier op zich ook, maar zo gauw ik iets wil invullen (cursusgeld) begint mijn computer te piepen en verschijnt er de fout join sleutel kan niet gevonden worden in deze record set. Ik kan dus geen cursist toevoegen via het formulier.
Ik ga er van uit dat ik weer eens iets fout doe of over het hoofd zie. Ik verwacht iets inde relaties wat ik niet goed doe, maar heb van alles geprobeerd, maar niets brengt een oplossing.

Alle andere formulieren en rapporten werken zoals ik dat in gedachten had.

Heb ook geprobeerd de gesplitste bedstanden te uploaden, maar ook dat lukt niet. Zal wel Murphy'ds law zijn, vandaag.

IS er iemand die mij wil/kan helpen?


Heb met dank aan Octafish de bestanden op mijnbestand.nl gezet.

Hartelijk dank

Bekijk bijlage Instituut-Noord.zip


http://www.mijnbestand.nl/Bestand-XDREWEWSDQLR.001
http://www.mijnbestand.nl/Bestand-XXTY8FEALWKV.002
 
Laatst bewerkt:
Je zip is niet uit te pakken, en de twee deelbestanden op mijnbestand hadden natuurlijk best één bestand kunnen zijn, want ze zijn klein genoeg. Maar met een extra programma zijn ze wel samen te voegen, en uit te pakken. Wat ontbreekt is het Navigatieformulier dat je standaard opstart. Ik hoop dat dit niet het formulier is dat niet werkt, want je geeft verder niet aan om welk formulier het gaat. Of is het de bedoeling dat we daar zelf achter komen?
 
Bekijk bijlage Instiuut-Noord 14 juni.zipDag Octafish,


dank je wel voor je antwoord. Sorry voor het niet goed gezipte bestand.


Ben vandaag deels weer opnieuw begonnen. Heb nu alles gezipt, hopelijk is het nu wel te openen.

Heb het formulier navigatie ook er in staan.

Heb het formulier cursist (frmcursist) (al) weer opnieuw gemaakt. Heb daarbij de tabellen cursist en betaling gebruikt (tblcursist en tblbetaling). Het gekke doet zich nu voor dat ik nu wel alles kan invullen. Alle berekeningen worden correct uitgevoerd. Als ik het record wil opslaan, schijnt dat wel goed te gaan. Als ik het formulier cursist weer opnieuw open begin ik weer met record no 1 en kan ik ook niet naar het vorige record gaan.
Als ik kijk in de tabel cursist (tblcursist) staan ze daar wel in.
Ik doe dus weer eens iets niet goed. Zou het fijn vinden als je daar je kritische blik over wilt laten gaan. Heb gestoeid met relaties, maar dat lukt ook niet, of ook daar doe ik iets niet goed.


Hoop dat ik nu alles gedaan heb, zodat je het bestand eventueel kunt bekijken.


Het nieuwe gezipte bestand heb ik de toevoeging 14 juni gegeven.


Hartelijk dank
 
Geen idee hoe je zipt, maar deze is ook niet uit te pakken. Ik kan 'm openen, en zie een database staan, en daar stopt het...
 
Ik zou zeggen: zip hem eens met Winrar als je dat nog niet gedaan hebt, of zet hem ongezipt op MijnBestand.
 
Laatst bewerkt:
Hij is nu wel te openen, dus dat is al een stuk beter! Jammer genoeg zijn de relaties in de db volkomen onbruikbaar. Om te beginnen: bij geen enkele relatie was <Referentiële Integriteit afdwingen> aangevinkt. En dan kun je ze al net zo goed weglaten. Zet je bij de relaties de optie wèl aan, dan gaat dat bij de meeste tabellen nog wel goed, al zijn een paar tabellen dan niet te koppelen. En daar gaat het dus goed fout. Eén van die relaties is tussen (jawel) [tblbetaling] en [tblcursist]. Waarom heb je die tabellen gekoppeld met de velden [CursistID] en [ID]? De ene is sleutelveld in de tabel tblCursisten (wat goed is) maar de ander is het sleutelveld van de tabel [tblbetaling]. En dat kan dus nooit aan elkaar gekoppeld worden. Omdat je <Referentiële Integriteit afdwingen> niet hebt aangevinkt, zal het Access een worst wezen dat je die twee velden aan elkaar wilt koppelen. Wil je [aanhef] aan [cursusgeld]? Geen probleem, mag allemaal! Tot je dus <Referentiële Integriteit afdwingen> aanvinkt, dan blijkt dat die relatie echt niet kan/mag. Deze twee tabellen kun je alleen koppelen op basis van de velden 1[cursistid] uit [tblbetaling]. In jouw db werkt dat ook niet, want de gegevens kloppen niet. in betaling heb je lege records (wat dus normaal gesproken niet mag) en één record met de cursistid 18. Maar je hebt maar twee cursisten: 5 en 6! Dus waar is 18?
Kortom: loop in ieder geval je relaties na, en verbeter ze.
 
Als je alles van hierboven hebt uitgevoerd, en in tblbetalingen de records hebt aangepast (ik heb zelf overal cursistid 5 of 6 ingevuld, zodat ik de relaties kon maken) dan kun je het formulier aanpassen. Begin daar met het formulier te baseren op de tabel tblCursist; de query deugt namelijk niet. Als je alleen de tabel cursist gebruikt, heb je overbodige velden (die uit betaling komen). Gooi die van het formulier af, die heb je ook niet nodig. Daarna kun je het formulier opvrolijken, want de layout is nu niet jofel meer. Heb je dat gedaan, dan komt het belangrijkste: het slepen van de tabel betalingen naar het formulier. Het formulier koppelt de tabel aan het formulier (accepteer het voorstel van Access) en je formulier is klaar, en werkend.
 
Goede morgen Octafish,


dank je wel voor je uitgebreide antwoorden.


Ga er dit weekend mee aan de slag. Zal je, als alles goed gaat, de uitkomst natuurlijk laten weten.


BEDANKT
 
Goede middag,

Ik heb al je voorstellen en suggesties toegepast:
tblcursist alle records verwijderd
tblbetaling idem
alle relaties bekeken en voorzover dat ging op referentiële integriteit gezet. Waar het niet ging, de tabellen aangepast.

Het formulier cursist opnieuw gemaakt. eerst alleen met de tabel cursist en geprobeerd of alles werkte. Dus opslaan, afsluiten, weer opnieuw openen. Hoera dat werkte. De gegevens die ik had ingevoerd staan er in.
Daarna het formulier opgemaakt en toen als laatste de tabel betaling er naar toe gesleept. Helaas ging het daarna niet goed.
Ben weer opnieuw begonnen met het formulier, alle door jou voorgestelde stappen gedaan, maar nog geen geluk. Tot dat ik je suggesties nog eens doorgenomen had en zag dat er verschillende ID nummers werden gebruikt. Ik heb toen alle indexen met comprimeren van de database op nul gezet, weer opnieuw begonnen en nu werkt het wel. Heb daarna alle tabellen leeg gemaakt en nog een probleem. Tot ik een helder moment kreeg. Ik heb alle indexen op nul gezet met comprimeren database en nu werkt zoals je beloofd hebt. Hardstikke fijn.


Heb mijn bestand weer bijgevoegd,. Zou nog graag je kritische en deskundige oordeel hier over horen; tenminste als je dat zou willen doen.


Heb nog een paar vragen maar zal daarvoor wel een nieuw item openen.


Nogmaals hardstikke bedankt


Bekijk bijlage Instituut-Noord 15 juni 2013.rar
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan