메뉴 건너뛰기

SAP 한국 커뮤니티

[re] BAPI에 대해

sapjoy 2007.03.28 10:01 조회 수 : 5133 추천:154

 





    BAPI는 SAP R/3에서 사용되는 API(응용프로그램 인터페이스)이다. R/3 시스템은 BOR(Business Object Repository) 내에 Data와 Process를 BO(Business Object)의 형태로 가지고 있다. 외부로부터 R/3내부 BO로의 연결의 방법으로서 SAP에서 제공하고 있는 API가 바로 BAPI이다. BAPI는 Visual Basic, JAVA, C++, Lotus Notes등 다양한 외부시스템에서 SAP의 내부적 Business Process를 이용하도록 하는 방법이다.

    BAPI의 기능은 BO의 생성,조회,변경이며, 실질적으로는 생산,영업,자재오더 및 인사Infotype의 생성,조회,변경 등 R/3 시스템의 전 모듈의 Process를 대상으로 한다.







<그림1 : BAPI 개념도 >


    일반적으로 API는 프로그램 내에서 실행을 위해 특정 서브루틴에 연결을 제공하는 함수를 호출함으로써 구현된다. 그러므로 하나의 API는 함수 호출에 의해 요청되는 작업을 수행하기 위해 필요한 몇 개의 프로그램 모듈이나 루틴을 가진다. BAPI 또한 이와 유사하게 구성되어 있으며, 단순히 관련 함수의 모음이 아닌 Process를 제어하는 API로서 기능한다.

    BO는 각각의 키필드와 Methods로 구성되어 있고, 각각의 Methods는 Function과 1:1로 매칭된다.




    SAP R/3 시스템은 BAPI Explorer라는 BAPI전용 Tool을 내장하고 있으며, 여기서 각각의 BO에 지정되어있는 BAPI Function을 조회할 수 있다. R/3가 Function관련 Tool로서 지원하는 Function Builder에서는 이러한 각각의 BAPI Function module을 RFC interface generation 기능을 사용하여 C나 Visual Basic등의 text code를 생성할 수 있다.




< 그림2 : RFC Interface의 생성 >




< 그림3 : RFC Call을 통한 BAPI Function module의 사용 >





    SAP에서는 R/3, BAPI에 새로운 인터페이스 기능을 지속적으로 추가하고 있다. XML을 BAPI에  도입하였고, IBM의 자바용 툴인 Visual Age를 자바 통합 개발 툴로서 인증했으며, MS의 Visual Studio 6.0를 R/3와 결합하여 유저가 제작한 응용프로그램과 R/3의 Business Framework를 통합할 수 있도록 하였다. 따라서 향후 SAP R/3 시스템과 외부 응용프로그램과의 연동은 더욱 강화될 전망이다.




    SAP Online Help (Ver. 4.6C) : SAP Library à Cross-Application Components à Business Framework Architecture à BAPI User Guide
    R/3 System : Tools à Business Framework à BAPI Browser (T-code : BAPI)
    TABC41 1/2 : 19장

번호 제목 글쓴이 날짜 조회 수
6387 <img src=3.gif>Runtime Error->OBJECTS_OBJREF_NOT_ASSIGNED [2] 써언 2011.02.09 5381
6386 <img src=3.gif>alv 테이블 필드 숨기기에 대해 질문드립니다. [4] 유정a 2010.10.20 5375
6385 [질문] transporting의 역활 좀 알고 싶습니다. [3] 나도아밥퍼 2007.06.13 5353
6384 ALV 프로그램에서 어플리케이션 툴바에 행추가 버튼을 추가하고자 합니다. [2] 초보생 2007.07.24 5347
6383 [요청]BAPI BAPI_GOODSMVT_CREATE 펑션의 기본적인 사용법 [1] 댕댕 2008.05.04 5304
6382 <b>[완료]</b><b>[완료]</b>질문이 있습니다. 로미오 2006.12.29 5303
6381 [ERROR] READ_REPORT_LINE_TOO_LONG 해결 방법좀 알려주세요. [7] file D.Y.Kim 2007.07.24 5279
6380 [요청]BAPI_SALESORDER_CREATEFROMDAT2 에서 가격조건(세금부분, 정가) 부분의 값을 가져오지 못합니다. [2] file 효방 ^-^ 2008.12.19 5252
6379 <img src=3.gif>엑셀 다운로드 질문 엑셀 열리지 않고 자동으로 되도록. [5] 돌맹이 2010.10.28 5245
6378 <b>[완료]</b><b>[완료]</b>[BAPI_TRANSACTION_COMMIT] commit work 와 commit and wait 의 차이점 문의 [5] SUGI 2008.01.28 5226
6377 <img src=3.gif>BDC 프로그램 CALL Transaction 옵션 중에서 RACOMMIT 옵션이 하는 역할이 무엇인가요? [8] 카루이안 2009.10.07 5223
6376 [요청]insert 로 db테이블에 데이터를 저장할때.... [4] bizarre 2008.05.19 5189
6375 <img src=3.gif>GUI_DOWNLOAD 로 다운받은 파일에서 한글이 [3] 하오 2010.01.08 5185
6374 <b>[완료]</b>ALV이벤트 핸들러선언부분에서 별도로 register_edit_event 하는 이유 & ALV스탠다드툴바 명령어 변수 알아내는 법 [13] 하오 2008.07.16 5184
6373 [요청][초급] 테이터 중에 내가 원하는 문자를 찾기 !!!!!! [6] 사상화 2008.08.28 5169
6372 <img src=2.gif>금액필드에서 콤마(,) 를 제거 하고 싶습니다. [3] 하하하하 2010.12.08 5166
6371 <b>[완료]</b>개인pc에 SAP NetWeaver 2004s 설치방법에 질문입니다. [5] file 로미오 2006.12.24 5165
6370 <img src=3.gif>runtime error문제입니다. 무슨 말인지 잘 모르겠어요. 좀 알려주실수있을까요 [2] 쭈니 2010.09.15 5138
» [re] BAPI에 대해 [5] sapjoy 2007.03.28 5133
6368 <img src=3.gif border=0>대소문자 구분없이 쿼리 하는 법 [8] woong 2009.08.26 5116