Startseite › Foren › Deutsches LiveCode-Forum › DATAGRID › Antwort auf: DATAGRID
Hi Andreas,
vielleicht schlägst Du noch mal „rhetorisch“ im Lexikon nach. 🙂
Mit diesem Script lese ich die Daten ein
on mouseUp
…
end mouseUp
Funktioniert einwandfrei.
Klar, ist ja auch von mir! 😀
OK, das Datagrid hat ein paar eingebaute Handler und Funktionen, die Deinen Wünschen entsprechen. Workflow wie folgt:
1. Du kannst dem Datagrid sagen, gib mir mal den INDEX oder die LINIE, in der die Spalte XYZ den Wert „abc“ hat.
2. Das Datagrid liefert Dir dann in -> THE RESULT den Index bzw. die Zeilennummer der gesuchten „Records“ zurück. Damit ausgerüstet, holst Du Dir dann die anderen Daten aus dieser Zeile.
3. Beispiel
...
put "4711" into tHaltestelle
## Da die LABELS (Spalgtenüberschrifeten) anders sein können als der Name der Spalte,
## bitte hier den echten Namen verwenden:
put "hst" into tSpalte
## Suchauftrag abschicken:
dispatch "FindLine" to grp "Dein Datagrid hier..." with tSpalte, tHalteStelle
## In dieser Zeile im DG wurde was gefunden:
put the result into tGefundeneZeile
## Diese Nummer nun verwenden, um den Rest aus dieser Zeile zu holen:
put the dgDataOfLine(tGefundeneZeile) of grp "Dein Datagrid hier..." into tArray
## Wir haben die Daten nun in einem Array -> tArray
## Nun die einzelnen KEYS auslesen
## Epon | Hst | Wabe | TSP
put tArray["Epon"] into fld "aktuelle Epon-Nummer"
put tArray["Hst"] into fld "aktuelle Haltestellen-Nummer"
put tArray["Wabe"] into fld "aktuelle Wabe-Nummer"
put tArray["TSP"] into fld "aktuelle TSP-Nummer"
...
Im dictionary steht leider nur „FindIndex“, aber „FindLine“ funktioniert genaus so, aber eben mit der Zeilennummer, die nicht = der INDEX Nummer sein muss, kann, muss aber nicht.
Yo, viel Spaß damit, schön sacken lassen und bei Bedarf weiter fragen. 🙂
Gruß
Klaus