Avatar billede rosco Novice
05. september 2004 - 14:00 Der er 12 kommentarer og
1 løsning

Ny post maxnr. +1

Videokartotek Access 2000:

Jeg har en formular "forside" til gennemsyn af indhold:
og jeg har en formular til indtastning af data, "Video".

Ved oprettelse af ny post indsættes i feltet Nummer,
Maxnummer+1, som standardværdi

Det virker fint med knappen i formularen Video.

Men når jeg bruger knappen, "Ny post" fra "forside",
med denne kode.
Som åbner formularen "Video", Virker det ikke.

    Dim stDocName As String
    Dim stLinkCriteria As String

    stDocName = "Video"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
    DoCmd.Close acForm, Me.Name
    DoCmd.GoToRecord , , acNewRec

Det må da kunne lade sig gøre.
Avatar billede hekla Nybegynder
05. september 2004 - 15:12 #1
Dim stDocName As String
    Dim stLinkCriteria As String

    stDocName = "Video"
    DoCmd.OpenForm stDocName, , , stLinkCriteria, acFormAdd
    DoCmd.Close acForm, Me.Name

og indsæt =DMax("Mitfelt", "MinTabel")
som standardværdi for feltet i formularen, hvor Mitfelt er feltet i tabellen.
Avatar billede fynbohans Nybegynder
05. september 2004 - 15:15 #2
Umiddelbart ser det for mig ud som om du har lukket den formular,
hvor linjen "DoCmd.GoToRecord , , acNewRec" står.
Hvorfor skal formularen lukkes. Er det ikke meningen, du senere
skal kunne vende tilbage til din "forside"?
Avatar billede rosco Novice
05. september 2004 - 17:29 #3
Er her igen, jeg var nødt til gå tidligere.
fynbohans:
Jeg lukker forside, for at sikre opdatering af data, inden jeg vender tilbage til forside igen, har prøvet alt andet, det  var den måde som virkede bedst.

men det er nok det som er problemet.

Hekla:
=DMax("Mitfelt", "MinTabel")+1
Det giver en ny post et nummer større.
da jeg lukker forside får jeg fejlmeddelelsen, det indtatede udtryk referer til et objekt der er blevet lukket.
Kan jeg ikke bare undertrykke denne fejlmeddelelse. men hvilket nummer har denne fejlmeddelelse.
Avatar billede fynbohans Nybegynder
05. september 2004 - 17:49 #4
Du kan opdatere din formular inden du lukker med:

Dim MinFormular As Form
Set MinFormular = Me.FormularensNavn
MinFormular.Requery
Avatar billede rosco Novice
05. september 2004 - 18:47 #5
Jeg kan ikke se den ny post i forsiden før den har været lukket?
jeg ved godt at det skulle jeg kunne med Me.Requery
Avatar billede rosco Novice
05. september 2004 - 19:06 #6
Jeg prøvede at fordele de 60 point
det lykkedes ikke
Hekla:
havde du et svar på det med fejlmedelelsen?
kan man finde fejlmeddelsernes numre et sted?
Avatar billede fynbohans Nybegynder
05. september 2004 - 19:14 #7
Hvis du ikke kan se posten på forsiden, er det fordi den ikke er gemt. Prøv med rækkefølgen

Dim MinFormular As Form
Set MinFormular = Me.FormularensNavn
DoCmd.RunCommand acCmdSaveRecord
MinFormular.Requery
Avatar billede rosco Novice
05. september 2004 - 19:26 #8
Der skal vist mere til end det! :-)
Avatar billede rosco Novice
05. september 2004 - 19:39 #9
slutter for nu, kigger forbi i morgen. Arbejde.
Avatar billede hekla Nybegynder
05. september 2004 - 23:46 #10
Har du fjernet linien:    DoCmd.GoToRecord , , acNewRec
?
Avatar billede mugs Novice
06. september 2004 - 05:51 #11
Burde det ikke være nok i "Video" VedAktuel at indtaste:

If Me.NewRecord = True Then
MitFelt =DMax("MitFelt", "MinTabel"]
End If
Avatar billede mugs Novice
06. september 2004 - 05:59 #12
Når denne lukkes vil tabellen blive opdateret, Forside er dog ikke opdateret før den får en Me.Refresh.

Får at opfasnge fejlen, kan du indsætte en errorhandler:

On Error GoTo Errorhandler
If Me.NewRecord = True Then
MitFelt =DMax("MitFelt", "MinTabel"]
End If
Errorhandler:
MsgBox Err.Number & " " & Err.Description

Når der opstår en fejl, vil du få en msgbox med fejlnr. og beskrivelse. Når fejlen påstår har du fejlnr. Du kan herefter ændre koden til:

On Error GoTo Errorhandler
If Me.NewRecord = True Then
MitFelt =DMax("MitFelt", "MinTabel"]
End If
Errorhandler:
If ErrorNumber = 1234 Then
Resume Next
End If

Selvom jeg nok vil mene, at det er langt bedre at finde ud af hvorfor fejlen opstår, og derefter ændre koden, så det ikke sker.
Avatar billede rosco Novice
06. september 2004 - 16:02 #13
Efter komprimering og rep. så jeg ikke mere til fejlmeddelsen. Så det virker helt fint nu.
Tak for jeres kommentarer, dem får jeg sikkert nytte af en anden gang. :-)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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