[OZ e-form] 입력 컴포넌트
ETC./OZ

[OZ e-form] 입력 컴포넌트

뉴비뉴 2018. 5. 23.


  • 라벨에 들어가면 글꼴 변경도 가능하다.

  • [라디오 버튼]은 여러 개의 버튼 중에 한 개만 선택가능하다, 하지만 [라디오 버튼 그룹] 을 선택해서 지정해주면 해당 그룹끼리만 사용

  • [콤보박스] This.SetItems("가\n나\n다\n라\n"); 



  • [녹음] 모바일 기기에서만 가능하다

  • [카메라] 인감이나 신분증 스캔도 가능하다.


  • [Report 1] eform.signpad_type=dialog


  • [타이틀 밴드] 첫 페이지 상단에 출력

  • [페이지 헤더,풋터 밴드] 머리말, 꼬리말 이라고 생각하면 된다. 제일 위에 제일 아래에 출력

  • [테일 밴드] 꼬리, 다른 밴드의 꼬리처럼 모든 페이지에 출력된다.

  • [써머리 밴드] 마지막 페이지에만 출력된다.



  • FormID(입력 컴포넌트, 라벨, 고정 테이블 라벨의 이름을 대신할 ID), Hidden, 전송 가능
  • GetInputComponent , SetFormID , SetInputValue
  • GetInputValue() , GetInputXML() , GetInputJSON();

02.개발신청서

*TextBox3

var a = parseInt(This.GetComponentByName("TextBox1").GetText());

var b = parseInt(This.GetComponentByName("TextBox2").GetText());


_TraceLn("a :: " + a);

_TraceLn("b :: " + b);


This.SetText(a+b);

*Button

var a = parseInt(This.GetInputValue("A"));

var b = parseInt(This.GetInputValue("B"));


GetInputComponent("C").SetText(a+b);

//SetInputValue("C" , a+b);






*OnValue Changed
if(IsChecked()){ // 내가 체크가 된다면
 This.SetTextColor("0,0,255"); // 해당 텍스트는 파란색으로
 GetInputComponent("RadioButton3").SetTextColor("0,0,0"); // 나머지는 검정색으로
 GetInputComponent("RadioButton3").SetTextColor("0,0,0"); // 나머지는 검정색으로
}




*개발비용에 입력할 때 세자리 마다 콤마 자동 입력되고, 소수점 이하 2자리까지 표시(숫자 텍스트 필터)



*신청인 이름/서명의 서명은 그룹 서명이 되도록 설정

SetGroupName("SignGroup1"); // Onbind








*소유자를 체크하면 소유자 정보 영역이 보여지고, 체크 해제하면 소유자 정보 영역이 숨겨지도록 구현, 작성자 를 체크 시에도 동일하게 동작(소유자/작성자 정보 영역을 별도의 밴드로 분리. ReBind 이용) 


var str = GetDataSetValue("OZFormParam.ShowBuilderDetail");


if(This.IsChecked()){ // 소유자가 체크되면 소유자 데테일 밴드를 보여줌

var param = "connection.pcount=2;connection.args1=ShowOwnerDetail=true;connection.args2=ShowBuilderDetail=" + str;

ReportTemplate.ReBind(ReBindTypeConst.Report, param, ";");


}else { // 소유자가 체크 해제되면 소유자 디테일 밴드를 숨김

var param ="connection.pcount=2;connection.args1=ShowOwnerDetail=false;connection.args2=ShowBuilderDetail=" + str;

ReportTemplate.ReBind(ReBindTypeConst.Report, param, ";");

}





// var str = GetDataSetValue("OZFormParam.ShowOwnerDetail");


if(This.IsChecked()){ // 소유자가 체크되면 소유자 데테일 밴드를 보여줌

var param = "connection.pcount=2;connection.args1=ShowOwnerDetail=true;connection.args2=ShowBuilderDetail=" + str;

ReportTemplate.ReBind(ReBindTypeConst.Report, param, ";");


}else { // 소유자가 체크 해제되면 소유자 디테일 밴드를 숨김

var param ="connection.pcount=2;connection.args1=ShowOwnerDetail=false;connection.args2=ShowBuilderDetail=" + str;

ReportTemplate.ReBind(ReBindTypeConst.Report, param, ";");

}




*JSON 버튼을 클릭하면 입력된 데이터를 JSON 형태로 메시지 창에 출력. 이 때 신청자 사진의 촬영이 된 경우 Y, 촬영이 안된 경우 N으로 대체, 서명도 사인이 된 경우 Y, 안된 경우 N으로 대체 (OnCheckValidity)


if(GetInputValue("ApplicantName") == "") { // formID 를 가져와서 값이 null 이라면 아래 줄 실행

_MessageBox("신청인 정보의 이름을 작성하세요.", "OZ eForm", function(){

GetInputComponent("ApplicantName").EnsureVisible(); // 컴포넌트가 화면에 보이도록 스크롤을 움직여주는 함수

GetInputComponent("ApplicantName").SetFocus(); // 해당 컴포넌트에 커서를 주게되는(Focus) 함수

});

return false; // 스크립트가 모두 실행되지 않게

}

if(GetInputValue("ApplicantPhone") == "") {

_MessageBox("신청인 정보의 전화번호를 작성하세요.", "OZ eForm", function(){

GetInputComponent("ApplicantPhone").EnsureVisible();

GetInputComponent("ApplicantPhone").SetFocus();

});

return false;

}

if(GetInputValue("Cost") == "") {

_MessageBox("개발 비용을 작성하세요.", "OZ eForm", function(){

GetInputComponent("Cost").EnsureVisible();

GetInputComponent("Cost").SetFocus();

});

return false;

}

_MessageBox("Okey~!"); // 문제가 없으면 해당 메시지가 발생된다.




*JSON

//_MessageBox("XMLData=> " + GetInputJSON(false));

_MessageBox("JSONData=> " + GetInputJSON(false));




03.주문서


_MessageBox :  메시지 확인 창을 띄웁니다.

_ChoiceButtonBox : 예, 아니오 / 확인, 취소 를 선택할 수 있는 메시지 창을 띄운다. function 과 함께 설정가능하다. ex) '예' 클릭 시 function 실행


DataService 라는 기능으로 CSV, JSON 데이터셋을 생성할 수 있음.



DataServer 오른쪽 버튼, JSON 데이터 셋 추가, 경로 /eForm/data/OrderForm.json , 



*_ChoiceButtonBox



*



*포커스가 가면 해당 문구가 사라지게끔 설정하기

ReportTemplate. 에 

var deleteGuide = function(object, prefix, lastIndex) { if(isNaN(object.GetText())) { for(var i=1; i <= lastIndex; i++) { object.GetInputComponent(prefix+i).SetText(""); object.GetInputComponent(prefix+i).SetTextColor("0,0,0"); } } }


위와 같은 함수를 추가하고


사라지게 하려는 함수의 FormID 를 지정해주고, ex) MM1, MM2

두 개의 함수를 컨트롤키로 묶은 뒤 OnFocus 로 설정한 상태에서 아래 명령문 타이핑

deleteGuide(This, "MM", 2); // 'This' , 여기 오브젝트에서 , 'MM' , FormID 가 MM 인 것 , '2', 2개를 deleteGuide 해준다.

*


*조회툴바




조회툴바를 설정하게되면 뷰어에서 값을 입력하면 아래와 같은 사진처럼 들어간다.

이름과 직책에는 폼파람의 name과 title을 넣어주어야 나온다.






*

'ETC. > OZ' 카테고리의 다른 글

[OZ] 크로스탭 스크립트  (0) 2018.05.19
[OZ] 크로스탭, 고정테이블  (0) 2018.05.19
[OZ] 6.6 리전  (0) 2018.05.16
[OZ] 데이터 밴드와 관련 종속 밴드  (0) 2018.05.15
[OZ] 그룹 라벨  (0) 2018.05.15

댓글

💲 추천 글