SMABO02100_BMT진단관리.xfdl 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMABO02100" position="absolute 0 0 1185 783" titletext="BMT 기준자료관리" oninit="SMABO02100_oninit" onload="SMABO02100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption1" text="BMT 기준자료관리" class="tit_1" position="absolute 0 0 194 25"/>
  8. <Button id="btn_save" taborder="2" text="저장" class="btn4" position="absolute 1124 18 1180 40" anchor="top right" onclick="btn_save_onclick"/>
  9. <Static id="caption4" text="대분류" class="tit_2" position="absolute 0 45 72 67"/>
  10. <Static id="caption5" text="분할코드내역" class="cell_1" position="absolute 630 311 715 334"/>
  11. <Shape id="line1" class="line_10" position="absolute 565 61 1180 67" anchor="left top right"/>
  12. <Shape id="line2" class="line_10" position="absolute 0 61 560 67"/>
  13. <Shape id="line4" linetype="horizontal" class="line_3" position="absolute 0 776 1180 782" anchor="left right bottom"/>
  14. <Grid id="grd_exptdeptlist" taborder="3" binddataset="ds_main_lrglist_item" useinputpanel="false" position="absolute 0 66 560 776" autoenter="select" autofittype="col" cellsizingtype="col" anchor="left top bottom" oncellclick="grd_exptdeptlist_oncellclick" onexpanddown="grd_exptdeptlist_onexpanddown">
  15. <Formats>
  16. <Format id="default">
  17. <Columns>
  18. <Column size="20"/>
  19. <Column size="110"/>
  20. <Column size="327"/>
  21. <Column size="100"/>
  22. <Column size="0"/>
  23. <Column size="0"/>
  24. </Columns>
  25. <Rows>
  26. <Row size="24" band="head"/>
  27. <Row size="24"/>
  28. </Rows>
  29. <Band id="head">
  30. <Cell/>
  31. <Cell col="1" text="대분류코드"/>
  32. <Cell col="2" text="대분류명"/>
  33. <Cell col="3" text="진단코드"/>
  34. <Cell col="4" text="진단코드"/>
  35. <Cell col="5" text="testflag"/>
  36. </Band>
  37. <Band id="body">
  38. <Cell celltype="head"/>
  39. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" text="bind:hsctlrgcd"/>
  40. <Cell col="2" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" text="bind:hsctlrgnm"/>
  41. <Cell col="3" displaytype="text" edittype="text" text="bind:icd10" expandshow="show"/>
  42. <Cell col="4" displaytype="none" edittype="none" class="icon_search"/>
  43. <Cell col="5" text="bind:testflag"/>
  44. </Band>
  45. </Format>
  46. </Formats>
  47. </Grid>
  48. <Grid id="grd_voldivlist" taborder="4" binddataset="ds_main_mdllist_item" useinputpanel="false" position="absolute 565 66 1180 776" autoenter="select" autofittype="col" cellsizingtype="col" anchor="all">
  49. <Formats>
  50. <Format id="default">
  51. <Columns>
  52. <Column size="19"/>
  53. <Column size="100"/>
  54. <Column size="467"/>
  55. </Columns>
  56. <Rows>
  57. <Row size="24" band="head"/>
  58. <Row size="24"/>
  59. </Rows>
  60. <Band id="head">
  61. <Cell/>
  62. <Cell col="1" text="중분류코드"/>
  63. <Cell col="2" text="중분류명"/>
  64. </Band>
  65. <Band id="body">
  66. <Cell celltype="head"/>
  67. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" text="bind:hsctmdlcd"/>
  68. <Cell col="2" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" text="bind:hsctmdlnm"/>
  69. </Band>
  70. </Format>
  71. </Formats>
  72. </Grid>
  73. <Button id="btn_grdadd1" taborder="5" text="행추가" class="btn2" position="absolute 450 42 503 61" onclick="btn_grdadd1_onclick"/>
  74. <Button id="btn_grddel1" taborder="6" text="행삭제" class="btn2" position="absolute 506 42 559 61" onclick="btn_grddel1_onclick"/>
  75. <Button id="btn_grdadd2" taborder="7" text="행추가" class="btn2" position="absolute 1070 42 1123 61" anchor="top right" onclick="btn_grdadd2_onclick"/>
  76. <Button id="btn_grddel2" taborder="8" text="행삭제" class="btn2" position="absolute 1126 42 1179 61" anchor="top right" onclick="btn_grddel2_onclick"/>
  77. <Combo id="cmb_lrggrupcd" taborder="9" innerdataset="@ds_init_testflag_item" codecolumn="cdid" datacolumn="cdnm" class="combo_essential" position="absolute 70 42 195 61" onitemchanged="cmb_lrggrupcd_onitemchanged"/>
  78. <Static id="caption2" text="중분류" class="tit_2" position="absolute 565 45 709 67"/>
  79. </Layout>
  80. </Layouts>
  81. <Objects>
  82. <Dataset id="ds_main_lrglist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  83. <ColumnInfo>
  84. <Column id="hsctlrgcd" type="STRING" size="256" sumtext="대분류"/>
  85. <Column id="hsctlrgnm" type="STRING" size="256" sumtext="대분류명"/>
  86. <Column id="icd10" type="STRING" size="256" sumtext="진단코드"/>
  87. </ColumnInfo>
  88. </Dataset>
  89. <Dataset id="ds_main_mdllist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  90. <ColumnInfo>
  91. <Column id="hsctmdlcd" type="STRING" size="256" sumtext=""/>
  92. <Column id="hsctmdlnm" type="STRING" size="256" sumtext=""/>
  93. </ColumnInfo>
  94. </Dataset>
  95. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  96. <ColumnInfo>
  97. <Column id="hsctlrgcd" type="STRING" size="256"/>
  98. <Column id="lrggrupcd" type="STRING" size="256"/>
  99. </ColumnInfo>
  100. <Rows>
  101. <Row/>
  102. </Rows>
  103. </Dataset>
  104. <Dataset id="ds_init_testflag_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  105. <ColumnInfo>
  106. <Column id="cdnm" type="STRING" size="256"/>
  107. <Column id="cdid" type="STRING" size="256"/>
  108. </ColumnInfo>
  109. <Rows>
  110. <Row>
  111. <Col id="cdnm">진단명</Col>
  112. <Col id="cdid">DI</Col>
  113. </Row>
  114. <Row>
  115. <Col id="cdnm">이식 전 검사코드</Col>
  116. <Col id="cdid">WK</Col>
  117. </Row>
  118. <Row>
  119. <Col id="cdnm">공통코드</Col>
  120. <Col id="cdid">CC</Col>
  121. </Row>
  122. </Rows>
  123. </Dataset>
  124. </Objects>
  125. <Bind>
  126. <BindItem id="item0" compid="cmb_lrggrupcd" propid="value" datasetid="ds_send" columnid="lrggrupcd"/>
  127. </Bind>
  128. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  129. * System Name :
  130. * Job Name :
  131. * Creator :
  132. * Make Date : 2015-11-13
  133. * Description :
  134. *---------------------------------------------------------------------------------------
  135. * Modify Date Modifier Modify Description
  136. *---------------------------------------------------------------------------------------
  137. * 2015-11-13 Live Converter TF->XP
  138. *
  139. *---------------------------------------------------------------------------------------
  140. ****************************************************************************************/
  141. include "com_commonxp::comm_main.xjs";
  142. function SMABO02100_oninit(obj:Form, e:InitEventInfo)
  143. {
  144. frmf_initForm(obj);
  145. }
  146. function SMABO02100_onload(obj:Form, e:LoadEventInfo)
  147. {
  148. grdf_initGrid(grd_exptdeptlist);
  149. grdf_setRowTypeIcon(grd_exptdeptlist, 0);
  150. grdf_initGrid(grd_voldivlist);
  151. grdf_setRowTypeIcon(grd_voldivlist, 0);
  152. cmb_lrggrupcd.index = 0;
  153. dsf_setDefaultVal(ds_send, "lrggrupcd:DI");
  154. var oParam = {};
  155. oParam.id = "TRABO02101";
  156. oParam.service = "hsctcoordinatorapp.HsctPatient";
  157. oParam.method = "reqGetLrgInfo";
  158. oParam.inds = "req=ds_send";
  159. oParam.outds = "ds_main_lrglist_item=item";
  160. oParam.async = false;
  161. //oParam.callback = "cf_TRABO02101";
  162. tranf_submit(oParam);
  163. btn_save.enable = frmf_checkAuth("X");
  164. }
  165. function btn_grdadd1_onclick(obj:Button, e:ClickEventInfo)
  166. {
  167. ds_main_lrglist_item.addRow();
  168. }
  169. function btn_grddel1_onclick(obj:Button, e:ClickEventInfo)
  170. {
  171. if ( sysf_messageBox("코드가 삭제 됩니다.", "Q003") != 6 )
  172. {
  173. return false;
  174. }
  175. ds_main_lrglist_item.updatecontrol = false;
  176. ds_main_lrglist_item.setRowType(ds_main_lrglist_item.rowposition, "d");
  177. ds_main_lrglist_item.updatecontrol = true;
  178. }
  179. function grd_exptdeptlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  180. {
  181. if(e.row > -1 && e.col < 3)
  182. {
  183. ds_send.setColumn(0, "hsctlrgcd", ds_main_lrglist_item.getColumn(ds_main_lrglist_item.rowposition, "hsctlrgcd"));
  184. dsf_setDefaultVal(ds_send, "lrggrupcd:DI");
  185. var oParam = {};
  186. oParam.id = "TRABO02102";
  187. oParam.service = "hsctcoordinatorapp.HsctPatient";
  188. oParam.method = "reqGetMdlInfo";
  189. oParam.inds = "req=ds_send";
  190. oParam.outds = "ds_main_mdllist_item=item";
  191. oParam.async = false;
  192. //oParam.callback = "cf_TRABO02102";
  193. tranf_submit(oParam);
  194. }
  195. if(e.col >= 3 && e.col < 4 )
  196. {
  197. ds_main_mdllist_item.clearData();
  198. }
  199. }
  200. function grd_exptdeptlist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  201. {
  202. obj.updateToDataset();
  203. fExeDiagPopup();
  204. }
  205. function fExeDiagPopup()
  206. {
  207. var sDiagNm = utlf_transNullToEmpty(ds_main_lrglist_item.getColumn(ds_main_lrglist_item.rowposition, "icd10"));
  208. var sDiagInfo = "";
  209. var status = ds_main_lrglist_item.getRowType(ds_main_lrglist_item.rowposition);
  210. if ( String(sDiagNm).length < 2 )
  211. {
  212. sysf_messageBox ( "2글자 이상", "C001" );
  213. return;
  214. }
  215. frmf_setParameter("SPMMO00800_cond1", "2" );
  216. frmf_setParameter("SPMMO00800_cond2", "4");
  217. frmf_setParameter("SPMMO00800_cond3", "E" );
  218. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  219. frmf_setParameter("SPMMO00800_cond5", sDiagNm );
  220. frmf_setParameter("SPMMO00800_rtn", "" );
  221. frmf_setParameter("SPMMO00800_rtn_useyn", "N" );
  222. frmf_modal("SPMMO00800", "SPMMO00800", "", "", "", "", "", "", "", "", "", "", "M");
  223. if ( frmf_getParameter( "SPMMO00800_rtn_useyn" ) == "Y" )
  224. {
  225. sDiagInfo = frmf_getParameter("SPMMO00800_rtn");
  226. var icd10cd = fExeGetArrayData( sDiagInfo, 0, 8, "▩", "▦" );
  227. var diagcd = fExeGetArrayData( sDiagInfo, 0, 9, "▩", "▦" );
  228. var diagengnm = fExeGetArrayData( sDiagInfo, 0, 2, "▩", "▦" );
  229. var diaghngnm = fExeGetArrayData( sDiagInfo, 0, 3, "▩", "▦" );
  230. var spclinfo = fExeGetArrayData( sDiagInfo, 0, 5, "▩", "▦" );
  231. ds_main_lrglist_item.setColumn(ds_main_lrglist_item.rowposition, "icd10", diagcd);
  232. if(ds_main_lrglist_item.getRowType(ds_main_lrglist_item.rowposition) != 2)
  233. {
  234. ds_main_lrglist_item.updatecontrol = false;
  235. ds_main_lrglist_item.setRowType(ds_main_lrglist_item.rowposition, "u");
  236. ds_main_lrglist_item.updatecontrol = true;
  237. }
  238. frmf_setParameter( "SPMMO00800_rtn_useyn", "" );
  239. frmf_setParameter("SPMMO00800_rtn", "" );
  240. }
  241. ds_main_lrglist_item.updatecontrol = false;
  242. ds_main_lrglist_item.setRowType(ds_main_lrglist_item.rowposition, status);
  243. ds_main_lrglist_item.updatecontrol = true;
  244. }
  245. function fExeGetArrayData (pData, pRow, pCol, pRowSep, pColSep )
  246. {
  247. var arrRow = pData.split(pRowSep);
  248. if(arrRow.length <= pRow)
  249. {
  250. return "";
  251. }
  252. var arrCol = arrRow[pRow].split(pColSep);
  253. if(arrCol.length <= pCol)
  254. {
  255. return "";
  256. }
  257. return arrCol[pCol];
  258. }
  259. function btn_grdadd2_onclick(obj:Button, e:ClickEventInfo)
  260. {
  261. ds_main_mdllist_item.addRow();
  262. }
  263. function btn_grddel2_onclick(obj:Button, e:ClickEventInfo)
  264. {
  265. if ( sysf_messageBox("코드가 삭제 됩니다.", "Q003") != 6 )
  266. {
  267. return false;
  268. }
  269. ds_main_mdllist_item.updatecontrol = false;
  270. ds_main_mdllist_item.setRowType(ds_main_mdllist_item.rowposition, "d");
  271. ds_main_mdllist_item.updatecontrol = true;
  272. }
  273. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  274. {
  275. fSaveData();
  276. }
  277. function fSaveData()
  278. {
  279. var oParam = {};
  280. oParam.id = "TXABO02101";
  281. oParam.service = "hsctcoordinatorapp.HsctPatient";
  282. oParam.method = "reqExeLrgInfo";
  283. oParam.inds = "req=ds_send data=ds_main_lrglist_item:u";
  284. oParam.outds = "ds_=item";
  285. oParam.typeStr = "m";
  286. oParam.async = false;
  287. //oParam.callback = "cf_TXABO02101";
  288. tranf_submit(oParam);
  289. var oParam = {};
  290. oParam.id = "TXABO02102";
  291. oParam.service = "hsctcoordinatorapp.HsctPatient";
  292. oParam.method = "reqExeMdlInfo";
  293. oParam.inds = "req=ds_send mdldata=ds_main_mdllist_item:u";
  294. oParam.outds = "ds_=item";
  295. oParam.typeStr = "m";
  296. oParam.async = false;
  297. //oParam.callback = "cf_TXABO02102";
  298. tranf_submit(oParam);
  299. dsf_setDefaultVal(ds_send, "lrggrupcd:DI");
  300. var oParam = {};
  301. oParam.id = "TRABO02101";
  302. oParam.service = "hsctcoordinatorapp.HsctPatient";
  303. oParam.method = "reqGetLrgInfo";
  304. oParam.inds = "req=ds_send";
  305. oParam.outds = "ds_main_lrglist_item=item";
  306. oParam.async = false;
  307. //oParam.callback = "cf_TRABO02101";
  308. tranf_submit(oParam);
  309. dsf_setDefaultVal(ds_send, "lrggrupcd:DI");
  310. var oParam = {};
  311. oParam.id = "TRABO02102";
  312. oParam.service = "hsctcoordinatorapp.HsctPatient";
  313. oParam.method = "reqGetMdlInfo";
  314. oParam.inds = "req=ds_send";
  315. oParam.outds = "ds_main_mdllist_item=item";
  316. oParam.async = false;
  317. //oParam.callback = "cf_TRABO02102";
  318. tranf_submit(oParam);
  319. }
  320. function cmb_lrggrupcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  321. {
  322. if(ds_send.getColumn(0, "lrggrupcd") == "CC" || ds_send.getColumn(0, "lrggrupcd") == "WK")
  323. {
  324. btn_grdadd1.enable = false;
  325. grd_exptdeptlist.setCellProperty("Body", grd_exptdeptlist.getBindCellIndex("Body", "hsctlrgnm"), "edittype", "text");
  326. grd_exptdeptlist.setFormatColProperty(3, "size", 0);
  327. grd_exptdeptlist.setFormatColProperty(2, "size", 427);
  328. if(ds_send.getColumn(0, "lrggrupcd") == "WK")
  329. {
  330. grd_voldivlist.setCellProperty("Body", grd_voldivlist.getBindCellIndex("Body", "hsctmdlnm"), "edittype", "text");
  331. }
  332. else
  333. {
  334. grd_voldivlist.setCellProperty("Body", grd_voldivlist.getBindCellIndex("Body", "hsctmdlnm"), "edittype", "none");
  335. }
  336. }
  337. else if(ds_send.getColumn(0, "lrggrupcd") == "DI")
  338. {
  339. btn_grdadd1.enable = true;
  340. grd_exptdeptlist.setCellProperty("Body", grd_exptdeptlist.getBindCellIndex("Body", "hsctlrgnm"), "edittype", "none");
  341. grd_exptdeptlist.setFormatColProperty(3, "size", 100);
  342. grd_exptdeptlist.setFormatColProperty(2, "size", 327);
  343. }
  344. dsf_setDefaultVal(ds_send, "lrggrupcd:DI");
  345. var oParam = {};
  346. oParam.id = "TRABO02101";
  347. oParam.service = "hsctcoordinatorapp.HsctPatient";
  348. oParam.method = "reqGetLrgInfo";
  349. oParam.inds = "req=ds_send";
  350. oParam.outds = "ds_main_lrglist_item=item";
  351. oParam.async = false;
  352. //oParam.callback = "cf_TRABO02101";
  353. tranf_submit(oParam);
  354. ds_main_mdllist_item.clearData();
  355. }
  356. ]]></Script>
  357. </Form>
  358. </FDL>