본문 바로가기

반응형

전체 글

(38)
Internal Table 속성에 맞게 Field Catalog 설정하기 ABAP 프로그램 만들다 보면 필드카탈로그 일일이 설정하기 귀찮을 때가 있죠.. 그럴 때 유용한 클래스 입니다. 일단 클래스로 만들 것이기 때문에 Class Builder로 GoGo 이름은 대충 지어주고 생성 버튼 클릭 ▼ T-CODE : SE24 내역 대충 써주고 넘어가죠 ▼ 방법을 두개 입력 GET_FCAT_FOR_ITAB / Static Method / Public GET_ELEMENTS / Static Method / Private ▼ 각 방법에 매개변수를 설정하기 GET_FCAT_FOR_ITAB 먼저 클릭하고 매개변수 클릭 ▼ IT_TABLE / Importing / TABLE RT_FCAT / Exporting / LVC_T_FCAT 다 입력하였으면 방법 눌러서 다시 뒤로 ▼ 이번엔 GET_E..
Number Range 설정하기 프로젝트 하다보면 타 시스템과의 인터페이스 할 때나, CBO테이블에 Sequence 번호를 입력하는 경우가 있다. 이 때, 사용자가 직접 채번하면 휴먼에러의 가능성이 있기 때문에 시스템이 채번하는 펑션이 존재한다. 해당 펑션을 사용하려면 우선 사전 세팅이 필요하다. T-CODE : SNRO 이동해서 오브젝트 이름을 입력하고 생성 ▼ 내역과 설명은 본인 입맛대로 입력하고 번호 길이 도메인은 보통 CHAR10로 하는데 본인이 하고 싶은대로 해도 된다.! %경고는 해당 Number range에 할당된 번호가 N%만큼 되었을 경우 경고를 해준다는 기능이다. 숫자입력 ! ▼ 그 다음엔 간격을 편집해주러 이동 ! ▼ 추가 및 삭제를 통해 만들 수 있다. 01 이라는 번호 범위는 시작번호 100~~ 부터 999~까지..
Standard Transaction 필드이름 바꾸기 여러가지의 이유로 고객이 SAP 기본 프로그램에 쓰이는 필드의 이름(라벨)을 바꾸어 달라고 요청하는 경우가 있다.예를 들어, 우리는 영업문서 헤더에 버전이라는 필드가 입에 안 붙어요. 다른걸로 좀 바꿔주세요.라고 요청이 들어온다면 지금 이 글을 보면 1분만에 바꿀 수 있습니다. ▼우선 바꿀 필드의 기술적 속성을 확인하자.버전이라는 필드에 커서를 두고 F1 도움말을 호출한다.그리고 망치모양을 누르게 되면 데이터 요소를 확인할 수 있는데,이 값을 복사하거나 기억해두자 ! ▼(버전 필드의 데이터 요소는 VSNMR_V 이다.) 이어서T-CODE : CMOD로 이동 ! ▼CMOD 첫 화면에서 메뉴바에 있는 텍스트기능확장 > 키워드 > 변경에 들어가면 아래와 같은 팝업창이 열린다. ▼ 이름을 바꿔주자. 버전 → 영..
조건 테이블에서 효력시작일, 효력종료일이 중요 조건테이블(A901~)에는 KONP 테이블에 존재하는 조건레코드 번호와 효력시작일, 효력종료일이 존재한다. 조건레코드 번호 유효시작일 유효종료일 판매단가 1 2023.06.01 2023.06.30 100 2 2023.07.01 2023.07.30 110 보통 출고전기일 = 대금청구일 = 가격결정일로 해당 제품의 판매단가가 결정이 된다. Proof Of Delivery를 사용하면 고객이 물건을 받을 때 가격이 결정이 되는데, 이 경우를 제외하고는 위의 로직을 따르는게 보통이다. 그래서 보통 코딩할 때, VBKD-PRSDT 의 값이 효력시작일과 효력종료일 사이에 들어올 때를 유효한 가격으로 본다.
SD 가격결정 조건 테이블 코딩 위치 판매오더 생성 시, 가격결정 로직을 어디에다 해야 하는지 몰라서 헤맸다.. T-CODE: VOFM 에서 위의 메뉴바에 보면 '조건 값'이라고 있음 ▼ 이 Include문에서 나누기와 같은 연산을 하니까 값이 이상하게 담겨서 또 헤맸다. 외부 프로그램안의 PERFORM문 통해서 계산을 하고 다시 해당 Include문 으로 돌아오는 로직을 수행 ▼ 아래 그림과 같이 고정소수점연산이 가능한 프로그램에서 나누기를 해야 제대로 들어오기 때문에 프로그램을 만들어주었음. ▼ 별거 아니지만 처음에는 몰라서 너무 시간 낭비를 해버렸다 ㅠㅠ 끝.
Background Job Function 주기 코딩 Background Job 주기 설정하다가 시행착오를 너무 많이 겪어서 글을 남기기로 함.. 일단 내용은 고객들중 계약 효력종료일이 60일 이하로 남은 고객에게 일주일 단위로 경고 메일을 전송하는 비지니스 상황이다. 우선 아래와 같이 Background job 생성 > E-mail전송 프로그램 실행 > Background job 종료 순서대로 코딩을 해주었다. (60일 이하 남은 고객 선정은 현재 포스팅에서 제외) 소스코드 ▼ DATA: LV_BP_ADDR TYPE ADR6-SMTP_ADDR, LV_OD_ADDR TYPE ADR6-SMTP_ADDR. " BP 사원코드의 이메일 주소 발췌 READ TABLE XVBPA WITH KEY PARVW = 'VE'. IF SY-SUBRC = 0. SELECT SI..
산들래 자연체험학교 다녀왔습니다. (캠핑 후기) 화성시에 비봉면에 위치한 산들래 캠핑장! 집에서 20분 거리라 위치는 최고 👍 가는길이 좁고 시골길이라 무서웠지만 그래도 나름 이정표가 되어 있어서 헤매지 않고 올 수 있었다. (밤에 네비없이 오면 절대 못 올듯) 일단 옆에 있던 산들래 승마클럽을 방문했다. 저 아래 마사라는 곳에서 말 먹이주기 및 승마체험을 결제했던 터라 우선 승마체험을 하기 전에 말에게 당근주기 부터 고고 말들이 야무지게 잘 먹어서 먹이주기 체험은 5분도 안 안걸렸고 이제는 본격적으로 승마체험하러 이동! (우리 아이가 타기 전에 다른 어린 친구가 타려고 했었는데, 무서워서 타겠다 안 타겠다를 반복해버려서 선생님께서 우리 아이를 먼저 탑승시켜주셨다. 아이들이면 충분히 겁이 날 듯 하다) 그런데 우리 애는 그런거 없다. 무섭긴 하지만 일..
User-exit 수정하다가 SQL error 발생(Fixed point arithmetic) MV45AFZZ Include(VA* User-exit) 수정중에 쿼리를 수정할 일이 생겨서 SELECT ZFBDT FROM BSID WHERE KUNNR = @XVBAK-KUNNR INTO @DATA(LT_ZFBDT). 이런 코딩을 했다. Active를 하니 이런 에러가 발생 ▼ 해결은 Include문에 직접 코딩하지 않고 Function module 만들어서 거기에다가 코딩을 하면 된다. 원인은 아래와 같이 고정소수점연산을 체크하면 해결된다고 하지만, MV45AFZZ Include는 Standard라.. 저걸 수정기에는 부담스러워서 Function module 만들었음 추가. 위에 작성해놓은 SELECT ZFBDT FROM BSID WHERE KUNNR = @XVBAK-KUNNR INTO @DATA(..

반응형