Fermer

juin 10, 2020

Supprimer des membres en masse dans OneStream XF


Lors d'un de mes projets précédents, nous devions supprimer environ 200 comptes qui étaient répartis sur une grande dimension Compte. Ce blog explique comment nous l'avons résolu.

Une approche aurait consisté à supprimer chaque compte une fois. De toute évidence, ce n'était pas attrayant car cela prend du temps et peut être sujet à des erreurs. Une autre approche est discutée dans l'article de la base de connaissances OneStream KB0010541 qui fournit une méthode pour créer un fichier XML pour un ou plusieurs membres. Cependant, la méthode KB nécessite de taper un nom de membre un par un.

Notre approche consistait à créer un fichier XML pour supprimer en masse les membres. Cette méthode prendra un fichier d'entrée et générera la syntaxe XML nécessaire. Tout ce dont vous avez besoin est d'accéder à Microsoft SQL Server avec les autorisations appropriées. Cette solution est applicable pour d'autres dimensions UD1-UD8 et peut être réutilisée chaque fois que le besoin se présente si elle est correctement configurée. L'approche suppose que:

  • Tous les membres sont des membres de base
  • Vous avez déjà identifié les membres à supprimer
  • Vous disposez d'une liste de ces membres dans un fichier texte ou un format pouvant être importé
  • Les membres identifiés ne sont pas membres d'un modèle de journal

Si vous n'avez pas de liste, vous pouvez utiliser une vue de cube, une vue rapide ou une autre méthode pour générer la liste. L'étape suivante consistera à importer la liste des comptes dans une base de données Microsoft SQL Server à l'aide de l'importation de fichier plat standard.

 Blog01 01

 Blog01 02

 Blog01 03

 Blog01 04  Blog01 05

Pour référence, un échantillon des données importées est affiché.

 Blog01 06 [19659002] Une fois le fichier importé avec succès, l'étape suivante consistera à créer une instruction SQL qui générera un fichier XML au format correct. Le format est indiqué ci-dessous.

Notez que chaque élément a deux attributs: nom qui sera le nom du membre à supprimer et action qui est spécifié comme = "» Supprimer". L'action indique au processus d'importation de supprimer le membre.

 Blog01 07

 Onestream - Comptabilité moderne: comment surmonter les défis de clôture financière

La requête suivante crée le fichier XML. Il comprend trois parties: une clause SELECT une clause FROM et une clause FOR XML PATH .

La clause SELECT "SELECT [MemberName] AS [@name]'Delete' AS [@action]" ordonnera les résultats en tant qu'attributs de l'élément . L'esperluette «@» indique qu'il s'agit d'un attribut d'un élément au lieu d'un élément de ligne.

La clause FROM est tout simplement la même instruction SQL que celle qui renvoie notre liste de comptes.

FOR XML PATH La clause spécifie le format de la sortie. Il crée un élément racine appelé et chaque ligne de notre liste deviendra un élément .

 Blog01 08

 Blog01 09

Le reste les éléments XML requis sont affichés dans l'image suivante sur les lignes 2-5 et 10-13 .

Remarque: l'élément possède des attributs supplémentaires qui ne sont pas affiché. . La deuxième image affiche le fichier après l'opération de copie et de collage. Enregistrez ce nouveau fichier avec l'extension .xml .

 Blog01 11

 Blog01 12

Avant d'importer notre fichier, nous vérifions que notre L'application OneStream a une dimension de compte avec 10 367 membres de base. Nous allons en supprimer 190 avec notre fichier.

 Blog01 13

Maintenant, connectez-vous à l'application OneStream. Sélectionnez et développez Application> Outils> Charger / Extraire .

Accédez au fichier XML créé précédemment et sélectionnez-le. Une fois cela fait, sélectionnez l'icône Charger . Le chargement se terminera sans erreur, ce qui est confirmé par la deuxième image après ce paragraphe.

 Blog01 14

 Blog01 15

Pour confirmer que le téléchargement a supprimé des membres, actualisez l'application OneStream, puis accédez à la dimension Compte et à la vue Grille. Le nombre de membres de base est passé de 10 367 à 10 177, ce qui confirme que 190 membres ont été supprimés.

 Blog01 16

J'espère que cette solution sera utile la prochaine fois que vous devrez supprimer de nombreux membres. Si vous avez des questions, n'hésitez pas à publier un commentaire sur le blog ou à m'envoyer un e-mail à terry.ledet@perficient.com.

À propos de l'auteur <! -: tledet, Architecte de solutions senior ->

Terry est un architecte de solutions senior chez Perficient spécialisé dans les solutions CPM OneStream. Il intervient fréquemment chez Splash et se passionne pour la réussite de ses clients. Lorsqu'il ne blogue pas sur OneStream, Terry est un mari, un parent et des amateurs de baseball.

Plus de contenu de cet auteur




Source link