2016-11-24 1 views
0

J'ai un script avec une fonction qui vérifie la première histoire d'un document. Quand je lance ceci, une boîte de dialogue apparaît demandant si je veux mettre à jour le texte à la dernière version. Puisque cette fonction s'exécute plusieurs fois par exécution du script, je veux supprimer cette boîte de dialogue en répondant oui à chaque fois. Y a-t-il un moyen de dire automatiquement oui à ces boîtes de dialogue lorsqu'elles apparaissent, ou simplement de les supprimer avec une réponse automatique?Est-il possible de supprimer les boîtes de dialogue CheckOut/CheckIn dans Extendscript?

function doccheckout(doc) { 
    // get the main story 
    var stories = doc.stories 
    var story = stories.firstItem() 
    // check out the main story 
    story.checkOut() 
    } 

La même chose se produit quand je ferme le document avec document.checkIn(), donc je voudrais supprimer celui-là aussi, mais je suppose que toute solution à la première partie sera applicable à la seconde.

popups pertinentes

enter image description here

Répondre

2

Essayez de désactiver l'interaction de l'utilisateur:

app.scriptPreferences.userInteractionLevel = UserInteractionLevels.NEVER_INTERACT; 
// your code here 
// 
// at the end of your script reset it to the default 
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.INTERACT_WITH_ALL; 
+0

Il semble la dernière ligne devrait être 'UserInteractionLevels.INTERACT_WITH_ALL'. – milligramme

+0

Merci @milligramme – fabianmoronzirfas

+0

Je reçois 'UserInteractionLevels is undefined' pour une raison quelconque. Le visualiseur de modèle d'objet montre qu'il existe, cependant. [Ce vieux fil] (https://forums.adobe.com/thread/871757) suggère d'utiliser 'app.displayDialogs', qui ne semble pas être dans le dernier modèle d'objet 8.0. – Arcandio