Au départ, je prenais des valeurs à partir d'un formulaire et obtenais les réponses à une feuille Google, puis en utilisant la fonction lastRow, j'extrayais les données de l'utilisateur et créais l'utilisateur dans Google Admin, mais cela m'oblige toujours à exécuter le script à chaque fois le formulaire est rempli. Est-il possible de prendre directement des valeurs à partir du formulaire, puis d'utiliser ces valeurs pour créer cet utilisateur ? Parce qu'alors je pourrais simplement utiliser onFormSubmit() et déclencher automatiquement la méthode.
S'il vous plaît aidez-moi, merci!
Solution du problème
quelque chose comme ça. Ça devrait marcher
function onFormSubmit(e) {
const form = FormApp.getActiveForm();
const items = form.getItems();
const formResponses = e.response;
const data = {};
const header_youneed = ['FirstName', 'LastName']
for (i in items) {
let response = formResponses.getResponseForItem(items[i]).getResponse();
if (header_youneed.indexOf(items[i].getTitle()) > -1) {
data[items[i].getTitle()] = response;
}
}
//add user
addUser(data);
}
function addUser(data) {
let user = {
// TODO (developer) - Replace primaryEmail value with yours
primaryEmail: data['FirstName'] + data['LastName'] + '@companydomain.com',
name: {
givenName: data['FirstName'],
familyName: data['LastName']
},
// Generate a random password string.
password: Math.random().toString(36)
};
try {
user = AdminDirectory.Users.insert(user);
Logger.log('User %s created with ID %s.', user.primaryEmail, user.id);
} catch (err) {
// TODO (developer)- Handle exception from the API
Logger.log('Failed with error %s', err.message);
}
}
Aucun commentaire:
Enregistrer un commentaire