WINDEV WEBDEV WINDEV Mobile Others DateTimeDifference (Function) In french: DateHeureDifférence Calculates the difference between two dates and times.Remarks: You can also use the '-' (minus) operator to calculate the difference between two dates. To display the result of this function in a Duration variable, use StringToDuration.Example // Time elapsed since 01/01/1998 at 12:15Diff is stringDiff = DateTimeDifference("199801011215", SysDateTime())// Display time elapsedInfo("Time elapsed: " + CR + ... Left(Diff, 8) + "days" + CR + ... Middle(Diff, 9, 2) + "hours" + CR + ... Middle(Diff, 11, 2) + "minutes" + CR + ... Middle(Diff, 13, 2) + "seconds" + CR + ... Middle(Diff, 15, 2) + "hundredths of a second") // To fill a duration from the result of DateTimeDifferenceDiff is string = DateTimeDifference("199801011215", SysDateTime())// convert the difference into a duration variableDuration1 is Duration = StringToDuration(Diff, durationCenti) // --------------------------------------------// Other possible solution // DateTime1 is DateTime = "199801011215"// DateTime2 is DateTime = DateTimeSys()// Duration1 is Duration = DateTime2 - DateTime1// ---------------------------------------------- // Display time elapsedInfo("Time elapsed: " + Duration1.Day + "days" + CR + ... Duration1.Hour + "hours" + CR + ... Duration1.Minute + "minutes" + CR + ... Duration1.Second + "seconds" + CR + ... Duration1.Millisecond + "thousandths of a second") Syntax = DateTimeDifference( , ) : Character stringNumbers of days, hours, minutes and seconds elapsed between two dates in +/-DDDDDDHHMMSSCC format where:DDDDDD is the number of days elapsed between the two specified "Date - Time",HH is the number of hours,MM is the number of minutes,SS is the number of seconds,CC is the number of hundredths of a second.This result comes from the following operation: - . This result contains the '-' sign if the is later than the .Caution: To assign this result to a Duration variable, use StringToDuration with the durationCenti constant. : Character string or DateTime variableStart date/time in the following format:YYYYMMDDHHmmSSCCYYYYMMDDHHmmSSYYYYMMDDHHmmYYYYMMDDHH : Character string or DateTime variableEnd date/time in the following format:YYYYMMDDHHmmSSCCYYYYMMDDHHmmSSYYYYMMDDHHmmYYYYMMDDHH Remarks The validity of the dates and times passed as parameters is checked. A message is displayed if the date or time is invalid. A "Date - Time" is considered invalid if:The date is invalid. You can check the validity of a date using DateValid.The time is invalid. You can check the validity of a time using TimeValid.This function cannot be used to calculate the difference between two dates before October 14, 1582 (the change from the Julian to the Gregorian calendar will not be taken into account). The date storage format allows you to store dates from 01/01/0001 to 12/31/9999.WLanguage functions and WLanguage properties make accurate calculations on dates from January 1st, 1583.Business / UI classification: Neutral codeComponent: wd270std.dll Minimum version required Version 9 This page is also available for…
 Video DateTimeDifference
 https://youtu.be/c-Ih6WpX4Wshttps://windevdesenvolvimento.blogspot.com/2019/05/dicas-2106-windev-webdev-mobile-data-29.html// EDT_BTN_cALCULAR_DIASdiferencia is string = DateTimeDifference(EDT_DATA_INICIAL_1, EDT_DATA_FINAL_1)duracao is Duration=StringToDuration(diferencia, durationCenti)EDT_dias_1=duracao..Day
 amarildo
 11 May 2019
 Display the result of DateTimeDifference
 DateTimeLOGIN = Table.MyLOGINDateTimeLOGOUT = Table.MyLOGOUTMyDuration = DateTimeDifference(DateTimeLOGIN,DateTimeLOGOUT)+"0"Table.MyDuration = MyDurationAdding the "0" to the result of the calculation is necessary to get a correct display!
 Guenter
 29 May 2018
 Example
 // Time passed since 01/01/1998 at 12:15sTDatahoraAgenda is string = Middle(StringToDate(EDT_DataAgendamento)+StringToTime(Middle(EDT_DataAgendamento,12,5)),1,12) //"199801011215"Diff is stringDiff = DateTimeDifference(sTDatahoraAgenda, DateSys() + TimeSys())//Display the time passed//Info("Time passed: " + CR + ...//Left(Diff, 8) + "days" + CR + ...//Middle(Diff, 9, 2) + "hours" + CR + ...//Middle(Diff, 11, 2) + "minutes" + CR + ...//Middle(Diff, 13, 2) + "seconds" + CR + ...//Middle(Diff, 15, 2) + "hundredths of a second") //Valida data nSMinutos is int = Val(Middle(Diff, 11, 2)) IF CBOX_Agendamento..Value = True AND Middle(Diff, 11, 2) < 30 Info("A data e hora agendada tem que ser maior do que 30 minutos") ok1 = False ELSE ok1 = True END