Incrémentation des jours sur une date. Delphi le fait? [Résolu]

divin1975 83 Messages postés mardi 7 juin 2011Date d'inscription 9 novembre 2013 Dernière intervention - 20 déc. 2012 à 16:13 - Dernière réponse : korgis 411 Messages postés samedi 17 mai 2003Date d'inscription 16 mars 2018 Dernière intervention
- 23 déc. 2012 à 10:01
Salut!

Dernièrement, un developpeur C# a discuté avec moi sur une incrementation datée. "Delphi ne pourrait faire ca": disait-il. Je voulais bien relever le defi. Je demande votre aide.
Ma question serait-elle bête. Mais elle merite vraiment une reponse s'il vous plait.
Pourquoi je le dit c'est parce qu'elle vient sans code... Et je ne sais trop bien écrire les codes sur ce.

Y a t-il un tutorial sur Delphifr ou quelqu'un qui ait déjà developpé sur l'augmentation des jours sur une date. Et donant un resultat en date.
Je m'explique mieux:
sur mon form, j'ai deux DatetimePikers (DatetimePiker1 et DatetimePiker2) et un edit. Je selectionne dans le DatetimePiker1 20/12/2012 et j'écris dans mon edit par exemple 180. J'aimerai qu'il affiche dans mon DatetimePiker2: 20/06/2013. Cela veut dire 6 mois après (faisant juste le calcul).

Merci,
ISRAEL.
Afficher la suite 

6 réponses

Répondre au sujet
pierrotk10d 101 Messages postés mardi 13 novembre 2007Date d'inscription 16 mars 2018 Dernière intervention - 20 déc. 2012 à 16:28
+3
Utile
Bonjour,
Regardes ici et il y a surement d'autres
http://www.delphifr.com/forum/sujet-DELPHI-CALCUL-NOMBRE-JOURS_639709.aspx


pierrot
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de pierrotk10d
Cirec 4217 Messages postés vendredi 23 juillet 2004Date d'inscription 3 avril 2018 Dernière intervention - 20 déc. 2012 à 16:53
+3
Utile
Salut,

uses DateUtils;
procedure TForm1.Button1Click(Sender: TObject);
begin
  DateTimePicker2.DateTime := IncDay(DateTimePicker1.DateTime, StrToIntDef(Edit1.Text, 0));
end;



Mais 20/12/2012 + 180 jours == 18/06/2013


[hr]@+Cirec
[hr]
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Cirec
korgis 411 Messages postés samedi 17 mai 2003Date d'inscription 16 mars 2018 Dernière intervention - 20 déc. 2012 à 18:44
+3
Utile
Salut,

Pour incrémenter de 6 mois :

DateTimePicker2.Date := IncMonth(DateTimePicker1.Date, 6);
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de korgis
cs_MAURICIO 2233 Messages postés mardi 10 décembre 2002Date d'inscription 15 décembre 2014 Dernière intervention - 21 déc. 2012 à 10:31
+3
Utile
Plus simplement, le type TDate est un entier, TDateTime est un nombre réel.
Tu peux donc faire des opérations mathématiques sachant que :
1 = 1 jour
2 = 2 jours
1/24 = 1 heure
1/24/60 = 1 minute
etc ...

Dans l'exemple cité, tu peux donc faire:
DateTimePicker2.DateTime := DateTimePicker1.DateTime + StrToIntDef(Edit1.Text, 0);

a+



Composants Cindy pour Delphi
Faites une donation.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_MAURICIO
divin1975 83 Messages postés mardi 7 juin 2011Date d'inscription 9 novembre 2013 Dernière intervention - 21 déc. 2012 à 10:35
0
Utile
oui, tous ces codes ont marchés parfaitement: @pierrotk10d, @cirec, @korgis.
Vous êtes supers... Je descends rencontrer ce gars là maintenant et lui montrer que Delphi vit encore.

Divin1975 (ISRAEL)
Commenter la réponse de divin1975
korgis 411 Messages postés samedi 17 mai 2003Date d'inscription 16 mars 2018 Dernière intervention - 23 déc. 2012 à 10:01
0
Utile
Ouais...

Delphi, ça le fait !
Commenter la réponse de korgis

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.