By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,482 Members | 2,451 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,482 IT Pros & Developers. It's quick & easy.

Access 2003 to 2007 migration issues

100+
P: 157
Hello!

I have this code:

Expand|Select|Wrap|Line Numbers
  1. Sub oppdater_lokasjonsinfo()
  2.  
  3. Dim TempTbl As String
  4. Dim TempQuery As String
  5. Dim RstTil As New ADODB.Recordset
  6. Dim qryDef As QueryDef
  7. Dim Dbs As Database
  8. Dim SqlString As String
  9. Dim rs As Recordset
  10. Dim MLGemba As Long
  11. Dim MLMuda As Long
  12. Dim MLJidoka As Long
  13.  
  14.  
  15. Set Dbs = CurrentDb
  16.  
  17. TempTbl = "temptbl " & NtLogin & " lokasjonsinformasjon"
  18. TempQuery = "tempqry " & NtLogin & " lokasjonsinformasjon"
  19.  
  20. If fTableExist(TempTbl) = False Then
  21.     DoCmd.RunSQL "CREATE TABLE [" & TempTbl & "] (autonr COUNTER PRIMARY KEY, Lokasjon VARCHAR(50), [Loksum] VARCHAR(50), [Prodsum]varchar(50))"
  22. Else
  23.     DoCmd.SetWarnings False
  24.     DoCmd.RunSQL "DELETE * from [" & TempTbl & "]"
  25.     DoCmd.SetWarnings True
  26. End If
  27.  
  28. For Each q In Dbs.QueryDefs
  29.     If q.Name = TempQuery Then
  30.     Dbs.QueryDefs.Delete TempQuery
  31.     End If
  32. Next
  33.  
  34.  
  35.     With RstTil
  36.     .Open "SELECT * from [" & TempTbl & "]", CurrentProject.Connection, adOpenForwardOnly, adLockOptimistic
  37.  
  38. 'cellelokasjoner
  39. SqlString = "SELECT [LOK Loksummer].Lokasjon, [LOK Loksummer].[Antall tabletter] FROM [LOK Loksummer] WHERE ((([LOK Loksummer].Lokasjon) Not Like '*mdk*' And ([LOK Loksummer].Lokasjon) Not Like '*maskindiff*') AND (([LOK Loksummer].Varenr)=" & Me.tbx_varenr & ")) ORDER BY Right([lokasjon],4) DESC , [LOK Loksummer].Lokasjon"
  40. Set qryDef = Dbs.CreateQueryDef(TempQuery, SqlString)
  41. Set rs = Dbs.OpenRecordset(TempQuery)
  42.  
  43.     Do Until rs.EOF
  44.     .AddNew
  45.     !Lokasjon = rs!Lokasjon
  46.     ![loksum] = rs![antall tabletter]
  47.     .Update
  48.     rs.MoveNext
  49.     Loop
  50.     .AddNew
  51.  
  52. DoCmd.DeleteObject acQuery, TempQuery
  53.  
  54. SqlString = "SELECT [LOK Loksummer].Lokasjon, [LOK Loksummer].[Antall tabletter] FROM [LOK Loksummer] WHERE ((([LOK Loksummer].Lokasjon) Like '*mdk*' And ([LOK Loksummer].Lokasjon) Not Like '*maskindiff*') AND (([LOK Loksummer].Varenr)=" & Me.tbx_varenr & ")) ORDER BY Right([lokasjon],4) DESC , [LOK Loksummer].Lokasjon"
  55. Set qryDef = Dbs.CreateQueryDef(TempQuery, SqlString)
  56. Set rs = CurrentDb.OpenRecordset(TempQuery)
  57.  
  58.     Do Until rs.EOF
  59.         slashfrontpos = InStrRev(rs!Lokasjon, "a")
  60.         Celle = Left(rs!Lokasjon, slashfrontpos)
  61.         If Celle = "Gemba" Then
  62.             MLGemba = MLGemba + rs![antall tabletter]
  63.         ElseIf Celle = "Muda" Then
  64.             MLMuda = MLMuda + rs![antall tabletter]
  65.         ElseIf Celle = "Jidoka" Then
  66.             MLJidoka = MLJidoka + rs![antall tabletter]
  67.         End If
  68.         rs.MoveNext
  69.     Loop
  70.  
  71.     .AddNew
  72.     !Lokasjon = "Gemba maskinlager"
  73.     ![loksum] = MLGemba
  74.     If Not IsNull(Me.tbx_gembaplanlagt) Then
  75.     ![prodsum] = Me.tbx_gembaplanlagt
  76.     End If
  77.     .Update
  78.  
  79.     .AddNew
  80.     !Lokasjon = "Muda Maskinlager"
  81.     ![loksum] = MLMuda
  82.     If Not IsNull(Me.tbx_mudaplanlagt) Then
  83.     ![prodsum] = Me.tbx_mudaplanlagt
  84.     End If
  85.     .Update
  86.  
  87.     .AddNew
  88.     !Lokasjon = "Jidoka Maskinlager"
  89.     !loksum = MLJidoka
  90.     If Not IsNull(Me.tbx_jidokaplanlagt) Then
  91.     !prodsum = Me.tbx_jidokaplanlagt
  92.     End If
  93.     .Update
  94.  
  95.  
  96. DoCmd.DeleteObject acQuery, TempQuery
  97.  
  98.  
  99.     .Close
  100.     End With
  101.  
  102.  
  103. Set RstTil = Nothing
  104. Set qryDef = Nothing
  105. Set rs = Nothing
  106.  
  107.  
  108. Me.Liste_over_lokasjonsantall.RowSource = "SELECT * from [" & TempTbl & "]"
  109. End Sub
To do some work for me, this code works fine in Access 2003, but in Access 2007 SP1 it halts at line 56 with error message "Type Mismatch".

Anyone know of a solution to this?
Nov 8 '08 #1
Share this Question
Share on Google+
1 Reply


100+
P: 157
I found the solotion my self.

I had to change line nr 9 to
Expand|Select|Wrap|Line Numbers
  1. Dim rs As DAO.Recordset 
Now i have a big headache about the fsofilesearch which microsoft has removed from Access 2007. [Edit:******] ******


:P
Nov 10 '08 #2

Post your reply

Sign in to post your reply or Sign up for a free account.