16. november 2003 - 23:31Der er
25 kommentarer og 1 løsning
Access 2000 mbd der ikke vil køre på Access2002
Jeg har en applikation der ikke vil køre på 2002, men som kører exelente på 2000. Jeg har en del recalc, da der er beregninger der skal foretages på kryds og tværs. Jeg har nu modtaget et par filer fra MS af flere gange, som de mente kunne løse problemet, men uden held. Alle seneste SP og øvrige opdateringer er downloadet.
Nogen der har oplevet det samme? Og har en løsning? Løsningen eller direkte hint til løsningen giver points.
Jepper. Jeg har prøvet både i 2000 format og konverteret den til 2002 format. En af fordelene ved 2002 skulle dog være at den kan afvikle 2000 baser, så man kan deles...... Men det lyder egentlig bedre end det virker. Der er en del VBA i applikationen. Og jeg kan rent faktisk få den til at køre, men så bliver der ikke recalcet hvor der skal.
Recalc - af hvad og hvor? Hvilke events bruger du? En af de store fornøjelser M$ plejer at have ved nye versioner er jo at lave om på rækkefølgen af hvordan event fyres af :-)
Som default laver Access 2002 jo version 2000 db'er og de kører normalt helt fint på tværs af de 2 versioner. Det eneste jeg har oplevet som et problem er at referencer til Microsoft Outlook ikke konverteres korrekt fra 2002 til 2000.
Recalc bliver lavet efter afterupdate på en række felter. Formen indeholder 123 felter fordelt på 5 faner(!) Eksempel: private sub produkt_afterupdate() me.produktnavn = dlookup("[prod_navn]";"[produkter]"; _ "[produkter]![pro_id]= " me.id)
If you see MISSING beside any then you need to resolve these. You can also try removing the reference of any that are missing as they may not actually be in use. Then compile the program (Debug+compile menu in code view), If any of the references which you removed are needed then you will get an error, so you will then need to resolve these.
terry: Du er altid en af de første der svarer. Det er da dejligt. Du var dog lidt længe om at komme med input her.
Well, ";" bruges i expressions på felter, hvor "," bruges i VBA. Det viste du godt, men skrev det ikke(!)
Problemet er ikke syntaxen for dlookup. Alle opslag kører 10-4 når der blot bliver givet ½ sekunds pause inden hver recalc. Og 20 gang ½ sekund er 10 sekunder plus den tid det tager at beregne. -Så på en rimelig veldimensioneret maskine tager det henved 15 sekunder hvis der skal være pauser.
bjorn>Concerning ; and , It seems there are conflicts where these should be used but I am 99.99% sure that I WOULD NOT use them in a form. I never have and never will :o)
This is what I would us as a dlookup and there is also another error I see
bjorn_jeppesen> mange gange når jeg skal lave oplag der er afhængig af et felt, laver jeg det felt som en combobox og sætter felterne til at få indhold med =cboCombo1.Column(x) Det fungerer meget fint.
DLookup er smart nok, men de fleste 'eksperter' rundt omkring i verden er rimeligt enige om at det er for sløvende for applikationerne.
Ja, Hugo! En combobox er en hurtig og nem måde at få data ind i en formular. Har selv adskillige formularer kørende uden nogen underliggende tabel overhovedet. Alle data hentes fra en eller flere comboboxe.
Hmmmm..... I er rigtig søde at fortælle en masse ting. Men i har tilsyneladende ikke læst hvad problemet drejer sig om. Prøv at læse fra toppen igen. - Applikationen kører 100% perfekt og hurtigt på 2000, men kager for vildt på 2002.
MEN - Der er ingen mulighed for at lave en cboComboN.column(x) før værdierne er læst ind i en combo!!! Og da der her er tale om et system hvor der er en række defaulte værdier med en tilhørende tabel over konstanter er det ikke muligt at have det på selve formen. Den er vel egentlig ikke længere! (Direkte hugget fra Anders Fjog i går aftes omkring dagpengene. Red.)
Er der nogen der har konstruktive forslag eller skal jeg bare pakke sammen og lukke spørgsmålet uden at have fået et hint?
Når du har haft kontakt med Microsoft har du vel også fået dokumentet conv2002. Her står bl.a. under "Using the Dot (.) Operator" at brug af "." i stedet for "!" nedsætter hastigheden (i Access2002).
Jepper, Men jeg har ikke problemer med . ! ; eller , Jeg har en appl. der i en enkelt form falder sammen og lukker access helt ned. Flere andre forms i samme bruger dlookup uden problemer, både i felter på formen men også i den bagvedliggende vba.
Havde nok mine anelser om at en combobox ikke kunne bruges i dit tilfælde, men der er endnu en måde at lave din komplicerede beregninger uden brug af DLookUp. Lav en skjult Formular, som lukker sig selv, når beregningerne er afsluttet. Formularen skal indeholde alle felter, som bruges til beregningerne. Resultater sendes evt. tilbage til hovedformulararen som globale variabler.
fynbohans: Det er også det jeg selv er kommet frem til. Godt nok lader jeg alt ligge på formen og loader det hele ind i variabler, laver mine beregninger og tømmer variablerne, da der er mange brugere på samme applikation og de anvender en citrix opkobling. Efter reglerne er det vel dig der skal have points. Så du må lige sende et svar.
Var lidt hurtig med at skrive Globale variabler. Faktisk bruger jeg selv - for meste - at flytte værdierne direkte til felter i hovedformularen, hvis det er muligt. Med Forms![Hovedformular]![Felt]
Terry: Det er bestemt ikke tilfældet. Jeg har tit og ofte brug for rigtig meget hjælp. Og det er ikke altid du ved det, men mange af dine (og andres)tidligere svar er til stor hjælp :-)))))) Som du jo også har erfaret kan man ikke vide alt! Cheers Bigears!
MS har nu fået en version af basen, som de reproducerer problemet med og får rettet jetengine til. (Var der lige kommet een opdatering i forgårs? Nå, men så kommer der altså snart en til.)
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.