Skip to main content

Notifications

Microsoft Dynamics CRM forum
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

Anton Venter – Community Spotlight

Kudos to our October Community Star of the month!

Announcing Our 2024 Season 2 Super Users!

A new season of Super Users has arrived, and we are so grateful for the daily…

Dynamics 365 Community Newsletter - September 2024

Check out the latest community news

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 290,524 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 228,469 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,148

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans