Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Problem med Recordset

Postades av 2002-02-08 10:56:11 - Camilla Norberg, i forum visual basic - allmänt, Tråden har 2 Kommentarer och lästs av 430 personer

Hej
Fråga 1 har löst sig med första svaret, helt rätt att strAvd ska vara string, hade bara labbat med lite olika alternativ för att få till den.
Däremot behöver jag fortfarande hjälp med fråga 2.

Har två problem i nedanstående kod som jag hoppas få hjälp med.

1. När jag startar programmet får jag Type mismatch på raden "strAvd = rsPnr![ID_1004]", om den posten innehåller Null, spelar ingen roll om jag ändrar Empty till Null. Hur får jag till det?

2. Ibland ser tabellen jag hämtar data till RS ut så här:

id_1010 id_1004
1592 360
1692 360
1710 410
1850 250
1850 351

Ibland tar den då bara raden som innehåller 1850 en gång och kör en koll på den , men nån enstaka gång kör den båda raderna. Hur ska jag skriva för att vara säker på att den alltid kör koll på alla rader?

Dim strABGnr As String
Dim strAvd As String
Dim strABGnrtemp As String


Set cnTest = New ADODB.Connection
Set rsPnr = New ADODB.Recordset

cnTest.Open "Provider=SQLOLEDB.1; Persist Security Info=False; User ID=sa; Initial Catalog=Temp; Data Source=S123"
rsPnr.Open "test", cnTest, adOpenForwardOnly, adLockOptimistic

Sub Starta
rsPnr.MoveFirst
Do Until rsPnr.EOF
If a = "1" Then
Exit Sub
Else
strABGnrtemp = rsPnr![ID_1010]
strAvd = rsPnr![ID_1004]
If strAvd Is Empty Then
strAvd = "000"
strPnr = "9999999999"
Else
strPnr = "0000000000"
End If

istr = Len(strABGnrtemp)

Select Case istr
Case 1
strABGnr = "00000" & strABGnrtemp
Case 2
strABGnr = "0000" & strABGnrtemp
Case 3
strABGnr = "000" & strABGnrtemp
Case 4
strABGnr = "00" & strABGnrtemp
Case 5
strABGnr = "0" & strABGnrtemp
Case 6
strABGnr = strABGnrtemp
End Select

Call koll 'Kör test mot koll

End If
'cnTest.Execute "Insert Into EP1_1test SELECT * from EP1_1 Where ID_1001=" & strPnr
'cnTest.Execute " Insert Into EP1_1test SELECT * from EP1_1 Where ID_1001=12345"

rsPnr.MoveNext
Loop
End Sub



Svara

Sv: Problem med Recordset

Postades av 2002-02-08 11:04:14 - Martin Forsberg

Du kan inte tilldela null till en sträng. Gör såhär om det kan förekomma null:

sString = rs!Column & ""

/Martin


Svara

Sv: Problem med Recordset

Postades av 2002-02-08 11:45:54 - Andreas Hillqvist

Har nog skrivit om din kod lite. Men det är för att undvika modulnivå variabler. Det är bättre att skicka det som parametrar till funktionen. Vet inte heller vart a varibeln kommer in i bilden. Du hade desutom deklarerat strAvd as integer. Men tilldellat den "000". Skall den oxå vara formaterad till tre sifrror. Ex. 001? Iså fall kan du använda Format$() funktionen.:

<code>
Sub Starta()
Dim strABGnr As String
Dim strAvd As Long
Dim cnTest As ADODB.Connection
Dim rsPnr As ADODB.Recordset

Set cnTest = New ADODB.Connection
Set rsPnr = New ADODB.Recordset

cnTest.Open "Provider=SQLOLEDB.1; Persist Security Info=False; User ID=sa; Initial Catalog=Temp; Data Source=S123"
rsPnr.Open "test", cnTest, adOpenForwardOnly, adLockOptimistic

Do Until rsPnr.EOF Or a = "1"
If IsNull(rsPnr("ID_1004")) Then
strAvd = 0
strPnr = "9999999999"
Else
strAvd = rsPnr("ID_1004")
strPnr = "0000000000"
End If
strABGnr = Format$(rsPnr("ID_1010"), "000000")
Call Koll(strAvd, strPnr, strABGnr) 'Kör test mot koll
rsPnr.MoveNext
Loop

rsPnr.Close
cnTest.Close
End Sub

Sub Koll(strAvd As Long, strPnr As String, strABGnr As String)

End Sub
</code>


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 639
27 953
271 710
8 276
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies