SSMRC03130_LC.js 122 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412
  1. /*
  2. - =======================================================================================
  3. Image EMR Viewer Program (SSMRC03130_LC.js)
  4. - Version :
  5. 1) : Ver.1.00.00
  6. - =======================================================================================
  7. */
  8. // 다중 페이지 지원을 위한 파일 패스와 페이지 정보
  9. var g_path;
  10. var g_page;
  11. var g_page_lut;
  12. var g_form_count;
  13. var g_outertext;
  14. var g_recrowno;
  15. var g_temp_path;
  16. var g_temp_page;
  17. var g_recnameArr;
  18. function comparePage()
  19. {
  20. var count;
  21. var windowleft = 0;
  22. var windowtop = 0;
  23. var ImgPage = 0;
  24. if (f_View.Pagetotal > 0)
  25. {
  26. if (model.alert("총 " + getSelectPageCount() + "페이지를 선택하였습니다.\n계속하려면 예를 누르고 중지하려면 아니오를 누르십시오.", "페이지 비교", 0x20 | 4) == 6)
  27. {
  28. for(count = 1; count <= f_View.Pagetotal; count++)
  29. {
  30. if(f_View.ThumbnailSelect(count) == true)
  31. {
  32. ImgPage = f_View.PageFilePage(count) + 1
  33. model.setValue("/root/main/chartpath", f_View.PageFilePath(count) + "|" + ImgPage);
  34. window.load("SPMRC03100.xrw", "modeless", "imgemrviewer", "", "/root/main/chartpath", "/root/main/chartpath");
  35. }
  36. }
  37. }
  38. else
  39. {
  40. }
  41. }
  42. }
  43. function formatDate(value)
  44. {
  45. return value.substr(0, 4) + "-" +
  46. value.substr(4, 2) + "-" +
  47. value.substr(6, 2);
  48. }
  49. function setChartViewerSize(newWidth, newHeight)
  50. {
  51. var obj;
  52. var obj2;
  53. obj2 = document.body;
  54. obj2.attribute("width") = newWidth;
  55. obj2.attribute("height") = newHeight;
  56. group1.attribute("top") =3;
  57. group1.attribute("left") =3;
  58. group1.attribute("height") = 70;
  59. group1.attribute("width") = obj2.attribute("width")- 6;
  60. obj = document.controls.item("f_View");
  61. obj.attribute("left") = 3;
  62. obj.attribute("top") = 76 ;
  63. obj.attribute("width") = obj2.attribute("width") - 6 ;
  64. obj.attribute("height") = obj2.attribute("height") - group1.attribute("height") - 9;
  65. f_View.ViewMode = 1;
  66. }
  67. function fGetResize()
  68. {
  69. var newWidth;
  70. var newHeight;
  71. var obj;
  72. var obj2;
  73. newWidth = parseInt(window.width) - 16;
  74. newHeight = parseInt(window.height) - 30;
  75. obj2 = document.body;
  76. obj2.attribute("width") = newWidth;
  77. obj2.attribute("height") = newHeight;
  78. group1.attribute("top") =3;
  79. group1.attribute("left") =3;
  80. group1.attribute("height") = 70;
  81. group1.attribute("width") = obj2.attribute("width")- 6;
  82. obj = document.controls.item("f_View");
  83. obj.attribute("left") = 3;
  84. obj.attribute("top") = 76 ;
  85. obj.attribute("width") = obj2.attribute("width") - 6 ;
  86. obj.attribute("height") = obj2.attribute("height") - group1.attribute("height") - 25;
  87. f_View.ViewMode = 1;
  88. model.refresh();
  89. }
  90. function fInitilize()
  91. {
  92. // 페이지 데이터 초기화
  93. g_path = new Array();
  94. g_page = new Array();
  95. g_page_lut = new Array();
  96. g_form_count = new Array();
  97. g_outertext = new Array();
  98. g_recrowno = new Array();
  99. g_temp_path = new Array();
  100. g_temp_page = new Array();
  101. g_recnameArr = new Array();
  102. //기본값설정
  103. model.setValue("/root/main/chartinfo/filetotal", "0");
  104. model.setValue("/root/main/chartinfo/pagetotal", "0");
  105. model.setValue("/root/main/chartinfo/pagecurrent", "0");
  106. model.setValue("/root/init/seqflag","0");
  107. fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/envinit/chartpaging", "038");
  108. var openerid = opener.javascript.getScreenID();
  109. var chartpaging = model.getValue("/root/envinit/chartpaging/answcnt");
  110. //통합검사결과에서 로딩시만 적용
  111. if (openerid == "SMAER00800" || openerid == "SMMMI00100" ) {
  112. if (chartpaging == "001"){
  113. model.makeValue("/root/envinit/pagingyn","Y");
  114. //rdo_lindx.attribute("visibility") = "visible";
  115. optPageTotal.attribute("visibility") = "hidden";
  116. optCalcTotal.attribute("visibility") = "visible";
  117. outPagegap.attribute("left") = "340px";
  118. outPagegap.attribute("visibility") = "visible";
  119. }
  120. }
  121. else {
  122. outPagegap.attribute("left") = "340px";
  123. optPageTotal.attribute("visibility") = "visible";
  124. optCalcTotal.attribute("visibility") = "hidden";
  125. outPagegap.attribute("visibility") = "hidden";
  126. }
  127. model.refresh();
  128. f_View.BadgeSizeInContinuous = 64;
  129. f_View.BadgeSizeInPage = 64;
  130. f_View.BadgeSizeInThumbnail = 32;
  131. f_View.BadgePositionInContinuous = 0;
  132. f_View.BadgePositionInPage = 0;
  133. f_View.BadgePositionInThumbnail = 0;
  134. //2013/04/09 Start 연속보기 기본 설정값
  135. var EraseBlank = "InkThreshold=224 " + "\n" +
  136. "BorderEraseLeft=40 " + "\n" +
  137. "BorderEraseRight=40 " + "\n" +
  138. "VerticalCompaction=1 " + "\n" +
  139. "VerticalCompaction.SpaceSize=30 ";
  140. f_View.ContinuousDefaultAnalyzeMethod = "NoFit = 1";
  141. //f_View.ContinuousDefaultAnalyzeMethod = "VerticalCompaction = 1";
  142. f_View.ContinuousDefaultAnalyzeMethod = EraseBlank;
  143. //2013/04/09 End
  144. //2013/03/29 Start
  145. //f_View.ThumbnailSelectColor 썸네일 클릭시 색상 변경
  146. //f_View.ThumbnailHoverColor 썸네일 위로 마우스 포커스 이동시 색상없도록 수정
  147. //f_View.ThumbnailSelectColor = parent.rgb(95,0,255);
  148. f_View.ThumbnailHoverColor = parent.rgb(207, 218, 231);
  149. //2013/03/29 End
  150. // 보기 방법의 기본값 설정
  151. setupChart("ChartView");
  152. // 데이터 초기화
  153. resetData();
  154. // 썸네일 뷰어의 레이아웃 설정
  155. TVScreen(4);
  156. optSelTotal.attribute("visibility") = "hidden";
  157. if( opener.window.javascript.getScreenID() == "SMMRC03000"){
  158. optSelTotal.attribute("visibility") = "visible";
  159. }
  160. //2014/04/15 이정택
  161. /*
  162. var sid = opener.javascript.getScreenID();
  163. if(sid=="SMMRI00400"){ //통합기록조회
  164. tv_pagebtn.disabled=false;
  165. cv_pagebtn.disabled=false;
  166. pv_pagebtn.disabled=false;
  167. }else{
  168. tv_pagebtn.disabled=true;
  169. cv_pagebtn.disabled=true;
  170. pv_pagebtn.disabled=true;
  171. }
  172. */
  173. //2014/04/15 이정택
  174. }
  175. function resetInstance_EMR()
  176. {
  177. model.resetInstanceNode("/root/main/emrpath");
  178. model.resetInstanceNode("/root/main/emrorddate");
  179. model.resetInstanceNode("/root/main/emrformnm");
  180. model.resetInstanceNode("/root/main/emrformcd");
  181. model.resetInstanceNode("/root/main/emrdeptnm");
  182. model.resetInstanceNode("/root/main/emrdeptcd");
  183. model.resetInstanceNode("/root/main/emrpage");
  184. model.resetInstanceNode("/root/main/emrhiddenmsg");
  185. model.resetInstanceNode("/root/main/chartinfo");
  186. }
  187. function setupChart(ViewMode)
  188. {
  189. switch(ViewMode)
  190. {
  191. case "TV":
  192. model.toggle("case1");
  193. model.setValue("/root/cond/radio", "TV");
  194. model.refresh();
  195. f_View.ViewMode = 2;
  196. //2013/04/12 Start model.getValue("/root/main/chartinfo/pagecurrent")가 값이 없을시에는 0으로 세팅하면 됨
  197. //f_View.PageCurrent = model.getValue("/root/main/chartinfo/pagecurrent");
  198. //f_View.ActionParamINT1 = f_View.PageCurrent;
  199. //f_View.ActionThumbnail = 10;
  200. //2013/04/12 end
  201. model.setValue("/root/hidden/currentViewMode", "ThumbView");
  202. break;
  203. case "ThumbView":
  204. model.toggle("case1");
  205. model.setValue("/root/cond/radio", "TV");
  206. model.refresh();
  207. f_View.ViewMode = 2;
  208. //2013/04/12 Start
  209. //f_View.PageCurrent = model.getValue("/root/main/chartinfo/pagecurrent");
  210. //f_View.ActionParamINT1 = f_View.PageCurrent;
  211. //f_View.ActionThumbnail = 10;
  212. //2013/04/12 end
  213. model.setValue("/root/hidden/currentViewMode", "ThumbView");
  214. break;
  215. case "CV":
  216. model.toggle("case2");
  217. model.setValue("/root/cond/radio", "CV");
  218. model.refresh();
  219. model.setValue("/root/hidden/currentViewMode", "ChartView");
  220. var CPage = model.getValue("/root/main/chartinfo/pagecurrent");
  221. f_View.ViewMode = 1;
  222. // 2013/04/09 여러장보기에서 선택한 페이지로 연속보기시 이동기능
  223. f_View.actionparamint1 = CPage;
  224. f_View.actioncontinuous = 8;
  225. //2013/04/09
  226. case "ChartView":
  227. model.toggle("case2");
  228. model.setValue("/root/cond/radio", "CV");
  229. model.refresh();
  230. model.setValue("/root/hidden/currentViewMode", "ChartView");
  231. var CPage = model.getValue("/root/main/chartinfo/pagecurrent");
  232. f_View.ViewMode = 1;
  233. // 2013/04/09 여러장보기에서 선택한 페이지로 연속보기시 이동기능
  234. f_View.actionparamint1 = CPage;
  235. f_View.actioncontinuous = 8;
  236. //2013/04/09
  237. break;
  238. case "PV":
  239. model.toggle("case3");
  240. model.setValue("/root/cond/radio", "PV");
  241. model.refresh();
  242. //2013/04/12 Start
  243. //f_View.PageCurrent = model.getValue("/root/main/chartinfo/pagecurrent");
  244. //2013/04/12 End
  245. f_View.ViewMode = 0;
  246. f_View.fitmode = 3;
  247. model.setValue("/root/hidden/currentViewMode", "PageView");
  248. break;
  249. case "PageView":
  250. model.toggle("case3");
  251. model.setValue("/root/cond/radio", "PV");
  252. model.refresh();
  253. //2013/04/12 Start
  254. //f_View.PageCurrent = model.getValue("/root/main/chartinfo/pagecurrent");
  255. //2013/04/12 End
  256. f_View.ViewMode = 0;
  257. f_View.fitmode = 3;
  258. model.setValue("/root/hidden/currentViewMode", "PageView");
  259. break;
  260. }
  261. }
  262. function setupChartCopy(ViewMode)
  263. {
  264. if(ViewMode == null)
  265. {
  266. // 보기 모드가 지정되지 않았다면 현재의 값을 사용한다.
  267. ViewMode = model.getValue("/root/hidden/currentViewMode");
  268. }
  269. else
  270. {
  271. // 보기 모드에 따라 스위치를 설정한다.
  272. }
  273. var pageTotal = parseInt(model.getValue("/root/main/chartinfo/pagetotal"));
  274. var pageCurrent = parseInt(model.getValue("/root/main/chartinfo/pagecurrent"));
  275. model.setValue("/root/main/chartinfo/filetotal",model.getValue("/root/main/chartinfo/pagetotal"))
  276. var nPrv;
  277. var nCur;
  278. var nPage;
  279. var i;
  280. var j;
  281. var count;
  282. var imgemrcount;
  283. var totalemrorddate;
  284. var totalemrformnm;
  285. var totalemrformcd;
  286. var totalemrdeptnm;
  287. var totalemrdeptcd;
  288. var totalemrpage;
  289. var totalemrhiddenmsg;
  290. var totalsignemrdeptnm;
  291. var totalunprepyn; //미비정보를 담고 있음 'Y'이면 미비
  292. var emrorddate;
  293. var emrformnm;
  294. var emrformcd;
  295. var emrdeptnm;
  296. var emrdeptcd;
  297. var emrpage;
  298. var emrhiddenmsg;
  299. var emrfilepath1 ;
  300. var signemrdeptnm;
  301. var unprepyn; //미비정보를 담고 있음 'Y'이면 미비
  302. var counttemp = 0;
  303. var countnull = 0;
  304. var txtemrcount = 0;
  305. var txtemrcounttemp = 0;
  306. var emrcounttemp = 0;
  307. var emrfilepath = "";
  308. var emrfilepathtemp = "";
  309. var emrgpath = 0;
  310. var emrchartindex;
  311. var emrpagecount = 0;
  312. var emrresult = 0;
  313. var emrtotalpagecount = 0;
  314. model.setValue("/root/main/chartinfo/pagecurrent", getSelectPageCount());
  315. model.refresh();
  316. if (f_View.PageTotal == 0)
  317. {
  318. // 2009-11-03 이경희
  319. // 상세내역추가 기능
  320. for(var idx = g_recnameArr.length - 1; idx >= 0 ; idx--)
  321. {
  322. delete g_recnameArr[idx];
  323. }
  324. //처음 보기모드 전환시 초기 배열값 으로 변경
  325. //이유 : objThumbView.TotalThumbnail 가 다시 더해지기 때문에^^
  326. /*
  327. for (i = g_page.length - 1; i >= 0; i--)
  328. {
  329. delete g_page[i];
  330. delete g_path[i];
  331. }
  332. for (i = 1; i < g_temp_page.length; i++)
  333. {
  334. g_page[i] = g_temp_page[i];
  335. g_path[i] = g_temp_path[i];
  336. }
  337. */
  338. refreshFalse();
  339. for (i = 0; i < pageTotal; i++)
  340. {
  341. // 썸네일 추가
  342. nPrv = f_View.PageTotal;
  343. f_View.pageappend(g_path[i + 1], 0, 0);
  344. nCur = f_View.PageTotal;
  345. nPage = g_page_lut[i + 1];
  346. for (j = nPrv; j < nCur; j++)
  347. {
  348. // 장비연동 검사지가 아닌경우(일반 스캔인 경우)
  349. if (model.getValue("/root/main/charts[" + nPage + "]/cmc_orddate") == null || model.getValue("/root/main/charts[" + nPage + "]/cmc_orddate") == "")
  350. {
  351. // 2009-11-03 이경희
  352. // 상세내역추가 기능
  353. g_recnameArr[j] = "[" +
  354. model.getValue(getXPathChart(nPage, "chrtpage")) +
  355. "] " +
  356. model.getValue(getXPathChart(nPage, "indd")) + " " +
  357. model.getValue(getXPathChart(nPage, "docunm"));
  358. f_View.PageHiddenText(i) = "I" + "▦" + model.getValue("/root/main/charts[" + nPage + "]/ordno") +
  359. "▦" + model.getValue("/root/main/charts[" + nPage + "]/docucd") +
  360. "▦" + model.getValue("/root/main/charts[" + nPage + "]/pagecnt") +
  361. "▦" + model.getValue("/root/main/charts[" + nPage + "]/pageno") +
  362. "▦" + model.getValue("/root/main/charts[" + nPage + "]/indd") +
  363. "▦" + model.getValue("/root/main/charts[" + nPage + "]/docunm") +
  364. "▦" + "[" + model.getValue("/root/main/charts[" + nPage + "]/chrtpage") + "]" +
  365. splittxt;
  366. f_View.PageText(j + 1) = g_recnameArr[j];
  367. f_View.ActionParamInt1 = j + 1;
  368. f_View.actionparamstring1 = g_recnameArr[j];
  369. f_View.actioncontinuous = 9;
  370. }
  371. // 장비연동 검사지인 경우(CDIS)
  372. else
  373. {
  374. var indd = model.getValue(getXPathChart(nPage, "cmc_acptime"));
  375. g_recnameArr[j] = "[" +
  376. model.getValue(getXPathChart(nPage, "chrtpage")) +
  377. "] " +
  378. indd + " " +
  379. model.getValue(getXPathChart(nPage, "cmc_examname"));
  380. f_View.PageHiddenText(i) = "I" + "▦" + model.getValue("/root/main/charts[" + nPage + "]/ordno") +
  381. "▦" + model.getValue("/root/main/charts[" + nPage + "]/docucd") +
  382. "▦" + model.getValue("/root/main/charts[" + nPage + "]/pagecnt") +
  383. "▦" + model.getValue("/root/main/charts[" + nPage + "]/pageno") +
  384. "▦" + model.getValue("/root/main/charts[" + nPage + "]/indd") +
  385. "▦" + model.getValue("/root/main/charts[" + nPage + "]/docunm") +
  386. "▦" + "[" + model.getValue("/root/main/charts[" + nPage + "]/chrtpage") + "]" +
  387. splittxt;
  388. f_View.PageText(j + 1) = g_recnameArr[j];
  389. f_View.ActionParamInt1 = j + 1;
  390. f_View.actionparamstring1 = g_recnameArr[j];
  391. f_View.actioncontinuous = 9;
  392. }
  393. }
  394. }
  395. // EMR append 서식 썸네일텍스트 변경
  396. // --> HTML의 경우
  397. if (model.getValue("/root/main/emrpath") != null && model.getValue("/root/main/emrpath") != "")
  398. {
  399. imgemrcount = 0;
  400. totalemrpage = model.getValue("/root/main/emrpage");
  401. totalemrformnm = model.getValue("/root/main/emrformnm");
  402. totalemrhiddenmsg = model.getValue("/root/main/emrhiddenmsg");
  403. totalunprepyn = model.getValue("/root/main/unprepyn");
  404. totalsignemrdeptnm = model.getValue("/root/main/signemrdeptnm");
  405. totalsignemrdeptcd = model.getValue("/root/main/signemrdeptcd");
  406. totalemrfilepath = model.getValue("/root/main/emrpath");
  407. totalemrorddate = model.getValue("/root/main/emrorddate");
  408. //alert(totalemrfilepath.substring(1000,totalemrfilepath.length));
  409. emrpage = totalemrpage.split(splittxt);
  410. emrformnm = totalemrformnm.split(splittxt);
  411. emrhiddenmsg = totalemrhiddenmsg.split(splittxt);
  412. emrorddate = totalemrorddate.split(splittxt);
  413. emrfilepath1 = totalemrfilepath.split(splittxt);
  414. signemrdeptnm = totalsignemrdeptnm.split(splittxt);
  415. signemrdeptcd = totalsignemrdeptcd.split(splittxt);
  416. unprepyn= totalunprepyn.split(splittxt);
  417. countnull = 0;
  418. counttemp = 0;
  419. for (count = 0; count < emrpage.length; count++)
  420. {
  421. if (emrpage[count].substring(0, 1) == "*")
  422. {
  423. imgemrcount = g_form_count[counttemp];
  424. counttemp++;
  425. }
  426. else
  427. {
  428. txtemrcounttemp = 0;
  429. //차트가 없을경우
  430. if (f_View.pagetotal != 0)
  431. {
  432. //emrfilepath = f_View.PageFilePath(parseInt(imgemrcount) + parseInt(txtemrcount) + 1);
  433. emrfilepath = emrfilepath1[count];
  434. for (emrcounttemp = parseInt(imgemrcount) + parseInt(txtemrcount) + 1; emrcounttemp <= f_View.PageTotal; emrcounttemp++)
  435. {
  436. emrfilepathtemp = f_View.PageFilePath(emrcounttemp);
  437. if (emrfilepath == emrfilepathtemp)
  438. {
  439. if (txtemrcounttemp >= 1)
  440. {
  441. for (emrgpath = g_path.length; emrgpath > parseInt(imgemrcount) + parseInt(txtemrcount) + 1; emrgpath--)
  442. {
  443. g_path[emrgpath] = g_path[emrgpath - 1];
  444. g_page[emrgpath] = g_page[emrgpath - 1];
  445. }
  446. g_path[parseInt(imgemrcount) + parseInt(txtemrcount) + 1] = g_path[parseInt(imgemrcount) + parseInt(txtemrcount)];
  447. g_page[parseInt(imgemrcount) + parseInt(txtemrcount) + 1] = txtemrcounttemp + 1;
  448. }
  449. txtemrcounttemp++;
  450. //signemrdeptnm 과명 추구 html 의사기록에서만 적용 2013.02.28 원장연 처리
  451. g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)] = "[" +
  452. txtemrcounttemp +
  453. "] " +
  454. emrorddate[count] + " " +
  455. emrformnm[count] + "" +
  456. signemrdeptnm[count];
  457. f_View.PageText(emrcounttemp) = g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)]
  458. //f_View.PageText(parseInt(imgemrcount) + parseInt(txtemrcount) + 1) = g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)]
  459. f_View.ActionParamInt1 = emrcounttemp;
  460. //f_View.ActionParamInt1 = parseInt(imgemrcount) + parseInt(txtemrcount) + 1;
  461. f_View.actionparamstring1 = g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)];
  462. f_View.actioncontinuous = 9;
  463. //f_View.PageHiddenText(parseInt(imgemrcount) + parseInt(txtemrcount) + 1) = emrhiddenmsg[count];
  464. f_View.PageHiddenText(emrcounttemp) = emrhiddenmsg[count];
  465. //alert(unprepyn[count])
  466. if( unprepyn[count] == "Y" )
  467. {
  468. //alert("1")
  469. //f_View.BadgeAdd(parseInt(imgemrcount) + parseInt(txtemrcount) + 1, "mibi", getDomain() + "/himed/webapps/emr/imgemrweb/images/mibi.png")
  470. //f_View.BadgeAdd(parseInt(imgemrcount) + parseInt(txtemrcount) + 1, "mibi", "c:\\mini.png")
  471. f_View.BadgeAdd(emrcounttemp, "mibi", "c:\\mini.png")
  472. }
  473. txtemrcount++;
  474. }
  475. else
  476. {
  477. emrpage[count] = txtemrcounttemp;
  478. break;
  479. }
  480. }
  481. }
  482. model.refresh();
  483. }
  484. }
  485. }
  486. refreshTrue();
  487. }
  488. setupChart(ViewMode)
  489. f_View.PageCurrent = 1;
  490. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  491. model.setValue("/root/main/chartinfo/pagetotal", f_View.PageTotal );
  492. model.setValue("/root/main/chartinfo/filetotal", f_View.PageTotal );
  493. model.refresh();
  494. }
  495. function setupChartPopup(ViewMode)
  496. {
  497. if(ViewMode == null)
  498. {
  499. // 보기 모드가 지정되지 않았다면 현재의 값을 사용한다.
  500. ViewMode = model.getValue("/root/hidden/currentViewMode");
  501. }
  502. else
  503. {
  504. // 보기 모드에 따라 스위치를 설정한다.
  505. }
  506. var pageTotal = parseInt(model.getValue("/root/main/chartinfo/pagetotal"));
  507. model.setValue("/root/main/chartinfo/filetotal",model.getValue("/root/main/chartinfo/pagetotal"));
  508. var pageCurrent = parseInt(model.getValue("/root/main/chartinfo/pagecurrent"));
  509. var nPrv;
  510. var nCur;
  511. var nPage;
  512. var i;
  513. var j;
  514. var count;
  515. var imgemrcount;
  516. var totalemrorddate;
  517. var totalemrformnm;
  518. var totalemrformcd;
  519. var totalemrdeptnm;
  520. var totalemrdeptcd;
  521. var totalemrpage;
  522. var totalemrhiddenmsg;
  523. var emrorddate;
  524. var emrformnm;
  525. var emrformcd;
  526. var emrdeptnm;
  527. var emrdeptcd;
  528. var emrpage;
  529. var emrhiddenmsg;
  530. var counttemp = 0;
  531. var countnull = 0;
  532. var txtemrcount = 0;
  533. var txtemrcounttemp = 0;
  534. var emrcounttemp = 0;
  535. var emrfilepath = "";
  536. var emrfilepathtemp = "";
  537. var emrgpath = 0;
  538. var emrchartindex;
  539. var emrpagecount = 0;
  540. var emrresult = 0;
  541. var emrtotalpagecount = 0;
  542. var endnum = 0;
  543. var startnum = 0;
  544. model.setValue("/root/main/chartinfo/pagecurrent", 1);
  545. model.refresh();
  546. refreshFalse();
  547. ClearChart();
  548. refreshTrue();
  549. if (f_View.PageTotal == 0)
  550. {
  551. fShowProgress(true,"이미지다운로딩");
  552. var pagingyn = model.getValue("/root/envinit/pagingyn");
  553. if (pagingyn == "Y") {
  554. var fileTotal = model.getValue("/root/main/chartinfo/filetotal");
  555. var seqflag = model.getValue("/root/init/seqflag");
  556. var startnum = seqflag * 10;
  557. var quo = parseInt(fileTotal/10);
  558. var mod = fileTotal % 10 ;
  559. model.setValue("/root/main/chartinfo/pagecnt",10);
  560. if (quo == seqflag ) {
  561. endnum = startnum + mod;
  562. model.setValue("/root/main/chartinfo/pagecnt",mod);
  563. }
  564. else {
  565. endnum = startnum + 10;
  566. }
  567. var pageTotal = endnum;
  568. }
  569. for (i = startnum; i < pageTotal; i++)
  570. {
  571. // 썸네일 추가
  572. nPrv = f_View.PageTotal;
  573. //objThumbView.AppendPage(g_path[i + 1], g_page[i + 1], g_page[i + 1]);
  574. f_View.pageappend(g_path[i + 1], 0, 0);
  575. nCur = f_View.PageTotal;
  576. nPage = g_page_lut[i + 1];
  577. for (j = nPrv; j < nCur; j++)
  578. {
  579. // 장비연동 검사지가 아닌경우
  580. if (model.getValue("/root/main/charts[" + nPage + "]/cmc_orddate") == null || model.getValue("/root/main/charts[" + nPage + "]/cmc_orddate") == "")
  581. {
  582. // 2009-11-03 이경희
  583. // 상세내역추가 기능
  584. g_recnameArr[j] = "[" +
  585. model.getValue(getXPathChart(nPage, "chrtpage")) +
  586. "] " +
  587. model.getValue(getXPathChart(nPage, "indd")) + " " +
  588. model.getValue(getXPathChart(nPage, "docunm"));
  589. f_View.PageText(j + 1) = g_recnameArr[j];
  590. f_View.ActionParamInt1 = j + 1;
  591. f_View.actionparamstring1 = g_recnameArr[j];
  592. f_View.actioncontinuous = 9;
  593. }
  594. // 장비연동 검사지인 경우
  595. else
  596. {
  597. var indd = model.getValue(getXPathChart(nPage, "cmc_acptime"));
  598. g_recnameArr[j] = "[" +
  599. model.getValue(getXPathChart(nPage, "chrtpage")) +
  600. "] " +
  601. indd + " " +
  602. model.getValue(getXPathChart(nPage, "cmc_examname"));
  603. f_View.PageText(j + 1) = g_recnameArr[j];
  604. f_View.ActionParamInt1 = j + 1;
  605. f_View.actionparamstring1 = g_recnameArr[j];
  606. f_View.actioncontinuous = 9;
  607. }
  608. }
  609. }
  610. // EMR append 서식 썸네일텍스트 변경
  611. if (model.getValue("/root/main/emrpath") != null && model.getValue("/root/main/emrpath") != "")
  612. {
  613. imgemrcount = 0;
  614. totalemrpage = model.getValue("/root/main/emrpage");
  615. totalemrformnm = model.getValue("/root/main/emrformnm");
  616. totalemrhiddenmsg = model.getValue("/root/main/emrhiddenmsg");
  617. totalemrorddate = model.getValue("/root/main/emrorddate");
  618. // emrpage = totalemrpage.split("|");
  619. // emrformnm = totalemrformnm.split("|");
  620. // emrhiddenmsg = totalemrhiddenmsg.split("|");
  621. // emrorddate = totalemrorddate.split("|");
  622. emrpage = totalemrpage.split(splittxt);
  623. emrformnm = totalemrformnm.split(splittxt);
  624. emrhiddenmsg = totalemrhiddenmsg.split(splittxt);
  625. emrorddate = totalemrorddate.split(splittxt);
  626. countnull = 0;
  627. counttemp = 0;
  628. for (count = 0; count < emrpage.length; count++)
  629. {
  630. if (emrpage[count].substring(0, 1) == "*")
  631. {
  632. imgemrcount = g_form_count[counttemp];
  633. counttemp++;
  634. }
  635. else
  636. {
  637. txtemrcounttemp = 0;
  638. //차트가 없을경우
  639. if (f_View.pagetotal != 0)
  640. {
  641. emrfilepath = f_View.PageFilePath(parseInt(imgemrcount) + parseInt(txtemrcount) + 1);
  642. for (emrcounttemp = parseInt(imgemrcount) + parseInt(txtemrcount) + 1; emrcounttemp <= f_View.PageTotal; emrcounttemp++)
  643. {
  644. emrfilepathtemp = f_View.PageFilePath(emrcounttemp);
  645. if (emrfilepath == emrfilepathtemp)
  646. {
  647. if (txtemrcounttemp >= 1)
  648. {
  649. for (emrgpath = g_path.length; emrgpath > parseInt(imgemrcount) + parseInt(txtemrcount) + 1; emrgpath--)
  650. {
  651. g_path[emrgpath] = g_path[emrgpath - 1];
  652. g_page[emrgpath] = g_page[emrgpath - 1];
  653. }
  654. g_path[parseInt(imgemrcount) + parseInt(txtemrcount) + 1] = g_path[parseInt(imgemrcount) + parseInt(txtemrcount)];
  655. g_page[parseInt(imgemrcount) + parseInt(txtemrcount) + 1] = txtemrcounttemp + 1;
  656. }
  657. txtemrcounttemp++;
  658. g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)] = "[" +
  659. txtemrcounttemp +
  660. "] " +
  661. emrorddate[count] + " " +
  662. emrformnm[count];
  663. f_View.PageText(parseInt(imgemrcount) + parseInt(txtemrcount) + 1) = g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)]
  664. f_View.ActionParamInt1 = parseInt(imgemrcount) + parseInt(txtemrcount) + 1;
  665. f_View.actionparamstring1 = g_recnameArr[parseInt(imgemrcount) + parseInt(txtemrcount)];
  666. f_View.actioncontinuous = 9;
  667. f_View.PageHiddenText(parseInt(imgemrcount) + parseInt(txtemrcount) + 1) = emrhiddenmsg[count];
  668. txtemrcount++;
  669. }
  670. else
  671. {
  672. emrpage[count] = txtemrcounttemp;
  673. break;
  674. }
  675. }
  676. }
  677. }
  678. }
  679. }
  680. refreshTrue();
  681. }
  682. setupChart(ViewMode)
  683. f_View.PageCurrent = 1;
  684. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  685. //model.setValue("/root/main/chartinfo/pagetotal", f_View.PageTotal );
  686. //model.setValue("/root/main/chartinfo/filetotal", f_View.PageTotal );
  687. model.refresh();
  688. fShowProgress(false);
  689. }
  690. function resetData()
  691. {
  692. // 개체에 이미지가 등록되어 있다면 해지한다.
  693. refreshFalse();
  694. ClearChart();
  695. refreshTrue();
  696. model.removeNode("/root/hidden/tempcharts");
  697. model.removeNode("/root/main/charts");
  698. model.refresh();
  699. }
  700. function resetData_Mode()
  701. {
  702. // 개체에 이미지가 등록되어 있다면 해지한다.
  703. refreshFalse();
  704. f_View.pageremove(0,0);
  705. refreshTrue();
  706. model.removeNode("/root/hidden/tempcharts");
  707. model.removeNode("/root/main/charts");
  708. model.refresh();
  709. }
  710. function TVScreen(Mode)
  711. {
  712. var obj
  713. obj = document.controls.item("f_View");
  714. //정보를 구하지 못함
  715. switch(Mode)
  716. {
  717. case "2":
  718. f_View.thumbnailwidth = (parseInt(obj.attribute("width")) - 80) / 2 ;
  719. f_View.thumbnailheight = f_View.thumbnailwidth * 1.41 ;
  720. f_View.focus;
  721. break;
  722. case "3":
  723. f_View.thumbnailwidth = (parseInt(obj.attribute("width")) - 110) / 3;
  724. f_View.thumbnailheight = f_View.thumbnailwidth * 1.41;
  725. break;
  726. case "4":
  727. f_View.thumbnailwidth = (parseInt(obj.attribute("width")) - 130) / 4;
  728. f_View.thumbnailheight = f_View.thumbnailwidth * 1.41;
  729. break;
  730. }
  731. }
  732. function refreshFalse()
  733. {
  734. f_View.AutoRefresh = false;
  735. }
  736. function refreshTrue()
  737. {
  738. f_View.AutoRefresh = true;
  739. }
  740. function ClearChart()
  741. {
  742. f_View.pageremove(0,0);
  743. f_View.ContinuousMarginSpace =0;
  744. f_View.ContinuousMarginTop = 0;
  745. f_View.ContinuousMarginBottom = 0;
  746. f_View.ContinuousMarginLeft = 0;
  747. f_View.ContinuousMarginRight = 0;
  748. f_View.ContinuousBorderSize = 1;
  749. f_View.ContinuousBorderColor = parent.rgb(255,255,255);
  750. f_View.ContinuousTextBackColor = parent.rgb(230,230,250);
  751. f_View.ContinuousTextForeColor = parent.rgb(128,0,128);
  752. f_View.ContinuousTextBold = true;
  753. f_View.actioncontinuous = 2;
  754. f_View.actionsingle = 2;
  755. //model.getValue("root/cond/radio");
  756. setupChart(model.getValue("root/cond/radio"));
  757. }
  758. function cleanViewer()
  759. {
  760. var fso;
  761. fso = new ActiveXObject("Scripting.FileSystemObject");
  762. setupRecvPath(fso);
  763. model.setValue("/root/main/chartinfo/pagetotal", "0");
  764. model.setValue("/root/main/chartinfo/pagecurrent", "0");
  765. model.refresh();
  766. // 데이터 초기화
  767. resetData();
  768. // 썸네일 뷰어의 레이아웃 설정
  769. TVScreen(4);
  770. }
  771. function setupRecvPath(fso)
  772. {
  773. var pathRecv;
  774. var curFolder;
  775. var curFile;
  776. // 개체에 이미지가 등록되어 있다면 해지한다.
  777. refreshFalse();
  778. ClearChart();
  779. refreshTrue();
  780. //--20130418 김동준 start(이미지 다운경로를 본원과 칠곡 분기)
  781. pathRecv = fso.GetSpecialFolder(2) + "\\LCViewer" + getUserInfo("dutplceinstcd") + "\\";
  782. //pathRecv = fso.GetSpecialFolder(2) + "\\LCViewer\\";
  783. //--20130418 김동준 end
  784. // 차트를 다운받을 폴더가 없다면 만든다.
  785. if( fso.FolderExists(pathRecv) == false)
  786. {
  787. fso.CreateFolder(pathRecv);
  788. }
  789. // 폴더안에 있는 모든 파일을 삭제한다.
  790. curFolder = fso.GetFolder(pathRecv);
  791. curFile = new Enumerator(curFolder.Files);
  792. for(; !curFile.atEnd(); curFile.moveNext())
  793. {
  794. //20130418 김동준 start try Catch 추가
  795. try{
  796. fso.DeleteFile(curFile.item().Path, true);
  797. }
  798. catch(e){
  799. }
  800. //20130418 김동준 end
  801. }
  802. // 차트 폴더를 저장
  803. model.setValue("/root/hidden/chartImageHome", pathRecv);
  804. }
  805. function LocalLoadChart()
  806. {
  807. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Jellyfish.jpg",1,1);
  808. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Koala.jpg",1,1);
  809. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg",1,1);
  810. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Chrysanthemum.jpg",1,1);
  811. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Jellyfish.jpg",1,1);
  812. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Koala.jpg",1,1);
  813. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg",1,1);
  814. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Chrysanthemum.jpg",1,1);
  815. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Jellyfish.jpg",1,1);
  816. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Koala.jpg",1,1);
  817. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg",1,1);
  818. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Chrysanthemum.jpg",1,1);
  819. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Jellyfish.jpg",1,1);
  820. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Koala.jpg",1,1);
  821. f_View.pageappend("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg",1,1);
  822. }
  823. function LocalHtmlLoadChart()
  824. {
  825. f_View.pageappend("C:/BCP_OCR_Image/chart1.HTML",0,0);
  826. //f_View.pageappend("C:/BCP_OCR_Image/chart2.HTML",0,0);
  827. //f_View.pageappend("C:/BCP_OCR_Image/chart3.HTML",0,0);
  828. }
  829. function setHtmlMode(mode)
  830. {
  831. // 모드가 HTML인경우는 동일한HTML 모두를 선택하게 한다.
  832. //
  833. model.setValue("/root/main/selectmode", mode) ;
  834. model.refresh();
  835. if(mode == "HTML")
  836. {
  837. f_View.BackColor = parent.rgb(252,254,225) ;
  838. //99ff66
  839. }
  840. else
  841. {
  842. f_View.BackColor = parent.rgb(230,230,250);
  843. }
  844. }
  845. function getHtmlMode()
  846. {
  847. // 모드가 HTML인경우는 동일한HTML 모두를 선택하게 한다.
  848. //
  849. model.refresh();
  850. return model.getValue("/root/main/selectmode") ;
  851. }
  852. function selectHtmlMode(page,flag)
  853. {
  854. if(getHtmlMode() == "HTML" )
  855. {
  856. var file;
  857. file = f_View.PageFilePath(page)
  858. if(page < f_View.Pagetotal)
  859. {
  860. for(count = page + 1 ; count <= f_View.Pagetotal; count++)
  861. {
  862. if(file == f_View.PageFilePath(count))
  863. {
  864. f_View.ThumbnailSelect(count, flag);
  865. }
  866. else
  867. {
  868. //count = f_View.Pagetotal;
  869. model.makeValue("root/temp/returninfo",setCopy(true))
  870. model.refresh();
  871. break;
  872. }
  873. }
  874. }
  875. if(page > 1)
  876. {
  877. for(count = page - 1 ; count >= 1; count--)
  878. {
  879. //alert(count)
  880. if(file == f_View.PageFilePath(count))
  881. {
  882. f_View.ThumbnailSelect(count, flag);
  883. }
  884. else
  885. {
  886. //count = 1;
  887. model.makeValue("root/temp/returninfo",setCopy(true))
  888. model.refresh();
  889. break;
  890. }
  891. }
  892. }
  893. var header ;
  894. header = "formcd▦signno▦formnm▦chosflag▦pid▦ptnm▦deptengabbr▦erdt▦rgstno▦disporddd▦drid▦roomcd▦disporddd▦ordtype▦e▦totalpage▩"
  895. opener.javascript.fGetSelectedFormInfo(header,setCopy(true))
  896. }else{
  897. // header = "formcd▦signno▦formnm▦chosflag▦pid▦ptnm▦deptengabbr▦erdt▦rgstno▦disporddd▦drid▦roomcd▦disporddd▦ordtype▦e▦totalpage▩"
  898. // opener.javascript.fGetSelectedFormInfoCD(header,setCopy(true))
  899. }
  900. }
  901. function PageCurrentChanged()
  902. {
  903. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  904. model.refresh();
  905. }
  906. function ContinuousFirstImageChanged(Page)
  907. {
  908. if(f_View.PageCurrent != Page)
  909. {
  910. f_View.PageCurrent = Page;
  911. }
  912. }
  913. function PvMovePage(Mode)
  914. {
  915. switch(Mode)
  916. {
  917. case "first":
  918. f_View.actionsingle = 2;
  919. f_View.fitmode = 3;
  920. break;
  921. case "prev":
  922. f_View.actionsingle = 4;
  923. f_View.fitmode = 3;
  924. break;
  925. case "next":
  926. f_View.actionsingle = 5;
  927. f_View.fitmode = 3;
  928. break;
  929. case "last":
  930. f_View.actionsingle = 3;
  931. f_View.fitmode = 3;
  932. break;
  933. }
  934. }
  935. function ViewKeyDown(KeyCode, Shift)
  936. {
  937. switch(f_View.ViewMode)
  938. {
  939. case 0:
  940. //페이지
  941. // 이전차트 보기 (page Up)
  942. if (KeyCode == 33 && Shift ==0)
  943. {
  944. PvMovePage("prev");
  945. }
  946. else if (KeyCode == 37 && Shift ==0)
  947. {
  948. PvMovePage("prev");
  949. }
  950. // 다음 보기 (page Down)
  951. else if (KeyCode == 34 && Shift ==0)
  952. {
  953. PvMovePage("next");
  954. }
  955. else if (KeyCode == 39 && Shift ==0)
  956. {
  957. PvMovePage("next");
  958. }
  959. // 마지막 차트 End
  960. else if (KeyCode == 35 && Shift ==0)
  961. {
  962. PvMovePage("last");
  963. }
  964. // 처음 차트 Home
  965. else if (KeyCode == 36 && Shift ==0)
  966. {
  967. PvMovePage("first");
  968. }
  969. break;
  970. case 1:
  971. //연속보기
  972. //페이지
  973. // 이전차트 보기 (page Up)
  974. //alert(KeyCode)
  975. if (KeyCode == 33 && Shift ==0)
  976. {
  977. CvMovePage("prevpage");
  978. }
  979. else if (KeyCode == 37 && Shift ==0)
  980. {
  981. CvMovePage("prev");
  982. }
  983. // 다음 보기 (page Down)
  984. else if (KeyCode == 34 && Shift ==0)
  985. {
  986. CvMovePage("nextpage");
  987. }
  988. else if (KeyCode == 39 && Shift ==0)
  989. {
  990. CvMovePage("next");
  991. }
  992. // 마지막 차트 End
  993. else if (KeyCode == 35 && Shift ==0)
  994. {
  995. CvMovePage("last");
  996. }
  997. // 처음 차트 Home
  998. else if (KeyCode == 36 && Shift ==0)
  999. {
  1000. CvMovePage("first");
  1001. }
  1002. break;
  1003. case 2:
  1004. //썸네일보기
  1005. break;
  1006. }
  1007. }
  1008. function CvMovePage(Mode)
  1009. {
  1010. switch(Mode)
  1011. {
  1012. case "first":
  1013. f_View.PageCurrent = 1;
  1014. //f_View.actionparamint1 = f_View.PageCurrent;
  1015. //f_View.actioncontinuous = 8;
  1016. f_View.actioncontinuous = 2;
  1017. break;
  1018. case "prev":
  1019. if (f_View.PageCurrent != 1)
  1020. {
  1021. f_View.PageCurrent = f_View.PageCurrent - 1;
  1022. }
  1023. if (f_View.PageCurrent == 1)
  1024. {
  1025. f_View.actioncontinuous = 2;
  1026. }
  1027. else
  1028. {
  1029. f_View.actionparamint1 = f_View.PageCurrent;
  1030. f_View.actioncontinuous = 8;
  1031. }
  1032. break;
  1033. case "next":
  1034. f_View.PageCurrent = f_View.PageCurrent + 1;
  1035. f_View.actionparamint1 = f_View.PageCurrent;
  1036. f_View.actioncontinuous = 8;
  1037. break;
  1038. case "last":
  1039. f_View.PageCurrent = f_View.pagetotal;
  1040. f_View.actionparamint1 = f_View.PageCurrent;
  1041. f_View.actioncontinuous = 8;
  1042. break;
  1043. case "prevpage":
  1044. f_View.actioncontinuous = 4;
  1045. break;
  1046. case "nextpage":
  1047. f_View.actioncontinuous = 5;
  1048. break;
  1049. }
  1050. }
  1051. function CvMousePage(Mode)
  1052. {
  1053. switch(Mode)
  1054. {
  1055. case "normal":
  1056. f_View.actioncontinuous = 0;
  1057. break;
  1058. case "panning":
  1059. f_View.actioncontinuous = 10;
  1060. break;
  1061. case "zoom":
  1062. f_View.MagnifyingGlassRatio = CVRatio.value;
  1063. f_View.actioncontinuous = 11;
  1064. break;
  1065. }
  1066. }
  1067. function TVSelect(Mode)
  1068. {
  1069. switch(Mode)
  1070. {
  1071. case "all":
  1072. f_View.actionthumbnail = 2;
  1073. break;
  1074. case "none":
  1075. f_View.actionthumbnail = 3;
  1076. break;
  1077. }
  1078. }
  1079. function PvMousePage(Mode)
  1080. {
  1081. switch(Mode)
  1082. {
  1083. case "normal":
  1084. f_View.actionsingle =0;
  1085. break;
  1086. case "panning":
  1087. f_View.actionsingle = 21;
  1088. break;
  1089. case "zoom":
  1090. f_View.MagnifyingGlassRatio = PVRatio.value;
  1091. f_View.actionsingle = 22;
  1092. break;
  1093. case "regionzoom":
  1094. f_View.actionsingle = 23;
  1095. break;
  1096. }
  1097. }
  1098. function PvFit()
  1099. {
  1100. f_View.fitmode = 3;
  1101. }
  1102. function PvTurn(Mode)
  1103. {
  1104. switch(Mode)
  1105. {
  1106. case "left":
  1107. f_View.actionsingle = 7;
  1108. break;
  1109. case "right":
  1110. f_View.actionsingle = 6;
  1111. break;
  1112. }
  1113. }
  1114. function MouseUp()
  1115. {
  1116. if(model.getValue("/root/cond/radio") == "TV")
  1117. {
  1118. f_View.ViewMode = 2;
  1119. }
  1120. }
  1121. function ThumbnailClick_event(page, shift, button )
  1122. {
  1123. if(button == 1)
  1124. {
  1125. //2013/04/09 Start 여러장보기에서 선택시 페이지보기 페이지 선택해줌
  1126. f_View.PageCurrent = page;
  1127. //2013/04/09 End
  1128. if(shift == 1)
  1129. {
  1130. var i = 0;
  1131. var first = 0;
  1132. var last = page;
  1133. var count = 0;
  1134. for(i=1; i <= f_View.PageTotal; i++)
  1135. {
  1136. if(f_View.ThumbnailSelect(i) == true)
  1137. {
  1138. if(first == 0)
  1139. {
  1140. first = i;
  1141. //alert(f_View.PageFilePath(e.page);
  1142. //alert("1");
  1143. }
  1144. }
  1145. }
  1146. if(page >= first)
  1147. {
  1148. count = last - first;
  1149. for(i=1; i <= count; i++)
  1150. {
  1151. f_View.ThumbnailSelect(first + i, true);
  1152. if( i == count)
  1153. {
  1154. selectHtmlMode(first + i,true);
  1155. }
  1156. }
  1157. }
  1158. else
  1159. {
  1160. count = first - last;
  1161. for(i=0; i <= count; i++)
  1162. {
  1163. f_View.ThumbnailSelect(last + i, true);
  1164. if( i == count)
  1165. {
  1166. selectHtmlMode(last + i,true);
  1167. }
  1168. }
  1169. }
  1170. }
  1171. else
  1172. {
  1173. if(f_View.ThumbnailSelect(page) == false)
  1174. {
  1175. f_View.ThumbnailSelect(page, true);
  1176. selectHtmlMode(page,true);
  1177. }
  1178. else
  1179. {
  1180. f_View.ThumbnailSelect(page,false);
  1181. selectHtmlMode(page,false);
  1182. }
  1183. }
  1184. model.setValue("/root/main/chartinfo/seltotal",getSelectPageCount());
  1185. model.refresh();
  1186. }
  1187. else if(button == 2)
  1188. {
  1189. if(page == 0 )
  1190. {
  1191. }
  1192. else
  1193. {
  1194. f_View.PageCurrent = page;
  1195. f_View.ViewMode = 0;
  1196. f_View.BestFit;
  1197. }
  1198. }
  1199. }
  1200. function ThumbnailDblClick_event(page)
  1201. {
  1202. if(page == 0)
  1203. {
  1204. }
  1205. else
  1206. {
  1207. //2013/04/10 여러장보기에서 더블클릭시 페이지보기가 아니라 연속보기로 이동하도록 수정
  1208. //setupChart("PV");
  1209. setupChart("CV");
  1210. //2013/04/10 end
  1211. f_View.PageCurrent = page;
  1212. }
  1213. }
  1214. function ImageDblClick_event(page)
  1215. {
  1216. setupChart("TV");
  1217. f_View.actionparamint1 = page;
  1218. f_View.actionthumbnail = 10;
  1219. }
  1220. function ImageClick_event(page, shift, button )
  1221. {
  1222. if(button == 2)
  1223. {
  1224. f_View.fitmode = 3;
  1225. }
  1226. }
  1227. ////////////////////////////////////////////////////////////////////LTP
  1228. function LTPInit(server, port, user)
  1229. {
  1230. if(f_ltp.IsOnline)
  1231. {
  1232. }
  1233. else
  1234. {
  1235. f_ltp.server = server;
  1236. f_ltp.account = user;
  1237. f_ltp.port = port;
  1238. if(f_ltp.Connect())
  1239. {
  1240. //alert("LTP 연결성공");
  1241. }
  1242. else
  1243. {
  1244. alert("LTP 데몬과의 접속이 실패하였습니다.");
  1245. }
  1246. }
  1247. }
  1248. // LTP 연결 해제
  1249. function LTPClose()
  1250. {
  1251. f_ltp.Close();
  1252. }
  1253. function LTPFileGet(remotePath, localPath)
  1254. {
  1255. var is_succeed = f_ltp.FileGet(remotePath, localPath);
  1256. if (is_succeed == false)
  1257. {
  1258. alert("파일다운로드에 실패하였습니다.");
  1259. } else {
  1260. //'alert("파일다운로드 성공하였습니다.");
  1261. }
  1262. return is_succeed;
  1263. }
  1264. function LTPFilePut(remotePath, localPath)
  1265. {
  1266. var is_succeed = f_ltp.FilePut(remotePath, localPath);
  1267. if (is_succeed == false)
  1268. {
  1269. alert("파일업로드에 실패하였습니다.");
  1270. }
  1271. return is_succeed;
  1272. }
  1273. function LTPFilesGet(remotePath, localPath)
  1274. {
  1275. return f_ltp.FilesGet(remotePath, localPath);
  1276. }
  1277. function LTPFilesPut(remotePath, localPath)
  1278. {
  1279. return f_ltp.FilesPut(remotePath, localPath);
  1280. }
  1281. function LTPClose()
  1282. {
  1283. return f_ltp.Close();
  1284. }
  1285. function getFiles(host, port, user, pass, pathRemote, pathLocal)
  1286. {
  1287. //alert(host + " " + port + " " + user + " " + pathRemote + " " + pathLocal);
  1288. var result;
  1289. //현재 테스트를 위해서 경로 하드 코딩 오픈시 cmr.patht 포트 유저 변경 해야 함
  1290. //host = "192.168.100.194";
  1291. port = "2500";
  1292. user = "user";
  1293. LTPInit(host, port, user);
  1294. result = LTPFilesGet(pathRemote, pathLocal);
  1295. //LTPClose();
  1296. return result;
  1297. }
  1298. function MouseWheel_event(button, shift, zDelta){
  1299. if(shift == 4 && f_View.viewMode == 0 && zDelta == 120)
  1300. {
  1301. f_View.FitMode = 1
  1302. f_View.ViewRatio += 0.1
  1303. }
  1304. else if(shift == 4 && f_View.viewMode == 0 && zDelta == -120)
  1305. {
  1306. f_View.FitMode = 1
  1307. f_View.ViewRatio -= 0.1
  1308. }
  1309. else if(shift == 4 && f_View.viewMode == 2 && zDelta == 120)
  1310. {
  1311. f_View.ThumbnailWidth += 7;
  1312. f_View.ThumbnailHeight += 10;
  1313. }
  1314. else if(shift == 4 && f_View.viewMode == 2 && zDelta == -120)
  1315. {
  1316. f_View.ThumbnailWidth -= 7;
  1317. f_View.ThumbnailHeight -= 10;
  1318. }
  1319. //2014/03/27 이정택 추가
  1320. /* var sid = opener.javascript.getScreenID();
  1321. if(sid=="SMMRI00400"){
  1322. var page_number=opener.javascript.page_number;
  1323. var pagetotcnt=opener.javascript.pagetotcnt;
  1324. if(Math.ceil(f_View.GetVScrollRatio) > 95){
  1325. if(page_number=="" || page_number==null){
  1326. page_number="1";
  1327. }else{
  1328. page_number=parseInt(page_number)+1;
  1329. }
  1330. if(parseInt(page_number) <= parseInt(pagetotcnt)){
  1331. //alert(parseInt(page_number));
  1332. opener.javascript.model.makeValue("/root/taek/cnt"+parseInt(page_number), parseInt(page_number));
  1333. opener.javascript.fPaging(parseInt(page_number));
  1334. }
  1335. }
  1336. }*/
  1337. //2014/03/27 이정택 추가
  1338. }
  1339. /**
  1340. * 페이징 처리
  1341. * 이정택 2014/04/01
  1342. * @param param
  1343. * @param chartinfo
  1344. * @param hiddenmsg
  1345. * @param recrowno
  1346. * @return
  1347. */
  1348. function fClickNext(){
  1349. var sid = opener.javascript.getScreenID();
  1350. if(sid=="SMMRI00400"){
  1351. var cpage = model.getValue("/root/main/chartinfo/pagecurrent");
  1352. var page_number=opener.javascript.page_number;
  1353. var pagetotcnt=opener.javascript.pagetotcnt;
  1354. if(page_number=="" || page_number==null){
  1355. page_number="1";
  1356. }else{
  1357. page_number=parseInt(page_number)+1;
  1358. }
  1359. if(parseInt(page_number) <= parseInt(pagetotcnt)){
  1360. opener.javascript.fPaging(parseInt(page_number));
  1361. }
  1362. f_View.PageCurrent = cpage;
  1363. }
  1364. }
  1365. //========================================================================
  1366. function append_BmarkChart(param, chartinfo, hiddenmsg , recrowno)
  1367. {
  1368. //영상-EMR구분|파일경로| TREATNO | FORMCODE | PAGENO
  1369. var arrChartInfo;
  1370. var nPrvPageTotal;
  1371. var nCurPageTotal;
  1372. var nCurPageCount;
  1373. var nNexPageTotal;
  1374. var i;
  1375. var j;
  1376. var r, re;
  1377. r = ",";
  1378. re = "','";
  1379. var treatno;
  1380. var docucd;
  1381. var temptreatno;
  1382. var tempdocucd;
  1383. var count;
  1384. var countmain;
  1385. var counthidden;
  1386. //영상-EMR구분|파일경로| TREATNO | FORMCODE | PAGENO
  1387. if (chartinfo == "")
  1388. {
  1389. return false;
  1390. }
  1391. nPrvPageTotal = parseInt(f_View.PageTotal);
  1392. nCurPageTotal = parseInt(f_View.PageTotal);
  1393. arrChartInfo = chartinfo.split("|");
  1394. if (arrChartInfo[0] == "I")
  1395. {
  1396. // 전송할 데이터를 만든다.
  1397. var destNode = instance1.selectSingleNode("/root/_send/data1");
  1398. var pageno = "";
  1399. var params = param.selectNodes("iemr");
  1400. for(var i = 0 ; i < params.length ; i++){
  1401. var selParam = params.item(i);
  1402. pageno = pageno + selParam.selectSingleNode("pageno").text + ",";
  1403. }
  1404. pageno = pageno.substr(0, pageno.length - 1);
  1405. model.removenode("/root/tmp/pagenoset");
  1406. model.makeValue("/root/tmp/pagenoset", pageno);
  1407. var selNode = instance1.selectSingleNode("/root/tmp/pagenoset");
  1408. param.appendChild(selNode);
  1409. model.copyNode(destNode, param);
  1410. // 전송
  1411. submit("TRMPL08130");
  1412. // 보여줄 페이지 수를 센다.
  1413. nCurPageCount = 0;
  1414. while(model.getValue("/root/main/charts[" + (nCurPageCount + 1) + "]/chrtpage") != null && model.getValue("/root/main/charts[" + (nCurPageCount + 1) + "]/chrtpage") != "")
  1415. {
  1416. nCurPageCount++;
  1417. nCurPageTotal++;
  1418. }
  1419. model.makeNode("/root/_send/data1/pagetot");
  1420. model.setValue("/root/_send/data1/pagetot", nCurPageCount);
  1421. model.setValue("/root/main/chartinfo/filetotal", model.getValue("/root/_send/data1/pagetot"));
  1422. model.setValue("/root/main/chartinfo/pagetotal", nCurPageTotal);
  1423. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  1424. model.refresh();
  1425. // 만들었던 데이터 삭제
  1426. model.resetInstanceNode("/root/_send");
  1427. // 페이지 정보를 조정한다.
  1428. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartInfo/pagetotal") != "0" ? "1" : "0");
  1429. model.refresh();
  1430. // 파일다운로드
  1431. downloadChart();
  1432. for (i = nPrvPageTotal + 1; i <= nCurPageTotal; i++)
  1433. {
  1434. // knuh_20110802_수정_실시일자로 수정
  1435. var indd = "";
  1436. if (model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/cmc_acptime") == "")
  1437. {
  1438. indd = model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/indd");
  1439. }
  1440. else
  1441. {
  1442. indd = model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/cmc_acptime");
  1443. }
  1444. g_outertext[i - 1] = formatDate(indd) + " " +
  1445. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/orddeptnm") + " " +
  1446. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm") + " " +
  1447. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage");
  1448. f_View.PageAppend(g_path[i], 1, 1);
  1449. f_View.PageText(i) = "[" +
  1450. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage") +
  1451. "] " +
  1452. indd + " " +
  1453. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm");
  1454. f_View.PageHiddenText(i) = "I" + "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/ordno") +
  1455. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docucd") +
  1456. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/pagecnt") +
  1457. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/pageno") +
  1458. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/indd") +
  1459. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm") +
  1460. "▦" + "[" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage") + "]" +
  1461. "|";
  1462. f_View.ActionParamInt1 = i;
  1463. f_View.actionparamstring1 = g_outertext[i - 1];
  1464. f_View.actioncontinuous = 9;
  1465. g_recrowno[i]= recrowno;
  1466. }
  1467. /*
  1468. // 차트 추가
  1469. objChartView.AutoRefresh = false;
  1470. objChartView.ChartAppend(g_path[1], 1, 1);
  1471. objChartView.OuterCaption(1) = g_outertext[0];
  1472. objChartView.AutoRefresh = true;
  1473. */
  1474. }
  1475. else
  1476. {
  1477. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  1478. // 차트 추가
  1479. i = nPrvPageTotal + 1;
  1480. f_view.PageAppend(arrChartInfo[1], 1, 1);
  1481. nNexPageTotal = parseInt(f_view.PageTotal);
  1482. for (j = i; j <= nNexPageTotal; j++)
  1483. {
  1484. g_outertext[j - 1] = formatDate(arrChartInfo[2]) + " " +
  1485. arrChartInfo[6] + " " +
  1486. arrChartInfo[4] + " " +
  1487. parseInt(j - i + 1);
  1488. f_View.PageText(j) = "[" +
  1489. parseInt(j - i + 1) +
  1490. "] " +
  1491. arrChartInfo[2] + " " +
  1492. arrChartInfo[4];
  1493. f_view.PageHiddenText(j) = hiddenmsg + "▦" + nNexPageTotal;
  1494. g_recrowno[j]= recrowno;
  1495. g_path[j] = f_view.PageFilePath(j);
  1496. g_page[j] = j - i + 1;
  1497. g_page_lut[j] = j;
  1498. f_View.ActionParamInt1 = j;
  1499. f_View.actionparamstring1 = g_outertext[j - 1];
  1500. f_View.actioncontinuous = 9;
  1501. }
  1502. // 차트 추가
  1503. /*
  1504. objChartView.AutoRefresh = false;
  1505. objChartView.ChartAppend(arrChartInfo[1], 1, 1);
  1506. objChartView.OuterCaption(1) = g_outertext[0];
  1507. objChartView.AutoRefresh = true;
  1508. */
  1509. model.setValue("/root/main/chartinfo/pagetotal", nNexPageTotal);
  1510. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  1511. model.refresh();
  1512. }
  1513. f_View.PageCurrent = 1;
  1514. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  1515. model.setValue("/root/main/chartinfo/pagetotal", f_View.PageTotal );
  1516. model.setValue("/root/main/chartinfo/filetotal", f_View.PageTotal );
  1517. model.refresh();
  1518. return true;
  1519. }
  1520. function appendChart(param, chartinfo, hiddenmsg , recrowno )
  1521. {
  1522. var arrChartInfo;
  1523. var nPrvPageTotal;
  1524. var nCurPageTotal;
  1525. var nCurPageCount;
  1526. var nNexPageTotal;
  1527. var i;
  1528. var j;
  1529. var r, re;
  1530. r = ",";
  1531. re = "','";
  1532. var treatno;
  1533. var docucd;
  1534. var temptreatno;
  1535. var tempdocucd;
  1536. var count;
  1537. var countmain;
  1538. var counthidden;
  1539. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  1540. if (chartinfo == "")
  1541. {
  1542. return false;
  1543. }
  1544. arrChartInfo = chartinfo.split("|");
  1545. if (arrChartInfo[0] == "I")
  1546. {
  1547. // 전송할 데이터를 만든다.
  1548. //ClearChart()
  1549. nPrvPageTotal = parseInt(f_View.PageTotal);
  1550. nCurPageTotal = parseInt(f_View.PageTotal);
  1551. var destNode = instance1.selectSingleNode("/root/_send/data1");
  1552. model.copyNode(destNode, param);
  1553. // 전송
  1554. submit("TRMPL08101");
  1555. // 보여줄 페이지 수를 센다.
  1556. nCurPageCount = 0;
  1557. while(model.getValue("/root/main/charts[" + (nCurPageCount + 1) + "]/chrtpage") != null && model.getValue("/root/main/charts[" + (nCurPageCount + 1) + "]/chrtpage") != "")
  1558. {
  1559. nCurPageCount++;
  1560. nCurPageTotal++;
  1561. }
  1562. model.makeNode("/root/_send/data1/pagetot");
  1563. model.setValue("/root/_send/data1/pagetot", nCurPageCount);
  1564. model.setValue("/root/main/chartinfo/filetotal", model.getValue("/root/_send/data1/pagetot"));
  1565. model.setValue("/root/main/chartinfo/pagetotal", nCurPageTotal);
  1566. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  1567. model.refresh();
  1568. // 만들었던 데이터 삭제
  1569. model.resetInstanceNode("/root/_send");
  1570. // 페이지 정보를 조정한다.
  1571. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartInfo/pagetotal") != "0" ? "1" : "0");
  1572. model.refresh();
  1573. // 파일다운로드
  1574. downloadChart();
  1575. //alert("appendchart");
  1576. for (i = nPrvPageTotal + 1; i <= nCurPageTotal; i++)
  1577. {
  1578. var indd = "";
  1579. if (model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/cmc_acptime") == "")
  1580. {
  1581. indd = model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/indd");
  1582. }
  1583. else
  1584. {
  1585. indd = model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/cmc_acptime");
  1586. }
  1587. g_outertext[i - 1] = formatDate(indd) + " " +
  1588. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/orddeptnm") + " " +
  1589. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm") + " " +
  1590. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage");
  1591. f_View.PageAppend(g_path[i], 0, 0);
  1592. f_View.ActionParamInt1 = i;
  1593. f_View.ActionParamString1 = g_outertext[i - 1];
  1594. f_View.Actioncontinuous = 9;
  1595. // KNUH_20110525_수정 - 이미지의 헤더의 날짜를 실시일자로 바꿔달라는 요청
  1596. f_View.PageText(i) = "[" +
  1597. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage") +
  1598. "] " +
  1599. indd + " " +
  1600. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm");
  1601. f_View.PageHiddenText(i) = "I" + "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/ordno") +
  1602. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docucd") +
  1603. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/pagecnt") +
  1604. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/pageno") +
  1605. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/indd") +
  1606. "▦" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm") +
  1607. "▦" + "[" + model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage") + "]" +
  1608. "|";
  1609. //alert(f_View.PageHiddenText(i));
  1610. g_recrowno[i]= recrowno;
  1611. }
  1612. // 차트 추가
  1613. /*
  1614. objChartView.AutoRefresh = false;
  1615. objChartView.ChartAppend(g_path[1], 1, 1);
  1616. objChartView.OuterCaption(1) = g_outertext[0];
  1617. objChartView.AutoRefresh = true;
  1618. */
  1619. }
  1620. else
  1621. {
  1622. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  1623. // 차트 추가
  1624. //ClearChart()
  1625. nPrvPageTotal = parseInt(f_View.PageTotal);
  1626. nCurPageTotal = parseInt(f_View.PageTotal);
  1627. i = nPrvPageTotal + 1;
  1628. f_View.PageAppend(arrChartInfo[1], 0, 0);
  1629. nNexPageTotal = parseInt(f_View.pagetotal);
  1630. for (j = i; j <= nNexPageTotal; j++)
  1631. {
  1632. /*
  1633. g_outertext[j - 1] = formatDate(arrChartInfo[2]) + " " +
  1634. arrChartInfo[6] + " " +
  1635. arrChartInfo[4] + " " +
  1636. parseInt(j - i + 1);
  1637. */
  1638. g_outertext[j - 1] = "[" +
  1639. parseInt(j - i + 1) +
  1640. "] " +
  1641. arrChartInfo[2] + " " +
  1642. arrChartInfo[4];
  1643. //alert("g_outertext" + g_outertext[j - 1]);
  1644. f_View.PageText(j) = "[" +
  1645. parseInt(j - i + 1) +
  1646. "] " +
  1647. arrChartInfo[2] + " " +
  1648. arrChartInfo[4];
  1649. f_View.PageHiddenText(j) = hiddenmsg + "▦" + nNexPageTotal;
  1650. //alert(" f_View.PageHiddenText(j)" + f_View.PageHiddenText(j));
  1651. f_View.ActionParamInt1 = j;
  1652. f_View.ActionParamString1 = g_outertext[j - 1];
  1653. f_View.Actioncontinuous = 9;
  1654. g_recrowno[j]= recrowno;
  1655. g_path[j] = f_View.PageFilePath(j);
  1656. g_page[j] = j - i + 1;
  1657. g_page_lut[j] = j;
  1658. }
  1659. // 차트 추가
  1660. /*
  1661. objChartView.AutoRefresh = false;
  1662. objChartView.ChartAppend(arrChartInfo[1], 1, 1);
  1663. objChartView.OuterCaption(1) = g_outertext[0];
  1664. objChartView.AutoRefresh = true;
  1665. */
  1666. model.setValue("/root/main/chartinfo/pagetotal", nNexPageTotal);
  1667. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  1668. model.refresh();
  1669. }
  1670. f_View.PageCurrent = 1;
  1671. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  1672. model.setValue("/root/main/chartinfo/pagetotal", f_View.PageTotal );
  1673. model.setValue("/root/main/chartinfo/filetotal", f_View.PageTotal );
  1674. model.refresh();
  1675. }
  1676. function downloadChart()
  1677. {
  1678. var fso;
  1679. var curAddr = "";
  1680. var curHost = "";
  1681. var curPort = "";
  1682. var xpathChart;
  1683. var pathRemote = "";
  1684. var pathLocal = "";
  1685. var pathSrc;
  1686. var pathDst;
  1687. var pageDemand;
  1688. var filename;
  1689. var pathname;
  1690. var rmad;
  1691. var rmpo;
  1692. var i;
  1693. var j;
  1694. var cdate;
  1695. var cdateyyyymm;
  1696. var cdatedd;
  1697. var security;
  1698. fso = new ActiveXObject("Scripting.FileSystemObject");
  1699. // 차트 파일을 다운로드 받을 폴더를 준비한다.
  1700. //var pathRecv;
  1701. // 차트를 다운받을 폴더가 없다면 만든다.
  1702. //if( fso.FolderExists(pathRecv) == false)
  1703. //{
  1704. // fso.CreateFolder(pathRecv);
  1705. //}
  1706. // 차트 폴더를 저장
  1707. //model.setValue("/root/hidden/chartImageHome", pathRecv);
  1708. //setupRecvPath(fso);
  1709. var fileTotal = model.getValue("/root/main/chartinfo/filetotal");
  1710. model.setValue("/root/main/chartinfo/pagetotal",model.getValue("/root/main/chartinfo/filetotal"));
  1711. var pathRecv = model.getValue("/root/hidden/chartImageHome");
  1712. var pagingyn = model.getValue("/root/envinit/pagingyn");
  1713. if (pagingyn == "Y") {
  1714. var quo = parseInt(fileTotal/10);
  1715. var mod = fileTotal % 10 ;
  1716. var endpos ;
  1717. if ( mod == 0) {
  1718. endpos = quo;
  1719. }
  1720. else {
  1721. endpos = quo + 1;
  1722. }
  1723. var cptitem = "";
  1724. var captionObj = "";
  1725. for (k = 1; k <= endpos; k++) {
  1726. model.makeValue("/root/initinfo/pagelist/page["+k+"]/cdid",k - 1);
  1727. model.makeValue("/root/initinfo/pagelist/page["+k+"]/cdnm",k);
  1728. cptitem = "cpt"+k;
  1729. captionObj = document.controls(cptitem);
  1730. if( captionObj != null ){
  1731. captionObj.visible = true;
  1732. }
  1733. }
  1734. model.refresh();
  1735. // rdo_lindx.attribute("width") = k * 31;
  1736. }
  1737. if(pathRecv == "")
  1738. {
  1739. pathRecv = fso.GetSpecialFolder(2) + "\\LCViewer\\";
  1740. }
  1741. if (fileTotal >= 1)
  1742. {
  1743. body.disabled = false;
  1744. var pagingyn = model.getValue("/root/envinit/pagingyn");
  1745. if (pagingyn == "Y") {
  1746. pageDemand = 0;
  1747. }
  1748. else {
  1749. pageDemand = parseInt(f_View.PageTotal);
  1750. }
  1751. for(i = 0; i < fileTotal; i++ )
  1752. {
  1753. // 작업할 차트 정보를 갖고 있는 xpath를 만든다.
  1754. xpathChart = getXPathChart(i + 1);
  1755. // 다운로드 받을 파일이 있는 서버 정보를 얻는다.
  1756. rmad = model.getValue(xpathChart + "/remtip");
  1757. rmpo = model.getValue(xpathChart + "/remtport");
  1758. // rmad가 비어 있다면 로컬 디스크 상에 파일이 있는걸로 간주한다.
  1759. if(rmad != "")
  1760. {
  1761. // 다운로드 받을 파일의 패스를 만든다.
  1762. filename = model.getValue(xpathChart + "/pageno" );
  1763. //alert(filename);
  1764. pathname = "000" + filename;
  1765. //alert(pathname);
  1766. cdate = model.getValue(xpathChart + "/ptdt" );
  1767. //alert(cdate);
  1768. cdateyyyymm = cdate.substr(0, 6);
  1769. //alert(cdateyyyymm);
  1770. cdatedd = cdate.substr(6, 2)
  1771. //alert(cdatedd);
  1772. security = model.getValue(xpathChart + "/scrt" );
  1773. //alert(security);
  1774. // 2012-01-17 유희갑 수정
  1775. // 사유 : 경로를 비트 방식에서 엘씨테크 방식으로 변경
  1776. // security 값이 'D', 'L'
  1777. // 'D' --> YYYYMM/DD/file
  1778. // 'L' --> YYYYMM/DD/file 마지막 숫자/file 으로 변경
  1779. //pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + pathname.substr(pathname.length - 4, 4) + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  1780. pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + pathname.substr(pathname.length - 4, 4) + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  1781. //scrt
  1782. //if (security == "D")
  1783. //{
  1784. // pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + cdateyyyymm + "\\" + cdatedd + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  1785. //}
  1786. //else
  1787. //{
  1788. // pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + cdateyyyymm + "\\" + cdatedd + "\\" + pathname.substr(pathname.length - 1, 1) + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  1789. //
  1790. //}
  1791. pathDst = pathRecv + filename + "." + model.getValue(xpathChart+ "/fileextn ") ;
  1792. // 파일을 다운로드 받거나 패스 문자열을 만든다.
  1793. if(curAddr == rmad && curPort == rmpo)
  1794. {
  1795. // 이미 존재하는 내용이 있다면 연결 문자를 추가한다.
  1796. if( pathRemote.length != 0 )
  1797. {
  1798. pathRemote = pathRemote + "|";
  1799. pathLocal = pathLocal + "|";
  1800. // pathRemote = pathRemote + splittxt;
  1801. // pathLocal = pathLocal + splittxt;
  1802. }
  1803. // 받을 파일을 추가한다.
  1804. pathRemote = pathRemote + pathSrc;
  1805. pathLocal = pathLocal + pathDst;
  1806. }
  1807. else
  1808. {
  1809. // 필요하다면 파일을 다운로드 받는다.
  1810. if(pathRemote.length != 0 )
  1811. {
  1812. if(getFiles(curAddr, curPort, model.getValue(xpathChart+ "/remtuser"), model.getValue(xpathChart+ "/remtpwd"), pathRemote, pathLocal) == false) ;
  1813. }
  1814. // 현재 상태를 초기화 한다.
  1815. pathRemote = pathSrc;
  1816. pathLocal = pathDst;
  1817. curAddr = rmad;
  1818. curPort = rmpo;
  1819. }
  1820. // 파일 패스와 페이지 번호 저장
  1821. g_path[pageDemand + 1] = pathDst;
  1822. g_page[pageDemand + 1] = 1;
  1823. g_page_lut[pageDemand + 1] = i + 1;
  1824. pageDemand++;
  1825. }
  1826. else
  1827. {
  1828. // 로컬 디스크에 파일이 있을경우 그 패스는 rmpt에 들어가 있게 된다.
  1829. // pageno에 보여질 이미지 파일의 파일 이름을 저장해 두게 된다.
  1830. // 원본과 복사본 파일 패스
  1831. filename = "local" + i + ".txt";
  1832. pathSrc = model.getValue(xpathChart + "/remtpath");
  1833. pathDst = pathRecv + filename;
  1834. // 파일 복사
  1835. fso.CopyFile(pathSrc, pathDst, true);
  1836. // 파일 이름을 pageno에 저장
  1837. model.setValue(xpathChart + "/pageno", filename);
  1838. // 파일 패스와 페이지 번호 저장
  1839. //objPreview.Load(pathDst, 1);
  1840. for(j = 0; j < objPreview.TotalPage; j++)
  1841. {
  1842. g_path[pageDemand + 1] = pathDst;
  1843. g_page[pageDemand + 1] = j + 1;
  1844. g_page_lut[pageDemand + 1] = i + 1;
  1845. pageDemand++;
  1846. }
  1847. //objPreview.ImageFilePath = "";
  1848. }
  1849. }
  1850. // 필요하다면 파일을 다운로드 받는다.
  1851. //alert( pathRemote);
  1852. //alert( pathLocal);
  1853. if( pathRemote.length != 0 )
  1854. {
  1855. var pagingyn = model.getValue("/root/envinit/pagingyn");
  1856. if (pagingyn == "Y") {
  1857. var seqflag = model.getValue("/root/init/seqflag");
  1858. var startnum = seqflag * 10;
  1859. var quo = parseInt(fileTotal/10);
  1860. var mod = fileTotal % 10 ;
  1861. if (quo == seqflag ) {
  1862. endnum = startnum + mod - 1;
  1863. }
  1864. else {
  1865. endnum = startnum + 9;
  1866. }
  1867. var pagepathRemote = pathRemote.split("|");
  1868. var startpathRemote = pagepathRemote[startnum];
  1869. var endpathRemote = pagepathRemote[endnum];
  1870. var startpos = pathRemote.indexOf(startpathRemote);
  1871. var endpos = pathRemote.indexOf(endpathRemote) + endpathRemote.length;
  1872. var newpathRemote = pathRemote.substring(startpos,endpos);
  1873. var pagepathLocal = pathLocal.split("|"); //splittxt);
  1874. var startpathLocal = pagepathLocal[startnum];
  1875. var endpathLocal = pagepathLocal[endnum];
  1876. var startpos = pathLocal.indexOf(startpathLocal);
  1877. var endpos = pathLocal.indexOf(endpathLocal) + endpathLocal.length;
  1878. var newpathLocal = pathLocal.substring(startpos,endpos);
  1879. if(getFiles(curAddr, curPort, model.getValue(xpathChart+ "/remtuser"), model.getValue(xpathChart+ "/remtpwd"), newpathRemote, newpathLocal) == false) ;
  1880. }
  1881. else {
  1882. if(getFiles(curAddr, curPort, model.getValue(xpathChart+ "/remtuser"), model.getValue(xpathChart+ "/remtpwd"), pathRemote, pathLocal) == false) ;
  1883. }
  1884. }
  1885. //setupMoveButton();
  1886. //return true;
  1887. }
  1888. if (model.getValue("/root/main/emrpath") != null && model.getValue("/root/main/emrpath") != "")
  1889. {
  1890. pageDemand = appendEMRChart();
  1891. model.setValue("/root/main/chartinfo/pagecurrent", pageDemand == 1 ? 0 : 1);
  1892. model.setValue("/root/main/chartinfo/pagetotal", pageDemand);
  1893. model.refresh();
  1894. //setupMoveButton();
  1895. for (i = g_temp_page.length - 1; i >= 0; i--)
  1896. {
  1897. delete g_temp_path[i];
  1898. delete g_temp_page[i];
  1899. }
  1900. for (count = 1; count < g_page.length; count++)
  1901. {
  1902. g_temp_path[count] = g_path[count];
  1903. g_temp_page[count] = g_page[count];
  1904. }
  1905. }
  1906. return true;
  1907. /*
  1908. else
  1909. {
  1910. alert("해당 데이터에 대한 이미지가 없습니다.");
  1911. // setupChart("PageView");
  1912. // body.disabled = true;
  1913. return false;
  1914. }
  1915. */
  1916. }
  1917. function appendChartMulti(param)
  1918. {
  1919. var arrChartInfo;
  1920. var nPrvPageTotal;
  1921. var nCurPageTotal;
  1922. var nCurPageCount;
  1923. var nNexPageTotal;
  1924. var i;
  1925. var j;
  1926. var k;
  1927. var p;
  1928. var q;
  1929. var r, re;
  1930. r = ",";
  1931. re = "','";
  1932. var treatno;
  1933. var docucd;
  1934. var temptreatno;
  1935. var tempdocucd;
  1936. var count;
  1937. var countmain;
  1938. var counthidden;
  1939. var count;
  1940. var chartinfo;
  1941. var hiddenmsg;
  1942. var recrowno;
  1943. var ordno;
  1944. var imgcount;
  1945. var arrparam;
  1946. var arrdata;
  1947. var pagecnt;
  1948. arrparam = param.split("▩")
  1949. arrdata = arrparam[1].split("▦");
  1950. patid = arrdata[0];
  1951. // 만들었던 데이터 삭제
  1952. model.resetInstanceNode("/root/_send");
  1953. model.makeValue("/root/_send/data1/pid", patid);
  1954. model.makeValue("/root/_send/data1/instcd", "053");
  1955. //alert(model.getValue("/root/_send/data1/pid"));
  1956. submit("TRMPL08101");
  1957. imgcount = getNodesetCount("/root/main/charts/pageno");
  1958. //alert(imgcount);
  1959. model.makeNode("/root/_send/data1/pagetot");
  1960. model.setValue("/root/_send/data1/pagetot", imgcount);
  1961. model.setValue("/root/main/chartinfo/filetotal", imgcount);
  1962. model.setValue("/root/main/chartinfo/pagetotal", imgcount);
  1963. model.setValue("/root/main/chartinfo/pagecurrent", imgcount);
  1964. model.refresh();
  1965. // 페이지 정보를 조정한다.
  1966. model.setValue("/root/main/chartinfo/pagecurrent", imgcount);
  1967. model.refresh();
  1968. downloadChart();
  1969. for (k = 1; k <= arrparam.length - 1; k++)
  1970. {
  1971. arrdata = arrparam[k].split("▦");
  1972. treatno = arrdata[1];
  1973. formcode = arrdata[2];
  1974. chartinfo = arrdata[3];
  1975. hiddenmsg = arrdata[4];
  1976. recrowno = arrdata[5];
  1977. // arrChartInfo = chartinfo.split("|");
  1978. arrChartInfo = chartinfo.split(splittxt);
  1979. //alert(arrChartInfo[0]);
  1980. if (arrChartInfo[0] == "I")
  1981. {
  1982. for (q = 1; q <= imgcount; q ++)
  1983. {
  1984. /*
  1985. alert("ordno " + model.getValue("/root/main/charts[" + q + "]/ordno"));
  1986. alert("orddeptcd " + model.getValue("/root/main/charts[" + q + "]/orddeptcd"));
  1987. alert("indd" + model.getValue("/root/main/charts[" + q + "]/indd"));
  1988. alert("pageno" + model.getValue("/root/main/charts[" + q + "]/pageno"));
  1989. */
  1990. if (treatno == model.getValue("/root/main/charts[" + q + "]/ordno"))
  1991. {
  1992. // 전송할 데이터를 만든다.
  1993. //ClearChart()
  1994. anPrvPageTotal = parseInt(f_View.PageTotal);
  1995. nCurPageTotal = parseInt(f_View.PageTotal);
  1996. // 전송
  1997. // 보여줄 페이지 수를 센다.
  1998. nCurPageCount = 0;
  1999. /*
  2000. while(model.getValue("/root/main/charts[" + q + "]/chrtpage") != null && model.getValue("/root/main/charts[" + q + "]/chrtpage") != "")
  2001. {
  2002. nCurPageCount++;
  2003. nCurPageTotal++;
  2004. }
  2005. */
  2006. nCurPageCount++;
  2007. nCurPageTotal++;
  2008. model.makeNode("/root/_send/data1/pagetot");
  2009. model.setValue("/root/_send/data1/pagetot", nCurPageCount);
  2010. model.setValue("/root/main/chartinfo/filetotal", model.getValue("/root/_send/data1/pagetot"));
  2011. model.setValue("/root/main/chartinfo/pagetotal", nCurPageTotal);
  2012. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  2013. model.refresh();
  2014. // 만들었던 데이터 삭제
  2015. model.resetInstanceNode("/root/_send");
  2016. // 페이지 정보를 조정한다.
  2017. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartInfo/pagetotal") != "0" ? "1" : "0");
  2018. model.refresh();
  2019. f_View.PageAppend(g_path[i], 0, 0);
  2020. //alert(g_path[i]);
  2021. //alert(g_path[i]);
  2022. // KNUH_20110525_수정 - 이미지의 헤더의 날짜를 실시일자로 바꿔달라는 요청
  2023. var indd = "";
  2024. if (model.getValue("/root/main/charts[" + q + "]/cmc_acptime") == "")
  2025. {
  2026. indd = model.getValue("/root/main/charts[" + q + "]/indd");
  2027. }
  2028. else
  2029. {
  2030. indd = model.getValue("/root/main/charts[" + q + "]/cmc_acptime");
  2031. }
  2032. g_outertext[i - 1] = formatDate(indd) + " " +
  2033. model.getValue("/root/main/charts[" + q + "]/orddeptnm") + " " +
  2034. model.getValue("/root/main/charts[" + q + "]/docunm") + " " +
  2035. model.getValue("/root/main/charts[" + q + "]/chrtpage");
  2036. f_View.ActionParamInt1 = i;
  2037. f_View.ActionParamString1 = g_outertext[i - 1];
  2038. f_View.Actioncontinuous = 9;
  2039. // KNUH_20110525_수정 - 이미지의 헤더의 날짜를 실시일자로 바꿔달라는 요청
  2040. f_View.PageText(i) = "[" +
  2041. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/chrtpage") +
  2042. "] " +
  2043. indd + " " +
  2044. model.getValue("/root/main/charts[" + (i - nPrvPageTotal) + "]/docunm");
  2045. f_View.PageHiddenText(i) = "I" + "▦" + model.getValue("/root/main/charts[" + q + "]/ordno") +
  2046. "▦" + model.getValue("/root/main/charts[" + q + "]/docucd") +
  2047. "▦" + model.getValue("/root/main/charts[" + q + "]/pagecnt") +
  2048. "▦" + model.getValue("/root/main/charts[" + q + "]/pageno") +
  2049. "▦" + model.getValue("/root/main/charts[" + q + "]/indd") +
  2050. "▦" + model.getValue("/root/main/charts[" + q + "]/docunm") +
  2051. "▦" + "[" + model.getValue("/root/main/charts[" + q + "]/chrtpage") + "]" +
  2052. "|";
  2053. //alert(f_View.PageHiddenText(i));
  2054. g_recrowno[i]= recrowno;
  2055. // 차트 추가
  2056. }
  2057. }
  2058. }
  2059. else
  2060. {
  2061. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  2062. // 차트 추가
  2063. //ClearChart()
  2064. nPrvPageTotal = parseInt(f_View.PageTotal);
  2065. nCurPageTotal = parseInt(f_View.PageTotal);
  2066. i = nPrvPageTotal + 1;
  2067. f_View.PageAppend(arrChartInfo[1], 0, 0);
  2068. nNexPageTotal = parseInt(f_View.pagetotal);
  2069. for (j = i; j <= nNexPageTotal; j++)
  2070. {
  2071. g_outertext[j - 1] = "[" +
  2072. parseInt(j - i + 1) +
  2073. "] " +
  2074. arrChartInfo[2] + " " +
  2075. arrChartInfo[4];
  2076. //alert("g_outertext" + g_outertext[j - 1]);
  2077. f_View.PageText(j) = "[" +
  2078. parseInt(j - i + 1) +
  2079. "] " +
  2080. arrChartInfo[2] + " " +
  2081. arrChartInfo[4];
  2082. f_View.PageHiddenText(j) = hiddenmsg + "▦" + nNexPageTotal;
  2083. //alert(" f_View.PageHiddenText(j)" + f_View.PageHiddenText(j));
  2084. f_View.ActionParamInt1 = j;
  2085. f_View.ActionParamString1 = g_outertext[j - 1];
  2086. f_View.Actioncontinuous = 9;
  2087. g_recrowno[j]= recrowno;
  2088. g_path[j] = f_View.PageFilePath(j);
  2089. g_page[j] = j - i + 1;
  2090. g_page_lut[j] = j;
  2091. }
  2092. // 차트 추가
  2093. model.setValue("/root/main/chartinfo/pagetotal", nNexPageTotal);
  2094. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartinfo/pagetotal") != "0" ? "1" : "0");
  2095. model.refresh();
  2096. }
  2097. }
  2098. f_View.PageCurrent = 1;
  2099. model.setValue("/root/main/chartinfo/pagecurrent", f_View.PageCurrent );
  2100. model.setValue("/root/main/chartinfo/pagetotal", f_View.PageTotal );
  2101. model.setValue("/root/main/chartinfo/filetotal", f_View.PageTotal );
  2102. model.refresh();
  2103. }
  2104. function downloadChartMulti(recrowno)
  2105. {
  2106. var fso;
  2107. var curAddr = "";
  2108. var curHost = "";
  2109. var curPort = "";
  2110. var xpathChart;
  2111. var pathRemote = "";
  2112. var pathLocal = "";
  2113. var pathSrc;
  2114. var pathDst;
  2115. var pageDemand;
  2116. var filename;
  2117. var pathname;
  2118. var rmad;
  2119. var rmpo;
  2120. var i;
  2121. var j;
  2122. var cdate;
  2123. var cdateyyyymm;
  2124. var cdatedd;
  2125. var security;
  2126. fso = new ActiveXObject("Scripting.FileSystemObject");
  2127. // 차트 파일을 다운로드 받을 폴더를 준비한다.
  2128. //var pathRecv;
  2129. // 차트를 다운받을 폴더가 없다면 만든다.
  2130. //if( fso.FolderExists(pathRecv) == false)
  2131. //{
  2132. // fso.CreateFolder(pathRecv);
  2133. //}
  2134. // 차트 폴더를 저장
  2135. //model.setValue("/root/hidden/chartImageHome", pathRecv);
  2136. //setupRecvPath(fso);
  2137. var fileTotal = model.getValue("/root/main/chartinfo/filetotal");
  2138. model.setValue("/root/main/chartinfo/pagetotal",model.getValue("/root/main/chartinfo/filetotal"));
  2139. var pathRecv = model.getValue("/root/hidden/chartImageHome");
  2140. if(pathRecv == "")
  2141. {
  2142. pathRecv = fso.GetSpecialFolder(2) + "\\LCViewer\\";
  2143. }
  2144. if (fileTotal >= 1)
  2145. {
  2146. body.disabled = false;
  2147. //pageDemand = 0;
  2148. pageDemand = parseInt(f_View.PageTotal);
  2149. for(i = 0; i < fileTotal; i++ )
  2150. {
  2151. // 작업할 차트 정보를 갖고 있는 xpath를 만든다.
  2152. xpathChart = getXPathChart(i + 1);
  2153. // 다운로드 받을 파일이 있는 서버 정보를 얻는다.
  2154. rmad = model.getValue(xpathChart + "/remtip");
  2155. rmpo = model.getValue(xpathChart + "/remtport");
  2156. //alert(rmpo);
  2157. // rmad가 비어 있다면 로컬 디스크 상에 파일이 있는걸로 간주한다.
  2158. if(rmad != "")
  2159. {
  2160. // 다운로드 받을 파일의 패스를 만든다.
  2161. filename = model.getValue(xpathChart + "/pageno" );
  2162. //alert(filename);
  2163. pathname = "000" + filename;
  2164. //alert(pathname);
  2165. cdate = model.getValue(xpathChart + "/ptdt" );
  2166. //alert(cdate);
  2167. cdateyyyymm = cdate.substr(0, 6);
  2168. //alert(cdateyyyymm);
  2169. cdatedd = cdate.substr(6, 2)
  2170. //alert(cdatedd);
  2171. security = model.getValue(xpathChart + "/scrt" );
  2172. //alert(security);
  2173. // 2012-01-17 유희갑 수정
  2174. // 사유 : 경로를 비트 방식에서 엘씨테크 방식으로 변경
  2175. // security 값이 'D', 'L'
  2176. // 'D' --> YYYYMM/DD/file
  2177. // 'L' --> YYYYMM/DD/file 마지막 숫자/file 으로 변경
  2178. //pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + pathname.substr(pathname.length - 4, 4) + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  2179. //scrt
  2180. if (security == "D")
  2181. {
  2182. pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + cdateyyyymm + "\\" + cdatedd + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  2183. }
  2184. else
  2185. {
  2186. pathSrc = model.getValue(xpathChart + "/remtpath") + "\\" + cdateyyyymm + "\\" + cdatedd + "\\" + pathname.substr(pathname.length - 1, 1) + "\\" + filename + "." + model.getValue(xpathChart+ "/fileextn ");
  2187. }
  2188. pathDst = pathRecv + filename + "." + model.getValue(xpathChart+ "/fileextn ") ;
  2189. // 파일을 다운로드 받거나 패스 문자열을 만든다.
  2190. if(curAddr == rmad && curPort == rmpo)
  2191. {
  2192. // 이미 존재하는 내용이 있다면 연결 문자를 추가한다.
  2193. if( pathRemote.length != 0 )
  2194. {
  2195. pathRemote = pathRemote + "|";
  2196. pathLocal = pathLocal + "|";
  2197. }
  2198. // 받을 파일을 추가한다.
  2199. pathRemote = pathRemote + pathSrc;
  2200. pathLocal = pathLocal + pathDst;
  2201. }
  2202. else
  2203. {
  2204. // 필요하다면 파일을 다운로드 받는다.
  2205. if(pathRemote.length != 0 )
  2206. {
  2207. if(getFiles(curAddr, curPort, model.getValue(xpathChart+ "/remtuser"), model.getValue(xpathChart+ "/remtpwd"), pathRemote, pathLocal) == false) return false;
  2208. }
  2209. // 현재 상태를 초기화 한다.
  2210. pathRemote = pathSrc;
  2211. pathLocal = pathDst;
  2212. curAddr = rmad;
  2213. curPort = rmpo;
  2214. }
  2215. // 파일 패스와 페이지 번호 저장
  2216. g_path[pageDemand + 1] = pathDst;
  2217. g_page[pageDemand + 1] = 1;
  2218. g_page_lut[pageDemand + 1] = i + 1;
  2219. pageDemand++;
  2220. }
  2221. else
  2222. {
  2223. // 로컬 디스크에 파일이 있을경우 그 패스는 rmpt에 들어가 있게 된다.
  2224. // pageno에 보여질 이미지 파일의 파일 이름을 저장해 두게 된다.
  2225. // 원본과 복사본 파일 패스
  2226. filename = "local" + i + ".txt";
  2227. pathSrc = model.getValue(xpathChart + "/remtpath");
  2228. pathDst = pathRecv + filename;
  2229. // 파일 복사
  2230. fso.CopyFile(pathSrc, pathDst, true);
  2231. // 파일 이름을 pageno에 저장
  2232. model.setValue(xpathChart + "/pageno", filename);
  2233. // 파일 패스와 페이지 번호 저장
  2234. //objPreview.Load(pathDst, 1);
  2235. for(j = 0; j < objPreview.TotalPage; j++)
  2236. {
  2237. g_path[pageDemand + 1] = pathDst;
  2238. g_page[pageDemand + 1] = j + 1;
  2239. g_page_lut[pageDemand + 1] = i + 1;
  2240. pageDemand++;
  2241. }
  2242. //objPreview.ImageFilePath = "";
  2243. }
  2244. }
  2245. // 필요하다면 파일을 다운로드 받는다.
  2246. //alert( pathRemote);
  2247. //alert( pathLocal);
  2248. if( pathRemote.length != 0 )
  2249. {
  2250. if(getFiles(curAddr, curPort, model.getValue(xpathChart+ "/remtuser"), model.getValue(xpathChart+ "/remtpwd"), pathRemote, pathLocal) == false) return false;
  2251. }
  2252. //setupMoveButton();
  2253. return true;
  2254. }
  2255. else if (model.getValue("/root/main/emrpath") != null && model.getValue("/root/main/emrpath") != "")
  2256. {
  2257. pageDemand = appendEMRChart();
  2258. model.setValue("/root/main/chartinfo/pagecurrent", pageDemand == 1 ? 0 : 1);
  2259. model.setValue("/root/main/chartinfo/pagetotal", pageDemand);
  2260. model.refresh();
  2261. //setupMoveButton();
  2262. for (i = g_temp_page.length - 1; i >= 0; i--)
  2263. {
  2264. delete g_temp_path[i];
  2265. delete g_temp_page[i];
  2266. }
  2267. for (count = 1; count < g_page.length; count++)
  2268. {
  2269. g_temp_path[count] = g_path[count];
  2270. g_temp_page[count] = g_page[count];
  2271. }
  2272. return true;
  2273. }
  2274. else
  2275. {
  2276. alert("해당 데이터에 대한 이미지가 없습니다.");
  2277. // setupChart("PageView");
  2278. // body.disabled = true;
  2279. return false;
  2280. }
  2281. }
  2282. function appendEMRChart()
  2283. {
  2284. var i, j;
  2285. var count = 0;
  2286. var emrTotalPath;
  2287. var emrPagePath;
  2288. var emrPageTotal;
  2289. var temp_path;
  2290. var temp_page;
  2291. var temp_page_lut;
  2292. var countform = 0;
  2293. var counttemp = 0;
  2294. temp_path = new Array();
  2295. temp_page = new Array();
  2296. temp_page_lut = new Array();
  2297. if (model.getValue("/root/main/emrpath") != null && model.getValue("/root/main/emrpath") != "")
  2298. {
  2299. emrTotalPath = model.getValue("/root/main/emrpath");
  2300. emrPagePath = emrTotalPath.split(splittxt);
  2301. for (i = 1; i <= emrPagePath.length; i++)
  2302. {
  2303. if (emrPagePath[i - 1].substring(0, 1) == "*")
  2304. {
  2305. for (j = counttemp + 1; j <= g_form_count[countform]; j++)
  2306. {
  2307. temp_path[count + 1] = g_path[j];
  2308. temp_page[count + 1] = g_page[j];
  2309. temp_page_lut[count + 1] = g_page_lut[j];
  2310. count++;
  2311. }
  2312. countform++;
  2313. counttemp = g_form_count[countform - 1];
  2314. // for (j = 1; j < g_path.length; j++)
  2315. // {
  2316. // temp_path[count] = g_path[j];
  2317. // temp_page[count] = g_page[j];
  2318. // temp_page_lut[count] = g_page_lut[j];
  2319. // count = count + 1;
  2320. // }
  2321. }
  2322. else
  2323. {
  2324. temp_path[count + 1] = emrPagePath[i - 1];
  2325. temp_page[count + 1] = 1;
  2326. temp_page_lut[count + 1] = 1;
  2327. count++;
  2328. }
  2329. }
  2330. g_path = temp_path;
  2331. g_page = temp_page;
  2332. g_page_lut = temp_page_lut;
  2333. }
  2334. return count;
  2335. }
  2336. function getXPathChart(page, value)
  2337. {
  2338. return "/root/main/charts[" + page + "]" + ((value == null) ? "" : "/" + value);
  2339. }
  2340. function getSelectPageCount()
  2341. {
  2342. var seletedpage;
  2343. seletedpage = 0;
  2344. for (count = 1; count <= f_View.PageTotal; count++)
  2345. {
  2346. if(f_View.ThumbnailSelect(count) == true)
  2347. {
  2348. seletedpage = seletedpage + 1
  2349. }
  2350. }
  2351. return seletedpage
  2352. }
  2353. function setSelectPage(startPage,endPage)
  2354. {
  2355. var starttemp;
  2356. var endtemp;
  2357. //alert(startPage)
  2358. //alert(endPage)
  2359. if(startPage > endPage )
  2360. {
  2361. starttemp = endPage ;
  2362. endtemp = startPage ;
  2363. startPage = starttemp;
  2364. endPage = endtemp;
  2365. }
  2366. if(endPage > f_View.PageTotal)
  2367. {
  2368. endPage = f_View.PageTotal
  2369. }
  2370. f_View.actionthumbnail = 3;
  2371. for (count = startPage; count <= endPage; count++)
  2372. {
  2373. f_View.ThumbnailSelect(count, true);
  2374. }
  2375. return true
  2376. }
  2377. function printChart(docName)
  2378. {
  2379. var strPage;
  2380. var strPage;
  2381. var strPrintLog;
  2382. var bFirstPage;
  2383. var start = getCurrentDateTime();
  2384. switch(model.getValue("/root/cond/radio"))
  2385. {
  2386. case "PV":
  2387. if(f_view.pageCurrent > 0)
  2388. {
  2389. strPath = g_path[pageCurrent];
  2390. strPage = g_page[pageCurrent];
  2391. if (objBIP.StartDoc(docName) == false)
  2392. {
  2393. return false;
  2394. }
  2395. if (objBIP.PrintImage(g_path[pageCurrent], g_page[pageCurrent]) == false)
  2396. {
  2397. return false;
  2398. }
  2399. else
  2400. {
  2401. //사본발급시
  2402. if (docName=="SMMRC03000")
  2403. {
  2404. objBIP.FontFaceName = "HY울릉도M"
  2405. objBIP.FontSize = 12
  2406. objBIP.FontBold = true
  2407. objBIP.PrintText(360, objBIP.PaperHeight - 10,"이 서식은 사본입니다(원본 대조필)");
  2408. }
  2409. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2410. }
  2411. if (objBIP.EndDoc() == false)
  2412. {
  2413. return false;
  2414. }
  2415. // 출력 통보
  2416. model.setAttribute("sCMR_Param", printLog(pageCurrent));
  2417. }
  2418. else
  2419. {
  2420. alert("출력할 페이지가 없습니다.");
  2421. return false;
  2422. }
  2423. break;
  2424. case "TV":
  2425. var seletedpage;
  2426. /*
  2427. for (count = 1; count <= f_View.PageTotal; count++)
  2428. {
  2429. if(f_View.ThumbnailSelect(count) == true)
  2430. {
  2431. seletedpage = seletedpage + 1
  2432. }
  2433. }
  2434. */
  2435. seletedpage = getSelectPageCount()
  2436. if(seletedpage == 0)
  2437. {
  2438. f_print.DocumentBegin(count+"_"+"document");
  2439. bFirstPage = true;
  2440. strPrintLog = "";
  2441. for(i = 1; i <= f_View.PageTotal; i++)
  2442. {
  2443. if(f_view.ThumbnailSelect(i) == false)
  2444. {
  2445. f_print.PageBegin();
  2446. //2013/03/07 이미지 프린트 샘플
  2447. //f_Print.PrintImage(f_View.PageFilePath(i), f_View.PageFilePage(i) + 1, 0, 0, f_Print.PrintableWidth, f_Print.PrintableHeight, friendlyPrinterLib.FP_PI.FP_PI_SMART, friendlyPrinterLib.FP_HA.FP_HA_CENTER, friendlyPrinterLib.FP_VA.FP_VA_TOP, friendlyPrinterLib.FP_ROP.FP_ROP_SRCAND)
  2448. //2013/03/07
  2449. f_print.PrintImage(f_View.PageFilePath(i), f_View.PageFilePage(i) + 1, 0, 0, f_print.PrintableWidth, f_print.PrintableHeight, 5,1,1,12); // 제일 뒤쪽 네개 인자값이 이미지 확대 축소 결정(0부터 시작) 원본대로라면 (2,1,1,12)
  2450. if (docName=="SMMRC03000")
  2451. {
  2452. f_print.FontFaceName = "HY울릉도M"
  2453. f_print.FontSize = 12
  2454. f_print.FontBold = true
  2455. //f_print.PrintText(360, f_print.PaperHeight - 20,f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",0,0xff0000,0xff0000);
  2456. f_print.PrintText(0, 0,f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",0,0xff0000,0xff0000);
  2457. }
  2458. f_print.PageEnd();
  2459. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2460. }
  2461. strPrintLog += printLog(i);
  2462. }
  2463. f_print.DocumentEnd();
  2464. model.setAttribute("sCMR_Param", strPrintLog);
  2465. break;
  2466. }
  2467. else
  2468. {
  2469. f_print.DocumentBegin(count+"_"+"document");
  2470. bFirstPage = true;
  2471. strPrintLog = "";
  2472. for(i = 1; i <= f_View.PageTotal; i++)
  2473. {
  2474. if(f_View.ThumbnailSelect(i) == true)
  2475. {
  2476. f_print.PageBegin();
  2477. //페이지모드로 변경
  2478. f_preview.pageremove(0,0);
  2479. f_preview.viewmode = 2;
  2480. f_preview.pageappend(f_View.PageFilePath(i),f_View.PageFilePage(i) + 1,f_View.PageFilePage(i) + 1);
  2481. f_preview.pagecurrent = i;
  2482. if(f_preview.pagewidth > f_preview.pageheight)
  2483. {
  2484. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2485. {
  2486. f_preview.actionthumbnail = 2;
  2487. TvTurnSelect("left");
  2488. }
  2489. }
  2490. f_print.PrintImage(f_View.PageFilePath(i),f_View.PageFilePage(i) + 1, 0, 0, f_print.PrintableWidth, f_print.PrintableHeight, 5,1,1,12);
  2491. if (docName=="SMMRC03000")
  2492. {
  2493. f_print.FontFaceName = "HY울릉도M"
  2494. f_print.FontSize = 12
  2495. f_print.FontBold = true
  2496. f_print.PrintText(360, f_print.PrintableHeight - f_print.PrintTextHeight("이 서식은 사본입니다(원본 대조필)", 0),f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2497. //f_print.PrintText(0, 0 ,f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2498. }
  2499. f_print.PageEnd();
  2500. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2501. if(f_preview.pagewidth > f_preview.pageheight)
  2502. {
  2503. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2504. {
  2505. f_preview.actionthumbnail = 2;
  2506. TvTurnSelect("right");
  2507. }
  2508. }
  2509. }
  2510. strPrintLog += printLog(i);
  2511. }
  2512. f_print.DocumentEnd();
  2513. //model.setAttribute("sCMR_Param", strPrintLog);
  2514. break;
  2515. }
  2516. case "ChartView":
  2517. alert("'연속보기' 에서는 출력할 수 없습니다.");
  2518. return false;
  2519. break;
  2520. }
  2521. return true;
  2522. }
  2523. //사본출력시 타는 로직
  2524. function printChart(docName, msg)
  2525. {
  2526. var strPage;
  2527. var strPrintLog;
  2528. var bFirstPage;
  2529. var selCount;
  2530. var start = getCurrentDateTime();
  2531. switch(model.getValue("/root/cond/radio"))
  2532. {
  2533. case "PageView","PV":
  2534. var pageCurrent = parseInt(model.getValue("/root/main/chartinfo/pagecurrent"));
  2535. if(pageCurrent > 0)
  2536. {
  2537. strPath = g_path[pageCurrent];
  2538. strPage = g_page[pageCurrent];
  2539. f_print.DocumentBegin(docName);
  2540. f_print.PageBegin();
  2541. f_preview.pageremove(0,0);
  2542. f_preview.viewmode = 2;
  2543. f_preview.pageappend(f_View.PageFilePath(pageCurrent),f_View.PageFilePage(pageCurrent) + 1 ,f_View.PageFilePage(pageCurrent) + 1 );
  2544. f_preview.pagecurrent = pageCurrent;
  2545. if(f_preview.pagewidth > f_preview.pageheight)
  2546. {
  2547. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2548. {
  2549. f_preview.actionthumbnail = 2;
  2550. TvTurnSelect("left");
  2551. }
  2552. }
  2553. f_print.PrintImage(f_View.PageFilePath(pageCurrent),f_View.PageFilePage(pageCurrent) + 1, 0, 0, f_print.PrintableWidth, f_print.PrintableHeight, 5,1,1,12);
  2554. //사본발급시
  2555. if (docName=="SMMRC03000")
  2556. {
  2557. f_print.FontFaceName = "HY울릉도M"
  2558. f_print.FontSize = 12
  2559. f_print.FontBold = true
  2560. f_print.PrintText(360, f_print.PrintableHeight - f_print.PrintTextHeight("이 서식은 사본입니다(원본 대조필)", 0),f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2561. //f_print.PrintText(0, 0 ,f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2562. }
  2563. //사본발급 출력서식의 하단에 사본발급용도(목적) 출력요청(2010-04-05 박종훈)
  2564. //[요청번호 : 11336, TaskNo : 43930, 우선순위 : SY]
  2565. //사본발급시(발급용도)
  2566. if (msg != null || msg != "")
  2567. {
  2568. f_print.FontFaceName = "HY울릉도M"
  2569. f_print.FontSize = 12
  2570. f_print.FontBold = true
  2571. f_print.PrintText(25, f_print.PrintableHeight - 20,f_print.PrintableWidth,f_print.PrintableHeight,msg,2048,0xff0000,0xff0000);
  2572. //f_print.PrintText(0, 0 ,f_print.PrintableWidth,f_print.PrintableHeight,msg,2048,0xff0000,0xff0000);
  2573. }
  2574. f_print.PageEnd();
  2575. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2576. if(f_preview.pagewidth > f_preview.pageheight)
  2577. {
  2578. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2579. {
  2580. f_preview.actionthumbnail = 2;
  2581. TvTurnSelect("right");
  2582. }
  2583. }
  2584. f_print.DocumentEnd();
  2585. // 출력 통보
  2586. model.setAttribute("sCMR_Param", printLog(pageCurrent));
  2587. }
  2588. else
  2589. {
  2590. alert("출력할 페이지가 없습니다.");
  2591. return false;
  2592. }
  2593. break;
  2594. case "ThumbView","TV":
  2595. selCount = getSelectPageCount()
  2596. //alert("selCount " + selCount)
  2597. var trans;
  2598. var fso = new ActiveXObject("Scripting.FileSystemObject");
  2599. if( fso.FolderExists("C:\\LC_Log") == false)
  2600. {
  2601. fso.CreateFolder("C:\\LC_Log");
  2602. }
  2603. var today = new Date( );
  2604. var a = fso.CreateTextFile("C:\\LC_Log\\" + today.getYear( ) + today.getMonth( ) + today.getDate( ) + today.getMinutes( ) + today.getSeconds( ) + ".log", true, true) ;
  2605. if(selCount == 0) //썸네일 선택 안하고 출력버튼 눌렀을시
  2606. {
  2607. trans = "\n f_print.DocumentBegin: " ;
  2608. f_print.DocumentBegin(docName);
  2609. bFirstPage = true;
  2610. strPrintLog = "";
  2611. for(i = 1; i <= f_View.PageTotal; i++)
  2612. {
  2613. trans = trans + "\n f_print.PageBegin: " + i + " page";
  2614. f_print.PageBegin();
  2615. f_preview.pageremove(0,0);
  2616. f_preview.viewmode = 2;
  2617. f_preview.pageappend(f_View.PageFilePath(i), f_View.PageFilePage(i) + 1,f_View.PageFilePage(i) + 1);
  2618. f_preview.pagecurrent = i;
  2619. if(f_preview.pagewidth > f_preview.pageheight)
  2620. {
  2621. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2622. {
  2623. f_preview.actionthumbnail = 2;
  2624. TvTurnSelect("left");
  2625. }
  2626. }
  2627. trans = trans + "\n f_print.PrintImage: ";
  2628. trans = trans + "\n f_View.PageFilePath(i): " + f_View.PageFilePath(i);
  2629. trans = trans + "\n f_View.PageFilePage(i) + 1: " + f_View.PageFilePage(i) + 1;
  2630. f_print.PrintImage(f_View.PageFilePath(i),f_View.PageFilePage(i) + 1, 0, 0, f_print.PrintableWidth, f_print.PrintableHeight, 5,1,1,12);
  2631. //사본발급시
  2632. if (docName=="SMMRC03000")
  2633. {
  2634. f_print.FontFaceName = "HY울릉도M"
  2635. f_print.FontSize = 12
  2636. f_print.FontBold = true
  2637. f_print.PrintText(360, f_print.PrintableHeight - f_print.PrintTextHeight("이 서식은 사본입니다(원본 대조필)", 0),f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2638. //f_print.PrintText(0, 0 ,f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2639. }
  2640. //사본발급 출력서식의 하단에 사본발급용도(목적) 출력요청(2010-04-05 박종훈)
  2641. //[요청번호 : 11336, TaskNo : 43930, 우선순위 : SY]
  2642. //사본발급시(발급용도)
  2643. if (msg != null || msg != "")
  2644. {
  2645. f_print.FontFaceName = "HY울릉도M"
  2646. f_print.FontSize = 12
  2647. f_print.FontBold = true
  2648. f_print.PrintText(25, f_print.PrintableHeight - 10,f_print.PrintableWidth,f_print.PrintableHeight,msg,2048,0xff0000,0xff0000);
  2649. //f_print.PrintText(0, 0 ,f_print.PrintableWidth,f_print.PrintableHeight,msg,2048,0xff0000,0xff0000);
  2650. }
  2651. trans = trans + "\n f_print.PageEnd(): ";
  2652. f_print.PageEnd();
  2653. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2654. if(f_preview.pagewidth > f_preview.pageheight)
  2655. {
  2656. if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2657. {
  2658. f_preview.actionthumbnail = 2;
  2659. TvTurnSelect("right");
  2660. }
  2661. }
  2662. strPrintLog += printLog(i);
  2663. }
  2664. trans = trans + "\n f_print.DocumentEnd(): ";
  2665. f_print.DocumentEnd();
  2666. a.WriteLine(trans);
  2667. a.Close();
  2668. fso = null;
  2669. today = null;
  2670. trans = null;
  2671. //alert(model.getValue("/root/main/printcount") )
  2672. model.setAttribute("sCMR_Param", strPrintLog);
  2673. break;
  2674. }
  2675. else //썸네일에서 이미지 선택했을시에
  2676. {
  2677. trans = "\n f_print.DocumentBegin: " ;
  2678. f_print.DocumentBegin(docName);
  2679. bFirstPage = true;
  2680. strPrintLog = "";
  2681. for(i = 1; i <= f_View.PageTotal; i++)
  2682. {
  2683. if(f_View.ThumbnailSelect(i) == true)
  2684. {
  2685. trans = trans + "\n f_print.PageBegin: " + i + " page";
  2686. f_print.PageBegin();
  2687. f_preview.pageremove(0,0);
  2688. f_preview.viewmode = 2;
  2689. f_preview.pageappend(f_View.PageFilePath(i),f_View.PageFilePage(i) + 1,f_View.PageFilePage(i) + 1);
  2690. f_preview.pagecurrent = i;
  2691. if(f_preview.pagewidth > f_preview.pageheight)
  2692. {
  2693. // if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2694. // {
  2695. // f_preview.actionthumbnail = 2;
  2696. //
  2697. // TvTurnSelect("left");
  2698. // }
  2699. f_preview.actionthumbnail = 2;
  2700. TvTurnSelect("left");
  2701. }
  2702. trans = trans + "\n f_print.PrintImage: " ;
  2703. trans = trans + "\n f_View.PageFilePath(i): " + f_View.PageFilePath(i);
  2704. trans = trans + "\n f_View.PageFilePage(i) + 1: " + f_View.PageFilePage(i) + 1;
  2705. f_print.PrintImage(f_View.PageFilePath(i),f_View.PageFilePage(i) + 1, 0, 0, f_print.PrintableWidth, f_print.PrintableHeight, 5,1,1,12);
  2706. //model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2707. //사본발급시
  2708. if (docName=="SMMRC03000")
  2709. {
  2710. f_print.FontFaceName = "HY울릉도M"
  2711. f_print.FontSize = 12
  2712. f_print.FontBold = true
  2713. f_print.PrintText(360, f_print.PrintableHeight - f_print.PrintTextHeight("이 서식은 사본입니다(원본 대조필)", 0),f_print.PrintableWidth,f_print.PrintableHeight,"이 서식은 사본입니다(원본 대조필)",2048,0xff0000,0xff0000);
  2714. }
  2715. //사본발급 출력서식의 하단에 사본발급용도(목적) 출력요청(2010-04-05 박종훈)
  2716. //[요청번호 : 11336, TaskNo : 43930, 우선순위 : SY]
  2717. //사본발급시(발급용도)
  2718. if (msg != null || msg != "")
  2719. {
  2720. f_print.FontFaceName = "HY울릉도M"
  2721. f_print.FontSize = 12
  2722. f_print.FontBold = true
  2723. f_print.PrintText(25, f_print.PrintableHeight - f_print.PrintTextHeight("이 서식은 사본입니다(원본 대조필)", 0),f_print.PrintableWidth,f_print.PrintableHeight,msg,2048,0xff0000,0xff0000);
  2724. }
  2725. trans = trans + "\n f_print.PageEnd(): ";
  2726. f_print.PageEnd();
  2727. model.setValue("/root/main/printcount", parseInt(model.getValue("/root/main/printcount")) + 1 );
  2728. if(f_preview.pagewidth > f_preview.pageheight)
  2729. {
  2730. // if(f_View.PageFilePath(i).substr(0,3) != "utf")
  2731. // {
  2732. // f_preview.actionthumbnail = 2;
  2733. //
  2734. // TvTurnSelect("right");
  2735. // }
  2736. f_preview.actionthumbnail = 2;
  2737. TvTurnSelect("right");
  2738. }
  2739. strPrintLog += printLog(i);
  2740. }
  2741. }
  2742. trans = trans + "\n f_print.DocumentEnd(): ";
  2743. f_print.DocumentEnd();
  2744. a.WriteLine(trans);
  2745. a.Close();
  2746. fso = null;
  2747. today = null;
  2748. trans = null;
  2749. //model.setAttribute("sCMR_Param", strPrintLog);
  2750. break;
  2751. }
  2752. case "ChartView","CV":
  2753. alert("'연속보기' 에서는 출력할 수 없습니다.");
  2754. return false;
  2755. break;
  2756. }
  2757. return true;
  2758. }
  2759. function printCountClear()
  2760. {
  2761. model.setValue("/root/main/printcount", 0) ;
  2762. model.refresh();
  2763. }
  2764. function getPrintCount()
  2765. {
  2766. model.refresh();
  2767. return model.getValue("/root/main/printcount") ;
  2768. }
  2769. function printLog(page)
  2770. {
  2771. //alert("SSMRC03130-printLog");
  2772. page = g_page_lut[page];
  2773. return model.getValue(getXPathChart(page, "chrtpage")) + "|" +
  2774. model.getValue(getXPathChart(page, "ordno")) + "|" +
  2775. model.getValue(getXPathChart(page, "pageno")) + "|" +
  2776. model.getValue(getXPathChart(page, "docucd")) + "|" +
  2777. model.getValue(getXPathChart(page, "orddeptcd")) + "|" +
  2778. model.getValue(getXPathChart(page, "ptdt")) + "|" +
  2779. model.getValue(getXPathChart(page, "usercd")) + "|" +
  2780. model.getValue(getXPathChart(page, "indd")) + "|" +
  2781. model.getValue(getXPathChart(page, "outdd")) + "|" +
  2782. model.getValue(getXPathChart(page, "remtip")) + "|" +
  2783. model.getValue(getXPathChart(page, "remtport"));
  2784. }
  2785. function TvTurn(Mode)
  2786. {
  2787. switch(Mode)
  2788. {
  2789. case "left":
  2790. f_preview.actionthumbnail = 12;
  2791. break;
  2792. case "right":
  2793. f_preview.actionthumbnail = 11;
  2794. break;
  2795. }
  2796. TVSelect("none")
  2797. }
  2798. function TvTurnSelect(Mode)
  2799. {
  2800. switch(Mode)
  2801. {
  2802. case "left":
  2803. f_preview.actionthumbnail = 12;
  2804. break;
  2805. case "right":
  2806. f_preview.actionthumbnail = 11;
  2807. break;
  2808. }
  2809. }
  2810. function searchChart(param)
  2811. {
  2812. var count;
  2813. var r, re;
  2814. r = ",";
  2815. re = "','";
  2816. resetData_Mode();
  2817. // 전송할 데이터를 만든다.
  2818. var destNode = instance1.selectSingleNode("/root/_send/data1");
  2819. model.copyNode(destNode, param);
  2820. //2013/03/05 Start 전자동의서 관련 소스 추가
  2821. if(model.getValue("/root/_send/data1/pid")==null || model.getValue("/root/_send/data1/pid")==""){
  2822. model.makeValue("/root/_send/data1/pid", "");
  2823. model.refresh();
  2824. }
  2825. // 전송
  2826. submit("TRMPL08101");
  2827. count = 1;
  2828. if (model.getValue("/root/main/charts[" + count + "]/chrtpage") == null || model.getValue("/root/main/charts[" + count + "]/chrtpage") == "")
  2829. {
  2830. alert("해당 데이터가 없습니다.");
  2831. }
  2832. // 보여줄 페이지 수를 센다.
  2833. while(model.getValue("/root/main/charts[" + count + "]/chrtpage") != null && model.getValue("/root/main/charts[" + count + "]/chrtpage") != "")
  2834. {
  2835. count++;
  2836. }
  2837. model.makeNode("/root/_send/data1/pagetot");
  2838. model.setValue("/root/_send/data1/pagetot", count - 1);
  2839. model.setValue("/root/main/chartinfo/pagetotal", model.getValue("/root/_send/data1/pagetot"));
  2840. model.setValue("/root/main/chartinfo/filetotal", model.getValue("/root/_send/data1/pagetot"));
  2841. g_form_count[0] = model.getValue("/root/main/chartinfo/filetotal");
  2842. // 만들었던 데이터 삭제
  2843. model.resetInstanceNode("/root/_send");
  2844. // 페이지 정보를 조정한다.
  2845. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartInfo/pagetotal") != "0" ? "1" : "0");
  2846. model.refresh();
  2847. }
  2848. function setCopy(getValue)
  2849. {
  2850. //alert("SSMRC03130-setCopy");
  2851. var setValue = "";
  2852. var tempValue = "";
  2853. var count;
  2854. var valuecount = 0;
  2855. var tempcount = 1;
  2856. var emrcount = 0;
  2857. if (getValue == true)
  2858. {
  2859. switch(model.getValue("/root/cond/radio"))
  2860. {
  2861. case "PV":
  2862. //현재 페이지 정보 가져오기
  2863. //alert("출력은1 '여러페이지보기' 에서만 가능합니다.");
  2864. //return setValue;
  2865. //break;
  2866. if(f_View.pagecurrent > 0)
  2867. {
  2868. if(f_View.PageHiddenText(f_View.pagecurrent) == "" || f_View.PageHiddenText(f_View.pagecurrent) == null)
  2869. {
  2870. setValue = "I" + "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/ordno") +
  2871. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/docucd") +
  2872. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/pagecnt") +
  2873. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/pageno") +
  2874. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/indd") +
  2875. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/docunm") +
  2876. "▦" + "[" + model.getValue("/root/main/charts[" + pageCurrent + "]/chrtpage") + "]" ;
  2877. }
  2878. else
  2879. {
  2880. //setValue = "E" + "▦" + objThumbView.ThumbUserText(pageCurrent) + "▦" + g_page[pageCurrent - 1];
  2881. //setValue = f_View.PageHiddenText(f_View.pagecurrent) ;
  2882. for (emrcount = count; emrcount <= f_View.PageTotal; emrcount++)
  2883. {
  2884. if (g_path[count] != g_path[emrcount])
  2885. {
  2886. break;
  2887. }
  2888. }
  2889. //setValue = setValue + "E" + "▦" + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "|";
  2890. setValue = setValue + f_View.PageHiddenText(f_View.pagecurrent) + "▦" + g_page[emrcount - 1] + "▩";
  2891. }
  2892. return setValue;
  2893. }
  2894. break;
  2895. case "TV":
  2896. var seletedpage;
  2897. for (count = 1; count <= f_View.PageTotal; count++)
  2898. {
  2899. if(f_View.ThumbnailSelect(count) == true)
  2900. {
  2901. seletedpage = seletedpage + 1
  2902. }
  2903. }
  2904. if(seletedpage == 0)
  2905. {
  2906. for (count = 1; count <= f_View.PageTotal; count++)
  2907. {
  2908. if(f_View.PageHiddenText(count) == "" || f_View.PageHiddenText(count) == null)
  2909. {
  2910. //arrValue[valuecount] = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd");
  2911. //valuecount = valuecount + 1;
  2912. if (tempValue != "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt"))
  2913. {
  2914. setValue = setValue + "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  2915. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  2916. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  2917. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  2918. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  2919. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  2920. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" +
  2921. "|";
  2922. tempValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  2923. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  2924. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  2925. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  2926. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  2927. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm")
  2928. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]";
  2929. }
  2930. }
  2931. else
  2932. {
  2933. //arrvalue[valuecount] = "e" + "▦" + f_View.PageHiddenText(count);
  2934. //valuecount = valuecount + 1;
  2935. for (emrcount = count; emrcount <= f_View.PageTotal; emrcount++)
  2936. {
  2937. if (g_path[count] != g_path[emrcount])
  2938. {
  2939. break;
  2940. }
  2941. }
  2942. //setValue = setValue + "E" + "▦" + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "|";
  2943. setValue = setValue + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "▩";
  2944. }
  2945. if(f_View.PageHiddenText(count) == "" || f_View.PageHiddenText(count) == null)
  2946. {
  2947. tempcount = tempcount + 1;
  2948. }
  2949. }
  2950. setValue = setValue.substr(0, setValue.length - 1);
  2951. //alert(setValue);
  2952. return setValue;
  2953. break;
  2954. }
  2955. else
  2956. {
  2957. var prehidden ;
  2958. for (count = 1; count <= f_View.PageTotal; count++)
  2959. {
  2960. if (f_View.ThumbnailSelect(count) == true)
  2961. {
  2962. if(f_View.PageHiddenText(count) == "" || f_View.PageHiddenText(count) == null)
  2963. {
  2964. if (tempValue != "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt"))
  2965. {
  2966. setValue = setValue + "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  2967. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  2968. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  2969. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  2970. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  2971. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm")+
  2972. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" +
  2973. "|";
  2974. tempValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  2975. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  2976. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  2977. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  2978. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  2979. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  2980. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]";
  2981. }
  2982. }
  2983. else
  2984. {
  2985. //arrvalue[valuecount] = "e" + "▦" + f_View.PageHiddenText(count);
  2986. //valuecount = valuecount + 1;
  2987. for (emrcount = count; emrcount <= f_View.PageTotal; emrcount++)
  2988. {
  2989. if (g_path[count] != g_path[emrcount])
  2990. {
  2991. break;
  2992. }
  2993. }
  2994. if(f_View.PageHiddenText(count) == prehidden){
  2995. }
  2996. else{
  2997. setValue = setValue + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "▩";
  2998. }
  2999. prehidden = f_View.PageHiddenText(count)
  3000. }
  3001. }
  3002. if(f_View.PageHiddenText(count) == "" || f_View.PageHiddenText(count) == null)
  3003. {
  3004. tempcount = tempcount + 1;
  3005. }
  3006. }
  3007. //마지막 글자 빼지 말고 2012-06-07 유희갑[김진환대리 요청]
  3008. //setValue = setValue.substr(0, setValue.length - 1);
  3009. //alert(setValue);
  3010. return setValue;
  3011. break;
  3012. }
  3013. case "CV":
  3014. alert("출력은 '여러페이지보기' 에서만 가능합니다.");
  3015. return setValue;
  3016. break;
  3017. }
  3018. }
  3019. else
  3020. {
  3021. return setValue;
  3022. }
  3023. }
  3024. function SetMarkPage(getValue)
  3025. {
  3026. var setValue = "";
  3027. var tempValue = "";
  3028. var count;
  3029. var valuecount = 0;
  3030. var tempcount = 1;
  3031. var emrcount = 0;
  3032. var emrflag = "";
  3033. switch(getValue)
  3034. {
  3035. case "PV":
  3036. //현재 페이지 정보 가져오기
  3037. var pageCurrent = parseInt(model.getValue("/root/main/chartinfo/pagecurrent"));
  3038. if(pageCurrent > 0)
  3039. {
  3040. //if (model.getValue("/root/main/charts[" + pageCurrent + "]/ordno")!= "" || model.getValue("/root/main/charts[" + pageCurrent-1 + "]/ordno")!= null)
  3041. //C:\C.... C:\D...
  3042. if(g_path[pageCurrent].substring(4, 3) != "C")
  3043. {
  3044. setValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3045. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  3046. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  3047. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  3048. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  3049. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  3050. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]";
  3051. }
  3052. else
  3053. {
  3054. setValue = f_View.PageHiddenText(pageCurrent);
  3055. }
  3056. return setValue;
  3057. }
  3058. break;
  3059. case "TV":
  3060. var seletedpage;
  3061. for (count = 1; count <= f_View.PageTotal; count++)
  3062. {
  3063. if(f_View.ThumbnailSelect(count) == true)
  3064. {
  3065. seletedpage = seletedpage + 1
  3066. }
  3067. }
  3068. if(seletedpage == 0)
  3069. {
  3070. for (count = 1; count <= f_View.PageTotal; count++)
  3071. {
  3072. emrflag = f_View.PageHiddenText(count).split("▦")[0];
  3073. if(emrflag == "I")
  3074. {
  3075. if (tempValue != "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3076. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  3077. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  3078. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  3079. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  3080. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  3081. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" )
  3082. {
  3083. setValue = setValue + "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3084. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  3085. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  3086. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  3087. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  3088. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  3089. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" +
  3090. "|";
  3091. tempValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3092. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") +
  3093. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt" ) +
  3094. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") +
  3095. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  3096. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm") +
  3097. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" ;
  3098. }
  3099. }
  3100. else
  3101. {
  3102. //arrvalue[valuecount] = "e" + "▦" + objthumbview.thumbusertext(count);
  3103. //valuecount = valuecount + 1;
  3104. for (emrcount = count; emrcount <= objThumbView.TotalThumbnail; emrcount++)
  3105. {
  3106. if (g_path[count] != g_path[emrcount])
  3107. {
  3108. break;
  3109. }
  3110. }
  3111. //setValue = setValue + "E" + "▦" + objThumbView.ThumbUserText(count) + "▦" + g_page[emrcount - 1] + "|";
  3112. setValue = setValue + objThumbView.ThumbUserText(count) + "▦" + g_page[emrcount - 1] + "|";
  3113. }
  3114. }
  3115. setValue = setValue.substr(0, setValue.length - 1);
  3116. //alert(setValue);
  3117. return setValue;
  3118. break;
  3119. }
  3120. else
  3121. {
  3122. for (count = 1; count <= f_View.PageTotal; count++)
  3123. {
  3124. if (f_View.ThumbnailSelect(count) == true)
  3125. {
  3126. //var aaa = model.getValue("/root/main/charts[" + tempcount + "]/ordno");
  3127. //alert("tempcount : " + tempcount + " if : " + aaa);
  3128. var pageno = opener.model.getValue("/root/tmpinicert/iniinfo[" + tempcount + "]/pageno");
  3129. var orddd = opener.model.getValue("/root/tmpinicert/iniinfo[" + tempcount + "]/orddd");
  3130. var formnm = opener.model.getValue("/root/tmpinicert/iniinfo[" + tempcount + "]/formnm");
  3131. //alert("bbb : " + bbb);
  3132. var formcd = opener.model.getValue("/root/tmpinicert/iniinfo[" + tempcount + "]/formcd");
  3133. //alert("ccc : " + ccc);
  3134. //alert("tempValue : " + tempValue);
  3135. emrflag = f_View.PageHiddenText(count).split("▦")[0];
  3136. if(emrflag == "I") {
  3137. //if (tempValue != "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") + " " + model.getValue("/root/main/charts[" + tempcount + "]/docunm")) {
  3138. if (tempValue != "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + formcd + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") + "▦" + pageno + "▦" + orddd + " " + formnm) {
  3139. //setValue = setValue + "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") + " " + model.getValue("/root/main/charts[" + tempcount + "]/docunm") + "|";
  3140. //tempValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docucd") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt" ) +"▦" + model.getValue("/root/main/charts[" + tempcount + "]/pageno") + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") + " " + model.getValue("/root/main/charts[" + tempcount + "]/docunm") ;
  3141. setValue = setValue + "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3142. "▦" + formcd +
  3143. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt") +
  3144. "▦" + pageno +
  3145. "▦" + orddd +
  3146. "▦" + formnm +
  3147. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" +
  3148. "|";
  3149. tempValue = "I" + "▦" + model.getValue("/root/main/charts[" + tempcount + "]/ordno") +
  3150. "▦" + formcd +
  3151. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/pagecnt" ) +
  3152. "▦" + pageno +
  3153. "▦" + orddd +
  3154. "▦" + formnm +
  3155. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" ;
  3156. }
  3157. }
  3158. else
  3159. {
  3160. for (emrcount = count; emrcount <= objThumbView.TotalThumbnail; emrcount++)
  3161. {
  3162. if (g_path[count] != g_path[emrcount])
  3163. {
  3164. break;
  3165. }
  3166. }
  3167. setValue = setValue + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "|";
  3168. }
  3169. }
  3170. }
  3171. setValue = setValue.substr(0, setValue.length - 1);
  3172. //alert(setValue);
  3173. return setValue;
  3174. break;
  3175. }
  3176. case "CV":
  3177. //현재 페이지 정보 가져오기
  3178. var pageCurrent = parseInt(model.getValue("/root/main/chartinfo/pagecurrent"));
  3179. if(pageCurrent > 0)
  3180. {
  3181. //if (model.getValue("/root/main/charts[" + pageCurrent + "]/ordno")!= "" || model.getValue("/root/main/charts[" + pageCurrent-1 + "]/ordno")!= null)
  3182. //C:\C.... C:\D...
  3183. if(g_path[pageCurrent].substring(4, 3) != "C")
  3184. {
  3185. setValue = "I" + "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/ordno") +
  3186. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/docucd") +
  3187. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/pagecnt") +
  3188. "▦" + model.getValue("/root/main/charts[" + pageCurrent + "]/pageno") +
  3189. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/indd") +
  3190. "▦" + model.getValue("/root/main/charts[" + tempcount + "]/docunm")+
  3191. "▦" + "[" + model.getValue("/root/main/charts[" + tempcount + "]/chrtpage") + "]" ;
  3192. }
  3193. else
  3194. {
  3195. //setValue = "E" + "▦" + f_View.PageHiddenText(pageCurrent) + "▦" + g_page[pageCurrent - 1];
  3196. setValue = f_View.PageHiddenText(pageCurrent);
  3197. }
  3198. return setValue;
  3199. }
  3200. break;
  3201. }
  3202. }
  3203. function searchChart_EMR( param, mode )
  3204. {
  3205. var count;
  3206. var r, re;
  3207. r = ",";
  3208. re = "','";
  3209. var treatno;
  3210. var docucd;
  3211. var temptreatno;
  3212. var tempdocucd;
  3213. var count;
  3214. var countmain;
  3215. var counthidden;
  3216. var itemindxseq = "";
  3217. //2013/08/20 Start
  3218. var temporderseqno;
  3219. //2013/08/20 End
  3220. if( mode == null)
  3221. {
  3222. resetData();
  3223. }
  3224. // 전송할 데이터를 만든다.
  3225. var destNode = instance1.selectSingleNode("/root/_send/data1");
  3226. model.copyNode(destNode, param);
  3227. //2013/03/12 Start 사본창에서 이 함수를 호출시 스크린 아이디를 셋팅(크로스 조회하면서 칠곡에서 미분류 기록이 보이는 현상 수정)
  3228. if(opener.javascript.getScreenID()=="SMMRC03000"){
  3229. model.makeValue("/root/_send/screenid", "SMMRC03000");
  3230. itemindxseq = null;
  3231. }else{
  3232. if (!(typeof(destNode.itemindxseq) == "undefined" || typeof(destNode.itemindxseq) == "unknown")) {
  3233. itemindxseq = destNode.itemindxseq.nodeValue;
  3234. }
  3235. }
  3236. //2013/03/12 End
  3237. //2013/08/20 Start
  3238. temporderseqno=destNode.cmc_orderseqno.nodeValue;
  3239. cmc_orderseqno = temporderseqno.split(",");
  3240. //2013/08/20 End
  3241. if ( itemindxseq == null || itemindxseq == "" ){
  3242. temptreatno = destNode.treatno.nodeValue;
  3243. tempdocucd = destNode.docucd.nodeValue;
  3244. treatno = temptreatno.split(",");
  3245. docucd = tempdocucd.split(",");
  3246. model.makeNode("/root/hidden/tempcharts");
  3247. counthidden = 1;
  3248. for (count = 1; count < treatno.length + 1; count++)
  3249. {
  3250. destNode.cmc_orderseqno.nodeValue = cmc_orderseqno[count - 1];
  3251. destNode.treatno.nodeValue = treatno[count - 1];
  3252. destNode.docucd.nodeValue = docucd[count - 1];
  3253. submit("TRMPL08101");
  3254. g_form_count[count - 1] = counthidden - 1;
  3255. countmain = 1;
  3256. while(model.getValue("/root/main/charts[" + countmain + "]/chrtpage") != null && model.getValue("/root/main/charts[" + countmain + "]/chrtpage") != "")
  3257. {
  3258. model.makeNode("/root/hidden/tempcharts[" + counthidden + "]");
  3259. model.copyNode("/root/hidden/tempcharts[" + counthidden + "]", "/root/main/charts[" + countmain + "]");
  3260. countmain++;
  3261. counthidden++;
  3262. }
  3263. g_form_count[count - 1] = counthidden - 1;
  3264. model.refresh();
  3265. }
  3266. }else{
  3267. temptreatno = destNode.treatno.nodeValue;
  3268. tempdocucd = destNode.docucd.nodeValue;
  3269. treatno = temptreatno;
  3270. docucd = tempdocucd;
  3271. model.makeNode("/root/hidden/tempcharts");
  3272. counthidden = 1;
  3273. destNode.cmc_orderseqno.nodeValue = cmc_orderseqno[count - 1];
  3274. submit("TRMPL08101");
  3275. g_form_count[count - 1] = counthidden - 1;
  3276. countmain = 1;
  3277. while(model.getValue("/root/main/charts[" + countmain + "]/chrtpage") != null && model.getValue("/root/main/charts[" + countmain + "]/chrtpage") != "")
  3278. {
  3279. model.makeNode("/root/hidden/tempcharts[" + counthidden + "]");
  3280. model.copyNode("/root/hidden/tempcharts[" + counthidden + "]", "/root/main/charts[" + countmain + "]");
  3281. countmain++;
  3282. counthidden++;
  3283. }
  3284. g_form_count[count - 1] = counthidden - 1;
  3285. model.refresh();
  3286. }
  3287. model.removeNode("/root/main/charts");
  3288. model.makeNode("/root/main/charts");
  3289. for (count = 1; count <= counthidden; count++)
  3290. {
  3291. model.makeNode("root/main/charts[" + count + "]");
  3292. model.copyNode("root/main/charts[" + count + "]", "root/hidden/tempcharts[" + count + "]");
  3293. }
  3294. count = 1;
  3295. // 보여줄 페이지 수를 센다.
  3296. while(model.getValue("/root/main/charts[" + count + "]/chrtpage") != null && model.getValue("/root/main/charts[" + count + "]/chrtpage") != "")
  3297. {
  3298. count++;
  3299. }
  3300. model.makeNode("/root/_send/data1/pagetot");
  3301. model.setValue("/root/_send/data1/pagetot", count - 1);
  3302. model.setValue("/root/main/chartinfo/filetotal", model.getValue("/root/_send/data1/pagetot"));
  3303. model.setValue("/root/main/chartinfo/pagetotal", model.getValue("/root/_send/data1/pagetot"));
  3304. // 만들었던 데이터 삭제
  3305. model.resetInstanceNode("/root/_send");
  3306. // 페이지 정보를 조정한다.
  3307. model.setValue("/root/main/chartinfo/pagecurrent", model.getValue("/root/main/chartInfo/pagetotal") != "0" ? "1" : "0");
  3308. model.refresh();
  3309. }
  3310. function fGetSelectChrtName(OldDeliverect)
  3311. {
  3312. try
  3313. {
  3314. // 2009-10-31 이경희
  3315. // TASK번호: 38014 요청번호: 8986
  3316. // 사본발급 상세신청내역 기능
  3317. // 신규로 추가되는 기록지만 추가하기로 함.
  3318. // 기존에 추가했다가 선택 해제하는 기록지의 경우는 처리하지 않기로함.(사용자가 텍스트에서 삭제하기로 결정)
  3319. // 여러페이지보기에서만 동작하도록 한다.
  3320. var ViewMode = model.getValue("/root/hidden/currentViewMode");
  3321. if(ViewMode != "ThumbView" && ViewMode != "TV")
  3322. {
  3323. messageBox("상세내역추가는 여러페이지보기모드일때에만 추가할 수", "I010");
  3324. return;
  3325. }
  3326. var OldDeliverectArr = OldDeliverect;
  3327. model.removeNodeset("/root/selectrec");
  3328. model.makeValue("/root/selectrec", OldDeliverectArr);
  3329. /*
  3330. if(OldDeliverect != "")
  3331. {
  3332. OldDeliverectArr = OldDeliverect.split("\n");
  3333. }
  3334. */
  3335. var filenameArr = new Array();//"";
  3336. var filenamestr = "";
  3337. var pageTotal = parseInt(model.getValue("/root/main/chartinfo/pagetotal"));
  3338. var match = false; // true: 텍스트 비교 일치(이미 동일한 기록지가 들어있음)
  3339. var selcnt;
  3340. selcnt = getSelectPageCount();
  3341. if(selcnt > 0)
  3342. {
  3343. for(var idx = 0; idx < g_recnameArr.length; idx++)
  3344. {
  3345. filenameArr[idx] = "";
  3346. }
  3347. for (i = 0; i < f_View.PageTotal; i++)
  3348. {
  3349. if (f_View.ThumbnailSelect(i + 1) == true)
  3350. {
  3351. if(g_recnameArr[i] != "" && g_recnameArr[i] != null)
  3352. {
  3353. if(OldDeliverectArr.length > 0)
  3354. {
  3355. var tmpstr = g_recnameArr[i].setReplaceWord("\n", "");
  3356. //if(isSearchString(OldDeliverectArr, tmpstr) == true)
  3357. if(model.getXPathValue("contains(/root/selectrec, '" + tmpstr + "')") == "true")
  3358. {
  3359. match = true;
  3360. continue;
  3361. }
  3362. else
  3363. {
  3364. match = false;
  3365. }
  3366. if(match == false)
  3367. {
  3368. filenameArr[i] = g_recnameArr[i];
  3369. if(isSearchString(filenameArr[i], "\n") == true)
  3370. {
  3371. filenameArr[i] = filenameArr[i].setReplaceWord("\n", "");
  3372. }
  3373. }
  3374. }
  3375. else
  3376. {
  3377. filenameArr[i] = g_recnameArr[i];
  3378. if(isSearchString(filenameArr[i], "\n") == true)
  3379. {
  3380. filenameArr[i] = filenameArr[i].setReplaceWord("\n", "");
  3381. }
  3382. }
  3383. }
  3384. }
  3385. }
  3386. var totalfilenameArr = "";
  3387. var tmpStr = "";
  3388. for(var fn = 0; fn < filenameArr.length; fn++)
  3389. {
  3390. if(filenameArr[fn] != "" && filenameArr[fn] != null)
  3391. {
  3392. tmpStr = filenameArr[fn] + "\n";
  3393. totalfilenameArr += tmpStr;
  3394. }
  3395. }
  3396. return totalfilenameArr;
  3397. }
  3398. else
  3399. return "";
  3400. }
  3401. catch(e)
  3402. {
  3403. }
  3404. }
  3405. function CDPath(path, pid ,instcd )
  3406. {
  3407. var fso = new ActiveXObject("Scripting.FileSystemObject");
  3408. var pathRemote;
  3409. var pathLocal;
  3410. var folder;
  3411. folder = "SCH_" + pid
  3412. if (fso.FolderExists(path ) == false)
  3413. {
  3414. fso.CreateFolder(path );
  3415. }
  3416. if (fso.FolderExists(path + "\\" + folder) == false)
  3417. {
  3418. fso.CreateFolder(path + "\\" + folder);
  3419. }
  3420. if (fso.FolderExists(path + "\\" + folder + "\\Image") == false)
  3421. {
  3422. fso.CreateFolder(path + "\\" + folder + "\\Image" );
  3423. }
  3424. if (fso.FolderExists(path + "\\" + folder + "\\Image\\" + pid) == false)
  3425. {
  3426. fso.CreateFolder(path + "\\" + folder + "\\Image\\" + pid );
  3427. }
  3428. /* 서버에서 파일을 다운로드 하는 방식
  3429. 김진환 대리 요청으로 로컬에서 카피하는 방식으로 전환하기 위해 닫음
  3430. model.setvalue("/root/send/ltp/instcd", instcd);
  3431. model.setvalue("/root/send/ltp/active", "Y");
  3432. submit("TRMPL03307");
  3433. var ltpServer;
  3434. var ltpUser;
  3435. var ltpPort;
  3436. ltpServer = model.getvalue("/root/main/ltpindexinfo/ltpindexserver");
  3437. ltpUser = model.getvalue("/root/main/ltpindexinfo/ltpindexuser");
  3438. ltpPort = model.getvalue("/root/main/ltpindexinfo/ltpindexport");
  3439. pathRemote = "Z:\\CDViewer\\ChartViewer.exe|Z:\\CDViewer\\friendlyImage.dll"
  3440. pathLocal = path + "\\" + folder + "\\ChartViewer.exe|" + path + "\\" + folder + "\\friendlyImage.dll"
  3441. getFiles(ltpServer, ltpPort, ltpUser, "", pathRemote, pathLocal);
  3442. */
  3443. pathRemote = "C:\\himed\\components\\LCTech\\HtmlConvert\\ChartViewer.exe"
  3444. pathLocal = path + "\\" + folder + "\\ChartViewer.exe"
  3445. fso.CopyFile(pathRemote,pathLocal)
  3446. pathRemote = "C:\\himed\\components\\LCTech\\HtmlConvert\\friendlyImage_CD.dll"
  3447. pathLocal = path + "\\" + folder + "\\friendlyImage.dll"
  3448. fso.CopyFile(pathRemote,pathLocal)
  3449. }
  3450. function CDImgCopy(path, pid, seq, indexcode, flag, startPageno, pageno)
  3451. {
  3452. var folder;
  3453. var count;
  3454. var copypath;
  3455. var filename;
  3456. var fso = new ActiveXObject("Scripting.FileSystemObject");
  3457. folder = "SCH_" + pid
  3458. if (fso.FolderExists(path + "\\" + folder + "\\Image\\" + pid + "\\" + seq) == false)
  3459. {
  3460. fso.CreateFolder(path + "\\" + folder + "\\Image\\" + pid + "\\" + seq );
  3461. }
  3462. copypath = path + "\\" + folder + "\\Image\\" + pid + "\\" + seq + "\\" + indexcode
  3463. if (fso.FolderExists(copypath) == false)
  3464. {
  3465. fso.CreateFolder(copypath);
  3466. }
  3467. if (f_View.Pagetotal > 0)
  3468. {
  3469. // for(count = 1; count <= f_View.Pagetotal; count++)
  3470. for(count = startPageno; count < (Number(startPageno) + Number(pageno)); count++)
  3471. {
  3472. f_View.PageCurrent = count;
  3473. //extension = fso.GetExtensionName(f_View.PageFilePath(count));
  3474. extension = "tif";
  3475. if ( flag == "S"){
  3476. if(f_View.ThumbnailSelect(count) == true)
  3477. {
  3478. filename = "00000" + count;
  3479. filename = filename.substr(filename.length - 5 ,5);
  3480. //f_View.PageFilePath(count)
  3481. f_View.FileSaveCreate(copypath + "\\" + filename + "." + extension, -1);
  3482. }
  3483. }
  3484. else{
  3485. filename = "00000" + count;
  3486. filename = filename.substr(filename.length - 5 ,5);
  3487. f_View.FileSaveCreate(copypath + "\\" + filename + "." + extension, -1);
  3488. }
  3489. }
  3490. }
  3491. }
  3492. function fGetAllChrtInfo()
  3493. {
  3494. var setValue = "";
  3495. var count;
  3496. var emrcount = 0;
  3497. var prehidden = "";
  3498. try
  3499. {
  3500. setValue = "formcd▦signno▦formnm▦chosflag▦pid▦ptnm▦deptengabbr▦erdt▦rgstno▦disporddd▦drid▦roomcd▦disporddd▦ordtype▦e▦totalpage▩";
  3501. for (count = 1; count <= f_View.PageTotal; count++)
  3502. {
  3503. for (emrcount = count; emrcount <= f_View.PageTotal; emrcount++)
  3504. {
  3505. if (g_path[count] != g_path[emrcount])
  3506. {
  3507. break;
  3508. }
  3509. }
  3510. //setValue = setValue + "E" + "▦" + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "|";
  3511. if(f_View.PageHiddenText(count) != prehidden){
  3512. setValue = setValue + f_View.PageHiddenText(count) + "▦" + g_page[emrcount - 1] + "▩";
  3513. }
  3514. prehidden = f_View.PageHiddenText(count);
  3515. }
  3516. //setValue = setValue.substr(0, setValue.length - 1);
  3517. //alert(setValue);
  3518. return setValue;
  3519. }
  3520. catch(e)
  3521. {
  3522. }
  3523. }
  3524. function downloadFile()
  3525. {
  3526. var strpath = "";
  3527. var strfilename = "";
  3528. var fso;
  3529. var count;
  3530. if (getSelectPageCount() == 0)
  3531. {
  3532. return;
  3533. }
  3534. fso = new ActiveXObject("Scripting.FileSystemObject");
  3535. strpath = window.folderDialog("Choose a folder to download Image");
  3536. if (strpath == "")
  3537. {
  3538. return;
  3539. }
  3540. for (count = 1; count <= f_View.PageTotal; count++)
  3541. {
  3542. extension = fso.GetExtensionName(f_View.PageFilePath(count));
  3543. extension = extension.toUpperCase();
  3544. //alert(extension);
  3545. if (f_View.ThumbnailSelect(count) == true && extension == 'JPG')
  3546. {
  3547. strfilename = f_View.PageText(count);
  3548. strfilename = strfilename.setReplaceWord("/", "_")
  3549. strfilename = strfilename.setReplaceWord("[", "")
  3550. strfilename = strfilename.setReplaceWord("]", "_")
  3551. fso.CopyFile(f_View.PageFilePath(count), strpath + "/" + strfilename + "_" + count + ".jpg", true);
  3552. }
  3553. }
  3554. messageBox("다운로드 완료.","I999");
  3555. }
  3556. function reloadChart(param)
  3557. {
  3558. var ViewMode;
  3559. // var destNode = instance1.selectSingleNode("/root/hidden/temp");
  3560. // model.copyNode(destNode, param);
  3561. // searchChart("/root/hidden/temp");
  3562. searchChart(param);
  3563. if (downloadChart() == true)
  3564. {
  3565. ViewMode = model.getValue("/root/hidden/currentViewMode");
  3566. if (ViewMode == null || ViewMode == "")
  3567. {
  3568. setupChartPopup("CV");
  3569. }
  3570. else
  3571. {
  3572. setupChartPopup(ViewMode);
  3573. }
  3574. }
  3575. }
  3576. function rdoIndxClickEvent(){
  3577. if(downloadChart() == true){
  3578. setupChartPopup("ChartView");
  3579. }
  3580. }