SPMMO90300_하드코드선택.xfdl 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO90300" position="absolute 0 0 750 270" titletext="항목선택" onload="SPMMO90300_onload" onclick="SPMMO90300_onclick">
  5. <Layouts>
  6. <Layout>
  7. <Button id="btn_cncl" taborder="0" text="닫기" onclick="btn_cncl_onclick" class="btn4" position="absolute 694 250 750 270"/>
  8. <Button id="button3" taborder="1" text="확인" onclick="button3_onclick" class="btn4" position="absolute 636 250 692 270"/>
  9. <Grid id="grd_resnlist" taborder="2" binddataset="ds_hardcd" useinputpanel="false" autofittype="col" onkeyup="grd_resnlist_onkeyup" oncellclick="grd_resnlist_oncellclick" oncelldblclick="grd_resnlist_oncelldblclick" position="absolute 0 22 750 232">
  10. <Formats>
  11. <Format id="default">
  12. <Columns>
  13. <Column size="35"/>
  14. <Column size="695"/>
  15. </Columns>
  16. <Rows>
  17. <Row size="24" band="head"/>
  18. <Row size="24"/>
  19. </Rows>
  20. <Band id="head">
  21. <Cell text="코드"/>
  22. <Cell col="1" text="상세내용"/>
  23. </Band>
  24. <Band id="body">
  25. <Cell text="bind:hardcd"/>
  26. <Cell col="1" displaytype="decoratetext" edittype="text" style="align:left middle;" text="bind:hardcdnm" wordwrap="word" editautoselect="true"/>
  27. </Band>
  28. </Format>
  29. </Formats>
  30. </Grid>
  31. <Shape id="line4" linetype="vertical" class="line_1" position="absolute 0 25 750 31"/>
  32. <Static id="caption6" text="항목선택" class="tit_2" position="absolute 0 0 80 20"/>
  33. </Layout>
  34. </Layouts>
  35. <Objects>
  36. <Dataset id="ds_hardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_hardcd_oncolumnchanged">
  37. <ColumnInfo>
  38. <Column id="status" type="STRING" size="256"/>
  39. <Column id="hardcd" type="STRING" size="256"/>
  40. <Column id="hardcdnm" type="STRING" size="256"/>
  41. <Column id="resncmt" type="STRING" size="256"/>
  42. </ColumnInfo>
  43. </Dataset>
  44. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  45. <ColumnInfo>
  46. <Column id="hardcd" type="STRING" size="256"/>
  47. </ColumnInfo>
  48. <Rows>
  49. <Row/>
  50. </Rows>
  51. </Dataset>
  52. </Objects>
  53. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  54. * System Name :
  55. * Job Name :
  56. * Creator :
  57. * Make Date : 2014-12-10
  58. * Description :
  59. *---------------------------------------------------------------------------------------
  60. * Modify Date Modifier Modify Description
  61. *---------------------------------------------------------------------------------------
  62. * 2014-12-10 Live Converter TF->XP
  63. *
  64. *---------------------------------------------------------------------------------------
  65. ****************************************************************************************/
  66. include "com_commonxp::comm_main.xjs";
  67. // 전역변수
  68. var cRow = ""; // 사유입력리스트에서 선택된 행
  69. var cResnFlag = ""; // 사유입력리스트에서 선택된 사유구분
  70. var cColChgFlag = false; // oncolumnchanged 이벤트 수행구분
  71. function SPMMO90300_onload(obj:Form, e:LoadEventInfo)
  72. {
  73. frmf_initForm(obj);
  74. var sHardCdNo = opener.frmf_getParameter("SPMMO90300_hardcdno");
  75. if(utlf_isNull(sHardCdNo)){
  76. sysf_messageBox("관련된 코드 정보가 존재 하지 않습니다.\n전산실(6598)로 문의 하세요.", "E");
  77. return;
  78. }
  79. ds_send.setColumn(0, "hardcd", sHardCdNo);
  80. var oParam = {};
  81. oParam.id = "TRMMB16401";
  82. oParam.service = "prcpbaseapp.EnvInfoMngt";
  83. oParam.method = "reqGetHardCodeCD";
  84. oParam.inds = "req=ds_send";
  85. oParam.outds = "ds_hardcd=hardcd";
  86. oParam.async = false;
  87. tranf_submit(oParam);
  88. }
  89. function button3_onclick(obj:Button, e:ClickEventInfo)
  90. {
  91. fSelectHardCd();
  92. }
  93. function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
  94. {
  95. opener.frmf_setParameter("SPMMO90300_rtn", "N");
  96. close();
  97. }
  98. function fSelectHardCd() {
  99. var resnRow = ds_hardcd.rowposition;
  100. if(resnRow != -1){
  101. var sHardCd = ds_hardcd.getColumn(resnRow, "hardcd");
  102. var sHardNm = ds_hardcd.getColumn(resnRow, "hardcdnm");
  103. if(sHardNm == "(이곳에 사유입력을 하세요)" || sHardNm == "기타사유 (직접입력)") {
  104. grd_resnlist.setCellPos( grd_resnlist.getBindCellIndex("body", "hardcdnm") ); // 선택셀의 열 인덱스를 'hardcdnm' 가 사용된 열 인덱스로 설정
  105. grd_resnlist.setCellProperty('body', grd_resnlist.getBindCellIndex("body", "hardcdnm"), 'edittype', 'text');
  106. grd_resnlist.showEditor();
  107. } else {
  108. opener.frmf_setParameter("SPMMO90300_rtn", "Y");
  109. opener.frmf_setParameter("SPMMO90300_hardcd", sHardCd);
  110. opener.frmf_setParameter("SPMMO90300_hardnm", sHardNm);
  111. close();
  112. }
  113. } else {
  114. sysf_messageBox ( "선택된 사유가 없습니다." , "I" );
  115. }
  116. }
  117. // TF의 onendedit 부분을 여기서 처리함 (oncolumnchanged 스페이스를 받는 문제 해결해야됨)
  118. function ds_hardcd_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  119. {
  120. var currow = e.row;
  121. var sHardNm = ds_hardcd.getColumn(currow, "hardcdnm");
  122. if(sHardNm != "(이곳에 사유입력을 하세요)" || sHardNm != "기타사유 (직접입력)") {
  123. fSelectHardCd();
  124. }
  125. if(cColChgFlag != true) { // 스페이스를 누른게 아니면
  126. }
  127. }
  128. function grd_resnlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  129. {
  130. if (e.row > -1) {
  131. var currow = ds_hardcd.rowposition;
  132. if ( ds_hardcd.getColumn(e.row, "hardcdnm") == "(이곳에 사유입력을 하세요)"
  133. || ds_hardcd.getColumn(e.row, "hardcdnm") == "기타사유 (직접입력)" ) {
  134. grd_resnlist.setCellPos( grd_resnlist.getBindCellIndex("body", "hardcdnm") ); // 선택셀의 열 인덱스를 'hardcdnm' 가 사용된 열 인덱스로 설정
  135. grd_resnlist.setCellProperty('body', grd_resnlist.getBindCellIndex("body", "hardcdnm"), 'edittype', 'text');
  136. grd_resnlist.showEditor();
  137. } else {
  138. grd_resnlist.setCellProperty('body', grd_resnlist.getBindCellIndex("body", "hardcdnm"), 'edittype', 'none');
  139. }
  140. }
  141. }
  142. // 어차피 oncellclick 이벤트 탈텐데 TF에 있는 이벤트라 작성함.
  143. function grd_resnlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  144. {
  145. if (e.row > -1) {
  146. fSelectHardCd();
  147. }
  148. }
  149. ]]></Script>
  150. </Form>
  151. </FDL>