SMMNW09000_CAPD기록.xrw 96 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <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">
  4. <xhtml:head>
  5. <xhtml:title>CAPD기록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <cond>
  11. <wardcd/>
  12. <roomcd/>
  13. <roomnm/>
  14. <patnm/>
  15. <pid/>
  16. <sa/>
  17. <recdd/>
  18. <frstdd/>
  19. <lastdd/>
  20. <patnum/>
  21. <userid/>
  22. <usernm/>
  23. <settingrnid/>
  24. <etcprcplabel/>
  25. <etcconcenlabel/>
  26. </cond>
  27. <recordlist>
  28. <list>
  29. <wardcd/>
  30. <roomcd/>
  31. <patnm/>
  32. <pid/>
  33. <recdd/>
  34. <rectm/>
  35. <prcpcd/>
  36. <pdprcpcd/>
  37. <concencd/>
  38. <timscd/>
  39. <injdd/>
  40. <injtm/>
  41. <injamtval/>
  42. <dragdd/>
  43. <dragtm/>
  44. <dragamtval/>
  45. <diff/>
  46. <subtotal/>
  47. <cmt/>
  48. <recseq/>
  49. <pdetcprcpnm/>
  50. <etcconcennm/>
  51. <lastupdtrid/>
  52. <status/>
  53. </list>
  54. </recordlist>
  55. <infolist>
  56. <list>
  57. <wardcd/>
  58. <roomcd/>
  59. <patnm/>
  60. <pid/>
  61. <recdd/>
  62. <rectm/>
  63. <prcpcd/>
  64. <pdprcpcd/>
  65. <concencd/>
  66. <timscd/>
  67. <injdd/>
  68. <injtm/>
  69. <injamtval/>
  70. <dragdd/>
  71. <dragtm/>
  72. <dragamtval/>
  73. <diff/>
  74. <subtotal/>
  75. <cmt/>
  76. <recseq/>
  77. <pdetcprcpnm/>
  78. <etcconcennm/>
  79. <lastupdtrid/>
  80. </list>
  81. </infolist>
  82. <bpid/>
  83. <patinfo>
  84. <patlist>
  85. <roomcd/>
  86. <patnm/>
  87. </patlist>
  88. </patinfo>
  89. <menuitems>
  90. <item>
  91. <name>CAPD기록 삭제</name>
  92. <func>fCapdDel</func>
  93. </item>
  94. <item>
  95. <name>CAPD기록 수정</name>
  96. <func>fCapdUpt</func>
  97. </item>
  98. </menuitems>
  99. </main>
  100. <send>
  101. <reqdata/>
  102. </send>
  103. <init>
  104. <getwardlist>
  105. <wardlist/>
  106. </getwardlist>
  107. <getwardroomlist>
  108. <roomlist/>
  109. <settingrn>
  110. <settingrnnm/>
  111. <settingrnid/>
  112. </settingrn>
  113. </getwardroomlist>
  114. <getwardpatinfo>
  115. <patlist/>
  116. </getwardpatinfo>
  117. <recordlist>
  118. <list>
  119. <wardcd/>
  120. <roomcd/>
  121. <patnm/>
  122. <pid/>
  123. <recdd/>
  124. <rectm/>
  125. <prcpcd/>
  126. <pdprcpcd/>
  127. <concencd/>
  128. <timscd/>
  129. <injdd/>
  130. <injtm/>
  131. <injamtval/>
  132. <dragdd/>
  133. <dragtm/>
  134. <dragamtval/>
  135. <diff/>
  136. <subtotal/>
  137. <cmt/>
  138. <recseq/>
  139. <pdetcprcpnm/>
  140. <etcconcennm/>
  141. <lastupdtrid/>
  142. <status/>
  143. </list>
  144. </recordlist>
  145. <infolist>
  146. <list>
  147. <wardcd/>
  148. <roomcd/>
  149. <patnm/>
  150. <pid/>
  151. <recdd/>
  152. <rectm/>
  153. <prcpcd/>
  154. <pdprcpcd/>
  155. <concencd/>
  156. <timscd/>
  157. <injdd/>
  158. <injtm/>
  159. <injamtval/>
  160. <dragdd/>
  161. <dragtm/>
  162. <dragamtval/>
  163. <diff/>
  164. <subtotal/>
  165. <cmt/>
  166. <recseq/>
  167. <pdetcprcpnm/>
  168. <etcconcennm/>
  169. <lastupdtrid/>
  170. </list>
  171. </infolist>
  172. <dialliqd>
  173. <list>
  174. <prcpcd/>
  175. <prcpnm/>
  176. </list>
  177. </dialliqd>
  178. <M0561list>
  179. </M0561list>
  180. <M0562list/>
  181. </init>
  182. <temp>
  183. <paminfo/>
  184. </temp>
  185. <hidden>
  186. <recordlist/>
  187. </hidden>
  188. </root>
  189. </instance>
  190. <script type="javascript">
  191. <![CDATA[
  192. var orgPrcpcd=new Array(); //원처방코드
  193. function fInit() {
  194. //** 상단환자 화면설정 **//
  195. var node = getGlobalVariable("paminfo");
  196. setCSVToNode("/root/temp/paminfo", node);
  197. if(getNodesetCount("/root/temp/paminfo/list") > 0) {
  198. // 첫번째 그리드 삭제하기
  199. model.removeNodeset("/root/main/recordlist");
  200. model.makeNode("/root/main/recordlist");
  201. // 두번째 그리드 삭제하기
  202. model.removeNodeset("/root/main/infolist");
  203. model.makeNode("/root/main/infolist");
  204. //세번째 그리드 삭제하기
  205. model.removeNodeset("/root/main/patinfo");
  206. //조건 초기화
  207. model.resetInstanceNode("/root/main/cond");
  208. model.setValue("/root/main/cond/recdd", getCurrentDate());
  209. model.setValue("/root/main/cond/userid", getUserId());
  210. model.setValue("/root/main/cond/usernm", getUserName());
  211. // 공통코드 가져오기
  212. zbcfGetCodeList( new Array ( "M0561" // 농도 , "M0562" 횟차제외
  213. )
  214. , new Array ( "/root/init/M0561list" //, "/root/init/M0562list"
  215. )
  216. );
  217. //병동 리스트
  218. submit("TRMNW09001");
  219. var wardcd = model.getValue("/root/temp/paminfo/list/wardcd");
  220. model.makeValue("/root/main/cond/wardcd", wardcd);
  221. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  222. //병실리스트
  223. submit("TRMNW09002");
  224. //병실 리스트
  225. var roomcd = model.getValue("/root/temp/paminfo/list/roomcd");
  226. var orddd = getCurrentDate();
  227. model.makeValue("/root/send/reqdata/orddd", orddd);
  228. //내환자
  229. for(i = 1; i <= getNodesetCount("/root/init/getwardroomlist/settingrn"); i++ ) {
  230. if (model.getValue("/root/main/cond/userid") == model.getValue("/root/init/getwardroomlist/settingrn["+ i +"]/settingrnid")) {
  231. model.setValue("/root/main/cond/settingrnid", model.getValue("/root/main/cond/userid"));
  232. }
  233. }
  234. var settingrnid=model.getValue("/root/main/cond/settingrnid");
  235. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  236. submit("TRMNW09003");
  237. model.makeNode("/root/main/patinfo");
  238. copyNodeListType("/root/main/patinfo", "/root/init/getwardpatinfo/patlist", "replace");
  239. //환자명 리스트
  240. // indd, instcd, pid, cretno send로 보내기
  241. var indd = model.getValue("/root/temp/paminfo/list/indd");
  242. var instcd = model.getValue("/root/temp/paminfo/list/instcd");
  243. var pid = model.getValue("/root/temp/paminfo/list/pid");
  244. var cretno = model.getValue("/root/temp/paminfo/list/cretno");
  245. var patnm = model.getValue("/root/temp/paminfo/list/hngnm");
  246. var sex = model.getValue("/root/temp/paminfo/list/sex");
  247. var age = model.getValue("/root/temp/paminfo/list/age");
  248. model.makeValue("/root/send/reqdata/indd", indd);
  249. model.makeValue("/root/send/reqdata/instcd", instcd);
  250. model.makeValue("/root/send/reqdata/pid", pid);
  251. model.makeValue("/root/send/reqdata/cretno", cretno);
  252. model.makeValue("/root/main/cond/roomnm", roomcd);
  253. model.makeValue("/root/main/cond/patnm", patnm);
  254. model.makeValue("/root/main/cond/pid", pid);
  255. model.makeValue("/root/main/cond/sa", sex+"/"+age);
  256. //투석액 리스트 가져오기
  257. submit("TRMNW09005");
  258. //해당 환자에 포커스 맞춤
  259. for(var i=1; i<=getNodesetCount("/root/main/patinfo/patlist"); i++) {
  260. if(model.getValue("/root/main/patinfo/patlist["+i+"]/pid")==pid) {
  261. model.setFocus("grd_patlist");
  262. grd_patlist.row=i;
  263. grd_patlist.dispatch("onentercell");
  264. model.makeValue("/root/main/cond/patnum", i);
  265. grd_patlist.refresh();
  266. }
  267. }
  268. //현재날짜로 세팅
  269. var currentDate = getCurrentDate();
  270. ipt_recdd.value = currentDate;
  271. var date = currentDate.toDate("YYYYMMDD");
  272. date.getAddDate(-4, "D");
  273. var frstDate = date.getDateFormat();
  274. ipt_frstdd.value = frstDate;
  275. model.makeValue("/root/send/reqdata/frstdate", frstDate);
  276. var lastDate = getCurrentDate();
  277. ipt_lastdd.value = lastDate;
  278. model.makeValue("/root/send/reqdata/lastdate", lastDate);
  279. //기록 리스트 조회
  280. submit("TRMNW09004");
  281. model.copyNode("/root/main/infolist", "/root/init/infolist");
  282. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  283. var pdetcprcpnm, etcconcennm;
  284. //차이, subtotal
  285. //현재행 날짜
  286. var rowdate="";
  287. //비교날짜: 첫번째 행의 날짜
  288. var tempdate=model.getValue("/root/main/infolist/list[1]/recdd").substr(0,8);
  289. var temppid=model.getValue("/root/main/infolist/list[1]/pid");
  290. var subtotal = 0;
  291. var dragamtval, injamtval, diff;
  292. for(var i=1; i<=getNodesetCount("/root/main/infolist/list"); i++) {
  293. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  294. pdetcprcpnm = model.getValue("/root/main/infolist/list["+i+"]/pdetcprcpnm");
  295. etcconcennm = model.getValue("/root/main/infolist/list["+i+"]/etcconcennm");
  296. if(!(pdetcprcpnm == "" || pdetcprcpnm == null)) {
  297. model.setValue("/root/main/infolist/list["+i+"]/pdprcpcd", pdetcprcpnm);
  298. model.setValue("/root/main/infolist/list["+i+"]/prcpcd", "기타");
  299. }
  300. if(!(etcconcennm == "" || etcconcennm == null)) {
  301. model.setValue("/root/main/infolist/list["+i+"]/concencd", etcconcennm);
  302. }
  303. //차이, subtotal
  304. dragamtval = model.getValue("/root/main/infolist/list["+i+"]/dragamtval");
  305. injamtval = model.getValue("/root/main/infolist/list["+i+"]/injamtval");
  306. rowdate=model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8);
  307. rowpid=model.getValue("/root/main/infolist/list["+i+"]/pid");
  308. //현재행 날짜와 비교날짜를 비교해서 다르면 subtotal을 그만 쌓고 초기화한다.
  309. if(tempdate != rowdate) {
  310. subtotal = 0;
  311. tempdate = rowdate;
  312. } else if(temppid!=rowpid && tempdate==rowdate) {
  313. subtotal = 0;
  314. temppid = rowpid;
  315. }
  316. // if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  317. if(model.getValue("/root/main/infolist/list["+i+"]/diff") != "") { //주입량, 배액량이 둘다 있을 경우에만 = 차이가 있을 경우에만 subtotal 계산
  318. // diff = injamtval - dragamtval ;
  319. // model.makeValue("/root/main/infolist/list["+i+"]/diff", diff);
  320. subtotal=Number(subtotal)+Number(model.getValue("/root/main/infolist/list["+i+"]/diff"));
  321. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", subtotal);
  322. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  323. model.makeValue("/root/main/infolist/list["+i+"]/diff", "");
  324. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", "");
  325. }
  326. }
  327. grd_info.refresh();
  328. for(var i=1; i < grd_info.rows; i++) {
  329. //tooltip변경
  330. grd_info.tooltipText(i, grd_info.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/infolist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  331. grd_info.tooltipText(i, grd_info.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/infolist/list["+i+"]/concencd")+"']/cdnm");
  332. }
  333. //현재일자의 기록이 있다면 기록 그리드에 복사
  334. for(var i=1; i<grd_info.rows; i++) {
  335. if(ipt_recdd.value == model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8)) {
  336. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  337. }
  338. }
  339. grd_record.refresh();
  340. for(var i=1; i < grd_record.rows; i++) {
  341. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  342. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  343. }
  344. model.refresh();
  345. } else {
  346. // 첫번째 그리드 삭제하기
  347. model.removeNodeset("/root/main/recordlist");
  348. // 두번째 그리드 삭제하기
  349. model.removeNodeset("/root/main/infolist");
  350. //세번째 그리드 삭제하기
  351. model.removeNodeset("/root/main/patinfo");
  352. //조건 초기화
  353. model.resetInstanceNode("/root/main/cond");
  354. model.setValue("/root/main/cond/recdd", getCurrentDate());
  355. model.setValue("/root/main/cond/userid", getUserId());
  356. model.setValue("/root/main/cond/usernm", getUserName());
  357. //공통코드 가져오기
  358. zbcfGetCodeList( new Array ( "M0561" //, "M0562" // 농도, 횟차
  359. )
  360. , new Array ( "/root/init/M0561list" //, "/root/init/M0562list"
  361. )
  362. );
  363. // 병동리스트 가져오기
  364. submit("TRMNW09001");
  365. //로그인한 사람 병동
  366. model.setValue("/root/main/cond/wardcd", getUserInfo("dutplcecd"));
  367. // 조회일자의 처음일자와 마지막일자 가져오기
  368. var currentDate = getCurrentDate();
  369. ipt_recdd.value = currentDate;
  370. var date = currentDate.toDate("YYYYMMDD");
  371. date.getAddDate(-4, "D");
  372. var frstDate = date.getDateFormat();
  373. ipt_frstdd.value = frstDate;
  374. model.makeValue("/root/send/reqdata/frstdate", frstDate);
  375. var lastDate = getCurrentDate();
  376. ipt_lastdd.value = lastDate;
  377. model.makeValue("/root/send/reqdata/lastdate", lastDate);
  378. }
  379. }
  380. function fMake_SignData(){
  381. Sign.addnode("/root/hidden/recordlist");
  382. var xRecinfoPath = Sign.XPATH_SIGNINFO+"/recordlist/list";
  383. //차이, subtotal 계산
  384. var subtotal = 0;
  385. var dragamtval, injamtval, diff;
  386. for(var i=1; i<=getNodesetCount("/root/hidden/recordlist/list"); i++){
  387. // // 투석액
  388. var prcpcd = model.getValue(xRecinfoPath+"["+i+"]/prcpcd");
  389. if(prcpcd != ""){
  390. if(prcpcd != "기타")
  391. model.makeValue(xRecinfoPath+"["+i+"]/pdprcpcd", model.getValue("/root/init/dialliqd/list[prcpcd='"+prcpcd+"']/prcpnm"));
  392. else
  393. model.makeValue(xRecinfoPath+"["+i+"]/pdprcpcd", model.getValue(xRecinfoPath+"["+i+"]/pdetcprcpnm"));
  394. }
  395. // 농도
  396. var concencd = model.getValue(xRecinfoPath+"["+i+"]/concencd");
  397. var etcconcennm = model.getValue(xRecinfoPath+"["+i+"]/etcconcennm");
  398. if(concencd != ""){
  399. if(etcconcennm != "")
  400. model.makeValue(xRecinfoPath+"["+i+"]/concencd", model.getValue(xRecinfoPath+"["+i+"]/concencd"));
  401. else
  402. model.makeValue(xRecinfoPath+"["+i+"]/concencd",model.getValue("/root/init/M0561list/M0561[cdid="+concencd+"]/cdnm"));
  403. }
  404. // //subtotal 계산 - 처음부터 다시 계산
  405. // dragamtval = model.getValue(xRecinfoPath+"["+i+"]/dragamtval");
  406. // injamtval = model.getValue(xRecinfoPath+"["+i+"]/injamtval");
  407. //
  408. // if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  409. // diff = injamtval - dragamtval ;
  410. // model.makeValue(xRecinfoPath+"["+i+"]/diff", diff);
  411. // subtotal=Number(subtotal)+Number(model.getValue(xRecinfoPath+"["+i+"]/diff"));
  412. //
  413. // model.makeValue(xRecinfoPath+"["+i+"]/subtotal", subtotal);
  414. //
  415. // } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  416. // model.makeValue(xRecinfoPath+"["+i+"]/diff", "");
  417. // model.makeValue(xRecinfoPath+"["+i+"]/subtotal", "");
  418. // }
  419. }
  420. }
  421. function fCheckTime(ftimeset) {
  422. if(grd_record.col == grd_record.colRef(ftimeset)) {
  423. var sTime = grd_record.valueMatrix(grd_record.row, grd_record.colRef(ftimeset));
  424. if(sTime.length != 4) {
  425. messageBox("네자리를 ","C001");
  426. grd_record.valueMatrix(grd_record.row, grd_record.colRef(ftimeset)) = "";
  427. return;
  428. }
  429. var sFrontTime = sTime.substr(0, 2);
  430. var sBackTime = sTime.substr(2, 2);
  431. if(parseInt(sFrontTime) > 24) {
  432. messageBox("24시를 ","E003");
  433. grd_record.valueMatrix(grd_record.row, grd_record.colRef(ftimeset)) = "";
  434. return;
  435. }
  436. if(parseInt(sBackTime) > 59) {
  437. messageBox("59분을 ","E003");
  438. grd_record.valueMatrix(grd_record.row, grd_record.colRef(ftimeset)) = "";
  439. return;
  440. }
  441. }
  442. }
  443. function fShowPopupMenu(gridID, menuPath) {
  444. var gridObj = document.controls.item(gridID);
  445. if(event.button == 3) {
  446. if(gridObj.isCell(event.target) && gridObj.mouseRow >= gridObj.fixedrows){
  447. window.setPopupMenu(true, menuPath, "name", "func", false);
  448. }else{
  449. window.setPopupMenu(false);
  450. }
  451. }
  452. }
  453. function fCapdDel() {
  454. var selectRow = grd_info.row;
  455. // var lastupdtrid = model.getValue("/root/main/infolist/list/lastupdtrid");
  456. // var userid = getUserInfo("userid");
  457. // if(lastupdtrid != userid) {
  458. // messageBox("", "E002");
  459. // } else {
  460. //grd_info grid의 selectedRow
  461. var selectRow = grd_info.row;
  462. var patnum = opt_patnum.value;
  463. //grd_record grid의 row
  464. var addRow = grd_record.rows-grd_record.fixedRows+1;
  465. //grd_info에서 선택한 일자, pid를 받는다.
  466. var recdd = model.getValue("/root/main/infolist/list["+selectRow+"]/recdd").substring(0,8);
  467. var pid = model.getValue("/root/main/infolist/list["+selectRow+"]/pid");
  468. var indd, instcd, cretno;
  469. if(patnum != "") {
  470. indd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/indd");
  471. instcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/instcd");
  472. cretno = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/cretno");
  473. } else {
  474. indd = model.getValue("/root/temp/paminfo/list/indd");
  475. instcd = model.getValue("/root/temp/paminfo/list/instcd");
  476. cretno = model.getValue("/root/temp/paminfo/list/cretno");
  477. }
  478. //해당되는 row만 계산
  479. var count = 0;
  480. var recrow = -1;
  481. var bdate="";
  482. var bpid = "";
  483. count=0;
  484. ipt_recdd.value=recdd;
  485. model.removeNodeset("/root/main/recordlist");
  486. model.makeNode("/root/main/recordlist");
  487. //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  488. for(var i = 1; i < grd_info.rows; i++) {
  489. bdate = model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  490. bpid = model.getValue("/root/main/infolist/list["+i+"]/pid");
  491. if(bdate == recdd && bpid == pid) {
  492. if(recrow == -1) recrow = count;
  493. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  494. }
  495. count++;
  496. }
  497. model.refresh();
  498. var delRow = (selectRow-recrow);
  499. grd_record.rowStatus(delRow) = "4"
  500. for(var i=1; i < grd_record.rows; i++) {
  501. if( (i % 2) == 1)
  502. grd_record.rowStyle(i, "data", "background-color") = "#FFFFFF";
  503. else
  504. grd_record.rowStyle(i, "data", "background-color") = "#F4F4F4";
  505. }
  506. var msg = messageBox("선택하신 CAPD기록을 정말 ", "Q001");
  507. if(msg == 6) {
  508. btn_save.dispatch("DOMActivate");
  509. } else {
  510. grd_record.rowStatus(delRow) = "0";
  511. btn_reset.dispatch("DOMActivate");
  512. }
  513. // }
  514. }
  515. function fCapdUpt() {
  516. //grd_info grid의 selectedRow
  517. var selectRow = grd_info.row;
  518. var patnum = opt_patnum.value;
  519. //grd_record grid의 row
  520. var addRow = grd_record.rows-grd_record.fixedRows+1;
  521. //grd_info에서 선택한 일자, pid를 받는다.
  522. var recdd = model.getValue("/root/main/infolist/list["+selectRow+"]/recdd").substring(0,8);
  523. var pid = model.getValue("/root/main/infolist/list["+selectRow+"]/pid");
  524. //해당되는 row만 계산
  525. var count = 0;
  526. var recrow = -1;
  527. var bdate = "";
  528. var bpid = "";
  529. //grd_record에 첫 row가 없을때
  530. if(addRow==1) {
  531. count=0;
  532. ipt_recdd.value=recdd;
  533. model.removeNodeset("/root/main/recordlist");
  534. model.makeNode("/root/main/recordlist");
  535. //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  536. for(var i=1; i<grd_info.rows; i++) {
  537. bdate=model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  538. bpid=model.getValue("/root/main/infolist/list["+i+"]/pid");
  539. if(bdate==recdd && bpid==pid) {
  540. if(recrow == -1) recrow = count;
  541. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  542. }
  543. count++;
  544. }
  545. grd_record.refresh();
  546. //원처벙코드 저장
  547. for(var i=1; i<=getNodesetCount("/root/main/recordlist/list"); i++) {
  548. orgPrcpcd[i] = model.getValue("/root/main/recordlist/list["+i+"]/prcpcd");
  549. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  550. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  551. }
  552. if((selectRow-recrow) != 0) {
  553. // model.makeValue("/root/main/recordlist/list["+(selectRow-recrow)+"]/status", "u");
  554. grd_record.rowStyle(selectRow-recrow, "data", "background-color") = "#BEFCFF";
  555. }
  556. } else if(addRow>1) { //grd_record에 row가 하나 이상 있을 때
  557. if(ipt_recdd.value!=recdd) { //기록일자와 grd_info의 일자가 틀리다면 올리지 않는다.
  558. var msg = messageBox("이미 선택된 기록이 존재합니다. 기록을 수정하시겠습니까?", "Q");
  559. if(msg == 6) { //vbYes = 6 예
  560. //업무일자를 현재 업무일자로 변경한다.
  561. count=0;
  562. ipt_recdd.value=recdd;
  563. model.removeNodeset("/root/main/recordlist");
  564. model.makeNode("/root/main/recordlist");
  565. //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  566. for(var i=1; i<grd_info.rows; i++) {
  567. bdate=model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  568. bpid=model.getValue("/root/main/infolist/list["+i+"]/pid");
  569. if(bdate==recdd && bpid==pid) {
  570. if(recrow == -1) recrow = count;
  571. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  572. }
  573. count++;
  574. }
  575. grd_record.refresh();
  576. //원처벙코드 저장
  577. for(var i=1; i<=getNodesetCount("/root/main/recordlist/list"); i++) {
  578. orgPrcpcd[i] = model.getValue("/root/main/recordlist/list["+i+"]/prcpcd");
  579. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  580. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  581. if((selectRow-recrow) != 0) {
  582. // model.makeValue("/root/main/recordlist/list["+(selectRow-recrow)+"]/status", "u");
  583. grd_record.rowStyle(selectRow-recrow, "data", "background-color") = "#BEFCFF";
  584. }
  585. if( (selectRow-recrow) != i) {
  586. if( (i % 2) == 1)
  587. grd_record.rowStyle(i, "data", "background-color") = "#FFFFFF";
  588. else
  589. grd_record.rowStyle(i, "data", "background-color") = "#F4F4F4";
  590. }
  591. }
  592. }
  593. } else if(ipt_recdd.value==recdd && model.getValue("/root/main/cond/pid")!=pid) {
  594. messageBox("이미 선택된 환자가 존재합니다.", "E");
  595. } else {
  596. // count=0;
  597. // model.removeNodeset("/root/main/recordlist");
  598. // model.makeNode("/root/main/recordlist");
  599. // //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  600. // for(var i=1; i<grd_info.rows; i++) {
  601. // var bdate=model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  602. // var bpid=model.getValue("/root/main/infolist/list["+i+"]/pid");
  603. // if(bdate==recdd && bpid==pid) {
  604. // count++;
  605. // copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  606. // }
  607. //// model.makeValue("/root/main/recordlist/list["+count+"]/status", "u");
  608. // }
  609. // model.makeValue("/root/main/recordlist/list["+selectRow+"]/status", "u");
  610. for(var i=1; i<grd_info.rows; i++) {
  611. //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  612. bdate=model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  613. bpid=model.getValue("/root/main/infolist/list["+i+"]/pid");
  614. if(bdate==recdd && bpid==pid) {
  615. if(recrow == -1) recrow = count;
  616. if(selectRow == i) {
  617. // model.makeValue("/root/main/recordlist/list["+(i-recrow)+"]/status", "u");
  618. grd_record.rowStyle(i-recrow, "data", "background-color") = "#BEFCFF";
  619. // break;
  620. } else {
  621. if( ((i-recrow) % 2) == 1)
  622. grd_record.rowStyle(i-recrow, "data", "background-color") = "#FFFFFF";
  623. else
  624. grd_record.rowStyle(i-recrow, "data", "background-color") = "#F4F4F4";
  625. }
  626. }
  627. count++;
  628. }
  629. }
  630. }
  631. model.refresh();
  632. }
  633. ]]>
  634. </script>
  635. <script type="javascript" ev:event="xforms-ready">
  636. <![CDATA[
  637. fInit();
  638. ]]>
  639. </script>
  640. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  641. <submission id="TRTNW99806" mediatype="application/x-www-form-urlencoded" method="post"/>
  642. <submission id="TRMNW09001" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/init/getwardlist"/>
  643. <submission id="TRMNW09002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/getwardroomlist"/>
  644. <submission id="TRMNW09003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/getwardpatinfo"/>
  645. <submission id="TRMNW09004" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/infolist"/>
  646. <submission id="TXMNW09001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/infolist"/>
  647. <submission id="TRMNW09005" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/dialliqd"/>
  648. </model>
  649. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  650. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  651. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  652. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  653. <script type="javascript" src="../../../emr/carecomweb/js/ENRSignEngine.js"/>
  654. </xhtml:head>
  655. <xhtml:body guideline="2,13;2,263;1,1192;1,1177;1,149;2,402;2,173;" style="margin-left:8; margin-right:8; ">
  656. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  657. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:257px; height:14px; ">CAPD기록</caption>
  658. </group>
  659. <group id="group3" class="datagrid2" scroll="auto" style="left:0px; top:13px; width:1195px; height:767px; ">
  660. <button id="btn_del" class="btn2_letter3" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:1072px; top:50px; width:53px; height:19px; background-image:../../../com/commonweb/images/btn2_letter3.gif; ">
  661. <caption>행삭제</caption>
  662. <script type="javascript" ev:event="DOMActivate">
  663. <![CDATA[
  664. var row = grd_record.row;
  665. if(grd_record.rowStatus(row) == "1" || grd_record.rowStatus(row) == "3" ) {
  666. grd_record.deleteRow(grd_record.row);
  667. } else {
  668. grd_record.rowStatus(row) = "4";
  669. }
  670. ]]>
  671. </script>
  672. </button>
  673. <button id="btn_reset" class="btn2_letter3" visibility="hidden" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:962px; top:50px; width:53px; height:19px; background-image:../../../com/commonweb/images/btn2_letter3.gif; ">
  674. <caption>초기화</caption>
  675. <script type="javascript" ev:event="DOMActivate">
  676. <![CDATA[
  677. /*
  678. ****************************************************************
  679. * 임미정 선생님 요청으로 초기화 기능 제외 by 2010-03-12
  680. ****************************************************************
  681. */
  682. model.setValue("/root/main/cond/recdd", getCurrentDate());
  683. model.removeNodeset("/root/main/recordlist/list");
  684. model.removeNodeset("/root/send");
  685. model.refresh();
  686. ]]>
  687. </script>
  688. </button>
  689. <button id="btn_add" class="btn2_letter3" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:1017px; top:50px; width:53px; height:19px; background-image:../../../com/commonweb/images/btn2_letter3.gif; ">
  690. <caption>행추가</caption>
  691. <script type="javascript" ev:event="DOMActivate">
  692. <![CDATA[
  693. /*
  694. ***********************************************************
  695. ** 행추가는 등록번호(pid)가 있을 경우에 가능하도록 한다.
  696. * 1. 환자번호가 없을 경우 messageBox 띄운 후 현재 날짜로 지정
  697. * 2. 환자번호가 있을 경우 재원기간 내에 있는 경우 행추가
  698. * 3. 횟차, 주입시간, 주입량, 배액시간, 배액량을 초기화한다.
  699. ***********************************************************
  700. */
  701. //환자정보
  702. var wardcd = cmb_ward.value;
  703. var roomcd = opt_roomcd.value;
  704. var pid = grd_pid.value;
  705. var patnm = opt_patnm.value;
  706. var patnum = opt_patnum.value;
  707. var indd, dschdd;
  708. //기록 날짜 정보
  709. var recdd = ipt_recdd.value;
  710. var frstDate = recdd;
  711. var lastDate = recdd;
  712. if(pid == "") { // 선택된 환자가 없을 경우
  713. messageBox("환자정보가 ", "I004");
  714. ipt_recdd.value = getCurrentDate();
  715. } else {
  716. if(patnum != "") { // 환자리스트에서 환자를 선택한경우 -> 재원인 경우
  717. indd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/indd");
  718. dschdd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/dschdd");
  719. } else { // 상단정보에서 환자를 선택한 경우 -> 퇴원환자인 경우
  720. indd = model.getValue("/root/temp/paminfo/list/indd");
  721. dschdd = model.getValue("/root/temp/paminfo/list/dschdd");
  722. }
  723. if(!(recdd >= indd && recdd <= dschdd)) { //기록날짜가 재원기간을 벗어나면..
  724. messageBox("["+patnm+"]님의 기록가능한 날짜는 " +indd.substr(0,4)+"-"+indd.substr(4,2)+"-"+indd.substr(6,2)+"일에서 "
  725. +dschdd.substr(0,4)+"-"+dschdd.substr(4,2)+"-"+dschdd.substr(6,2)+"일입니다.\n선택하신 날짜는 기록을", "E001");
  726. ipt_recdd.value = getCurrentDate();
  727. } else { // 벗어나지 않을때..
  728. //해당되는 row만 계산
  729. var count = 0;
  730. var recrow = -1;
  731. var bdate = "";
  732. var bpid = "";
  733. //grd_record에 첫 row가 없을때
  734. if(grd_record.rows == 1) {
  735. count = 0;
  736. model.removeNodeset("/root/main/recordlist");
  737. model.makeNode("/root/main/recordlist");
  738. //같은 날짜에 해당하는 기록은 전부 grd_record grid로 이동시킨다
  739. for(var i=1; i<grd_info.rows; i++) {
  740. bdate = model.getValue("/root/main/infolist/list["+i+"]/recdd").substring(0,8);
  741. bpid = model.getValue("/root/main/infolist/list["+i+"]/pid");
  742. if(bdate == recdd && bpid == pid) {
  743. if(recrow == -1) recrow = count;
  744. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  745. }
  746. count++;
  747. }
  748. //원처벙코드 저장
  749. for(var i=1; i<=getNodesetCount("/root/main/recordlist/list"); i++) {
  750. orgPrcpcd[i] = model.getValue("/root/main/recordlist/list["+i+"]/prcpcd");
  751. }
  752. }
  753. grd_record.refresh();
  754. grd_record.addRow();
  755. var addRow=grd_record.row;
  756. var recdd=ipt_recdd.value;
  757. var timscd = model.getValue("/root/main/recordlist/list["+(addRow-1)+"]/timscd");
  758. if(timscd == "") timscd = 0;
  759. // model.makeValue("/root/main/recordlist/list["+addRow+"]/injamtval", "0");
  760. // model.makeValue("/root/main/recordlist/list["+addRow+"]/injtm", "-");
  761. // model.makeValue("/root/main/recordlist/list["+addRow+"]/dragamtval", "0");
  762. // model.makeValue("/root/main/recordlist/list["+addRow+"]/dragtm", "-");
  763. model.makeValue("/root/main/recordlist/list["+addRow+"]/timscd", ++timscd);
  764. model.makeValue("/root/main/recordlist/list["+addRow+"]/injdd", ipt_recdd.value);
  765. model.makeValue("/root/main/recordlist/list["+addRow+"]/dragdd", ipt_recdd.value);
  766. orgPrcpcd[addRow] = "";
  767. grd_record.refresh();
  768. for(var i=1; i < grd_record.rows; i++) {
  769. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  770. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  771. }
  772. model.refresh();
  773. }
  774. }
  775. ]]>
  776. </script>
  777. </button>
  778. <button id="btn_save" class="btn5_letter4" disable.background-image="../../../com/commonweb/images/dis_btn5_letter4.gif" style="left:1127px; top:50px; width:64px; height:19px; background-image:../../../com/commonweb/images/btn5_letter4.gif; ">
  779. <caption>인증저장</caption>
  780. <script type="javascript" ev:event="DOMActivate">
  781. <![CDATA[
  782. //조회조건 재세팅
  783. model.removeNodeset("/root/send");
  784. //빈칸검수
  785. var recordRows=grd_record.rows-grd_record.fixedRows;
  786. var patnum=opt_patnum.value;
  787. var setNullFlag=true;
  788. var setIsNotChgFlag=false;
  789. var pdprcpcd="";
  790. var concencd="";
  791. var timscd="";
  792. var injdd="";
  793. var intjm="";
  794. var injamtval="";
  795. var dragdd="";
  796. var dragtm="";
  797. var dragamtval="";
  798. for(var i=1; i <= recordRows; i++) {
  799. //차이 계산 -> DB에서 자동 차 계산하는 것으로 변경
  800. // dragamtval = model.getValue("/root/main/recordlist/list["+i+"]/dragamtval");
  801. // injamtval = model.getValue("/root/main/recordlist/list["+i+"]/injamtval");
  802. // diff = dragamtval - injamtval ;
  803. // model.makeValue("/root/main/recordlist/list["+i+"]/diff", diff);
  804. prcpcd = model.getValue("/root/main/recordlist/list["+i+"]/prcpcd");
  805. pdprcpcd = model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd");
  806. concencd = model.getValue("/root/main/recordlist/list["+i+"]/concencd");
  807. // timscd = model.getValue("/root/main/recordlist/list["+i+"]/timscd");
  808. injdd = model.getValue("/root/main/recordlist/list["+i+"]/injdd");
  809. injtm = model.getValue("/root/main/recordlist/list["+i+"]/injtm");
  810. injamtval = model.getValue("/root/main/recordlist/list["+i+"]/injamtval");
  811. dragdd = model.getValue("/root/main/recordlist/list["+i+"]/dragdd");
  812. dragtm = model.getValue("/root/main/recordlist/list["+i+"]/dragtm");
  813. dragamtval=model.getValue("/root/main/recordlist/list["+i+"]/dragamtval");
  814. if(prcpcd=="") {messageBox(i+"번째 투석액을 선택하지 않았습니다.", "E"); setNullFlag=false; break;}
  815. if(pdprcpcd=="") {messageBox(i+"번째 투석액을 선택하지 않았습니다.", "E"); setNullFlag=false; break;}
  816. if(concencd=="") {messageBox(i+"번째 농도를 선택하지 않았습니다.", "E"); setNullFlag=false; break;}
  817. // if(timscd=="") {messageBox(i+"번째 횟차를 선택하지 않았습니다.", "E"); setNullFlag=false;}
  818. // if(injtm=="") model.makeValue("/root/main/recordlist/list["+i+"]/injtm", "-");
  819. // if(injamtval=="") model.makeValue("/root/main/recordlist/list["+i+"]/injamtval", "0");
  820. // if(dragtm=="") model.makeValue("/root/main/recordlist/list["+i+"]/dragtm", "-");
  821. // if(dragamtval=="") model.makeValue("/root/main/recordlist/list["+i+"]/dragamtval", "0");
  822. //주입량이 있을때 주입일자, 주입시간 필수!
  823. if(injamtval != "") {
  824. if(injdd == "") {
  825. messageBox(i+"번째 주입일자를 기입하지 않았습니다.", "E"); setNullFlag=false;
  826. model.makeValue("/root/main/recordlist/list["+i+"]/injdd", ipt_recdd.value);
  827. break;
  828. }
  829. if(injtm == "") {
  830. messageBox(i+"번째 주입시간을 기입하지 않았습니다.", "E"); setNullFlag=false;
  831. break;
  832. }
  833. }
  834. //주입시간이 있을때 주입량 필수!
  835. if(injtm != "") {
  836. if(injamtval == "") {
  837. messageBox(i+"번째 주입량을 기입하지 않았습니다.", "E"); setNullFlag=false;
  838. break;
  839. }
  840. }
  841. //배액량이 있을때 배액일자, 배액시간 필수!
  842. if(dragamtval != "") {
  843. if(dragdd == "") {
  844. messageBox(i+"번째 배액일자를 기입하지 않았습니다.", "E"); setNullFlag=false;
  845. model.makeValue("/root/main/recordlist/list["+i+"]/dragdd", ipt_recdd.value);
  846. break;
  847. }
  848. if(dragtm == "") {
  849. messageBox(i+"번째 배액시간을 기입하지 않았습니다.", "E"); setNullFlag=false;
  850. break;
  851. }
  852. }
  853. //배액시간이 있을때 배액량 필수!
  854. if(dragtm != "") {
  855. if(dragamtval == "") {
  856. messageBox(i+"번째 배액량을 기입하지 않았습니다.", "E"); setNullFlag=false;
  857. break;
  858. }
  859. }
  860. // if(
  861. // (prcpcd !="" && pdprcpcd !="") ||
  862. // ((injtm !="" || injtm != "-") && injdd != "" && injamtval != "") ||
  863. // ((dragtm !="" || dragtm != "-") && dragdd != "" && dragamtval != "")
  864. // ) setNullFlag=true;
  865. }
  866. // grd_record.refresh();
  867. //변경된 사항 유무
  868. var savedata = grd_record.getUpdateData();
  869. var dataChkIndex=savedata.indexOf("▩");
  870. var dataChkStr=savedata.substring(dataChkIndex+1);
  871. if(dataChkStr=="") setIsNotChgFlag=false;
  872. else setIsNotChgFlag=true;
  873. //빈칸검수 문제가 없고 변경된 사항이 있다면
  874. if(setNullFlag==true && setIsNotChgFlag==true) {
  875. // 기록일자 send로 보내기
  876. var recdd = model.getValue("/root/main/cond/recdd");
  877. var rectm = getCurrentTime().substr(0,4);
  878. model.makeValue("/root/send/save/recdd", recdd);
  879. model.makeValue("/root/send/save/rectm", rectm);
  880. // indd, instcd, pid, cretno send로 보내기
  881. var pid = grd_pid.value;
  882. var patnum = opt_patnum.value;
  883. var wardcd = cmb_ward.value;
  884. var settingrnid = model.getValue("/root/main/cond/settingrnid");
  885. var roomcd = opt_roomcd.value;
  886. var instcd, indd, cretno, orddeptcd, orddrid;
  887. if(patnum != "") { // 환자리스트에서 환자를 선택한 경우 -> 재원인 경우
  888. instcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/instcd");
  889. indd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/indd");
  890. cretno = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/cretno");
  891. orddeptcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/orddeptcd");
  892. orddrid = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/orddrid");
  893. } else { // 상단정보에서 환자를 선택한 경우 -> 퇴원환자
  894. instcd = model.getValue("/root/temp/paminfo/list/instcd");
  895. indd = model.getValue("/root/temp/paminfo/list/indd");
  896. cretno = model.getValue("/root/temp/paminfo/list/cretno");
  897. orddeptcd = model.getValue("/root/temp/paminfo/list/orddeptcd");
  898. orddrid = model.getValue("/root/temp/paminfo/list/medispclid");
  899. }
  900. model.makeValue("/root/send/save/pid", pid);
  901. model.makeValue("/root/send/save/instcd", instcd);
  902. model.makeValue("/root/send/save/indd", indd);
  903. model.makeValue("/root/send/save/cretno", cretno);
  904. // 그리드 정보 send로 보내기
  905. model.makeValue("/root/send/save/savedata", savedata);
  906. //조회일자를 세팅
  907. var frstDate = ipt_frstdd.value;
  908. var lastDate=ipt_lastdd.value;
  909. var orddd=getCurrentDate();
  910. model.makeValue("/root/send/save/frstdate", frstDate);
  911. model.makeValue("/root/send/save/lastdate", lastDate);
  912. model.removeNodeset("/root/hidden/recordlist");
  913. model.makeNode("/root/hidden/recordlist");
  914. for(var i=1; i<grd_record.rows; i++) {
  915. if(grd_record.rowStatus(i) != "4" ) { //삭제가 아닐경우
  916. copyNodeListType("/root/hidden/recordlist", "/root/main/recordlist/list["+i+"]", "after");
  917. }
  918. }
  919. var status = ""; //삭제여부
  920. if(getNodesetCount("/root/hidden/recordlist/list") < 1) status = "d";
  921. Sign.certreload = true; //인증저장 재확인
  922. if(Sign.signprocess()==true) {
  923. // 1. 환자기본정보 설정(항목 - 가이드/예제 항목 동일)
  924. model.removeNodeset("/root/send/savedata/signinfo");
  925. model.makeValue("/root/send/signdata/status" , status); // 삭제여부
  926. model.makeValue("/root/send/signdata/pid" , pid); // 등록번호
  927. // 진료일자
  928. model.makeValue("/root/send/signdata/orddd" , indd);
  929. model.makeValue("/root/send/signdata/signno" , model.getValue("/root/main/reclist/recinfo/recinfolists/signno")); // 서명번호
  930. model.makeValue("/root/send/signdata/cretno" , cretno); // 생성번호
  931. model.makeValue("/root/send/signdata/recdd" , recdd); // 실제 기록이 이루어진 기록일자(통합기록에서 보여짐)
  932. model.makeValue("/root/send/signdata/rectm" , getCurrentTime()); // 실제 기록이 이루어진 기록시간(통합기록에서 보여짐)
  933. model.makeValue("/root/send/signdata/recsaveflag" , "Y"); // 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
  934. model.makeValue("/root/send/signdata/signflag" , "02"); // 서명자료구분(01 : 진료, 02 : 간호)
  935. model.makeValue("/root/send/signdata/signgenrflag", "I"); // 서명발생구분 (코드정의서 M0010 참조)
  936. model.makeValue("/root/send/signdata/formcd" , "0000002462"); // 각 기록지별 서식코드
  937. model.makeValue("/root/send/signdata/orddeptcd" , orddeptcd); // 진료부서코드
  938. model.makeValue("/root/send/signdata/orddrid" , orddrid); // 진료의사ID
  939. model.makeValue("/root/send/signdata/signbfcnts" , Sign.signedInfos[1]); // 인증할 데이터 정보(미기록 노드 제거된 정보)
  940. model.makeValue("/root/send/signdata/signaftcnts" , Sign.signedInfos[2]); // 공인인증 처리후 데이터
  941. // 2. fMake..함수 : 실제 저장 될 데이터 가공 (grid-노드, 코드값->명칭)
  942. //테이블 저장하는 곳..
  943. if(submit("TXMNW09001")==true) {
  944. model.makeValue("/root/send/reqdatawardcd", wardcd);
  945. model.makeValue("/root/send/reqdatasettingrnid", settingrnid);
  946. model.makeValue("/root/send/reqdataroomcd", roomcd);
  947. model.makeValue("/root/send/reqdataindd", indd);
  948. model.makeValue("/root/send/reqdatainstcd", instcd);
  949. model.makeValue("/root/send/reqdatapid", pid);
  950. model.makeValue("/root/send/reqdatacretno", cretno);
  951. model.makeValue("/root/send/reqdatafrstdate", frstDate);
  952. model.makeValue("/root/send/reqdatalastdate", lastDate);
  953. // 첫번째 그리드 삭제하기
  954. model.removeNodeset("/root/main/recordlist");
  955. model.makeNode("/root/main/recordlist");
  956. // 두번째 그리드 삭제하기
  957. model.removeNodeset("/root/main/infolist");
  958. model.makeNode("/root/main/infolist");
  959. model.copyNode("/root/main/infolist", "/root/init/infolist");
  960. var pdetcprcpnm, etcconcennm;
  961. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  962. for(var i=1; i<=getNodesetCount("/root/main/infolist/list"); i++) {
  963. pdetcprcpnm = model.getValue("/root/main/infolist/list["+i+"]/pdetcprcpnm");
  964. etcconcennm = model.getValue("/root/main/infolist/list["+i+"]/etcconcennm");
  965. if(!(pdetcprcpnm == "" || pdetcprcpnm == null)) {
  966. model.setValue("/root/main/infolist/list["+i+"]/pdprcpcd", pdetcprcpnm);
  967. model.setValue("/root/main/infolist/list["+i+"]/prcpcd", "기타");
  968. }
  969. if(!(etcconcennm == "" || etcconcennm == null)) {
  970. model.setValue("/root/main/infolist/list["+i+"]/concencd", etcconcennm);
  971. }
  972. }
  973. grd_info.refresh();
  974. //현재행 날짜
  975. var rowdate="";
  976. //비교날짜: 첫번째 행의 날짜
  977. var tempdate=model.getValue("/root/main/infolist/list[1]/recdd").substr(0, 8);
  978. var temppid=model.getValue("/root/main/infolist/list[1]/pid");
  979. var subtotal = 0;
  980. var dragamtval, injamtval, diff;
  981. //차이, subtotal
  982. for(var i = 1; i < grd_info.rows; i++){
  983. dragamtval = model.getValue("/root/main/infolist/list["+i+"]/dragamtval");
  984. injamtval = model.getValue("/root/main/infolist/list["+i+"]/injamtval");
  985. rowdate = model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8);
  986. rowpid = model.getValue("/root/main/infolist/list["+i+"]/pid");
  987. //현재행 날짜와 비교날짜를 비교해서 다르면 subtotal을 그만 쌓고 초기화한다.
  988. if(tempdate != rowdate) {
  989. subtotal = 0;
  990. tempdate = rowdate;
  991. } else if(temppid != rowpid && tempdate == rowdate) {
  992. subtotal = 0;
  993. temppid = rowpid;
  994. }
  995. // if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  996. if(model.getValue("/root/main/infolist/list["+i+"]/diff") != "") { //주입량, 배액량이 둘다 있을 경우에만 = 차이가 있을 경우에만 subtotal 계산
  997. // diff = injamtval - dragamtval ;
  998. // model.makeValue("/root/main/infolist/list["+i+"]/diff", diff);
  999. subtotal=Number(subtotal)+Number(model.getValue("/root/main/infolist/list["+i+"]/diff"));
  1000. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", subtotal);
  1001. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  1002. model.makeValue("/root/main/infolist/list["+i+"]/diff", "");
  1003. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", "");
  1004. }
  1005. }
  1006. grd_info.refresh();
  1007. //현재일자의 기록이 있다면 기록 그리드에 복사
  1008. for(var i=1; i<grd_info.rows; i++) {
  1009. if(ipt_recdd.value == model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8)) {
  1010. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "refresh");
  1011. }
  1012. }
  1013. grd_record.clearStatus();
  1014. model.refresh();
  1015. }
  1016. } else {
  1017. alert("인증실패"+Sign.errcode);
  1018. return false;
  1019. }
  1020. }
  1021. ]]>
  1022. </script>
  1023. </button>
  1024. <group id="group6" style="left:0px; top:5px; width:1192px; height:37px; vertical-align:top; ">
  1025. <shape id="roundrect4" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1192px; height:37px; "/>
  1026. <caption id="caption13" class="search_name" style="left:16px; top:10px; width:60px; height:17px; text-align:center; ">병동 :</caption>
  1027. <caption id="caption14" class="search_name" style="left:190px; top:10px; width:71px; height:17px; text-align:center; ">병실 :</caption>
  1028. <select1 id="cmb_ward" ref="/root/main/cond/wardcd" class="combo_search" appearance="minimal" style="left:83px; top:9px; width:100px; height:19px; ">
  1029. <choices>
  1030. <itemset nodeset="/root/init/getwardlist/wardlist">
  1031. <label ref="wardnm"/>
  1032. <value ref="wardcd"/>
  1033. </itemset>
  1034. </choices>
  1035. <script type="javascript" ev:event="xforms-value-changed">
  1036. <![CDATA[
  1037. // 첫번째 그리드 삭제하기
  1038. model.removeNodeset("/root/main/recordlist");
  1039. // 두번째 그리드 삭제하기
  1040. model.removeNodeset("/root/main/infolist");
  1041. // 세번째 그리드 삭제하기
  1042. model.removeNodeset("/root/main/patinfo");
  1043. model.removenode("/root/send");
  1044. //조건들 초기화
  1045. model.setValue("/root/main/cond/roomcd", "");
  1046. model.setValue("/root/main/cond/roomnm", "");
  1047. model.setValue("/root/main/cond/patnm", "");
  1048. model.setValue("/root/main/cond/pid", "");
  1049. model.setValue("/root/main/cond/sa", "");
  1050. model.setValue("/root/main/cond/patnum", "");
  1051. model.setValue("/root/main/cond/settingrnid", "");
  1052. model.setValue("/root/main/cond/recdd", getCurrentDate());
  1053. var wardcd = model.getValue("/root/main/cond/wardcd");
  1054. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1055. submit("TRMNW09002"); // 병실정보
  1056. //현재날짜로 세팅
  1057. var currentDate = getCurrentDate();
  1058. ipt_recdd.value = currentDate;
  1059. // 날짜값 받아오기
  1060. var recdd = ipt_recdd.value;
  1061. var frstdd = ipt_frstdd.value;
  1062. var lastdd = ipt_lastdd.value;
  1063. model.makeValue("/root/send/reqdata/frstdate", frstdd);
  1064. model.makeValue("/root/send/reqdata/lastdate", lastdd);
  1065. model.makeValue("/root/send/reqdata/orddd", recdd);
  1066. //내환자
  1067. for(i = 1; i <= getNodesetCount("/root/init/getwardroomlist/settingrn"); i++ ) {
  1068. if (model.getValue("/root/main/cond/userid") == model.getValue("/root/init/getwardroomlist/settingrn["+ i +"]/settingrnid")) {
  1069. model.setValue("/root/main/cond/settingrnid", model.getValue("/root/main/cond/userid"));
  1070. }
  1071. }
  1072. var settingrnid=model.getValue("/root/main/cond/settingrnid");
  1073. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  1074. submit("TRMNW09003");
  1075. model.makeNode("/root/main/patinfo");
  1076. copyNodeListType("/root/main/patinfo", "/root/init/getwardpatinfo/patlist", "replace");
  1077. model.refresh();
  1078. ]]>
  1079. </script>
  1080. </select1>
  1081. <select1 id="cmb_room" ref="/root/main/cond/roomcd" class="combo_search" appearance="minimal" style="left:257px; top:9px; width:69px; height:19px; ">
  1082. <choices>
  1083. <itemset nodeset="/root/init/getwardroomlist/roomlist">
  1084. <label ref="roomnm"/>
  1085. <value ref="roomcd"/>
  1086. </itemset>
  1087. </choices>
  1088. <script type="javascript" ev:event="xforms-value-changed">
  1089. <![CDATA[
  1090. // 첫번째 그리드 삭제하기
  1091. model.removeNodeset("/root/main/recordlist");
  1092. // 두번째 그리드 삭제하기
  1093. model.removeNodeset("/root/main/infolist");
  1094. //세번째 그리드 삭제하기
  1095. model.removeNodeset("/root/main/patinfo");
  1096. model.removenode("/root/send");
  1097. model.setValue("/root/main/cond/roomnm", "");
  1098. model.setValue("/root/main/cond/patnm", "");
  1099. model.setValue("/root/main/cond/pid", "");
  1100. model.setValue("/root/main/cond/sa", "");
  1101. model.setValue("/root/main/cond/patnum", "");
  1102. var wardcd = model.getValue("/root/main/cond/wardcd");
  1103. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1104. var roomcd = model.getValue("/root/main/cond/roomcd");
  1105. if(roomcd!="-") {
  1106. model.makeValue("/root/send/reqdata/roomcd", roomcd);
  1107. }
  1108. var settingrnid=model.getValue("/root/main/cond/settingrnid");
  1109. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  1110. // 날짜값 받아오기
  1111. var orddd = getCurrentDate();
  1112. model.makeValue("/root/send/reqdata/orddd", orddd);
  1113. submit("TRMNW09003");
  1114. //현재날짜로 세팅
  1115. var frstdd=ipt_frstdd.value;
  1116. var lastdd=ipt_lastdd.value;
  1117. model.makeValue("/root/send/reqdata/frstdate", frstdd);
  1118. model.makeValue("/root/send/reqdata/lastdate", lastdd);
  1119. submit("TRMNW09004");
  1120. model.makeNode("/root/main/patinfo");
  1121. copyNodeListType("/root/main/patinfo", "/root/init/getwardpatinfo/patlist", "replace");
  1122. model.refresh();
  1123. ]]>
  1124. </script>
  1125. </select1>
  1126. <select1 id="cmb_settingrn" ref="/root/main/cond/settingrnid" class="combo_search" appearance="minimal" style="left:400px; top:8px; width:75px; height:19px; ">
  1127. <choices>
  1128. <itemset nodeset="/root/init/getwardroomlist/settingrn">
  1129. <label ref="settingrnnm"/>
  1130. <value ref="settingrnid"/>
  1131. </itemset>
  1132. </choices>
  1133. <script type="javascript" ev:event="xforms-value-changed">
  1134. <![CDATA[
  1135. // 첫번째 그리드 삭제하기
  1136. model.removeNodeset("/root/main/recordlist");
  1137. // 두번째 그리드 삭제하기
  1138. model.removeNodeset("/root/main/infolist");
  1139. //세번째 그리드 삭제하기
  1140. model.removeNodeset("/root/main/patinfo");
  1141. model.removenode("/root/send");
  1142. model.setValue("/root/main/cond/recdd", getCurrentDate());
  1143. model.setValue("/root/main/cond/roomnm", "");
  1144. model.setValue("/root/main/cond/patnm", "");
  1145. model.setValue("/root/main/cond/pid", "");
  1146. model.setValue("/root/main/cond/sa", "");
  1147. model.setValue("/root/main/cond/patnum", "");
  1148. var wardcd = model.getValue("/root/main/cond/wardcd");
  1149. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1150. var roomcd = model.getValue("/root/main/cond/roomcd");
  1151. if(roomcd!="-") {
  1152. model.makeValue("/root/send/reqdata/roomcd", roomcd);
  1153. }
  1154. var settingrnid=model.getValue("/root/main/cond/settingrnid");
  1155. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  1156. // 날짜값 받아오기
  1157. var orddd = getCurrentDate();
  1158. model.makeValue("/root/send/reqdata/orddd", orddd);
  1159. model.makeValue("/root/send/reqdata/orddd", orddd);
  1160. submit("TRMNW09003");
  1161. //현재날짜로 세팅
  1162. var frstdd=ipt_frstdd.value;
  1163. var lastdd=ipt_lastdd.value;
  1164. model.makeValue("/root/send/reqdatafrstdate", frstdd);
  1165. model.makeValue("/root/send/reqdatalastdate", lastdd);
  1166. submit("TRMNW09004");
  1167. model.makeNode("/root/main/patinfo");
  1168. copyNodeListType("/root/main/patinfo", "/root/init/getwardpatinfo/patlist", "replace");
  1169. model.refresh();
  1170. ]]>
  1171. </script>
  1172. </select1>
  1173. <caption id="caption9" class="search_name" style="left:332px; top:9px; width:75px; height:17px; ">내환자:</caption>
  1174. <line id="line2" class="line_4" style="x1:1105px; y1:7px; x2:1105px; y2:29px; "/>
  1175. <button id="btn_search2" class="btn1_letter2" disable.background-image="../../../com/commonweb/images/dis_btn5_letter4.gif" style="left:1121px; top:7px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  1176. <caption>조회</caption>
  1177. <script type="javascript" ev:event="DOMActivate">
  1178. <![CDATA[
  1179. btn_search.dispatch("DOMActivate");
  1180. ]]>
  1181. </script>
  1182. </button>
  1183. <button id="btn_print" class="btn1_letter2" visibility="hidden" style="left:1121px; top:7px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  1184. <caption>출력</caption>
  1185. <script type="javascript" ev:event="DOMActivate">
  1186. <![CDATA[
  1187. /*
  1188. ****************************************************************
  1189. * 임미정 선생님 요청으로 출력 기능 제외 by 2010-03-12
  1190. ****************************************************************
  1191. */
  1192. model.removeNodeset("/root/send");
  1193. model.makeNode("/root/send/infolist");
  1194. //send 재구성
  1195. model.copyNode("/root/send/infolist", "/root/main/infolist");
  1196. for(var i=1; i<=getNodesetCount("/root/send/infolist/list"); i++) {
  1197. if(model.getValue("/root/send/infolist/list["+i+"]/etcconcennm") == "")
  1198. model.makeValue("/root/send/infolist/list["+i+"]/concennm", model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/send/infolist/list["+i+"]/concencd")+"']/cdnm"));
  1199. else
  1200. model.makeValue("/root/send/infolist/list["+i+"]/concennm", model.getValue("/root/send/infolist/list["+i+"]/concencd"));
  1201. if(model.getValue("/root/send/infolist/list["+i+"]/prcpcd") != "기타")
  1202. model.makeValue("/root/send/infolist/list["+i+"]/pdprcpnm", model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/send/infolist/list["+i+"]/pdprcpcd")+"']/prcpnm"));
  1203. else model.makeValue("/root/send/infolist/list["+i+"]/pdprcpnm", model.getValue("/root/send/infolist/list["+i+"]/pdprcpcd"));
  1204. model.makeValue("/root/send/infolist/list["+i+"]/sa", model.getValue("/root/main/cond/sa"));
  1205. }
  1206. exeReportPreview("RPMNW09000", "XMLSTR");
  1207. ]]>
  1208. </script>
  1209. </button>
  1210. </group>
  1211. <caption id="caption1" class="tit_2" style="left:0px; top:53px; width:100px; height:13px; ">환자리스트</caption>
  1212. <output id="opt_patnum" ref="/root/main/cond/patnum" class="input_default" visibility="hidden" style="left:94px; top:50px; width:55px; height:19px; "/>
  1213. <line id="line1" class="line_1" style="x1:0px; y1:70px; x2:180px; y2:70px; "/>
  1214. <datagrid id="grd_patlist" nodeset="/root/main/patinfo/patlist" autoresize="true" caption="병실^환자명" colsep="^" colwidth="50, 112" ellipsis="true" extendlastcol="scroll" mergecells="bycol" mergecellsfixedrows="bycolrec" rowheader="select" rowsep="|" tooltip="true" style="left:0px; top:75px; width:180px; height:688px; ">
  1215. <col ref="roomcd"/>
  1216. <col ref="patnm"/>
  1217. <script type="javascript" ev:event="ondblclick">
  1218. <![CDATA[
  1219. // 첫번째 그리드 삭제하기
  1220. model.removeNodeset("/root/main/recordlist");
  1221. model.makeNode("/root/main/recordlist");
  1222. // 두번째 그리드 삭제하기
  1223. model.removeNodeset("/root/main/infolist");
  1224. model.makeNode("/root/main/infolist");
  1225. //send초기화
  1226. model.removeNodeset("/root/send");
  1227. //환자리스트의 row
  1228. var row = grd_patlist.row;
  1229. opt_patnum.value=row;
  1230. var wardcd = model.getValue("/root/main/patinfo/patlist["+row+"]/wardcd");
  1231. var roomcd = model.getValue("/root/main/patinfo/patlist["+row+"]/roomcd");
  1232. //기록환자 세팅
  1233. var pid = model.getValue("/root/main/patinfo/patlist["+row+"]/pid");
  1234. var patnm = model.getValue("/root/main/patinfo/patlist["+row+"]/patnm");
  1235. var sa = model.getValue("/root/main/patinfo/patlist["+row+"]/sa");
  1236. var indd = model.getValue("/root/main/patinfo/patlist["+row+"]/indd");
  1237. var instcd = model.getValue("/root/main/patinfo/patlist["+row+"]/instcd");
  1238. var pid = model.getValue("/root/main/patinfo/patlist["+row+"]/pid");
  1239. var cretno = model.getValue("/root/main/patinfo/patlist["+row+"]/cretno");
  1240. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1241. model.makeValue("/root/send/reqdata/roomcd", roomcd);
  1242. // indd, instcd, pid, cretno send로 보내기
  1243. model.makeValue("/root/send/reqdata/indd", indd);
  1244. model.makeValue("/root/send/reqdata/instcd", instcd);
  1245. model.makeValue("/root/send/reqdata/pid", pid);
  1246. model.makeValue("/root/send/reqdata/cretno", cretno);
  1247. model.makeValue("/root/main/cond/roomnm", roomcd);
  1248. model.makeValue("/root/main/cond/pid", pid);
  1249. model.makeValue("/root/main/cond/patnm", patnm);
  1250. model.makeValue("/root/main/cond/sa", sa);
  1251. //환자리스트 및
  1252. model.makeNode("/root/main/patinfo");
  1253. copyNodeListType("/root/main/patinfo", "/root/init/getwardpatinfo/patlist", "replace");
  1254. //투석액 리스트 가져오기
  1255. submit("TRMNW09005");
  1256. //현재날짜로 세팅
  1257. var currentDate = getCurrentDate();
  1258. ipt_recdd.value = currentDate;
  1259. // 날짜값 받아오기
  1260. var recdd = ipt_recdd.value;
  1261. var frstdd = ipt_frstdd.value;
  1262. var lastdd = ipt_lastdd.value;
  1263. model.makeValue("/root/send/reqdata/frstdate", frstdd);
  1264. model.makeValue("/root/send/reqdata/lastdate", lastdd);
  1265. //상단정보 세팅
  1266. var ordtype = model.getValue("/root/main/patinfo/patlist["+row+"]/ordtype");
  1267. var param = ordtype+"▦"+pid+"▦"+indd+"▦"+cretno+"▦"+instcd+"▦"+recdd;
  1268. setParameter("condparam", param);
  1269. modal("SPMMO08900", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  1270. submit("TRMNW09004");
  1271. model.copyNode("/root/main/infolist", "/root/init/infolist");
  1272. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  1273. var pdetcprcpnm, etcconcennm;
  1274. //차이, subtotal
  1275. //현재행 날짜
  1276. var rowdate="";
  1277. //비교날짜: 첫번째 행의 날짜
  1278. var tempdate=model.getValue("/root/main/infolist/list[1]/recdd");
  1279. var temppid=model.getValue("/root/main/infolist/list[1]/pid");
  1280. var subtotal = 0;
  1281. var dragamtval, injamtval, diff;
  1282. for(var i=1; i<=getNodesetCount("/root/main/infolist/list"); i++) {
  1283. pdetcprcpnm = model.getValue("/root/main/infolist/list["+i+"]/pdetcprcpnm");
  1284. etcconcennm = model.getValue("/root/main/infolist/list["+i+"]/etcconcennm");
  1285. if(!(pdetcprcpnm == "" || pdetcprcpnm == null)) {
  1286. model.setValue("/root/main/infolist/list["+i+"]/pdprcpcd", pdetcprcpnm);
  1287. model.setValue("/root/main/infolist/list["+i+"]/prcpcd", "기타");
  1288. }
  1289. if(!(etcconcennm == "" || etcconcennm == null)) {
  1290. model.setValue("/root/main/infolist/list["+i+"]/concencd", etcconcennm);
  1291. }
  1292. dragamtval = model.getValue("/root/main/infolist/list["+i+"]/dragamtval");
  1293. injamtval = model.getValue("/root/main/infolist/list["+i+"]/injamtval");
  1294. rowdate = model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8);
  1295. rowpid = model.getValue("/root/main/infolist/list["+i+"]/pid");
  1296. //현재행 날짜와 비교날짜를 비교해서 다르면 subtotal을 그만 쌓고 초기화한다.
  1297. if(tempdate != rowdate) {
  1298. subtotal = 0;
  1299. tempdate = rowdate;
  1300. } else if(temppid != rowpid && tempdate == rowdate) {
  1301. subtotal = 0;
  1302. temppid = rowpid;
  1303. }
  1304. // if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  1305. if(model.getValue("/root/main/infolist/list["+i+"]/diff") != "") { //주입량, 배액량이 둘다 있을 경우에만 = 차이가 있을 경우에만 subtotal 계산
  1306. // diff = injamtval - dragamtval ;
  1307. // model.makeValue("/root/main/infolist/list["+i+"]/diff", diff);
  1308. subtotal=Number(subtotal)+Number(model.getValue("/root/main/infolist/list["+i+"]/diff"));
  1309. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", subtotal);
  1310. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  1311. model.makeValue("/root/main/infolist/list["+i+"]/diff", "");
  1312. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", "");
  1313. }
  1314. }
  1315. grd_info.refresh();
  1316. for(var i=1; i < grd_info.rows; i++) {
  1317. //tooltip변경
  1318. grd_info.tooltipText(i, grd_info.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/infolist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1319. grd_info.tooltipText(i, grd_info.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/infolist/list["+i+"]/concencd")+"']/cdnm");
  1320. }
  1321. //해당날짜일 경우 레코드 그리드로 올림
  1322. for(var i=1; i<grd_info.rows; i++) {
  1323. if(ipt_recdd.value == model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8)) {
  1324. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  1325. }
  1326. }
  1327. grd_record.refresh();
  1328. for(var i=1; i < grd_record.rows; i++) {
  1329. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1330. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  1331. if( (i % 2) == 1)
  1332. grd_record.rowStyle(i, "data", "background-color") = "#FFFFFF";
  1333. else
  1334. grd_record.rowStyle(i, "data", "background-color") = "#F4F4F4";
  1335. }
  1336. model.refresh();
  1337. ]]>
  1338. </script>
  1339. </datagrid>
  1340. <caption id="caption19" class="cell_1" style="left:193px; top:45px; width:55px; height:23px; text-align:center; ">업무일자</caption>
  1341. <input id="ipt_recdd" ref="/root/main/cond/recdd" class="input_default" inputtype="date" style="left:250px; top:47px; width:100px; height:19px; ">
  1342. <script type="javascript" ev:event="xforms-value-changed">
  1343. <![CDATA[
  1344. /*
  1345. ***********************************************************
  1346. ** 날짜 변경은 등록번호(pid)가 있을 경우에 가능하도록 한다.
  1347. * 1. 환자번호가 없을 경우 messageBox 띄운 후 현재 날짜로 지정
  1348. * 2. 환자번호가 있을 경우 재원기간 내에서 조회가능
  1349. ***********************************************************
  1350. */
  1351. //환자정보
  1352. var wardcd = cmb_ward.value;
  1353. var roomcd = opt_roomcd.value;
  1354. var pid = grd_pid.value;
  1355. var patnm = opt_patnm.value;
  1356. var patnum = opt_patnum.value;
  1357. var indd, dschdd;
  1358. //기록 날짜 정보
  1359. var recdd = ipt_recdd.value;
  1360. var frstDate = recdd;
  1361. var lastDate = recdd;
  1362. if(pid == "") { // 선택된 환자가 없을 경우
  1363. messageBox("환자정보가 ", "I004");
  1364. ipt_recdd.value = getCurrentDate();
  1365. } else {
  1366. if(patnum != "") { // 환자리스트에서 환자를 선택한경우 -> 재원인 경우
  1367. indd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/indd");
  1368. dschdd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/dschdd");
  1369. wardcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/wardcd");
  1370. roomcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/roomcd");
  1371. settingrnid = model.getValue("/root/main/cond/settingrnid");
  1372. instcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/instcd");
  1373. cretno = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/cretno");
  1374. } else { // 상단정보에서 환자를 선택한 경우 -> 퇴원환자인 경우
  1375. indd = model.getValue("/root/temp/paminfo/list/indd");
  1376. dschdd = model.getValue("/root/temp/paminfo/list/dschdd");
  1377. wardcd = model.getValue("/root/temp/paminfo/list/wardcd");
  1378. roomcd = model.getValue("/root/temp/paminfo/list/roomcd");
  1379. settingrnid = model.getValue("/root/main/cond/settingrnid");
  1380. instcd = model.getValue("/root/temp/paminfo/list/instcd");
  1381. cretno = model.getValue("/root/temp/paminfo/list/cretno");
  1382. }
  1383. if(!(recdd >= indd && recdd <= dschdd)) { //기록날짜가 재원기간을 벗어나면..
  1384. messageBox("["+patnm+"]님의 기록가능한 날짜는 " +indd.substr(0,4)+"-"+indd.substr(4,2)+"-"+indd.substr(6,2)+"일에서 "
  1385. +dschdd.substr(0,4)+"-"+dschdd.substr(4,2)+"-"+dschdd.substr(6,2)+"일입니다.\n선택하신 날짜는 기록을", "E001");
  1386. ipt_recdd.value = getCurrentDate();
  1387. } else { // 벗어나지 않을때..
  1388. //send 초기화
  1389. model.removeNodeset("/root/send");
  1390. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1391. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  1392. model.makeValue("/root/send/reqdata/roomcd", roomcd);
  1393. model.makeValue("/root/send/reqdata/indd", indd);
  1394. model.makeValue("/root/send/reqdata/instcd", instcd);
  1395. model.makeValue("/root/send/reqdata/pid", pid);
  1396. model.makeValue("/root/send/reqdata/cretno", cretno);
  1397. model.makeValue("/root/send/reqdata/frstdate", frstDate);
  1398. model.makeValue("/root/send/reqdata/lastdate", lastDate);
  1399. if(pid!="") { //환자정보가 있을경우 레코드 그리드에 해당 기록을 가져온다
  1400. submit("TRMNW09004");
  1401. // 첫번째 그리드 삭제하기
  1402. model.removeNodeset("/root/main/recordlist");
  1403. model.makeNode("/root/main/recordlist");
  1404. model.copyNode("/root/main/recordlist", "/root/init/infolist");
  1405. var pdetcprcpnm, etcconcennm;
  1406. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  1407. for(var i=1; i<=getNodesetCount("/root/main/recordlist/list"); i++) {
  1408. pdetcprcpnm = model.getValue("/root/main/recordlist/list["+i+"]/pdetcprcpnm");
  1409. etcconcennm = model.getValue("/root/main/recordlist/list["+i+"]/etcconcennm");
  1410. if(!(pdetcprcpnm == "" || pdetcprcpnm == null)) {
  1411. model.setValue("/root/main/recordlist/list["+i+"]/pdprcpcd", pdetcprcpnm);
  1412. model.setValue("/root/main/recordlist/list["+i+"]/prcpcd", "기타");
  1413. }
  1414. if(!(etcconcennm == "" || etcconcennm == null)) {
  1415. model.setValue("/root/main/recordlist/list["+i+"]/concencd", etcconcennm);
  1416. }
  1417. }
  1418. grd_record.refresh();
  1419. var subtotal = 0;
  1420. var dragamtval, injamtval, diff;
  1421. //차이, subtotal
  1422. for(var i = 1; i < grd_record.rows; i++){
  1423. dragamtval = model.getValue("/root/main/recordlist/list["+i+"]/dragamtval");
  1424. injamtval = model.getValue("/root/main/recordlist/list["+i+"]/injamtval");
  1425. if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  1426. diff = injamtval - dragamtval ;
  1427. model.makeValue("/root/main/recordlist/list["+i+"]/diff", diff);
  1428. subtotal=Number(subtotal)+Number(model.getValue("/root/main/recordlist/list["+i+"]/diff"));
  1429. model.makeValue("/root/main/recordlist/list["+i+"]/subtotal", subtotal);
  1430. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  1431. model.makeValue("/root/main/recordlist/list["+i+"]/diff", "");
  1432. model.makeValue("/root/main/recordlist/list["+i+"]/subtotal", "");
  1433. }
  1434. //원처벙코드 저장
  1435. orgPrcpcd[i] = model.getValue("/root/main/recordlist/list["+i+"]/prcpcd");
  1436. //tooltip 변경
  1437. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1438. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  1439. }
  1440. }
  1441. model.refresh();
  1442. }
  1443. }
  1444. ]]>
  1445. </script>
  1446. </input>
  1447. <caption id="caption2" class="cell_1" style="left:355px; top:45px; width:40px; height:23px; text-align:center; ">병실</caption>
  1448. <output id="opt_roomcd" ref="/root/main/cond/roomnm" class="input_default" style="left:397px; top:46px; width:55px; height:19px; "/>
  1449. <caption id="caption16" class="cell_1" style="left:456px; top:45px; width:50px; height:23px; text-align:center; ">환자명</caption>
  1450. <output id="opt_patnm" ref="/root/main/cond/patnm" class="input_default" style="left:507px; top:46px; width:80px; height:19px; "/>
  1451. <caption id="caption17" class="cell_1" style="left:591px; top:45px; width:55px; height:23px; text-align:center; ">등록번호</caption>
  1452. <output id="grd_pid" ref="/root/main/cond/pid" class="input_default" style="left:648px; top:46px; width:80px; height:19px; "/>
  1453. <caption id="caption18" class="cell_1" style="left:732px; top:45px; width:40px; height:23px; text-align:center; ">S/A</caption>
  1454. <output id="opt_sa" ref="/root/main/cond/sa" class="input_default" style="left:774px; top:46px; width:55px; height:19px; "/>
  1455. <line id="line4" class="line_1" style="x1:190px; y1:70px; x2:1194px; y2:70px; "/>
  1456. <datagrid id="grd_record" nodeset="/root/main/recordlist/list" class="datagrid2" caption="wardcd^roomcd^patnm^pid^recdd^일시^처방코드^투석액^농도(%)^횟차^주입일자^주입&#xA;시간^주입량(ml)^배액일자^배액&#xA;시간^배액량(ml)^차이^subtotal^비고^RECSEQ^pdetcprcpnm^concennm^lastupdtrid^status" colsep="^" colwidth="0, 0, 0, 0, 0, 0, 70, 200, 70, 40, 85, 40, 75, 85, 40, 75, 75, 75, 276, 0, 0, 0, 0, 0" ellipsis="true" frozencols="9" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" tooltip="true" style="left:190px; top:75px; width:1004px; height:257px; ">
  1457. <col ref="wardcd" visibility="hidden"/>
  1458. <col ref="roomcd" visibility="hidden"/>
  1459. <col ref="patnm" visibility="hidden"/>
  1460. <col ref="pid" visibility="hidden"/>
  1461. <col ref="recdd" visibility="hidden"/>
  1462. <col ref="rectm" visibility="hidden"/>
  1463. <col ref="prcpcd" type="combo">
  1464. <choices>
  1465. <itemset nodeset="/root/init/dialliqd/list">
  1466. <label ref="prcpcd"/>
  1467. <value ref="prcpcd"/>
  1468. </itemset>
  1469. </choices>
  1470. </col>
  1471. <col editmode="input" ref="pdprcpcd" type="combo">
  1472. <choices>
  1473. <itemset nodeset="/root/init/dialliqd/list">
  1474. <label ref="prcpnm"/>
  1475. <value ref="prcpcd"/>
  1476. </itemset>
  1477. </choices>
  1478. </col>
  1479. <col editmode="input" ref="concencd" type="combo" style="text-align:right; ">
  1480. <choices>
  1481. <itemset nodeset="/root/init/M0561list/M0561">
  1482. <label ref="cdnm"/>
  1483. <value ref="cdid"/>
  1484. </itemset>
  1485. </choices>
  1486. </col>
  1487. <col ref="timscd" type="input" format="99" style="text-align:right; "/>
  1488. <col ref="injdd" type="inputdate"/>
  1489. <col ref="injtm" type="input" format="hh:nn" style="text-align:right; "/>
  1490. <col ref="injamtval" type="input" format="999,999" style="text-align:right; "/>
  1491. <col ref="dragdd" type="inputdate"/>
  1492. <col ref="dragtm" type="input" format="hh:nn" style="text-align:right; "/>
  1493. <col ref="dragamtval" type="input" format="999,999" style="text-align:right; "/>
  1494. <col ref="diff" format="999999" style="text-align:right; "/>
  1495. <col ref="subtotal" format="999999" style="text-align:right; "/>
  1496. <col ref="cmt" type="input" style="text-align:left; "/>
  1497. <col ref="recseq" visibility="hidden"/>
  1498. <col ref="pdetcprcpnm" visibility="hidden"/>
  1499. <col ref="etcconcennm" visibility="hidden"/>
  1500. <col ref="lastupdtrid" visibility="hidden"/>
  1501. <col ref="status" visibility="hidden"/>
  1502. <script type="javascript" ev:event="xforms-value-changed">
  1503. <![CDATA[
  1504. //현재행
  1505. var recrow=grd_record.row;
  1506. if(grd_record.col == grd_record.colRef("injamtval") || grd_record.col == grd_record.colRef("dragamtval")) {
  1507. //현재행 날짜
  1508. var rowdate="";
  1509. //비교날짜: 첫번째 행의 날짜
  1510. var tempdate=ipt_recdd.value.substr(0,8);
  1511. var subtotal = 0;
  1512. var dragamtval, injamtval, diff;
  1513. //차이, subtotal
  1514. for(var i = 1; i < grd_record.rows; i++){
  1515. dragamtval = model.getValue("/root/main/recordlist/list["+i+"]/dragamtval");
  1516. injamtval = model.getValue("/root/main/recordlist/list["+i+"]/injamtval");
  1517. if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  1518. diff = injamtval - dragamtval ;
  1519. model.makeValue("/root/main/recordlist/list["+i+"]/diff", diff);
  1520. subtotal=Number(subtotal)+Number(model.getValue("/root/main/recordlist/list["+i+"]/diff"));
  1521. model.makeValue("/root/main/recordlist/list["+i+"]/subtotal", subtotal);
  1522. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  1523. model.makeValue("/root/main/recordlist/list["+i+"]/diff", "");
  1524. model.makeValue("/root/main/recordlist/list["+i+"]/subtotal", "");
  1525. }
  1526. }
  1527. } else if(grd_record.col == grd_record.colRef("prcpcd") || grd_record.col == grd_record.colRef("pdprcpcd")) {
  1528. //투석액 기타값 입력시
  1529. var pdprcpcd = model.getValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd");
  1530. var pdetcprcpnm = model.getValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm");
  1531. var prcpcd = model.getValue("/root/main/recordlist/list["+recrow+"]/prcpcd");
  1532. // prcpcd가 infolist에 있던 정보와 다르면..
  1533. if(prcpcd != orgPrcpcd[recrow]) {
  1534. orgPrcpcd[recrow] = prcpcd;
  1535. pdprcpcd = prcpcd;
  1536. model.setValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd", prcpcd);
  1537. }
  1538. //pdprcpcd가 infolist에 있던 정보와 다르면..
  1539. if(pdprcpcd != orgPrcpcd[recrow]) {
  1540. var etcflag = true;
  1541. //처방리스트에 있는 목록이 아니면..(기타)
  1542. for(var i=1; i<=getNodesetCount("/root/init/dialliqd/list"); i++) {
  1543. if(pdprcpcd == model.getValue("/root/init/dialliqd/list["+i+"]/prcpcd")) {
  1544. etcflag = false;
  1545. break;
  1546. }
  1547. }
  1548. if(etcflag) { //기타값이면..
  1549. orgPrcpcd[recrow] = "기타";
  1550. prcpcd = "기타";
  1551. model.setValue("/root/main/recordlist/list["+recrow+"]/prcpcd", prcpcd);
  1552. } else {
  1553. orgPrcpcd[recrow] = pdprcpcd;
  1554. prcpcd = pdprcpcd;
  1555. model.setValue("/root/main/recordlist/list["+recrow+"]/prcpcd", pdprcpcd);
  1556. }
  1557. }
  1558. grd_record.refresh();
  1559. for(var i = 1; i < grd_record.rows; i++) {
  1560. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1561. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  1562. }
  1563. //투석액 기타값 처리사항
  1564. if(pdprcpcd == "기타" && pdetcprcpnm == "") { //기타값 처음 입력시
  1565. group2.visible = "false";
  1566. ipt_pdetcprcpnm.value = "";
  1567. group2.attribute("top") = 131+(23*(recrow-grd_record.topRow));
  1568. group2.visible = "true";
  1569. model.setFocus("ipt_pdetcprcpnm");
  1570. } else if (pdprcpcd == "기타" && pdetcprcpnm != "") { //기타값 재입력시
  1571. group2.visible = "false";
  1572. ipt_pdetcprcpnm.value = model.getValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm");
  1573. group2.attribute("top") = 131+(23*(recrow-grd_record.topRow));
  1574. group2.visible = "true";
  1575. model.setFocus("ipt_pdetcprcpnm");
  1576. } else if (model.getValue("/root/init/dialliqd/list[prcpcd='"+pdprcpcd+"']/prcpnm") != "") { //기타값 이외의 값이 입력시 기타값 초기화
  1577. ipt_pdetcprcpnm.value = "";
  1578. model.setValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm", "");
  1579. } else if (model.getValue("/root/init/dialliqd/list[prcpcd='"+pdprcpcd+"']/prcpnm") == "") { //직접 값을 입력할 시
  1580. var pdetcprcpnm = model.getValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd");
  1581. model.setValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm", pdetcprcpnm);
  1582. ipt_pdetcprcpnm.value=pdetcprcpnm;
  1583. }
  1584. } else if(grd_record.col == grd_record.colRef("concencd")) {
  1585. //농도 기타값 입력시
  1586. var concencd = model.getValue("/root/main/recordlist/list["+recrow+"]/concencd");
  1587. var etcconcennm = model.getValue("/root/main/recordlist/list["+recrow+"]/etcconcennm");
  1588. //농도 기타값 처리사항
  1589. if(parseFloat(etcconcennm) >100.000) { // 기타값이 두자리수(99.999) 이상이면 초기화, 재입력
  1590. messageBox("농도값은 100을 넘을 수 없습니다.", "");
  1591. model.setValue("/root/main/recordlist/list["+recrow+"]/concencd", "08");
  1592. model.setValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", "");
  1593. group5.visible = "false";
  1594. ipt_etcconcennm.value = "";
  1595. group5.attribute("top") = 131+(23*(recrow-grd_record.topRow));
  1596. group5.visible = "true";
  1597. model.setFocus("ipt_etcconcennm");
  1598. } else {
  1599. if(concencd == "08" && etcconcennm == "") { //기타값 처음 입력시
  1600. group5.visible = "false";
  1601. ipt_etcconcennm.value = "";
  1602. group5.attribute("top") = 131+(23*(recrow-grd_record.topRow));
  1603. group5.visible = "true";
  1604. model.setFocus("ipt_etcconcennm");
  1605. } else if (concencd == "08" && etcconcennm != "") { //기타값 재입력시
  1606. group5.visible = "false";
  1607. ipt_etcconcennm.value = model.getValue("/root/main/recordlist/list["+recrow+"]/etcconcennm");
  1608. group5.attribute("top") = 131+(23*(recrow-grd_record.topRow));
  1609. group5.visible = "true";
  1610. model.setFocus("ipt_etcconcennm");
  1611. } else if (model.getValue("/root/init/M0561list/M0561[cdid='"+concencd+"']/cdnm") != "") { //기타값 이외의 값이 입력시 기타값 초기화
  1612. ipt_etcconcennm.value = "";
  1613. model.setValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", "");
  1614. } else if (model.getValue("/root/init/M0561list/M0561[cdid='"+concencd+"']/cdnm") == "") { //직접 값을 입력할 시
  1615. var etcconcennm = model.getValue("/root/main/recordlist/list["+recrow+"]/concencd");
  1616. model.setValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", etcconcennm);
  1617. ipt_etcconcennm.value=etcconcennm;
  1618. }
  1619. }
  1620. }
  1621. model.refresh();
  1622. ]]>
  1623. </script>
  1624. <script type="javascript" ev:event="onendedit">
  1625. <![CDATA[
  1626. //시간 수정시 체크
  1627. var curRow = grd_record.row;
  1628. var injtm = model.getValue("/root/main/recordlist/list["+curRow+"]/injtm");
  1629. var dragtm = model.getValue("/root/main/recordlist/list["+curRow+"]/dragtm");
  1630. if(injtm != "") {
  1631. fCheckTime("injtm");
  1632. }
  1633. if(dragtm != "") {
  1634. fCheckTime("dragtm");
  1635. }
  1636. ]]>
  1637. </script>
  1638. <script type="javascript" ev:event="onclick">
  1639. <![CDATA[
  1640. // for(var i = 1; i < grd_record.rows; i++) {
  1641. // if( (i % 2) == 1)
  1642. // grd_record.rowStyle(i, "data", "background-color") = "#FFFFFF";
  1643. // else
  1644. // grd_record.rowStyle(i, "data", "background-color") = "#F4F4F4";
  1645. // }
  1646. ]]>
  1647. </script>
  1648. </datagrid>
  1649. <group id="group4" style="left:190px; top:340px; width:1002px; height:35px; vertical-align:top; ">
  1650. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1002px; height:35px; "/>
  1651. <caption id="caption11" class="search_name" style="left:16px; top:10px; width:86px; height:17px; ">업무일자 :</caption>
  1652. <button id="btn_search" class="btn1_letter2" disable.background-image="../../../com/commonweb/images/dis_btn5_letter4.gif" style="left:931px; top:7px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  1653. <caption>조회</caption>
  1654. <script type="javascript" ev:event="DOMActivate">
  1655. <![CDATA[
  1656. //send 초기화
  1657. model.removeNodeset("/root/send");
  1658. var pid = grd_pid.value;
  1659. var patnum = opt_patnum.value;
  1660. var wardcd = cmb_ward.value;
  1661. var settingrnid = model.getValue("/root/main/cond/settingrnid");
  1662. var roomcd = opt_roomcd.value;
  1663. var instcd, indd, cretno;
  1664. if(patnum != "") { // 환자리스트에서 환자를 선택한 경우 -> 재원인 경우
  1665. instcd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/instcd");
  1666. indd = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/indd");
  1667. cretno = model.getValue("/root/main/patinfo/patlist[pid='"+pid+"']/cretno");
  1668. } else { // 상단정보에서 환자를 선택한 경우 -> 퇴원환자
  1669. instcd = model.getValue("/root/temp/paminfo/list/instcd");
  1670. indd = model.getValue("/root/temp/paminfo/list/indd");
  1671. cretno = model.getValue("/root/temp/paminfo/list/cretno");
  1672. }
  1673. //조회일자를 세팅
  1674. var frstDate = ipt_frstdd.value;
  1675. var lastDate = ipt_lastdd.value;
  1676. var recdd = ipt_recdd.value;
  1677. model.makeValue("/root/send/reqdata/wardcd", wardcd);
  1678. model.makeValue("/root/send/reqdata/settingrnid", settingrnid);
  1679. model.makeValue("/root/send/reqdata/roomcd", roomcd);
  1680. model.makeValue("/root/send/reqdata/indd", indd);
  1681. model.makeValue("/root/send/reqdata/instcd", instcd);
  1682. model.makeValue("/root/send/reqdata/pid", pid);
  1683. model.makeValue("/root/send/reqdata/cretno", cretno);
  1684. model.makeValue("/root/send/reqdata/frstdate", frstDate);
  1685. model.makeValue("/root/send/reqdata/lastdate", lastDate);
  1686. if(pid!="") {
  1687. submit("TRMNW09004");
  1688. // 첫번째 그리드 삭제하기
  1689. model.removeNodeset("/root/main/recordlist");
  1690. model.makeNode("/root/main/recordlist");
  1691. // 두번째 그리드 삭제하기
  1692. model.removeNodeset("/root/main/infolist");
  1693. model.makeNode("/root/main/infolist");
  1694. model.copyNode("/root/main/infolist", "/root/init/infolist");
  1695. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  1696. var pdetcprcpnm, etcconcennm;
  1697. //현재행 날짜
  1698. var rowdate = "";
  1699. //비교날짜: 첫번째 행의 날짜
  1700. var tempdate = model.getValue("/root/main/infolist/list[1]/recdd").substr(0.8);
  1701. var temppid = model.getValue("/root/main/infolist/list[1]/pid");
  1702. var subtotal = 0;
  1703. var dragamtval, injamtval, diff;
  1704. for(var i=1; i<=getNodesetCount("/root/main/infolist/list"); i++) {
  1705. //기타일 경우 pdprcpcd, concencd를 기타값으로 바꿔준다
  1706. pdetcprcpnm = model.getValue("/root/main/infolist/list["+i+"]/pdetcprcpnm");
  1707. etcconcennm = model.getValue("/root/main/infolist/list["+i+"]/etcconcennm");
  1708. if(!(pdetcprcpnm == "" || pdetcprcpnm == null)) {
  1709. model.setValue("/root/main/infolist/list["+i+"]/pdprcpcd", pdetcprcpnm);
  1710. model.setValue("/root/main/infolist/list["+i+"]/prcpcd", "기타");
  1711. }
  1712. if(!(etcconcennm == "" || etcconcennm == null)) {
  1713. model.setValue("/root/main/infolist/list["+i+"]/concencd", etcconcennm);
  1714. }
  1715. //차이, subtotal
  1716. dragamtval = model.getValue("/root/main/infolist/list["+i+"]/dragamtval");
  1717. injamtval = model.getValue("/root/main/infolist/list["+i+"]/injamtval");
  1718. rowdate = model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8);
  1719. rowpid = model.getValue("/root/main/infolist/list["+i+"]/pid");
  1720. //현재행 날짜와 비교날짜를 비교해서 다르면 subtotal을 그만 쌓고 초기화한다.
  1721. if(tempdate != rowdate) {
  1722. subtotal = 0;
  1723. tempdate = rowdate;
  1724. } else if(temppid != rowpid && tempdate == rowdate) {
  1725. subtotal = 0;
  1726. temppid = rowpid;
  1727. }
  1728. // if(dragamtval != "" && injamtval != "") { //주입량, 배액량이 둘다 있을 경우에만 차이 계산
  1729. if(model.getValue("/root/main/infolist/list["+i+"]/diff") != "") { //주입량, 배액량이 둘다 있을 경우에만 = 차이가 있을 경우에만 subtotal 계산
  1730. // diff = injamtval - dragamtval ;
  1731. // model.makeValue("/root/main/infolist/list["+i+"]/diff", diff);
  1732. subtotal=Number(subtotal)+Number(model.getValue("/root/main/infolist/list["+i+"]/diff"));
  1733. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", subtotal);
  1734. } else { //주입량, 배액량 중 하나라도 공백이 되면.. 초기화
  1735. model.makeValue("/root/main/infolist/list["+i+"]/diff", "");
  1736. model.makeValue("/root/main/infolist/list["+i+"]/subtotal", "");
  1737. }
  1738. }
  1739. grd_info.refresh();
  1740. for(var i = 1; i < grd_info.rows; i++) {
  1741. //tooltip변경
  1742. grd_info.tooltipText(i, grd_info.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/infolist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1743. grd_info.tooltipText(i, grd_info.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/infolist/list["+i+"]/concencd")+"']/cdnm");
  1744. }
  1745. //해당날짜 기록이 존재하면 레코드 그리드에 복사
  1746. for(var i = 1; i < grd_info.rows; i++) {
  1747. if(recdd == model.getValue("/root/main/infolist/list["+i+"]/recdd").substr(0,8)) {
  1748. copyNodeListType("/root/main/recordlist", "/root/main/infolist/list["+i+"]", "after");
  1749. }
  1750. }
  1751. grd_record.refresh();
  1752. for(var i = 1; i < grd_record.rows; i++) {
  1753. grd_record.tooltipText(i, grd_record.colRef("pdprcpcd") ) = model.getValue("/root/init/dialliqd/list[prcpcd='"+model.getValue("/root/main/recordlist/list["+i+"]/pdprcpcd")+"']/prcpnm");
  1754. grd_record.tooltipText(i, grd_record.colRef("concencd") ) = model.getValue("/root/init/M0561list/M0561[cdid='"+model.getValue("/root/main/recordlist/list["+i+"]/concencd")+"']/cdnm");
  1755. if( (i % 2) == 1)
  1756. grd_record.rowStyle(i, "data", "background-color") = "#FFFFFF";
  1757. else
  1758. grd_record.rowStyle(i, "data", "background-color") = "#F4F4F4";
  1759. }
  1760. model.refresh();
  1761. }
  1762. ]]>
  1763. </script>
  1764. </button>
  1765. <line id="line5" class="line_4" style="x1:915px; y1:7px; x2:915px; y2:29px; "/>
  1766. <input id="ipt_frstdd" ref="/root/main/cond/frstdd" class="input_search" inputtype="date" style="left:105px; top:10px; width:90px; height:19px; "/>
  1767. <caption id="caption12" style="left:200px; top:11px; width:20px; height:20px; font-weight:bold; ">~</caption>
  1768. <input id="ipt_lastdd" ref="/root/main/cond/lastdd" class="input_search" inputtype="date" style="left:215px; top:10px; width:90px; height:19px; "/>
  1769. </group>
  1770. <line id="line6" class="line_1" style="x1:190px; y1:382px; x2:1194px; y2:382px; "/>
  1771. <datagrid id="grd_info" nodeset="/root/main/infolist/list" class="datagrid2" caption="wardcd^roomcd^patnm^pid^업무일자^일시^처방코드^투석액^농도(%)^횟차^주입일자^주입&#xA;시간^주입량(ml)^배액일자^배액&#xA;시간^배액량(ml)^차이^subtotal^비고^RECSEQ^pdetcprcpnm^etcconcennm^lastupdtrid" colsep="^" colwidth="0, 0, 0, 0, 75, 0, 70, 200, 70, 40, 85, 40, 75, 85, 40, 75, 75, 75, 276, 0, 0, 0, 0" ellipsis="true" frozencols="9" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" tooltip="true" style="left:190px; top:387px; width:1004px; height:360px; text-align:center; ">
  1772. <col ref="wardcd" visibility="hidden"/>
  1773. <col ref="roomcd" visibility="hidden"/>
  1774. <col ref="patnm" visibility="hidden"/>
  1775. <col ref="pid" visibility="hidden"/>
  1776. <col ref="recdd" format="yyyy-mm-dd 24hh:mm"/>
  1777. <col ref="rectm" visibility="hidden"/>
  1778. <col disabled="true" ref="prcpcd" type="combo" style="text-align:left; ">
  1779. <choices>
  1780. <itemset nodeset="/root/init/dialliqd/list">
  1781. <label ref="prcpcd"/>
  1782. <value ref="prcpcd"/>
  1783. </itemset>
  1784. </choices>
  1785. </col>
  1786. <col disabled="true" editmode="input" ref="pdprcpcd" type="combo" style="text-align:left; ">
  1787. <choices>
  1788. <itemset nodeset="/root/init/dialliqd/list">
  1789. <label ref="prcpnm"/>
  1790. <value ref="prcpcd"/>
  1791. </itemset>
  1792. </choices>
  1793. </col>
  1794. <col disabled="true" editmode="input" ref="concencd" type="combo" style="text-align:right; ">
  1795. <choices>
  1796. <itemset nodeset="/root/init/M0561list/M0561">
  1797. <label ref="cdnm"/>
  1798. <value ref="cdid"/>
  1799. </itemset>
  1800. </choices>
  1801. </col>
  1802. <col ref="timscd" style="text-align:right; "/>
  1803. <col disabled="true" ref="injdd" type="inputdate"/>
  1804. <col ref="injtm" format="hh:nn" style="text-align:right; "/>
  1805. <col ref="injamtval" format="999999" style="text-align:right; "/>
  1806. <col disabled="true" ref="dragdd" type="inputdate"/>
  1807. <col ref="dragtm" format="hh:nn" style="text-align:right; "/>
  1808. <col ref="dragamtval" format="999999" style="text-align:right; "/>
  1809. <col ref="diff" format="999999" style="text-align:right; "/>
  1810. <col ref="subtotal" format="999999" style="text-align:right; "/>
  1811. <col ref="cmt" style="text-align:left; "/>
  1812. <col ref="recseq" visibility="hidden"/>
  1813. <col ref="pdetcprcpnm" visibility="hidden"/>
  1814. <col ref="etcconcennm" visibility="hidden"/>
  1815. <col ref="lastupdtrid" visibility="hidden"/>
  1816. <script type="javascript" ev:event="onmousedown">
  1817. <![CDATA[
  1818. fShowPopupMenu("grd_info","/root/main/menuitems/item");
  1819. ]]>
  1820. </script>
  1821. <script type="javascript" ev:event="DOMFocusOut">
  1822. <![CDATA[
  1823. initPopupMenu();
  1824. ]]>
  1825. </script>
  1826. </datagrid>
  1827. <group id="group2" visibility="hidden" style="left:281px; top:131px; width:225px; height:55px; background-color:#87CEFA; ">
  1828. <caption id="caption3" class="tit_2" style="left:0px; top:5px; width:87px; height:14px; ">투석액 기타</caption>
  1829. <input id="ipt_pdetcprcpnm" ref="/root/main/cond/etcprcplabel" style="left:15px; top:20px; width:100px; height:19px; "/>
  1830. <button id="btn_etcprcpok" class="btn5_letter2" navindex="22" disable.background-image="../../../com/commonweb/images/dis_btn5_letter2.gif" style="left:125px; top:20px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn5_letter2.gif; ">
  1831. <caption>확인</caption>
  1832. <script type="javascript" ev:event="DOMActivate">
  1833. <![CDATA[
  1834. var recrow=grd_record.row;
  1835. if(ipt_pdetcprcpnm.value != "") {
  1836. if(ipt_pdetcprcpnm.value == "기타") {
  1837. messageBox("'기타'라는 용어는 쓸 수 없습니다.","");
  1838. ipt_pdetcprcpnm.value="";
  1839. model.setFocus("ipt_pdetcprcpnm");
  1840. } else {
  1841. model.makeValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm", ipt_pdetcprcpnm.value);
  1842. model.setValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd", ipt_pdetcprcpnm.value);
  1843. group2.visible = false;
  1844. }
  1845. } else {
  1846. ipt_pdetcprcpnm.value="-";
  1847. model.makeValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm", ipt_pdetcprcpnm.value);
  1848. model.setValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd", ipt_pdetcprcpnm.value);
  1849. group2.visible = false;
  1850. }
  1851. model.refresh();
  1852. ]]>
  1853. </script>
  1854. </button>
  1855. <button id="btn_etcprcpcl" class="btn5_letter2" navindex="22" disable.background-image="../../../com/commonweb/images/dis_btn5_letter2.gif" style="left:170px; top:20px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn5_letter2.gif; ">
  1856. <caption>취소</caption>
  1857. <script type="javascript" ev:event="DOMActivate">
  1858. <![CDATA[
  1859. var recrow=grd_record.row;
  1860. ipt_pdetcprcpnm.value="";
  1861. model.setValue("/root/main/recordlist/list["+recrow+"]/pdprcpcd", model.getValue("/root/main/recordlist/list["+recrow+"]/pdetcprcpnm"));
  1862. group2.visible = false;
  1863. ]]>
  1864. </script>
  1865. </button>
  1866. </group>
  1867. <group id="group5" visibility="hidden" style="left:481px; top:131px; width:225px; height:55px; background-color:#87CEFA; ">
  1868. <caption id="caption4" class="tit_2" style="left:0px; top:5px; width:87px; height:13px; ">농도 기타</caption>
  1869. <input id="ipt_etcconcennm" ref="/root/main/cond/etcconcenlabel" maxlength="6" format="#.999" style="left:15px; top:20px; width:100px; height:19px; "/>
  1870. <button id="btn_etcconcenok" class="btn5_letter2" navindex="22" disable.background-image="../../../com/commonweb/images/dis_btn5_letter2.gif" style="left:125px; top:20px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn5_letter2.gif; ">
  1871. <caption>확인</caption>
  1872. <script type="javascript" ev:event="DOMActivate">
  1873. <![CDATA[
  1874. var recrow = grd_record.row;
  1875. var etcconcennm = ipt_etcconcennm.value;
  1876. if(parseFloat(etcconcennm) > 100.000) {
  1877. messageBox("농도값은 100을 넘을 수 없습니다.", "");
  1878. ipt_etcconcennm.value = "";
  1879. model.setFocus("ipt_etcconcennm");
  1880. } else if (model.getValue("/root/init/M0561list/M0561[cdnm='"+etcconcennm+"']/cdid") != "") { //농도코드에 있는 값이면 그 값으로 대체
  1881. ipt_etcconcennm.value = "";
  1882. model.setValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", "");
  1883. model.setValue("/root/main/recordlist/list["+recrow+"]/concencd", model.getValue("/root/init/M0561list/M0561[cdnm='"+etcconcennm+"']/cdid"));
  1884. group5.visible = false;
  1885. } else if(etcconcennm != "") {
  1886. model.makeValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", etcconcennm);
  1887. model.setValue("/root/main/recordlist/list["+recrow+"]/concencd", etcconcennm);
  1888. group5.visible = false;
  1889. } else {
  1890. ipt_etcconcennm.value="0";
  1891. model.makeValue("/root/main/recordlist/list["+recrow+"]/etcconcennm", ipt_etcconcennm.value);
  1892. model.setValue("/root/main/recordlist/list["+recrow+"]/concencd", ipt_etcconcennm.value);
  1893. group5.visible = false;
  1894. }
  1895. model.refresh();
  1896. ]]>
  1897. </script>
  1898. </button>
  1899. <button id="btn_etcconcencl" class="btn5_letter2" navindex="22" disable.background-image="../../../com/commonweb/images/dis_btn5_letter2.gif" style="left:170px; top:20px; width:42px; height:19px; background-image:../../../com/commonweb/images/btn5_letter2.gif; ">
  1900. <caption>취소</caption>
  1901. <script type="javascript" ev:event="DOMActivate">
  1902. <![CDATA[
  1903. var recrow=grd_record.row;
  1904. ipt_etcconcennm.value="";
  1905. model.setValue("/root/main/recordlist/list["+recrow+"]/concencd", model.getValue("/root/main/recordlist/list["+recrow+"]/etcconcennm"));
  1906. group5.visible = false;
  1907. ]]>
  1908. </script>
  1909. </button>
  1910. </group>
  1911. <caption id="caption5" style="left:1169px; top:750px; width:26px; height:13px; ">[표]</caption>
  1912. </group>
  1913. </xhtml:body>
  1914. </xhtml:html>