Announcement

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

  • vikashdwi
    started a topic Upgrade From version 9 to version 12

    Upgrade From version 9 to version 12

    I'm having licence version of smart client and new in this project, can anyone please suggest the steps to upgrade it from version -9 to latest one

  • Isomorphic
    replied
    setItems() is documented - remember that the SmartClient Reference is searchable, so itís easy to find what you need.

    However your code contains obvious unsupported usage, such as directly assigning to this.fields. Calling setFields() followed by setItems() is also nonsensical.

    Please let us know if you find any evidence of a framework bug. Nothing so far suggests any framework bugs.

    Also, please stop posting all questions in the same thread. Start a new thread each time you believe you have found a new issue.

    Leave a comment:


  • vikashdwi
    replied
    Hi I'm giving you one code snippet and wanted to know about this.setItems(fieldArr), what is the use of setItems

    we're getting Uncaught TypeError: Cannot read property 'getTitleOrientation' of null and there is no issues if we commented this line.

    Gone through reference documents but didn't get anything about this function.

    In version-9 it was working fine but in version -12, we are getting this issue.

    Code:
    isc.defineClass("MyDetailViewer", "DynamicForm");
    isc.MyDetailViewer.addProperties({
            zIndex:1,
            width:"98%",
            numCols:4,
            colWidths: ["6%","13%","6%","13%","6%","13%"],
            fields : [],
            titleAlign : "left",
            cellBorder : 0,
            fixedColWidths : true,
            wrap : false,
            listGrid : null,
            border: "0px;border-bottom:1px solid #E5E5E5;",
            init : function(){
                this.Super('init', arguments);
                if(this.listGrid!=undefined && this.listGrid!=null){
                    var fieldArr = new Array();
                    var numCol = this.numCols;
                    if(this.listGrid.descriptionFields != null && this.listGrid.descriptionFields != undefined){
                        var descFieldCnt = this.listGrid.descriptionFields.length;
                        var mod = descFieldCnt%(numCol/2);
                        this.listGrid.setGridDetailViewer(this);
                        for(i=0; i < descFieldCnt;i++){
                            fieldArr[i]=this.listGrid.descriptionFields[i];
                            fieldArr[i].titleClassName = "formTitleViewer";
                            fieldArr[i].cellStyle = "formCellViewer";
                            fieldArr[i].wrapTitle = false;
                            fieldArr[i].wrap = false;
                            fieldArr[i].canEdit = false;
                            fieldArr[i].readOnly = true;
                            if(i==descFieldCnt-1 && mod !=0 ){
                                fieldArr[i].colSpan = numCol - (mod*2) + 1;
                            }
                        }
                    }
                    this.setFields(fieldArr);
                    this.fields = fieldArr;
                    this.setItems(fieldArr);
                }
            }
        });
    and this happening because of descriptionFields array in below code if we pass empty array in descriptionFields then this.setItems(fieldArr); does not through any error.
    Code:
    isc.ListGrid.create({
          ID:"xxxxxx",
          dataSource:"masters_xxxxxx",
        canEdit:false,
        zIndex:-1,
        confirmDiscardEdits:false,
        disableCacheSync:true,
        autoSaveEdits:false,
        generateClickOnEnter:true,
        generateClickOnSpace:true,
        canHover:true,
        headerHeight:35,
        showHeaderContextMenu:true,
        showHeaderMenuButton:true,
        displayHeaderContextMenu:function()
        {   listGrid = this;
            sizeMenu.showContextMenu();
        },
        showFilterEditor:false,
        filterOnKeypress:true,
        filterData:function(criteria){
                drawOnCriteria=criteria;
                filterRecords(this,criteria,drawOnArrayData);
        },
        fields:[
            {
                name:"clearingLocationCode", editorType:"text", title:"abc",wrap:true, width:130, required:true,
                showHover:true, filterEditorProperties:{transformInput:function(form,item,value,oldValue){ if(value!=null){return value.toUpperCase();}}}
            },
            {
                name:"clearingLocationDesc",type:"text",title:"ayz",canEdit:false, wrap:true, width:200},
                {name:"defaultArrangementCode",canFilter:false,width:100, editorType:"select", title:"xyz", wrap:true
            }
        ],
        descriptionFields : [
            {name:"defaultArrangementDesc",type:"staticText",title:"aaa"},
            {name:"defaultDispatchBankDesc",type:"staticText",title:"bbb"}
        ]
        showEdges:false,
        border:"0px",
        width:"100%",
        height:"100%"
    })
    Last edited by vikashdwi; 10th May 2019, 02:43.

    Leave a comment:


  • Isomorphic
    replied
    If you place a Canvas over the entire screen it will block interactivity. If you don't want to block interactivity, don't place a Canvas over the entire screen.

    Leave a comment:


  • vikashdwi
    replied
    Hi Isomorphic,

    I've upgraded my application from smartclient-9 to smartclient-12, most of the things working fine as expected but our application is not working in IE-11 and other latest version of browsers (Chrome, Firefox)

    Seems like there is one layer of div related to vertical and horizontal scroll bar is overriding my top and left menu to click

    I'm attaching some screenshot of my application and IE log console. Please take a look and suggest me what else I can provide you to debug this issue.


    var ourProjectBody = isc.Canvas.create({
    width: '100%',
    height: '100%'
    });
    ourProjectBody.show();


    there are multiple casvas has been created and overlapping to each other, and It is working fine from IE-7 to IE-10 and in IE-11 there is one layer of div over lapping our top menu and left menu to click.

    I cannot share my screen here in public domain but if you want I can share it with you on you mail address.

    below are HTML console screenshot and here one div is overlapping other.


    Please let us know from where we can start to debug.


    Click image for larger version  Name:	Capture.PNG Views:	1 Size:	18.1 KB ID:	257574
    Click image for larger version  Name:	Capture2.PNG Views:	1 Size:	11.3 KB ID:	257575


    Click image for larger version  Name:	Capture3.PNG Views:	1 Size:	2.8 KB ID:	257576
    Last edited by vikashdwi; 24th Apr 2019, 03:42.

    Leave a comment:


  • Isomorphic
    replied
    Not sure we understand the question. Of course you can set jsonPrefix and suffix to blank as a class property.. is that what you're asking?

    Make sure you understand the security implications of doing this - they are documented on the jsonPrefix property.

    Leave a comment:


  • vikashdwi
    replied
    In the existing i found that dataformat code I resolved the INVALID_RESPONSE_FORMAT by adding jsonPrefix and jsonSuffix below:
    //below is the sample code where DBFCRDS class is defined
    Code:
    registerDBFCRestDataSource : function() {
            isc.defineClass("DBFCRDS", "RestDataSource");
    
            isc.DBFCRDS.addMethods({
                        handleError : function(response, request) {
                            if (response && response.errors) {
                                if (response.errors.ISE) {
                                    isc.say(isc.echoAll(response.errors));
                                }
                            }
                            return this.Super('handleError', "");
                        },
                        transformResponse : function(dsResponse, dsRequest, xmlData) {
                            this.Super('transformResponse', arguments);
                        },
                        getDataURL : function() {
                            var url = this.Super('getDataURL', arguments);
                            if (url !== undefined) {
                                if (url.startsWith('http')) {
                                    return url;
                                }
                                if (url
                                        .startsWith(db.fc.app.App.getContext()
                                                + '/')) {
                                    return url;
                                } else {
                                    return db.fc.app.App.getContext() + url;
                                }
                            }
                        }                
    
                    });
    // Here is the sample where DBFCRDS is used for rest data source and i added the jsonprefix and jsonsuffix property.
    Code:
    this.seekRDS = isc.DBFCRDS.create({
                     dataFormat : "json",
                       fields : [
                            {name : "code",type : "text"},
                            {name : "description",type : "text"}
                            ],                        
                            fetchDataURL:  "/rest/call/pagename.xhtml",
                            jsonPrefix: "",
                            jsonSuffix:""
    
                                 });
    Now my concern is do i have to add these properties at every Rest data source creation as above as there are multiple files with the same code as above with different 'fetchDataURL'. Is there a way that this can be added at the root file where DBFCRDS class is defined.

    Leave a comment:


  • Isomorphic
    replied
    Your posts are still missing basic information which it should be extremely obvious is necessary. You've indicated absolutely nothing about what this request is missing - not even whether it's from a DataSource - or what the response format is that you are using. And you've omitted the logs, again. We've already reminded you of this multiple times.

    This is a huge waste of time for us and for you, and you have already shown that you have been using internal undocumented APIs, making it rather unlikely that you have any valid issues with the product. So this is your last chance: post all the necessary information next time or we will stop responding unless you are posting bug reports: complete, ready-to-run test cases showing a framework issue,

    Leave a comment:


  • vikashdwi
    replied
    Yes Actually we want to upgrade to version -12 only but tried on 10 to see if it is working or not, now again moved to version -12

    now If we ignore the Super class related warning then there is another issue related to service in version -12

    We're getting INVALID_RESPONSE_FORMAT in javascript:isc.showConsole() though the response JSON format is same as in version-9 and it is a valid JSON format.

    Please find the attached screenshot from console.

    And even after upgrading to 12 my application is not working in IE-11 or chrome. I can see one layer of div is not allowing me to click on top menu. Below are the HTML Code

    <div id="isc_0" eventproxy="isc_Canvas_0" class="normal" style="position: absolute;left: 0px;top: 0px;width: 1349px;height: 363px; z-index: 200018; overflow: visible;cursor: default;" onscroll="return isc_Canvas_0.$lh()"><div id="isc_1" eventproxy="isc_Canvas_0" style="POSITION:relative;-webkit-margin-collapse:separate separate;VISIBILITY:inherit;Z-INDEX:200018;CURSOR:default;">&nbsp;</div></div>

    I've raised licence request for version-12 and it may take 2 to 3 week to get approved. meanwhile I've work on trail version and resolve all the issues to upgrade.

    Attached Files
    Last edited by vikashdwi; 9th Apr 2019, 02:57.

    Leave a comment:


  • Isomorphic
    replied
    You previously talked about upgrading to version 12, now you seem you to be trying to upgrade to version 10. This doesnít make sense to do as you would end up still two versions behind and would rapidly lose support for current browsers. Go back to upgrading to 12.

    As far the warning in the logs, itís self-explanatory: youíre calling Super when there is no superclass implementation. This error in your code was there before in 9.1, you probably just noticed the warning in the logs now.

    The result of calling Super when there is no superclass implementation is just that nothing happens - same as the behavior before as well.

    Leave a comment:


  • vikashdwi
    replied
    Hi Isomorphic,


    Facing another issue while upgrading latest version and this issues is appearing from version 10, Please take a look on below logs

    ----Console Error start--
    1) *18:01:17.684:KDN5:WARN:Log:Call to Super for method: keyPress failed on: [DBDynamicForm ID:isc_DBDynamicForm_22]: couldn't find a superclass implementation of : DBDynamicForm.keyPress
    Class.invokeSuper(_1=>null, _2=>"keyPress", _3=>undef, _4=>undef, _5=>undef, _6=>undef, _7=>undef, _8=>undef, _9=>undef, _10=>undef, _11=>undef, _12=>undef, _13=>undef)
    Class.Super(_1=>"keyPress", _2=>Obj{length:3}, _3=>undef)
    DBDynamicForm.itemKeyPress(item=>[DBComboBox ID:isc_DBComboBox_24 name:pickUpLocCode], keyName=>"Tab", characterValue=>undef)
    FormItem.$18d(_1=>[DBComboBox ID:isc_DBComboBox_24 name:pickUpLocCode], _2=>[DBDynamicForm ID:isc_DBDynamicForm_22], _3=>"Tab", _4=>undef)
    FormItem.handleKeyPress(_1=>Obj, _2=>Obj)
    ** recursed on Class.invokeSuper

    2) 18:01:17.738:TMR4:WARN:Log:Call to Super for method: handleError failed on: [DBFCRDS ID:isc_DBFCRDS_41]: couldn't find a superclass implementation of : DBFCRDS.handleError

    ---Console Error end--

    Here isc.defineClass("DBDynamicForm", "DynamicForm");


    Is there anything that I'm missing in configuration or keyPress has been modified/ replaced with other method or params.
    Last edited by vikashdwi; 8th Apr 2019, 04:51.

    Leave a comment:


  • Isomorphic
    replied
    Most issues that are reported as possible backwards compatibility problems ultimately turn out to be either bad usage (relying on behavior that isn't documented / supported) or incorrect installations / unrelated problems introduced during installation, including incorrect deployment of your own code or data.

    This isn't a normal stack trace - please see the FAQ on how to obtain one. It's possible you've installed some kind of error handling system of your own ("JSERRH"?), if so, you may need to disable that in order get useful diagnostics.

    Also please clarify if this is the same error as reported above by "vikashdwi" - something about hideAllIcons? Just so you're aware: there was an internal, undocumented hideAllIcons() method in an older version of SmartClient, which was removed. If your code is crashing trying to call this undocumented method, you will need to correct your code, there's nothing we can do for you - this is an example of upgrade failure occurring because you relied on undocumented functionality.

    Also note, even with a correct stack trace, you still have a responsibility to post the basic information that would be expected with any issue report: basic context about what your app is doing at the time this error occurs.

    Finally, you aren't posting from an account that is marked as having either a license or support. Please post from the correct account to receive the expected level of service.

    Leave a comment:


  • shahkar
    replied
    Hi Isomorphic team,
    We are trying to upgrade from version 9.1 to 12. We have a licence with purchased support. As per your response using isomorphic 12 directly would work but in our case it is not working as expected.
    It seems the core modules in version 12 have changes which are not backward compatible with smartclient vserion 9.1.
    The error is thrown from ISC_Forms.js and other core module files. Below are the logs.

    ----Logs start--
    *14:40:37.350:TMR3:WARN:Log:*****************************************
    14:40:37.350:TMR3:WARN:Log:URL: http://localhost:8080/fastcollect/se...ermission=JT02
    Error Message: Function expected
    [c]JSERRH._logError(errorMsg=>"Function expected")
    anonymous(msg=>"Function expected", "http://localhost:8080/fastcollect/script..."[144], 905)
    *14:40:37.350:TMR3:WARN:Log:*****************************************
    SCRIPT5002: Function expected
    ISC_Forms.js (905,109)
    *14:40:37.424:TMR9:WARN:parseXML:Error parsing XML:
    Reason: XML document must have a top level element.
    Line number: 0, character: 0
    Line contents:
    ---Logs end--

    Let me know what else information you need to help us regarding the upgrade issue.

    Thanks.


    Leave a comment:


  • Isomorphic
    replied
    The FAQ is a sticky post in this forum, there are valid links to it from all over the place, and it is the first hit for "smartgwt faq" from a Google search. The Debugging topic is likewise validly linked from many places, and is the first hit for "smartgwt debugging" from a Google search.

    It honestly seems like it must have taken extra work to find ancient (10+ year old) links that actually don't work..

    We do a great deal to help users who have not purchased support, however, if you continue to behave in this manner, where you complain about a lack of response when you have already received a prompt answer, and when you fail to post relevant information, and then behave as if resources are difficult to find, it is true that we will cut off the free help.

    Best of luck,

    Leave a comment:


  • vikashdwi
    replied
    If you're giving an answer via mail or forums you have to share documents links or have to attache related files as well, from where I can find FAQ and the Debugging topic, It's very hard to find in your website.

    I've already asked for the same through mails but didn't get any answer. Earlier also you said that "Install 12. That's it" did you say that there is FAQ and the Debugging topic available and from where I can find this ?

    Below is the debugging URL, got it from one of your post and it is not working

    https://www.smartclient.com/smartcli...oup..debugging

    and smartclient reference is not working as well

    https://www.smartclient.com/smartcli...Reference.html

    Your support and service is very bad .. seems like you're seeking for paid service only
    Last edited by vikashdwi; 26th Mar 2019, 22:46.

    Leave a comment:

Working...
X