Hoi Lau,
Als eerste stap zul je moeten nadenken over de functie van de formulieren die je hebt gemaakt. Wat wil je bijvoorbeeld met het formulier <Foto-test> doen? Je vraag
Code:
ik wil de gegevens invoeren in de bijgevoegde database , hij zou een invoer moeten opslaan met alle invoer gegevens, en dan zou hij een rapport van de selecties moeten uitprinten
is ook niet heel erg duidelijk: welke gegevens wil je invoeren? Met welk formulier moet dat gebeuren? Welke invoer wil je precies opslaan? En welke selecties wil je uiteindelijk afdrukken?
Om e.e.a. wat te verduidelijken, hier een aantal zaken die je zou moeten aanpassen:
1. Ik zie dat je in je db een tabel Offertes hebt gemaakt, waar de meeste gegevens van het formulier <Foto-test> in terugkomen. Ik denk dan: hij wil dit formulier gebruiken om offertes te kunnen maken. Kijk ik echter naar de recordbron, dan zie ik dat je de tabel <Produktfotos> als bron gebruikt. Hang dus de tabel <Offertes> als bron achter dit formulier, en maak een nieuw formulier voor je produkten.
2. Alle keuzelijsten die je hebt gemaakt, halen keurig de records op uit de tabellen, dus dat zit goed. De vraag is: wat wil je met de informatie die wordt opgehaald? Je hebt namelijk nergens een Besturingselementbron geselecteerd. Dat kon ook niet, omdat geen van de keuzelijsten velden ophalen die gebruikt kunnen worden in de tabel Produktfotos. Zoals ik al eerder zei, komen de meeste velden wel terug in de tabel Offertes, vandaar mijn aanname dat je eigenlijk een formulier wilt maken voor het maken van offertes. Zorg er dus voor, dat je alle keuzelijsten het juiste veld uit de tabel Offertes geeft als besturingselementbron. Kies je geen besturingselementbron, dan zie je wel data op het formulier, maar wordt er niks opgeslagen...
3. Wat je nog mist op het formulier Offertes (laten we het zo maar noemen nu...) is een veld Klant. Die zit uiteraard wel in je tabel Offertes. Die moet je er dus nog bij maken. Uiteraard kun je daar ook weer een keuzelijst van maken.
4. Je hebt een relatie gelegd tussen de tabel Offertes en Klanten. Dat zou ik ook doen. Maar niet zoals jij hebt gedaan

Jij hebt namelijk het sleutelveld ID uit de tabel willen koppelen aan het veld Naam in de tabel klanten. Dat kan echter niet, om de volgende redenen: Het veld ID is een numeriek veld, en het veld Naam is een tekstveld; en het veld ID is een eigenschap van de tabel Offertes, terwijl je wilt verwijzen naar de tabel Klanten, en dat kan alleen als je koppelt met het veld Klant. Dit levert echter nog steeds een probleem op, omdat het sleutelveld uit de klanten (het veld ID) numeriek is, en het veld Klanten in de tabel Offertes van het type Tekst. Je kunt deze twee dus nooit koppelen.
Nu zul je misschien zeggen: ze zijn gekoppeld! Ja en nee; je hebt wel een lijntje liggen, maar het is een waardeloze link. Om dat te checken, moet je er op dubbelklikken, en de optie <Referentiële integriteit afdwingen> aanzetten. Als je dan op OK klikt, zul je zien dat de link niet gemaakt kan worden.
Toch heb je deze optie wel nodig, want hij zorgt ervoor dat je geen offertes kunt maken voor niet-bestaande klanten. Anders gezegd: je kunt alleen een offerte maken voor klanten die in de tabel Klanten bestaan. Lijkt mij wel wenselijk....
Om dit te bewerken, zul je het veld Klanten in de tabel Offertes moeten aanpassen in een numeriek veld, omdat het veld ID in de tabel Klanten ook numeriek is. Als je dat hebt gedaan, zul je zien dat je de optie <Referentiële integriteit afdwingen> wèl kunt toepassen, waarmee je database een stuk beter zal werken.
Als je deze stappen uitvoert, zul je zien dat je gegevens kunt opslaan in in de tabel Offertes, wat (denk ik) nog ontbreekt is een prijsberekening, maar dat heeft te maken met een verdere uitbouw van het formulier. (Bijna) alles wat ik hierboven heb uitgelegd, heeft eigenlijk betrekking op een formulier OfferteRegels, omdat je op een offerte waarschijnlijk meerdere produkten wilt kunnen aanbieden, en niet voor één produkt één offerte wilt maken. De prijs die je wilt offreren, zal (vermoed ik) dan ook bestaan uit prijzen gebaseerd op de verschillende produktregels, en een totaalprijs.
Maar dat lijkt mij de volgende stap...
Kijk eens of je hier iets mee kunt, en laat het dan weer weten, als je weer hulp nodig hebt!
Michel