08. marts 2008 - 18:25Der er
6 kommentarer og 1 løsning
opbygning af program
Hej
jeg skal lave et progam i VBA, og er lidt i tvivl om hvordan jeg skal designe det, altså mht. klasser og moduler
progammet skal laves med en userform og der bliver hentet data ind fra en access database.
databasen indeholder ca 200 personer der skal laves nogle beregning på. hver person har 8-18 seperate beregninger. databasen indeholder i en anden tabel de tal som beregninger skal laves på. og hver person har så nogle beregningsID'er. Selve beregninger laves i VBA koden, alt efter hvilke beregningID beregningen har i databasen. jeg er ny til objektorienter programmeting, men har lavet en del procedure programmering i VBA men læst en masse om java objektorienter. så kender godt konceptet.
Jeg har faktisk allerede lavet programmet i 2 moduler med en masse procedurer, men har lige fundet ud af at man også kan lave klasser i VBA og har tænkt på om det ikke ville være bedre?
her kommer problemet/spørgsmålet så:
Jeg kan kun komme på en klasse nemlig PERSON, som måske så skal indeholde alle bereginger også, eller skulle de måske være i et modul?
Håber det er nogle der vil komme med et par forslag..
Jeg synes, at det lyder som en rigtig god idé med en "personklasse" inkl. beregningerne, da de er afhængige af beregnings-ID'er for hver enkelt person. Men det er lidt svært at vide, om det evt. skal splittes på anden vis uden at kende projektet/sammenhængen mellem data/egenskaber osv.
ja det klart. Nogle af personerne har samme omkostningsID'er for nogle af deres beregninger (dvs. det er de samme formeler der skal bruges, bare med forskellige tal) og andre har unikke omkostnigngsID'er (dvs. specielle formler) Derfor har jeg tænkt på at det måske ikke var så smart at have en kæmpe klasse med en masse formler hvor det måske kun er ca halvdelen der skal bruges pr. person i gennemsnit. men ved ikke lige hvordan det ellers skal opbygges.
Måske en "personklasse" med de attributer der er gældende for alle personer(navn, adresse, et array med max 18 pladser til beregningsresultaterne, mm.) og en sql klasse med alle forspørgelserne og en userformen med events. og så er det bare hvor beregninger skal laves?
Jeg kan ikke umiddelbart se problemet i at have alle beregninger samlet i én klasse, da det er dine beregnings-ID'er, der styrer hvilke beregninger, der skal laves. Men igen - det er svært at "se" den rigtige struktur, når man ikke kender projektet.
Har du alle data til rådighed i databasen, som skal bruges til beregningerne? Hvis du har, er det måske bedre at foretage beregninger mv. deri.
okay, det er også det letteste at have dem samlet i en klasse, så det passer mig fint, ja alle data er samlet i databasen, men selve formlerne skriver jeg i vba koden, og de er ret avanceret nogle af dem, så kan ikke lige se hvordan jeg skulle kunne lave det i databasen, men lytter gerne?
Hvis du har det bedst med at kode dine beregninger, skal du gøre det, men du kan lave "multiarder" af beregninger i en forespørgsel i Access, hvor du jo også har direkte adgang til dine data.
Velbekomme (tag selv de fleste point retur; jeg kom bare med lidt input).
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.