Scripts SAP - Programme d'impression

Dans les scripts SAP, Print Programest utilisé pour imprimer le formulaire réel et obtenir les données des tables de la base de données, choisir un formulaire et imprimer les éléments de texte dans un format défini. Il récupère les données de la base de données et les combine avec l'entrée utilisateur, formate les données et les imprime.

Tous les programmes d'impression et formulaires sont stockés dans un tableau TNAPR.

Différents modules fonctionnels sont utilisés dans le programme d'impression. Pour démarrer un programme d'impression, le module fonctionnel OPEN_FORM est utilisé, et pour terminer le programme, le module fonctionnel CLOSE_FORM est utilisé.

OPEN_FORM- Dans le programme d'impression, cette fonction doit être appelée en premier avant toute impression. Vous spécifiez le nom du formulaire et la langue d'impression.

CALL FUNCTION 'OPEN_FORM'

START_FORM - Cette fonction est appelée à utiliser différentes formes avec des caractéristiques similaires dans une seule requête.

CALL FUNCTION ’START_FORM’

WRITE_FORM - Cette fonction est utilisée pour écrire du texte dans une fenêtre du formulaire en utilisant des éléments de texte.

CALL FUNCTION ‘WRITE_FORM’

CONTROL_FORM - Cette fonction est utilisée pour insérer des commandes de contrôle SAP Script dans un programme ABAP.

CALL FUNCTION ‘CONTROL_FORM’

END_FORM - Cette fonction est appelée à la fin et elle n'a pas de paramètres d'exportation.

CALL FUNCTION ‘END_FORM’

CLOSE_FORM - Pour afficher le formulaire standard et le programme d'impression standard, exécutez Transaction Code: NACE

Entrez les types d'application et cliquez sur le type de sortie en haut.

Dans la capture d'écran suivante, vous pouvez voir le nom de l'application pour le service sélectionné.

Programme d'impression - Exemple

Voici un exemple de programme d'impression qui crée une facture avec des informations relatives à l'entreprise telles que les données client, la date, la réservation de vol, etc.

Section 1 - Obtenir des données client

TABLES: zcustom, zbook, zpfli.  
DATA: bookings like zbook... 
select * from... 
/In this section, you are reading the data from tables in database./

Section 2 - Formulaire ouvert

CALL FUNCTION 'OPEN_FORM'  
EXPORTING  
DEVICE     = 'PRINTER'  
FORM       = 'EXAMPLE1'  
DIALOG     = 'X'  
OPTIONS    = 
EXCEPTIONS  
CANCELLED  = 1 
DEVICE     = 2 
FORM       = 3 
OTHERS     = 11 
/In this section, you are calling OPEN_FORM function module to initialize print output./

Dans le module fonction ci-dessus, le paramètre -

  • FORM affiche le nom du formulaire.

  • DEVICE peut être IMPRIMANTE (impression à l'aide de la bobine), TELEFAX (sortie fax) ou un ÉCRAN (sortie à l'écran)

  • OPTIONS montre une structure de type ITCPO pour contrôler les différents attributs - Aperçu avant impression, nombre de copies.

Section 3 - Imprimer l'en-tête du tableau

CALL FUNCTION 'WRITE_FORM' 
EXPORTING 
ELEMENT  = 'textelement’  
TYPE     = 'TOP' 
WINDOW   = 'MAIN' 
FUNCTION = 'SET' 
... 
/In this section, you use WRITE_FORM function to output general text elements and column 
heading/
  • ELEMENT Le module fonction montre le 'élément de texte' à imprimer et 'WINDOW' montre la fenêtre du formulaire à imprimer.

  • TYPE montre la zone de sortie de la fenêtre comme TOP, BOTTOM ou BODY.

  • FUNCTION indique que le texte doit être remplacé, ajouté ou ajouté.

Section 4 - Imprimer les réservations des clients

LOOP AT bookings WHERE  
CALL FUNCTION 'WRITE_FORM'  
EXPORTING  
ELEMENT  = 'BOOKING'  
TYPE     = 'BODY'  
WINDOW   = 'MAIN'  
...  
ENDLOOP  
/In this section, text element BOOKING is used to output the bookings of a customer from
the loop from BOOKING table in database./

Section 5 - Fermer le formulaire

CALL FUNCTION 'CLOSE_FORM'  
IMPORTING 
* RESULT    = 
EXCEPTIONS 
UNOPENED    = 1 
OTHERS      = 5 
/To end the Print Program/

Vous appelez ce module fonction à la fin et il n'a aucun paramètre d'exportation.