escript:date
Розбіжності
Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версійПопередня ревізіяНаступна ревізія | Попередня ревізія | ||
| escript:date [2024/09/16 17:42] – wiki_admin | escript:date [2026/04/08 13:27] (поточний) – [Сравниваем дат] wiki_admin | ||
|---|---|---|---|
| Рядок 15: | Рядок 15: | ||
| <file javascript example.js> | <file javascript example.js> | ||
| - | function | + | function |
| - | // | + | // |
| - | //pattern " | + | //pattern " |
| - | var result = ""; | + | var result = ""; |
| - | try{ | + | try{ |
| - | var dTime = new Date(sDate); | + | var dTime = new Date(sDate); |
| - | dTime = dTime.getTime()/ | + | dTime = dTime.getTime()/ |
| - | dTime = Clib.localtime(dTime); | + | dTime = Clib.localtime(dTime); |
| - | + | ||
| - | Clib.strftime(result, | + | Clib.strftime(result, |
| - | } catch(e){ | + | } catch(e){ |
| - | throw e; | + | throw e; |
| - | } finally { | + | } finally { |
| - | dTime = null; | + | dTime = null; |
| - | } | + | } |
| - | return result; | + | return result; |
| } | } | ||
| </ | </ | ||
| - | |||
| - | |||
| - | ===== Сравниваем дат ===== | ||
| - | |||
| - | <file javascript example.js> | ||
| - | var sDate = bcSR.GetFieldValue(" | ||
| - | var dTime = new Date(sDate); | ||
| - | dTime = dTime.getTime()/ | ||
| - | |||
| - | tDate = tDate + 86400*addDay; | ||
| - | |||
| - | |||
| - | </ | ||
| - | |||
| - | |||
| Рядок 55: | Рядок 40: | ||
| <file javascript example.js> | <file javascript example.js> | ||
| var date = Clib.time(); | var date = Clib.time(); | ||
| + | var date = new Date(this.GetFieldValue(" | ||
| date = date + 86400; // +1 день от текущей даты (в секундах) | date = date + 86400; // +1 день от текущей даты (в секундах) | ||
| - | date = Date.fromSystem(date); | + | Clib.strftime(date, |
| - | Clib.strftime(date, | + | |
| </ | </ | ||
| - | |||
| - | |||
| - | ===== Форматирование даты ===== | ||
| - | |||
| - | Функция форматирования даты: | ||
| - | На вход приходит два параметра: | ||
| - | |||
| - | **string** дата | ||
| - | |||
| - | **format** формат в котором приходит дата | ||
| - | |||
| - | На выход функция возвращает отформатированную строку в формате Siebel даты | ||
| + | ===== Кількість років від дати народження ===== | ||
| <code javascript> | <code javascript> | ||
| - | function dateFormat(string, | + | var vSystemDateMilisecond |
| - | var ret = ""; | + | var vBirthDateMilisecond |
| - | var DD = ""; | + | var vDateDifferenceInMilisecond |
| - | var MM = ""; | + | var vDay = 86400000; |
| - | var YYYY = ""; | + | var vTotalDays |
| - | var hh = ""; | + | var minDays |
| - | var mm = ""; | + | var maxDays |
| - | var ss = ""; | + | |
| - | + | ||
| - | if(format == " | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8,2); | + | |
| - | MM = string.substr(5,2); | + | |
| - | YYYY = string.substr(0, | + | |
| - | ret = MM+"/" | + | |
| - | } | + | |
| - | } else if (format == "YYYY-MM-DD hh: | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8, | + | |
| - | MM = string.substr(5, | + | |
| - | YYYY = string.substr(0, | + | |
| - | hh = string.substr(11, | + | |
| - | mm = string.substr(14, | + | |
| - | ret | + | |
| - | } | + | |
| - | } else if (format | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8, | + | |
| - | MM = string.substr(5, | + | |
| - | YYYY = string.substr(0, | + | |
| - | hh = string.substr(11, | + | |
| - | mm = string.substr(14, | + | |
| - | ss = string.substr(17, | + | |
| - | ret = MM + "/" | + | |
| - | } | + | |
| - | } else if(format == " | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8, | + | |
| - | MM = string.substr(5, | + | |
| - | YYYY = string.substr(0, | + | |
| - | ret = MM+"/" | + | |
| - | } | + | |
| - | } else if (format == " | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8, | + | |
| - | MM = string.substr(5, | + | |
| - | YYYY = string.substr(0, | + | |
| - | hh = string.substr(11, | + | |
| - | mm = string.substr(14, | + | |
| - | ret = MM + "/" | + | |
| - | } | + | |
| - | } else if (format == " | + | |
| - | if(string != "" | + | |
| - | DD = string.substr(8, | + | |
| - | MM = string.substr(5, | + | |
| - | YYYY = string.substr(0, | + | |
| - | hh = string.substr(11, | + | |
| - | mm = string.substr(14, | + | |
| - | ss = string.substr(17, | + | |
| - | ret = MM + "/" | + | |
| - | } | + | |
| - | } | + | |
| - | + | ||
| - | return(ret); | + | |
| - | } | + | |
| - | </ | + | |
| - | + | if( vTotalDays >= minDays && vTotalDays <= maxDays){ | |
| - | + | | |
| - | ===== Форматирование даты ===== | + | } else { |
| - | + | | |
| - | <code javascript> | + | } |
| - | function strToDate(sDate) { | + | |
| - | // Параметры : | + | |
| - | // sDate : строка в формате " | + | |
| - | // Returns : объект типа Даты | + | |
| - | var ArDateTime | + | |
| - | var ArDate = ArDateTime[0]; | + | |
| - | var splitDate = ArDate.split ("/" | + | |
| - | var nDay = splitDate[1]; | + | |
| - | var nMonth = splitDate[0]; | + | |
| - | var nYear = splitDate[2]; | + | |
| - | if (ArDateTime.length == 1){ | + | |
| - | return (new Date(nYear, nMonth-1 , nDay)); | + | |
| - | } else { | + | |
| - | var ArTime | + | |
| - | var splitTime = ArTime.split(":"); | + | |
| - | if (splitTime[0]==" | + | |
| - | return (new Date(nYear, nMonth-1 , nDay)); | + | |
| - | } else { | + | |
| - | var nHours | + | |
| - | var nMinutes = splitTime[1]; | + | |
| - | var nSeconds = splitTime[2]; | + | |
| - | return (new Date(nYear, | + | |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| </ | </ | ||
| + | ===== strToDate===== | ||
| <code javascript> | <code javascript> | ||
| - | function | + | function |
| - | //Функция преобразования сибель даты в любой формат по pattern | + | // isoDateStr = "2025-08-12T12:10:23.156Z" |
| - | // | + | var parts = isoDateStr.split("T"); |
| - | var result | + | var datePart |
| - | try{ | + | var timePart |
| - | var dTime = new Date(sDate); | + | |
| - | dTime | + | |
| - | dTime = Clib.localtime(dTime); | + | |
| - | Clib.strftime(result, pattern, dTime); | + | // Відкидаємо мілісекунди і Z |
| - | } catch(e){ | + | timePart = timePart.replace(/Z$/, "" |
| - | throw e; | + | |
| - | } finally { | + | |
| - | dTime | + | var year = datePart.split(" |
| - | } | + | var month = datePart.split(" |
| - | return | + | var day = datePart.split(" |
| + | |||
| + | var siebelDate | ||
| + | |||
| + | return | ||
| } | } | ||
| </ | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| --- // | --- // | ||
| {{tag> | {{tag> | ||
escript/date.1726497731.txt.gz · Востаннє змінено: 2024/09/16 17:42 повз wiki_admin
