SPAER02200_검사치료기준수행부서관리.xfdl 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPAER02200" position="absolute 0 0 686 663" titletext="검사/치료 기준수행부서관리" onload="SPAER02200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="검사/치료 기준수행부서 관리" class="tit_1" position="absolute 0 0 220 25"/>
  8. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 629 636 685 658" onclick="btn_save_onclick"/>
  9. <Grid id="datagrid1" taborder="2" binddataset="ds_main_examcurelist_item" useinputpanel="false" position="absolute 0 62 685 632" autoenter="select" onexpandup="datagrid1_onexpandup">
  10. <Formats>
  11. <Format id="default">
  12. <Columns>
  13. <Column size="25" band="left"/>
  14. <Column size="228"/>
  15. <Column size="146"/>
  16. <Column size="279"/>
  17. <Column size="0"/>
  18. </Columns>
  19. <Rows>
  20. <Row size="24" band="head"/>
  21. <Row size="24"/>
  22. </Rows>
  23. <Band id="head">
  24. <Cell/>
  25. <Cell col="1" text="수행부서"/>
  26. <Cell col="2" text="기준검사실코드"/>
  27. <Cell col="3" text="기준검사실명"/>
  28. <Cell col="4" text="caption1"/>
  29. </Band>
  30. <Band id="body">
  31. <Cell celltype="head"/>
  32. <Cell col="1" displaytype="combo" edittype="combo" style="padding:0 3 0 3;" text="bind:suppdeptcd" combodataset="ds_init_cmb_info_initbasesuppdeptcd" combocodecol="basesuppdeptcd" combodatacol="depthngnm" combodisplayrowcount="100" enable="false"/>
  33. <Cell col="2" displaytype="text" edittype="expand" text="bind:baseexcuroomcd" editautoselect="true" expandshow="show"/>
  34. <Cell col="3" displaytype="text" text="bind:baseexcuroomnm"/>
  35. <Cell col="4" text="bind:iudgb"/>
  36. </Band>
  37. </Format>
  38. </Formats>
  39. </Grid>
  40. <Button id="btn_grdadd" taborder="3" text="행추가" class="btn2" position="absolute 576 35 629 57" onclick="btn_grdadd_onclick"/>
  41. <Button id="btn_grddel" taborder="4" text="행삭제" class="btn2" position="absolute 632 35 685 57" onclick="btn_grddel_onclick"/>
  42. <Static id="caption1" text="기준수행부서 관리" class="tit_2" position="absolute 0 41 142 58"/>
  43. <Shape id="line1" class="line_10" position="absolute 0 57 685 63"/>
  44. </Layout>
  45. </Layouts>
  46. <Objects>
  47. <Dataset id="ds_main_examcurelist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  48. <ColumnInfo>
  49. <Column id="suppdeptcd" type="STRING" size="256"/>
  50. <Column id="baseexcuroomcd" type="STRING" size="256"/>
  51. <Column id="baseexcuroomnm" type="STRING" size="256"/>
  52. <Column id="iudgb" type="STRING" size="256"/>
  53. </ColumnInfo>
  54. <Rows>
  55. <Row>
  56. <Col id="suppdeptcd"/>
  57. <Col id="baseexcuroomcd"/>
  58. <Col id="baseexcuroomnm"/>
  59. <Col id="iudgb"/>
  60. </Row>
  61. </Rows>
  62. </Dataset>
  63. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  64. <ColumnInfo>
  65. <Column id="basecd" type="STRING" size="256"/>
  66. <Column id="windowloadinstance" type="STRING" size="256"/>
  67. </ColumnInfo>
  68. <Rows>
  69. <Row>
  70. <Col id="basecd"/>
  71. <Col id="windowloadinstance">SPAER02200</Col>
  72. </Row>
  73. </Rows>
  74. </Dataset>
  75. <Dataset id="ds_send_globalinstance" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  76. <ColumnInfo>
  77. <Column id="instance1" type="STRING" size="256"/>
  78. </ColumnInfo>
  79. <Rows>
  80. <Row>
  81. <Col id="instance1"/>
  82. </Row>
  83. </Rows>
  84. </Dataset>
  85. <Dataset id="ds_send_req_data" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  86. <Dataset id="ds_init_cmb_info_initbasesuppdeptcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  87. <ColumnInfo>
  88. <Column id="basesuppdeptcd" type="STRING" size="256"/>
  89. <Column id="depthngnm" type="STRING" size="256"/>
  90. </ColumnInfo>
  91. <Rows>
  92. <Row>
  93. <Col id="basesuppdeptcd"/>
  94. <Col id="depthngnm"/>
  95. </Row>
  96. </Rows>
  97. </Dataset>
  98. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  99. <ColumnInfo>
  100. <Column id="item" type="STRING" size="256"/>
  101. </ColumnInfo>
  102. </Dataset>
  103. </Objects>
  104. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  105. * System Name :
  106. * Job Name :
  107. * Creator :
  108. * Make Date : 2017-12-04
  109. * Description :
  110. *---------------------------------------------------------------------------------------
  111. * Modify Date Modifier Modify Description
  112. *---------------------------------------------------------------------------------------
  113. * 2017-06-19 Live Converter TF->XP
  114. *
  115. *---------------------------------------------------------------------------------------
  116. ****************************************************************************************/
  117. //=======================================================================================
  118. // Lib Include
  119. //---------------------------------------------------------------------------------------
  120. include "com_commonxp::comm_main.xjs";
  121. include "ast_commonxp::AST.xjs";
  122. include "ast_examcurexp::AEZ0001.xjs";
  123. include "com_authinfoxp::ZSA001.xjs";
  124. //=======================================================================================
  125. // Global Form Variable
  126. //---------------------------------------------------------------------------------------
  127. var arErrorCode = new HashArray();
  128. //=======================================================================================
  129. // Function
  130. //---------------------------------------------------------------------------------------
  131. /*-**************************************************************************************
  132. * Argument : N/A
  133. * Description : 조회
  134. ****************************************************************************************/
  135. function readfunc() {
  136. ds_main_examcurelist_item.clearData();
  137. var oParam = {};
  138. oParam.id = "TRAER02202";
  139. oParam.service = "examcureacptexecapp.ExamCureAcpt";
  140. oParam.method = "reqGetSuppdeptExcureRoomList";
  141. oParam.inds = "req=ds_send";
  142. oParam.outds = "ds_main_examcurelist_item=item";
  143. oParam.async = false;
  144. //oParam.callback = "cf_TRAER02202";
  145. tranf_submit(oParam);
  146. }
  147. /*-**************************************************************************************
  148. * Argument : N/A
  149. * Description : 저장데이터 체크
  150. ****************************************************************************************/
  151. function datacheck(){
  152. var ssuppdeptcd = "";
  153. var ssuppdeptcd1 = "";
  154. var sbaseexcuroomcd = "";
  155. for (var i = 0; i < ds_main_examcurelist_item.rowcount; i++){
  156. ssuppdeptcd = ds_main_examcurelist_item.getColumn(i, "suppdeptcd");
  157. if (utlf_isNull(ssuppdeptcd)) {
  158. sysf_messageBox(i + "번째행의 수행부서는 필수 선택항목입니다.", "E999", "");
  159. return false;
  160. }
  161. sbaseexcuroomcd = ds_main_examcurelist_item.getColumn(i, "baseexcuroomcd");
  162. if (utlf_isNull(sbaseexcuroomcd)) {
  163. sysf_messageBox(i + "번째행의 기준검사실코드는 필수 선택항목입니다.", "E999", "");
  164. return false;
  165. }
  166. }
  167. for (var i = 0; i < ds_main_examcurelist_item.rowcount - 1; i++){
  168. ssuppdeptcd = ds_main_examcurelist_item.getColumn(i, "suppdeptcd");
  169. for (var j = 0; j < ds_main_examcurelist_item.rowcount; j++){
  170. ssuppdeptcd1 = ds_main_examcurelist_item.getColumn(j, "suppdeptcd");
  171. if (i != j){
  172. if (ssuppdeptcd == ssuppdeptcd1){
  173. sysf_messageBox(j + "번째에서 중복된 자료가 존재합니다", "E999", "");
  174. return false;
  175. }
  176. }
  177. }
  178. }
  179. }
  180. //=======================================================================================
  181. // Event
  182. //---------------------------------------------------------------------------------------
  183. /****************************************************************************************
  184. * Components : Form
  185. * Description : 화면 처음 초기화시 폼초기화
  186. ****************************************************************************************/
  187. function SPAER02200_onload(obj:Form, e:LoadEventInfo) {
  188. frmf_initForm(obj);
  189. //grdf_initGrid(grd_XXX);
  190. //grdf_setGridSort(grd_XXX);
  191. grdf_setRowTypeIcon(datagrid1, 0);
  192. ds_init_cmb_info_initbasesuppdeptcd.clearData();
  193. var oParam = {};
  194. oParam.id = "TRAER02201";
  195. oParam.service = "examcurebaseapp.ExamCureRoom";
  196. oParam.method = "reqGetInitBaseSuppdeptcd";
  197. oParam.inds = "req=ds_send";
  198. oParam.outds = "ds_init_cmb_info_initbasesuppdeptcd=initbasesuppdeptcd";
  199. oParam.async = false;
  200. //oParam.callback = "cf_TRAER02201";
  201. tranf_submit(oParam);
  202. readfunc();
  203. }
  204. /****************************************************************************************
  205. * Components : Button
  206. * Description : 행추가
  207. ****************************************************************************************/
  208. function btn_grdadd_onclick(obj:Button, e:ClickEventInfo) {
  209. var irow = ds_main_examcurelist_item.addRow();
  210. ds_main_examcurelist_item.setColumn(irow , "iudgb", "I");
  211. }
  212. /****************************************************************************************
  213. * Components : Button
  214. * Description : 행삭제
  215. ****************************************************************************************/
  216. function btn_grddel_onclick(obj:Button, e:ClickEventInfo) {
  217. var irow = ds_main_examcurelist_item.rowposition;
  218. ds_main_examcurelist_item.setColumn(irow , "iudgb", "D");
  219. if( ds_main_examcurelist_item.getRowType(irow) == 2 ) {
  220. ds_main_examcurelist_item.deleteRow(irow);
  221. }else{
  222. grdf_setStatus(datagrid1, "D", [irow]);
  223. }
  224. }
  225. /****************************************************************************************
  226. * Components : Button
  227. * Description : 저장
  228. ****************************************************************************************/
  229. function btn_save_onclick(obj:Button, e:ClickEventInfo) {
  230. if (datacheck() == false){
  231. return;
  232. }
  233. var update = grdf_getGridUpdateData(datagrid1, "all");
  234. grdf_setStatusColumn(update, "m");
  235. if(utlf_isNull(update) || update.rowcount == 0){
  236. sysf_messageBox("업데이트 정보가 없습니다.", "I");
  237. return 0;
  238. } else {
  239. ds_send_req_data.copyData(update, true);
  240. var oParam = {};
  241. oParam.id = "TXAER02201";
  242. oParam.service = "examcureacptexecapp.ExamCureAcpt";
  243. oParam.method = "reqExeSuppdeptExcureRoomList";
  244. oParam.inds = "req=ds_send_req_data";
  245. oParam.outds = "ds_hidden=item";
  246. oParam.async = false;
  247. //oParam.callback = "cf_TXAER02201";
  248. tranf_submit(oParam);
  249. }
  250. readfunc();
  251. }
  252. function datagrid1_onexpandup(obj:Grid, e:GridMouseEventInfo)
  253. {
  254. if(obj.getBindCellIndex("body", "baseexcuroomcd") == e.col){
  255. var rownum = e.row;
  256. dsf_makeValue(ds_hidden, "checkseq", "string", "23");
  257. frmf_modal("SPAEA02301","SPAEA02301",null,null,null,null,null,null,null,null,null,null,"M");
  258. //grdf_setStatus(obj, "U", [rownum]);
  259. }
  260. }
  261. ]]></Script>
  262. </Form>
  263. </FDL>