Grid error on auto update

I am using Suite 4.2 and receiving the following error while using the setAutoUpdate method with Grid:

Uncaught ReferenceError: dtmlXMLLoaderObject is not defined

I would really like to get Multi-User Sync working so any help is appreciated.

?
This is the section of code within the dhtmlx.js file that is throwing the error.

[code]getUpdates:function(a,c){
if(this._update_busy){
return false
}else{
this._update_busy=true
}

this._loader=this._loader||new dtmlXMLLoaderObject(true);
this._loader.async=true;
this._loader.waitCall=c;
this._loader.loadXML(a)

}[/code]

My simple test grid setup:

[code] mygrid = new dhtmlXGridObject(‘gridbox’);
mygrid.setImagePath(“codebase/imgs/”);
mygrid.setHeader(“Sales,Book title,Author,Price”);
mygrid.setInitWidths(“100,250,150,100”);
mygrid.setColAlign(“center,left,left,left”);
mygrid.setColTypes(“ro,ed,ed,ed”);
mygrid.setColSorting(“int,str,str,int”);
mygrid.init();
mygrid.load(“connector/grid_connector.php”);

	dp = new dataProcessor("connector/grid_connector.php");
	dp.init(mygrid);
	dp.setAutoUpdate(2000);[/code]

I am using the php connector and have tested on Chrome, Firefox and IE.

Please try to include the attached dataprocessor.js on the page, it must fix the problem ( similar fix will be added into the next build of dhtmlx )
dhtmlxdataprocessor-lufix.zip (5.58 KB)

Thank you for the file fix. I included it into the page and it seems to have corrected that error but, I am now receiving “Cannot read property ‘firstChild’ of undifined” in the dhtmlxdataprocessor.js file on line 603.

This is the section throwing the error: /* returns xml node value @param node xml node */ _v: function(node) { if (node.firstChild) return node.firstChild.nodeValue; return ""; },

Thank you.

Can you please use Chrome dev tools or similar tool and post here the XML content that server side script returns just before this error. It must be an updates xml, and the above error may occurs if XML response is broken.

Stanislav,
I have attached the returned XML data. I hope this is what you were needing.

While looking for the xml, I also ran across another error I was unaware was being generated. I don’t know if this is a result of the first error (since it seems to be generated after the first one) or something unrelated. I will include it here for you to analyze:


<b>Fatal error</b>:  Uncaught exception 'Exception' with message 'SQLSrv operation failed
' in D:\inetpub\wwwroot\sandbox\dhtmlx\connector\db_sqlsrv.php:31
Stack trace:
#0 D:\inetpub\wwwroot\sandbox\dhtmlx\connector\db_common.php(650): SQLSrvDBDataWrapper-&gt;query('SELECT   * FROM...')
#1 D:\inetpub\wwwroot\sandbox\dhtmlx\connector\update.php(218): DBDataWrapper-&gt;select(Object(DataRequestConfig))
#2 D:\inetpub\wwwroot\sandbox\dhtmlx\connector\base_connector.php(471): DataUpdate-&gt;get_updates()
#3 D:\inetpub\wwwroot\sandbox\dhtmlx\connector\base_connector.php(398): Connector-&gt;render()
#4 D:\inetpub\wwwroot\sandbox\dhtmlx\grid1_connector.php(14): Connector-&gt;render_table('books', 'id', 'sales,title,aut...')
#5 {main}
  thrown in <b>D:\inetpub\wwwroot\sandbox\dhtmlx\connector\db_sqlsrv.php</b> on line <b>31</b>

response.zip (671 Bytes)

Have you created actions table as described here ?
docs.dhtmlx.com/connector__php__multi_sync.html

You can enable logs ( docs.dhtmlx.com/connector__php__errors.html ) and check the full code of sql query which is causing the issue.

I did create the actions table as described with the only exception being that we use MSSQL so I had to convert the statement from mySQL to MSSQL. Here is the converted statement:

CREATE TABLE actions_table ( id int NOT NULL IDENTITY, dataId int NOT NULL, type nvarchar(255) NOT NULL, [user] nvarchar(255) NOT NULL, CONSTRAINT PK_actions_table_id PRIMARY KEY (id) ) GO

I enabled the logging and received the following:

In my continued effort to troubleshoot the issue, I decided to go back to the basic Grid with no autoUpdate/Multi-user enabled. Just the basic Grid with dataProcessor enabled to make sure I was still able to edit the Grid and write to the DB. I am not.

We are using an Evaluation version of Pro 4.2. We requested and received a 90 day evaluation time on April 15th. When we first received this, I was able to update the DB via the Grid. Now I can not. Is it possible that, even though we were granted 90 days, the evaluation period was not set for 90 and instead ran out at 30? This is the only thing I can think of since it now will not allow DB editing even on the simplest Grid.

Nope, there is no such limitation in a trial version of components. Most probably something was changed in the client side or server side code.