15. september 2012 - 11:13Der er
5 kommentarer og 1 løsning
Fortløbende numre - Webdatabase
Jeg har en Access-webdatabase, som er publiceret på Sharepoint med online tilgang. Databasen bliver brugt til at holde styr på en masse observationer, og disse bliver alle tildelt en kategori. Hvert emne skal så tildeles et forløbende nummer, baseret på kategori-nummeret.
Hver kategori har sit eget udgangsnummer: Kategori1: 1.100.000 Kategori2: 1.200.000 Kategori3: 1.300.000 osv.
Så 2 stk Kategori2 observationer vil blive nummeret: 1.200.001 1.200.002
Mit problem ligger i, at databasen er en web-database! Så jeg kan ikke bruge VBA når den er online - og da jeg har 35 kategorier, så melder simpel if/else-makro også fejl online.
Jeg er løbet tør for ideer til at omgå denne finurlighed, så alt input er velkommen!
lav en tabel med kategorinavne id, navn, tillæg og en tabel med alle observationer id, data, kategori_id
når du så vil have data for kategori1, så læser du alle poster i observationer med den valgte kategori_id, og lægger 'tillæg' tallet til observationer_id (ikke fortløbende) eller lægger 'tillæg' til post-nummeret, som du får via det loop, der udlæser de enkelte poster.
Så kan du slette / oprette kategorier, og det kører bare uden ændringer i koden.
Jeg kan ikke helt få din løsning til at spille. Jeg har en Form, og på den har jeg indsat et Datasheet med observationer. Det er på dette Datasheet, at jeg ønsker at kunne se Kategori_id-nummeret (1.300.001 osv.). Datasheet'et henviser til min tabel 'Observationer'.
Kan jeg eventuelt få dig til at forklare dit løsningsforslag lidt mere?
Kategori_id er bare et autonummer på de forskellige kategorier - det bruges kun til at linke til observationer, så man let kan omdøbe en kategori eller rette en stavefejl.
numrene (1.300.001 osv.) fremkommer logisk, men findes ikke i databasen. Når du vil vise observationer i en given kategori, så vælges først kategori - så kender du kategori_id og tillæg. Så læser du tabellen observationer igennem for alle poster med den valgte kategori_id i stigende rækkefølge sorteret på id. I det læse-loop har du en tæller, og for hver post lægger du tæller og tillæg sammen, og du får tallet 1.300.001 osv. Skal der linkes til posten så den kan rettes/slettes, så skal linket være til id i tabellen observationer, og ikke det beregnede tal.
Hvis du sletter en observation vil de efterfølgende rykke en plads fremover - hvis du vil undgå det, så må poster ikke slettes, men kun markeres i et felt i observationer, at posten ikke skal vises (men den tælles med i læse-loop)
Puha ! Det tog sin tid, før jeg fik tid til at sætte mig ned og få det til at virke. Omsider virker det - med din guidening og inspiration. Vil du ikke afgive et svar?
Okay, men jeg takker stadig for hjælpen og inspirationen.
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.