IT Application Development Dept. Financial Team May 24, 2005 About SAP Query IT Application Development Dept. Financial Team May 24, 2005
목 차 SAP Query란? SAP Query 만들기 SAP Query 생성 절차 목 차 SAP Query란? SAP Query 만들기 SAP Query 생성 절차 SAP Query와 Quick View의 비교 SQ03 사용자 Group 정의 SQ02 Infoset 정의 SQ01 Query From User Group SAP Query Report의 통계와 순위
SAP Query란? Quick View와 마찬가지로 데이터 접근방법이지만 Quick view에 비해서 더욱 세분화된 Query를 만들 수 있다. 반드시 function area를 알아야 사용할 수 있다. SAP Query를 만들면 자동으로 ABAP Program으로 변환된다. Transport 될 수 있다. (Naming Role 존재) User group과 Function area가 존재한다. 이것을 이용해서 SAP Query를 사용할 수 있는 권한을 판별할 수 있다. Local Field : 기존 테이블의 field를 이용해서 새로운 field를 만들 수 있다.
SAP Query 만들기 SQ01 (T-code) SQ02 (T-code) SQ03 (T-code) 출력할 Field나 순서, 조회 조건 Field를 선택해 SAP Query를 완성한다. SQ02 (T-code) Sap Query에서 사용될 Infoset을 생성해 주는데 필요한 Standard Table을 찾아와 Join하고 사용할 Field들을 선택한다. SQ03 (T-code) 사용자의 그룹을 정의한다. User는 최소한 한 개의 User Group에 Assign 되어 있어야 한다. Function area는 User Group에 할당되어 진다. Query를 만들기 전에 반드시 Function area를 선택해야 한다. (현재 소속되어 있는 User Group에 해당되는 Functional area 리스트가 나열된다.) 그 중 한 개를 선택하면 된다.
SAP Query 생성 절차 SQ03 SQ02 SQ01 먼저 SQ03 에서 사용자 Group을 정의한다. User Groups InfoSet Query From User Group SAP Query 생성 절차 먼저 SQ03 에서 사용자 Group을 정의한다. 그리고 SQ02 에서 사용될 Table이나 Field를 선언하는 InfoSet을 선택한다. 마지막으로 SQ01에서 출력될 내용을 정의하고 원하는 질의조건을 생성하면 된다.
SAP Query와 Quick View의 비교 Several partial Lists possible (Statistics, ranked list) Only basic list Local fields can be added Only data source Programs can be linked (BBS) BBS not available Administration of query required (User groups, functional areas) No administrative effort, since each user can only access their own Quick views Functional areas must exist Simple, fast evaluations possible Transport possible Transport not possible
SQ03 사용자 Group 정의 - 1 STANDARD AREA Standard area 를 선택하면 현재 서버의 클라이언트에서만 생성된 질의를 사용할 수 있게 된다 GLOBAL AREA Global area 를 선택하면 모든 서버의 클라이언트로 CTS하여 사용이 가능하다. Global area 를 선택하고 사용자그룹에 그룹명을 넣고 Create 버튼을 클릭해 생성한다.
SQ03 사용자 Group 정의 - 2 Create 하시면 뜨는 Sub창에 간단한 Description을 작성하고 Save를 한다.
SQ03 사용자 Group 정의 - 3 Package 를 입력하는 Input 창이다. 관련 Package를 선택한다면 CTS Request No.가 지정될 것이다. CTS Request No.라는 것은 다른 서버의 클라이언트로 넘기기 위해 필요한 번호이다. 사용목적에 따라 다른 서버의 클라이언트로 넘기지 않을 것이라면 Local Object를 선택한다.
SQ03 사용자 Group 정의 - 4 마지막으로 저장버튼을 클릭하면 사용자 Group 정의는 완료되었다. User Group 을 생성한 뒤에 꼭 Assign을 해야 한다. Assign users and InfoSets를 클릭한다. Query를 할 수 있는 권한에 관하여 관련 User를 등록할 수 있는 부분이다. 아래 Input창에 사용자ID를 입력하면 입력된 사용자는 User Group에 등록이 됨과 동시에 해당 Query를 실행할 수 있는 권한을 가진다. 을 클릭하여 저장한다. 마지막으로 저장버튼을 클릭하면 사용자 Group 정의는 완료되었다.
SQ02 Infoset 정의 - 1 InfoSet의 이름을 정하고 Create 버튼을 클릭한다. 다음 오른쪽과 같은 창이 뜬다. Title과 DB를 정의할 수 있다. Name부분에 간단한 Description을 입력한다. Data Source부분에서 원하는 형태의 Table을 정의할 수 있다. Table join Using basis table은 특정한 Table들을 조인하여 원하는 데이터값을 가져오기 위해 Basic Table 1개를 정의하는 것이다. Direct read of table은 하나의 Table에서 원하는 데이터값을 가지고 올때 선택한다.
Basic Table과 Join할 Table명을 입력한다. SQ02 Infoset 정의 - 2 Insert Table ICON Basic Table과 Join할 Table명을 입력한다. 특정한 Basic Table을 선택하신 후 저장하시면 InfoSet의 Initial Screen 화면으로 넘어간다. QuickViewer의 LayOut모드과 비슷하게 나타나며 Join을 원하는 Table을 여러 개 연결할 수 있다. 이 Navigation 화면에서는 상단의 ‘Insert Table’아이콘을 클릭하여 Basic Table과 연결시켜준다. Join 조건을 잘 고려하면서 Table Join 한다.
SQ02 Infoset 정의 - 3 Table 추가 Table 삭제 Join Condition들을 확인할 수 있다. Join을 다 완료하면 InfoSet을 클릭한다. 현재 위의 Navigation에는 BUT000(고객), BUT020(주소), ADRC(주소) 3개의 Table들을 조인하고 있다. 자동으로 Join이 설정되며 불필요한 Join Link는 클릭하고 Context Menu(마우스 오른쪽 버튼)를 불러와서 ‘Delete Link’를 클릭하면 된다. 마지막으로 ‘InfoSet’아이콘을 클릭한다.
SQ02 Infoset 정의 - 4 Include all Table Fields Include Key Fields User의 조건에 맞게 선택할 수 있으며 보통 첫번째의 Include all Table Fields를 선택하여 모든 필드를 사용하도록 한다. Include all Table Fields 선택된 Table의 전체 필드를 사용한다. Include Key Fields 처음 선택한 Table의 Key Field를 필드그룹으로 사용한다. Create Empty Field Groups 필드그룹을 하나씩 새로 생성시 사용한다.
Basic Table과 Join한 Table들이 보인다. SQ02 Infoset 정의 - 5 Basic Table과 Join한 Table들이 보인다. (BUT000, BUT020, ADRC) 기본적인 Field Group이 Default로 나타나 있으며 각각의 테이블정보를 가지고 있다. 여기서 우리는 원하는 데로 Field Group을 설정할 수 있다. 1. Default Field Group를 지운다. 2. create Icon을 클릭하여 생성창을 띄운다. 3. Field Group명을 입력한 후 생성한다. 4. 원하는 필드를 Drag & Drop한다.
현재 삭제아이콘을 이용하여 Default 필드그룹을 지운 상태 SQ02 Infoset 정의 - 6 필드그룹 생성 아이콘 2 1 테이블명 필드명 현재 삭제아이콘을 이용하여 Default 필드그룹을 지운 상태 생성된 필드그룹 4 3 새로운 필드그룹명 입력 5 Drag & Drop 새로 생성한 필드그룹 안에 원하는 필드들만 Drag & Drop하여 필드그룹을 생성하였다. 6 최종 Generate 해준다.
마지막으로 Role / User Group Assignment를 SQ02 Infoset 정의 - 7 마지막으로 Role / User Group Assignment를 클릭한다.
SQ02 Infoset 정의 - 8 2 자신이 생성한 User Group를 선택하고 저장한다. 1
SQ01 Query From User Group - 1 3 원하는 Query명을 정의한다. User가 정의한 User Group Name을 선택한다. 2 User Gourp 을 선택할 수 있는 아이콘
SQ01 Query From User Group - 2 자신이 생성한 InfoSet을 더블클릭하고 확인을 누른다.
SQ01 Query From User Group - 3 관련정보를 입력한 후 Application Menu의 Basic List 를 클릭한다. Output Format User에게 출력할 때 어떤 포멧형식으로 출력할 것인가 정의하는 부분 ABAP List 나 ALV, Graphic 뿐만 아니라 Word File 이나 Excel File로 Exporting할 수도 있다.
SQ01 Query From User Group - 4 Layout Design Quick Viewer의 Layout 모드와 똑같다. 사용법은 그다지 어렵지 않다. Field Design(Selection Fileds) 선택한 필드들을 출력하기 위한 검색조건을 Check하는 곳이다. 여기서 선택한 필드들은 검색조건에 Field Design(List Field) List Field는 리스트에 들어가는 Field를 나타내고 있으며 Check시에 리스트에 추가시킬 수 있다. 원하는 필드의 데이터를 출력할 수 있다. 원하는 출력 Field의 값이나 출력형태, 검색조건 등을 세팅 다했다면 저장을 하고 뒤로 간다.
SQ01 Query From User Group - 5 Selection에 Check를 하면 이 부분에 필드가 추가되는데 바로 특정한 Value나 Option을 지정할 수 있다. 여기서 기본 검색값을 지정할 수 있다. Basic List 에서 Check한 필드들이 이미 Check 되어 있다. Selection과 Output에 대한 Check Box가 있다. 알다시피 Selection은 검색조건에 관련되어 있어서 Check시 검색의 조건이 되고 Output은 리스트를 출력할 시에 보여줄 필드들을 선택하는 부분이다. Basic List에서 이미 Check하였지만 현재 모드에서도 커스터마이징 할 수 있다. Output 아이콘을 클릭하여 원하는 결과값을 볼 수 있다.
SQ01 Query From User Group - 6 Output 결과화면 자신이 지정한 검색조건에 맞게 Field들의 정보가 리스트 형태로 보여지고 있다. Application Menu에서 제공하는 기능들도 많다. - 오름/내림차순 - 찾기 - 필터링 - View - Print - Export - Change Layout - Display graphic - …
SQ01 Query From User Group - 7 Standard Output 방법 SQ01에서 설정이 다 끝나면 Application Menu 중 실행에 관련된 아이콘을 누름으로써 표준 Output이 진행된다. 특정한 Value를 지정하여 실행시킨다. InfoSet에 Value가 지정되어 있다면 실행시 Default로 지정이 된다. BackGround Job으로 설정할때 (스케줄링에 관하여)
SQ01 Query From User Group - 8 Standard Output 결과화면
SAP Query Report의 통계와 순위 - 1 SAP Query는 Quick View에서 지원되지 않는 Report의 통계와 순위를 만들 수 있다. (세부적인 기능) ‘VDARL’이란 Loan 테이블의 약정자본필드를 기준으로 통계 및 순위를 예로 테스트해보겠다. SQ01 과 SQ02 단계는 생략하겠다.
SAP Query Report의 통계와 순위 - 2 기본적인 필드의 값들을 채워준다. Application Menu를 보면 Statistics와 Ranked List 버튼이 있다. Statistics는 통계를 나타낸다. Ranked List는 순위를 나타낸다.
SAP Query Report의 통계와 순위 - 3 Statistic 버튼을 클릭한다. Title - NO 에는 출력되는 순서에 따라 임의로 번호를 주는 것이다. 00 ~ 98 사이의 값으로 선택해야 한다. - Srt 는 Field별로 출력할 때 정렬하는 순서를 정하는데 기본적으로는 오름차순 정렬을 한다. - De 에 체크해 주면 해당 Field를 내림차순으로 정렬한다. - Su 는 체크한 Field값으로 Sub Total을 구하게 되며, Ns 도 같은 기능이나 Report를 Sub Total별로 나누에 보여주게 된다. - Len 에는 필드의 길이를 입력하게 되어있는데 입력하지 않으면 기본값으로 정의된다. - 숫자값 Field에는 No, Av, %, 꿍, unit을 체크하게 되어 있는데 No 는 통계를 나타낼 때 해당 수량, Av 는 평균값, % 는 점유율값, 꿍 는 반올림수치, Unit 은 금액일 경우 단위를 넣어준다. 통계시 기준이 되는 숫자로 된 필드 (통계나 순위 레포트를 하기 위해서는 숫자필드가 꼭 필요하다.) Output 시에 출력되는 Line의 구조를 보여준다.
SAP Query Report의 통계와 순위 - 4 Ranked List 버튼을 클릭한다. Title - NO 에는 출력되는 순서에 따라 임의로 번호를 주는 것이다. 00 ~ 98 사이의 값으로 선택해야 한다. - Crit 은 해당 체크된 것의 순위를 Report하게 되는데 하나 이상이 있어야 저장을 할 수 있다. - Asc Report를 오름차순으로 볼 것인지를 체크하는 것이다. - Len 에는 필드의 길이를 입력하게 되어있는데 입력하지 않으면 기본값으로 정의된다. - 숫자값 Field에는 No, Av, %, 꿍, unit을 체크하게 되어 있는데 No 는 통계를 나타낼 때 해당 수량, Av 는 평균값, % 는 점유율값, 꿍 는 반올림수치, Unit 은 금액일 경우 단위를 넣어준다. Output 시에 출력되는 Line의 구조를 보여준다.
SAP Query Report의 통계와 순위 - 5 Report Total Statistic 에서 정의한 통계 Report
SAP Query Report의 통계와 순위 - 6 Ranked List 에서 정의한 순위 Report
Application Development Dept Financial Team 수고하셨습니다. Application Development Dept Financial Team