Moduli intelligenti dentro SAP ABAP
โก Riepilogo intelligente
Moduli intelligenti dentro SAP Gli sviluppatori ABAP creano e gestiscono moduli per la stampa in massa, con output verso una stampante, un fax, un'e-mail o Internet. Questa pagina illustra l'architettura, i nodi di Form Builder, le finestre, le tabelle, i modelli, gli stili e il modulo funzione generato.

Che cosa sono i moduli intelligenti in SAP ABAP?
SAP Smart Forms viene utilizzato per creare e gestire moduli per la stampa di massa SAP Sistemi.Come mezzo di output SAP Smart Forms supporta una stampante, un fax, una posta elettronica o Internet (utilizzando l'output XML generato).
SAP ha introdotto SmartForms nel 1998 per superare le limitazioni presenti in SAP Script. Gli SmartForm sono piรน facili da sviluppare, mantenere e trasportare rispetto a SAP Script.
Confronto tra Smart Forms e SapScripts
- In SmartForms sono possibili piรน formati di pagina, ma non รจ questo il caso SAP Script
- ร possibile avere uno SmartForm senza una finestra principale.
- Le routine possono essere scritte nello strumento SmartForms.
- SmartForms genera un modulo funzione quando attivato.
- Le etichette non possono essere create in SmartForms.
| Criteri | Moduli intelligenti | SAPcopione |
|---|---|---|
| Formati di pagina | Diversi formati di pagina in un unico modulo | Formato di una pagina per modulo |
| Finestra principale | Non obbligatorio | ร necessaria esattamente una finestra principale |
| Routine | Scritto all'interno del modulo stesso | Scritto nel programma di stampa separato |
| Attivazione | Genera un modulo funzione | Non viene generato alcun modulo funzione |
| da abbigliamento | Non puรฒ essere creato | Puรฒ essere creato |
Vantaggi dei moduli intelligenti
- Consentono di adattare i moduli senza alcuna conoscenza di programmazione grazie a un'interfaccia utente interamente grafica.
- Quando si attiva lo smart form il sistema genera automaticamente il modulo funzione e in fase di runtime .
- Per apportare eventuali modifiche dobbiamo utilizzare Drag & Drop, Taglia e Incolla. Queste azioni non includono la scrittura di righe di codice o l'utilizzo di un linguaggio di script.
- Possiamo inserire tabelle statiche e dinamiche. Questi includono l'avanzamento riga nelle singole celle della tabella, l'attivazione di eventi per le intestazioni e i totali parziali della tabella e l'ordinamento dei dati prima dell'output.
- I moduli intelligenti consentono all'utente di includere grafica, che puรฒ essere visualizzata come parte del modulo o come grafica di sfondo. Durante la stampa l'utente puรฒ sopprimere la grafica di sfondo come e quando necessario.
- La Pubblicazione Web รจ possibile utilizzando il file generato XML produzione
Architecnica di SAP Forma intelligente
Il diagramma architetturale mostra i tre livelli coinvolti. Il modulo viene progettato nel Form Builder, l'attivazione genera il modulo funzione e il programma di stampa richiama tale modulo con i dati dell'applicazione. Di seguito vengono descritti i passaggi di progettazione del primo livello.
Guida agli Smartform
Esaminiamolo SAP sistema-
- Inserisci la transazione SMARTFORM nella casella del codice transazione.
- Nella schermata successiva, inserisci un nome per il modulo e fai clic su Crea
La schermata successiva รจ divisa in tre sezioni:
Finestra di navigazione sono costituiti da nodi e sottonodi. Contengono tutti gli elementi (testo, finestra, ecc.) che appartengono ai moduli SAP
- Finestra di manutenzione mostra gli attributi degli elementi
- Stampante per moduli la finestra mostra il layout della pagina
Ogni volta che creiamo moduli intelligenti, SAP crea/genera un modulo funzione. A differenza di SAPscript, SAP I MODULI ti consentono di cambiare lingua.
Nella finestra di navigazione troverai
Dichiarazioni globali sui dati : i dati qui definiti possono essere utilizzati in tutto lo smartform per scopi di codifica.
Modulo interfaccia : Qui vengono definiti tutti i dati che verranno passati allo smartform dal programma Stampa.
Facendo clic con il tasto destro sulle pagine sarร possibile creare una nuova pagina, finestra, grafica o indirizzo.
La stampa avverrร in base al campo 'pagina successiva'.
Ma l'elaborazione avverrร secondo la sequenza nella finestra di navigazione!
Per l'immagine di sfondo e la grafica รจ possibile prelevare immagini bitmap in bianco e nero o a colori e memorizzarle sotto forma di testi standard. Puoi fare una deviazione dalla schermata smartform e aprire la schermata Grafica modulo. Codice transazione: Se78
Impostazione della grafica nella finestra Smart Form-
Windows nei moduli intelligenti
Ci sono due tipi di Windows
- Principale
- Secondario
Punti importanti da notare
- Non puoi avere piรน di 1 finestra principale in una pagina. Puoi avere piรน finestre secondarie
- Qualunque cosa tu stampi nella finestra secondaria...deve essere statica. (Se hai 20 righe in un PO e c'รจ un vincolo di pagina, le righe vengono riportate alla pagina successiva nella finestra principale. Ad esempio, in un tipo di contenuto predecessore e successore, verranno stampate in sequenza nella finestra principale. Questo non รจ consentito nelle finestre secondarie.
All'interno della finestra principale possiamo aggiungere testo come introduzione per personalizzare l'output del modulo.
Le opzioni di output su ciascuna finestra determinano la dimensione della linea, la larghezza, i colori e lo sfondo da inserire.
Smartforms offre la possibilitร di fornire il numero di indirizzo che viene mantenuto nella gestione centrale degli indirizzi. L'indirizzo verrร preso direttamente dalla tabella ADRC e verrร popolato nel modulo.
In Smartforms sono disponibili due diversi editor, vale a dire: Editor normale
e l'editor grafico.
Questa impostazione puรฒ essere modificata utilizzando l'editor Configura in Utilitร .
Tabelle in una finestra
In Table Painter, puoi disegnare il formato secondo i requisiti del cliente (ad esempio Intestazione, Sottointestazione, Articolo, Totale parziale, Totale generale ecc.)
ร possibile utilizzare il layout della tabella per determinare:
- Il numero di linee e celle
- L'altezza di ogni riga
- La larghezza di ogni cella
- L'allineamento della tabella nella finestra
La tabella mostra i diversi tipi di linea che verranno utilizzati nella tabella. I tipi di linea definiscono la dimensione di ciascuna cella e il numero di celle in ciascuna riga.
Flusso di programmazione dei moduli intelligenti
Quando un SAP Viene creato il modello Smart Form, un utente crea il layout del modulo, definisce i campi richiesti, le condizioni e le istruzioni di programmazione speciali nel modello Smart Form utilizzando Smart Form Builder.
Una volta completata la progettazione del modulo, il modulo deve essere attivato prima che possa essere testato o accessibile dai programmi di stampa. L'attivazione del modulo avvia la generazione di un modulo funzione che gestisce tutta l'elaborazione del modulo.
Questo modulo funzionale interagisce con il programma applicativo/programma di stampa per creare l'output nel supporto di output definito dall'utente per il dispositivo specificato.
In caso di moduli intelligenti, utilizziamo 2 moduli funzionali per l'elaborazione del modulo intelligente. Al primo function module passiamo il nome dello smart form come parametro di importazione. Questo restituisce quindi il nome del modulo funzione generato dinamicamente che chiamerร effettivamente lo smartform.
Il nome dello smartform puรฒ essere passato alla funzione Modulo โ 'SSF_FUNCTION_MODULE_NAME'
Ciรฒ restituirร il nome del modulo funzione dello smartform a cui si fa riferimento.
Il programma Print chiamerร la FM 'SSF_FUNCTION_MODULE_NAME' per ottenere il nome del modulo funzione in fase di runtime. Successivamente chiamerร il modulo Funzione cosรฌ ottenuto per eseguire lo smartform.
Come richiamare un modulo intelligente da un programma di stampa
La chiamata in due fasi descritta sopra รจ sempre scritta nello stesso modo. Il programma prima risolve il nome generato, poi lo esegue con i dati dell'applicazione.
- Risolvi il nome del modulo funzione: Passa il nome del modulo a SSF_FUNCTION_MODULE_NAME. Il nome generato cambia a seconda del sistema, quindi non deve mai essere inserito in modo statico.
- Richiamare dinamicamente il modulo generato: Utilizzare CALL FUNCTION con la variabile che contiene il nome risolto e passare i dati tramite i parametri definiti nell'interfaccia del modulo.
- Controllare l'uscita: Compilare la struttura di controllo SSFCTRLOP per sopprimere la finestra di dialogo di stampa o per richiedere un'anteprima, e compilare SSFCOMPOP con il dispositivo di output.
- Gestire le eccezioni: Il modulo generato genera errori di formattazione, errori interni, errori di invio e errori utente, quindi รจ necessario controllare SY-SUBRC dopo la chiamata.
DATA: lv_fm_name TYPE rs38l_fnam, ls_control TYPE ssfctrlop, ls_output TYPE ssfcompop. * 1. Get the name of the generated function module CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME' EXPORTING formname = 'Z_SMART_INVOICE' IMPORTING fm_name = lv_fm_name EXCEPTIONS no_form = 1 no_function_module = 2 OTHERS = 3. IF sy-subrc <> 0. MESSAGE e001(zsf). " Form not found ENDIF. * 2. Call the generated module with the form data ls_control-no_dialog = 'X'. ls_control-preview = 'X'. CALL FUNCTION lv_fm_name EXPORTING control_parameters = ls_control output_options = ls_output is_header = ls_header TABLES it_items = lt_items EXCEPTIONS formatting_error = 1 internal_error = 2 send_error = 3 user_canceled = 4 OTHERS = 5.
โ ๏ธ Attenzione: Il nome del modulo funzione generato, ad esempio /1BCDWB/SF00000123, รจ diverso in ogni sistema. Risolverlo sempre con SSF_FUNCTION_MODULE_NAME, altrimenti il โโprogramma fallisce dopo il trasporto.
Modelli
ร possibile utilizzare un modello quando si conosce la dimensione esatta dell'output o quando l'output รจ in un formato fisso.
Ad esempio, modulo fiscale/assegni/modulo aereo/biglietto ferroviario: tutti questi utilizzano modelli.
La grande differenza tra tabella e template รจ che in una tabella l'altezza cambia dinamicamente. In un template, una riga viene chiamata "linea".
Stili INTELLIGENTI
Uno stile intelligente contiene:
- Dati di intestazione contenenti i valori predefiniti di uno stile intelligente
- Formati di paragrafo inclusi rientri e spaziatura, attributi di carattere, tabulazioni, struttura e numerazione
- Formati di caratteri inclusi effetti (apice, pedice), codice a barre e attributi dei caratteri
- Colori e sottolineature per un formato di paragrafo o carattere
ร possibile utilizzare la transazione "smartforms" / "smartstyles" per creare uno stile intelligente.
Suggerimento: Assegna lo stile Smart Style negli attributi del modulo anzichรฉ a ciascun nodo di testo. In questo modo, una singola modifica allo stile si rifletterร su tutti i paragrafi del modulo.
Questo รจ tutto per questo tutorial






















