SMAEA05000_치료스케줄기준정보관리.xfdl 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAEA05000" position="absolute 0 0 1189 755" titletext="Untitle" oninit="SMAEA05000_oninit" onload="SMAEA05000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="치료 스케줄 기준정보 관리" position="absolute 0 0 237 23" id="caption6" class="tit_1"/>
  8. <Button position="absolute 1113 65 1185 84" id="button12" class="btn7" text="엑셀저장" onclick="button12_onclick"/>
  9. <Static text="치료 코드 현황" position="absolute 0 68 146 90" id="caption1" class="tit_2"/>
  10. <Grid position="absolute 0 85 1185 727" id="grd_list" binddataset="ds_main_list_item" autofittype="col" cellmovingtype="col">
  11. <Formats>
  12. <Format id="default">
  13. <Columns>
  14. <Column size="23"/>
  15. <Column size="69"/>
  16. <Column size="0"/>
  17. <Column size="120"/>
  18. <Column size="270"/>
  19. <Column size="130"/>
  20. <Column size="130"/>
  21. <Column size="130"/>
  22. <Column size="130"/>
  23. <Column size="130"/>
  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="약물조절일"/>
  36. <Cell col="6" text="식이요법일"/>
  37. <Cell col="7" text="검사예약일"/>
  38. <Cell col="8" text="약물 투여후 촬영 시간"/>
  39. <Cell col="9" text="치료 후 촬영일"/>
  40. </Band>
  41. <Band id="body">
  42. <Cell celltype="head" expr="currow+1"/>
  43. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:useyn"/>
  44. <Cell col="2" text="bind:suppdeptcd"/>
  45. <Cell col="3" displaytype="text" edittype="text" text="bind:excucd"/>
  46. <Cell col="4" style="align:left middle;" text="bind:excucdnm" wordwrap="word" taborder="0"/>
  47. <Cell col="5" displaytype="number" edittype="normal" text="bind:drugadjtdd"/>
  48. <Cell col="6" displaytype="number" edittype="normal" text="bind:dietregmdd"/>
  49. <Cell col="7" displaytype="number" edittype="normal" text="bind:examrsrvdd"/>
  50. <Cell col="8" displaytype="number" edittype="normal" text="bind:drugaftphotm"/>
  51. <Cell col="9" displaytype="number" edittype="normal" text="bind:cureaftpohdd"/>
  52. </Band>
  53. </Format>
  54. </Formats>
  55. </Grid>
  56. <Button position="absolute 1059 65 1112 84" id="btn_grddel" class="btn2" text="행삭제" onclick="btn_grddel_onclick"/>
  57. <Button position="absolute 931 65 1058 84" id="btn_selcalcscorcd" class="btn2" text="검사코드조회및추가" onclick="btn_selcalcscorcd_onclick"/>
  58. <Div id="grp_sea" taborder="1" position="absolute 0 24 1187 59" class="div_SA">
  59. <Layouts>
  60. <Layout>
  61. <Static id="caption2" text="검사코드 :" class="search_name" position="absolute 15 9 101 26" anchor="default"/>
  62. <Edit id="ipt_srchexamcurecd" taborder="1" class="input_search" position="absolute 100 8 215 27" anchor="default"/>
  63. <Static id="caption3" text="검사코드명 :" class="search_name" position="absolute 235 10 335 27" anchor="default"/>
  64. <Edit id="ipt_srchexamcurenm" taborder="2" class="input_search" position="absolute 336 8 485 27" anchor="default"/>
  65. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1112 7 1118 29" anchor="default"/>
  66. <Button id="btn_sea" taborder="3" text="조회" class="btn1" position="absolute 1123 7 1179 29" anchor="default" onclick="grp_sea_btn_sea_onclick"/>
  67. </Layout>
  68. </Layouts>
  69. </Div>
  70. <Button id="btn_prt" taborder="2" text="저장" class="btn4" position="absolute 1128 728 1184 750" onclick="btn_prt_onclick"/>
  71. </Layout>
  72. </Layouts>
  73. <Objects>
  74. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  75. <ColumnInfo>
  76. <Column id="srchexcucd" type="STRING" size="256"/>
  77. <Column id="srchexcucdnm" type="STRING" size="256"/>
  78. <Column id="suppdeptcd" type="STRING" size="256"/>
  79. <Column id="useyn" type="STRING" size="256"/>
  80. </ColumnInfo>
  81. <Rows>
  82. <Row/>
  83. </Rows>
  84. </Dataset>
  85. <Dataset id="ds_main_list_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  86. <ColumnInfo>
  87. <Column id="suppdeptcd" type="STRING" size="256" sumtext="지원부서코드"/>
  88. <Column id="excucd" type="STRING" size="256" sumtext="검사코드"/>
  89. <Column id="excucdnm" type="STRING" size="256" sumtext="검사코드명"/>
  90. <Column id="useyn" type="STRING" size="256" sumtext="사용여부"/>
  91. <Column id="drugadjtdd" type="INT" size="256" sumtext="약물조절일"/>
  92. <Column id="dietregmdd" type="INT" size="256" sumtext="식이요법일"/>
  93. <Column id="examrsrvdd" type="INT" size="256" sumtext="검사예약일"/>
  94. <Column id="drugaftphotm" type="INT" size="256" sumtext="약물 투여후 촬영 시간"/>
  95. <Column id="cureaftpohdd" type="INT" size="256" sumtext="치료 후 촬영일"/>
  96. </ColumnInfo>
  97. </Dataset>
  98. <Dataset id="ds_temp_templst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  99. <Dataset id="ds_temp_templst_list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  100. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  101. <ColumnInfo>
  102. <Column id="okflag" type="STRING" size="256"/>
  103. </ColumnInfo>
  104. <Rows>
  105. <Row/>
  106. </Rows>
  107. </Dataset>
  108. </Objects>
  109. <Bind>
  110. <BindItem id="item0" compid="grp_sea.ipt_srchexamcurenm" propid="value" datasetid="ds_send" columnid="srchexcucdnm"/>
  111. <BindItem id="item1" compid="grp_sea.ipt_srchexamcurecd" propid="value" datasetid="ds_send" columnid="srchexcucd"/>
  112. </Bind>
  113. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  114. * System Name :
  115. * Job Name :
  116. * Creator :
  117. * Make Date : 2015-11-13
  118. * Description :
  119. *---------------------------------------------------------------------------------------
  120. * Modify Date Modifier Modify Description
  121. *---------------------------------------------------------------------------------------
  122. * 2015-11-13 Live Converter TF->XP
  123. *
  124. *---------------------------------------------------------------------------------------
  125. ****************************************************************************************/
  126. include "com_commonxp::comm_main.xjs";
  127. include "ast_commonxp::AST.xjs";
  128. include "ast_examcurexp::AEZ0001.xjs";
  129. var gSuppdeptcd = "";
  130. function SMAEA05000_oninit(obj:Form, e:InitEventInfo)
  131. {
  132. frmf_initForm(obj);
  133. }
  134. function SMAEA05000_onload(obj:Form, e:LoadEventInfo)
  135. {
  136. lf_aezfSetSuppDeptcd();
  137. gSuppdeptcd = frmf_getParameter("AST_DEPTCD");
  138. ds_send.setColumn(0, "suppdeptcd", gSuppdeptcd);
  139. var oParam = {};
  140. oParam.id = "TRAEA05002";
  141. oParam.service = "examcurebaseapp.NuclCureSche";
  142. oParam.method = "reqGetNuclCureScheInfoList";
  143. oParam.inds = "req=ds_send";
  144. oParam.outds = "ds_main_list_item=item";
  145. oParam.async = false;
  146. //oParam.callback = "cf_TRAEA05002";
  147. tranf_submit(oParam);
  148. }
  149. function grp_sea_btn_sea_onclick(obj:Button, e:ClickEventInfo)
  150. {
  151. fGetNuclCureScheInfoList();
  152. }
  153. function fGetNuclCureScheInfoList()
  154. {
  155. ds_main_list_item.clearData();
  156. var oParam = {};
  157. oParam.id = "TRAEA05002";
  158. oParam.service = "examcurebaseapp.NuclCureSche";
  159. oParam.method = "reqGetNuclCureScheInfoList";
  160. oParam.inds = "req=ds_send";
  161. oParam.outds = "ds_main_list_item=item";
  162. oParam.async = false;
  163. //oParam.callback = "cf_TRAEA05002";
  164. tranf_submit(oParam);
  165. }
  166. function btn_selcalcscorcd_onclick(obj:Button, e:ClickEventInfo)
  167. {
  168. var sessiondept = gSuppdeptcd;
  169. fGetCalScorCd( "cd", "", "Y", "ds_temp_templst", "", "", "");
  170. fSetCureOcd(grd_list , "ds_temp_templst" , 2, "Y", "excucd", "excucdnm", sessiondept, "0" );
  171. }
  172. function fSetCureOcd(vGrdObj, vSrcXPath, vDupCheckCol, vDupCheck, vCodeNode, vNameNode, vSessiondept, vHeaderAddRows )
  173. {
  174. if( utlf_isNull(vGrdObj))
  175. {
  176. return ;
  177. }
  178. if(utlf_isNull(vSrcXPath))
  179. {
  180. return ;
  181. }
  182. if( ds_temp.getColumn(0, "okflag") != "ok" )
  183. {
  184. return ;
  185. }
  186. var cnt = eval(vSrcXPath).rowcount;
  187. if(!utlf_isNull(vHeaderAddRows))
  188. {
  189. grdcnt = ds_main_list_item.rowcount - parseInt(vHeaderAddRows);
  190. }
  191. var vDupCheckVal = "";
  192. var i = 0;
  193. if( cnt == 1 )
  194. {
  195. for( var i = 0 ; i < cnt ; i++ )
  196. {
  197. vDupCheckVal = eval(vSrcXPath).getColumn(i, "calcscorcd");
  198. if( vDupCheck == "Y" )
  199. {
  200. if( lf_checkDup(vGrdObj , vDupCheckCol, vDupCheckVal ) == false )
  201. {
  202. if( sysf_messageBox("중복되는 수가코드[" + vDupCheckVal + "] 를 추가", "S001") != 6 )
  203. {
  204. continue ;
  205. }
  206. }
  207. }
  208. }
  209. grdcnt = ds_main_list_item.addRow();
  210. if(!utlf_isNull(vCodeNode))
  211. {
  212. dsf_makeValue(ds_main_list_item, vCodeNode, "string", vDupCheckVal, grdcnt);
  213. }
  214. if(!utlf_isNull(vNameNode))
  215. {
  216. dsf_makeValue(ds_main_list_item, vNameNode, "string", eval(vSrcXPath).getColumn(0, "ordnm"), grdcnt);
  217. }
  218. dsf_makeValue(ds_main_list_item, "excucd", "string", vDupCheckVal, grdcnt);
  219. dsf_makeValue(ds_main_list_item, "excucdnm", "string", eval(vSrcXPath).getColumn(0, "ordnm"), grdcnt);
  220. dsf_makeValue(ds_main_list_item, "suppdeptcd", "string", vSessiondept, grdcnt);
  221. dsf_makeValue(ds_main_list_item, "useyn", "string", "Y", grdcnt);
  222. }
  223. else
  224. {
  225. for( var i = 0 ; i < cnt ; i++ )
  226. {
  227. vDupCheckVal = vSrcXPath.getColumn(i, "calcscorcd");
  228. if( vDupCheck == "Y" )
  229. {
  230. if( fCheckDup(vGrdObj , vDupCheckCol, vDupCheckVal ) == false )
  231. {
  232. if( sysf_messageBox("중복되는 수가코드[" + vDupCheckVal + "] 를 추가", "S001") != 6 )
  233. {
  234. continue ;
  235. }
  236. }
  237. }
  238. ds_main_list_item.setColumn(i, "useyn", "N");
  239. grdcnt = ds_main_list_item.addRow();
  240. if(!utlf_isNull(vCodeNode))
  241. {
  242. ds_main_list_item.setColumn(grdcnt, vCodeNode, vDupCheckVal);
  243. }
  244. if(!utlf_isNull(vNameNode))
  245. {
  246. ds_main_list_item.setColumn(grdcnt, vNameNode, vSrcXPath.getColumn(i, "ordnm"));
  247. }
  248. dsf_makeValue(ds_main_list_item, "excucd", "string", vDupCheckVal, grdcnt);
  249. dsf_makeValue(ds_main_list_item, "excucdnm", "string", vSrcXPath.getColumn(i, "ordnm"), grdcnt);
  250. dsf_makeValue(ds_main_list_item, "suppdeptcd", "string", vSessiondept, grdcnt);
  251. dsf_makeValue(ds_main_list_item, "useyn", "string", "Y", grdcnt);
  252. }
  253. }
  254. }
  255. function btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  256. {
  257. dsf_deleteSelectedRows(grd_list, true);
  258. }
  259. function button12_onclick(obj:Button, e:ClickEventInfo)
  260. {
  261. if( ds_main_list_item.rowcount > 0 )
  262. {
  263. grdf_exportExcel(grd_list, "치료 스케줄 기준정보 관리", "", false, "", "user", false);
  264. }
  265. else
  266. {
  267. sysf_messageBox("조회된 데이터가 ", "I004");
  268. }
  269. }
  270. function btn_prt_onclick(obj:Button, e:ClickEventInfo)
  271. {
  272. if ( sysf_messageBox("검사코드를","Q002")==6 )
  273. {
  274. var check = fCheckExCuCd();
  275. if ( check == "1" )
  276. {
  277. return;
  278. }
  279. var oParam = {};
  280. oParam.id = "TXAEA05001";
  281. oParam.service = "examcurebaseapp.NuclCureSche";
  282. oParam.method = "reqExeNuclCureScheInfo";
  283. oParam.inds = "req=ds_main_list_item:U";
  284. //oParam.outds = "ds_=item";
  285. oParam.typeStr = "m";
  286. oParam.async = false;
  287. //oParam.callback = "cf_TXAEA05001";
  288. tranf_submit(oParam);
  289. ds_send.setColumn(0, "srchexcucd", "");
  290. ds_send.setColumn(0, "srchexcucdnm", "");
  291. fGetNuclCureScheInfoList();
  292. }
  293. }
  294. function fCheckExCuCd()
  295. {
  296. var srchLength1 = ds_main_list_item.rowcount
  297. for (var i = 0 ; i < srchLength1; i++ )
  298. {
  299. if(utlf_isNull(ds_main_list_item.getColumn(i, "excucd")))
  300. {
  301. sysf_messageBox("검사코드[필수입력사항]를 입력 해야 합니다.","I999");
  302. return "1";
  303. }
  304. }
  305. }]]></Script>
  306. </Form>
  307. </FDL>