function pAbsenMahasiswaDosen(){ var pageTitle = 'Kehadiran Mahasiswa & Dosen '; var pageIcon = 'silk-calendar'; var idcb_prodi = 'cb.prodi'; var idcb_stsemester = 'cb.stsemester'; var pnDosId = 'fp.detdos'; var pAbsenDosId = 'fp.detabsdos'; var pAbsenMhsId = 'fp.detabsmhs'; var DosenStat ='Dosen Pengajar'; var IdDetObj = { dosen : pnDosId, absendos : pAbsenDosId, absenmhs : pAbsenMhsId, }; //var kdmk = ''; /** COMON STORES */ var ds_prodireg = store_prodireg(); var ds_stsmt = store_stsmt(); var niduasisten = ""; var jmlmhs = ""; var jmlhadir = 0; /** GRID PANEL MATKUL */ var gp_matkul = cMatkul(idcb_prodi, idcb_stsemester, IdDetObj, DosenStat); var fpMain = new Ext.Panel({ title: pageTitle, iconCls: pageIcon, buttonAlign: 'left', bodyStyle: 'padding: 0px', border: true, layout: 'border', waitMsg: 'Waiting...', maskDisabled: false, monitorValid: true, autoScroll:true, frame: true, items: [{ region:'north', layout:'border', height:40, items:[{ region:'center', items:[ headerProdiSmt({ idcb_prodi : idcb_prodi, cb_prodi_width: 220, idcb_stsmt : idcb_stsemester, cb_stsmt_width : 140, fnReload : function(){reloadGridMatkul();} }) ] },{ region:'east', width:'50%',split: true, //autoWidth:true, items:[bPrint() /* stAbsenPicker({ //defined in cAbsen.js idcb_temuke : 'cb.temuke', idcb_stabsenmhs : 'cb.stabsenmhs', //fnSelect_temuke : function(){}, //fnSelect_stabsenmhs : function(){} }) */ ] }] },{ region:'center', layout:'border',//autoScroll:true, items:[{ region:'center', xtype: 'panel', layout:'fit', title:'Mata Kuliah', id:'fp.master', frame: true, //height:220, items: [gp_matkul], },{ region:'east',width:'50%',split: true, xtype: 'panel', layout:'fit', //margins:'0 0 0 0', title:DosenStat, id: pnDosId, frame: true, //height:220, //items: [gp_dosen], },{ region:'south', //split:true, xtype:'fieldset', layout:'border', height:45, items:[{ region:'center', items:[{ layout:'form', items:[{ xtype: 'container', fieldLabel: 'Mata Kuliah', layout: 'hbox', items: [{ xtype:'textfield', id:'info.nmmatkul', width: 350, disabled:true, }] }] }, { xtype:'hidden', id:'info.kdmatkul' }] },{ region:'east', width:'50%', items:[ { layout:'form', items:[{ xtype: 'container', fieldLabel: DosenStat, layout: 'hbox', items: [{ xtype:'textfield', id:'info.nmdos', width: 350, disabled:true, }] }] }, { xtype:'hidden', id:'info.nidu' }, ] }] }] },{ region:'south', layout:'form', height:250, split:true, autoScroll:true, items:[{ xtype: 'panel', layout:'fit', //margins:'10 0 10 0', title:'Daftar Kehadiran Dosen', id: pAbsenDosId, frame: true, height:190, },{ xtype: 'panel', layout:'fit', //margins:'10 0 10 0', title:'Daftar Kehadiran Mahasiswa', id: pAbsenMhsId, frame: true, height:283, }] }] }); SET_PAGE_CONTENT(fpMain); /** FUNCTIONS */ function removeAllDetails(){ RH.removeDetail(IdDetObj.dosen); RH.removeDetail(IdDetObj.absendos); RH.removeDetail(IdDetObj.absenmhs); Ext.getCmp('bt.cetak').disable(); Ext.getCmp('bt.cetakbl').disable(); } function reloadGridMatkul(){ //remove details removeAllDetails(); clearInfoMatkulDos(); //reload master-grid gp_matkul.store.reload({ params: { kdprodi: RH.getCompValue(idcb_prodi, true), kdstsemester: RH.getCompValue(idcb_stsemester, true) } }); } function clearInfoMatkulDos(){ RH.setCompValue('info.kdmatkul',''); RH.setCompValue('info.nmmatkul',''); RH.setCompValue('info.nidu',''); RH.setCompValue('info.nmdos',''); } /** MASTER: MATKUL from struprog ======================== */ function cMatkul(idcb_prodi, idcb_stsemester, IdDetObj, DosenStat){ var pageSize = 5; var nmmatkulWidth = 300; var fields_matkul = RH.storeFields('kdprodi', 'kdstsemester', 'kdmk', 'nmmkind', 'jmldos'); //from struprog join matakuliah /** GRID STORE: MTAKULIAH */ var ds_matkul = RH.JsonStore({ url : BASE_URL + 'matkuldos_controller/get_matkulProdiSmt', fields : fields_matkul, limit: pageSize, params: [ {key:'kdprodi', id: idcb_prodi} ,{key:'kdstsemester', id: idcb_stsemester} ], enableSearch: true, }); ds_matkul.on('beforeload', function(){ removeMatkulDetails() }); //SEARCH COMPONENT var sb_matkul = RH.searchComp({ id : 'sb_matkul', fields : ['kdmk:Kode Mata Kuliah','nmmkind:Nama Mata Kuliah'], selected : 'kdmk', store : ds_matkul, textWidth : 250 }); /** GRID COLUMN MODEL */ var cm_matkul = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), //for rows numbering { header: 'Kode', width:100, dataIndex: 'kdmk', renderer: RH.keyToDetil, sortable: true }, { header: 'Nama Mata Kuliah ', width: nmmatkulWidth, dataIndex: 'nmmkind', sortable: true, }, { header: 'Jumlah Dosen', width: 110, dataIndex: 'jmldos', align:'right' }] ); // Selection Model var sm_matkul = new Ext.grid.RowSelectionModel({ singleSelect: true }); // Grid View var gv_matkul = new Ext.grid.GridView({emptyText: '< Belum ada Data >'}); /** GRID PANEL */ var gp_matkul = new Ext.grid.GridPanel({ ds: ds_matkul, cm: cm_matkul, sm: sm_matkul, view: gv_matkul, forceFit: true, //height:200, //autoHeight: (idmenu != MENU.absen), layout:'anchor', //autoSizeColumns: true, //autoExpandColumn: 'nmmkind', autoScroll:true, //enableColumnResize: true, columnLines: true, loadMask: true, tbar:[sb_matkul], bbar: new Ext.PagingToolbar({ store: ds_matkul, displayInfo: true, pageSize: pageSize, mode: 'local', displayMsg: 'Data {0} - {1} dari {2}', emptyMsg: "Belum ada data" }), listeners: { cellclick: onCellMatkulClick } }); return gp_matkul; function onCellMatkulClick(grid, rowIndex, columnIndex, e) { var t = e.getTarget(); var record = grid.getStore().getAt(rowIndex); // Get the Record var kdprodi = record.data['kdprodi']; var kdstsemester = record.data['kdstsemester']; var kdmk = record.data['kdmk']; removeMatkulDetails(); if (t.className == 'keyMasterDetail') { var nmmk = record.data['nmmkind']; RH.setCompValue('info.kdmatkul',kdmk); RH.setCompValue('info.nmmatkul',nmmk); RH.setCompValue('info.nidu',''); RH.setCompValue('info.nmdos',''); var gridPanelDet = cDosenMatkul(kdprodi, kdstsemester, kdmk, IdDetObj, DosenStat); RH.loadDetail(IdDetObj.dosen, gridPanelDet); } } function removeMatkulDetails(){ RH.removeDetail(IdDetObj.dosen); RH.removeDetail(IdDetObj.mahasiswa); Ext.getCmp('bt.cetak').disable(); Ext.getCmp('bt.cetakbl').disable(); } } /** DETIL#1: DOSEN ===================================== */ function cDosenMatkul(kdprodi, kdstsemester, kdmk, IdDetObj, DosenStat){ //var nidu = ''; //param for detail to jadwal var fields_dosmk = RH.storeFields('kdprodi', 'kdstsemester', 'kdmk', 'nidu', 'nidudisp', 'nmdosen', 'niduasist', 'niduasistdisp', 'nmdosasist', 'idkelas','nmkelas','nmklsmhs','jmlmhs'); //from struprogdet join dosen /** GRID STORE: DOSEN MATKUL */ var ds_dosmk = RH.JsonStore({ url : BASE_URL + 'matkuldos_controller/get_dosmk', fields : fields_dosmk, limit: 3, params: [ {key:'kdprodi', value: kdprodi} ,{key:'kdstsemester', value: kdstsemester} ,{key:'kdmk', value: kdmk} ,{key:'jdosen', value: DosenStat} ], enableSearch: false, }); ds_dosmk.on('beforeload', function(){ removeDosenDetails() }); /** GRID COLUMN MODEL */ var cm_dosmk = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), //for rows numbering { header: 'NIDU
(Koordinator)', width:90, dataIndex: 'nidudisp', renderer: function(value){ Ext.QuickTips.init(); return '
' + value +'
'; }, sortable: true }, { header: 'Nama Dosen (Koordinator)', width: 170, dataIndex: 'nmdosen', sortable: true, }, { header: 'NIDU
(Asisten)', width:90, dataIndex: 'niduasistdisp', renderer: function(value){ if (value) { Ext.QuickTips.init(); return '
' + value +'
'; } }, sortable: true }, { header: 'Nama Dosen (Asisten)', width: 170, dataIndex: 'nmdosasist', sortable: true, }, { header: 'Kelas Perkuliahan', width: 100, dataIndex: 'nmkelas', }, { header: 'Kelas Mahasiswa', width: 100, dataIndex: 'nmklsmhs', }, { header: 'Jml.Mahasiswa', width: 95, dataIndex: 'jmlmhs', align:'right' }] ); // Selection Model var sm_dosmk = new Ext.grid.RowSelectionModel({ singleSelect: true }); // Grid View var gv_dosmk = new Ext.grid.GridView({emptyText: '< Belum ada Data >'}); /** GRID PANEL */ var gp_dosmk = new Ext.grid.GridPanel({ id:'gp_dosmk', ds: ds_dosmk, cm: cm_dosmk, sm: sm_dosmk, view: gv_dosmk, forceFit: true, layout:'anchor', autoScroll:true, columnLines: true, loadMask: true, bbar: new Ext.PagingToolbar({ store: ds_dosmk, displayInfo: true, mode: 'local', pageSize: 3, displayMsg: 'Data {0} - {1} dari {2}', emptyMsg: "Belum ada data" }), listeners: { cellclick: onCellDosmkClick } }); return gp_dosmk; function onCellDosmkClick(grid, rowIndex, columnIndex, e) { var t = e.getTarget(); var record = grid.getStore().getAt(rowIndex); // Get the Record var nidu = record.data['nidu']; var niduasist = record.data['niduasist']; var idkelas = record.data['idkelas']; var ds_stabsenmhs = store_stabsenmhs(); var storesObj = {stabsenmhs:ds_stabsenmhs}; jmlmhs = record.data['jmlmhs']; niduasisten = record.data['niduasist']; removeDosenDetails(); if (t.className == 'keyMasterDetail') { RH.setCompValue('info.nidu',record.data['nidudisp']); RH.setCompValue('info.nmdos',record.data['nmdosen']); if(Ext.getCmp('hidden.idkelas')) RH.setCompValue('hidden.idkelas',idkelas); var panelDet = cAbsenDosen(kdprodi, kdstsemester, kdmk, nidu, idkelas); var gridPanelDet = cAbsenMahasiswa(kdprodi, kdstsemester, kdmk, nidu, idkelas, storesObj); RH.loadDetail(IdDetObj.absendos, panelDet); RH.loadDetail(IdDetObj.absenmhs, gridPanelDet); } if (t.className == 'keyMasterDetail1') { RH.setCompValue('info.nidu',record.data['niduasistdisp']); RH.setCompValue('info.nmdos',record.data['nmdosasist']); if(Ext.getCmp('hidden.idkelas')) RH.setCompValue('hidden.idkelas',idkelas); var panelDet = cAbsenDosen(kdprodi, kdstsemester, kdmk, niduasist, idkelas); var gridPanelDet = cAbsenMahasiswa(kdprodi, kdstsemester, kdmk, nidu, idkelas, storesObj); RH.loadDetail(IdDetObj.absendos, panelDet); RH.loadDetail(IdDetObj.absenmhs, gridPanelDet); } } function removeDosenDetails(){ RH.removeDetail(IdDetObj.absendos); RH.removeDetail(IdDetObj.absenmhs); Ext.getCmp('bt.cetak').disable(); Ext.getCmp('bt.cetakbl').disable(); } } function loadAbsenDos(kdstsemester,kdprodi,kdmk,nidu,idkelas) { var waitmsg_loadabsendos = Ext.MessageBox.wait('Load Data Absensi Dosen...', 'Info'); var ds_absendos = new Ext.data.JsonStore({ proxy: new Ext.data.HttpProxy({ url : BASE_URL + 'absen_controller/get_absendos', method: 'POST' }), baseParams: { kdstsemester: kdstsemester, kdprodi : kdprodi, kdmk : kdmk, nidu : nidu, idkelas : idkelas }, root: 'data', totalProperty: 'results', autoLoad: false, fields: [ {name: "p1",mapping: "p1"},{name: "p2",mapping: "p2"},{name: "p3",mapping: "p3"},{name: "p4",mapping: "p4"},{name: "p5",mapping: "p5"},{name: "p6",mapping: "p6"},{name: "p7",mapping: "p7"},{name: "p8",mapping: "p8"}, {name: "p9",mapping: "p9"},{name: "p10",mapping: "p10"},{name: "p11",mapping: "p11"},{name: "p12",mapping: "p12"},{name: "p13",mapping: "p13"},{name: "p14",mapping: "p14"},{name: "p15",mapping: "p15"},{name: "p16",mapping: "p16"}, {name: "tgl1",mapping: "tgl1"},{name: "tgl2",mapping: "tgl2"},{name: "tgl3",mapping: "tgl3"},{name: "tgl4",mapping: "tgl4"},{name: "tgl5",mapping: "tgl5"},{name: "tgl6",mapping: "tgl6"},{name: "tgl7",mapping: "tgl7"},{name: "tgl8",mapping: "tgl8"}, {name: "tgl9",mapping: "tgl9"},{name: "tgl10",mapping: "tgl10"},{name: "tgl11",mapping: "tgl11"},{name: "tgl12",mapping: "tgl12"},{name: "tgl13",mapping: "tgl13"},{name: "tgl14",mapping: "tgl14"},{name: "tgl15",mapping: "tgl15"},{name: "tgl16",mapping: "tgl16"}, {name: "dj1",mapping: "dj1"},{name: "dj2",mapping: "dj2"},{name: "dj3",mapping: "dj3"},{name: "dj4",mapping: "dj4"},{name: "dj5",mapping: "dj5"},{name: "dj6",mapping: "dj6"},{name: "dj7",mapping: "dj7"},{name: "dj8",mapping: "dj8"}, {name: "dj9",mapping: "dj9"},{name: "dj10",mapping: "dj10"},{name: "dj11",mapping: "dj11"},{name: "dj12",mapping: "dj12"},{name: "dj13",mapping: "dj13"},{name: "dj14",mapping: "dj14"},{name: "dj15",mapping: "dj15"},{name: "dj16",mapping: "dj16"}, {name: "sj1",mapping: "sj1"},{name: "sj2",mapping: "sj2"},{name: "sj3",mapping: "sj3"},{name: "sj4",mapping: "sj4"},{name: "sj5",mapping: "sj5"},{name: "sj6",mapping: "sj6"},{name: "sj7",mapping: "sj7"},{name: "sj8",mapping: "sj8"}, {name: "sj9",mapping: "sj9"},{name: "sj10",mapping: "sj10"},{name: "sj11",mapping: "sj11"},{name: "sj12",mapping: "sj12"},{name: "sj13",mapping: "sj13"},{name: "sj14",mapping: "sj14"},{name: "sj15",mapping: "sj15"},{name: "sj16",mapping: "sj16"} ], listeners: { } }); ds_absendos.load({ scope: this, callback: function (records, operation, success) { if(records == 0) { var compidp='',compidt='',compidj='',compidsj=''; var i; for(var i=1; i<=16; i++){ compidp = 'cb.dos-p'+ i; Ext.getCmp(compidp).enable(); compidt = 'df.p'+ i; Ext.getCmp(compidt).enable(); compidj = 'tf.dj'+ i; Ext.getCmp(compidj).enable(); compidsj = 'tf.sj'+ i; Ext.getCmp(compidsj).enable(); } Ext.getCmp('bt.saveabsendos').enable(); Ext.getCmp('bt.cetak').enable(); Ext.getCmp('bt.cetakbl').enable(); waitmsg_loadabsendos.hide(); } else { var arrp='',arrt='',arrdj='',arrsj=''; var compidp='',compidt='',compidj='',compidsj=''; var i; for(var i=1; i<=16; i++){ arrp = 'p' + i.toString(); compidp = 'cb.dos-p'+ i; Ext.getCmp(compidp).setValue(ds_absendos.getAt(i-1).get(arrp)); Ext.getCmp(compidp).enable(); arrt = 'tgl' + i.toString(); compidt = 'df.p'+ i; Ext.getCmp(compidt).setValue(ds_absendos.getAt(i-1).get(arrt)); Ext.getCmp(compidt).enable(); arrdj = 'dj' + i.toString(); compidj = 'tf.dj'+ i; Ext.getCmp(compidj).setValue(ds_absendos.getAt(i-1).get(arrdj)); Ext.getCmp(compidj).enable(); arrsj = 'sj' + i.toString(); compidsj = 'tf.sj'+ i; Ext.getCmp(compidsj).setValue(ds_absendos.getAt(i-1).get(arrsj)); Ext.getCmp(compidsj).enable(); if (Ext.getCmp(compidp).getValue()=='1'){ jmlhadir = jmlhadir + 1; } } Ext.getCmp('bt.saveabsendos').enable(); Ext.getCmp('bt.cetak').enable(); Ext.getCmp('bt.cetakbl').enable(); waitmsg_loadabsendos.hide(); } } }); } /* function stAbsenPicker(arg){ //arg : //idcb_temuke : idcb_temuke, //idcb_stabsenmhs : idcb_stabsenmhs, //fnSelect_temuke : function(){}, //fnSelect_stabsenmhs : function(){} var idCbxStabsen = 'cbx.stbsenmhs'; var ds_tatapmuka = store_pertemuan(); var ds_stabsenmhs = store_stabsenmhs(); var ds_stabsensidos = store_stabsensidos(); var header = { xtype: 'fieldset', flex: 1, items:[{ xtype: 'container', layout: 'hbox', items:[{ layout:'form', labelWidth:90, labelAlign:'right', items: [ RH.ActionCombo({ id: arg.idcb_temuke, label: 'Pertemuan ke', width: 50, data: ds_tatapmuka, key: 'kode', display: 'kode', fnSelect: function(){ fnSetStabsenmhs(arg.idcb_temuke, arg.idcb_stabsenmhs, idCbxStabsen)}//arg.fnSelect_temuke }) ] },{ layout:'form', labelWidth:80, labelAlign:'right', items:[{ xtype: 'checkbox', id:idCbxStabsen, fieldLabel:'Pilih Semua', listeners: { change: function(checkbox, newValue, oldValue) { //if(checkbox.getValue()==true){ if(newValue == true){ Ext.getCmp(arg.idcb_temuke).disable(); fnSetStabsenmhs(arg.idcb_temuke, arg.idcb_stabsenmhs, idCbxStabsen); }else{ Ext.getCmp(arg.idcb_temuke).enable(); } } } }] },{ layout:'form', labelWidth:40, labelAlign:'right', items: [ RH.ActionCombo({ id: arg.idcb_stabsenmhs, label: 'Status', width:90, data: ds_stabsenmhs, key: 'idstabsenmhs', display: 'stabsensimhs', fnSelect: function(){ fnSetStabsenmhs(arg.idcb_temuke, arg.idcb_stabsenmhs, idCbxStabsen)}//arg.fnSelect_stabsenmhs }) ] },{ xtype:'button', iconCls:'silk-save', text:'Simpan', margins:'0 0 0 10', id:'bt.simpan', handler: function(){ fnSaveAbsensi(); } },{ xtype:'button', iconCls:'silk-printer', text:'Cetak', margins:'0 0 0 10', id:'bt.cetak', handler: function(){ fnPrintBlanko(); fnPrintAbsensi(); } }] }] }; return header; } */ function bPrint(){ var header = { xtype: 'fieldset', flex: 1, items:[{ xtype: 'container', layout: 'hbox', items:[{ xtype:'button', iconCls:'silk-printer', text:'Cetak', margins:'0 0 0 10', id:'bt.cetak', handler: function(){ fnPrintAbsensi(0); } },{ xtype:'button', iconCls:'silk-printer', text:'Cetak Blanko', margins:'0 0 0 10', id:'bt.cetakbl', handler: function(){ fnPrintAbsensi(1); } }] }] }; return header; } function validatetime(value) { var isValid = /^([0-1]?[0-9]|2[0-4]):([0-5][0-9])(:[0-5][0-9])?$/.test(value); var returnval; if (isValid) { return value; } else { return null; } } function cAbsenDosen(kdprodi, kdstsemester, kdmk, nidu, idkelas){ var ds_stabsensidos = store_stabsensidos(); /* var fields_absendos = RH.storeFields('kdprodi', 'kdstsemester', 'kdmk', 'nidu','idkelas', 'p1','p2','p3','p4','p5','p6','p7','p8', 'p9','p10','p11','p12','p13','p14','p15','p16'); var ds_absendos = RH.JsonStore({ url : BASE_URL + 'absen_controller/get_absendos', fields : fields_absendos, limit: 1, params: [ {key:'kdprodi', value: kdprodi} ,{key:'kdstsemester', value: kdstsemester} ,{key:'kdmk', value: kdmk} ,{key:'nidu', value: nidu} ,{key:'idkelas', value: idkelas} ], enableSearch: false, }); */ function getLabel(np){ var objArr = new Array(); for(var i=0; i'}); /** GRID PANEL */ var gp_absenmhs = new Ext.grid.EditorGridPanel({ id:'gp_absenmhs', ds: ds_absenmhs, cm: cm_absenmhs, sm: sm_absenmhs, view: gv_absenmhs, clicksToEdit: 1, //for cell editing (single click =1, dblclick=2) forceFit: true, height: gpheight, //autoHeight: true, layout:'anchor', autoScroll:true, columnLines: true, loadMask: true, tbar:[{ xtype:'textfield', id:'hidden.nim', hidden:true },{ xtype:'textfield', id:'hidden.updatecol', hidden:true },{ xtype:'label', text:'Pertemuan ke:', style: 'font-size:12px;margin-right:11px;margin-left:11px', },RH.ActionCombo({ id: 'cb.temuke', label: 'Pertemuan ke', width: 50, data: ds_tatapmuka, key: 'kode', display: 'kode', fnSelect: function(){ fnSetStabsenmhs('cb.temuke', 'cb.stabsenmhs', 'cbx.stbsenmhs')}//arg.fnSelect_temuke }), { xtype:'label', text:'Pilih Semua:', style: 'font-size:12px;margin-right:11px;margin-left:11px', },{ xtype: 'checkbox', id:'cbx.stbsenmhs', fieldLabel:'Pilih Semua', listeners: { change: function(checkbox, newValue, oldValue) { //if(checkbox.getValue()==true){ if(newValue == true){ Ext.getCmp('cb.temuke').disable(); fnSetStabsenmhs('cb.temuke', 'cb.stabsenmhs', 'cbx.stbsenmhs'); }else{ Ext.getCmp('cb.temuke').enable(); } } } },{ xtype:'label', text:'Status:', style: 'font-size:12px;margin-right:11px;margin-left:11px', },RH.ActionCombo({ id: 'cb.stabsenmhs', label: 'Status', width:90, data: ds_stabsenmhs, key: 'idstabsenmhs', display: 'stabsensimhs', fnSelect: function(){ fnSetStabsenmhs('cb.temuke', 'cb.stabsenmhs', 'cbx.stbsenmhs')}//arg.fnSelect_stabsenmhs }), { xtype:'button', iconCls:'silk-save', text:'Simpan', margins:'0 0 0 10', id:'bt.saveabsenmhs', handler: function(){ saveAbsenMhs(); } }], /* bbar: new Ext.PagingToolbar({ store: ds_absenmhs, displayInfo: true, mode: 'local', pageSize: pageSize, displayMsg: 'Data {0} - {1} dari {2}', emptyMsg: "Belum ada data" }), */ listeners: { cellclick: onCellClick } }); return gp_absenmhs; function onCellClick(grid, rowIndex, columnIndex, e) { var dataIndex = grid.getColumnModel().getDataIndex(columnIndex); var record = grid.getStore().getAt(rowIndex); // Get the Record var nim = record.data['nim']; RH.setCompValue('hidden.nim', nim); RH.setCompValue('hidden.updatecol', dataIndex); } function updateAbsenmhs(idstabsenmhs){ Ext.Ajax.request({ url: BASE_URL + 'absen_controller/update_absenmhs1', params: { kdprodi : kdprodi, kdstsemester : kdstsemester, kdmk : kdmk, nidu : nidu, nim : RH.getCompValue('hidden.nim'), field : RH.getCompValue('hidden.updatecol'), value : idstabsenmhs }, success: function() { ds_absenmhs.reload(); }, failure: function() { Ext.Msg.alert("Info", "Ubah Data Gagal"); } }); } } function fnSetStabsenmhs(idComboTemu, idComboStatus, idCheckBox){ var pertemuan = RH.getCompValue(idComboTemu,true); var status = RH.getCompValue(idComboStatus,true); var getall = Ext.getCmp(idCheckBox).getValue(); if(Ext.getCmp('gp_absenmhs')){ var grid = Ext.getCmp('gp_absenmhs'); var sel_model = grid.getSelectionModel(); var store = grid.getStore(); var numrec = store.getCount(); //jumlah record if(numrec > 0){ for(var i=0; i 0){ for(var i=0; i 0){ var waitmsg_saveabsenmhs = Ext.MessageBox.wait('Menyimpan Absensi Mahasiswa....', 'Info'); for(var i=0; i