Visual Dataflex
Zur Startseite Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen
Datenbank RSS Feed Selector Zur User-Map

 
Boardmenü
» Forum
» Portal

» Registrieren
» Suche
» Statistik
» Mitglieder
» Team
» Kalender
» Sponsoren
» Partner

» F.A.Q

Portalmenü
» Datenbank anlegen
» Datenbank Entwicklung
» Empfehlungen
» Portal
» Programm erstellen
» Über visual Dataflex

» Statistik

Dataflex Empfehlungen

Englisches Dataflex Forum


Anzeigen

Sponsoren
Kostenloser Linktausch

Antivirus Software

Foren Verzeichnis

HP Color Laserjet 1600

Windows 7 Forum


Social Bookmark Script

Visual Dataflex » VDF Fortgeschrittene » Suche in Lookup » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Suche in Lookup
Autor
Beitrag
Danka Danka ist weiblich
Mitglied


Dabei seit: 27.12.2007
Beiträge: 27

Suche in Lookup Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo,

habe eine Frage zur Suche in einer Sellist. Bisher noch im "alten" Format also nicht über die neue Grid-Klasse.
Habe eine Tabelle mit den Feldern Nummer, AdrNummer usw.
Die Sellist ist beim Aktivieren absteigend nach Nummer sortiert, der neuste DS als als erstes (oben). Wenn ich im Feld AdrNr nun eine AdrNummer eingebe, so wird vorher die Liste bereits nach der AdrNr sortiert (wg. Autoindex), danach befinde ich mich im ersten DS zu der entsprechenen AdrNr.
Nun zu meiner Frage, was muss ich nun tun, damit bei der Suche der letzte DS zu der AdrNr aktiviert wird? Der MainIndex für AdrNr ist AdrNr+Nummer. Mir ist klar, dass ich den ersten DS bekomme, da für die Suche das Feld Nummer nicht vorbelegt wird.
Hab ich eine Möglihkeit hier einzugreifen?
Gibt es vielleicht in den neuen Klassen eine Möglichkeit?

Bin Dankbar für jeden Tipp.

Grüße
Danka
23.11.2010 22:34 Danka ist offline E-Mail an Danka senden Beiträge von Danka suchen Nehmen Sie Danka in Ihre Freundesliste auf
vainio vainio ist männlich
Jungspund


images/avatars/avatar-72.jpg

Dabei seit: 30.07.2007
Beiträge: 15

RE: Suche in Lookup Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Die Frage ist ziemlich interessant, da sie einen bei der Untersuchung dahinterführt, wie die neuen Grids die Daten verwalten - nämlich nicht mit einer "direkten Bindung" sondern mit einem DataSource Objekt. Daher kann man zwar die Methode "Request_Search" am Grid abgreifen aber danach funktiniert es nicht einfach so, dass man den Datensatz in den DD-Puffer lädt. Statt dessen benötigt man Methoden der Grid bzw. der Column.

Für das Beispiel habe ich eine Tabelle Test mit den Feldern AdrNr, Nummer und Name angelegt mit Index 1 auf AdrNr und Nummer.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
    Object oSelList is a cDbCJGridPromptList
        Set Size to 105 256
        Set Location to 5 5
        Set peAnchors to anAll
        Set psLayoutSection to "Test_sl_oSelList"
        Set Ordering to 1
        Set pbAutoServer to True
        
        Procedure request_search Integer iKey1 Integer iKey2
            Forward Send Request_Search iKey1 iKey2

            Integer iCol
            Handle hoCol
            
            Get piSortColumn to iCol   // aktuelle Spalte 

            if (iCol = 0) begin  // nur wenn Spalte AdrNr
                Get ColumnObject (iCol + 1) to hoCol   // Objekt-ID der 2. Spalte ("Nummer")
            
                Send UpdateCurrentValue of hoCol "99999999"   // Nummer ist NUM 8.0, mit Max.Wert füllen
                Send RequestColumnFind iCol LE True   // "Datensatz suchen"
            end

        End_Procedure


        Object oTest_Adrnr is a cDbCJGridColumn
            Entry_Item Test.Adrnr
            Set piWidth to 84
            Set psCaption to "Adrnr"
        End_Object // oTest_Adrnr

        Object oTest_Nr is a cDbCJGridColumn
            Entry_Item Test.Nr
            Set piWidth to 84
            Set psCaption to "Nummer"
        End_Object // oTest_Nr

        Object oTest_Name is a cDbCJGridColumn
            Entry_Item Test.Name
            Set piWidth to 262
            Set psCaption to "Name"
        End_Object // oTest_Name


    End_Object // oSelList


Hoffe ich erzähle hier nicht einen total Stuss - sonst gerne korrigieren... smile

Viele Grüsse
Mika Vainio
30.11.2010 14:55 vainio ist offline E-Mail an vainio senden Homepage von vainio Beiträge von vainio suchen Nehmen Sie vainio in Ihre Freundesliste auf
Danka Danka ist weiblich
Mitglied


Dabei seit: 27.12.2007
Beiträge: 27

Themenstarter Thema begonnen von Danka
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielen Dank für deine Antwort. Leider funktioniert es bei mir noch nicht so wie es soll. Der Unterschied liegt jedoch daran, dass meine Adr_Nr und Name aus einer anderen relationierten Tabelle (ADR) kommt. Jedenfalls kann ich schon sehen, dass der Wert "99999999" in der Column gesetzt wird, die Suche liefert jedoch das gleiche Ergebnis= ich lande auf der ersten Dokumentnummer der Adresse.
01.12.2010 13:44 Danka ist offline E-Mail an Danka senden Beiträge von Danka suchen Nehmen Sie Danka in Ihre Freundesliste auf
vainio vainio ist männlich
Jungspund


images/avatars/avatar-72.jpg

Dabei seit: 30.07.2007
Beiträge: 15

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

ach man sollte halt richtig lesen - habe verstanden, dass du die neuen CJ grids nutzt und nicht, dass du sie eben noch NICHT nutzt... smile

dann ist es wie oben geschrieben deutlich einfacher, da du nach der suche einfach den DD-puffer befüllst und dann find sendest.

habe das mal nachgebaut mit einer headerdatei "ADR" und einer detailsdatei "DETAILS" - die suche funktioniert bei mir.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
    Object oSelList is a dbList
        Set Size to 100 394
        Set Location to 7 14

        Begin_Row
            Entry_Item Adr.Nr
            Entry_Item Adr.Name
            Entry_Item Details.Nummer
        End_Row

        Procedure Request_Search Integer keyval
            Forward Send Request_Search keyval

            // Hier füllen und suchen            
            Move 99999999 to Details.Nummer
            Send Find of oDetails_DD LE 1
            
        End_Procedure

        Set Main_File to Details.File_Number

        Set Form_Width 0 to 48
        Set Header_Label 0 to "AdrNr"
        Set Form_Width 1 to 180
        Set Header_Label 1 to "Name"
        Set Form_Width 2 to 48
        Set Header_Label 2 to "Nummer"
    End_Object
01.12.2010 14:58 vainio ist offline E-Mail an vainio senden Homepage von vainio Beiträge von vainio suchen Nehmen Sie vainio in Ihre Freundesliste auf
Danka Danka ist weiblich
Mitglied


Dabei seit: 27.12.2007
Beiträge: 27

Themenstarter Thema begonnen von Danka
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke, funktioniert jetzt! Hatte mir an zwei Stellen noch selber ein Bein gestellt, du hast aber für Erleuchtung gesorgt.
01.12.2010 15:20 Danka ist offline E-Mail an Danka senden Beiträge von Danka suchen Nehmen Sie Danka in Ihre Freundesliste auf
Gehe zu:
Neues Thema erstellen Antwort erstellen
Visual Dataflex » VDF Fortgeschrittene » Suche in Lookup

Views heute: 3.658 | Views gestern: 2.869 | Views gesamt: 2.182.379

Impressum

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH | SEO by seo-wbb.de - Sponsored by Rene Urlaub und Reise Infos Frankenthal