SAP Scripts Tutorial: SE71, SE78, SCC1, VF03, SO10
โก Smart opsummering
SAP Scripts danner tekstbehandlingssystemet i SAP System, udskrivning af prรฆformateret tekst i prรฆformaterede formularer. Denne side forklarer de fem komponenter, layoutsรฆttet, kontrolkommandoer, udskrivningsprogrammet, outputtyper og transaktionerne SE71, SE78, SO10 og SCC1.

Hvad er SAP Manuskript?
SAP script er SAP Systems eget tekstbehandlingssystem. Det ligner og fรธles meget som andre fรธrende tekstbehandlingssystemer.
Det bruges til at udskrive forudformateret tekst i forudformaterede formularer.
Typiske dokumenter produceret med SAPScriptet er fakturaer, indkรธbsordrer, fรธlgesedler og kundebreve. Formularen designes รฉn gang i transaktion SE71, og et ABAP-printprogram leverer dataene under kรธrsel.
Komponenter af SAPScript
SAP Scripts bestรฅr af fem hovedkomponenter:
- En editor til at indtaste og redigere linjerne i en tekst
- Stilarter og layoutsรฆt til printlayout. Disse oprettes uafhรฆngigt af de enkelte tekster ved hjรฆlp af de tilsvarende vedligeholdelsestransaktioner og allokeres til teksterne senere
- Komponisten er et centralt outputmodul. De SAP manuskriptkomponist er usynlig udadtil
- En programmeringsgrรฆnseflade, der giver dig mulighed for at inkludere SAP script-komponenter ind i dine egne applikationsprogrammer og til at styre outputtet af layoutsรฆt inde fra programmerne
- Flere databasetabeller til lagring af tekster, stilarter og layoutsรฆt
Diagrammet ovenfor viser, hvordan disse komponenter passer sammen. Layoutsรฆttet, som er vist i midten, beskrives derefter.
Layout sรฆt
For at udskrive dokumenter ved hjรฆlp af programmeringsgrรฆnsefladen har R/3-applikationsprogrammer brug for sรฅkaldte layoutsรฆt (en slags form). SAP script et layoutsรฆt beskriver layoutet af de enkelte printsider og bruger tekstelementer til at levere definerbare outputblokke, som et printprogram kan kalde. Et layoutsรฆt kan defineres som et sidedesign til et dokument
Layoutsรฆttet indeholder ikke data i sig selv. Valget af data til dokumentet sker via udskrivningsprogrammet. Udskrivningsprogrammet vรฆlger dataene fra databasetabellen og sender dem til layoutsรฆttet. Nรฅr udskrivningsprogrammet udfรธres, udskrives dokumentet pรฅ skรฆrmen, printeren.
Normalt en SAPScriptlayout bestรฅr af fรธlgende komponenter
- Overskriftsdata: Header data bruges til information og kontrol af SAP trykning. Overskriftsdataene bestรฅr af 2 dele โ Enhedsuafhรฆngig โ Gemmer information som startside, standardafsnit, sprogattributter osv. Og enhedsafhรฆngig gemmer information som sideformat, orienteringslinjer pr. tomme osv.
- Afsnits- og tegnformater: Afsnit formateres ved hjรฆlp af forskellige attributter. Standardafsnitsattributter angiver f.eks. Venstre eller Hรธjre margen, Justering, Linjeafstand osv. Skrifttypeattributter angiver Skrifttypefamilie, Skriftstรธrrelse osv. Tegnformater gรธr det muligt at formatere hele tekstblokke i et afsnit
- Windows og tekstelementer: Windows er individuelle tekstomrรฅder (hovedadresse, dato, sidefod) pรฅ en side . Det hjรฆlper med at kombinere informationen i et dokument i bestemte grupper og fรฅ hver gruppe til at vises pรฅ den udskrevne side i et individuelt omrรฅde. Du kan definere tekstelementer (vinduetekster) for hvert vindue. Printprogrammet tilgรฅr tekstelementer efter navn, formaterer dem og udskriver dem i det respektive vindue. Afsnittet og de anvendte tegnformater skal defineres i formularen.
- Sider: De er individuelle sider i et dokument og skal have et unikt navn. Du vil ofte finde forskellige layouts for de enkelte sider: Den fรธrste side af en faktura adskiller sig fra de efterfรธlgende sider, hvor du ikke behรธver at gentage generelle oplysninger, sรฅsom adresse eller kundedata.
- Side Windows: Mens du definerer vinduer og sider, bestemmer du endnu ikke positionen og afstanden mellem de tekster, der skal udskrives. Et sidevindue definerer det rektangulรฆre outputomrรฅde i outputmediet ved at angive den รธverste venstre kant af outputomrรฅdet og dets bredde og hรธjde
Kontrolkommandoer
Formรฅlet med "kontrolkommandoer" er at tillade kontrol af outputformateringen. Disse kommandoer fortolkes ikke af SAP script editor, men sendes videre til SAP script Komponist til behandling. Dette omfatter f.eks. linje- og sideformatering, formatering af tekst i henhold til afsnittet og angivne tegnformater.
Syntaks
Enter /: in the paragraph format
Eksempler
- NY-SIDE โ Eksplicit sideskift
- PROTECT โฆโฆโฆENDPROTECT โ For at udskrive hele afsnittet pรฅ รฉn side.
- INKLUDERE โ At inkludere indholdet af en anden tekst i den aktuelle tekst
- UDFรR โ For at kalde en underrutine til ethvert ABAP-program
Udskriv program
Udfรธrelsen af โโscript sker gennem en ABAP program, som omtales som Print Program. Hvert printprogram skal have en ENTRY-formular, som vil blive kaldt fra tilpasning.
For en standardkonfiguration kan vi se formularnavnet (scriptnavn), printprogramnavn og outputtype i tabellen TNAPR. Udskrivningsprogrammet bruger formularkontrolfunktionerne til at kalde scriptet.
Udskrivningsprogrammet kalder enten alle eller nogle af formularkontrolfunktionerne for at udfรธre scriptet
- OPEN_FORM (obligatorisk) ร bner layoutsรฆttets output
- CLOSE_FORM (obligatorisk) Afslutter layoutsรฆttets output
- START_FORM (Valgfrit) Starter et nyt layoutsรฆt
- WRITE_FORM (obligatorisk) Kalder et layoutsรฆtelement
- END_FORM (Valgfrit) Afslutter det aktuelle layoutsรฆt
Sรฅdan oprettes en SAPmanuskriptformular i SE71
Et fungerende SAPScriptoutputtet krรฆver en formular, et udskrivningsprogram og en opgave i tilpasning. Trinene nedenfor opbygger en formular ud fra en tom formular.
- Opret formularen: I SE71 skal du indtaste et formularnavn og et sprog, og derefter vรฆlge Opret. Udfyld headerdataene med startsiden, standardafsnittet og sideformatet.
- Definer afsnit- og tegnformaterne: Opret mindst รฉt โโafsnitsformat, for eksempel AS til en standardlinje, fordi hvert tekstelement refererer til et afsnitsformat.
- Opret siderne: Definer en fรธrste side, for eksempel FรRST, og indstil dens nรฆste side til NรSTE, sรฅ lรฆngere dokumenter fortsรฆtter pรฅ et andet layout.
- Opret vinduerne og sidevinduerne: Definer vinduerne som f.eks. HEADER, MAIN og FOOTER, placer derefter hvert af dem pรฅ siden, og indtast den รธverste venstre kant, bredden og hรธjden.
- Skriv tekstelementerne: ร bn teksteditoren i et vindue, og marker hver blok med /E efterfulgt af elementnavnet. Udskriftsprogrammet kalder elementet med det navn.
- Aktivรฉr formularen og skriv udskrivningsprogrammet: Aktiver formularen, og kald derefter formularkontrolfunktionerne fra ABAP-programmet som vist nedenfor.
- Tildel outputtypen: Indtast formularnavnet, udskriftsprogrammet og ENTRY-rutinen i tabellen TNAPR via applikationens outputtilpasning, for eksempel NACE.
CALL FUNCTION 'OPEN_FORM' EXPORTING form = 'Z_INVOICE' language = sy-langu device = 'PRINTER'. * Print the element ITEM_LINE in the window MAIN LOOP AT lt_items INTO ls_item. CALL FUNCTION 'WRITE_FORM' EXPORTING element = 'ITEM_LINE' window = 'MAIN' function = 'SET' type = 'BODY'. ENDLOOP. CALL FUNCTION 'CLOSE_FORM'.
โ ๏ธ Advarsel: WRITE_FORM udskriver kun de felter, der er udfyldt i kaldeรธjeblikket. Udfyld arbejdsomrรฅdet fรธr kaldet, fordi formularen lรฆser de globale felter i udskriftsprogrammet, ikke parametrene i funktionsmodulet.
Outputtyper
Outputtypen kan angive, en udskrevet formular, som du skal bruge til intern brug, eller en formular, som du vil sende til en kunde eller leverandรธr. Outputtypen kan ogsรฅ vรฆre en intern elektronisk postmeddelelse, som du รธnsker at sende til personale i en anden afdeling.
For eksempel kan "Udskriv" klassificeres som รฉn outputtype af et faktureringsdokument, dvs. nรฅr denne outputtype udfรธres, udskrives faktureringsdokumentet. Pรฅ samme mรฅde kan "Fax" vรฆre en outputtype, dvs. nรฅr denne outputtype udfรธres, sendes en fax af faktureringsdokumentet
Alle outputtyper for ethvert dokument (f.eks. faktureringsdokument) vil blive gemt i tabellen NAST. Outputtyper udfรธres gennem programmet RSNAST00 .
Eksempel: Outputtype i et faktureringsdokument-
- Gรฅ til VF03
- Indtast faktureringsbilagsnummer, og tryk pรฅ Enter igen
- Vรฆlg Output under menuen Goto -> Header
- Her er Z101 en outputtype af et printoutput
Skรฆrmbilledet viser outputskรฆrmen for transaktion VF03, hvor outputtypen Z101 er knyttet til fakturadokumentet.
Standard tekster og grafik
Standardtekster til din rapport kan oprettes ved hjรฆlp af transaktion SO10
Grafik og printermakroer uploades med indberette RSTXLDMC til individuelle standardtekstdokumenter eller gennem transaktion SE78. Grafik uploades i formatet โBaseline TIFF 6.0โ (.tif-filer pรฅ pc)
SAP Script- og standardtekstelementer kan eksporteres eller importeres mellem to systemer ved hjรฆlp af RSTXSCRP-programmet
Kopiering af scripts pรฅ tvรฆrs af klienter:
SAP Script er et klientafhรฆngigt objekt. I modsรฆtning til programmer er รฆndringer udfรธrt til SAP script i รฉn klient vil ikke blive afspejlet i andre klienter. For at kopiere script fra en klient til en anden, gรฅ til SE71 og brug muligheden "Kopier fra klient" tilgรฆngelig under menuen Hjรฆlpeprogrammer eller importer transportanmodningen, hvori scriptet er gemt, fra den oprindelige klient, der bruger transaktionen SCC1.
Vigtige punkter at bemรฆrke
- SAP script vedligeholder ingen versioner. Sรฅ nรฅr du รฆndrer SAP script , sรธrg for, at รฆndringerne er veldokumenterede i scriptet. Dette gรฆlder ogsรฅ standardteksterne.
- Outputtet af formularen vil afvige, nรฅr det ses pรฅ skรฆrmen og pรฅ printeren. Sรฅ test altid outputtet af scriptet pรฅ printeren.
SAPscript vs. Smart Forms
SAPscript er den รฆldste af de to formteknologier i SAP, og hver ny formular er normalt bygget med Smarte formularerTabellen nedenfor viser hvorfor.
| Kriterier | SAPscript | Smarte formularer |
|---|---|---|
| transaktion | SE71 | SMARTFORMER |
| Klientafhรฆngighed | Klientafhรฆngig, kopieret med SCC1 | Klientuafhรฆngig |
| Hovedvindue | Der krรฆves prรฆcis รฉt hovedvindue | Ikke obligatorisk, og flere hovedvinduer er tilladt |
| Programlogik | Skrevet i det separate printprogram | Delvist indbygget i formularen, som genererer sit eget funktionsmodul |
| Outputformater | Udskriv, fax og send med post | Udskriv, fax, mail og XML- eller HTML-output |
| Versionsstyring | Ingen, sรฅ รฆndringer skal dokumenteres manuelt | Tilgรฆngelig via arbejdsbรฆnken |
SAPskriften er fortsat meget udbredt, fordi mange standarder SAP formularer og deres printprogrammer er stadig afhรฆngige af det, og fordi en klientafhรฆngig formular kan tilpasses pr. klient.


