16. august 2004 - 14:17Der er
10 kommentarer og 2 løsninger
Moms udregning
Er meget meget GRØN i Access Har et feldt i en tabel hvor jeg taster pris excl. moms ind, vil så gerne have overført beløbet incl. moms i det felt som jeg har til det. Også gerne omvendt, altså fra incl. moms til excl. moms Vil blive meget glad for lidt udførlig hjælp
En tabel er kun beregnet til at lagre data i. I forespørgsler kan du indsætte kriterier der begrænser posterne samt foretage beregninger m.v. det er dårlig skik at lagre disse beregninger i tabellerne, idet det ikke er nødvendigt og giver redundante data.
Når du har indtastet din pris i tabellen, kan forespørgslen beregne momsen. Du åbner din db i databasevinduet > Fanen Forespørgsler > Ny. Forespørgslen åbner nu i Designvisning og du vælger den tabel der indeholder feltet med prisen. Dobeltklik på feltet med pris og Access lægger feltet ned i forespørgselsgitteret. Du kan trække det antal felter ned som du skal bruge, men nøjes i første omgang med prisen. Luk forespørgslen og giv den et navn.
Åbn forespørgslen igen i Designvisning. Sær markøren i den tomme kolonne ved siden af prisen. Indtast:
[Navn på prisfelt]*0,25
Kør forespørgslen ved at trykke på det røde udråbstegn øverst på menulinien. Du vil nu se, at forespørgslen beregner din moms og har døbt dit felt "Udtryk1"
Åbn igen forespørgslen i Designvisning og sæt markøren til højre for Udtryk1 og indtast:
[Navn på prisfelt]+[Udtryk1]
Kør forespørgslen og du har nu:
Pris excl. moms Moms Pris incl. moms.
Og sådan kan du blive ved med at foretage beregninger i forespørgsler f.eks avance m.v., uden at tilføje nye felter til tabellen.
Hej Mugs og tak for dit svar, nu mangler jeg bare at flytte pris incl moms til mit felt i tabellen hvor det skal bruges, som jeg skrev, jeg er lyssegrøn
Tabellen danner nogle sider i en shopløsning. Disse sider henter data i min tabel. Nok ikke den bedste løsning jeg nu engang har valgt, men det kan jeg desværre ikke ændre nu
OK - Hvis du i spørgsmålet havde defineret dette, havde jeg aldrig svaret. Jeg har intet forstand på internettet, PHP, ASP eller hvad I nu arbejder med. Hvis du laver beregningerne i en formular i Access kan du gøre som ferdinand.k foreslår.
Evt. kan du lave en opdateringsforespørgsel, og sende værdierne ind i din tabel.
Mugs, det er jeg ked af at jeg ikke fik det med, troede ikke det havde nogen betydning idet at min asp side blot henter den værdi som nu er i feltet i tabellen. Men kan nok få brug for dit svar til andre opgaver.
Hvis du eller ferdinand.k vil skære ud i "pap" som du gjorde i dit første svar, hvor jeg skal taste =[PrisExclMoms] *1,25 ind, så er jeg meget lykkelig.
ferdinand.k's forslag indebærer, at du har en formular i Access der indeholder feltet med din pris. I dette felt i BeforeUpdate hændelsen indtaster du ferdinand.k's forslag.
Ferdinand.k's forslag kan jeg så ikke bruge idet jeg ikke har en Access formular. Har arbejdet lidt med en opdateringsforespørgsel, men så for at få udfyldt feltet incl. moms skal jeg ud af min tabel og klikke på opdageringsforespørgsel, kan den ikke gøre det af sig selv hver gang jeg taster et tal ind i excl. moms.
Mugs, har jeg forklaret problemet godt nok, fordi jeg tror ikke det er så kompliceret endda.
"kan den ikke gøre det af sig selv hver gang jeg taster et tal ind i excl. moms"
Du har kun ringe muligheder for at lave en beregning på tabelniveau, for ikke at sige:
Det kan ikke lade sig gøre.
Nu skal man jo være forsigtig med at sige hvad der kan lade sig gøre, og specielt hvad der ikke kan. Men i dette tilfælde føler jeg mig på ret sikker grund.
Jeg forstår det nu ikke helt rigtig at det ikke kan lade sig gøre, idet jeg f.eks kan lave en forespørgsel med de rigtige data. At Access så ikke selv kan ajourføre et felt i en tabel med en værdi fra forespørgslen. Men OK du kender programmet, det gør jeg ikke. Men 1000 tak for hjælpen. Hvis du måske vil tjekke dette link http://www.shoppen.nu/mall/dynamic.asp?fmcategory=Laptop&fmname=&Search=Search , kan du måske bedre se hvad jeg mener eller skal bruge det til, eller måske har en ide til en anden for for opdatering, kan du give mig en mail sten@shoppen.nu
Jeg forstår udmærket hvad du mener, og det har ikke rokket ved min overbevisning om, at du ikke kan foretage en sådan beregning på tabelniveau.
Men jeg kan heller ikke forstå, hvorfor du ikke kan lave en formular og lade beregningen foretage i denne.
Når du vedligeholder din database, taster du jo data direkte ind i en tabel. En formular er et interface mellem databasen og brugeren, og i en sådan formular kan du lave alle beregninger du vil, og gemme data i tabellen til anden brug. Din hjemmeside er jo fuldstændig ligeglad med, hvordan data er havnet i tabellen. Så mit råd er nu som iaftes:
Lav en formular til administration af din db og lad beregningen foregå her.
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.