목록SAP (38)
쌓고 쌓다

다음은 사원 테이블이다. GESCH 필드에 성별이 저장되어 있는 상황이다.이 필드의 값이 1이라면 남자, 2라면 여자인 상황이다. 부서 ENAME은 부서 코드이다. 프로그램에서 부서코드로 부서명을, 성별 값을 가지고 남성, 여성 라디오 버튼을 표시해야하는 상황이다. 우리는 데이터를 보여줄 Structure를 하나 만들면 된다. ORGTX : 부서명을 위한 텍스트 컴포넌트 (CHAR 25)MALE : 남성 라디오 버튼을 위한 컴포넌트 (CHAR 1)FEMALE : 여성 라디오 버튼을 위한 컴포넌트 (CHAR 1)위 3개의 컴포넌트를 추가한 Structure를 만들어 사용하면 된다. 우리는 조회한 사원 정보를 가지고 이 Structure에 값을 채워 보여주면 된다. Screen Painter에서 Dicti..

Function GroupFunction Module을 만들때Function Group이 필요하다. Function Group은 Function Module들을 모아두는 곳이다. 특정 Function Module을 호출할때해당 Function Module이 포함된 Function Group의 모듈들이 모두 올라온다. Function Group에 너무 많은 Function Module을 넣지 않도록 하자. 또한 실행하는 모듈의 코드에 문제가 없어도다른 모듈의 에러로인해 고생할 수도 있다고 한다.. Function Group 생성방법 1T-code : SE37인 Function Builder에서 Function Group을 생성할 수 있다. 방법 2T-code : SE80인 Object Navigator에..

Fixed Value도메인에 입력 가능한 값을 지정할 수 있다. Fixed Value 생성도메인 생성 시 Value Range 탭 페이지에서Fixed Value 설정이 가능하다. 예시로 'A', 'F', 'S' 값만 입력이 가능하도록 Fixed Value를 설정했다. 스크린 프로그램(Module Pool)에서 Fixed Value위의 예시로 든 ZAREAF18 도메인으로 ZTAREAF18 이름으로 Database Table을 생성했다. Screen Painer에서 ZTAREAF18 테이블의 AREA 필드로인풋 필드를 생성했다. Fixed Value로 인해서 Search Help 표시가 생기기도 하며 프로그램에서 Fixed Value 외의 값을 입력했더니자동적으로 Input Check를 해준다. 레포트 프..

Instance Constructor생성자는 메서드이다.메서드명은 CONSTRUCTOR로 작성해야 한다.생성자는 PUBLIC SESSION에 작성해야 한다. Importing과 Exception만 가질 수 있다. 위의 예시 코드에서Object 생성 시에 넘겨준 IV_MAKE(메이커)와 IV_MODEL(모델명)을 가지고생성된 Object가 갖는 메이커(MV_MAKE)와 모델명(MV_MODEL) Attribute를 갱신하는생성자(Constructor)를 작성해 보자. Contructor 예시생성자의 메서드명은 CONSTRUCTOR로넘겨받는 파라미터 IMPORTING과 예외 EXCEPTIONS를DEFINITION 해주자. 생성 시에 EXCEPTION이 발생할 경우 해당 오브젝트는 생성되지 않는다. 생성자 메서..

Functional MethodStatic Method인 GET_N_O_AIRPLANES는 비행 횟수 RV_COUNT를정수 타입 I로 반환하는 메서드이다. 위와 같이 RETURNING VALUE 구문을 포함하고 있는 메소드를 Functional Method라고 한다. RETURNING VALUE는 메소드의 결과로 값을 반환하는 것이다. Functinal Method로 호출한 부분에서는RECEVING을 사용하여 받아온 값을 변수에 할당 받을 수 있다. 메소드의 구문에서 다른 파라미터에는 값이 여러개가 올 수 있지만RETURNING에는 하나의 파라미터만 올 수 있다. 그래서 Functinal Method는 RETURNING VALUE가 무조건 하나이므로다음과 같이 암묵적으로 메소드 결과를 변수에다 값을 할..

COLLECT 키워드Structure를 Internal Table에 넣을때COLLECT INTO 구문을 사용할 수 있다. COLLECT 키워드는 키 필드를 기준으로 다른 필드들의 누적 값을 계산한다.키 필드는 필드중에서 Character로 된 필드가 키 필드가 된다.Numeric도 키 필드가 된다. Numeric은 숫자로 이뤄진 Char이다.문자형 수치 데이터를 위해 존재한다. 예제를 들어보면 이름(Char)과 나이(Numc)를 기준으로몇시간을 공부했는지 HOURS 필드와며칠을 공부했는지 DAYS 필드가 존재한다. 이름과 나이를 키 필드로 누적 공부 시간과 일 수를 계산해보자. COLLECT 동작 방식먼저, 텍스트로 COLLECT 키워드의 동작 방식을 이해해보자. "이름 나이 공부시간 공부일수" 필드..

Database View여러 테이블들을 하나의 테이블 형태로 볼 수 있는 뷰이다.Database View에서는 Left Join이 아닌 Inner Join으로 뷰를 생성한다. 고객(cust)의 예약(book) 정보를 가지고 Database View를 생성해보자.T code : SE11에서 View를 Create한다. Database View를 체크한다. 뷰에 필요한 필드들을 갖는 테이블들을 작성하고 Relationships 버튼을 누른다. 예약(Book)을 중심으로 고객(SCUSTOM) 테이블, 비행(SPFLI) 테이블을 갖고 오고자SBOOK을 입력하고 Relationships 버튼을 눌렀다. SCUSTOM과 SPFLI가 있는 체크박스를 누르고 Copy한다. 외래키를 통해 Join Conditions가 ..

Search Help사원 테이블(ZEMP_F18)에 ORGEH는 F4로 Input Help를 띄울 수 있다. 사원 테이블의 ORGEH 필드는 외래키로 부서와 연결되어 있기 때문이다. 그러나Input Help에 부서코드만 뜨지 부서명은 안 뜬다. Input Help에 부서 코드와 부서명이 함께 뜨도록Search Help를 생성하고 등록해보자. Search Help 생성T-Code : SE11에서 Search Help를 생성한다. 엔터 Selection Method에 부서 테이블을 작성한다.Selection Method에 테이블이나 뷰(database, search, help 뷰가 올 수 있다.)가 와야한다.ORGEH는 부서코드ORGTX는 부서명 텍스트이다.. Dialog type : Display valu..