Review

Data Binding – Step 13: Element Binding

Data Binding – Step 13: Element Binding

l_yh6 contents are below.

References: 05-l_yh6 contents: Go Click
Other Blog: Blog ArtRobot (Title: Data Binding – Step 13: Element Binding) More …
Publish Date: (2024-05-31|10:14 am), Modified Date: (2024-06-05|6:45 am)


— Blog Post Contents
Internal 테이블에서 특정값과 부분합이 일치하는 Index 찾기
여러 숫자값이 존재하는 Internal Table 과, 특정 값이 존재할 때, Internal Table 에서 조합하여, 특정값을 생성할 수 있는 특정라인들의 묶음을 찾는 로직 백트래킹 알고리즘을 사용 기록을 위한 SAMPLE CODE 1부터 10까지 있는 Internal Table에서 1부터 10의 합인 55 를 만들 수 있는 묶음의 Index 의 Value 결과 (Publish Date: 2023-03-17)

ABAP to XML to XSLT
ABAP 에서 Internal 테이블에 들어간 데이터를 XML로 변경하는 방법 T-code : STRANS 또는 XSLT_TOOL 1. 생성할 XSLT Transformation 이름을 작성하고, Cteate 클릭 2. Desrciption 을 입력하고 Transformation Type 은 S ( Simple Transformation ) 을 선택 3. 아래 XSLT Tutorial 의 예제를 참고하여, XML 문서를 만들기 위한 Transform 을 작성한다. https://www.softwaretestinghelp.com/xslt-tutorial/ ↓ 생성할 XML 문서 샘플 ↓ 위 XML 샘플을 참고하여, Simple Transformation 소스를 작성하고 저장 및 Active 한다. ( 변환하는 과정에서 book id 부분을 약간 수정했다. ) tt:root name 에 CALL TRANSFORMATION 호출 시, 사용할 Source ……. (Publish Date: 2023-02-20)

Apach Guacamole
WEB 상에서 SSH, RDP 등 원격접속을 가능하게 해주는 Docker Container 아래처럼 완성하고 나면, Web 으로 로그인 해서, Linux, Windows 와 같은 Server 로 원격접속 할 수 있다. (Publish Date: 2022-10-08)

Docker
간단한 명령어로 Docker 를 설치 할 수 있다. User mapp docker version Check (Publish Date: 2022-10-08)

CL_GUI_ALV_GRID 내 메소드, 이벤트
CLASS : CL_GUI_ALV_GRID 내에 포함되어 있는 METHOD, EVENT 들을 정리 주로 쓴것들만 정리중(ing) METHOD get_selected_rows AVL 내 에서 체크박스에 선택한 라인을 ITAB에 저장 할 수 있는 Method check_chnaged_data AVL 내에서 변경된 데이터를 AVL Outtab 에 반영하는 Method EVENT data_changed AVL 내에서 변경된 데이터가 있는 라인을 찾거나, 해당 Cell 에 변경된 필드값을 가져오거나, 해당라인의 특정 Cell 의 필드값을 변경 할 수있는 Event (Publish Date: 2022-10-06)

FOR 표현식 등
FOR 표현식 과, 함께 쓰여지는 구문들 정리 (ing) ABAP 740 이상 버전만 사용가능 1. FOR ~ IN LOOP ~ ENDLOOP 내에서 Structure 데이터의 필드 Move, Append 하는 거랑 동일 LOOP ~ ENDLOOP 내에서 Struture 데이터 MOVE CORRESPONDING , APPPEND 하는거랑 동일 LOOP ~ ENDLOOP WHERE 내에서, 조건에 맞는 Struture 데이터 MOVE CORRESPONDING , APPPEND 하는거랑 동일 2. FOR ~ IN + LET ~ IN LOOP 안에서 READ TABLE 하는거랑 동일 3. FOR ~ THEN / UNTIL 샘플로 쓸만한 상황이 있으면 기록예정 4. 또있으면 추가 cx_sy_itab_line_not_found (Publish Date: 2022-09-27)

Selection Screen 에서 excute 버튼 지우기
이 버튼을 지우고 싶을때 1. PF-STATUS 를 만들어서 넣기 이걸만들어서 넣으면, screnen 처럼 위에 상태바가 생겨서, 뒤로가기 등 USER_COMMAND 도 따로 달아줘야 하는듯 2. 함수로 지우기 (Publish Date: 2022-04-08)

TEXT_EDITOR
Container 위에 위와같은 TEXT BOX를 생성하여, 입력된 TEXT를 Table Line 형태로 받음 PBO PAI (Publish Date: 2022-04-07)

OLE로 Word 작성시, 클립보드 내용 붙여넣기
OLE로 Word로 데이터값을 쓸때, 자릿수가 255자리가 넘어가면 짤림. (ex. Textbox로 255자리 이상넣을 경우) 이럴경우, 사용자 클라이언트 PC의 copy, paste 를 이용하여 우회하면 255자리 이상을 입력할 수 있음. 이 로직을 한번 지나고 나면 클라이언트 PC에 copy 한 내용이 저장되기 때문에 다른곳(메모장같은데)에 붙여넣기를 하게되면 프로그램에서 복사한 내용이 그대로 붙여넣어짐 cl_gui_frontend_services의 clipboard_export 메소드를 사용하면 data 에 들어가는 sap 데이터를 클라이언트PC 클립보드로 보냄. OLE를 통해 Word에 로 전송 시, 원래 들어가야 하는 text data 대신, '^c' 를 넣어주면 클립보드에 복사된 내용이……. (Publish Date: 2022-04-07)

ALV Cell EDIT(input) 활성화
INSERT LINE 등의 event에, 특정 CELL 의 EDIT을 활성화 cl_gui_alv_grid 의 mc_style_enable(disable) 을 통해 Cell의 Edit을 컨트롤 하고, cl_gui_alv_grid 의 set_ready_for_input 메소드를 통해 input 을 활성화한다. cl_gui_alv_grid 의 is_ready_for_input 메소드를 통해 현재 상태가 input 인지 확인할 수 있다. alv OUTTAB에 type lvc_t_styl 타입의 stru 를 넣어줘야 하고, alv layo 에 stylefname 정의해줘야 한다. OUTTAB에 선언한 stru 이름 = layo 에 정의하는 style 이름 (Publish Date: 2022-04-07)

ABAP New Syntax
Read ~ Index 대체구문 Read ~ with key 대체구문 위 구문을 사용할 때, 조건으로 찾아진 데이터가 없으면 Dump 가 발생함. (cx_sy_itab_line_not_found) Dump 를 회피 하기 위해 Try ~ Catch 사용 VALUE # 이미 선언된 Structure 또는 Internal Table 에 데이터 Insert 시, 사용가능하다. VALUE "#"을 사용하지 않는 VALUE 구문 Structure 또는 internal Table 을 생성함과 동시에 데이터를 입력 할 수 있다. 해당 구문을 사용하기 위해서는 Type 으로 생성된 Structure 또는 Table Type 이 필요하다. VALUE # BASE VALUE 구문 내에 BASE 구문을 이용하면, Internal Table 생성과 동시에 데이터를 Insert 할 때, BASE 데이터를 Intern……. (Publish Date: 2021-08-23)

ALV_Splitter
USE easy_splitter – TOP PBO USE docking_container (Publish Date: 2021-04-06)

SALV
SALV (Simple Abap List View) Screen 없이, Internal Table 만으로 ALV 생성 – SALV 선언 및 정렬 – 풀화면으로 디스플레이 – 팝업으로 디스플레이 – 정렬 및 Sub Total 및 Aggregation – Column 속성정의 – Selection Mark * ALV Display Setting * Column 색상 참고색상은 아래 포스트에서 볼 수 있다. https://blog.naver.com/l_yh6/221525484268 * 전체소스 (Publish Date: 2020-10-07)

통화키에 맞춰 금액맞추기
방법 1 방법 2 방법 3 (Publish Date: 2020-09-29)

숫자 -> 한글 변환
(Publish Date: 2020-09-23)

HRHAP_IF_DOC_ATTACHMENTS
경로 입력시, 파일이름 확장자를 나누어주는 함수 (Publish Date: 2020-09-15)

HTML_VIEWER
HTML 정보를 넣기 위한 CONTAINER 생성한다. CONTAINER 와 HTML_VIEW 오브젝트를 생성한다. 생성하고자 하는 스크린에서 PAI MODULE 을 하나 판다. MODULE 내용을 채워준다. 내 블로그 모바일웹을 넣어봤다. (Publish Date: 2020-06-23)

스크린 새로고침시 스크롤 고정 (Hold Scroll Position in Screen)
생성한 스크린에서 세팅탭의 Hold Scroll Position 을 선택하면, 새로고침시에도 스크롤이 머물러 있다. AS-IS // 화면내에서 Enter 등 input event 가 전달되면 스크롤이 처음으로 돌아감 TO-BE // Enter 이벤트 이후에도 스크롤이 머물러 있음 (Publish Date: 2020-06-23)

Data Binding – Step 14: Expression Binding
가격필드의 색상을 특정값에 따라 변동되도록 수정하는 내용으로 보인다. App.view.xml 에 가격필드의 상태관련한 내용을 추가한다. numberState="{= ${products>UnitPrice} > ${/priceThreshold} ? 'Error' : 'Success' }"> Product 의 UnitPrice 가 index.js 에 설정된 pirceThreshold 보다 크면 Error, 작으면 Success 가 출력된다는 것 같다. index.js var oModel = new JSONModel({ firstName: "Lee", lastName: "YH", enabled: true, address: { street: "광나루로", city: "서울", zip: "12345", country: "대한민국&quot……. (Publish Date: 2020-06-12)

Data Binding – Step 13: Element Binding
앞에서 가져온 목록의 세부정보를 출력해보는 것 같다. view에 패널을 하나더 생성한다. <Panel id="productDetailsPanel" headerText="{i18n>panel4HeaderText}" class="sapUiResponsiveMargin" width="auto"> <l:Grid defaultSpan="L3 M6 S12" containerQuery="true"> <Label text="{i18n>ProductID}:" /> <Input value="{products>ProductID}" /> <Label text="{i18n>ProductName}:" /> <Input value="{products>ProductName}" /&……. (Publish Date: 2020-06-11)


Data Binding – Step 13: Element Binding

Naver Blog l_yh6 Recent Posts contents are below.

References: Naver Blog l_yh6 Recent Posts contents: Go Click
Origin: Blog ArtRobot (Title: Data Binding – Step 13: Element Binding) More …
Publish Date: (2024-06-05|6:45 am), Modified Date: (2024-06-07|2:54 am)


— 0503 Blog Post Contents
Internal 테이블에서 특정값과 부분합이 일치하는 Index 찾기
여러 숫자값이 존재하는 Internal Table 과, 특정 값이 존재할 때, Internal Table 에서 조합하여, 특정값을 생성할 수 있는 특정라인들의 묶음을 찾는 로직 백트래킹 알고리즘을 사용 기록을 위한 SAMPLE CODE 1부터 10까지 있는 Internal Table에서 1부터 10의 합인 55 를 만들 수 있는 묶음의 Index 의 Value 결과 (Publish Date: 2023-03-17)

ABAP to XML to XSLT
ABAP 에서 Internal 테이블에 들어간 데이터를 XML로 변경하는 방법 T-code : STRANS 또는 XSLT_TOOL 1. 생성할 XSLT Transformation 이름을 작성하고, Cteate 클릭 2. Desrciption 을 입력하고 Transformation Type 은 S ( Simple Transformation ) 을 선택 3. 아래 XSLT Tutorial 의 예제를 참고하여, XML 문서를 만들기 위한 Transform 을 작성한다. https://www.softwaretestinghelp.com/xslt-tutorial/ ↓ 생성할 XML 문서 샘플 ↓ 위 XML 샘플을 참고하여, Simple Transformation 소스를 작성하고 저장 및 Active 한다. ( 변환하는 과정에서 book id 부분을 약간 수정했다. ) tt:root name 에 CALL TRANSFORMATION 호출 시, 사용할 Source ……. (Publish Date: 2023-02-20)

Apach Guacamole
WEB 상에서 SSH, RDP 등 원격접속을 가능하게 해주는 Docker Container 아래처럼 완성하고 나면, Web 으로 로그인 해서, Linux, Windows 와 같은 Server 로 원격접속 할 수 있다. (Publish Date: 2022-10-08)

Docker
간단한 명령어로 Docker 를 설치 할 수 있다. User mapp docker version Check (Publish Date: 2022-10-08)

CL_GUI_ALV_GRID 내 메소드, 이벤트
CLASS : CL_GUI_ALV_GRID 내에 포함되어 있는 METHOD, EVENT 들을 정리 주로 쓴것들만 정리중(ing) METHOD get_selected_rows AVL 내 에서 체크박스에 선택한 라인을 ITAB에 저장 할 수 있는 Method check_chnaged_data AVL 내에서 변경된 데이터를 AVL Outtab 에 반영하는 Method EVENT data_changed AVL 내에서 변경된 데이터가 있는 라인을 찾거나, 해당 Cell 에 변경된 필드값을 가져오거나, 해당라인의 특정 Cell 의 필드값을 변경 할 수있는 Event (Publish Date: 2022-10-06)

FOR 표현식 등
FOR 표현식 과, 함께 쓰여지는 구문들 정리 (ing) ABAP 740 이상 버전만 사용가능 1. FOR ~ IN LOOP ~ ENDLOOP 내에서 Structure 데이터의 필드 Move, Append 하는 거랑 동일 LOOP ~ ENDLOOP 내에서 Struture 데이터 MOVE CORRESPONDING , APPPEND 하는거랑 동일 LOOP ~ ENDLOOP WHERE 내에서, 조건에 맞는 Struture 데이터 MOVE CORRESPONDING , APPPEND 하는거랑 동일 2. FOR ~ IN + LET ~ IN LOOP 안에서 READ TABLE 하는거랑 동일 3. FOR ~ THEN / UNTIL 샘플로 쓸만한 상황이 있으면 기록예정 4. 또있으면 추가 cx_sy_itab_line_not_found (Publish Date: 2022-09-27)

Selection Screen 에서 excute 버튼 지우기
이 버튼을 지우고 싶을때 1. PF-STATUS 를 만들어서 넣기 이걸만들어서 넣으면, screnen 처럼 위에 상태바가 생겨서, 뒤로가기 등 USER_COMMAND 도 따로 달아줘야 하는듯 2. 함수로 지우기 (Publish Date: 2022-04-08)

TEXT_EDITOR
Container 위에 위와같은 TEXT BOX를 생성하여, 입력된 TEXT를 Table Line 형태로 받음 PBO PAI (Publish Date: 2022-04-07)

OLE로 Word 작성시, 클립보드 내용 붙여넣기
OLE로 Word로 데이터값을 쓸때, 자릿수가 255자리가 넘어가면 짤림. (ex. Textbox로 255자리 이상넣을 경우) 이럴경우, 사용자 클라이언트 PC의 copy, paste 를 이용하여 우회하면 255자리 이상을 입력할 수 있음. 이 로직을 한번 지나고 나면 클라이언트 PC에 copy 한 내용이 저장되기 때문에 다른곳(메모장같은데)에 붙여넣기를 하게되면 프로그램에서 복사한 내용이 그대로 붙여넣어짐 cl_gui_frontend_services의 clipboard_export 메소드를 사용하면 data 에 들어가는 sap 데이터를 클라이언트PC 클립보드로 보냄. OLE를 통해 Word에 로 전송 시, 원래 들어가야 하는 text data 대신, '^c' 를 넣어주면 클립보드에 복사된 내용이……. (Publish Date: 2022-04-07)

ALV Cell EDIT(input) 활성화
INSERT LINE 등의 event에, 특정 CELL 의 EDIT을 활성화 cl_gui_alv_grid 의 mc_style_enable(disable) 을 통해 Cell의 Edit을 컨트롤 하고, cl_gui_alv_grid 의 set_ready_for_input 메소드를 통해 input 을 활성화한다. cl_gui_alv_grid 의 is_ready_for_input 메소드를 통해 현재 상태가 input 인지 확인할 수 있다. alv OUTTAB에 type lvc_t_styl 타입의 stru 를 넣어줘야 하고, alv layo 에 stylefname 정의해줘야 한다. OUTTAB에 선언한 stru 이름 = layo 에 정의하는 style 이름 (Publish Date: 2022-04-07)

ABAP New Syntax
Read ~ Index 대체구문 Read ~ with key 대체구문 위 구문을 사용할 때, 조건으로 찾아진 데이터가 없으면 Dump 가 발생함. (cx_sy_itab_line_not_found) Dump 를 회피 하기 위해 Try ~ Catch 사용 VALUE # 이미 선언된 Structure 또는 Internal Table 에 데이터 Insert 시, 사용가능하다. VALUE "#"을 사용하지 않는 VALUE 구문 Structure 또는 internal Table 을 생성함과 동시에 데이터를 입력 할 수 있다. 해당 구문을 사용하기 위해서는 Type 으로 생성된 Structure 또는 Table Type 이 필요하다. VALUE # BASE VALUE 구문 내에 BASE 구문을 이용하면, Internal Table 생성과 동시에 데이터를 Insert 할 때, BASE 데이터를 Intern……. (Publish Date: 2021-08-23)

ALV_Splitter
USE easy_splitter – TOP PBO USE docking_container (Publish Date: 2021-04-06)

SALV
SALV (Simple Abap List View) Screen 없이, Internal Table 만으로 ALV 생성 – SALV 선언 및 정렬 – 풀화면으로 디스플레이 – 팝업으로 디스플레이 – 정렬 및 Sub Total 및 Aggregation – Column 속성정의 – Selection Mark * ALV Display Setting * Column 색상 참고색상은 아래 포스트에서 볼 수 있다. https://blog.naver.com/l_yh6/221525484268 * 전체소스 (Publish Date: 2020-10-07)

통화키에 맞춰 금액맞추기
방법 1 방법 2 방법 3 (Publish Date: 2020-09-29)

숫자 -> 한글 변환
(Publish Date: 2020-09-23)

HRHAP_IF_DOC_ATTACHMENTS
경로 입력시, 파일이름 확장자를 나누어주는 함수 (Publish Date: 2020-09-15)

HTML_VIEWER
HTML 정보를 넣기 위한 CONTAINER 생성한다. CONTAINER 와 HTML_VIEW 오브젝트를 생성한다. 생성하고자 하는 스크린에서 PAI MODULE 을 하나 판다. MODULE 내용을 채워준다. 내 블로그 모바일웹을 넣어봤다. (Publish Date: 2020-06-23)

스크린 새로고침시 스크롤 고정 (Hold Scroll Position in Screen)
생성한 스크린에서 세팅탭의 Hold Scroll Position 을 선택하면, 새로고침시에도 스크롤이 머물러 있다. AS-IS // 화면내에서 Enter 등 input event 가 전달되면 스크롤이 처음으로 돌아감 TO-BE // Enter 이벤트 이후에도 스크롤이 머물러 있음 (Publish Date: 2020-06-23)

Data Binding – Step 14: Expression Binding
가격필드의 색상을 특정값에 따라 변동되도록 수정하는 내용으로 보인다. App.view.xml 에 가격필드의 상태관련한 내용을 추가한다. numberState="{= ${products>UnitPrice} > ${/priceThreshold} ? 'Error' : 'Success' }"> Product 의 UnitPrice 가 index.js 에 설정된 pirceThreshold 보다 크면 Error, 작으면 Success 가 출력된다는 것 같다. index.js var oModel = new JSONModel({ firstName: "Lee", lastName: "YH", enabled: true, address: { street: "광나루로", city: "서울", zip: "12345", country: "대한민국&quot……. (Publish Date: 2020-06-12)

Data Binding – Step 13: Element Binding
앞에서 가져온 목록의 세부정보를 출력해보는 것 같다. view에 패널을 하나더 생성한다. <Panel id="productDetailsPanel" headerText="{i18n>panel4HeaderText}" class="sapUiResponsiveMargin" width="auto"> <l:Grid defaultSpan="L3 M6 S12" containerQuery="true"> <Label text="{i18n>ProductID}:" /> <Input value="{products>ProductID}" /> <Label text="{i18n>ProductName}:" /> <Input value="{products>ProductName}" /&……. (Publish Date: 2020-06-11)

Visited 1 times, 1 visit(s) today
  • if No post, write the comment Please!

Leave a Reply

Your email address will not be published. Required fields are marked *