Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment calculer une différence entre deux dates avec infopath ?

2 réponses
Avatar
cado
Bonjour,

J'utilise un formulaire sous Infopath 2003 et j'ai un champ qui voudrait
être le résultat de la différence (en jours) de deux dates préalablement
saisies dans deux autres champs. Quelle est la formule adéquate ?

Merci

2 réponses

Avatar
cyril.hoeckman
bonjour
je connais pas les fonction Infopath;
mais je suppose que si tu peux transformer tes dates en jours de l'année( de
1 a 365 ou 366). tu pouras obtenir ton résultat.
cyril.

"cado" a écrit dans le message de
news:
Bonjour,

J'utilise un formulaire sous Infopath 2003 et j'ai un champ qui voudrait
être le résultat de la différence (en jours) de deux dates préalablement
saisies dans deux autres champs. Quelle est la formule adéquate ?

Merci


Avatar
Yao Allou Kouadio Gérard
si vous voulez utiliser du code VS 2005
utilisez ceci:
Déclarez d'abord:
private DateTime _DateDebut
{
get {
if (FormState["_Datedebut"]!=null)
{
return (DateTime)FormState["_Datedebut"] ;
}
else
{
return DateTime.Now;
}
}
set {
FormState["_Datedebut"] = value;
}
}
private DateTime _DateFin
{
get
{
if (FormState["_DateFin"] != null)
{
return (DateTime)FormState["_DateFin"];
}
else
{
return DateTime.Now;
}
}
set
{
FormState["_DateFin"] = value;

}

}
private TimeSpan _finale
{
get
{
if (FormState["_finale"] != null)
{
return (TimeSpan)FormState["_finale"];
}
else
{
return TimeSpan.MinValue;
}
}
set
{
FormState["_finale"] = value;

}

}

Dans les événements des deux dates (onchanged)

public void DernierJourAbsence_Changed(object sender, XmlEventArgs e)
{
//DateTime DateDebut = DateTime.Now;
//DateTime DateFin = DateTime.Now;
try
{
XPathNavigator xnDoc = this.MainDataSource.CreateNavigator();
XPathNavigator xnDateFin =
xnDoc.SelectSingleNode("/my:xmlCommunicationAbscence/my:DataCommunicationAbscence/my:DernierJourAbsence", this.NamespaceManager);
XPathNavigator xnDateDebut =
xnDoc.SelectSingleNode("/my:xmlCommunicationAbscence/my:DataCommunicationAbscence/my:PremierJourAbsence", this.NamespaceManager);
if (!string.IsNullOrEmpty(xnDateFin.Value) &&
!string.IsNullOrEmpty(xnDateDebut.Value))
{
_DateFin=Convert.ToDateTime(xnDateFin.Value);
_DateDebut = Convert.ToDateTime(xnDateDebut.Value);
XPathNavigator xnNbreJrs =
xnDoc.SelectSingleNode("/my:xmlCommunicationAbscence/my:DataCommunicationAbscence/my:NombreJourAbsence", this.NamespaceManager);
_finale = _DateFin - _DateDebut;
xnNbreJrs.SetValue(_finale.Days.ToString());
}

"cado" wrote:

Bonjour,

J'utilise un formulaire sous Infopath 2003 et j'ai un champ qui voudrait
être le résultat de la différence (en jours) de deux dates préalablement
saisies dans deux autres champs. Quelle est la formule adéquate ?

Merci