반응형

분류 전체보기 20

[ABAP] GET_WEEK_INFO_BASED_ON_DATE / 해당 날의 주차와 월요일, 일요일 산출

기능 설명GET_WEEK_INFO_BASED_ON_DATE는 특정 날짜가 속한 연도의 몇 번째 주인지 계산하고 해당 주차의 월요일과 일요일을 산출할 수 있습니다.Signature예시 코드DATA: lv_date TYPE sy-datum, " 입력할 날짜"lv_week TYPE N LENGTH 6, " 주차 정보가 저장될 변수"lv_monday TYPE sy-datum, " 해당 주의 월요일 날짜"lv_sunday TYPE sy-datum. " 해당 주의 일요일 날짜"lv_date = sy-datum. " 월요일 로컬 변수를 현재 날짜로 선언"CALL FUNCTION 'GET_WEEK_INFO_BASED_ON_DATE' EXPORTING date = lv_date " 입력할 날짜" IMPORTING w..

[ABAP] FIMA_DAYS_AND_MONTHS_AND_YEARS / 연, 월, 일 수 기간 계산

모두 크리스마스때 잘 보내셨나요~ 저는 맛있는거 먹고 잘보냈답니다~ 날짜에 대한 기간을 계산해야하는 상황도 종종있습니다. 이때 "FIMA_DAYS_AND_MONTHS_AND_YEARS"를 사용하면 특정 날짜 사이의 연, 월, 일 기간을 계산하여 정수 값으로 반환 받을 수 있습니다. 기능 설명 FIMA_DAYS_AND_MONTHS_AND_YEARS 함수 모듈은 두 날짜 사이의 일수, 개월 수, 연수를 계산하는 SAP ABAP 함수입니다. 주어진 시작일과 종료일을 입력으로 받아, 그 사이의 기간을 일, 월, 연 단위로 반환합니다. 이 함수는 주로 날짜 간의 차이를 계산할 때 사용됩니다.Signature예시 코드DATA: EDAYS TYPE I, " 두 날짜 사이의 일수를 저장할 변수" EMONTHS TYPE..

[ABAP] F4IF_INT_TABLE_VALUE_REQUEST / F4 Search Help Hitlist 출력

개발을 하다보면 정말 많이 Search Help 기능을 추가하게 됩니다. 이때 Search Help에 출력할 정보를 Hitlist라고 하는데 이 Hitlist의 내용을 동적으로 출력하고 싶다면 "F4IF_INT_TABLE_VALUE_REQUEST" Function를 사용하여 Search Help Exit이나 PROCESS ON VALUE-REQUEST 이벤트 블럭에 안에 작성해야합니다. 기능 설명 이 Function module 를 사용하면 내부 테이블의 값을 기반으로 사용자에게 선택할 수 있는 값을 바탕으로 사용자에게 선택 가능한 값( Hitlist )을 제공하는 팝업 창을 생성합니다. 또한 사용자가 특정 필드를 입력할 수 있는 값들을 유도하고, 선택할 값들을 편하게 지정하기 위해 사용됩니다. 사용자가..

[ABAP] DATE_GET_WEEK / 주차 수 계산 일(Date) → 주(Week)

SAP에서는 생각보다 주 단위의 날짜계산을 할때가 종종있습니다. 이때 "DATE_GET_WEEK" Function을 사용하면 Date(일자)를 Week(주차)로 변환할 수 있습니다. 기능 설명Date 에 날짜를 입력하면 Week 로 그 날짜가 그 해의 몇 주차인지 출력해줍니다. ( YYYYWW )입력일자가 해당 년도의 몇 번째 주차인지 return합니다.Signature예제 코드CALL FUNCTION 'DATE_GET_WEEK'EXPORTING date = sy-datum "현재 날짜 값을 가지는 시스템 변수 Format YYYYMMDD"IMPORTING week = lv_week. "해당 날짜의 주차 수 Format YYYYMM" 실행 결과 주의 사항날짜는 1901.01.01에서 2098.12.31 ..

[ABAP] CONVERSION_EXIT_ALPHA_OUTPUT / Leading Zero 제거

오늘도 간단한 Function를 다뤄보겠습니다. " CONVERSION_EXIT_ALPHA_OUTPUT" Function은 앞에 Leading Zero로 인해 생긴 0을 지워주는 Function입니다. 사실 해당 기능이 필요한 상황 대부분은 Domain이나 Screen Field Attribute의 Conversion Exit에 "ALPHA"를 넣어주면 해결되고 이것이 더 편리하기는 합니다. 하지만 Function를 통해 0를 제거해야할 상황이 있기 때문에 다뤄보도록하겠습니다.기능 설명 데이터를 조회하여 사용하다 보면 앞에 0 으로 채워져 있어(Leading Zero) 앞에 있는 불필요 0 을 제거해야 하는 경우가 있습니다. 이러한 0을 제거할 수 있는 Function입니다. 00001234 1234로..

[ABAP] CLOI__PUT_SIGN_IN_FRONT / "-" 앞으로 가져오기

오늘은 간단하게 " - "부호를 앞으로 가져오는 "CLOI__PUT_SIGN_IN_FRONT"를 알아보겠습니다.기능 설명ABAP에서 음수에 대한 표현식은 ‘-’ 부호가 맨 뒤로 붙습니다. 이를 보편적으로 표기하는 방법으로 변환하기 위해 ‘-’ 부호를 숫자 맨 앞으로 옮기기 위한 Standard Function입니다. 해당 Function으로 사용자가 익숙한 방식으로 음수에 대한 정보를 읽을 수 있습니다 Signature정말 간단하죠? 예제 코드PARAMETERS: pa_value TYPE c LENGTH 5 DEFAULT -1000.START-OF-SELECTION.WRITE:/ |변경 전 : { pa_value }|.CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'CHANGING v..

[ABAP] GET_DOMAIN_VALUES / Domain 정보 가져오기

이번에는 "GET_DOMAIN_VALUES"에 대해 포스팅하겠습니다. Domain에 Fixed Value를 활용하여 예를 들어, 남자를 M, 여자를 F로 Domain를 지정하여, 이 외의 정보의 입력을 제한하기도 합니다. 따라서 Database에서는 M 또는 F의 값으로 저장되게 됩니다. 이럴 경우 End-User의 입장에서는 가독성이 떨어지고 Fixed Value를 개발자 임의로 지정한 경우 정확한 뜻을 모를 수도 있습니다. 이런 문제를 해결하기 위해서 "GET_DOMAIN_VALUES"  Fixed Value에 Description Text를 불러와 예를 들어, Male, Female이라는 정보를 가져와서 보여줄 수 있게됩니다.  기능설명 지정된 도메인(domain)의 모든 유효 값을 조회하는 기능을..

[ABAP] REUSE_ALV_FIELDCATALOG_MERGE / Internal Table의 Field 정보 가져오기

이번 Standard Function은 "REUSE_ALV_FIELDCATALOG_MERGE"입니다. 앞 글에서는 Dictionary에 대한 Table 및 Structure의 Object들의 Data Element들을 불러오는 "LVC_FIELDCATALOG_MERGE" Function를 알아봤습니다.하지만, 개발을 하다보면 사실 Dictionary Object을 바로 ALV로 사용하기 보다 Program에서 DATA문이나 TYPES문으로 선언을 하여 사용하는 상황이 많습니다. 이렇게 Program내에서 선언된 Internal Table의 경우 앞 글에서 설명한 "LVC_FIELDCATALOG_MERGE"를 통해 FieldCatalog Data를 가져오기 못합니다. 따라서, 이번에 소개해드리는 " REU..

[ABAP] LVC_FIELDCATALOG_MERGE / Dictionary table의 field정보 가져오기

안녕하세요, 건양대학교 ASAP팀장 김종오입니다. 학기 중에 바빠서 올리지 못한 Function들을 이번 방학동안 하나씩 올려볼까합니다. 많은 관심 부탁드립니다! LVC_FIELDCATALOG_MERGE란? 일반적으로 ALV에 모든 필드를 출력하려면 각 필드에 대해 개별적으로 필드 카탈로그를 생성해야 합니다. 그러나 `LVC_FIELDCATALOG_MERGE`를 사용하면 `EXPORTING` 파라미터의 `I_STRUCTURE _NAME`에 원하는 DB table이나 Structure의 이름을 입력하여, 해당 DB table이나 Structure의 필드 정보를 자동으로 불러와 필드 카탈로그를 자동으로 생성할 수 있습니다. 덕분에 개발자가 필드 카탈로그를 하나하나 수동으로 설정할 필요가 없어 더욱 편리합니다..

[ABAP] POPUP_TO_SELECT_MONTH / 연도 및 월 선택 팝업

POPUP_TO_SELECT_MONTH은 연도와 월을 입력할 수 있는 POPUP창을 생성하는 Standard Function입니다. 먼저 Signature을 살펴보도록 하겠습니다.위와 같은 Parameter를 가지고 있습니다.공장 달력이나 공휴일 달력을 통해 선택할 수 있는 연도나 월을 지정할 수 도 있습니다. 간단한 설명은 여기서 마치도록 하고 예시 코드로 사용하는 방법을 설명하겠습니다. DATA: gv_rcode TYPE sy-subrc,gv_month TYPE n LENGTH 6."//Month Input Field"PARAMETERS pa_month TYPE n LENGTH 6."//초기 현재 년도,월로 Month값 지정"INITIALIZATION.gv_month = sy-datum+0(6)."/..