Decs Dblookup

  • Hallo zusammen.


    ich habe mittels DECS einen Maske vom ODBC gefüllt.
    Da die Felder welche ich durchsuchen möchte syncronisiert werden, habe ich ein zweites Feld erstellt was solch ein Syncronisierungsfeld ausließt und Trimmt.
    Dies mach ein Agent. Jetzt bearbeite ich in einer anderen Maske ein Feld und setzte einen DBLookup drauf mit dem Verweis auf die Ansicht der ersten Maske (1 Feld ist das Feld welches vom Agenten gefüllt wird.)
    In dieser Ansicht ist die erste Spalte auch Sortiert.


    Jetzt bekomme ich aber mit dem DBLookup immerwieder den Fehler "Eintrag im Index nicht gefunden"


    Wenn ich jedoch in der Ansicht nach dem Lookup Wert suche so findet er mir diesen.


    Wie könnte ich dieses Problem Lösen?

  • Hallo zusammen,


    nun versuche ich das Problem ohne DECS zu lösen.


    Habe in der Hilfe folgende Info erhalten:


    @DbLookup( "ODBC" : Cache ; "Datenquelle" ; "Benutzer-ID1" : "Benutzer-ID2" ;"Kennwort1" : "Kennwort2" ; "Tabelle" ; "Spalte" : "NULL-Wertebehandlung" ; ""Schüsselspalte"" ; "Schlüssel" ; "Distinct" : "Sortieren" )


    Nun habe ich dies auf meine bedürfnisse angepasst:


    @DbLookup( "ODBC"; "ODBCName" ; "DB-Benutzername"; "DB-Passwort"; "dbo.Tabellenname";"Ausgabespalte";"Suchspalte";"Suchwort")


    Doch nun kommt hierbei ein Fehler auf:


    <Data Access Application Layer> Could not execute @db funktion.


    Was ist denn an meiner Formel falsch?
    Ich Danke euch schonmal für eure Hilfe.

  • Schon mal die Tips und zu prüfenden Punkte durchgegangen, die man bei Google dazu findet ?


    Existiert die ODBC Datenquelle auf dem Rechner auf dem die Formel ausgeführt wird ?
    Und hat auch Zugriff auf die DB ?
    Stimmen die Datentypen und Indizes auf DB Seite mit denen in der Formel angegebenen überein ?

  • Ich habe die Maske einmal über den Server geöffnet und es hat geklappt. Der Link der direkt in dem Textfeld ist zeigt den gesuchten wert an, jedoch möchte ich das der Inhalt eingeschrieben wird und in der Ansicht auswertbar ist.
    Somit muß ich die Maske in den Bearbeitungsmodus setzen und speichern.


    Jetzt habe ich einen Agenten erstellt der einmal am Tag alles aktualisieren soll, jedoch füllt dieser nicht das Textfeld so wie es sollte.


    Code
    FIELD Test:= @Unavailable;
    _test  := @DbLookup( "ODBC"; "ODBCName" ; "DB-Benutzername"; "DB-Passwort"; "dbo.Tabellenname";"Ausgabespalte";"Suchspalte";"Suchwort")
    @SetField ("Test";_test );


    Es kommt immer wieder ein 0 wert raus.


    Warum?