Skip to main content

Notifications

Announcements

No record found.

Field Service forum

Schedule Board Issue

(1) ShareShare
ReportReport
Posted on by Microsoft Employee

Good day Community

 

During testing, the schedule board just stopped working and could not schedule resource requirements to the board anymore.

I have not stopped to try and find the issue but I cannot make out what is causing the schedule to break.

 

  1. When trying to allocate a resource requirement. The below error is shown after selecting “Find Availability”

 TypeError.png

object.Object.png

  1. The schedule just continues to load. When I select F12 to display the console. These are the error messages they display (See below), and to be honest, I have tried my best to understand them but I am having no luck.

 F12Error.png

 

Any feedback on this will be highly appreciated. This is quite urgent

Categories:
  • Fannie30 Profile Picture
    Fannie30 2,990 on at
    RE: Schedule Board Issue

    Have you logged a support ticket as well?  I’ve seen the error before and will do some digging to recall what it was and how I resolved.

  • Thomas David Dayman Profile Picture
    Thomas David Dayman 11,323 on at
    RE: Schedule Board Issue

    I span up a new environment and it looks like its working for me. To be fair, the schedule board health check does not work on my old orgs anymore.

    Make sure you have the html page in you org. By searching for web resources and changing the view to 'Webpage'

    2251.Screenshot_5F00_2.png

    I'm not sure why it doesn't work for you, but this is what the output looks like.

    2251.Screenshot_5F00_2.png

    my solution versions:

    MicrosoftDynamicsScheduling Universal Resource Scheduling 3.4.0.141

    Microsoft Dynamics 365Version 1710 (9.1.0.2435) online

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Schedule Board Issue

    Hi Thomas

    I have tried the above as you suggested but i am getting the following errors.

    Does not seem to have worked. See picture below.

    Console.jpg

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Schedule Board Issue

    @Thomas, does this work for you? Says 404 for me in my org, I am on latest FS solution 8.x

    xxxxxxxxx.crm.dynamics.com/.../ServiceHealth.html

  • Thomas David Dayman Profile Picture
    Thomas David Dayman 11,323 on at
    RE: Schedule Board Issue

    Hi all,

    I have some possible fixes for the Schedule Board so please try them and see if you get any results

    You can check your health of the schedule board by using this link (Make sure you add your org address to 'orgurl'

    [View:https://orgurl/WebResources/msdyn_/fps/servicehealth/ServiceHealth.html:750:50]

    You can also execute sync jobs from the console on the schedulerboard. You need to make sure you select the scheduleboard.html. Then go into the console and type the functions listed below, I have described what each of them do. These are the only ones i've seen so far and It looks like that it  re adds certain missing or edited components. In one of my cases executing FpsUtils.CrmActions.ExecuteJobSync(606) fixed one of my issues. Once you have executed one of these please refresh the schedule board

    0755.Screenshot_5F00_2.png

    FpsUtils.CrmActions.ExecuteJobSync(604)
     "Schedule Board need to show the Crew, Facility and…ity. Added conditions to Retrieve Resources Query"}

    FpsUtils.CrmActions.ExecuteJobSync(605)
    "Added Default Retrieve Utilization Query to show the target utilization of the resource."}

    FpsUtils.CrmActions.ExecuteJobSync(606)
    "Added Resource Utilization Board Settings record."}

    FpsUtils.CrmActions.ExecuteJobSync(607)
    "Moved the additional capacity expand arrow when row height is small."}

    FpsUtils.CrmActions.ExecuteJobSync(608)
    "Update null values to Filter Layout, Resource Cell…eve Query in Resource Utilization Board Settings."}

    FpsUtils.CrmActions.ExecuteJobSync(609)
    "Added interval and results per interval attributes to Schedule Assistant Constraints Query."}

    FpsUtils.CrmActions.ExecuteJobSync(610)
    "Added interval and results per interval controls to Schedule Assistant Filter Layout."}

  • Community Member Profile Picture
    Community Member Microsoft Employee on at
    RE: Schedule Board Issue

    Hi Tyler,

    I'm also getting the same error as well as the following errors:

    TypeError: bookingSetupMetadata is null
    TypeError: Cannot read property 'get' of null
    TypeError: Unable to get property 'get' of undefined or null reference

    {object Object}

    SchPage-JS.jpg

    The bookingSetupMetadata was not "null" on the resource requirement. Once I removed the bookingSetupMetadata lookup and readded the same entity record, this error was resolved. So not too sure what is going on there.

    As for the type errors where the read property is 'null' and [object Object]

    I noticed that with the read property it was coming through, it was failing on the following Jscript webresource: msdyn_/fps/ScheduleBoard/SchPage.js

    SchPage-JS.jpg

    CrashReport:
    FileName:/%7B636854384890002048%7D/WebResources/msdyn_/fps/ScheduleBoard/SchPage.js
    LineNumber:52735
    Function:
    ErrorReport:<CrmScriptErrorReport>
    <ReportVersion>1.0</ReportVersion>
    <OriginContext></OriginContext>
    <OriginCorrelationId>undefined</OriginCorrelationId>
    <ScriptErrorDetails>
    <Message>Unable to get property &#39;length&#39; of undefined or null reference</Message>
    <Line>52735</Line>
    <URL>&#47;&#37;7B636854384890002048&#37;7D&#47;WebResources&#47;msdyn_&#47;fps&#47;ScheduleBoard&#47;SchPage.js&#63;ver&#61;0</URL>
    <PageURL>&#47;&#37;7B636854384890002048&#37;7D&#47;WebResources&#47;msdyn_&#47;fps&#47;ScheduleBoard&#47;scheduleboard.html&#35;tab&#61;62159fef-f016-e911-a955-000d3a454e11</PageURL>
    <Function></Function>
    <FunctionRaw></FunctionRaw>
    <SourceScriptName></SourceScriptName>
    <CallStack>
    TypeError&#58; Unable to get property &#39;length&#39; of undefined or null reference&#10; at Anonymous function &#40;https&#58;&#47;&#47;n

    Then, for the [object Object]

    [object Object]
    {
    [functions]: ,
    $applyConfigs: true,
    $className: "Ext.tab.Panel",
    $configPrefixed: false,
    $configStrict: false,
    $elementEventOptions: { },
    $eventedController: { },
    $eventOptions: { },
    $hasDelegatedListeners: { },
    $links: null,
    $observableInitialized: true,
    $observableMixedIn: 1,
    $orderToPriority: { },
    __proto__: { },
    _alignRe: [regex] /^([a-z]+)-([a-z]+)([?!])?$/,
    _applyDefaultsOptions: { },
    _ariaAttributes: null,
    _asLayoutRoot: { },
    _bind: null,
    _borderRegionInited: true,
    _controller: null,
    _defaultTabRotation: { },
    _fixedLayerCls: "x-fixed-layer",
    _isLayoutRoot: false,
    _keyHandlers: null,
    _layerCls: "x-layer",
    _ltrCls: "x-ltr",
    _noMargin: { },
    _notAsLayoutRoot: { },
    _positionTopLeft: [ ],
    _publishes: null,
    _reference: null,
    _renderState: 1,
    _rtlCls: "x-rtl",
    _scrollableCfg: { },
    _scrollFlags: { },
    _session: null,
    _showContext: { },
    _twoWayBindable: null,
    _viewModel: null,
    _visModeMap: { },
    activeCounter: 0,
    activeTab: { },
    activeUI: "default",
    alias: [ ],
    alignOnScroll: true,
    alignTarget: null,
    allowDomMove: true,
    alternateClassName: [ ],
    alwaysOnTop: false,
    animateShadow: false,
    animCollapse: false,
    ariaAttributes: null,
    ariaEl: "el",
    ariaRenderAttributes: { },
    ariaRole: "region",
    ariaStaticRoles: { },
    ariaUsesMainElement: true,
    autoDestroy: true,
    autoGenId: false,
    autoRender: false,
    autoShow: false,
    baseCls: "x-panel",
    bbar: null,
    bind: null,
    bodyPosProps: { },
    bodyStyle: "background-color: transparent; border-width:0px;",
    border: true,
    borderBoxCls: "x-border-box",
    buttons: null,
    childEls: { },
    closable: false,
    closeAction: "destroy",
    closeToolText: "Close Panel",
    collapsed: false,
    collapsedCls: "collapsed",
    collapseDirection: "top",
    collapseFirst: true,
    collapseToolText: "Collapse Panel",
    collapsible: undefined,
    componentCls: "x-panel",
    componentLayout: { },
    componentLayoutCounter: 0,
    config: { },
    constrain: false,
    constrainHeader: false,
    contentPaddingProperty: "bodyPadding",
    controller: null,
    data: null,
    defaultAlign: "c-c",
    defaultBindProperty: "title",
    defaultConfig: { },
    defaultDockWeights: { },
    defaultIdPrefix: "ext-",
    defaultIdSeparator: "-",
    defaultListenerScope: false,
    defaultType: "panel",
    deferLayouts: false,
    deferredRender: true,
    destroyed: false,
    detachOnRemove: true,
    disabled: false,
    disabledCls: "x-item-disabled",
    disabledRe: [regex] /^(?:button|input|select|textarea|optgroup|option|fieldset)$/i,
    dockedItems: { },
    dockOrder: { },
    draggable: false,
    emptyArray: [ ],
    eventedBeforeEventNames: { },
    events: { },
    eventsSuspended: 0,
    expandToolText: "Expand Panel",
    fbar: null,
    floatable: true,
    floating: false,
    focusable: false,
    focusCls: "focus",
    focusOnToFront: true,
    frame: undefined,
    frameCls: "x-frame",
    frameElNames: [ ],
    frameHeader: true,
    frameIdRegex: [regex] /[\-]frame\d+[TMB][LCR]$/,
    frameInfoCache: { },
    frameSize: null,
    frameTableTpl: [ ],
    frameTpl: [ ],
    glyph: null,
    hasFocus: false,
    hasListeners: { },
    headerPosition: "top",
    hidden: false,
    hiddenOnCollapse: { },
    hideCollapseTool: false,
    hideMode: "display",
    hierarchyEventSource: { },
    horizontalDocks: 0,
    horizontalPosProp: "left",
    icon: null,
    iconAlign: "left",
    iconCls: null,
    id: "TopTabPanel",
    idCleanRegex: [regex] /\.|[^\w\-]/g,
    inheritedState: { },
    inheritedStateInner: { },
    initialConfig: { },
    isAnimate: true,
    isCenter: true,
    isComponent: true,
    isConfiguring: false,
    isContainer: true,
    isDockingContainer: true,
    isFirstInstance: true,
    isHorz: false,
    isIdentifiable: true,
    isInstance: true,
    isObservable: true,
    isPanel: true,
    isQueryable: true,
    isVert: false,
    isViewportBorderChild: true,
    itemCls: "x-tabpanel-child",
    items: { },
    keyHandlers: null,
    layout: { },
    layoutCounter: 0,
    layoutSuspendCount: 0,
    lbar: null,
    liquidLayout: false,
    listeners: null,
    loader: null,
    managedListeners: [ ],
    manageHeight: true,
    manageLayoutScroll: true,
    maskElement: "el",
    maskOnDisable: true,
    maxHeight: null,
    maxTabWidth: undefined,
    maxWidth: null,
    minButtonWidth: 75,
    minHeight: null,
    minTabWidth: undefined,
    minWidth: null,
    mixinConfig: { },
    mixins: { },
    nonMaskableRe: [regex] /^(?:input|select|textarea|optgroup|option|table)$/i,
    offsetsCls: "x-hidden-offsets",
    ownerCt: { },
    ownerLayout: { },
    placeholderCollapseHideMode: 1,
    plain: false,
    plugins: [ ],
    pluginsInitialized: true,
    preventChildDisable: false,
    preventDefaultAlign: false,
    preventHeader: false,
    protoBody: { },
    protoEl: { },
    publishes: null,
    rbar: null,
    reference: null,
    referenceHolder: false,
    region: "center",
    removePanelHeader: true,
    renderData: { },
    rendered: false,
    renderTpl: { },
    requires: [ ],
    resizeHandles: "all",
    resizeTabs: true,
    rootCls: "x-body",
    rtlCollapseDirs: { },
    rtlFrameTableTpl: [ ],
    saveDelay: 100,
    scrollable: null,
    scrollerCls: "x-scroll-scroller",
    scrollerSelector: ".x-scroll-scroller",
    scrollFlags: { },
    session: null,
    shadow: "sides",
    shrinkWrap: 2,
    shrinkWrapDock: false,
    stateEvents: [ ],
    stateful: false,
    superclass: { },
    suspendLayout: false,
    synthetic: false,
    tabBar: { },
    tabGuard: false,
    tabGuardTpl: "<div id="{id}-{tabGuardEl}" data-ref="{tabGuardEl}" tabIndex="0" class="x-tab-guard x-tab-guard-{tabGuard}" ></div>",
    tabPosition: "top",
    tabRotation: "default",
    tabStretchMax: true,
    tbar: null,
    title: null,
    titleAlign: "left",
    titleCollapse: undefined,
    titleRotation: "default",
    toFrontOnShow: true,
    tools: [ ],
    touchScroll: false,
    tplWriteMode: "overwrite",
    twoWayBindable: null,
    ui: "default",
    uiCls: [ ],
    userCls: null,
    uses: [ ],
    validIdRe: [regex] /^[a-z_][a-z0-9\-_]*$/i,
    validRefRe: [regex] /^[a-z_][a-z0-9_]*$/i,
    viewModel: null,
    weight: null,
    xtype: "tabpanel",
    xtypes: [ ],
    xtypesChain: [ ],
    xtypesMap: { }
    }

    Resources.load.request
    [object Object]
    {
    [functions]: ,
    __proto__: { },
    DisplayOnScheduleAssistant: false,
    DisplayOnScheduleAssistant@ufx-formatvalue: "false",
    DisplayOnScheduleBoard: true,
    DisplayOnScheduleBoard@ufx-formatvalue: "true",
    ScheduleBoard: { }
    }

    Resources.load.response
    [object Object]
    {
    [functions]: ,
    __proto__: { },
    Resources: [
    0: { },
    1: { },
    2: { },
    3: { },
    4: { },
    5: { },
    6: { },
    7: { },
    8: { },
    9: { },
    10: { },
    11: { },
    12: { },
    13: { },
    14: { },
    15: { },
    16: { },
    17: { },
    18: { },
    19: { },
    20: { },
    21: { },
    22: { },
    23: { },
    24: { },
    length: 25
    ]
    }

    There is no null values on the resource requirement and I'm really not sure what resource object is causing the second issue.

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

November Spotlight Star - Khushbu Rajvi

Congratulations to a top community star!

Forum Structure Changes Coming on 11/8!

In our never-ending quest to help the Dynamics 365 Community members get answers faster …

Dynamics 365 Community Platform update – Oct 28

Welcome to the next edition of the Community Platform Update. This is a status …

Leaderboard

#1
André Arnaud de Calavon Profile Picture

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

#2
Martin Dráb Profile Picture

Martin Dráb 230,503 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans