Ext.define('erp.view.fa.fix.MonthAccount',{ extend: 'Ext.Viewport', layout: 'anchor', hideBorders: true, initComponent : function(){ var me = this; Ext.apply(me, { items: [{ xtype: 'form', anchor: '100% 10%', bodyStyle: 'background:#f1f1f1', layout: 'column', defaults: { xtype: 'displayfield', columnWidth: .3, margin: '5 10' }, items: [{ fieldLabel: '期间', id: 'info_ym', value: Ext.Date.format(new Date(), 'Ym') },{ xtype: 'checkbox', id: 'chkun', boxLabel: '包括未记账凭证' },{ xtype: 'checkbox', id: 'chkbalance', boxLabel: '只显示有差额科目' }], buttonAlign: 'center', buttons: [{ name: 'query', id: 'query', text: $I18N.common.button.erpQueryButton, iconCls: 'x-button-icon-query', cls: 'x-btn-gray', margin: '0 4 0 0' },{ text: $I18N.common.button.erpCloseButton, iconCls: 'x-button-icon-close', cls: 'x-btn-gray', margin: '0 4 0 0', handler: function(){ var main = parent.Ext.getCmp("content-panel"); main.getActiveTab().close(); } }] },{ xtype: 'grid', anchor: '100% 90%', columnLines: true, columns: [{ text: '期间', cls: 'x-grid-header-1', dataIndex: 'yearmonth', xtype: 'numbercolumn', format: '0', width: 80 },{ text: '科目', cls: 'x-grid-header-1', dataIndex: 'catecode', width: 110 },{ text: '期初余额', cls: 'x-grid-header-1', columns: [{ text: '固定资产', cls: 'x-grid-header-1', dataIndex: 'beginamount', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '总账系统', cls: 'x-grid-header-1', dataIndex: 'cm_beginamount', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '差额', cls: 'x-grid-header-1', dataIndex: 'begindiff', align: 'right', width: 120, renderer: function(val, meta, record) { val = record.get('beginamount') - record.get('cm_beginamount'); if(record.get('begindiff') != val) { record.set('begindiff', val); } return val == 0 ? '' : Ext.util.Format.number(val, '0,000.000'); } }] },{ text: '本期借方发生', cls: 'x-grid-header-1', columns: [{ text: '固定资产', cls: 'x-grid-header-1', dataIndex: 'nowdebit', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '总账系统', cls: 'x-grid-header-1', dataIndex: 'cm_nowdebit', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '差额', cls: 'x-grid-header-1', dataIndex: 'debitdiff', align: 'right', width: 120, renderer: function(val, meta, record) { val = record.get('nowdebit') - record.get('cm_nowdebit'); if(record.get('debitdiff') != val) { record.set('debitdiff', val); } return val == 0 ? '' : Ext.util.Format.number(val, '0,000.000'); } }] },{ text: '本期贷方发生', cls: 'x-grid-header-1', columns: [{ text: '固定资产', cls: 'x-grid-header-1', dataIndex: 'nowcredit', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '总账系统', cls: 'x-grid-header-1', dataIndex: 'cm_nowcredit', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '差额', cls: 'x-grid-header-1', dataIndex: 'creditdiff', align: 'right', width: 120, renderer: function(val, meta, record) { val = record.get('nowcredit') - record.get('cm_nowcredit'); if(record.get('creditdiff') != val) { record.set('creditdiff', val); } return val == 0 ? '' : Ext.util.Format.number(val, '0,000.000'); } }] },{ text: '期末余额', cls: 'x-grid-header-1', columns: [{ text: '固定资产', cls: 'x-grid-header-1', dataIndex: 'endamount', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '总账系统', cls: 'x-grid-header-1', dataIndex: 'cm_endamount', xtype: 'numbercolumn', format: '0,000.000', align: 'right', width: 120 },{ text: '差额', cls: 'x-grid-header-1', dataIndex: 'enddiff', align: 'right', width: 120, renderer: function(val, meta, record) { val = record.get('endamount') - record.get('cm_endamount'); if(record.get('enddiff') != val) { record.set('enddiff', val); } return val == 0 ? '' : Ext.util.Format.number(val, '0,000.000'); } }] }], store: Ext.create('Ext.data.Store', { fields: [{ name: 'type' },{ name: 'isCount', type: 'bool' },{ name: 'yearmonth', type: 'number' },{ name: 'catecode', type: 'string' },{ name: 'beginamount', type: 'number' },{ name: 'nowdebit', type: 'number' },{ name: 'nowcredit', type: 'number' },{ name: 'endamount', type: 'number' },{ name: 'cm_beginamount', type: 'number' },{ name: 'cm_nowdebit', type: 'number' },{ name: 'cm_nowcredit', type: 'number' },{ name: 'cm_endamount', type: 'number' },{ name: 'begindiff', type: 'number' },{ name: 'debitdiff', type: 'number' },{ name: 'creditdiff', type: 'number' },{ name: 'enddiff', type: 'number' }], groupField: 'type' }), viewConfig: { getRowClass: function(record) { return record.get('isCount') ? 'isCount' : null; } }, features : [Ext.create('Ext.grid.feature.Grouping',{ groupHeaderTpl: '{name}' })] }] }); me.callParent(arguments); } });