{ "id": "roo-file-72", "name": "Pman.Tab.XtupleStockHistory", "parent": "Pman.Tab.XtupleManage", "title": "Pman.Tab.XtupleStockHistory", "path": "/home/edward/gitlive/web.xtuple/Pman/Xtuple/Pman.Tab.XtupleStockHistory.bjs", "items": [ { "listeners": { "|activate": "function() {\n _this.panel = this;\n if (_this.grid) {\n _this.grid.footer.onClick('first');\n }\n}" }, "background": true, "fitContainer": true, "fitToframe": true, "region": "center", "tableName": "invhist", "title": "Inventory History", "xtype": "GridPanel", "|xns": "Roo", "items": [ { "listeners": { "|render": "function() \n{\n _this.grid = this; \n //_this.dialog = Pman.Dialog.FILL_IN\n if (_this.panel.active) {\n this.footer.onClick('first');\n }\n}", "celldblclick": "function (_self, rowIndex, colIndex, e)\n{\n var col = _this.grid.colModel.config[colIndex].dataIndex;\n \n if (col !='item_number') {\n return;\n }\n var r = _this.grid.ds.getAt(rowIndex).data;\n \n _this.itemsiteCombo.setValue(r.item_number);\n _this.grid.footer.onClick('first');\n \n \n}" }, "*prop": "grid", "autoExpandColumn": "invhist_comments", "loadMask": true, "xtype": "Grid", "|xns": "Roo.grid", "items": [ { "|xns": "Roo", "xtype": "Toolbar", "*prop": "toolbar", "items": [ { "listeners": { "select": "function (combo, record, index)\n{\n \n \n (function() { \n if (_this.grid) {\n _this.grid.footer.onClick('first'); \n }\n }).defer(100);\n}", "render": "function (_self)\n{\n _this.itemsiteCombo = _self;\n}" }, "allowBlank": true, "displayField": "itemsite_item_id_item_number", "editable": true, "emptyText": "Select itemsite", "fieldLabel": "Item", "forceSelection": true, "listWidth": 400, "loadingText": "Searching...", "minChars": 2, "name": "itemsite_item_id_item_number", "pageSize": 20, "qtip": "Select itemsite", "queryParam": "query[number]", "selectOnFocus": true, "tpl": "
{itemsite_item_id_item_number} {itemsite_item_id_item_descrip1}
", "triggerAction": "all", "typeAhead": true, "valueField": "itemsite_item_id_item_number", "width": 200, "xtype": "ComboBox", "|xns": "Roo.form", "items": [ { "listeners": { "|beforeload": "function (_self, o){\n o.params = o.params || {};\n var l = _this.locationCombo.getValue();\n if (l ) { \n o.params._has_invdetail_location_id = l;\n }\n\n}\n" }, "*prop": "store", "remoteSort": true, "xtype": "Store", "|sortInfo": "{ direction : 'ASC', field: 'id' }", "|xns": "Roo.data", "items": [ { "*prop": "proxy", "method": "GET", "xtype": "HttpProxy", "|url": "baseURL + '/Roo/itemsite.php'", "|xns": "Roo.data" }, { "*prop": "reader", "xtype": "JsonReader", "|xns": "Roo.data", "id": "id", "root": "data", "totalProperty": "total", "|fields": "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"itemsite_abcclass\",\"type\":\"string\"}]" } ] } ] }, { "listeners": { "select": "function (combo, record, index)\n{\n \n \n (function() { \n if (_this.grid) {\n _this.grid.footer.onClick('first'); \n }\n }).defer(100);\n}", "render": "function (_self)\n{\n _this.locationCombo = _self;\n} " }, "allowBlank": true, "displayField": "location_descrip", "editable": true, "emptyText": "Select location", "fieldLabel": "location", "forceSelection": true, "hiddenName": "location_id", "listWidth": 400, "loadingText": "Searching...", "minChars": 2, "name": "location_descrip", "pageSize": 200, "qtip": "Select location", "queryParam": "query[location_name]", "selectOnFocus": true, "tpl": "
{location_descrip}
", "triggerAction": "all", "typeAhead": true, "valueField": "location_id", "width": 200, "xtype": "ComboBox", "|xns": "Roo.form", "items": [ { "listeners": { "|beforeload": "function (_self, o){\n o.params = o.params || {};\n o.params._has_invdetail = 1;\n // set more here\n var item_num = _this.itemsiteCombo.getValue();\n if (item_num.length) {\n o.params._has_invdetail_item = item_num;\n }\n \n}\n" }, "*prop": "store", "remoteSort": true, "xtype": "Store", "|sortInfo": "{ direction : 'ASC', field: 'location_name' }", "|xns": "Roo.data", "items": [ { "*prop": "proxy", "method": "GET", "xtype": "HttpProxy", "|url": "baseURL + '/Roo/location.php'", "|xns": "Roo.data" }, { "*prop": "reader", "xtype": "JsonReader", "|xns": "Roo.data", "id": "id", "root": "data", "totalProperty": "total", "|fields": "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"location_name\",\"type\":\"string\"}]" } ] } ] }, { "listeners": { "render": "function (_self)\n{\n _this.viewtype = _self;\n}", "select": "function (combo, record, index)\n{\n Roo.log('select');\n _this.grid.footer.onClick('first');\n}" }, "allowBlank": false, "displayField": "fname", "editable": false, "hiddenName": "status", "listWidth": 200, "mode": "local", "name": "status_name", "triggerAction": "all", "value": "BOTH", "valueField": "ftype", "width": 150, "xtype": "ComboBox", "|xns": "Roo.form", "items": [ { "*prop": "store", "xtype": "SimpleStore", "|data": "[ \n [ 'BOTH', \"All Transactions\"],\n [ 'IN' , \"Incomming\"],\n [ 'OUT', \"Outgoing\"] ,\n [ 'BOTHALL', \"All Transactions (with voided)\"]\n\n]\n", "|fields": "[ 'ftype', 'fname']", "|xns": "Roo.data" } ] }, { "|xns": "Roo.Toolbar", "xtype": "Separator" }, { "text": "From", "xtype": "TextItem", "|xns": "Roo.Toolbar" }, { "listeners": { "render": "function (_self)\n{\n _this.dateSel = _self;\n}", "select": "function (combo, date)\n{\n _this.grid.footer.onClick('first');\n}" }, "allowBlank": true, "fieldLabel": "Date", "format": "Y-m-d", "useIso": true, "width": 150, "xtype": "DateField", "|xns": "Roo.form" }, { "|xns": "Roo.Toolbar", "xtype": "Separator" }, { "text": "To", "xtype": "TextItem", "|xns": "Roo.Toolbar" }, { "listeners": { "render": "function (_self)\n{\n _this.endDateSel = _self;\n}", "select": "function (combo, date)\n{\n _this.grid.footer.onClick('first');\n}" }, "allowBlank": true, "fieldLabel": "Date", "format": "Y-m-d", "useIso": true, "width": 150, "xtype": "DateField", "|xns": "Roo.form" }, { "|xns": "Roo.Toolbar", "xtype": "Fill" }, { "text": "Download Reports", "xtype": "Button", "|icon": "rootURL + '/Pman/templates/images/spreadsheet.gif'", "|xns": "Roo.Toolbar", "items": [ { "|xns": "Roo.menu", "xtype": "Menu", "*prop": "menu", "items": [ { "listeners": { "click": "function (_self, e)\n{\n if (!_this.itemsiteCombo.getValue().length && \n !_this.locationCombo.getValue() && \n !_this.dateSel.getValue() && \n !_this.endDateSel.getValue()) {\n _this.grid.ds.removeAll();\n Roo.MessageBox.alert(\"Error\", \"Nothing to download!\");\n return false;\n }\n \n new Pman.Download({\n //params : {_asExcel : 1, limit : 99999},\n grid : _this.grid,\n newWindow : 1\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}" }, "text": "History", "xtype": "Item", "|xns": "Roo.menu" }, { "listeners": { "click": "function (_self, e)\n{\n \n var dt = _this.dateSel.getValue();\n var end_dt = _this.endDateSel.getValue();\n \n \n if(!dt){\n Roo.Msg.alert('Error', 'Please select a FROM date to download');\n return;\n }\n if(!end_dt){\n Roo.Msg.alert('Error', 'Please select a TO date to download');\n return;\n }\n \n var params = {\n _group : 'invhist',\n _name : 'summary',\n 'from_dt:text' : dt,\n 'to_dt:text' : end_dt,\n \n csvCols : '*',\n csvTitles : '*', \n limit : 9999 \n \n }\n if ( _this.locationCombo.getValue() * 1) {\n params['invdetail_location_id:number'] = _this.locationCombo.getValue() ;\n }\n \n \n new Pman.Download({\n url : baseURL + '/Roo/Metasql',\n method : 'GET',\n params : params\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}" }, "text": "Summary of Orders/Transfers", "xtype": "Item", "|xns": "Roo.menu" }, { "|xns": "Roo.menu", "xtype": "Separator" }, { "listeners": { "click": "function (_self, e)\n{\n\n new Pman.Download({\n url : baseURL + '/Roo/Metasql',\n method : 'GET',\n params : {\n _group : 'inventory',\n _name : 'asset',\n csvCols : '*',\n csvTitles : '*', \n limit : 9999 \n \n }\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}" }, "text": "Day by Day - GL to stock comparison", "xtype": "Item", "|xns": "Roo.menu" }, { "listeners": { "click": "function (_self, e)\n{\n var dt = _this.dateSel.getValue();\n \n if(!dt){\n Roo.Msg.alert('Error', 'Please select a FROM date to download');\n return;\n }\n \n new Pman.Download({\n url : baseURL + '/Roo/Metasql',\n method : 'GET',\n params : {\n _group : 'inventory',\n _name : 'bydate',\n '_as_of:text' : typeof(dt) == 'string' ? dt : dt.format('Y-m-d'),\n csvCols : '*',\n csvTitles : '*', \n limit : 9999 \n \n }\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}" }, "text": "Inventory Transactions on From date", "xtype": "Item", "|xns": "Roo.menu" }, { "listeners": { "click": "function (_self, e)\n{\n var dt = _this.dateSel.getValue();\n \n if(!dt){\n Roo.Msg.alert('Error', 'Please select a FROM date to download');\n return;\n }\n \n new Pman.Download({\n url : baseURL + '/Roo/Metasql',\n method : 'GET',\n params : {\n _group : 'gltrans',\n _name : 'bydate',\n '_as_of:text' : typeof(dt) == 'string' ? dt : dt.format('Y-m-d'),\n csvCols : '*',\n csvTitles : '*', \n limit : 9999 \n \n }\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}" }, "text": "GL Stock Transactions on From date", "xtype": "Item", "|xns": "Roo.menu" }, { "|xns": "Roo.menu", "xtype": "Separator" }, { "listeners": { "click": "function (_self, e)\n{\n var dt = _this.dateSel.getValue();\n var end_dt = _this.endDateSel.getValue();\n var location_id = _this.locationCombo.getValue() *1;\n \n if(!dt){\n Roo.Msg.alert('Error', 'Please select a FROM date to download');\n return;\n }\n if(!end_dt){\n Roo.Msg.alert('Error', 'Please select a TO date to download');\n return;\n }\n if(!location_id){\n Roo.Msg.alert('Error', 'Please select a Location to download');\n return;\n }\n new Pman.Download({\n url : baseURL + '/Roo/Metasql',\n newWindow : 1,\n method : 'GET',\n params : {\n _group : 'invdetail',\n '_name[0]' : 'opening',\n '_name[1]' : 'closing', \n '_name[2]' : 'byitem',\n '_name[3]' : 'bydate', \n 'location_id:number' : location_id,\n 'from_dt:text' : typeof(dt) == 'string' ? dt : dt.format('Y-m-d'),\n 'to_dt:text' : typeof(end_dt) == 'string' ? end_dt : end_dt.format('Y-m-d'), \n limit : 9999 \n \n }\n });\n \n Roo.MessageBox.alert(\"Notice\", \"Report will download shortly\");\n}\n" }, "text": "Consignment Detail Report", "xtype": "Item", "|xns": "Roo.menu" } ] } ] } ] }, { "listeners": { "beforeload": "function (_self, o)\n{\n if (!_this.itemsiteCombo.getValue().length && \n !_this.locationCombo.getValue() && \n !_this.dateSel.getValue() && \n !_this.endDateSel.getValue()) {\n _this.grid.ds.removeAll();\n return false;\n }\n o.params['query[item_number]'] = _this.itemsiteCombo.getValue();\n o.params.invdetail_location_id = _this.locationCombo.getValue();\n o.params['query[viewtype]'] = _this.viewtype.getValue(); \n o.params._with_item =1;\n \n var start = _this.dateSel.getValue();\n var end = _this.endDateSel.getValue();\n \n o.params['query[dateSel]'] = typeof(start) == 'string' ? start : start.format('Y-m-d');\n o.params['query[endDateSel]'] = typeof(end) == 'string' ? end : end.format('Y-m-d');\n \n o.params._with_balance = 1;\n \n \n}" }, "*prop": "dataSource", "remoteSort": true, "xtype": "Store", "|sortInfo": "{ field : 'invhist_transdate,invdetail_id', direction: 'DESC' }", "|xns": "Roo.data", "items": [ { "*prop": "proxy", "method": "GET", "xtype": "HttpProxy", "|url": "baseURL + '/Roo/invdetail.php'", "|xns": "Roo.data" }, { "|xns": "Roo.data", "xtype": "JsonReader", "totalProperty": "total", "root": "data", "*prop": "reader", "id": "id", "|fields": "[\n {\n 'name': 'invhist_id',\n 'type': 'int'\n },\n {\n 'name': 'invhist_itemsite_id',\n 'type': 'int'\n },\n {\n 'name': 'invhist_transdate',\n 'type': 'date',\n 'dateFormat': 'Y-m-d'\n },\n {\n 'name': 'invhist_transtype',\n 'type': 'string'\n },\n {\n 'name': 'invhist_invqty',\n 'type': 'float'\n },\n {\n 'name': 'invhist_invuom',\n 'type': 'string'\n },\n {\n 'name': 'invhist_ordnumber',\n 'type': 'string'\n },\n {\n 'name': 'invhist_docnumber',\n 'type': 'string'\n },\n {\n 'name': 'invhist_qoh_before',\n 'type': 'float'\n },\n {\n 'name': 'invhist_qoh_after',\n 'type': 'float'\n },\n {\n 'name': 'invhist_unitcost',\n 'type': 'float'\n },\n {\n 'name': 'invhist_acct_id',\n 'type': 'int'\n },\n {\n 'name': 'invhist_xfer_warehous_id',\n 'type': 'int'\n },\n {\n 'name': 'invhist_comments',\n 'type': 'string'\n },\n {\n 'name': 'invhist_posted',\n 'type': 'int'\n },\n {\n 'name': 'invhist_imported',\n 'type': 'int'\n },\n {\n 'name': 'invhist_hasdetail',\n 'type': 'int'\n },\n {\n 'name': 'invhist_ordtype',\n 'type': 'string'\n },\n {\n 'name': 'invhist_analyze',\n 'type': 'int'\n },\n {\n 'name': 'invhist_user',\n 'type': 'string'\n },\n {\n 'name': 'invhist_created',\n 'type': 'date',\n 'dateFormat': 'Y-m-d'\n },\n {\n 'name': 'invhist_costmethod',\n 'type': 'string'\n },\n {\n 'name': 'invhist_value_before',\n 'type': 'float'\n },\n {\n 'name': 'invhist_value_after',\n 'type': 'float'\n },\n {\n 'name': 'invhist_series',\n 'type': 'int'\n }\n]" } ] }, { "*prop": "footer", "displayInfo": true, "displayMsg": "Displaying invhist{0} - {1} of {2}", "emptyMsg": "No invhist found", "pageSize": 25, "xtype": "PagingToolbar", "|xns": "Roo", "items": [ { "listeners": { "click": "function (_self, e)\n{\n Roo.MessageBox.progress (\"Syncing Fifo fill\", \"Sending\");\n \n var offset = 0;\n var st = new Date();\n \n // for a single location.\n \n \n \n var runSync= function() {\n \n\n \n \n new Pman.Request( {\n url : baseURL+'/Roo/Invdetail',\n method : 'GET',\n timeout : 60000,\n params : {\n _fifo_fill : 1,\n offset : offset,\n location_id : _this.locationCombo.getValue(),\n item_number : _this.itemsiteCombo.getValue()\n },\n success : function(res) {\n Roo.log(res);\n if (!res.data.total) {\n Roo.MessageBox.hide();\n return;\n }\n var el = new Date();\n \n var elapsed = el - st;\n \n var total_time = (elapsed / offset) * res.data.total ;\n var remaining = (total_time - elapsed) / (1000 * 60);\n \n \n offset = res.data.offset + res.data.limit;\n Roo.MessageBox.updateProgress ( offset / res.data.total, \"Done \" + offset + '/' + res.data.total + \n \" Est. complete in \" + remaining.toFixed(1) + \"mins\");\n runSync();\n }, \n failure : function() {\n Roo.MessageBox.alert(\"Error\", \"Sending failed - probably a timeout\");\n }\n \n \n });\n }\n runSync();\n}\n" }, "text": "Fifo Fill", "xtype": "Button", "|xns": "Roo.Toolbar" }, { "listeners": { "click": "function (_self, e)\n{\n Roo.MessageBox.progress (\"Syncing Fifo fill values\", \"Sending\");\n \n var offset = 0;\n var st = new Date();\n \n // for a single location.\n \n \n \n var runSync= function() {\n \n\n \n \n new Pman.Request( {\n url : baseURL+'/Roo/Invdetail',\n method : 'GET',\n timeout : 60000,\n params : {\n _fifo_fill : 2,\n offset : offset,\n location_id : _this.locationCombo.getValue(),\n item_number : _this.itemsiteCombo.getValue()\n },\n success : function(res) {\n Roo.log(res);\n if (!res.data.total) {\n Roo.MessageBox.hide();\n return;\n }\n var el = new Date();\n \n var elapsed = el - st;\n \n var total_time = (elapsed / offset) * res.data.total ;\n var remaining = (total_time - elapsed) / (1000 * 60);\n \n \n offset = res.data.offset + res.data.limit;\n Roo.MessageBox.updateProgress ( offset / res.data.total, \"Done \" + offset + '/' + res.data.total + \n \" Est. complete in \" + remaining.toFixed(1) + \"mins\");\n runSync();\n }, \n failure : function() {\n Roo.MessageBox.alert(\"Error\", \"Sending failed - probably a timeout\");\n }\n \n \n });\n }\n runSync();\n}\n" }, "text": "Fifo Fill Values", "xtype": "Button", "|xns": "Roo.Toolbar" }, { "listeners": { "click": "\nfunction (_self, e)\n{\n Roo.MessageBox.progress (\"Syncing shipvoid fill\", \"Sending\");\n \n var offset = 0;\n var st = new Date();\n \n // for a single location.\n \n \n \n var runSync= function() {\n \n \n new Pman.Request( {\n url : baseURL+'/Roo/cohead',\n method : 'GET',\n timeout : 60000,\n params : {\n _fill_shipvoid : 1,\n offset : offset\n },\n success : function(res) {\n Roo.log(res);\n if (!res.data.total) {\n Roo.MessageBox.hide();\n return;\n }\n var el = new Date();\n \n var elapsed = el - st;\n \n var total_time = (elapsed / offset) * res.data.total ;\n var remaining = (total_time - elapsed) / (1000 * 60);\n \n \n offset = res.data.offset + res.data.limit;\n Roo.MessageBox.updateProgress ( offset / res.data.total, \"Done \" + offset + '/' + res.data.total + \n \" Est. complete in \" + remaining.toFixed(1) + \"mins\");\n runSync();\n }, \n failure : function() {\n Roo.MessageBox.alert(\"Error\", \"Sending failed - probably a timeout\");\n }\n \n \n });\n }\n runSync();\n}\n" }, "text": "Shipvoid Fill", "xtype": "Button", "|xns": "Roo.Toolbar" } ] }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invdetail_id", "header": "Invdetail#", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if (r.data.invfifo_void > 0) { \n return '' + v + ''; \n }\n return v;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "invhist_transdate", "header": "Date", "sortable": true, "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) {\n \n var vv = Date.parseDate(v.split(' ')[0],'Y-m-d' );\n \n if (r.data.invfifo_void > 0) { \n return String.format('{0}', vv ? vv.format('d/M/Y') : '');\n } \n \n return String.format('{0}', vv ? vv.format('d/M/Y') : '');\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "invhist_created", "header": "Entered", "hidden": true, "sortable": true, "width": 75, "xtype": "ColumnModel", "|renderer": "function(v) { \n var vv = Date.parseDate(v.split(' ')[0],'Y-m-d' );\n return String.format('{0}', vv ? vv.format('d/M/Y') : '');\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "item_number", "header": "Item", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v) { \n \n return String.format('{0}', v );\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "invhist_ordnumber", "header": "Order#", "width": 100, "xtype": "ColumnModel", "|renderer": "function(v,x,r) {\n\n\n return String.format('{0}', v); }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "invhist_docnumber", "header": "doc#", "width": 100, "xtype": "ColumnModel", "|renderer": "function(v) { return String.format('{0}', v); }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "invhist_transtype", "header": "Type", "width": 50, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { return String.format('{0}/{1}', v,r.data.invhist_ordtype); }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invhist_unitcost", "header": " unitcost", "width": 50, "xtype": "ColumnModel", "|renderer": "function(v) { return String.format('{0}', v); }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "dataIndex": "location_name", "header": "Location", "width": 100, "xtype": "ColumnModel", "|renderer": "function(v) { return String.format('{0}', v); }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invdetail_qty", "header": "Change", "width": 50, "xtype": "ColumnModel", "|renderer": "function(v,x,r) \n{\n if (r.data.invfifo_void > 0) { \n return String.format('{0}', parseInt( v)); \n } \n return String.format('{0}', parseInt( v)); \n}", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invdetail_balance_qty", "header": "Balance", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) \n{\n if (r.data.invfifo_void > 0) { \n return String.format('{0}', parseInt( v)); \n } \n return String.format('{0}', parseInt( v)); \n}", "|xns": "Roo.grid" }, { "xtype": "ColumnModel", "header": "Invhist comments", "width": 200, "dataIndex": "invhist_comments", "|renderer": "function(v) { return String.format('{0}', v); }", "|xns": "Roo.grid", "*prop": "colModel[]" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_qty_after", "header": "Fifo After", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty < 0 ) {\n return '';\n }\n return (v*1).toFixed(0) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_qty_after", "header": "Fifo After", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty > 0 ) {\n return '';\n }\n return (v*1).toFixed(0) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_cost_before", "header": "Fifo Cost Before", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty < 0 ) {\n return '';\n } \n return (v*1).toFixed(2) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_cost_after", "header": "Fifo Cost After", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty < 0 ) {\n return '';\n } \n return (v*1).toFixed(2) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_cost_before", "header": "Fifo Cost Before", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty > 0 ) {\n return '';\n }\n return (v*1).toFixed(2) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_cost_after", "header": "Fifo Cost After", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n if ( r.data.invdetail_qty > 0 ) {\n return '';\n }\n return (v*1).toFixed(2) ;\n }", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_unitcost", "header": "Fifo Unitcost", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) \n{\n if (r.data.invfifo_void > 0) { \n return '' + (v*1).toFixed(2) + '';\n } \n return (v*1).toFixed(2) ;\n}", "|xns": "Roo.grid" }, { "*prop": "colModel[]", "align": "right", "dataIndex": "invfifo_landedunitcost", "header": "Fifo Landed Unitcost", "width": 75, "xtype": "ColumnModel", "|renderer": "function(v,x,r) { \n \n var cu = ((r.data.invfifo_cost_after*1 - r.data.invfifo_cost_before*1) / Math.abs(r.data.invdetail_qty)).toFixed(2);\n var lu = (v*1).toFixed(2) ;\n if (cu != lu) {\n \n if (r.data.invfifo_void > 0) { \n return '' + + lu +'/' +cu + '';\n } \n \n return '' + lu +'/' +cu + '';\n }\n if (r.data.invfifo_void > 0) { \n return '' + lu + '';\n } \n \n return lu;\n }", "|xns": "Roo.grid" } ] } ] } ], "permname": "", "modOrder": "005" }