본문 바로가기

Frontend/Nexacro

[넥사크로] 넥사크로 플랫폼 이용 개발 시 주의사항

반응형

1. 동기 / 비동기

동기 방식 : Transaction함수 호출 후 응답 완료 후 결과 받고 다음 스크립트 진행
비동기 방식 : Transaction 함수 호출 후 응답과 상관없이 다음 스크립트 수행 후 서버에서 결과 수신 시 callback함수 호출
 
동기 : Single Thread / 비동기 : Multi Thread 같은 느낌으로 생각하면 됨 비동기가 수행시간이 더 짧을 수 있다

2. 동일 출처 정책(Cross domain) / CORS정책

웹 브라우저 실행시 화면 페이지와 데이터 통신시 호출하는 서버 페이지 도메인이 일치해야함
일치하지 않다면 웹 환경에 위배된다고 판단함

3. 서비스 경로 사용시 Full경로가 아닌 PrefixID사용

보안적인 부분도 해결되고 추후 수정도 용이하다.

4. Data통신 담당 Service의 Cache Level을 none으로 설정(항상 최신의 상태 유지 가능)

none : 캐시기능 사용 안함
session : 최초 한번 무조건 웹에서 다운로드 후 두번째부터 chache에서 불러옴
dynamic : 웹 서버의 화면 소스가 변경되었는지 확인하여 다운로드 하거나 cache의 것 불러옴
static : 모든 소스를 client에 내림 -> 최근에 사용 안함

5. 한번의 트랜잭션 호출시 가능한 여러 Dataset을 가져오게

트랜잭션 호출은 적게, 가져오는 Dataset은 많이 하는 것이 처리 속도에 영향을 줌
cf) 데이터 셋의 구분은 Space(공백)으로 한다. 즉, 입력 데이터 셋이 ds_dept=out_dept ds_pos=out_pos와 ds_dept = out_dept ds_pos = out_pos는 완전 다르다.
parameter와 parameter구분도 Space(공백)이기 때문에 데이터에 스페이스가 들어가는 변수가 있다면 nexacro.warpQuote('예 시')로 묶어줘야 한다.

6. 서비스 호출시 데이터가 없는 경우에도 반드시 Layout필요

서비스 호출시 서버에서 받아온 Dataset으로 Layout으로 치환함
=> 데이터 유무에 관계없이 무조건 상단에는 Column info를 가져와야 함

7. Dataset의 Column을 이용한 수식 계산 시 Type을 사용

표현시에는 형 변환이 가능하나 Sort시 Column타입이 기준이기에 Sort가 잘못 될 수 있음

8. onload, onrowsetchanged, onworposchanged등 Event객체에 e.reason이 있는 경우 반드시 분기 처리

if(e.reason == 12) { // append
} else if(e.reason == 20) { // delete
} else if(e.reason == 30) { // sort
}

9. Dataset 중심의 바인딩 / 스크립트

Dataset 바인딩 -> Grid Expression -> 스크립트 이용 이벤트 처리
이벤트 처리 순서
1)Dataset 먼저 처리
2)각각 컴포넌트 처리

10. Dataset 변경 시 enableevent 사용

this.ds.set_enableevent(); <- ()안에는 boolean값이 들어감
반응형

'Frontend > Nexacro' 카테고리의 다른 글

[넥사크로] Grid  (0) 2023.07.07
[넥사크로] Dataset  (0) 2023.07.07
[넥사크로] 다시 해보기  (0) 2023.07.07
[넥사크로] 메인 화면 구성  (0) 2023.07.07
[넥사크로] 팝업 화면 처리  (0) 2023.07.07