2010-12-06 32 views
2

Ceci est un script que j'ai pour une feuille de calcul google. Tout fonctionne sauf les deux dernières lignes de code. Je ne suis pas sûr de savoir où les mettre au travail. Je sais qu'ils sont corrects, mais pas au bon endroit je suppose?Positionnement Javascript du code

function doStuff() { 
    var ss = SpreadsheetApp.getActiveSheet(); 

    var starting_row = 2; // starting row to scan for part# on column C 

    // outer loop, loop over products sold 
    for (var j=6;j<=16;j++) { 
    var r = ss.getRange(j,2); 
    // read inventory part number entered 
    var partnum = r.getValue(); 
    if (!partnum) { 
     continue; // attempt to skip over empty rows in the B6:B16 range 
    } 
    var partcount = parseInt(ss.getRange(j,1).getValue()); 
    if (isNaN(partcount) || partcount<=0) { 
     // invalid quantity. skip. 
     continue; 
    } 

// Browser.msgBox("partnum = "+partnum); 

    // get list of known part # from the spreadsheet 
    var parts = ss.getRange(starting_row,3,9999,1).getValues(); 
    var found = false; 
    for (var i=0,l=parts.length;i<l;++i) { 
     if (parts[i]==partnum) { 
     // we have found our part. grab inventory count cell. 
     found = true; 
     var count = ss.getRange(starting_row+i,1).getValue(); 
     if (count-partcount<0) { 
      Browser.msgBox("Error: Inventory for part "+partnum+", is "+count); 
     } else { 
      // write back the count number for that part, decremented by 1. 
      ss.getRange(starting_row+i,1).setValue(count-partcount); 
//   Browser.msgBox("Inventory updated."); 
     } 
     break; // either way, we're done with that part. 
     } 
    } 
    if (!found) { 
     Browser.msgBox("Part# "+partnum+" not found."); 

**//I'm not sure where to place these next two lines. Everything else works but them. The code is correct just not the placement.   
SpreadsheetApp.getActiveSpreadsheet().toast("Hello", "world?", 3); 
SpreadsheetApp.getActiveSheet().getRange(6, 1, 10, 1).clear({contentsOnly:true});** 
    } 
    } 

} 

Répondre

1

Sont-ils censés être dans ce bloc if? Pourrait essayer de les placer juste au-dessus de la dernière }

Je ne suis pas familier avec la feuille de calcul Google alors c'est une supposition complète de ma part. Tout ne semblait pas le droit d'être dans ce bloc if ...

de ceci:

 if (!found) { 
      Browser.msgBox("Part# " + partnum + " not found."); 
      SpreadsheetApp.getActiveSpreadsheet().toast("Hello", "world?", 3); 
      SpreadsheetApp.getActiveSheet().getRange(6, 1, 10, 1).clear({ 
       contentsOnly: true 
      }); 
     } 
    } 

} 

à peut-être ce:

 if (!found) { 
      Browser.msgBox("Part# " + partnum + " not found."); 

     } 
    } 
    SpreadsheetApp.getActiveSpreadsheet().toast("Hello", "world?", 3); 
    SpreadsheetApp.getActiveSheet().getRange(6, 1, 10, 1).clear({ 
     contentsOnly: true 
    }); 
}