web-dev-qa-db-fra.com

Seulement exécuter ImportData lorsque la feuille Google est ouverte

J'ai un certain nombre de fiches Google qui utilisent une forte utilisation de ImportData pour appeler A REST Service.

J'étais initialement sous l'impression que ImportData n'appellerait que le REST Service lorsque la feuille est ouverte et utilisée par une personne.

Il s'avère, ce n'est pas le cas, je peux voir de nombreux appels allant au REST, même lorsque les feuilles ne sont pas ouvertes.

Ce qui pourrait faire pire des choses, est le fait qu'un certain nombre de ces feuilles ont également été rendues accidentellement disponibles hors ligne dans le fichier Google Feuilles Android application (par défaut, l'application effectuera les feuilles récemment utilisées disponibles hors ligne. ). J'ai un sentiment qui a peut-être fait pire des choses.

Donc, mes questions:

  • Y a-t-il une explication quelque part comment l'ImportData rafraîchit le travail?
  • Est-il possible de contrôler ce mécanisme de rafraîchissement?
  • Est-ce que le Android APP est-ce que la fonctionnalité "hors ligne" interfère avec ce mécanisme?

Idéalement, je voudrais:

  1. Mettez un bouton "Actualiser maintenant" sur la feuille.
  2. Cliquez sur le bouton pour rafraîchir tous les champs ImportData.
  3. Tant que le bouton n'est pas enfoncé, les champs continuent à afficher les anciennes données (même lorsque la feuille est rouverte).
  4. En option, cela devrait également se comporter bien dans le Android application, bien que ce ne soit pas un "DOIVANT".

Notez que cela est lié à cette question , mais l'inverse. Je ne veux pas de mises à jour importatrata lorsque la feuille n'est pas ouverte dans le navigateur de quelqu'un.

1
Peter

Vous pouvez utiliser le script Google Apps pour

  1. Créez un menu avec un élément qui exécute un script pour importer vos données

  2. Le script ne fonctionnera pas dans Android

P.s. Il existe également la possibilité de déclencheurs, nommant une fonction dans le gaz 'OnOpen' qui exécute réellement la fonction lorsqu'elle est ouverte.

Le code aux données d'importation doit être de 2 ou 3 lignes, si vous n'êtes pas familier avec le gaz, jetez un coup d'œil ici:

https://developers.google.com/apps-script/reference/spreadsheet/range#geadvalues ​​()https://developers.google.com/apps-script/reference/ feuille de calcul/plage # setValues ​​()

2
Riël