{
"id": "roo-file-217",
"name": "Pman.Tab.XtupleAdjustmentGroup",
"parent": "Pman.Tab.XtupleAdjustmentTab",
"title": "",
"path": "/home/alan/gitlive/Pman.Xtuple/Pman.Tab.XtupleAdjustmentGroup.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": "invadjgrp",
"title": "Inventroy Adjustment Groups",
"xtype": "GridPanel",
"|xns": "Roo",
"items": [
{
"listeners": {
"|render": "function() \n{\n _this.grid = this; \n if (_this.panel.active) {\n this.footer.onClick('first');\n }\n}",
"rowdblclick": "function (_self, rowIndex, e)\n{\n var s = _this.grid.ds.getAt(rowIndex);\n \n Pman.Dialog.XtupleAdjustmentGroup.show( { invadjgrp_id : s.data.invadjgrp_id } , function() {\n _this.grid.footer.onClick('first');\n });\n}",
"cellclick": "function (_self, rowIndex, columnIndex, e)\n{\n var c = _this.grid.colModel.config[columnIndex];\n var di = c.dataIndex;\n \n if (di != 'invadjgrp_posted') {\n return;\n }\n \n var r = _this.grid.ds.getAt(rowIndex);\n if (r.data.invadjgrp_posted ) { // nos ur\n Roo.MessageBox.alert(\"Error\", \"Group is already posted\");\n return;\n }\n if (r.data.invadjgrp_void * 1 ) {\n Roo.MessageBox.alert(\"Error\", \"Group is already void\");\n return;\n }\n Roo.MessageBox.confirm(\n \"Confirm\",\n \"Are you sure it's ready to post?\",\n function(bu) {\n if (bu != 'yes') {\n return;\n }\n \n new Pman.Request({\n url : baseURL + '/Roo/Invadjgrp',\n method : 'POST',\n mask : 'Posting',\n timeout: 120000,\n params : {\n invadjgrp_id : r.data.invadjgrp_id,\n invadjgrp_posted : 1,\n _post : 1\n },\n success : function(res) {\n _this.grid.footer.onClick('first');\n },\n failure : function (res) {\n Roo.log(res);\n Roo.MessageBox.alert(\"Error\",res.errorMsg || \"Error sending\");\n \n }\n });\n });\n \n}"
},
"*prop": "grid",
"autoExpandColumn": "invadjgrp_comments",
"loadMask": true,
"xtype": "Grid",
"|xns": "Roo.grid",
"items": [
{
"*prop": "sm",
"singleSelect": true,
"xtype": "RowSelectionModel",
"|xns": "Roo.grid"
},
{
"listeners": {
"beforeload": "function (_self, o)\n{\n o.params = o.params || {};\n \n o.params._with_qty_detail = 1;\n}"
},
"*prop": "dataSource",
"remoteSort": true,
"xtype": "Store",
"|sortInfo": "{ field : 'invadjgrp_id', direction: 'DESC' }",
"|xns": "Roo.data",
"items": [
{
"*prop": "proxy",
"method": "GET",
"xtype": "HttpProxy",
"|url": "baseURL + '/Roo/Invadjgrp.php'",
"|xns": "Roo.data"
},
{
"*prop": "reader",
"id": "id",
"root": "data",
"totalProperty": "total",
"xtype": "JsonReader",
"|fields": "[\n {\n 'name': 'invadjgrp_id',\n 'type': 'int'\n },\n {\n 'name': 'invadjgrp_location_id',\n 'type': 'int'\n }\n]",
"|xns": "Roo.data"
}
]
},
{
"*prop": "footer",
"displayInfo": true,
"displayMsg": "Displaying Inventory Adjustment Groups{0} - {1} of {2}",
"emptyMsg": "No Inventory Adjustment Groups found",
"pageSize": 25,
"xtype": "PagingToolbar",
"|xns": "Roo"
},
{
"*prop": "toolbar",
"xtype": "Toolbar",
"|xns": "Roo",
"items": [
{
"listeners": {
"|click": "function()\n{\n Pman.Dialog.XtupleAdjustmentGroup.show( { invadjgrp_id : 0 } , function() {\n _this.grid.footer.onClick('first');\n }); \n}\n"
},
"cls": "x-btn-text-icon",
"text": "Add",
"xtype": "Button",
"|icon": "Roo.rootURL + 'images/default/dd/drop-add.gif'",
"|xns": "Roo.Toolbar"
},
{
"|xns": "Roo.Toolbar",
"xtype": "Fill"
},
{
"listeners": {
"|click": "function()\n{\n var s = _this.grid.getSelectionModel().getSelected();\n if (!s || s.data.invadjgrp_id * 1 < 1 ) {\n Roo.MessageBox.alert(\"Error\", \"Select a inventory adjustment group\");\n return;\n }\n if (!s || s.data.invadjgrp_void * 1 ) {\n Roo.MessageBox.alert(\"Error\", \"Group is already void\");\n return;\n }\n \n if (!s.data.invadjgrp_posted) {\n Roo.MessageBox.alert('Error', 'This group has not been posted yet!');\n return;\n }\n \n var voidit = function(force){\n new Pman.Request({\n url : baseURL + '/Roo/Invadjgrp',\n method : 'POST',\n mask : 'Voiding',\n params : {\n invadjgrp_id : s.data.invadjgrp_id,\n _void : 1,\n _force : force\n },\n success : function(res) {\n _this.grid.footer.onClick('first');\n },\n failure : function (res) {\n Roo.log(res);\n try {\n if (res.errors.confirm) {\n \n Roo.MessageBox.confirm(\n \"Confirm\", \n \"There are some adjustments have been voided of this group! Do you want to void this group anyway?\",\n function(x) {\n if (x != 'yes') {\n return;\n }\n voidit(1);\n }\n );\n return;\n }\n } catch(e) { }\n Roo.MessageBox.alert(\"Error\", res.errorMsg);\n \n }\n });\n }\n \n voidit(0)\n}\n "
},
"cls": "x-btn-text-icon",
"text": "Void",
"xtype": "Button",
"|icon": "rootURL + '/Pman/templates/images/trash.gif'",
"|xns": "Roo.Toolbar"
},
{
"listeners": {
"|click": "function()\n{ \n var s = _this.grid.getSelectionModel().getSelected();\n \n if (!s || s.data.invadjgrp_id * 1 < 1 ) {\n Roo.MessageBox.alert(\"Error\", \"Select a inventory adjustment group\");\n return;\n }\n \n if (s.data.invadjgrp_posted) {\n Roo.MessageBox.alert('Error', 'You can not delete the posted adjustment, try void it');\n return;\n }\n \n new Pman.Request({\n url : baseURL + '/Roo/Invadjgrp',\n method : 'POST',\n params : { _delete : s.data.invadjgrp_id },\n mask : 'Deleteing',\n success : function(res) {\n _this.grid.footer.onClick('first');\n }\n \n });\n}\n "
},
"cls": "x-btn-text-icon",
"text": "Delete",
"xtype": "Button",
"|icon": "rootURL + '/Pman/templates/images/trash.gif'",
"|xns": "Roo.Toolbar"
}
]
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_id",
"header": "Ref#",
"width": 50,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { return String.format(r.data.invadjgrp_void *1 ? '{0}' : '{0}', v); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_name",
"header": "Name",
"width": 150,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { return String.format(r.data.invadjgrp_void *1 ? '{0}' : '{0}', v); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_transdate",
"header": "Date",
"width": 100,
"xtype": "ColumnModel",
"|renderer": "function(v) { return String.format('{0}', v ? v.format('Y-m-d') : ''); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_neg_qty",
"header": "Negative",
"width": 75,
"xtype": "ColumnModel",
"|renderer": "function(v) { return String.format('{0}', parseInt(v).toFixed(0)); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_pos_qty",
"header": "Positive",
"width": 75,
"xtype": "ColumnModel",
"|renderer": "function(v) { return String.format('{0}', parseInt(v).toFixed(0)); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_location_id_location_name",
"header": "Location",
"width": 200,
"xtype": "ColumnModel",
"|renderer": "function(v) { return String.format('{0}', v); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_comments",
"header": "Comments",
"width": 200,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { return String.format(r.data.invadjgrp_void *1 ? '{0}' : '{0}', v); }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "invadjgrp_posted",
"header": "Posted",
"width": 75,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { \n \n if (r.data.invadjgrp_void *1) { \n return '';\n }\n var state = v * 1 > 0 ? '-checked' : '';\n\n return '';\n \n }",
"|xns": "Roo.grid"
}
]
}
]
}
],
"permname": "",
"modOrder": "001"
}