SMAHA03500_유형별 계산기준.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAHA03500" position="absolute 0 0 1196 672" titletext="부서별 기준량 등록" oninit="SMAHA03500_oninit" onload="SMAHA03500_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="유형별 계산기준" class="tit_1" position="absolute 0 0 186 25"/>
  8. <Div id="grp_sea" anchor="left top right" taborder="1" class="div_SA" position="absolute 0 25 1195 65">
  9. <Layouts>
  10. <Layout>
  11. <Button id="btn_search" taborder="1" text="조회" class="btn1" position="absolute 1130 10 1186 32" anchor="top right" onclick="grp_sea_btn_search_onclick"/>
  12. <Static id="caption7" text="건진구분 :" class="search_name" position="absolute 10 12 97 29"/>
  13. <Shape id="line3" linetype="vertical" class="line_4" position="absolute 1112 9 1118 33" anchor="top right"/>
  14. <CheckBox id="checkbox1" taborder="2" text="포함" truevalue="Y" position="absolute 306 10 351 30" onclick="grp_sea_checkbox1_onclick"/>
  15. <Static id="caption2" text="삭제포함 :" class="search_name" position="absolute 220 12 294 29"/>
  16. <Combo id="cmb_healexamflag" taborder="3" innerdataset="@ds_init_baseinfo_healexamflaglst_A0068" codecolumn="cdid" datacolumn="cdnm" position="absolute 97 11 197 30" onitemchanged="grp_sea_cmb_healexamflag_onitemchanged"/>
  17. </Layout>
  18. </Layouts>
  19. </Div>
  20. <Shape id="line1" class="line_10" position="absolute 0 89 1195 95" anchor="left top right"/>
  21. <Static id="cap_titlist" text="청구방법별 부담율" class="tit_2" position="absolute 0 73 190 95"/>
  22. <Button id="btn_grdadd" taborder="2" text="행추가" class="btn2" position="absolute 1087 67 1140 89" anchor="top right" onclick="btn_grdadd_onclick"/>
  23. <Button id="btn_grddel" taborder="3" text="행삭제" class="btn2" position="absolute 1142 67 1195 89" anchor="top right" onclick="btn_grddel_onclick"/>
  24. <Grid id="grd_ahbmcalclist" taborder="4" binddataset="ds_main_ahbmcalcinfo_item" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 94 1195 644" anchor="all" selecttype="multirow">
  25. <Formats>
  26. <Format id="default">
  27. <Columns>
  28. <Column size="23"/>
  29. <Column size="134"/>
  30. <Column size="171"/>
  31. <Column size="120"/>
  32. <Column size="0"/>
  33. <Column size="120"/>
  34. <Column size="120"/>
  35. <Column size="120"/>
  36. <Column size="120"/>
  37. <Column size="120"/>
  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="건진상세분류"/>
  47. <Cell col="3" text="종료일자"/>
  48. <Cell col="4" text="기관코드"/>
  49. <Cell col="5" text="적용시작일"/>
  50. <Cell col="6" text="기본검사적용수가"/>
  51. <Cell col="7" text="추가검사적용수가"/>
  52. <Cell col="8" text="행위가산율1"/>
  53. <Cell col="9" text="행위가산율2"/>
  54. </Band>
  55. <Band id="body">
  56. <Cell celltype="head"/>
  57. <Cell col="1" displaytype="combo" edittype="expr:getRowType(currow) == 2 ? 'combo' : 'none'" style="align:left middle;padding:0 0 0 3;" text="bind:healexamflag" combodataset="ds_init_baseinfo_srchhealexamflaglst_A0068" combocodecol="cdid" combodatacol="cdnm" combodisplayrowcount="20" enable="false"/>
  58. <Cell col="2" displaytype="combo" edittype="expr:getRowType(currow) == 2 ? 'combo' : 'none'" style="align:left middle;padding:0 0 0 3;" text="bind:healexamdetlflag" combodataset="ds_init_baseinfo_healexamdetlflaglst_item" combocodecol="cdid" combodatacol="cdnm" combodisplayrowcount="20" id="colflag" enable="false"/>
  59. <Cell col="3" displaytype="date" edittype="date" text="bind:todd"/>
  60. <Cell col="4" text="bind:instcd"/>
  61. <Cell col="5" displaytype="date" edittype="date" text="bind:fromdd"/>
  62. <Cell col="6" displaytype="text" edittype="text" text="bind:basecalcscorappflag"/>
  63. <Cell col="7" displaytype="text" edittype="text" text="bind:addcalcscorappflag"/>
  64. <Cell col="8" displaytype="text" edittype="text" text="bind:corpactaddrate"/>
  65. <Cell col="9" displaytype="text" edittype="text" text="bind:corpactaddrate2"/>
  66. </Band>
  67. </Format>
  68. </Formats>
  69. </Grid>
  70. <Button id="btn_save" taborder="5" text="저장" class="btn4" position="absolute 1069 647 1125 669" anchor="right bottom" onclick="btn_save_onclick"/>
  71. <Button id="btn_clear" taborder="6" text="초기화" class="btn4" position="absolute 1126 647 1194 669" anchor="right bottom" onclick="btn_clear_onclick"/>
  72. </Layout>
  73. </Layouts>
  74. <Objects>
  75. <Dataset id="ds_send_srch" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  76. <ColumnInfo>
  77. <Column id="srchhealexamflag" type="STRING" size="256"/>
  78. <Column id="srchhealexamdetlflag" type="STRING" size="256"/>
  79. <Column id="srchcalcstat" type="STRING" size="256"/>
  80. </ColumnInfo>
  81. <Rows>
  82. <Row>
  83. <Col id="srchhealexamflag"/>
  84. <Col id="srchhealexamdetlflag"/>
  85. <Col id="srchcalcstat"/>
  86. </Row>
  87. </Rows>
  88. </Dataset>
  89. <Dataset id="ds_init_baseinfo_healexamflaglst_A0068" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  90. <Dataset id="ds_main_ahbmcalcinfo_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  91. <ColumnInfo>
  92. <Column id="healexamflag" type="STRING" size="256" sumtext="건진구분"/>
  93. <Column id="healexamdetlflag" type="STRING" size="256" sumtext="건진상세분류"/>
  94. <Column id="todd" type="STRING" size="256" sumtext="종료일자"/>
  95. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  96. <Column id="fromdd" type="STRING" size="256" sumtext="적용시작일"/>
  97. <Column id="basecalcscorappflag" type="STRING" size="256" sumtext="기본검사적용수가"/>
  98. <Column id="addcalcscorappflag" type="STRING" size="256" sumtext="추가검사적용수가"/>
  99. <Column id="corpactaddrate" type="STRING" size="256" sumtext="행위가산율1"/>
  100. <Column id="corpactaddrate2" type="STRING" size="256" sumtext="행위가산율2"/>
  101. </ColumnInfo>
  102. </Dataset>
  103. <Dataset id="ds_init_baseinfo_healexamdetlflaglst_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  104. <Dataset id="ds_init_baseinfo_srchhealexamflaglst_A0068" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  105. <Dataset id="ds_init_baseinfo_chedetlflaglst_A0069" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  106. <Dataset id="ds_init_baseinfo_ghedetlflaglst_A0070" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  107. <Dataset id="ds_send_save_savecalc" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  108. </Objects>
  109. <Bind>
  110. <BindItem id="item0" compid="grp_sea.checkbox1" propid="value" datasetid="ds_send_srch" columnid="srchcalcstat"/>
  111. <BindItem id="item1" compid="grp_sea.cmb_healexamflag" propid="value" datasetid="ds_send_srch" columnid="srchhealexamflag"/>
  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_healexamxp::AHA001.xjs";
  128. var m_vHealexamflag = "";
  129. var m_vHealexamdetlflag = "";
  130. function SMAHA03500_oninit(obj:Form, e:InitEventInfo)
  131. {
  132. frmf_initForm(obj);
  133. }
  134. function SMAHA03500_onload(obj:Form, e:LoadEventInfo)
  135. {
  136. grdf_initGrid(grd_ahbmcalclist);
  137. grdf_setRowTypeIcon(grd_ahbmcalclist, 0);
  138. fInit();
  139. fGetBaseInfo();
  140. }
  141. function fInit()
  142. {
  143. ds_main_ahbmcalcinfo_item.clearData();
  144. ds_send_srch.clearData();
  145. ds_send_srch.addRow();
  146. grp_sea.cmb_healexamflag.index = 0;
  147. }
  148. function fGetBaseInfo()
  149. {
  150. var vHeFgLen = fGetHealExamFlag().length;
  151. var vHeFg = fGetHealExamFlag();
  152. var vHeFgCd = "";
  153. if( String(vHeFg).substr(0,1) == "C" )
  154. {
  155. vHeFgCd = "A0069";
  156. }
  157. else
  158. {
  159. vHeFgCd = "A0070";
  160. }
  161. var arrParam = [{dsNm: "ds_init_baseinfo_healexamflaglst_A0068", cdGrpId: "A0068"}
  162. ,{dsNm: "ds_init_baseinfo_srchhealexamflaglst_A0068", cdGrpId: "A0068"}
  163. ,{dsNm: "ds_init_baseinfo_chedetlflaglst_A0069", cdGrpId: "A0069"}
  164. ,{dsNm: "ds_init_baseinfo_ghedetlflaglst_A0070", cdGrpId: "A0070"}]
  165. appf_getCodeList(arrParam);
  166. frmf_addComboItem("grp_sea.cmb_healexamflag","전체","","above");
  167. ds_init_baseinfo_healexamdetlflaglst_item.copyData(ds_init_baseinfo_chedetlflaglst_A0069);
  168. ds_init_baseinfo_healexamdetlflaglst_item.appendData(ds_init_baseinfo_ghedetlflaglst_A0070);
  169. ds_send_srch.setColumn(0, "srchhealexamflag", String(vHeFg).substr(0,1));
  170. frmf_inputEnterKey("grp_sea.cmb_healexamflag", "onitemchanged", new ItemChangeEventInfo );
  171. }
  172. function grp_sea_cmb_healexamflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  173. {
  174. fGetCalcList();
  175. }
  176. function fGetCalcList()
  177. {
  178. var oParam = {};
  179. oParam.id = "TRAHA03501";
  180. oParam.service = "healthexambaseapp.ComCode";
  181. oParam.method = "reqGetCalclist";
  182. oParam.inds = "req=ds_send_srch";
  183. oParam.outds = "ds_main_ahbmcalcinfo_item=item";
  184. oParam.async = false;
  185. //oParam.callback = "cf_TRAHA03501";
  186. tranf_submit(oParam);
  187. }
  188. function grp_sea_checkbox1_onclick(obj:CheckBox, e:ClickEventInfo)
  189. {
  190. if(obj.value == "Y")
  191. {
  192. }
  193. else
  194. {
  195. ds_send_srch.setColumn(0, "srchcalcstat", "");
  196. }
  197. }
  198. function grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  199. {
  200. fGetCalcList();
  201. }
  202. function btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  203. {
  204. var addRow = ds_main_ahbmcalcinfo_item.addRow();
  205. var cur_date = utlf_getCurrentDate();
  206. ds_main_ahbmcalcinfo_item.setColumn(addRow, "healexamflag", ds_send_srch.getColumn(0, "srchhealexamflag"));
  207. ds_main_ahbmcalcinfo_item.setColumn(addRow, "healexamdetlflag", ds_send_srch.getColumn(0, "srchhealexamdetlflag"));
  208. ds_main_ahbmcalcinfo_item.setColumn(addRow, "fromdd", cur_date);
  209. ds_main_ahbmcalcinfo_item.setColumn(addRow, "todd", "29991231");
  210. if(utlf_isNull(ds_send_srch.getColumn(0, "srchhealexamflag")))
  211. {
  212. ds_main_ahbmcalcinfo_item.setColumn(addRow, "healexamflag", "C");
  213. }
  214. else
  215. {
  216. ds_main_ahbmcalcinfo_item.setColumn(addRow, "healexamflag", ds_send_srch.getColumn(0, "srchhealexamflag"));
  217. }
  218. ds_main_ahbmcalcinfo_item.setColumn(addRow, "corpactaddrate", "0");
  219. ds_main_ahbmcalcinfo_item.setColumn(addRow, "corpactaddrate2", "0");
  220. }
  221. function btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  222. {
  223. var rows = grdf_getSelectedRows(grd_ahbmcalclist);
  224. for(var i = rows.length-1; i >= 0; i--)
  225. {
  226. var m_row = rows[i];
  227. if(ds_main_ahbmcalcinfo_item.getRowType(m_row) == 2)
  228. {
  229. ds_main_ahbmcalcinfo_item.deleteRow(m_row);
  230. }
  231. else
  232. {
  233. ds_main_ahbmcalcinfo_item.updatecontrol = false;
  234. ds_main_ahbmcalcinfo_item.setRowType(m_row, "d");
  235. ds_main_ahbmcalcinfo_item.updatecontrol = true;
  236. }
  237. }
  238. }
  239. function btn_clear_onclick(obj:Button, e:ClickEventInfo)
  240. {
  241. var updtdata = grdf_getGridUpdateData(grd_ahbmcalclist).rowcount;
  242. if (updtdata != 0)
  243. {
  244. var ret = sysf_messageBox("그리드에 작업 중인 내용이 있습니다. 초기화 작업을","Q003");
  245. if (ret != 6)
  246. {
  247. return;
  248. }
  249. }
  250. fInit();
  251. fGetCalcList();
  252. }
  253. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  254. {
  255. if (fDatacheck() == false)
  256. {
  257. return;
  258. }
  259. fSaveCalc();
  260. }
  261. function fDatacheck()
  262. {
  263. var rsv_cnt = ds_main_ahbmcalcinfo_item.rowcount;
  264. var sNode = ds_main_ahbmcalcinfo_item;
  265. var scdid1 = "";
  266. var scdid2 = "";
  267. for( var i = 0; i < rsv_cnt ; i++)
  268. {
  269. if( utlf_isNull(sNode.getColumn(i , "healexamflag")))
  270. {
  271. alert("건진구분의 값이 비어있습니다.");
  272. return false;
  273. }
  274. if (ds_main_ahbmcalcinfo_item.getColumn(i, "healexamflag") != String(ds_main_ahbmcalcinfo_item.getColumn(i, "healexamdetlflag")).substr(0,1))
  275. {
  276. if (ds_main_ahbmcalcinfo_item.getColumn(i, "healexamflag") == "C" )
  277. {
  278. alert("종합건진의 건진상세분류만 가능합니다");
  279. }
  280. else
  281. {
  282. alert("일반건진의 건진상세분류만 가능합니다");
  283. }
  284. ds_main_ahbmcalcinfo_item.rowposition = i;
  285. return false;
  286. }
  287. if( utlf_isNull(sNode.getColumn(i , "todd")))
  288. {
  289. alert("종료일자의 값이 비어있습니다.");
  290. return false;
  291. }
  292. if( utlf_isNull(sNode.getColumn(i , "fromdd")))
  293. {
  294. alert("적용시작일의 값이 비어있습니다.");
  295. return false;
  296. }
  297. if( utlf_isNull(sNode.getColumn(i , "basecalcscorappflag")))
  298. {
  299. alert("기본검사적용수가의 값이 비어있습니다.");
  300. return false;
  301. }
  302. if( utlf_isNull(sNode.getColumn(i , "addcalcscorappflag")))
  303. {
  304. alert("추가검사적용수가의 값이 비어있습니다.");
  305. return false;
  306. }
  307. if( utlf_isNull(sNode.getColumn(i , "corpactaddrate")))
  308. {
  309. alert("행위가산율의 값이 비어있습니다.");
  310. return false;
  311. }
  312. scdid1 = ds_main_ahbmcalcinfo_item.getColumn(i, "healexamdetlflag");
  313. var k = i + 1;
  314. for (var j = k; j < ds_main_ahbmcalcinfo_item.rowcount; j++)
  315. {
  316. scdid2 = ds_main_ahbmcalcinfo_item.getColumn(j, "healexamdetlflag");
  317. if (i != j)
  318. {
  319. if (scdid1 == scdid2)
  320. {
  321. sysf_messageBox(parseInt(j+1) + "번째에서 중복된 자료가 존재합니다", "E999", "");
  322. return false;
  323. }
  324. }
  325. }
  326. }
  327. return true;
  328. }
  329. function fSaveCalc()
  330. {
  331. if(sysf_messageBox("조합코드정보를","Q002") == 6)
  332. {
  333. var updategrid = grdf_getGridUpdateData(grd_ahbmcalclist);
  334. grdf_setStatusColumn(updategrid, "m");
  335. ds_send_save_savecalc.copyData(updategrid, true);
  336. var oParam = {};
  337. oParam.id = "TXAHA03501";
  338. oParam.service = "healthexambaseapp.ComCode";
  339. oParam.method = "reqExeCalclist";
  340. oParam.inds = "req=ds_send_save_savecalc";
  341. oParam.outds = "ds_=item";
  342. oParam.async = false;
  343. oParam.callback = "cf_TXAHA03501";
  344. tranf_submit(oParam);
  345. }
  346. }
  347. function cf_TXAHA03501(sSvcId, nErrorCode, sErrorMsg)
  348. {
  349. if(nErrorCode < 0) return;
  350. else
  351. {
  352. fGetCalcList();
  353. }
  354. }
  355. ]]></Script>
  356. </Form>
  357. </FDL>