//fueron eliminadas columnas, para darle mas importancia al ejemplo.-
var lastsel;
function defineGridGvDoctosCompras() {
try {
$("#gvDoctosCompras").jqGrid({
datatype: "local",
colNames: ['Tipo', 'Proveedor', 'modo_pago', 'Nómina/HCP', 'Modo Pago (Edit.)', 'cod_inst_financ', 'Banco (Edit.)', 'Cuenta Corriente (Edit.)',],
colModel: [{ name: 'desc_tipo', index: 'desc_tipo', align: 'center', width: '100px', editable: false, hidden: false },
{ name: 'proveedor_completo', index: 'proveedor_completo', align: 'center', width: '250px', editable: false, hidden: false },
{ name: 'modo_pago', index: 'modo_pago', align: 'center', width: '100px', editable: false, hidden: true },
{ name: 'correl_hcp', index: 'correl_hcp', align: 'right', width: '100px', editable: false, hidden: false },
{
name: 'desc_modo_pago', index: 'desc_modo_pago', width: '200px', resizable: true, align: 'center', sorttype:
'text', editable: true, edittype: 'select',
editoptions: {
value: GetModoPago()//, //JC comento porque gatillo carga atraves de eventos de celda.-
//dataEvents: [
// { type: 'change', fn: function (e) { SetBancos($(e.target).val(), e.target); } },
// { type: 'keyup', fn: function (e) { $(e.target).trigger('change'); } }
//]
}
},
{ name: 'cod_inst_financ', index: 'cod_inst_financ', align: 'center', width: '100px', editable: false, hidden: true },
{
name: 'desc_banco', index: 'desc_banco', width: '200px', resizable: true, align: 'center', sorttype:
'text', editable: true, edittype: 'select', editoptions: { value: GetBancos() }
}
],
url: "Paginas/Compras/AdmPago/DocumentosCompras.aspx",
multiselect: true,
cellsubmit: 'clientArray', //para activar la edicion de la grilla
rowNum: -1,
cellEdit: true, //activo la edición por celda
pgbuttons: false,
pager: $('#pager'),
viewrecords: true,
width: 940,
shrinkToFit: false,
autowidth: false,
forceFit: true,
height: 540,
footerrow: true,
editurl: jutils.pageName(),
onSelectRow: function (id, status) {
if (id && id !== lastsel) {
$('#gvDoctosCompras').jqGrid('restoreRow', lastsel);
}
//jQuery("#gvDoctosCompras").jqGrid('editRow', id, true); // activo la edición por fila
},
afterEditCell: function (id, name, val, iRow, iCol) {
//if (name === 'desc_modo_pago') {
// if (val === '4') //Abono en cuenta corriente
// {
// $("#gvDoctosCompras").jqGrid("setColProp", "desc_banco", { editoptions: { value: '18:ITAU' } });
// } else {
// $("#gvDoctosCompras").setColProp('desc_banco',
// { editoptions: { value: GetBancos() } });
// }
//}
//JOEL --> Aqui debo programar que desc_banco no se pueda cambiar si desc_modo_pago es 4
},
beforeSubmitCell: function (id, name, val, iRow, iCol) {
if (name === 'desc_modo_pago') {
if (val === '4') //Abono en cuenta corriente
{
//$("#gvDoctosCompras").setColProp('desc_banco',{ editoptions: { value: GetBancos2() } }); //edición del combo si los valores fueran dinamicos
$("#gvDoctosCompras").jqGrid("setColProp", "desc_banco", { editoptions: { value: '18:ITAU' } });
//$('#gvDoctosCompras').trigger('reloadGrid'); //refresca la grilla
//$("#gvDoctosCompras").jqGrid('setCell', id, 'cta_cte', '666-TEST'); //Edición de una celda.-
} else {
$("#gvDoctosCompras").setColProp('desc_banco',
{ editoptions: { value: GetBancos() } });
//$('#gvDoctosCompras').trigger('reloadGrid'); //refresca la grilla
}
}
},
gridComplete: function () {
var neto = jQuery("#gvDoctosCompras").jqGrid('getCol', 'neto', false, 'sum');
var exento = jQuery("#gvDoctosCompras").jqGrid('getCol', 'exento', false, 'sum');
var iva = jQuery("#gvDoctosCompras").jqGrid('getCol', 'iva', false, 'sum');
var sumaAnticipo = jQuery("#gvDoctosCompras").jqGrid('getCol', 'suma_anticipo', false, 'sum');
var montoMandato = jQuery("#gvDoctosCompras").jqGrid('getCol', 'monto_mandato', false, 'sum');
var total = jQuery("#gvDoctosCompras").jqGrid('getCol', 'total', false, 'sum');
jQuery("#gvDoctosCompras").jqGrid('footerData', 'set', { 'proveedor_completo': 'Totales', 'neto': neto, 'exento': exento, 'iva': iva, 'suma_anticipo': sumaAnticipo, 'monto_mandato': montoMandato, 'total': total });
}
});
$("#gvDoctosCompras").jqGrid('navGrid', "#pager", { edit: false, add: false, del: false, refresh: false, search: false });
} catch (e) {
jutils.showError(e, arguments.callee.name);
}
}
//JC comento porque gatillo carga atraves de eventos de celda.-
//function SetBancos(value, value2) {
// if (value === '4') //Abono en cuenta corriente
// {
// $("#gvDoctosCompras").setColProp('desc_banco',
// { editoptions: { value: GetBancos2() } });
// } else {
// $("#gvDoctosCompras").setColProp('desc_banco',
// { editoptions: { value: GetBancos() } });
// }
//}