Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function createDailyTrigger() {
- ScriptApp.newTrigger('dailyCycle').timeBased().atHour(0).everyDays(1).inTimezone("Etc/GMT").create()
- }
- function dailyCycle() {
- var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Nexus");
- var investsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("FE");
- var rows = sheet.getLastRow();
- var urls = sheet.getRange(1, 1, rows, 2).getValues();
- Logger.log(urls.toString());
- for(var x=0; x < rows; x++){//clears sheet
- var ss = SpreadsheetApp.openByUrl("" + urls[x][1]);
- if(ss.getSheetByName("Country").getRange("G3").getValue() != "VALID"){
- continue;
- }
- clearFE(ss);
- }
- for(var x=0; x < rows; x++){//does FE stuff
- var ss = SpreadsheetApp.openByUrl("" + urls[x][1]);
- if(ss.getSheetByName("Country").getRange("G3").getValue() != "VALID"){
- continue;
- }
- iterateMonths(ss);
- }
- for(var x=0; x < rows; x++){
- var ss = SpreadsheetApp.openByUrl("" + urls[x][1]);
- if(ss.getSheetByName("Country").getRange("G3").getValue() != "VALID"){
- continue;
- }
- updateEconomy(ss);
- updateSocial(ss);
- updateMainSheet(ss);
- }
- }
- function updateEconomy(ss){
- var econ = ss.getSheetByName("Economy");
- var country = ss.getSheetByName("Country");
- var newtreasury = econ.getRange("E38").getValue();
- if(isNaN(newtreasury) == false){
- country.getRange("D9").setValue(newtreasury);
- }
- }
- function updateSocial(ss){
- var soc = ss.getSheetByName("Social");
- var newhappiness = soc.getRange("I6").getValue();
- if(isNaN(newhappiness) == false){
- soc.getRange("I4").setValue(newhappiness);
- }
- }
- function updateMainSheet(ss, name){
- var main = SpreadsheetApp.openById('1zUnt9Jw9_NyBk6mT-EnTXYeXQp7fCYqo4-gjw3505So').getSheetByName("RawData");
- var rows = main.getLastRow();
- Logger.log("r:"+rows);
- var vals = main.getRange(1, 2, rows).getValues();
- var crow=99999;
- var name = ss.getSheetByName("Country").getRange("B3").getValue();
- for(var x=0;x<rows;x++){
- if(vals[x][0] == name){
- crow = x;
- }
- }
- if(crow<=rows){
- updateMilitary(ss,main,crow);
- updateEducation(ss,main,crow);
- updateProduction(ss,main,crow);
- }
- }
- function updateProduction(ss,main,loc){
- var prod = ss.getSheetByName("Production");
- var newgdp = prod.getRange("K27").getValue();
- if(isNaN(newgdp) == false){
- main.getRange("J" + (loc+1)).setValue(newgdp);
- }
- }
- function updateEducation(ss, main, loc){
- var edu = ss.getSheetByName("Education");
- var newliteracy = edu.getRange("C19").getValue();
- if(isNaN(newliteracy) == false){
- main.getRange("D" + (loc+1)).setValue(newliteracy);
- }
- }
- function updateMilitary(ss, main, loc){
- var mil = ss.getSheetByName("Military");
- var quantity = mil.getRange("N15:N27").getValues();
- var newmp = mil.getRange("F9").getValue();
- var newtrad = mil.getRange("K8").getValue();
- var n = 13;
- for(var x=0;x<n;x++){
- if(isNaN(quantity[x][0]) == false){
- main.getRange((loc+1), 12 + x).setValue(quantity[x][0]);
- }
- }
- if(isNaN(newmp) == false){
- mil.getRange("D6").setValue(newmp);
- }
- if(isNaN(newtrad) == false){
- mil.getRange("H7").setValue(newtrad);
- }
- mil.getRange("G15:G27").setValue(0);
- mil.getRange("H15:H27").setValue(0);
- mil.getRange("J15:J27").setValue(0);
- }
- function addToQ(vals, ss){
- var central = SpreadsheetApp.openById("14AN9dVwIOD-dYuNkaTR8Uz7k7xFRreciBSOZJQeSQX4").getSheetByName("FE");
- if(ss.getSheetByName("Foreign_Enterprise").getRange("G5").getValue() == 0){
- return;
- }
- var valrange = ss.getSheetByName("Foreign_Enterprise").getRange("A7:A50");
- var valid = valrange.getValues();
- var rows = vals.length;
- var name = ss.getSheetByName("Country").getRange("B3").getValue();
- var begin = central.getLastRow()+1;
- var x = 1;
- var range = central.getRange(begin, 1, rows, 7);
- for(var i=0;i<rows;i++){
- if(valid[i][0] == "VALID"){
- Logger.log("valid");
- if(vals[i][0] != "" && vals[i][1] != "" && vals[i][5] != ""){
- range.getCell(x,1).setValue(name);
- range.getCell(x,7).setValue(vals[i][0]);
- range.getCell(x,2).setValue(vals[i][1]);
- range.getCell(x,6).setValue(vals[i][5]);
- var addrow = central.getRange(begin + x, 1,1,6);
- var url = getCountryUrl(range.getCell(x,7).getValue());
- if(url!="e"){
- var addss = SpreadsheetApp.openByUrl(url).getSheetByName("Foreign_Enterprise");
- var addvals = addss.getRange("H7:H50").getValues();
- var k = 50;
- for(var l=0;l< addvals.length;l++){
- if(addvals[l]==""){
- k = l+6+1;
- break;
- }
- }
- var row = central.getRange(begin-1+x,1,1,6).getValues();
- var addrange = addss.getRange("H"+k+":"+"M"+k).setValues(row);
- }
- x+=1;
- }
- }
- }
- }
- function iterateMonths(ss) {
- var central = SpreadsheetApp.openById("14AN9dVwIOD-dYuNkaTR8Uz7k7xFRreciBSOZJQeSQX4").getSheetByName("FE");
- var range = ss.getSheetByName("Foreign_Enterprise").getRange("B7:G50");
- var name = ss.getSheetByName("Country").getRange("B3").getValue();
- var trans = range.getValues();
- var l = trans.length;
- for(var i = 0; i < l; i++){
- if(i < 0){continue;}
- if(trans[i][0] != "" && trans[i][5] != ""){
- if(trans[i][3] > 0){
- trans[i][3] = trans[i][3] - 1;
- } else{
- var len = trans[0].length;
- for(var y = i; y < l-1; y ++){
- for(var x=0;x<len;x++){
- trans[y][x] = trans[y+1][x];
- }
- }
- i-=1;
- }
- }
- }
- range.setValues(trans);
- addToQ(trans,ss);
- }
- function getCountryUrl(name){
- var ss = SpreadsheetApp.openById("14AN9dVwIOD-dYuNkaTR8Uz7k7xFRreciBSOZJQeSQX4").getSheetByName("Nexus");
- var rows = ss.getLastRow();
- var vals = ss.getRange(1, 1, rows, 2).getValues();
- var res = -1;
- for(var x=0;x<rows;x++){
- if(vals[x][0] == name){
- res = x;
- }
- }
- if(res == -1){
- return "e";
- }else{
- return vals[res][1];
- }
- }
- function clearFE(ss){
- var sheet = ss.getSheetByName("Foreign_Enterprise")
- var range = sheet.getRange("H7:M50");
- range.setValue("");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement