BemsWebApplication.MaterialCodeLocation = function(params, viewInfo) { 'use strict'; var businessFieldDataSource = BemsWebApplication.db.createDataSource('CmBusinessField', true, true, true); var businessFields = ko.observableArray(); var viewModel = BWA.DataGrid.createViewWithDataGrid(params, viewInfo, 'FmsMaterialCodeLocation', { dataSourceOptions: { select: [ 'SiteId' , 'LocationId' , 'BusinessFieldId' , 'Name' , 'IsUse', 'CmBusinessField/Name' ], expand: [ "CmBusinessField" ], extendOptions: { forceOriginalField: true } }, columns: [ { dataField: 'LocationId', caption: $G('number'), width: '20%', alignment: 'center' }, { dataField: 'CmBusinessField/Name', caption: $G('businessField'), width: '20%', alignment: 'center' }, { dataField: 'Name', caption: $G('locationName'), width: '40%', alignment: 'center' }, utils.datagrid.columnIsUse('20%') ], // notDeleteInPopup: true, handleViewShown: function() { businessFieldDataSource.load().done(function(dbBusinessFields) { businessFields(dbBusinessFields); }); }, handleDataGridRowClick: function(id, dataGrid, clickRow, popupVisible) { dataGrid.clearSelection(); var data = clickRow.data; var dataModel = viewModel.dataModel; dataModel.BusinessFieldName = $KoSet(dataModel.BusinessFieldName, data['CmBusinessField/Name']); popupVisible(true); }, popupWidth: 480, }); viewModel.businessFields = businessFields; return viewModel; };