SMLPB00300_슬라이드일괄출력.xfdl 47 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLPB00300" position="absolute 0 0 1201 787" titletext="슬라이드 재출력" oninit="SMLPB00300_oninit" onload="SMLPB00300_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="슬라이드 재출력" class="tit_1" position="absolute 0 0 152 25"/>
  8. <Button id="btn_save" taborder="1" text="발행" class="btn4" position="absolute 1141 34 1197 56" onclick="btn_save_onclick" anchor="top right"/>
  9. <Static id="caption11" text="발행순서" class="cell_1" position="absolute 994 37 1059 56" anchor="top right"/>
  10. <Static id="caption1" text="출력장비" class="cell_1" position="absolute 774 37 839 56" anchor="top right"/>
  11. <Radio id="radio1" taborder="2" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 1063 38 1133 54" anchor="top right">
  12. <Dataset id="innerdataset">
  13. <ColumnInfo>
  14. <Column id="codecolumn"/>
  15. <Column id="datacolumn"/>
  16. </ColumnInfo>
  17. <Rows>
  18. <Row>
  19. <Col id="codecolumn">1</Col>
  20. <Col id="datacolumn">정</Col>
  21. </Row>
  22. <Row>
  23. <Col id="codecolumn">2</Col>
  24. <Col id="datacolumn">역</Col>
  25. </Row>
  26. </Rows>
  27. </Dataset>
  28. </Radio>
  29. <Combo id="cmb_slideqlist" taborder="3" innerdataset="ds_init_cmb_slideqlist" codecolumn="eqseqno" datacolumn="eqnm" position="absolute 845 37 979 56" anchor="top right"/>
  30. <Combo id="combo3" taborder="4" codecolumn="codecolumn" datacolumn="datacolumn" visible="false" position="absolute 671 36 761 55" anchor="top right">
  31. <Dataset id="innerdataset">
  32. <ColumnInfo>
  33. <Column id="codecolumn"/>
  34. <Column id="datacolumn"/>
  35. </ColumnInfo>
  36. <Rows>
  37. <Row>
  38. <Col id="codecolumn"/>
  39. <Col id="datacolumn"/>
  40. </Row>
  41. <Row>
  42. <Col id="codecolumn">0</Col>
  43. <Col id="datacolumn">CELL블럭</Col>
  44. </Row>
  45. <Row>
  46. <Col id="codecolumn">1</Col>
  47. <Col id="datacolumn">가상블럭</Col>
  48. </Row>
  49. </Rows>
  50. </Dataset>
  51. </Combo>
  52. <Button id="btn_excel" taborder="5" text="EXCEL저장" class="btn7" position="absolute 2 34 94 56" onclick="btn_excel_onclick"/>
  53. <Button id="btn_prt" taborder="6" text="출력" class="btn6" position="absolute 97 34 153 56" onclick="btn_prt_onclick"/>
  54. <Button id="btn_outoch2" taborder="7" text="자동변환Off" class="btn2" visible="false" position="absolute 1107 131 1193 150" onclick="btn_outoch2_onclick" anchor="top right"/>
  55. <Button id="btn_outoch1" taborder="8" text="자동변환On" class="btn2" position="absolute 1107 131 1193 150" onclick="btn_outoch1_onclick" anchor="top right"/>
  56. <Shape id="line1" linetype="horizontal" class="line_1" position="absolute 4 150 1198 156" style="strokepen:3 solid #33bbbbff;" anchor="left top right"/>
  57. <Static id="caption3" text="슬라이드 목록" class="tit_2" position="absolute 5 133 109 150"/>
  58. <Grid id="grd_slidlist" class="datagrid2" taborder="10" binddataset="ds_grd_slidlist" useinputpanel="false" position="absolute 4 154 1198 784" autofittype="col" anchor="all" onrbuttonup="grd_slidlist_onrbuttonup" selecttype="multirow" onrbuttondown="grd_slidlist_onrbuttondown" cellsizingtype="both" autosizingtype="row" extendsizetype="row">
  59. <Formats>
  60. <Format id="default">
  61. <Columns>
  62. <Column size="24"/>
  63. <Column size="35"/>
  64. <Column size="0"/>
  65. <Column size="0"/>
  66. <Column size="0"/>
  67. <Column size="80"/>
  68. <Column size="68"/>
  69. <Column size="87"/>
  70. <Column size="0"/>
  71. <Column size="0"/>
  72. <Column size="0"/>
  73. <Column size="0"/>
  74. <Column size="292"/>
  75. <Column size="230"/>
  76. <Column size="347"/>
  77. <Column size="0"/>
  78. <Column size="0"/>
  79. <Column size="0"/>
  80. <Column size="0"/>
  81. <Column size="0"/>
  82. <Column size="0"/>
  83. <Column size="0"/>
  84. <Column size="0"/>
  85. <Column size="0"/>
  86. <Column size="0"/>
  87. <Column size="0"/>
  88. <Column size="0"/>
  89. <Column size="0"/>
  90. <Column size="0"/>
  91. <Column size="0"/>
  92. <Column size="0"/>
  93. <Column size="0"/>
  94. <Column size="0"/>
  95. <Column size="0"/>
  96. <Column size="0"/>
  97. <Column size="0"/>
  98. <Column size="0"/>
  99. <Column size="0"/>
  100. <Column size="0"/>
  101. </Columns>
  102. <Rows>
  103. <Row size="24" band="head"/>
  104. <Row size="24"/>
  105. </Rows>
  106. <Band id="head">
  107. <Cell/>
  108. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="선택"/>
  109. <Cell col="2" text="기관코드"/>
  110. <Cell col="3" text="병리번호"/>
  111. <Cell col="4" text="접수일자"/>
  112. <Cell col="5" text="병리번호"/>
  113. <Cell col="6" text="Block번호"/>
  114. <Cell col="7" text="슬라이드 내용"/>
  115. <Cell col="8" text="육안검사의"/>
  116. <Cell col="9" text="등록번호"/>
  117. <Cell col="10" text="환자명"/>
  118. <Cell col="11" text="성별/나이"/>
  119. <Cell col="12" text="검사명"/>
  120. <Cell col="13" text="대표검체명"/>
  121. <Cell col="14" text="세부검체명"/>
  122. <Cell col="15" text="검체번호"/>
  123. <Cell col="16" text="Cassette 번호"/>
  124. <Cell col="17" text="Cassette 내용"/>
  125. <Cell col="18" text="Cassette Type"/>
  126. <Cell col="19" text="개별&#10;선택"/>
  127. <Cell col="20" text="슬라이드 번호"/>
  128. <Cell col="21" text="슬라이드&#10;Type"/>
  129. <Cell col="22" text="Comment"/>
  130. <Cell col="23" text="종류"/>
  131. <Cell col="24" text="대출&#10;여부"/>
  132. <Cell col="25" text="병동/병실"/>
  133. <Cell col="26" text="진료과"/>
  134. <Cell col="27" text="처방의"/>
  135. <Cell col="28" text="접수자"/>
  136. <Cell col="29" text="판독의"/>
  137. <Cell col="30" text="선택진료의"/>
  138. <Cell col="31" text="결과입력자"/>
  139. <Cell col="32" text="검체접수일자"/>
  140. <Cell col="33" text="검체접수번호"/>
  141. <Cell col="34" text="접수일자"/>
  142. <Cell col="35" text="접수번호"/>
  143. <Cell col="36" text="검사코드"/>
  144. <Cell col="37" text="검사항목번호"/>
  145. <Cell col="38" text="relaptno"/>
  146. </Band>
  147. <Band id="body">
  148. <Cell celltype="head" text="expr:currow + 1"/>
  149. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:grupchoi"/>
  150. <Cell col="2" text="bind:instcd"/>
  151. <Cell col="3" text="bind:ptno"/>
  152. <Cell col="4" text="bind:acptdd"/>
  153. <Cell col="5" class="text_center" text="bind:ptnodisp"/>
  154. <Cell col="6" displaytype="text" edittype="text" style="align:center middle;" class="text_center" text="bind:prtnblocnm"/>
  155. <Cell col="7" displaytype="text" edittype="text" text="bind:slidcnts"/>
  156. <Cell col="8" text="bind:grosdrnm"/>
  157. <Cell col="9" text="bind:pid"/>
  158. <Cell col="10" text="bind:hngnm"/>
  159. <Cell col="11" text="bind:sexage"/>
  160. <Cell col="12" style="align:center middle;" class="text_center" text="bind:testengnm" wordwrap="both" autosizerow="limitmin"/>
  161. <Cell col="13" class="text_center" text="bind:spcnm"/>
  162. <Cell col="14" class="text_center" text="bind:spcseqnm"/>
  163. <Cell col="15" class="text_center" text="bind:spcseqno"/>
  164. <Cell col="16" class="text_center" text="bind:csteno"/>
  165. <Cell col="17" text="bind:cstecnts"/>
  166. <Cell col="18" displaytype="combo" edittype="combo" text="bind:cstekindcd"/>
  167. <Cell col="19" displaytype="checkbox" edittype="checkbox" text="bind:indcasechoi"/>
  168. <Cell col="20" class="text_center" text="bind:slidno"/>
  169. <Cell col="21" displaytype="combo" edittype="combo" text="bind:slidkindcd"/>
  170. <Cell col="22" text="bind:cmt"/>
  171. <Cell col="23" displaytype="combo" edittype="combo" text="bind:hosinhosoutflagcd"/>
  172. <Cell col="24" displaytype="combo" edittype="combo" text="bind:lendflagcd"/>
  173. <Cell col="25" text="bind:wardnmroom"/>
  174. <Cell col="26" text="bind:deptnm"/>
  175. <Cell col="27" text="bind:orddrnm"/>
  176. <Cell col="28" text="bind:acptnm"/>
  177. <Cell col="29" text="bind:readdrnm"/>
  178. <Cell col="30" text="bind:choinm"/>
  179. <Cell col="31" text="bind:rsltrgstnm"/>
  180. <Cell col="32" text="bind:spcacptdd"/>
  181. <Cell col="33" text="bind:spcacptno"/>
  182. <Cell col="34" text="bind:acptno"/>
  183. <Cell col="35" text="bind:testcd"/>
  184. <Cell col="36" text="bind:acptitemno"/>
  185. <Cell col="37" text="bind:relaptno"/>
  186. <Cell col="38" text="bind:reladispptno"/>
  187. </Band>
  188. </Format>
  189. </Formats>
  190. </Grid>
  191. <ActiveX id="socket" visible="false" position="absolute 308 122 356 152" progid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" useautobitmapcache="1" anchor="default" taborder="11" OnError="socket_OnError" OnClose="socket_OnClose" OnConnect="socket_OnConnect"/>
  192. <Combo id="cmb_prnteqmt" taborder="12" codecolumn="codecolumn" datacolumn="datacolumn" visible="false" position="absolute 693 126 827 145" anchor="top right">
  193. <Dataset id="innerdataset">
  194. <ColumnInfo>
  195. <Column id="codecolumn"/>
  196. <Column id="datacolumn"/>
  197. </ColumnInfo>
  198. <Rows>
  199. <Row>
  200. <Col id="codecolumn">0</Col>
  201. <Col id="datacolumn">슬라이드 라벨러</Col>
  202. </Row>
  203. <Row>
  204. <Col id="codecolumn">1</Col>
  205. <Col id="datacolumn">라벨 프린터1</Col>
  206. </Row>
  207. <Row>
  208. <Col id="codecolumn">2</Col>
  209. <Col id="datacolumn">라벨 프린터2</Col>
  210. </Row>
  211. </Rows>
  212. </Dataset>
  213. </Combo>
  214. <Button id="btn_clear" taborder="13" text="초기화" class="btn2" position="absolute 1051 131 1104 150" onclick="btn_clear_onclick" anchor="top right"/>
  215. <Combo id="cmb_slidcnts" taborder="14" innerdataset="@ds_resncdlist" codecolumn="resncnts" datacolumn="resncnts" position="absolute 201 127 301 146" oncloseup="cmb_slidcnts_oncloseup"/>
  216. <Div id="group2" taborder="15" class="div_SA2" position="absolute 3 60 1199 113" anchor="left top right">
  217. <Layouts>
  218. <Layout>
  219. <Static id="caption2" text="접수일자 :" class="search_name" position="absolute 773 18 845 35" anchor="top right"/>
  220. <Static id="caption4" text="병리번호 :" class="search_name" position="absolute 16 6 102 23" anchor="default"/>
  221. <Static id="caption5" text="~" class="search_no_b" position="absolute 967 19 979 36" anchor="top right"/>
  222. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1104 5 1110 48" anchor="top right"/>
  223. <Calendar id="ipt_acptddfrom" taborder="1" class="input_s_essential" position="absolute 854 17 962 36" mask="yyyy-mm-dd" anchor="top right"/>
  224. <Calendar id="ipt_acptddto" taborder="2" class="input_s_essential" position="absolute 983 17 1090 36" mask="yyyy-mm-dd" anchor="top right" onkeyup="group2_ipt_acptddto_onkeyup"/>
  225. <Button id="btn_sea" taborder="3" text="조회" class="btn1" position="absolute 1123 16 1179 38" anchor="top right" onclick="group2_btn_sea_onclick"/>
  226. <Static id="caption8" text="슬라이드 종류 :" class="search_name" position="absolute 16 30 133 47" anchor="default"/>
  227. <Combo id="combo1" taborder="4" innerdataset="ds_init_combo1" codecolumn="ptnocd" datacolumn="ptnonm" position="absolute 107 5 268 24" anchor="default"/>
  228. <Edit id="ipt_fromptno" taborder="5" class="text_center" position="absolute 301 5 351 24" anchor="default"/>
  229. <Static id="caption7" text="~" class="search_no_b" position="absolute 354 5 366 22" anchor="default"/>
  230. <Edit id="input2" taborder="6" class="text_center" position="absolute 399 5 449 24" anchor="default"/>
  231. <Edit id="ipt_toyear" taborder="7" class="text_center" position="absolute 369 5 396 24" anchor="default"/>
  232. <Edit id="ipt_fromyear" taborder="8" class="text_center" position="absolute 271 5 298 24" anchor="default"/>
  233. <cp_checkboxList id="checkboxList" taborder="9" scrollbars="none" position="absolute 132 30 893 48" style="background:transparent; " col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  234. </Layout>
  235. </Layouts>
  236. </Div>
  237. </Layout>
  238. </Layouts>
  239. <Objects>
  240. <Dataset id="ds_init_combo1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  241. <ColumnInfo>
  242. <Column id="ptnonm" type="STRING"/>
  243. <Column id="ptnocd" type="STRING"/>
  244. </ColumnInfo>
  245. </Dataset>
  246. <Dataset id="ds_grd_slidlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  247. <ColumnInfo>
  248. <Column id="grupchoi" type="STRING"/>
  249. <Column id="instcd" type="STRING"/>
  250. <Column id="ptno" type="STRING"/>
  251. <Column id="acptdd" type="STRING"/>
  252. <Column id="ptnodisp" type="STRING"/>
  253. <Column id="prtnblocnm" type="STRING"/>
  254. <Column id="slidcnts" type="STRING"/>
  255. <Column id="grosdrnm" type="STRING"/>
  256. <Column id="pid" type="STRING"/>
  257. <Column id="hngnm" type="STRING"/>
  258. <Column id="sexage" type="STRING"/>
  259. <Column id="testengnm" type="STRING"/>
  260. <Column id="spcnm" type="STRING"/>
  261. <Column id="spcseqnm" type="STRING"/>
  262. <Column id="spcseqno" type="STRING"/>
  263. <Column id="csteno" type="STRING"/>
  264. <Column id="cstecnts" type="STRING"/>
  265. <Column id="cstekindcd" type="STRING"/>
  266. <Column id="indcasechoi" type="STRING"/>
  267. <Column id="slidno" type="STRING"/>
  268. <Column id="slidkindcd" type="STRING"/>
  269. <Column id="cmt" type="STRING"/>
  270. <Column id="hosinhosoutflagcd" type="STRING"/>
  271. <Column id="lendflagcd" type="STRING"/>
  272. <Column id="wardnmroom" type="STRING"/>
  273. <Column id="deptnm" type="STRING"/>
  274. <Column id="orddrnm" type="STRING"/>
  275. <Column id="acptnm" type="STRING"/>
  276. <Column id="readdrnm" type="STRING"/>
  277. <Column id="choinm" type="STRING"/>
  278. <Column id="rsltrgstnm" type="STRING"/>
  279. <Column id="spcacptdd" type="STRING"/>
  280. <Column id="spcacptno" type="STRING"/>
  281. <Column id="acptno" type="STRING"/>
  282. <Column id="testcd" type="STRING"/>
  283. <Column id="acptitemno" type="STRING"/>
  284. <Column id="relaptno" type="STRING"/>
  285. <Column id="reladispptno" type="STRING"/>
  286. </ColumnInfo>
  287. </Dataset>
  288. <Dataset id="ds_init_cmb_slidcnts" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  289. <ColumnInfo>
  290. <Column id="resncnts" type="STRING"/>
  291. <Column id="resncnts" type="STRING"/>
  292. </ColumnInfo>
  293. </Dataset>
  294. <Dataset id="ds_init_cmb_slideqlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  295. <ColumnInfo>
  296. <Column id="eqnm" type="STRING"/>
  297. <Column id="eqseqno" type="STRING"/>
  298. </ColumnInfo>
  299. </Dataset>
  300. <Dataset id="ds_data_sysdtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  301. <ColumnInfo>
  302. <Column id="sysdd" type="STRING" size="256"/>
  303. <Column id="systm" type="STRING" size="256"/>
  304. </ColumnInfo>
  305. </Dataset>
  306. <Dataset id="ds_hosoenvinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  307. <ColumnInfo>
  308. <Column id="instcd" type="STRING" size="256"/>
  309. <Column id="lendrtnterm" type="STRING" size="256"/>
  310. <Column id="recvqualmthdcd" type="STRING" size="256"/>
  311. <Column id="plgydeptcd" type="STRING" size="256"/>
  312. <Column id="plgyteamcd" type="STRING" size="256"/>
  313. <Column id="doctjobgradcd" type="STRING" size="256"/>
  314. <Column id="teamjobgradcd" type="STRING" size="256"/>
  315. </ColumnInfo>
  316. <Rows>
  317. <Row/>
  318. </Rows>
  319. </Dataset>
  320. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  321. <ColumnInfo>
  322. <Column id="detlrefcrite" type="STRING" size="256"/>
  323. <Column id="userdeptcd" type="STRING" size="256"/>
  324. <Column id="prtndirect" type="STRING" size="256"/>
  325. </ColumnInfo>
  326. <Rows>
  327. <Row>
  328. <Col id="prtndirect">1</Col>
  329. </Row>
  330. </Rows>
  331. </Dataset>
  332. <Dataset id="ds_resncdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  333. <ColumnInfo>
  334. <Column id="choi" type="STRING" size="256" sumtext="선택"/>
  335. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  336. <Column id="baseflagcd" type="STRING" size="256" sumtext="구분코드"/>
  337. <Column id="resncd" type="STRING" size="256" sumtext="사유코드"/>
  338. <Column id="resncnts" type="STRING" size="256" sumtext="사유내용"/>
  339. </ColumnInfo>
  340. </Dataset>
  341. <Dataset id="ds_caeqlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  342. <ColumnInfo>
  343. <Column id="eqnm" type="STRING" size="256" sumtext="장비명"/>
  344. <Column id="eqip" type="STRING" size="256" sumtext="장비ip"/>
  345. <Column id="eqport" type="STRING" size="256" sumtext="장비port"/>
  346. <Column id="eqflag" type="STRING" size="256" sumtext="1:카세트, 2:슬라이드"/>
  347. <Column id="eqseqno" type="STRING" size="256" sumtext="장비순번"/>
  348. <Column id="resncd" type="STRING" size="256" sumtext="사유코드"/>
  349. <Column id="baseflagcd" type="STRING" size="256" sumtext="기초구분코드"/>
  350. <Column id="dispseqno" type="STRING" size="256" sumtext="표시순서"/>
  351. </ColumnInfo>
  352. <Rows>
  353. <Row/>
  354. </Rows>
  355. </Dataset>
  356. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  357. <ColumnInfo>
  358. <Column id="acptfromdd" type="STRING" size="256"/>
  359. <Column id="acpttodd" type="STRING" size="256"/>
  360. <Column id="ptnocode" type="STRING" size="256"/>
  361. <Column id="fromyear" type="STRING" size="256"/>
  362. <Column id="fromptno" type="STRING" size="256"/>
  363. <Column id="toyear" type="STRING" size="256"/>
  364. <Column id="toptno" type="STRING" size="256"/>
  365. <Column id="slidkindcd" type="STRING" size="256"/>
  366. <Column id="prtflag" type="STRING" size="256"/>
  367. <Column id="eqseqno" type="STRING" size="256"/>
  368. <Column id="blockind" type="STRING" size="256"/>
  369. <Column id="slidcmb" type="STRING" size="256"/>
  370. </ColumnInfo>
  371. <Rows>
  372. <Row>
  373. <Col id="prtflag">0</Col>
  374. <Col id="slidkindcd">0</Col>
  375. </Row>
  376. </Rows>
  377. </Dataset>
  378. </Objects>
  379. <Bind>
  380. <BindItem id="item0" compid="group2.combo1" propid="value" datasetid="ds_init" columnid="ptnocode"/>
  381. <BindItem id="item1" compid="group2.ipt_fromyear" propid="value" datasetid="ds_init" columnid="fromyear"/>
  382. <BindItem id="item2" compid="group2.ipt_fromptno" propid="value" datasetid="ds_init" columnid="fromptno"/>
  383. <BindItem id="item3" compid="group2.ipt_toyear" propid="value" datasetid="ds_init" columnid="toyear"/>
  384. <BindItem id="item4" compid="group2.input2" propid="value" datasetid="ds_init" columnid="toptno"/>
  385. <BindItem id="item5" compid="cmb_slideqlist" propid="value" datasetid="ds_init" columnid="eqseqno"/>
  386. <BindItem id="item6" compid="group2.ipt_acptddfrom" propid="value" datasetid="ds_init" columnid="acptfromdd"/>
  387. <BindItem id="item7" compid="group2.ipt_acptddto" propid="value" datasetid="ds_init" columnid="acpttodd"/>
  388. <BindItem id="item8" compid="combo3" propid="value" datasetid="ds_init" columnid="blockind"/>
  389. <BindItem id="item9" compid="radio1" propid="value" datasetid="ds_hidden" columnid="prtndirect"/>
  390. <BindItem id="item10" compid="cmb_slidcnts" propid="value" datasetid="ds_init" columnid="slidcmb"/>
  391. </Bind>
  392. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  393. * System Name :
  394. * Job Name :
  395. * Creator :
  396. * Make Date : 2015-11-13
  397. * Description :
  398. *---------------------------------------------------------------------------------------
  399. * Modify Date Modifier Modify Description
  400. *---------------------------------------------------------------------------------------
  401. * 2015-11-13 Live Converter TF->XP
  402. *
  403. *---------------------------------------------------------------------------------------
  404. ****************************************************************************************/
  405. include "com_commonxp::comm_main.xjs";
  406. include "lis_commonxp::LPZ001.xjs";
  407. include "lis_commonxp::LLZ001.xjs";
  408. /******************************************************************
  409. * Argument :
  410. * Description : 초기화
  411. ******************************************************************/
  412. function SMLPB00300_oninit(obj:Form, e:InitEventInfo)
  413. {
  414. frmf_initForm(obj);
  415. }
  416. function SMLPB00300_onload(obj:Form, e:LoadEventInfo)
  417. {
  418. grdf_initGrid(grd_slidlist);
  419. frmf_createPopupMenu("pmn_popupMenu", "pmn_popupMenu_onmenuclick");
  420. fExeInitialize();
  421. }
  422. /******************************************************************
  423. * Argument :
  424. * Description : 초기화함수
  425. ******************************************************************/
  426. function fExeInitialize()
  427. {
  428. var sCurDate = "";
  429. //----------------
  430. // 시스템일시 조회
  431. dsf_createDs( "ds_send", [{col : "instcd", vla : sysf_getUserInfo("dutplceinstcd")}]);
  432. var oParam = {};
  433. oParam.id = "TRLPZ00101";
  434. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  435. oParam.method = "reqGetHospitalEnvironmentSetInfo";
  436. oParam.inds = "refData=ds_send";
  437. oParam.outds = "ds_hosoenvinfo=hospenvinfo";
  438. oParam.async = false;
  439. //oParam.callback = "cf_TRLPZ00101";
  440. tranf_submit(oParam);
  441. dsf_createDs( "ds_send", [{col : "instcd", vla : sysf_getUserInfo("dutplceinstcd")}]);
  442. var oParam = {};
  443. oParam.id = "TRLPZ00102";
  444. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  445. oParam.method = "reqGetSystemDateTimeInformation";
  446. oParam.inds = "refData=ds_send";
  447. oParam.outds = "ds_data_sysdtinfo=sysdtinfo";
  448. oParam.async = false;
  449. //oParam.callback = "cf_TRLPZ00102";
  450. tranf_submit(oParam);
  451. dsf_createDsRow("ds_send", [{col : "instcd", val : sysf_getUserInfo("dutplceinstcd")}
  452. ,{col : "refflagcd", val : "0"}]);
  453. var oParam = {};
  454. oParam.id = "TRLPZ00109";
  455. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  456. oParam.method = "reqGetPtNoCdList";
  457. oParam.inds = "refdata=ds_send";
  458. oParam.outds = "ds_init_combo1=rsltlist";
  459. oParam.async = false;
  460. //oParam.callback = "cf_TRLPZ00109";
  461. tranf_submit(oParam);
  462. //---------------------------------------------------------
  463. // 병원환경정보를 취득하여 병리과와 병리팀 코드를 편집한다.
  464. lpzfUserDeptCd(ds_hosoenvinfo, ds_hidden);
  465. //------------------------------------------
  466. // Cassette(블록) 및 Slide(슬라이드) 목록 조회
  467. //--------------------
  468. // 작업구분 목록 조회
  469. dsf_createDsRow( "ds_send", [{col : "instcd", val : sysf_getUserInfo("dutplceinstcd")}
  470. ,{col : "baseflagcd", val : "'81', '82', 'S2'"}]);
  471. var oParam = {};
  472. oParam.id = "TRLPZ00103";
  473. oParam.service = "plgycomnusemngtapp.BaseInfoCode";
  474. oParam.method = "reqGetReasonCodeList";
  475. oParam.inds = "refData=ds_send";
  476. oParam.outds = "ds_resncdlist=refrslt";
  477. oParam.async = false;
  478. //oParam.callback = "cf_TRLPZ00103";
  479. tranf_submit(oParam);
  480. var sProp = "col=7,cellspacing=4,vcellspacing=0,itemWidth=80,itemHeight=22,overflow='visible'";
  481. ds_resncdlist.filter("baseflagcd!='81'&& baseflagcd !='S2'");
  482. ds_resncdlist.deleteRow(ds_resncdlist.findRow("resncd","ZZZZ"));
  483. group2.checkboxList.setInitComp(sProp, ds_resncdlist, "resncd", "resncnts");
  484. ds_resncdlist.filter("");
  485. ds_resncdlist.filter("baseflagcd!='81'&& baseflagcd !='82'");
  486. ds_resncdlist.deleteRow(ds_resncdlist.findRow("resncd","ZZZZ"));
  487. sCurDate = ds_data_sysdtinfo.getColumn(0, "sysdd");
  488. //슬라이드 장비 조회
  489. dsf_createDsRow( "ds_send", [{col : "instcd", val : sysf_getUserInfo("dutplceinstcd")}
  490. ,{col : "baseflagcd", val : "EQ"}
  491. ,{col : "seaflagcd", val : "0"}]); //"0:전체, 1:카세트, 2:슬라이드"
  492. var oParam = {};
  493. oParam.id = "TRLPC01802";
  494. oParam.service = "plgybaseinfomngtapp.HospEnvSet";
  495. oParam.method = "reqGetEqList";
  496. oParam.inds = "refData=ds_send";
  497. oParam.outds = "ds_caeqlist=caeqlist ds_init_cmb_slideqlist=slideqlist";
  498. oParam.async = false;
  499. //oParam.callback = "cf_TRLPC01802";
  500. tranf_submit(oParam);
  501. //------------
  502. // 초기값 설정
  503. var currentDate = new Date(sCurDate.substr(0,4), sCurDate.substr(4,2) -1, sCurDate.substr(6,2));
  504. ds_init.setColumn(0, "ptnocode", "S");
  505. ds_init.setColumn(0, "fromyear", sCurDate.substr(2,2));
  506. ds_init.setColumn(0, "toyear", sCurDate.substr(2,2));
  507. ds_init.setColumn(0, "fromptno", "");
  508. ds_init.setColumn(0, "toptno", "");
  509. ds_init.setColumn(0, "acptfromdd", currentDate.getAddDate(-3,"D").getDateFormat("YYYYMMDD"));
  510. ds_init.setColumn(0, "acpttodd", ds_data_sysdtinfo.getColumn(0, "sysdd"));
  511. ds_init.setColumn(0, "slidkindcd", ds_resncdlist.getColumn(1, "resncd"));
  512. ds_init.setColumn(0, "prtflag", "1");
  513. ds_init.setColumn(0, "eqseqno", ds_init_cmb_slideqlist.getColumn(0, "eqseqno"));
  514. }
  515. /******************************************************************
  516. * Argument :
  517. * Description : 슬라이드 목록 조회 처리 함수
  518. ******************************************************************/
  519. function fGetSlideList()
  520. {
  521. var re = / /g; // i:1회실행, g:모두실행, gi:전역실행(대소문자 안가림)
  522. var sSlidKindCd = String(group2.checkboxList.getData());
  523. var sSysDD = ds_data_sysdtinfo.getColumn(0, "sysdd");
  524. var sTemp = "";
  525. var sFromDD = ds_init.getColumn(0, "acptfromdd");
  526. var sToDD =ds_init.getColumn(0, "acpttodd");
  527. var sCsteno = "";
  528. // Regular표현식을 사용하여 공백(" ")문자를 ','로 변환
  529. sSlidKindCd = "'" + sSlidKindCd.replace(re, "','") + "'";
  530. //------------------------------------------------
  531. if( !utlf_isNull(ds_init.getColumn(0, "ptnocode")))
  532. {
  533. if( utlf_isNull(ds_init.getColumn(0, "fromyear")))
  534. {
  535. ds_init.setColumn(0, "fromyear", sFromDD.substr(2,2));
  536. }
  537. else
  538. {
  539. sTemp = ds_init.getColumn(0, "fromyear");
  540. ds_init.setColumn(0, "fromyear", sTemp.getLeftPad(2, "0"));
  541. }
  542. if( utlf_isNull(ds_init.getColumn(0, "toyear")))
  543. {
  544. ds_init.setColumn(0, "toyear", sToDD.substr(2,2));
  545. }
  546. else
  547. {
  548. sTemp = ds_init.getColumn(0, "toyear");
  549. ds_init.setColumn(0, "toyear", sTemp.getLeftPad(2, "0"));
  550. }
  551. if( utlf_isNull(ds_init.getColumn(0, "fromptno")))
  552. {
  553. ds_init.setColumn(0, "fromptno", "000000");
  554. }
  555. else
  556. {
  557. sTemp = ds_init.getColumn(0, "fromptno");
  558. ds_init.setColumn(0, "fromptno", sTemp.getLeftPad(6, "0"));
  559. }
  560. if( utlf_isNull(ds_init.getColumn(0, "toptno")))
  561. {
  562. ds_init.setColumn(0, "toptno", "999999");
  563. }
  564. else
  565. {
  566. sTemp = ds_init.getColumn(0, "toptno");
  567. ds_init.setColumn(0, "toptno", sTemp.getLeftPad(6, "0"));
  568. }
  569. }
  570. ds_send.clear();
  571. sTemp = ds_init.getColumn(0, "ptnocode");
  572. //FSP와 FS 변경 기능 추가
  573. if(ds_init.getColumn(0, "blockind") == "0")
  574. {
  575. sCsteno = "999"; // 가상블럭을 제외하고 모두 조회
  576. }
  577. else if(ds_init.getColumn(0, "blockind") == "1")
  578. {
  579. sCsteno = "000"; // 가상블럭만 조회
  580. }
  581. dsf_createDsRow( "ds_send", [{col : "instcd", val : sysf_getUserInfo("dutplceinstcd")} // 기관코드
  582. ,{col : "ptnocode", val : sTemp.replace("-", "")}
  583. ,{col : "fromyear", val : ds_init.getColumn(0, "fromyear")}
  584. ,{col : "fromptno", val : ds_init.getColumn(0, "fromptno")}
  585. ,{col : "toyear", val : ds_init.getColumn(0, "toyear")}
  586. ,{col : "toptno", val : ds_init.getColumn(0, "toptno")}
  587. ,{col : "acptfromdd", val : ds_init.getColumn(0, "acptfromdd")} // 접수시작일자
  588. ,{col : "acpttodd", val : ds_init.getColumn(0, "acpttodd")} // 접수종료일자
  589. ,{col : "slidkindcd", val : sSlidKindCd} // 슬라이드 종류
  590. ,{col : "csteno", val : sCsteno}]);
  591. //--------------------
  592. //submit("TRLPB00301");
  593. var oParam = {};
  594. oParam.id = "TRLPB00301";
  595. oParam.service = "plgycsteslidmngtapp.SpcCsteSlid";
  596. oParam.method = "reqGetBatchSlideList";
  597. oParam.inds = "refData=ds_send";
  598. oParam.outds = "ds_grd_slidlist=refrslt";
  599. oParam.async = false;
  600. //oParam.callback = "cf_TRLPB00301";
  601. tranf_submit(oParam);
  602. }
  603. /******************************************************************
  604. * Argument :
  605. * Description : 자동변환On/Off
  606. ******************************************************************/
  607. function fExeIssOutoChange(pFlag)
  608. {
  609. var sPrtnblocnm = "";
  610. var sPrt1 = "";
  611. var sPrt2 = "";
  612. for(var iRowNo = 0; iRowNo <= ds_grd_slidlist.rowcount; iRowNo++)
  613. {
  614. if(ds_grd_slidlist.getColumn(iRowNo, "grupchoi") == 1)
  615. {
  616. if(pFlag == "On")
  617. {
  618. sPrtnblocnm = ds_grd_slidlist.getColumn(iRowNo, "prtnblocnm");
  619. sPrt1 = sPrtnblocnm.substring(0, 3);
  620. sPrt2 = sPrtnblocnm.substring(3 , sPrtnblocnm.length);
  621. if(sPrt1 == "FSP")
  622. {
  623. sPrtnblocnm = "FS" + sPrt2;
  624. }
  625. ds_grd_slidlist.setColumn(iRowNo, "prtnblocnm", sPrtnblocnm);
  626. }
  627. else if(pFlag == "Off")
  628. {
  629. sPrtnblocnm = ds_grd_slidlist.getColumn(iRowNo, "prtnblocnm");
  630. sPrt1 = sPrtnblocnm.substring(0, 2);
  631. sPrt2 = sPrtnblocnm.substring(2 , sPrtnblocnm.length);
  632. if(sPrt1 == "FS" && sPrtnblocnm.substring(0, 3) != "FSP")
  633. {
  634. sPrtnblocnm = "FSP" + sPrt2;
  635. }
  636. ds_grd_slidlist.setColumn(iRowNo, "prtnblocnm", sPrtnblocnm);
  637. }
  638. }
  639. }
  640. }
  641. /******************************************************************
  642. * Argument :
  643. * Description : 블록번호, 슬라이드내용 일괄 입력
  644. ******************************************************************/
  645. function fSetBlocSlidCnt(pFlag)
  646. {
  647. for(var iRowNo = 0; iRowNo <= ds_grd_slidlist.rowcount; iRowNo++)
  648. {
  649. if(ds_grd_slidlist.getColumn(iRowNo, "grupchoi") == 1)
  650. {
  651. if(pFlag == "C")
  652. {
  653. ds_grd_slidlist.setColumn(iRowNo, "slidcnts", ds_init.getColumn(0, "slidcmb"));
  654. }
  655. }
  656. }
  657. }
  658. /******************************************************************
  659. * Argument :
  660. * Description : 슬라이드 목록을 장비에 출력 처리 함수
  661. ******************************************************************/
  662. function fExeSlidIss()
  663. {
  664. var sInfoNode = ds_hosoenvinfo;
  665. var sSlidBcIP = "";
  666. var sSlidBcPort = "";
  667. //장비IP set
  668. for(var iRowNo = 0; iRowNo < ds_init_cmb_slideqlist.rowcount; iRowNo++)
  669. {
  670. if(ds_init.getColumn(0, "eqseqno") == ds_init_cmb_slideqlist.getColumn(iRowNo, "eqseqno"))
  671. {
  672. sSlidBcIP = ds_init_cmb_slideqlist.getColumn(iRowNo, "eqip");
  673. sSlidBcPort = ds_init_cmb_slideqlist.getColumn(iRowNo, "eqport");
  674. }
  675. }
  676. trace("sSlidBcIP="+sSlidBcIP);
  677. trace("sSlidBcPort="+sSlidBcPort);
  678. //----------------------------------------
  679. if(utlf_isNull(sSlidBcIP) || sSlidBcIP == "-")
  680. {
  681. sysf_messageBox("슬라이드 라벨지 장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  682. return false;
  683. }
  684. //--------------------------------------------
  685. if (utlf_isNull(sSlidBcPort) || sSlidBcPort == "-")
  686. {
  687. sysf_messageBox("슬라이드 라벨지 장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  688. return false;
  689. }
  690. //-------------------------------------
  691. socket.connect(sSlidBcIP, sSlidBcPort);
  692. }
  693. /******************************************************************
  694. * Argument :
  695. * Description : 슬라이드재출력화면 출력 처리 function
  696. ******************************************************************/
  697. function fExeWorkListPrnt()
  698. {
  699. var objDOM = rptf_createDOM(); // DOM 객체 설정
  700. rptf_setNodeListToDOM(objDOM, "/root/main/slidinfo/slidlist", ds_grd_slidlist); // 데이터셋 1
  701. var objParam = new Object();
  702. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  703. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  704. rptf_exeReportPreview30(["RPLPB00300"],[objParam], option);
  705. }
  706. /******************************************************************
  707. * Argument :
  708. * Description : 조회버튼
  709. ******************************************************************/
  710. function group2_btn_sea_onclick(obj:Button, e:ClickEventInfo)
  711. {
  712. var pos = grd_slidlist.vscrollbar.pos;
  713. fGetSlideList();
  714. grd_slidlist.vscrollbar.pos = pos;
  715. }
  716. function group2_ipt_acptddto_onkeyup(obj:Calendar, e:KeyEventInfo)
  717. {
  718. if(e.keycode == 13)
  719. {
  720. fGetSlideList();
  721. }
  722. }
  723. /******************************************************************
  724. * Argument :
  725. * Description : 초기화버튼
  726. ******************************************************************/
  727. function btn_clear_onclick(obj:Button, e:ClickEventInfo)
  728. {
  729. ds_grd_slidlist.clearData();
  730. }
  731. /******************************************************************
  732. * Argument :
  733. * Description : 자동변환On
  734. ******************************************************************/
  735. function btn_outoch1_onclick(obj:Button, e:ClickEventInfo)
  736. {
  737. btn_outoch1.visible = false;
  738. btn_outoch2.visible = true;
  739. fExeIssOutoChange("On");
  740. }
  741. /******************************************************************
  742. * Argument :
  743. * Description : 자동변환Off
  744. ******************************************************************/
  745. function btn_outoch2_onclick(obj:Button, e:ClickEventInfo)
  746. {
  747. btn_outoch1.visible = true;
  748. btn_outoch2.visible = false;
  749. fExeIssOutoChange("Off");
  750. }
  751. /******************************************************************
  752. * Argument :
  753. * Description : 블록번호, 슬라이드내용 일괄 입력
  754. ******************************************************************/
  755. function cmb_slidcnts_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  756. {
  757. //fSetBlocSlidCnt("C");
  758. }
  759. /******************************************************************
  760. * Argument :
  761. * Description : 발행버튼
  762. ******************************************************************/
  763. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  764. {
  765. var pos = grd_slidlist.vscrollbar.pos;
  766. fExeSlidIss();
  767. //fGetSlideList(); //발행후 재조회
  768. grd_slidlist.vscrollbar.pos = pos;
  769. }
  770. /******************************************************************
  771. * Argument :
  772. * Description : EXCEL저장 버튼
  773. ******************************************************************/
  774. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  775. {
  776. grdf_exportExcel(grd_slidlist, "슬라이드 재출력");
  777. }
  778. /******************************************************************
  779. * Argument :
  780. * Description : 출력 버튼
  781. ******************************************************************/
  782. function btn_prt_onclick(obj:Button, e:ClickEventInfo)
  783. {
  784. fExeWorkListPrnt();
  785. }
  786. /******************************************************************
  787. * Argument :
  788. * Description : 우클릭 조회
  789. ******************************************************************/
  790. function pmn_popupMenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  791. {
  792. if(e.id == "fExeLnAdd")
  793. {
  794. fExeLnAdd(); //한줄삽입
  795. }
  796. else if(e.id == "fExeLnAddLast")
  797. {
  798. fExeLnAddLast(); //끝삽입
  799. }
  800. else if(e.id == "fExeLnDel")
  801. {
  802. fExeLnDel(); //한줄삭제
  803. }
  804. else if(e.id == "fSelectList")
  805. {
  806. fSelectList(); //선택
  807. }
  808. else if(e.id == "fDeSelectList")
  809. {
  810. fDeSelectList(); //해제
  811. }
  812. }
  813. /******************************************************************
  814. * Argument :
  815. * Description : 슬라이드 목록에 한출 삽입 처리 함수
  816. ******************************************************************/
  817. function fExeLnAdd()
  818. {
  819. var strNode = ds_grd_slidlist;
  820. var iRowNo = 0;
  821. if(ds_grd_slidlist.rowposition < 0)
  822. {
  823. sysf_messageBox("삽입 위치를 선택", "C002");
  824. return false;
  825. }
  826. else
  827. {
  828. iRowNo = ds_grd_slidlist.rowposition + 1;
  829. ds_grd_slidlist.insertRow(iRowNo);
  830. //-------------------------
  831. // 상위 슬라이드 정보를 복사
  832. ds_grd_slidlist.setColumn(iRowNo, "grupchoi", 0);
  833. ds_grd_slidlist.setColumn(iRowNo, "instcd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "instcd"));
  834. ds_grd_slidlist.setColumn(iRowNo, "ptno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "ptno"));
  835. ds_grd_slidlist.setColumn(iRowNo, "ptnodisp", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "ptnodisp"));
  836. ds_grd_slidlist.setColumn(iRowNo, "spcnm", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "spcnm"));
  837. ds_grd_slidlist.setColumn(iRowNo, "spcseqno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "spcseqno"));
  838. ds_grd_slidlist.setColumn(iRowNo, "csteno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "csteno"));
  839. ds_grd_slidlist.setColumn(iRowNo, "cstecnts", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "cstecnts"));
  840. ds_grd_slidlist.setColumn(iRowNo, "cstekindcd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "cstekindcd"));
  841. ds_grd_slidlist.setColumn(iRowNo, "indcasechoi", false);
  842. ds_grd_slidlist.setColumn(iRowNo, "slidno", "-");
  843. ds_grd_slidlist.setColumn(iRowNo, "slidcnts", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "slidcnts"));
  844. ds_grd_slidlist.setColumn(iRowNo, "slidkindcd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "slidkindcd"));
  845. ds_grd_slidlist.setColumn(iRowNo, "cmt", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "cmt"));
  846. ds_grd_slidlist.setColumn(iRowNo, "hosinhosoutflagcd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "cmt"));
  847. ds_grd_slidlist.setColumn(iRowNo, "lendflagcd", "1");
  848. ds_grd_slidlist.setColumn(iRowNo, "spcacptdd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "spcacptdd"));
  849. ds_grd_slidlist.setColumn(iRowNo, "spcacptno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "spcacptno"));
  850. ds_grd_slidlist.setColumn(iRowNo, "acptdd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "acptdd"));
  851. ds_grd_slidlist.setColumn(iRowNo, "acptno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "acptno"));
  852. ds_grd_slidlist.setColumn(iRowNo, "testcd", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "testcd"));
  853. ds_grd_slidlist.setColumn(iRowNo, "acptitemno", ds_grd_slidlist.getColumn( (ds_grd_slidlist.rowposition-1), "acptitemno"));
  854. }
  855. }
  856. /******************************************************************
  857. * Argument :
  858. * Description : 슬라이드 목록에 한출 추가 처리 함수
  859. ******************************************************************/
  860. function fExeLnAddLast()
  861. {
  862. ds_grd_slidlist.addRow();
  863. }
  864. /******************************************************************
  865. * Argument :
  866. * Description : 슬라이드 목록에 한출 삭제 처리 함수
  867. ******************************************************************/
  868. function fExeLnDel()
  869. {
  870. if(ds_grd_slidlist.rowposition < 0)
  871. {
  872. sysf_messageBox("삭제 위치를 선택", "C002");
  873. return false;
  874. }
  875. else
  876. {
  877. //--------------------------
  878. ds_grd_slidlist.deleteRow(ds_grd_slidlist.rowposition);
  879. }
  880. }
  881. /******************************************************************
  882. * Argument :
  883. * Description : 다중 선택 함수
  884. ******************************************************************/
  885. function fSelectList()
  886. {
  887. var iFirstRow = grd_slidlist.selectstartrow;
  888. var iLasrRow = grd_slidlist.selectendrow;
  889. iFirstRow = iFirstRow;
  890. var iRowNo;
  891. for(iRowNo = iLasrRow; iRowNo >= iFirstRow; iRowNo--)
  892. {
  893. ds_grd_slidlist.setColumn(iRowNo, "grupchoi", "1");
  894. }
  895. }
  896. /******************************************************************
  897. * Argument :
  898. * Description : 다중 해제 함수
  899. ******************************************************************/
  900. function fDeSelectList()
  901. {
  902. var iFirstRow = grd_slidlist.selectstartrow;
  903. var iLasrRow = grd_slidlist.selectendrow;
  904. var iRowNo;
  905. for(iRowNo = iLasrRow; iRowNo >= iFirstRow; iRowNo--)
  906. {
  907. ds_grd_slidlist.setColumn(iRowNo, "grupchoi", "0");
  908. }
  909. }
  910. /******************************************************************
  911. * Argument :
  912. * Description : 우클릭 버튼
  913. ******************************************************************/
  914. function grd_slidlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  915. {
  916. if(e.row > -1)
  917. {
  918. frmf_setPopupMenuDs( "pmn_popupMenu", [{id: "fExeLnAdd", level: "0", title: "한줄삽입"}
  919. ,{id: "fExeLnAddLast", level: "0", title: "끝삽입"}
  920. ,{id: "fExeLnDel", level: "0", title: "한줄삭제"}
  921. ,{id: "fSelectList", level: "0", title: "선택"}
  922. ,{id: "fDeSelectList", level: "0", title: "해제"}]);
  923. pmn_popupMenu.trackPopup(e.screenX,e.screenY);
  924. }
  925. }
  926. function socket_OnError(obj:ActiveX, e)
  927. {
  928. alert("Error code = " + lError+"\nError Message : "+szMsg);
  929. socket.close(); // 소켓 닫기
  930. isConnected = false; // 접속 여부 false
  931. }
  932. function socket_OnClose(obj:ActiveX, e)
  933. {
  934. trace("socket_Close");
  935. isConnected = false; // 접속 여부 false
  936. socket.close();
  937. //발행후 재조회
  938. // fGetSlideList();
  939. }
  940. function socket_OnConnect(obj:ActiveX, e)
  941. {
  942. trace("socket_Connect!");
  943. fExeSlidSend();
  944. }
  945. //슬라이드 목록을 장비에 전송 처리 함수
  946. function fExeSlidSend()
  947. {
  948. var iMaxRowCnt = 0;
  949. var sSlidNode = ds_grd_slidlist;
  950. //--------------------------------------
  951. iMaxRowCnt = ds_grd_slidlist.rowcount;
  952. //정방향
  953. if(ds_hidden.getColumn(0, "prtndirect") == "1")
  954. {
  955. trace("정방향");
  956. for(var iRowNo = 0; iRowNo < iMaxRowCnt; iRowNo++)
  957. {
  958. if(ds_grd_slidlist.getColumn(iRowNo, "grupchoi") == "1")
  959. {
  960. sSendMsg = "";
  961. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "ptno") + "▦"; // 병리번호
  962. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "ptnodisp") + "▦"; // 표시병리번호
  963. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "spcseqno") + "▦"; // 검체일련번호
  964. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "csteno") + "▦"; // 블럭번호
  965. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "slidno") + "▦"; // 슬라이드번호
  966. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "prtnblocnm") + "▦"; // 블럭내용
  967. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "slidcnts") + "▦"; // 슬라이드내용
  968. // 전송종료여부 설정
  969. if (iRowNo == iMaxRowCnt)
  970. {
  971. sSendMsg += "Y" + "▦";
  972. }
  973. else
  974. {
  975. sSendMsg += "N" + "▦";
  976. }
  977. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "pid") + "▦"; // 환자번호
  978. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "hngnm") + "▦"; // 환자명
  979. if(ds_init.getColumn(0, "prtflag") == "0")
  980. {
  981. sSendMsg += "SM" + "▩";
  982. }
  983. else
  984. {
  985. sSendMsg += "SB" + "▩";
  986. }
  987. trace("sSendMsg(1) = " + sSendMsg);
  988. socket.sendString(sSendMsg); // 전송한다.
  989. }
  990. }
  991. }
  992. //역방향
  993. else
  994. {
  995. trace("역방향");
  996. for(var iRowNo = iMaxRowCnt -1; iRowNo >= 0; iRowNo --)
  997. {
  998. if(ds_grd_slidlist.getColumn(iRowNo, "grupchoi") == "1")
  999. {
  1000. sSendMsg += ds_grd_slidlist.getColumn(0, "ptno") + "▦"; // 병리번호
  1001. sSendMsg += ds_grd_slidlist.getColumn(0, "ptnodisp") + "▦"; // 표시병리번호
  1002. sSendMsg += ds_grd_slidlist.getColumn(0, "spcseqno") + "▦"; // 검체일련번호
  1003. sSendMsg += ds_grd_slidlist.getColumn(0, "csteno") + "▦"; // 블럭번호
  1004. sSendMsg += ds_grd_slidlist.getColumn(0, "slidno") + "▦"; // 슬라이드번호
  1005. sSendMsg += ds_grd_slidlist.getColumn(0, "prtnblocnm") + "▦"; // 블럭내용
  1006. sSendMsg += ds_grd_slidlist.getColumn(0, "slidcnts") + "▦"; // 슬라이드내용
  1007. //------------------
  1008. // 전송종료여부 설정
  1009. if (iRowNo == 1)
  1010. {
  1011. sSendMsg += "Y" + "▦";
  1012. }
  1013. else
  1014. {
  1015. sSendMsg += "N" + "▦";
  1016. }
  1017. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "pid") + "▦"; // 환자번호
  1018. sSendMsg += ds_grd_slidlist.getColumn(iRowNo, "hngnm") + "▦"; // 환자명
  1019. if(ds_init.getColumn(0, "prtflag") == "0")
  1020. {
  1021. sSendMsg += "SM" + "▩";
  1022. }
  1023. else
  1024. {
  1025. sSendMsg += "SB" + "▩";
  1026. }
  1027. trace("sSendMsg(2) = " + sSendMsg);
  1028. socket.sendString(sSendMsg); // 전송한다.
  1029. }
  1030. }
  1031. }
  1032. ds_grd_slidlist.clearData();
  1033. //----------
  1034. // 소켓 닫기
  1035. socket_OnClose();
  1036. }
  1037. function cmb_slidcnts_oncloseup(obj:Combo, e:ComboCloseUpEventInfo)
  1038. {
  1039. fSetBlocSlidCnt("C");
  1040. }
  1041. ]]></Script>
  1042. </Form>
  1043. </FDL>