2017-08-11 6 views
2

J'apprends Google-App-Script. Un j'ai écrit un script très simplement de gérer mes e-mails:Pour gérer plus de 100 visites en une seule étape

var threads = GmailApp.search('label:Project1 is:unread'); 
GmailApp.markThreadsRead(threads); 

Ce script fonctionne presque parfait. Mais quand j'ai plus de 100 emails non lus dans l'étiquette "Porject1", je reçois le message d'erreur qui max. 100 threads sont autorisés à changer. Comment puis-je limiter ma commande de recherche à 99 résultats? Ou existe-t-il un autre moyen de gérer tous les résultats en une seule étape?

Répondre

0

Pour répondre à cette partie de votre question:

Comment puis-je limiter mon searchcommand à 99 hit's?

vous pouvez utiliser:

var threads = GmailApp.search('label:Project1 is:unread',0,100); 

Notez également les résultats de fil max je crois est 500.

+0

Bonjour, merci. Je ne recherche que les commandes de recherche [ce site] (https://support.google.com/mail/answer/7190?hl=fr). [Ici] (https://developers.google.com/apps-script/reference/gmail/gmail-app#searchquery-start-max) je vois la commande. Merci –

1

Vous pouvez utiliser le splice method:

function mailReader(){ 
    var bigThreads = GmailApp.search('label:Project1 is:unread'); 

    // While bigthreads bigger than 100 threads 
    while(bigThreads.length>99) { 

    // Split the bigThreads array in two 
    var littlethreads = bigThreads.splice(0,99); 
    // Mark those threads as unread 
    GmailApp.markThreadsRead(littlethreads); 
    } 

    // Mark the rest of the threads on bigThreads 
    GmailApp.markThreadsRead(bigThreads); 
} 
+0

Bonjour, exactement ce que je dois. Je vois la vie peut être si facile et je dois apprendre beaucoup. Merci –

+0

Cela devrait être la réponse ... merci! – GollyJer