SAP Handleiding voor scripts: SE71, SE78, SCC1, VF03, SO10
⚡ Slimme samenvatting
SAP Scripts vormen het tekstverwerkingssysteem van de SAP Systeem voor het afdrukken van vooraf opgemaakte tekst in vooraf opgemaakte formulieren. Deze pagina beschrijft de vijf componenten, de lay-outset, besturingsopdrachten, het afdrukprogramma, uitvoertypen en de transacties SE71, SE78, SO10 en SCC1.
Wat is SAP Script?
SAP script is het SAP Het eigen tekstverwerkingssysteem van het systeem. Het lijkt en voelt veel op andere toonaangevende tekstverwerkingssystemen.
Het wordt gebruikt om vooraf opgemaakte tekst in vooraf opgemaakte formulieren af te drukken.
Typische documenten geproduceerd met SAPHet script omvat facturen, inkooporders, leveringsbonnen en klantbrieven. Het formulier wordt eenmalig ontworpen in transactie SE71, waarna een ABAP-printprogramma de gegevens tijdens de uitvoering levert.
Onderdelen van SAPScript
SAP Scripts bestaan uit vijf hoofdcomponenten:
- Een editor voor het invoeren en bewerken van de regels van een tekst
- Stijlen en lay-outsets voor afdruklay-out. Deze worden onafhankelijk van de afzonderlijke teksten gemaakt met behulp van de bijbehorende onderhoudstransacties en worden later aan de teksten toegewezen
- De componist is een centrale uitvoermodule. De SAP scriptcomponist is onzichtbaar voor de buitenwereld
- Een programmeerinterface waarmee u kunt opnemen SAP scriptcomponenten in uw eigen applicatieprogramma's en om de uitvoer van lay-outsets vanuit de programma's te besturen
- Verschillende databasetabellen voor het opslaan van teksten, stijlen en lay-outsets
Het bovenstaande diagram laat zien hoe deze componenten in elkaar passen. De lay-out, die in het midden is weergegeven, wordt hierna beschreven.
Indeling ingesteld
Om documenten via de programmeerinterface uit te voeren, hebben R/3-applicatieprogramma's zogenaamde lay-outsets (een soort formulier) nodig SAP script Een lay-outset beschrijft de lay-out van de afzonderlijke afdrukpagina's en gebruikt tekstelementen om definieerbare uitvoerblokken te leveren, die een printprogramma kan oproepen. Een lay-outset kan worden gedefinieerd als een paginaontwerp voor een document
Een opmaakset bevat op zichzelf geen gegevens. De gegevens voor het document worden geselecteerd door het afdrukprogramma. Dit programma selecteert de gegevens uit een databasetabel en voert deze in de opmaakset in. Wanneer het afdrukprogramma wordt uitgevoerd, wordt het document op het scherm of de printer afgedrukt.
Meestal een SAPScriptlay-out bestaat uit de volgende componenten
- Kopgegevens: Headergegevens worden gebruikt voor informatie en controle van SAP afdrukken. De headergegevens bestaan uit 2 delen: Apparaatonafhankelijk – Slaat informatie op zoals startpagina, standaardparagraaf, taalkenmerken enz. En apparaatafhankelijk slaat informatie op zoals paginaformaat, oriëntatielijnen per inch enz.
- Alinea- en tekenformaten: Alinea's worden opgemaakt met verschillende attributen. Standaard alinea-attributen specificeren bijvoorbeeld de linker- of rechtermarge, uitlijning, regelafstand enz. Lettertype-attributen specificeren lettertypefamilie, lettergrootte enz. Met tekenformaten kunnen hele tekstblokken binnen een alinea worden opgemaakt
- Windows en tekstelementen: Windows zijn individuele tekstgebieden (kopadres, datum, voettekst) op een pagina. Het helpt de informatie in een document in bepaalde groepen te combineren en ervoor te zorgen dat elke groep in een afzonderlijk gebied op de afgedrukte pagina verschijnt. Voor elk venster kunt u tekstelementen (vensterteksten) definiëren. Het printprogramma benadert tekstelementen op naam, formatteert ze en drukt ze af in het betreffende venster. De gebruikte alinea- en tekenformaten moeten in het formulier worden gedefinieerd.
- Pagina's: Het zijn afzonderlijke pagina's van een document en moeten een unieke naam hebben. Vaak vind je per pagina een andere indeling: De eerste pagina van een factuur wijkt af van de volgende pagina's, waarop je algemene informatie, zoals adres- of klantgegevens, niet hoeft te herhalen.
- Pagina Windows: Bij het definiëren van vensters en pagina's bepaalt u nog niet de positie en de afstand van de uit te voeren teksten. Een paginavenster definieert het rechthoekige uitvoergebied in het uitvoermedium door de linkerbovenrand van het uitvoergebied en de breedte en hoogte ervan op te geven
Besturingsopdrachten
Het doel van “controleopdrachten” is om controle over de uitvoeropmaak mogelijk te maken. Deze opdrachten worden niet geïnterpreteerd door de SAP scripteditor, maar worden doorgegeven aan de SAP script Composer voor verwerking. Dit omvat bijvoorbeeld regel- en paginaopmaak, de opmaak van tekst volgens de opgegeven alinea- en tekenopmaak.
Syntaxis
Enter /: in the paragraph format
Voorbeelden
- NIEUWE PAGINA – Expliciet pagina-einde
- PROTECT ………ENDPROTECT – Om een volledige alinea op één pagina af te drukken.
- INCLUDE – Om de inhoud van een andere tekst in de huidige tekst op te nemen
- PERFORM – Om een subroutine van een ABAP-programma aan te roepen
Printprogramma
De uitvoering van het script gebeurt via een ABAP-programma, ook wel Printprogramma genoemd. Elk printprogramma moet een ENTRY-formulier hebben, dat vanuit maatwerk wordt opgeroepen.
Voor een standaardconfiguratie kunnen we de formuliernaam (scriptnaam), de naam van het afdrukprogramma en het uitvoertype zien in de tabel TNAPR. Het afdrukprogramma gebruikt de formulierbesturingsfuncties om het script aan te roepen.
Het afdrukprogramma roept alle of enkele formuliercontrolefuncties aan om het script uit te voeren
- OPEN_FORM (Verplicht) Opent de uitvoer van de lay-outset
- CLOSE_FORM (Verplicht) Beëindigt de uitvoer van de lay-outset
- START_FORM (Optioneel) Start een nieuwe lay-outset
- WRITE_FORM (Verplicht) Roept een lay-outsetelement aan
- END_FORM (Optioneel) Beëindigt de huidige lay-outset
Hoe maak je een SAPScriptformulier in SE71
Een werkend SAPVoor de scriptuitvoer zijn een formulier, een afdrukprogramma en een toewijzing in de aanpassingsinstellingen nodig. De onderstaande stappen laten zien hoe je er een kunt maken op basis van een leeg formulier.
- Maak het formulier aan: Voer in SE71 een formuliernaam en een taal in en kies vervolgens 'Maken'. Vul de koptekstgegevens in met de startpagina, de standaardalinea en de pagina-indeling.
- Definieer de alinea- en tekenopmaak: Maak ten minste één alinea-opmaak aan, bijvoorbeeld AS voor een standaardregel, omdat elk tekstelement naar een alinea-opmaak verwijst.
- Maak de pagina's aan: Definieer een eerste pagina, bijvoorbeeld FIRST, en stel de volgende pagina in op NEXT, zodat langere documenten op een tweede pagina verdergaan.
- Maak de vensters en paginavensters aan: Definieer de vensters, zoals HEADER, MAIN en FOOTER, plaats ze vervolgens op de pagina en voer de linkerbovenhoek, de breedte en de hoogte in.
- Schrijf de tekstelementen: Open de teksteditor van een venster en markeer elk blok met /E gevolgd door de elementnaam. Het printprogramma roept het element aan met die naam.
- Activeer het formulier en schrijf het afdrukprogramma: Activeer het formulier en roep vervolgens de formulierbesturingsfuncties aan vanuit het ABAP-programma, zoals hieronder weergegeven.
- Wijs het uitvoertype toe: Voer de formuliernaam, het afdrukprogramma en de invoerroutine in tabel TNAPR in via de uitvoerinstellingen van de applicatie, bijvoorbeeld 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'.
⚠️ Waarschuwing: WRITE_FORM print alleen de velden die op het moment van de aanroep zijn ingevuld. Vul het werkgebied in vóór de aanroep, omdat het formulier de globale velden van het afdrukprogramma leest, niet de parameters van de functiemodule.
Uitvoertypen
Het outputtype kan specificeren, een afgedrukt formulier dat u nodig hebt voor intern gebruik of een formulier dat u naar een klant of leverancier wilt sturen. Het outputtype kan ook een intern e-mailbericht zijn dat u naar personeel in een andere afdeling wilt sturen.
Bijvoorbeeld, "Print out" kan worden geclassificeerd als een output type van een factuurdocument, d.w.z. wanneer dit output type wordt uitgevoerd, wordt het factuurdocument afgedrukt. Op dezelfde manier kan "Fax" een output type zijn, d.w.z. wanneer dit output type wordt uitgevoerd, wordt een fax van het factuurdocument verzonden.
Alle uitvoertypen voor een document (bijvoorbeeld een factuurdocument) worden opgeslagen in de tabel NAST. Uitvoertypen worden uitgevoerd via het programma RSNAST00.
Voorbeeld: Uitvoertype in een factuurdocument-
- Ga naar VF03
- Voer het factuurdocumentnummer in en druk nogmaals op enter
- Kies Uitvoer onder het menu Ga naar -> Koptekst
- Hier is Z101 een uitvoertype van een afdrukuitvoer
De schermafbeelding toont het uitvoerscherm van transactie VF03, waar uitvoertype Z101 aan het factuurdocument is gekoppeld.
Standaardteksten en afbeeldingen
Via transactie kunnen standaardteksten voor uw rapport worden aangemaakt SO10
Grafische en printermacro's worden geüpload met verslag RSTXLDMC in individuele standaardtekstdocumenten of via transactie SE78. De afbeeldingen worden geüpload in het formaat “Baseline TIFF 6.0” (.tif-bestanden op pc).
SAP Script- en standaardtekstelementen kunnen tussen twee systemen worden geëxporteerd of geïmporteerd met behulp van het RSTXSCRP-programma
Scripts kopiëren tussen clients:
SAP Script is een client-afhankelijk object. In tegenstelling tot programma's worden er wijzigingen aangebracht SAP script in één client zal niet worden weerspiegeld in andere clients. Voor het kopiëren van scripts van de ene client naar de andere gaat u naar SE71 en gebruik de optie "Kopiëren van client" beschikbaar onder het menu Hulpprogramma's of importeer het transportverzoek, waarin het script is opgeslagen, van de oorspronkelijke client met behulp van de transactie SCC1.
Belangrijke aandachtspunten
- SAP script onderhoudt geen versies. Dus bij het wijzigen van de SAP script, zorg ervoor dat de wijzigingen goed in het script worden gedocumenteerd. Dit geldt ook voor de standaardteksten.
- De uitvoer van het formulier zal verschillen op het scherm en op de printer. Test dus altijd de uitvoer van het script op de printer.
SAPScript versus Smart Forms
SAPScript is de oudere van de twee formuliertechnologieën. SAPen elk nieuw formulier wordt normaal gesproken gebouwd met Slimme formulierenDe tabel hieronder laat zien waarom.
| criteria | SAPscript | Slimme formulieren |
|---|---|---|
| transactie | SE71 | SMARTFORMEN |
| Clientafhankelijkheid | Clientafhankelijk, gekopieerd met SCC1 | Klantonafhankelijk |
| Hoofd venster | Er is precies één hoofdvenster nodig. | Niet verplicht, en meerdere hoofdvensters zijn toegestaan. |
| Programmalogica | Geschreven in het aparte drukprogramma. | Gedeeltelijk ingebouwd in het formulier, dat zijn eigen functiemodule genereert. |
| Uitvoerformaten | Afdrukken, faxen en verzenden per post. | Afdrukken, faxen, verzenden per post en uitvoer in XML of HTML. |
| Versiemanagement | Geen, dus wijzigingen moeten handmatig worden gedocumenteerd. | Beschikbaar via de werkbank |
SAPScript blijft wijdverbreid in gebruik, omdat veel standaarden SAP Formulieren en de bijbehorende printprogramma's zijn er nog steeds van afhankelijk, omdat een klantspecifiek formulier per klant kan worden aangepast.



