Avatar billede fabian Nybegynder
16. november 2002 - 13:54 Der er 3 kommentarer og
2 løsninger

Optælling af fakturanr.

Problemet er kort og godt at læse det seneste fakturanr. fra en (access) database, opskrive det med 1 og læse dette nye nummer. Det volder mig store problemer.
Fakturanummeret skal selvfølgelig defineres i en database, så det altid bliver fortløbende og jeg skal kunne starte med et vilkårligt nummer, altså ikke 0 (nul).
Nummeret skal læses fra sidste post i sidste felt, inden det opskrives (og derefter læses), fordi en ordre jo godt kan indeholde flere forskellige varer, mens fakturanummeret jo kun skal opskrives med 1.
Se et forklarende eks. på http://ewan.dk/seeit/
Muligvis er det ikke noget voldsomt problem, men jeg har store kvaler med det, derfor max. pt.
Avatar billede kube Nybegynder
16. november 2002 - 14:01 #1
du kan da bare definere databasen til at starte med det nummer du vil og derefter autoincrementere det!
Avatar billede fabian Nybegynder
16. november 2002 - 14:05 #2
Jamen, problemet er jo at en ordre vil kunne indeholde flere varer. Vil det så ikke indebære at fakturanummeret pludselig ryger 8(?) numre op på en enklet ordre?
Og hvad skal jeg skrive for at få den til at læse sidste post i sidste felt?
Avatar billede hnteknik Novice
16. november 2002 - 19:15 #3
Problemet løser du med relationer:

en tabel, som indeholder fakturaen: hvem , hvornår etc.
en under tabel som indeholder dine ydelser, hvor der udover et løbenr også er en relation til til hovedfakturanummeret.

Hvis du ikke har autonr. på dit faktura system, så forespørg på det største fakturanr, du har f.eks. 2002-11-17-011: 011 er det største løbenr pågældende dag og læg så en til ( og husk at gemme straks, inden en anden har lavet samme forespørgelse.

Henrik
Avatar billede fabian Nybegynder
16. november 2002 - 21:38 #4
hnteknik, jeg fandt selv ud af at lave en undertabel, men jeg har vist gjort det på en anden måde end du foreslog (Virkeligt simpelt..!). Ikke desto mindre virker det nu (uden relationer..(?) ;-)

Jeg tillader mig at give kube 25pt for at have svaret (selvom jeg ikke brugte det). Du får resten for at komme nærmest på den løsning jeg selv fandt.

Sluttelig. Gider du tage et kort kik og se om jeg har gjort noget der vil give bagslag? jeg har lagt det på samme link http://ewan.dk/seeit
Avatar billede hnteknik Novice
17. november 2002 - 16:18 #5
>>fabian - jeg havde lige skrevet en længere svade, men pist væk. Eksperten kører vist ikke helt optimalt.

Kort igen:

lav en main tabel faktura detaljer og et indeks faknr
lav også en subtabel faktura_sub med ordredetaljer og en fremmednøgle faknr. Lav i Access en relation 1 main til mange sub. Afkryds update og delete ( Hvis du sletter en main faktura sletter du også subposter, ændrer du faktura nr i main ændrer du også i sub etc. - tingene er i relation til hinanden).

Jeg har ikke noget faktura halløj kørende på nettet men hvis jeg skulle lave et - kort:

1 -Kunden har udfyldt ordrer via en ASP form og sender formindhold
2 -eksekver en (select max(faknr) as sidstefaknr from tblfaktura_main )
3 -læg en til og du har dit nye fak nr.
4 - add form faktura main data til tblfaktura_main og luk tabellen
5 - add form faktura sub data til tblfaktura_sub og luk også denne

Det er kort fortalt, da jeg er på vej til Norge de næste par dage
Jeg har kigget lidt på det du har lavet, men kan ikke lige afgøre., om du har et samtidighedsproblem ( flere der booker samtidig).

Henrik
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester