Avatar billede rickie Juniormester
24. august 2006 - 14:28 Der er 11 kommentarer og
1 løsning

Gå til sidste nye post

Hej,

Har fölgende kode:
Private Sub cmdTilføj_Click()
Dim sSQL As String

If Not IsNull(DLookup("[No_]", "[dbo_vw_Thorn_Svenska_AB$Customer]", "[No_]=txtKundenr")) Then
sSQL = "INSERT INTO tblAutoGiro ([aNo_], [aSearch Name], [aAddress], [aAddress 2], [aPost Code], [aCity], [aPersonal ID No_])" & vbCrLf & _
            "SELECT ([No_]), ([Search Name]), ([Address]), ([Address 2]), ([Post Code]), ([City]), ([Personal ID No_])" & vbCrLf & _
            "FROM [dbo_vw_Thorn_Svenska_AB$Customer] WHERE [No_] = " & "txtKundenr.Value"
          Me.Requery
DoCmd.RunSQL sSQL
    Else
        MsgBox "Kundnummer " & txtKundenr & " finns inte i Navision!", vbExclamation
    End If
    Me.Requery
    Me.txtKundenr = ""
    Me.txtKundenr.SetFocus
End Sub
-----

Som det er nu lägger den värdi til i databasen. Jeg vil gerne at den post som lige er lagt til skal väre tilbage på skärmen så at man eventuelt kan ändre feks adresse o.l.

Det bedste havde väret hvis nogen kan ändre så at den först henter data fra [dbo_vw_Thorn_Svenska_AB$Customer] og lägger dem ind i felterne og hvor man så bagefter trykker på en knapp så at det gemmes i accestabellen [tblAutoGiro]

:-)
Avatar billede Slettet bruger
24. august 2006 - 15:55 #1
Prøv!~)

Private Sub cmdTilføj_Click()
Dim sSQL As String
Dim BookM

If Not IsNull(DLookup("[No_]", "[dbo_vw_Thorn_Svenska_AB$Customer]", "[No_]=txtKundenr")) Then
sSQL = "INSERT INTO tblAutoGiro ([aNo_], [aSearch Name], [aAddress], [aAddress 2], [aPost Code], [aCity], [aPersonal ID No_])" & vbCrLf & _
            "SELECT ([No_]), ([Search Name]), ([Address]), ([Address 2]), ([Post Code]), ([City]), ([Personal ID No_])" & vbCrLf & _
            "FROM [dbo_vw_Thorn_Svenska_AB$Customer] WHERE [No_] = " & "txtKundenr.Value"
          'Me.Requery
DoCmd.RunSQL sSQL
    Else
        MsgBox "Kundnummer " & txtKundenr & " finns inte i Navision!", vbExclamation
    End If
BookM = Me.Bookmark
    Me.Requery
    Me.txtKundenr = ""
    Me.txtKundenr.SetFocus
Me.Bookmark = BookM
End Sub
Avatar billede Slettet bruger
24. august 2006 - 15:56 #2
Jeg er nød til at smutte...
Avatar billede rickie Juniormester
24. august 2006 - 16:06 #3
Hey :-)

Det virker desvärre ikke!
Avatar billede terry Ekspert
24. august 2006 - 18:16 #4
You first need to requery the form

Me.Requery

Then you should be able to use

Me.Recordset.MoveLast

to move to the last record
Avatar billede terry Ekspert
24. august 2006 - 18:18 #5
or you can use

DoCmd.GoToRecord , , acLast

after the requery
Avatar billede rickie Juniormester
25. august 2006 - 08:31 #6
Det vil stadig ikke virke. Det er precis som om den gör det bagvendt og det kan godt väre der er fejl i min kode. Den lägger kunden til men...forfra!?
Det vil sige at post 1 bliver post 2 når der gemmes til databasen. Hvad går galt?
Når den nye så er lagt til i databasen åbner den en ny foran alle andre og genbruger samme kundenummer som det er lige er lagt til. Dette må den ikke men den skal kun lägge til og derefter gå til den post som lige er lagt til.

Er dette bedre/muligt?:
Det bedste havde väret hvis nogen kan ändre så at den först henter data fra [dbo_vw_Thorn_Svenska_AB$Customer] og lägger dem ind i felterne og hvor man så bagefter trykker på en knapp så at det gemmes i accestabellen [tblAutoGiro], på en måde som en slags temp
Avatar billede rickie Juniormester
25. august 2006 - 08:33 #7
Det er lidt svärt at forklare som i kan se ovenfor men hvis nogen er intresseret kan jeg sende exemplet så at i kan se det.
Avatar billede terry Ekspert
25. august 2006 - 10:10 #8
eksperten@NOSPAMsanthell.dk

remove NOSPAM
Avatar billede rickie Juniormester
28. august 2006 - 09:35 #9
Hej Terry,

Har du nået at få kigget på det? :-)
Avatar billede terry Ekspert
28. august 2006 - 12:07 #10
Yes, I sent you a mail, maybe you didnt receive it.

There is a linked SQL table which I dont have Access to. Can you import the table into an Access table and then send me the dB again.


mvh
Terry
Avatar billede rickie Juniormester
28. august 2006 - 13:18 #11
Hej igen,

Har sendt den til dig ;-)
Avatar billede rickie Juniormester
29. august 2006 - 09:34 #12
Terry lavede fölgende ändringer som var lige det jeg skulle bruge. Tak for det! :-)

Private Sub cmdTilføj_Click()
Dim sSQL As String

If Not IsNull(DLookup("[No_]", "[NEWdbo_vw_Thorn_Svenska_AB$Customer]", "[No_]=txtKundenr")) Then

    sSQL = "INSERT INTO tblAutoGiro ([aNo_], [aSearch Name], [aAddress], [aAddress 2], [aPost Code], [aCity], [aPersonal ID No_])" & vbCrLf & _

            "SELECT ([No_]), ([Search Name]), ([Address]), ([Address 2]), ([Post Code]), ([City]), ([Personal ID No_])" & vbCrLf & _

            "FROM [NEWdbo_vw_Thorn_Svenska_AB$Customer] WHERE [No_] = '" & txtKundenr.Value & "'"
 
            DoCmd.RunSQL sSQL

            Me.Undo

            Me.Requery

            DoCmd.GoToRecord , , acLast
    Else

        MsgBox "Kundnummer " & txtKundenr & " finns inte i Navision!", vbExclamation

    End If
End Sub
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