Diferența dintre ieșirea utilizatorului și ieșirea clientului în SAP
⚡ Rezumat inteligent
Ieșiri utilizator și ieșiri client în SAP ABAP sunt opțiuni de îmbunătățire care adaugă funcționalități personalizate programelor standard fără a modifica SAP cod. Această pagină explică tipurile de ieșiri ale clienților, exemple concrete, tranzacțiile SMOD și CMOD, ieșirile utilizatorilor și diferențele dintre cele două tehnici.
Ce înseamnă Ieșirile Clienților?
Ieșirile clienților sunt „cârlige” furnizate de către SAP în cadrul multor programe, ecrane și meniuri standard pe care clienții pot "atârna" funcționalitate personalizată pentru a satisface cerințele afacerii. Mai multe despre asta imediat…
Principalul avantaj este că standardul SAP obiectul nu este niciodată modificat. Codul personalizat se află într-un ecran inclus sau subecran rezervat care SAP apeluri la momentul potrivit, astfel încât îmbunătățirea să supraviețuiască unei actualizări de sistem în loc să fie suprascrisă. Din această cauză, ieșirile aparțin familiei de SAP tehnici de îmbunătățire împreună cu noul Business Add-In.
Tipuri de ieșiri ale clienților
Există trei tipuri principale de ieșiri ale clienților:
- Ieșiri din modulul funcțional
- Ieșiri de ecran
- Ieșiri din meniu
Ieșire din modulul funcționalPermite clientului să adauge cod prin intermediul unui modul funcțional într-o locație specifică dintr-un SAP programul de aplicare
Syntax: CALL CUSTOMER-FUNCTION '004'
Ieșire din ecranPermite clientului să adauge câmpuri pe un ecran într-un SAP program printr-un subecran. Subecranul este apelat în logica de flux a ecranului standard.
Format: CALL CUSTOMER-SUBSCREEN CUSTSCR2
Ieșire din meniu: Permite clientului să adauge elemente într-un meniu derulant într-un mod standard SAP program. Aceste elemente pot fi folosite pentru a apela programe suplimentare sau ecrane personalizate.
Format: +CUS ( additional item in GUI status )
Exemple de ieșiri ale clienților
Exemplu de ieșire din ecran:
În tranzacția CAT2 – Time Sheet Entry, HR dorește să includă o confirmare interactivă că trimiterea cu bună știință a datelor incorecte este un motiv de concediere.
Exemplu de ieșire din meniu:
În tranzacția SE38 – ABAP Editor, echipa de dezvoltare dorește să includă un link de meniu către tranzacția SE80 – Object Navigator pentru ușurință în utilizare.
INAINTE DE
DUPA
Exemplu de ieșire a unui modul funcțional:
Compania dorește ca detaliile bancare ale Vânzătorilor din crearea Furnizorului să fie un eveniment obligatoriu. Prin urmare, trebuie să afișeze un mesaj de eroare „Vă rugăm să introduceți detaliile bancare”.
INAINTE DE
DUPA
Localizarea ieșirilor clienților
In tranzactie SMOD și uită-te în detalii -
Sau în tranzacție SE81 puteți utiliza zona de aplicare corespunzătoare
Creați o ieșire de client
Pentru a crea o ieșire de client, mai întâi trebuie să creați un proiect în tranzacție CMOD
Later atribuiți ieșirea clientului proiectului dumneavoastră.
Secvența completă, de la găsirea ieșirii până la activarea codului, este scurtă și urmează întotdeauna aceiași șase pași.
- Găsiți îmbunătățirea: Localizați numele îmbunătățirii în SMOD, de exemplu componenta EXIT_SAPMF02K_001 pentru masterul furnizorului.
- Creați proiectul: În CMOD, introduceți un nume de proiect care începe cu Z sau Y și selectați Creare.
- Atribuiți îmbunătățirea: Pe ecranul Atribuiri îmbunătățiri, adăugați numele îmbunătățirii care conține ieșirea.
- Scrie codul: Deschideți ieșirea din modulul funcțional și plasați codul în interiorul include-ului său rezervat, care începe cu ZX.
- Gestionarea părților ecranului și meniului: Pentru ieșirea dintr-un ecran, construiți subecranul CUSTSCR, iar pentru ieșirea dintr-un meniu, completați codul funcției +CUS în statusul interfeței grafice.
- Activează proiectul: Activați proiectul în CMOD astfel încât ieșirea să fie apelată la momentul execuției. Fără activare, codul este ignorat.
💡 Sfat: Includerea unei ieșiri de modul funcțional începe cu ZX, deci este transportată odată cu proiectul. Nu plasați niciodată logica personalizată direct în SAP modulul de funcții, deoarece aceasta ar fi o modificare, nu o îmbunătățire.
Ce este o ieșire de utilizator?
Ieșirea utilizatorului servește același scop ca și ieșirile clienților, dar sunt disponibile numai pentru SD modul. Ieșirea este implementată ca un apel către un Modul Funcție. Codul este scris de dezvoltator.
Știu bine că este Exit utilizator în SD MV45AFZZ
- USEREXIT_FIELD_MODIFICATION – Pentru a modifica atributele ecranului
- USEREXIT_SAVE_DOCUMENT – Pentru a efectua operațiuni atunci când utilizatorul apasă pe Salvare
- USEREXIT_SAVE_DOCUMENT_PREPARE
- USEREXIT_MOVE_FIELD_TO_VBAK – Când modificările antetului utilizatorului sunt mutate în zona de lucru antet.
- USEREXIT_MOVE_FIELD_TO_VBAP – Când modificările articolelor utilizatorului sunt mutate în SAP zona de lucru articol
O ieșire de utilizator este, din punct de vedere tehnic, o subrutină (un FORM) în interiorul unui SAP include, deci este editată direct și necesită o cheie de acces. Aceasta este principala diferență practică față de o ieșire client, rezumată în secțiunea următoare.
Ieșire utilizator vs. Ieșire client
Ambele tehnici adaugă un comportament personalizat la standard SAP, dar diferă în ceea ce privește domeniul de aplicare, tehnologia și siguranța actualizării. Tabelul de mai jos le compară.
| Criterii | Ieșire utilizator | Ieșire client |
|---|---|---|
| Disponibilitate | Numai modul SD | Peste toate SAP module |
| Metoda de măsurare | Subrutina (FORM) într-o SAP include, cum ar fi MV45AFZZ | Modul funcțional, ecran sau ieșire din meniu gestionată în SMOD și CMOD |
| Tasta de acces | Necesită o cheie de acces pentru modificare | Nu este necesară o cheie de acces |
| Upgrade comportament | Trebuie verificat în upgrade cu SPAU | Upgrade sigur, apelat dintr-o includere rezervată |
| Condus de | Editat direct în includere | Activat printr-un proiect CMOD |
Ieșirile pentru clienți sunt cele mai sigure și mai generale dintre cele două. Pentru îmbunătățiri la care niciuna dintre ieșiri nu poate ajunge, SAP ulterior a introdus programul Business Add-In.
Ieșiri ale clienților vs. BAdI
A Add-in pentru afaceri (BAdI) este succesorul orientat pe obiecte al ieșirii clientului. În loc de o includere rezervată, un BAdI definește o interfață, iar logica personalizată se află într-o clasă care o implementează. Aceasta aduce două avantaje pe care o ieșire client nu le oferă.
- Implementări multiple: Un BAdI cu utilizare multiplă permite mai multe implementări independente ale aceleiași îmbunătățiri, în timp ce o ieșire client permite doar una.
- Orientarea obiectului: Un BAdI funcționează cu metode și clase, deci se potrivește dezvoltării moderne de obiecte ABAP și este mai ușor de filtrat în funcție de țară sau scenariu de afaceri.
Regula practică este simplă: utilizați o ieșire client sau o ieșire utilizator existentă atunci când punctul de îmbunătățire există deja și utilizați un BAdI atunci când este necesar un punct de îmbunătățire nou, reutilizabil.









