2010-07-16 5 views
0

J'ai créé la base de données Lotus Notes pour le département des ressources humaines. J'ai entré le champ Date d'inscription. Entrez également le champ "Total Service Period". Je souhaite que le nombre d'années, le mois et les jours de service calculés s'affichent sur «Afficher» et que la période de service soit mise à jour quotidiennement.Nombre d'années, mois et jours

Répondre

0

Ceci est juste une nouvelle publication de a formula I postedsept ans auparavant dans Lotus Notes et Domino 4 et 5 forum:

startDate := Time1; 
endDate := Time2; 
startDay := @Day(startDate); 
endDay := @Day(endDate); 
startMonth := @Month(StartDate); 
endMonth := @Month(endDate); 
startYear := @Year(startDate); 
endYear := @Year(endDate); 
lessAYear := @If(endMonth > startMonth;@False; (endMonth = startMonth) & (endDay >= startDay); @False; @True); 
yearsDiff := @If(lessAYear; endYear - startYear - 1; endYear - startYear); 
@Set("endDate"; @Adjust(endDate;-yearsDiff;0;0;0;0;0)); 
monthAdj := @If(startDay>endDay;-1;0); 
monthsDiff := @If(lessAYear; (endMonth + 12) - startMonth + monthAdj; endMonth - startMonth + monthAdj); 
@Set("endDate";@Adjust(endDate;0;-monthsDiff;0;0;0;0)); 
daysDiff := @Integer((endDate - startDate)/86400); 
@Prompt([Ok];"";@Text(yearsDiff) + "years, " + @Text(monthsDiff) + " months, and " + @Text(daysDiff) + " days.") 
0

n'a pas testé celui-ci complètement, mais juste pour le plaisir que je Je voulais partager cette formule:

diff:= @Adjust(endDate; [email protected](startDate); [email protected](startDate)+1; 
       [email protected](startDate)+1; 0; 0; 0); 
y:= @Year(diff); 
y:= @If(@IsError(n); 0; n>100; 0; n) 

Je suppose que les mois et les jours peuvent être calculés d'une manière similaire.

Questions connexes