uitleen geschiedenis

  • Onderwerp starter Onderwerp starter Jpee
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.
Hoi JPee,

Je hebt er lang genoeg op gewacht, maar hier is dan toch een (hopelijk) bruikbaar basisstramien waar je wat mee kunt.
Zoals ik eerder al zei, mankeerde er nogal wat aan het oorspronkelijke concept, en in deze versie is dat nog steeds niet helemaal rechtgezet. Mijn bedoeling was dan ook niet om een compleet systeem voor je te maken, maar een (min of meer) degelijke basis neer te zetten waar je op kan voortborduren.

Het formulier dat nu standaard opent, is gebaseerd op de tabel <Uitleen geschiedenis>, en kun je gebruiken om uitleentransacties vast te leggen. Waar het uiteraard ook om draaide. De tabel waarmee je dat probeerde te doen, tblBoek, is eigenlijk bedoeld om je artikelenvoorraad bij te houden en bij te werken. Uiteraard kun je daar op voort borduren met het formulier <frmBoek>.
De tabel ,Leveranciers-CP> bevatte nogal wat dubbele data, en was daardoor ongeschikt als leverancierstabel. Daar heb ik een nieuwe tabel voor gemaakt.

Verder kan er nog wel het e.e.a. worden geautomatiseerd; de status <Uitgeleend> bijvoorbeeld zou je niet zelf hoeven te selecteren, die is immers afhankelijk van a: een uitleendatum, en b: een terugbrengdatum. Ik heb een kleine aanzet gegeven, maar je kunt daar nog wel wat verder mee gaan.

Heb je vragen? Je kent de weg...

Michel
 

Bijlagen

Michel het ziet er schitterend uit maar er is nog steeds een probleem hij bewerkt de records in tabel uitleen geschiedenis dus krijg ik nooit een geschiedenis. ik weet niet of je dat kan aan passen maar veder zag het er schitterend uit :thumb::thumb::thumb::thumb:
 
Hoi JP,

Dat mag je nog even uitleggen, want ik snap niet helemaal wat je bedoelt. Het formulier is nu inderdaad gebaseerd op de tabel <Uitleen geschiedenis>, en dat houdt in dat je dus een geschiedenis opbouwt van uitleentransacties. Daarbij moet je uiteraard onderscheid maken tussen het maken van Nieuwe uitleenrecords en het aanpassen van bestaande records.

Zoals ik het zie, moet je tenminste twee keer in een uitleenrecord zijn, namelijk eenmaal om een item uit te lenen, en eenmaal om de uitleentransactie af te sluiten. In de tussenliggende periode is het item uitgeleend, en staat de uitleenstatus op Ja.

Een aanpassing die je zou kunnen maken, is bijvoorbeeld: een apart formulier voor uitleentransacties, waarbij je de formulier-eigenschap <Gegevensinvoer> op Ja zet, en de keuzelijst met items baseert op artikelen waarvan de Uitleenstatus Nee is, en een apart formulier om retouracties te verwerken, waarbij je de optie <Gegevensinvoer> op Nee zet, en de optie <Toevoegingen toestaan> ook op Nee. Hierbij zou je dan als bron een query kunnen gebruiken waarin de Uitleenstatus Ja is, zodat je alleen de records ziet van de uitgeleende artikelen.

Ik hoop dat het een beetje duidelijk is? Ik heb een aangepaste versie met deze uitwerking klaargezet.

Michel
 

Bijlagen

Laatst bewerkt:
beste Michel ik heb een klein probleempje met het uitlenen steeds als ik iets uit leen. dan komt er in het keuzen lijst je een product bij hoe kan ik dat aanpassen ???
verder ben ik er hartstikke blij mee:thumb::thumb::thumb::thumb::thumb:

hopelijk heb je een antwoord zie bijlage
 
Ik heb een paar nuttige aanpassingen gemaakt, maar e.e.a. is nog niet helemaal af, dus ik zal 'm vanavond wel voor je neerzetten!

Michel
 
Laatst bewerkt:
wanneer heb je de aangepaste versie af ????????????
 
Afmaken is uiteraard een klusje dat je zelf mag doen.. ;) Wel staat er nu een versie die denk ik wel een aardige basis is om op voort te borduren.

Grootste aanpassing: er is nu een tabel Artikelen, die tussen de tabel tblBoek en tblUitleen inzit. Reden: je zult wel van elk artikel meerdere exemplaren hebben. Die vallen uiteraard allemaal in eenzelfde categorie, maar hebben wel een eigen artikelID. In de tabel Uitleen wordt dit artikelnummer opgeslagen.

In de Uitleentabel houd je bij wanneer welk artikel is uitgeleend aan welke persoon; tevens moet je in de tabel Artikelen bijhouden of een artikel in huis is of niet. Beide acties zijn geautomatiseerd in het formulier. Kijk maar in de verschillende codeblokken wat er allemaal gebeurt.

Ik heb een aparte kalender op het formulier gezet om datums te selecteren voor uitleen en terugbrengen, om zodoende makkelijker code op het formulier te plaatsen. Je krijgt een kalender, als je in een datumvak klikt.
De rest moet zich eigenlijk vanzelf wijzen.

M.b.v. keuzelijsten in de koptekts kun je wat makkelijker een artikel selecteren; kijk maar of dat handig is of niet. Overige vragen zie ik wel verschijnen...

Michel
 

Bijlagen

kijk hier heb ik wat aan ik ga eerst een goed bekijken :thumb::thumb::thumb::thumb::thumb::thumb::thumb:
 
Michel

hartelijk dank dit is perfect op een klein ding na wat ik hoop dat ik het zelf verkeerd doe

hoe moet ik mijn producten er in zetten wat als ik het nu doet moet ik het in 2 verschillende tabellen invoeren en dat is niet echt makkelijk hoe kan ik dat makkelijk oplossen

met vriendelijke groet

Frits
 
Hallo Frits,

Je hebt een beetje gelijk als je stelt dat je nu twee keer een product moet invoeren, maar eigenlijk ook weer niet..

In de oorspronkelijke db had je één tabel voor producten, en uitleengegevens. Dat is een opzet die niet erg handig is, omdat je geen goed overzicht krijgt van de produkten die je hebt, en de status van de uitlening. Daarom heb ik e.e.a. gesplitst, en wel in een tabel met produkten (oorspronkelijke naam is aangehouden: tblBoek), een tabel met uitleengegevens, en een nieuwe tabel met artikelen.
De bedoeling hierachter is, dat je bij vrijwel elke uitleenvariant, verschillende produkten hebt, en van elk produkt een aantal exemplaren. Het zijn de losse exemplaren die je uitleent, maar van je produkten wil je uiteraard ook verschillende gegevens kunnen bijhouden, zoals bijvoorbeeld een prijs.

Als je als produkt een Hoepel neemt, dan heb je misschien wel 10 hoepels in voorraad om uit te lenen. Die kun je, in de huidige db, allemaal bij dezelfde leverancier bestellen, en die hebben dan allemaal dezelfde (verhuur)prijs. Ook geldt voor het produkt Hoepel een minimum voorraad, en een maximum voorraad. Alle gegevens die voor een produkt gelden, sla je op in de tabel Produkt.

Voor de artikelen geldt hetzelfde: ook hier sla je de relevante gegevens op. Je verhuurt dus één hoepel uit de produktgroep Hoepels, dus je wilt van die ene hoepel weten wanneer die is uitgeleend, en wanneer die terugkomt. Bij het artikel Hoepel hoef je echter niet te weten wat de minimum voorraad is, en wat de verhuurprijs. Die gegevens heb je al in de tabel Produkten, en zijn voor alle artikelen hetzelfde. Die hef je dus niet elke keer opnieuw in te voeren in de tabel Artikelen.

Wat je dus nog moet doen, is een Hoofdformulier maken waarop je Produkten kunt invoeren en wijzigen, en subformulier voor de Artikelen. Je krijgt dan een subformulier op het hoofdformulier voor de verschillende exemplaren van je produkt.

Uiteraard is het zinvol om goed te kijken naar de gegevens die je in de verschillende tabellen opslaat, ik heb daar weinig aan gedaan, eigenlijk alleen wat nodig was om het systeem draaiende te krijgen. Er kan dus nog veel verbeterd worden.....
Je kunt je bijvoorbeeld afvragen, of je per produkt één leverancier wilt, of dat artikelen bij verschillende leveranciers vandaan mogen komen. In het eerste geval kun je de leverancier koppelen aan de tabel Produkten, in het andere geval moet je de leverancier opslaan in de tabel Artikelen.
Dit soort keuzes bepaalt uiteindelijk de flexibiliteit van je database. Om dat later te moeten aanpassen, kan vaak veel meer werk zijn, dan bij het begin rustig nadenken over de keuzes die je wilt maken, en de consequenties die die keuzes hebben!

Mocht je verder nog hulp nodig hebben, dan weet je waar je terecht kunt!

Michel
 
beste Michel ik heb wat ik van je heb gekregen weer bij het voledige bestand toe gevoegd maar ik kom nog op een ding wat ik niet echt handig vindt. als ik het product in voer moet ik volgens jouw eerdere bericht
Hallo Frits,

Je hebt een beetje gelijk als je stelt dat je nu twee keer een product moet invoeren, maar eigenlijk ook weer niet..

In de oorspronkelijke db had je één tabel voor producten, en uitleengegevens. Dat is een opzet die niet erg handig is, omdat je geen goed overzicht krijgt van de produkten die je hebt, en de status van de uitlening. Daarom heb ik e.e.a. gesplitst, en wel in een tabel met produkten (oorspronkelijke naam is aangehouden: tblBoek), een tabel met uitleengegevens, en een nieuwe tabel met artikelen.
De bedoeling hierachter is, dat je bij vrijwel elke uitleenvariant, verschillende produkten hebt, en van elk produkt een aantal exemplaren. Het zijn de losse exemplaren die je uitleent, maar van je produkten wil je uiteraard ook verschillende gegevens kunnen bijhouden, zoals bijvoorbeeld een prijs.

Als je als produkt een Hoepel neemt, dan heb je misschien wel 10 hoepels in voorraad om uit te lenen. Die kun je, in de huidige db, allemaal bij dezelfde leverancier bestellen, en die hebben dan allemaal dezelfde (verhuur)prijs. Ook geldt voor het produkt Hoepel een minimum voorraad, en een maximum voorraad. Alle gegevens die voor een produkt gelden, sla je op in de tabel Produkt.

Voor de artikelen geldt hetzelfde: ook hier sla je de relevante gegevens op. Je verhuurt dus één hoepel uit de produktgroep Hoepels, dus je wilt van die ene hoepel weten wanneer die is uitgeleend, en wanneer die terugkomt. Bij het artikel Hoepel hoef je echter niet te weten wat de minimum voorraad is, en wat de verhuurprijs. Die gegevens heb je al in de tabel Produkten, en zijn voor alle artikelen hetzelfde. Die hef je dus niet elke keer opnieuw in te voeren in de tabel Artikelen.

Wat je dus nog moet doen, is een Hoofdformulier maken waarop je Produkten kunt invoeren en wijzigen, en subformulier voor de Artikelen. Je krijgt dan een subformulier op het hoofdformulier voor de verschillende exemplaren van je produkt.

Uiteraard is het zinvol om goed te kijken naar de gegevens die je in de verschillende tabellen opslaat, ik heb daar weinig aan gedaan, eigenlijk alleen wat nodig was om het systeem draaiende te krijgen. Er kan dus nog veel verbeterd worden.....
Je kunt je bijvoorbeeld afvragen, of je per produkt één leverancier wilt, of dat artikelen bij verschillende leveranciers vandaan mogen komen. In het eerste geval kun je de leverancier koppelen aan de tabel Produkten, in het andere geval moet je de leverancier opslaan in de tabel Artikelen.
Dit soort keuzes bepaalt uiteindelijk de flexibiliteit van je database. Om dat later te moeten aanpassen, kan vaak veel meer werk zijn, dan bij het begin rustig nadenken over de keuzes die je wilt maken, en de consequenties die die keuzes hebben!

Mocht je verder nog hulp nodig hebben, dan weet je waar je terecht kunt!

Michel

moet ik dan een subformulier inbouwen eerlijk gezegd hoef dat artikelen gedoe er niet in voor mij alleen de producten is genoeg ik weet niet of je dat zo kan wijzigen.
anders zoek ik graag willen dat bij producten invoeren dat het product nummer van het hoofdform gelijk ook in het subform word toegevoegd

p.s : zie link voor het volledige bestand
http://www.mediafire.com/download.php?jmijegommmt
met vriendelijke groet

frits
 
Als ik het goed begrijp, wil je dus een catalogus samenstellen waarbij je van alle artikelen één exemplaar hebt? In dat geval kan er inderdaad een tabel tussenuit, wat de structuur uiteraard simpeler maakt. Als dat niet zo is, raad ik toch echt aan om met twee tabellen te werken. Ook al omdat het voor de opbouw van de db en de formulieren echt niet uitmaakt of je de produktgegevens scheidt.

De constructie met hoofd- en subformulier hoeft voor het invoeren helemaal geen extra werk bij het invullen op te leveren, als je de opzet maar logisch opzet. Ik zal je voorbeeld proberen aan te passen en de tabel Artikelen er tussenuithalen, en zodanig klein te maken dat ik hem weer terug kan zetten....

Overigens snap ik het probleem niet dat het produktnummer niet wordt overgenomen in het subformulier, want voor zover ik dat nu kan zien, gaat dat prima! En dat hoort ook zo te gaan bij een hoofd/subformulier. Dat komt, doordat je het sleutelveld uit de hoofdtabel koppelt aan het relatieveld in het subformulier. Alleen als je die koppeling weghaalt, zal Access het produktnummer niet overnemen. Doordat deze link automatisch door Access wordt gelegd, kun je het koppelveld op het subformulier zelfs rustig verbergen, want dat zal op het subformulier altijd hetzelfde zijn als het produktnummer op het hoofdformulier, dus het heeft niet zo veel zin, en bespaart ruimte, om het zichtbaar te hebben op het subformulier.

Michel
 
Laatst bewerkt:
Kleine aanpassing aan uitleen formulier

Beste OctaFish

het is weer een tijdje geleden dat ik hier met je over gesproken heb maar ik heb een vraagje?? Het uitleen formulier dat je me het gestuurd heb blijk in de praktijk niet zo handig te zijn. De gebruikers van het programma weten bij het uitlenen meestal het productnummer wel maar niet de juiste omschrijving. mijn vraag is kan jij dat omdraaien zodat je bij het uitlenen nadat je de juiste Categorie heb geselecteerd het product nummer kan invoeren en dat alle overige velden ook nog worden ingevuld.

ik hoop zo snel mogelijk een antwoord terug te krijgen.

met vriendelijke groet Frits
 

Bijlagen

Hoi Frits,

Ik zal er vanavond wel even naar kijken. Gebruikerservaringen zijn altijd een goed referentiepunt, als het gaat om je ontwerpen...

Michel
 
Ik heb de aanpassing voor je gemaakt, zodat je nu op Produktnummer kunt kiezen. Tevens heb ik de produktlijst nu standaard gevuld met alle produkten, zodat je niet eerst een categorie hoeft te selecteren. Als mensen toch al de code weten, dan scheelt dat weer een stapje. Mag uiteraard nog wel...

Michel
 

Bijlagen

beste OctaFish

het is een hele verbetering maar er is nog een klein probleempje.
als het product het geselecteerd krijg je bij het artikelnummer de productnaam te zien in plaats van het productnummer. verder krijg ik de overige data niet meer te zien.
hopelijk is dit makkelijk op te oplossen.

met vriendelijke groet

frits
 
Laatst bewerkt:
krijg je bij het artikelnummer de productnaam te zien in plaats van het productnaam

Lees eens goed wat je hierboven schrijft. Wat bedoel je nou?
 
Gelukkig snap ik wel het verschil tussen de productnaam en het productnaam :)

Ik was vergeten om de afhankelijke kolom aan te passen, wat uiteraard wel moet als je kolommen omwisselt.
Deze zou het beter moeten doen...

Michel
 

Bijlagen

beste OctaFish

het is weer een tijdje geleden dat ik contact met je hebt opgenomen maar ik ik zit met een probleem. ik het de laatste wijzigingen in het programma verwerkt maar ik kom tegen iets raars tegen. als ik een geselecteerd product inneem dan neemt hij een ander product in. ik hoop dat jij de oplossing hier op weet want ik ben al een tijdje hier naar opzoek.

groet frits
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan