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

Apps Script untuk Cetak Sertifikat

Dibalik Penerimaan CPNS 2018

Menggambar Lingkaran Menyala dengan Efek Shadow

Apps Script untuk Membuat Banyak Folder di Google Drive

Review Pengguna yang Berperilaku Konsumtif

Ngobrol Penghabisan Dana Akhir Tahun

Biaya 50 Ribu untuk Pengecekan Sertifikat Tanah

Hati-hati Calo Sertifikat Tanah

Software Java My Scanner 2.0

Eliminasi Gauss-Jordan untuk Invers Matrix dengan Java