factuursysteem

  • Ik zocht een nieuw php/mysql project.
    en mijn papa heeft een tuinonderhoud bedrijf. en hij is geen computergenie + factuur genie. dus vorig week ben ik begonnen met het idee om voor hem een factuur systeem te maken.
    ik ben het momenteel aan schrijven.
    Maar nu heb ik jullie raad nodig!
    om deze factuur te maken. heb ik een pagina gemaakt met producten (sub: producten toevoegen,etc...).
    hij heeft ook een foto, btw nummer enz op de factuur staan.
    zou ik php excel gebruiken hiervoor of heeft iemand een beter idee/ervaring?
    phpexcel:
    PHPExcel - Home


    groetjes,
    Mitchell Verbruggen

  • Hallo,


    Allereerst super leuk dat je dat voor je vader wilt doen.
    Ook verbeter je mogelijk je kwaliteiten in programmeren.


    Waarom zou je werken met het PHP excel systeem?


    Heb je ook al nagedacht hoe je de factuur laat bereken?
    Je geeft aan dat het een facturatie systeem wordt. Laat je alleen dat doen met je systeem of ook bijvoorbeeld het klaarmaken van een BTW aangifte?


  • Hoezo een berekening?
    Met PHP kan je heel simpel een berekening maken met totaal aan BTW kosten.
    Anders zou elk ander systeem hier ook niet zijn werk in doen, of bedoel je dit anders?
    Verder wordt BTW aangifte door je boekhouder gecontroleerd, althans zo werkt die van mij wel.


    @mitchellve
    Daar kan je inderdaad gebruik van maken, ik heb hier toen ook naar gekeken voor een ander onderdeel.
    Ik moest toen een excel schrijven welke een bestelformulier was, is dus ideaal voor een excel schrijven.


    Schrijf je facturen altijd naar een database, laat hieruit een PDF genereren die je met de PHP Excel maakt.
    Op die manier kan je makkelijk een berekening maken over de BTW en totaalkosten.


  • Ik zou dit willen doen omdat alles gaat gehost worden via een extern bedrijf. en dan kan ik de back ups configureren enz. als ik er een programma voor schrijf dat alleen op zijn laptop draait dan zit je met een bepaalde problemen. onder andere hij is geen computer genie => als er iets mis is met de back up configuratie zal ik het pas te weten komen als ik er naar kijk.
    => Hij wilt ook graag facturen kunnen maken op zijn tablet dus dan moet ik er wel een website voor maken.
    en phpexel heeft optie voor de btw dus dat vormt geen probleem.
    En voor de btw aangifte ga ik andere user aanmaken die alleen aan de facturen kan. (dus niets aanpassen aan bestaande klanten enz.)


    Je kan eens kijken naar volgende gratis code:
    Simple Invoices | An Open Source, Web-Based Invoicing System


    Ik gebruik dit en ben er vrij tevreden van.
    Zit goed in elkaar.


    Ik heb hier ook naar gekeken en het is wel interessant. maar omdat ik een nieuw project nodig heb dacht ik om een factuursysteem te bouwen.
    en als het mij echt niet lukt dan ga ik dat gebruiken ;)


    dus je bedoeld dat alles via excel naar de database moet en als hij het bv wilt afdrukken. moet ik het via PDF uit de database laten komen?

  • @mitchellve
    Nee, ik zal proberen iets duidelijker te zijn, uitleg is niet mijn sterkste kant excuus hiervoor. Wanneer een factuur gemaakt wordt schrijf je de waardes naar een database toe, meest gebruikte manier is onderstaande. Het is echter niet verplicht om via deze manier te werk te gaan, het is en blijft een voorbeeld.


    > invoices

    • ID
    • invoice_ID
    • amount_excl
    • amount_btw
    • amount_incl


    > invoice_elements

    • ID
    • user_ID
    • invoice_number
    • description
    • total_excl


    Bovenstaande is slechts een simpel voorbeeld, dit is wat even zo snel in me opgekomen is wat je normaal gebruikt. Vanuit bovenstaande gegevens maak je een Excel bestand aan, via het excel kan je de opmaak van de PDF bepalen (posities enzovoort).


    > php - PHPExcel Save PDF - Stack Overflow
    > PHP: header - Manual


    Hoop dat het zo iets duidelijker is, eventuele aanvullingen van andere leden kan alleen maar helpen dus twijfel niet om mij te verbeteren waar ik het mis heb!


  • En omdat het nog helemaal leuker te maken met een view:

  • @Patrick
    Kan je voor de prijzen niet beter een DECIMAL functie van SQL gebruiken dan een INT, de INT staat geen punt toe als ik me niet vergis ?


    Voorbeeld:
    DECIMAL(10,2)


    Edit:
    Had nog nooit gehoord van de "CREATE VIEW" optie, ga hier direct even informatie over opzoeken, bedankt!


    @Wmdiensten


    Yeah decimal is ook beter in dit geval, anders zullen komma getallen nogal lastig gaan. (Quick and dirty voorbeeld zullen we maar zeggen :-)).


    Create View statement zijn voor de SELECT / UPDATE query's die je vaak moet uitvoeren waar een view vaak wordt gebruikt voor een SELECT, hierdoor kan je éénmalig een view aanmaken met een massive query erin waardoor je in je programmering alleen SELECT * FROM view hoeft te doen.


    + daarnaast het is voor onderhoud ook wel makkelijk wanneer je een wijziging in die query wilt aanbrengen :-). Dan is het gelijk ook overal doorgevoerd.

  • Yeah decimal is ook beter in dit geval, anders zullen komma getallen nogal lastig gaan. (Quick and dirty voorbeeld zullen we maar zeggen :-)).


    Create View statement zijn voor de SELECT / UPDATE query's die je vaak moet uitvoeren waar een view vaak wordt gebruikt voor een SELECT, hierdoor kan je éénmalig een view aanmaken met een massive query erin waardoor je in je programmering alleen SELECT * FROM view hoeft te doen.


    + daarnaast het is voor onderhoud ook wel makkelijk wanneer je een wijziging in die query wilt aanbrengen :-). Dan is het gelijk ook overal doorgevoerd.


    Had inderdaad even op de website van MySQL gezocht hiernaar, lijkt me een zeer handige optie. Zoals je aangeeft is het wijzigen een heel stuk makkelijker, bedankt!

  • Had inderdaad even op de website van MySQL gezocht hiernaar, lijkt me een zeer handige optie. Zoals je aangeeft is het wijzigen een heel stuk makkelijker, bedankt!


    Mocht je btw een view willen maken waar je een SELECT * FROM invoices WHERE id = [ID] dan raad ik je aan op een stored procedure te maken, daarmee kan je net iets makkelijker met parameters omgaan.


    Het is wel mogelijk met views om parameters mee te verzenden dat zit echter niet native in views.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!