ABAP Concept (๐Ÿ“๊ฐœ๋…)/Basic

|ABAP ๊ฐœ๋…์ •๋ฆฌ| TABLES : Table Work Area

two_ssun 2020. 9. 16. 08:38

ABAP์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์„ ์–ธํ•˜๋Š” ๊ตฌ์กฐ์ฒด ํ˜•ํƒœ์˜ DATA OBJECT ๋ฅผ Work Area๋ผ ๋ถ€๋ฅธ๋‹ค.

๊ทธ ์ค‘ TABLES ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ์–ธ๋˜๋Š” Table Work Area์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ๋‹ค.

 

 

Table Work Area๋ฅผ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. 

TABLES  Structure Type  or  Database Table  or  Database View ( classic view )

์œ„์˜ ํ‘œ๊ธฐ๋ฒ• ์ฒ˜๋Ÿผ TABLES ๊ตฌ๋ฌธ ๋’ค์—๋Š” ABAP Dictionary์—์„œ ์„ ์–ธ๋œ Structure Type, Table, View ( classic view ) ๊ฐ€ ์˜ฌ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ทธ๊ฒƒ๊ณผ ๋™์ผํ•œ ์ด๋ฆ„์˜ ๊ตฌ์กฐ์ฒด ํ˜•ํƒœ์ธ DATA OBJECT๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

( * Classic View : Database view ๋˜๋Š” Projection view ๋ฅผ ๋งํ•จ ) 

 

์ด๊ฒƒ์€ DATA ์„ ์–ธ๋ฌธ์„ ์ด์šฉํ•ด DATA OBJECT๋ฅผ ์„ ์–ธํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ํšจ๊ณผ์ด๋ฉฐ,

์ž์žฌ๋งˆ์Šคํ„ฐ ํ…Œ์ด๋ธ”์ธ 'MARA' ๋ฅผ ์˜ˆ๋ฅผ ๋“ค์–ด ํ‘œํ˜„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

DATA  MARA  TYPE  MARA.    =    TABLE  MARA.

DATA OBJECT๋ฅผ ์„ ์–ธํ•˜๋Š” 'DATA' ๊ตฌ๋ฌธ์ด ์žˆ์Œ์—๋„ 'TABLES' ๊ตฌ๋ฌธ์ด ๊ตณ์ด ํ•„์š”ํ•œ ์ด์œ ๋Š”??

 

Table Work Area์˜ ์ฃผ ๊ธฐ๋Šฅ์€ ํ™”๋ฉด์˜ ํ•„๋“œ์™€ ABAP Program ๊ฐ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ธฐ ์œ„ํ•œ Work Area ์—ญํ™œ์„ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฌํ•œ ์ด์œ ๋กœ Table Work Area๋ฅผ Interface Work Area ๋ผ๊ณ  ํ‘œํ˜„ํ•˜๊ธฐ๋„ ํ•œ๋‹ค. 

์ด ๋•Œ ํ™”๋ฉด์— ์ƒ์„ฑ๋œ ํ•„๋“œ๋“ค์€ ABAP Dictionary์—์„œ ๊ฐ€์ ธ์™€์„œ ์ƒ์„ฑํ•˜์˜€์„ ๊ฒฝ์šฐ๋ฅผ ๋งํ•œ๋‹ค. 

 

 

< Screen Painter์—์„œ Dictionary๋ฅผ ํ†ตํ•ด ํ•„๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ™”๋ฉด >

์ฆ‰, ํ™”๋ฉด์—์„œ ABAP Dictionary๋ฅผ ํ†ตํ•ด ํ•„๋“œ๋ฅผ ๊ตฌ์„ฑํ•œ ๊ฒฝ์šฐ ๋ฐ˜๋“œ์‹œ ABAP Program ์—์„œ๋Š” Table Work Area๋กœ ์„ ์–ธํ•ด์•ผ ํ™”๋ฉด๊ณผ Program ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋กœ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.


์˜ˆ์™ธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ๋กœ๋Š” Selection Screen์˜ Function Code ์ œ์–ด ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค.

( * 'SSCRFIELDS' Structure ํ˜•ํƒœ์˜ Work Area )

 

Table Work Area ์˜ ์ฃผ ๊ธฐ๋Šฅ์€ ํ™”๋ฉด ํ•„๋“œ์™€์˜ Interface ์ด์ง€๋งŒ,

์‹ค๋ฌด์—์„œ๋Š” ๊ตฌ์กฐ์ฒด DATA OBJECT๋ฅผ 'DATA' ๊ตฌ๋ฌธ๊ณผ๋Š” ๋‹ฌ๋ฆฌ ์ถ•์•ฝํ•˜์—ฌ ์งง๊ฒŒ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ด์  ๋•Œ๋ฌธ์—

๋‹จ์ˆœํžˆ ๊ตฌ์กฐ์ฒด ํ˜•ํƒœ์˜  DATA OBJECT ์šฉ๋„๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.

( * OPEN SQL์˜ SELECT SINGLE ๊ตฌ๋ฌธ ๊ฐ™์€ ๊ฒฝ์šฐ์—” DB TABLE๋ช…๊ณผ Work Area๊ฐ€ ๊ฐ™์„ ๊ฒฝ์šฐ 'INTO'๊ตฌ๋ฌธ ์ƒ๋žต์ด ๊ฐ€๋Šฅํ•˜๋‹ค. )

 

๋˜ํ•œ ๊ธฐ๋Šฅ์ ์ธ ์‚ฌ์šฉ ๋ชฉ์  ์™ธ์—๋„ ๋‹จ์ˆœํžˆ ํ”„๋กœ๊ทธ๋žจ ๊ฐ€๋…์„ฑ์˜ ๋ชฉ์ ์œผ๋กœ ํ˜„์žฌ ํ”„๋กœ๊ทธ๋žจ์— ์‚ฌ์šฉ๋˜๋Š” DB TABLE๋ฅผ

๋ฆฌ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„๋กœ๋„ ์„ ์–ธ ๋˜์–ด์ง„๋‹ค. 


์ถ”๊ฐ€๋กœ TABLES ๊ตฌ๋ฌธ์€ OO ( Object-Oriented ) ๊ฐœ๋…์ธ Class ๋‚ด์—์„œ๋Š” ์‚ฌ์šฉ ๋ถˆ๊ฐ€ํ•˜๋ฉฐ,

์„ ์–ธ์‹œ์—๋Š” ์ „์—ญ( Global )์œผ๋กœ ์„ ์–ธ๋˜์–ด์•ผ ํ•œ๋‹ค. 

( * ๊ธฐ๋ณธ์ ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์„ ์–ธ๋œ DATA OBJECT๊ฐ€ ํ™”๋ฉด์˜ ํ•„๋“œ์™€ ๊ฐ’์ด Interface๋˜๊ธฐ ์œ„ํ•ด์„  ์ „์—ญ์œผ๋กœ ์„ ์–ธ๋˜์–ด์•ผ ํ•œ๋‹ค. ) 

 

์„œ๋ธŒ๋ฃจํ‹ด( Perform ) ๋˜๋Š” Function Module ๋‚ด์—์„œ ์„ ์–ธํ•˜์—ฌ ๋กœ์ปฌ( Local )๋กœ๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ

SAP ABAP GUIDE์—์„œ๋Š” ๊ถŒ์žฅํ•˜์ง€ ์•Š๊ณ  ์žˆ๋‹ค.

TABLES ๊ตฌ๋ฌธ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™”๋ฉด์˜ ํ•„๋“œ์™€ Interfaceํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„์ด๊ธฐ ๋•Œ๋ฌธ์— ์„ ์–ธ๋œ ์œ„์น˜์— ์ƒ๊ด€์—†์ด

ํ”„๋กœ๊ทธ๋žจ ๋‚ด๋ถ€์ ์œผ๋กœ ์ „์—ญ์œผ๋กœ ์ธ์‹ํ•˜๋ฏ€๋กœ ๋กœ์ปฌ์˜ ์˜๋ฏธ์™€๋Š” ๋งž์ง€ ์•Š๋Š”๋‹ค.

 

๋งŒ์•ฝ ์„œ๋ธŒ๋ฃจํ‹ด์ด๋‚˜ Function Moudle ๋‚ด์— ๋กœ์ปฌ ์ฒ˜๋Ÿผ ์„ ์–ธํ–ˆ์„ ๊ฒฝ์šฐ์—๋Š” ๊ฐ’์˜ ์ œ์–ด ์ธก๋ฉด์—์„œ๋งŒ ๋กœ์ปฌ์˜ 

์†์„ฑ์„ ๊ฐ–๊ฒŒ ๋œ๋‹ค.

 

์ฆ‰, ๋กœ์ปฌ ์˜์—ญ์—์„œ TABLES๋กœ ์„ ์–ธ๋œ DATA OBJECT๋Š” ๋ฃจํ‹ด์„ ๋น ์ ธ๋‚˜์˜ค๋ฉด ํ• ๋‹น๋œ ๊ฐ’์€ ์‚ฌ๋ผ์ง€์ง€๋งŒ

๋ฉ”๋ชจ๋ฆฌ์—๋Š” ์—ฌ์ „ํžˆ ์ „์—ญ์ฒ˜๋Ÿผ ์กด์žฌํ•˜๊ณ  ์žˆ๋‹ค. 

 

๋‹ค์Œ์€ ๋กœ์ปฌ๋กœ TABLES๋ฅผ ์ด์šฉํ•ด ์„ ์–ธํ•œ DATA OBJECT์˜ ๋กœ์ปฌ๊ณผ ์ „์—ญ์˜ ๋ณ€ํ™”์‚ฌํ•ญ์„ ๋ณด์—ฌ์ฃผ๋Š” ๋””๋ฒ„๊น… ํ™”๋ฉด์ด๋‹ค.

< ์˜ˆ์‹œ. ์„œ๋ธŒ๋ฃจํ‹ด ๋‚ด์—์„œ TABLES๋กœ ์„ ์–ธ๋œ Data Object์— ๊ฐ’์ด ํ• ๋‹น๋œ ํ™”๋ฉด >

 

<์˜ˆ์‹œ. ์„œ๋ธŒ๋ฃจํ‹ด์„ ๋น ์ ธ๋‚˜์™€๋„ ๋กœ์ปฌ์ฒ˜๋Ÿผ ๊ฐ’์€ ์‚ฌ๋ผ์ง€์ง€๋งŒ ์ „์—ญ์ฒ˜๋Ÿผ ๋ฉ”๋ชจ๋ฆฌ์—๋Š” ์—ฌ์ „ํžˆ ์กด์žฌํ•จ >