שתף דרך


DateAdd, DateDiffופונקציות TimeZoneOffset

Functions חל על
DateAdd
DateDiff
אפליקציות Canvas Studio Copilot Studio זורמות עמודות נוסחאות Dataverse אפליקציות מונחות דגמים Power Platform CLI Dataverse פונקציות Power Pages
TimeZoneOffset אפליקציות Canvas Copilot Studio Desktop זורמות אפליקציות מונחות דגמים פונקציות Power Platform CLI Dataverse Power Pages
פונקציה חל על
DateAdd
DateDiff
TimeZoneOffset

מוצאת את ההפרש בערכי תאריך/שעה או מוסיפה לו ומבצעת המרה בין השעה המקומית ל- UTC.

תיאור

הפונקציה DateAdd מוסיפה מספר יחידות לערך תאריך/שעה. התוצאה היא ערך חדש של תאריך/שעה. ניתן גם לחסר מספר יחידות מתוך ערך תאריך/שעה על-ידי ציון ערך שלילי.

הפונקציה DateDiff מחזירה את ההפרש בין שני ערכי תאריך/שעה. התוצאה היא מספר שלם של יחידות.

עבור שתי הפונקציות, היחידות יכולות להיות TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters או TimeUnit.Years. כברירת מחדל, שתי הפונקציות משתמשות ב- TimeUnit.Days‎ בתור יחידות.

הפונקציה TimeZoneOffset מחזירה את מספר הדקות בין השעה המקומית של המשתמש לבין UTC (זמן אוניברסלי מתואם).

באפשרותך להשתמש עם DateAdd כדי להמיר TimeZoneOffset בין השעה המקומית של המשתמש לבין UTC (זמן אוניברסלי מתואם). הוספה TimeZoneOffset תמיר זמן מקומי ל- UTC ותחסר אותו (הוספת הערך השלילי) תומר מ- UTC לזמן מקומי.

ראה גם סוגי הנתונים 'תאריך', 'שעה' ו'תאריך ושעה' ועבודה עם תאריכים ושעות לקבלת מידע נוסף.

תחביר

DateAdd( DateTime, חיבור [, יחידות ] )

  • DateTime - חובה. ערך תאריך/שעה שעליו מתבצעת הפעולה.
  • תוספת - חובה. המספר, ב- Units‎, שיש להוסיף ל- DateTime‎.
  • יחידות - אופציונלי. סוג היחידות להוספה: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters או TimeUnit.Years. אם לא צוין סוג, נעשה שימוש ב- TimeUnit.Days‎.

DateDiff( StartDateTime, EndDateTime [, Units ] )

  • StartDateTime - חובה. ערך תאריך/שעה של ההתחלה.
  • EndDateTime - חובה. ערך תאריך/שעה של הסיום.
  • יחידות - אופציונלי. סוג היחידות להחסיר: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters או TimeUnit.Years. אם לא צוין סוג, נעשה שימוש ב- TimeUnit.Days‎.

TimeZoneOffset( [ DateTime ] )

  • DateTime - אופציונלי. ערך תאריך/שעה שעבורו יש להחזיר את ההיסט. כברירת מחדל, נעשה שימוש בתאריך/שעה הנוכחיים.

דוגמאות

בכל הדוגמאות הללו, נניח שהתאריך והשעה הנוכחיים הם 15 ביולי 2013, 13:02.

פשוט DateAdd

נוסחה תיאור תוצאה
Text( DateAdd( Now(), 3 ),
"dd-mm-yyyy hh:mm" )
מוסיפה שלושה ימים (יחידות ברירת המחדל) לתאריך והשעה הנוכחיים. "18-07-2013 13:02"
Text( DateAdd( Now(), 4, TimeUnit.Hours ),
"dd-mm-yyyy hh:mm" )
מוסיפה ארבע שעות לתאריך והשעה הנוכחיים. "15-07-2013 17:02"
Text( DateAdd( Today(), 1, TimeUnit.Months ),
"dd-mm-yyyy hh:mm" )
הוספת חודש אחד לתאריך הנוכחי, ללא שעה, מכיוון ש- Today‎ אינו מחזיר רכיב שעה. "15-08-2013 00:00"
Text( DateAdd( Now(), -30, TimeUnit.Minutes ),
"dd-mm-yyyy hh:mm" )
מחסירה 30 דקות מהתאריך והשעה הנוכחיים. "15-07-2013 12:32"

פשוט DateDiff

נוסחה תיאור תוצאה
DateDiff( Now(), DateValue("1/1/2014") ) מחזירה את ההפרש בין שתי היחידות ביחידות ברירת המחדל, שהן TimeUnit.Days‎ 170
DateDiff( Now(), DateValue("1/1/2014"), TimeUnit.Months ) מחזירה את ההפרש בין שני הערכים ב- TimeUnit.Months‎ 6
DateDiff( Now(), Today(), TimeUnit.Minutes ) מחזירה את ההפרש בין התאריך/שעה הנוכחיים לתאריך הנוכחי בלבד (ללא שעה), בדקות. מכיוון ש- Now מאוחר יותר מ- Today, התוצאה תהיה שלילית. ‎-782

הפרש תאריכים עם תוצאות שבר

הפונקציה DateDiff מחזירה רק מספר שלם של יחידות החסרה, והמדויקות נתונה ביחידה שצוינה. כדי לחשב את ההפרש בדיוק גבוה יותר, השתמש ביחידה קטנה יותר והמר את התוצאה כראוי, כמו בדוגמאות שלהלן.

נוסחה תיאור תוצאה
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Hours ) המערכת מתעלמת מהדקות/שניות, ההפרש מבוסס על הזמן עד לשעה. 1
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Minutes )/60 הדקות נמצאות בשימוש בהפרש, והתוצאה מחולקת ב- 60 כדי שההפרש יהיה בשעות. 0.5
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Seconds )/3600 הדקות והשניות נמצאות בשימוש בהפרש; התוצאה מחולקת ב- 3600 כדי שההפרש יהיה בשעות. 0.51

המרה ל- UTC

כדי להמיר ל- UTC (זמן אוניברסלי מתואם), הוסף את TimeZoneOffset עבור הזמן הנתון.

לדוגמה, נניח שהתאריך והשעה הנוכחיים הם 15 ביולי 2013, 13:02 בשעון קיץ החוף המערבי (PDT,‏ UTC-7). כדי לקבוע את השעה הנוכחית ב- UTC, השתמש בנוסחה הבאה:

  • DateAdd(Now(), TimeZoneOffset(), TimeUnit.Minutes )

TimeZoneOffset ברירות המחדל של השעה הנוכחית, כך שאין צורך להעביר אותה לארגומנט.

כדי להציג את התוצאה, השתמש בפונקציה Text‎ עם התבנית dd-mm-yyyy hh:mm, אשר תחזיר 15-07-2013 20:02.

המרה מ- UTC

כדי להמיר מ- UTC, החסר את (על-ידי TimeZoneOffset הוספת הערך השלילי) עבור הזמן הנתון.

לדוגמה, נניח שהתאריך והשעה בשעון UTC, 15 ביולי 2013, 20:02, מאוחסנים במשתנה בשם StartTime‎. כדי להתאים את השעה לאזור הזמן של המשתמש, השתמש בנוסחה הבאה:

  • DateAdd( StartTime, -TimeZoneOffset( StartTime ), TimeUnit.Minutes )

שים לב לסימן השלילי TimeZoneOffset לפני כן כדי לחסר את ההיסט במקום להוסיף אותו.

כדי להציג את התוצאה, השתמש בפונקציה Text עם התבנית dd-mm-yyyy hh:mm, אשר תחזיר את 15-07-2013 13:02 אם אתה נמצא בשעון קיץ החוף המערבי.