آموزش پاورفرم - اسکریپت های کاربردی
اسکریپت های مربوط به تاریخ
-
برای مقداردهی کنترل DatePicker از فرمول زیر
= new Date().format("yyyy-MM-dd");
-
و برای مقداردهی کنترل DateTimePicker از فرمول زیر
= new Date().format("yyyy-MM-dd HH:mm:ss");
-
پنهان کردن date در date time
var c = form.GetControl("c_OraPartenza").InputControl;
$(c.CTRL_DATE).parent().parent().css("display", "none");
-
اضافه / کم کردن روز به کنترل تاریخ – زمان
var theNewDateValue= pf.AddDaysToDate(new Date(), 2);
alert(theNewDateValue);
اگر تاریخ بصورت string باشد :
var theDateValue = form.GetControl('c_Date').GetValue();
var theNewDateValue = pf.AddDaysToDateString(theDateValue, 2);
alert(theNewDateValue );
-
کم کردن 10 روز به روز جاری
adddays(now(), -10)
-
اضافه / کم کردن ماه به کنترل تاریخ – زمان
addmonths(DateTime date, int months)
addmonths(today(), 1)
-
اضافه / کم کردن سال به کنترل تاریخ – زمان
addyears(DateTime date, int years)
var toDate = new Date(Date1);
var fromDate = new Date(Date2);
var Datediff = (toDate - fromDate) / (1000 * 60 * 60 * 24);
form.GetControl("c_FinalDiff").SetValue(Datediff);
parse کردن تاریخ به string و گرفتن مقادیر سال و ماه و روز و...
var dateInStringFormat = form.GetControl("c_RegistrationDate").GetValue();
var registrationDateObject = pf.ParseDate(dateInStringFormat);
var theRegistrationYear = registrationDateObject.getFullYear();
alert(theRegistrationYear);
سایر متد ها :
getDay()
getMonth()
getHours()
getSeconds()
getTime()
setDate()
setFullYear()
setHours()
setMonth()
setSeconds()
- تابع تبدیل تاریخ میلادی به شمسی به زبان جاوا اسکریپت (قابل استفاده در پاورفرم)
function div(a, b) {
return parseInt((a / b));
}
function gregorian_to_jalali(g_y, g_m, g_d) {
var g_days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
var j_days_in_month = [31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29];
var jalali = [];
var gy = g_y - 1600;
var gm = g_m - 1;
var gd = g_d - 1;
var g_day_no = 365 * gy + div(gy + 3, 4) - div(gy + 99, 100) + div(gy + 399, 400);
for (var i = 0; i < gm; ++i)
g_day_no += g_days_in_month[i];
if (gm > 1 && ((gy % 4 == 0 && gy % 100 != 0) || (gy % 400 == 0)))
/* leap and after Feb */
g_day_no++;
g_day_no += gd;
var j_day_no = g_day_no - 79;
var j_np = div(j_day_no, 12053);
/* 12053 = 365*33 + 32/4 */
j_day_no = j_day_no % 12053;
var jy = 979 + 33 * j_np + 4 * div(j_day_no, 1461);
/* 1461 = 365*4 + 4/4 */
j_day_no %= 1461;
if (j_day_no >= 366) {
jy += div(j_day_no - 1, 365);
j_day_no = (j_day_no - 1) % 365;
}
for (var i = 0; i < 11 && j_day_no >= j_days_in_month[i]; ++i)
j_day_no -= j_days_in_month[i];
var jm = i + 1;
var jd = j_day_no + 1;
jalali[0] = jy;
jalali[1] = jm;
jalali[2] = jd;
return jalali;
//return jalali[0] + "_" + jalali[1] + "_" + jalali[2];
//return jy + "/" + jm + "/" + jd;
}
function get_year_month_day(date) {
var convertDate;
var y = date.substr(0, 4);
var m = date.substr(5, 2);
var d = date.substr(8, 2);
convertDate = gregorian_to_jalali(y, m, d);
return convertDate;
}
function get_hour_minute_second(time) {
var convertTime = [];
convertTime[0] = time.substr(0, 2);
convertTime[1] = time.substr(3, 2);
convertTime[2] = time.substr(6, 2);
return convertTime;
}
function convertDate(date) {
var convertDateTime = get_year_month_day(date.substr(0, 10));
convertDateTime = convertDateTime[0] + "/" + convertDateTime[1] + "/" + convertDateTime[2] + " " + date.substr(10);
return convertDateTime;
}
function get_persian_month(month) {
switch (month) {
case 1:
return "فروردین";
break;
case 2:
return "اردیبهشت";
break;
case 3:
return "خرداد";
break;
case 4:
return "تیر";
break;
case 5:
return "مرداد";
break;
case 6:
return "شهریور";
break;
case 7:
return "مهر";
break;
case 8:
return "آبان";
break;
case 9:
return "آذر";
break;
case 10:
return "دی";
break;
case 11:
return "بهمن";
break;
case 12:
return "اسفند";
break;
}
}