SMLLF90400_사용자별검사그룹관리.xfdl 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLLF90400" position="absolute 0 0 831 565" titletext="사용자별 검사그룹 관리" onload="SMLLF90400_onload" oninit="SMLLF90400_oninit">
  5. <Layouts>
  6. <Layout>
  7. <Shape id="line10" class="line_2" position="absolute 550 42 820 48"/>
  8. <Static id="caption1" text="검사그룹 등록" class="tit_2" position="absolute 0 0 109 17"/>
  9. <Shape id="line1" class="line_1" position="absolute 0 16 230 22" style="strokepen:3 solid #33bbbbff;"/>
  10. <Static id="caption2" text="그룹상세" class="cell_1" position="absolute 235 21 335 44"/>
  11. <Static id="caption3" text="중분류" class="cell_1" position="absolute 550 21 650 44"/>
  12. <Static id="caption7" text="그룹명" class="cell_1" position="absolute 0 21 100 44"/>
  13. <Shape id="line2" class="line_1" position="absolute 0 71 230 77" style="strokepen:3 solid #33bbbbff;"/>
  14. <Static id="caption4" text="검사그룹 수정" class="tit_2" position="absolute 235 0 366 22"/>
  15. <Shape id="line3" class="line_1" position="absolute 235 16 545 22" style="strokepen:3 solid #33bbbbff;"/>
  16. <Shape id="line4" class="line_1" position="absolute 235 71 545 77" style="strokepen:3 solid #33bbbbff;"/>
  17. <Shape id="line5" class="line_3" position="absolute 235 43 545 49"/>
  18. <Shape id="line8" class="line_3" position="absolute 0 43 230 49"/>
  19. <Static id="caption5" text="검사항목 조회" class="tit_2" position="absolute 550 0 701 22"/>
  20. <Shape id="line6" class="line_1" position="absolute 550 16 820 22" style="strokepen:3 solid #33bbbbff;"/>
  21. <Shape id="line9" class="line_1" position="absolute 550 96 820 102" style="strokepen:3 solid #33bbbbff;"/>
  22. <Static id="caption6" text="검색" class="cell_1" position="absolute 550 45 609 68"/>
  23. <Shape id="line7" class="line_3" position="absolute 550 67 820 73" style="strokepen:1 solid #33bbbbff;"/>
  24. <Static id="caption8" text="검사그룹 목록" class="tit_2" position="absolute 0 55 108 76"/>
  25. <Static id="caption9" text="검사그룹 상세 정보 목록" class="tit_2" position="absolute 235 55 405 77"/>
  26. <Static id="caption10" text="검사항목 목록" class="tit_2" position="absolute 550 80 665 101"/>
  27. <Grid id="grd_testitemlist" taborder="1" binddataset="ds_main_tclscdlist" useinputpanel="false" cellsizingtype="col" autofittype="col" oncelldblclick="grd_testitemlist_oncelldblclick" position="absolute 550 101 820 526" onrbuttondown="grd_testitemlist_onrbuttondown">
  28. <Formats>
  29. <Format id="default">
  30. <Columns>
  31. <Column size="26"/>
  32. <Column size="220"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. </Columns>
  39. <Rows>
  40. <Row size="24" band="head"/>
  41. <Row size="24"/>
  42. </Rows>
  43. <Band id="head">
  44. <Cell/>
  45. <Cell col="1" text="검사명"/>
  46. <Cell col="2" text="kind"/>
  47. <Cell col="3" text="tclscd"/>
  48. <Cell col="4" text="lvl"/>
  49. <Cell col="5" text="ptclscd"/>
  50. <Cell col="6" text="spccd"/>
  51. </Band>
  52. <Band id="body">
  53. <Cell celltype="head" expr="currow+1"/>
  54. <Cell col="1" displaytype="tree" edittype="tree" style="color:EXPR(clskind == '0' || tclskind == '1' ? '#0066FF' : '#000000');color2:EXPR(clskind == '0' || tclskind == '1' ? '#0066FF' : '#000000');" text="bind:tclsnm" treestartlevel="1" treelevel="bind:lvl"/>
  55. <Cell col="2" text="bind:tclskind"/>
  56. <Cell col="3" text="bind:tclscd"/>
  57. <Cell col="4" text="bind:lvl"/>
  58. <Cell col="5" text="bind:ptclscd"/>
  59. <Cell col="6" text="bind:spccd"/>
  60. </Band>
  61. </Format>
  62. </Formats>
  63. </Grid>
  64. <Grid id="grd_testgrupdetl" taborder="2" binddataset="ds_main_testgrupdetl" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 235 76 545 526">
  65. <Formats>
  66. <Format id="default">
  67. <Columns>
  68. <Column size="24"/>
  69. <Column size="30"/>
  70. <Column size="150"/>
  71. <Column size="90"/>
  72. <Column size="0"/>
  73. </Columns>
  74. <Rows>
  75. <Row size="24" band="head"/>
  76. <Row size="24"/>
  77. </Rows>
  78. <Band id="head">
  79. <Cell/>
  80. <Cell col="1" text="선택"/>
  81. <Cell col="2" text="검사명"/>
  82. <Cell col="3" text="검사코드"/>
  83. <Cell col="4" text="검체코드"/>
  84. </Band>
  85. <Band id="body">
  86. <Cell celltype="head"/>
  87. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  88. <Cell col="2" style="align:left middle;" text="bind:tclsnm"/>
  89. <Cell col="3" style="align:left middle;" text="bind:tclscd"/>
  90. <Cell col="4" text="bind:spccd"/>
  91. </Band>
  92. </Format>
  93. </Formats>
  94. </Grid>
  95. <Grid id="grd_testgruplist" taborder="3" binddataset="ds_main_testgruplist" useinputpanel="false" cellsizingtype="col" autofittype="col" oncellclick="grd_testgruplist_oncellclick" position="absolute 0 76 230 526">
  96. <Formats>
  97. <Format id="default">
  98. <Columns>
  99. <Column size="22"/>
  100. <Column size="190"/>
  101. <Column size="0"/>
  102. </Columns>
  103. <Rows>
  104. <Row size="24" band="head"/>
  105. <Row size="24"/>
  106. </Rows>
  107. <Band id="head">
  108. <Cell/>
  109. <Cell col="1" text="그룹명"/>
  110. <Cell col="2" text="cd"/>
  111. </Band>
  112. <Band id="body">
  113. <Cell celltype="head" expr="currow+1"/>
  114. <Cell col="1" style="align:left;" text="bind:nm"/>
  115. <Cell col="2" text="bind:cd"/>
  116. </Band>
  117. </Format>
  118. </Formats>
  119. </Grid>
  120. <Edit id="ipt_testgrup" taborder="4" class="input_button" position="absolute 103 23 230 42" onkeyup="ipt_testgrup_onkeyup" autoselect="true"/>
  121. <Button id="btn_up" taborder="5" class="icon_top" position="absolute 434 23 460 42" onclick="btn_up_onclick" style="font:Dotum,9;"/>
  122. <Button id="btn_down" taborder="6" onclick="btn_down_onclick" class="icon_bottom" position="absolute 463 23 489 42" style="font:Dotum,9;"/>
  123. <Button id="btn_delrow" taborder="7" text="행삭제" onclick="btn_delrow_onclick" class="btn2" position="absolute 492 23 545 42" style="font:Dotum,9;"/>
  124. <Combo id="cmb_mdl" taborder="8" innerdataset="@ds_init_lb0102" codecolumn="cd" datacolumn="nm" onitemchanged="cmb_mdl_onitemchanged" onkeydown="group1_cmb_mdl_onkeydown" class="combo_essential" position="absolute 653 22 820 41"/>
  125. <Edit id="ipt_refgbn" taborder="9" position="absolute 700 47 820 66" onkeyup="ipt_refgbn_onkeyup" autoselect="true" inputmode="upper"/>
  126. <Combo id="cmb_refgbn" taborder="10" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 612 47 697 66">
  127. <Dataset id="innerdataset">
  128. <ColumnInfo>
  129. <Column id="codecolumn"/>
  130. <Column id="datacolumn"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row>
  134. <Col id="codecolumn">1</Col>
  135. <Col id="datacolumn">검사코드</Col>
  136. </Row>
  137. <Row>
  138. <Col id="codecolumn">2</Col>
  139. <Col id="datacolumn">검사명</Col>
  140. </Row>
  141. </Rows>
  142. </Dataset>
  143. </Combo>
  144. <Radio id="radio1" taborder="11" columncount="2" rowcount="0" index="0" codecolumn="codecolumn" datacolumn="datacolumn" value="1" onitemclick="rdo_gbn_onitemclick" visible="false" position="absolute 716 74 827 99">
  145. <Dataset id="innerdataset">
  146. <ColumnInfo>
  147. <Column id="codecolumn"/>
  148. <Column id="datacolumn"/>
  149. </ColumnInfo>
  150. <Rows>
  151. <Row>
  152. <Col id="codecolumn">1</Col>
  153. <Col id="datacolumn">Nu</Col>
  154. </Row>
  155. <Row>
  156. <Col id="codecolumn">2</Col>
  157. <Col id="datacolumn">OCS</Col>
  158. </Row>
  159. </Rows>
  160. </Dataset>
  161. </Radio>
  162. <Shape id="line11" class="line_6" position="absolute 0 526 820 532"/>
  163. <Button id="btn_cnfm" taborder="12" text="확인" onclick="btn_cnfm_onclick" class="btn4" position="absolute 540 531 596 553"/>
  164. <Button id="btn_insert" taborder="13" text="그룹등록" onclick="btn_insert_onclick" class="btn4" position="absolute 599 531 679 553"/>
  165. <Button id="btn_del" taborder="14" text="그룹삭제" onclick="btn_del_onclick" class="btn4" position="absolute 682 531 762 553"/>
  166. <Button id="btn_reset" taborder="15" text="취소" onclick="btn_reset_onclick" class="btn4" position="absolute 765 531 821 553"/>
  167. <PopupMenu id="pmn_gbn" position="absolute 854 89 952 134" innerdataset="@ds_menu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_gbn_onmenuclick"/>
  168. </Layout>
  169. </Layouts>
  170. <Objects>
  171. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  172. <ColumnInfo>
  173. <Column id="extrdt" type="STRING" size="256"/>
  174. <Column id="testgrupnm" type="STRING" size="256"/>
  175. <Column id="testitem" type="STRING" size="256"/>
  176. <Column id="mdlcd" type="STRING" size="256"/>
  177. <Column id="nuflag" type="STRING" size="256"/>
  178. </ColumnInfo>
  179. <Rows>
  180. <Row>
  181. <Col id="extrdt"/>
  182. <Col id="testgrupnm"/>
  183. <Col id="testitem"/>
  184. <Col id="mdlcd">00</Col>
  185. <Col id="nuflag">1</Col>
  186. </Row>
  187. </Rows>
  188. </Dataset>
  189. <Dataset id="ds_main_testgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  190. <Dataset id="ds_main_testgrupdetl" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  191. <ColumnInfo>
  192. <Column id="chk" type="STRING" size="256"/>
  193. <Column id="tclsnm" type="STRING" size="256"/>
  194. <Column id="tclscd" type="STRING" size="256"/>
  195. </ColumnInfo>
  196. </Dataset>
  197. <Dataset id="ds_main_tclscdlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  198. <ColumnInfo>
  199. <Column id="ptclscd" type="STRING" size="256" sumtext="세부검사코드"/>
  200. <Column id="tclsnm" type="STRING" size="256" sumtext="검사명"/>
  201. <Column id="tclscd" type="STRING" size="256" sumtext="검사코드"/>
  202. <Column id="spccd" type="STRING" size="256" sumtext="검체코드"/>
  203. <Column id="sectcd" type="STRING" size="256" sumtext="계코드"/>
  204. <Column id="tclskind" type="STRING" size="256" sumtext="검사구분"/>
  205. <Column id="testmdlcd" type="STRING" size="256" sumtext="중분류"/>
  206. <Column id="lno" type="STRING" size="256" sumtext="구분"/>
  207. <Column id="lvl" type="STRING" size="256" sumtext="레벨"/>
  208. </ColumnInfo>
  209. </Dataset>
  210. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  211. <ColumnInfo>
  212. <Column id="codeflag" type="STRING" size="256"/>
  213. <Column id="testmdlcd" type="STRING" size="256"/>
  214. <Column id="testgrupnm" type="STRING" size="256"/>
  215. <Column id="grddata" type="STRING" size="256"/>
  216. <Column id="gruprow" type="STRING" size="256"/>
  217. <Column id="detlrow" type="STRING" size="256"/>
  218. <Column id="searchflag" type="STRING" size="256"/>
  219. <Column id="searchtext" type="STRING" size="256"/>
  220. <Column id="userdeptflagcd" type="STRING" size="256"/>
  221. <Column id="nuflag" type="STRING" size="256"/>
  222. </ColumnInfo>
  223. <Rows>
  224. <Row>
  225. <Col id="codeflag"/>
  226. <Col id="testmdlcd"/>
  227. <Col id="testgrupnm"/>
  228. <Col id="grddata"/>
  229. <Col id="gruprow"/>
  230. <Col id="detlrow"/>
  231. <Col id="searchflag"/>
  232. <Col id="searchtext"/>
  233. <Col id="userdeptflagcd"/>
  234. <Col id="nuflag"/>
  235. </Row>
  236. </Rows>
  237. </Dataset>
  238. <Dataset id="ds_init_lb0102" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  239. <Dataset id="ds_init_lb0000" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  240. <Dataset id="ds_init_lb0403" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  241. <Dataset id="ds_hidden_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  242. <ColumnInfo>
  243. <Column id="searchtext" type="STRING" size="256"/>
  244. <Column id="searchgbn" type="STRING" size="256"/>
  245. </ColumnInfo>
  246. <Rows>
  247. <Row>
  248. <Col id="searchtext"/>
  249. <Col id="searchgbn">1</Col>
  250. </Row>
  251. </Rows>
  252. </Dataset>
  253. <Dataset id="ds_hidden_tclscdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  254. <ColumnInfo>
  255. <Column id="tclscdlist" type="STRING" size="256"/>
  256. <Column id="tclsnmlist" type="STRING" size="256"/>
  257. <Column id="tclscdlist2" type="STRING" size="256"/>
  258. <Column id="tclsnmlist2" type="STRING" size="256"/>
  259. <Column id="testgrup" type="STRING" size="256"/>
  260. </ColumnInfo>
  261. <Rows>
  262. <Row>
  263. <Col id="tclscdlist"/>
  264. <Col id="tclsnmlist"/>
  265. <Col id="tclscdlist2"/>
  266. <Col id="tclsnmlist2"/>
  267. <Col id="testgrup"/>
  268. </Row>
  269. </Rows>
  270. </Dataset>
  271. <Dataset id="ds_hidden_testgrupdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  272. <ColumnInfo>
  273. <Column id="chk" type="STRING" size="256"/>
  274. <Column id="tclsnm" type="STRING" size="256"/>
  275. <Column id="tclscd" type="STRING" size="256"/>
  276. </ColumnInfo>
  277. </Dataset>
  278. <Dataset id="ds_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  279. <ColumnInfo>
  280. <Column id="label" type="STRING" size="256"/>
  281. <Column id="func" type="STRING" size="256"/>
  282. <Column id="level" type="STRING" size="256"/>
  283. </ColumnInfo>
  284. <Rows>
  285. <Row>
  286. <Col id="label">한꺼번에 옮기기</Col>
  287. <Col id="func">fSetTestGrupDetlAll</Col>
  288. </Row>
  289. <Row>
  290. <Col id="label">하나씩 옮기기</Col>
  291. <Col id="func">fSetTestGrupDetl</Col>
  292. </Row>
  293. </Rows>
  294. </Dataset>
  295. </Objects>
  296. <Bind>
  297. <BindItem id="item1" compid="ipt_testgrup" propid="value" datasetid="ds_hidden" columnid="testgrupnm"/>
  298. <BindItem id="item0" compid="cmb_mdl" propid="value" datasetid="ds_hidden" columnid="mdlcd"/>
  299. <BindItem id="item2" compid="radio1" propid="value" datasetid="ds_hidden" columnid="nuflag"/>
  300. <BindItem id="item3" compid="cmb_refgbn" propid="value" datasetid="ds_hidden_search" columnid="searchgbn"/>
  301. <BindItem id="item4" compid="ipt_refgbn" propid="value" datasetid="ds_hidden_search" columnid="searchtext"/>
  302. </Bind>
  303. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  304. * System Name :
  305. * Job Name :
  306. * Creator :
  307. * Make Date : 2015-11-09
  308. * Description :
  309. *---------------------------------------------------------------------------------------
  310. * Modify Date Modifier Modify Description
  311. *---------------------------------------------------------------------------------------
  312. * 2015-11-09 Live Converter TF->XP
  313. *
  314. *---------------------------------------------------------------------------------------
  315. ****************************************************************************************/
  316. include "com_commonxp::comm_main.xjs";
  317. include "lis_commonxp::LLZ001.xjs";
  318. function SMLLF90400_oninit(obj:Form, e:InitEventInfo)
  319. {
  320. frmf_initForm(obj);
  321. }
  322. function SMLLF90400_onload(obj:Form, e:LoadEventInfo)
  323. {
  324. grdf_setRowTypeIcon(grd_testgrupdetl, 0);
  325. if( frmf_getMenuParam() == "C" )
  326. {
  327. btn_cnfm.visible = false;
  328. }
  329. ds_send.setColumn(0, "codeflag", "0102|0000|0403|");
  330. var oParam = {};
  331. oParam.id = "TRLZZ00101";
  332. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  333. oParam.method = "reqGetInitCodeInfo";
  334. oParam.inds = "cond=ds_send";
  335. oParam.outds = "ds_init_lb0102=0102 ds_init_lb0000=0000 ds_init_lb0403=0403"
  336. oParam.async = false;
  337. //oParam.callback = "cf_TRLZZ00101";
  338. tranf_submit(oParam);
  339. var codechangeYN = ds_init_lb0403.getColumn(0, "nm");
  340. if(codechangeYN == "Y")
  341. {
  342. radio1.visible = true;
  343. }
  344. fGetTestGrupList(-1);
  345. if(frmf_checkOpener())
  346. {
  347. ds_hidden_tclscdlist.setColumn(0, "testgrup", testGrup);
  348. //ds_hidden_tclscdlist.setColumn(0, "testgrup", "");
  349. //ds_hidden_tclscdlist.copyData(ds_hidden_ref_tclscdlist);
  350. }
  351. if(!utlf_isNull(ds_hidden_tclscdlist.getColumn(0,"testgrup")))
  352. {
  353. var grup = ds_hidden_tclscdlist.getColumn(0, "testgrup");
  354. for(var i = 0; i < ds_main_testgruplist.rowcount; i++)
  355. {
  356. var find = ds_main_testgruplist.findRow("cd", grup);
  357. if(find < 0)
  358. {
  359. break;
  360. }
  361. ds_main_testgruplist.clearSelect();
  362. ds_main_testgruplist.selectRow(find);
  363. ds_main_testgruplist.rowposition = find;
  364. fGetTestGrupDetlList();
  365. }
  366. }
  367. }
  368. function fGetTestGrupList(ref)
  369. {
  370. var oParam = {};
  371. oParam.id = "TRLLF90403";
  372. oParam.service = "diagtestapplib.LisCommon";
  373. oParam.method = "reqGetTestGrupNm";
  374. oParam.inds = "cond=ds_send";
  375. oParam.outds = "ds_main_testgruplist=getTestGrupNm";
  376. oParam.async = false;
  377. //oParam.callback = "cf_TRLLF90403";
  378. tranf_submit(oParam);
  379. if(ref != -1)
  380. {
  381. ds_main_testgruplist.rowposition = ref;
  382. fGetTestGrupDetlList();
  383. }
  384. else
  385. {
  386. ds_main_testgruplist.rowposition = -1;
  387. }
  388. }
  389. function fGetTestGrupDetlList()
  390. {
  391. var grupRow = ds_main_testgruplist.rowposition;
  392. ds_send.setColumn(0, "testgrupnm", ds_main_testgruplist.getColumn(grupRow, "nm"));
  393. var oParam = {};
  394. oParam.id = "TRLLF90401";
  395. oParam.service = "diagtestapplib.LisCommon";
  396. oParam.method = "reqGetTestGrupDetl";
  397. oParam.inds = "cond=ds_hidden";
  398. oParam.outds = "ds_main_testgrupdetl=getTestGrupDetl";
  399. oParam.async = false;
  400. tranf_submit(oParam);
  401. fSetdetlrowstatus();
  402. }
  403. function fSetdetlrowstatus()
  404. {
  405. for(var i = 0; i < ds_main_testgrupdetl.rowcount; i++)
  406. {
  407. ds_main_testgrupdetl.updatecontrol = false;
  408. ds_main_testgrupdetl.setRowType(i, "I");
  409. ds_main_testgrupdetl.updatecontrol = true;
  410. }
  411. }
  412. function ipt_testgrup_onkeyup(obj:Edit, e:KeyEventInfo)
  413. {
  414. if(e.keycode == 13)
  415. {
  416. obj.updateToDataset();
  417. ds_main_testgrupdetl.clearData();
  418. var testgrup = ds_hidden.getColumn(0, "testgrupnm");
  419. var grupRow = ds_main_testgruplist.findRow("nm", testgrup);
  420. if(grupRow < 0)
  421. {
  422. var grupRS = ds_main_testgruplist.addRow();
  423. var grupNM = ds_hidden.getColumn(0, "testgrupnm");
  424. if(utlf_isNull(grupNM))
  425. {
  426. sysf_messageBox("검사그룹명을", "C001");
  427. ds_main_testgruplist.deleteRow(grupRS);
  428. return;
  429. }
  430. else
  431. {
  432. ds_main_testgruplist.setColumn(grupRS, "nm", ds_hidden.getColumn(0, "testgrupnm"));
  433. }
  434. }
  435. else
  436. {
  437. ds_main_testgruplist.rowposition = grupRow;
  438. fGetTestGrupDetlList();
  439. }
  440. }
  441. }
  442. function grd_testgruplist_oncellclick(obj:Grid, e:GridClickEventInfo)
  443. {
  444. fGetTestGrupDetlList();
  445. }
  446. function fGetTestGrupDetlList()
  447. {
  448. var grupRow = ds_main_testgruplist.rowposition;
  449. ds_send.setColumn(0, "testgrupnm", ds_main_testgruplist.getColumn(grupRow, "nm"));
  450. var oParam = {};
  451. oParam.id = "TRLLF90401";
  452. oParam.service = "diagtestapplib.LisCommon";
  453. oParam.method = "reqGetTestGrupDetl";
  454. oParam.inds = "cond=ds_send";
  455. oParam.outds = "ds_main_testgrupdetl=getTestGrupDetl";
  456. oParam.async = false;
  457. tranf_submit(oParam);
  458. fSetdetlrowstatus();
  459. }
  460. function btn_up_onclick(obj:Button, e:ClickEventInfo)
  461. {
  462. fSetDetlListMode("2");
  463. }
  464. function fSetDetlListMode(gbn)
  465. {
  466. var row = ds_main_testgrupdetl.rowposition;
  467. if(gbn == "1")
  468. {
  469. if(row == ds_main_testgrupdetl.rowcount-1)
  470. {
  471. return;
  472. }
  473. ds_main_testgrupdetl.exchangeRow(row,row+1);
  474. }
  475. else
  476. {
  477. ds_main_testgrupdetl.exchangeRow(row-1,row);
  478. }
  479. iudGbn = 1;
  480. fSetdetlrowstatus();
  481. }
  482. function btn_down_onclick(obj:Button, e:ClickEventInfo)
  483. {
  484. fSetDetlListMode("1");
  485. }
  486. function btn_delrow_onclick(obj:Button, e:ClickEventInfo)
  487. {
  488. fSetdeleterow();
  489. }
  490. function fSetdeleterow()
  491. {
  492. var gRow = ds_main_testgrupdetl.rowposition;
  493. ds_main_testgrupdetl.deleteRow(gRow);
  494. iudGbn = 1;
  495. fSetdetlrowstatus();
  496. }
  497. function cmb_mdl_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  498. {
  499. fGetTclscdList();
  500. }
  501. function fGetTclscdList(cd)
  502. {
  503. ds_main_tclscdlist.clearData();
  504. var cd = ds_hidden.getColumn(0, "mdlcd");
  505. var nuflag = ds_hidden.getColumn(0, "nuflag");
  506. ds_send.setColumn(0, "testmdlcd", cd);
  507. ds_send.setColumn(0, "searchflag", ds_hidden_search.getColumn(0, "searchgbn"));
  508. ds_send.setColumn(0, "searchtext", ds_hidden_search.getColumn(0, "searchtext"));
  509. ds_send.setColumn(0, "nuflag", nuflag);
  510. ds_send.setColumn(0, "userdeptflagcd", ds_init_lb0000.getColumn(0, "nm"));
  511. var oParam = {};
  512. oParam.id = "TRLLF90402";
  513. oParam.service = "diagtestapplib.LisCommon";
  514. oParam.method = "reqGetUserTclscdList";
  515. oParam.inds = "cond=ds_send";
  516. oParam.outds = "ds_main_tclscdlist=getUserTclscdList";
  517. oParam.async = false;
  518. //oParam.callback = "cf_TRLLF90402";
  519. tranf_submit(oParam);
  520. }
  521. function ipt_refgbn_onkeyup(obj:Edit, e:KeyEventInfo)
  522. {
  523. if(e.keycode == 13)
  524. {
  525. obj.updateToDataset();
  526. fGetTclscdList("00");
  527. }
  528. }
  529. function grd_testitemlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  530. {
  531. fSetTestGrupDetl();
  532. }
  533. function fSetTestGrupDetl()
  534. {
  535. var detlrow = ds_main_testgrupdetl.rowcount;
  536. var sTclscd = ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "tclscd");
  537. var findrow = ds_main_testgrupdetl.findRow("tclscd",sTclscd);
  538. if(findrow > -1)
  539. {
  540. sysf_messageBox("이미 선택된 검사코드 ", "E008"); //이미 선택된 검사코드입니다.
  541. return;
  542. }
  543. if(ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "lvl") != "1")
  544. {
  545. var detlrow = ds_main_testgrupdetl.addRow();
  546. dsf_makeValue(ds_main_testgrupdetl, "chk", "string", "", detlrow);
  547. dsf_makeValue(ds_main_testgrupdetl, "tclsnm", "string", ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "tclsnm"), detlrow);
  548. dsf_makeValue(ds_main_testgrupdetl, "tclscd", "string", ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "tclscd"), detlrow);
  549. dsf_makeValue(ds_main_testgrupdetl, "spccd", "string", ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "spccd"), detlrow);
  550. ds_main_testgrupdetl.updatecontrol = false;
  551. ds_main_testgrupdetl.setRowType(detlrow, "i");
  552. ds_main_testgrupdetl.updatecontrol = true;
  553. iudGbn = 0;
  554. }
  555. }
  556. function grd_testitemlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  557. {
  558. pmn_gbn.trackPopup(e.screenX+5,e.screenY+5);
  559. }
  560. function pmn_gbn_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  561. {
  562. eval(e.id +"();");
  563. }
  564. function fSetTestGrupDetlAll()
  565. {
  566. var selectlvl = ds_main_tclscdlist.getColumn(ds_main_tclscdlist.rowposition, "lvl");
  567. var detlrow = ds_main_testgrupdetl.rowcount;
  568. var lrow = ds_main_tclscdlist.rowposition;
  569. var sTclscd = "";
  570. var findrow = "";
  571. for(var i = 0; i < ds_main_tclscdlist.rowcount; i++)
  572. {
  573. if(selectlvl < ds_main_tclscdlist.getColumn(lrow, "lvl"))
  574. {
  575. sTclscd = ds_main_tclscdlist.getColumn(lrow, "tclscd");
  576. findrow = ds_main_testgrupdetl.findRow("tclscd",sTclscd);
  577. if(findrow > -1 )
  578. {
  579. sysf_messageBox("이미 선택된 검사코드 ", "E008"); //이미 선택된 검사코드입니다.
  580. return;
  581. }
  582. var detlrow = ds_main_testgrupdetl.addRow();
  583. dsf_makeValue(ds_main_testgrupdetl, "chk", "string", "", detlrow);
  584. dsf_makeValue(ds_main_testgrupdetl, "tclsnm", "string", ds_main_tclscdlist.getColumn(lrow, "tclsnm"), detlrow);
  585. dsf_makeValue(ds_main_testgrupdetl, "tclscd", "string", ds_main_tclscdlist.getColumn(lrow, "tclscd"), detlrow);
  586. dsf_makeValue(ds_main_testgrupdetl, "spccd", "string", ds_main_tclscdlist.getColumn(lrow, "spccd"), detlrow);
  587. ds_main_testgrupdetl.updatecontrol = false;
  588. ds_main_testgrupdetl.setRowType(detlrow, "i");
  589. ds_main_testgrupdetl.updatecontrol = true;
  590. }
  591. }
  592. }
  593. function btn_cnfm_onclick(obj:Button, e:ClickEventInfo)
  594. {
  595. fSetPopUpTclscdList();
  596. }
  597. function fSetPopUpTclscdList()
  598. {
  599. var sendtclsnm = ds_main_testgrupdetl.getColumn(0, "tclsnm");
  600. var sendtclsnm2 = ds_main_testgrupdetl.getColumn(0, "tclsnm");
  601. var sendtclscd = ds_main_testgrupdetl.getColumn(0, "tclscd");
  602. var sendtclscd2 = ds_main_testgrupdetl.getColumn(0, "tclscd");
  603. if(utlf_isNull(sendtclsnm))
  604. {
  605. ds_hidden_tclscdlist.setColumn(0, "tclscdlist", "");
  606. ds_hidden_tclscdlist.setColumn(0, "tclsnmlist", "");
  607. }
  608. else
  609. {
  610. for(var i = 1; i < ds_main_testgrupdetl.rowcount; i++)
  611. {
  612. sendtclsnm = sendtclsnm + ", " + ds_main_testgrupdetl.getColumn(i, "tclsnm");
  613. sendtclsnm2 = sendtclsnm2 + "▦" + ds_main_testgrupdetl.getColumn(i, "tclsnm");
  614. sendtclscd = sendtclscd + "','" + ds_main_testgrupdetl.getColumn(i, "tclscd");
  615. sendtclscd2 = sendtclscd2 + "▦" + ds_main_testgrupdetl.getColumn(i, "tclscd");
  616. }
  617. ds_hidden_tclscdlist.setColumn(0, "tclsnmlist", sendtclsnm);
  618. ds_hidden_tclscdlist.setColumn(0, "tclscdlist", "'" + sendtclscd + "'");
  619. ds_hidden_tclscdlist.setColumn(0, "tclscdlist2", sendtclscd2);
  620. ds_hidden_tclscdlist.setColumn(0, "tclsnmlist2", sendtclsnm2);
  621. ds_hidden_tclscdlist.setColumn(0, "testgrup", ds_main_testgruplist.getColumn(ds_main_testgruplist.rowposition, "cd"));
  622. }
  623. opener.ds_hidden_ref_tclscdlist.copyData(ds_hidden_tclscdlist);
  624. opener.lf_setInit(2);
  625. this.close();
  626. }
  627. function btn_insert_onclick(obj:Button, e:ClickEventInfo)
  628. {
  629. fExeTestGrup();
  630. }
  631. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  632. {
  633. fTestGrupDelete();
  634. }
  635. function btn_reset_onclick(obj:Button, e:ClickEventInfo)
  636. {
  637. this.close();
  638. }
  639. function fExeTestGrup()
  640. {
  641. if(ds_main_testgrupdetl.rowcount < 1)
  642. {
  643. sysf_messageBox("검사그룹 상세 정보를", "C001");
  644. return;
  645. }
  646. var testGrupnm = ds_main_testgruplist.getColumn(ds_main_testgruplist.rowposition, "nm");
  647. ds_send.setColumn(0, "testgrupnm", testGrupnm);
  648. var oParam = {};
  649. oParam.id = "TXLLF90401";
  650. oParam.service = "diagtestapplib.LisCommon";
  651. oParam.method = "reqExeTestGrupDetl";
  652. oParam.inds = "testgrupdetllist=ds_main_testgrupdetl:u cond=ds_send";
  653. oParam.async = false;
  654. oParam.callback = "cf_TXLLF90401";
  655. tranf_submit(oParam);
  656. }
  657. function cf_TXLLF90401(sSvcId, nErrorCode, sErrorMsg)
  658. {
  659. if(nErrorCode < 0)
  660. {
  661. return;
  662. }
  663. else
  664. {
  665. ds_main_testgruplist.clearData();
  666. ds_main_testgrupdetl.clearData();
  667. ds_hidden_tclscdlist.setColumn(0, "testgrup", "");
  668. fGetTestGrupList(0);
  669. }
  670. }
  671. function fTestGrupDelete()
  672. {
  673. ds_send.setColumn(0, "testgrupnm", ds_main_testgruplist.getColumn(ds_main_testgruplist.rowposition, "nm"));
  674. var oParam = {};
  675. oParam.id = "TXLLF90402";
  676. oParam.service = "diagtestapplib.LisCommon";
  677. oParam.method = "reqDelTestGrup";
  678. oParam.inds = "cond=ds_send";
  679. oParam.outds = "ds_main_testgruplist=getTestGrupDetl";
  680. oParam.async = false;
  681. oParam.callback = "cf_TXLLF90402";
  682. tranf_submit(oParam);
  683. }
  684. function cf_TXLLF90402(sSvcId, nErrorCode, sErrorMsg)
  685. {
  686. if(nErrorCode < 0)
  687. {
  688. return;
  689. }
  690. else
  691. {
  692. fGetTestGrupList(0);
  693. }
  694. }
  695. ]]></Script>
  696. </Form>
  697. </FDL>