vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ?? 
Autor: BAStler
Datum: 09.11.07 10:19

Hallo Jan,

du wirst in dem Fall nicht umhin kommen, einen Variant zurück zu geben.
Also im Falle das du keinen Wert bekommst setzt du GetKoorWorkData = Empty.
' Die folgenden Variablen global deklarieren
Private WorkData() As Double
Private Fehlwert As Long
Private Anzahl   As Long
 
Private Sub WorkData_Ermitteln(ByVal MySqlText As String, Dok As String)
  Dim Fehler_Zaehler As Integer, I As Integer
  ' Ausführen der Abfrage, (diese Prozedur ist aber nicht vollständig)
  Fehler_Zaehler = 0
 
  Set rsText = CE_SQL.CreateDynaset(MySqlText, DB_SQLPASSTHROUGH)
  On Error GoTo Text_Fehler
  If rsText.RecordCount > 0 Then
    rsText.MoveLast     ' wegen ODBC-Error 3146
    rsText.MoveFirst
 
    Anzahl = rsText.RecordCount
    ReDim WorkData(Anzahl)
    For I = 1 To rsText.RecordCount
      WorkData(I) = CDbl(rsText!Wert)
      rsText.MoveNext
    Next I
  Else
    Anzahl = 0
  End if
  Exit Sub
 
Text_Fehler:
  Fehlwert = Err.Number
End Sub
 
    ' Hier müßte dein Aufruf stehen, also deine oben beschriebene Funktion, 
    ' die dann WorkData_ermitteln MySqlText, "" aufruft (da ist der zweite 
    ' Parameter auch optional)
' Funktion zum Auslesen der WorkData bzw. Rückgabe, Fehlerstatus
Public Function GetDocID(KorrespondenzSatz As String) As Variant
  Anzahl = 0: Fehlwert = 0
  GetDocID = Empty
 
    MySqlText = "SELECT ........ "
    WorkData_ermitteln MySqlText, ""
    If Anzahl > 0 Then
      ' Hier sollte ein Array zurückgegeben werden
      GetDocID = WorkData
    Else
      If Fehlwert <> 0 Then
        GetDocID = CLng(Fehlwert)
      End If
    End If
Also die Function GetDocID ruft die Prozedur WorkData_ermitteln auf und da entscheidet sich, was in das Array WORKDATA () gestellt wird,
die Anzahl gibt die Zahl der Einträge zurück, im Fehlerfall kommt aber kein Array, sondern nur der Err.code da rein.

Viel Erfolg
BAStler
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Lösungsansatz für Datenrückgabe Variant, Double oder ??987Jan9909.11.07 09:02
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??454BAStler09.11.07 10:19
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??433Danzi09.11.07 11:29
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??440Jan9909.11.07 12:12
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??427BAStler09.11.07 12:35
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??451Danzi09.11.07 13:07
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??437Dirk12.11.07 08:20
Re: Lösungsansatz für Datenrückgabe Variant, Double oder ??412Jan9912.11.07 09:19

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel