BDT (Business Data Toolset) Aggiunta campi custom a RECN
Per aggiungere dei campi custom alla transazione RECN (gestione contratti di Real Estate), dato che non sono disponibili BADI o EXIT appropriate per soddisfare il requisito, l'approccio di Business Data Toolset (BDT) viene adottato per ottenere lo stesso risultato. Di seguito sono riportati i passaggi che potrebbero contribuire all'aggiunta dei campi personalizzati:
Supponiamo di voler aggiungere il
campo custom “documento di acquisto” alla transazione RECN.
Richiamare la transazione SE11 e
inserire nel campo tabella: VICNCN
(tabella contratti di RE), ricercare la struttura CI_VICNCN, e fare doppio click sulla struttura. Se non è stata mai
creata vi verrà richiesto di crearla.
Inserire la descrizione, il campo
da aggiungere il tipo, poi salvare e attivare.
Richiamare la transazione SE80, selezionare la voce Function
Group e inserire il nome REGC_EXT_EXAMPLE,
copiarlo in un nuovo Function group chiamato
ZZZZ_REGC_EXT.
Rinominare i vecchi moduli di
funzione in nuovi moduli di funzione (iniziando con 'Z') come segue:
Salvare e attivare.
Pubblica la tua applicazione. Per la pubblicazione chiama le seguenti transazioni per ciascun oggetto applicazione.
Transaction
|
Object
|
REBDAO0001
|
Architectural
object
|
REBDBE0001
|
Business
entity
|
REBDBU0001
|
Building
|
REAJCG0001
|
Comparative
group of apartments
|
REGC0001
|
RE contract
|
RESCPG0001
|
Participation
group
|
REBDPR0001
|
Property
|
REBDRO0001
|
Rental
object
|
RESCSU0001
|
Settlement
unit
|
Nel nostro caso consideriamo la
transazione REGC0001, richamandola
compare la seguente schermata:
Inserire una nuova Entry, e
salvare
Pubblichiamo la nostra schermata,
per farlo seguiamo i seguenti passaggi:
(Tutte le impostazioni sono specifiche del client e quindi da trasportare in tutti i client dove richiesto)
(Tutte le impostazioni sono specifiche del client e quindi da trasportare in tutti i client dove richiesto)
Richiamare la transazione SPRO.
Selezionare IMG activity
‘Dialog -> Screen Layout -> Field Groups -> Field Groups’.
Creare un nuovo FIELD GROUP.
Scegliere un numero che inizia
con ‘7’, ad esempio 701.
Nell'area "Dati
generali", inserisci una Descrizione nel campo "Descrizione" per
i tuoi nuovi campi.
Inserire anche il nome del FUNCTION
GROUP creato in precedenza (ZZZZ_REGC_EVENT_FMOD2) nel campo "FM per il
raggruppamento fld". SALVARE.
Fare doppio click su Field
Group-> Fields, per aggiungere il nuovo campo custom.
Creare una nuova VIEW.
Richiamare la transazione SPRO.
Selezionare IMG activity
‘Dialog -> Screen Layout -> Views’.
Per il nostro scopo copiamo
l’entry REGC02. E creiamo l’entry ZZZZ01
Premere invio e nella pop-up
successiva selezionare “Only copy entry”.
Successivamente selezionare la
nostra entry ZZZZ01 e fare doppio click su “View -> Field Groups” ed inserire il field group 701 creato in
precedenza.
Sotto la cartella “Further
checks” non ci sono entry.
Successivamente creaimo una
Sections. Scegliere ‘Dialog -> Screen Layout -> Stages’.
Il nome della sezione deve inziare con ‘ZZZZ’ con descrizione, ad esempio ZZZZ01
descrizione Customer Tab.
Successivamente fare doppio click
su “Screen -> Views”
Nel campo ITE inserire un numero (le
ultime 2 cifre non devono essere 00) inseriamo ad esempio 9000050
Scegliere ‘Dialog -> Screen Layout -> Screens’ e definire lo screen su
cui visualizzare il nuovo campo.
Nel caso nostro, che vogliamo
inserire il campo custom del tab “Dati Generali”, selezioniamo la riga REGC02
e facciamo doppio click su (Screen -> Sections)
Il numero da inserire deve essere
compreso nell’intervallo ma non deve terminare con “00”.
Ad esempio se si deve inserire il
campo custom dopo il contratto, selezionare un numero da 300000 e 400000
Modificare il nostro FM ZZZZ_REGC_PAI_Z901,
commentando le seguenti linee:
* Get Data of Customer-Include
IF lo_busobj IS BOUND.
* CALL FUNCTION 'API_RE_CN_GET_DETAIL'
* EXPORTING
* io_object = lo_busobj
* IMPORTING
* es_ci_data = recn_contract_ci
* EXCEPTIONS
* error = 1
* OTHERS = 2.
* IF sy-subrc <> 0.
* MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
* DISPLAY LIKE sy-msgty
* WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
* ENDIF.
ENDIF.
IF lo_busobj IS BOUND.
* CALL FUNCTION 'API_RE_CN_GET_DETAIL'
* EXPORTING
* io_object = lo_busobj
* IMPORTING
* es_ci_data = recn_contract_ci
* EXCEPTIONS
* error = 1
* OTHERS = 2.
* IF sy-subrc <> 0.
* MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
* DISPLAY LIKE sy-msgty
* WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
* ENDIF.
ENDIF.
Aggiungere nell’include LZZZZ_REGC_EXTTOP
la dichiarazione della variabile
DATA GV_ZZEBELN TYPE RECN_CONTRACT_CI-ZZEBELN.
Andare nel Function Group ZZZZ_REGC_EXT,
e modificare il PBO Modules nel seguente modo:
MODULE pbo OUTPUT.
FIELD-SYMBOLS <fs_mix> TYPE ANY.
DATA : lv_recnnr TYPE recnnumber.
ASSIGN ('(SAPLRECA_BDT_APPL_TOOL)GS_OBJECT_INFO-OBJIDENT') TO <fs_mix>.
IF recn_contract_ci-zzebeln = gv_zzebeln AND
recn_contract_ci-zzebeln IS INITIAL.
gv_zzebeln = recn_contract_ci-zzebeln .
lv_recnnr = <fs_mix>+5(6).
CALL FUNCTION 'conversion_exit_alpha_input'
EXPORTING
input = lv_recnnr
IMPORTING
output = lv_recnnr.
SELECT SINGLE zzebeln
FROM vicncn
INTO recn_contract_ci-zzebeln
WHERE bukrs = <fs_mix>+0(4)
AND recnnr = lv_recnnr.
ENDIF.
ENDMODULE. "pbo OUTPUT
FIELD-SYMBOLS <fs_mix> TYPE ANY.
DATA : lv_recnnr TYPE recnnumber.
ASSIGN ('(SAPLRECA_BDT_APPL_TOOL)GS_OBJECT_INFO-OBJIDENT') TO <fs_mix>.
IF recn_contract_ci-zzebeln = gv_zzebeln AND
recn_contract_ci-zzebeln IS INITIAL.
gv_zzebeln = recn_contract_ci-zzebeln .
lv_recnnr = <fs_mix>+5(6).
CALL FUNCTION 'conversion_exit_alpha_input'
EXPORTING
input = lv_recnnr
IMPORTING
output = lv_recnnr.
SELECT SINGLE zzebeln
FROM vicncn
INTO recn_contract_ci-zzebeln
WHERE bukrs = <fs_mix>+0(4)
AND recnnr = lv_recnnr.
ENDIF.
ENDMODULE. "pbo OUTPUT
EBOOK: le mie guide sono visualizzabili cliccando sui link:
1. SAP EWM (Extended Warehouse Management)
3. SAP VIM (Vendor Invoice Management)
1. SAP EWM (Extended Warehouse Management)
3. SAP VIM (Vendor Invoice Management)
SE MI CONTATTATE IN PRIVATO, PAGATE LA META' DEL PREZZO DI AMAZON, E POTETE SCEGLIERE IL FORMATO WORD o PDF.
>>> RECENSIONI DEI LIBRI su Amazon Kindle <<<
Ebook: SAP CDS: https://www.amazon.it/dp/B0B9BD1RN3#customerReviews
Ebook: SAP MM: https://www.amazon.it/dp/B0C3MKD9BR#customerReviews
Ebook: SAP MII: https://www.amazon.it/dp/B0C4392MY9#customerReviews
Ebook: SAP VIM: https://www.amazon.it/dp/B0C6FBK8QN#customerReviews
Ebook: SAP MM: https://www.amazon.it/dp/B0C3MKD9BR#customerReviews
Ebook: SAP MII: https://www.amazon.it/dp/B0C4392MY9#customerReviews
Ebook: SAP VIM: https://www.amazon.it/dp/B0C6FBK8QN#customerReviews
Ebook: SAP EWM: https://www.amazon.it/dp/B0CL6TXP1V#customerReviews