как вставить данные в таблицу Google в соответствии с таблицей флажков html - PullRequest
0 голосов
/ 16 апреля 2020

РЕДАКТИРОВАТЬ:

Мне удалось запустить сценарий, где я установил флажок в соответствии с идентификатором, и в электронную таблицу я вставил «ОК», однако я не смог сделать все oop где Я выбираю несколько флажков, и в таблице я буду вводить все "ОК".

таблица ссылок: https://docs.google.com/spreadsheets/d/1OokFvWCx-ROkhaLP1nYQPDAu8zgCTeizHHq0ABnBL0A/edit#gid = 0

ссылка сценарий приложения web: https://script.google.com/macros/s/AKfycbx3RHYokreumTcdvQ12PXnGoNSiXoOYKTLCPq6Tj6s/dev

Печать: enter image description here

Code.gs:

Array.prototype.Pesquisa = function(Procura){
  
  if(Procura =="") return false;
  
   for (var linha = 0; linha<this.length; linha++)
    
    if(this[linha] == Procura) return linha;
  
    return - 1
}

function editareditda(Dados){
  var url = "https://docs.google.com/spreadsheets/d/1OokFvWCx-ROkhaLP1nYQPDAu8zgCTeizHHq0ABnBL0A/edit#gid=0"
  var ss = SpreadsheetApp.openByUrl(url);
  var plan= ss.getSheetByName("Página1");
  
  var localPesquisa = plan.getRange(2,1, plan.getLastRow()).getValues();

  var resultado = localPesquisa.Pesquisa(Dados.editdDesc);
  //Logger.log(resultado);
  var linha = resultado + 2
  
  if(resultado !=-1){
    
    plan.getRange(linha, 4).setValue("OK");
   
    return 'Editado com sucesso';
  }else{
    return 'Pedido não encontrado '+ Dados.editdDesc;
  }
  
}


HTML + js:
<html>
  <head>
   
    <base target="_se">
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.1/css/materialize.min.css">
    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
    <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
    <script src="http://tablesorter.com/__jquery.tablesorter.min.js" type="text/javascript"></script>
    
  </head>
  <body>
  
 
  <div class= "container">

    <button onclick="sortTable()">Sort</button>
    <button onclick="reLoad()">refresh </button>
    <button onclick="coletaDados()">Validate</button>
    <button id="editar">Editar</button>
    <button id="btnId">ID</button>
    <INPUT id="id" type="text"/>
        
      <table class="striped centered ajuste" id="tab">
               <thead >           
                 <tr>
                 
                  <th>ID</th>
                  <th>DATE</th>
                  <th>NAME</th>
                  
                 </tr>
               </thead>
                <tbody id="coportoTabela">
                
                </tbody>
      </table>

  
  </div> <!-- Fecha Conatainer -->
 
   <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> 
   <script>
   
     document.addEventListener("DOMContentLoaded", function(){
            
            google.script.run.withSuccessHandler(gerarTabela).pegarTabelaEstoque();
            
         
      });
      
      function gerarTabela(dataArray){
        var tcorpo =  document.getElementById("coportoTabela");    
         
         dataArray.forEach(function(r){
         
         var linha = document.createElement("tr");
         
         var coluna1 = document.createElement("td");
         coluna1.textContent = r[0];
         var coluna2 = document.createElement("td");
         coluna2.textContent = r[1];
         var coluna3 = document.createElement("td");
         coluna3.textContent = r[2];
         
         var coluna0 = document.createElement("input");
         coluna0.type = "checkbox";
         coluna0.setAttribute('class', 'editar');
         coluna0.setAttribute('id', r[0]);
         coluna0.textContent = r[3];
         
         
         var coluna02 = document.createElement("span");
         coluna02.setAttribute('for', r[0]);
         coluna02.textContent = r[3];
         
         
         var coluna01 = document.createElement("label");
         coluna01.setAttribute('for', r[0]);
         //coluna01.textContent = "teste";
         
         linha.appendChild(coluna1);
         linha.appendChild(coluna2);
         linha.appendChild(coluna3);
         linha.appendChild(coluna0);
         linha.appendChild(coluna01);
         //linha.appendChild(coluna02);
         
         
                      
         tcorpo.appendChild(linha); 
         
         });      
      
      }
      
        document.getElementById("editar").addEventListener("click",editareditda2);
      //var ids = document.getElementsByClassName('editar');
     
     function editareditda2(){
        
      //var teste = coletaIDs(ids);
      //alert(selecionaDactes());
      
      var Dados = {
      
      editdDesc: selecionaDactes().toString(),    
      
      };
      
      google.script.run.withSuccessHandler(retornoeditda).editareditda(Dados);
      
      function retornoeditda(atualizar){
      
      alert(atualizar);
     
      }
      }
      
      function selecionaDactes(){
       var ids = document.getElementsByClassName('editar');
       //gravaArray(ids);
       return gravaArray(ids);
      }  
        
      function gravaArray(dados){
       var array_dados = dados; 
  
       for(var x = 0; x <= array_dados.length; x++){     
        if(typeof array_dados[x] == 'object'){
          if(array_dados[x].checked){
           alert("O ID " + array_dados[x].id +" está marcado")  
           return array_dados[x].id
 
           
          }
        }      
        }
        }
          </script>
      
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...