Programmation delphi [Résolu]

Messages postés
3
Date d'inscription
mercredi 11 avril 2012
Statut
Membre
Dernière intervention
22 mai 2012
- - Dernière réponse : cs_walidlam
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
- 13 mai 2012 à 19:22
j'ai une base de donnee paradox, j'ai deux date date B.C et date ech je veux une requette sous delphi 7 où quanq je saisie la date B.C l'autre date monte d'un mois exp: date B.C:= 01/01/2011 sera date ech := 01/02/2011 automatique ; fatima
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
3
Merci
salut
1- mettez cette fonction
function  mois(const a:tdate):tdatetime;
var  LYear,Lmonth, LDay: Word;
begin
decodedate(a,Lyear,lmonth,lday);
if (Lmonth = 12) then
result:=EncodeDate(LYear+1,1, LDay) else
result:=EncodeDate(LYear,Lmonth+1, LDay);end;

A avec dbedit {evenement onexit}
[code=pas]procedure TForm.DBEdit1Exit(Sender: TObject);
begin
if latable.State in[dsinsert,dsedit] then 
laTableDateech.AsDateTime:=mois(laTabledateB_C.AsDateTime) 
end;
/code
b avec DateTimePicker {evenement onchange}
procedure TForm.DateTimePickerChange(Sender: TObject);
begin
if latable.State in[dsinsert,dsedit] then
begin
laTabledateB_C.AsDateTime:=DateTimePicker.date;
laTableDateech.AsDateTime:=mois(DateTimePicker.date);
 end ;
end;

et voila!!
{si ca marche click sur bonne repense @+}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_walidlam
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
33
3
Merci
non la première fonction est fausse car Month+1 = 13 si month = 12

Il suffit de déclarer DateUtils dans les Uses et d'utiliser IncMonth(Date,1);


________________________________________________________

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de f0xi
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
3
Merci
salut
c'est pas fausse mon ami!!!!!!
if (Lmonth = 12) then
result:= EncodeDate(LYear+1,1, LDay) else
result: =EncodeDate(LYear,Lmonth+1, LDay);end;
si month =12 alors
month=1
sinon
month:=month+1
@+ foxi

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_walidlam
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
33
3
Merci
Houla oui j'avais pas vus la condition, je devais être dans la lune.

Mais il n'empèche qu'il est plus pratique d'utiliser IncMonth ;) ça evite tout un fatra de bidule (qui certes ne sont pas inintéréssant à savoir quand dans un langage il n'existe pas de fonction IncMonth, IncDay ou IncYear).

________________________________________________________

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de f0xi
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
0
Merci
salut!!
oui avec DateUtils c est facile ;mais l objectif c est d aider les gents a faire leurs procedures et fonctions aussi pas seulement resoudre les problemes et merci
@+
Commenter la réponse de cs_walidlam

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.