SMLPP03400_처방슬라이드.xrw 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLPP03400.xrw
  4. * 설 명 : 처방 슬라이드 자동발행
  5. * 설 계 자 : (주)에이씨케이 - 유동철
  6. * 작 성 자 : (주)에이씨케이 - 유동철
  7. * 작 성 일 : 2010.11.03
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  12. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  13. <xhtml:head>
  14. <xhtml:title>처방슬라이드 발행</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <prcpinfo>
  20. <prcpinfolist>
  21. <instcd/>
  22. <ptno/>
  23. <dispptno/>
  24. <blocno/>
  25. <cstecnts/>
  26. <testcd/>
  27. <testengnm/>
  28. <prcpcmts/>
  29. <redchk/>
  30. <protocolno/>s
  31. <pid/>
  32. <patnm/>
  33. <sexage/>
  34. <orddeptnm/>
  35. <orddrnm/>
  36. <wardroom/>
  37. <grosdrnm/>
  38. <appeorddrid/>
  39. <appeorddrnm/>
  40. <dispacptdd/>
  41. <dispacpttm/>
  42. <orgacptdd/>
  43. <orgacpttm/>
  44. <acptdd/>
  45. <acptno/>
  46. <acptitemno/>
  47. <workflagcd/>
  48. <spcacptdd/>
  49. <spcacptno/>
  50. <spcacptseqno/>
  51. <spchistno/>
  52. <spccd/>
  53. </prcpinfolist>
  54. </prcpinfo>
  55. </main>
  56. <send/>
  57. <init>
  58. <ptnocode/>
  59. <fromyear/>
  60. <fromptno/>
  61. <toyear/>
  62. <toptno/>
  63. <acptfromdd/>
  64. <acpttodd/>
  65. <acptfromtm/>
  66. <acpttotm/>
  67. <readdr/>
  68. <prntstatus/>
  69. <choiblocno/>
  70. <slidetype/>
  71. <sysdt>
  72. <sysdtinfo>
  73. <sysdd/>
  74. <systm/>
  75. </sysdtinfo>
  76. </sysdt>
  77. <resncd>
  78. <resncdist>
  79. <instcd/>
  80. <baseflagcd/>
  81. <resncd/>
  82. <resncnts/>
  83. </resncdist>
  84. </resncd>
  85. <ptnocd>
  86. <ptnocdlist>
  87. <instcd/>
  88. <ptnocd/>
  89. <ptnonm/>
  90. </ptnocdlist>
  91. </ptnocd>
  92. <jobkindcd>0</jobkindcd>
  93. <userinfo>
  94. <userinfolist>
  95. <userid/>
  96. <usernm/>
  97. <jobkindcd/>
  98. </userinfolist>
  99. </userinfo>
  100. <hospenv>
  101. <hospenvinfo>
  102. <instcd/>
  103. <lendrtnterm/>
  104. <recvqualmthdcd/>
  105. <plgydeptcd/>
  106. <plgyteamcd/>
  107. <doctjobgradcd/>
  108. <teamjobgradcd/>
  109. </hospenvinfo>
  110. </hospenv>
  111. <ptnocase/>
  112. <pidno/>
  113. <prtntestnm>0</prtntestnm>
  114. <makedd/>
  115. <maketm/>
  116. <protocol>
  117. <protocollist>
  118. <protcd/>
  119. <protnm/>
  120. </protocollist>
  121. </protocol>
  122. <eqinfo>
  123. <slideqlist/>
  124. </eqinfo>
  125. <eqno/>
  126. <csteinfo>
  127. <csteinfolist>
  128. <instcd/>
  129. </csteinfolist>
  130. </csteinfo>
  131. <reprntchk/>
  132. <refcmts/>
  133. <blocyn/>
  134. <giganyn/>
  135. </init>
  136. <hidden>
  137. </hidden>
  138. </root>
  139. </instance>
  140. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  141. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  142. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  143. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  144. <script type="javascript" src="../../../lis/commonweb/js/LPZ001.js"/>
  145. <script type="javascript" ev:event="xforms-ready">
  146. <![CDATA[
  147. makeReportPreview(0, 0, 0, 0, "grp_prnt");
  148. fExeInitialize();
  149. ]]>
  150. </script>
  151. <!-- public Script end -->
  152. <submission id="TRLPZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/hospenv/hospenvinfo"/>
  153. <submission id="TRLPZ00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/sysdt/sysdtinfo"/>
  154. <submission id="TRLPZ00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/resncd/resncdlist"/>
  155. <submission id="TRLPZ00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/userinfo/userinfolist"/>
  156. <submission id="TRLPZ00109" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/ptnocd/ptnocdlist"/>
  157. <submission id="TRLPC01802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/eqinfo"/>
  158. <submission id="TRLPC03001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/protocol/protocollist"/>
  159. <submission id="TRLPP03401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/prcpinfo/prcpinfolist"/>
  160. <submission id="TRLPP03402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/csteinfo/csteinfolist"/>
  161. <submission id="TXLPP03401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/message"/>
  162. <submission id="TXLPP03402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/message"/>
  163. </model>
  164. <script type="javascript">
  165. <![CDATA[
  166. /* @group : 처방 슬라이드 발행 화면
  167. * @ver : 2010.11.03 (CMCDEV-0001)
  168. * @by : 유동철(ACK)
  169. * @-----------------------------------
  170. * @type : function
  171. * @access : public
  172. * @desc : 화면초기화 함수
  173. */
  174. function fExeInitialize() {
  175. var sCurDate = "";
  176. //----------------
  177. // 시스템일시 조회
  178. model.removeNodeset("/root/send");
  179. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
  180. submit("TRLPZ00101", false); // 병원환경설정 조회
  181. submit("TRLPZ00102", false); // 시스템 일시 조회
  182. submit("TRLPZ00109", false); // 병리번호코드 목록조회
  183. submit("TRLPC03001", false); // 프로토콜 목록조회
  184. //-----------------------------------------------
  185. model.makeValue("/root/send/baseflagcd", "'83'"); // 작업구분 목록 조회
  186. submit("TRLPZ00103", false);
  187. //--------------------------------------------------------------
  188. model.removenode("/root/init/resncd/resncdlist[resncd='1000']"); // 해당없음
  189. model.removenode("/root/init/resncd/resncdlist[resncd='1002']");
  190. model.removenode("/root/init/resncd/resncdlist[resncd='1003']"); // 세포
  191. //model.removenode("/root/init/resncd/resncdlist[resncd='1006']"); // 면역형광
  192. //model.removenode("/root/init/resncd/resncdlist[resncd='1007']"); // 분자
  193. model.removenode("/root/init/resncd/resncdlist[resncd='1008']"); // 전자현미경
  194. model.removenode("/root/init/resncd/resncdlist[resncd='1009']"); // 부검
  195. model.removenode("/root/init/resncd/resncdlist[resncd='1011']"); // 기록실
  196. model.removenode("/root/init/resncd/resncdlist[resncd='1012']"); // 골수조직
  197. model.removenode("/root/init/resncd/resncdlist[resncd='ZZZZ']"); // 전체
  198. //-------------------------------------------
  199. model.makeValue("/root/send/seaflagcd", "2"); // 슬라이드 장비 조회(0:전체, 1:카세트, 2:슬라이드)
  200. submit("TRLPC01802", false);
  201. //---------------------------------------------------------
  202. // 병원환경정보를 취득하여 병리과와 병리팀 코드를 편집한다.
  203. lpzfUserDeptCd("/root/init/hospenv/hospenvinfo", "/root/hidden");
  204. //-------------------------------------------------------------------------------------
  205. model.makeValue("/root/send/userdeptcd", model.getValue("/root/hidden/userdeptcd"));
  206. model.makeValue("/root/send/doctjobgradcd", model.getValue("/root/init/hospenv/hospenvinfo/doctjobgradcd"));
  207. model.makeValue("/root/send/teamjobgradcd", model.getValue("/root/init/hospenv/hospenvinfo/teamjobgradcd"));
  208. submit("TRLPZ00105"); // 병리과 사용자 목록 조회
  209. var iMaxRow = Number(getNodesetCount("/root/init/userinfo/userinfolist"))+1;
  210. //---------
  211. // 노드생성
  212. model.makeValue("/root/init/userinfo/userinfolist[" + Number(iMaxRow) + "]/userid", "");
  213. model.makeValue("/root/init/userinfo/userinfolist[" + Number(iMaxRow) + "]/usernm", "전체");
  214. model.makeValue("/root/init/userinfo/userinfolist[" + Number(iMaxRow) + "]/jobkindcd", "1");
  215. //------------------------------------------------------------
  216. sCurDate = model.getValue("/root/init/sysdt/sysdtinfo/sysdd");
  217. model.makeValue("/root/init/acptfromdd", model.getValue("/root/init/sysdt/sysdtinfo/sysdd")); // 접수기간(시작)
  218. model.makeValue("/root/init/acpttodd", model.getValue("/root/init/sysdt/sysdtinfo/sysdd")); // 접수기간(종료)
  219. //model.makeValue("/root/init/acptfromtm", getCurrentTime());
  220. //model.makeValue("/root/init/acpttotm", getCurrentTime());
  221. model.makeValue("/root/init/acptfromtm", "010101");
  222. model.makeValue("/root/init/acpttotm", "235959");
  223. model.makeValue("/root/init/jobkindcd", "");
  224. model.makeValue("/root/init/ptnocode", ""); // 병리번호
  225. model.makeValue("/root/init/fromyear", sCurDate.substr(2,2)); // 병리번호 시작 년도
  226. model.makeValue("/root/init/toyear", sCurDate.substr(2,2)); // 병리번호 종료 년도
  227. model.makeValue("/root/init/fromptno", ""); // 병리일련번호(시작)
  228. model.makeValue("/root/init/toptno", ""); // 병리일련번호(종료)
  229. model.makeValue("/root/init/readdr", ""); // 판독의사
  230. model.makeValue("/root/init/reprntchk", "0"); // 재발행
  231. model.makeValue("/root/init/blocyn", "0"); // 0:미지정, 1:지정, 9:전체
  232. model.makeValue("/root/init/giganyn", "1"); // 1:접수, 2:블록지정, 3:슬라이드
  233. //---------------------------------------------
  234. cmb_slideqlist.select(0);
  235. grd_workrsltlist.fixedcellcheckbox(0,1) = true; // 그리드 전체 선택버튼 활성화
  236. model.makeValue("/root/init/prntstatus", "0"); // 출력여부(0:미출력, 1:출력, 2:전체)
  237. model.makeValue("/root/init/slidetype", "0"); // 일반슬라이드(0), 면역슬라이드(1)
  238. //------------------------------------------------------
  239. model.removeNodeset("/root/main/workrslt/workrsltlist");
  240. //-------------
  241. model.refresh();
  242. }
  243. /* @group : 처방 슬라이드 발행화면
  244. * @ver : 2007.05.02 (CMCDEV-0001)
  245. * @by : 유동철(ACK)
  246. * @-----------------------------------
  247. * @type : function
  248. * @access : public
  249. * @desc : WorkList/정보 조회 함수
  250. */
  251. function fGetPrcpSlideList() {
  252. var re = / /g; // i:1회실행, g:모두실행, gi:전역실행(대소문자 안가림)
  253. var sPtNoFrom = model.getValue("/root/init/ptnofrom");
  254. var sPtNoTo = model.getValue("/root/init/ptnoto");
  255. var sJobKindCd = model.getValue("/root/init/jobkindcd");
  256. var sPid = model.getValue("/root/init/pid");
  257. var sAddPrcp = "0";
  258. var sTemp = "";
  259. var sFromDD = model.getValue("/root/init/acptfromdd");
  260. var sToDD = model.getValue("/root/init/acpttodd");
  261. var sNode = "/root/main/workrslt/workrsltlist";
  262. //-------------------------------------------------------------------------------------
  263. // 조직(특수처방만 해당:LIS.LPCMTEST테이블의 CFNM컬럼값이 '1'인 검사들만) 조회여부 검색
  264. if (sJobKindCd.indexOf("1001") > -1) {
  265. sAddPrcp = "1";
  266. sJobKindCd = sJobKindCd.setReplaceWord("1001", "0000");
  267. }
  268. //----------------------------------------------------
  269. // Regular표현식을 사용하여 공백(" ")문자를 ','로 변환
  270. sJobKindCd = "'" + sJobKindCd.replace(re, "','") + "'";
  271. if(sJobKindCd.length < 3) // 작업구분 항목 필수 선택 해야함.
  272. {
  273. messageBox("작업구분 항목을", "C002");
  274. return false;
  275. }
  276. //------------------------------------------------
  277. if (model.getValue("/root/init/ptnocode") != "") {
  278. //------------------------------------------------
  279. if (model.getValue("/root/init/fromyear") == "") {
  280. model.makeValue("/root/init/fromyear", sFromDD.substr(2,2));
  281. } else {
  282. sTemp = model.getValue("/root/init/fromyear");
  283. model.makeValue("/root/init/fromyear", sTemp.getLeftPad(2, "0"));
  284. }
  285. //----------------------------------------------
  286. if (model.getValue("/root/init/toyear") == "") {
  287. model.makeValue("/root/init/toyear", sToDD.substr(2,2));
  288. } else {
  289. sTemp = model.getValue("/root/init/toyear");
  290. model.makeValue("/root/init/toyear", sTemp.getLeftPad(2, "0"));
  291. }
  292. //------------------------------------------------
  293. if (model.getValue("/root/init/fromptno") == "") {
  294. model.makeValue("/root/init/fromptno", "000000");
  295. } else {
  296. sTemp = model.getValue("/root/init/fromptno");
  297. model.makeValue("/root/init/fromptno", sTemp.getLeftPad(6, "0"));
  298. }
  299. //----------------------------------------------
  300. if (model.getValue("/root/init/toptno") == "") {
  301. model.makeValue("/root/init/toptno", "999999");
  302. } else {
  303. sTemp = model.getValue("/root/init/toptno");
  304. model.makeValue("/root/init/toptno", sTemp.getLeftPad(6, "0"));
  305. }
  306. }
  307. //--------------------------------------------
  308. sTemp = model.getValue("/root/init/ptnocode");
  309. //--------------------------------
  310. grd_workrsltlist.rebuildStyle();
  311. model.removeNodeset("/root/send");
  312. model.removeNodeset("/root/main/prcpinfo/prcpinfolist");
  313. //-----------------------------------------------------------------
  314. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); // 기관코드
  315. model.makeValue("/root/send/ptnofrom", sPtNoFrom.toUpperCase()); // 시작병리번호
  316. model.makeValue("/root/send/ptnoto", sPtNoTo.toUpperCase()); // 종료병리번호
  317. model.makeValue("/root/send/acptfromdd", model.getValue("/root/init/acptfromdd")); // 접수시작일자
  318. model.makeValue("/root/send/acpttodd", model.getValue("/root/init/acpttodd")); // 접수종료일자
  319. model.makeValue("/root/send/acptfromtm", model.getValue("/root/init/acptfromtm")); // 접수시작시간
  320. model.makeValue("/root/send/acpttotm", model.getValue("/root/init/acpttotm")); // 접수종료시간
  321. model.makeValue("/root/send/readdr", model.getValue("/root/init/readdr")); // 판독의사
  322. model.makeValue("/root/send/jobkindcd", sJobKindCd); // 작업구분코드
  323. model.makeValue("/root/send/ptnocode", sTemp.replace("-", ""));
  324. model.makeValue("/root/send/fromyear", model.getValue("/root/init/fromyear"));
  325. model.makeValue("/root/send/fromptno", model.getValue("/root/init/fromptno"));
  326. model.makeValue("/root/send/toyear", model.getValue("/root/init/toyear"));
  327. model.makeValue("/root/send/toptno", model.getValue("/root/init/toptno"));
  328. model.makeValue("/root/send/pidno", model.getValue("/root/init/pidno")); // 등록번호
  329. model.makeValue("/root/send/addprcp", sAddPrcp); // 조직의 추가처방만 조회("1")
  330. model.makeValue("/root/send/prntstatus", model.getValue("/root/init/prntstatus")); // 출력여부(0:미출력, 1:출력, 2:전체)
  331. model.makeValue("/root/send/blocyn", model.getValue("/root/init/blocyn")); // 0:미지정, 1:지정, 9:전체)
  332. //dlwodh
  333. model.makeValue("/root/send/giganyn", model.getValue("/root/init/giganyn")); // 1:접수시각, 2:블록시각, 3:슬라이드발행시각)
  334. submit("TRLPP03401");
  335. //-------------
  336. model.refresh();
  337. }
  338. /* @group : 처방 슬라이드 발행화면
  339. * @ver : 2007.08.31 (CMCDEV-0001)
  340. * @by : 유동철(ACK)
  341. * @-----------------------------------
  342. * @type : function
  343. * @access : public
  344. * @desc : 그리드 Header의 선택을 클릭할 경우 처리 function
  345. */
  346. function fExeHeaderChoi(pBizFlagCd) {
  347. var sSrcNode = "/root/main/workrslt/workrsltlist";
  348. var sDate = getCurrentDate();
  349. var sTime = getCurrentTime();
  350. //-------------------------
  351. grd_workrsltlist.refresh();
  352. }
  353. function fExeGridClick() {
  354. var iRowNo = grd_workrsltlist.row;
  355. var iColNo = grd_workrsltlist.col;
  356. //------------------------------------------------------------------------------------------------
  357. if (iRowNo > 0 && grd_workrsltlist.isCell(event.target) && iRowNo >= grd_workrsltlist.fixedRows) {
  358. //----------------------------------------------------------------
  359. if ( grd_workrsltlist.colRef("dummy") == grd_workrsltlist.col ) {
  360. fGetMouseDown("R");
  361. }
  362. }
  363. }
  364. //-----------------------------------------
  365. // 등록번호 조회조건 입력 후 Enter Key 처리
  366. function fExePidKeyPress() {
  367. if (event.keyCode == 13) {
  368. model.makeValue("/root/init/pidno", pidno.currentText);
  369. pidno.refresh();
  370. //-------------
  371. fGetPrcpSlideList();
  372. }
  373. }
  374. /* @group : 처방 슬라이드 발행화면
  375. * @ver : 2010.11.04 (CMCDEV-0001)
  376. * @by : 유동철
  377. * @-----------------------------------
  378. * @type : function
  379. * @access : public
  380. * @desc : 슬라이드 발행
  381. */
  382. function fExeSlidePrint() {
  383. var sNode = "/root/main/prcpinfo/prcpinfolist";
  384. var sInfoNode = "/root/init/hospenv/hospenvinfo";
  385. var sEqNode = "/root/init/eqinfo/caeqlist";
  386. var sSlidBcIP = "";
  387. var sSlidBcPort = "";
  388. //-----------------------
  389. // 블럭번호 지정여부 확인
  390. for (var iRowNo=1; iRowNo <= getNodesetCount(sNode); iRowNo++) {
  391. if ( model.getValue(sNode+"["+iRowNo+"]/choi") == "true") {
  392. if ( model.getValue(sNode+"["+iRowNo+"]/blocno") == "-" || model.getValue(sNode+"["+iRowNo+"]/blocno") == "") {
  393. messageBox("블럭이 지정되지 않았습니다. 병리번호["+model.getValue(sNode+"["+iRowNo+"]/dispptno")+"] 슬라이드를 발행", "E001");
  394. return false;
  395. }
  396. }
  397. }
  398. //-----------
  399. // 장비IP set
  400. for (var iRowNo = 1 ; iRowNo <= getNodesetCount(sEqNode) ; iRowNo++){
  401. if (model.getValue("/root/init/eqno") == model.getValue(sEqNode + "["+ iRowNo +"]/eqseqno")) {
  402. sSlidBcIP = model.getValue(sEqNode + "["+ iRowNo +"]/eqip");
  403. sSlidBcPort = model.getValue(sEqNode + "["+ iRowNo +"]/eqport");
  404. break;
  405. }
  406. }
  407. //----------------------------------------
  408. if (sSlidBcIP == "" || sSlidBcIP == "-") {
  409. messageBox("장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  410. return false;
  411. }
  412. //--------------------------------------------
  413. if (sSlidBcPort == "" || sSlidBcPort == "-") {
  414. messageBox("장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  415. return false;
  416. }
  417. //-------------------------------------
  418. socket.connect(sSlidBcIP, sSlidBcPort);
  419. }
  420. /* @group : 처방 슬라이드 발행화면
  421. * @ver : 2010.11.04 (CMCDEV-0001)
  422. * @by : 유동철
  423. * @-----------------------------------
  424. * @type : function
  425. * @access : public
  426. * @desc : 슬라이드 발행
  427. */
  428. function fExeSlidSend() {
  429. var sSendMsg = "";
  430. var iMaxRowCnt = 0;
  431. var iIssRowCnt = 0;
  432. var sSlidNode = "/root/main/prcpinfo/prcpinfolist";
  433. //--------------------------------------
  434. iMaxRowCnt = getNodesetCount(sSlidNode);
  435. //-------------------
  436. // 발행대상 건수 검사
  437. for (var iRowNo=1; iRowNo <= iMaxRowCnt; iRowNo++) {
  438. //-------------------------------------------------------------------
  439. if (model.getValue(sSlidNode + "[" + iRowNo + "]/choi") == "true") {
  440. iIssRowCnt++;
  441. }
  442. }
  443. //---------------------------------------------------
  444. for (var iRowNo=1; iRowNo <= iMaxRowCnt; iRowNo++) {
  445. if (model.getValue(sSlidNode + "[" + iRowNo + "]/choi") == "true") {
  446. //----------------------------------------------------
  447. if ( model.getValue("/root/init/slidetype") == "1") { // 면역슬라이드
  448. sSendMsg = "";
  449. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/dispptno") + "▦"; // 표시병리번호
  450. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/protocolno") + "▦"; // 프로토콜번호
  451. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/cstecnts") + "▦"; // 블럭내용
  452. //---------------------------------
  453. // 0:검사명 출력, 1:프로토콜명 출력
  454. if (model.getValue(sSlidNode + "[" + iRowNo + "]/prntflagcd") == "1") {
  455. sSendMsg += model.getValue("/root/init/protocol/protocollist[protcd='" + model.getValue(sSlidNode + "[" + iRowNo + "]/protocolno") + "']/protnm") + "▦"; // 프로토콜명
  456. } else {
  457. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/testengnm") + "▦"; // 검사명
  458. }
  459. if ( model.getValue(sSlidNode+"["+iRowNo+"]/appeorddrnm") == "-" || model.getValue(sSlidNode+"["+iRowNo+"]/appeorddrnm") == "") {
  460. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/grosdrnm") + "▦"; // 육안검사의사
  461. } else {
  462. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/appeorddrnm") + "▦"; // 추가처방의사
  463. }
  464. sSendMsg += getCurrentDate() + "▦"; // 출력일자
  465. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/disprelaptno") + "▩"; // 관련병리번호
  466. }
  467. else {
  468. sSendMsg = "";
  469. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/ptno") + "▦"; // 병리번호
  470. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/dispptno") + "▦"; // 표시병리번호
  471. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/spcacptseqno") + "▦"; // 검체일련번호
  472. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/blocno") + "▦"; // 블럭번호
  473. sSendMsg += "000▦"; // 슬라이드번호
  474. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/cstecnts") + "▦"; // 블럭내용
  475. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/testengnm") + "▦"; // 슬라이드내용
  476. //------------------
  477. // 전송종료여부 설정
  478. if (iRowNo == iIssRowCnt) {
  479. sSendMsg += "Y" + "▦";
  480. } else {
  481. sSendMsg += "N" + "▦";
  482. }
  483. //--------------------------------------------------------------
  484. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/pid") + "▦"; // 환자번호
  485. sSendMsg += model.getValue(sSlidNode+"["+iRowNo+"]/patnm") + "▦"; // 환자명
  486. //--------------------
  487. //sSendMsg += "-"+ "▦"; // 관련병리번호
  488. sSendMsg += "B" + "▩";
  489. }
  490. //--------------------------
  491. socket.sendString(sSendMsg); // 전송한다.
  492. }
  493. }
  494. //----------
  495. // 소켓 닫기
  496. socket.close();
  497. //------------------------------------------------
  498. // 발행된 슬라이드에 대한 슬라이드정보를 생성한다.
  499. var sNode = "/root/main/prcpinfo/prcpinfolist";
  500. //--------------------
  501. // 그리드 상태 초기화
  502. grd_workrsltlist.clearStatus();
  503. //---------------------------------------
  504. // 선택여부에 따라 그리드 변경상태를 설정
  505. for (var iRowNo=1; iRowNo <= getNodesetCount(sNode); iRowNo++)
  506. {
  507. //------------------------------------------------------
  508. if (model.getValue(sNode+"["+iRowNo+"]/choi") == "true")
  509. {
  510. grd_workrsltlist.addStatus(iRowNo, "update");
  511. }
  512. }
  513. //---------------------------------
  514. model.removeNodeset("/root/send");
  515. //------------------------------------------------------------------
  516. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); // 기관코드
  517. model.makeValue("/root/send/prcplist", grd_workrsltlist.getUpdateData()); // 처방목록
  518. //----------------------------------------------------
  519. if ( model.getValue("/root/init/reprntchk") == "0") {
  520. //------------------------
  521. if (submit("TXLPP03402"))
  522. {
  523. fGetPrcpSlideList();
  524. } else
  525. {
  526. messageBox("슬라이드 발행을 ", "E009");
  527. }
  528. }
  529. }
  530. /* @group : 처방 슬라이드 발행화면
  531. * @ver : 2010.11.04 (CMCDEV-0001)
  532. * @by : 유동철
  533. * @-----------------------------------
  534. * @type : function
  535. * @access : public
  536. * @desc : 병리번호에 속하는 블럭번호 목록 표시(팝업)
  537. */
  538. function fGetMouseDown(pFlagCd)
  539. {
  540. var sNode = "/root/init/popupmenu";
  541. var listNo = grd_workrsltlist.mouseRow;
  542. //-------------------------
  543. model.removeNodeset(sNode);
  544. initPopupMenu(); // 팝업 메뉴 선택시 초기화
  545. //----------------------------------
  546. if (event.button == 3 && listNo > 0) // 마우스 우클릭 메뉴 & 부가처방일 경우 조회 안됨.
  547. {
  548. model.removeNodeset("/root/send");
  549. model.removeNodeset("/root/init/csteinfo/csteinfolist");
  550. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
  551. //----------------------------------------------------------------------------
  552. if ( grd_workrsltlist.mouseCol == grd_workrsltlist.colRef("disprelaptno") ) {
  553. model.makeValue("/root/send/ptno", model.getValue("/root/main/prcpinfo/prcpinfolist[" + listNo + "]/relaptno"));
  554. } else {
  555. model.makeValue("/root/send/ptno", model.getValue("/root/main/prcpinfo/prcpinfolist[" + listNo + "]/ptno"));
  556. }
  557. submit("TRLPP03402");
  558. //-----------------------------------------------------------------------------------
  559. for (var iNo=1; iNo <= getNodesetCount("/root/init/csteinfo/csteinfolist"); iNo++) {
  560. model.makeValue(sNode+"/grid/item[" + iNo + "]/name", model.getValue("/root/init/csteinfo/csteinfolist["+iNo+"]/cstecnts"));
  561. model.makeValue(sNode+"/grid/item[" + iNo + "]/func", iNo);
  562. }
  563. //---------------------------------------------------
  564. model.makeValue("/root/init/gridinfo/rowno", listNo);
  565. setPopupMenu("grd_workrsltlist", true, sNode+"/grid/item", "name", "func");
  566. }
  567. }
  568. /* @group : 처방 슬라이드 발행화면
  569. * @ver : 2010.11.04 (CMCDEV-0001)
  570. * @by : 유동철
  571. * @-----------------------------------
  572. * @type : function
  573. * @access : public
  574. * @desc : 병리번호의 블럭번호 선택
  575. */
  576. function fExePopupClick(pRowNo) {
  577. var sNode = "/root/main/prcpinfo/prcpinfolist";
  578. var sCsteNode = "/root/init/csteinfo/csteinfolist";
  579. var iRowNo = Number(model.getValue("/root/init/gridinfo/rowno"));
  580. //-----------------------------------------------------------------
  581. for (var iRowNo = 1; iRowNo <= getNodesetCount(sNode); iRowNo++) {
  582. if ( model.getValue(sNode+"["+iRowNo+"]/choi") == "true") {
  583. model.makeValue(sNode + "[" + iRowNo + "]/blocno", model.getValue(sCsteNode + "[" + pRowNo + "]/csteno"));
  584. model.makeValue(sNode + "[" + iRowNo + "]/cstecnts", model.getValue(sCsteNode + "[" + pRowNo + "]/cstecnts"));
  585. model.makeValue(sNode + "[" + iRowNo + "]/spcacptdd", model.getValue(sCsteNode + "[" + pRowNo + "]/spcacptdd"));
  586. model.makeValue(sNode + "[" + iRowNo + "]/spcacptno", model.getValue(sCsteNode + "[" + pRowNo + "]/spcacptno"));
  587. model.makeValue(sNode + "[" + iRowNo + "]/spcacptseqno", model.getValue(sCsteNode + "[" + pRowNo + "]/spcacptseqno"));
  588. model.makeValue(sNode + "[" + iRowNo + "]/spchistno", model.getValue(sCsteNode + "[" + pRowNo + "]/spchistno"));
  589. model.makeValue(sNode + "[" + iRowNo + "]/spccd", model.getValue(sCsteNode + "[" + pRowNo + "]/spccd"));
  590. }
  591. }
  592. //--------------
  593. model.refresh();
  594. }
  595. /* @group : 처방 슬라이드 발행화면
  596. * @ver : 2010.11.04 (CMCDEV-0001)
  597. * @by : 유동철
  598. * @-----------------------------------
  599. * @type : function
  600. * @access : public
  601. * @desc : 처방에 블럭번호 지정
  602. */
  603. function fExeCsteSave() {
  604. var sNode = "/root/main/prcpinfo/prcpinfolist";
  605. //--------------------
  606. // 그리드 상태 초기화
  607. grd_workrsltlist.clearStatus();
  608. //-------------------------------------
  609. // 선택여부에 따라 그리드 변경상태를 설정
  610. for (var iRowNo=1; iRowNo <= getNodesetCount(sNode); iRowNo++)
  611. {
  612. //------------------------------------------------------
  613. if (model.getValue(sNode+"["+iRowNo+"]/choi") == "true")
  614. {
  615. grd_workrsltlist.addStatus(iRowNo, "update");
  616. }
  617. }
  618. //---------------------------------
  619. model.removeNodeset("/root/send");
  620. //------------------------------------------------------------------
  621. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); // 기관코드
  622. model.makeValue("/root/send/prcplist", grd_workrsltlist.getUpdateData()); // 처방목록
  623. //------------------------
  624. if (submit("TXLPP03401"))
  625. {
  626. fGetPrcpSlideList();
  627. } else
  628. {
  629. messageBox("블럭지정을 ", "E009");
  630. }
  631. }
  632. /* @group : 처방 슬라이드 발행화면
  633. * @ver : 2010.11.08 (CMCDEV-0001)
  634. * @by : 유동철
  635. * @-----------------------------------
  636. * @type : function
  637. * @access : public
  638. * @desc : 처방에 블럭번호 지정(일괄)
  639. */
  640. function fExeBlockChoi() {
  641. var sNode = "/root/main/prcpinfo/prcpinfolist";
  642. //------------------------------------------------------
  643. for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
  644. //-----------------------------------------------------------
  645. if ( model.getValue(sNode+"[" + iNo + "]/choi") == "true") {
  646. model.makeValue(sNode + "[" + iNo + "]/blocno", model.getValue("/root/init/choiblocno"));
  647. model.makeValue(sNode + "[" + iNo + "]/cstecnts", cbo_block.label);
  648. }
  649. }
  650. //--------------
  651. model.refresh();
  652. }
  653. /* @group : 처방 슬라이드 발행화면
  654. * @ver : 2010.12.09 (CMCDEV-0001)
  655. * @by : 유동철
  656. * @-----------------------------------
  657. * @type : function
  658. * @access : public
  659. * @desc : 추가처방목록 출력
  660. */
  661. function fExeWorkListPrnt2() {
  662. if ( getNodesetCount("/root/main/prcpinfo/prcpinfolist") > 0) {
  663. exeReportPreview("RPLPP03400", "XMLSTR", "", "", "true", "", "", "", "", "false", "", "grp_prnt");
  664. }
  665. }
  666. ]]>
  667. </script>
  668. </xhtml:head>
  669. <xhtml:body overflow="visible" guideline="2,791;2,756;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  670. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  671. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:200; height:14px; ">처방 슬라이드 발행</caption>
  672. </group>
  673. <group id="grp_biz" style="left:0px; top:40px; width:1195px; height:765px; ">
  674. <group id="grp_sea" style="left:0px; top:10px; width:1194px; height:60px; vertical-align:top; ">
  675. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1193px; height:59px; background-color:#fffbf2; border-color:#ffd799; "/>
  676. <caption id="caption2" class="search_name" style="left:422px; top:9px; width:90px; height:17px; ">기 간 :</caption>
  677. <caption id="caption3" class="search_name" style="left:15px; top:9px; width:90px; height:17px; ">병리번호 :</caption>
  678. <line id="line13" class="line_4" style="x1:1107px; y1:8px; x2:1107px; y2:51px; "/>
  679. <caption id="caption34" class="search_no_b" style="left:687px; top:9px; width:12px; height:17px; ">~</caption>
  680. <caption id="caption5" class="search_name" style="left:909; top:9px; width:86px; height:17px; ">판독의사 :</caption>
  681. <caption id="caption1" class="search_name" style="left:15px; top:34px; width:90px; height:17px; ">작업구분 :</caption>
  682. <input id="ipt_acptddfrom" ref="/root/init/acptfromdd" class="input_s_essential" navindex="6" inputtype="date" style="left:514px; top:8px; width:100px; height:19px; ">
  683. <script type="javascript" ev:event="xforms-value-changed">
  684. <![CDATA[
  685. // 조회조건에서 접수일자를 2007년으로 바꾸었을 경우 병리번호 자동으로 07로 바뀌지 않도록 요청
  686. //lpzfExeDateChange(ipt_fromyear, "/root/init/acptfromdd", "/root/init/fromyear");
  687. ]]>
  688. </script>
  689. </input>
  690. <input id="ipt_acptddto" ref="/root/init/acpttodd" class="input_s_essential" navindex="7" inputtype="date" style="left:710px; top:8px; width:100px; height:19px; ">
  691. <script type="javascript" ev:event="xforms-value-changed">
  692. <![CDATA[
  693. // 조회조건에서 접수일자를 2007년으로 바꾸었을 경우 병리번호 자동으로 07로 바뀌지 않도록 요청
  694. //lpzfExeDateChange(ipt_toyear, "/root/init/acpttodd", "/root/init/toyear");
  695. ]]>
  696. </script>
  697. </input>
  698. <select1 id="cmb_grostestdr" ref="/root/init/readdr" class="combo_search" navindex="9" appearance="minimal" style="left:998; top:8px; width:94px; height:19px; ">
  699. <choices>
  700. <itemset nodeset="/root/init/userinfo/userinfolist[jobkindcd='1']">
  701. <label ref="usernm"/>
  702. <value ref="userid"/>
  703. </itemset>
  704. </choices>
  705. </select1>
  706. <select id="cbo_slipkindcd" ref="/root/init/jobkindcd" class="check_search" navindex="10" overflow="visible" appearance="full" cellspacing="10" cols="20" style="left:108px; top:34px; width:507px; height:20px; border-style:none; ">
  707. <choices>
  708. <itemset nodeset="/root/init/resncd/resncdlist">
  709. <label ref="resncnts"/>
  710. <value ref="resncd"/>
  711. </itemset>
  712. </choices>
  713. <script type="javascript" ev:event="xforms-value-changed">
  714. <![CDATA[
  715. ]]>
  716. </script>
  717. </select>
  718. <select1 id="cbo_ptnocd" ref="/root/init/ptnocode" navindex="1" appearance="minimal" editmode="search" style="left:109px; top:8px; width:91px; height:19px; ">
  719. <choices>
  720. <itemset nodeset="/root/init/ptnocd/ptnocdlist">
  721. <label ref="ptnonm"/>
  722. <value ref="ptnocd"/>
  723. </itemset>
  724. </choices>
  725. </select1>
  726. <input id="ipt_fromptno" ref="/root/init/fromptno" class="text_center" navindex="3" maxlength="6" style="left:233px; top:8px; width:50px; height:19px; "/>
  727. <caption id="caption4" class="search_no_b" style="left:286px; top:8px; width:12px; height:17px; ">~</caption>
  728. <input id="input1" ref="/root/init/toptno" class="text_center" navindex="5" maxlength="6" style="left:331px; top:8px; width:50px; height:19px; "/>
  729. <input id="ipt_fromyear" ref="/root/init/fromyear" class="text_center" navindex="2" maxlength="2" style="left:203px; top:8px; width:27px; height:19px; "/>
  730. <input id="ipt_toyear" ref="/root/init/toyear" class="text_center" navindex="4" maxlength="2" style="left:301px; top:8px; width:27px; height:19px; "/>
  731. <button id="btn_sea" accesskey="f4" class="btn1_letter2" navindex="11" style="left:1123px; top:19px; width:56px; height:22px; ">
  732. <caption>조회</caption>
  733. <script type="javascript" ev:event="DOMActivate">
  734. <![CDATA[
  735. fGetPrcpSlideList();
  736. ]]>
  737. </script>
  738. </button>
  739. <input id="ipt_acpttmfrom" ref="/root/init/acptfromtm" class="input_s_essential" navindex="6" format="hh:nn:ss" style="left:617px; top:8px; width:60px; height:19px; ">
  740. <script type="javascript" ev:event="xforms-value-changed">
  741. <![CDATA[
  742. // 조회조건에서 접수일자를 2007년으로 바꾸었을 경우 병리번호 자동으로 07로 바뀌지 않도록 요청
  743. //lpzfExeDateChange(ipt_fromyear, "/root/init/acptfromdd", "/root/init/fromyear");
  744. ]]>
  745. </script>
  746. </input>
  747. <input id="ipt_acpttmto" ref="/root/init/acpttotm" class="input_s_essential" navindex="7" format="hh:nn:ss" style="left:813px; top:8px; width:60px; height:19px; ">
  748. <script type="javascript" ev:event="xforms-value-changed">
  749. <![CDATA[
  750. // 조회조건에서 접수일자를 2007년으로 바꾸었을 경우 병리번호 자동으로 07로 바뀌지 않도록 요청
  751. //lpzfExeDateChange(ipt_fromyear, "/root/init/acptfromdd", "/root/init/fromyear");
  752. ]]>
  753. </script>
  754. </input>
  755. <select1 id="combo1" ref="/root/init/prntstatus" class="combo_search" navindex="10" appearance="minimal" style="left:998px; top:34px; width:94px; height:19px; ">
  756. <choices>
  757. <item>
  758. <label>미출력</label>
  759. <value>0</value>
  760. </item>
  761. <item>
  762. <label>출력</label>
  763. <value>1</value>
  764. </item>
  765. <item>
  766. <label>전체</label>
  767. <value>2</value>
  768. </item>
  769. </choices>
  770. <script type="javascript" ev:event="xforms-value-changed">
  771. <![CDATA[
  772. // if (model.getValue("/root/init/prntstatus") == "0") {
  773. // btn_save.disabled = false;
  774. // btn_cstesave.disabled = false;
  775. // } else {
  776. // btn_save.disabled = true;
  777. // btn_cstesave.disabled = true;
  778. // }
  779. //--------------
  780. model.refresh();
  781. ]]>
  782. </script>
  783. </select1>
  784. <caption id="caption10" class="search_name" style="left:909px; top:34px; width:86px; height:17px; ">출력여부</caption>
  785. <input id="pidno" ref="/root/init/pidno" style="left:773px; top:34px; width:100px; height:19px; ">
  786. <script type="javascript" ev:event="onkeypress">
  787. <![CDATA[
  788. fExePidKeyPress();
  789. ]]>
  790. </script>
  791. </input>
  792. <caption id="caption8" class="search_name" style="left:680px; top:34px; width:94px; height:17px; ">등록번호 :</caption>
  793. </group>
  794. <line id="line4" class="line_1" style="x1:0px; y1:95px; x2:1194px; y2:95px; "/>
  795. <caption id="caption9" class="tit_2" style="left:5px; top:80px; width:139px; height:14px; ">처방목록</caption>
  796. <datagrid id="grd_workrsltlist" nodeset="/root/main/prcpinfo/prcpinfolist" class="datagrid2" autoresize="false" caption="선택^instcd^ptno^병리번호^블럭번호^블럭명^relaptno^관련병리번호^testcd^검사명^비고^비고^프로토콜^등록번호^환자명^성별/나이^처방과^처방의^병동/병실^육안의사^추가처방의ID^추가처방의명^접수일자^접수시간^orgacptdd^orgacpttm^acptdd^acptno^acptitemno^workflagcd^^^^^^^블록지정시각^슬라이드발행시각" colsep="^" colwidth="48, 0, 0, 80, 0, 89, 0, 90, 0, 140, 60, 40, 126, 80, 80, 60, 70, 70, 60, 60, 0, 60, 80, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,80,80" dataheight="23" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" navindex="12" style="left:0px; top:100px; width:1194px; height:630px; ">
  797. <col ref="choi" type="checkbox"/>
  798. <col ref="instcd"/>
  799. <col ref="ptno"/>
  800. <col ref="dispptno"/>
  801. <col ref="blocno"/>
  802. <col ref="cstecnts"/>
  803. <col ref="relaptno"/>
  804. <col ref="disprelaptno"/>
  805. <col ref="testcd"/>
  806. <col ref="testengnm"/>
  807. <col ref="prcpcmts" type="inputbutton" style="text-align:center; "/>
  808. <col ref="redchk" type="inputbutton" visibility="hidden"/>
  809. <col itemcount="20" ref="protocolno" type="combo">
  810. <choices>
  811. <itemset nodeset="/root/init/protocol/protocollist">
  812. <label ref="protnm"/>
  813. <value ref="protcd"/>
  814. </itemset>
  815. </choices>
  816. </col>
  817. <col ref="pid"/>
  818. <col ref="patnm"/>
  819. <col ref="sexage"/>
  820. <col ref="orddeptnm"/>
  821. <col ref="orddrnm"/>
  822. <col ref="wardroom"/>
  823. <col ref="grosdrnm"/>
  824. <col ref="appeorddrid"/>
  825. <col ref="appeorddrnm"/>
  826. <col ref="dispacptdd"/>
  827. <col ref="dispacpttm"/>
  828. <col ref="orgacptdd"/>
  829. <col ref="orgacpttm"/>
  830. <col ref="acptdd"/>
  831. <col ref="acptno"/>
  832. <col ref="acptitemno"/>
  833. <col ref="workflagcd"/>
  834. <col ref="spcacptdd"/>
  835. <col ref="spcacptno"/>
  836. <col ref="spcacptseqno"/>
  837. <col ref="spchistno"/>
  838. <col ref="spccd"/>
  839. <col ref="prntflagcd" visibility="hidden"/>
  840. <script type="javascript" ev:event="onaftersort">
  841. <![CDATA[
  842. grd_workrsltlist.gridToInstance();
  843. grd_workrsltlist.rebuild();
  844. grd_workrsltlist.refresh();
  845. ]]>
  846. </script>
  847. <script type="javascript" ev:event="xforms-select">
  848. <![CDATA[
  849. fExeHeaderChoi("S");
  850. ]]>
  851. </script>
  852. <script type="javascript" ev:event="xforms-deselect">
  853. <![CDATA[
  854. fExeHeaderChoi("D");
  855. ]]>
  856. </script>
  857. <script type="javascript" ev:event="onclick">
  858. <![CDATA[
  859. //fExeGridClick();
  860. ]]>
  861. </script>
  862. <script type="javascript" ev:event="onmousedown">
  863. <![CDATA[
  864. fGetMouseDown("P");
  865. ]]>
  866. </script>
  867. <script type="javascript" ev:event="DOMFocusOut">
  868. <![CDATA[
  869. window.setPopupMenu(false);
  870. ]]>
  871. </script>
  872. <script type="javascript" ev:event="onbuttonclick">
  873. <![CDATA[
  874. model.makeValue("/root/init/refcmts", model.getValue("/root/main/prcpinfo/prcpinfolist["+ grd_workrsltlist.row + "]/prcpcmts") );
  875. txt_refcmts.refresh();
  876. grp_refcmts.visible = true;
  877. ]]>
  878. </script>
  879. <col ref="mig"/>
  880. <col ref="prtnblocnm"/>
  881. </datagrid>
  882. <input id="ipt_makedd" ref="/root/init/makedd" visibility="hidden" inputtype="date" format="yyyy-mm-dd" showmask="true" appearance="input" style="left:509px; top:75px; width:90px; height:19px; ">
  883. <script type="javascript" ev:event="xforms-value-changed">
  884. <![CDATA[
  885. fChangeMakeDT("DD");
  886. ]]>
  887. </script>
  888. </input>
  889. <input id="ipt_maketm" ref="/root/init/maketm" visibility="hidden" format="hh:nn:ss" showmask="true" style="left:600px; top:75px; width:70px; height:19px; ">
  890. <script type="javascript" ev:event="xforms-value-changed">
  891. <![CDATA[
  892. fChangeMakeDT("TM");
  893. ]]>
  894. </script>
  895. </input>
  896. <object id="socket" clsid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visibility="hidden" style="left:765px; top:65px; width:35px; height:30px; ">
  897. <!-- 소켓 받은 메시지 이벤트 -->
  898. <script type="javascript" ev:event="OnReceive(nDataLength, szID)">
  899. <![CDATA[
  900. ]]>
  901. </script>
  902. <!-- 소켓 에러 이벤트 -->
  903. <script type="javascript" ev:event="OnError(lError, szMsg)">
  904. <![CDATA[
  905. alert("Error code = " + lError+"\nError Message : "+szMsg);
  906. socket.close(); // 소켓 닫기
  907. isConnected = false; // 접속 여부 false
  908. ]]>
  909. </script>
  910. <!-- 소켓 연결 이벤트 -->
  911. <script type="javascript" ev:event="OnConnect(szID)">
  912. <![CDATA[
  913. fExeSlidSend();
  914. ]]>
  915. </script>
  916. <!-- 소켓 close 이벤트 -->
  917. <script type="javascript" ev:event="OnClose(szID)">
  918. <![CDATA[
  919. isConnected = false; // 접속 여부 false
  920. ]]>
  921. </script>
  922. </object>
  923. <select1 id="cbo_block" ref="/root/init/choiblocno" class="combo_search" navindex="10" appearance="minimal" style="left:148px; top:75px; width:90; height:19px; ">
  924. <choices>
  925. <item>
  926. <label>NON</label>
  927. <value>000</value>
  928. </item>
  929. </choices>
  930. <script type="javascript" ev:event="xforms-select">
  931. <![CDATA[
  932. fExeBlockChoi();
  933. ]]>
  934. </script>
  935. </select1>
  936. <select1 id="cbo_slidetype" ref="/root/init/slidetype" class="combo_search" navindex="10" appearance="minimal" style="left:1060px; top:75px; width:134px; height:19px; ">
  937. <choices>
  938. <item>
  939. <label>일반슬라이드</label>
  940. <value>0</value>
  941. </item>
  942. <item>
  943. <label>면역슬라이드</label>
  944. <value>1</value>
  945. </item>
  946. </choices>
  947. </select1>
  948. <caption id="caption11" style="left:980px; top:76px; width:80px; height:20px; ">슬라이드 종류</caption>
  949. <group id="grp_prnt" visibility="hidden" style="left:750px; top:165px; width:380px; height:570px; "/>
  950. <group id="grp_refcmts" visibility="hidden" style="left:490px; top:200px; width:685px; height:180; border-color:#ff0000; border-width:1px; border-style:solid; ">
  951. <textarea id="txt_refcmts" ref="/root/init/refcmts" style="left:0px; top:0px; width:682; height:150px; font-family:굴림체; font-size:12pt; font-weight:bold; "/>
  952. <button id="btn_refcmts" accesskey="f2" class="btn4_letter2" navindex="15" style="left:626px; top:152px; width:56px; height:22px; ">
  953. <caption>적용</caption>
  954. <script type="javascript" ev:event="DOMActivate">
  955. <![CDATA[
  956. model.makeValue("/root/main/prcpinfo/prcpinfolist["+ grd_workrsltlist.row + "]/prcpcmts", model.getValue("/root/init/refcmts") );
  957. model.makeValue("/root/main/prcpinfo/prcpinfolist["+ grd_workrsltlist.row + "]/redchk", model.getValue("/root/init/refcmts") );
  958. grd_workrsltlist.refresh();
  959. grp_refcmts.visible = false;
  960. ]]>
  961. </script>
  962. </button>
  963. </group>
  964. </group>
  965. <group id="grp_btn" style="left:0px; top:13; width:1195px; height:27px; ">
  966. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  967. <button id="btn_excel" accesskey="f9" class="btn6_letter5" navindex="13" style="left:5px; top:3px; width:92px; height:22px; ">
  968. <caption>EXCEL저장</caption>
  969. <script type="javascript" ev:event="DOMActivate">
  970. <![CDATA[
  971. grd_workrsltlist.colHidden(0) = true;
  972. lpzfExeSaveToExcel(grd_workrsltlist, "처방 슬라이드");
  973. grd_workrsltlist.colHidden(0) = false;
  974. ]]>
  975. </script>
  976. </button>
  977. <button id="btn_save" accesskey="f2" class="btn4_letter2" navindex="15" style="left:1055px; top:3px; width:56px; height:22px; ">
  978. <caption>발행</caption>
  979. <script type="javascript" ev:event="DOMActivate">
  980. <![CDATA[
  981. fExeSlidePrint();
  982. ]]>
  983. </script>
  984. </button>
  985. <caption id="caption7" class="cell_1" style="left:850px; top:4px; width:65px; height:19px; text-align:left; vertical-align:middle; padding-left:10px; ">출력장비</caption>
  986. <select1 id="cmb_slideqlist" ref="/root/init/eqno" appearance="minimal" style="left:917px; top:4px; width:134px; height:19px; ">
  987. <choices>
  988. <itemset nodeset="/root/init/eqinfo/caeqlist">
  989. <label ref="eqnm"/>
  990. <value ref="eqseqno"/>
  991. </itemset>
  992. </choices>
  993. </select1>
  994. <button id="btn_cstesave" class="btn4_letter4" navindex="8" style="left:1114px; top:3px; width:80px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
  995. <caption>블럭지정</caption>
  996. <script type="javascript" ev:event="DOMActivate">
  997. <![CDATA[
  998. fExeCsteSave();
  999. ]]>
  1000. </script>
  1001. </button>
  1002. <button id="button2" class="btn6_letter2" navindex="14" visibility="visible" style="left:100px; top:3px; width:56px; height:22px; ">
  1003. <caption>출력</caption>
  1004. <script type="javascript" ev:event="DOMActivate">
  1005. <![CDATA[
  1006. fExeWorkListPrnt2();
  1007. ]]>
  1008. </script>
  1009. </button>
  1010. <bool id="bool_reprntchk" checkvalue="1,0" ref="/root/init/reprntchk" style="left:707px; top:5px; width:20px; height:20px; "/>
  1011. <caption id="caption12" style="left:727px; top:5px; width:80px; height:20px; ">재발행</caption>
  1012. <select1 id="combo2" ref="/root/init/blocyn" appearance="minimal" style="left:777px; top:4px; width:70px; height:19px; ">
  1013. <choices>
  1014. <item>
  1015. <label>미지정</label>
  1016. <value>0</value>
  1017. </item>
  1018. <item>
  1019. <label>지정</label>
  1020. <value>1</value>
  1021. </item>
  1022. <item>
  1023. <label>전체</label>
  1024. <value>9</value>
  1025. </item>
  1026. </choices>
  1027. </select1>
  1028. <caption id="caption13" style="left:455px; top:5px; width:80px; height:20px; ">조회구분</caption>
  1029. <select1 id="combo3" ref="/root/init/giganyn" appearance="minimal" style="left:515px; top:5px; width:105px; height:19px; ">
  1030. <choices>
  1031. <item>
  1032. <label>접수시간</label>
  1033. <value>1</value>
  1034. </item>
  1035. <item>
  1036. <label>블록지정</label>
  1037. <value>2</value>
  1038. </item>
  1039. <item>
  1040. <label>슬라이드</label>
  1041. <value>3</value>
  1042. </item>
  1043. </choices>
  1044. </select1>
  1045. </group>
  1046. <script type="javascript" ev:event="onmenu">
  1047. <![CDATA[
  1048. fExePopupClick(event.description);
  1049. ]]>
  1050. </script>
  1051. </xhtml:body>
  1052. </xhtml:html>