FoxInCloud
grid not binding
Gravatar is a globally recognized avatar based on your email address. grid not binding
  Tuvia Vinitsky
  All
  Feb 22, 2017 @ 02:13pm

I saw a long time ago somebody with this problem but s/he did not post their solution.

(2.23) I have grids bound to dbf's. Everything seems to work fine. All the temp files are created, no errors, no noticeable stuff in js, and all the other data binding workd fine -- but the grid acts like it is bound to the data but it is not. No matter what, interactively or programatically, changing any grid values is never reflected in thge underlying tables.

I have tried every combination of buffering and non-buffered, I have recreated the project from scratch and created a form with just one grid, thinking maybe the gris is on a pageframe.

In the previous thread the OP was asked all kinds of possible configurastion or code errors, all of which were fine, but the OP never posted how it was solved/

Any ideas?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 23, 2017 @ 12:29am

I understand you have a read-write grid and changes in the HTML/JS page don't go to the .recordSource; is this correct?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 23, 2017 @ 04:28am

That is correct.

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 23, 2017 @ 07:51am

When you exit a grid cell after a modification, do you see a gridEdit Ajax event going to the server like on this video?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 23, 2017 @ 08:42am

the video is a little blurry, so I could not see if I am getting the same response. I do get this:

http://localhost/pes/gridMethod.pes?&MethAddr=wAfterRowChange&ObjAddr=welcome2_scx-pgfmain-pagfrozen-grddetails&UserID=4US0YLMFW&PageInit=&nReq=5&Value=1&ValueType=number

and status OK 200

Params: MethAddr wAfterRowChange ObjAddr welcome2_scx-pgfmain-pagfrozen-grddetails PageInit UserID 4US0YLMFW Value 1 ValueType number nReq 5

Headers: Content-Length 343 Content-Type text/xml; charset=utf-8 Date Thu, 23 Feb 2017 16:36:07 GMT Server Microsoft-IIS/7.5 Set-Cookie pes=4US0YLMFW; path=/; expires=Wed, 23 Aug 2017 06:00:00 GMT X-Powered-By ASP.NET view source Accept text/javascript, text/html, application/xml, text/xml, / Accept-Encoding gzip, deflate Accept-Language en-US,en;q=0.5 Connection keep-alive Content-Length 141 Content-Type application/x-www-form-urlencoded; charset=UTF-8 Cookie pes=4US0YLMFW Host localhost Referer http://localhost/pes/welcome.pes User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0 X-Prototype-Version 1.7.3 X-Requested-With XMLHttpRequest

Response:

trueboolean 4US0YLMFW 3496_4UT0MQ25H-1 2.23.0 {^2016-12-15 12:50:42 PM} 0.004 1.003373

XML: true boolean 4US0YLMFW 3496_4UT0MQ25H-1 2.23.0 {^2016-12-15 12:50:42 PM} 0.004 1.003373

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  Tuvia Vinitsky
  Feb 23, 2017 @ 08:43am

Sorry the formatting got a little musged when I pasted it. Let me know if anything there of value and I will screen shot

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 23, 2017 @ 09:17am

I see the video clearly on full screen

wAfterRowChange means you changed row

do you see any grdEditEvent.xxx in the network event list?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 23, 2017 @ 11:35am

No I do not. Only the afterrowchange.

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 23, 2017 @ 11:48am

OK, then I need the form.js

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 23, 2017 @ 12:58pm

/* Generated on 02/23/17 01:35:00 PM in 1.3 sec. by FoxInCloud version 2.23.0 of 12/15/16 12:50:42 PM -- */ jQuery(function(e){jQuery.datepicker.setDefaults(Object.extend(jQuery.datepicker.regional[navigator.language||navigator.userLanguage||'en']||jQuery.datepicker.regional[''], {dateFormat: 'mm/dd/y', onSelect: function(date){FoxInCloud.EventRequest('DOMEvent','blur', this, date)}, altField: ''}));}); jQuery('#welcome2_scx-waitpic').prop('effectShow', false).prop('effectHide', false); $('welcome2_scx-pgfmain-paghome-label1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paghome-label1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-paghome-label2').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-paghome-label3').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-paghome-image1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paghome-image1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-paghome-image2').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-paghome-image3').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-paghome').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-lbllast').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label2').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label3').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label4').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label5').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label6').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label7').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label8').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label9').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label10').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-label12').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtlastname').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtlastname').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtfirstname').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtfirstname').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtaddress').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtaddress').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtcity').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtcity').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtstate').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtstate').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtzip').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtzip').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txthomephone').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txthomephone').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtworkphone').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtworkphone').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtcellphone').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtcellphone').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-txtemail').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-txtemail').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-spnnumfampeople_txt').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); FoxInCloud.spnMake('welcome2_scx-pgfmain-pagdemoinfo-spnnumfampeople', 1, 20, 0, false, false, false, false); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-spnnumfampeople').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdemoinfo-command1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdemoinfo-command1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagdemoinfo').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagprevorder').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagadminlogin').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagfrozen-cmdnext').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagfrozen-cmdnext').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagfrozen-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagfrozen-label6').prop('effectShow', true).prop('effectHide', true); (function(){ var dStart = new Date(); var grd = $('welcome2_scx-pgfmain-pagfrozen-grddetails'); if (grd){ Object.extend(grd, {oGrid: new AW.UI.Grid, oTable: new AW.XML.Table}); var oGrid = grd.oGrid, oTable = grd.oTable, oTempl; oGrid.defineCellProperty('CurrentControl', null); oGrid.defineControlProperty('DataUpdate', false); oGrid.setTabIndex("3"); oGrid.setSelectorWidth(10); oGrid.getSelectorTemplate().setStyle('font-weight','bold'); oGrid.setRowCount(2); oGrid.setCellEditable(true); oGrid.setCurrentColumn(-1); oGrid.setCurrentRow(-1); oGrid.clearColumnModel(); oGrid.setColumnCount(4); oGrid.setStyle('font-family','Arial'); oGrid.setStyle('font-size','14pt'); oGrid.setHeaderHeight(26); oGrid.setSize(undefined,360); oGrid.setSelectorVisible(true); oGrid.setRowHeight(27); oGrid.defineControlProperty('Statusbartext'); oGrid.setControlStatusbartext(''); oGrid.setSize(912,undefined); oGrid.setColumnIndices([0,1,2,3]); oGrid.setCellEditable(true,0); oGrid.setColumnResizable(true,0); oGrid.setColumnWidth(110+1,0); oGrid.setCellEditable(true,1); oGrid.setColumnResizable(true,1); oGrid.setColumnWidth(234+1,1); oGrid.setCellEditable(true,2); oGrid.setColumnResizable(true,2); oGrid.setColumnWidth(126+1,2); oGrid.setCellEditable(true,3); oGrid.setColumnResizable(true,3); oGrid.setColumnWidth(165+1,3);

	/* Column 0 'colQty' */
	oTempl = oGrid.getHeaderTemplate(0);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',0,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,0,undefined);
	oGrid.setCellCurrentControl('text1', 0);
	oTempl = oGrid.getCellTemplate(0);
	oTempl.setStyle('text-align','right');
	
	/* Column 1 'colDescrip' */
	oTempl = oGrid.getHeaderTemplate(1);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',1,undefined);
	oGrid.setCellCurrentControl('colprice', 1);
	oTempl = oGrid.getCellTemplate(1);
	oTempl.setStyle('text-align','left');
	
	/* Column 2 'Column3' */
	oTempl = oGrid.getHeaderTemplate(2);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',2,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,2,undefined);
	oGrid.setCellCurrentControl('text1', 2);
	oTempl = oGrid.getCellTemplate(2);
	oTempl.setStyle('text-align','right');
	
	/* Column 3 'colTotal' */
	oTempl = oGrid.getHeaderTemplate(3);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',3,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,3,undefined);
	oGrid.setCellCurrentControl('text1', 3);
	oTempl = oGrid.getCellTemplate(3);
	oTempl.setStyle('text-align','right');
	
	oGrid.setHeaderText('Qty', 0);
	oGrid.setCellEditable(true,0);
	oGrid.setHeaderText('Item', 1);
	oGrid.setCellEditable(true,1);
	oGrid.setHeaderText('Price', 2);
	oGrid.setCellEditable(true,2);
	oGrid.setHeaderText('Total', 3);
	oGrid.setCellEditable(true,3);
	var scrollTop = oGrid.getScrollTop();
	oGrid.setCellModel(oTable);
	oGrid.setVirtualMode(false);
	oTable.setURL("Temp/welcome2_scx-pgfmain-pagfrozen-grddetails.xml");
	oTable.setAsync(false);
	oTable.request();
	scrollTop && oGrid.setScrollTop(scrollTop);
	oGrid.setSortDirection();
	oGrid.refresh();
	oGrid.defineRowProperty('tuRow', null);
	var srp = oGrid.setRowProperty.bind(oGrid);
	srp('tuRow',1,0);srp('tuRow',2,1);
	srp = null;
	oGrid.defineRowProperty('Clicked', false);
	if (FoxInCloud.gridRowChangeDelay > 0){
		oGrid.onRowMouseDown = function(event, row){this.setRowClicked(true, row)};
		oGrid.onRowMouseUp = function(event, row){this.setRowClicked(false, row)};
	}
	oGrid.onCurrentRowChanged = function(row){
		var value = this.getRowProperty('tuRow', row);
		if (!(this.disabled || value === null)){
			var rowClicked = this.getRowClicked(row);
			if (FoxInCloud.gridRowChangeDelay > 0 && (!rowClicked || FoxInCloud.gridRowChangeDelayClicked > 0)){
				if (this.nTOrow) window.clearTimeout(this.nTOrow);
				this.nTOrow = FoxInCloud.gridMethod.bind(FoxInCloud).delay(FoxInCloud[rowClicked ? 'gridRowChangeDelayClicked' : 'gridRowChangeDelay'], 'wAfterRowChange', $('welcome2_scx-pgfmain-pagfrozen-grddetails'), value);
			}
			else FoxInCloud.gridMethod('wAfterRowChange', $('welcome2_scx-pgfmain-pagfrozen-grddetails'), value);
		}
	};
	
	
	oGrid.onKeyBackspace = function(event){
		event = Event.extend(event);
		if (!event.findElement('input')){
			this.startCellEdit('');
			event.stop();
		}
	};
	
	
	oGrid.setSelectedRows([-1]);
	oGrid.setSelectedRows([0]);
	oGrid.setSelectedColumns([0]);
	oGrid.disabled = true;
	oGrid.setCurrentRow(0);
	oGrid.setCurrentColumn(0);
	oGrid.disabled = false;
	grd.update(oGrid);
}
dStart = new Date() - dStart;
window.console && console.log && console.log("'welcome2_scx-pgfmain-pagfrozen-grddetails' grid script took 70 ms. to generate on the server, " + dStart + " ms to execute on the browser, total " + (dStart + 70) + " ms.\n" + 'awhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_() - state changes > JavaScript: 39 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_() - current state XML 16 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - .RecordSource "curFrozen" > RecordSet using Select-SQL: 4 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - Current record located without a unique key found! To optimize response time, please create a candidate(unique) key: INDEX on <someUniqueExpr> TAG curFrozen candidate or ALTER TABLE curFrozen alter column <someField> unique and/or at design time or after assigning .RecordSource, set grid.wcPKexpr to the name of a field that you are sure has unique values across the record set: 0 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs() - \'curFrozen\' RecordSet > XML (2 rows): 2 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_oxmlchanges() - state changes: 12 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_rs() - data changes > JS: 1 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_events() - event handlers: 24 ms.');

})(); $('welcome2_scx-pgfmain-pagfrozen-peschk1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud) || FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagfrozen-peschk1').prop('effectShow', false).prop('effectHide', false); jQuery('#welcome2_scx-pgfmain-pagfrozen').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdairy-cmdnext').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdairy-cmdnext').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdairy-cmdprev').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdairy-cmdprev').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagdairy-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagdairy-label6').prop('effectShow', true).prop('effectHide', true); (function(){ var dStart = new Date(); var grd = $('welcome2_scx-pgfmain-pagdairy-grddetails'); if (grd){ Object.extend(grd, {oGrid: new AW.UI.Grid, oTable: new AW.XML.Table}); var oGrid = grd.oGrid, oTable = grd.oTable, oTempl; oGrid.defineCellProperty('CurrentControl', null); oGrid.defineControlProperty('DataUpdate', false); oGrid.setTabIndex("4"); oGrid.setSelectorWidth(10); oGrid.getSelectorTemplate().setStyle('font-weight','bold'); oGrid.setRowCount(2); oGrid.setCellEditable(true); oGrid.setCurrentColumn(-1); oGrid.setCurrentRow(-1); oGrid.clearColumnModel(); oGrid.setColumnCount(4); oGrid.setStyle('font-family','Arial'); oGrid.setStyle('font-size','14pt'); oGrid.setHeaderHeight(26); oGrid.setSize(undefined,360); oGrid.setSelectorVisible(true); oGrid.setRowHeight(27); oGrid.defineControlProperty('Statusbartext'); oGrid.setControlStatusbartext(''); oGrid.setSize(912,undefined); oGrid.setColumnIndices([0,1,2,3]); oGrid.setCellEditable(true,0); oGrid.setColumnResizable(true,0); oGrid.setColumnWidth(110+1,0); oGrid.setCellEditable(true,1); oGrid.setColumnResizable(true,1); oGrid.setColumnWidth(234+1,1); oGrid.setCellEditable(true,2); oGrid.setColumnResizable(true,2); oGrid.setColumnWidth(126+1,2); oGrid.setCellEditable(true,3); oGrid.setColumnResizable(true,3); oGrid.setColumnWidth(165+1,3);

	/* Column 0 'colQty' */
	oTempl = oGrid.getHeaderTemplate(0);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',0,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,0,undefined);
	oGrid.setCellCurrentControl('text1', 0);
	oTempl = oGrid.getCellTemplate(0);
	oTempl.setStyle('text-align','right');
	
	/* Column 1 'colDescrip' */
	oTempl = oGrid.getHeaderTemplate(1);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',1,undefined);
	oGrid.setCellCurrentControl('colprice', 1);
	oTempl = oGrid.getCellTemplate(1);
	oTempl.setStyle('text-align','left');
	
	/* Column 2 'Column3' */
	oTempl = oGrid.getHeaderTemplate(2);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',2,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,2,undefined);
	oGrid.setCellCurrentControl('text1', 2);
	oTempl = oGrid.getCellTemplate(2);
	oTempl.setStyle('text-align','right');
	
	/* Column 3 'colTotal' */
	oTempl = oGrid.getHeaderTemplate(3);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',3,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,3,undefined);
	oGrid.setCellCurrentControl('text1', 3);
	oTempl = oGrid.getCellTemplate(3);
	oTempl.setStyle('text-align','right');
	
	oGrid.setHeaderText('Qty', 0);
	oGrid.setCellEditable(true,0);
	oGrid.setHeaderText('Item', 1);
	oGrid.setCellEditable(true,1);
	oGrid.setHeaderText('Price', 2);
	oGrid.setCellEditable(true,2);
	oGrid.setHeaderText('Total', 3);
	oGrid.setCellEditable(true,3);
	var scrollTop = oGrid.getScrollTop();
	oGrid.setCellModel(oTable);
	oGrid.setVirtualMode(false);
	oTable.setURL("Temp/welcome2_scx-pgfmain-pagdairy-grddetails.xml");
	oTable.setAsync(false);
	oTable.request();
	scrollTop && oGrid.setScrollTop(scrollTop);
	oGrid.setSortDirection();
	oGrid.refresh();
	oGrid.defineRowProperty('tuRow', null);
	var srp = oGrid.setRowProperty.bind(oGrid);
	srp('tuRow',1,0);srp('tuRow',2,1);
	srp = null;
	oGrid.defineRowProperty('Clicked', false);
	if (FoxInCloud.gridRowChangeDelay > 0){
		oGrid.onRowMouseDown = function(event, row){this.setRowClicked(true, row)};
		oGrid.onRowMouseUp = function(event, row){this.setRowClicked(false, row)};
	}
	oGrid.onCurrentRowChanged = function(row){
		var value = this.getRowProperty('tuRow', row);
		if (!(this.disabled || value === null)){
			var rowClicked = this.getRowClicked(row);
			if (FoxInCloud.gridRowChangeDelay > 0 && (!rowClicked || FoxInCloud.gridRowChangeDelayClicked > 0)){
				if (this.nTOrow) window.clearTimeout(this.nTOrow);
				this.nTOrow = FoxInCloud.gridMethod.bind(FoxInCloud).delay(FoxInCloud[rowClicked ? 'gridRowChangeDelayClicked' : 'gridRowChangeDelay'], 'wAfterRowChange', $('welcome2_scx-pgfmain-pagdairy-grddetails'), value);
			}
			else FoxInCloud.gridMethod('wAfterRowChange', $('welcome2_scx-pgfmain-pagdairy-grddetails'), value);
		}
	};
	
	
	oGrid.onKeyBackspace = function(event){
		event = Event.extend(event);
		if (!event.findElement('input')){
			this.startCellEdit('');
			event.stop();
		}
	};
	
	
	oGrid.setSelectedRows([-1]);
	oGrid.setSelectedRows([0]);
	oGrid.setSelectedColumns([0]);
	oGrid.disabled = true;
	oGrid.setCurrentRow(0);
	oGrid.setCurrentColumn(0);
	oGrid.disabled = false;
	grd.update(oGrid);
}
dStart = new Date() - dStart;
window.console && console.log && console.log("'welcome2_scx-pgfmain-pagdairy-grddetails' grid script took 71 ms. to generate on the server, " + dStart + " ms to execute on the browser, total " + (dStart + 71) + " ms.\n" + 'awhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_() - state changes > JavaScript: 37 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_() - current state XML 19 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - .RecordSource "curDairy" > RecordSet using Select-SQL: 3 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - Current record located without a unique key found! To optimize response time, please create a candidate(unique) key: INDEX on <someUniqueExpr> TAG curDairy candidate or ALTER TABLE curDairy alter column <someField> unique and/or at design time or after assigning .RecordSource, set grid.wcPKexpr to the name of a field that you are sure has unique values across the record set: 1 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs() - \'curDairy\' RecordSet > XML (2 rows): 3 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_oxmlchanges() - state changes: 11 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_rs() - data changes > JS: 1 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_events() - event handlers: 27 ms.');

})(); jQuery('#welcome2_scx-pgfmain-pagdairy').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-paggeneral-cmdnext').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paggeneral-cmdnext').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-paggeneral-cmdprev').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paggeneral-cmdprev').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-paggeneral-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paggeneral-label6').prop('effectShow', true).prop('effectHide', true); (function(){ var dStart = new Date(); var grd = $('welcome2_scx-pgfmain-paggeneral-grddetails'); if (grd){ Object.extend(grd, {oGrid: new AW.UI.Grid, oTable: new AW.XML.Table}); var oGrid = grd.oGrid, oTable = grd.oTable, oTempl; oGrid.defineCellProperty('CurrentControl', null); oGrid.defineControlProperty('DataUpdate', false); oGrid.setTabIndex("4"); oGrid.setSelectorWidth(10); oGrid.getSelectorTemplate().setStyle('font-weight','bold'); oGrid.setRowCount(2); oGrid.setCellEditable(true); oGrid.setCurrentColumn(-1); oGrid.setCurrentRow(-1); oGrid.clearColumnModel(); oGrid.setColumnCount(4); oGrid.setStyle('font-family','Arial'); oGrid.setStyle('font-size','14pt'); oGrid.setHeaderHeight(26); oGrid.setSize(undefined,360); oGrid.setSelectorVisible(true); oGrid.setRowHeight(27); oGrid.defineControlProperty('Statusbartext'); oGrid.setControlStatusbartext(''); oGrid.setSize(912,undefined); oGrid.setColumnIndices([0,1,2,3]); oGrid.setCellEditable(true,0); oGrid.setColumnResizable(true,0); oGrid.setColumnWidth(110+1,0); oGrid.setCellEditable(true,1); oGrid.setColumnResizable(true,1); oGrid.setColumnWidth(234+1,1); oGrid.setCellEditable(true,2); oGrid.setColumnResizable(true,2); oGrid.setColumnWidth(126+1,2); oGrid.setCellEditable(true,3); oGrid.setColumnResizable(true,3); oGrid.setColumnWidth(165+1,3);

	/* Column 0 'colQty' */
	oTempl = oGrid.getHeaderTemplate(0);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',0,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,0,undefined);
	oGrid.setCellCurrentControl('text1', 0);
	oTempl = oGrid.getCellTemplate(0);
	oTempl.setStyle('text-align','right');
	
	/* Column 1 'colDescrip' */
	oTempl = oGrid.getHeaderTemplate(1);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',1,undefined);
	oGrid.setCellCurrentControl('colprice', 1);
	oTempl = oGrid.getCellTemplate(1);
	oTempl.setStyle('text-align','left');
	
	/* Column 2 'Column3' */
	oTempl = oGrid.getHeaderTemplate(2);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',2,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,2,undefined);
	oGrid.setCellCurrentControl('text1', 2);
	oTempl = oGrid.getCellTemplate(2);
	oTempl.setStyle('text-align','right');
	
	/* Column 3 'colTotal' */
	oTempl = oGrid.getHeaderTemplate(3);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',3,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,3,undefined);
	oGrid.setCellCurrentControl('text1', 3);
	oTempl = oGrid.getCellTemplate(3);
	oTempl.setStyle('text-align','right');
	
	oGrid.setHeaderText('Qty', 0);
	oGrid.setCellEditable(true,0);
	oGrid.setHeaderText('Item', 1);
	oGrid.setCellEditable(true,1);
	oGrid.setHeaderText('Price', 2);
	oGrid.setCellEditable(true,2);
	oGrid.setHeaderText('Total', 3);
	oGrid.setCellEditable(true,3);
	var scrollTop = oGrid.getScrollTop();
	oGrid.setCellModel(oTable);
	oGrid.setVirtualMode(false);
	oTable.setURL("Temp/welcome2_scx-pgfmain-paggeneral-grddetails.xml");
	oTable.setAsync(false);
	oTable.request();
	scrollTop && oGrid.setScrollTop(scrollTop);
	oGrid.setSortDirection();
	oGrid.refresh();
	oGrid.defineRowProperty('tuRow', null);
	var srp = oGrid.setRowProperty.bind(oGrid);
	srp('tuRow',1,0);srp('tuRow',2,1);
	srp = null;
	oGrid.defineRowProperty('Clicked', false);
	if (FoxInCloud.gridRowChangeDelay > 0){
		oGrid.onRowMouseDown = function(event, row){this.setRowClicked(true, row)};
		oGrid.onRowMouseUp = function(event, row){this.setRowClicked(false, row)};
	}
	oGrid.onCurrentRowChanged = function(row){
		var value = this.getRowProperty('tuRow', row);
		if (!(this.disabled || value === null)){
			var rowClicked = this.getRowClicked(row);
			if (FoxInCloud.gridRowChangeDelay > 0 && (!rowClicked || FoxInCloud.gridRowChangeDelayClicked > 0)){
				if (this.nTOrow) window.clearTimeout(this.nTOrow);
				this.nTOrow = FoxInCloud.gridMethod.bind(FoxInCloud).delay(FoxInCloud[rowClicked ? 'gridRowChangeDelayClicked' : 'gridRowChangeDelay'], 'wAfterRowChange', $('welcome2_scx-pgfmain-paggeneral-grddetails'), value);
			}
			else FoxInCloud.gridMethod('wAfterRowChange', $('welcome2_scx-pgfmain-paggeneral-grddetails'), value);
		}
	};
	
	
	oGrid.onKeyBackspace = function(event){
		event = Event.extend(event);
		if (!event.findElement('input')){
			this.startCellEdit('');
			event.stop();
		}
	};
	
	
	oGrid.setSelectedRows([-1]);
	oGrid.setSelectedRows([0]);
	oGrid.setSelectedColumns([0]);
	oGrid.disabled = true;
	oGrid.setCurrentRow(0);
	oGrid.setCurrentColumn(0);
	oGrid.disabled = false;
	grd.update(oGrid);
}
dStart = new Date() - dStart;
window.console && console.log && console.log("'welcome2_scx-pgfmain-paggeneral-grddetails' grid script took 68 ms. to generate on the server, " + dStart + " ms to execute on the browser, total " + (dStart + 68) + " ms.\n" + 'awhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_() - state changes > JavaScript: 38 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_() - current state XML 15 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - .RecordSource "curGeneral" > RecordSet using Select-SQL: 4 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - Current record located without a unique key found! To optimize response time, please create a candidate(unique) key: INDEX on <someUniqueExpr> TAG curGeneral candidate or ALTER TABLE curGeneral alter column <someField> unique and/or at design time or after assigning .RecordSource, set grid.wcPKexpr to the name of a field that you are sure has unique values across the record set: 0 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs() - \'curGeneral\' RecordSet > XML (2 rows): 2 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_oxmlchanges() - state changes: 11 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_rs() - data changes > JS: 1 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_events() - event handlers: 25 ms.');

})(); $('welcome2_scx-pgfmain-paggeneral-peschk1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud) || FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-paggeneral-peschk1').prop('effectShow', false).prop('effectHide', false); jQuery('#welcome2_scx-pgfmain-paggeneral').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpaper-cmdfinish').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpaper-cmdfinish').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpaper-cmdprev').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpaper-cmdprev').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpaper-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpaper-label6').prop('effectShow', true).prop('effectHide', true); (function(){ var dStart = new Date(); var grd = $('welcome2_scx-pgfmain-pagpaper-grddetails'); if (grd){ Object.extend(grd, {oGrid: new AW.UI.Grid, oTable: new AW.XML.Table}); var oGrid = grd.oGrid, oTable = grd.oTable, oTempl; oGrid.defineCellProperty('CurrentControl', null); oGrid.defineControlProperty('DataUpdate', false); oGrid.setTabIndex("4"); oGrid.setSelectorWidth(10); oGrid.getSelectorTemplate().setStyle('font-weight','bold'); oGrid.setRowCount(1); oGrid.setCellEditable(true); oGrid.setCurrentColumn(-1); oGrid.setCurrentRow(-1); oGrid.clearColumnModel(); oGrid.setColumnCount(4); oGrid.setStyle('font-family','Arial'); oGrid.setStyle('font-size','14pt'); oGrid.setHeaderHeight(26); oGrid.setSize(undefined,360); oGrid.setSelectorVisible(true); oGrid.setRowHeight(27); oGrid.defineControlProperty('Statusbartext'); oGrid.setControlStatusbartext(''); oGrid.setSize(912,undefined); oGrid.setColumnIndices([0,1,2,3]); oGrid.setCellEditable(true,0); oGrid.setColumnResizable(true,0); oGrid.setColumnWidth(110+1,0); oGrid.setCellEditable(true,1); oGrid.setColumnResizable(true,1); oGrid.setColumnWidth(234+1,1); oGrid.setCellEditable(true,2); oGrid.setColumnResizable(true,2); oGrid.setColumnWidth(126+1,2); oGrid.setCellEditable(true,3); oGrid.setColumnResizable(true,3); oGrid.setColumnWidth(165+1,3);

	/* Column 0 'colQty' */
	oTempl = oGrid.getHeaderTemplate(0);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',0,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,0,undefined);
	oGrid.setCellCurrentControl('text1', 0);
	oTempl = oGrid.getCellTemplate(0);
	oTempl.setStyle('text-align','right');
	
	/* Column 1 'colDescrip' */
	oTempl = oGrid.getHeaderTemplate(1);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',1,undefined);
	oGrid.setCellCurrentControl('colprice', 1);
	oTempl = oGrid.getCellTemplate(1);
	oTempl.setStyle('text-align','left');
	
	/* Column 2 'Column3' */
	oTempl = oGrid.getHeaderTemplate(2);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',2,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,2,undefined);
	oGrid.setCellCurrentControl('text1', 2);
	oTempl = oGrid.getCellTemplate(2);
	oTempl.setStyle('text-align','right');
	
	/* Column 3 'colTotal' */
	oTempl = oGrid.getHeaderTemplate(3);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',3,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,3,undefined);
	oGrid.setCellCurrentControl('text1', 3);
	oTempl = oGrid.getCellTemplate(3);
	oTempl.setStyle('text-align','right');
	
	oGrid.setHeaderText('Qty', 0);
	oGrid.setCellEditable(true,0);
	oGrid.setHeaderText('Item', 1);
	oGrid.setCellEditable(true,1);
	oGrid.setHeaderText('Price', 2);
	oGrid.setCellEditable(true,2);
	oGrid.setHeaderText('Total', 3);
	oGrid.setCellEditable(true,3);
	var scrollTop = oGrid.getScrollTop();
	oGrid.setCellModel(oTable);
	oGrid.setVirtualMode(false);
	oTable.setURL("Temp/welcome2_scx-pgfmain-pagpaper-grddetails.xml");
	oTable.setAsync(false);
	oTable.request();
	scrollTop && oGrid.setScrollTop(scrollTop);
	oGrid.setSortDirection();
	oGrid.refresh();
	oGrid.defineRowProperty('tuRow', null);
	var srp = oGrid.setRowProperty.bind(oGrid);
	srp('tuRow',1,0);
	srp = null;
	oGrid.defineRowProperty('Clicked', false);
	if (FoxInCloud.gridRowChangeDelay > 0){
		oGrid.onRowMouseDown = function(event, row){this.setRowClicked(true, row)};
		oGrid.onRowMouseUp = function(event, row){this.setRowClicked(false, row)};
	}
	oGrid.onCurrentRowChanged = function(row){
		var value = this.getRowProperty('tuRow', row);
		if (!(this.disabled || value === null)){
			var rowClicked = this.getRowClicked(row);
			if (FoxInCloud.gridRowChangeDelay > 0 && (!rowClicked || FoxInCloud.gridRowChangeDelayClicked > 0)){
				if (this.nTOrow) window.clearTimeout(this.nTOrow);
				this.nTOrow = FoxInCloud.gridMethod.bind(FoxInCloud).delay(FoxInCloud[rowClicked ? 'gridRowChangeDelayClicked' : 'gridRowChangeDelay'], 'wAfterRowChange', $('welcome2_scx-pgfmain-pagpaper-grddetails'), value);
			}
			else FoxInCloud.gridMethod('wAfterRowChange', $('welcome2_scx-pgfmain-pagpaper-grddetails'), value);
		}
	};
	
	
	oGrid.onKeyBackspace = function(event){
		event = Event.extend(event);
		if (!event.findElement('input')){
			this.startCellEdit('');
			event.stop();
		}
	};
	
	
	oGrid.setSelectedRows([-1]);
	oGrid.setSelectedRows([0]);
	oGrid.setSelectedColumns([0]);
	oGrid.disabled = true;
	oGrid.setCurrentRow(0);
	oGrid.setCurrentColumn(0);
	oGrid.disabled = false;
	grd.update(oGrid);
}
dStart = new Date() - dStart;
window.console && console.log && console.log("'welcome2_scx-pgfmain-pagpaper-grddetails' grid script took 75 ms. to generate on the server, " + dStart + " ms to execute on the browser, total " + (dStart + 75) + " ms.\n" + 'awhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_() - state changes > JavaScript: 40 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_() - current state XML 18 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - .RecordSource "curpaper" > RecordSet using Select-SQL: 5 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - Current record located without a unique key found! To optimize response time, please create a candidate(unique) key: INDEX on <someUniqueExpr> TAG curpaper candidate or ALTER TABLE curpaper alter column <someField> unique and/or at design time or after assigning .RecordSource, set grid.wcPKexpr to the name of a field that you are sure has unique values across the record set: 0 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs() - \'curpaper\' RecordSet > XML (1 rows): 2 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_oxmlchanges() - state changes: 12 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_rs() - data changes > JS: 1 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_events() - event handlers: 30 ms.');

})(); jQuery('#welcome2_scx-pgfmain-pagpaper').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagreview-cmdprev').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagreview-cmdprev').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagreview-command1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagreview-command1').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagreview-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagreview-label6').prop('effectShow', true).prop('effectHide', true); (function(){ var dStart = new Date(); var grd = $('welcome2_scx-pgfmain-pagreview-grddetails'); if (grd){ Object.extend(grd, {oGrid: new AW.UI.Grid, oTable: new AW.XML.Table}); var oGrid = grd.oGrid, oTable = grd.oTable, oTempl; oGrid.defineCellProperty('CurrentControl', null); oGrid.defineControlProperty('DataUpdate', false); oGrid.setTabIndex("4"); oGrid.setSelectorWidth(10); oGrid.getSelectorTemplate().setStyle('font-weight','bold'); oGrid.setRowCount(1); oGrid.setCellEditable(true); oGrid.setCurrentColumn(-1); oGrid.setCurrentRow(-1); oGrid.clearColumnModel(); oGrid.setColumnCount(4); oGrid.setStyle('font-family','Arial'); oGrid.setStyle('font-size','14pt'); oGrid.setHeaderHeight(26); oGrid.setSize(undefined,360); oGrid.setSelectorVisible(true); oGrid.setRowHeight(27); oGrid.defineControlProperty('Statusbartext'); oGrid.setControlStatusbartext(''); oGrid.setSize(912,undefined); oGrid.setColumnIndices([0,1,2,3]); oGrid.setCellEditable(true,0); oGrid.setColumnResizable(true,0); oGrid.setColumnWidth(110+1,0); oGrid.setCellEditable(true,1); oGrid.setColumnResizable(true,1); oGrid.setColumnWidth(234+1,1); oGrid.setCellEditable(true,2); oGrid.setColumnResizable(true,2); oGrid.setColumnWidth(126+1,2); oGrid.setCellEditable(true,3); oGrid.setColumnResizable(true,3); oGrid.setColumnWidth(165+1,3);

	/* Column 0 'colQty' */
	oTempl = oGrid.getHeaderTemplate(0);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',0,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,0,undefined);
	oGrid.setCellCurrentControl('text1', 0);
	oTempl = oGrid.getCellTemplate(0);
	oTempl.setStyle('text-align','right');
	
	/* Column 1 'colDescrip' */
	oTempl = oGrid.getHeaderTemplate(1);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',1,undefined);
	oGrid.setCellCurrentControl('colprice', 1);
	oTempl = oGrid.getCellTemplate(1);
	oTempl.setStyle('text-align','left');
	
	/* Column 2 'Column3' */
	oTempl = oGrid.getHeaderTemplate(2);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',2,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,2,undefined);
	oGrid.setCellCurrentControl('text1', 2);
	oTempl = oGrid.getCellTemplate(2);
	oTempl.setStyle('text-align','right');
	
	/* Column 3 'colTotal' */
	oTempl = oGrid.getHeaderTemplate(3);
	oTempl.setStyle('text-align','left');
	oGrid.setCellTemplate('',3,undefined);
	var fmt = new AW.Formats.Number;
	fmt.setTextFormat('###');
	oGrid.setCellFormat(fmt,3,undefined);
	oGrid.setCellCurrentControl('text1', 3);
	oTempl = oGrid.getCellTemplate(3);
	oTempl.setStyle('text-align','right');
	
	oGrid.setHeaderText('Qty', 0);
	oGrid.setCellEditable(true,0);
	oGrid.setHeaderText('Item', 1);
	oGrid.setCellEditable(true,1);
	oGrid.setHeaderText('Price', 2);
	oGrid.setCellEditable(true,2);
	oGrid.setHeaderText('Total', 3);
	oGrid.setCellEditable(true,3);
	var scrollTop = oGrid.getScrollTop();
	oGrid.setCellModel(oTable);
	oGrid.setVirtualMode(false);
	oTable.setURL("Temp/welcome2_scx-pgfmain-pagreview-grddetails.xml");
	oTable.setAsync(false);
	oTable.request();
	scrollTop && oGrid.setScrollTop(scrollTop);
	oGrid.setSortDirection();
	oGrid.refresh();
	oGrid.defineRowProperty('tuRow', null);
	var srp = oGrid.setRowProperty.bind(oGrid);
	srp('tuRow',1,0);
	srp = null;
	oGrid.defineRowProperty('Clicked', false);
	if (FoxInCloud.gridRowChangeDelay > 0){
		oGrid.onRowMouseDown = function(event, row){this.setRowClicked(true, row)};
		oGrid.onRowMouseUp = function(event, row){this.setRowClicked(false, row)};
	}
	oGrid.onCurrentRowChanged = function(row){
		var value = this.getRowProperty('tuRow', row);
		if (!(this.disabled || value === null)){
			var rowClicked = this.getRowClicked(row);
			if (FoxInCloud.gridRowChangeDelay > 0 && (!rowClicked || FoxInCloud.gridRowChangeDelayClicked > 0)){
				if (this.nTOrow) window.clearTimeout(this.nTOrow);
				this.nTOrow = FoxInCloud.gridMethod.bind(FoxInCloud).delay(FoxInCloud[rowClicked ? 'gridRowChangeDelayClicked' : 'gridRowChangeDelay'], 'wAfterRowChange', $('welcome2_scx-pgfmain-pagreview-grddetails'), value);
			}
			else FoxInCloud.gridMethod('wAfterRowChange', $('welcome2_scx-pgfmain-pagreview-grddetails'), value);
		}
	};
	
	
	oGrid.onKeyBackspace = function(event){
		event = Event.extend(event);
		if (!event.findElement('input')){
			this.startCellEdit('');
			event.stop();
		}
	};
	
	
	oGrid.setSelectedRows([-1]);
	oGrid.setSelectedRows([0]);
	oGrid.setSelectedColumns([0]);
	oGrid.disabled = true;
	oGrid.setCurrentRow(0);
	oGrid.setCurrentColumn(0);
	oGrid.disabled = false;
	grd.update(oGrid);
}
dStart = new Date() - dStart;
window.console && console.log && console.log("'welcome2_scx-pgfmain-pagreview-grddetails' grid script took 65 ms. to generate on the server, " + dStart + " ms to execute on the browser, total " + (dStart + 65) + " ms.\n" + 'awhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_() - state changes > JavaScript: 34 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_() - current state XML 16 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - .RecordSource "curReview" > RecordSet using Select-SQL: 4 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs_calias() - Current record located without a unique key found! To optimize response time, please create a candidate(unique) key: INDEX on <someUniqueExpr> TAG curReview candidate or ALTER TABLE curReview alter column <someField> unique and/or at design time or after assigning .RecordSource, set grid.wcPKexpr to the name of a field that you are sure has unique values across the record set: 0 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cxml_rs() - \'curReview\' RecordSet > XML (1 rows): 2 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_oxmlchanges() - state changes: 11 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_rs() - data changes > JS: 2 ms.\nawhtml.fxp!Ogrddetails.gethtml_grd_aw_cscript_events() - event handlers: 24 ms.');

})(); jQuery('#welcome2_scx-pgfmain-pagreview').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-label6').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-peslbl1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblfrozen').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lbldairy').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblgeneral').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblpaper').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lbltotal').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-txtccnum').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-txtccnum').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-txtname').observe('blur', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-txtname').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-command1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-command1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblname').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblccnum').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblccmonth').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagpayment-lblccyear').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-cbomonth').observe('change', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-cbomonth').prop('selectedIndex', -1); jQuery('#welcome2_scx-pgfmain-pagpayment-cbomonth').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-cboyear').observe('change', FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-cboyear').prop('selectedIndex', -1); jQuery('#welcome2_scx-pgfmain-pagpayment-cboyear').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagpayment-chkcheck').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud) || FoxInCloud.DOMEvent.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagpayment-chkcheck').prop('effectShow', false).prop('effectHide', false); jQuery('#welcome2_scx-pgfmain-pagpayment').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagcompleted-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagcompleted-label6').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagcompleted').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagintro-command1').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagintro-command1').prop('effectShow', true).prop('effectHide', true); $('welcome2_scx-pgfmain-pagintro-label6').observe('click', FoxInCloud.LeftClick.bind(FoxInCloud)); jQuery('#welcome2_scx-pgfmain-pagintro-label6').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-pagintro').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-page13').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-page14').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pgfmain-page15').prop('effectShow', true).prop('effectHide', true); FoxInCloud.pgfMake('welcome2_scx-pgfmain', 'welcome2_scx-pgfmain-paghome', false, [], true, false, 0, 0); jQuery('#welcome2_scx-pgfmain').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-imgheader').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pesshp1').prop('effectShow', true).prop('effectHide', true); jQuery('#welcome2_scx-pesshp2').prop('effectShow', true).prop('effectHide', true); FoxInCloud.documentInit('welcome2_scx'); jQuery('#welcome2_scx').prop('effectShow', true).prop('effectHide', true); var inputs = $$('#welcome2_scx [tabindex]').sortBy(function(el){return el.tabIndex;}); inputs.each(function(el){ el.observe('keydown', function(e){ if ((e.keyCode || e.which) == 9){ / tab key pressed */ e.preventDefault(); var inputTos = e.shiftKey ? inputs.reverse(false) : inputs , index = inputTos.indexOf(this) , inputTo = inputTos.detect(function(inpTo, idx){ return true && idx > index && inpTo.tabIndex > 0 && !inpTo.disabled && inpTo.visible() && inpTo.ancestors().all(function(anc){return anc.visible()}) });

/* move focus to inputTo, otherwise focus first input / inputTo = inputTo || inputTos.detect(function(inpTo){ return true && inpTo.tabIndex > 0 && !inpTo.disabled && inpTo.visible() && inpTo.ancestors().all(function(anc){return anc.visible()}) }); inputTo && inputTo.focus(); true && true && window.console && console.log && console.log('tabbing to ' + inputTo.inspect()); } }) }); / -- Generated on 02/23/17 01:35:00 PM in 1.3 sec. by FoxInCloud version 2.23.0 of 12/15/16 12:50:42 PM */

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 23, 2017 @ 11:39pm

Tuvia,

  1. Don't you have a JavaScript error on this:
oGrid.setColumnWidth(234+1,1); // should be 1.1
  1. gridCellEvent handler code is not generated… here are the events that map into gridCellEvent:
Textbox	InteractiveChange
Textbox	LostFocus
Textbox	Valid
Checkbox	Click
Checkbox	InteractiveChange
Checkbox	LostFocus
Checkbox	MiddleClick
Checkbox	RightClick
Checkbox	Valid
Commandbutton	LostFocus
Commandbutton	Valid
Combobox	InteractiveChange
Combobox	LostFocus
Combobox	Valid

These event methods must have the usual heading code:

if thisForm.wlHTMLgen
  return
endif

Update: are you sure .recordSource is read-write?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 24, 2017 @ 05:32am

NO javascript errors.

There are no code snippets anywhere in the form that do not have the ..wlhtmlgen check.

The recordsource is readwrite, if I run in development mode when I switch and use the actial VFP form in the IDE it works fine.

Update: the grids themselves have no code from me anywhere. It is a regular fic grid from the grid class (the columns and textboxes appear ar design time ad VFP classes of course).

The recordsource is a readwrite cursor, although I have tried it with dbf's as well.

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 24, 2017 @ 06:48am

could you try this:

modi comm awHTML
* ===============
if !(m.lRequest or m.lRefresh)
  assert .F. && add this line and see if it breaks here
  return
endif
* ===============

if assert fires, can you see where lRequest or lRefresh are set to .F.?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 24, 2017 @ 07:19am

I tried putting it in awhtml right after the parameters statement and also in awhtmlgen right after parameters statement. It did not break.

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 24, 2017 @ 08:51am

we'll see that remotely next week; what about Tuesday?

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 24, 2017 @ 10:54am

Tuesday is OK, except the client is down and cannot operate and I am stumped. I only have today or maybe tomorrow to figure it out.

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  FoxInCloud Support - Thierry N.
  Tuvia Vinitsky
  Feb 24, 2017 @ 11:13am

tomorrow i'll try to give you some other break points

unfortunately event processing is the most complex part of grids which are, by far, the most complex control

lets start another thread because the MD editor chikes on long posts

Gravatar is a globally recognized avatar based on your email address. re: grid not binding
  Tuvia Vinitsky
  FoxInCloud Support - Thierry N.
  Feb 24, 2017 @ 11:35am

OK. Start a new thread with any tips and I will try them.

© 1996-2024