SPLPC02700_세포스크리너팝업.xfdl 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPLPC02700" position="absolute 0 0 325 425" titletext="New Form" oninit="model1_oninit" class="frm_POP" onload="SPLPC02700_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="grp_popup" position="absolute 0 0 321 420" anchor="default" positiontype="position">
  8. <Layouts>
  9. <Layout>
  10. <Shape id="line1" class="line_1" position="absolute 0 25 305 25" anchor="default" linetype="horizontal" positiontype="position"/>
  11. <Grid id="grd_cellscreener" position="absolute 11 69 314 390" anchor="default" positiontype="position" autofittype="col" binddataset="ds_grid_grd_cellscreener">
  12. <Formats>
  13. <Format id="default">
  14. <Columns>
  15. <Column size="30"/>
  16. <Column size="30"/>
  17. <Column size="127"/>
  18. <Column size="70"/>
  19. <Column size="0"/>
  20. <Column size="0"/>
  21. <Column size="0"/>
  22. <Column size="80"/>
  23. </Columns>
  24. <Rows>
  25. <Row size="24" band="head"/>
  26. <Row size="24"/>
  27. </Rows>
  28. <Band id="head">
  29. <Cell text="No."/>
  30. <Cell col="1" text="상태"/>
  31. <Cell col="2" text="사용자명"/>
  32. <Cell col="3" text="표시순서"/>
  33. <Cell col="4" text="baseflagcd"/>
  34. <Cell col="5" text="resncd"/>
  35. <Cell col="6" text="instcd"/>
  36. <Cell col="7" text="삭제구분"/>
  37. </Band>
  38. <Band id="body">
  39. <Cell celltype="head" 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="combo" edittype="combo" text="bind:resncnts" combodataset="ds_grid_grd_screenerlist" combocodecol="userid" combodatacol="usernm"/>
  42. <Cell col="3" displaytype="text" edittype="text" text="bind:dispseqno"/>
  43. <Cell col="4" text="bind:baseflagcd"/>
  44. <Cell col="5" text="bind:resncd"/>
  45. <Cell col="6" text="bind:instcd"/>
  46. <Cell col="7" text="bind:delflagcd"/>
  47. </Band>
  48. </Format>
  49. </Formats>
  50. </Grid>
  51. <Button id="button3" class="btn2" taborder="20" position="absolute 198 46 254 66" anchor="default" text="행추가" positiontype="position" onclick="grp_popup_button3_onclick"/>
  52. <Radio id="radio1" visible="true" columncount="2" position="absolute 114 46 195 66" anchor="default" codecolumn="codecolumn" datacolumn="datacolumn" positiontype="position" index="0" value="1" onitemchanged="grp_popup_radio1_onitemchanged">
  53. <Dataset id="innerdataset">
  54. <ColumnInfo>
  55. <Column id="codecolumn" size="256"/>
  56. <Column id="datacolumn" size="256"/>
  57. </ColumnInfo>
  58. <Rows>
  59. <Row>
  60. <Col id="codecolumn">1</Col>
  61. <Col id="datacolumn">1차</Col>
  62. </Row>
  63. <Row>
  64. <Col id="codecolumn">2</Col>
  65. <Col id="datacolumn">2차</Col>
  66. </Row>
  67. </Rows>
  68. </Dataset>
  69. </Radio>
  70. <Button id="button1" class="btn2" taborder="20" position="absolute 257 46 313 66" anchor="default" text="행삭제" positiontype="position" onclick="grp_popup_button1_onclick"/>
  71. </Layout>
  72. </Layouts>
  73. </Div>
  74. <Button id="btn_cfm" taborder="1" text="저장" class="btn4" position="absolute 258 393 314 413" positiontype="position" onclick="btn_cfm_onclick"/>
  75. <Static id="stt_titleText" text="세포스크리너" class="sta_POP_title" position="absolute 12 8 120 28"/>
  76. <Button id="Button00" taborder="3" class="btn_POP_cls" position="absolute 299 12 313 25" onclick="Button00_onclick"/>
  77. </Layout>
  78. </Layouts>
  79. <Objects>
  80. <Dataset id="ds_grid_grd_cellscreener" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  81. <ColumnInfo>
  82. <Column id="resncnts" type="STRING"/>
  83. <Column id="dispseqno" type="STRING"/>
  84. <Column id="baseflagcd" type="STRING"/>
  85. <Column id="resncd" type="STRING"/>
  86. <Column id="instcd" type="STRING"/>
  87. <Column id="delflagcd" type="STRING"/>
  88. <Column id="screenflag" type="STRING" size="256"/>
  89. <Column id="usernm" type="STRING" size="256"/>
  90. </ColumnInfo>
  91. </Dataset>
  92. <Dataset id="ds_grid_grd_screenerlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  93. <ColumnInfo>
  94. <Column id="instcd" type="STRING" size="256"/>
  95. <Column id="userid" type="STRING" size="256"/>
  96. <Column id="usernm" type="STRING" size="256"/>
  97. <Column id="userabbr" type="STRING" size="256"/>
  98. <Column id="rgstdd" type="STRING" size="256"/>
  99. <Column id="jobkindcd" type="STRING" size="256"/>
  100. </ColumnInfo>
  101. </Dataset>
  102. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  103. </Objects>
  104. <Bind/>
  105. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  106. * System Name : KU2.0
  107. * Job Name :
  108. * File Name : SPLPC02700_세포스크리너팝업.xfdl
  109. * Creator :
  110. * Make Date : 2015-11-12
  111. *
  112. * Description :
  113. *---------------------------------------------------------------------------------------
  114. * Modify Date Modifier Modify Description
  115. *---------------------------------------------------------------------------------------
  116. * 2015-11-12 DBS Converting Program(TF->XP)
  117. *
  118. *---------------------------------------------------------------------------------------
  119. ****************************************************************************************/
  120. //=======================================================================================
  121. // xjs Include
  122. //---------------------------------------------------------------------------------------
  123. include "com_commonxp::comm_main.xjs";
  124. var instcd = sysf_getUserInfo("dutplceinstcd");
  125. var sName = "";
  126. //=======================================================================================
  127. // Function
  128. //---------------------------------------------------------------------------------------
  129. //초기화
  130. function lf_exeInitialize(){
  131. lf_getRefData();
  132. ds_hidden.copyData(arg_ds_hidden);
  133. sName = ds_hidden.getColumn(0,"scipflag");
  134. var scipflag = sName;
  135. //세포 스크리너 or 결과 입력자 구분.
  136. if( scipflag == "SC") {
  137. stt_titleText.text = "세포스크리너";
  138. grp_popup.radio1.visible = true;
  139. } else if(scipflag == "IP") {
  140. stt_titleText.text = "결과 입력자";
  141. grp_popup.radio1.visible = false;
  142. }
  143. lf_getSepoScrn(scipflag);
  144. }
  145. // 사용자명 콤보박스
  146. function lf_getRefData(){
  147. var sInDsName = dsf_createDsRow("in_ds_search"
  148. , [{col: "delflagcd", val: "0"}
  149. , {col: "instcd", val:instcd }]);
  150. ds_grid_grd_cellscreener.clearData();
  151. // 서브밋호출
  152. tranf_submit({
  153. id: "TRLPC01301"
  154. , service: "plgybaseinfomngtapp.EmpAbbrCode"
  155. , method: "reqGetEmpAbbrCodeList"
  156. , inds : "refData="+sInDsName
  157. , outds: "ds_grid_grd_screenerlist=rsltlist"
  158. , async: false
  159. });
  160. }
  161. // 조회
  162. function lf_getSepoScrn(pFlag){
  163. var sInDsName = dsf_createDsRow("in_ds_search"
  164. , [{col: "baseflagcd", val: pFlag}
  165. , {col: "instcd", val: instcd }
  166. , {col: "screenflag", val: grp_popup.radio1.value}]);
  167. ds_grid_grd_cellscreener.clearData();
  168. // 서브밋호출
  169. tranf_submit({
  170. id: "TRLPC02701"
  171. , service: "plgybaseinfomngtapp.EmpAbbrCode"
  172. , method: "reqGetSepoScrnList"
  173. , inds : "refData="+sInDsName
  174. , outds: "ds_grid_grd_cellscreener=rsltlist"
  175. , async: false
  176. });
  177. }
  178. //행추가
  179. function lf_addRow(){
  180. var nRow = ds_grid_grd_cellscreener.addRow();
  181. var resncd = 0;
  182. if(grp_popup.radio1.value == "1") { // 1차
  183. resncd = 1000;
  184. }else if(grp_popup.radio1.value == "2" ){ // 2차
  185. resncd = 2000;
  186. }
  187. resncd++;
  188. for(var i=0; i<nRow ; i++){
  189. if(ds_grid_grd_cellscreener.findRow("resncd",resncd,0,nRow) != -1){ // resncd가 존재하면 +1
  190. resncd++;
  191. }
  192. }
  193. ds_grid_grd_cellscreener.setColumn(nRow,"screenflag",grp_popup.radio1.value)
  194. ds_grid_grd_cellscreener.setColumn(nRow,"baseflagcd",sName);
  195. ds_grid_grd_cellscreener.setColumn(nRow,"delflagcd","0");
  196. ds_grid_grd_cellscreener.setColumn(nRow,"resncd",resncd);
  197. ds_grid_grd_cellscreener.setColumn(nRow,"instcd",instcd);
  198. }
  199. //행삭제
  200. function lf_delRow(){
  201. var arrPostion = new Array();
  202. arrPostion[0] = ds_grid_grd_cellscreener.rowposition;
  203. ds_grid_grd_cellscreener.setColumn(arrPostion,"delflagcd","1");
  204. grdf_setStatus(grp_popup.grd_cellscreener, "D", arrPostion);
  205. }
  206. //저장
  207. function lf_exeSepoScrn(){
  208. var arrPostion = new Array();
  209. for(var iRowNo = 0 ; iRowNo < ds_grid_grd_cellscreener.rowcount ; iRowNo++){
  210. arrPostion[0] =iRowNo;
  211. grdf_setStatus(grp_popup.grd_cellscreener, "I", arrPostion);
  212. }
  213. // 서브밋호출
  214. tranf_submit({
  215. id: "TXLPC02701"
  216. , service: "plgybaseinfomngtapp.EmpAbbrCode"
  217. , method: "reqSetSepoScrneenerlist"
  218. , inds : "refData=ds_grid_grd_cellscreener"
  219. , callback: "cbf_SPLPC02700"
  220. , async: false
  221. });
  222. }
  223. //콜백함수
  224. function cbf_SPLPC02700(strSvcID, nErrorCode, strErrorMag){
  225. if(strSvcID == "TXLPC02701" && nErrorCode==0){
  226. lf_getSepoScrn(sName);
  227. sysf_messageBox("","I001","");
  228. }
  229. }
  230. //=======================================================================================
  231. // Event
  232. //---------------------------------------------------------------------------------------
  233. /****************************************************************************************
  234. * Components :
  235. * Components ID : SPLPC02700
  236. * Event : onload
  237. * Argument : 01.obj : Object Event has occurred
  238. * : 02.e : Event Object
  239. * Description :
  240. ****************************************************************************************/
  241. function SPLPC02700_onload(obj:Form, e:LoadEventInfo)
  242. {
  243. frmf_initForm(obj); // 화면공통
  244. lf_exeInitialize();
  245. grdf_setGridSort(grp_popup.grd_cellscreener);
  246. }
  247. /****************************************************************************************
  248. * Components :
  249. * Components ID : Button00
  250. * Event : onclick
  251. * Argument : 01.obj : Object Event has occurred
  252. * : 02.e : Event Object
  253. * Description :
  254. ****************************************************************************************/
  255. //닫기
  256. function Button00_onclick(obj:Button, e:ClickEventInfo)
  257. {
  258. close("return value");
  259. }
  260. /****************************************************************************************
  261. * Components :
  262. * Components ID : grp_popup_radio1
  263. * Event : onitemchanged
  264. * Argument : 01.obj : Object Event has occurred
  265. * : 02.e : Event Object
  266. * Description :
  267. ****************************************************************************************/
  268. //라디오버튼 1차,2차 변경시
  269. function grp_popup_radio1_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  270. {
  271. lf_getSepoScrn(sName);
  272. }
  273. /****************************************************************************************
  274. * Components :
  275. * Components ID : grp_popup_button3
  276. * Event : onclick
  277. * Argument : 01.obj : Object Event has occurred
  278. * : 02.e : Event Object
  279. * Description :
  280. ****************************************************************************************/
  281. //행추가
  282. function grp_popup_button3_onclick(obj:Button, e:ClickEventInfo)
  283. {
  284. lf_addRow();
  285. }
  286. /****************************************************************************************
  287. * Components :
  288. * Components ID : grp_popup_button1
  289. * Event : onclick
  290. * Argument : 01.obj : Object Event has occurred
  291. * : 02.e : Event Object
  292. * Description :
  293. ****************************************************************************************/
  294. //행삭제
  295. function grp_popup_button1_onclick(obj:Button, e:ClickEventInfo)
  296. {
  297. lf_delRow();
  298. }
  299. /****************************************************************************************
  300. * Components :
  301. * Components ID : btn_cfm
  302. * Event : onclick
  303. * Argument : 01.obj : Object Event has occurred
  304. * : 02.e : Event Object
  305. * Description :
  306. ****************************************************************************************/
  307. //저장버튼
  308. function btn_cfm_onclick(obj:Button, e:ClickEventInfo)
  309. {
  310. lf_exeSepoScrn();
  311. }
  312. ]]></Script>
  313. </Form>
  314. </FDL>