Menambahkan Random Key sebagai ID Pembeda di Google Sheet dengan Apps Script

Dimisalkan terdapat data yang tersimpan di Google Sheets dan tidak terdapat pembeda antara satu dengan yang lain.

Hal ini akan mengakibatkan kesulitan jika akan dilakukan penghapusan salah satu atau bebarapa data tertentu melalui web apps.

Oleh karena itu, kode Apps Script di bawah ini, adalah kode untuk menambahkan "unique ID key" pada tiap data, terutama untuk mempermudah proses penghapusan data, yang biasanya dilakukan melalui web apps oleh pengguna yang berbeda.

Kode

function makeRandomChar(length)
{
    var result = '';
    const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@';
    let counter = 0;
    while (counter < length) {
      result += characters.charAt(Math.floor(Math.random() * characters.length));
      counter += 1;
    }    
    return result;
}

function addRandomKey()
{
  var target = SpreadsheetApp.openById("--ID Google Sheets file--");
  var ss=target.getSheetByName("Data");
  var data=ss.getRange("A2:G").getValues().map(function(row,index){
    var pass=false;
    if(row[0]!="" && row[4]==""){
      pass=true;
      row[row.length]=index;
    }
    return pass?row:null;
  }).filter(function(cellData){return cellData != null;});

  for(var i=0;i<data.length;i++){
    var rand=makeRandomChar(5);
    var itexist=ss.getRange("A2:G").getValues().map(function(row,index){return (row[4]==rand)?row:null;}).filter(function(cellData){return cellData != null;});
    if(itexist.length<=0){
      ss.getRange("E"+(2+data[i][data[i].length-1])).setValue(rand);
    }else i--;
  }
}

Demo



Komentar



Postingan populer dari blog ini

Kaidah Baku untuk Konsistensi Data (PT, Tbk, Pty., & Ltd.)

Game TicTacToe dengan Greenfoot

Apps Script untuk Cetak Sertifikat

Eliminasi Gauss-Jordan untuk Invers Matrix dengan Java

Bagaimana Mendapatkan Penghasilan dari Aplikasi Android

Robot Forex Martingale Gratis

Ketika Pengelola Basis Data Terabaikan

Algorithma FPB dan KPK dengan Javascript

Pengetahuan Tentang Hak Cipta untuk Mendapatkan Income dari Internet

Pengalaman Kerja Tanpa Ijazah