Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Uncaught TypeError: fieldName.contains is not a function

    Hello,

    I'm facing a strange issue on a ListGrid when exiting editor with some changes.
    It happens while I removed any EditorExitHandler, or CellSavedHandler.
    Note that I'm using AutoSaveEdits = true, and I don't get this issue when I set it to false.

    Any suggestion would be appreciated.

    Code:
    Stack from error.stack:
    _performActionOnValue(<no args: exited>) on [Class Canvas] @ DataBoundComponent.js:303:32
    _getFieldValue(<no args: exited>) on [Class Canvas] @ DataBoundComponent.js:566:17
    _getEditValue(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:33604:27
    dataChanged(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:16009:30
    <anonymous>(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:15342:22
    Array.observation(<no args: exited>) @ Class.js:2553:28
    setRawCellValue(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:22907:28
    _saveLocally(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:36888:26
    saveEditedValues(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:36745:21
    saveEdits(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:36259:26
    _saveAndHideEditor(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:35443:14
    cellEditEnd(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:34879:14
    _handleClickOutsideEditor(<no args: exited>) on[ListGrid ID:isc_FilterTagGrid_35] @ ListGrid.js:32580:10
    eval(<no args: exited>) @ [no file]:2:22
    fireCallback(callback=>callback(), argNames=>undef, args=>undef, target=>undef, catchErrors=>undef) on [Class EventHandler] @ Class.js:1870:36
    _clickMaskClick(mask=>Obj{ID:isc_DynamicForm_51}) on [Class EventHandler] @ EventHandler.js:9678:35
    clickMaskClick(target=>[GridBody ID:isc_FilterTagGrid_35_body]) on [Class EventHandler] @ EventHandler.js:9654:14
    doHandleMouseDown(DOMevent=>[object MouseEvent], syntheticEvent=>undef) on [Class EventHandler] @ EventHandler.js:1902:30
    handleMouseDown(DOMevent=>[object MouseEvent], syntheticEvent=>undef) on [Class EventHandler] @ EventHandler.js:1827:26
    dispatch(handler=>[c]EventHandler.handleMouseDown(), event=>[object MouseEvent]) on [Class EventHandler] @ EventHandler.js:6887:30
    HTMLDocument.eval(event=>[object MouseEvent]) @ [no file]:3:127

    #2
    Can you provide repro code for this issue in accordance with the topic "Preparing a Standalone Test Case" documented here.

    Comment


      #3
      I finally found that I use a custom ListGridRecord class that define an attribute "values" :
      Code:
      setAttribute([B][I]"values"[/I][/B], (String) [B]null[/B]);
      // or
      setAttribute([B][I]"values"[/I][/B], "");
      this single line created the problem, while I never reuse this field in my test case.
      is it an internal field or something ?
      Last edited by Donatello; 20 Jul 2016, 02:20.

      Comment


        #4
        Have you tried declaring "values" as an official field in your ListGrid? We believe that should avoid the problem.

        We have reproduced the problem you describe (i.e. where "values" is being used in a record but isn't a declared field) and are considering how to safeguard against it. We'll update this thread if any change is made.

        Comment

        Working...
        X