@Bart V B
allereerst toch bedankt voor je moeite die je hierin hebt gestoken maar boekhouding is niet alleen btw :)
ik ga je een aantal dingen proberen uit te leggen met hoe mijn systeem werkt en waarom het zo moeilijk is.
PS: ik zie wel een klein voordeel hiermee dus ik ga hier zeker even in verdiepen als test om te kijken of ik de sql delen hiermee iets kan versnellen, ik laat je wel weten of dat is gelukt
ik heb wel een klein vraagje met betrekking tot eerste stukje code met de btw berekening in de sql
kan je de AS total of AS tax ook in dezelfde sql herbruiken ?
ok hier een lijstje met mijn problemen
ik heb
deze invoeren in mijn sql op 1 dag van 1 user
INSERT INTO `systeem_invoertotaal` (`account`, `id`, `id_user`, `werknaam`, `onbelaste_onkosten`, `facilitaire_diensten`, `percentage`, `btwhoog`, `btwlaag`, `loonbelasting`, `zfwpremie`, `geforceerd`, `soort`, `omschrijving`, `aantal`, `bedrag`, `btwhoogte`, `deel_user`, `titel`, `datum_invoer`, `invoer_over`) VALUES
(43, 162421, 111, 'mary', '20', '', '40', '21', '9', '8', '5.70', '-', 'belastingen', '-', '-', '-', '-', '-', NULL, '2020-03-15 01:04:27', '2020-03-14'),
(43, 162422, 111, 'mary', '-', '-', '-', '-', '-', '-', '-', '-', 'baden', 'Jacuzzi', '1', '20.00', 'btwhoog', '10.00', '', '2020-03-15 01:04:27', '2020-03-14'),
(43, 162423, 111, 'mary', '-', '-', '-', '-', '-', '-', '-', '-', 'tarieven', '30', '2', '70', 'btwhoog', '-', '', '2020-03-15 01:04:27', '2020-03-14'),
(43, 162424, 111, 'mary', '-', '-', '-', '-', '-', '-', '-', '-', 'tarieven', '60', '1', '120', 'btwhoog', '-', '', '2020-03-15 01:04:27', '2020-03-14');
even simpel vertaald
deze werknemer
heeft 2 x 30 minuten gedraait 70 euro per 30 min
heeft 1 x 60 minuten gedraait 120 euro
ze heeft ook 1 bad verkocht deze kost 20 euro en ze krijgt hiervan 10 euro
de percentage staan ook in een rij, dit is voor een specifieke reden en dus noodzakelijk
deze werknemers worden soms per dag uitbetaald en werken via een belasting berekening genaamd optingin
het kan zijn dat er een percentage midden in een maand veranderd, zoizo de loonheffing maar soms heel soms ook de btw
dit gebeurt eigelijk nooit maar de mogelijk is er
aangezien de medewerkers per dag vaak betaald krijgen kan ik niet achteraf dit wijzigen en dus MOET ik deze percentages in deze dag vastleggen
all de info die je ziet in de rijen moet ik een variabelen van maken omdat ik dit ook visueel moet tonen op een loonstrook
naast het tonen in detail van al deze gegeven moet ik heel veel uitkomsten maken met deze bedragen
hier moet ook variabelen van worden gemaakt
ik geef hieronder 100% van de lijst die ik dus MOET hebben in variabelen
er staan hier dus ook 0 bedragen in deze zijn meegenomen in de berekening omdat er ook heel vaak andere dingen worden meegegeven in de rijen
ps: de lijst kan iets worden ingekort en ik zit zelf al te denken een aan aantal met NULL te doen zodat hij ze niet hoeft opteslaan als ze er niet zijn
maer dit werkt voor de berekingen niet handig en daarom staan alle mogelijke bedragen die mijn berekening eventueel zou kunnen maken hierin
$id_user = 111;
$workname = 'mary';
$btwhoog = 21;
$btwlaag = 9;
$heffingskorting = 8;
$zfw = 5.70;
// Begin Bemiddeling //
$eindtotaalbemiddelingafgerond = 260;
$eindtotaalbemiddelingbtwafgerond = 45.13;
$eindtotaalbemiddelingexbtwafgerond = 214.87;
// Einde Bemiddeling //
///////////////////////
// Begin special Bemiddeling //
///////////////////////
$eindtotaalspecialbemiddelingafgerond = 0;
$eindtotaalspecialbemiddelingbtwafgerond = 0;
$eindtotaalspecialbemiddelingexbtwafgerond = 0;
$eindtotaalspecialbemiddelingprovisieexploitantafgerond = 0;
$eindtotaalspecialbemiddelingprovisieexploitantexbtwafgerond = 0;
$eindtotaalspecialbemiddelingprovisieuserafgerond = 0;
$eindtotaalspecialbemiddelingprovisieuserexbtwafgerond = 0;
///////////////////////
// Einde special Bemiddeling //
///////////////////////
// Begin Extra Diensten //
$eindtotaaldienstenafgerond = 0;
$eindtotaaldienstenabtwafgerond = 0;
$eindtotaaldienstenexbtwafgerond = 0;
// Einde Extra Diensten //
// Begin entree //
$eindtotaalentreeafgerond = 0;
$eindtotaalentreebtwafgerond = 0;
$eindtotaalentreeexbtwafgerond = 0;
$eindtotaalentreebtwlaagafgerond = 0;
$eindtotaalentreebtwhoogafgerond = 0;
$eindtotaalprovisieuserentreeafgerond = 0;
$eindtotaalprovisieexploitantentreeafgerond = 0;
// Einde entree //
// Begin Baden //
$eindtotaalbadenafgerond = 20;
$eindtotaalbadenbtwafgerond = 3.47;
$eindtotaalbadenexbtwafgerond = 16.53;
$eindtotaalbadenbtwlaagafgerond = 0;
$eindtotaalbadenbtwhoogafgerond = 3.47;
$eindtotaalprovisieuserbadenafgerond = 10;
$eindtotaalprovisieexploitantbadenafgerond = 6.53;
// Einde Baden //
// Begin Dranken //
$eindtotaaldrankenprovisie = 0;
$eindtotaaldrankenprovisieexbtw = 0;
$eindtotaalbtwdrankenhoogafgerond = 0;
$eindtotaalbtwdrankenlaagafgerond = 0;
$eindtotaaldrankenafgerond = 0;
$eindtotaaldrankenbtwafgerond = 0;
$eindtotaaldrankenexbtwafgerond = 0;
$eindtotaaldrankenbtwlaagafgerond = 0;
$eindtotaaldrankenbtwhoogafgerond = 0;
$eindtotaalprovisieuserdrankenafgerond = 0;
$eindtotaalprovisieexploitantdrankenafgerond = 0;
// Einde Dranken //
$percentageexploitant = 40;
$percentagedame = 60;
$eindtotaalallesafgerond = 280;
$eindtotaalallesbtwafgerond = 48.6;
$eindtotaalallesexbtwafgerond = 231.4;
$totaalpercentageexploitant = 104;
$totaalpercentageexploitantbtw = 18.05;
$totaalpercentageexploitantexbtw = 85.948;
$totaalpercentageexploitantafgerond = 104;
$totaalpercentageexploitantbtwafgerond = 18.05;
$totaalpercentageexploitantexbtwafgerond = 85.95;
$totaalpercentageuser = 156;
$totaalpercentageuserbtw = 27.08;
$totaalpercentageuserexbtw = 128.92;
$totaalpercentageuserafgerond = 156;
$totaalpercentageuserbtwafgerond = 27.08;
$totaalpercentageuserexbtwafgerond = 128.92;
$totaaldeelexploitant = 85.95;
$totaaldeelexploitantafgerond = 85.95;
$eindtotaalbrutoverdienstenuser = 138.92;
$eindtotaalbrutoverdienstenuserafgerond = 138.92;
$onbelastenonkosten = 27.784;
$onbelastenonkostenafgerond = 27.78;
$subtotaalonb = 111.136;
$subtotaalonbafgerond = 111.14;
$heffingskortingdeel = 8.89088;
$heffingskortingdeelafgerond = 8.89;
$zfwpremiedeel = 6.334752;
$zfwpremiedeelafgerond = 6.33;
$eindtotaal_afdrachten = 15.225632;
$eindtotaal_afdrachtenafgerond = 15.22;
$subtotaal_zfwLB = 95.92;
$subtotaal_zfwLBafgerond = 95.92;
$netto_optingin = 123.704;
$netto_optinginafgerond = 123.7;
nogmaals ik moet dus all deze variabelen hebben omdat ze dus ook echt getoond worden
ja een aantal zouden eruit kunnen , de afgeronde delen bv mits ik de niet afgeronde erin heb
het zou dus een enorm lange sql code worden indien dit zou kunnen
maar daar heb ik gen kennis van en iemand anders is dit nog nooit gelukt anders dan hoe ik het heb
iemand die dit intressant vind om te proberen mag mij een pm sturen
ps: btw eruit halen doe je door delen door 121 en dan x 21 voor de btw
en normaal doe je dan x100 voor de exbtw
echter geeft dit heel heel soms cent fouten vanwege de 3 cijfers achter komma regel
daarnaast gaat belasting altijd voor en dus moet ik het zo doen
bedrag delen door 121 keer 21 en dat bedrag dan weer aftrekken van je main bedrag
dan is hij altijd perfect