It has been two and a half years since the application is launched at consumerfed kozhikode region and successfully running in the region at 40 trivenis including mobile , godown, neethi medicasl sections and liquor shop.
The whole credit for developing the software goes to the IT section regional office ( Management trainees) But now consumerfed is planning to reduce the size of Management trainees
A great that to I T Section kozhikode.
The project was launched on March 2015 and last updated on September 2017. Report to mobiles are also available now. Backup s are automated
E mail report
footer
Tracking the sales , subsidy monitoring, tracking hardware details are other key features of the application. Reports in html , pdf formats are available, video tutorials are available in youtube channel.
var attendanceSpreadSheet = SpreadsheetApp.openById("consumerfedAttendanceSheet");
var attendanceSheet = attendanceSpreadSheet.getSheetByName("ATTENDANCE");
var consolidationSheet = attendanceSpreadSheet.getSheetByName("CONSOLIDATION");
var startRowAttendance = consolidationSheet.getRange("H1").getValue();
var lastRowAttendance = attendanceSheet.getLastRow();
var lastRowOfAttendanceArray = lastRowAttendance - startRowAttendance - 1;
var branchListAS = attendanceSheet.getRange(startRowAttendance,2,lastRowOfAttendanceArray,1).getValues();
var empListAS = attendanceSheet.getRange(startRowAttendance,3,lastRowOfAttendanceArray,1).getValues();
var attndListAS = attendanceSheet.getRange(startRowAttendance,4,lastRowOfAttendanceArray,1).getValues();
//Logger.log(branchListAS);
var currentAttndRowPstn = startRowAttendance;
var branchListCS = consolidationSheet.getRange(1,1,consolidationSheet.getLastRow(),1).getValues();
var empListCS = consolidationSheet.getRange(1,2,consolidationSheet.getLastRow(),1).getValues();
//Logger.log(" B :"+branchListCS[0]);
var lastRowCS = consolidationSheet.getLastRow();
var lastConsolidationRow = lastRowCS + 1;
var branchNameAS = branchListAS[rowCount].toString();
var employeeNameAS = empListAS[rowCount].toString();
var attendanceTypeAS = attndListAS[rowCount].toString(); // present,onduty etc