j'ai une table Compte
N seq
Compte
nature
mois
année
je veux que le numéro sequentielle a une partie du mois et une partie d'année
exemple :010216
01 nume
02 Février
16 2016
comment faire d'une façon automatique dans builder c++
j'ai une table Compte
N seq
Compte
nature
mois
année
je veux que le numéro sequentielle a une partie du mois et une partie d'année
exemple :010216
01 nume
02 Février
16 2016
comment faire d'une façon automatique dans builder c++
Bonjour,
1ere méthode :
Je vous propose de regarder du coté de TDateTime :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #include <systdate.h> #include "System.SysUtils.hpp" TDateTime Maintenant = TDateTime::CurrentDateTime() ; Word Annee, Mois, Jour ; DecodeDate(Maintenant, Annee, Mois, Jour) ; UnicodeString MaSequence = Jour + Mois + Annee; FDQuery1->Close() ; FDQuery1->Active = false; FDQuery1->SQL->Clear(); UnicodeString MaRequete = "update MaTable set MaSequence =" + MaSequence + " where ..." ; FDQuery1->SQL->Add(MaRequete); FDQuery1->ExecSQL();
2eme methode.
On suppose que vous souhaitiez construire votre n° de séquence à partir d'informations exclusivement en base.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 UnicodeString nature= FDConnection1->ExecSQLScalar('select nature from MaTable where ...'); UnicodeString mois = FDConnection1->ExecSQLScalar('select mois from MaTable where ...'); UnicodeString annee = FDConnection1->ExecSQLScalar('select to_char(Madate, 'YY') from MaTable where ...'); UnicodeString MaSequence = nature + mois + annee; FDQuery1->Close() ; FDQuery1->Active = false; FDQuery1->SQL->Clear(); UnicodeString MaRequete = "update MaTable set MaSequence =" + MaSequence + " where ..." ; FDQuery1->SQL->Add(MaRequete); FDQuery1->ExecSQL();
Partager