Exemple d'import d'une base de données depuis un fichier Excel ou csvIl existe deux méthodes pour importer un fichier csv dans Storga. La première se fait avec l'interface du client Storga, et est pratique pour les cas simples (structures "à plat"). Dans les cas plus complexes, qui nécessitent une structure de données plus élaborée, l'import se fait par programme. Cet article est consacré à la méthode par programme. Pour illustrer cette méthode, je vous propose un exemple suffisament compliqué pour n'être pas traitable à l'interface, car on souhaite reconstituer une relation 1 à n dans un formulaire avec une sous-table. Le fichier de départNous partons du fichier suivant, distribué par l'APQC : ✇ crossIndustry_v704_vs_crossIndustry_v611.xlsx Première étape : analyser la structure et concevoir le formulaireLes trois onglets qui nous intéressent sont
Voici la structure du formulaire dans lequel nous voulons récupérer les données liée à un élément :
On reconstitue donc, par la sous-table Metrics, la relation 1-n (un élément, plusieurs indicateurs possibles). Deuxième étape : exporter les données du tableurLes trois onglets sont exportés en trois fichiers csv. Attention de prendre garde aux options d'export qui définissent l'encodage, car les mêmes options devront être utilisées dans le programme d'import. Troisième étape : importer les csvVoici un exemple de formulaire d'import :
Ce formulaire contient trois variables de type "File" (fichier), qui permettent le traitement au vol des fichiers déposés par glisser-déposer. L'option se configure simplement au niveau des propriétés du champ, par exemple :
Nous créons tout de suite un état qui scanne la zone où seront stockés les formulaires, état qui nous servira à assurer l'unicité de chaque élément, et qui permettra de l'enrichir. Cet état sera également le résultat [pcf] :
Importer l'onglet "Combined" (base)Voici le bout de code associé à l'upload du fichier csv correspondant à l'onglet "Combined" : ▸ Code import onglet "Combined" Message passingUne des règles de Storga interdit à un programme de modifier d'autres formulaires que celui qui le contient. Pour pouvoir mettre à jour les formulaires créés au paragraphe précédent avec les informations contenues dans les deux autres onglets, nous devons leur passer le message de se modifier eux-mêmes. C'est la raison pour laquelle le formulaire 'process_element' a également un petit programme, pour interpréter le message. ▸ Code du programme du formulaire 'process_element' Les deux autres onglets peuvent alors être importés, et le code exécuté par l'upload des fichiers csv correspondant sera respectivement : ▸ Code import onglet "Glossary terms" ▸ Code import onglet "Metrics" Filtrer l'étatOn peut rendre la consultation de la base de données ainsi constituée plus ergonomique en ajoutant des filtres. Voici à titre d'exemple le code des filtres utilisés dans le résultat présenté ici [pcf] :
∴
∎ Article publié ou mis à jour le 2017-03-31 Catégories : informatique
Commentaires |