Користувальницькі налаштування

Налаштування сайту


escript:date

Игры с датами в eScript

Форматирование Siebel даты

Готовая функция по форматированию Siebel даты в любую другую

Пример вызова

  var msg ="";
 
  msg = GetSiebelDate(bc.GetFieldValue("Created"), "%Y-%d-%m %H:%M:%S");
example.js
function siebelDateformat(sDate, pattern){
  //Функция преобразования Siebel даты по формату
  //pattern "%m/%d/%Y %H:%M:%S", "%H:%M", "%d.%m.%Y"
  var result = "";
  try{
    var dTime = new Date(sDate);
    dTime = dTime.getTime()/1000;
    dTime = Clib.localtime(dTime);
 
    Clib.strftime(result, pattern, dTime);
  } catch(e){
    throw e;
  } finally {
    dTime = null;
  }
  return result;
}

Сравниваем дат

example.js
var sDate = bcSR.GetFieldValue("Date");
var dTime = new Date(sDate);
dTime = dTime.getTime()/1000;
 
tDate = tDate + 86400*addDay;

Сегодняшняя дата + 1 день

example.js
var date = Clib.time();
date = date + 86400; // +1 день от текущей даты (в секундах)
date = Date.fromSystem(date);
Clib.strftime(date, "%m/%d/%Y %H:%M:%S", date)

Форматирование даты

Функция форматирования даты: На вход приходит два параметра:

string дата

format формат в котором приходит дата

На выход функция возвращает отформатированную строку в формате Siebel даты

function dateFormat(string,format){
	var ret	= "";
	var DD	= "";
	var MM	= "";
	var YYYY = "";
	var hh	= "";
	var mm	= "";
	var ss	= "";
 
	if(format == "YYYY-MM-DD"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			ret = MM+"/"+DD+"/"+YYYY;
		}
	} else if (format == "YYYY-MM-DD hh:mm"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			hh = string.substr(11,2);
			mm = string.substr(14,2);
			ret = MM + "/" + DD + "/" + YYYY+" "+hh+":"+mm+":00";
		}
	} else if (format == "YYYY-MM-DD hh:mm:ss"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			hh = string.substr(11,2);
			mm = string.substr(14,2);
			ss = string.substr(17,2);
			ret = MM + "/" + DD + "/" + YYYY+" "+hh+":"+mm+":"+ss;
		}
	} else if(format == "YYYY-MM-DD"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			ret = MM+"/"+DD+"/"+YYYY;
		}
	} else if (format == "YYYY-MM-DD hh-mm"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			hh = string.substr(11,2);
			mm = string.substr(14,2);
			ret = MM + "/" + DD + "/" + YYYY+" "+hh+":"+mm+":00";
		}
	} else if (format == "YYYY-MM-DD hh-mm-ss"){
		if(string != ""){
			DD = string.substr(8,2);
			MM = string.substr(5,2);
			YYYY = string.substr(0,4);
			hh = string.substr(11,2);
			mm = string.substr(14,2);
			ss = string.substr(17,2);
			ret = MM + "/" + DD + "/" + YYYY+" "+hh+":"+mm+":"+ss;
		}
	}
 
	return(ret);
}

Форматирование даты

function strToDate(sDate) {
// Параметры : 
// sDate  :  строка в формате "mm/dd/yyyy" или "mm/dd/yyyy hh:mm:ss"
// Returns : объект типа Даты
	var ArDateTime = sDate.split (" ");
	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 = ArDateTime[1];
		var splitTime = ArTime.split(":");
		if (splitTime[0]=="00" && splitTime[1]=="00" && splitTime[2]=="00" ){
			return (new Date(nYear, nMonth-1 , nDay));
		} else {
			var nHours   = splitTime[0];
			var nMinutes = splitTime[1];
			var nSeconds = splitTime[2];
			return (new Date(nYear,nMonth-1,nDay, nHours, nMinutes, nSeconds));
		}
	}
}
function getSiebelDate(sDate, pattern){
	//Функция преобразования сибель даты в любой формат по pattern
	//pattern "%m/%d/%Y %H:%M:%S", "%H:%M", "%d.%m.%Y"
	var result = "";
	try{
		var dTime = new Date(sDate);
		dTime = dTime.getTime()/1000;
		dTime = Clib.localtime(dTime);
 
		Clib.strftime(result, pattern, dTime);
	} catch(e){
		throw e;
	} finally {
		dTime = null;
	}
	return result;
}

wiki_admin 2015/01/16 10:41 date

escript/date.txt · Востаннє змінено: 2023/04/05 14:46 повз wiki_admin