El armado de una grilla en IGGLOBAL Online consta de los siguientes pasos (partiendo del hecho que existe controlador MVC para dicha grilla):
- Sobre el proyecto IGGlobal.Mvc -> Buscar la carpeta “Controllers” -> Abrir el archivo de controlador MVC requerido, por ejemplo CrmController.
- Agregar el método de controlador al que hace referencia la grilla. Ejemplo: Ver Archivo Views/Cargos.vbhtml
- Sobre la carpeta Scripts -> app -> controllers -> botón derecho -> agregar archivo JavasScript. Dentro de éste archivo se colocará el controlador de AngularJs. El nombre del archivo deberá estar conformado por el concepto de la grilla y el sufijo “Ctrl”. Ejemplo: CargosCtrl.js.
- A continuación se muestra un ejemplo de controlador AngularJS (los parámetros “Mk_Cargos” y “MK-1” representan el nombre de la entidad y el ID de acción para cargar la grilla de datos respectivamente):
function CargosCtrl($scope, $window, $modal, _, StorageService, RequestService, UtilsService) { //Llamado a controlador "padre" BaseGridCtrl.call(this, $scope, $window, $modal, _, RequestService, "Mk_Cargos", "MK-1"); //Definición de clave primaria $scope.keys = ['CoCargo']; //Acción para creación de nuevo registro $scope.create = function () { var cns = StorageService.fromSession("empresa"); $window.location.href = '/Crm/Cargo?_connectionStringId=' + cns; } //Acción para edición de un registro $scope.edit = function () { var cns = StorageService.fromSession("empresa"); keys = $scope.getSelectedKeys(); $window.location.href = '/Crm/Cargo?CoCargo=' + keys.CoCargo + '&_connectionStringId=' + cns; } //Definición de acciones extra /* $scope.actions = [ { id: '1', text: 'Agregar', icon: 'fa fa-plus-circle', multiselect: false, singleselect: false, onclick: $scope.agregar } ] */ } //Herencia prototipica CargosCtrl.prototype = Object.create(BaseGridCtrl.prototype); //Registro del controlador igglobal.controller('CargosCtrl', CargosCtrl);
Leave a Reply