> Tech > Imprimer « page X de Y »

Imprimer « page X de Y »

Tech - Par Scott Klement - Publié le 24 juin 2010
email

Q: Comment puis-je imprimer « Page X de Y » sur mes rapports ? RPG permet d’imprimer facilement le numéro de page courante, mais comment imprimer le nombre total de pages ? R: C’est plus compliqué qu’il n’y paraît. Au moment où les en-têtes de pages sont imprimés, on ignore le nombre de pages final […]

Q: Comment puis-je imprimer « Page X de Y » sur mes rapports ? RPG permet d’imprimer facilement le numéro de page courante, mais comment imprimer le nombre total de pages ?

R: C’est plus compliqué qu’il n’y paraît. Au moment où les en-têtes de pages sont imprimés, on ignore le nombre de pages final du rapport. D’ailleurs, on ne le connaîtra qu’après impression de la dernière page et après fermeture du fichier d’impression.

D’aucun suggère tout simplement d’exécuter deux fois le programme : une première fois pour obtenir le comptage des pages et une seconde pour l’impression proprement dite. Cette méthode n’est pas toujours pratique pour plusieurs raisons : certains programmes mettent à jour des fichiers et, de ce fait, ne sauraient être réexécutés ; d’autres mettent très longtemps à s’exécuter et donc, on hésitera à le faire deux fois. Parfois, les données qui nourrissent le rapport changeront, modifiant le comptage des pages.

Je crois avoir trouvé une meilleure solution. J’ai créé une commande qui s’exécute une fois que le rapport a été sauvegardé dans le spool. Elle lit le fichier spoolé, recherche une certaine chaîne et la remplace par le comptage de pages total.

Pour utiliser cette commande, changez simplement votre programme de reporting afin qu’il imprime une chaîne unique, comme « ++++ », où vous voulez placer le nombre de pages total. Mettez le fichier spoolé en suspens puis exécutez cet utilitaire pour insérer le comptage de pages. La figure 2 montre un exemple.

Voici quelques commentaires à propos de cet utilitaire :

1. Il utilise l’API QUSCRTSP, livrée avec l’autorité PUBLIC(*EXCLUDE). Par conséquent, il vous faudra soit changer l’autorité de cette API, soit faire adopter au programme l’autorité d’un profil utilisateur autorisé à l’exécuter. Dans mes instructions de compilation, je montre comment faire adopter au programme l’autorité QSECOFR.

2. Le texte est « remplacé » par la création d’une nouvelle copie du fichier spoolé avec les numéros de pages inclus et par la suppression de la copie originale. Par conséquent, le numéro du fichier spoolé changera par rapport à sa valeur originale.

Téléchargez gratuitement cette ressource

Le Guide d’Orchestration du Parcours client

Le Guide d’Orchestration du Parcours client

Au-delà de la clarification des nouveaux concepts de gestion du parcours client, ce guide vous permettra de définir, créer et mettre œuvre une orchestration complète articulée autour des trois volets essentiels au succès de l’expérience client et de l’entreprise.

Tech - Par Scott Klement - Publié le 24 juin 2010