Toon posts:

[delphi 6] Hoe een DBgrid object te sorteren ?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben een progje aan het maken voor mijn stage. Op mijn formpje staan nu een datasource object, een table en een DBgrid component. Ik kan de database prima zien in de DBgrid maar ik ben al een tijdje opzoek naar het commando om die DBgrid te sorteren op companyname. Weet iemand dit ?

Verwijderd

Voeg een index op companyname toe aan de tabel, en selecteer die index in het TTable component.

Verwijderd

Topicstarter
Het moet dus toch met een index... hoe voeg ik zo'n index toe ?

Verwijderd

Topicstarter
---dubbele post---

Verwijderd

Topicstarter
Moet je dan naar index defs gaan ? daar kun je iets toevoegen..

Verwijderd

Bv met Database desktop [Start|Programma's|Development|Database desktop]

En dan restructure, table properties->secondary indexes

Etc...

Verwijderd

Topicstarter
Op donderdag 01 november 2001 10:58 schreef DiFool het volgende:
Bv met Database desktop [Start|Programma's|Development|Database desktop]

En dan restructure, table properties->secondary indexes

Etc...
Thanks voor je antwoord maar ik heb een .mdb database. Die is dus niet te openen in dat prog. Is het echt niet mogelijk zonder de databse hoeven te aanpassen ?

Verwijderd

Een TDBGrid kun je alleen sorteren dmv een index zetten op TTable [bv property IndexName].

Als de tabel geen index op CompanyName heeft kun je de TDBGrid niet sorteren. [volgens mij dan, misschien weet iemand anders het beter]

Dus ander component gebruiken [ipv TDBGrid] of een index maken op de tabel

Verwijderd

Topicstarter
Oké, duidelijk ! Die tabel moet dus ge-indext worden, maar hoe moet dat dan ? het is een .mdb database

ps wat bedoel je met een ander component gebruiken [ipv TDBGrid] noem is voorbeelden.

Thanks hé :)

Verwijderd

Niet dat ik er veel verstand van heb maar ...

Kun je niet een SQL aan een TDBGrid koppelen en daarin een "order by" atatement laten uitvoeren ???

Verwijderd

Topicstarter
Op donderdag 01 november 2001 11:17 schreef Norrit het volgende:
Niet dat ik er veel verstand van heb maar ...

Kun je niet een SQL aan een TDBGrid koppelen en daarin een "order by" atatement laten uitvoeren ???
hee DAT is een vet id. Kga meteen aan de slag je hoort het nog, bedankt tot nu toe

Verwijderd

probeer eens ipv een ttable een tquery te gebruiken, of voeg een index toe met access.

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Ik deed gewoon ADOTable.Sort := 'name ASC' bijvoorbeeld.
Specifies the sort order of the recordset.

property Sort: WideString;

Description

Set Sort to establish or change the list of fields on which the recordset is sorted. Set sort to the name of a single field or to a comma-separated list of fields. Each field may optionally be followed by the keyword ASCENDING or DESCENDING to specify a sort direction for the field. If one of these keywords is not used, the default sort direction for the field is ascending. Set Sort to an empty string to reset the recordset to the sort order originally used when the recordsets data was first retrieved.

ADOQuery1.Sort := 'LastName ASC, DateDue DESC'

Read Sort to determine the field (or fields) on which the recordset is sorted.

"The shell stopped unexpectedly and Explorer.exe was restarted."


Verwijderd

Topicstarter
Op donderdag 01 november 2001 11:42 schreef jelmervos het volgende:
Ik deed gewoon ADOTable.Sort := 'name ASC' bijvoorbeeld.
[..]
Ja maar ik gebruik geen ADO...

Verwijderd

je kan toch gewoon een index toevoegen bij je table, daarna kan je indexname op companyname zetten.

index maak je met (even uit et hoofd):
code:
1
  TTable.AddIndex('companyname');

als je nog geen tabel hebt kan je inderdaad IndexDefs gebruiken, doe gewoon bij IndexDefs er 1 index bij en dan CreateTablel, zou moeten werken hoor...

Verwijderd

Topicstarter
Dat lukt ook niet :(
Pagina: 1