SAP97 [개발Tip] RESTful API 호출 2가지 방법(CL_HTTP_CLIENT, CL_REST_HTTP_CLIENT) CL_HTTP_CLIENT CL_REST_HTTP_CLIENT SAP에서 외부 RESTful API를 호출하여 JSON 데이터를 받는 2가지 방법입니다. GET/POST/PUT/DELETE 와 같이 RESTful 에서 사용하는 HTTP Method 모두 사용 가능하며 최대한 간단하게 예시 소스코드를 작성했습니다. 참고로 CL_REST_HTTP_CLIENT는 내부적으로 CL_HTTP_CLIENT를 호출하는 방식입니다. POST와 GET의 경우에는 HTTP_POST, HTT_GET 펑션을 이용해도 동일한 결과를 얻을 수 있습니다. # CL_HTTP_CLIENT 예시 PARAMETERS: P_URL TYPE STRING LOWER CASE, "URL P_DEST TYPE RFCDISPLAY-RFCDEST LO.. 2023. 6. 28. [Class] /UI2/CL_JSON=>SERIALIZE, DESERIALIZE /UI2/CL_JSON /UI2/CL_JSON=>SERIALIZE /UI2/CL_JSON=>DESERIALIZE SAP에서 JSON Parsing #1. 사용예시 Importing 파라미터로 여러가지를 제공하니 해당 Class의 Serialize, Deserialize Method를 먼저 확인 한 후 개발에 활용하길 권장합니다. Pretty_mode 는 여러가지가 있지만, 아래 3가지를 가장 많이 사용합니다. /UI2/CL_JSON=>PRETTY_MODE-NONE ABAP 필드명 그대로 대문자로 JSON 키 설정 /UI2/CL_JSON=>PRETTY_MODE-LOW_CASE ABAP 필드명을 단순히 소문자로만 변경 /UI2/CL_JSON=>PRETTY_MODE-CAMEL_CASE CamelCase 형식에.. 2023. 6. 28. [Report] ZBDC - 미리보기 기능 추가된 BDC 실행 프로그램 ZBDC미리보기 기능 추가된 BDC 실행 프로그램 SAP 운영 중 대량의 트랜잭션을 처리해야 할 경우 BDC(Batch Data Communication)를 이용하여 CBO를 만들거나, 또는 LSMW(Legacy System Migration Workbench)를 이용하여 대량의 데이터를 처리 할 수 있습니다. 단, 긴급하게 처리를 요하는 경우나 일회성으로 끝나는 작업에 대해서는 ZBDC와 같이 BDC를 직접 실행할 수 있는 CBO를 이용하는것도 좋은 방법입니다. #1. BDC 레코딩시 주의 사항레코딩 후에 값을 입력받을 항목에 대해 필드 값을 삭제 후 BDC를 저장해야, ZBDC의 Excel Template에 입력항목으로 표시됩니다. #2. 사용 방법 1) BDC 레코딩 선택 또는 TXT파일로 된 .. 2023. 6. 26. [Function] BP_JOBLOG_READ - 백그라운드 작업 로그 조회 BP_JOBLOG_READ 백그라운드 작업 로그 조회 # 사용예시 REPORT YTEMP_SANDBOX. PARAMETERS: P_JOBN TYPE TBTCO-JOBNAME OBLIGATORY, P_JOBC TYPE TBTCO-JOBCOUNT OBLIGATORY. DATA LT_JOBLOGTBL TYPE STANDARD TABLE OF TBTC5. CALL FUNCTION 'BP_JOBLOG_READ' EXPORTING CLIENT = SY-MANDT "백그라운드 작업 클라이언트 TBTCO-AUTHCKMAN JOBCOUNT = P_JOBC "백그라운드 작업 번호 TBTCO-JOBCOUNT * JOBLOG = ' ' JOBNAME = P_JOBN "백그라운드 작업 이름 TBTCO-JOBNAME * LINE.. 2023. 6. 26. [Function] GET_JOB_RUNTIME_INFO - 현재 백그라운드 작업 정보 GET_JOB_RUNTIME_INFO 현재 백그라운드 작업 정보 #1. Function 사용 방법 CALL FUNCTION 'GET_JOB_RUNTIME_INFO' IMPORTING EVENTID = LV_EVENTID "Event 배치작업의 이벤트 ID EVENTPARM = LV_EVENTPARM "Event 배치작업의 이벤트 정보(파라미터) EXTERNAL_PROGRAM_ACTIVE = LV_EXTERNAL_PROGRAM_ACTIVE JOBCOUNT = LV_JOBCOUNT "현재 백그라운드 작업 번호 (TBTCO 키필드) JOBNAME = LV_JOBNAME "현재 백그라운드 작업 이름 (TBTCO 키필드) STEPCOUNT = LV_STEPCOUNT "현재 작업의 단계 JOB_CATALOG_ENT.. 2023. 6. 26. [개발Tip] REPLACE의 REGEX (정규표현식)를 이용한 특수문자 제거 REPLACE의 REGEX (정규표현식)를 이용한 특수문자 제거 엑셀 업로드, 또는 여러 입력 값 등에서 숫자만을 추출하기 위해 Replace문을 사용합니다. Replace 문 사용시 Regex 를 이용하여 좀더 간단하게 숫자 이외의 것들을 제거하는 예시입니다. ABAP 편집기에서 Replace문에서 F1을 누르면 좀더 다양한 정규표현식이 있이니 여러 상황에서 적절하게 사용하면 좀더 쾌적한 개발을 할 수 있습니다. 또한, 기존 Replace 문 외에 String function으로 제공되는 Replace문을 이용하면 in-line으로 더욱 간편하게 활용 할 수 있습니다. # 소스코드 예시 DATA: LV_INPUT(50) TYPE C, LV_OTPUT LIKE LV_INPUT. DATA(LO_DEMO_O.. 2023. 6. 22. [Function] BP_JOB_DELETE - 백그라운드 작업 삭제 BP_JOB_DELETE 백그라운드 작업 삭제 비동기 처리를 위해 생성한 백그라운드 작업과 같이 이력이 불필요한 작업에 대해 삭제 할수 있습니다. # 사용 예시 SELECT A~JOBNAME, A~JOBCOUNT FROM TBTCO AS A WHERE A~JOBNAME LIKE 'XS_%' "작업 이름이 XS_ 로 시작하는 작업만 AND A~STATUS EQ 'F' "작업 결과가 정상종료 AND A~AUTHCKMAN EQ @SY-MANDT INTO TABLE @DATA(LT_TBTCO). LOOP AT LT_TBTCO INTO DATA(LS_TBTCO). CALL FUNCTION 'BP_JOB_DELETE' EXPORTING JOBCOUNT = LS_TBTCO-JOBCOUNT JOBNAME = LS_TB.. 2023. 6. 22. 이전 1 ··· 8 9 10 11 12 13 14 다음