Vielen Dank jetzt geht der Teil soweit, nun aber wenn ich bei ad_name anstatt P% nun nur % mache das er alles durchsuchen soll hängt er sich auf genauso wenn ich das letzte Kriterium weglasse. Also bis Jetzt geht es nur wenn ich bei ad_name g% oder so da stehen hab halt mit einschränkung.
Außerdem ist dauert bdas Connect zu Datenbank extrem lange was kann man da tun um es zu verschnellern. Serverseitig ist alles Top also da dürfte es nicht fehlen.
Da mir das zulangsam war nun ein neuer Code der auf einem Win2000 System geht aber auf Winnt nicht
Er sagt Objekterstellung durch AktiveX Komponente nicht möglich auf dem Winnt system
Hier mal der ganze Programmcode
Private Const ODBC_ADD_DSN = 1 ' Add data source
Private Const ODBC_CONFIG_DSN = 2 ' Configure (edit) data source
Private Const ODBC_REMOVE_DSN = 3 ' Remove data source
Private Const vbAPINull As Long = 0& ' NULL Pointer
#If Win32 Then
Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" _
(ByVal hwndParent As Long, ByVal fRequest As Long, _
ByVal lpszDriver As String, ByVal lpszAttributes As String) _
As Long
#Else
Private Declare Function SQLConfigDataSource Lib "ODBCINST.DLL" _
(ByVal hwndParent As Integer, ByVal fRequest As Integer, ByVal _
lpszDriver As String, ByVal lpszAttributes As String) As Integer
#End If
Dim WithEvents adoPrimaryRS As Recordset
Dim db As Connection
Dim en As rdoEnvironment
Dim cn As rdoConnection
Public Sub Command1_Click()
Dim varKd_Nr As String
Dim varAd_Name As String
'MousePointer = vbHourglass
Dim strConnect As String
strConnect = "driver={Sybase ASE ODBC Driver};SRVR=Produktion;" & _
"DB=musk;UID=muskator;PWD=planetar"
Set en = rdoEnvironments(0)
Set cn = en.OpenConnection( _
dsName:="", _
Prompt:=rdDriverNoPrompt, _
ReadOnly:=False, _
Connect:=strConnect)
If Err.Number <> 0 Then
MsgBox rdoErrors.Item(0)
Err.Clear
End If
cn.QueryTimeout = 600
MousePointer = vbNormal
varKd_Nr = ""
varAd_Name = ""
MousePointer = vbHourglass
Dim rs As rdoResultset
Set rs = cn.OpenResultset(name:="SELECT kunden.k_nr, kunden.k_kname," & _
"kunden.k_kreditor_jn, adressen.ad_name, adressen.ad_namenszusatz_1," & _
"adressen.ad_strasse, adressen.ad_laender_kn, adressen.ad_plz," & _
"adressen.ad_ort, adressen.ad_telefon, adressen.ad_fax" & _
" FROM kunden INNER JOIN adressen ON" & _
"kunden.k_adress_id1 = adressen.ad_id GROUP" & _
"BY kunden.k_nr, kunden.k_kname," & _
"kunden.k_kreditor_jn, adressen.ad_name," & _
"adressen.ad_namenszusatz_1," & _
"adressen.ad_strasse," & _
"adressen.ad_laender_kn, adressen.ad_plz," & _
"adressen.ad_ort, adressen.ad_telefon," & _
"adressen.ad_fax" & _
" HAVING (((kunden.k_nr) Like '" & varKd_Nr _
& "%') AND ((kunden.k_kreditor_jn)='J') AND" & _
"((adressen.ad_name) Like '" & varAd_Name & _
"%'))", Type:=rdOpenForwardOnly, _
LockType:=rdConcurReadOnly, _
Options:=rdExecDirect)
Do Until rs.EOF
Debug.Print rs(0), rs(3), rs(4)
rs.MoveNext
Loop
MousePointer = vbNormal
rs.Close
cn.Close |