SMLMF00300_배양균속코드관리.xfdl 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLMF00300" position="absolute 0 0 1256 805" titletext="New Form" onload="SMLMF00300_onload">
  5. <Layouts>
  6. <Layout>
  7. <Grid id="grd_Bacgenslist" taborder="0" useinputpanel="false" position="absolute 0 97 1256 805" autofittype="col" anchor="all" binddataset="ds_grid_grd_Bacgenslist" positiontype="position" autoenter="select" cellsizingtype="col" class="CSS::lis.css">
  8. <Formats>
  9. <Format id="default">
  10. <Columns>
  11. <Column size="30"/>
  12. <Column size="0"/>
  13. <Column size="104"/>
  14. <Column size="104"/>
  15. <Column size="120"/>
  16. <Column size="170"/>
  17. <Column size="160"/>
  18. <Column size="170"/>
  19. <Column size="160"/>
  20. <Column size="0"/>
  21. </Columns>
  22. <Rows>
  23. <Row size="24" band="head"/>
  24. <Row size="24"/>
  25. </Rows>
  26. <Band id="head">
  27. <Cell/>
  28. <Cell col="1" text="상태"/>
  29. <Cell col="2" text="사용시작일자"/>
  30. <Cell col="3" text="사용종료일자"/>
  31. <Cell col="4" text="배양균속코드"/>
  32. <Cell col="5" text="배양균속명"/>
  33. <Cell col="6" text="배양균속명(약어)"/>
  34. <Cell col="7" text="배양균속명(화면)"/>
  35. <Cell col="8" text="배양균속명(출력)"/>
  36. <Cell col="9" text="checkcolor"/>
  37. </Band>
  38. <Band id="body">
  39. <Cell celltype="head" text="expr:currow+1"/>
  40. <Cell col="1" displaytype="image" expr="expr:getRowType(currow) == 2 ?'theme://images/ico_i.png' : (getRowType(currow) == 4 ? 'theme://images/ico_u.png' : (getRowType(currow) == 8 ? 'theme://images/ico_d.png' : 'theme://images/ico_e.png'))"/>
  41. <Cell col="2" displaytype="date" edittype="expr:getRowType(currow) == 2 ? 'date': 'none'" text="bind:bacgensfromdd"/>
  42. <Cell col="3" displaytype="date" edittype="date" text="bind:bacgenstodd"/>
  43. <Cell col="4" displaytype="text" edittype="text" text="bind:bacgenscd" editlimit="5"/>
  44. <Cell col="5" displaytype="text" edittype="text" text="bind:bacgensnm" editlimit="50"/>
  45. <Cell col="6" displaytype="text" edittype="text" text="bind:bacgensabbrnm" editlimit="20"/>
  46. <Cell col="7" displaytype="text" edittype="text" text="bind:bacgensscrnnm" editlimit="50"/>
  47. <Cell col="8" displaytype="text" edittype="text" text="bind:bacgensprntnm" editlimit="10"/>
  48. <Cell col="9" text="bind:checkcolor"/>
  49. </Band>
  50. </Format>
  51. </Formats>
  52. </Grid>
  53. <Static id="caption1" text="배양균속코드상세내역" class="tit_2" position="absolute 0 77 150 97" positiontype="position" anchor="left top"/>
  54. <Div id="group1" taborder="1" position="absolute 0 25 1256 67" anchor="left top right" positiontype="position" class="div_SA">
  55. <Layouts>
  56. <Layout>
  57. <Shape id="line3" linetype="vertical" class="line_4" position="absolute 1108 7 1108 29" positiontype="position"/>
  58. <Shape id="line2" linetype="vertical" class="line_4" position="absolute 273 7 273 29" positiontype="position" anchor="left top"/>
  59. <Static id="caption2" text="조회구분" class="search_name" position="absolute 8 10 82 30" positiontype="position" anchor="left top"/>
  60. <Static id="caption4" text="검색구분" class="search_name" position="absolute 776 10 850 30" positiontype="position" anchor="top right"/>
  61. <Combo id="cmb_refflag" taborder="6" class="combo_search" position="absolute 226 10 376 30" positiontype="position" codecolumn="codecolumn" datacolumn="datacolumn" index="0" value="1" text="사용가능자료" anchor="left top">
  62. <Dataset id="innerdataset">
  63. <ColumnInfo>
  64. <Column id="codecolumn" size="256"/>
  65. <Column id="datacolumn" size="256"/>
  66. </ColumnInfo>
  67. <Rows>
  68. <Row>
  69. <Col id="codecolumn">1</Col>
  70. <Col id="datacolumn">사용가능자료</Col>
  71. </Row>
  72. <Row>
  73. <Col id="codecolumn">2</Col>
  74. <Col id="datacolumn">전체자료</Col>
  75. </Row>
  76. </Rows>
  77. </Dataset>
  78. </Combo>
  79. <Button id="btn_ref" taborder="7" text="조회" class="btn1" position="absolute 379 10 435 30" anchor="left top" positiontype="position" onclick="group1_btn_ref_onclick"/>
  80. <Combo id="cmb_search" taborder="8" class="combo_search" position="absolute 850 10 1000 30" positiontype="position" codecolumn="codecolumn" datacolumn="datacolumn" index="0" value="1" text="코드" anchor="top right">
  81. <Dataset id="innerdataset">
  82. <ColumnInfo>
  83. <Column id="codecolumn" size="256"/>
  84. <Column id="datacolumn" size="256"/>
  85. </ColumnInfo>
  86. <Rows>
  87. <Row>
  88. <Col id="codecolumn">1</Col>
  89. <Col id="datacolumn">코드</Col>
  90. </Row>
  91. <Row>
  92. <Col id="codecolumn">2</Col>
  93. <Col id="datacolumn">코드명</Col>
  94. </Row>
  95. </Rows>
  96. </Dataset>
  97. </Combo>
  98. <Edit id="ipt_searchtext" taborder="9" class="input_search" position="absolute 1003 10 1113 30" imemode="hangul" positiontype="position" onkeydown="group1_ipt_searchtext_onkeydown" anchor="top right"/>
  99. <Button id="btn_reset" taborder="10" text="초기화" onlbuttonup="btn_reset_onlbuttonup" class="btn1" position="absolute 1175 10 1244 30" anchor="top right" positiontype="position" onclick="group1_btn_reset_onclick"/>
  100. <Button id="btn_search" taborder="11" text="검색" onclick="group1_btn_search_onclick" class="btn1" position="absolute 1116 10 1172 30" anchor="top right" positiontype="position"/>
  101. <Combo id="cmb_dvsn" taborder="12" value="1" text="사용가능자료" codecolumn="codecolumn" datacolumn="datacolumn" index="0" class="combo_search" position="absolute 74 10 224 30" onitemchanged="group1_cmb_dvsn_onitemchanged" anchor="left top">
  102. <Dataset id="innerdataset">
  103. <ColumnInfo>
  104. <Column id="codecolumn" size="256"/>
  105. <Column id="datacolumn" size="256"/>
  106. </ColumnInfo>
  107. <Rows>
  108. <Row>
  109. <Col id="codecolumn">A</Col>
  110. <Col id="datacolumn">항생제그룹</Col>
  111. </Row>
  112. <Row>
  113. <Col id="codecolumn">R</Col>
  114. <Col id="datacolumn">보고그룹</Col>
  115. </Row>
  116. </Rows>
  117. </Dataset>
  118. </Combo>
  119. </Layout>
  120. </Layouts>
  121. </Div>
  122. <Button id="button2" taborder="2" text="행추가" onlbuttonup="button2_onlbuttonup" class="btn2" position="absolute 1200 74 1256 94" anchor="top right" positiontype="position" onclick="button2_onclick"/>
  123. <Button id="btn_save" taborder="4" text="저장" onlbuttonup="btn_save_onlbuttonup" class="btn4" position="absolute 1200 0 1256 20" anchor="top right" positiontype="position" onclick="btn_save_onclick"/>
  124. <Static id="caption6" text="배양균속코드관리" class="tit_1" position="absolute 0 0 155 25" positiontype="position"/>
  125. </Layout>
  126. </Layouts>
  127. <Objects>
  128. <Dataset id="ds_grid_grd_Bacgenslist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_grid_grd_Bacgenslist_oncolumnchanged">
  129. <ColumnInfo>
  130. <Column id="bacgensfromdd" type="STRING"/>
  131. <Column id="bacgenstodd" type="STRING"/>
  132. <Column id="bacgenscd" type="STRING"/>
  133. <Column id="bacgensnm" type="STRING"/>
  134. <Column id="bacgensabbrnm" type="STRING"/>
  135. <Column id="bacgensscrnnm" type="STRING"/>
  136. <Column id="bacgensprntnm" type="STRING"/>
  137. <Column id="checkcolor" type="STRING" size="256"/>
  138. <Column id="dvsn" type="STRING" size="256"/>
  139. </ColumnInfo>
  140. </Dataset>
  141. </Objects>
  142. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  143. * System Name :
  144. * Job Name :
  145. * Creator :
  146. * Make Date : 2015-11-09
  147. * Description :
  148. *---------------------------------------------------------------------------------------
  149. * Modify Date Modifier Modify Description
  150. *---------------------------------------------------------------------------------------
  151. * 2015-11-09 Live Converter TF->XP
  152. *
  153. *---------------------------------------------------------------------------------------
  154. ****************************************************************************************/
  155. include "com_commonxp::comm_main.xjs";
  156. function SMLMF00300_onload(obj:Form, e:LoadEventInfo)
  157. {
  158. frmf_initForm(obj);
  159. grd_Bacgenslist.setFormatColProperty(9,"size",0);
  160. // 조회
  161. lf_GetBacgListSearch("1");
  162. // 그리드 sort
  163. grdf_setGridSort(grd_Bacgenslist);
  164. }
  165. function lf_GetBacgListSearch(btnf){
  166. var sInDsName = dsf_createDsRow("in_ds_search"
  167. , [{col: "refgbn", val: group1.cmb_refflag.value}
  168. , {col: "searchgbn", val: group1.cmb_search.value}
  169. , {col: "searchnm", val: group1.ipt_searchtext.value}
  170. , {col: "btnflag", val: btnf}]);
  171. ds_grid_grd_Bacgenslist.clearData();
  172. var oParam = {};
  173. oParam.id = "TRLMF00301";
  174. oParam.service = "diagtestbaseinfomngtapp.MicroTestBaseInfoMngt";
  175. oParam.method = "reqGetBacgensList";
  176. oParam.inds = "cond="+sInDsName;
  177. oParam.outds = "ds_grid_grd_Bacgenslist=bacgenslist";
  178. oParam.async = false;
  179. oParam.callback = "cbf_SMLMF00300";
  180. tranf_submit(oParam);
  181. }
  182. //저장
  183. function lf_saveBacgListInfo(){
  184. var oParam = {};
  185. oParam.id = "TXLMF00301";
  186. oParam.service = "diagtestbaseinfomngtapp.MicroTestBaseInfoMngt";
  187. oParam.method = "reqExeBacgensList";
  188. oParam.inds = "cond=ds_grid_grd_Bacgenslist:U";
  189. oParam.outds = "ds_grid_grd_Bacgenslist=bacgenslist";
  190. oParam.async = false;
  191. oParam.callback = "cbf_SMLMF00300";
  192. tranf_submit(oParam);
  193. }
  194. //콜백함수
  195. function cbf_SMLMF00300(strSvcID, nErrorCode, strErrorMag){
  196. if(strSvcID == "TXLMF00301" && nErrorCode==0){
  197. sysf_messageBox("","I001","");
  198. }
  199. //종료된 데이타 색깔표시
  200. lf_changeColor();
  201. }
  202. // 필수값 체크
  203. function lf_ckeckNull(){
  204. var bChkValue= frmf_chkMdtGrid(grd_Bacgenslist,[2,3,4],["사용시작일자","사용종료일자","배양균속코드"]);
  205. if(bChkValue==true) lf_saveBacgListInfo();
  206. }
  207. //종료된 데이타 색깔 바꾸기
  208. function lf_changeColor(){
  209. var i =0;
  210. var j =0;
  211. if (ds_grid_grd_Bacgenslist.rowcount == 0) return;
  212. var sExpr = "EXPR(checkcolor)";
  213. //Row색깔 투입
  214. ds_grid_grd_Bacgenslist.updatecontrol = false ;
  215. for(j=0; j < ds_grid_grd_Bacgenslist.rowcount; j++){
  216. if (ds_grid_grd_Bacgenslist.getColumn(j,"bacgenstodd") < utlf_getCurrentDate()) {
  217. ds_grid_grd_Bacgenslist.setColumn(j, "checkcolor", "yellow");
  218. } else {
  219. ds_grid_grd_Bacgenslist.setColumn(j, "checkcolor", "default");
  220. }
  221. ds_grid_grd_Bacgenslist.setRowType(j,"1");
  222. }
  223. ds_grid_grd_Bacgenslist.updatecontrol = true ;
  224. //색깔변경
  225. for (i=0; i < grd_Bacgenslist.getCellCount('Head'); i++ ) {
  226. grd_Bacgenslist.setCellProperty("Body",i,"background", sExpr);
  227. grd_Bacgenslist.setCellProperty("Body",i,"background2", sExpr);
  228. }
  229. }
  230. //조회
  231. function group1_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  232. {
  233. lf_GetBacgListSearch("1");
  234. }
  235. //검색
  236. function group1_btn_search_onclick(obj:Button, e:ClickEventInfo)
  237. {
  238. lf_GetBacgListSearch("2");
  239. }
  240. //검색명 입력 엔터
  241. function group1_ipt_searchtext_onkeydown(obj:Edit, e:KeyEventInfo)
  242. {
  243. if(e.keycode=="13") lf_GetBacgListSearch("2");
  244. }
  245. //초기화
  246. function group1_btn_reset_onclick(obj:Button, e:ClickEventInfo)
  247. {
  248. ds_grid_grd_Bacgenslist.clearData();
  249. }
  250. //저장
  251. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  252. {
  253. lf_ckeckNull();
  254. }
  255. //행추가
  256. function button2_onclick(obj:Button, e:ClickEventInfo)
  257. {
  258. var nRow = ds_grid_grd_Bacgenslist.addRow();
  259. ds_grid_grd_Bacgenslist.setColumn(nRow,"bacgensfromdd",utlf_getCurrentDate());
  260. ds_grid_grd_Bacgenslist.setColumn(nRow,"bacgenstodd","99991231");
  261. ds_grid_grd_Bacgenslist.setColumn(nRow,"dvsn",group1.cmb_dvsn.value);
  262. }
  263. function ds_grid_grd_Bacgenslist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  264. {
  265. //종료일자 체크
  266. var fromdd = ds_grid_grd_Bacgenslist.getColumn(e.row,"bacgensfromdd");
  267. var todd = ds_grid_grd_Bacgenslist.getColumn(e.row,"bacgenstodd");
  268. // 종료일자체크
  269. if((e.columnid == "bacgenstodd") || (e.columnid == "bacgensfromdd")){
  270. if(fromdd != "" && todd != "") {
  271. if(fromdd > todd){
  272. sysf_messageBox("종료일자가 시작일자보다 이전 날짜입니다.", "I","");
  273. ds_grid_grd_Bacgenslist.setColumn(e.row,"bacgenstodd",ds_grid_grd_Bacgenslist.getOrgColumn(e.row,"bacgenstodd"));
  274. }
  275. }
  276. }
  277. //컴체코드 대문자 변환
  278. if(e.columnid=="bacgenscd"){
  279. var ibacgenscd = ds_grid_grd_Bacgenslist.getColumn(e.row,"bacgenscd")
  280. ds_grid_grd_Bacgenslist.setColumn(e.row,"bacgenscd",ibacgenscd.toUpperCase());
  281. }
  282. }
  283. function group1_cmb_dvsn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  284. {
  285. lf_GetBacgListSearch("1");
  286. }
  287. ]]></Script>
  288. </Form>
  289. </FDL>