Hallo allemaal,
Ik heb een factuur tabel en een factuurregelstabel. Nu wil ik in de factuurtabel kunnen scrollen waarbij de factuurregels automatisch worden getoond van de betrokken factuur. Ik heb de tabel factuur een index meegegeven op de kolom nummmer en de tabel factuurregels een FK gegeven eveneens op de kolom nummer. Mijn vraag nu is of dit te realiseren is met php en mysql.
Het doel van deze actie is om achteraf, de betaalde facturen te verwijderen.
Het verwijderen zelf van factuur en factuurregels werkt vlekkeloos via cascade.
bij voorbaat dank
Albert
Albert B op 07/04/2013 18:53:21
Mijn vraag nu is of dit te realiseren is met php en mysql.
Ja, dat kan.

Bedenk wel dat we, in Nederland, een wettelijke bewaarplicht kennen van zeven jaar voor alles dat met omzet te maken heeft, waaronder facturen. Je moet data bovendien bewaren in de oorspronkelijke vorm, dus bijvoorbeeld een MySQL-tabel.

Met de bewaarplicht zit dit wel goed de facturen worden bewaard in pdf formaat. Het gaat hier alleen om de afhandeling zodat geen klant foutief wordt gemaand.
Op dit moment laat de factuur tabel alle facturen zien en de factuurregels alle factuurregels.
Ik had gedacht met het leggen van de relatie dat dit automatisch tot het gewenste resultaat zou leiden. Ik doe zoiets in Delphi en heb twee grids met in de een alle facturen en in de andere alleen die regels die bij de geselecteerde factuur hoort. Hoe moet dat in php?
Dan komt het meer aan op MySQL dan op PHP. Als je de storage engine InnoDB van MySQL gebruikt, kun je voor de foreign key een regel voor ON DELETE CASCADE instellen.
Dat heb ik al, het verwijderen gaat prima. Maar als ik de factuurtabel oproep, laat hij alle facturen zien. Vervolgens roep ik de factuurregels aan en ook hier worden alle factuurregels getoond. Maar als er bv 100 facturen zijn en 250 factuurregels, wordt het op het scherm heel onoverzichtelijk, vandaar dat ik in een tabel enkele facturen wil laten zien, bv 10 met daaronder de bijbehorende factuurregels.
Ik heb het idee dat ik het te ingewikkeld wil maken. Ik moet er nog maar eens goed over nadenken.
bedankt zover
Met bijvoorbeeld LIMIT 10 kun je de weergave beperken tot 10 rijen uit de factuurtabel.
Dat heb ik al gedaan, en ik ben nu aan het sleutelen, zodat ik alleen de relevante factuurregels te pakken krijg. Ik kan hier nl. geen limit opleggen, omdat ik niet weet hoeveel regels er bij een factuur zijn.
Ik probeer nu van de eerste records in de factuurtabel een loop te maken die de juiste factuurregels in de factuurregelstabel selecteerd.
Ik hou jullie op de hoogte van het resultaat.
maar albert je moet denk ik wel een query gebruiken met WHERE:


SELECT * FROM faktuurregels WHERE nummer=3


wat bedoel je met 'Nu wil ik in de factuurtabel kunnen scrollen waarbij de factuurregels automatisch worden getoond' ...
In de wereld van programmeren gaat niets automatisch.. misschien een screenshotje toevoegen?
Ik ben eruit. Ik heb een FK gemaakt op het factuurnummer in de factuurregels corresponderend met het factuurnummer in de factuurtabel. Verder heb ik de structuur van de factuurtabel uitgebreid met een kolom 'betaald' en roep de facturen op met de where betaald = ''. Zo krijg ik alleen die facturen te zien die niet betaald zijn. Ik heb de gelegenheid om betaald aan te vinken en de betrokken factuur verdwijnt voor de gebruiker na submit. De factuur wordt ten alle tijden bewaard, wat ook weer ten goede komt voor de btw afdracht.
Dit topic is voor wat mij betreft opgelost. Hartelijk dank iedereen die met suggesties en opmerkingen mijn denkproces op het juiste spoor heeft gebracht.
Albert

Reageren