Algorithme

  1. Démarrage de la liaison avec le tableur et création d'un nouveau classeur

  2. Détermination des colonnes visibles (déterminées par a5pmtab)

  3. Ouverture Export_Tableau_GetFileName

    1. Doit retourner le nom du fichier final à créer

    2. Sinon aura par défaut : System.User + RTime() + ".xlsx"

  4. Ouverture Export_Tableau_GetFileNameTemp

    1. Doit retourner le nom du fichier temporaire à créer (tmp serveur)

  5. Ouverture Export_Tableau_GetFileNameDest

    1. Doit retourner le nom du fichier destinattion (sur poste client)

  6. Module a5tm000 Nom_Feuille_Export_Tableau

    1. Indique le nom de classeur par défaut

  7. Ouverture Export_Tableau_av

  8. Boucle sur les colonnes du tableau

  9. Ecriture des entêtes de colonnes

  10. Ecriture des lignes du tableau

  11. Ouverture Export_Tableau_ap

    1. Libération de la liaison avec le tableur

Détails “Boucle sur les colonnes”

Donnée en ligne : "ddsys.dhsd" COLUMNINFO
; On constitue la liste des colonnes exportées.
Liste mémoire "A5PMTAB_LSTCOLAEXPORTER" - enregistrements de type XEXP.
Si l'ouverture Export_Tableau_av a renvoyé FiltreColVisible='N'
Alors
Si l'ouverture Export_Tableau_FiltreColonne retourne 'O'
Appel de l'ouverture Export_Tableau_LstColAExp_av
Ajout de la colonne à la liste
Appel de l'ouverture Export_Tableau_LstColAExp_ap
Sinon
rien
Sinon
; Seules les colonnes visibles sont exportées
Si la colonne est visible
Appel de l'ouverture Export_Tableau_LstColAExp_av
Ajout de la colonne à la liste
Appel de l'ouverture Export_Tableau_LstColAExp_ap

Détails “Ecriture des entêtes de colonnes”

Si la fonction Export_Tableau_Entete retourne 'O'
Boucle sur les colonnes à exporter
Donnée en ligne : "ddsys.dhsd" COLUMNINFO
Ouverture Export_Tableau_Entete_Av

 

Détails “Ecriture des lignes du tableau”

Boucle sur les lignes du tableau
Ouverture Export_Tableau_FiltreLigne permettant de filtrer les lignes
Boucle sur les colonnes à exporter
Donnée en ligne : "ddsys.dhsd" COLUMNINFO
Si XEXP.Ouverture contient un nom d'ouverture celle-ci est appelée avant l'écriture de la cellule.