Site icon Blog ARC Optimizer

OneStream – Vues de la table Partie 2 sur 2


Dans  Partie 1 de 2 vues de table, j'ai démontré la fonctionnalité de requête de données des vues de table et j'ai déclaré que dans la partie 2 de 2, je montrerais comment mettre à jour les données interrogées qui font l'objet de ce blog. Si vous n'avez pas lu la Partie 1veuillez le faire avant de continuer car ce blog étend le blog précédent.

Pour commencer le processus, je vais me connecter à l'application de référence OneStream, GolfStream. Une fois connecté à l'application, sélectionnez "OnePlace" -> "Application".

Développez "Outils", puis sélectionnez "Règles commerciales".

Développez " Tableur", puis sélectionnez la fenêtre "UTM_TaskList".

Avec la règle métier UTM_TaskList "BR" sélectionné, accédez à "Ligne 92" et mettez à jour TV_TaskListExport.CanModifyData de "False" à "True" qui permet la modification des données. Mettez également à jour le commentaire de la ligne 91 pour documenter le changement.

Accédez à « Ligne 34 » et décommentez la ligne car une fonction privée sera ajoutée à SaveTableView SpreadsheetFunctionType.

Ayant activé la modification des données et décommenté "Case Is = SpreadsheetFunctionType.SaveTableView", le la prochaine étape sera d'ajouter la ligne 35 "SaveMyTableView(si,args.TableView)". SaveMyTableView est une fonction privée qui aura le code pour mettre à jour la table, XFW_UTM_TaskList, pour les enregistrements modifiés.

Accédez à la ligne de fonction de fin de fonction privée, GetUTMTaskListExport, puis créez la fonction privée "SaveMyTableView".

Avec la fonction ajoutée, le code pour mettre à jour le enregistrement(s) de données est développé. Comme le code de l'image suivante est documenté, je vais résumer le développement du code qui consiste à créer l'instruction SQL "Ligne 144 then Ligne 173" qui sera remplie et exécutée, le Variable TaskID qui est utilisée dans l'instruction SQL "Ligne 147", connexion à la base de données de l'application "Ligne 153", une boucle des lignes "Ligne 155 ” et les colonnes “Ligne 159” dans le jeu de résultats et enfin l'exécution de l'instruction SQL “Ligne 183“. Si vous ne l'avez pas déjà fait, enregistrez puis compilez le BR pour vérifier la syntaxe. À ce stade, le BR est prêt à tester et peut être fermé ou rester ouvert.

Pour commencer le processus de test de la fonctionnalité SaveTableView, développez "Outils", puis sélectionnez "Feuille de calcul" accessible depuis l'application et ouvrez "TaskImportTemplate_UTMT.xlsx" enregistré dans le précédent article de blog. Une fois le fichier ouvert, sélectionnez " Actualiser la feuille".

Mettre à jour une ou plusieurs lignes dans la colonne TaskName car la colonne TaskName est la colonne spécifiée dans l'état UPDATE SQL NT. Les lignes qui sont mises à jour ont été ombrées pour identifier les lignes qui ont été modifiées. Notez que des colonnes supplémentaires peuvent être mises à jour, ce qui nécessiterait des modifications de l'instruction SQL UPDATE dans la règle métier, et une colonne a été choisie pour avoir un exemple concis pour ce blog.

Une fois les données mises à jour, sélectionnez "Submit Sheet" dans le menu On Ruban eStream XF.

Après une seconde ou deux, les enregistrements de modification ont été enregistrés dans la table et la TableView précédemment renvoyée a été mise à jour. Notez que les enregistrements modifiés ont été ombrés pour l'identification.

Une des lignes que je n'ai pas signalées dans le résumé du code était "BRApi .ErrorLog.LogMessage(si,SQL_TaskList_U.ToString)" qui a enregistré l'exécution de la requête dans le journal des erreurs d'application dont une image est incluse pour référence. Notez qu'il s'agit d'une ligne facultative dans le code qui peut être commentée si vous le souhaitez.

À ce stade, vous vous demandez peut-être si le fichier Excel comportait plus de quatre lignes ; cependant, les mises à jour capturées dans le journal des erreurs ne concernent que quatre lignes. Comment la feuille de travail de soumission n'a-t-elle su que mettre à jour quatre lignes qui avaient modifié les données ? L'autre ligne que je n'ai pas incluse dans le résumé du code est "If TV_ColumnU.IsDirty()" qui, selon le guide de l'utilisateur de Table Views, "IsDirty – Condition Check si l'élément a été modifié", par exemple. en incluant IsDirty(), l'instruction SQL ne s'exécutera que pour les enregistrements modifiés.

Comme toujours, merci d'avoir lu le billet de blog. Si vous avez des questions, n'hésitez pas à poster un commentaire ou à m'envoyer un e-mail à terry.ledet@perficient.com.

À propos de l'auteur <!– :   tledet, Senior Architecte de solutions–>

Terry est architecte de solutions senior chez Perficient et OneStream Certified Professional (OCP) – Lead Architect R1. Il est un conférencier fréquent chez Splash et passionné par la réussite de ses clients. Lorsqu'il ne blogue pas sur OneStream, Terry est un mari, un parent et un passionné de baseball.

En savoir plus sur cet auteur




Source link
Quitter la version mobile