Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function adjustRows() {
- //pull raw data
- var rawSheet = SpreadsheetApp.getActive().getSheetByName('Raw')
- var rawRows = rawSheet.getDataRange();
- var rawNumRows = rawRows.getNumRows();
- var rawValues = rawRows.getValues();
- var rowsDeleted = 0;
- //pull adjustment data
- var adjustSheet = SpreadsheetApp.getActive().getSheetByName('Adjustments')
- var adjustRows = adjustSheet.getDataRange();
- var adjustRowCount = adjustRows.getNumRows();
- var adjustValues = adjustRows.getValues();
- //target sheet
- //combine row totals?
- var build = 2;
- var finalSheet = SpreadsheetApp.getActive().getSheetByName('Final')
- //clear sheet
- finalSheet.getRange("A:E").clear();
- //loop through all adjustment rows, find DELETES
- for (var i = 0; i <= adjustRowCount - 1; i++) {
- var row = adjustValues[i];
- if (row[6] == 'DELETE') {
- var deldate = row[5];
- var delname = row[1];
- var delitem = row[2];
- //Logger.log(deldate + delname + delitem);
- //once a delete is found, loop through all raw rows
- for (var d = 0; d <= rawNumRows - 1; d++) {
- var rawRow = rawValues[d];
- //Logger.log(rawRow[0]);
- //and DELETE them matching PLAYER | DATE | ITEM
- if (rawRow[0] == delname && rawRow[3] == delitem && rawRow[1] == deldate)
- {
- Logger.log('deleting row number ' + d + ' ' + rawRow[0] + ' ' + rawRow[3] + ' ' + rawRow[1]);
- rawSheet.deleteRow((parseInt(d)+1) - rowsDeleted);
- rowsDeleted++;
- }
- //RAW LOOP
- }
- //ADJUSTMENT DELETE LOOP CLOSED
- }
- //IF ADJUSTED IS ADD, ADD TO FINAL
- if (row[6] == 'ADD') {
- var adddate = row[5];
- var addname = row[1];
- var additem = row[3];
- var addtype = row[4];
- var addclass = row[0];
- Logger.log('add row number ' + i + ' ' + adddate + ' ' + addname + ' ' + additem + ' ' + addtype);
- finalSheet.getRange(build, 1).setValue(addname)
- finalSheet.getRange(build, 2).setValue(addclass)
- finalSheet.getRange(build, 3).setValue(additem)
- finalSheet.getRange(build, 4).setValue(adddate)
- finalSheet.getRange(build, 5).setValue(addtype)
- build++
- }
- //TOTAL END ADJUSTMENT LOOP
- }
- //prepare sheet
- finalSheet.getRange(1, 1).setValue('Name')
- finalSheet.getRange(1, 2).setValue('Class')
- finalSheet.getRange(1, 3).setValue('Item')
- finalSheet.getRange(1, 4).setValue('Date')
- finalSheet.getRange(1, 5).setValue('Type')
- finalSheet.getRange('A1:E1').setFontWeight("bold");
- finalSheet.getRange('A:E').setHorizontalAlignment("center")
- //add raw data after adjustment
- for (var d = 1; d <= rawNumRows - 1; d++) {
- var row = rawValues[d];
- var adddate = row[1];
- var addname = row[0];
- var additem = row[3];
- var addtype = row[6];
- var addclass = row[8];
- finalSheet.getRange(build, 1).setValue(addname)
- finalSheet.getRange(build, 2).setValue(addclass)
- finalSheet.getRange(build, 3).setValue(additem)
- finalSheet.getRange(build, 4).setValue(adddate)
- finalSheet.getRange(build, 5).setValue(addtype)
- build++
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement