반응형

ABAP 29

[SAP] 스탠다드 프로그램에서 에러 났을 때 에러 위치 디버깅 하는 방법

캡쳐화면을 같이 첨부했으면 좋을텐데ㅠㅠ 아쉽게도 화면이 없다. 최대한 자세히 설명해보겠습니다! 스탠다드 프로그램에서 에러가 났을 때 디버깅을 해보고싶을때가 있는데, 무작정 디버깅을 하려니 막막해서 메세지가 뜨는 부분을 바로 찾아보고싶을때 활용할 수 있다! 디버깅 WATCH-POINT 사용방법 1. 표준 프로그램에서 에러가 났을 때, 하단바에 메세지가 나오는 부분을 더블 클릭한다. 2. 더블클릭하면 상아색 바탕의 팝업창이 뜬다. 메세지 내용과 메세지 아이디, 메세지번호를 확인할 수 있다. 메세지아이디랑 메세지번호를 기억해둔다. 3. 이제 디버깅을 건 상태에서 에러가났던 스탠다드 프로그램을 다시 실행해볼건데, 일단 스탠다드 티코드를 다시 입력하고 들어가서 프로그램을 실행하기 전에 티코드입력창에 '/h'를 입..

ABAP 2024.02.10

[SAP_ABAP] ABAP코드 화면이 이상하게 보일 때

어느날 로직 수정하러 프로그램에 들어갔는데, 익숙하지 않은 화면이 보였다. 나에게 익숙한 화면은 이런 화면인데.. 처음 겪으면 당황스럽지만 원래내가 익숙한 화면으로 되돌리는방법은 간단하다. [유틸리티] > [세팅] 으로 이동하면 [User-Specific Settings]창이 뜨는데, [ABAP편집기]탭 > [편집기]탭으로 이동하면 라디오 버튼으로 [Source Code-Based Editor] 와 [Text-based Editor] 중에 선택할 수 있다. 혹은, ABAP 버전에따라 아래처럼 라디오버튼으로 [Front-End Editor(New)], [Front-End Editor(OId)], [Back-End Editor]중에 선택 할 수도 있다. [Source Code-Based Editor]를 선택..

ABAP 2023.09.12

[SAP_WebDynpro] host 등록 방법

웹딘 화면접속을 위해 url을 입력했을 때, 이렇게 로그인 화면이 나와야 하는데 이렇게 [이 페이지에 연결할 수 없음] 화면이 뜰 경우 호스트등록을 안해줘서 생기는 문제일 수 있다. (호스트파일에 ip주소를 등록해줘야 함) 참고로 호스트 파일의 위치(경로)는 [C:\Windows\System32\drivers\etc] 인데, 저 host파일 안에 ip주소를 등록해주면 맨 첫 화면처럼 로그인화면이 뜬다. 방법은, 1. 메모장을 '관리자권한으로 실행'한다. 메모장 파일 검색 후 메모장아이콘에 마우스 대고 우클릭 하면 '관리자권한으로 실행'이 뜬다. 그다음 [파일]>[열기] 호스트파일이 있는 경로 [C:\Windows\System32\drivers\etc] 로 들어간 다음 파일형식을 [모든파일]로 바꾸면 이렇..

ABAP 2023.09.08

[SAP_ABAP] ABAP에서 'DIV'와 '/'의 차이 (+MOD)

로직 짜다가 나름 새로운 부분을 발견했다. ABAP 내에서 ' DIV' 라는 구문과 '/'라는 구문이 똑같이 나누기를 의미하는줄 알았는데 둘이 다른 값이 나온다. 코드는 간단하게 이렇게 적었다. DATA: LV_VAL1(4) TYPE I, LV_VAL2(4) TYPE I, LV_CALC TYPE P DECIMALS 2. LV_VAL1 = 10. LV_VAL2 = 6. LV_CALC = LV_VAL1 DIV LV_VAL2. "10 나누기 6 LV_CALC = LV_VAL1 / LV_VAL2. "10 나누기 6 이 내용을 디버깅을 해보면, 15라인의 로직을 탔을때, (디버깅화면 노란 화살표가 16라인에위치하는건, 15라인에 적힌 로직을 탔고 16라인에 적힌 로직이 타기 전 이라는뜻) LV_CALC = 1.0..

ABAP 2023.09.07

[SAP_ABAP] SE11에서 테이블 데이터 조회할 때 필드 명 대신 Short description(간단한 설명) 보여지게 하는 방법

#테이블 데이터 조회할 때 필드 명 대신 Short description(간단한 설명) 보여지게 하는 방법 티코드(T-code) SE11에서 테이블에 담긴 데이터를 조회하면 아래와 같은 화면을 볼 수 있는데, 스탠다드 테이블 필드명이 아직 익숙해지지 않은 경우 이 필드명이 어떤값을 나타내는지 구분하기 쉽지 않은데 빨간 표시한 필드명 부분에 필드명 대신 아래의 short description(간단한 설명)이 보여지게 할 수 있다. 세팅(setting) > 사용자 매개변수 클릭 [Data Browser] 탭으로 가서 [키워드]부분에 Field Name에 선택되어있는 라디오 버튼을 Field Label로 바꿔주고 확인버튼을 누른다. 그럼 이렇게 사용자에게 좀더 친숙한 필드명으로 데이터를 살펴볼 수 있다. 영어..

ABAP 2023.09.06

[SAP_ABAP] SAP MIME유형 정의하는 법

SAP 티코드 SMW0에 EXCEL양식을 업로드 해두려고 했는데 다음과 같은 메세지가 뜨며 업로드가 되지않는다. 설정> MIME 유형 정의 로 들어가보니 정의되어있는 유형이 HTML뿐이고 엑셀파일인 .*.XLS *.XLSX 유형은 정의되어있지 않아서 등록이 안되었던것. 엑셀 관련 유형을 추가해주면 된다. 빨간 표시한 버튼을 누르면 '새로 생성'이 된다. 엑셀유형을 추가할 땐 아래처럼 입력했더니 잘 추가됐다. Application/vnd.ms-excel 다 입력한 후 저장버튼( )을 누르면, 아래와 같이 항목이 추가된 것을 확인할 수 있다. 이제 티코드 SMW0에 EXCEL양식 업로드가 잘 되는지 확인해보기! 엑셀 양식 업로드할때 보통 사용하는 모듈의 패키지에 저장하지만 (지금처럼 연습용이라서)로컬에 저장..

ABAP 2023.09.05

[SAP_ABAP] 테이블 유지보수기(Table Maintenance Dialog) #4-1. 유지보수뷰 생성하여 생성일, 생성시간, 생성자 정보 자동으로 등록되게 하는 방법

#유지보수뷰 생성하여 생성일, 생성시간, 생성자 정보 자동으로 등록되게 하는 방법 #테이블에 데이터 추가 시 생성일, 생성시간, 생성자 정보 자동으로 생성되게 하는 방법 이번 포스팅은 해당 테이블에 대한 유지보수뷰를 만들어준 다음 이벤트(데이터 생성 시 생성일, 생성시간, 생성자 정보 등록되는 이벤트) 를 생성해주는 방법에 대한 내용. 이전 포스팅에서 SE11(ABAP DICTIONARY)에서 테이블 조회 후 바로 유지보수생성기를 만드는 방법에 대해 다룬적이 있었는데, 이번에는 유지보수뷰를 생성한 후 유지보수생성기(Table Maintenance Dialog)를 생성 해볼거다! 아래와 같은 순서로 진행. 1. 유지보수뷰(Maintenance view) 생성 2. 유지보수 다이얼로그 (Table Maint..

ABAP 2023.08.31

[SAP_ABAP] 테이블 유지보수기(Table Maintenance Dialog) #3.유지보수뷰 티코드 T-code 만드는법

유지보수뷰 티코드 T-code 만드는법 요즘 유지보수뷰(Maintenance View) 에 대해 간략하게 배우고 만들고 있는데, 새로운것을 하나 더 알게되어서 뿌듯하다. 일단 유지보수뷰(Maintenance View) 티코드T-code 만드는 것부터 업로드 해서 차례차례 잘 정리해두어야겠다. 유지보수뷰(Maintenance View)도 T-code를 만들 수 있다. 유지보수뷰에 들어가려면 T-code SM30에 > 조회하고자 하는 테이블이나 뷰 이름을 입력> 조회 해야 하는데, 이 과정이 생략되고 T-code 한번 입력 만드로도 빠르게 접근 가능하다. 1. T-code : SE93 (트랜잭션유지보수). 트랜잭션 코드 생성이나 관리하는 티코드이다. 여기로 들어간다. 2. 만들고 싶은 트랜젝션 코드(T-co..

ABAP 2023.08.30

[SAP_ABAP] 유지보수 뷰 이벤트 생성 시 'Statement is not accessible.' 오류

유지보수 뷰 생성 후, 유지보수 다이얼로그 (Table Maintenance Dialog) 생성하여 이벤트 생성시에, 이벤트에 로직을 입력 후 활성(active)하면 다음과 같은 에러가 뜨는 경우가 있다. - Statement is not accessible. - Incorrect nesting: Before the statement "+END-OF-INCLUDE", the control structure introduced by "SELECT" must be closed by "ENDSELECT". 특히 두번째 에러는 로직 내에 select문이 들어가서 뜨는 에러인것 같은데, 이 에러를 보면 내가 select문을 잘못짜서 그런가? select문 끝에 endselect 구문을 써줘야 하나? 싶은 생각이 ..

ABAP 2023.08.14

[SAP_ABAP] REUSE_ALV_GRID_DISPLAY에서 GET_SELECTED_ROWS 처럼 다중 선택한 열 정보 얻는 방법!

평소에 ALV 를 그리던 방식과는 다르게 'REUSE_ALV_GRID_DISPLAY'로 ALV를 그리게 되었다. ALV로 데이터를 띄운다음 여러개의 데이터를 선택해서 BDC를 돌려야 하는 상황인데 오브젝트변수를 만들어준게 없어서 GET_SELECTED_ROWS를 사용할수 없는 상황.. REUSE_ALV_GRID_DISPLAY 에서 다중선택한 행 정보들을 얻는것은 훨씬 간단하다는것을 알게 되었다. FM 'REUSE_ALV_GRID_DISPLAY'에서 'IS_LAYOUT' 파라미터에 해당하는 ALV레이아웃 추가하기. - ALV레이아웃에 기능이 담겨있다. - 레이아웃의 BOX_FIELDNAME 에 CHAR1자리 필드를 만들어 그 필드이름을 넣어준다. - 그러면 선택된 여러라인의 필드값에 'X'가 들어간다. 1..

ABAP 2023.06.19
반응형