본문 바로가기

안녕하세요!

Pytho

javascript

[ CAP ] CDS와 SAPUI5를 이용한 파일 업로드 - .cds / .js .cds 파일을 이용하면 ABAP을 대체하여 데이터를 적재 및 활용할 수 있다. UI 자체도 제작되어 있기 때문에 자기가 원하는 데이터를 화면에 보여주는 것은 어렵지 않다. 하지만 모든 프로젝트를 정형화되어 있는 모델로 구축할 수는 없다. 왜냐하면 고객이 원하는 커스텀은 각기 다르기 때문이다! 따라서 다양한 수요를 충족시켜 주기 위해서는 UI5를 이용해 커스터마이징하는 방법에 대해 익혀두는 것이 좋을 것이다. 이번에 하고 있는 것은 파일을 로컬 서버에 저장해보고 이를 다운로드해 다시 파일을 로컬에 가져오는 과정을 다루고 있다. MVC 패턴과 CDS, SAPUI5 등을 조합해 파일 업로드 화면을 계속해서 분석해 보자! CDS와 SAPUI5를 이용한 파일 업로드 data-model.cds entity Fil.. 더보기
[ CAP ] Getting Started 팀장님께서 과제 하나를 주셨다. 그것인 즉슨, 신입사원을 대상으로 CAP 스터디를 각자 진행하되, 매주 한 번씩 스터디의 경과와 한 두 가지 파트를 분석해 공유하는 것이었다. 따라서 현재 진행 중이던 UI5 Walk Through의 복습이 거의 다 끝났기에, CAP에 대해 다뤄보고자 한다. CDS를 핵심적으로 활용하기 때문에 굉장히 중요한 학습이 될 거 같다. Getting Started CAP는 Node.js와 Java를 지원한다. 이번 학습 과정은 Node.js로 진행이 되기 때문에 Java를 사용하고자 한다면 아래 링크에 접속해 진행하면 된다. capire - Getting Started Getting Started How to start a new CAP Java project and how to.. 더보기
[ SAPUI5 ] Routing and Navigation Routing과 Navigation은 페이지의 종속 관계 혹은 절대/상대 경로를 생성하는 데에 있어 굉장히 중요한 파트라고 생각하고 있다. [ manifest.json ]에서 Route와 Path 등을 활용해 사용자를 구분해 페이지의 이동을 달리한다든지, 상품의 상세 정보가 담긴 View로 이동할 때 해당 상품의 카테고리에 따라 다른 경로를 지정해주는 등을 수행할 수 있을 것이다. sap.m.Page "sap.m.Page Control이 Page로 사용될 수 있으며, Aggregation을 "Page"라고 부르고 있으며, 브외의 다른 Control도 사용이 가능하다." "대개 일반 모바일 어플리케이션은 몇 개의 Page로 구성돼 있으며 User가 세부사항 Page로 Navigation 하거나 다시 원래 .. 더보기
[ SAPUI5 ] View Management ○ 기본 view를 변경하거나, 새로운 view를 생성하고 쿼리가 자동으로 실행되도록 해보자. - [ VariantManagement.view.xml ] - [ Component.js ] sap.ui.define([ "sap/ui/core/UIComponent" ], function(UIComponent) { "use strict"; return UIComponent.extend("sap.ui.demo.smartControls.Component", { metadata: { manifest: "json" }, init: function () { UIComponent.prototype.init.apply(this, arguments); }, destroy: function () { UIComponent.pr.. 더보기
[ SAPUI5 ] Smart Filed with Value Help ○ 통화코드를 변경할 수 있게 리스트를 생성하고, 원하는 정보를 검색할 수 있는 검색 필드 만들기 - [ SmartFieldWithValueHelp.view.xml ] - [ SmartField.controller.js ] sap.ui.define([ "sap/ui/core/mvc/Controller" ], function(Controller) { "use strict"; return Controller.extend("sap.ui.demo.smartControls.SmartFieldWithValueHelp", { onInit: function() { this.getView().bindElement("/Products('4711')"); } }); }); - [ metadata.xml ] 더보기
[ SAPUI5 ] Rule Builder Control / Decision Table - 4 ○ 룰 빌더 페이지 컨트롤러 계속해서 분석하기 - [ page.controller.js ] loadRequests: function (mPath) { // The mock server does not support 1 to 1 navigation. // Hence we provide the responses directly by adding custom requests to the MockServer var oRresponses = {}; var getData = function(json) { oRresponses = json; }; this.loadJSON(mPath, getData); var aRequests = this.oRuleMockServer.getRequests(); var sMethod =.. 더보기
[ SAPUI5 ] Rule Builder Control / Decision Table - 3 ○ 페이지 컨트롤러 설정 이어 하기 - [ Page.control.js ] handleEditButton: function () { var oEditButton = this.byId("editButton"); var oRuleBuilder = this.byId("ruleBuilder"); var bEdit = (oEditButton.getText() === "Edit"); oRuleBuilder.setEditable(bEdit); oEditButton.setText(bEdit ? "Display" : "Edit"); } 1) oEditButton : 'editButton'을 id로 둔다. 2) oRuleBuilder : 'ruleBuilder'를 id로 둔다. 3) bEdit : 'oEditButton'.. 더보기
[ Javascript ] What is the 'httpRequest.readyState == 4'? readyState readyState - XMLHttpRequest 객체의 현재 상태를 나타낸다. - UNSET(숫자 0) : XMLHttpRequest 객체가 생성된다. - OPENED(숫자 1) : open() 메서드가 성공적으로 실행된다. - HEADERS_RECEIVE(숫자 2) : 모든 요청에 대한 응답이 도착하게 된다. - LOADING(숫자 3) : 요청한 데이터를 처리 중이다. - DONE(숫자 4) : 요청한 데이터의 처리가 완료되어 응답할 준비가 완료되었음을 의미한다. status status - 서버의 문서 상태를 나타낸다. - 200 : 서버에 문서가 존재함을 의미한다. - 404 : 서버에 문서가 존재하지 않음을 의미한다. onreadystatechange onreadystate.. 더보기