10. januar 2009 - 18:02Der er
17 kommentarer og 1 løsning
Varestryring i Acces
Hej alle,
Jeg har en mindre virksomhed hvor jeg skal lave noget lagetstyring til.
På nuværende tidspunkt benytter jeg excel hvor jeg laver alle mine opdateringer og beregninger i. Min erfaring er dog at der let sker en del fejl. Specielt nu hvor mit data strækker sig over et par bliver det let meget tungt og uoverskueligt.
Min tanke er derfor at opbygge en database fra grunden i acces. I den forbindelse har jeg en række spørgsmål.
1. Er acces en god løsning eller er der bedre systemer? Det skal her nævner at systemet ikke må være dyrer end acces.
2. Jeg har forstået (tror jeg) det basale system i acces med at man kan lave relationer. Jeg har dog et problem når man skal blande tabeller med datoer og tabeller som beskriver indholdet. For at klaregøre mit problem vil jeg forsøge at illustrer tre tabeller som jeg ønsker at kombinerer på forskellige måder.
Tabel 1: Denne tabel viser lagerbeholdningen for hver vare hver dag og ser således ud: Dato Vare 1 Vare 2 Vare 3... 01-01-2009 500 250 800 02-01-2009 600 250 300
Tabel 2: Tabel 2 viser prisen for de pågældende vare hver dag og ser således ud. Dato Vare 1 Vare 2 Vare 3... 01-01-2009 1000,- 500,- 200,- 02-01-2009 1000,- 400,- 300,-
Tabel 3: Tabel 3 giver information omkring de pågældende varer og ser således ud: Vare Type Leverandør Land Vare 1 A 1 1 Vare 2 B 1 1 Vare 3 A 2 2 Vare 4 C 3 3
Jeg ønsker at kombinerer disse tre tabeller således at jeg kan få de to følgende tabeller:
Tabel A: Tabellen skal angive hvor meget der er af hver type af vare på lageret på et pågældende tidspunkt. Dvs den skal kombinerer tabel 1 og 3 så den ser således ud: Dato Type 1 Type 2 Type 3 01-01-2009 02-01-2009
Tabel B: Denne tabel skal vise mængde på lageret, pris, type, leverandør og land for en bestemt dato. Den kombinerer således alle tre tabeller. For den 2. januar skal den således vise
Vare Antal Pris Type Leverandør Land Vare 1 600 1000,- A 1 1 Vare 2 250 400,- B 1 1 Vare 3 300 300,- A 2 2
Det blev et meget langt spørgsmål. Jeg håber I kan hjælpe og at det kan løses. På forhånd tak.
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Så vidt jeg kan forstå mener du, at jeg skal samle alt data i en tabel eller? Det vil jeg helst undgå (medmindre det er dårlig løsning selvfølgelig) fordi jeg får noget af data fra en ekstern kilde. Det jeg lidt havde håbet på man kunne var, at lave en relation mellem de tre tabeller således man kan benytte sql til at lave to forespørgsel så man får hhv. tabel A og B. ved at kombinerer de tre tabeller.
Jeg glemte vist at bemærke at jeg bruger acces 2007. Ved ikke om det gør en forskel.
Min forklaring er vist ikke helt klar omkring tabel A. Tabel A skal vise den samlede mængde af hver type ved alle datoer. Dvs den skal se således ud:
Dato Type A Type B Type C 01-01-2009 02-01-2009
Søjlen med type A skal således indeholde summen af beholdningen af varer som er af type A. Dvs summen af vare 1 og vare 2 der er de eneste varer af type A.
Jeg har kunnet finde mange gode lagerstyringsprogrammer på nettet. Det som jeg ikke kan finde er et som også har dato med. Det er meget vigtigt for mig at min database ikke kun er et nutidsbillede af hvad der er på lageret, men at jeg kan også historisk kan se hvad der præcist har været på lageret til alle datoer.
Er der nogen som kan hjælpe mig med det specifikke problem
Oppe til højre Downloads og rul ned til "Historik på dine tabeller".
Synes godt om
Slettet bruger
11. januar 2009 - 13:14#9
Indtaster du selv data i tabel1?~)
Synes godt om
Slettet bruger
11. januar 2009 - 13:16#10
Hvis du gør det, så kan du bare lave en forespørgsel, som finder maks dato, grupperer på vare og som har <=forms!DinFormular!DitDatofelt som kriterie under din maks dato!~)
Synes godt om
Slettet bruger
11. januar 2009 - 13:18#11
Hvis det er en udregning, så brug en forespørgsel til at finde summeringerne og relater til den i den forrige forespørgsel!~)
Synes godt om
Slettet bruger
11. januar 2009 - 13:42#12
...jeg har desværre ikke tid lige præcis nu, men jeg tror du skal have lidt hjælp med din tabelstruktur....
Det ser ud til at du kun skal bruge:
LagerTabel: idLager (autogeneret, primærnøgle) Dato Vare Antal Pris (double) (Med skiftende priser, så mener jeg det er en fordel at "stemple" prisen ind i lagertabellen, når der lagerlægges, medmindre der nedskrives ved prisfald... og det så bare er den gældende pris, der giver lagerværdi)
VareTabel: idVare (autogeneret, primærnøgle) Vare Type Leverandør (Pris) (hvis du bare vil opdatere den enkelte pris manuelt ellers skal du have en separat pristabel, som vil hedde: idPris, Dato, Vare, Pris)
...under alle omstændigheder, så er disse tabeller nok til at lave et datagrundlag, som ved hjælp af forespørgsler kan give dig de oplysninger du ønsker!~)
måske senere idag eller en af de nærmeste dage, kan jeg kigge på din db, hvis det er nødvendigt!~)
spg.eksperten@gmail.com
Synes godt om
Slettet bruger
11. januar 2009 - 13:44#13
Det er også relevant at se på dine eksterne data, så du bare kan importere dem (eller copy/paste!~)
Det eneste problem jeg har er at det måske bliver lidt overskueligt i idLager fordi jeg har omkring 30 varer som skal prisfastsættes hver dag. Med din foreslåede opstilling skal jeg gentage hver dato 30 gange. Tror du det er den bedste både at gøre det på? ELlers tusind tak for hjælpen.
Du kan i VBA kopiere en record og så blot skrive prisen. spg foreslår at prisfeltet i lagertabellen skal være af typen double. Hvorfor? det bør da være en currency.
Det lyder smart. Jeg får priserne fra en ekstern kilde hver dag. Dvs. jeg først får priserne ind i excel og herefter vil jeg så kopiere dem ind i acces. Det kan man gøre ved at oprette en kæde til det pågældende ark eller?
Du kan godt oprette en kæde eller hente dit Excel ark ind som en tabel. Eller importere dit excel ark med koden docmd.transferspreadsheet. Evt. lav en makri og eksperimenter lidt med den.
Prøv at kigge på et program der hedder Makapor på www.makapor.dk Det indeholder bl.a. lagerstyring.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.