La commande FIXER OPTION IMPRESSION permet de modifier par programmation la valeur d’une option d’impression. Chaque option définie à l’aide de cette commande est appliquée dans toute la base et durant toute la session tant qu’aucune autre commande modifiant les paramètres d’impression (UTILISER PARAMETRES IMPRESSION, IMPRIMER SELECTION sans le paramètre >, etc.) n’est appelée.
Le paramètre option vous permet de désigner l’option à modifier. Vous pouvez passer soit une des constantes prédéfinies du thème Options d'impression, soit un code d'option PDF (utilisable avec le pilote PDFCreator sous Windows uniquement). Passez dans les paramètres valeur1 et (facultativement) valeur2 la ou les nouvelle(s) valeur(s) de l’option spécifiée. Le nombre et la nature des valeurs à passer dépend du type d’option spécifiée.
Le tableau suivant liste les options et leurs valeurs possibles :
option (constante)
valeur1
valeur2
1 (Option papier)
Nom
-
Largeur
Hauteur
2 (Option orientation)
1=Portrait, 2=Paysage
-
3 (Option échelle)
Nombre (%)
-
4 (Option nombre copies)
Nombre
-
5 (Option alimentation)
Windows uniquement : Indice (numéro)
-
8 (Option couleur)
Windows uniquement : 1=N/B, 2=Couleur
-
9 (Option destination)
1=Imprimante
-
2=Fichier (PC)/PS (Mac)
Chemin accès
3=Fichier PDF
Chemin accès
5=Ecran (Mac)
-
11 (Option recto verso)
Windows uniquement :
0=Recto (défaut)
-
1=Recto-verso
Reliure : 0=Gauche (défaut), 1=Haut
12 (Option nom document à imprimer)
Nom du document à imprimer
-
13 (Option mode impression Mac)
0=mode PDF, 1=mode Postscript
-
14 (Option masquer progression impr)
0=Afficher (défaut), 1=Masquer
-
Option papier (1) : la liste de tous les noms de papiers disponibles peut être obtenue via la commande VALEURS OPTION IMPRESSION. Vous pouvez passer soit le nom du papier dans valeur1 (et dans ce cas omettre valeur2), soit la largeur du papier dans valeur1 et sa hauteur dans valeur2. La largeur et la hauteur doivent être exprimées en pixels écran.
Option orientation (2) : vous pouvez passer soit 1 (Portrait), soit 2 (Paysage) dans valeur1.
Option échelle (3) : passez un pourcentage dans valeur1. Attention, certaines imprimantes ne permettent pas de modifier l’échelle. Si vous passez une valeur invalide, la propriété est remise à 100% au moment de l'impression.
Option nombre copies (4) : passez le nombre de copies à imprimer dans valeur1.
Option alimentation (5) : passez un numéro correspondant à l’indice, dans le tableau des bacs retourné par la commande VALEURS OPTION IMPRESSION, du bac papier à utiliser. Note : Cette option est utilisable sous Windows uniquement.
Option couleur (8) : passez dans valeur1 un code indiquant le mode de prise en charge de la couleur : 1=Noir et blanc (monochrome), 2=Couleur. Note : Cette option est utilisable sous Windows uniquement.
Option destination (9) : passez dans valeur1 un code indiquant le type de destination de l’impression : 1=Imprimante, 2=Fichier (PC)/PS (Mac), 3=Fichier PDF, 5=Ecran (option du pilote Mac OS X). Si valeur1 est différent de 1 ou de 5, passez dans valeur2 un chemin d’accès pour le document résultant. Ce chemin sera utilisé jusqu’à ce qu’un autre chemin soit spécifié. Si un fichier du même nom existe déjà à l’emplacement de destination, il est remplacé. Note : Sous Windows, vous pouvez définir la destination d'impression 3 (Fichier PDF) lorsque le pilote PDF Creator a été installé. A compter de la version 12.2 de 4D, ce paramétrage est obligatoire pour que 4D puisse piloter l'impression via PDF Creator sous Windows. Lorsque les valeurs (9;3;chemin) sont passées, 4D lance automatiquement une impression PDF "silencieuse" et prend en compte les codes d'options éventuellement passés (à noter que si vous passez une chaîne vide dans valeur2 ou omettez ce paramètre, une boîte de dialogue d’enregistrement de fichier apparaît au moment de l’impression). A l'issue de l'impression, les paramétrages courants sont restaurés. Ce principe simplifie le pilotage des impressions PDF par 4D et permet d'écrire du code multi-plate-forme. Si les valeurs (9;3;chemin) ne sont pas passées, l'impression n'est pas pilotée par 4D et les éventuels codes d'options de PDF Creator sont ignorés.
Option recto-verso (11) : vous pouvez passer soit 0 (Recto ou standard), soit 1 (Recto-verso) dans valeur1. Si valeur1 vaut 1, vous pouvez définir la reliure à appliquer à l’aide de valeur2 : 0=Reliure à gauche (valeur par défaut), 1=Reliure en haut. Note : Cette option est utilisable sous Windows uniquement.
Option nom document à imprimer (12) : passez dans valeur1 le nom du document d’impression devant apparaître dans la liste des documents du serveur d’impression. Pour utiliser ou rétablir le fonctionnement standard (utilisation du nom de la méthode dans le cas d’une méthode, nom de la table pour un enregistrement, etc.), passez une chaîne vide dans valeur1. Attention : le nom défini par cette instruction sera utilisé pour tous les documents d’impression de la session tant qu’un nouveau nom ou une chaîne vide ne sera pas passé(e).
Option mode impression Mac (13) : passez 0 pour fixer l’impression en mode PDF (valeur par défaut) et 1 pour “forcer” l’impression en mode Postscript dans valeur1. Cette option n’a pas d’effet sous Windows. Note : Sous Mac OS X, les impressions sont effectuées par défaut en mode PDF. Or, le pilote d’impression PDF ne prend pas en charge les images PICT encapsulant des informations Postscript — ces images sont générées notamment par des logiciels de dessin vectoriel. Pour résoudre ce problème, cette option permet de modifier le mode d’impression sous Mac OS X pour la session courante. Attention, l'impression en mode Postscript peut entraîner des effets de bords indésirables.
Option masquer progression impr (14) : passez 1 dans valeur1 pour masquer toutes les fenêtres de progression d'impression et 0 pour rétablir leur affichage (fonctionnement par défaut). Cette option est particulièrement utile dans le cadre des impressions en PDF sous Mac OS X. Note : Il existe déjà une option d’affichage Progression de l’impression accessible via la boîte de dialogue des Propriétés de la base (page Interface). Toutefois, elle est globale à l’application et ne masque pas toutes les fenêtres sous Mac OS X.
Une fois fixée à l’aide de cette commande, une option d’impression sera conservée durant toute la session pour l’application 4D entière. Elle sera utilisée par les commandes IMPRIMER SELECTION, IMPRIMER ENREGISTREMENT, Imprimer ligne, QR ETAT et par toutes les impressions de 4D, y compris en mode Développement.
Notes :
Il est impératif d’utiliser le paramètre optionnel > avec les commandes IMPRIMER SELECTION, IMPRIMER ENREGISTREMENT et SAUT DE PAGE afin de ne pas réinitialiser les options d’impression définies à l’aide de la commande FIXER OPTION IMPRESSION.
La commande FIXER OPTION IMPRESSION fonctionne avec les imprimantes PostScript uniquement.
Pour pouvoir utiliser un code d'option PDF dans le paramètre option, vous devez avoir installé le pilote PDFCreator dans votre environnement 4D (pour plus d’informations, reportez-vous à la section Intégration du pilote PDFCreator sous Windows). De plus, pour que le code d'option soit pris en compte, vous devez avoir activé le pilotage de l'impression PDF par 4D via l'instruction suivante :
Dans le cas contraire, les codes d'options sont ignorés.
Un code d'option PDF est une valeur de type texte constituée de deux parties, TypeOption et NomOption, assemblées sous la forme "TypeOption:NomOption". Voici la description de ce code :
TypeOption indique si vous désignez une option native de PDFCreator ou une option d’administration PDF de 4D. Deux valeurs sont acceptées :
PDFOptions = option native
PDFInfo = option interne.
NomOption désigne l’option à définir (dépend de la valeur de TypeOption).
Si TypeOption = PDFOptions, vous pouvez passer dans NomOption l’une des nombreuses options natives de PDFCreator. Par exemple, l’option UseAutosave agit sur la sauvegarde automatique. Pour pouvoir modifier cette option, passez "PDFOptions:UseAutosave" dans le paramètre option et la valeur à utiliser dans le paramètre valeur1. Pour une description complète des options natives de PDFCreator, reportez-vous à la documentation livrée avec le pilote PDFCreator.
Si TypeOption = PDFInfo, vous pouvez passer dans NomOption un des sélecteurs spécifiques suivants :
Reset print : permet de réinitialiser le statut d’attente interne afin, notamment, de sortir d’une boucle infinie. Dans ce cas, valeur1 n’est pas utilisé.
Reset standard options : permet de rétablir toutes les options de PDFCreator à leurs valeurs par défaut. Si une impression est en cours, les paramètres par défaut sont appliqués à l’issue de l’impression. Dans ce cas, valeur1 n’est pas utilisé.
Start : permet de démarrer ou de stopper le spouler de PDFCreator. Passez 0 dans valeur1 pour le stopper et 1 pour le démarrer.
Reset options : permet de réinitialiser toutes les options modifiées depuis le début de la session à l’aide de la commande FIXER OPTION IMPRESSION et du sélecteur PDFOptions.
Version : permet de lire le numéro de version courant du pilote PDFCreator. Ce sélecteur peut être utilisé uniquement avec la commande LIRE OPTION IMPRESSION. Le numéro est retourné dans le paramètre valeur1.
Last error : permet de lire la dernière erreur retournée par le pilote PDFCreator. Ce sélecteur peut être utilisé uniquement avec la commande LIRE OPTION IMPRESSION. Le numéro de l’erreur est retourné dans le paramètre valeur1.
Print in progress : permet de savoir si 4D est en attente d’une impression de PDFCreator. Ce sélecteur peut être utilisé uniquement avec la commande LIRE OPTION IMPRESSION. Le paramètre valeur1 retourne 1 si 4D est en attente de PDFCreator et 0 dans le cas contraire.
Job count : permet de connaître le nombre de tâches en attente dans la file d’impression. Ce sélecteur peut être utilisé uniquement avec la commande LIRE OPTION IMPRESSION. Le nombre de tâches est retourné dans le paramètre valeur1.
Synchronous Mode : permet de fixer le mode de synchronisation entre les requêtes d’impression envoyées par 4D et le pilote PDFCreator. Comme 4D ne peut pas obtenir d’information concernant le statut courant d’une tâche d’impression présente dans la file d’impression, une option permet de mieux contrôler l’exécution des tâches en ne les envoyant que lorsque le statut du pilote PDFCreator est "libre". Dans ce cas, 4D est synchronisé avec le pilote. Passez 0 dans valeur1 pour que 4D envoie immédiatement les requêtes d’impression (valeur par défaut) et 1 pour que 4D soit synchronisé et attende que le pilote ait terminé sa tâche en cours avant d’en envoyer une autre.
Note : Après chaque impression, 4D rétablit automatiquement les paramètres précédents du pilote PDFCreator afin d’éviter toute interférence avec les autres programmes utilisant PDFCreator.
La méthode suivante active le pilotage PDF de manière à imprimer tous les enregistrements de la table à l'emplacement C:\Test\Test_PDF_N où N est le numéro de séquence de l’enregistrement :
FIXER IMPRIMANTE COURANTE(PDFCreator Nom imprimante) // Sous Windows, sélectionner l’imprimante virtuelle installée par PDFCreator Si(OK=1) // Si PDFCreator est bien installé
TOUT SELECTIONNER([Table_1]) Boucle($i;1;Enregistrements trouves([Table_1])) FIXER OPTION IMPRESSION(Option destination;3;"C:\\Test\\Test_PDF_"+Chaine($i)) // L'option de destination 3 déclenche une tâche d'impression PDFCreator IMPRIMER ENREGISTREMENT([Table_1];*) ENREGISTREMENT SUIVANT([Table_1]) Fin de boucle // Réinitialisation des options du pilote PDFCreator FIXER OPTION IMPRESSION("PDFInfo:Reset standard options";0) Fin de si
La variable système OK prend la valeur 1 si la commande a été exécutée correctement, sinon elle prend la valeur 0. Si vous passez un code d'option invalide (option non reconnue par PDFCreator par exemple), OK prend la valeur 0.
Si la valeur passée pour une option est invalide ou si elle n'est pas disponible sur l'imprimante, la commande retourne une erreur (que vous pouvez intercepter à l’aide d’une méthode de gestion d’erreur installée par la commande APPELER SUR ERREUR) et la valeur courante de l’option est inchangée.
PROPRIÉTÉS
Produit : 4D
Thème : Impressions
Numéro :
733
Nom intl. : SET PRINT OPTION