DB model klantensysteem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

Ervaren Software Developer

Functie omschrijving Ben jij een ervaren Software Developer, en heb je ervaring met technieken zoals C#, MS Access & SQL? Vind jij het leuk om maatwerk software te ontwikkelen voor klanten in een specifieke branche? Dan is dit de baan voor jou! Als ontwikkelaar ben jij samen met een team van 12 collega’s verantwoordelijk voor het bouwen van nieuwe functionaliteiten en het uitbreiden van de core applicatie. Belangrijk is dat je ervaring hebt met C# en MS Access. Je bent flexibel en klantvriendelijk ingesteld, omdat het belangrijk is om de klanten zo goed mogelijk van dienst te kunnen zijn. Thuiswerken

Bekijk vacature »

Als PHP developer (Symfony) bijdragen aan betere z

Functie Als Medior/Senior PHP developer wordt er een mate van zelfstandigheid verwacht, maar ook dat je goed in een team kunt opereren waar kennis wordt gedeeld en er bijvoorbeeld codereviews plaatsvinden. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden geactualiseerd.

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Medior/senior Back-end developer wanted!

Functie Because of the growth within the company, we are looking for reinforcement in the devlopmenttean. As a back-end developer you build the company software that helps us with the primary processes. A fun (internal) project in which you continuously develop the software! You will work in a small team, we have daily stand-ups and a scrum session every fortnight, led by our Scrum Master. During these sessions, you get the opportunity to present your ideas and discuss them with your fellow developers and the Product Owner. Within the development teams, we use Trello, Gitlab, Jiira, Confluence and Boockstack. They

Bekijk vacature »

Backend Developer Integraties API HBO REST

Samengevat: Deze werkgever is een IT-consultancy. Wil jij werken als Backend Developer Integraties? Heb jij kennis van gangbare berichtformaten? Vaste baan: Backend Developer Integraties API HBO €3.100 - €4.400 Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waardoor onze klanten zich net zo snel kunnen ontwikkelen als de business van hen vraagt. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Deze werkgever staat open voor elke nieuwe trend. Onze systemen zijn groot en ingewikkeld. Hou jij van diepgang

Bekijk vacature »

Java Developer

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

Front-end React developer

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een ontwikkelteam met 15 developers en twee testers. Samen zijn jullie verantwoordelijk voor financiële applicaties met meer dan 50.000 gebruikers. Een deel van het team is verantwoordelijk voor de webapplicaties van deze organisatie. Ook zijn er twee app ontwikkelaars werkzaam in het team die zich focussen op de mobiele applicatie. Als .NET ontwikkelaar ga jij aan de slag met de webapplicaties van deze organisatie. Hierbij maak jij o.a. gebruik van C# .NET, ASP.NET, T-SQL, Angular en TypeScript. De nadruk van jouw functie ligt wel op de backend van de applicatie. Wat jouw functie

Bekijk vacature »

Senior Fullstack developer wanted! (C#, Java, Angu

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een ambitieuze werkgever in regio Tilburg waar jij volledig de mogelijkheid krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je gaat projecten gedurende het hele proces begeleiden. Je sluit aan bij afspraken met klanten om hun processen helder te krijgen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt aan nieuwe softwareoplossingen die de logistieke processen verbeteren of vernieuwen; Je houdt je bezig met het ontwikkelen van

Bekijk vacature »

PHP Software Developer

Functie omschrijving PHP Software Developer gezocht! Voor een organisatie in de regio Zeist die zich bezighoud met het verbeteren van de medicatieveiligheid zoeken wij een Software Developer. In deze functie zijn wij op zoek naar een slimme en enthousiaste Developer die interesse heeft in farmacie, logistiek en ICT. Daarnaast beschik je over een goed analytisch vermogen en ben je van nature gestructureerd en resultaatgericht. Je moet in deze functie daadkrachtig, flexibel en communicatief goed zijn. Je verantwoordelijkheden bestaan uit: Object georiënteerd programmeren; Werken in een scrumteam aan de ontwikkeling van een medicatiebewakingssysteem; Meedenken over de mogelijkheden en onmogelijkheden van projecten;

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in de regio van Bergen op Zoom ben je als PHP Developer niet alleen gefocust op het ontwikkelen van Software. Daarnaast ben je ook voortdurend bezig met het zoeken naar nieuwe mogelijkheden en innovaties die essentieel kunnen zijn voor de efficiëntie van software ontwikkeling. Je deelt veel kennis en informatie met het team en ontvangt deze dan ook graag terug. Techstack: PHP, Symfony & mySQL. Bedrijfsprofiel Deze uitdagende opdrachtgever is ruim 20 jaar actief in de regio Bergen op Zoom. Het vooruitstrevende team staat de hele dag voor je klaar om je te helpen en ondersteunen.

Bekijk vacature »

Ervaren PHP Developer

Functie omschrijving Jelling IT zoekt ervaren PHP developer! Voor een organisatie in de regio Rhenen zijn wij op zoek naar een ervaren PHP developer die gaat functioneren als een verlengstuk van de klant. Jij bent iemand die technisch complexe zaken met enthousiasme aanvliegt. Je bent in staat om aan meerdere projecten te werken en werkt graag met de nieuwste technieken. In deze functie werk je veel samen met front-end developers en stel je alles in het werk om grote verschillen voor de klanten teweeg te brengen. Verder ben jij iemand die graag zichzelf uitdaagt en die altijd de beste wilt

Bekijk vacature »

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Pagina: « vorige 1 2

Frank -

Frank -

23/08/2007 16:11:00
Quote Anchor link
Robert: 'Afgerond' is een status, net zoals dat 'testen' en 'aanmaken css' statussen zijn. Je zult ook nooit de status 'testen' krijgen en gelijktijdig 'afgerond' hebben. Een opdracht die is afgerond, ben je niet aan het testen. Neem 'afgerond' dus gewoon op in de tabel met statussen en klaar ben je.

betaald is een afgeleide van het ontvangen geld. Dat is wat je gaat registreren, inclusief de betaaldatum. Omdat het geld is ontvangen en gelijk is aan de afgesproken prijs, is er betaald. Dat is dus een berekend geheel.

Wanneer iemand van de 2500 euro slechts 1000 euro betaalt, heb je nog een bedrag van 1500 euro openstaan. Hier zul je dus achteraan moeten of het bedrag crediteren. Wanneer jij een TRUE of FALSE gaat gebruiken voor 'betaald', bestaat het risico dat jouw administratie niet klopt: Er is slechts een deel betaald, maar jij hebt per ongeluk 'betaald' op TRUE gezet. Nu zit er een gat in de administratie en ben je een corrupte database rijker.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
PHP hulp

PHP hulp

05/01/2025 17:39:54
 
Cedric

Cedric

23/08/2007 16:14:00
Quote Anchor link
@pgFrank
Het lijkt wel of je denkt dat ik niet zou controleren of het volledige bedrag betaald is... Op dit moment doe ik de hele administratie met een txt bestandje :P Ik denk wel dat dit al een grote vooruitgang is. Het is echt niet mijn bedoeling om dit hyperuitgebreid te maken en volledig te vertrouwen op het systeem. Zie het liever als een helpende hand voor mij en mijn klanten..
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Kees Schepers

kees Schepers

23/08/2007 16:16:00
Quote Anchor link
Meerdere statussen is dus WEL handig als je een overzicht wilt, hoe het project is verlopen. (welke datum welke status het heeft aangenomen).

Met een subquery kan je dan ook de laatste status krijgen :) (ofwel, huidige)
 
Cedric

Cedric

23/08/2007 16:19:00
Quote Anchor link
Ik kan ook meerdere statussen opgeven. Het interesseert mij eerlijkgezegd niet wanneer welk project die status aangenomen heeft.. Het is vooral voor de klant om te weten hoever het staat met zijn project en om de reeds betaalde projecten te kunnen downloaden. Voor mij is het dan handig om een overzicht te hebben over al mijn klanten, opdrachten, en inkomsten. Het is dus niet dat ik superuitgebreide statistieken wil ofzo. Die heb ik nu ook niet en het lukt ook prima.
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Frank -

Frank -

23/08/2007 16:21:00
Quote Anchor link
Tip: Gebruik gewoon een txt-bestand, een goede database lijkt mij (nog) wat te hoog gegrepen...

Ik geef het op.
 
Cedric

Cedric

23/08/2007 16:26:00
Quote Anchor link
Een goede database is subjectief.. Ik zou zo'n database zelf wel goed vinden. Ik heb eens naar die link gekeken over normaliseren. Aan het begin zag ik ook dat die db niet klopte en dat je meerdere tabellen nodig hebt. Dat doe ik trouwens ook, enkel voor dit project lijkt mij dit niet nodig (voor het geen wat ik wil bereiken).

Alleszins zeer bedankt om mij te proberen op de juiste weg te helpen. Als het afgeraakt laat ik het misschien nog door jullie testen :P Ik kan mij niet inbeelden dat het veel slechter werkt dan een systeem met meerdere tabellen. Je kan van mij nog niet verwachten dan ik alles goed doe he. Een keer dat dit mijn studies worden zal dat zeker beter gaan :) Ik ben tenslotte nog maar 14 hé
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Robert Deiman

Robert Deiman

23/08/2007 16:35:00
Quote Anchor link
@Cedric

Frank heeft wel gelijk hoor, zover had ik het nog niet bekeken, maar zeker ook met oog op de toekomst is het goed om de boel in zijn geheel volledig goed op te zetten.
Klanten kunnen met die statussen bijvoorbeeld zien hoe snel iets gaat, voor de betaling is het systeem van Frank betrouwbaarder, en je kan met een (wat ingewikkeldere, maar prima te maken!) query vanuit het in totaal betaalde bedrag van een klant van je bepalen welke dingen al zijn betaald, waarbij je natuurlijk begint bij de eerst gemaakte dingen weg te strepen.

Zo hou je voor jezelf een volledig overzicht en weet je altijd precies wat je nog krijgt/ tegoed hebt. Bovendien loop je dan het risico niet wat Frank je schetste.

Vergeet niet dat een simpele MySQL database te vergelijken is met een textbestand, alleen gemakkelijker bij te houden is! Wanneer je het goed opbouwt heeft een database als MySQL (andere varianten, met foreign keys -> Een sleutel die een link naar een andere tabel aangeeft, hebben dat niet zo, mits goed opgebouwd) wel enige meerwaarde tov een textbestand.

Voor wat betreft afgerond heeft Frank ook gelijk -> Zie het zo, je geeft voor een klant aan dat je bijvoorbeeld aan het slicen bent (daarna moet je nog coderen) de klant ziet dat dan op zijn overzichtspagina, vervolgens ga je coderen > andere status, en vervolgens ben je klaar en is de status afgerond. En aangezien je dus meerdere statussen hebt en meerdere cliënten (of meerdere opdrachten van eenzelfde cliënt) kunnen dezelfde status hebben -> Dus aparte tabel.

Op deze manier werkt het systeem sneller en efficiënter, plus dat het de betrouwbaarheid en precisie van het systeem een stuk beter maakt!! Het is maar net wta je zelf wil, maar je kan het het beste in 1 keer goed doen!
 
Cedric

Cedric

23/08/2007 16:40:00
Quote Anchor link
Ik wil het natuurlijk wel goed doen, alleen ontbreekt mij daar de juiste kennis voor. Ook zal het op de 'goede' manier ook véél langer duren om alles te maken. Het is zeker niet dat ik het niet goed wil doen, het is eerder dat ik het niet goed kan doen.
 
Robert Deiman

Robert Deiman

23/08/2007 17:03:00
Quote Anchor link
Als je de tips die wij je gaven meeneemt, de tutorial over normalisatie op PHPhulp goed doorleest en probeert te begijpen en dan een opzet maakt die je hier post, dan kunnen wij je wel helpen -> Initiatief ligt bij jou, we hgaan het niet maken voor je, maar we kunnen je wel de goede richting opsturen. Denk er maar eens over na, als je deze richting wel wat wilt gaan studeren of doen straks, dan kan je het beter nu goed leren, dan straks het verkeerde weer af te leren.
 
Cedric

Cedric

23/08/2007 17:06:00
Quote Anchor link
Ik ga mij er eens in gaan verdiepen, ik kan er gewoon niet tegen dat ik het mis doe :P En blijkbaar ben ik een van de enige omdat er zoveel op dit topic gereageerd wordt. Ik ga dat klantensysteem ideetje nog even langs de kant schuiven en op mijn gemak die tutorial lezen. Dan ga ik nog wel s een paar tabellen posten. Ik moet het gewoon goed doen :D
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Robert Deiman

Robert Deiman

23/08/2007 17:38:00
Quote Anchor link
Nee, je bent wel een van de weinigen die meteen met een database zichzelf zo in het diepe gooit.
 
Cedric

Cedric

23/08/2007 17:41:00
Quote Anchor link
Ik denk dat ik stilaan begin te verstaan hoe jullie willen hoe ik het doe. Ik ga ff een voorbeeldje geven en zeggen jullie dan maar of het juist is :P

software
-----------
id
pid
naam

status
--------
id
pid
naam
datetime

Dan voor een opdracht de status opvragen adhv het pid. Als ik het goed heb kan ik dan meerdere statussen per item hebben en dan krijg je een overzicht met tijd erbij (zoals iemand hier al gezegd heeft). Voor de software kan ik dan ook alle programma's ophalen adhv het id van het item.

Kom ik een beetje in de buurt of ben ik op de juiste weg??
 
Klaasjan Boven

Klaasjan Boven

23/08/2007 17:48:00
Quote Anchor link
Ja alleen het zal uiteindelijk veel uitgebreider worden. Bedenk het volgende:
Als je data dubbel opslaat (muv id's) is je DB nog niet uitgenormaliseerd.

Klaasjan
 
Frank -

Frank -

23/08/2007 17:49:00
Quote Anchor link
Ok, ben blij dat je de draad hebt opgepakt!

Dan de vragen: Wat is 'pid' in de tabel 'software' ? In deze tabel staan alleen de softwarepakketten die jij gebruikt. Er is in deze tabel geen enkel verband met enig ander gegeven/tabel.

Dezelfde vraag voor 'status', wat doet 'pid' in deze tabel? En 'datetime' wat doet deze daarin? In deze tabel komt bv. 1x de waarde 'testen' te staan, en dat is het wel. Andere tabellen zijn echter aan deze tabel gekoppeld, en daarin kun je een datumtijdstempel van een status opgeven. Dat kan onmogelijk in de tabel 'status'. Deze tabel wordt uitsluitend gebruikt om een waarde te selecteren.

Maar, wanneer je gaat normaliseren, is het 'verboden' om in tabellen te denken. Dat gaat helemaal fout! Normaliseren doe je door op papier de diverse soorten data te onderkennen, niet door in tabellen te gaan denken.

Pas wanneer je helemaal klaar bent met normaliseren, ga je kijken hoe de tabellen eruit komen te zien. En zover ben je nog lang niet.
 
Cedric

Cedric

23/08/2007 17:50:00
Quote Anchor link
@klaasjan boven
Euh, ik ben al blij dat je zegt dat ik in de goeie richting ga, maar dat is ook het enige wat ik uit je post snap. Wat bedoel je precies?

@pgfrank
pid = pairid, de status moet toch gelinkt worden aan het item?
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Frank -

Frank -

23/08/2007 17:54:00
Quote Anchor link
Wat ik bedoel? Gooi het idee van tabellen weg en ga eerst normaliseren.

Het heeft geen enkele zin om stap 20 uit te voeren wanneer je stap 1 t/m 19 nog niet hebt gedaan, laat staan begrijpt wat daar wordt gedaan. Je loopt hééél ver voor de muziek uit en daar ga je spijt van krijgen.

Stop dus met denken in tabellen, begin met denken in de soorten data die in jouw systeem voorkomen.

klantnaam, userid, status, softwarepakket, dat zijn de soorten data waar we het over hebben. Met normaliseren ga je al dit soort gegevens benoemen en de onderlinge verbanden aanleggen.

Quote:
@pgfrank
pid = pairid, de status moet toch gelinkt worden aan het item?
Klopt, maar dat kan onmogelijk in de tabel 'status' gebeuren. Dat kun je dus ook niet in deze tabel opslaan.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Cedric

Cedric

23/08/2007 18:00:00
Quote Anchor link
Dit komt allemaal voor in het systeem:

type werk
prijs
status
software
opmerkingen
datum wanneer een nieuwe status is toegepast
datum wanneer het project gestart is
userid
gebruikersnaam
wachtwoord
ipadres
sleutel

Denk dat dit is wat ik zoal nodig heb. Nu moet dit in tabellen gezet worden?
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
Frank -

Frank -

23/08/2007 18:08:00
Quote Anchor link
Quote:
Nu moet dit in tabellen gezet worden?
Nee, dat ga je normaliseren.

Print die tutorial eens uit en ga stap voor stap de verschillende onderdelen uitwerken. Het is nog lang geen tijd om de tabellen aan te gaan maken! Ga er voor zitten, normaliseren is niet eenvoudig maar wel een onmisbare basis.

Heb niet de illusie dat je dit in een paar uur/dagen doorhebt, daar echt wel meer tijd overheen.

Edit: Ik kan even geen goede vergelijking vinden, maar met een beetje beeldspraak...

Jij wilt je vrienden verrassen met een zelfgemaakte taart en jij hebt nog nooit een taart gebakken. Jij begint nu de gebaksschoteltjes, de vorkjes en een groot mes en vraagt mij hoe je de taart moet snijden. Welke taart?

Je hebt nauwelijks een idee wat voor een taart jij wilt gaan bakken, hebt de ingredienten niet in huis, weet niet hoe de oven werkt, laat staan waar de bakvorm ligt en of hoe de mixer werkt... Pak het recept er bij, zoek alle ingredienten bij elkaar en ga 1 voor 1 de boel verwerken. Wanneer je daarmee klaar bent en de boel keurig hebt gebakken, dan wordt het pas tijd voor het betere snijwerk. Zo ook met jouw database en zijn tabelletjes.

Eerst bakken en daarna pas snijden!
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Cedric

Cedric

23/08/2007 18:22:00
Quote Anchor link
Nuja, die vergelijking is wel wat overdreven :P Ik heb toch wel al meerdere succesvolle aplicaties gemaakt. Maar ik ga er wel wat moeite voor doen op het goed te leren doen. Ik ga dat dan s uitprinten en alle stappen 1 voor 1 uitvoeren. Nu ga ik het ff hierbij laten want ik ben hier nu al veel te lang mee bezig :)
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.