Les Etapes
1ère étape :
Créez une feuille excel minimum telle que vous souahitez l’obtenir au final.
Sauvegardez là au format XML.
Ouvrez là avec un éditeur de texte pour voir la syntaxe.
Epurez les instructions qui ne vous seront pas utiles, si vous ne souhaitez pas aller jusqu’à une mise en forme poussée.
Il vous est possible de tout faire (créer une feuille avec plusieurs onglets, mettre en forme le texte, les tailles de colonnes, …)
2nde étape :
Ecrire votre programme sur AS400 qui extrait vos données et créer un fichier de type où vous les stockez au format XML attendu par Excel.
Attention : Majuscules, minuscules, tout à de l’importance.
Cela est tout de même un peu fastidieux.
Exemple
Un fichier PMFCODPF comportant les colonnes suivants :
C01, le code de la table
C02, la clé associée au code C01
C10, le libellé associé à la clé C02
C30, Un commentaire associé à la clé C02
Le but
Créer une feuille Excel de un onglet nommé « PMFCODPF, LES CODES ET LES CLES »,
Qui contiendra toutes les codes tables et clés associés pour les code tables commençant par ‘TAB’.
Le moyen
Un programme (ici écrit en ADELIA 400, écrit rapidement, mais c’est juste pour l’exemple) :
Qui génère un fichier (créé à la volée dans QTEMP) qui contiendra les données au format XML. Ici, le codage XML est géré en dur dans le programme. Il est préférable d’en stocker le contenu dans un fichier de paramétrage pour qu’il soit réutilisable.
Qui transfert ce fichier dans l’IFS ( dans notre exemple : /HOME/REP/PARAMETRAGE.xml)
Et après
On peut faire un peu plus complexe :
Stocker dans un fichier de paramétrage le contenu de la feuille xml à obtenir, en incluant des variables de la forme $SOCIETE, $USER que vous remplacerez par leur valeur réelle lors de la construction du fichier final.
Envoyer le fichier par email à la fin du traitement. Voir l’article art321
Paramétrer les apparences que l’on veut obtenir (couleurs, gras, bordures, …)
Répartir les données sur plusieurs onglets
…
Astuces
Problème avec les caractères accentués en ouvrant sous Excel : n’oubliez pas le codage de caractères suivant en début de fichier XML :