1+ CLASS cl_abap_behv DEFINITION PUBLIC CREATE PROTECTED .
2+
3+ PUBLIC SECTION .
4+ TYPES t_cid TYPE abp_behv_cid.
5+ TYPES t_flag TYPE abp_behv_flag.
6+ TYPES t_pid TYPE abp_behv_pid.
7+
8+ CONSTANTS flag_null TYPE abp_behv_flag VALUE '00' ##NO_TEXT .
9+ CONSTANTS flag_changed TYPE abp_behv_flag VALUE '01' ##NO_TEXT .
10+ CONSTANTS flag_error TYPE abp_behv_flag VALUE '80' ##NO_TEXT .
11+
12+ CONSTANTS :
13+ BEGIN OF co_techfield_name,
14+ control TYPE c LENGTH 30 VALUE '%CONTROL' ,
15+ cid TYPE c LENGTH 30 VALUE '%CID' ,
16+ cid_ref TYPE c LENGTH 30 VALUE '%CID_REF' ,
17+ pre TYPE c LENGTH 30 VALUE '%PRE' , " 778
18+ pid TYPE c LENGTH 30 VALUE '%PID' ,
19+ tmp TYPE c LENGTH 30 VALUE '%TMP' ,
20+ pky TYPE c LENGTH 30 VALUE '%PKY' ,
21+ tky TYPE c LENGTH 30 VALUE '%TKY' ,
22+ key TYPE c LENGTH 30 VALUE '%KEY' ,
23+ data TYPE c LENGTH 30 VALUE '%DATA' ,
24+ param TYPE c LENGTH 30 VALUE '%PARAM' ,
25+ target TYPE c LENGTH 30 VALUE '%TARGET' ,
26+ fail TYPE c LENGTH 30 VALUE '%FAIL' ,
27+ msg TYPE c LENGTH 30 VALUE '%MSG' ,
28+ other TYPE c LENGTH 30 VALUE '%OTHER' ,
29+ foreign TYPE c LENGTH 30 VALUE '%FOREIGN' ,
30+ element TYPE c LENGTH 30 VALUE '%ELEMENT' ,
31+ field TYPE c LENGTH 30 VALUE '%FIELD' ,
32+ create TYPE c LENGTH 30 VALUE '%CREATE' ,
33+ update TYPE c LENGTH 30 VALUE '%UPDATE' ,
34+ delete TYPE c LENGTH 30 VALUE '%DELETE' ,
35+ assoc TYPE c LENGTH 30 VALUE '%ASSOC' ,
36+ action TYPE c LENGTH 30 VALUE '%ACTION' ,
37+ op TYPE c LENGTH 30 VALUE '%OP' ,
38+ perm TYPE c LENGTH 30 VALUE '%PERM' ,
39+ path TYPE c LENGTH 30 VALUE '%PATH' ,
40+ is_draft TYPE c LENGTH 30 VALUE '%IS_DRAFT' ,
41+ link_src TYPE c LENGTH 30 VALUE 'SOURCE' ,
42+ link_trg TYPE c LENGTH 30 VALUE 'TARGET' ,
43+ state_area TYPE c LENGTH 30 VALUE '%STATE_AREA' ,
44+ msg_global TYPE c LENGTH 30 VALUE '%GLOBAL' ,
45+ instances TYPE c LENGTH 30 VALUE 'INSTANCES' ,
46+ global TYPE c LENGTH 30 VALUE 'GLOBAL' ,
47+ END OF co_techfield_name.
48+
49+ CONSTANTS :
50+ BEGIN OF co_key_name,
51+ draft TYPE c LENGTH 30 VALUE 'DRAFT' ,
52+ cid TYPE c LENGTH 30 VALUE 'CID' ,
53+ pid TYPE c LENGTH 30 VALUE 'PID' ,
54+ entity TYPE c LENGTH 30 VALUE 'ENTITY' ,
55+ END OF co_key_name.
56+ PROTECTED SECTION .
57+
58+ CONSTANTS ms LIKE if_abap_behv_message=>severity VALUE if_abap_behv_message=>severity ##NO_TEXT .
59+ CONSTANTS mc LIKE if_abap_behv=>cause VALUE if_abap_behv=>cause ##NO_TEXT .
60+
61+ METHODS new_message
62+ IMPORTING
63+ !id TYPE symsgid
64+ !number TYPE symsgno
65+ !severity TYPE if_abap_behv_message=>t_severity
66+ !v1 TYPE simple OPTIONAL
67+ !v2 TYPE simple OPTIONAL
68+ !v3 TYPE simple OPTIONAL
69+ !v4 TYPE simple OPTIONAL
70+ RETURNING
71+ VALUE (obj ) TYPE REF TO if_abap_behv_message.
72+ METHODS new_message_with_text
73+ IMPORTING
74+ !severity TYPE if_abap_behv_message=>t_severity DEFAULT if_abap_behv_message=>severity-error
75+ !text TYPE csequence OPTIONAL
76+ RETURNING
77+ VALUE (obj ) TYPE REF TO if_abap_behv_message.
78+ ENDCLASS .
79+
80+ CLASS cl_abap_behv IMPLEMENTATION .
81+ METHOD new_message .
82+ RETURN . " todo, implement method
83+ ENDMETHOD .
84+
85+ METHOD new_message_with_text .
86+ RETURN . " todo, implement method
87+ ENDMETHOD .
88+ ENDCLASS .
0 commit comments