본문 바로가기

BSP

Table View에 사용되는 스타일 시트 누락된게 있을지 모르지만 일딴 이것만 css로 올리시면 Table View 의 모양이 바뀜 어떤게 어떤건지는 스스로 찾아보세요( 지금 들어와 있는곳은 BSP하는곳이 아니라서) .urSapTable .urTxtStd .urSTTHL1 .urSTTHL2 .urSTTHL3 .urSTTHBdr .urSTTDBdr2 .urSTTHBdr1 .urSTTHBdr0 .urSTTHBdr2 .urSTTDBdr .urSTTDBdr1 .urSTTDBdrEd .urSTTDBdrEd1 .urSTFootStd .urPagerItmTxt .urPagerWhl .urPagerBtnRow .urPagerItmTxt .urSTFootStd .urPagerTxt .urTbarWhl .urPagerTxt .urPagerItmInput .urP.. 더보기
Table View에 관하여.... 제일 중요한 TABLE VIEW를 빠뜨렸네요 TABLE VIEW는 윕게 말해서 BSP의 ALV라고 보시면 됩니다. 그런데 BSP의 TABLE VIEW 와 ABAP의 ALV는 위상이 다릅니다. 일단 ALV비교적 간단히 LIST를 VIEW할수 있습니다. 그러나 TABLE VIEW는 컨트롤이 약간 어렵습니다. ALV는 비교적 가볍습니다.(WRITE보다는 무거운 느낌이지만 그래도 양호) 그러나 TABLE VIEW는 무겁습니다. 각각 라인마다 코딩도 코딩이지만 많은게 숨어져 있어서 무겁습니다. 안그래도 BSP가 일반 WEB보다 무거운 느낌이 많이 들고 실제로 무겁기 때문에 WEB입장에서 보면 TABLE VIEW는 그리 반가운 TOOL이 아닙니다. 결론적으로 전 개발할때 TABLE VIEW를 사용하지 않는 방향으로.. 더보기
BSP디버깅 BSP 에서 디버깅 하기.. BSP 에서도 디버깅을 할수가 있습니다. ABAP Editer 처럼 해당 소스에 STOP Point를 찍으면되지만.. 다음과 같은 사항을 체크해야 합니다. 1. SAP USER 로 등록 되어 있어야 합니다. BSP Editer 화면에서 Utilities -> BlackPoints->Activate/Deactive for http Users 에 USER를 등록 합니다. 2. TCODE : SCIF 에서 해당 BSP Application 의 인증사항이 표준 R/3 사용자로 체크 되어 있어야합니다. 3. 주의사항 : BSP 에서 디버깅을 하게 되면 SAPgui 화면의 세션을 새롭게 OPEN 하게 됩니다. 만약 SAPgui의 세션이 6개가 열려 있다면 디버깅 세션을 열수 없습니다. .. 더보기
BSP구현방법론 방법1. BSP + HTML + ABAP 이방법은 기존에 발표되었던 많은 자료들에서 쉽게 볼수 있는 형식의 개발방법입니다. 기존의 WEB 개발 JSP, ASP 등과 흡사하게 개발 할수 있기 때문에 기존 개발자들이 쉽게 적응 할수가 있을것 같군여.. 하지만 디자인을 일반 웹개발처럼 해주어야 합니다.(장점일수도 있겠지요) 방법2. BSP + HTMLB + ABAP SAP Enterprise Potal 과 같은 화면디자인을 사용 할 수가 있습니다. HTML Business for JAVA 라고 불리기도 합니다. 화면에 대한 폼양식을 라이브러리로 제공합니다. 방법3. BSP + HTMLB + MVC (ABAP OO) Model View Controller 를 이용한 구현방법입니다. 화면 Layout 과 프로세스.. 더보기
BSP파트에 대해서 여기 티스토리 블로그 SAP-BSP 파트부분은 제가 직접 써봤고 해 봤고 직접 작성한 것들입니다. (물런 소스의 영감이나 도움은 SDN에서 많이 받았습니다. 그러나 한국 BSP사이트에서의 적용과 사용부분은 제가 직접 기술한 내용입니다.) 그런데 DAUM 애드클릭스 심사에서 떨어졌습니다. 이유인즉슨 ___________________________________________________________________________________________________ 먼저 새롭게 시도하려는 '애드클릭스(AdClix) 오픈베타' 에 신청해주셔서 감사합니다. 그러나 이번 기회에는 아쉽게도 애드클릭스 오픈베타 블로그로 선정되지 않으셨습니다. 귀하의 블로그는 애드클릭스의 심사기준 중 하나인 본문 스크랩 비.. 더보기
BSP - Standard Chart Bsp Page LayOut OnInitialization * some data to be displayed DATA: LINE TYPE IGS_DATA. LINE-GROUPID = 'SAP AG'. LINE-X = '1st Quarter'. LINE-Y = 50. LINE-COLOR = 48. LINE-EXTENSION = 'href="http://www.sap.com" alt="SAP AG"'. APPEND LINE TO DATA. LINE-X = '2nd Quarter'. LINE-Y = 35. LINE-COLOR = 0. APPEND LINE TO DATA. LINE-X = '3rd Quarter'. LINE-Y = 43. APPEND LINE TO DATA. LINE-GROUPID = 'Microsoft'. L.. 더보기
BSP - OTR Problem Solved Refresh the OTR buffer with the command /$otr Refresh other buffers /$sync - don't do this in PROD. make sure OTR has been tranported to the System Run the Context Flag Report for the OTR "SOTR_DEFAULT_CONTEXT_FLAG_SET" 더보기
BSP - BSP Table & File Location Table E070 Change & Transport System: Header of Requests/Tasks E071 Change & Transport System: Object Entries of Requests/Tasks TSTC SAP Transaction Codes TSTCT Transaction Code Texts O2APPL O2: BSP Applications O2PAGDIR Oxygen: Page Directory O2PAGDIRT Short Text for Oxygen Pages File 위치 /sap/public/bsp/sap/htmlb/events.js?0007 /sap/public/bsp/sap/htmlb/event_dictionary.js?0007 /sap/public/bc/u.. 더보기
BSP - 화면 접기와 펼치기 인터넷 블로그에 떠 댕기는 접기 펼치기를 구현합니다. 제목 내용 위와 같이 쓰면 제목을 누르면 내용이 보이는 형식이 됩니다. 위에 소스 복사해서 메모장에 붙여넣고 써보세요 그럼 확실히 감이 옵니다. 더보기
BSP - 파일 업로드와 다운로드2 이전에 썼던 소스는 stateful처럼 쓰기위하여 임시 테이블을 쓴것이었다. stateless로 쓴다면 다음과 같이 적으면 된다. Layout File Upload Attached file(s) No. File name Size(Bytes) Delete 일딴 레이아웃 부분에서는 화면을 불러올때마다 목록을 다시 작성한다. OnRequest부분에는 특별히 쓸것은 없다. OnInputProcessing는 *--------------------------------------------------------------------* * Event Data *--------------------------------------------------------------------* CLASS CL_HTMLB_MAN.. 더보기
BSP - BSP에서의 일반적인 팝업 띄우는 소스 버튼클릭이나 이미지클릭처럼 바로 다음 창을 열때 말고 이벤트를 태우고 특정값을 가지고 다음페이지에 팝업을 부를때 사용되는 소스 *--------------------------------------------------------------------* * Layout *--------------------------------------------------------------------* 더보기
BSP - 띄워지는 화면 최대화 BSP라기보다 스크립트에 가까운 호출되는 페이지에 다음 소스를 추가하면 창이 열리면서 최대화가 됩니다. *--팝업창 최대화 더보기
BSP - BSP에서의 LONG TEXT 입출력.. 두말할 필요도 없다. 걍 소스만 보면 된다 '' *--------------------------------------------------------------------* * TYPE DEFINITIONS *--------------------------------------------------------------------* * Long Text TYPES : TYS_TXTEDIT TYPE RFCLINE256_NEW. TYPES : TYT_TXTEDIT TYPE STANDARD TABLE OF RFCLINE256_NEW. TYPES : TYS_TLINE TYPE TLINE. TYPES : TYT_TLINE TYPE STANDARD TABLE OF TLINE. *-------------------.. 더보기
BSP - OnManipulation 생소한 event handler 설명을 하자면 Layout이 뿌려지고 난후 그거 수정 보완하는곳(?) 정도 '' 그러니깐 일반적인 흐름도에서 보면 OnRequest -> OnInputProcessing -> OnInitialization -> Layout -> OnManipulation -> User-dialog 저 과정에서 유저가 화면보기 직전에 행해지는 event handler이다. 이곳에서는 보통 html보완작업정도가 추가된다. (htmlb로 한계가 있는걸 극복하는것들) 글쓴이도 이제 사용법 하나밖에 모르나 그 용도가 커서 소개를 하려고 합니다. 쏘스를 보는게 더 쉽겠죠? ** event handler to manipulate dynamically the HTTP stream * DATA : REP.. 더보기
BSP - BSP에서의 RANGE변수 한 2가지 방법이 있다. 1. 전역변수로 설정해서 쓰는 방법 ( PAGE ATTRIBUTE에서 선언해서) 2. 지역변수로 쓰는방법( 각각 이벤트 핸들러 페이지마다 설정하는 방법) 1의 경우를 쓰면 '' Type Definition TYPES : RANGE_MATNR TYPE RANGE OF MARA-MATNR. 위 RANGE_MATNR타입은 테이블 타입이다. 따라서 DATA : R_MATNR TYPE RANGE_MATNR. DATA : RWA_MATNR TYPE LINE OF RANGE_MATNR. 이런식으로 써야된다. 2의 경우는 간단하다. 지역변수로 쓸 것이기때문에 DATA : R_MATNR TYPE RANGE OF MARA-MATNR. DATA : RWA_MATNR LIKE LINE OF R_MAT.. 더보기
BSP - LAYOUT MESSAGE 효과적으로 띄우기 message처리 방법. sap에서 처리하는 방법은 메세지를 화면에 그냥 뿌려주는 방법이다. 메세지라면 alert창으로 뿌려주면 낮지 않나 하는 생각에서 만들어 보았다. 일딴 message를 바생시킨부분(데이터가 없다던가 update가 성공했다거나 등등) 뒤에 사용하는 부분 PAGE->MESSAGES->ADD_MESSAGE( CONDITION = 'MESSAGE' MESSAGE = 'Set Parameter!!' SEVERITY = PAGE->MESSAGES->CO_SEVERITY_ERROR ). MESSAGE 라는 이름으로 Set Parameter!! 라는 MESSAGE를 저장 이 메세지를 화면 하단부에 messages->assert_message( 'MESSAGE' ) IS NOT INITIAL. %.. 더보기
BSP - BSP에서 모달창 쓰기 BSP에서 모달창의 띄워 봅시다. 모달창은 각 포탈 사이트에서 모달창이라고 뜨면 무슨창인지 나올겁니다. 그럼 이 모달창을 BSP에서 구현하는 방법을 소개하겠습니다. 일반 WEB페이지랑 조금 다른 BSP는 모달창 구현도 조금 달라야 합니다. 기존에 웹에서 사용하는 방법으로 모달창을 띄울경우 호출당한 모달창안에서 이벤트를 띄우면 통제가 안되는(새창을 띄우면서 그전페이지 에러 뜸) 현상이 발생합니다. 제 생각으로는 이벤트를 타면서 모달창을 인식하지 못하고 하나의 새로운 창으로 인식해서 LAYOUT부분에서 창을 다시 만들지 않나 생각됩니다만 (디버깅으로 안잡힙 '') 자세한건 모릅니다. 흐 자 이만 각설하고 본격으로 해부해 보겠습니다. LAYOUT var sUserName=''; // 공통변수로 대화창과 데이터.. 더보기
BSP - 파일 업로드와 다운로드 1 3일에 걸쳐 완성한 소스 ㅡ,.ㅡ 너무 힘들었지만 성공적인 테스트 후에 그 성취감은 흠흠 서문은 짧게 하고 ㅎㅎ 일단 소스를 보기전에 알아 두어야 할 것이 있다 htmlb:fileUpload 를 쓰기 위해서는 폼에다가 아래와 같이 매쏘드와 인코딩 타입을 지정해야 한다. 여기서 문제점 메쏘드 문제인지 인코딩 타입문제인지 모르겠지만 선언하고 나면 페이지 전체가 Stateless로 변한다는 것이다. 페이지 Properties-Status 부분에 아무리 Stateful로 지정해도 막상 디버깅해보면 Stateless로 변해 있다. 그래서 더 힘들었음 ㅡ.ㅜ(두개의 차이를 모르면 대략 안습 ㅡ,.ㅡ) 기본 문제부분은 이정도로 숙지하고 일딴 Page Attributes 와 Type Definitions 부분 Page.. 더보기
BSP - 각 필드의 자동 합계 소스 다음 소스는 자동합계를 구현한 것이다.(별건 없고 자바 스크립트를 BSP에 맞게 고친것) 자세히 보면 커서가 움직일때마다 막혀있는 inputField 가 합계로 나타난다. 예제소스> 더보기
BSP - 나만의 EVENT 캐스팅 구문 DATA : EVENT TYPE REF TO IF_HTMLB_DATA. DATA : TABLE_EVENT TYPE REF TO CL_HTMLB_EVENT_TABLEVIEW. DATA : IDOFEVENT TYPE STRING. **이벤트 EVENT = CL_HTMLB_MANAGER=>GET_EVENT_EX( REQUEST ). IF EVENT_ID = CL_HTMLB_MANAGER=>EVENT_ID. IF EVENT IS NOT INITIAL AND EVENT->EVENT_NAME = HTMLB_EVENTS=>TABLEVIEW. TABLE_EVENT ?= EVENT. ENDIF. ENDIF. * Read tableview from manager. * DATA: TV TYPE REF TO CL_HTMLB_.. 더보기