Exécuter un script Transaction/BAPI à l'aide de macros
- Ouvrez le fichier de données associé au script Transaction qui est enregistré dans Google Drive.
- Dans Google Sheet, sous Extensions, cliquez sur Apps Script.
- Sur la page Apps Script, copiez le code de macro fourni et collez-le dans l'éditeur.
- Cliquez sur le signe + en regard de Bibliothèques.
- Dans la boîte de dialogue Ajouter une bibliothèque, collez l'ID de script de votre bibliothèque de macros déployée.Remarque : L'ID de script est généré lorsque vous déployez la bibliothèque.
- Cliquez sur Rechercher, sélectionnez la dernière version de la bibliothèque dans la liste déroulante Version, puis cliquez sur Ajouter.
- Configurez les paramètres du script en fonction de vos besoins dans le code de macro :
- Ligne de début
- Ligne de fin
- Colonne de journal
- Type d’exécution
- ShuttleFile
- Nom de connexion et autre propriété disponible
- Cliquez sur Enregistrer pour enregistrer le code macro dans Script d'application. La macro est désormais intégrée au modèle.Remarque : Vous pouvez exécuter manuellement la méthode de bibliothèque
registerDeveloperMetadataau moins une fois depuis le projet Apps Script :AutomateMacroLibraryQA.registerDeveloperMetadata()AutomateMacroLibraryQAcorrespond à l'espace de noms par défaut de la bibliothèque de macros. Un autre nom peut être spécifié si nécessaire. - Cliquez sur Exécuter sur la page Script d'applications. Le journal d'exécution sur la page Script d'application affiche les journaux et le statut de l'exécution terminée.
- Sur la page Google Sheet, la boîte de dialogue Exécution du script à partir de la macro s'affiche. Lorsque l'exécution du script est terminée, le message Exécution de la macro terminée et enregistrements téléchargés s'affiche.
Propriétés d'un objet du module complémentaire Transaction
Les paramètres d’exécution ou les options d’exécution avancées définies dans le script ne sont pas respectées pendant l’exécution de la macro. Ils doivent être définis via les différentes propriétés exposées pour l'objet du module complémentaire.
| Propriété / Fonction | Valeur(s) / Paramètre | Description |
|---|---|---|
| ShuttleFile |
Chemin d'accès du fichier de script |
Sélectionne le fichier à exécuter à partir du chemin d'accès spécifié |
|
StartRow |
Numéro de ligne |
Ligne Excel à partir de laquelle l'envoi des données doit commencer |
|
EndRow |
Numéro de ligne |
Dernière ligne Excel à partir de laquelle les données doivent être envoyées |
|
WriteHeader |
S. O. |
Écrire les en-têtes pendant l'exécution |
|
LogColumn |
Colonne/Cellule |
Colonne ou cellule dans laquelle les journaux doivent être écrits |
|
AlfName |
Nom de connexion SAP |
Nom de connexion SAP Exemple StudioMacros.AlfName = "w6r-800" |
|
RunReason |
Chaîne de raison d'exécution |
Spécifier la raison de cette exécution |
|
RunType |
0 – Exécuter 1 – Exécuter et arrêter en cas d'erreurs 2 – Exécuter les cinq premières lignes 3 – Exécuter uniquement les lignes erronées 4 – Exécuter uniquement les lignes non traitées 7 – Valider la plage définie 8 – Valider les cinq premières lignes 9 – Valider uniquement les lignes erronées 10 – Valider uniquement les lignes non traitées 15 – Exécuter les lignes non traitées et erronées 16 – Valider les lignes non traitées et erronées |
Sélectionner le type d'exécution dans les valeurs possibles
|
|
RunScript |
S. O. |
Exécuter le script |
function RunNormalTXRfile() {
// ---------------------------------------------------------
// NOTE:
// 'MacroLib' is the Apps Script LIBRARY IDENTIFIER
// added to this Google Sheet project.
//
// If your library identifier is 'MacroLib', this function can be run AS-IS.
// Otherwise, replace 'MacroLib' with your actual library name.
// ---------------------------------------------------------
const ws = MacroLib.onScript;
// For local File, set ShuttleFile to local file path to Run
ws.ShuttleFile = "<<Path of script file>>";
ws.StartRow = 2;
ws.EndRow = 6;
// Set column used to log execution status
ws.LogColumn = "A";
// Set in case of Studio Administrator
ws.AlfName = "w6r-800";
// Set in case of Evolve
ws.ConnectionName = "w6r";
// Set RunReason to provide reason for run.
ws.RunReason = "Run Reason";
// ---------------------------------------------------------
// RunType options
//
// 0 = Run
// 1 = RunAndStopOnErrors
// 2 = RunFirstFiveRows
// 3 = RunOnlyErrorRows
// 4 = RunOnlyUnProcessedRows
// 7 = ValidateSpecifiedRange
// 8 = ValidateFirstFiveRows
// 9 = ValidateOnlyErrorRows
// 10 = ValidateOnlyUnProcessedRows
// 15 = RunUnProcessedAndErrorRows
// 16 = ValidateUnProcessedAndErrorRows
//
// ---------------------------------------------------------
ws.RunType = 0;
//Set true to auto close the MacroDialog box after run.
ws.AutoClose = false
// Execute the published TXR script
ws.RunScript();
}
Exécuter un script Query à l'aide de macros
- Ouvrez le fichier de données associé au script Query qui est mappé et enregistré dans Google Drive.
- Dans la Google Sheet, accédez à Extensions et cliquez sur Apps Script.
- Dans l'éditeur Apps Script, copiez et collez le code de macro fourni.
- Cliquez sur le signe + en regard de Bibliothèques.
- Dans la boîte de dialogue Ajouter une bibliothèque, collez l'ID de script de votre bibliothèque de macros déployée.Remarque : L'ID de script est généré lorsque vous déployez la bibliothèque.
- Cliquez sur Rechercher, sélectionnez la dernière version de la bibliothèque dans la liste déroulante Version, puis cliquez sur Ajouter.
- Configurez les paramètres du script en fonction de vos besoins :
- Ligne de début
- Colonne de journal
- Type d’exécution
- Nom de connexion
- ShuttleFile
- Cliquez sur Enregistrer pour enregistrer le code macro dans Script d'application. La macro est désormais intégrée au modèle.Remarque : Vous pouvez exécuter manuellement la méthode de bibliothèque
registerDeveloperMetadataau moins une fois depuis le projet Apps Script :AutomateMacroLibraryQA.registerDeveloperMetadata()AutomateMacroLibraryQAcorrespond à l'espace de noms par défaut de la bibliothèque de macros. Un autre nom peut être spécifié si nécessaire. - Cliquez sur Exécuter sur la page Script d'applications. Le journal d'exécution sur la page Script d'application affiche les journaux et le statut de l'exécution terminée.
- Dans Google Sheet, la boîte de dialogue Exécution du script à partir de la macro s'affiche. Lorsque l'exécution du script est terminée, le message Exécution de la macro terminée et enregistrements téléchargés s'affiche.
Propriétés d'un objet du module complémentaire Query
Les paramètres d'exécution ou les options d'exécution avancées définies dans le script ne sont pas respectés pendant l'exécution de la macro. Vous devez les définir en utilisant les différentes propriétés exposées pour l'objet du module complémentaire.
| Propriété / Fonction | Valeur(s) / Paramètre | Description |
|---|---|---|
| ShuttleFile |
Chemin d'accès du fichier de script |
Sélectionne le fichier à exécuter à partir du chemin d'accès spécifié |
|
StartRow |
Numéro de ligne |
Ligne Excel à partir de laquelle les enregistrements téléchargés doivent être écrits |
|
RecordsToFetch |
Nbre d'enregistrements |
Nombre d'enregistrements que doit retourner l'exécution de requête |
|
WriteHeader |
Vrai/Faux |
Écrire les en-têtes d'association des données téléchargées |
|
ExtractAllRecords |
Vrai/Faux |
Remplacer RecordsToFetch et extraire tous les enregistrements |
|
RunReason |
Chaîne de raison d'exécution |
Spécifier la raison de cette exécution |
|
AlfName |
Nom de connexion SAP |
Nom de connexion SAP |
|
RunType |
Type d'exécution |
0 – Exécution pour extraire les enregistrements conformément aux paramètres 1 – Remplacement de RecordsToFetch et téléchargement des 50 premiers enregistrements uniquement |
|
RunScript |
S. O. |
Exécuter le script |
function RunNormalQsqFile() {
// ---------------------------------------------------------
// NOTE:
// 'MacroLib' is the Apps Script LIBRARY IDENTIFIER
// added to this Google Sheet project.
//
// If your library identifier is 'MacroLib', this function
// can be run AS-IS.
// Otherwise, replace 'MacroLib' with your actual library name.
// ---------------------------------------------------------
const ws = MacroLib.onScript;
// For local File, set ShuttleFile to local file path to Run
ws.ShuttleFile = "<<Path of script file>>";
ws.StartRow = 2;
// Number of records to fetch. if not set, then records will be fetched as per script settings.
// Only respected when ExtractAllRecords = false
ws.RecordsToFetch = 10;
// True to fetch all records. If set false then RecordsToFetch property will be respected
ws.ExtractAllRecords = false;
// Set column used to log execution status
ws.LogColumn = "A";
// Set in case of Studio Administrator
ws.AlfName = "w6r-800";
// Set in case of Evolve
ws.ConnectionName = "S25";
// Set RunReason to provide reason for run.
ws.RunReason = "Run Reason";
// ---------------------------------------------------------
// RunType options
//
// 0 = Run
// 1 = RunOnlyFiftyRecords
//
// ---------------------------------------------------------
ws.RunType = 0;
//Set true to auto close the MacroDialog box after run.
ws.AutoClose = false
// Execute the published QSQ script
ws.RunScript();
}
Créer votre propre macro et exécuter le script
- Ouvrez le modèle de Google Sheet depuis Google Drive.
- Cliquez sur Dessin sous l'onglet Insérer.
- Dans la boîte de dialogue Dessin, insérez n'importe quelle forme et cliquez sur Enregistrer et fermer. La forme insérée sera ajoutée à la feuille de calcul Google.
- Sélectionnez la forme insérée et cliquez sur les trois points.
- Cliquez sur Affecter un script.
- Saisissez le nom du script dans la boîte de dialogue Affecter un script et cliquez sur OK.
- Sous l'onglet Extensions, cliquez sur Apps Script.
- Sur la page Apps Script, vous pouvez créer votre propre code macro dans l'éditeur et configurer les paramètres d'exécution.
- Cliquez sur le signe + en regard de Bibliothèques.
- Sur l'écran Ajouter une bibliothèque, collez l'ID de script de la bibliothèque de macros déployée.Remarque : L'ID de script est généré lors du déploiement.
- Cliquez sur Rechercher, sélectionnez la dernière version de la bibliothèque sous l'option Version et cliquez sur Ajouter.
- Cliquez sur Enregistrer pour enregistrer la feuille de calcul Google avec un nom. Maintenant, la macro est intégrée au modèle.
- Cliquez sur le dessin que vous avez créé dans Google Sheet. Le script s'exécute et vous pouvez fermer la fenêtre une fois que vous avez reçu le message Exécution de la macro terminée et enregistrements téléchargés.
- Chaîner les scripts : vous pouvez chaîner simultanément des scripts de transaction ou de requête, simplifiant ainsi le processus d'exécution des transactions interconnectées.
- Scripts inter-chaînes : vous pouvez exécuter conjointement des scripts de transaction et de requête sur différentes chaînes dans un seul modèle.
- Scripts aller-retour : vous pouvez exécuter des scripts de transaction et de requête via un seul modèle, ce qui vous permet d'exécuter un cycle d'opérations complet en une seule fois.
Exécuter des macros non publiées à partir de Google Sheets
Google Sheets s'exécute dans un environnement basé sur un navigateur. Dans les navigateurs, les chemins d'accès de fichiers sont traités à l'aide de JavaScript, où une barre oblique inverse (\) est traitée comme un caractère d'échappement spécial (par exemple, \n pour une nouvelle ligne ou \t pour un onglet). Pour vous assurer que la barre oblique inverse est correctement gérée dans le cadre du chemin d'accès du fichier, vous devez la saisir sous forme de barre oblique inverse double (\\). Le navigateur l'interprète alors comme une barre oblique inverse unique lors du traitement du chemin d'accès.
C:\\Users\\username\\Documents\\Winshuttle\\Studio\\Script\\SampleMacro.qsq