begin process at 2010 03 19 13:21:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Base de données

 > 

Autre

 > 

Filter, trie sur Date


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Filter, trie sur Date

mardi 10 juin 2008 à 10:34:10 | Filter, trie sur Date

grandyaka54

Bonjour,

J'utilise un TibTable pour afficher le contenu d'une table.
J'y applique un filtre pour afficher une ligne voulu, mais une erreur se produit a cause du ORDER BY. Or je voudrais filtrer et également appliquer un trie sur la colonne date.

            Filter := 'CodeSicav = '''+qrSicavCode.AsString+''' AND Etat = ''P'' AND NomCpt = '''+cbCompte.Text+''' ORDER BY Achat ASC';
            Filtered := True;

Comment faire cela ?

Merci pour l'aide.
mardi 10 juin 2008 à 12:20:39 | Re : Filter, trie sur Date

cantador

Membre Club

Bonjour grandyaka54,

tu ne peux pas metttre ORDER BY dans un filtre car le filtre représente la clause WHERE d'un SQL.

si tu veux les deux, il faut appliquer une requête SQL sur ta table :

procedure TForm1.Button1Click(Sender: TObject);
begin
With MonTIBQuery.SQL do
   begin
      Add('Select * from MaTable ');
      Add('WHERE CodeSicav =:SICAV ');  // tu peux ajouer d'autres paramètres
      Add('ORDER BY Achat ');      // order by
      MonTIBQuery.ParamByName('SICAV').Value := SICAV.text;
      MonTIBQuery.Open;
   end;
end;

cantador

mardi 10 juin 2008 à 14:03:48 | Re : Filter, trie sur Date

grandyaka54

Oki merci, j'avais un doute mais j'ai quand meme voulu poser la question.
Donc, je vais utiliser un TibQuery.

Par contre, est-il possible avec une requete Select, une fois positionné sur le 1er enregistrement par exemple (avec First) de modifier cette ligne ?

mardi 10 juin 2008 à 14:28:36 | Re : Filter, trie sur Date

cantador

Membre Club
En principe, la table se met par défaut à l'ouverture sur le premier enregistrement
(même sur une requête filtrante avec tri)

et bien sûr, il est tout à fait possible de se positionner sur un enregistrement particulier (premier, dernier ou un autre avec la méthode locate)

et de procéder à une modification de l'ensemble des champs de cet enregistrement par les méthodes classiques (edit et post)

cantador
mardi 10 juin 2008 à 15:39:28 | Re : Filter, trie sur Date

grandyaka54

Ok, en gros, j'ai fais ceci :

  SQL.Clear;
  SQL.Add('Select...From...Where...And...Order by...');

  Open; First;
  //Je me positionne sur le 1er enreg et souhaite modifier cette ligne meme avec
  
  Edit;
     ...
     FieldByName('Vente').AsDateTime := deVal.Date;
     ...
  Post;

  Close;

Apparemment ceci marche pas, ou alors il me manque quelque chose ou j'ai une erreur. J'ai ce message d'erreur : "Impossible de modifier un ensemble de données en lecture seule".
mardi 10 juin 2008 à 17:42:27 | Re : Filter, trie sur Date

cantador

Membre Club
Réponse acceptée !
ah yès, ces compos que je n'utilise pas sont en lecture seule..

Tu dois te servir du composant additionnel : IBUpdateSQL.

cantador
mercredi 11 juin 2008 à 08:47:50 | Re : Filter, trie sur Date

grandyaka54

Réponse acceptée !

En effet en liant mon TibQuery avec un TibUpdateQuery, je peux faire un select, me positionner sur l'enregistrement voulu et faire la modification.

SQL.Clear;
SQL.Add('SELECT....FROM....WHERE....AND....ORDER BY....');

Open; First;
Edit;
   ...
   FieldByName('Vente').AsDateTime := deVal.Date;
   ...
Post;
Close;


 Merci Cantador pour l'aide...

mercredi 11 juin 2008 à 11:58:47 | Re : Filter, trie sur Date

grandyaka54

J'ai trouvé une autre solution qui marche aussi bien.

Je garde mon IBTable, je l'ouvre, j'applique un filtre et à ce moment là, avant de faire un First pour me positionner sur le 1er enregistrement, j'utilise IndexFieldNames := 'DATE'. Ce qui me permet d'indexé la colonne date.




mercredi 11 juin 2008 à 15:48:59 | Re : Filter, trie sur Date

cantador

Membre Club
avec TIBTable, tu peux même débrancher UpDateObject !
et sur une autre table CUSTOMER par exemple :
  IBTable1.Edit;
  IBTable1LASTINVOICEDATE.AsDateTime := DateTimePicker1.DateTime;
  IBTable1.Post;
Le TIBTable est possible mais cela dit dès que ta base se complique, on est obligé de passer en Query..

Ces compos ne sont néanmoins pas terribles à l'usage..

cantador


Cette discussion est classée dans : trie, date, afficher, filter, order


Répondre à ce message

Sujets en rapport avec ce message

Afficher date littérale? [ par Stephanie ] Bonjour,Je suis débutante en Delphi. Je dois créer un petit prog qui me permettra d'afficher une date entrée au clavier de format numérique et l'affic Propriété Filter [ par codial ] Bonsoir,voilà je patauge lamentablement  avec cette syntaxe et j'ai beau chercher je ne trouve que des exemples avec un champ alors je vous la propose afficher date et l'heure [ par aymen81 ] bonjour à tous ,j'ai realisé une interface en delphi7 et j'aime bien afficher la date et l'heure dans un petit coin de cette interface ,quelqu'un peut problème d'affichage de date [ par pierrecoulon ] bonjour,je développe sous delphi 7.je travaille avec une base de donnée access. en employant un DBGrill je ne parvient pas à afficher l'heure uniqueme Afficher une somme a partir d'une date [ par abdousoft ] Sltj'ai deux Tables paradox contient dans leur liste des champ un champ "Date" dans chaque table, et un champ "total" dans chaque table aussi,Remarque Recuperer un Mois a partir d'une Date. [ par abdousoft ] Bonjour Comment recuper le nom du mois a partir d'un Date au format jj/mm/aaaaPar Ex: j'ai la date suivante 24/06</stro Quick report, QRExpression et expression [ par othland ] Bonjour tout le monde:je travail actuellement avec quick report et j'ai deux champs dans mabase SQL de type smalldatetime : Date_H_Debut et Date_H_Fin Desobéissance ou obéisance avec Sql Server 2000? [ par Avichen ] Grande salutation!J'ai une petite table crée avec du Sql Server 2000.Voice mes trois champs: date, nom, fonction.J'aimerai avec ces lignes de commande Afficher des images pendant l'execution d'un code. [ par kacola ] Bonjour,Voila, j'ai un code qui s'exécute pendant une à deux minutes, il s'agit d'une analyse d'images bmp.Je souhaiterais que ces images s'affichent Requête qui ne marche pas...et query [ par 810mcu ] De l'aide SVP,Bonjour a tous, voila<p class="MsoNormal" st


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales