SMLLF01800_중복검사코드관리.xfdl 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLLF01800" position="absolute 0 0 1256 805" titletext="중복검사코드관리" onload="SMLLF01800_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group3" position="absolute 0 25 1256 805" anchor="all" positiontype="position" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Static id="caption1" class="tit_2" position="absolute 0 52 136 72" anchor="default" positiontype="position" text="검사코드 목록"/>
  11. <Static id="caption3" class="tit_2" position="absolute 570 420 642 440" anchor="default" positiontype="position" text="검사목록"/>
  12. <Div id="group1" position="absolute 0 0 1256 42" anchor="left top right" positiontype="position" class="div_SA">
  13. <Layouts>
  14. <Layout>
  15. <Button id="btn_ref" class="btn1" position="absolute 1189 10 1245 30" anchor="top right" text="조회" onclick="btn_ref_onclick" positiontype="position"/>
  16. <Static id="caption5" class="search_name" position="absolute 8 10 80 30" anchor="default" text="검사분류" positiontype="position"/>
  17. <Combo id="cmb_tlrgcd" class="combo_s_essential" position="absolute 80 8 278 28" anchor="default" positiontype="position" innerdataset="@ds_init_lb0104" codecolumn="cd" datacolumn="nm" index="-1" onitemchanged="group3_group1_cmb_tlrgcd_onitemchanged"/>
  18. <Combo id="cmd_tmdlcd" class="combo_s_essential" position="absolute 281 8 479 28" anchor="default" positiontype="position" innerdataset="@ds_init_tsectcd" codecolumn="cd" datacolumn="nm" index="-1" onitemchanged="group3_group1_cmd_tmdlcd_onitemchanged"/>
  19. <Static id="capti" class="search_name" position="absolute 503 9 575 29" anchor="default" text="조회구분" positiontype="position"/>
  20. <Combo id="cmb_refgbn" class="combo_search" position="absolute 575 8 740 28" anchor="default" positiontype="position" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="group3_group1_cmb_refgbn_onitemchanged">
  21. <Dataset id="innerdataset">
  22. <ColumnInfo>
  23. <Column id="codecolumn" size="256"/>
  24. <Column id="datacolumn" size="256"/>
  25. </ColumnInfo>
  26. <Rows>
  27. <Row>
  28. <Col id="codecolumn">1</Col>
  29. <Col id="datacolumn">사용가능자료</Col>
  30. </Row>
  31. <Row>
  32. <Col id="codecolumn">2</Col>
  33. <Col id="datacolumn">전체자료</Col>
  34. </Row>
  35. </Rows>
  36. </Dataset>
  37. </Combo>
  38. </Layout>
  39. </Layouts>
  40. </Div>
  41. <Static id="caption2" class="tit_2" position="absolute 575 52 685 72" anchor="default" positiontype="position" text="중복검사목록"/>
  42. <Button id="btn_up" class="icon_top" position="absolute 900 390 926 410" anchor="default" positiontype="position" text="" onclick="group3_btn_up_onclick"/>
  43. <Combo id="cmb_testmdlcd" class="combo_s_essential" position="absolute 925 417 1123 437" anchor="default" positiontype="position" innerdataset="@ds_init_tsectcd" codecolumn="cd" datacolumn="nm" onitemchanged="group3_cmb_testmdlcd_onitemchanged"/>
  44. <Static id="caption4" class="search_name" position="absolute 652 420 724 437" anchor="default" positiontype="position" text="검사분류"/>
  45. <Grid id="grd_dupltestlist" position="absolute 575 72 1256 380" anchor="left top right" positiontype="position" binddataset="ds_grid_grd_dupltestlist" autofittype="col" autoenter="select">
  46. <Formats>
  47. <Format id="default">
  48. <Columns>
  49. <Column size="0"/>
  50. <Column size="30"/>
  51. <Column size="82"/>
  52. <Column size="280"/>
  53. <Column size="76"/>
  54. <Column size="80"/>
  55. <Column size="80"/>
  56. <Column size="0"/>
  57. </Columns>
  58. <Rows>
  59. <Row size="24" band="head"/>
  60. <Row size="24"/>
  61. </Rows>
  62. <Band id="head">
  63. <Cell/>
  64. <Cell col="1" text="상태"/>
  65. <Cell col="2" text="검사코드"/>
  66. <Cell col="3" text="검사명"/>
  67. <Cell col="4" text="검사구분"/>
  68. <Cell col="5" text="시작일"/>
  69. <Cell col="6" text="종료일"/>
  70. <Cell col="7" text="tclscd"/>
  71. </Band>
  72. <Band id="body">
  73. <Cell celltype="head" expr="currow+1"/>
  74. <Cell col="1" celltype="head" displaytype="image"/>
  75. <Cell col="2" style="align:center middle;" text="bind:dupltclscd"/>
  76. <Cell col="3" style="align:left;" text="bind:tclsnm"/>
  77. <Cell col="4" style="align:center middle;" expr="expr:tclskindn == 1 ? 'Panel' : (tclskindn == 2 ? 'Single' : ( tclskindn== 3? 'Parent': tclskindn))"/>
  78. <Cell col="5" displaytype="date" edittype="expr:getRowType(currow) == 1? 'none' : 'date'" style="align:center middle;" text="bind:dupltestfromdd"/>
  79. <Cell col="6" displaytype="date" edittype="date" style="align:center middle;" text="bind:dupltesttodd"/>
  80. <Cell col="7" style="align:center middle;" text="bind:tclscd"/>
  81. </Band>
  82. </Format>
  83. </Formats>
  84. </Grid>
  85. <Grid id="grd_testlist" position="absolute 570 440 1256 780" anchor="all" positiontype="position" binddataset="ds_grid_grd_testlist" scrollbars="autovert" ondbclick="grd_testlist_ondbclick" autofittype="col" treeinitstatus="expand,all" treeusecheckbox="false" oncelldblclick="group3_grd_testlist_oncelldblclick">
  86. <Formats>
  87. <Format id="default">
  88. <Columns>
  89. <Column size="30"/>
  90. <Column size="26"/>
  91. <Column size="150"/>
  92. <Column size="300"/>
  93. <Column size="90"/>
  94. <Column size="0"/>
  95. </Columns>
  96. <Rows>
  97. <Row size="24" band="head"/>
  98. <Row size="24"/>
  99. </Rows>
  100. <Band id="head">
  101. <Cell/>
  102. <Cell col="1"/>
  103. <Cell col="2" text="검사코드"/>
  104. <Cell col="3" style="align:center;" text="검사명"/>
  105. <Cell col="4" text="검사구분"/>
  106. <Cell col="5" text="lvl"/>
  107. </Band>
  108. <Band id="body">
  109. <Cell celltype="head" expr="currow+1"/>
  110. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:choi"/>
  111. <Cell col="2" displaytype="tree" edittype="tree" style="align:left;" text="bind:tclscd" treelevel="bind:lvl"/>
  112. <Cell col="3" style="align:left;" text="bind:tclsnm"/>
  113. <Cell col="4" style="align:center middle;" expr="expr:tclskind == 1 ? 'Panel' : (tclskind == 2 ? 'Single' : 'Parent')"/>
  114. <Cell col="5" text="bind:lvl"/>
  115. </Band>
  116. </Format>
  117. </Formats>
  118. </Grid>
  119. <Grid id="grd_testcdlist" position="absolute 0 72 565 780" anchor="left top bottom" positiontype="position" onclick="grd_testcdlist_onclick" binddataset="ds_grid_grd_testcdlist" scrollbars="autoboth" oncellclick="group3_grd_testcdlist_oncellclick" autofittype="col">
  120. <Formats>
  121. <Format id="default">
  122. <Columns>
  123. <Column size="30"/>
  124. <Column size="64"/>
  125. <Column size="320"/>
  126. <Column size="70"/>
  127. <Column size="73"/>
  128. </Columns>
  129. <Rows>
  130. <Row size="24" band="head"/>
  131. <Row size="24"/>
  132. </Rows>
  133. <Band id="head">
  134. <Cell/>
  135. <Cell col="1" text="검사코드"/>
  136. <Cell col="2" text="검사명"/>
  137. <Cell col="3" text="검사구분"/>
  138. <Cell col="4" text="중복코드갯수"/>
  139. </Band>
  140. <Band id="body">
  141. <Cell celltype="head" expr="currow+1"/>
  142. <Cell col="1" style="align:left;" text="bind:tclscd"/>
  143. <Cell col="2" style="align:left;" text="bind:tclsnm"/>
  144. <Cell col="3" style="align:center middle;" text="bind:tclskindn"/>
  145. <Cell col="4" text="bind:dcnt"/>
  146. </Band>
  147. </Format>
  148. </Formats>
  149. </Grid>
  150. <Button id="btn_delete" class="btn2" position="absolute 1200 49 1256 69" anchor="top right" positiontype="position" text="행삭제" onclick="group3_btn_delete_onclick"/>
  151. <Combo id="cmb_testlrgcd" class="combo_s_essential" position="absolute 724 417 922 437" anchor="default" positiontype="position" innerdataset="@ds_init_lb0104" codecolumn="cd" datacolumn="nm" onitemchanged="group3_cmb_testlrgcd_onitemchanged"/>
  152. </Layout>
  153. </Layouts>
  154. </Div>
  155. <Div id="group2" position="absolute 0 0 1256 25" anchor="left top right" positiontype="position">
  156. <Layouts>
  157. <Layout>
  158. <Static id="caption6" class="tit_1" position="absolute 0 0 146 25" anchor="default" positiontype="position" text="중복검사코드관리"/>
  159. </Layout>
  160. </Layouts>
  161. </Div>
  162. <Button id="btn_save" taborder="1" text="저장" onclick="btn_save_onclick" class="btn4" position="absolute 1128 0 1184 20" anchor="top right"/>
  163. <Button id="btn_init" taborder="2" text="초기화" onclick="btn_init_onclick" class="btn4" position="absolute 1187 0 1256 20" anchor="top right"/>
  164. </Layout>
  165. </Layouts>
  166. <Objects>
  167. <Dataset id="ds_grid_grd_dupltestlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_grid_grd_dupltestlist_oncolumnchanged">
  168. <ColumnInfo>
  169. <Column id="dupltclscd" type="STRING"/>
  170. <Column id="tclsnm" type="STRING"/>
  171. <Column id="tclskind" type="STRING"/>
  172. <Column id="dupltestfromdd" type="STRING"/>
  173. <Column id="dupltesttodd" type="STRING"/>
  174. <Column id="tclscd" type="STRING"/>
  175. <Column id="tclskindn" type="STRING" size="256"/>
  176. </ColumnInfo>
  177. </Dataset>
  178. <Dataset id="ds_grid_grd_testlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  179. <ColumnInfo>
  180. <Column id="choi" type="STRING"/>
  181. <Column id="tclscd" type="STRING"/>
  182. <Column id="tclsnm" type="STRING"/>
  183. <Column id="tclskind" type="STRING"/>
  184. <Column id="lvl" type="STRING"/>
  185. </ColumnInfo>
  186. </Dataset>
  187. <Dataset id="ds_grid_grd_testcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  188. <ColumnInfo>
  189. <Column id="tclscd" type="STRING"/>
  190. <Column id="tclsnm" type="STRING"/>
  191. <Column id="tclskind" type="STRING"/>
  192. <Column id="tclskindn" type="STRING"/>
  193. <Column id="dcnt" type="STRING" size="256"/>
  194. </ColumnInfo>
  195. </Dataset>
  196. <Dataset id="ds_init_lb0104" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  197. <ColumnInfo>
  198. <Column id="cd" type="STRING" size="256"/>
  199. <Column id="nm" type="STRING" size="256"/>
  200. </ColumnInfo>
  201. </Dataset>
  202. <Dataset id="ds_init_lb0102" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  203. <ColumnInfo>
  204. <Column id="cd" type="STRING" size="256"/>
  205. <Column id="nm" type="STRING" size="256"/>
  206. </ColumnInfo>
  207. </Dataset>
  208. <Dataset id="ds_init_lb0000" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  209. <ColumnInfo>
  210. <Column id="cd" type="STRING" size="256"/>
  211. <Column id="nm" type="STRING" size="256"/>
  212. </ColumnInfo>
  213. </Dataset>
  214. <Dataset id="ds_init_tsectcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  215. <ColumnInfo>
  216. <Column id="cd" type="STRING"/>
  217. <Column id="nm" type="STRING"/>
  218. </ColumnInfo>
  219. </Dataset>
  220. <Dataset id="ds_print" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  221. <ColumnInfo>
  222. <Column id="able" type="STRING" size="256"/>
  223. </ColumnInfo>
  224. </Dataset>
  225. <Dataset id="ds_execute" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  226. <ColumnInfo>
  227. <Column id="able" type="STRING" size="256"/>
  228. </ColumnInfo>
  229. </Dataset>
  230. </Objects>
  231. <Bind>
  232. <BindItem id="item0" compid="btn_save" propid="enable" datasetid="ds_execute" columnid="able"/>
  233. <BindItem id="item1" compid="group3.btn_delete" propid="enable" datasetid="ds_execute" columnid="able"/>
  234. <BindItem id="item2" compid="group3.btn_up" propid="enable" datasetid="ds_execute" columnid="able"/>
  235. </Bind>
  236. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  237. * System Name :
  238. * Job Name :
  239. * Creator :
  240. * Make Date : 2015-11-09
  241. * Description :
  242. *---------------------------------------------------------------------------------------
  243. * Modify Date Modifier Modify Description
  244. *---------------------------------------------------------------------------------------
  245. * 2015-11-09 Live Converter TF->XP
  246. *
  247. *---------------------------------------------------------------------------------------
  248. ****************************************************************************************/
  249. include "com_commonxp::comm_main.xjs";
  250. include "lis_commonxp::LLZ001.xjs";
  251. function SMLLF01800_onload(obj:Form, e:LoadEventInfo)
  252. {
  253. frmf_initForm(obj); // 화면공통
  254. grdf_setRowTypeIcon(group3.grd_dupltestlist, 1);
  255. lf_initDataSet();
  256. lf_setInit();
  257. lf_setTestLrgCd();
  258. lf_testList();
  259. group3.group1.cmd_tmdlcd.value="00";
  260. //그리드 Sort
  261. grdf_setGridSort(group3.grd_testcdlist);
  262. grdf_setGridSort(group3.grd_dupltestlist);
  263. grdf_setGridSort(group3.grd_dupltestlist);
  264. lf_menumaster();//메뉴권한
  265. }
  266. function lf_initDataSet(){
  267. lf_getDbDeptcd("0104|0102|0000|"); // 중분류
  268. }
  269. //초기시 검사목록 조회
  270. function lf_testList() {
  271. var sInDsName = dsf_createDsRow("ds_temp_search"
  272. , [{col: "testlrgcd", val: group3.cmb_testlrgcd.value }
  273. , {col: "testmdlcd", val: group3.cmb_testmdlcd.value}
  274. , {col: "userdeptflagcd", val:lgv_sUserdeptflagcd}]);
  275. var oParam = {};
  276. oParam.id = "TRLLF01801";
  277. oParam.service = "diagtestbaseinfomngtapp.GeneralTestBaseInfoMngt";
  278. oParam.method = "reqGetDTestList";
  279. oParam.inds = "cond="+sInDsName;
  280. oParam.outds = "ds_grid_grd_testlist=getDTestList";
  281. oParam.async = false;
  282. tranf_submit(oParam);
  283. }
  284. //초기화
  285. function lf_setInit(){
  286. group3.group1.cmb_tlrgcd.value="00";
  287. group3.group1.cmd_tmdlcd.value="00";
  288. group3.group1.cmb_refgbn.value="1";
  289. group3.cmb_testlrgcd.value="00";
  290. group3.cmb_testmdlcd.value="00";
  291. }
  292. //검사분류 초기정보 조회
  293. function lf_setTestLrgCd(){
  294. var nRow=0;
  295. var sLcode = group3.cmb_testlrgcd.value;
  296. var sMcode="";
  297. ds_init_tsectcd.clearData();
  298. if (sLcode == "00"){
  299. ds_init_tsectcd.copyData(ds_init_lb0102);
  300. } else {
  301. ds_init_tsectcd.addRow();
  302. ds_init_tsectcd.setColumn(0,"cd","00");
  303. ds_init_tsectcd.setColumn(0,"nm","-전체-");
  304. for(var i=0;i<=ds_init_lb0102.rowcount -1; i++){
  305. sMcode=ds_init_lb0102.getColumn(i,"cd");
  306. sMcode=sMcode.substr(0, 1);
  307. if (sLcode==sMcode){
  308. nRow = ds_init_tsectcd.addRow();
  309. ds_init_tsectcd.copyRow(nRow,ds_init_lb0102,i);
  310. }
  311. }
  312. }
  313. group3.cmb_testmdlcd.index=0;
  314. lf_testList();
  315. }
  316. function lf_setTLrgCd() {
  317. var nRow=0;
  318. var sLcode = group3.group1.cmb_tlrgcd.value;
  319. var sMcode="";
  320. ds_init_tsectcd.clearData();
  321. if (sLcode == "00"){
  322. ds_init_tsectcd.copyData(ds_init_lb0102);
  323. } else {
  324. ds_init_tsectcd.addRow();
  325. ds_init_tsectcd.setColumn(0,"cd","00");
  326. ds_init_tsectcd.setColumn(0,"nm","-전체-");
  327. for(var i=0;i<=ds_init_lb0102.rowcount -1; i++){
  328. sMcode=ds_init_lb0102.getColumn(i,"cd");
  329. sMcode=sMcode.substr(0, 1);
  330. if (sLcode==sMcode){
  331. nRow = ds_init_tsectcd.addRow();
  332. ds_init_tsectcd.copyRow(nRow,ds_init_lb0102,i);
  333. }
  334. }
  335. }
  336. group3.group1.cmd_tmdlcd.index=0;
  337. group3.cmb_testlrgcd.value=sLcode;
  338. lf_setTestLrgCd();
  339. lf_getTestCdList();
  340. }
  341. function lf_setTestMdlCd(){
  342. group3.cmb_testmdlcd.value = group3.group1.cmd_tmdlcd.value;
  343. lf_getTestCdList();
  344. }
  345. //검사코드 목록 조회
  346. function lf_getTestCdList() {
  347. var sInDsName = dsf_createDsRow("ds_temp_search"
  348. , [{col: "testlrgcd", val: group3.group1.cmb_tlrgcd.value }
  349. , {col: "testmdlcd", val: group3.group1.cmd_tmdlcd.value}
  350. , {col: "userdeptflagcd", val:lgv_sUserdeptflagcd}]);
  351. tranf_submit({
  352. id: "TRLLF01802"
  353. , service: "diagtestbaseinfomngtapp.GeneralTestBaseInfoMngt"
  354. , method: "reqGetTestCdList"
  355. , inds : "cond="+sInDsName
  356. , outds: "ds_grid_grd_testcdlist=getTestCdList"
  357. , async: false
  358. });
  359. lf_testList();
  360. }
  361. //중복검사목록 조회
  362. function lf_getDuplTestList(){
  363. ds_grid_grd_dupltestlist.clearData();
  364. var sInDsName = dsf_createDsRow("ds_temp_search"
  365. , [{col: "tclscd", val: ds_grid_grd_testcdlist.getColumn(ds_grid_grd_testcdlist.rowposition,"tclscd") }
  366. , {col: "refflag", val:group3.group1.cmb_refgbn.value}
  367. , {col: "userdeptflagcd", val:lgv_sUserdeptflagcd}]);
  368. tranf_submit({
  369. id: "TRLLF01803"
  370. , service: "diagtestbaseinfomngtapp.GeneralTestBaseInfoMngt"
  371. , method: "reqGetDuplTestList"
  372. , inds : "cond="+sInDsName
  373. , outds: "ds_grid_grd_dupltestlist=getDuplTestList"
  374. , async: false
  375. });
  376. }
  377. //중복검사목록으로 올리기
  378. function lf_setDuplTestList(){
  379. if(group3.group1.cmb_refgbn.value=="1"){
  380. sysf_messageBox("추가나 변경작업을 하실경우엔 조회구분을 [전체자료]로 조회 후 작업하세요", "I");
  381. return;
  382. }
  383. var tclscd = ds_grid_grd_testcdlist.getColumn(ds_grid_grd_testcdlist.rowposition,"tclscd"); //조회한 항목 검사코드
  384. for(i=0; i< ds_grid_grd_testlist.rowcount; i++){
  385. if(ds_grid_grd_testlist.getColumn(i,"choi")=="1"){ //체크된 항목
  386. var iTclsd = ds_grid_grd_testlist.getColumn(i,"tclscd"); //추가하려는 항목 검사코드
  387. //이미 등록된 검사 코드항목은 등록 x
  388. if(lf_CheckTclscd(i) != -1){ // -1 이면 중복검사목록에 없음
  389. sysf_messageBox(ds_grid_grd_testlist.getColumn(i,"tclsnm")+ " 항목이 이미 존재 합니다", "E");
  390. //검사명과 동일한 코드는 등록X
  391. }else if(iTclsd == tclscd){
  392. sysf_messageBox("검사명과 동일한 코드는 선택", "E001");
  393. }else{
  394. ds_grid_grd_dupltestlist.addRow();
  395. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltclscd",ds_grid_grd_testlist.getColumn(i,"tclscd"));
  396. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclsnm",ds_grid_grd_testlist.getColumn(i,"tclsnm"));
  397. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclskindn",ds_grid_grd_testlist.getColumn(i,"tclskind"));
  398. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclscd",ds_grid_grd_testcdlist.getColumn(ds_grid_grd_testcdlist.rowposition,"tclscd"));
  399. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltestfromdd",utlf_getCurrentDate());
  400. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltesttodd","99991231");
  401. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclskind","1");
  402. }
  403. }
  404. }
  405. }
  406. //더블클릭시 올리기
  407. function lf_upTestCd() {
  408. if(group3.group1.cmb_refgbn.value=="1"){
  409. sysf_messageBox("추가나 변경작업을 하실경우엔 전체자료로 조회 후 작업하세요", "I");
  410. return;
  411. }
  412. var nRow = ds_grid_grd_testlist.rowposition;
  413. var iTclsd = ds_grid_grd_testlist.getColumn(ds_grid_grd_testlist.rowposition,"tclscd"); //추가하려는 항목 검사코드
  414. var tclscd = ds_grid_grd_testcdlist.getColumn(ds_grid_grd_testcdlist.rowposition,"tclscd"); //조회한 항목 검사코드
  415. //이미 등록된 검사 코드항목은 등록X
  416. if(lf_CheckTclscd(nRow) != -1){ // -1 이면 중복검사목록에 없음
  417. sysf_messageBox(ds_grid_grd_testlist.getColumn(nRow,"tclsnm")+ " 항목이 이미 존재 합니다", "E");
  418. //검사명과 동일한 코드는 등록X
  419. }else if(iTclsd == tclscd){
  420. sysf_messageBox("검사명과 동일한 코드는 선택", "E001");
  421. }else{
  422. ds_grid_grd_dupltestlist.addRow();
  423. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltclscd",ds_grid_grd_testlist.getColumn(nRow,"tclscd"));
  424. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclsnm",ds_grid_grd_testlist.getColumn(nRow,"tclsnm"));
  425. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclskindn",ds_grid_grd_testlist.getColumn(nRow,"tclskind"));
  426. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"tclscd",ds_grid_grd_testcdlist.getColumn(ds_grid_grd_testcdlist.rowposition,"tclscd"));
  427. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltestfromdd",utlf_getCurrentDate());
  428. ds_grid_grd_dupltestlist.setColumn(ds_grid_grd_dupltestlist.rowcount-1,"dupltesttodd","99991231");
  429. }
  430. }
  431. // 중복 검사
  432. function lf_CheckTclscd(nRow){
  433. var nFindRow=0;
  434. nFindRow=ds_grid_grd_dupltestlist.findRow("dupltclscd",ds_grid_grd_testlist.getColumn(nRow,"tclscd"));
  435. return nFindRow;
  436. }
  437. function lf_checkColumn(){
  438. var nRow = ds_grid_grd_dupltestlist.rowposition;
  439. var sTestcd = ds_grid_grd_dupltestlist.getColumn(nRow,"dupltclscd");
  440. var sFdd = ds_grid_grd_dupltestlist.getColumn(nRow,"dupltestfromdd");
  441. var sTdd = ds_grid_grd_dupltestlist.getColumn(nRow,"dupltesttodd");
  442. //시작일 종료일
  443. if(sFdd > sTdd){
  444. sysf_messageBox(sTestcd +"의 종료일자가 시작일자보다 이전 날짜입니다", "E");
  445. group3.grd_dupltestlist.setFocus();
  446. return;
  447. }
  448. }
  449. //행삭제
  450. function lf_rowDel() {
  451. ds_grid_grd_dupltestlist.deleteRow(ds_grid_grd_dupltestlist.rowposition);
  452. }
  453. //저장
  454. function lf_saveDuplTestCd() {
  455. if(group3.group1.cmb_refgbn.value=="1"){
  456. sysf_messageBox("추가나 변경작업을 하실경우엔 전체자료로 조회 후 작업하세요", "I");
  457. return;
  458. }
  459. // 서브밋호출
  460. tranf_submit({
  461. id: "TXLLF01801"
  462. , service: "diagtestbaseinfomngtapp.GeneralTestBaseInfoMngt"
  463. , method: "reqExeDuplTest"
  464. , inds : "test=ds_grid_grd_dupltestlist:U"
  465. , callback: "cbf_SMLLF01800"
  466. , async: false
  467. });
  468. }
  469. //콜백함수
  470. function cbf_SMLLF01800(strSvcID, nErrorCode, strErrorMag){
  471. if(strSvcID == "TXLLF01801" && nErrorCode==0){
  472. sysf_messageBox("","I001","");
  473. }
  474. lf_getTestCdList();
  475. }
  476. //진검 사용자별 메뉴권한
  477. function lf_menumaster(){
  478. var edit = frmf_checkAuth("X");
  479. var print = frmf_checkAuth("P");
  480. var eRow = ds_execute.addRow();
  481. var pRow = ds_print.addRow();
  482. if(edit == true){
  483. ds_execute.setColumn(eRow,"able",true);
  484. }
  485. if(print == true){
  486. ds_print.setColumn(pRow,"able",true);
  487. }
  488. }
  489. //검사목록 - 검사분류 중분류 콤보
  490. function group3_cmb_testmdlcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  491. {
  492. lf_testList();
  493. }
  494. //검사목록 - 검사분류 대분류 콤보
  495. function group3_cmb_testlrgcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  496. {
  497. lf_setTestLrgCd();
  498. }
  499. //검사분류 - 대분류
  500. function group3_group1_cmb_tlrgcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  501. {
  502. lf_setTLrgCd();
  503. }
  504. //초기화 버튼
  505. function btn_init_onclick(obj:Button, e:ClickEventInfo)
  506. {
  507. lf_setInit();
  508. }
  509. //조회버튼
  510. function btn_ref_onclick(obj:Button, e:ClickEventInfo)
  511. {
  512. lf_getTestCdList();
  513. }
  514. //검사분류 중분류 콤보 변경시
  515. function group3_group1_cmd_tmdlcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  516. {
  517. //lf_getTestCdList();
  518. lf_setTestMdlCd();
  519. }
  520. //중복검사목록 추가
  521. function group3_btn_up_onclick(obj:Button, e:ClickEventInfo)
  522. {
  523. lf_setDuplTestList();
  524. }
  525. //행삭제
  526. function group3_btn_delete_onclick(obj:Button, e:ClickEventInfo)
  527. {
  528. lf_rowDel();
  529. }
  530. //검사코드 목록 그리드 클릭
  531. function group3_grd_testcdlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  532. {
  533. lf_getDuplTestList();
  534. }
  535. //검사목록 더블클릭하여 추가
  536. function group3_grd_testlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  537. {
  538. lf_upTestCd();
  539. }
  540. //저장
  541. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  542. {
  543. lf_saveDuplTestCd();
  544. }
  545. //시작일, 종료일 체크
  546. function ds_grid_grd_dupltestlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  547. {
  548. lf_checkColumn();
  549. }
  550. //조회구분 변경시
  551. function group3_group1_cmb_refgbn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  552. {
  553. lf_getDuplTestList();
  554. }
  555. function group3_group1_roundrect2_onclick(obj:Shape, e:ClickEventInfo)
  556. {
  557. }
  558. ]]></Script>
  559. </Form>
  560. </FDL>