123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266 |
- //화면에서 Grid초기화
- /*
- pGrid_name : 최기화할 Grid id명
- */
- function astfGridInit(pGrid_name) {
-
- model.removeNodeset(pGrid_name.nodeset);
- model.refresh();
- }
- //코드 HELP 화면 OPEN-Modal
- /*
- pcontrol_name : OPEN하는 Control명(Grid,Input.....)
- "SPRSD00260" - 연구과제HELP. (return값은 연구과제번호, 연구명, 사원번호, 사원, 비고)
- pcdgrupid : 공통코드일경우 코드군 ("Z0007","R0001"...)
- precv_list: 리턴받을 Instance명 (마지막 Element만 ','로 분리)
- pdefault_node : 부모 윈도우에서 넘어오는 칼럼id
- pdefault_value : 부모 윈도우에서 넘어오는 값
- pcheck_yn : 선택형 팝업창인지 아닌지를 체크
- */
- function astOpenPopUpListByWndName(pcontrol_name, pcdgrupid, precv_list , window_name, pdefault_node, pdefault_value,nodebigo) {
- if( precv_list != "")
- var recv_list = precv_list.split(",");
-
- if(pdefault_value != "" && pdefault_value != null) {
- var default_value = pdefault_value.split(",");
- }
-
- if(pdefault_node != "" && pdefault_node != null) {
- var pdefault_node = pdefault_node.split(",");
- }
-
- var recvref_node = "/root/source/recvref";
- var cdgrupid_node = "/root/source/cdgrupid";
- var recvitem_node = "/root/source/recvitem"
- var default_node = "/root/source/defaultvalue";
- var checkyn_node = "/root/source/checkyn";
-
- model.removeNodeset(recvref_node);
- model.removeNodeset(cdgrupid_node);
- model.removeNodeset(recvitem_node);
- model.removeNodeset(default_node);
- model.removeNodeset(checkyn_node);
-
- model.makeNode(recvref_node);
- model.makeNode(cdgrupid_node);
- model.makeNode(recvitem_node);
- model.makeNode(default_node);
- model.makeNode(checkyn_node);
-
- if ( precv_list != "" && recv_list.length > 0 ) {
- for (var k = 0; k <= recv_list.length - 1; k++) {
- model.makeValue(recvitem_node + "/" + recv_list[k], recv_list[k]);
- }
- }
-
- var obj = null;
- if (pcontrol_name.elementName == "xforms:datagrid") {
- //grid에서 호출하였을 경우
-
- pcontrol_name.endEditCell();
- if(pdefault_value != "" && pdefault_value != null) {
- for (var z = 0; z < default_value.length; z++) {
- obj = document.controls(default_value[z]);
- if (obj != null && obj.elementName != "xforms:datagrid" ) {
- model.makeValue(default_node + "/" + pdefault_node[z] , model.getValue(obj.attribute("ref")));
- }
- else {
- if(model.getValue(pcontrol_name.nodeset + "[" + (pcontrol_name.row - pcontrol_name.fixedRows + 1)+ "]/" + default_value[z]).length > 0)
- {
- model.makeValue(default_node + "/" + pdefault_node[z] ,
- model.getValue(pcontrol_name.nodeset + "[" + (pcontrol_name.row - pcontrol_name.fixedRows + 1)+ "]/" + default_value[z]));
- }
- else
- {
- model.makeValue(default_node + "/" + pdefault_node[z] ,default_value[z]);
- }
- }
- }
- }
-
- model.setValue(recvref_node ,pcontrol_name.nodeset + "[" + (pcontrol_name.row - pcontrol_name.fixedRows + 1) + "]");
-
-
- }
- else {
-
- var node_path = pcontrol_name.attribute("ref").split("/");
- var source_path = "/root";
-
- for (var i = 2 ; i < node_path.length - 1; i++) {
- source_path = source_path + "/" + node_path[i];
- }
-
- if(pdefault_value != "" && pdefault_value != null) {
- for (var z = 0; z < default_value.length; z++) {
- obj = document.controls(default_value[z]);
-
- if (obj != null) {
- model.makeValue(default_node + "/" + pdefault_node[z] , model.getValue(obj.attribute("ref")));
-
- }
- else {
- model.makeValue(default_node + "/" + pdefault_node[z] , default_value[z]);
- }
- }
- }
-
- model.setValue(recvref_node ,source_path);
- }
-
-
- if (pcdgrupid.length > 0 ) {
- model.setValue(cdgrupid_node ,pcdgrupid);
- }
-
- if(nodebigo != null && nodebigo.length > 0)model.makeValue(default_node +"/nodebigo",nodebigo);
- modal(window_name,"","","","","/root/source", "/root/target" );
- }
- //코드 HELP 화면의 선택된 값 Return
- /*
- pgrid_name : HELP화면의 Grid
- */
- function astfPopUpListReturn(pgrid_name, nodebigo) {
-
- try
- {
- var recv_ref = model.getValue("root/target/recvref");
- // var ins = document.models( 0 ).instances( 0 );
- var node = instance1.selectNodes("root/target/recvitem/*");
- var checkyn = model.getValue("/root/target/checkyn");
- var control_name = model.getValue("root/target/control");
- var obj = document.controls(control_name);
-
- var getreturn = "";
-
- if(checkyn == "Y") {
- check_node = instance1.selectNodes("root/main/deptcodelist");
- }
-
- if (checkOpener()) {
- // for (var i = 1; i < pgrid_name.cols; i++) {
- // for (var j = 0; j < node.length; j++) {
- // if (node.item(j).nodeName == pgrid_name.colAttribute(i,"ref")) {
- // opener.model.setValue(recv_ref + "/" + pgrid_name.colAttribute(i,"ref"), model.getValue(pgrid_name.nodeset + "[" + pgrid_name.row + "]/" + pgrid_name.colAttribute(i,"ref")));
- // }
- // }
- // }
- if(checkyn == "Y") {
- var opener_count = 1;
- for( var k = 0; k < check_node.length; k++){
- if(pgrid_name.valueMatrix(k,1) == "Y") {
- model.setValue("root/target/recvref","/root/main/deptlist[" + opener_count + "]");
- recv_ref = model.getValue("root/target/recvref");
-
- opener.grd_deptlist.addRow();
-
- if(nodebigo != null && nodebigo == "Y")
- {
- for (var j = 0; j < node.length; j++) {
- if(pgrid_name.colRef(node.item(j).nodeName) != -1)opener.model.setValue(recv_ref + "/" + node.item(j).nodeName, model.getValue(pgrid_name.nodeset + "["+ k + "]/" + node.item(j).nodeName));
- }
-
- }
- else
- {
- for (var j = 0; j < node.length; j++) {
- opener.model.setValue(recv_ref + "/" + node.item(j).nodeName, model.getValue(pgrid_name.nodeset + "["+ k + "]/" + pgrid_name.colAttribute(j+1,"ref")));
- }
- }
- opener_count++;
- }
- }
-
- }
- else {
-
- if(nodebigo != null && nodebigo == "Y")
- {
- for (var j = 0; j < node.length; j++) {
- if(pgrid_name.colRef(node.item(j).nodeName) != -1)opener.model.setValue(recv_ref + "/" + node.item(j).nodeName, model.getValue(pgrid_name.nodeset + "[" + (pgrid_name.row - pgrid_name.fixedRows + 1) + "]/" + node.item(j).nodeName));
- }
-
- }
- else
- {
- for (var j = 0; j < node.length; j++)
- {
- opener.model.setValue(recv_ref + "/" + node.item(j).nodeName, model.getValue(pgrid_name.nodeset + "[" + (pgrid_name.row - pgrid_name.fixedRows + 1) + "]/" + pgrid_name.colAttribute(j+1,"ref")));
- }
- }
- }
-
- // var objID = opener.event.target;
- var objID = opener.event.currentTarget;
- var obj = opener.document.controls(objID);
-
-
- // if (obj.elementName == "xforms:gridbutton") {
- if (obj.elementName == "xforms:datagrid") {
- //var grid_name = opener.document.controls(objID).parent.parent;
- if (obj.rowstatus(obj.row) == 0) {
- obj.rowstatus(obj.row) = 2;
- }
-
- }
-
- // opener.model.refresh();
- window.close();
- }
- else {
- messageBox("상위 화면이 변경되어 데이터를 전달", "E001");
- }
- }
- catch(Exception)
- {
- window.close();
- }
- }
- //코드 HELP 화면에서 취소 버튼 Click시 처리
- /*
- pgrid_name : HELP화면의 Grid
- */
- function astfPopUpListCancel() {
-
- var recv_ref = model.getValue("root/target/recvref");
- var node = instance1.selectNodes("root/target/recvitem/*");
- var checkyn = model.getValue("/root/target/checkyn");
-
- if(checkyn == "Y") {
- check_node = instance1.selectNodes("root/main/deptcodelist");
- }
-
- if (checkOpener()) {
- if(checkyn == "Y") {
- var opener_count = 1;
-
- }
- else {
- for (var j = 0; j < node.length; j++) {
- opener.model.setValue(recv_ref + "/" + node.item(j).nodeName, "");
- }
- }
- var objID = opener.event.currentTarget;
- var obj = opener.document.controls(objID);
-
-
- window.close();
- }
- else {
- messageBox("상위 화면이 변경되어 데이터를 전달", "E001");
- }
- }
|