Script SAP - Programma di stampa
Negli script SAP, Print Programviene utilizzato per stampare il modulo effettivo e ottenere i dati dalle tabelle del database, scegliere un modulo e stampare gli elementi di testo in un formato definito. Recupera i dati dal database e li combina con l'input dell'utente, formatta i dati e li stampa.
Tutti i programmi di stampa e i moduli vengono memorizzati nella tabella TNAPR.
Diversi moduli funzionali vengono utilizzati nel programma di stampa. Per avviare un programma di stampa, viene utilizzato il modulo funzionale OPEN_FORM e per terminare il programma viene utilizzato il modulo funzionale CLOSE_FORM.
OPEN_FORM- Nel programma di stampa, questa funzione deve essere chiamata prima di poter eseguire qualsiasi stampa. Si specifica il nome del modulo e la lingua di stampa.
CALL FUNCTION 'OPEN_FORM'
START_FORM - Questa funzione è chiamata per utilizzare moduli diversi con caratteristiche simili in un'unica richiesta.
CALL FUNCTION ’START_FORM’
WRITE_FORM - Questa funzione viene utilizzata per scrivere testo in una finestra nel modulo utilizzando elementi di testo.
CALL FUNCTION ‘WRITE_FORM’
CONTROL_FORM - Questa funzione viene utilizzata per inserire comandi di controllo SAP Script in un programma ABAP.
CALL FUNCTION ‘CONTROL_FORM’
END_FORM - Questa funzione viene chiamata alla fine e non ha parametri di esportazione.
CALL FUNCTION ‘END_FORM’
CLOSE_FORM - Per visualizzare il modulo standard e il programma di stampa standard, eseguire Transaction Code: NACE
Immettere i tipi di applicazione e fare clic sul tipo di output in alto.
Nella schermata seguente, puoi vedere il nome dell'applicazione per il servizio selezionato.
Programma di stampa - Esempio
Di seguito è riportato un programma di stampa di esempio che crea una fattura con informazioni relative alla società come dati del cliente, data, prenotazione del volo, ecc.
Sezione 1 - Acquisizione dei dati dei clienti
TABLES: zcustom, zbook, zpfli.
DATA: bookings like zbook...
select * from...
/In this section, you are reading the data from tables in database./
Sezione 2 - Apri modulo
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./
Nel modulo funzione sopra, il parametro -
FORM mostra il nome del modulo.
DEVICE può essere PRINTER (stampa utilizzando spool), TELEFAX (output fax) o uno SCHERMO (output su schermo)
OPTIONS mostra una struttura di tipo ITCPO per controllare i vari attributi - Anteprima di stampa, numero di copie.
Sezione 3 - Stampa intestazione tabella
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 Il modulo funzione mostra il 'elemento di testo' da stampare e 'FINESTRA' mostra quale finestra del modulo deve essere stampato.
TYPE mostra l'area di output della finestra come TOP, BOTTOM o BODY.
FUNCTION indica che il testo deve essere sostituito, aggiunto o aggiunto.
Sezione 4 - Stampa delle prenotazioni dei clienti
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./
Sezione 5 - Chiudi modulo
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
* RESULT =
EXCEPTIONS
UNOPENED = 1
OTHERS = 5
/To end the Print Program/
Alla fine chiami questo modulo funzione e non ha parametri di esportazione.