전체 글 8

[ABAP] RFC

RFC(Remote Function Call): 웹 데이터를 SAP에서 송수신할 수 있는 기능을 하는 Function 웹과 연동이 필요한 프로세스의 경우 RFC를 필수로 사용한다.  Case: 임시전표 삭제 RFC 생성웹에서 회사코드, 회계연도, 전표번호를 받아온 후 SAP에서 해당 전표를 찾아 삭제하는 RFC를 생성해보자. 1. RFC 생성(Import, Export 등의 값 정의)2. 소스코드 작성 - 삭제할 전표의 회사코드, 전표번호, 회계연도를 웹에서 입력받기3. 해당 정보를 조건으로 삭제할 전표 셀렉4. DELETE 펑션 태워서 삭제5. 결과여부 메시지 출력 Function 그룹 우클릭 -> CreateAttributes- Short Text에 내역 작성- Processing Type: RFC의..

SAP/ABAP 2024.08.09

[SAP] LSMW

LSMW(Legacy System Migration Workbench): 다른 시스템(레거시 시스템)으로부터 SAP로 단일 또는 주기적으로 데이터 전송을 지원 PC의 스프레드시트 표 등의 파일에서 레거시 데이터를 가져온다.데이터를 원래(레거시 시스템)형식에서 대상(SAP)형식으로 변환한다.SAP의 표준 인터페이스(IDoc 인바운드 처리, 일괄 입력, 직접 입력)를 사용하여 데이터를 가져온다.활용 업무- 마스터 데이터 생성/변경- 트랜잭션 데이터 생성 BDC와 유사하나 프로그램 개발 대신 TCODE: LSMW 화면에서 처리한다. LSMW를 사용하여 자산 내역을 변경해보자 Test Case: 자산 2000~2009(10건)의 추가 자산 설명 필드(TXA50)에 'TEST'값 채우기   ▶ TCODE: LSM..

SAP/기타 기능 2024.08.06

[ABAP] FIELD-SYMBOL 필드 심볼

동적으로 데이터 처리를 할 수 있는 구문  조건 경우의 수가 많을 때 필드 심볼 로직을 통해 동적으로 처리할 수 있다. --> 다양한 조건을 한 로직을 통해 받을 수 있기 때문에 편리함 CASE: FAGLFLEXT 테이블(계정 잔액 테이블)의 잔액 필드에 2000씩 더하자TSL01 ~ TSL16까지 +2000필드 수가 많기 때문에 필드 심볼을 사용해서 동적으로 처리해보자TSLXX처럼 필드 이름에 규칙이 있는 경우에 필드 심볼을 사용할 수 있다.  방법 1DATA : lt_data TYPE TABLE OF faglflext, ls_data LIKE LINE OF lt_data, lv_field TYPE fieldname, "필드 이름 만들 변수 lv_mon(2) T..

SAP/ABAP 2024.08.05

[ABAP] 날짜 관련 함수

FIMA_DAYS_AND_MONTHS_AND_YEARS: 기간 사이의 개월 수 구하기(일수, 연수 구하기도 가능)기간 24개월 조회만 가능하도록 제한할 때 구현"기간 사이의 개월 수 구하기 CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS' EXPORTING I_DATE_FROM = GV_MON_LOW "시작 날짜 (TYPE SY-DATUM 20220101) I_DATE_TO = GV_MON_HIGH "종료 날짜 IMPORTING "E_MONTHS = "일수 E_MONTHS = GV_MONTH. "개월 수 (TYPE I) "E_YEARS = "연..

SAP/ABAP 2024.08.01

[ABAP] MOVE-CORRESPONDING, KEEPING TARGET LINES

MOVE-CORRESPONDING: 인터널 테이블 데이터 값을 옮겨주는 구문MOVE-CORRESPONDING ITAB TO ITAB.MOVE-CORRESPONDING WA TO WA. *1MOVE-CORRESPONDING ls_sflight TO gs_data.*2gs_data-carrid  = ls_sflight-carrid.gs_data-connid = ls_sflight-connid.gs_data-fldate  = sy-datum.gs_data-price  = ls_sflight-price.gs_data-planetype = ls_sflight-planetype.위 코드 1, 2는 ls_sflight에서 gs_data로  데이터를 옮겨주는 구문으로, 같은 결과값을 가진다.MOVE-..

SAP/ABAP 2024.08.01

[ABAP] FOR ALL ENTRIES IN 인터널 테이블과의 조인

인터널테이블과의 조인 = INNER JOIN SELECT * INTO CORRESPONDING FIELDS OF TABLE Itab FROM 셀렉할 Table FOR ALL ENTRIES IN 조인할 Itab WHERE 필드 EQ 조인할 Itab-필드. - INNER JOIN이 FOR ALL ENTRIES IN으로 쓰이고 ON이 WHERE로 쓰인다.- SORT 필요. WHERE조건에 들어갈 필드 기준으로 중복제거할 것- SELECT 구문 실행 전 중복제거한 ITAB이 INITIAL이 아닐 경우만 SELECT 구문 실행할 것- ITAB이 INITIAL인 경우로 FOR ALL ENTRIES IN하면 테이블의 모든 레코드를 가지고오게 됨 데이터 SELECT할 테이블: BKPF조인할 인터널 테이블: IT..

SAP/ABAP 2024.07.30

[SAP] SE16N 테이블 데이터 수정/삭제

T-CODE: SE16N 1. 데이터 수정/삭제할 테이블명 입력2. /H입력 후 엔터로 디버깅 걸어준 후 실행(F8) 3. 디버깅 화면 변수 값에 GD-EDIT, GD-SAPEDIT 입력 → 연필모양 아이콘 클릭  4. Value에 ‘X’ 입력(반드시 대문자로!) 후 엔터5. 실행(F8) 그러면 SE16N 조회 화면이 수정모드로 열리게 된다. 이제 여기서 데이터 수정/삭제하고 저장하면 됨 ~

SAP/기타 기능 2024.07.29

[SAP FI] 대체 조정 계정 추가

고객 또는 공급업체에 대한 대체 조정 계정을 추가하는 방법 1. FD03(고객 조회) 또는 FK03(공급업체 조회) T-CODE에서 조정 계정 확인2. SPRO 대체 조정 계정 정의 화면에서 해당 조정 계정에 대한 대체 조정 계정 추가1. T-CODE: FD03(고객 조회), FK03(공급업체 조회) 아래 예시는 고객으로 진행. - 고객, 회사코드 입력  - 회사코드 데이터 - 조정계정 확인 2. T-CODE: SPRO 재무회계(신규) -> 채권 및 채무 -> 비즈니스 트랜잭션 -> 대체 조정 계정로 전기 -> 대체조정계정 정의 - 계정과목표 입력 - 신규 엔트리 추가 - G/L계정 필드에 FD03에서 확인한 조정계정 입력, 대체 G/L 필드에 신규 조정계정 입력 후 저장

SAP/SAP FI 2024.07.29