First commit (2026.09.09)

공통 코드 관리
This commit is contained in:
2026-09-09 09:09:28 +00:00
parent 330ae44423
commit 709e049c97
21 changed files with 1648 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DATA>
<MASTER_LANGUAGE>E</MASTER_LANGUAGE>
<STARTING_FOLDER>/src/</STARTING_FOLDER>
<FOLDER_LOGIC>PREFIX</FOLDER_LOGIC>
</DATA>
</asx:values>
</asx:abap>
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DEVC" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>공통코드 관리</CTEXT>
</DEVC>
</asx:values>
</asx:abap>
</abapGit>
+309
View File
@@ -0,0 +1,309 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>ZCAT0010</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<CLIDEP>X</CLIDEP>
<LANGDEP>X</LANGDEP>
<DDTEXT>[CA] Common Code Header</DDTEXT>
<MAINFLAG>X</MAINFLAG>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZCAT0010</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<UEBERSETZ>X</UEBERSETZ>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>MANDT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>MANDT</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>APPLI</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>ZE_APPLI_TR01</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<VALEXI>X</VALEXI>
<SHLPORIGIN>F</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>GRP</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Code Group</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>SPRAS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<DDTEXT>Language Key</DDTEXT>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>GRP_TXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000080</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Short Text for Code Group</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_01</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 01</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_01</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 01</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_02</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 02</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_02</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 02</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_03</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 03</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_03</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 03</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_04</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 04</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_04</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 04</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_05</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 05</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_05</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 05</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_06</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 06</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_06</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 06</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_07</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 07</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_07</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 07</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_08</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 08</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_08</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 08</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_09</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 09</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_09</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 09</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>HDR_10</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Header Line 10</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>LEN_10</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Length 10</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FCNT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>P</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>DEC</DATATYPE>
<LENG>000002</LENG>
<MASK> DEC</MASK>
<DDTEXT>Header Count</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>REMK</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000200</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000100</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Comment</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>.INCLUDE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<PRECFIELD>ZRFKS0</PRECFIELD>
<MASK> S</MASK>
<DDTEXT>Dialog Fields for Screens from Function Group FKS0</DDTEXT>
<COMPTYPE>S</COMPTYPE>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>
+210
View File
@@ -0,0 +1,210 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>ZCAT0020</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<CLIDEP>X</CLIDEP>
<LANGDEP>X</LANGDEP>
<DDTEXT>[CA] Common Code Item</DDTEXT>
<MAINFLAG>X</MAINFLAG>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZCAT0020</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<UEBERSETZ>X</UEBERSETZ>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>MANDT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>MANDT</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>APPLI</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>ZE_APPLI_TR01</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<VALEXI>X</VALEXI>
<SHLPORIGIN>F</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>GRP</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Code Group</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>SPRAS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>SPRAS</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<SHLPORIGIN>D</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>CODE</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>ZE_SE_CODE_VALUE</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>CODE_TXT</FIELDNAME>
<ROLLNAME>ZQTXT_CODE</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>FLD_01</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 01</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_02</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 02</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_03</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 03</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_04</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 04</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_05</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 05</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_06</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 06</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_07</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 07</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_08</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 08</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_09</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 09</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>FLD_10</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000198</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000099</LENG>
<MASK> CHAR</MASK>
<DDTEXT>Field 10</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>USEYN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
<DDTEXT>indicator : YES/NO(Y/N)</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>SORTSEQ</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
<DDTEXT>Sort Order</DDTEXT>
</DD03P>
<DD03P>
<FIELDNAME>.INCLUDE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<PRECFIELD>ZRFKS0</PRECFIELD>
<MASK> S</MASK>
<DDTEXT>Dialog Fields for Screens from Function Group FKS0</DDTEXT>
<COMPTYPE>S</COMPTYPE>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>
+41
View File
@@ -0,0 +1,41 @@
* Program Name : ZCOM0010 *
* Description : 공통 코드 관리 *
* Screen : 100 *
* Transaction code : ZCOM0010 *
* Updated Tables : N/A *
* Input Parameters : *
* Return Codes : *
* Special Logic : *
*----------------------------------------------------------------------*
* MODIFICATION LOG *
*----------------------------------------------------------------------*
* Date Rev Programmer Description *
*------------ -------- ------------- ----------------------------------*
* 2026.09.04 N MYSAP Initial coding *
*----------------------------------------------------------------------*
REPORT zcom0010 MESSAGE-ID zmcom01 NO STANDARD PAGE HEADING.
*----------------------------------------------------------------------*
* INCLUDE
*----------------------------------------------------------------------*
INCLUDE zcom0010c01 . " event.
INCLUDE zcom0010top . " Global Data
INCLUDE zcom0010o01 . " PBO-Modules
INCLUDE zcom0010i01 . " PAI-Modules
INCLUDE zcom0010f01 . " FORM-Routines
INITIALIZATION.
p_spras = sy-langu.
AT SELECTION-SCREEN OUTPUT.
PERFORM set_selection_screen.
START-OF-SELECTION.
PERFORM read_header.
CALL SCREEN 0100.
+167
View File
@@ -0,0 +1,167 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010</NAME>
<SUBC>1</SUBC>
<RLOAD>E</RLOAD>
<FIXPT>X</FIXPT>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<DYNPROS>
<item>
<HEADER>
<PROGRAM>ZCOM0010</PROGRAM>
<SCREEN>0100</SCREEN>
<LANGUAGE>E</LANGUAGE>
<DESCRIPT>조회</DESCRIPT>
<TYPE>N</TYPE>
<NEXTSCREEN>0100</NEXTSCREEN>
<LINES>027</LINES>
<COLUMNS>120</COLUMNS>
</HEADER>
<CONTAINERS>
<RPY_DYCATT>
<TYPE>SCREEN</TYPE>
<NAME>SCREEN</NAME>
</RPY_DYCATT>
</CONTAINERS>
<FIELDS>
<RPY_DYFATC>
<CONT_TYPE>SCREEN</CONT_TYPE>
<CONT_NAME>SCREEN</CONT_NAME>
<TYPE>OKCODE</TYPE>
<NAME>OK_CODE_0100</NAME>
<TEXT>____________________</TEXT>
<LENGTH>020</LENGTH>
<VISLENGTH>020</VISLENGTH>
<HEIGHT>001</HEIGHT>
<FORMAT>CHAR</FORMAT>
<INPUT_FLD>X</INPUT_FLD>
</RPY_DYFATC>
</FIELDS>
<FLOW_LOGIC>
<RPY_DYFLOW>
<LINE>PROCESS BEFORE OUTPUT.</LINE>
</RPY_DYFLOW>
<RPY_DYFLOW>
<LINE> MODULE status_0100.</LINE>
</RPY_DYFLOW>
<RPY_DYFLOW/>
<RPY_DYFLOW>
<LINE> MODULE alv_display_0100.</LINE>
</RPY_DYFLOW>
<RPY_DYFLOW/>
<RPY_DYFLOW>
<LINE>PROCESS AFTER INPUT.</LINE>
</RPY_DYFLOW>
<RPY_DYFLOW>
<LINE> MODULE user_command_0100.</LINE>
</RPY_DYFLOW>
</FLOW_LOGIC>
</item>
</DYNPROS>
<CUA>
<ADM>
<ACTCODE>000001</ACTCODE>
<PFKCODE>000001</PFKCODE>
</ADM>
<STA>
<RSMPE_STAT>
<CODE>ZCOM0010</CODE>
<MODAL>D</MODAL>
<ACTCODE>000001</ACTCODE>
<PFKCODE>000001</PFKCODE>
<BUTCODE>0001</BUTCODE>
<INT_NOTE>조회</INT_NOTE>
</RSMPE_STAT>
</STA>
<FUN>
<RSMPE_FUNT>
<CODE>BACK</CODE>
<TEXTNO>001</TEXTNO>
<TEXT_TYPE>S</TEXT_TYPE>
<FUN_TEXT>Back</FUN_TEXT>
</RSMPE_FUNT>
<RSMPE_FUNT>
<CODE>CANC</CODE>
<TEXTNO>001</TEXTNO>
<TEXT_TYPE>S</TEXT_TYPE>
<FUN_TEXT>Exit</FUN_TEXT>
</RSMPE_FUNT>
<RSMPE_FUNT>
<CODE>EXIT</CODE>
<TEXTNO>001</TEXTNO>
<TEXT_TYPE>S</TEXT_TYPE>
<TEXT_NAME>ICON_CANCEL</TEXT_NAME>
<ICON_ID>@0W@</ICON_ID>
<FUN_TEXT>Cancel</FUN_TEXT>
</RSMPE_FUNT>
</FUN>
<PFK>
<RSMPE_PFK>
<CODE>000001</CODE>
<PFNO>03</PFNO>
<FUNCODE>BACK</FUNCODE>
<FUNNO>001</FUNNO>
</RSMPE_PFK>
<RSMPE_PFK>
<CODE>000001</CODE>
<PFNO>12</PFNO>
<FUNCODE>EXIT</FUNCODE>
<FUNNO>001</FUNNO>
</RSMPE_PFK>
<RSMPE_PFK>
<CODE>000001</CODE>
<PFNO>15</PFNO>
<FUNCODE>CANC</FUNCODE>
<FUNNO>001</FUNNO>
</RSMPE_PFK>
</PFK>
<SET>
<RSMPE_STAF>
<STATUS>ZCOM0010</STATUS>
<FUNCTION>BACK</FUNCTION>
</RSMPE_STAF>
<RSMPE_STAF>
<STATUS>ZCOM0010</STATUS>
<FUNCTION>CANC</FUNCTION>
</RSMPE_STAF>
<RSMPE_STAF>
<STATUS>ZCOM0010</STATUS>
<FUNCTION>EXIT</FUNCTION>
</RSMPE_STAF>
</SET>
<DOC>
<RSMPE_ATRT>
<OBJ_TYPE>A</OBJ_TYPE>
<OBJ_CODE>000001</OBJ_CODE>
<MODAL>D</MODAL>
<INT_NOTE>조회</INT_NOTE>
</RSMPE_ATRT>
<RSMPE_ATRT>
<OBJ_TYPE>P</OBJ_TYPE>
<OBJ_CODE>000001</OBJ_CODE>
<MODAL>D</MODAL>
<INT_NOTE>조회</INT_NOTE>
</RSMPE_ATRT>
<RSMPE_ATRT>
<OBJ_TYPE>B</OBJ_TYPE>
<OBJ_CODE>000001</OBJ_CODE>
<SUB_CODE>0001</SUB_CODE>
<MODAL>D</MODAL>
<INT_NOTE>조회</INT_NOTE>
</RSMPE_ATRT>
</DOC>
</CUA>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>공통코드 관리</ENTRY>
<LENGTH>7</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+124
View File
@@ -0,0 +1,124 @@
*&---------------------------------------------------------------------*
*& Include ZCOM0010C01
*&---------------------------------------------------------------------*
CLASS lcl_events DEFINITION.
PUBLIC SECTION.
* METHODS on_toolbar FOR EVENT toolbar OF cl_gui_alv_grid
* IMPORTING e_object e_interactive sender.
* METHODS on_user_command FOR EVENT user_command OF cl_gui_alv_grid
* IMPORTING e_ucomm sender.
METHODS on_double_click FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING e_row e_column sender.
* METHODS on_data_changed FOR EVENT data_changed OF cl_gui_alv_grid
* IMPORTING er_data_changed sender.
ENDCLASS.
CLASS lcl_events IMPLEMENTATION.
* METHOD on_toolbar.
* IF e_object IS INITIAL.
* RETURN.
* ENDIF.
*
** IF sender = go_grid.
** __alv_toolbar e_object 1 'ADDH' gc_icon-create '그룹코드 추가' '그룹 추가' 0 space.
** __alv_toolbar e_object 2 'DELH' gc_icon-delete '선택 그룹 삭제' '그룹 삭제' 0 space.
** __alv_toolbar e_object 3 'SAVEH' icon_system_save '그룹코드 저장' '그룹 저장' 0 space.
** ELSEIF sender = go_grid1.
** __alv_toolbar e_object 1 'ADDI' gc_icon-create '상세코드 추가' '상세 추가' 0 space.
** __alv_toolbar e_object 2 'ADDIM' gc_icon-create '상세코드 복수 추가' '복수열 추가' 0 space.
** __alv_toolbar e_object 3 'DELI' gc_icon-delete '선택 상세 삭제' '상세 삭제' 0 space.
** __alv_toolbar e_object 4 'SAVEI' icon_system_save '상세코드 저장' '상세 저장' 0 space.
** ENDIF.
* ENDMETHOD.
* METHOD on_user_command.
* ok_code_0100 = e_ucomm.
* CALL METHOD cl_gui_cfw=>set_new_ok_code
* EXPORTING new_code = ok_code_0100.
* ENDMETHOD.
METHOD on_double_click.
perform handle_double_click using e_row e_column sender.
ENDMETHOD.
* METHOD on_data_changed.
* IF sender = go_grid.
* LOOP AT er_data_changed->mt_mod_cells INTO DATA(ls_mod_header).
* READ TABLE gt_header ASSIGNING FIELD-SYMBOL(<ls_header>) INDEX ls_mod_header-row_id.
* IF sy-subrc = 0 AND <ls_header>-mode = gc_mode-disp.
* <ls_header>-mode = gc_mode-modify.
* ENDIF.
* ENDLOOP.
* ELSEIF sender = go_grid1.
* LOOP AT er_data_changed->mt_mod_cells INTO DATA(ls_mod_item).
* READ TABLE gt_item ASSIGNING FIELD-SYMBOL(<ls_item>) INDEX ls_mod_item-row_id.
* IF sy-subrc = 0 AND <ls_item>-mode = gc_mode-disp.
* <ls_item>-mode = gc_mode-modify.
* ENDIF.
* ENDLOOP.
* ENDIF.
* ENDMETHOD.
ENDCLASS.
*---------------------------------------------------------------------*
* LOCAL CLASSES: Definition
*---------------------------------------------------------------------*
CLASS lcl_alv_grid DEFINITION INHERITING FROM cl_gui_alv_grid.
PUBLIC SECTION.
METHODS: set_optimize_all_cols.
METHODS: set_cursor IMPORTING row TYPE i
col TYPE i.
METHODS: set_fixed_column.
METHODS: set_row_resize.
METHODS: set_err_cells IMPORTING it_err TYPE lvc_t_err.
ENDCLASS. "LCL_AlV_GRID DEFINITION
*---------------------------------------------------------------------*
* CLASS LCL_AlV_GRID IMPLEMENTATION
*---------------------------------------------------------------------*
CLASS lcl_alv_grid IMPLEMENTATION.
METHOD set_optimize_all_cols.
CALL METHOD me->optimize_all_cols
EXPORTING
include_header = 1.
ENDMETHOD. "SET_OPTIMIZE_ALL_COLS
METHOD set_cursor.
CALL METHOD me->set_current_cell_base
EXPORTING
row = row
col = col.
ENDMETHOD. " SET_CURSOR
METHOD set_fixed_column.
CALL METHOD me->set_fixed_cols
EXPORTING
cols = 5.
ENDMETHOD. "SET_FIXED_COLUMN
METHOD set_row_resize.
CALL METHOD me->set_resize_rows
EXPORTING
enable = 1.
ENDMETHOD. " SET_ROW_RESIZE
METHOD set_err_cells.
CALL METHOD me->set_error_cells
EXPORTING
cell_table = it_err
EXCEPTIONS
error = 1
OTHERS = 2.
ENDMETHOD. "GET_CURRENT_COL
ENDCLASS. "LCL_ALV_GRID IMPLEMENTATION
+20
View File
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010C01</NAME>
<SUBC>I</SUBC>
<RLOAD>E</RLOAD>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>Include ZCOM0010C01</ENTRY>
<LENGTH>19</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+286
View File
@@ -0,0 +1,286 @@
*&---------------------------------------------------------------------*
*& Include ZCOM0010F01
*&---------------------------------------------------------------------*
FORM set_selection_screen.
p_spras = sy-langu.
ENDFORM.
FORM read_header.
CLEAR gt_header.
SELECT * FROM zcat0010
WHERE appli = @p_appli
AND spras = @p_spras
AND ( grp = @p_grp OR @p_grp IS INITIAL )
ORDER BY grp
INTO CORRESPONDING FIELDS OF TABLE @gt_header.
LOOP AT gt_header ASSIGNING FIELD-SYMBOL(<ls_header>).
<ls_header>-mode = gc_mode-disp.
ENDLOOP.
ENDFORM.
FORM read_item USING iv_grp TYPE zcat0020-grp.
CLEAR gt_item.
SELECT * FROM zcat0020
INTO CORRESPONDING FIELDS OF TABLE @gt_item
WHERE appli = @p_appli
AND grp = @iv_grp
AND spras = @p_spras
ORDER BY sortseq, code.
LOOP AT gt_item ASSIGNING FIELD-SYMBOL(<ls_item>).
<ls_item>-mode = gc_mode-disp.
ENDLOOP.
ENDFORM.
FORM build_header_fcat.
CLEAR gt_fieldcat.
PERFORM add_fcat USING 'MARK' '선택' 4 abap_true abap_false CHANGING gt_fieldcat.
PERFORM add_fcat USING 'GRP' '그룹코드' 12 abap_false abap_false CHANGING gt_fieldcat.
PERFORM add_fcat USING 'GRP_TXT' '그룹코드명' 25 abap_false abap_false CHANGING gt_fieldcat.
PERFORM add_fcat USING 'FCNT' '필드수' 7 abap_false abap_false CHANGING gt_fieldcat.
ENDFORM.
FORM build_item_fcat.
CLEAR gt_fieldcat1.
PERFORM add_fcat USING 'MARK' '선택' 4 abap_true abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'CODE' '코드' 14 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'CODE_TXT' '코드명' 25 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_01' 'FLD_01' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_02' 'FLD_02' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_03' 'FLD_03' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_04' 'FLD_04' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_05' 'FLD_05' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_06' 'FLD_06' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_07' 'FLD_07' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_08' 'FLD_08' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_09' 'FLD_09' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'FLD_10' 'FLD_10' 12 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'USEYN' '사용' 6 abap_false abap_false CHANGING gt_fieldcat1.
PERFORM add_fcat USING 'SORTSEQ' 'Sort Order' 10 abap_false abap_false CHANGING gt_fieldcat1.
ENDFORM.
FORM add_fcat USING iv_field TYPE lvc_fname
iv_text TYPE lvc_txt
iv_width TYPE i
iv_checkbox TYPE abap_bool
iv_hotspot TYPE abap_bool
CHANGING ct_fcat TYPE lvc_t_fcat.
DATA ls_fcat TYPE lvc_s_fcat.
ls_fcat-fieldname = iv_field.
ls_fcat-coltext = iv_text.
ls_fcat-scrtext_l = iv_text.
ls_fcat-outputlen = iv_width.
ls_fcat-checkbox = iv_checkbox.
ls_fcat-hotspot = iv_hotspot.
ls_fcat-edit = abap_true.
APPEND ls_fcat TO ct_fcat.
ENDFORM.
FORM apply_dynamic_item_fcat.
DATA: ls_fcat TYPE lvc_s_fcat,
lv_idx TYPE n LENGTH 2,
lv_hdr TYPE char20,
lv_len TYPE i.
IF go_grid1 IS INITIAL OR gv_selected_grp IS INITIAL.
RETURN.
ENDIF.
READ TABLE gt_header INTO gs_header WITH KEY grp = gv_selected_grp.
IF sy-subrc <> 0.
RETURN.
ENDIF.
LOOP AT gt_fieldcat1 INTO ls_fcat.
IF ls_fcat-fieldname CP 'FLD_*'.
lv_idx = ls_fcat-fieldname+4(2).
ASSIGN COMPONENT |HDR_{ lv_idx }| OF STRUCTURE gs_header TO FIELD-SYMBOL(<lv_hdr>).
ASSIGN COMPONENT |LEN_{ lv_idx }| OF STRUCTURE gs_header TO FIELD-SYMBOL(<lv_len>).
CLEAR: lv_hdr, lv_len.
IF <lv_hdr> IS ASSIGNED.
lv_hdr = <lv_hdr>.
ENDIF.
IF <lv_len> IS ASSIGNED.
lv_len = <lv_len>.
ENDIF.
IF lv_hdr IS INITIAL OR lv_len IS INITIAL.
ls_fcat-no_out = abap_true.
ELSE.
ls_fcat-no_out = abap_false.
ls_fcat-coltext = lv_hdr.
ls_fcat-scrtext_l = lv_hdr.
ls_fcat-outputlen = lv_len.
ENDIF.
MODIFY gt_fieldcat1 FROM ls_fcat.
ENDIF.
ENDLOOP.
__set_frontend_fieldcat go_grid1 gt_fieldcat1.
ENDFORM.
FORM refresh_grid USING io_grid TYPE REF TO lcl_alv_grid. "cl_gui_alv_grid.
IF io_grid IS BOUND.
__alv_refresh io_grid abap_false abap_true abap_true.
ENDIF.
ENDFORM.
FORM calculate_fcnt USING is_header TYPE ty_header
CHANGING cv_count TYPE i.
cv_count = 0.
IF is_header-hdr_01 IS NOT INITIAL AND is_header-len_01 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_02 IS NOT INITIAL AND is_header-len_02 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_03 IS NOT INITIAL AND is_header-len_03 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_04 IS NOT INITIAL AND is_header-len_04 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_05 IS NOT INITIAL AND is_header-len_05 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_06 IS NOT INITIAL AND is_header-len_06 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_07 IS NOT INITIAL AND is_header-len_07 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_08 IS NOT INITIAL AND is_header-len_08 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_09 IS NOT INITIAL AND is_header-len_09 IS NOT INITIAL. cv_count += 1. ENDIF.
IF is_header-hdr_10 IS NOT INITIAL AND is_header-len_10 IS NOT INITIAL. cv_count += 1. ENDIF.
ENDFORM.
FORM save_header.
DATA: ls_db TYPE zcat0010,
lv_count TYPE i.
IF go_grid IS BOUND.
go_grid->check_changed_data( ).
ENDIF.
LOOP AT gt_header INTO gs_header WHERE mode <> gc_mode-disp OR mark = abap_true.
IF gs_header-mode <> gc_mode-delete
AND ( gs_header-grp IS INITIAL OR gs_header-grp_txt IS INITIAL ).
MESSAGE '그룹코드와 그룹코드명은 필수입니다.' TYPE 'S' DISPLAY LIKE 'E'.
RETURN.
ENDIF.
IF gs_header-mode = gc_mode-delete.
DELETE FROM zcat0020
WHERE appli = @p_appli AND grp = @gs_header-grp AND spras = @p_spras.
DELETE FROM zcat0010
WHERE appli = @p_appli AND grp = @gs_header-grp AND spras = @p_spras.
CONTINUE.
ENDIF.
PERFORM calculate_fcnt USING gs_header CHANGING lv_count.
gs_header-fcnt = lv_count.
MOVE-CORRESPONDING gs_header TO ls_db.
ls_db-mandt = sy-mandt.
ls_db-appli = p_appli.
ls_db-spras = p_spras.
MODIFY zcat0010 FROM @ls_db.
ENDLOOP.
COMMIT WORK AND WAIT.
PERFORM read_header.
* PERFORM refresh_grid USING go_grid.
MESSAGE '그룹코드가 저장되었습니다.' TYPE 'S'.
ENDFORM.
FORM save_item.
DATA ls_db TYPE zcat0020.
IF gv_selected_grp IS INITIAL.
MESSAGE '먼저 좌측에서 그룹코드를 선택하십시오.' TYPE 'S' DISPLAY LIKE 'E'.
RETURN.
ENDIF.
IF go_grid1 IS BOUND.
go_grid1->check_changed_data( ).
ENDIF.
LOOP AT gt_item INTO gs_item WHERE mode <> gc_mode-disp OR mark = abap_true.
IF gs_item-mode <> gc_mode-delete AND gs_item-code IS INITIAL.
MESSAGE '상세코드는 필수입니다.' TYPE 'S' DISPLAY LIKE 'E'.
RETURN.
ENDIF.
IF gs_item-mode = gc_mode-delete.
DELETE FROM zcat0020
WHERE appli = @p_appli
AND grp = @gv_selected_grp
AND spras = @p_spras
AND code = @gs_item-code.
CONTINUE.
ENDIF.
MOVE-CORRESPONDING gs_item TO ls_db.
ls_db-mandt = sy-mandt.
ls_db-appli = p_appli.
ls_db-grp = gv_selected_grp.
ls_db-spras = p_spras.
MODIFY zcat0020 FROM @ls_db.
ENDLOOP.
COMMIT WORK AND WAIT.
PERFORM read_item USING gv_selected_grp.
* PERFORM refresh_grid USING go_grid1.
MESSAGE '세부코드가 저장되었습니다.' TYPE 'S'.
ENDFORM.
FORM mark_new_headers USING iv_lines TYPE i.
DO iv_lines TIMES.
CLEAR gs_header.
gs_header-appli = p_appli.
gs_header-spras = p_spras.
gs_header-mode = gc_mode-create.
APPEND gs_header TO gt_header.
ENDDO.
ENDFORM.
FORM mark_new_items USING iv_lines TYPE i.
DO iv_lines TIMES.
CLEAR gs_item.
gs_item-appli = p_appli.
gs_item-grp = gv_selected_grp.
gs_item-spras = p_spras.
gs_item-useyn = 'Y'.
gs_item-mode = gc_mode-create.
APPEND gs_item TO gt_item.
ENDDO.
ENDFORM.
FORM delete_marked_headers.
LOOP AT gt_header ASSIGNING FIELD-SYMBOL(<ls_header>) WHERE mark = abap_true.
<ls_header>-mode = gc_mode-delete.
ENDLOOP.
PERFORM save_header.
ENDFORM.
FORM delete_marked_items.
LOOP AT gt_item ASSIGNING FIELD-SYMBOL(<ls_item>) WHERE mark = abap_true.
<ls_item>-mode = gc_mode-delete.
ENDLOOP.
PERFORM save_item.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form handle_double_click
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& --> E_ROW
*& --> E_COLUMN
*& --> SENDER
*&---------------------------------------------------------------------*
FORM handle_double_click USING p_row
p_column
p_sender.
IF p_sender <> go_grid OR p_row IS INITIAL.
RETURN.
ENDIF.
READ TABLE gt_header INTO gs_header INDEX p_row.
IF sy-subrc = 0.
gv_selected_grp = gs_header-grp.
PERFORM read_item USING gv_selected_grp.
PERFORM apply_dynamic_item_fcat.
PERFORM refresh_grid USING go_grid1.
ENDIF.
ENDFORM.
+20
View File
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010F01</NAME>
<SUBC>I</SUBC>
<RLOAD>E</RLOAD>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>Include ZCOM0010F01</ENTRY>
<LENGTH>19</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+63
View File
@@ -0,0 +1,63 @@
*&---------------------------------------------------------------------*
*& Include ZCOM0010I01
*&---------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
CASE ok_code_0100.
WHEN gc_fcode-back OR gc_fcode-canc OR gc_fcode-exit.
LEAVE TO SCREEN 0.
WHEN 'ADDH'.
PERFORM mark_new_headers USING 1.
* PERFORM refresh_grid USING go_grid.
WHEN 'EDTH'.
__set_ready_input go_grid 1.
WHEN 'DELH'.
__popup_to_confirm_step '선택한 그룹코드와 모든 하위코드를 삭제합니다.' '' '그룹코드 삭제'.
IF gv_answer = gc_answer-yes.
PERFORM delete_marked_headers.
ENDIF.
WHEN 'SAVEH'.
PERFORM save_header.
WHEN 'ADDI'.
IF gv_selected_grp IS INITIAL.
MESSAGE '먼저 좌측에서 그룹코드를 선택하십시오.' TYPE 'S' DISPLAY LIKE 'E'.
ELSE.
PERFORM mark_new_items USING 1.
* PERFORM refresh_grid USING go_grid1.
ENDIF.
WHEN 'ADDIM'.
IF gv_selected_grp IS INITIAL.
MESSAGE '먼저 좌측에서 그룹코드를 선택하십시오.' TYPE 'S' DISPLAY LIKE 'E'.
ELSE.
CLEAR gv_lines.
CALL FUNCTION 'POPUP_TO_GET_VALUE'
EXPORTING
fieldname = 'GV_LINES'
tabname = 'ZCOM0010'
titel = '추가 라인 수'
IMPORTING
value = gv_lines.
IF gv_lines IS INITIAL OR gv_lines < 1.
gv_lines = 1.
ENDIF.
PERFORM mark_new_items USING gv_lines.
* PERFORM refresh_grid USING go_grid1.
ENDIF.
WHEN 'DELI'.
__popup_to_confirm_step '선택한 세부코드를 삭제합니다.' '' '세부코드 삭제'.
IF gv_answer = gc_answer-yes.
PERFORM delete_marked_items.
ENDIF.
WHEN 'SAVEI'.
PERFORM save_item.
ENDCASE.
CLEAR ok_code_0100.
ENDMODULE.
+20
View File
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010I01</NAME>
<SUBC>I</SUBC>
<RLOAD>E</RLOAD>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>Include ZCOM0010I01</ENTRY>
<LENGTH>19</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+83
View File
@@ -0,0 +1,83 @@
*&---------------------------------------------------------------------*
*& Include ZCOM0010O01
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
DATA : lv_text(200),
lt_fcode TYPE TABLE OF sy-ucomm.
CLEAR: lv_text, lt_fcode, lt_fcode[].
SET PF-STATUS 'ZCOM0010' EXCLUDING lt_fcode.
lv_text = sy-title.
SET TITLEBAR 'ZCOM0010' WITH lv_text.
ENDMODULE.
MODULE clear_okcode_0100 OUTPUT.
CLEAR ok_code_0100.
ENDMODULE.
FORM create_controls.
CREATE OBJECT go_docking_container
EXPORTING
side = cl_gui_docking_container=>dock_at_left
extension = 3000.
__splitter go_splitter go_docking_container 1 2.
__set_splitter go_splitter go_container_l 1 1.
__set_splitter go_splitter go_container_r 1 2.
__width_split go_splitter 1 20.
__width_split go_splitter 2 80.
CREATE OBJECT go_grid
EXPORTING
i_parent = go_container_l.
CREATE OBJECT go_grid1
EXPORTING
i_parent = go_container_r.
PERFORM build_header_fcat.
PERFORM build_item_fcat.
gs_layout-zebra = abap_true.
gs_layout-sel_mode = 'A'.
gs_layout1-zebra = abap_true.
gs_layout1-sel_mode = 'A'.
go_grid->set_table_for_first_display(
EXPORTING is_layout = gs_layout
CHANGING it_outtab = gt_header it_fieldcatalog = gt_fieldcat ).
go_grid1->set_table_for_first_display(
EXPORTING is_layout = gs_layout1
CHANGING it_outtab = gt_item it_fieldcatalog = gt_fieldcat1 ).
IF gt_header IS NOT INITIAL.
READ TABLE gt_header INTO gs_header INDEX 1.
gv_selected_grp = gs_header-grp.
PERFORM read_item USING gv_selected_grp.
PERFORM apply_dynamic_item_fcat.
PERFORM refresh_grid USING go_grid1.
ENDIF.
CREATE OBJECT go_events.
* SET HANDLER go_events->on_toolbar FOR go_grid.
* SET HANDLER go_events->on_user_command FOR go_grid.
SET HANDLER go_events->on_double_click FOR go_grid.
* SET HANDLER go_events->on_data_changed FOR go_grid.
* SET HANDLER go_events->on_toolbar FOR go_grid1.
* SET HANDLER go_events->on_user_command FOR go_grid1.
* SET HANDLER go_events->on_data_changed FOR go_grid1.
ENDFORM.
*&---------------------------------------------------------------------*
*& Module ALV_DISPLAY_0100 OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE alv_display_0100 OUTPUT.
IF go_docking_container IS INITIAL.
PERFORM create_controls.
ENDIF.
ENDMODULE.
+20
View File
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010O01</NAME>
<SUBC>I</SUBC>
<RLOAD>E</RLOAD>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>Include ZCOM0010O01</ENTRY>
<LENGTH>19</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+80
View File
@@ -0,0 +1,80 @@
*&---------------------------------------------------------------------*
*& Include ZCOM0010TOP - Report ZCOM0010
*&---------------------------------------------------------------------*
INCLUDE zco_constants.
INCLUDE zco_variant.
INCLUDE zco_macro.
TABLES: zcat0010, zcat0020.
SELECTION-SCREEN BEGIN OF BLOCK b01 WITH FRAME TITLE TEXT-t01.
PARAMETERS: p_appli TYPE zcat0010-appli OBLIGATORY DEFAULT 'CO',
p_grp TYPE zcat0010-grp,
p_spras TYPE zcat0010-spras NO-DISPLAY.
SELECTION-SCREEN END OF BLOCK b01.
TYPES: BEGIN OF ty_header,
mark TYPE c LENGTH 1,
appli TYPE zcat0010-appli,
grp TYPE zcat0010-grp,
spras TYPE zcat0010-spras,
grp_txt TYPE zcat0010-grp_txt,
hdr_01 TYPE zcat0010-hdr_01,
len_01 TYPE zcat0010-len_01,
hdr_02 TYPE zcat0010-hdr_02,
len_02 TYPE zcat0010-len_02,
hdr_03 TYPE zcat0010-hdr_03,
len_03 TYPE zcat0010-len_03,
hdr_04 TYPE zcat0010-hdr_04,
len_04 TYPE zcat0010-len_04,
hdr_05 TYPE zcat0010-hdr_05,
len_05 TYPE zcat0010-len_05,
hdr_06 TYPE zcat0010-hdr_06,
len_06 TYPE zcat0010-len_06,
hdr_07 TYPE zcat0010-hdr_07,
len_07 TYPE zcat0010-len_07,
hdr_08 TYPE zcat0010-hdr_08,
len_08 TYPE zcat0010-len_08,
hdr_09 TYPE zcat0010-hdr_09,
len_09 TYPE zcat0010-len_09,
hdr_10 TYPE zcat0010-hdr_10,
len_10 TYPE zcat0010-len_10,
fcnt TYPE zcat0010-fcnt,
remk TYPE zcat0010-remk,
mode TYPE c LENGTH 1,
END OF ty_header.
TYPES tt_header TYPE STANDARD TABLE OF ty_header WITH DEFAULT KEY.
TYPES: BEGIN OF ty_item,
mark TYPE c LENGTH 1,
appli TYPE zcat0020-appli,
grp TYPE zcat0020-grp,
spras TYPE zcat0020-spras,
code TYPE zcat0020-code,
code_txt TYPE zcat0020-code_txt,
fld_01 TYPE zcat0020-fld_01,
fld_02 TYPE zcat0020-fld_02,
fld_03 TYPE zcat0020-fld_03,
fld_04 TYPE zcat0020-fld_04,
fld_05 TYPE zcat0020-fld_05,
fld_06 TYPE zcat0020-fld_06,
fld_07 TYPE zcat0020-fld_07,
fld_08 TYPE zcat0020-fld_08,
fld_09 TYPE zcat0020-fld_09,
fld_10 TYPE zcat0020-fld_10,
useyn TYPE zcat0020-useyn,
sortseq TYPE zcat0020-sortseq,
mode TYPE c LENGTH 1,
END OF ty_item.
TYPES tt_item TYPE STANDARD TABLE OF ty_item WITH DEFAULT KEY.
DATA: gt_header TYPE tt_header,
gs_header TYPE ty_header,
gt_item TYPE tt_item,
gs_item TYPE ty_item,
gv_selected_grp TYPE zcat0010-grp,
gv_lines TYPE i.
DATA go_events TYPE REF TO lcl_events.
+20
View File
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<PROGDIR>
<NAME>ZCOM0010TOP</NAME>
<SUBC>I</SUBC>
<RLOAD>E</RLOAD>
<UCCHECK>X</UCCHECK>
</PROGDIR>
<TPOOL>
<item>
<ID>R</ID>
<ENTRY>Include ZCOM0010TOP</ENTRY>
<LENGTH>19</LENGTH>
</item>
</TPOOL>
</asx:values>
</asx:abap>
</abapGit>
+30
View File
@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DOMA" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD01V>
<DOMNAME>ZD_APPLI_TR01</DOMNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DATATYPE>CHAR</DATATYPE>
<LENG>000002</LENG>
<OUTPUTLEN>000002</OUTPUTLEN>
<VALEXI>X</VALEXI>
<DDTEXT>SAP applications</DDTEXT>
</DD01V>
<DD07V_TAB>
<DD07V>
<VALPOS>0001</VALPOS>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMVALUE_L>CO</DOMVALUE_L>
<DDTEXT>Controlling</DDTEXT>
</DD07V>
<DD07V>
<VALPOS>0002</VALPOS>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMVALUE_L>TX</DOMVALUE_L>
<DDTEXT>TAX</DDTEXT>
</DD07V>
</DD07V_TAB>
</asx:values>
</asx:abap>
</abapGit>
+23
View File
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>ZE_APPLI_TR01</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>ZD_APPLI_TR01</DOMNAME>
<HEADLEN>05</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>Application area</DDTEXT>
<REPTEXT>AppAr</REPTEXT>
<SCRTEXT_S>Applicat.</SCRTEXT_S>
<SCRTEXT_M>ApplicationArea</SCRTEXT_M>
<SCRTEXT_L>Application area</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<REFKIND>D</REFKIND>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>
+24
View File
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>ZE_SE_CODE_VALUE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>15</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>Code value</DDTEXT>
<REPTEXT>Code value</REPTEXT>
<SCRTEXT_S>Code value</SCRTEXT_S>
<SCRTEXT_M>Code value</SCRTEXT_M>
<SCRTEXT_L>Code value</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<OUTPUTLEN>000012</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>
+24
View File
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>ZQTXT_CODE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>40</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>Short Text for Code</DDTEXT>
<REPTEXT>Short Text for Code</REPTEXT>
<SCRTEXT_S>Short Text</SCRTEXT_S>
<SCRTEXT_M>Short Text</SCRTEXT_M>
<SCRTEXT_L>Short Text for Code</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<OUTPUTLEN>000040</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>
+64
View File
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>ZRFKS0</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>Dialog Fields for Screens from Function Group FKS0</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>ERNAM</FIELDNAME>
<ROLLNAME>ERNAM</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>ERDAT</FIELDNAME>
<ROLLNAME>ERDAT</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<SHLPORIGIN>T</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>ERTIM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<DDTEXT>Time at which the object was created</DDTEXT>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>AENAM</FIELDNAME>
<ROLLNAME>AENAM</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>AEDAT</FIELDNAME>
<ROLLNAME>AEDAT</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<SHLPORIGIN>T</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>AETIM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<DDTEXT>Time at Which the Object Was Last Changed</DDTEXT>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>