Différences entre les versions de « ClapPrint - Utilisation »

De Wiki de Lapalys
Aller à la navigation Aller à la recherche
Ligne 124 : Ligne 124 :
  
 
[[clapPrint - La fenêtre FEN_ParamPrint|Détail de la fenêtre FEN_ParamPrint]]
 
[[clapPrint - La fenêtre FEN_ParamPrint|Détail de la fenêtre FEN_ParamPrint]]
 +
 +
[http://www.lapalys.ca/index.php/noslogiciels/clapprint Téléchargement et licence]

Version du 15 mars 2013 à 19:21

Ce composant propose essentiellement deux éléments :

  • La fonction d'impression de table : sImprimeTable()
  • Une interface utilisateur permettant le paramétrage de la fonction.

La fonction sImprimeTable

L'impression de la table se fait par une unique fonction : sImprimeTable. Une série de paramètres, donc certains peuvent être laissés par défaut, permettent de jouer sur les couleurs, sur l'existence ou pas des lignes (cadres, séparation), sur les formats (date, heure, monétaire, booléen), ...

L'interface utilisateur d'impression de table

Cette interface propose non seulement de gérer l'ensemble des paramètres reconnus par la fonction sImprimeTable() mais aussi de sauver le tout dans des profils, de sorte à pouvoir rappeler un "profil" plus tard.

L'appel de cette fenêtre FEN_ParamPrint accepte deux paramètres principaux :

  • Le nom de la table à imprimer (obligatoire, avec ou sans guillemets)
  • Le chemin complet d'un fichier INI pour sauvegarder les profils (optionnel)

Le contenu des onglets représente les mêmes options que pour l'appel de la fonction. Veuillez vous reporter à ce chapitre pour plus de détails.

Le fichier INI

Le fichier ini est exclusivement géré par l'interface utilisateur présentée ci-dessus. Chaque profil enregistré (avec le bouton "disquette") doit avoir un nom unique et correspondra à une section du fichier INI. Pour éviter toute confusion dans le fichier INI (au cas où le nom d'un profil correspondrait à une section déjà existante), préférez avoir un fichier INI à l'usage unique de ce composant.

Pour information, voici les mots clés géré par la fenêtre. Il est déconseillé de les modifier en dehors de cette fenêtre.


[NomDuProfil]

Orientation = 1 ou 2 (1=portrait, 2=paysage, par défaut=1)

Assemblage = 1 ou 2 (1=assemblé, 2=non-assemblé, par défaut=1), voir remarque ci-dessous

Portrait = 0 ou 1 (0=portrait non forcé, 1=portrait forcé, par défaut=0)

Titre = Valeur du titre du rapport (ne peut pas contenir de TAB, par défaut=vide)

RepeteTitre = 0 ou 1 (0=le titre s'affiche sur la première page uniquement, 1=répète le titre sur chaque page, par défaut=0)

TitreColonne = 0 ou 1 (0=n'affiche pas le titre des colonnes, 1=affiche le titre des colonnes, par défaut=0)

RepeteTitreColonne = 0 ou 1 (0=le titre des colonne s'affiche sur la première page uniquement, 1=répète le titre des colonnes sur chaque page, par défaut=0)

NumPage = 0 ou 1 (0=n'affiche pas la # de page, 1=affiche le # de page en bas de chaque page, par défaut=0)

Date = 0 ou 1 (0=n'affiche pas la date, 1=affiche la date en bas de chaque page, par défaut=0)

Heure = 0 ou 1 (0=n'affiche pas l'heure, 1=affiche l'heure en bas de chaque page, par défaut=0)

Booleen = 0 ou 1 (0=affiche comme des chiffres, 1=affiche comme des coches, par défaut=0)

Multiligne = 0 ou 1 (0=mono-ligne, 1=multi-ligne, par défaut=0)

Image = 0 ou 1 (0=n'affiche pas les images, 1=affiche les images, par défaut=0)

EcritureDaG = 0 ou 1 (0=écrit dans le sens par défaut déterminé par la fenêtre ou la table, 1=force l'écriture de droite à gauche, par défaut=0)

Gris = 0 ou 1 (0=imprime en couleur, 1=imprime en tons de gris, par défaut=0)

Cadre = 0 ou 1 (0=pas de cadre, 1=imprime le cadre, par défaut=0)

SeparateurV = 0,iContinu,iPointillé,iMixte,iTiret (0=pas de trait, par défaut=0)

SeparateurH = 0,iContinu,iPointillé,iMixte,iTiret (0=pas de trait, par défaut=0)

Police = Nom de la police de caractère à utiliser (par défaut=Arial)

PoliceTaille = Chiffre (par défaut=10)

RepeteCalcul = 0 ou 1 (0=calcul visible sur la dernière page, 1=calcul visible sur toutes les pages, par défaut=0)

DateFormat = voir la documentation PC SOFT de DateVersChaine

HeureFormat = voir la documentation PC SOFT de HeureVersChaine

MonetaireFormat = voir la documentation PC SOFT de NumériqueVersChaine

MagentaTransparent = 0 ou 1 (0=pas de transparence par le magenta, 1=le magenta de l'image sera transparent, par défaut=0)

Champ_x = NomDeLaColonne~Compteur~Moyenne~Total (Compteur, Moyenne, Total prennent la valeur 0 ou 1 selon qu'ils sont activés ou pas pour la colonne)

Image_x = NomDeLaColonne~Valeur~CheminImage (valeur = valeur que prend la rubrique, CheminImage = chemin complet de l'image correspondante, voir illustration de l'onglet 4 ci-dessus)

COULEURPAIRE = 0 a 16777216 (couleur de fond des lignes paires, voir la documentation PC SOFT)

COULEURIMPAIRE = 0 a 16777216 (couleur de fond des lignes impaires, voir la documentation PC SOFT)

COULEURDONNEE = 0 a 16777216 (couleur de texte des données, voir la documentation PC SOFT)

COULEURFONDPAGE = 0 a 16777216 (couleur de fond de page, voir la documentation PC SOFT)

COULEURVERTICAL = 0 a 16777216 (couleur des lignes verticales, voir la documentation PC SOFT)

COULEURHORIZONTAL = 0 a 16777216 (couleur des lignes horizontales, voir la documentation PC SOFT)

COULEURTITRE = 0 a 16777216 (couleur de texte du titre, voir la documentation PC SOFT)

COULEURFONDTITRE = 0 a 16777216 (couleur de fond du titre, voir la documentation PC SOFT)

COULEURTITRECOL = 0 a 16777216 (couleur du texte des titres de colonne, voir la documentation PC SOFT)

COULEURFONDTITRECOL = 0 a 16777216 (couleur de fond des titres de colonne, voir la documentation PC SOFT)

COULEURCADRE = 0 a 16777216 (couleur des lignes du cadre, voir la documentation PC SOFT)


Astuces

  • La fonction ne gère pas le paramètre iAperçu. Vous devez donc, dans le code, utiliser (ou pas) iAperçu avant d'appeler la fonction sImprimeTable.
  • Veillez, avant de lancer l'impression via la fonction ou la fenêtre FEN_ParamPrint, de désactiver les timers et les événements tels que spécifiés dans la documentation de PC SOFT.

Adaptation de l'impression à la largeur de la page

La fonction est construite de telle sorte à adapter la taille des caractères (et donc la hauteur et largeur des colonnes) automatiquement. En effet, lorsque la largeur de la table dépasse la largeur d'une page (selon l'orientation demandée dans un autre paramètre), la procédure commence par diminuer la taille de caractères pour voir si la table peut finir par entrer dans la page (la taille minimale est de 3). Si ce n'est pas possible, et que l'orientation portrait avait été choisie, la procédure passe automatiquement en paysage et refait le même calcul. Pour éviter ce passage automatique en mode paysage, il faut explicitement cocher "Force orientation portrait" ou utiliser la constante _ImprimeForcePortrait. Si finalement la ligne de table ne rentre pas dans la largeur de page, plusieurs pages seront prévues en largeur. Dans ce cas, il faut être attentif aux options d'assemblage.

Option d'assemblage

Grâce à ces fonctions, il est donc possible d'imprimer soit toutes les pages en largeur et ensuite les prochains enregistrement, soit les premières colonnes sur tous les enregistrements et ensuite les colonnes suivantes sur tous les enregistrement. Exemple : l'impression a besoin de 3 pages en largeur (pour contenir toutes les colonnes), soit a,b,c et 10 pages en hauteur (pour les 847 enregistrements) soit 1,2,3,4,..10. Chaque page est alors identifiée comme 1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c ... 10a, 10b et 10c.

- L'option "Assemblé" ou l'absence de constante _ImprimeNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 2a, 3a, 4a, ... 10a, 1b, 2b, 3b, 4b ... 10b, 1c, 2c, 3c, 4c ... 10c

- L'option "Non assemblée" ou l'utilisation de la constante _ImprimeNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 1b, 1c, 2a, 2b, 2c, ... 10a, 10b, 10c

Attention, si l'on choisi un nombre de pages limité (différent de 0 qui imprime toutes les page), l'on imprime évidemment la table selon l'ordre précité.

Liens utiles

Les entrées/sorties du composant

Détail de la fenêtre FEN_ParamPrint

Téléchargement et licence