2017-06-29 5 views
0

Dans notre société, nous utilisons beaucoup les feuilles de calcul Google. Je voudrais automatiser certaines choses, par exemple chaque minute je voudrais appeler l'API de notre banque et sauvegarder toutes les nouvelles transactions dans une feuille de calcul.Architecture des scripts Google Apps à l'échelle de l'entreprise

Ce qui manque dans la documentation officielle, ce sont les meilleures pratiques d'architecture.

Première partie de la question: Qui devrait être le propriétaire ou le coureur d'un tel script neutre pour toute l'entreprise? Je ne voudrais pas le lier à mon compte personnel. Je veux que tout se passe bien même après avoir quitté l'entreprise un jour. Est-ce qu'un utilisateur technique artificiel est nécessaire?

Si cela fait une différence, nous prévoyons de passer à des disques d'équipe à l'avenir.

Deuxième partie de la question: Je voudrais que les scripts aient des stockages persistants (dans l'exemple ci-dessus - pour l'enregistrement des transactions). Je considère être une règle que chaque script est lié à une feuille de calcul qui agit comme son magasin de données. Est-ce que c'est une bonne idée?

+1

En général, pour les projets Apps Script utilisés par plusieurs personnes, et/ou ce serait très grave si quelque chose arrivait au script, vous devriez utiliser un fichier de script Apps "autonome". Vous pouvez sauvegarder un fichier de script Apps en cliquant avec le bouton droit de la souris sur le fichier dans Drive, puis en sélectionnant "Télécharger". La meilleure option pour rendre le code disponible pour plusieurs utilisateurs consiste à utiliser un module complémentaire. Un module n'a pas besoin d'être publié au public. Et il peut être publié à l'échelle du domaine. Vous devriez être en mesure de créer un compte utilisateur à usage générique dans le domaine. –

+0

Mais votre organisation devrait avoir une documentation écrite sur la façon d'accéder au compte de tout le monde. Ce n'est pas vraiment un problème de script Apps ou un problème de fichier. C'est essentiellement une responsabilité des ressources humaines. En ce qui concerne le stockage persistant, cela dépend si sur une catégorie de données va être plus de 9k octets. Si tel est le cas, je stockerais les données en dehors du script. 9k est la limite pour une "propriété" dans le service de propriétés. –

+0

Les bibliothèques ne sont pas sécurisées si vous voulez empêcher un utilisateur d'obtenir le code. Il est probable que très peu de gens savent comment extraire le code d'une bibliothèque, mais pour ceux qui ont du temps et de la motivation, ils pourraient probablement le savoir. –

Répondre

1

Je recommande généralement que les clients me fournissent un «utilisateur technique artificiel», comme vous le dites, pour garder ce propriétaire vivant et loin de mon compte personnel. Ce qui évite également d'utiliser mon quota quotidien en particulier pour les déclencheurs réguliers. Je éviterais de lier les scripts à une feuille GS car vous risquez de rencontrer des problèmes avec l'utilisation de GitHub ou la création de modules complémentaires dans le futur. Je fais généralement tous les scripts dans une bibliothèque séparée (Bruce McPherson did various tests and never found a performance hit), puis les lier avec un très petit script à un script contenu dans une feuille GS si nécessaire. Cela permet de faciliter le développement séparé pendant que le script est utilisé en direct. Les GSheets fournissent une bonne quantité de stockage (2 millions de cellules) mais si vous y parvenez - et les feuilles ont tendance à ralentir - jetez un oeil à l'utilisation de Firebase pour laquelle vous obtenez 1 Go gratuit et a great Firebase library.

Il existe différentes recommandations générales pour le développement de scripts Apps. Je lier quelques here.

Bonne écriture!

+0

J'ai découvert un terme de Google "compte de service". Peut-il servir de compte artificiel dont nous parlions? Un utilisez-vous ou utilisez-vous un compte d'utilisateur Google complet? –

+0

Un compte complet. –