SMPIF50110_원외처방이의신청자료생성관리.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362
  1. <?xml version="1.0" encoding="utf-8" standalone="no"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml" />
  4. <Form id="SMPIF50110" position="absolute 0 0 1020 590" titletext="원외처방이의신청자료생성관리(SMPIF50110)" onload="SMPIF50110_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="grp_tle" position="absolute 0 0 1000 13" style="">
  8. <Layouts>
  9. <Layout>
  10. <Static id="caption6" class="tit_1" position="absolute 0 0 281 14" style="" text="원외처방이의신청자료생성" />
  11. </Layout>
  12. </Layouts>
  13. </Div>
  14. <Div id="grp_biz" scrollbars="autoboth" position="absolute 0 13 1000 590" style="">
  15. <Layouts>
  16. <Layout>
  17. <Div id="group2" position="absolute 0 10 1000 49" style="align: top;">
  18. <Layouts>
  19. <Layout>
  20. <Shape id="roundrect1" anchor="default" class="roundrect_search" type="roundrectangle" position="absolute 0 0 1 39" style="border: solid #ffd799 #ffd799;background:#fffbf2 ;" />
  21. <Shape id="line13" class="line_4" linetype="vertical" position="absolute 914 8 917 30" style="border: solid #ffe4bb #ffe4bb;" anchor="default" />
  22. <Static id="caption2" class="search_name" position="absolute 15 9 101 26" style="" text="일련번호 :" />
  23. <Button id="btn_search" class="btn1_letter2" position="absolute 929 8 985 30" style="" text="조회" onclick="grp_biz_group2_btn_search_onclick" />
  24. <Edit id="ipt_docuseqno" class="input_search" position="absolute 110 8 200 27" style="" anchor="default" />
  25. </Layout>
  26. </Layouts>
  27. </Div>
  28. <Static id="caption1" class="tit_2" position="absolute 5 108 110 122" style="" text="원외처방내역" />
  29. <Shape id="line1" class="line_1" linetype="horizontal" position="absolute 0 123 1000 126" style="" anchor="default" />
  30. <Button id="button1" class="btn2_letter2" position="absolute 842 102 884 121" style="" text="취소" onclick="grp_biz_button1_onclick" />
  31. <Button id="button3" class="btn2_letter2" position="absolute 887 102 929 121" style="" text="확인" onclick="grp_biz_button3_onclick" />
  32. <Shape id="line8" class="line_1" linetype="horizontal" position="absolute 0 70 1000 73" style="" anchor="default" />
  33. <Shape id="line10" class="line_3" linetype="horizontal" position="absolute 0 98 1000 101" style="" anchor="default" />
  34. <Edit id="input22" class="input_default" position="absolute 119 76 231 95" style="align:center ;" anchor="default" />
  35. <Static id="caption12" class="cell_1" position="absolute 0 75 115 98" style="align: middle;" text="수진자(등록번호) :" />
  36. <Static id="caption14" class="cell_1" position="absolute 460 75 565 98" style="align:right middle;" text="진료과 :" />
  37. <Static id="caption27" class="cell_1" position="absolute 235 75 340 98" style="align:right middle;" text="보험유형 :" />
  38. <Static id="caption7" class="tit_2" position="absolute 6 55 117 69" style="" text="인적사항" />
  39. <Edit id="input1" position="absolute 345 76 455 95" style="align:center ;" anchor="default" />
  40. <Edit id="input2" position="absolute 570 76 680 95" style="align:center ;" anchor="default" />
  41. <Grid id="grd_oprcpdetl" binddataset="ds_main_list01_gridoprcpdetl" class="datagrid2" position="absolute 0 128 1000 570" style="" oncellclick="grp_biz_grd_oprcpdetl_oncellclick">
  42. <Formats>
  43. <Format id="default">
  44. <Columns>
  45. <Column size="40" />
  46. <Column size="60" />
  47. <Column size="100" />
  48. <Column size="50" />
  49. <Column size="82" />
  50. <Column size="80" />
  51. <Column size="180" />
  52. <Column size="50" />
  53. <Column size="50" />
  54. <Column size="80" />
  55. <Column size="80" />
  56. <Column size="100" />
  57. <Column size="100" />
  58. <Column size="100" />
  59. <Column size="100" />
  60. <Column size="100" />
  61. <Column size="100" />
  62. <Column size="100" />
  63. <Column size="100" />
  64. </Columns>
  65. <Rows>
  66. <Row size="23" band="head" />
  67. <Row size="23" />
  68. </Rows>
  69. <Band id="head">
  70. <Cell text="선택" />
  71. <Cell col="1" text="삭감코드" />
  72. <Cell col="2" text="처방전교부번호" />
  73. <Cell col="3" text="줄번호" />
  74. <Cell col="4" text="처방코드" />
  75. <Cell col="5" text="EDICode" />
  76. <Cell col="6" text="처방명" />
  77. <Cell col="7" text="투여량" />
  78. <Cell col="8" text="기간" />
  79. <Cell col="9" text="조정금액" />
  80. <Cell col="10" text="약국코드" />
  81. <Cell col="11" text="약국명" />
  82. </Band>
  83. <Band id="body">
  84. <Cell text="bind:chkbox" />
  85. <Cell col="1" text="bind:adjtresn" />
  86. <Cell col="2" text="bind:mpsno" />
  87. <Cell col="3" text="bind:lnno" />
  88. <Cell col="4" text="bind:snglcalcscorcd" />
  89. <Cell col="5" text="bind:edicd" />
  90. <Cell col="6" text="bind:hngnm" />
  91. <Cell col="7" text="bind:drugqty" />
  92. <Cell col="8" text="bind:drugdayno" />
  93. <Cell col="9" text="bind:adjtamt" />
  94. <Cell col="10" text="bind:prcpcorpmark" />
  95. <Cell col="11" text="bind:prcpcorpnm" />
  96. <Cell col="12" text="bind:judgdg" />
  97. <Cell col="13" text="bind:clamno" />
  98. <Cell col="14" text="bind:acptno" />
  99. <Cell col="15" text="bind:docuseqno" />
  100. <Cell col="16" text="bind:instcd" />
  101. <Cell col="17" text="bind:dayqtyrt" />
  102. <Cell col="18" text="bind:totqtyrt" />
  103. </Band>
  104. </Format>
  105. </Formats>
  106. </Grid>
  107. <Button id="button2" class="btn2_letter4" position="absolute 932 102 996 121" style="" text="엑셀저장" onclick="grp_biz_button2_onclick" />
  108. </Layout>
  109. </Layouts>
  110. </Div>
  111. </Layout>
  112. </Layouts>
  113. <Objects>
  114. <Dataset id="ds_main_list01_gridpatinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  115. <ColumnInfo>
  116. <Column id="patnm" type="STRING" size="256" />
  117. <Column id="insukindnm" type="STRING" size="256" />
  118. <Column id="orddeptnm" type="STRING" size="256" />
  119. </ColumnInfo>
  120. <Rows>
  121. <Row>
  122. <Col id="patnm"></Col>
  123. <Col id="insukindnm"></Col>
  124. <Col id="orddeptnm"></Col>
  125. </Row>
  126. </Rows>
  127. </Dataset>
  128. <Dataset id="ds_send_send01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  129. <ColumnInfo>
  130. <Column id="acptno" type="STRING" size="256" />
  131. <Column id="judgdg" type="STRING" size="256" />
  132. <Column id="docuseqno" type="STRING" size="256" />
  133. <Column id="instcd" type="STRING" size="256" />
  134. </ColumnInfo>
  135. <Rows>
  136. <Row>
  137. <Col id="acptno"></Col>
  138. <Col id="judgdg"></Col>
  139. <Col id="docuseqno"></Col>
  140. <Col id="instcd"></Col>
  141. </Row>
  142. </Rows>
  143. </Dataset>
  144. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  145. <ColumnInfo />
  146. </Dataset>
  147. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  148. <ColumnInfo />
  149. </Dataset>
  150. <Dataset id="ds_main_list01_gridoprcpdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  151. <ColumnInfo>
  152. <Column id="chkbox" type="STRING" size="256" />
  153. <Column id="adjtresn" type="STRING" size="256" />
  154. <Column id="mpsno" type="STRING" size="256" />
  155. <Column id="lnno" type="STRING" size="256" />
  156. <Column id="snglcalcscorcd" type="STRING" size="256" />
  157. <Column id="edicd" type="STRING" size="256" />
  158. <Column id="hngnm" type="STRING" size="256" />
  159. <Column id="drugqty" type="STRING" size="256" />
  160. <Column id="drugdayno" type="STRING" size="256" />
  161. <Column id="adjtamt" type="STRING" size="256" />
  162. <Column id="prcpcorpmark" type="STRING" size="256" />
  163. <Column id="prcpcorpnm" type="STRING" size="256" />
  164. <Column id="judgdg" type="STRING" size="256" />
  165. <Column id="clamno" type="STRING" size="256" />
  166. <Column id="acptno" type="STRING" size="256" />
  167. <Column id="docuseqno" type="STRING" size="256" />
  168. <Column id="instcd" type="STRING" size="256" />
  169. <Column id="dayqtyrt" type="STRING" size="256" />
  170. <Column id="totqtyrt" type="STRING" size="256" />
  171. </ColumnInfo>
  172. </Dataset>
  173. <Dataset id="ds_main_list01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  174. <ColumnInfo />
  175. </Dataset>
  176. </Objects>
  177. <Bind>
  178. <BindItem id="item0" compid="grp_biz.group2.ipt_docuseqno" propid="value" datasetid="ds_send_send01" columnid="docuseqno" />
  179. <BindItem id="item1" compid="grp_biz.input22" propid="value" datasetid="ds_main_list01_gridpatinfo" columnid="patnm" />
  180. <BindItem id="item2" compid="grp_biz.input1" propid="value" datasetid="ds_main_list01_gridpatinfo" columnid="insukindnm" />
  181. <BindItem id="item3" compid="grp_biz.input2" propid="value" datasetid="ds_main_list01_gridpatinfo" columnid="orddeptnm" />
  182. </Bind>
  183. <Script type="xscript4.0"><![CDATA[function SMPIF50110_onload(obj:Form, e:LoadEventInfo) {
  184. frmf_initForm(obj);
  185. //grdf_initGrid(grd_XXX);
  186. //grdf_setGridSort(grd_XXX);
  187. //grdf_setRowTypeIcon(grd_XXX, 0_컬럼위치값);
  188. // 공통코드 Load작업
  189. CommCode_Load();
  190. }
  191. include '../../.._com_commonweb_js_common.js'
  192. include '../../.._com_commonweb_js_tfHelper.js'
  193. include '../../.._com_basiccodeweb_js_ZBC001.js'
  194. function Node_Init() {
  195. // NodeSet 초기화
  196. }
  197. // 공통코드 Load작업
  198. function CommCode_Load() {
  199. if(window.opener != null) {
  200. // submit("TRPIF50111");
  201. var oParam = {};
  202. oParam.id = "TRPIF50111";
  203. oParam.service = "clamuncoapp.ClamUnco";
  204. oParam.method = "reqGetOprcpDetl";
  205. oParam.inds = "req=ds_";
  206. oParam.outds = "ds_=gridpatinfo ds_=gridoprcpdetl";
  207. oParam.async = false;
  208. oParam.callback = "cf_TRPIF50111";
  209. tranf_submit(oParam);
  210. /*
  211. function cf_TRPIF50111(sSvcId, nErrorCode, sErrorMsg) {
  212. if(nErrorCode < 0) return;
  213. }
  214. function cf_TRPIF50111(sSvcId, nErrorCode, sErrorMsg) {
  215. arErrorCode.push(sSvcId, nErrorCode);
  216. }
  217. arErrorCode.pop("TRPIF50111") > -1
  218. arErrorCode.pop("TRPIF50111") < 0
  219. */
  220. var rows = grp_biz.grd_oprcpdetl.rows;
  221. for(var i=1;i<rows;i++) {
  222. if(grp_biz.grd_oprcpdetl.valueMatrix(i,2) == "") {
  223. grp_biz.grd_oprcpdetl.isReadOnly(i,1) = true;
  224. }
  225. var opn_rows = opener.grd_rtndetl.rows;
  226. for(var j=1;j<opn_rows;j++) {
  227. // 처방전교부번호가 같고 줄번호가 같으면 중복데이터임.
  228. if((opener.grd_rtndetl.valueMatrix(j,2) == grp_biz.grd_oprcpdetl.valueMatrix(i,3)) & (opener.grd_rtndetl.valueMatrix(j,18) == grp_biz.grd_oprcpdetl.valueMatrix(i,4))) {
  229. grp_biz.grd_oprcpdetl.isReadOnly(i,1) = true;
  230. }
  231. }
  232. }
  233. }
  234. }
  235. function grp_biz_group2_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  236. if(grp_biz.group2.ipt_docuseqno.value == "") {
  237. sysf_messageBox("명세서일련번호를","C001");
  238. grp_biz.group2.ipt_docuseqno.setFocus();
  239. return false;
  240. }
  241. // submit("TRPIF50111");
  242. var oParam = {};
  243. oParam.id = "TRPIF50111";
  244. oParam.service = "clamuncoapp.ClamUnco";
  245. oParam.method = "reqGetOprcpDetl";
  246. oParam.inds = "req=ds_";
  247. oParam.outds = "ds_=gridpatinfo ds_=gridoprcpdetl";
  248. oParam.async = false;
  249. oParam.callback = "cf_TRPIF50111";
  250. tranf_submit(oParam);
  251. /*
  252. function cf_TRPIF50111(sSvcId, nErrorCode, sErrorMsg) {
  253. if(nErrorCode < 0) return;
  254. }
  255. function cf_TRPIF50111(sSvcId, nErrorCode, sErrorMsg) {
  256. arErrorCode.push(sSvcId, nErrorCode);
  257. }
  258. arErrorCode.pop("TRPIF50111") > -1
  259. arErrorCode.pop("TRPIF50111") < 0
  260. */
  261. }
  262. function grp_biz_button1_onclick(obj:Button, e:ClickEventInfo) {
  263. }
  264. function grp_biz_button3_onclick(obj:Button, e:ClickEventInfo) {
  265. var rows = grp_biz.grd_oprcpdetl.rows;
  266. for(var i=1;i<rows;i++) {
  267. if(grp_biz.grd_oprcpdetl.valueMatrix(i,1) == "true") {
  268. var opn_rows = opener.grd_rtndetl.rows;
  269. for(var j=1;j<opn_rows;j++) {
  270. // 처방전교부번호가 같고 줄번호가 같으면 중복데이터임.
  271. if((opener.grd_rtndetl.valueMatrix(j,2) == grp_biz.grd_oprcpdetl.valueMatrix(i,3)) & (opener.grd_rtndetl.valueMatrix(j,17) == grp_biz.grd_oprcpdetl.valueMatrix(i,4))) {
  272. alert(i+"번째 행은 중복된 데이터입니다. 다시 선택해 주세요");
  273. return false;
  274. }
  275. }
  276. opener.grd_rtndetl.addRow();
  277. var opn_row = opener.grd_rtndetl.rows - 1;
  278. opener.grd_rtndetl.valueMatrix(opn_row,1) = grp_biz.grd_oprcpdetl.valueMatrix(i,13); // 심사차수
  279. opener.grd_rtndetl.valueMatrix(opn_row,2) = grp_biz.grd_oprcpdetl.valueMatrix(i,3); // 처방전교부번호
  280. opener.grd_rtndetl.valueMatrix(opn_row,3) = grp_biz.grd_oprcpdetl.valueMatrix(i,11); // 약국코드
  281. opener.grd_rtndetl.valueMatrix(opn_row,4) = grp_biz.grd_oprcpdetl.valueMatrix(i,12); // 약국명
  282. opener.grd_rtndetl.valueMatrix(opn_row,5) = grp_biz.grd_oprcpdetl.valueMatrix(i,2); // 조정사유
  283. opener.grd_rtndetl.valueMatrix(opn_row,6) = grp_biz.grd_oprcpdetl.valueMatrix(i,5); // 약품코드
  284. opener.grd_rtndetl.valueMatrix(opn_row,7) = grp_biz.grd_oprcpdetl.valueMatrix(i,7); // 약품명
  285. opener.grd_rtndetl.valueMatrix(opn_row,9) = grp_biz.grd_oprcpdetl.valueMatrix(i,10); // 조정액
  286. opener.grd_rtndetl.valueMatrix(opn_row,12) = grp_biz.grd_oprcpdetl.valueMatrix(i,10); // 조정액
  287. opener.grd_rtndetl.valueMatrix(opn_row,14) = grp_biz.grd_oprcpdetl.valueMatrix(i,14); // 청구번호
  288. opener.grd_rtndetl.valueMatrix(opn_row,15) = grp_biz.grd_oprcpdetl.valueMatrix(i,15); // 접수번호
  289. opener.grd_rtndetl.valueMatrix(opn_row,16) = grp_biz.grd_oprcpdetl.valueMatrix(i,16); // 명일련
  290. opener.grd_rtndetl.valueMatrix(opn_row,17) = grp_biz.grd_oprcpdetl.valueMatrix(i,4); // 줄번호
  291. opener.grd_rtndetl.valueMatrix(opn_row,18) = grp_biz.grd_oprcpdetl.valueMatrix(i,17); // 기관코드
  292. opener.grd_rtndetl.valueMatrix(opn_row,19) = grp_biz.grd_oprcpdetl.valueMatrix(i,18); // 일투
  293. opener.grd_rtndetl.valueMatrix(opn_row,20) = grp_biz.grd_oprcpdetl.valueMatrix(i,19); // 총투
  294. if(opn_row > 1) {
  295. opener.grd_rtndetl.valueMatrix(opn_row,13) = opener.grd_rtndetl.valueMatrix(opn_row-1,13); // 원외심결통보일자
  296. opener.grd_rtndetl.valueMatrix(opn_row,21) = opener.grd_rtndetl.valueMatrix(opn_row-1,21); // 이신구분
  297. }
  298. }
  299. }
  300. //opener.model.refresh();
  301. window.close();
  302. }
  303. function grp_biz_grd_oprcpdetl_oncellclick(obj:Grid, e:GridClickEventInfo) {
  304. var row = grp_biz.grd_oprcpdetl.row;
  305. if(grp_biz.grd_oprcpdetl.col != 1 & grp_biz.grd_oprcpdetl.isReadOnly(row,1) == false) {
  306. if(grp_biz.grd_oprcpdetl.valueMatrix(row,1) == "false") {
  307. grp_biz.grd_oprcpdetl.valueMatrix(row,1) = "true";
  308. } else {
  309. grp_biz.grd_oprcpdetl.valueMatrix(row,1) = "false";
  310. }
  311. }
  312. }
  313. function grp_biz_button2_onclick(obj:Button, e:ClickEventInfo) {
  314. var today = new Date();
  315. var yy = today.getYear()+"";
  316. var mm = today.getMonth()+1;
  317. var dd = today.getDate();
  318. if(mm < 10) { mm = "0"+mm; } else { mm = mm+""; }
  319. if(dd < 10) { dd = "0" + dd; } else { dd = dd + ""; }
  320. var tmp = yy+mm+dd;
  321. var fileName = window.fileDialog("save", ",", false, "원외처방이의신청자료생성_"+tmp, "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  322. if (fileName != "") { grp_biz.grd_oprcpdetl.saveExcel(fileName, "SheetName", true, true, "", "", ""); }
  323. }
  324. ]]></Script>
  325. </Form>
  326. </FDL>