Sap Technique-Programmation ABAP - Edition et …sap.technique.free.fr/doc/Sapscript.doc · Web...
Transcript of Sap Technique-Programmation ABAP - Edition et …sap.technique.free.fr/doc/Sapscript.doc · Web...
Sap.technique
EDITION ET IMPRESSION
DES FORMULAIRES
Edition et impression des formulaires 1/21 V1.0 - 22/05/2023
Sap.technique
SOMMAIRE
Introduction ............................................................................................................................. 3 I. Présentation.........................................................................................................................................3II. Formulaire...........................................................................................................................................4
A. Création................................................................................................................................. 4B. Multilangue et activation........................................................................................................4C. Débuggeur............................................................................................................................. 5
III. Interaction programme d’impression et formulaire...................................................................................6Sapscript .................................................................................................................................. 7
I. Eléments..............................................................................................................................................7A. Page et fenêtre...................................................................................................................... 8B. Format de paragraphe...........................................................................................................9C. Format de caractères............................................................................................................9
II. Editeur Sapscript................................................................................................................................10A. Editeur PC ou éditeur de ligne.............................................................................................10B. Texte................................................................................................................................... 12C. Elément de texte................................................................................................................. 12D. Symboles............................................................................................................................. 12
III. Commandes de controles...................................................................................................................14A. Rerpise des textes...............................................................................................................14B. Formatage des adresse.......................................................................................................14C. Autres commandes.............................................................................................................15D. Gestion des cadres.............................................................................................................16E. Graphique............................................................................................................................ 16F. Appel de sous-programmes................................................................................................19
Sapscript et ABAP ................................................................................................................ 20 I. Structure d’un programme d’impression...............................................................................................20
A. Initialisation de l’impression du formulaire...........................................................................20B. Début d’impression..............................................................................................................20C. Arrêt d’impression...............................................................................................................20D. Fermeture du formulaire......................................................................................................21E. Impression d’ éléments de texte..........................................................................................21
II. Affectation programme à formulaire.....................................................................................................21
Edition et impression des formulaires 2/21 V1.0 - 22/05/2023
Introduction
I. Présentation
SE71 Outil Impression du formulaire Sapscript Formulaire
Sapscript est un outil intégré de saisie de texte et d’impression de formulaire destinés à de nombreuses applications : gestion comptable, administration des ventes, planification de la production, etc…
Edition et impression des formulaires 3/21 V1.0 - 22/05/2023
II. Formulaire
Le formulaire précise l’apparence et la structure d’un document.
A. Création
Pour créer un formulaire, il y a 2 possibilités : soit par copie d’un formulaire existant soit on part de rien.
NB1 : Il ne faut pas modifier un formulaire standard mais le copier et modifier la copieNB2 : Un formulaire n’est pas intermandant : utiliser la transaction SCC1
B. Multilangue et activation
On peut gérer un formulaire en plusieurs langues, mais il n' y a qu'une seule langue d'origine. La langue d'origine est le référentiel. Le contenu du formulaire est géré par langue.Pour qu'un formulaire soit valide, il est indispensable de l'activer dans sa langue d'origine.
Edition et impression des formulaires 4/21 V1.0 - 22/05/2023
C. Débuggeur
Résultat : à l'exécution du programme
Edition et impression des formulaires 5/21 V1.0 - 22/05/2023
III. Interaction programme d’impression et formulaire
(1)
(2)
(1) Mise en forme(2) Extraction des données
Edition et impression des formulaires 6/21 V1.0 - 22/05/2023
SAP
Programme d’impression
FormulaireComposeur
Document dans le spool
Sapscript
I. Eléments
Pour chaque formulaire, on définit des attributs : format, première page, paragraphe par défaut, police, taille…
Edition et impression des formulaires 7/21 V1.0 - 22/05/2023
A. Page et fenêtre
Un formulaire est composé de pages : la 1ère page et les pages suivantes.Dans chacune des page, on trouve des fenêtres.
Il existe 2 types de fenêtres : - MAIN : fenêtre principale, obligatoire, unique par page, s’édite systématiquement, sert
à afficher de texte réparti sur plusieurs pages- VAR (exemple : adresse, pied de page,etc…)
Chaque fenêtre est caractérisée par sa hauteur, sa largeur et sa position :
Edition et impression des formulaires 8/21 V1.0 - 22/05/2023
B. Format de paragraphe
Les formats de paragraphe déterminent : les polices, les tabulations, l’alignement, l’interligne, les marges gauche et droite.
C. Format de caractères Les attributs des formats de caractères sont la police, la taille, Gras/Italique, Souligné. Il s’appliquent à une partie d’une phrase.
Edition et impression des formulaires 9/21 V1.0 - 22/05/2023
II. Editeur Sapscript
A. Editeur PC ou éditeur de ligne
Editeur PC
Editeur de ligne
Edition et impression des formulaires 10/21 V1.0 - 22/05/2023
Edition et impression des formulaires 11/21 V1.0 - 22/05/2023
Editeur PC si coché
B. Texte
Barre de style Texte
C. Elément de texte
Les éléments de texte sont appelés par programmation de l’ABAP lié au formulaire
ID Nom de l’élément de texte
D. Symboles
Les symboles sont identifiés par des noms entourés des caractère &.Catégories de symboles :
- symbole système ( date, heure, mois, etc…)- symbole standard ( cf table TTDTG , ex : formule de politesse )- symbole de texte ( DEFINE &SYMBOL& = ‘XXX’ )- symbole de programme ( issus du programme Abap )
Edition et impression des formulaires 12/21 V1.0 - 22/05/2023
Options d’édition : &VAR+4& Décalage&VAR(5)& Longueur&VAR(I)& Supprime la valeur initiale&VAR(Z)& Supprime les zéros&VAR(C)& Supprime les espace vides&VAR(8.2)& Pour les zones numériques : nb d’entier et nb de décimales&’text1’VAR’text2& Insertion de texte avant ou après un symbole
Edition et impression des formulaires 13/21 V1.0 - 22/05/2023
III. Commandes de contrôles
Les commandes de contrôle dans SAPSCRIPT sont écrites et éditées dans l'éditeur de texte comme une ligne normale de texte. Cependant, elles diffèrent des lignes normales du texte :
- pour identifier une commande de contrôle, mettre le format de paragraphe /: dans la barre de style
- une seule commande par ligne
NB : Si une commande est inconnue ou si elle contient des erreurs de syntaxe, la ligne la contenant est traitée comme ligne de commentaire. Elle ni n'est interprétée ni est imprimée.
A. Reprise des textes
/ : INCLUDE nomTexte standard
Paramètres :- Object- ID- Language- Paragraph
B. Formatage des adresse
/: ADDRESS [DELIVERY] [TYPE t] [PARAGRAPH a] [PRIORITY p] [LINES l] /: TITLE title /: NAME name1[,name2[,name3[,name4]]] /: PERSON name of natural person [TITLE form of address]/: PERSONNUMBER number of the personen/: DEPARTMENT department/: STREET street name HOUSE house number/: LOCATION additional location information/: POBOX po box [CODE post code / zip code] [CITY city]/: POSTCODE post code / zip_code /: CITY city1[,city2] /: NO_UPPERCASE_FOR_CITY/: REGION county / state /: COUNTRY recipient country [LANGUAGE language code]/: COUNTRY_IN_REC_LANG /: LANG_FOR_COUNTRY language key/: FROMCOUNTRY sender country /: ADDRESSNUMBER address number/: ENDADDRESS
Cette commande permet de formater une adresse selon la convention postale du pays bénéficiaire définis dans le paramètre de PAYS. Les champs de référence sont décrits dans les structures ADRS1, ADRS2, ou ADRS3, selon le type d'adresse.
Edition et impression des formulaires 14/21 V1.0 - 22/05/2023
C. Autres commandes
/ : DEFINE &symbol& = ‘texte1’Pour assigner une valeur à une variable
/ : NEW-PAGEPour commencer une nouvelle page
SAPscript insère automatiquement une coupure de page quand la fenêtre principale d'une page (MAIN) est pleine. La commande NEW-PAGE permet de forcer une coupure de page dans le texte à un point quelconque. Le texte suivant cette commande paraît alors à une nouvelle page. La coupure de page est toujours exécutée (c'est une coupure de page sans conditions).
/ : PROTECT…/ :ENDPROTECTToute les lignes de texte contenues dans ces commandes sont imprimées sur la même page
NB : La commande ENDPROTECT sans précéder PROTECT n'a aucun effet
/ : IF condition…/ : ELSE…/ : ENDIF
Cette commande permet d'indiquer que des lignes des textes doivent être imprimées seulement quand certaines conditions sont réunies. On peut utiliser les opérateurs de comparaison suivant : = , < , > , <= , >= <>On peut combiner les opérateurs logiques suivant : NOT, AND et OR
/ : CASE symbol…/ : WHEN value1…/ : WHEN value 2…/: WHEN others…/ : ENDCASE
NB : - Les commandes CASE …ENDCASE sont indissociables - La commande WHEN others est optionnelle
Edition et impression des formulaires 15/21 V1.0 - 22/05/2023
D. Gestion des cadres
/: BOX [XPOS] [YPOS] [WIDTH] [HEIGHT] [FRAME] [INTENSITY]
Cette commande permet de dessiner une boîte à la taille indiquée et à la position indiquée
/: POSITION [XORIGIN] [YORIGIN] [WINDOW] [PAGE]
Cette commande indique les coordonnées d'origine utilisés pour le commande BOX.
/: SIZE [WIDTH] [HEIGHT] [WINDOW] [PAGE]
Cette commande indique les paramètres LARGEUR et HAUTEUR utilisés pour le commande BOX
Exemple :/: SIZE WINDOW
Place la LARGEUR et la TAILLE aux dimensions courantes de fenêtre.
/: SIZE WIDTH '3.5' CM HEIGHT '7.6' CM
Place la LARGEUR à 3,5 centimètres et à TAILLE à 7,6 centimètres.
/: POSITION WINDOW /: POSITION XORIGIN -20 TW YORIGIN -20 TW /: SIZE WIDTH +40 TW HEIGHT +40 TW /: BOX FRAME 10 TW
E. Graphique
Il faut d'abord charger l'objet graphique dans SAP -> transaction SE78
Cliquer sur
Edition et impression des formulaires 16/21 V1.0 - 22/05/2023
Et valider
Dans le formulaire, il suffit de créer une fenêtre GRAPHIQUE :
Edition et impression des formulaires 17/21 V1.0 - 22/05/2023
Récupérer le graphique créer précédemment
Edition et impression des formulaires 18/21 V1.0 - 22/05/2023
F. Appel de sous-programmes
/: PERFORM form1 IN PROGRAM prog/: USING &inv1&/: USING &inv2&/: CHANGING &outv1&/:…/: ENDPERFORMLancement des sous-programmes Abap
Dans l’ Abap :
Report prog
Form form1 tables in_tab structure itcsy Out_tab structure itcsy/
Endform.
Edition et impression des formulaires 19/21 V1.0 - 22/05/2023
Sapscript et ABAP
I. Structure d’un programme d’impression
Le programme d’impression récupère les données, définit la logique du traitement du formulaire, choisit un formulaire à imprimer, sélectionne une unité de sortie et définit les attributs d’impression ; par exemple l’impression immédiate.
A. Initialisation de l’impression du formulaire
Utilisation du module fonction OPEN_FORM
Structure ITCPO -> cf paramètre OPTIONSCette structure permet de préciser les attributs d’impression : nombre de copies, sortie immédiate, etc.
B. Début d’impression
Utilisation du module fonction START_FORMOn peut combiner des formulaires dans un ordre spool unique en utilisant START_FORM et END_FORM.
C. Arrêt d’impression
Utilisation du module fonction END_FORM
Edition et impression des formulaires 20/21 V1.0 - 22/05/2023
D. Fermeture du formulaire
Utilisation du module fonction CLOSE_FORM
E. Impression d’ éléments de texte
Utilisation du module fonction WRITE_FORM
II. Affectation programme à formulaire
Exemple : Commande client
Le formulaire et le programme d’impression sont sauvegardés dans le customizing ( SPRO)Transaction : V/G7 Voir Transaction NACT et NACE.
FIN DU DOCUMENT
Edition et impression des formulaires 21/21 V1.0 - 22/05/2023