Skip to main content

Notifications

Customer experience | Sales, Customer Insights,...
Unanswered

Script weeknumber error after migration to Dynamics CRM 9.1

Posted on by 135

Hi All,

This javascript throws an error after migrating from CRM 2013 to Dynamics 365 CRM.

it should calculate the week number(new_weeknummer) and is triggerd onchange with the field new_prikdatum. 

The error:

TypeError: bd.getWeek is not a function

Help is much appreciated!

Thank you.

Jan

---------------

function weeknummer(ExecutionContext){
/**
* Returns the week number for this date. dowOffset is the day of week the week
* "starts" on for your locale - it can be from 0 to 6. If dowOffset is 1 (Monday),
* the week returned is the ISO 8601 week number.
* @param int dowOffset
* @return int
*/
Date.prototype.getWeek = function (dowOffset) {
/*getWeek() was developed by Nick Baicoianu at MeanFreePath: http://www.meanfreepath.com */

dowOffset = typeof(dowOffset) == 'int' ? dowOffset : 1; //default dowOffset to zero
var newYear = new Date(this.getFullYear(),0,1);
var day = newYear.getDay() - dowOffset; //the day of week the year begins on
day = (day >= 0 ? day : day + 7);
var daynum = Math.floor((this.getTime() - newYear.getTime() -
(this.getTimezoneOffset()-newYear.getTimezoneOffset())*60000)/86400000) + 1;
var weeknum;
//if the year starts before the middle of a week
if(day < 4) {
weeknum = Math.floor((daynum+day-1)/7) + 1;
if(weeknum > 52) {
nYear = new Date(this.getFullYear() + 1,0,1);
nday = nYear.getDay() - dowOffset;
nday = nday >= 0 ? nday : nday + 7;
/*if the next year starts before the middle of
the week, it is week #1 of that year*/
weeknum = nday < 4 ? 1 : 53;
}
}
else {
weeknum = Math.floor((daynum+day-1)/7);
}
return weeknum;
}

if (ExecutionContext.getFormContext().getAttribute("new_prikdatum").getValue() != null)
{
var bd = ExecutionContext.getFormContext().getAttribute("new_prikdatum").getValue();

ExecutionContext.getFormContext().getAttribute("new_weeknummer").setValue(bd.getWeek());
ExecutionContext.getFormContext().getAttribute("new_weeknummer").setSubmitMode("always");
}
else
{
ExecutionContext.getFormContext().getAttribute(" new_weeknummer").setValue(null);
ExecutionContext.getFormContext().getAttribute(" new_weeknummer").setSubmitMode("always");
}
}

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Community AMA December 12th

Join us as we continue to demystify the Dynamics 365 Contact Center

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,240 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,149 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans