Imprimer ligne

4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant

version 2004.5 (Modifiée)


Imprimer ligne ({table; }formulaire{; zone1{; zone2}}){ Numérique }

ParamètreTypeDescription
tableTableTable à imprimer, ou
Table par défaut si ce paramètre est omis
formulaireAlphaFormulaire à imprimer
zone1NumériqueMarqueur d'impression, ou
Zone de départ (si zone2 est spécifié)
zone2NumériqueZone de fin (si zone1 est spécifié)
RésultatNumériqueHauteur de la section imprimée

Description

La commande Imprimer ligne imprime simplement formulaire avec les valeurs courantes des champs et des variables de table. Cette commande est généralement utilisée pour imprimer des états particulièrement complexes nécessitant un contrôle total du processus d'impression. Imprimer ligne ne gère pas les traitements d'enregistrements, ni les ruptures, sauts de pages, en-têtes ou pieds de pages. Vous devez vous-même prendre en charge ces opérations. Imprimer ligne imprime uniquement des champs et des variables sous une forme fixe.

Comme la commande Imprimer ligne ne génère pas de saut de page après avoir imprimé un formulaire, elle vous permet de combiner facilement différents formulaires sur la même page. Ainsi, Imprimer ligne est idéale pour effectuer des impressions complexes impliquant plusieurs tables et plusieurs formulaires. Pour "forcer" 4D à effectuer un saut de page entre deux formulaires, utilisez la commande SAUT DE PAGE. Pour reporter sur la page suivante l'impression d'un formulaire dont la hauteur est supérieure à la place disponible, appelez la commande NE PAS VALIDER avant la commande SAUT DE PAGE.

Trois syntaxes peuvent être utilisées :

Impression du corps d'un formulaire

Syntaxe :

   hauteur:=Imprimer ligne (maTable;monFormulaire)

Dans ce cas, Imprimer ligne imprime uniquement la zone de Corps du formulaire (zone située entre les marqueurs En-tête et Corps).

Impression de zone de formulaire

Syntaxe :

   hauteur:=Imprimer ligne (maTable;monFormulaire;marqueur)

Dans ce cas, la commande imprimera la section désignée par marqueur. Passez dans le paramètre marqueur une des constantes du thème "Zone de formulaire" :

ConstanteType Valeur
Entête formulaireEntier long200
Entête formulaire1...10Entier long201...210
Corps formulaireEntier long0
Rupture formulaire0...9Entier long300...309
Pied de page formulaireEntier long100

Impression de section

Syntaxe :

   hauteur:=Imprimer ligne (maTable;monFormulaire;zoneDébut;zoneFin)

Dans ce cas, la commande imprimera la section comprise entre les paramètres zoneDébut et zoneFin. Les valeurs saisies doivent être exprimées en pixels.

La valeur retournée par Imprimer ligne indique la hauteur de la zone d'impression. Cette valeur sera automatiquement prise en compte par la commande Lire hauteur imprimee.

Les boîtes de dialogue standard d'impression n'apparaissent pas lorsque vous utilisez la commande Imprimer ligne. L'état généré ne tient pas compte des paramètres d'impression définis en mode Structure pour le formulaire. Il y a deux manières de définir les paramètres d'impression avant d'effectuer une série d'appels à Imprimer ligne :

Vous appelez PARAMETRES IMPRESSION. Dans ce cas, vous laissez l'utilisateur définir ses paramètres dans les boîtes de dialogue d'impression.

Vous appelez UTILISER PARAMETRES IMPRESSION. Dans ce cas, les paramètres sont définis par programmation.

Imprimer ligne construit chaque page à imprimer en mémoire. La page n'est imprimée que lorsqu'elle est entièrement remplie ou lorsque vous appelez SAUT DE PAGE. Pour vous assurer que la dernière page d'une impression exécutée par l'intermédiaire Imprimer ligne soit effectivement imprimée, vous devez conclure par un appel à la commande SAUT DE PAGE. Sinon, la dernière page, si elle n'est pas pleine, reste en mémoire et n'est pas imprimée.

A compter de la version 2004.5 de 4e Dimension, cette commande imprime les zones et objets externes (par exemple des zones 4D Write ou 4D View). La zone est réinitialisée à chaque exécution de la commande.

Attention : Imprimer ligne n'imprime pas les sous-formulaires. Si vous voulez imprimer uniquement un formulaire comportant de tels objets, utilisez plutôt IMPRIMER ENREGISTREMENT.

Imprimer ligne ne génère qu'un événement Sur impression corps pour la méthode formulaire.

4D Server : Cette commande peut être exécutée sur 4D Server dans le cadre d'une procédure stockée. Dans ce contexte :

Veillez à ce qu'aucune boîte de dialogue n'apparaisse sur le poste serveur (sauf besoin spécifique).

En cas de problème sur l'imprimante (plus de papier, imprimante déconnectée, etc.), aucun message d'erreur n'est généré.

Exemples

(1) L'exemple suivant effectue la même chose que ce que ferait la commande IMPRIMER SELECTION. Cependant, l'état utilise deux formulaires différents suivant le type d'enregistrement (chèque émis ou dépôt) :

   CHERCHER([Opérations]) ` Permettre à l'utilisateur de sélectionner les enregistrements 
   Si (OK=1)
      TRIER([Opérations]) ` Permettre à l'utilisateur de trier les enregistrements 
         Si (OK=1)
            PARAMETRES IMPRESSION ` Afficher les boîtes de dialogue d'impression 
            Si (OK=1)
               Boucle ($i; 1; Enregistrements trouves([Opérations])) 
                  Si ([Opérations]Type = "Chèque") ` Si c'est un chèque… 
                     Imprimer ligne([Opérations]; "SortieChèque") ` Utiliser un formulaire de chèque
                  Sinon ` Sinon c'est un dépôt donc… 
                     Imprimer ligne ([Opérations]; "SortieDépôt") ` Utiliser un formulaire de dépôt... 
                  Fin de si 
                  ENREGISTREMENT SUIVANT([Opérations])
               Fin de boucle
               SAUT DE PAGE `S'assurer que la dernière page est imprimée
            Fin de si
         Fin de si
      Fin de si

(2) Reportez-vous à l'exemple de la commande FIXER TAQUET IMPRESSION.

Référence

NE PAS VALIDER, PARAMETRES IMPRESSION, SAUT DE PAGE, UTILISER PARAMETRES IMPRESSION.


4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant