Round Robin Conduce Misiuni

0

Problema

Am încercat să atribui duce la directori de Cont de looping prin lista de AE și se deplasează un "X" la AE care ar trebui să fie alocate viitoare. Așa cum am stabili dacă conducerea ar trebui să fie alocate cineva dacă există un gol de lângă numele companiei.

În esență, logica ar trebui să meargă, găsi gol, găsi AE numele care este lângă X, folosi acest nume pentru a umple în gol, găsi următorul gol, și așa mai departe până când nu mai există spații libere. Am scris pseudo dar eu nu sunt familiarizat cu Google App Script-uri, la toate. Poate ajuta cineva sa-mi dau seama ce cod va lucra pentru pseudo?

***
var STRINGX = 'X';
function main() {
  Logger.log(getNextPerson())
  var person = getNextPerson();
  var leadRow = findNextOpenLead();
  assignPersonToNextLead(person, leadRow);
  moveXDown();
}
function getNextPerson() {
  var sheet = SpreadsheetApp.getActiveSheet().getDataRange().getValues();
  var startRow = 2;
  var salesReps = sheet[1].splice(0, 1)
}
function moveXDown() {
  // find column with x and save it as a variable
  // delete x from that column
  // add 1 to  column we found 
  // put it in ^ that column
}
function assignPersonToNextLead(person, leadRow) {
  // find row next to lead 
  // put person in the b column and row of lead
}
function findNextOpenLead() {
  // go through column b until you find an open cell
  // use that row in column d to find the lead 
}
***

A,B,C sunt în loc de real AE nume

Lista de Directori de Cont nume

Spații de lângă nume de Companii

1

Cel mai bun răspuns

0

Face Round Robin Misiuni de a Conduce Lista

function roundRobinLeads() {
  const ss = SpreadsheetApp.getActive();
  const lsh = ss.getSheetByName('Round Robin Leads');
  const lvs = lsh.getRange(2, 1, lsh.getLastRow() - 1, lsh.getLastColumn()).getDisplayValues();
  const rsh = ss.getSheetByName('Round Robin');
  const rvs = rsh.getRange(2, 1, rsh.getLastRow() - 1, 2).getValues();
  let rr = { pA: [], index: 0, incr: function () { return this.index++ % this.pA.length; }, getIndex: function () { return this.index % this.pA.length; } };
  rvs.forEach((r, i) => {
    rr[r[1]] = r[0];
    rr.pA.push(r[1]);//push name in property array
    if (r[0]) {
      rr.index = i;//assign initial selection
      rsh.getRange(rr.index + 2, 1).setValue('');//remove x from current next
    }

  });
  lvs.forEach((r, i) => {if (!r[1]) {lsh.getRange(i + 2, 2).setValue(rr.pA[rr.incr()]);}});//assign lead and increment index
  rsh.getRange(rr.getIndex() + 2, 1).setValue('x');//record next assignment from rr.getIndex();
}

restul %

Am încercat pentru a adăuga conținut suplimentar, dar Stack Overflow prost conținut checker a fost semnalarea mese ca formatat incorect codul.

2021-11-24 00:45:05

Vă mulțumesc atât de mult! Aceasta funcționează perfect!
Chad Riorden

asta ar fi capabil să lucreze dacă au fost 3 altă listă care round robin scos din bazată pe criterii de plumb?
Chad Riorden

Probabil. Vă rugăm să reprezinte ideea într-o altă cauză
MiMi

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................