SMMRI03000.xjs 284 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  3. * System Name : DBS
  4. * Job Name :
  5. * File Name : SMMRI03000.xjs
  6. * Creator :
  7. * Make Date : 2014-09-
  8. *
  9. * Description :
  10. *---------------------------------------------------------------------------------------
  11. * Modify Date Modifier Modify Description
  12. *---------------------------------------------------------------------------------------
  13. * 2014-09- DBS Converting Program(TF->XP)
  14. *
  15. *---------------------------------------------------------------------------------------
  16. ****************************************************************************************/
  17. /*
  18. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  19. 통합기록조회 ( SMMRI03000_통합기록조회2.xrw - JScript )
  20. - Version :
  21. 1) : Ver.1.00.01
  22. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  23. */
  24. var arrbtn = new Array("btn_all", "btn_prog", "btn_op", "btn_test", "btn_prcp", "btn_nurc", "btn_etc", "btn_img");
  25. var grdObj = "";
  26. // var ref = "/root/main/recsrch/reclist";
  27. // var stRef = "/root/tmp/reclist";
  28. var paramdefault = "";
  29. var isFirst = "Y";
  30. var gImgFile = "";
  31. var oprnerId = "";
  32. var srchorgcnt = 0;
  33. var srchcnt = 0;
  34. var srchendyn = "N";
  35. var privatetxt = "";
  36. var gtmptreatno = "";
  37. var gtmpiformcd = "";
  38. var gemrpath = "";
  39. var gemrorddate = "";
  40. var gemrformnm = "";
  41. var gemrformcd = "";
  42. var gemrdeptnm = "";
  43. var gemrdeptcd = "";
  44. var gemrpage = "";
  45. var gemrhiddenmsg = "";
  46. var multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  47. var nodeposcnt = 0; // 1->0
  48. var prevflag = "N";
  49. var gv_ImgeSavePath = "C:\\BCP_OCR_Image\\";
  50. /**
  51. * @desc : 화면초기화
  52. * @id :
  53. * @event : xforms-ready
  54. * @return : void
  55. * @authur : 박종훈(튜닝)
  56. */
  57. function fInitalize()
  58. {
  59. //grdf_setToolTipBind(grup_left.switch1.grd.grd_pathist);
  60. var chkPidRtn = "";
  61. var userid = sysf_getUserInfo("userid");
  62. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  63. grup_right.iviewerIemr.setChartViewerSize(parseInt(grup_right.iviewerIemr.position.width), parseInt(grup_right.iviewerIemr.position.height));
  64. grdf_initGrid(grup_left.switch1.rec.grd_reclist);
  65. /*
  66. fGetUserEnvOcsOrdAnsw -> ds_envinfo 로 사용
  67. ds_envinit_wheel 017
  68. ds_envinit_option 020
  69. ds_envinit_defdept 021
  70. ds_envinit_tab 022
  71. ds_envinit_viewmode 023
  72. ds_envinit_paging 036
  73. ds_envinit_titledeluseyn 044
  74. ds_envinit_titledelyn 040
  75. */
  76. ds_envinfo.copyData(emr_getOrderBaseInfo("envinfo"));
  77. // lf_getHardCDList 로 변환 해야 함. 임시로 사용!
  78. /*
  79. lf_gethardcdArrayList(new Array(
  80. "resnchk|5585",
  81. "recformuseyn|5628",
  82. "copybtnchk|5635",
  83. "fstsrcformcd|5976",
  84. "icdrsrcformcd|5977",
  85. "bmkuseyn|9909",
  86. "prntuseyn|9920",
  87. "prntdept|9921",
  88. "prntuserid|9929",
  89. "dutplcecd|5501",
  90. "prntuser|5565",
  91. "indx|5591",
  92. "keyuseyn|9923",
  93. "keydept|9924",
  94. "keyjob|9927",
  95. "keypos|9929",
  96. "crossusr|5611"
  97. ),
  98. new Array(
  99. "ds_resnchk",
  100. "ds_recformuseyn",
  101. "ds_copybtnchk",
  102. "ds_fstsrcformcd",
  103. "ds_icdrsrcformcd",
  104. "ds_bmkuseyn",
  105. "ds_prntuseyn",
  106. "ds_prntdept",
  107. "ds_prntuserid",
  108. "ds_dutplcecd",
  109. "ds_prntuser",
  110. "ds_indx",
  111. "ds_keyuseyn",
  112. "ds_keydept",
  113. "ds_keyjob",
  114. "ds_keypos",
  115. "ds_crossusr"
  116. )
  117. );
  118. */
  119. //2012/12/04 Start 비뇨기과, 정신과, 산부인과, 알레르기 감염내과 사유입력 skip여부 체크
  120. lf_getHardCDList("N", 5585, null, ds_resnchk);
  121. lf_getHardCDList("N", 5628, null, ds_recformuseyn); // 통합기록 기록지별 조회 사용여부
  122. // 2014.04.21 통합기록 COPY 버튼 사용여부--------------------------------------------------------------
  123. lf_getHardCDList("N", 5635, null, ds_copybtnchk);
  124. //20140820 이윤주수정
  125. lf_getHardCDList("N", 5976, null, ds_fstsrcformcd); //최초작성일자 보이는 기록지
  126. lf_getHardCDList("N", 5977, null, ds_icdrsrcformcd); //헤더정보를 기록시점의 icdr를 읽어서 표시
  127. var jobkind = sysf_getUserInfo("jobkindcd").substring(0, 2);
  128. if( jobkind == "03" && ds_copybtnchk.getColumn(0, "hardcd") == "Y" && openerid == "SMARC02500" ){
  129. btn_txtcopy.visible = true;
  130. }else{
  131. btn_txtcopy.visible = false;
  132. }
  133. //---------------------------------------------------------------------------------------------------------------
  134. var recdate = utlf_getCurrentDate().toDate("YYYYMMDD");
  135. var dutplcecd = sysf_getUserInfo("dutplcecd");
  136. ds_init_recformdata.setColumn(0, "fromdd", recdate.getAddDate(-6, "M").getDateFormat("YYYYMMDD"));
  137. ds_init_recformdata.setColumn(0, "todd", utlf_getCurrentDate());
  138. // sysf_trace(ds_recformuseyn.getColumn(0, "hardcd"));
  139. // 심사, 의무기록만 일단 OPEN 2014.02.19
  140. if( ds_recformuseyn.getColumn(0, "hardcd") == "Y" && ( dutplcecd == "4070700000" || dutplcecd == "4072000000" || dutplcecd == "3230000000" || dutplcecd == "2240400000") ){
  141. grup_left.rdo_option.visible = false;
  142. grup_left.rdo_option1.visible = true;
  143. }else{
  144. grup_left.rdo_option.visible = true;
  145. grup_left.rdo_option1.visible = false;
  146. }
  147. //2012/12/04 End
  148. //20100406-kys-careplan, 환자교육 화면연동버튼추가
  149. if(sysf_getUserInfo("dutplceinstcd") == "012"){
  150. grup_left.btn_careplan.visible = true;
  151. grup_left.btn_patedu.visible = true;
  152. }else{
  153. grup_left.btn_careplan.visible = false;
  154. grup_left.btn_patedu.visible = false;
  155. }
  156. //2009-10-27 오후 4:37:13 강지훈 추가 : 북마크 사용여부를 기관별로 관리한다.
  157. lf_getHardCDList("N", 9909, null, ds_bmkuseyn);
  158. var bmkuseyn = ds_bmkuseyn.getColumn(0, "hardcd");
  159. sysf_trace("***** bmkuseyn : " + bmkuseyn );
  160. if (bmkuseyn == "Y")
  161. {
  162. btn_setbmk.visible = true;
  163. grup_left.btn_mark.visible = true;
  164. }
  165. else{
  166. btn_setbmk.visible = false;
  167. grup_left.btn_mark.visible = false;
  168. }
  169. var sUserDeptcd = sysf_getUserInfo("dutplcecd");
  170. var sJobkind = sysf_getUserInfo("jobkindcd").substring(0, 2);
  171. //2010-02-05 오전 9:17:04 강지훈 추가 : 요청번호 10612, Task 40877 병원,과별로 출력부서를 제한한다.
  172. lf_getHardCDList("N", 9920, null, "ds_prntuseyn");
  173. lf_getHardCDList("N", 9921, null, "ds_prntdept");
  174. lf_getHardCDList("N", 9929, null, "ds_prntuserid");
  175. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  176. lf_getHardCDList("N", 5501, null, "ds_dutplcecd");
  177. // KNUH_20101207_박성호_end
  178. var prntuseyn = ds_prntuseyn.getColumn(0, "hardcd");
  179. if (prntuseyn == "Y")
  180. {
  181. if( !utlf_isNull(ds_prntdept.lookup("hardcd", sUserDeptcd, "hardcd")) ){
  182. btn_prnt.visible = true;
  183. txt_private.visible = true;
  184. }
  185. else{
  186. btn_prnt.visible = false;
  187. txt_private.visible = false;
  188. }
  189. if( !utlf_isNull(ds_prntuserid.lookup("hardcd", sysf_getUserInfo("userid"), "hardcd")) ){
  190. btn_prnt.visible = true;
  191. txt_private.visible = true;
  192. }
  193. }
  194. else{
  195. btn_prnt.visible = true;
  196. txt_private.visible = true;
  197. }
  198. // KNUH_20101207_박성호_start_의무기록 부서코드 가져오기
  199. //if(sJobkind == "03" || sUserDeptcd == "3230000000")
  200. if(sJobkind == "03" || !utlf_isNull(ds_dutplcecd.lookup("hardcd", sUserDeptcd, "hardcd")))
  201. // KNUH_20101207_박성호_end
  202. {
  203. btn_copyprt.visible = true;
  204. }
  205. ds_init_env.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  206. //20130107 이윤주추가(병원크로스 라디오버튼)
  207. rdo_instcd.visible = false;
  208. var jobkindcd = sysf_getUserInfo("jobkindcd");
  209. var dutplcecd = sysf_getUserInfo("dutplcecd");
  210. sysf_trace("***** jobkindcd : " + jobkindcd + " dutplcecd : " + dutplcecd + " *****");
  211. //열람신청화면에서 분기하지 않을때(20130107)
  212. if (openerid != "SMMRI08000") {
  213. if (jobkindcd.substr(0,2) == "03") {
  214. if (jobkindcd != "1800" && jobkindcd != "1799"){
  215. rdo_instcd.visible = true;
  216. }
  217. }
  218. else{
  219. if (dutplcecd == "4072000000" || dutplcecd == "4070700000") {
  220. rdo_instcd.visible = true;
  221. }
  222. }
  223. // 특정사용자(EMR001)도 가능토록
  224. lf_getHardCDList("N", 5611, null, "ds_crossusr");
  225. var userid = sysf_getUserInfo("userid");
  226. var crossusrCnt = ds_crossusr.getCaseCount("hardcd=='"+ userid +"'"); //Cross 조회 가능자
  227. if (crossusrCnt > 0) {
  228. rdo_instcd.visible = true;
  229. }
  230. }
  231. //개인정보 보호 체크박스 disable
  232. if (openerid == "SMMRI08000") {
  233. // 개인정보보호 check를 위한 정보 2013.07.09 CYW
  234. lf_getHardCDList("N", 5565, null, "ds_prntuser");
  235. lf_getHardCDList("N", 5591, null, "ds_indx");
  236. var cnt = ds_prntuser.rowcount;
  237. for( var i = 0 ; i < cnt ; i++){
  238. if( userid == ds_prntuser.getColumn(i, "hardcd") ){
  239. ds_init_privatetxt.setColumn(0, "privatetxt", ds_prntuser.getColumn(i, "hardcdnm"));
  240. }
  241. }
  242. frmf_setParameter("SMMRI03000_privateflag", ds_init_privatetxt.getColumn(0, "privatetxt") );
  243. privatetxt = ds_init_privatetxt.getColumn(0, "privatetxt");
  244. if( "1" == ds_init_privatetxt.getColumn(0, "privatetxt") ){
  245. txt_private.visible = false;
  246. }
  247. if( "2" == ds_init_privatetxt.getColumn(0, "privatetxt") || "3" == ds_init_privatetxt.getColumn(0, "privatetxt") ){
  248. txt_private.text = "【 개인정보보호출력 】";
  249. }
  250. }
  251. if (frmf_isPopup())
  252. {
  253. //alert(opener.javascript.getScreenID());
  254. var parampid = opener.frmf_getParameter("SMMRI00400_param_pid");
  255. var paramchosflag = opener.frmf_getParameter("SMMRI00400_param_chosflag");
  256. var authflag = opener.frmf_getParameter("SMMRI00400_param_authflag");
  257. if (authflag == "N")
  258. {
  259. grup_left.roundrect2.ipt_pid.enable = false;
  260. grup_left.roundrect2.ipt_hngnm.enable = false;
  261. grup_left.roundrect2.btn_search.enable = false;
  262. grup_left.roundrect2.ipt_rrgstno1.enable = false;
  263. grup_left.roundrect2.ipt_rrgstno2.enable = false;
  264. button14.enable = false;
  265. btn_prnt.enable = false;
  266. }
  267. else
  268. {
  269. grup_left.roundrect2.ipt_pid.enable = true;
  270. grup_left.roundrect2.ipt_hngnm.enable = true;
  271. grup_left.roundrect2.btn_search.enable = true;
  272. grup_left.roundrect2.ipt_rrgstno1.enable = true;
  273. grup_left.roundrect2.ipt_rrgstno2.enable = true;
  274. button14.enable = true;
  275. btn_prnt.enable = true;
  276. }
  277. }
  278. //2010-02-17 오전 10:08:30 이환석 추가 : 통합기록조회가 열릴 때 제외 부서 이외 Keyin 제한.
  279. lf_getHardCDList("N", 9923, null, "ds_keyuseyn");
  280. lf_getHardCDList("N", 9924, null, "ds_keydept");
  281. //2010-02-22 성규훈 추가 : 통합기록조회시 제외 직종 이외 keyin 제한
  282. lf_getHardCDList("N", 9927, null, "ds_keyjob");
  283. //2010-03-06 성규훈 추가 : 통합기록조회시 제외 직책 이외 keyin 제한
  284. lf_getHardCDList("N", 9929, null, "ds_keypos");
  285. var keyuseyn = ds_keyuseyn.getColumn(0, "hardcd");
  286. var sJobkindkey = sysf_getUserInfo("jobkindcd").substring(1, 4);
  287. var sJobposkey = sysf_getUserInfo("jobposcd");
  288. if(keyuseyn == "Y") {
  289. if(!utlf_isNull(ds_keydept.lookup("hardcd", sUserDeptcd, "hardcd")) || ( !utlf_isNull(ds_keyjob.lookup("hardcd", sJobkindkey, "hardcd")) && !utlf_isNull(ds_keypos.lookup("hardcd", sJobposkey, "hardcd")) )){
  290. grup_left.roundrect2.ipt_pid.enable = true;
  291. grup_left.roundrect2.ipt_hngnm.enable = true;
  292. grup_left.roundrect2.btn_search.enable = true;
  293. grup_left.roundrect2.ipt_rrgstno1.enable = true;
  294. grup_left.roundrect2.ipt_rrgstno2.enable = true;
  295. grup_left.roundrect2.cmb_dept.enable = true;
  296. } else {
  297. grup_left.roundrect2.ipt_pid.enable = false;
  298. grup_left.roundrect2.ipt_hngnm.enable = false;
  299. grup_left.roundrect2.btn_search.enable = false;
  300. grup_left.roundrect2.ipt_rrgstno1.enable = false;
  301. grup_left.roundrect2.ipt_rrgstno2.enable = false;
  302. grup_left.roundrect2.cmb_dept.enable = false;
  303. }
  304. } else {
  305. grup_left.roundrect2.ipt_pid.enable = true;
  306. grup_left.roundrect2.ipt_hngnm.enable = true;
  307. grup_left.roundrect2.btn_search.enable = true;
  308. grup_left.roundrect2.ipt_rrgstno1.enable = true;
  309. grup_left.roundrect2.ipt_rrgstno2.enable = true;
  310. grup_left.roundrect2.cmb_dept.enable = true;
  311. }
  312. sysf_trace("***** parampid : " + parampid + " *****");
  313. if(utlf_isNull(parampid))
  314. {
  315. var pamInfoCvs = sysf_getGlobalVariable("paminfo"); //상단정보가 있을 경우는 검색
  316. var pid = "";
  317. if(!utlf_isNull(pamInfoCvs))
  318. { //cvs가 null이 아닌 경우에만 처리함.
  319. ds_main_result_paminfo.clearData();
  320. dsf_setCSVToDs("ds_main_result_paminfo", pamInfoCvs);
  321. pid = ds_main_result_paminfo.getColumn(0, "pid");
  322. ordtype = ds_main_result_paminfo.getColumn(0, "ioflag");
  323. if ( !utlf_isNull ( pid ) )
  324. {
  325. if(oprnerId == "SPMRC03200")
  326. {
  327. opener.fGetCopyCmpPid(pid);
  328. }
  329. //pid가 넘어올경우 emrbrowser가 떠 있으면 emrbrowser로 pid를 넘기고 (구)통합기록조회는 새로 조회 안함
  330. var emrobj = frmf_findPopup("SMMRB00101");
  331. if(emrobj == null){
  332. grup_left.roundrect2.ipt_pid.value = pid;
  333. chkPidRtn = fPidKeyPress(); //등록번호로 환자 정보조회
  334. }else{
  335. try{
  336. frmf_setParameter("SMMRB00101_param_pid" , pid);
  337. emrobj.fChangeOpenerPid();
  338. frmf_setFocusPop("SMMRB00101");
  339. //통합기록조회 초기화
  340. grup_right.iviewerIemr.cleanViewer();
  341. ds_patinfolist.clearData();
  342. ds_grd_pathist.clearData();
  343. ds_grd_midindx.clearData();
  344. ds_treeview.clearData();
  345. ds_source.clearData();
  346. //ds_send.clearData();
  347. }catch(e){ sysf_catchTrace(e); }
  348. }
  349. }
  350. }
  351. }
  352. else
  353. {
  354. //pid가 넘어올경우 emrbrowser가 떠 있으면 emrbrowser로 pid를 넘기고 (구)통합기록조회는 새로 조회 안함
  355. var emrobj = frmf_findPopup("SMMRB00101");
  356. sysf_trace("emrobj" + emrobj);
  357. if(emrobj == null){
  358. grup_left.roundrect2.ipt_pid.value = parampid;
  359. chkPidRtn = fPidKeyPress(); //등록번호로 환자 정보조회
  360. }
  361. else{
  362. try{
  363. frmf_setParameter("SMMRB00101_param_pid" , parampid);
  364. emrobj.fChangeOpenerPid();
  365. frmf_setFocusPop("SMMRB00101");
  366. //통합기록조회 초기화
  367. grup_right.iviewerIemr.cleanViewer();
  368. ds_patinfolist.clearData();
  369. ds_grd_pathist.clearData();
  370. ds_grd_midindx.clearData();
  371. ds_treeview.clearData();
  372. ds_source.clearData();
  373. //model.removeNode("/root/send");
  374. }catch(e){
  375. sysf_catchTrace(e);
  376. }
  377. }
  378. }
  379. ds_init_etc.setColumn(0, "ioflag", "ALL");
  380. var objColInfo = new Array();
  381. objColInfo.push({col: "trgtno", type:"int", size:256, val:1100});
  382. objColInfo.push({col: "exno", type:"int", size:256, val:1110});
  383. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  384. dsf_createDsRow("ds_reqTRMRI03006", objColInfo);
  385. var oParam = {};
  386. oParam.id = "TRMRI03006";
  387. oParam.service = "recmngtapp.IntegrityRec";
  388. oParam.method = "reqGetPopUpDept";
  389. oParam.inds = "req=" + "ds_reqTRMRI03006";
  390. oParam.outds = "ds_trgtdept" + "=trgtdept" + " ds_exdept" + "=exdept";
  391. oParam.async = false;
  392. //oParam.callback = "cf_TRMRI03006"
  393. tranf_submit(oParam);
  394. //2009-11-17 오후 5:48:29 강지훈 수정 : 휠스크롤 메세지박스 사용여부 개인별 환경설정으로 관리
  395. //fGetUserEnvOcsOrdAnsw(ds_envinit_wheel, "017");
  396. //ds_tmp.setColumn(0, "wheelmsg", ds_envinit_wheel.getColumn(0, "answvalnm"));
  397. ds_tmp.setColumn(0, "wheelmsg", ds_envinfo.lookup("qestcd", "017", "answvalnm"));
  398. //2009-10-20 오후 2:01:30 강지훈 수정
  399. grup_left.switch1.tabindex = 0;
  400. //2010-02-17 오후 4:37:13 박종훈 추가 : 사용자 환경설정을 사용하여 조회조건 셋팅.
  401. // fGetUserEnvOcsOrdAnsw(ds_envinit_option, "020");
  402. // fGetUserEnvOcsOrdAnsw(ds_envinit_defdept, "021");
  403. // fGetUserEnvOcsOrdAnsw(ds_envinit_tab, "022");
  404. // fGetUserEnvOcsOrdAnsw(ds_envinit_viewmode, "023");
  405. //기간검색 유무
  406. // fGetUserEnvOcsOrdAnsw(ds_envinit_paging, "036");
  407. // 통합기록조회 조회조건(타이틀제거 컨트롤 사용여부) 2013.09.06 CYW
  408. // fGetUserEnvOcsOrdAnsw(ds_envinit_titledeluseyn, "044");
  409. if(ds_envinfo.lookup("qestcd", "044", "answcnt") == "002"){ // 컨트롤사용
  410. bool_viewflag.visible = true;
  411. // 통합기록조회 조회조건(타이틀제거 여부) 2013.08.23 CYW
  412. // fGetUserEnvOcsOrdAnsw(ds_envinit_titledelyn, "040");
  413. if(ds_envinfo.lookup("qestcd", "040", "answcnt") == "001"){ // 타이틀보기
  414. bool_viewflag.value = false;
  415. }else{
  416. bool_viewflag.value = true;
  417. }
  418. }else{
  419. bool_viewflag.visible = false;
  420. bool_viewflag.value= false;
  421. }
  422. /*
  423. * 2010.08.24, 주희경 의무기록열람 승인 관련 링크로 기록조회 시 진료과로 조회되고
  424. * 조회 조건을 변경하여 재조회 할 수 없도록 disable 처리
  425. */
  426. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  427. if ( openerid == "SMMRI08000")
  428. {
  429. frmf_setParameter("SMMRI08000_breakyn", "true");
  430. var pid = opener.frmf_getParameter("SMMRI00400_param_pid");
  431. //열람신청번호 연결 이윤주 수정(20120127)
  432. var appno = opener.frmf_getParameter("SMMRI00400_param_appno");
  433. var histno = opener.frmf_getParameter("SMMRI00400_param_histno");
  434. var objColInfo = new Array();
  435. objColInfo.push({col: "appno", type:"string", size:256, val:appno});
  436. objColInfo.push({col: "histno", type:"string", size:256, val:histno});
  437. dsf_createDsRow("ds_init_view", objColInfo);
  438. //진료과별로 조회되도록 셋팅
  439. //ds_envinit_option.setColumn(0, "answcnt", "002");
  440. var fRow = ds_envinfo.findRowExpr("qestcd == '020'");
  441. ds_envinfo.setColumn(fRow, "answcnt", "002");
  442. //조회조건을 변경하여 재조회 하지 못하도록 disable
  443. grup_left.roundrect2.ipt_pid.enable = false; //등록번호
  444. grup_left.roundrect2.ipt_hngnm.enable = false; //성명
  445. grup_left.roundrect2.btn_search.enable = false; //성명 조회버튼
  446. grup_left.roundrect2.ipt_rrgstno1.enable = false; //주민번호1
  447. grup_left.roundrect2.ipt_rrgstno2.enable = false; //주민번호2
  448. grup_left.roundrect2.button5.enable = false; //주민번호 옆 검색 버튼
  449. grup_left.roundrect2.button3.enable = false; //조회버튼
  450. grup_left.rdo_option.enable = false; //수진이력별, 진료과별 라디오 버튼
  451. grup_left.rdo_option1.enable = false; //수진이력별, 진료과별 라디오 버튼
  452. btn_prnt.visible = false; //출력버튼 숨김
  453. btn_copyprt.visible = false; //사본신청버튼 숨김
  454. button14.visible = false; //조회이력버튼 숨김
  455. btn_unprep.visible = false; //미비확인버튼 숨김
  456. txt_private.visible = true;
  457. btn_setbmk.position.left = 1175; //북마크등록 버튼 위치 옮김
  458. }
  459. //////////////////////
  460. var option = ds_envinfo.lookup("qestcd", "020", "answcnt");
  461. if (utlf_isNull(option)) {
  462. option = "001";
  463. }
  464. var viewmode = ds_envinfo.lookup("qestcd", "023", "answcnt");
  465. if (utlf_isNull(viewmode)) {
  466. viewmode = "002";
  467. }
  468. switch(viewmode)
  469. {
  470. case "001" :
  471. grup_right.iviewerIemr.setupChart("TV");
  472. break;
  473. case "002" :
  474. grup_right.iviewerIemr.setupChart("CV");
  475. break;
  476. case "003" :
  477. grup_right.iviewerIemr.setupChart("PV");
  478. break;
  479. }
  480. var tab = ds_envinfo.lookup("qestcd", "022", "answcnt");
  481. if (utlf_isNull(tab)) {
  482. tab = "001";
  483. }
  484. //2014/04/18 환경변수에서 페이징 여부 주석처리 이정택
  485. ds_init_etc.setColumn(0, "pagingyn", "");
  486. ds_init_etc.setColumn(0, "sortkind", "A");
  487. /*
  488. var paging = model.getValue("/root/envinit/paging/answcnt");
  489. if (paging == "001") {
  490. cbx_paging.attribute("visibility") = "visible";
  491. model.setValue("/root/init/pagingyn","Y");
  492. cbx_paging.refresh();
  493. cbx_paging.dispatch("xforms-value-changed");
  494. }
  495. else {
  496. cbx_paging.attribute("visibility") = "hidden";
  497. }
  498. */
  499. //2014/04/18 환경변수에서 페이징 여부 주석처리 이정택
  500. //수진이력, 진료과별, 서식지별(미개발)에 따른 조건 설정
  501. switch(option)
  502. {
  503. case "001" :
  504. ds_init_env.setColumn(0, "option", "H");
  505. grup_left.roundrect2.cmb_dept.enable = true;
  506. fSetGridSize("one");
  507. break;
  508. case "002" :
  509. ds_init_env.setColumn(0, "option", "D");
  510. grup_left.roundrect2.cmb_dept.enable = false;
  511. fSetGridSize("two");
  512. break;
  513. case "003" :
  514. ds_init_env.setColumn(0, "option", "F");
  515. grup_left.roundrect2.cmb_dept.enable = true;
  516. break;
  517. }
  518. sysf_trace("***** chkPidRtn" + chkPidRtn);
  519. if (chkPidRtn)
  520. {
  521. if (option == "001")
  522. {
  523. fGetPatOrddept();
  524. }
  525. sysf_trace(tab);
  526. var e = new ClickEventInfo;
  527. switch(tab)
  528. {
  529. case "001" :
  530. grup_left.btn_all.setSelectStatus(true);
  531. if (option == "001")
  532. {
  533. grup_left.caption2.text = "수진이력";
  534. grup_left.roundrect2.cmb_dept.enable = true;
  535. fSetGridSize("one");
  536. //btn_all.dispatch("DOMActivate");
  537. grup_left.btn_all.onclick.fireEvent(grup_left.btn_all, e);
  538. }
  539. else
  540. {
  541. grup_left.caption2.text = "진료과";
  542. grup_left.roundrect2.cmb_dept.enable = false;
  543. fSetGridSize("two");
  544. ds_init_etc.setColumn(0, "ioflag", "ALL");
  545. }
  546. break;
  547. case "002" :
  548. grup_left.btn_out.setSelectStatus(true);
  549. if (option == "001")
  550. {
  551. grup_left.caption2.text = "수진이력";
  552. grup_left.roundrect2.cmb_dept.enable = true;
  553. fSetGridSize("one");
  554. //btn_out.dispatch("DOMActivate");
  555. grup_left.btn_out.onclick.fireEvent(grup_left.btn_out, e);
  556. }
  557. else
  558. {
  559. grup_left.caption2.text = "진료과";
  560. grup_left.roundrect2.cmb_dept.enable = false;
  561. fSetGridSize("two");
  562. ds_init_etc.setColumn(0, "ioflag", "O");
  563. }
  564. break;
  565. case "003" :
  566. grup_left.btn_in.setSelectStatus(true);
  567. if (option == "001")
  568. {
  569. grup_left.caption2.text = "수진이력";
  570. grup_left.roundrect2.cmb_dept.enable = true;
  571. fSetGridSize("one");
  572. //btn_in.dispatch("DOMActivate");
  573. grup_left.btn_in.onclick.fireEvent(grup_left.btn_in, e);
  574. }
  575. else
  576. {
  577. grup_left.caption2.text = "진료과";
  578. grup_left.roundrect2.cmb_dept.enable = false;
  579. fSetGridSize("two");
  580. ds_init_etc.setColumn(0, "ioflag", "I");
  581. }
  582. break;
  583. case "004" :
  584. grup_left.btn_er.setSelectStatus(true);
  585. if (option == "001")
  586. {
  587. grup_left.caption2.text = "수진이력";
  588. grup_left.roundrect2.cmb_dept.enable = true;
  589. fSetGridSize("one");
  590. //btn_er.dispatch("DOMActivate");
  591. grup_left.btn_er.onclick.fireEvent(grup_left.btn_er, e);
  592. }
  593. else
  594. {
  595. grup_left.caption2.text = "진료과";
  596. grup_left.roundrect2.cmb_dept.enable = false;
  597. fSetGridSize("two");
  598. ds_init_etc.setColumn(0, "ioflag", "E");
  599. }
  600. break;
  601. case "005" :
  602. grup_left.btn_mark.setSelectStatus(true);
  603. //btn_mark.dispatch("DOMActivate");
  604. grup_left.btn_mark.onclick.fireEvent(grup_left.btn_mark, e);
  605. break;
  606. default:
  607. grup_left.btn_all.setSelectStatus(true);
  608. if (option == "001")
  609. {
  610. grup_left.caption2.text = "수진이력";
  611. grup_left.roundrect2.cmb_dept.enable = true;
  612. fSetGridSize("one");
  613. //btn_all.dispatch("DOMActivate");
  614. grup_left.btn_all.onclick.fireEvent(grup_left.btn_all, e);
  615. }
  616. else
  617. {
  618. grup_left.caption2.text = "진료과";
  619. grup_left.roundrect2.cmb_dept.enable = false;
  620. fSetGridSize("two");
  621. ds_init_etc.setColumn(0, "ioflag", "ALL");
  622. }
  623. break;
  624. }
  625. if (option == "002")
  626. {
  627. fGetPatOrddept();
  628. }
  629. }
  630. /* xp code add */
  631. else{
  632. grup_left.btn_all.setSelectStatus(true);
  633. }
  634. /*
  635. * 2010.08.26, 주희경 의무기록열람 승인 관련 링크로 기록조회 시 승인된 진료과만 열람 하도록 hidden 처리
  636. */
  637. if ( openerid == "SMMRI08000")
  638. {
  639. frmf_setParameter("SMMRI08000_breakyn", "false");
  640. var orddeptengabbr = opener.frmf_getParameter("SMMRI00400_param_orddeptengabbr");
  641. var arrOrddeptengabbr = orddeptengabbr.split(",");
  642. var filterstr;
  643. for(i=0; i<arrOrddeptengabbr.length; i++)
  644. {
  645. if( i == 0) filterstr = "deptengabbr != '" + arrOrddeptengabbr[i] +"'";
  646. else filterstr = filterstr + " && deptengabbr != '" + arrOrddeptengabbr[i] +"'";
  647. }
  648. ds_init_cmb_dept.filterstr = filterstr;
  649. grup_left.switch1.grd.datagrid3.setFocus();
  650. ds_init_cmb_dept.rowposition = 0;
  651. // datagrid3.row = firstrow;
  652. // datagrid3.col = datagrid3.colRef("deptengabbr");
  653. fDbclickDept();
  654. }
  655. }
  656. /**
  657. * @desc : 옵션에 따른 그리드 사이즈 조절
  658. * @id :
  659. * @event : DOMActivate
  660. * @return : void
  661. * @authur : 박종훈
  662. */
  663. function fSetGridSize(parm)
  664. {
  665. if (parm == "one")
  666. {
  667. grup_left.switch1.grd.datagrid3.position.width = 0;
  668. grup_left.switch1.grd.grd_pathist.position.left = 0;
  669. grup_left.switch1.grd.grd_pathist.position.width = 338;
  670. }
  671. else
  672. {
  673. grup_left.switch1.grd.datagrid3.position.width = 94;
  674. grup_left.switch1.grd.grd_pathist.position.left = 93;
  675. grup_left.switch1.grd.grd_pathist.position.width = 245;
  676. }
  677. }
  678. /**
  679. * @desc : 환자 수진부서 조회
  680. * @id :
  681. * @event : DOMActivate
  682. * @return : void
  683. * @authur : 박종훈
  684. */
  685. function fGetPatOrddept()
  686. {
  687. sysf_trace("***** fGetPatOrddept *****");
  688. // PID 변경후 조회 클릭시 환자명 안바뀌는 오류 수정. 환자조회 해주기. 2013.06.26
  689. if( chkflag == "true" ){
  690. fPidKeyPress();
  691. chkflag = "false";
  692. }
  693. //2010.03.25 박종훈 추가
  694. if( utlf_isNull(ds_patinfolist.getColumn(0, "pid")) && utlf_isNull(ds_patinfolist.getColumn(0, "hngnm")) )
  695. {
  696. sysf_messageBox("선택된 환자가", "I004");
  697. return;
  698. }
  699. dsf_deleteDs("ds_send");
  700. ds_init_cmb_dept.clearData();
  701. rdo_lindx.setCallEvent("");
  702. ds_init_rdo_lindx.clearData();
  703. var objColInfo = new Array();
  704. objColInfo.push({col: "pid", type:"string", size:256, val:ds_patinfolist.getColumn(0, "pid")});
  705. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  706. dsf_createDsRow("ds_send",objColInfo);
  707. var oParam = {};
  708. oParam.id = "TRMRI03001";
  709. oParam.service = "recmngtapp.IntegrityRec";
  710. oParam.method = "reqGetIndxAndDeptList";
  711. oParam.inds = "req=" + "ds_send";
  712. oParam.outds = "ds_init_cmb_dept" + "=dplist" + " ds_init_rdo_lindx" + "=lrgIndx";
  713. oParam.async = false;
  714. oParam.callback = "cf_TRMRI03001";
  715. tranf_submit(oParam);
  716. }
  717. /**
  718. * @desc : 환자 수진이력 조회
  719. * @id :
  720. * @event : DOMActivate
  721. * @return : void
  722. * @authur : 박종훈(튜닝)
  723. */
  724. function fGetPatOrdHist(ioflag)
  725. {
  726. if( grup_left.switch1.tabindex != 0 ) grup_left.switch1.tabindex = 0; //model.toggle("grd");
  727. //datagrid3.allstyle("data", "background-color") = "#ffffff";
  728. grup_right.iviewerIemr.cleanViewer();
  729. var orddept = ds_init_etc.getColumn(0, "orddept");
  730. var tmpioflag = "" ;
  731. if (utlf_isNull(ioflag))
  732. {
  733. tmpioflag = ds_init_etc.getColumn(0, "ioflag");
  734. }
  735. else
  736. {
  737. ds_init_etc.setColumn(0, "ioflag", ioflag);
  738. tmpioflag = ioflag;
  739. }
  740. ds_init_etc.setColumn(0, "totcnt", "");
  741. //lbl_totcnt.refresh();
  742. dsf_deleteDs("ds_send");
  743. ds_grd_pathist.clearData();
  744. ds_grd_midindx.clearData();
  745. ds_init_accresn.clearData();
  746. ds_init_prtresn.clearData();
  747. ds_init_etc.setColumn(0, "itemindxseq", "");
  748. ds_init_etc.setColumn(0, "midreccnt", "");
  749. ds_init_etc.setColumn(0, "reccurpos", "");
  750. var objColInfo = new Array();
  751. objColInfo.push({col: "pid", type:"string", size:256, val:ds_patinfolist.getColumn(0, "pid")});
  752. objColInfo.push({col: "ioflag", type:"string", size:256, val:tmpioflag});
  753. objColInfo.push({col: "orddeptcd", type:"string", size:256, val:ds_init_etc.getColumn(0, "orddept")});
  754. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")}); //20120628 이윤주수정
  755. dsf_createDsRow("ds_send",objColInfo);
  756. //sysf_trace(ds_send.saveXML());
  757. var oParam = {};
  758. oParam.id = "TRMRI03002";
  759. oParam.service = "recmngtapp.IntegrityRec";
  760. oParam.method = "reqGetPatOrdHist";
  761. oParam.inds = "req=" + "ds_send";
  762. oParam.outds = "ds_grd_pathist" + "=patordhist";
  763. oParam.async = false;
  764. oParam.callback = "cf_TRMRI03002"
  765. tranf_submit(oParam);//submit("TRMRI03002");
  766. //dsf_setDefaultVal(ds_grd_pathist, "all");
  767. ds_grd_pathist.rowposition = -1;
  768. if (ioflag == "I" || ioflag == "E")
  769. {
  770. grup_left.switch1.grd.grd_pathist.setRealColSize(grup_left.switch1.grd.grd_pathist.getBindCellIndex("body", "centcd"), 0);
  771. grup_left.switch1.grd.grd_pathist.scrollbars = "autovert";
  772. }
  773. else
  774. {
  775. grup_left.switch1.grd.grd_pathist.setRealColSize(grup_left.switch1.grd.grd_pathist.getBindCellIndex("body", "centcd"), 45);
  776. grup_left.switch1.grd.grd_pathist.scrollbars = "autoboth";
  777. }
  778. }
  779. function cf_TRMRI03002(sSvcId, nErrorCode, sErrorMsg){
  780. arErrorCode.push(sSvcId, nErrorCode);
  781. sysf_trace("***** cf_TRMRI03002 *****");
  782. }
  783. /**
  784. * @desc : 환자 기록 중분류 조회
  785. * @id :
  786. * @event : ondblclick
  787. * @return : void
  788. * @authur : 박종훈
  789. */
  790. //2012/11/28 Start
  791. var dutplcecd_chk=false;
  792. //2012/11/28 End
  793. function fGetRecMidIndx( grow, e )
  794. {
  795. sysf_trace("***** fGetRecMidIndx *****");
  796. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  797. sysf_trace("***** openerid : " + openerid + " *****");
  798. if (openerid != "SMMRI08000")
  799. {
  800. var objColInfo = new Array();
  801. objColInfo.push({col: "pid", type:"string", size:256, val:ds_patinfolist.getColumn(0, "pid")});
  802. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  803. dsf_createDsRow("ds_send", objColInfo);
  804. objColInfo = new Array();
  805. objColInfo.push({col: "activeyn", type:"string", size:256});
  806. dsf_createDs("ds_reqActiveyn", objColInfo);
  807. var oParam = {};
  808. oParam.id = "TRMRI03007";
  809. oParam.service = "recmngtapp.IntegrityRec";
  810. oParam.method = "reqGetActiveYN";
  811. oParam.inds = "req=" + "ds_send";
  812. oParam.outds = "ds_reqActiveyn" + "=item";
  813. oParam.async = false; //동기
  814. oParam.callback = "cf_TRMRI03007"
  815. tranf_submit(oParam);
  816. var active = ds_reqActiveyn.getColumn(0, "activeyn");
  817. var activeyn = active.substr(0,1);
  818. var activespec = active.substr(1,1000);
  819. var len = active.length;
  820. //sysf_trace( active + " : " + activeyn + " : " + activespec + " : " + len);
  821. //sysf_trace(ds_reqActiveyn.saveXML());
  822. if (activeyn == "N"){
  823. var msg;
  824. if (len == 1) {
  825. msg = "Active 환자가 아닙니다 ";
  826. }
  827. else {
  828. msg = activespec;
  829. }
  830. sysf_messageBox(msg+" 문의:의무기록실(삼덕동:5322,칠곡:2402)","I999");
  831. return;
  832. }
  833. }
  834. //2012/12/04 Start
  835. if(ds_resnchk.getColumn(0, "hardcd")=="Y"){
  836. var chk_node = ds_grd_pathist.getCaseCount("dschdd =='재원중' && wardcd == '" + sysf_getUserInfo("dutplcecd") + "'");
  837. sysf_trace("chk_node cnt : " + chk_node);
  838. if(chk_node > 0){
  839. dutplcecd_chk=true;
  840. }
  841. }
  842. //2012/12/04 End
  843. var row = grow;
  844. if ( grow == null )
  845. row = ds_grd_pathist.rowposition;
  846. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  847. nodeposcnt = 0; // 1->0
  848. prevflag = "N";
  849. var pid = "";
  850. var orddd = "";
  851. var cretno = "";
  852. var orddeptcd = "";
  853. var tabflag = "";
  854. var bfopentest = ""; //2009-10-31 오후 2:39:16 강지훈 추가 : nU 오픈전 검사처방이 있는 수진여부
  855. var emrflag = ds_grd_pathist.getColumn(row, "emrflag");
  856. ds_init_etc.setColumn(0, "itemindxseq", "");
  857. ds_init_etc.setColumn(0, "midreccnt", "");
  858. ds_init_etc.setColumn(0, "reccurpos", "");
  859. ds_init_etc.setColumn(0, "emrflag", emrflag);
  860. if( !utlf_isNull(e) ) //if((grd_pathist.isCell(event.target) && grd_pathist.mouserow >= grd_pathist.fixedrows))
  861. {
  862. sysf_trace("***** fGetRecMidIndx() !utlf_isNull(e) *****");
  863. orddd = ds_grd_pathist.getColumn(row, "orddd");
  864. cretno = ds_grd_pathist.getColumn(row, "cretno");
  865. orddeptcd = ds_grd_pathist.getColumn(row, "orddeptcd");
  866. bfopentest = ds_grd_pathist.getColumn(row, "bfopentest");
  867. tabflag = ds_init_etc.getColumn(0, "tabflag");
  868. //기간검색-20130527 이윤주
  869. //2014/04/18 이정택 수정
  870. var dschdd = ds_grd_pathist.getColumn(row, "dschdd");
  871. var ordtype = ds_grd_pathist.getColumn(row, "ordtype");
  872. if (ordtype == "S" || ordtype == "O") {
  873. dschdd = orddd;
  874. }else{
  875. if (dschdd == "재원중") {
  876. dschdd = utlf_getCurrentDate();
  877. }else{
  878. dschdd = dschdd;
  879. }
  880. }
  881. //2014/04/22 이정택 수정
  882. ds_init_paging.setColumn(0, "fromdd", orddd);
  883. ds_init_paging.setColumn(0, "todd", dschdd);
  884. }
  885. else
  886. {
  887. sysf_trace("***** fGetRecMidIndx() !utlf_isNull(e) else *****");
  888. if (row > -1)
  889. {
  890. sysf_trace("***** fGetRecMidIndx() !utlf_isNull(e) else row > -1 *****");
  891. pid = ds_grd_pathist.getColumn(row, "formrecseq");
  892. orddd = ds_grd_pathist.getColumn(row, "orddd");
  893. cretno = ds_grd_pathist.getColumn(row, "cretno");
  894. orddeptcd = ds_grd_pathist.getColumn(row, "orddeptcd");
  895. bfopentest = ds_grd_pathist.getColumn(row, "bfopentest");
  896. tabflag = ds_init_etc.getColumn(0, "tabflag");
  897. //기간검색-20130527 이윤주
  898. dschdd = ds_grd_pathist.getColumn(row, "dschdd");
  899. ordtype = ds_grd_pathist.getColumn(row, "ordtype");
  900. if (ordtype == "S" || ordtype == "O") {
  901. dschdd = orddd;
  902. }
  903. if (dschdd == "재원중") {
  904. dschdd = sysf_getCurrentDate();
  905. }
  906. ds_init_paging.setColumn(0, "fromdd", orddd );
  907. ds_init_paging.setColumn(0, "todd", "99991231");
  908. }else{
  909. sysf_messageBox("환자의 수진이력을 ", "C002");
  910. return;
  911. }
  912. }
  913. var comporddd = ds_init_accresn.getColumn(0, "orddd");
  914. var compcretno = ds_init_accresn.getColumn(0, "cretno");
  915. if ( utlf_isNull(compcretno))
  916. {
  917. compcretno = "-";
  918. }
  919. var itrgtNodeCnt = ds_trgtdept.getCaseCount("trgtcd == '" + orddeptcd + "'"); //사유대상부서
  920. if (itrgtNodeCnt > 0){ //감염내과, 정신과, 산부인과, 비뇨기과
  921. var sUserDeptcd = sysf_getUserInfo("dutplcecd");
  922. var iexNodeCnt = ds_exdept.getCaseCount("trgtcd = '" + sUserDeptcd + "'"); //사유제외부서
  923. // 2013.10.11 start cyw 센터일경우 해당 하위부서의 기록을 볼때 사유입력하지 않도록--------------
  924. var cntrcnt = 0;
  925. var samechk = 0;
  926. var objColInfo = new Array();
  927. objColInfo.push({col: "instcd", type:"string", size:256, val:sysf_getUserInfo("dutplceinstcd")});
  928. objColInfo.push({col: "userdeptcd", type:"string", size:256, val:sUserDeptcd});
  929. dsf_createDsRow("ds_send_cntrsrch", objColInfo);
  930. bjColInfo = new Array();
  931. objColInfo.push({col: "instcd", type:"string", size:256});
  932. objColInfo.push({col: "subdeptcd", type:"string", size:256});
  933. objColInfo.push({col: "deptcd", type:"string", size:256});
  934. objColInfo.push({col: "deptnm", type:"string", size:256});
  935. dsf_createDs("ds_cntrdept", objColInfo);
  936. var oParam = {};
  937. oParam.id = "TRMRI08114";
  938. oParam.service = "recmngtapp.IntegrityRec";
  939. oParam.method = "reqGetCntrDeptChk";
  940. oParam.inds = "req=" + "ds_send_cntrsrch";
  941. oParam.outds = "ds_cntrdept" + "=cntrdeptlist";
  942. oParam.async = false;
  943. oParam.callback = "cf_TRMRI08114"
  944. tranf_submit(oParam);
  945. if(arErrorCode.pop("TRMRI08114") > -1){
  946. for( var i = 0; i <= ds_cntrdept.rowcount; i ++ ){
  947. if( orddeptcd == ds_cntrdept.getColumn(i, "deptcd") ){
  948. samechk++;
  949. }
  950. }
  951. // temp dataset delete
  952. dsf_deleteDs("ds_send_cntrsrch");
  953. dsf_deleteDs("ds_cntrdept");
  954. }
  955. // 2013.10.11 end-------------------------------------------------------------------------------------------
  956. // 기록조회시, 사유입력하는 경우?
  957. // 1. 사유제외부서가 아닐경우
  958. // 2. 선택한기록부서와 사용자 부서가 같을 경우
  959. // 3, 각각의 진료일자와 원무키가 다를 경우
  960. // 4. 센터부서일 경우 하위부서가 아닐경우
  961. if ( (samechk <=0) && (iexNodeCnt <= 0) && (sUserDeptcd != orddeptcd) && (comporddd != orddd && compcretno != cretno)){ //사용자 근무부서와 환자 수진부서가 틀린경우 사유창 팝업, 근무부서가 의료정보팀일경우 제외
  962. if ( fSetResnSMMRI08000() == true ){//열람승인화면에서 사유입력이 된 제한차트는 fSetResnSMMRI08000()함수에서 사유 자동 셋팅, 2010.09.02 주희경
  963. }else{ //통합기록조회에서 직접 기록을 오픈할때에는 사유 입력
  964. //2012/11/28 Start
  965. if(dutplcecd_chk==false){ //감염내과, 정신과, 산부인과, 비뇨기과 병동 근무자의 경우 사유입력 제외
  966. //2012/11/28 End
  967. //model.resetInstanceNode("/root/init/accresn");
  968. //frmf_setParameter("SPMRI03100_param_nodepath", "/root/init/accresn");
  969. ds_init_accresn.clearData();
  970. frmf_setParameter("SPMRI03100_param_nodepath", ds_init_accresn);
  971. frmf_setParameter("SPMRI03100_param_rsnflag", 'R');
  972. frmf_setParameter("SPMRI03100_param_instcd", ds_init_env.getColumn(0, "instcd"));
  973. frmf_modal("SPMRI03100", "SPMRI03100", null, null, null, null, null, null, null, null, null, null, "M");
  974. /* SPMRI03100 화면에서 dataset 전달 받은 후 테스트 필요 */
  975. var valiyn = ds_init_accresn.getColumn(0, "valiyn");
  976. if (valiyn != "Y"){
  977. return;
  978. }else{
  979. }
  980. }
  981. }
  982. }
  983. ds_init_accresn.addColumn("orddd", "string");
  984. ds_init_accresn.addColumn("cretno", "string");
  985. var nRow = ds_init_accresn.rowcount > 0 ? 0 : ds_init_accresn.addRow();
  986. ds_init_accresn.setColumn(nRow, "orddd", orddd);
  987. ds_init_accresn.setColumn(nRow, "cretno", cretno);
  988. }else{
  989. ds_init_accresn.setColumn(0, "resncd", "");
  990. ds_init_accresn.setColumn(0, "resnnm", "");
  991. ds_init_accresn.setColumn(0, "etc", "");
  992. ds_init_accresn.setColumn(0, "valiyn", "");
  993. ds_init_accresn.setColumn(0, "orddd", "");
  994. ds_init_accresn.setColumn(0, "cretno", "");
  995. }
  996. //2012/11/28 Start 상태값 초기화
  997. dutplcecd_chk=false;
  998. //2012/11/28 End
  999. grup_right.iviewerIemr.cleanViewer();
  1000. //
  1001. var ioflag = ds_send.getColumn(0, "ioflag");
  1002. var refdata = "";
  1003. var sizedata = "";
  1004. var addCol = grup_left.switch1.grd.grd_midindx.getBindCellIndex("body", "cnt");
  1005. if (emrflag == "I")
  1006. {
  1007. grup_left.switch1.grd.grd_midindx.setCellProperty("head", addCol, "text", "페이지수");
  1008. //grd_midindx.caption = "lisflag^reckind^emrflag^정렬순번^상위아이템코드^아이템코드^중분류명^페이지수";
  1009. }
  1010. else if (emrflag == "E")
  1011. {
  1012. grup_left.switch1.grd.grd_midindx.setCellProperty("head", addCol, "text", "기록수");
  1013. //grd_midindx.caption = "lisflag^reckind^emrflag^정렬순번^상위아이템코드^아이템코드^중분류명^기록수";
  1014. }
  1015. ds_init_etc.setColumn(0, "totcnt", "");
  1016. //lbl_totcnt.refresh();
  1017. dsf_deleteDs("ds_send");
  1018. ds_grd_midindx.clearData();
  1019. var objColInfo = new Array();
  1020. objColInfo.push({col: "pid", type:"string", size:256, val:ds_patinfolist.getColumn(0, "pid")});
  1021. objColInfo.push({col: "orddd", type:"string", size:256, val:orddd});
  1022. objColInfo.push({col: "cretno", type:"string", size:256, val:cretno});
  1023. objColInfo.push({col: "orddeptcd", type:"string", size:256, val:orddeptcd});
  1024. objColInfo.push({col: "tabflag", type:"string", size:256, val:tabflag});
  1025. objColInfo.push({col: "emrflag", type:"string", size:256, val:emrflag});
  1026. objColInfo.push({col: "chosflag", type:"string", size:256, val:ds_grd_pathist.getColumn(row, "ordtype")});
  1027. objColInfo.push({col: "refusge", type:"string", size:256, val:ds_init_accresn.getColumn(0, "resncd")});
  1028. objColInfo.push({col: "refremark", type:"string", size:256, val:ds_init_accresn.getColumn(0, "etc")});
  1029. objColInfo.push({col: "readprtflag", type:"string", size:256, val:"R"});
  1030. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  1031. //열람신청과 연결-20120130 이윤주 수정
  1032. if( this.objects["ds_init_view"] == null ){
  1033. objColInfo.push({col: "appno", type:"string", size:256, val:""}); // fInitalize setting
  1034. objColInfo.push({col: "histno", type:"string", size:256, val:""});
  1035. }else{
  1036. objColInfo.push({col: "appno", type:"string", size:256, val:ds_init_view.getColumn(0, "appno")}); // fInitalize setting
  1037. objColInfo.push({col: "histno", type:"string", size:256, val:ds_init_view.getColumn(0, "histno")});
  1038. }
  1039. //2010.02.04 안치원 - 통합기록조회 검사파트 처방일자로 조회조건 추가
  1040. objColInfo.push({col: "fromprcpdd", type:"string", size:256, val:ds_grd_pathist.getColumn(row, "orddd")});
  1041. objColInfo.push({col: "toprcpdd", type:"string", size:256, val:ds_grd_pathist.getColumn(row, "dschdd")});
  1042. //2009-10-31 오후 2:36:09 강지훈 수정 :
  1043. objColInfo.push({col: "bfopentest", type:"string", size:256, val:bfopentest});
  1044. dsf_createDsRow("ds_send", objColInfo);
  1045. dsf_setDefaultVal(ds_send, "cretno:0,fromprcpdd:'',toprcpdd:''");
  1046. var oParam = {};
  1047. oParam.id = "TRMRI03003";
  1048. oParam.service = "recmngtapp.IntegrityRec";
  1049. oParam.method = "reqGetRecMidIndx";
  1050. oParam.inds = "req=" + "ds_send";
  1051. oParam.outds = "ds_grd_midindx" + "=midindxlist";
  1052. oParam.async = false;
  1053. oParam.callback = "cf_TRMRI03003"
  1054. tranf_submit(oParam);
  1055. //sysf_trace(ds_grd_midindx.saveXML());
  1056. if(arErrorCode.pop("TRMRI03003") > -1){
  1057. // xp code add
  1058. ds_grd_midindx.addColumn("cnt", "string");
  1059. //var midindxNodelist = model.instances(0).selectNodes("/root/main/midindx/midindxlist");
  1060. var itemindxseq = 0;
  1061. var midreccnt = 0;
  1062. if (ds_grd_midindx.rowcount > 0)
  1063. {
  1064. grup_left.switch1.grd.grd_midindx.autofittype = "col";
  1065. itemindxseq = parseInt(ds_grd_midindx.getColumn(0, "itemindxseq"));
  1066. midreccnt = parseInt(utlf_isNull(ds_grd_midindx.getColumn(0, "cnt")) ? "0" : ds_grd_midindx.getColumn(0, "cnt"));
  1067. ds_init_etc.setColumn(0, "itemindxseq", itemindxseq);
  1068. ds_init_etc.setColumn(0, "midreccnt", midreccnt);
  1069. ds_init_etc.setColumn(0, "reccurpos", 1);
  1070. ds_init_etc.setColumn(0, "bfopentest", bfopentest);
  1071. ds_init_etc.setColumn(0, "recall", "Y"); //김동준(20130404)
  1072. // 2013.07.10 CYW 개인정보보호 관련 중분류 체크
  1073. var cnt = ds_indx.rowcount;
  1074. var indxcnt = ds_grd_midindx.rowcount;
  1075. var privateflag = frmf_getParameter("SMMRI03000_privateflag");
  1076. var instcd = sysf_getUserInfo("dutplceinstcd");
  1077. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");//opener
  1078. sysf_trace("***** SMMRI00400_param_openerid : "+ openerid +"*****");
  1079. if( openerid == "SMMRI08000" ){
  1080. var row3 = ds_init_cmb_dept.rowposition;
  1081. var deptengabbr = ds_init_cmb_dept.getColumn(row3, "deptengabbr");
  1082. var prntdeptengabbr = opener.frmf_getParameter("SMMRI00400_param_prntdeptengabbr"); //opener
  1083. sysf_trace("***** SMMRI00400_param_prntdeptengabbr : "+ prntdeptengabbr +"*****");
  1084. var prntidx = prntdeptengabbr.indexOf(deptengabbr);
  1085. if( prntidx > -1 && privateflag == "2" || prntidx > -1 && privateflag == "3" ){
  1086. for( var j = 0 ; j < indxcnt ; j++){
  1087. ds_grd_midindx.addColumn("chkflag", "string");
  1088. ds_grd_midindx.setColumn(j, "chkflag", "N");
  1089. //model.makeValue( "/root/main/midindx/midindxlist[" + j + "]/chkflag", "N" );
  1090. }
  1091. for( var i = 0 ; i < cnt ; i++){
  1092. for( var j = 0 ; j < indxcnt ; j++){
  1093. if( ds_indx.getColumn(i, "hardcd") == ds_grd_midindx.getColumn(j, "itemindxseq") ){
  1094. ds_grd_midindx.setColumn(j, "chkflag", "Y");
  1095. }
  1096. }
  1097. }
  1098. if( privateflag == "2" ){
  1099. grup_left.switch1.grd.grd_midindx.setCellProperty("body", 6, "color" ,"EXPR(chkflag == N ? gray : black)");
  1100. grup_left.switch1.grd.grd_midindx.setCellProperty("body", 6, "color2" ,"EXPR(chkflag == N ? gray : black)");
  1101. grup_left.switch1.grd.grd_midindx.setCellProperty("body", 6, "font" ,"EXPR(chkflag == N ? : normal)");
  1102. /*
  1103. for( var j = 0 ; j < indxcnt ; j++){
  1104. if( ds_grd_midindx.getColumn(j, "chkflag") == "N" ){
  1105. grd_midindx.rowstyle( j , "data", "color") = "gray";
  1106. }else{
  1107. grd_midindx.rowstyle( j , "data", "font-weight") = "normal";
  1108. grd_midindx.rowstyle( j , "data", "color") = "black";
  1109. }
  1110. }
  1111. */
  1112. }
  1113. if( ( prntidx > -1 && ds_grd_midindx.getColumn(0, "chkflag") == "Y" && privatetxt == "2" ) || ( prntidx > -1 && privatetxt == "3") ){
  1114. btn_prnt.visible = true;
  1115. txt_private.visible = true;
  1116. }else{
  1117. btn_prnt.visible = false;
  1118. txt_private.visible = false;
  1119. }
  1120. }
  1121. }
  1122. if( privatetxt == "1" ){
  1123. txt_private.visible = false;
  1124. }
  1125. ds_grd_midindx.rowposition = 0;
  1126. //2014/04/09 이정택 수정(수진이력 클릭시 소스제어)
  1127. var objColInfo = new Array();
  1128. objColInfo.push({col: "hardcdno", type:"string", size:256, val:"6000"});
  1129. objColInfo.push({col: "srchdd", type:"string", size:256, val:""});
  1130. dsf_createDsRow("ds_send_reqdata_hardcdno", objColInfo);
  1131. objColInfo = new Array();
  1132. objColInfo.push({col: "hardcdno", type:"string", size:256});
  1133. objColInfo.push({col: "trgtcd", type:"string", size:256});
  1134. objColInfo.push({col: "trgtcdnm", type:"string", size:256});
  1135. dsf_createDs("ds_hardcodeinfo", objColInfo);
  1136. var oParam = {};
  1137. oParam.id = "TRMMR01204";
  1138. oParam.service = "medirecapp.util";
  1139. oParam.method = "reqGetHardCodeInfo";
  1140. oParam.inds = "req=" + "ds_send_reqdata_hardcdno";
  1141. oParam.outds = "ds_hardcodeinfo" + "=item";
  1142. oParam.async = false;
  1143. oParam.callback = "cf_TRMMR01204"
  1144. tranf_submit(oParam);
  1145. if(ds_hardcodeinfo.getColumn(0, "trgtcd")=="Y"){
  1146. grup_left.switch1.grd.cmb_sort.enable=true;
  1147. fPaging();
  1148. }else{
  1149. ds_init_etc.setColumn(0, "sortkind", "A");
  1150. grup_left.switch1.grd.cmb_sort.enable=false;
  1151. fGetDetlRec(1, row);
  1152. }
  1153. //2014/04/09
  1154. if(arErrorCode.pop("TRMMR01204") > -1){
  1155. //temp dataset delete
  1156. dsf_deleteDs("ds_send_reqdata_hardcdno");
  1157. dsf_deleteDs("ds_hardcodeinfo");
  1158. }
  1159. }
  1160. }
  1161. }
  1162. function fSetResnSMMRI08000()
  1163. {
  1164. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  1165. if ( openerid == "SMMRI08000")
  1166. {
  1167. var resncd = opener.frmf_getParameter("SMMRI00400_param_resncd"); //열람목적 코드
  1168. var etc = opener.frmf_getParameter("SMMRI00400_param_etc"); //열람목적 사유 상세
  1169. ds_init_accresn.addColumn("valiyn", "string");
  1170. ds_init_accresn.addColumn("resncd", "string");
  1171. ds_init_accresn.addColumn("etc", "string");
  1172. var nRow = ds_init_accresn.rowcount > 0 ? 0 : ds_init_accresn.addRow();
  1173. ds_init_accresn.setColumn(nRow, "valiyn", "Y");
  1174. ds_init_accresn.setColumn(nRow, "resncd", resncd);
  1175. ds_init_accresn.setColumn(nRow, "etc", etc);
  1176. return true;
  1177. }
  1178. return false;
  1179. }
  1180. /**
  1181. * @desc : 키 이벤트
  1182. * @id :
  1183. * @event : DOMActivate
  1184. * @return : void
  1185. * @authur : 박종훈
  1186. */
  1187. function fGetRec(val)
  1188. {
  1189. sysf_trace("***** fGetRec(val) : " + val + " *****");
  1190. var selIndx = grup_left.switch1.tabindex;
  1191. //북마크모드가 아닐때
  1192. if(selIndx == 0){
  1193. //var midnodeList = instance1.selectNodes("/root/main/midindx/midindxlist");
  1194. if (ds_grd_midindx.rowcount < 1)
  1195. {
  1196. sysf_messageBox("서식분류를", "C002");
  1197. //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  1198. //lyj
  1199. // if (grup_paging.visible) {
  1200. // iviewerIemr.window.javascript.setupChart("ThumbView");
  1201. // } else {
  1202. // iviewerIemr.window.javascript.setupChart("ChartView");
  1203. //
  1204. // }
  1205. return;
  1206. }
  1207. // var ViewMode = "-";
  1208. // ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  1209. //
  1210. // if (ViewMode == "ThumbView")
  1211. // {
  1212. // //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  1213. // if (grup_paging.visible) {
  1214. // iviewerIemr.window.javascript.setupChart("ThumbView");
  1215. // } else {
  1216. // iviewerIemr.window.javascript.setupChart("ChartView");
  1217. // }
  1218. // }
  1219. var emrflag = ds_init_etc.getColumn(0, "emrflag");
  1220. //2009-11-02 오후 7:16:41 강지훈 수정
  1221. var reckind = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "reckind");
  1222. var wheelMsgFlag = ds_tmp.getColumn(0, "wheelmsg");
  1223. if (emrflag == "I" && reckind != "EMR")
  1224. {
  1225. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1226. nodeposcnt = 0; //1->0
  1227. prevflag = "N";
  1228. switch(val)
  1229. {
  1230. case "first" :
  1231. if (grd_midindx.row == 1)
  1232. {
  1233. fShowMessage("첫 페이지 입니다.")
  1234. return;
  1235. }
  1236. else
  1237. {
  1238. grd_midindx.row = 1;
  1239. break;
  1240. }
  1241. case "prev" :
  1242. if (grd_midindx.row == 1)
  1243. {
  1244. //messageBox("처음", "I009");
  1245. //return;
  1246. if(wheelMsgFlag == "Y"){
  1247. var histrow = grd_pathist.row - 1;
  1248. if (histrow <= 0)
  1249. {
  1250. fShowMessage("처음 수진 이력입니다.")
  1251. return;
  1252. }
  1253. else
  1254. {
  1255. var rtnmsg = sysf_messageBox("처음 기록입니다. 이전 수진이력으로", "Q003");
  1256. if (rtnmsg == 6)
  1257. {
  1258. fPrevRecHist();
  1259. return;
  1260. }
  1261. else
  1262. {
  1263. return;
  1264. }
  1265. }
  1266. }
  1267. else{
  1268. fPrevRecHist();
  1269. return;
  1270. }
  1271. }
  1272. else
  1273. {
  1274. ds_grd_midindx.rowposition = ds_grd_midindx.rowposition - 1;
  1275. break;
  1276. }
  1277. case "next" :
  1278. if (ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1279. {
  1280. if(wheelMsgFlag == "Y"){
  1281. var histrow = ds_grd_pathist.rowposition + 1;
  1282. if ( histrow == ds_grd_pathist.rowcount )
  1283. {
  1284. fShowMessage("마지막 수진 이력입니다.")
  1285. return;
  1286. }
  1287. else
  1288. {
  1289. var rtnmsg = sysf_messageBox("마지막 기록입니다. 다음 수진이력으로", "Q003");
  1290. if (rtnmsg == 6)
  1291. {
  1292. fNextRecHist();
  1293. return;
  1294. }
  1295. else
  1296. {
  1297. return;
  1298. }
  1299. }
  1300. }
  1301. else{
  1302. fNextRecHist();
  1303. return;
  1304. }
  1305. }
  1306. else
  1307. {
  1308. ds_grd_midindx.rowposition = ds_grd_midindx.rowposition + 1;
  1309. break;
  1310. }
  1311. case "end" :
  1312. if (ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1313. {
  1314. fShowMessage("마지막 페이지 입니다.");
  1315. return;
  1316. }
  1317. else
  1318. {
  1319. ds_grd_midindx.rowposition = ds_grd_midindx.rowcount - 1;
  1320. break;
  1321. }
  1322. case "all" :
  1323. ds_init_etc.setColumn(0, "recall", "Y");
  1324. }
  1325. }
  1326. else
  1327. {
  1328. var reccurpos = parseInt(ds_init_etc.getColumn(0, "reccurpos"));
  1329. var midreccnt = parseInt(ds_init_etc.getColumn(0, "midreccnt"));
  1330. //var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  1331. switch(val)
  1332. {
  1333. case "first" :
  1334. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1335. nodeposcnt = 0; //1->0
  1336. prevflag = "N";
  1337. if (ds_grd_midindx.rowposition == 0 && reccurpos == 1)
  1338. {
  1339. fShowMessage("첫 페이지 입니다.")
  1340. return;
  1341. }
  1342. else
  1343. {
  1344. ds_init_etc.setColumn(0, "recall", "N");
  1345. ds_grd_midindx.rowposition = 0;
  1346. var curmidcnt = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt"));
  1347. ds_init_etc.setColumn(0, "midreccnt", curmidcnt);
  1348. ds_init_etc.setColumn(0, "reccurpos", 1);
  1349. ds_init_etc.setColumn(0, "itemindxseq", parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq")));
  1350. break;
  1351. }
  1352. case "prev" :
  1353. prevflag = "Y";
  1354. if (ds_tmpinicert_iniinfo.rowcount > 1 && nodeposcnt > 0)
  1355. {
  1356. multirecyn = "Y";
  1357. }
  1358. else
  1359. {
  1360. multirecyn = "N";
  1361. nodeposcnt = 0;//1->0
  1362. }
  1363. if (multirecyn == "N")
  1364. {
  1365. if (ds_grd_midindx.rowposition == 0 && reccurpos == 1)
  1366. {
  1367. if(wheelMsgFlag == "Y"){
  1368. var histrow = ds_grd_pathist.rowposition;
  1369. if (histrow <= 0)
  1370. {
  1371. fShowMessage("처음 수진 이력입니다.")
  1372. return;
  1373. }
  1374. else
  1375. {
  1376. var rtnmsg = sysf_messageBox("처음 기록입니다. 이전 수진이력으로", "Q003");
  1377. if (rtnmsg == 6)
  1378. {
  1379. fPrevRecHist();
  1380. return;
  1381. }
  1382. else
  1383. {
  1384. return;
  1385. }
  1386. }
  1387. }
  1388. else{
  1389. fPrevRecHist();
  1390. return;
  1391. }
  1392. }
  1393. else
  1394. {
  1395. ds_init_etc.setColumn(0, "recall", "N");
  1396. if (reccurpos == 1) //해당중분류의 첫기록일 경우 전 중분류로 이동 후 해당 중분류의 정보를 셋팅한다.
  1397. {
  1398. ds_grd_midindx.rowposition = ds_grd_midindx.rowposition - 1;
  1399. var curmidcnt = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt"));
  1400. ds_init_etc.setColumn(0, "midreccnt", curmidcnt);
  1401. ds_init_etc.setColumn(0, "reccurpos", curmidcnt);
  1402. ds_init_etc.setColumn(0, "itemindxseq", parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq")));
  1403. break;
  1404. }
  1405. else
  1406. {
  1407. ds_init_etc.setColumn(0, "reccurpos", reccurpos - 1);
  1408. break;
  1409. }
  1410. }
  1411. }
  1412. else //하나의 기록이나 이미지가 포함된경우
  1413. {
  1414. if (nodeposcnt <= 0)
  1415. {
  1416. if (ds_grd_midindx.rowposition == 0 && reccurpos == 1)
  1417. {
  1418. if(wheelMsgFlag == "Y"){
  1419. var histrow = ds_grd_pathist.rowposition;
  1420. if (histrow <= 0)
  1421. {
  1422. fShowMessage("처음 수진 이력입니다.")
  1423. return;
  1424. }
  1425. else
  1426. {
  1427. var rtnmsg = sysf_messageBox("처음 기록입니다. 이전 수진이력으로", "Q003");
  1428. if (rtnmsg == 6)
  1429. {
  1430. fPrevRecHist();
  1431. return;
  1432. }
  1433. else
  1434. {
  1435. return;
  1436. }
  1437. }
  1438. }
  1439. else{
  1440. fPrevRecHist();
  1441. return;
  1442. }
  1443. }
  1444. else
  1445. {
  1446. ds_init_etc.setColumn(0, "reccurpos", reccurpos - 1);
  1447. break;
  1448. }
  1449. }
  1450. else
  1451. {
  1452. nodeposcnt--;
  1453. break;
  1454. }
  1455. }
  1456. case "next" :
  1457. prevflag = "N";
  1458. if (ds_tmpinicert_iniinfo.rowcount > 1 && ds_tmpinicert_iniinfo.rowcount > nodeposcnt)
  1459. {
  1460. multirecyn = "Y";
  1461. }
  1462. else
  1463. {
  1464. multirecyn = "N";
  1465. nodeposcnt = 0;//1->0
  1466. }
  1467. if (multirecyn == "N")
  1468. {
  1469. if (reccurpos == midreccnt && ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1470. {
  1471. if(wheelMsgFlag == "Y")
  1472. {
  1473. var histrow = ds_grd_pathist.rowposition + 1;
  1474. if ( histrow == ds_grd_pathist.rowcount )
  1475. {
  1476. fShowMessage("마지막 수진 이력입니다.")
  1477. return;
  1478. }
  1479. else
  1480. {
  1481. var rtnmsg = sysf_messageBox("마지막 기록입니다. 다음 수진이력으로", "Q003");
  1482. if (rtnmsg == 6)
  1483. {
  1484. fNextRecHist();
  1485. return;
  1486. }
  1487. else
  1488. {
  1489. return;
  1490. }
  1491. }
  1492. }
  1493. else{
  1494. fNextRecHist();
  1495. return;
  1496. }
  1497. }
  1498. else
  1499. {
  1500. ds_init_etc.setColumn(0, "recall", "N");
  1501. if (reccurpos == midreccnt)
  1502. {
  1503. ds_grd_midindx.rowposition = ds_grd_midindx.rowposition + 1;
  1504. var curmidcnt = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt"));
  1505. ds_init_etc.setColumn(0, "midreccnt", curmidcnt);
  1506. ds_init_etc.setColumn(0, "reccurpos", 1);
  1507. ds_init_etc.setColumn(0, "itemindxseq", parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq")));
  1508. break;
  1509. }
  1510. else
  1511. {
  1512. ds_init_etc.setColumn(0, "reccurpos", reccurpos + 1);
  1513. break;
  1514. }
  1515. }
  1516. }
  1517. else //하나의 기록이나 이미지가 포함된경우
  1518. {
  1519. if (nodeposcnt >= ds_tmpinicert_iniinfo.rowcount)
  1520. {
  1521. if (reccurpos == midreccnt && ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1522. {
  1523. if(wheelMsgFlag == "Y"){
  1524. var histrow = ds_grd_pathist.rowposition + 1;
  1525. if ( histrow == ds_grd_pathist.rowcount )
  1526. {
  1527. fShowMessage("마지막 수진 이력입니다.")
  1528. return;
  1529. }
  1530. else
  1531. {
  1532. var rtnmsg = sysf_messageBox("마지막 기록입니다. 다음 수진이력으로", "Q003");
  1533. if (rtnmsg == 6)
  1534. {
  1535. fNextRecHist();
  1536. return;
  1537. }
  1538. else
  1539. {
  1540. ds_init_etc.setColumn(0, "reccurpos", reccurpos + 1);
  1541. break;
  1542. }
  1543. }
  1544. }
  1545. else{
  1546. fNextRecHist();
  1547. return;
  1548. }
  1549. }
  1550. }
  1551. else
  1552. {
  1553. nodeposcnt++;
  1554. break;
  1555. }
  1556. }
  1557. case "end" :
  1558. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1559. nodeposcnt = 0; //1->0
  1560. prevflag = "N";
  1561. if (reccurpos == midreccnt && ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1562. {
  1563. fShowMessage("마지막 페이지 입니다.")
  1564. return;
  1565. }
  1566. else
  1567. {
  1568. ds_init_etc.setColumn(0, "recall", "N");
  1569. ds_grd_midindx.rowposition = ds_grd_midindx.rowcount - 1;
  1570. var curmidcnt = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt"));
  1571. ds_init_etc.setColumn(0, "midreccnt", curmidcnt);
  1572. ds_init_etc.setColumn(0, "reccurpos", curmidcnt);
  1573. ds_init_etc.setColumn(0, "itemindxseq", parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq")));
  1574. break;
  1575. }
  1576. case "midfirst" :
  1577. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1578. nodeposcnt = 0; //1->0
  1579. prevflag = "N";
  1580. if (ds_grd_midindx.rowposition == 0 && reccurpos == 1)
  1581. {
  1582. fShowMessage("첫 페이지 입니다.")
  1583. return;
  1584. }
  1585. else
  1586. {
  1587. ds_init_etc.setColumn(0, "recall", "N");
  1588. ds_init_etc.setColumn(0, "reccurpos", 1);
  1589. break;
  1590. }
  1591. case "midend" :
  1592. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1593. nodeposcnt = 0; // 1->0
  1594. prevflag = "N";
  1595. if (reccurpos == midreccnt && ds_grd_midindx.rowposition + 1 == ds_grd_midindx.rowcount)
  1596. {
  1597. fShowMessage("마지막 페이지 입니다.")
  1598. return;
  1599. }
  1600. else
  1601. {
  1602. ds_init_etc.setColumn(0, "recall", "N");
  1603. ds_init_etc.setColumn(0, "reccurpos", midreccnt);
  1604. break;
  1605. }
  1606. case "all" :
  1607. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1608. nodeposcnt = 0; //1->0
  1609. prevflag = "N";
  1610. ds_init_etc.setColumn(0, "recall", "Y");
  1611. }
  1612. }
  1613. }
  1614. fGetDetlRec(); //pjh
  1615. }
  1616. /**
  1617. * @desc : 다음 수진이력으로 자동 이동
  1618. * @id :
  1619. * @event : DOMActivate
  1620. * @return : void
  1621. * @authur : 박종훈
  1622. */
  1623. function fNextRecHist()
  1624. {
  1625. var histrow = grd_pathist.row + 1;
  1626. if ( histrow == grd_pathist.rows )
  1627. {
  1628. fShowMessage("마지막 수진 이력입니다.")
  1629. return;
  1630. }
  1631. else
  1632. {
  1633. grd_pathist.row = histrow;
  1634. fGetRecMidIndx();
  1635. }
  1636. var ctrl = document.controls("grd_midindx");
  1637. if (ctrl != null)
  1638. {
  1639. model.setFocus(ctrl.attribute("id"));
  1640. ctrl.dispatch("onkeyup");
  1641. }
  1642. }
  1643. /**
  1644. * @desc : 이전 수진이력으로 자동 이동
  1645. * @id :
  1646. * @event :
  1647. * @return : void
  1648. * @authur : 주희경
  1649. */
  1650. function fPrevRecHist()
  1651. {
  1652. var histrow = grd_pathist.row - 1;
  1653. if (histrow <= 0)
  1654. {
  1655. fShowMessage("처음 수진 이력입니다.")
  1656. return;
  1657. }
  1658. else
  1659. {
  1660. grd_pathist.row = histrow;
  1661. fGetRecMidIndx();
  1662. }
  1663. var ctrl = document.controls("grd_midindx");
  1664. if (ctrl != null)
  1665. {
  1666. model.setFocus(ctrl.attribute("id"));
  1667. ctrl.dispatch("onkeyup");
  1668. }
  1669. }
  1670. /**
  1671. * @desc : 중분류 더블클릭
  1672. * @id :
  1673. * @event : DOMActivate
  1674. * @return : void
  1675. * @authur : 박종훈
  1676. */
  1677. function fDbClickMidIndx()
  1678. {
  1679. if((grd_midindx.isCell(event.target) && grd_midindx.mouserow >= grd_midindx.fixedrows))
  1680. {
  1681. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  1682. nodeposcnt = 0; //1->0
  1683. prevflag = "N";
  1684. iviewerIemr.window.javascript.cleanViewer();
  1685. if (grd_midindx.row >= 1)
  1686. {
  1687. var curmidcnt = parseInt(grd_midindx.valueMatrix(grd_midindx.row, grd_midindx.colref("cnt")));
  1688. var itemindxseq = parseInt(grd_midindx.valueMatrix(grd_midindx.row, grd_midindx.colref("itemindxseq")));
  1689. var openerid = opener.window.javascript.getParameter("SMMRI00400_param_openerid");
  1690. if ( openerid == "SMMRI08000" ){
  1691. // 중분류별 출력체크 CYW
  1692. var chkflag = model.getValue( "/root/main/midindx/midindxlist[" + grd_midindx.row + "]/chkflag");
  1693. var row = datagrid3.row;
  1694. var deptengabbr = datagrid3.valueMatrix(row, datagrid3.colref("deptengabbr"));
  1695. var prntdeptengabbr = opener.window.javascript.getParameter("SMMRI00400_param_prntdeptengabbr");
  1696. var prntidx = prntdeptengabbr.indexOf(deptengabbr);
  1697. if( ( prntidx > -1 && chkflag == "Y" && privatetxt == "2" ) || ( prntidx > -1 && privatetxt == "3") ){
  1698. btn_prnt.visible = true;
  1699. txt_private.visible = true;
  1700. }else if( prntidx > -1 && privatetxt == "1" ){
  1701. btn_prnt.visible = true;
  1702. txt_private.visible = false;
  1703. }else{
  1704. btn_prnt.visible = false;
  1705. txt_private.visible = false;
  1706. }
  1707. }
  1708. model.setValue("/root/init/midreccnt", curmidcnt);
  1709. model.setValue("/root/init/reccurpos", 1);
  1710. model.setValue("/root/init/itemindxseq", itemindxseq);
  1711. //2013/02/15 머지 시작(추가)
  1712. model.setValue("/root/init/recall", "Y");
  1713. //2013/02/15 머지 끝
  1714. model.refresh(); //pjh
  1715. fGetDetlRec(grd_midindx.row); //pjh
  1716. // lyj:막음
  1717. // var ViewMode;
  1718. // ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  1719. //
  1720. //
  1721. // if (ViewMode == null || ViewMode == "" || ViewMode != "ChartView")
  1722. // {
  1723. // //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  1724. // if (grup_paging.visible) {
  1725. // iviewerIemr.window.javascript.setupChart("ThumbView");
  1726. // iviewerIemr.model.setValue("/root/hidden/currentViewMode", "ThumbView"); //추가-kys-20100331
  1727. // } else {
  1728. // iviewerIemr.window.javascript.setupChart("ChartView");
  1729. // }
  1730. // }
  1731. }
  1732. }
  1733. }
  1734. /**
  1735. * @desc : 기록조회
  1736. * @id :
  1737. * @event : DOMActivate
  1738. * @return : void
  1739. * @authur : 박종훈
  1740. */
  1741. function fGetDetlRec( row1, row2 )
  1742. {
  1743. var grd_midindxrow = row1;
  1744. var grd_pathistrow = row2;
  1745. if ( row1 == null )
  1746. grd_midindxrow = grd_midindx.row;
  1747. if ( row2 == null )
  1748. grd_pathistrow = grd_pathist.row;
  1749. var itemindxseq = parseInt(model.getValue("/root/init/itemindxseq")); //선택중분류 인덱스순번
  1750. var reccurpos = parseInt(model.getValue("/root/init/reccurpos")); //현재선택된기록 순번
  1751. var midreccnt = parseInt(model.getValue("/root/init/midreccnt")); //선택중분류 기록수
  1752. var bfopentest = model.getValue("/root/init/bfopentest"); //오픈 이전 검사처방 수진이력
  1753. var reckind = grd_midindx.valueMatrix(grd_midindxrow, grd_midindx.colref("reckind"));
  1754. var rowfocus = "";
  1755. var emrflag = model.getValue("/root/init/emrflag");
  1756. var selIndx = switch1.selectedIndex; //2009-10-20 오후 10:00:57 강지훈 추가
  1757. if(selIndx == 1){
  1758. fGetBookmarkItem();
  1759. }
  1760. else if(selIndx == 0){
  1761. //2009-11-18 오후 10:14:11 강지훈 추가
  1762. if (emrflag == "I" && (reckind != "EMR" && reckind != "CDIS"))
  1763. {
  1764. var totcnt = "[ " + 1 + " / " + grd_midindx.valueMatrix(grd_midindxrow, grd_midindx.colref("cnt")) + " / " + model.getValue("/root/init/reccnt") + " ]";
  1765. model.setValue("/root/init/totcnt", totcnt);
  1766. //2013/02/15 머지 시작(주석처리)
  1767. //lbl_totcnt.refresh();
  1768. //2013/02/15 머지 끝
  1769. var treatno = grd_midindx.valueMatrix(grd_midindxrow, grd_midindx.colref("itemindxseq"));
  1770. var formcd = grd_midindx.valueMatrix(grd_midindxrow, grd_midindx.colref("supitemindxseq"));
  1771. iviewerIemr.window.javascript.cleanViewer();
  1772. iviewerIemr.window.javascript.refreshFalse();
  1773. model.makeValue("/root/imgrec/iemr/treatno", parseInt(treatno));
  1774. model.makeValue("/root/imgrec/iemr/docucd", formcd);
  1775. //20120704 이윤주 추가
  1776. model.makeValue("/root/imgrec/iemr/instcd", model.getValue("/root/init/env/instcd"));
  1777. var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  1778. var chartinfo;
  1779. chartinfo = "I";
  1780. var hiddenmsg;
  1781. hiddenmsg = "I";
  1782. iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, hiddenmsg);
  1783. iviewerIemr.window.javascript.refreshTrue();
  1784. }
  1785. else
  1786. {
  1787. var calcReccurpos = parseInt(model.getValue("/root/init/reccurpos"));
  1788. var itemindxseq = parseInt(model.getValue("/root/init/itemindxseq"));
  1789. var isLis = "";
  1790. // for (var j = 1; j < grd_midindx.row; j++)
  1791. // {
  1792. // isLis = grd_midindx.valueMatrix(j, grd_midindx.colref("reckind"));
  1793. //
  1794. // if (isLis == "LIS")
  1795. // {
  1796. // calcReccurpos -= 1;
  1797. // }
  1798. // }
  1799. model.removeNodeset("/root/send");
  1800. model.makeValue("/root/send/pid" , model.getValue("/root/main/patinfo/patinfolist/pid"));
  1801. model.makeValue("/root/send/orddd" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("orddd")));
  1802. model.makeValue("/root/send/cretno" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("cretno")));
  1803. model.makeValue("/root/send/chosflag" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("ordtype")));
  1804. model.makeValue("/root/send/orddeptcd" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("orddeptcd")));
  1805. model.makeValue("/root/send/tabflag" , model.getValue("/root/init/tabflag"));
  1806. model.makeValue("/root/send/reccurpos" , calcReccurpos);
  1807. model.makeValue("/root/send/recall" , model.getValue("/root/init/recall"));
  1808. model.makeValue("/root/send/reckind" , reckind);
  1809. model.makeValue("/root/send/itemindxseq" , itemindxseq);
  1810. model.makeValue("/root/send/lisflag" , grd_midindx.valueMatrix(grd_midindxrow, grd_midindx.colref("lisflag")));
  1811. model.makeValue("/root/send/instcd" , model.getValue("/root/init/env/instcd"));
  1812. model.makeValue("/root/send/privateyn" , model.getValue("/root/init/privateyn"));
  1813. model.makeValue("/root/send/option" , model.getValue("/root/init/env/option"));
  1814. //2010.02.04 안치원 - 통합기록조회 검사파트 처방일자로 조회조건 추가
  1815. model.makeValue("/root/send/fromprcpdd" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("orddd")));
  1816. model.makeValue("/root/send/toprcpdd" , grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("dschdd")));
  1817. //2009-11-02 오후 2:18:45 강지훈 수정
  1818. model.makeValue("/root/send/bfopentest", bfopentest);
  1819. pathistEmrFlag = grd_pathist.valueMatrix(grd_pathistrow, grd_pathist.colref("emrflag"))
  1820. if(bfopentest == "Y" && emrflag != "E"){
  1821. model.makeValue("/root/send/midbftest", "Y");
  1822. }
  1823. else{
  1824. model.makeValue("/root/send/midbftest", "N");
  1825. }
  1826. //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  1827. //2014/03/18 이정택 수정
  1828. //if (grup_paging.visible && model.getValue("/root/init/paging/fromdd") != "" && model.getValue("/root/init/paging/todd") != "") {
  1829. if(model.getValue("/root/init/pagingyn")=="Y" && model.getValue("/root/init/paging/fromdd") != "" && model.getValue("/root/init/paging/todd") != "") {
  1830. //2014/03/18 이정택 수정
  1831. model.makeValue("/root/send/pagingyn", "Y");
  1832. var ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  1833. if(ViewMode == "ThumbView"){
  1834. model.makeValue("/root/send/recall", "Y"); //추가-kys-20100331
  1835. model.setValue("/root/init/recall", "Y"); //추가-kys-20100331
  1836. }
  1837. model.makeValue("/root/send/pagingfromdd", model.getValue("/root/init/paging/fromdd"));
  1838. model.makeValue("/root/send/pagingtodd", model.getValue("/root/init/paging/todd"));
  1839. }
  1840. if (multirecyn == "N")
  1841. {
  1842. if(submit("TRMRI03004"))
  1843. {
  1844. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  1845. if (certnodeList.length > 1 && certnodeList.length >= nodeposcnt)
  1846. {
  1847. multirecyn = "Y";
  1848. if (prevflag == "Y")
  1849. nodeposcnt = certnodeList.length;
  1850. else
  1851. nodeposcnt = 1;
  1852. }
  1853. else
  1854. {
  1855. multirecyn = "N";
  1856. nodeposcnt = 1;
  1857. }
  1858. iviewerIemr.window.javascript.cleanViewer();
  1859. if (model.getValue("/root/init/recall") == "Y")
  1860. {
  1861. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  1862. }
  1863. else
  1864. {
  1865. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  1866. //fGetNextEmrImgRecOne(); //기록조회 결과가 여러개인 경우 한개씩 조회
  1867. }
  1868. model.setValue("/root/init/recall", "N");
  1869. }
  1870. }
  1871. else
  1872. {
  1873. iviewerIemr.window.javascript.cleanViewer();
  1874. //fGetNextEmrImgRecOne(); //기록조회 결과가 여러개인 경우 한개씩 조회
  1875. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  1876. }
  1877. }
  1878. }
  1879. }
  1880. /**
  1881. * @desc : 환자번호 정보조회
  1882. * @id :
  1883. * @event : onkeypress
  1884. * @return : void
  1885. * @authur : 박종훈(튜닝)
  1886. */
  1887. function fPidKeyPress()
  1888. {
  1889. sysf_trace("***** fPidKeyPress *****");
  1890. //TRMRC00501 input dataset
  1891. ds_source.addRow();
  1892. ds_source.setColumn(0, "srchcond", "1");
  1893. ds_source.setColumn(0, "pid", grup_left.roundrect2.ipt_pid.value);
  1894. grup_left.roundrect2.ipt_pid.updateToDataset();
  1895. //환자등록번호 체크
  1896. if(grup_left.roundrect2.ipt_pid.value.length >= 1 ){
  1897. // model.resetInstanceNode("/root/main/result/patinfo");
  1898. // model.resetInstanceNode("/root/main/patinfo/patinfolist");
  1899. ds_result_patinfo.clearData();
  1900. ds_patinfolist.clearData();
  1901. ds_patinfolist.addRow();
  1902. //sysf_trace(ds_source.saveXML());
  1903. //TRMRC00501 output dataset
  1904. var objColInfo = new Array();
  1905. objColInfo.push({col: "pid", type:"string", size:256});
  1906. objColInfo.push({col: "hngnm", type:"string", size:256});
  1907. objColInfo.push({col: "rrgstno1", type:"string", size:256});
  1908. objColInfo.push({col: "rrgstno2", type:"string", size:256});
  1909. objColInfo.push({col: "bindpid", type:"string", size:256});
  1910. dsf_createDs("ds_inform_item", objColInfo);
  1911. objColInfo = new Array();
  1912. objColInfo.push({col: "pid", type:"string", size:256});
  1913. objColInfo.push({col: "indd", type:"string", size:256});
  1914. objColInfo.push({col: "dschdd", type:"string", size:256});
  1915. objColInfo.push({col: "medispclid", type:"string", size:256});
  1916. objColInfo.push({col: "cretno", type:"string", size:256});
  1917. dsf_createDs("ds_inform_itemi", objColInfo);
  1918. objColInfo = new Array();
  1919. objColInfo.push({col: "pid", type:"string", size:256});
  1920. objColInfo.push({col: "orddeptcd", type:"string", size:256});
  1921. objColInfo.push({col: "orgorddd", type:"string", size:256});
  1922. objColInfo.push({col: "orddrid", type:"string", size:256});
  1923. objColInfo.push({col: "cretno", type:"string", size:256});
  1924. dsf_createDs("ds_inform_itemo", objColInfo);
  1925. var oParam = {};
  1926. oParam.id = "TRMRC00501";
  1927. oParam.service = "chrtmngtapp.BaseInfoMngt";
  1928. oParam.method = "reqGetDblNoPidList";
  1929. oParam.inds = "item=" + "ds_source";
  1930. oParam.outds = "ds_inform_item" + "=item" + " ds_inform_itemi" + "=itemi" + " ds_inform_itemo" + "=itemo";
  1931. oParam.async = false;
  1932. oParam.callback = "cf_TRMRC00501"
  1933. tranf_submit(oParam);
  1934. if(arErrorCode.pop("TRMRC00501") > -1){
  1935. var sBindPid = ds_inform_item.getColumn(0, "bindpid");
  1936. if( sBindPid != '-' && !utlf_isNull(sBindPid) && sBindPid != ' ' ){
  1937. var sPid = ds_inform_item.getColumn(0, "pid");
  1938. var sHngnm = ds_inform_item.getColumn(0, "hngnm");
  1939. var retValue = sysf_messageBox(sPid + "(" + sHngnm + ") 환자의 등록번호가 [ " + sBindPid + " ] 로 합번 되었습니다. 합번된 등록번호로 재조회 하시겠습니까?", "Q999", "");
  1940. if( retValue == '6' ){
  1941. grup_left.roundrect2.ipt_pid.value = sBindPid;
  1942. ds_source.setColumn(0, "srchcond", "1");
  1943. ds_source.setColumn(0, "pid", grup_left.roundrect2.ipt_pid.value);
  1944. grup_left.roundrect2.ipt_pid.updateToDataset();
  1945. var oParam = {};
  1946. oParam.id = "TRPMC02500";
  1947. oParam.service = "patinfomngtapp.PatBaseInfo";
  1948. oParam.method = "reqGetPatInfo";
  1949. oParam.inds = "req=" + "ds_source";
  1950. oParam.outds = "ds_result_patinfo" + "=patinfolist";
  1951. oParam.async = false;
  1952. oParam.callback = "cf_TRPMC02500"
  1953. tranf_submit(oParam);
  1954. if(arErrorCode.pop("cf_TRPMC02500") > -1){
  1955. //fSearch는 인적사항 화면을 임포트 해간 화면에서 구현해 주어야 하는 함수이다.
  1956. if( ds_result_patinfo.rowcount > 0 ){
  1957. dsf_copyDs(ds_patinfolist, ds_result_patinfo);
  1958. if( utlf_isNull(ds_patinfolist.getColumnInfo("agesex")) ){
  1959. ds_patinfolist.addColumn("agesex", "string");
  1960. ds_patinfolist.setColumn(0, "agesex", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  1961. }else{
  1962. ds_patinfolist.setColumn(0, "agesex", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  1963. }
  1964. popupendflag = "ok";
  1965. oprnerId = opener.frmf_getScreenID();
  1966. if(oprnerId == "SPMRC03200"){
  1967. var keyparam = ds_patinfolist.getColumn(0, "pid") + "▦" + ds_patinfolist.getColumn(0, "hngnm") + "▦" + ds_patinfolist.getColumn(0, "sex") + "▦" + ds_patinfolist.getColumn(0, "age") + "▩";
  1968. opener.fEnterPatinfo(keyparam);
  1969. }
  1970. //2009-10-21 오전 11:40:01 강지훈 추가 : 환자의 기록이 북마크에 있을때 탭색 변경
  1971. fChkBookmark();
  1972. return true;
  1973. }else{
  1974. ds_patinfolist.clearData();
  1975. ds_patinfolist.addRow();
  1976. sysf_messageBox("없는 등록번호 입니다.", "E999", "");
  1977. return false;
  1978. }
  1979. }
  1980. }else{
  1981. var pAge = utlf_getFullAge(ds_inform_item.getColumn(0, "rrgstno1")+ds_inform_item.getColumn(0, "rrgstno2"));
  1982. var pGender = utlf_getSex(ds_inform_item.getColumn(0, "rrgstno1")+ds_inform_item.getColumn(0, "rrgstno2"));
  1983. ds_patinfolist.setColumn(0, "pid", sPid);
  1984. ds_patinfolist.setColumn(0, "agesex", pGender + "/" + pAge);
  1985. ds_patinfolist.setColumn(0, "hngnm", sHngnm);
  1986. ds_patinfolist.setColumn(0, "rrgstno1", ds_inform_item.getColumn(0, "rrgstno1"));
  1987. ds_patinfolist.setColumn(0, "rrgstno2", ds_inform_item.getColumn(0, "rrgstno2"));
  1988. //화면 초기화!!
  1989. //btn_init.dispatch("DOMActivate");
  1990. return true;
  1991. }
  1992. }else{
  1993. // 2014/03/17 이정택 서브밋 새로 생성
  1994. //TRMRC00501 output dataset
  1995. var oParam = {};
  1996. oParam.id = "TRMRI00416";
  1997. oParam.service = "recmngtapp.IntegrityRec";
  1998. oParam.method = "reqGetPatInfo";
  1999. oParam.inds = "req=" + "ds_source";
  2000. oParam.outds = "ds_result_patinfo" + "=item";
  2001. oParam.async = false;
  2002. oParam.callback = "cf_TRMRI00416"
  2003. tranf_submit(oParam);
  2004. if(arErrorCode.pop("TRMRI00416") > -1){
  2005. //fSearch는 인적사항 화면을 임포트 해간 화면에서 구현해 주어야 하는 함수이다.
  2006. if( ds_result_patinfo.rowcount > 0 ){
  2007. dsf_copyDs(ds_patinfolist, ds_result_patinfo);
  2008. if( utlf_isNull(ds_patinfolist.getColumnInfo("agesex")) ){
  2009. ds_patinfolist.addColumn("agesex", "string");
  2010. ds_patinfolist.setColumn(0, "agesex", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  2011. }else{
  2012. ds_patinfolist.setColumn(0, "agesex", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  2013. }
  2014. popupendflag = "ok";
  2015. oprnerId = opener.frmf_getScreenID();
  2016. if(oprnerId == "SPMRC03200"){
  2017. var keyparam = ds_patinfolist.getColumn(0, "pid") + "▦" + ds_patinfolist.getColumn(0, "hngnm") + "▦" + ds_patinfolist.getColumn(0, "sex") + "▦" + ds_patinfolist.getColumn(0, "age") + "▩";
  2018. opener.fEnterPatinfo(keyparam);
  2019. }
  2020. //2009-10-21 오전 11:40:01 강지훈 추가 : 환자의 기록이 북마크에 있을때 탭색 변경
  2021. fChkBookmark();
  2022. return true;
  2023. }else{
  2024. ds_patinfolist.clearData();
  2025. ds_patinfolist.addRow();
  2026. sysf_messageBox("없는 등록번호 입니다.", "E999", "");
  2027. return false;
  2028. }
  2029. }
  2030. }
  2031. }
  2032. //temp dataset delete
  2033. dsf_deleteDs("ds_inform_item");
  2034. dsf_deleteDs("ds_inform_itemo");
  2035. dsf_deleteDs("ds_inform_itemi");
  2036. }else{
  2037. sysf_messageBox("등록번호를 정확히", "C001");
  2038. return false;
  2039. }
  2040. }
  2041. /**
  2042. * @desc : 환자이름 정보조회
  2043. * @id :
  2044. * @event : onkeypress
  2045. * @return : void
  2046. * @authur : 박종훈
  2047. */
  2048. function fPnmKeyPress()
  2049. {
  2050. model.setValue("/root/source/srchcond", "2");
  2051. model.setValue("/root/source/hngnm", ipt_hngnm.currentText);
  2052. inputEnterKey("btn_search", "DOMActivate");
  2053. }
  2054. /**
  2055. * @desc : 환자주민번호 정보조회
  2056. * @id :
  2057. * @event : onkeypress
  2058. * @return : void
  2059. * @authur : 박종훈
  2060. */
  2061. function fRgstnoKeyPress()
  2062. {
  2063. ds_source.setColumn(0, "srchcond", "3");
  2064. ds_source.setColumn(0, "rrgstno1", grup_left.roundrect2.ipt_rrgstno1.text);
  2065. ds_source.setColumn(0, "rrgstno2", grup_left.roundrect2.ipt_rrgstno2.value);
  2066. ds_sourcd.addColumn("autoflag", "string");
  2067. ds_source.setColumn(0, "autoflag", "Y");
  2068. var event = new ClickEventInfo;
  2069. grup_left.roundrect2.btn_search.onclick.fireEvent(grup_left.roundrect2.btn_search, event);
  2070. }
  2071. /**
  2072. * @desc : 환자주민번호 뒷자리 정보조회
  2073. * @id :
  2074. * @event : onkeypress
  2075. * @return : void
  2076. * @authur : 강지훈
  2077. */
  2078. function fRgstno2KeyPress(e){
  2079. if(e.keycode == "13") {
  2080. ds_source.setColumn(0, "srchcond", "3");
  2081. ds_source.setColumn(0, "rrgstno1", grup_left.roundrect2.ipt_rrgstno1.text);
  2082. ds_source.setColumn(0, "rrgstno2", grup_left.roundrect2.ipt_rrgstno2.value);
  2083. ds_source.addColumn("autoflag", "string");
  2084. ds_source.setColumn(0, "autoflag", "Y");
  2085. fPopPtinfo();
  2086. }
  2087. }
  2088. /**
  2089. * @desc : 환자정보조회 팝업
  2090. * @id :
  2091. * @event : DOMActivate
  2092. * @return : void
  2093. * @authur : 박종훈
  2094. */
  2095. function fPopPtinfo()
  2096. {
  2097. //2010.03.25 박종훈 추가(요청번호 : 11804)
  2098. if (!utlf_isNull(grup_left.roundrect2.ipt_pid.text))
  2099. {
  2100. ds_source.setColumn(0, "srchcond", "1");
  2101. ds_source.setColumn(0, "pid", grup_left.roundrect2.ipt_pid.text);
  2102. }
  2103. else if (!utlf_isNull(grup_left.roundrect2.ipt_hngnm.text))
  2104. {
  2105. if (!utlf_isNull(grup_left.roundrect2.ipt_rrgstno1.text))
  2106. {
  2107. ds_source.setColumn(0, "srchcond", "4");
  2108. ds_source.setColumn(0, "hngnm", grup_left.roundrect2.ipt_hngnm.text);
  2109. ds_source.setColumn(0, "rrgstno1", grup_left.roundrect2.ipt_rrgstno1.text);
  2110. ds_source.setColumn(0, "rrgstno2", grup_left.roundrect2.ipt_rrgstno2.value);
  2111. }
  2112. else
  2113. {
  2114. ds_source.setColumn(0, "srchcond", "2");
  2115. ds_source.setColumn(0, "hngnm", grup_left.roundrect2.ipt_hngnm.text);
  2116. }
  2117. }
  2118. else if (!utlf_isNull(grup_left.roundrect2.ipt_rrgstno1.text) || !utlf_isNull(grup_left.roundrect2.ipt_rrgstno2.value))
  2119. {
  2120. ds_source.setColumn(0, "srchcond", "3");
  2121. ds_source.setColumn(0, "rrgstno1", grup_left.roundrect2.ipt_rrgstno1.text);
  2122. ds_source.setColumn(0, "rrgstno2", grup_left.roundrect2.ipt_rrgstno2.value);
  2123. }
  2124. var objArgs = new Object();
  2125. objArgs.arg_ds_send = ds_source;
  2126. frmf_modal("SPPMC02500", "SPPMC02500", objArgs, null, "1", "150", "150", null, null, null, null, null, "M");
  2127. //2010.03.25 박종훈 추가(환자 정보 조회 후 자동 조회)
  2128. var e = new ClickEventInfo;
  2129. grup_left.roundrect2.button3.onclick.fireEvent( grup_left.roundrect2.button3, e);
  2130. //button3.dispatch("DOMActivate");
  2131. //model.resetInstanceNode("/root/source");
  2132. //2009-11-14 오전 11:57:20 강지훈 추가
  2133. ds_patinfolist.addColumn("agesex", "string");
  2134. ds_patinfolist.setColumn(0, "agesex", utlf_transNullToEmpty(ds_patinfolist.getColumn(0, "sex")) + "/" + utlf_transNullToEmpty(ds_patinfolist.getColumn(0, "age")));
  2135. }
  2136. /**
  2137. * @desc : 화면닫기(처방에서 사용)
  2138. * @id :
  2139. * @event : xforms-select
  2140. * @return : void
  2141. * @authur : 박종훈
  2142. */
  2143. function fClose()
  2144. {
  2145. //window.close();
  2146. this.close();
  2147. }
  2148. /* @group : 폴더 존재여부 파악
  2149. * @ver : 2007.01.06
  2150. * @by : 박종훈
  2151. * @-----------------------------------
  2152. * @type : function
  2153. * @access : public
  2154. * @desc :
  2155. */
  2156. function fExistFolder(foldernm)
  2157. {
  2158. // var fso, folder, s;
  2159. // fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  2160. var folder, s;
  2161. try
  2162. {
  2163. folder = fso.GetFolder(foldernm);
  2164. s = folder.DateCreated;
  2165. if (!utlf_isNull(s))
  2166. {
  2167. fDelFolder(foldernm);
  2168. fMakeFolder(foldernm);
  2169. }
  2170. }
  2171. catch (e)
  2172. {
  2173. fMakeFolder(foldernm);
  2174. }
  2175. }
  2176. /* @group : 폴더 생성
  2177. * @ver : 2007.01.06
  2178. * @by : 박종훈
  2179. * @-----------------------------------
  2180. * @type : function
  2181. * @access : public
  2182. * @desc :
  2183. */
  2184. function fMakeFolder(foldernm)
  2185. {
  2186. //var fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  2187. var check = true;
  2188. while(check){
  2189. try
  2190. {
  2191. var a = fso.CreateFolder(foldernm);
  2192. check = false;
  2193. }
  2194. catch (e)
  2195. {
  2196. check = true;
  2197. }
  2198. }
  2199. }
  2200. function fMakeFolder_20130327(foldernm)
  2201. {
  2202. var fso = new ActiveXObject("Scripting.FileSystemObject");
  2203. var a = fso.CreateFolder(foldernm);
  2204. }
  2205. /* @group : 폴더 삭제
  2206. * @ver : 2007.01.06
  2207. * @by : 박종훈
  2208. * @-----------------------------------
  2209. * @type : function
  2210. * @access : public
  2211. * @desc :
  2212. */
  2213. function fDelFolder(foldernm)
  2214. {
  2215. // var fso;
  2216. // fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  2217. fso.DeleteFolder(foldernm);
  2218. }
  2219. /* @group : BIT모듈로부터 키값 받아옴
  2220. * @ver : 2008.01.17
  2221. * @by : 박종훈
  2222. * @-----------------------------------
  2223. * @type : function
  2224. * @access : public
  2225. * @desc :
  2226. */
  2227. function fSetCertRecKey(key)
  2228. {
  2229. setParameter("SPMRI02400_certinfo", key);
  2230. modal("SPMRI02400");
  2231. }
  2232. /**
  2233. * @desc : 사본발행 신청
  2234. * @id :
  2235. * @event : xforms-ready
  2236. * @return : void
  2237. * @authur : 박종훈
  2238. */
  2239. function fAppcopy()
  2240. {
  2241. frmf_setParameter("SMMRC03000_pid", grup_left.roundrect2.ipt_pid.value);
  2242. frmf_open("SMMRC03000", "SMMRC03000", null, null, null, null, null, null, null, null, null, null, "M");
  2243. }
  2244. function fAppreq()
  2245. {
  2246. frmf_setParameter("SMMRI08000_param_pid", grup_left.roundrect2.ipt_pid.value);
  2247. frmf_setParameter("SMMRI08000_param_pnm", grup_left.roundrect2.ipt_hngnm.value);
  2248. frmf_open("SMMRI08000", "SMMRI08000", null, null, null, null, null, null, null, null, null, null, "M");
  2249. }
  2250. /**
  2251. * @desc : 질병 및 수술 인덱스 화면 연결
  2252. * @id :
  2253. * @event : DOMActivate
  2254. * @return : void
  2255. * @authur : 박종훈
  2256. */
  2257. function fDiagOprIndxLnk()
  2258. {
  2259. setParameter("SMMRD00400_pid", ipt_pid.value);
  2260. open("SMMRD00700");
  2261. }
  2262. /**
  2263. * @desc : 기록 조회영역 최대 최소화
  2264. * @id :
  2265. * @event : DOMActivate
  2266. * @return : void
  2267. * @authur : 박종훈
  2268. */
  2269. function fMaxMin()
  2270. {
  2271. var leftwidth = grup_left.position.width;
  2272. if (leftwidth == 0)
  2273. {
  2274. /* jw 화면을 줄일때는 자식부터 변경 후 부모 변경 */
  2275. btn_minmax.class = "icon_left";
  2276. grup_left.position2.right = 343;
  2277. grup_right.iviewerIemr.setChartViewerSize(902, parseInt(grup_right.iviewerIemr.position2.height));
  2278. grup_right.iviewerIemr.position2.width = 902;
  2279. grup_right.position2.width = 906;
  2280. grup_right.position2.left = 345;
  2281. btn_minmax.tooltiptext = "최대화";
  2282. }
  2283. else
  2284. {
  2285. btn_minmax.class = "icon_right";
  2286. grup_left.position.right = 0;
  2287. grup_right.position.x = 0;
  2288. grup_right.position.width = 1251;
  2289. grup_right.iviewerIemr.position.width = 1247;
  2290. grup_right.iviewerIemr.setChartViewerSize(parseInt(grup_right.iviewerIemr.position.width), parseInt(grup_right.iviewerIemr.position.height));
  2291. btn_minmax.tooltiptext = "이전크기로";
  2292. }
  2293. }
  2294. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2295. /**
  2296. * @desc : 화면표시 대상이 EMR + IMG 기록인경우 처리
  2297. * @id :
  2298. * @event : onclick
  2299. * @return : void
  2300. * @authur : 박종훈
  2301. */
  2302. function fGetNextEmrImgRec()
  2303. {
  2304. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  2305. var instcd = model.getValue("/root/init/env/instcd");
  2306. //--20130418 김동준 start(html 다운로드시 본원과 칠곡 분기)
  2307. var foldernm = "C:\\Certrec" + getUserInfo("dutplceinstcd");
  2308. //var foldernm = "C:\\Certrec";
  2309. //--20130418 김동준 end
  2310. var recall = model.getValue("/root/init/recall");
  2311. if (certnodeList.length <= 0)
  2312. {
  2313. return;
  2314. }
  2315. else if(certnodeList.length > 1)
  2316. {
  2317. model.setValue("/root/init/recall", "N");
  2318. }
  2319. var emrpath = "";
  2320. var emrorddate = "";
  2321. var emrformnm = "";
  2322. var emrformcd = "";
  2323. var emrdeptnm = "";
  2324. var emrdeptcd = "";
  2325. var emrpage = "";
  2326. var emrhiddenmsg = "";
  2327. var recrowno = "";
  2328. var k = "";
  2329. var pid = "";
  2330. var ptnm = "";
  2331. var depthngnm = "";
  2332. var deptengabbr = "";
  2333. var idcrdeptengabbr = "";
  2334. var rgstno = "";
  2335. var sa = "";
  2336. var disporddd = "";
  2337. var orddd = "";
  2338. var drid = "";
  2339. var roomcd = "";
  2340. var roomcdicdr = "";
  2341. var ordtype = "";
  2342. var chosflag = "";
  2343. var orddeptcd = "";
  2344. var icdrorddeptcd = "";
  2345. var signflag = "";
  2346. var imgflag = "";
  2347. var langflag = "";
  2348. var tmptreatno = "";
  2349. var tmpiformcd = "";
  2350. var signno = 0;
  2351. var formcd = "";
  2352. var srcformcd = "";
  2353. var formnm = "";
  2354. var formprogflag = "";
  2355. var recdt = "";
  2356. var recdd = "";
  2357. var wardheader = "";
  2358. var dateheader = "";
  2359. var doctorheader = "";
  2360. var printheader = "";
  2361. var pageheader = "";
  2362. var imgepath = "";
  2363. var formrecdt = "";
  2364. var fstrgstdt = "";
  2365. var lastupdtdt = "";
  2366. var staffconfirmdt = "";
  2367. var fstrgstrusrnm = "";
  2368. var lastupdtrusrnm = "";
  2369. var erdt = "";
  2370. var ervisittm = "";
  2371. var staffnmheader = "";
  2372. var staffnm = "";
  2373. var emrrecusrnmheader = "";
  2374. var emrrecusrnm = "";
  2375. var indd = "";
  2376. var dschdd = "";
  2377. var inorddepthngnm = "";
  2378. var dschorddepthngnm = "";
  2379. var incnt = "";
  2380. var mainyn = "";
  2381. var rowno = "";
  2382. //2013/02/15 소스 머지 시작(추가)
  2383. var surgeon = "";
  2384. var cover_header = "";
  2385. var cover_footer = "";
  2386. var local_path = "";
  2387. //2013/02/15 소스머지 끝
  2388. var body_header = "";
  2389. var body_footer = "";
  2390. var makebodyfilecnt =0;
  2391. var default_cover_header = "";
  2392. var default_cover_footer = "";
  2393. var cover_header1 = "";
  2394. var cover_header2 = "";
  2395. var cover_header3 = "";
  2396. var cover_header4 = "";
  2397. var cover_header10 = "";
  2398. var cover_footer1 = "";
  2399. var cover_footer2 = "";
  2400. var cover_header_filenm = "";
  2401. var cover_footer_filenm = "";
  2402. var prtnunm = getUserInfo("usernm");
  2403. var prtndeptnm = "";
  2404. //var getuseren = getUserInfo("userengnm");
  2405. var getdate = getCurrentDate();
  2406. var gettime = getCurrentTime();
  2407. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  2408. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  2409. var SMMRI03000_privateflag = getParameter("SMMRI03000_privateflag");
  2410. var prtdt = dateprnt + " " + timeprnt;
  2411. var signgenrflag = ""; //20100615-kys
  2412. var careinrmdt = ""; //20100615-kys
  2413. fExistFolder(foldernm);
  2414. iviewerIemr.window.javascript.refreshFalse();
  2415. for(var i = 1; i <= certnodeList.length; i++)
  2416. {
  2417. signno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signno");
  2418. formcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formcd");
  2419. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/srcformcd");
  2420. formnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formnm");
  2421. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formprogflag");
  2422. recdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdt");
  2423. recdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdd");
  2424. trans = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/trans");
  2425. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm");
  2426. pid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid");
  2427. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno");
  2428. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/depthngnm");
  2429. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/deptengabbr");
  2430. idcrdeptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/icdrdeptengabbr");
  2431. sa = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sa");
  2432. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/disporddd");
  2433. orddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddd");
  2434. drid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/drid");
  2435. icdrdrid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/icdrdrid");
  2436. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/roomcd");
  2437. icdrroomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/icdrroomcd");
  2438. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ordtype");
  2439. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/chosflag");
  2440. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddeptcd");
  2441. signflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signflag");
  2442. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/imgflag");
  2443. langflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/langflag");
  2444. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formrecdt");
  2445. formrecdt = formrecdt.toDate().getDateFormat("YYYY/MM/DD");
  2446. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstdt");
  2447. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtdt");
  2448. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffconfirmdt");
  2449. //20100628-kys-서울성모병원은 최초작성자(작성일시), 최종작성자(작성일시)->작성자, 작성일시로 표시한다.
  2450. if(getUserInfo("dutplceinstcd") == "012"){
  2451. fstrgstrusrnm = "◈ 작 성 자 : " + model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  2452. if(fstrgstrusrnm != "")
  2453. lastupdtrusrnm = "◈ 작성일시 : " + fstrgstdt; //수정을 최소화 하기 위해 lastupdtrusrnm를 쓴다.-kys-20100628
  2454. }else{ //서울성모병원외는 최초작성자(작성일시), 최종작성자(작성일시) 그대로 표시.
  2455. // KNUH_20110406_박성호 수정
  2456. //fstrgstrusrnm = "◈ 최초작성자 : " + model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  2457. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  2458. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  2459. if(fstrgstrusrnm != "")
  2460. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  2461. */
  2462. // KNUH_20110406_박성호 수정
  2463. //lastupdtrusrnm = "◈ 최종작성자 : " + model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  2464. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  2465. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  2466. if(lastupdtrusrnm != "")
  2467. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  2468. */
  2469. }
  2470. erdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/erdt");
  2471. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ervisittm");
  2472. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffnm");
  2473. surgeon = staffnm;
  2474. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/emrrecusrnm");
  2475. indd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/indd");
  2476. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschdd");
  2477. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/inorddepthngnm");
  2478. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschorddepthngnm");
  2479. mainyn = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/mainyn");
  2480. rowno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rowno");
  2481. incnt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/incnt");
  2482. if(incnt != "")
  2483. incnt += " 회차";
  2484. signgenrflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signgenrflag"); //20100615-kys
  2485. careinrmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/careinrmdt"); //20100615-kys
  2486. var ininfo = indd + " / " + inorddepthngnm;
  2487. if(erdt != "")
  2488. ininfo += " (응급실 내원일 : " + erdt + ")";
  2489. var dschinfo = dschdd + " / " + dschorddepthngnm;
  2490. var formnmarr = formnm.split("\n");
  2491. var topformnm = "";
  2492. var botformnm = "";
  2493. if (formnmarr.length == 1)
  2494. {
  2495. topformnm = formnmarr[0];
  2496. }
  2497. else if (formnmarr.length == 2)
  2498. {
  2499. topformnm = formnmarr[0];
  2500. botformnm = formnmarr[1];
  2501. }
  2502. else
  2503. {
  2504. topformnm = formnm;
  2505. }
  2506. //2009-06-02 등록번호 "-" 병원별 제거
  2507. var pidynhcd = model.getValue("/root/init/pidynhcd/hardcd/hardcd");
  2508. if (pidynhcd == "Y")
  2509. {
  2510. for(var k = pid.length; k <= 8; k++)
  2511. {
  2512. if(k < 8){
  2513. pid = "0"+pid;
  2514. }
  2515. }
  2516. var str1 = pid.substr(0, 3);
  2517. var str2 = pid.substr(3, 2);
  2518. var str3 = pid.substr(5, 2);
  2519. var str4 = pid.substr(7, 1);
  2520. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  2521. }
  2522. else
  2523. {
  2524. tmppid = pid;
  2525. }
  2526. if (chosflag == "O" || chosflag == "S")
  2527. {
  2528. wardheader = "진료과 : ";
  2529. }
  2530. else
  2531. {
  2532. wardheader = "병실 : ";
  2533. }
  2534. if (langflag == "KO")
  2535. {
  2536. if (chosflag == "O" || chosflag == "S")
  2537. {
  2538. wardheader = "진료과 : ";
  2539. }
  2540. else
  2541. {
  2542. wardheader = "병실 : ";
  2543. }
  2544. dateheader = "진료기간 : ";
  2545. doctorheader = "주치의 : ";
  2546. printheader = "출력 : ";
  2547. prtndeptnm = getUserInfo("dutplcenm");
  2548. imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + ".jpg"
  2549. pageheader = "페이지 : ";
  2550. }
  2551. else
  2552. {
  2553. if (chosflag == "O" || chosflag == "S")
  2554. {
  2555. wardheader = "Dept : ";
  2556. }
  2557. else
  2558. {
  2559. wardheader = "Room : ";
  2560. }
  2561. dateheader = "Date : ";
  2562. doctorheader = "Doctor : ";
  2563. printheader = "Print date : ";
  2564. prtndeptnm = getUserInfo("deptengnm");
  2565. imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + "e.jpg"
  2566. if (prtndeptnm == "" || prtndeptnm == null)
  2567. {
  2568. prtndeptnm = getUserInfo("dutplcenm");
  2569. }
  2570. pageheader = "Page : ";
  2571. }
  2572. if (imgflag == "N")
  2573. {
  2574. if(trans == "")
  2575. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  2576. var ininm = "cmc";
  2577. if( instcd == "032"){
  2578. switch(srcformcd)
  2579. {
  2580. //case "0000000001"://외래초진
  2581. //case "0000000002"://외래재진
  2582. //case "0000000004"://입원경과
  2583. case "0000000003"://입원초진
  2584. cover_header = "emr/recmngtweb/html/cover_header2_032.html";
  2585. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2586. deptengabbr = icdrdeptengabbr;
  2587. roomcd = icdrroomcd;
  2588. drid = icdrdrid;
  2589. break;
  2590. case "0000000676"://수술기록
  2591. cover_header = "emr/recmngtweb/html/cover_header_032.html";
  2592. cover_footer = "emr/recmngtweb/html/cover_footer2.html";
  2593. break;
  2594. case "0000000679"://응급실기록
  2595. cover_header = "emr/recmngtweb/html/cover_header3_032.html";
  2596. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2597. break;
  2598. case "0000000680"://입퇴원요약
  2599. cover_header = "emr/recmngtweb/html/cover_header1_032.html";
  2600. cover_footer = "emr/recmngtweb/html/cover_footer1.html";
  2601. break;
  2602. case "0000002022"://마취기록지
  2603. cover_header = "emr/recmngtweb/html/cover_header4_032.html";
  2604. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2605. break;
  2606. //case "0000003325"://DSC기록
  2607. case "0000003169"://Brief OP Note
  2608. cover_header = "emr/recmngtweb/html/cover_header_032.html";
  2609. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2610. break;
  2611. default:
  2612. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  2613. cover_header = "emr/recmngtweb/html/cover_header10_032.html";
  2614. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2615. }else{
  2616. cover_header = "emr/recmngtweb/html/cover_header_032.html";
  2617. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2618. }
  2619. break;
  2620. }
  2621. }else{
  2622. switch(srcformcd)
  2623. {
  2624. //case "0000000001"://외래초진
  2625. //case "0000000002"://외래재진
  2626. //case "0000000004"://입원경과
  2627. case "0000000003"://입원초진
  2628. cover_header = "emr/recmngtweb/html/cover_header2.html";
  2629. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2630. deptengabbr = icdrdeptengabbr;
  2631. roomcd = icdrroomcd;
  2632. drid = icdrdrid;
  2633. break;
  2634. case "0000000676"://수술기록
  2635. cover_header = "emr/recmngtweb/html/cover_header.html";
  2636. cover_footer = "emr/recmngtweb/html/cover_footer2.html";
  2637. break;
  2638. case "0000000679"://응급실기록
  2639. cover_header = "emr/recmngtweb/html/cover_header3.html";
  2640. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2641. break;
  2642. case "0000000680"://입퇴원요약
  2643. cover_header = "emr/recmngtweb/html/cover_header1.html";
  2644. cover_footer = "emr/recmngtweb/html/cover_footer1.html";
  2645. break;
  2646. case "0000002022"://마취기록지
  2647. cover_header = "emr/recmngtweb/html/cover_header4.html";
  2648. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2649. break;
  2650. //case "0000003325"://DSC기록
  2651. case "0000003169"://Brief OP Note
  2652. cover_header = "emr/recmngtweb/html/cover_header.html";
  2653. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2654. break;
  2655. default:
  2656. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  2657. cover_header = "emr/recmngtweb/html/cover_header10.html";
  2658. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2659. }else{
  2660. cover_header = "emr/recmngtweb/html/cover_header.html";
  2661. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  2662. }
  2663. break;
  2664. }
  2665. }
  2666. // CHECK 2013.07.10 CYW
  2667. var openerid = opener.window.javascript.getParameter("SMMRI00400_param_openerid");
  2668. if( openerid == "SMMRI08000" && SMMRI03000_privateflag == "2" ){ // 본원 보호정책
  2669. ptnm = "";
  2670. rgstno = "";
  2671. lastupdtrusrnm = "";
  2672. fstrgstrusrnm = "";
  2673. drid = "";
  2674. emrrecusrnm = "";
  2675. staffnm = "";
  2676. surgeon = "";
  2677. tmppid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid").substring(0,3) + "****";
  2678. }else if( openerid == "SMMRI08000" && SMMRI03000_privateflag == "3" ){ // 칠곡 보호정책
  2679. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm").substring(0,1) + "**";
  2680. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno").substring(0,6) + "-*******";
  2681. }
  2682. // 통합기록조회 조회조건(타이틀제거여부)에 따른 VIEW 2013.09.06 CYW 환경설정변수 040, 044
  2683. if(model.getValue("/root/envinit/viewflag" ) == "true"){
  2684. cover_header = "";
  2685. cover_footer = "";
  2686. body_header = "";
  2687. body_footer = "";
  2688. }else{
  2689. body_header = "emr/recmngtweb/html/body_header.html";
  2690. body_footer = "emr/recmngtweb/html/body_footer.html";
  2691. }
  2692. trans = "<!--@\n @DOCUMENT_HOME = " + getDomain() + "/himed/webapps/ " +
  2693. "\n @COVER_HEADER = " + cover_header +
  2694. "\n @COVER_FOOTER = " + cover_footer +
  2695. "\n @BODY_HEADER = " + body_header +
  2696. "\n @BODY_FOOTER = " + body_footer +
  2697. "\n @DEFAULT_FONT = 굴림 " +
  2698. "\n @DEFAULT_PRE_FONT = 굴림 " +
  2699. "\n @DEFAULT_FONT_SIZE = 9pt " +
  2700. "\n @DEFAULT_PRE_FONT_SIZE = 10pt " +
  2701. "\n @FONT_SIZE_OFFSET = 3px " +
  2702. "\n @USE_NU_SIZE_ADJUST = TRUE " +
  2703. "\n @HIDE_TAG = DIV:MTX_*, DIV:STX_* " +
  2704. "\n @VAR_PAT_NUM = " + tmppid +
  2705. "\n @VAR_CLASS = " + ordtype +
  2706. "\n @VAR_CHART_NAME_TOP = " + topformnm +
  2707. "\n @VAR_CHART_NAME_BOTTOM = " + botformnm +
  2708. "\n @VAR_CHART_NAME_LINE = " + formnm +
  2709. "\n @VAR_PAT_AGE_SEX = " + sa +
  2710. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  2711. "\n @VAR_PAT_JUMIN_NO = " + rgstno +
  2712. "\n @VAR_PAT_NAME = " + ptnm +
  2713. "\n @VAR_PRINT_NAME = " + prtnunm +
  2714. "\n @VAR_PRINT_DEPT = " + prtndeptnm +
  2715. "\n @VAR_WARD_HEAD = " + wardheader + roomcd +
  2716. "\n @VAR_DATE_HEADER = " + dateheader + disporddd +
  2717. "\n @VAR_DOCTOR_HEADER = " + doctorheader + drid +
  2718. "\n @VAR_PRINT_HEADER = " + printheader + prtdt +
  2719. "\n @SYS_PAGE_HEADER = " + pageheader +
  2720. "\n @VAR_HOSP_IMG = " + imgepath +
  2721. "\n @VAR_ORDDATE = " + recdd +
  2722. "\n @VAR_ORDDEPT = " + depthngnm +
  2723. "\n @VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm +
  2724. "\n @VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm +
  2725. "\n @VAR_ERDT = " + erdt +
  2726. "\n @VAR_ERVISITTM = " + ervisittm +
  2727. "\n @VAR_STAFFNM_HEADER = " + staffnmheader +
  2728. "\n @VAR_STAFFNM = " + staffnm +
  2729. "\n @VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader +
  2730. "\n @VAR_EMRRECUSRNM = " + emrrecusrnm +
  2731. "\n @VAR_ININFO = " + ininfo +
  2732. "\n @VAR_DSCHINFO = " + dschinfo +
  2733. "\n @VAR_INCNT = " + incnt +
  2734. "\n @VAR_INORDDEPTHNGNM = " + inorddepthngnm +
  2735. "\n @VAR_RECUSERID = " + fstrgstrusrnm +
  2736. "\n @VAR_REALRECDT = " + formrecdt +
  2737. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  2738. "\n @VAR_DSCHINFO = " + dschinfo +
  2739. "\n @VAR_SURGEON = " + surgeon +
  2740. "\n @OUTPUT_MAGNIFICATION = 1 " +
  2741. "\n@-->\n" + trans + "\n";
  2742. //2013/02/15 소스머지 끝
  2743. var fso = new ActiveXObject("Scripting.FileSystemObject");
  2744. var a = fso.CreateTextFile(foldernm + "\\" + signno + i + "_" + formcd + ".HTML", true, true);
  2745. a.WriteLine(trans);
  2746. //a.Write(trans);
  2747. a.Close();
  2748. emrpath = foldernm + "\\" + signno + i + "_" + formcd + ".HTML|";
  2749. //emrorddate += orddd + "|";
  2750. emrorddate = recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  2751. emrformnm = formnm + "|";
  2752. emrformcd = formcd + "|";
  2753. emrdeptnm = deptengabbr + "|";
  2754. emrdeptcd = orddeptcd + "|";
  2755. emrpage = "1|";
  2756. emrhiddenmsg = formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  2757. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  2758. recrowno = rowno;
  2759. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  2760. var chartinfo = "";
  2761. chartinfo = "E|" + emrpath + emrorddate + emrformcd + emrformnm + emrdeptcd + emrdeptnm;
  2762. model.makeValue("/root/send/iemr/treatno", "");
  2763. model.makeValue("/root/send/iemr/docucd", "");
  2764. model.makeValue("/root/send/iemr/instcd", model.getValue("/root/init/env/instcd")); //20120704 이윤주수정
  2765. //2013/02/15 소스머지 시작(주석 및 추가)
  2766. //var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  2767. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  2768. //2013/02/15 소스머지 끝
  2769. iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, emrhiddenmsg, recrowno);
  2770. //iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, emrhiddenmsg);
  2771. }
  2772. else
  2773. {
  2774. tmptreatno = signno + ",";
  2775. tmpiformcd = formcd + ",";
  2776. emrpath = "*|";
  2777. emrorddate = "*|";
  2778. emrformnm = "*|";
  2779. emrformcd = "*|";
  2780. emrdeptnm = "*|";
  2781. emrdeptcd = "*|";
  2782. emrpage = "*|";
  2783. emrhiddenmsg = "*|";
  2784. recrowno = rowno;
  2785. model.makeValue("/root/imgrec/iemr/treatno", signno);
  2786. model.makeValue("/root/imgrec/iemr/docucd", formcd);
  2787. model.makeValue("/root/imgrec/iemr/instcd", model.getValue("/root/init/env/instcd")); //20120704 이윤주수정
  2788. //2013/08/13 Start 이정택:처방키가 있을시에 처방키에 해당하는 이미지만 가져오도록 소스 추가
  2789. var cmc_orderseqno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/cmc_orderseqno");
  2790. if(cmc_orderseqno!="" && cmc_orderseqno!=null){
  2791. model.makeValue("/root/imgrec/iemr/cmc_orderseqno", cmc_orderseqno);
  2792. }else{
  2793. model.makeValue("/root/imgrec/iemr/cmc_orderseqno", "");
  2794. }
  2795. //2013/08/13 End
  2796. model.makeValue("/root/imgrec/iemr/formprogflag", formprogflag);
  2797. var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  2798. var chartinfo;
  2799. chartinfo = "I";
  2800. var hiddenmsg;
  2801. hiddenmsg = "I";
  2802. iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, hiddenmsg, recrowno);
  2803. //iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, hiddenmsg);
  2804. }
  2805. }
  2806. iviewerIemr.window.javascript.refreshTrue();
  2807. }
  2808. /**
  2809. * @desc : 미비확인 화면 오픈
  2810. * @id :
  2811. * @event : DOMActivate
  2812. * @return : void
  2813. * @authur : 박종훈
  2814. */
  2815. function fOpenUnprep()
  2816. {
  2817. var pid = ds_patinfolist.getColumn(0, "pid");
  2818. var orddd = ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "orddd");
  2819. var cretno = ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "cretno");
  2820. frmf_setParameter("SPMRI03000_pid", pid);
  2821. frmf_setParameter("SPMRI03000_indd", orddd);
  2822. frmf_setParameter("SPMRI03000_cretno", cretno);
  2823. var wndobj = frmf_findPopup("SPMRI03000");
  2824. if(wndobj != null)
  2825. {
  2826. wndobj.fInitialize_SPMRI03000();
  2827. frmf_setFocusPop("SPMRI03000");
  2828. }
  2829. else
  2830. {
  2831. frmf_open("SPMRI03000", "SPMRI03000", null, null, null, null, null, null, null, null, null, null, "M");
  2832. }
  2833. }
  2834. /**
  2835. * @desc : 출력버튼 클릭
  2836. * @id :
  2837. * @event : DOMActivate
  2838. * @return : void
  2839. * @authur : 박종훈
  2840. */
  2841. function fClickPrint()
  2842. {
  2843. var orddd = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("orddd"));
  2844. var cretno = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("cretno"));
  2845. var orddeptcd = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("orddeptcd"));
  2846. var comporddd = model.getValue("/root/init/prtresn/orddd");
  2847. var compcretno = model.getValue("/root/init/prtresn/cretno");
  2848. var itrgtNodeCnt = getNodesetCnt(model, "/root/hardcd/trgtdept[trgtcd = '" + orddeptcd + "']"); //사유대상부서
  2849. if (itrgtNodeCnt > 0) //감염내과, 정신과, 산부인과, 비뇨기과
  2850. {
  2851. var sUserDeptcd = getUserInfo("dutplcecd");
  2852. var iexNodeCnt = getNodesetCnt(model, "/root/hardcd/exdept[trgtcd = '" + sUserDeptcd + "']"); //사유제외부서
  2853. // 2013.10.11 start cyw 센터일경우 해당 하위부서의 기록을 볼때 사유입력하지 않도록--------------
  2854. var cntrcnt = 0;
  2855. var samechk = 0;
  2856. model.makeNode("/root/send/cntrsrch");
  2857. model.makeValue("/root/send/cntrsrch/instcd", getUserInfo("dutplceinstcd") );
  2858. model.makeValue("/root/send/cntrsrch/userdeptcd", sUserDeptcd );
  2859. if( submit("TRMRI08114") ){
  2860. cntrcnt = getNodesetCount("/root/temp1/cntrdept/cntrdeptlist");
  2861. for( var i = 1; i <= cntrcnt ; i ++ ){
  2862. if( orddeptcd == model.getValue("/root/temp1/cntrdept/cntrdeptlist[" + i + "]/deptcd") ){
  2863. samechk++;
  2864. }
  2865. }
  2866. }
  2867. // 2013.10.11 end-------------------------------------------------------------------------------------------
  2868. // 기록조회시, 사유입력하는 경우?
  2869. // 1. 사유제외부서가 아닐경우
  2870. // 2. 선택한기록부서와 사용자 부서가 같을 경우
  2871. // 3, 각각의 진료일자와 원무키가 다를 경우
  2872. // 4. 센터부서일 경우 하위부서가 아닐경우
  2873. if ( (samechk <=0) && (iexNodeCnt <= 0) && (sUserDeptcd != orddeptcd) && (comporddd != orddd && compcretno != cretno) ) //사용자 근무부서와 환자 수진부서가 틀린경우 사유창 팝업, 근무부서가 의료정보팀일경우 제외
  2874. {
  2875. if ( fSetResnSMMRI08000() == true ){
  2876. //열람승인화면에서 사유입력이 된 제한차트는 fSetResnSMMRI08000()함수에서 사유 자동 셋팅, 2010.09.02 주희경
  2877. }
  2878. else //통합기록조회에서 직접 기록을 오픈할때에는 사유 입력
  2879. {
  2880. model.resetInstanceNode("/root/init/prtresn");
  2881. setParameter("SPMRI03100_param_nodepath", "/root/init/prtresn");
  2882. setParameter("SPMRI03100_param_rsnflag", 'P');
  2883. modal("SPMRI03100");
  2884. var valiyn = model.getValue("/root/init/prtresn/valiyn");
  2885. if (valiyn != "Y")
  2886. {
  2887. return;
  2888. }
  2889. else
  2890. {
  2891. }
  2892. }
  2893. }
  2894. model.makeValue("/root/init/prtresn/orddd", orddd);
  2895. model.makeValue("/root/init/prtresn/cretno", cretno);
  2896. }
  2897. else
  2898. {
  2899. model.resetInstanceNode("/root/init/prtresn");
  2900. }
  2901. var appcopykey = iviewerIemr.window.javascript.setCopy(true); //영상뷰어에서의 리턴값
  2902. if (appcopykey != "")
  2903. {
  2904. //var copykey = appcopykey.split("|");
  2905. //var appkeyArr = copykey[0].split("▦");
  2906. var copykey = appcopykey.split("▩");
  2907. var appkeyArr = copykey[0].split("|");
  2908. var reckind = ""; //기록, 영상구분(E/I)
  2909. var tmpval = "";
  2910. var tmpformcd = "";
  2911. var tmptotpage = "";
  2912. appkeyArr = "";
  2913. var copyparam = "";
  2914. var compsignno = "";
  2915. var compformcd = "";
  2916. var tmpreckind = "";
  2917. var tmpdeptcd = getUserInfo("dutplcecd");
  2918. var tmppid = model.getValue("/root/main/patinfo/patinfolist/pid")
  2919. var tmporddd = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("orddd"));
  2920. var tmpcretno = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("cretno"));
  2921. var tmpchosflag = grd_pathist.valueMatrix(grd_pathist.row, grd_pathist.colref("ordtype"));
  2922. model.removeNodeSet("/root/prthist");
  2923. model.makeNode("/root/prthist");
  2924. var leng = 1;
  2925. for(var i = 0; i < copykey.length-1; i++)
  2926. {
  2927. if( copykey[i] != "" ){
  2928. appkeyArr = copykey[i].split("▦");
  2929. reckind = appkeyArr[0];
  2930. if (reckind == "I")
  2931. {
  2932. tmpval = appkeyArr[1];
  2933. tmpformcd = appkeyArr[2];
  2934. tmpreckind = "02";
  2935. if (compsignno != tmpval || compformcd != tmpformcd)
  2936. {
  2937. compsignno = tmpval;
  2938. compformcd = tmpformcd;
  2939. }
  2940. else
  2941. {
  2942. continue;
  2943. }
  2944. }
  2945. else
  2946. {
  2947. tmpval = appkeyArr[1];
  2948. tmpformcd = appkeyArr[0];
  2949. tmpreckind = "01";
  2950. if (compsignno != tmpval)
  2951. {
  2952. compsignno = tmpval;
  2953. }
  2954. else
  2955. {
  2956. continue;
  2957. }
  2958. }
  2959. if (tmpcretno == "")
  2960. tmpcretno = 0;
  2961. model.makeValue("/root/prthist[" + leng + "]/pid", tmppid);
  2962. model.makeValue("/root/prthist[" + leng + "]/orddd", tmporddd);
  2963. model.makeValue("/root/prthist[" + leng + "]/cretno", tmpcretno);
  2964. model.makeValue("/root/prthist[" + leng + "]/chosflag", tmpchosflag);
  2965. model.makeValue("/root/prthist[" + leng + "]/signno", tmpval);
  2966. model.makeValue("/root/prthist[" + leng + "]/formcd", tmpformcd);
  2967. model.makeValue("/root/prthist[" + leng + "]/reckind", tmpreckind);
  2968. model.makeValue("/root/prthist[" + leng + "]/userdeptcd", tmpdeptcd);
  2969. model.makeValue("/root/prthist[" + leng + "]/readprtflag", "P");
  2970. model.makeValue("/root/prthist[" + leng + "]/refusge", model.getValue("/root/init/prtresn/resncd"));
  2971. model.makeValue("/root/prthist[" + leng + "]/refremark", model.getValue("/root/init/prtresn/etc"));
  2972. //출력로그(염람신청 키):이윤주수정(20120127)
  2973. model.makeValue("/root/prthist[" + leng + "]/appno", model.getValue("/root/init/view/appno"));
  2974. model.makeValue("/root/prthist[" + leng + "]/histno", model.getValue("/root/init/view/histno"));
  2975. leng++;
  2976. model.makeValue("/root/send/prvtsrch/formcd", tmpformcd );
  2977. submit("TRMRI08113");
  2978. var reccnt = model.getValue("/root/temp/prvtsrch/reccnt/cnt");
  2979. // 개인정보보호 적용시, CDIS, OCR 서식은 출력 불가 2013.08.20 CYW
  2980. if( getParameter("SMMRI03000_privateflag") == "2"){
  2981. if( tmpformcd == "CDIS" || tmpformcd == "IV146" || reccnt > 0 ){
  2982. messageBox("개인정보보호정책으로 인해 해당 서식을 출력할 수 없습니다.", "I999");
  2983. return;
  2984. }
  2985. }
  2986. }
  2987. }
  2988. datagrid1.rebuild();
  2989. for(var j = 1; j < datagrid1.rows; j++)
  2990. {
  2991. datagrid1.rowstatus(j) = 1;
  2992. }
  2993. model.removeNodeset("/root/send");
  2994. model.makeValue("/root/send/prtlist", datagrid1.getUpdateData());
  2995. model.makeValue("/root/send/instcd", model.getValue("/root/init/env/instcd"));
  2996. submit("TXMRI03001");
  2997. if(iviewerIemr.window.javaScript.printChart("SMMRC03000"))
  2998. {
  2999. messageBox("출력", "I001");
  3000. }
  3001. else
  3002. {
  3003. messageBox("출력에", "E009");
  3004. }
  3005. model.removeNodeSet("/root/prthist");
  3006. model.makeNode("/root/prthist");
  3007. datagrid1.refresh();
  3008. }
  3009. }
  3010. /**
  3011. * @desc : 중분류 그리드 메뉴
  3012. * @id :
  3013. * @event : DOMActivate
  3014. * @return : void
  3015. * @authur : 박종훈
  3016. */
  3017. function fMidindxMouseRight(e)
  3018. {
  3019. //2010-02-05 오전 9:17:04 강지훈 추가 : 요청번호 10612, Task 40877 병원,과별로 출력부서를 제한한다.
  3020. var prntuseyn = ds_prntuseyn.getColumn(0, "hardcd");
  3021. var sUserDeptcd = sysf_getUserInfo("dutplcecd");
  3022. if(e.row > -1){
  3023. if (prntuseyn == "Y")
  3024. {
  3025. if( !utlf_isNull(ds_prntdept.lookup("hardcd", sUserDeptcd, "hardcd")) ){// model.getValue("/root/init/prntdept/hardcd[hardcd='" + sUserDeptcd + "']/hardcd") != ""){
  3026. midmsrght.trackPopup(e.screenX,e.screenY);//setPopupMenu("grd_midindx", false, "/root/midmsrght/mouserght", "label", "func");
  3027. }
  3028. }
  3029. else{
  3030. midmsrght.trackPopup(e.screenX,e.screenY);//setPopupMenu("grd_midindx", false, "/root/midmsrght/mouserght", "label", "func");
  3031. }
  3032. }
  3033. }
  3034. /**
  3035. * @desc : 분류출력 클릭
  3036. * @id :
  3037. * @event : DOMActivate
  3038. * @return : void
  3039. * @authur : 박종훈
  3040. */
  3041. function fMidPrint()
  3042. {
  3043. sysf_trace("***** fMidPrint() ******");
  3044. ds_init_etc.setColumn(0, "recall", "Y");
  3045. iviewerIemrprt.setupChart("ThumbView");
  3046. fGetDetlRecForPrt();
  3047. var appcopykey = iviewerIemrprt.setCopy(true); //영상뷰어에서의 리턴값
  3048. sysf_trace("***** appcopykey : " + appcopykey +" ******");
  3049. if (!utlf_isNull(appcopykey))
  3050. {
  3051. var copykey = appcopykey.split("|");
  3052. var appkeyArr = copykey[0].split("▦");
  3053. var reckind = ""; //기록, 영상구분(E/I)
  3054. var tmpval = "";
  3055. var tmpformcd = "";
  3056. var tmptotpage = "";
  3057. appkeyArr = "";
  3058. var copyparam = "";
  3059. var compsignno = "";
  3060. var compformcd = "";
  3061. var tmpreckind = "";
  3062. var tmpdeptcd = sysf_getUserInfo("dutplcecd");
  3063. var tmppid = ds_patinfolist.getColumn(0, "pid")
  3064. var tmporddd = ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "orddd");
  3065. var tmpcretno = ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "cretno");
  3066. var tmpchosflag = ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "ordtype");
  3067. ds_datagrid1.clearData();
  3068. /*
  3069. dsf_deleteDs("ds_prthist");
  3070. var objColInfo = new Array();
  3071. objColInfo.push({col: "pid", type:"string", size:256});
  3072. objColInfo.push({col: "orddd", type:"string", size:256});
  3073. objColInfo.push({col: "cretno", type:"string", size:256});
  3074. objColInfo.push({col: "chosflag", type:"string", size:256});
  3075. objColInfo.push({col: "signno", type:"string", size:256});
  3076. objColInfo.push({col: "formcd", type:"string", size:256});
  3077. objColInfo.push({col: "reckind", type:"string", size:256});
  3078. objColInfo.push({col: "userdeptcd", type:"string", size:256});
  3079. objColInfo.push({col: "readprtflag", type:"string", size:256});
  3080. objColInfo.push({col: "refusge", type:"string", size:256});
  3081. objColInfo.push({col: "refremark", type:"string", size:256});
  3082. dsf_createDs("ds_prthist", objColInfo);
  3083. */
  3084. //var leng = 1;
  3085. var nRow;
  3086. for(var i = 0; i < copykey.length; i = i + 2)
  3087. {
  3088. appkeyArr = copykey[i].split("▦");
  3089. reckind = appkeyArr[0];
  3090. if (reckind == "I")
  3091. {
  3092. tmpval = appkeyArr[1];
  3093. tmpformcd = appkeyArr[2];
  3094. tmpreckind = "02";
  3095. if (compsignno != tmpval || compformcd != tmpformcd)
  3096. {
  3097. compsignno = tmpval;
  3098. compformcd = tmpformcd;
  3099. }
  3100. else
  3101. {
  3102. continue;
  3103. }
  3104. }
  3105. else
  3106. {
  3107. tmpval = appkeyArr[1];
  3108. tmpformcd = appkeyArr[0];
  3109. tmpreckind = "01";
  3110. if (compsignno != tmpval)
  3111. {
  3112. compsignno = tmpval;
  3113. }
  3114. else
  3115. {
  3116. continue;
  3117. }
  3118. }
  3119. if ( utlf_isNull(tmpcretno))
  3120. tmpcretno = 0;
  3121. nRow = ds_datagrid1.addRow();
  3122. ds_datagrid1.setColumn( nRow, "pid", tmppid);
  3123. ds_datagrid1.setColumn( nRow, "orddd", tmporddd);
  3124. ds_datagrid1.setColumn( nRow, "cretno", tmpcretno);
  3125. ds_datagrid1.setColumn( nRow, "chosflag", tmpchosflag);
  3126. ds_datagrid1.setColumn( nRow, "signno", tmpval);
  3127. ds_datagrid1.setColumn( nRow, "formcd", tmpformcd);
  3128. ds_datagrid1.setColumn( nRow, "reckind", tmpreckind);
  3129. ds_datagrid1.setColumn( nRow, "userdeptcd", tmpdeptcd);
  3130. ds_datagrid1.setColumn( nRow, "readprtflag", "P");
  3131. ds_datagrid1.setColumn( nRow, "refusge", "");
  3132. ds_datagrid1.setColumn( nRow, "refremark", "");
  3133. /*
  3134. nRow = ds_prthist.addRow();
  3135. ds_prthist.setColumn( nRow, "pid", tmppid);
  3136. ds_prthist.setColumn( nRow, "orddd", tmporddd);
  3137. ds_prthist.setColumn( nRow, "cretno", tmpcretno);
  3138. ds_prthist.setColumn( nRow, "chosflag", tmpchosflag);
  3139. ds_prthist.setColumn( nRow, "signno", tmpval);
  3140. ds_prthist.setColumn( nRow, "formcd", tmpformcd);
  3141. ds_prthist.setColumn( nRow, "reckind", tmpreckind);
  3142. ds_prthist.setColumn( nRow, "userdeptcd", tmpdeptcd);
  3143. ds_prthist.setColumn( nRow, "readprtflag", "P");
  3144. ds_prthist.setColumn( nRow, "refusge", "");
  3145. ds_prthist.setColumn( nRow, "refremark", "");
  3146. */
  3147. }
  3148. for(var j = 0; j < ds_datagrid1.rowcount; j++)
  3149. {
  3150. ds_datagrid1.setRowType(j, ds_datagrid1.ROWTYPE_INSERT);
  3151. //datagrid1.rowstatus(j) = 1;
  3152. }
  3153. var oDsUpdate = grdf_getGridUpdateData(grup_left.switch1.grd.datagrid1);
  3154. dsf_createDs("ds_send_prtlist");
  3155. ds_send_prtlist.copyData(oDsUpdate, true);
  3156. //sysf_trace(ds_send_prtlist.saveXML());
  3157. dsf_deleteDs("ds_send");
  3158. var objColInfo = new Array();
  3159. objColInfo.push([{col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")}]);
  3160. objColInfo.push([{col: "pid", type:"string", size:256}]);
  3161. dsf_createDsRow("ds_send" ,objColInfo);
  3162. objColInfo = new Array();
  3163. objColInfo.push({col: "cnt", type:"string", size:256});
  3164. dsf_createDs("ds_prtcnt", objColInfo);
  3165. var oParam = {};
  3166. oParam.id = "TXMRI03001";
  3167. oParam.service = "recmngtapp.IntegrityRec";
  3168. oParam.method = "reqExeRecReadPrtHist";
  3169. oParam.inds = "req=" + "ds_send" + " prtlist=" + "ds_send_prtlist";
  3170. oParam.outds = "ds_prtcnt=prtcnt";
  3171. oParam.async = false;
  3172. tranf_submit(oParam);
  3173. // sysf_trace(ds_send_prtlist.saveXML());
  3174. // sysf_trace(ds_prtcnt.saveXML());
  3175. /*
  3176. model.removeNodeset("/root/send");
  3177. model.makeValue("/root/send/prtlist", datagrid1.getUpdateData());
  3178. model.makeValue("/root/send/instcd", model.getValue("/root/init/env/instcd"));
  3179. submit("TXMRI03001");
  3180. */
  3181. if(grup_right.iviewerIemr.printChart("SMMRC03000"))
  3182. {
  3183. sysf_messageBox("출력", "I001");
  3184. }
  3185. else
  3186. {
  3187. sysf_messageBox("출력에", "E009");
  3188. }
  3189. // model.removeNodeSet("/root/prthist");
  3190. // model.makeNode("/root/prthist");
  3191. // datagrid1.refresh();
  3192. ds_datagrid1.clearData();
  3193. }
  3194. }
  3195. /**
  3196. * @desc : 기록조회
  3197. * @id :
  3198. * @event : DOMActivate
  3199. * @return : void
  3200. * @authur : 박종훈
  3201. */
  3202. function fGetDetlRecForPrt()
  3203. {
  3204. sysf_trace("***** fGetDetlRecForPrt() *****");
  3205. var reccurpos = parseInt(ds_init_etc.getColumn(0, "reccurpos"));
  3206. var rowfocus = "";
  3207. var midreccurpos = 1;
  3208. var midpos = 0; //중분류중 몇번째 기록계산
  3209. var emrflag = ds_init_etc.getColumn(0, "emrflag");
  3210. //2009-11-02 오후 4:44:56 강지훈 수정
  3211. var reckind = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "reckind");
  3212. if (emrflag == "I" && (reckind != "EMR" && reckind != "CDIS"))
  3213. {
  3214. var totcnt = "[ " + 1 + " / " + ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt") + " / " + ds_init_etc.getColumn(0, "reccnt") + " ]";
  3215. ds_init_etc.setColumn(0, "totcnt", totcnt);
  3216. //lbl_totcnt.refresh();
  3217. var treatno = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq");
  3218. var formcd = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "supitemindxseq");
  3219. iviewerIemrprt.cleanViewer();
  3220. iviewerIemrprt.refreshFalse();
  3221. ds_imgrec_iemr.setColumn(0, "treatno", parseInt(treatno));
  3222. ds_imgrec_iemr.setColumn(0, "docucd", formcd);
  3223. ds_imgrec_iemr.setColumn(0, "instcd", ds_init_env.getColumn(0, "instcd"));
  3224. var iemrNode = eval(ds_imgrec_iemr);//instance1.selectSingleNode("/root/imgrec/iemr");
  3225. var chartinfo;
  3226. chartinfo = "I";
  3227. var hiddenmsg;
  3228. hiddenmsg = "I";
  3229. iviewerIemrprt.appendChart(iemrNode, chartinfo, hiddenmsg);
  3230. iviewerIemrprt.refreshTrue();
  3231. }
  3232. else
  3233. {
  3234. for (var i = 0; i < ds_grd_midindx.rowcount; i++)
  3235. {
  3236. midcnt = ds_grd_midindx.getColumn(i, "cnt");
  3237. midreccurpos += parseInt(midcnt);
  3238. sysf_trace(" midreccurpos : " + midreccurpos + "*****");
  3239. if (midreccurpos > reccurpos)
  3240. {
  3241. //grd_midindx.row = i;
  3242. break;
  3243. }
  3244. }
  3245. var reckind = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "reckind");
  3246. var calcReccurpos = parseInt(ds_init_etc.getColumn(0, "reccurpos"));
  3247. var bfopentest = ds_init_etc.getColumn(0, "bfopentest");
  3248. var isLis = "";
  3249. for (var j = 0; j < ds_grd_midindx.rowposition; j++)
  3250. {
  3251. isLis = ds_grd_midindx.getColumn(j, "reckind");
  3252. if (isLis == "LIS")
  3253. {
  3254. calcReccurpos -= 1;
  3255. }
  3256. }
  3257. // 'ds_send' SET
  3258. dsf_deleteDs("ds_send");
  3259. var objColInfo = new Array();
  3260. objColInfo.push({col: "pid", type:"string", size:256});
  3261. objColInfo.push({col: "orddd", type:"string", size:256});
  3262. objColInfo.push({col: "cretno", type:"int", size:256});
  3263. objColInfo.push({col: "chosflag", type:"string", size:256});
  3264. objColInfo.push({col: "orddeptcd", type:"string", size:256});
  3265. objColInfo.push({col: "tabflag", type:"string", size:256});
  3266. objColInfo.push({col: "reccurpos", type:"int", size:256});
  3267. objColInfo.push({col: "recall", type:"string", size:256});
  3268. objColInfo.push({col: "reckind", type:"string", size:256});
  3269. objColInfo.push({col: "itemindxseq", type:"string", size:256});
  3270. objColInfo.push({col: "lisflag", type:"string", size:256});
  3271. objColInfo.push({col: "instcd", type:"string", size:256});
  3272. objColInfo.push({col: "privateyn", type:"string", size:256});
  3273. objColInfo.push({col: "option", type:"string", size:256});
  3274. objColInfo.push({col: "keys", type:"string", size:256});
  3275. objColInfo.push({col: "screen_id", type:"string", size:256});
  3276. objColInfo.push({col: "sortkind", type:"string", size:256});
  3277. objColInfo.push({col: "page_number", type:"string", size:256});
  3278. objColInfo.push({col: "fromprcpdd", type:"string", size:256});
  3279. objColInfo.push({col: "toprcpdd", type:"string", size:256});
  3280. objColInfo.push({col: "bfopentest", type:"string", size:256});
  3281. objColInfo.push({col: "midbftest", type:"string", size:256});
  3282. objColInfo.push({col: "pagingyn", type:"string", size:256});
  3283. objColInfo.push({col: "pagingfromdd", type:"string", size:256});
  3284. objColInfo.push({col: "pagingtodd", type:"string", size:256});
  3285. objColInfo.push({col: "ordfromdd", type:"string", size:256});
  3286. objColInfo.push({col: "ordtodd", type:"string", size:256});
  3287. objColInfo.push({col: "recformcd", type:"string", size:256});
  3288. objColInfo.push({col: "ordddtxt", type:"string", size:256});
  3289. objColInfo.push({col: "signnotxt", type:"string", size:256});
  3290. dsf_createDs("ds_send", objColInfo);
  3291. var nRow = ds_send.addRow();
  3292. ds_send.setColumn(nRow, "pid", ds_patinfolist.getColumn(0, "pid"));
  3293. ds_send.setColumn(nRow, "orddd", ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "orddd"));
  3294. ds_send.setColumn(nRow, "cretno", ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "cretno"));
  3295. ds_send.setColumn(nRow, "chosflag", ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "ordtype"));
  3296. ds_send.setColumn(nRow, "orddeptcd", ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "orddeptcd"));
  3297. ds_send.setColumn(nRow, "tabflag", ds_init_etc.getColumn(0, "tabflag"));
  3298. ds_send.setColumn(nRow, "reccurpos", calcReccurpos);
  3299. ds_send.setColumn(nRow, "recall", ds_init_etc.getColumn(0, "recall"));
  3300. ds_send.setColumn(nRow, "reckind", reckind);
  3301. ds_send.setColumn(nRow, "itemindxseq", ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq"));
  3302. ds_send.setColumn(nRow, "lisflag", ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "lisflag"));
  3303. ds_send.setColumn(nRow, "instcd", ds_init_env.getColumn(0, "instcd"));
  3304. //2009-11-02 오후 2:18:45 강지훈 수정
  3305. ds_send.setColumn(nRow, "bfopentest", bfopentest);
  3306. grd_pathistrow = ds_grd_pathist.rowposition;
  3307. pathistEmrFlag = ds_grd_pathist.getColumn(grd_pathistrow, "emrflag");
  3308. if(bfopentest == "Y" && emrflag != "E"){
  3309. ds_send.setColumn(nRow, "midbftest", "Y");
  3310. }
  3311. else{
  3312. ds_send.setColumn(nRow, "midbftest", "N");
  3313. }
  3314. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:''pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N,page_number:1");
  3315. dsf_createDs("ds_tmpinicert_iniinfo", null, true);
  3316. ds_tmpinicert_iniinfo.copyData(ds_paging_iniinfo);
  3317. ds_tmpinicert_iniinfo.clearData();
  3318. //sysf_trace(ds_tmpinicert_iniinfo.saveXML());
  3319. //xp code add : col id change!!!execprcpuniqno
  3320. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  3321. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  3322. var oParam = {};
  3323. oParam.id = "TRMRI03004";
  3324. oParam.service = "recmngtapp.IntegrityRec";
  3325. oParam.method = "reqGetRecDetailInfoByCondFlag";
  3326. oParam.inds = "req=" + "ds_send";
  3327. oParam.outds = "ds_tmpinicert_iniinfo" + "=iniinfo";
  3328. oParam.async = false;
  3329. oParam.callback = "cf_TRMRI03004"
  3330. tranf_submit(oParam);
  3331. if(arErrorCode.pop("TRMRI03004") > -1){
  3332. //xp code add : col id change!!!execprcpuniqno
  3333. ds_tmpinicert_iniinfo.updateColID("execprcpuniqno", "cmc_orderseqno");
  3334. dsf_setDefaultVal(ds_tmpinicert_iniinfo, "all");
  3335. //sysf_trace(ds_tmpinicert_iniinfo.saveXML());
  3336. iviewerIemrprt.cleanViewer();
  3337. fGetNextEmrImgRecPrt();
  3338. }
  3339. if (ds_grd_midindx.rowposition > 1)
  3340. {
  3341. var prevmidcnt = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt");
  3342. midpos = reccurpos - midreccurpos + parseInt(prevmidcnt) + 1;
  3343. }
  3344. else
  3345. {
  3346. midpos = reccurpos;
  3347. }
  3348. //jw reccnt -> midreccnt 가능성
  3349. //var totcnt = "[ " + midpos + " / " + ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt") + " / " + ds_init_etc.getColumn(0, "reccnt") + " ]";
  3350. var totcnt = "[ " + midpos + " / " + ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt") + " / " + ds_init_etc.getColumn(0, "midreccnt") + " ]";
  3351. ds_init_etc.setColumn(0, "totcnt", totcnt);
  3352. //lbl_totcnt.refresh();
  3353. }
  3354. }
  3355. function fGetNextEmrImgRecPrt()
  3356. {
  3357. var certnodeList = eval("ds_tmpinicert_iniinfo");
  3358. //--20130418 김동준 start(html 다운로드시 본원과 칠곡 분기)
  3359. var foldernm = "C:\\Certrec" + sysf_getUserInfo("dutplceinstcd");
  3360. //var foldernm = "C:\\Certrec";
  3361. //--20130418 김동준 end
  3362. if (certnodeList.rowcount <= 0)
  3363. return;
  3364. var emrpath = "";
  3365. var emrorddate = "";
  3366. var emrformnm = "";
  3367. var emrformcd = "";
  3368. var emrdeptnm = "";
  3369. var emrdeptcd = "";
  3370. var emrpage = "";
  3371. var emrhiddenmsg = "";
  3372. var k = "";
  3373. var pid = "";
  3374. var ptnm = "";
  3375. var depthngnm = "";
  3376. var deptengabbr = "";
  3377. var rgstno = "";
  3378. var sa = "";
  3379. var disporddd = "";
  3380. var orddd = "";
  3381. var drid = "";
  3382. var roomcd = "";
  3383. var ordtype = "";
  3384. var chosflag = "";
  3385. var orddeptcd = "";
  3386. var signflag = "";
  3387. var imgflag = "";
  3388. var langflag = "";
  3389. var tmptreatno = "";
  3390. var tmpiformcd = "";
  3391. var signno = 0;
  3392. var formcd = "";
  3393. var srcformcd = "";
  3394. var formnm = "";
  3395. var formprogflag = "";
  3396. var recdt = "";
  3397. var recdd = "";
  3398. var wardheader = "";
  3399. var dateheader = "";
  3400. var doctorheader = "";
  3401. var printheader = "";
  3402. var pageheader = "";
  3403. var imgepath = "";
  3404. var formrecdt = "";
  3405. var fstrgstdt = "";
  3406. var lastupdtdt = "";
  3407. var staffconfirmdt = "";
  3408. var fstrgstrusrnm = "";
  3409. var lastupdtrusrnm = "";
  3410. var erdt = "";
  3411. var ervisittm = "";
  3412. var staffnmheader = "";
  3413. var staffnm = "";
  3414. var emrrecusrnmheader = "";
  3415. var emrrecusrnm = "";
  3416. var indd = "";
  3417. var dschdd = "";
  3418. var inorddepthngnm = "";
  3419. var dschorddepthngnm = "";
  3420. var incnt = "";
  3421. var mainyn = "";
  3422. var prtnunm = sysf_getUserInfo("usernm");
  3423. var prtndeptnm = "";
  3424. //var getuseren = getUserInfo("userengnm");
  3425. var getdate = utlf_getCurrentDate();
  3426. var gettime = utlf_getCurrentTime();
  3427. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  3428. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  3429. var prtdt = dateprnt + " " + timeprnt;
  3430. var signgenrflag = ""; //20100615-kys
  3431. var careinrmdt = ""; //20100615-kys
  3432. fExistFolder(foldernm);
  3433. iviewerIemrprt.refreshFalse();
  3434. for(var i = 0; i < certnodeList.rowcount; i++)
  3435. {
  3436. signno = ds_tmpinicert_iniinfo.getColumn(i, "signno");
  3437. formcd = ds_tmpinicert_iniinfo.getColumn(i, "formcd");
  3438. srcformcd = ds_tmpinicert_iniinfo.getColumn(i, "srcformcd");
  3439. formnm = ds_tmpinicert_iniinfo.getColumn(i, "formnm");
  3440. formprogflag = ds_tmpinicert_iniinfo.getColumn(i, "formprogflag");
  3441. recdt = ds_tmpinicert_iniinfo.getColumn(i, "recdt");
  3442. recdd = ds_tmpinicert_iniinfo.getColumn(i, "recdd");
  3443. trans = ds_tmpinicert_iniinfo.getColumn(i, "trans");
  3444. pid = ds_tmpinicert_iniinfo.getColumn(i, "pid");
  3445. ptnm = ds_tmpinicert_iniinfo.getColumn(i, "ptnm");
  3446. depthngnm = ds_tmpinicert_iniinfo.getColumn(i, "depthngnm");
  3447. deptengabbr = ds_tmpinicert_iniinfo.getColumn(i, "deptengabbr");
  3448. rgstno = ds_tmpinicert_iniinfo.getColumn(i, "rgstno");
  3449. sa = ds_tmpinicert_iniinfo.getColumn(i, "sa");
  3450. disporddd = ds_tmpinicert_iniinfo.getColumn(i, "disporddd");
  3451. orddd = ds_tmpinicert_iniinfo.getColumn(i, "orddd");
  3452. drid = ds_tmpinicert_iniinfo.getColumn(i, "drid");
  3453. roomcd = ds_tmpinicert_iniinfo.getColumn(i, "roomcd");
  3454. ordtype = ds_tmpinicert_iniinfo.getColumn(i, "ordtype");
  3455. chosflag = ds_tmpinicert_iniinfo.getColumn(i, "chosflag");
  3456. orddeptcd = ds_tmpinicert_iniinfo.getColumn(i, "orddeptcd");
  3457. signflag = ds_tmpinicert_iniinfo.getColumn(i, "signflag");
  3458. imgflag = ds_tmpinicert_iniinfo.getColumn(i, "imgflag");
  3459. langflag = ds_tmpinicert_iniinfo.getColumn(i, "langflag");
  3460. formrecdt = ds_tmpinicert_iniinfo.getColumn(i, "formrecdt");
  3461. formrecdt = formrecdt.toString().toDate().getDateFormat("YYYY/MM/DD");
  3462. fstrgstdt = ds_tmpinicert_iniinfo.getColumn(i, "fstrgstdt");
  3463. lastupdtdt = ds_tmpinicert_iniinfo.getColumn(i, "lastupdtdt");
  3464. staffconfirmdt = ds_tmpinicert_iniinfo.getColumn(i, "staffconfirmdt");
  3465. //20100628-kys-서울성모병원은 최초작성자(작성일시), 최종작성자(작성일시)->작성자, 작성일시로 표시한다.
  3466. if(sysf_getUserInfo("dutplceinstcd") == "012"){
  3467. fstrgstrusrnm = "◈ 작 성 자 : " + ds_tmpinicert_iniinfo.getColumn(i, "fstrgstrusrnm");
  3468. if(!utlf_isNull(fstrgstrusrnm))
  3469. lastupdtrusrnm = "◈ 작성일시 : " + fstrgstdt; //수정을 최소화 하기 위해 lastupdtrusrnm를 쓴다.-kys-20100628
  3470. }else{ //서울성모병원외는 최초작성자(작성일시), 최종작성자(작성일시) 그대로 표시.
  3471. // KNUH_20110406_박성호 수정
  3472. //fstrgstrusrnm = "◈ 최초작성자 : " + ds_tmpinicert_iniinfo.getColumn(i, "fstrgstrusrnm");
  3473. fstrgstrusrnm = ds_tmpinicert_iniinfo.getColumn(i, "fstrgstrusrnm");
  3474. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3475. if(fstrgstrusrnm != "")
  3476. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  3477. */
  3478. // KNUH_20110406_박성호 수정
  3479. //lastupdtrusrnm = "◈ 최종작성자 : " + ds_tmpinicert_iniinfo.getColumn(i, "lastupdtrusrnm");
  3480. lastupdtrusrnm = ds_tmpinicert_iniinfo.getColumn(i, "lastupdtrusrnm");
  3481. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3482. if(!utlf_isNull(lastupdtrusrnm))
  3483. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  3484. */
  3485. }
  3486. erdt = ds_tmpinicert_iniinfo.getColumn(i, "erdt");
  3487. ervisittm = ds_tmpinicert_iniinfo.getColumn(i, "ervisittm");
  3488. staffnm = ds_tmpinicert_iniinfo.getColumn(i, "staffnm");
  3489. surgeon = staffnm;
  3490. emrrecusrnm = ds_tmpinicert_iniinfo.getColumn(i, "emrrecusrnm");
  3491. indd = ds_tmpinicert_iniinfo.getColumn(i, "indd");
  3492. dschdd = ds_tmpinicert_iniinfo.getColumn(i, "dschdd");
  3493. inorddepthngnm = ds_tmpinicert_iniinfo.getColumn(i, "inorddepthngnm");
  3494. dschorddepthngnm = ds_tmpinicert_iniinfo.getColumn(i, "dschorddepthngnm");
  3495. mainyn = ds_tmpinicert_iniinfo.getColumn(i, "mainyn");
  3496. incnt = ds_tmpinicert_iniinfo.getColumn(i, "incnt");
  3497. if(!utlf_isNull(incnt))
  3498. incnt += " 회차";
  3499. signgenrflag = ds_tmpinicert_iniinfo.getColumn(i, "signgenrflag"); //20100615-kys
  3500. careinrmdt = ds_tmpinicert_iniinfo.getColumn(i, "careinrmdt"); //20100615-kys
  3501. var ininfo = indd + " / " + inorddepthngnm;
  3502. if(!utlf_isNull(erdt))
  3503. ininfo += " (응급실 내원일 : " + erdt + ")";
  3504. var dschinfo = dschdd + " / " + dschorddepthngnm;
  3505. var formnmarr = formnm.split("\n");
  3506. var topformnm = "";
  3507. var botformnm = "";
  3508. if (formnmarr.length == 1)
  3509. {
  3510. topformnm = formnmarr[0];
  3511. }
  3512. else if (formnmarr.length == 2)
  3513. {
  3514. topformnm = formnmarr[0];
  3515. botformnm = formnmarr[1];
  3516. }
  3517. else
  3518. {
  3519. topformnm = formnm;
  3520. }
  3521. //2009-06-02 등록번호 "-" 병원별 제거
  3522. var pidynhcd = ds_pidynhcd.getColumn(0, "hardcd");
  3523. if (pidynhcd == "Y")
  3524. {
  3525. for(var k = pid.length; k <= 8; k++)
  3526. {
  3527. if(k < 8){
  3528. pid = "0"+pid;
  3529. }
  3530. }
  3531. var str1 = pid.substr(0, 3);
  3532. var str2 = pid.substr(3, 2);
  3533. var str3 = pid.substr(5, 2);
  3534. var str4 = pid.substr(7, 1);
  3535. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  3536. }
  3537. else
  3538. {
  3539. tmppid = pid;
  3540. }
  3541. if (chosflag == "O" || chosflag == "S")
  3542. {
  3543. wardheader = "진료과 : ";
  3544. }
  3545. else
  3546. {
  3547. wardheader = "병실 : ";
  3548. }
  3549. if (langflag == "KO")
  3550. {
  3551. if (chosflag == "O" || chosflag == "S")
  3552. {
  3553. wardheader = "진료과 : ";
  3554. }
  3555. else
  3556. {
  3557. wardheader = "병실 : ";
  3558. }
  3559. dateheader = "진료기간 : ";
  3560. doctorheader = "주치의 : ";
  3561. printheader = "출력 : ";
  3562. prtndeptnm = sysf_getUserInfo("dutplcenm");
  3563. //imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + ".jpg"
  3564. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + ".jpg"
  3565. pageheader = "페이지 : ";
  3566. }
  3567. else
  3568. {
  3569. if (chosflag == "O" || chosflag == "S")
  3570. {
  3571. wardheader = "Dept : ";
  3572. }
  3573. else
  3574. {
  3575. wardheader = "Room : ";
  3576. }
  3577. dateheader = "Date : ";
  3578. doctorheader = "Doctor : ";
  3579. printheader = "Print date : ";
  3580. prtndeptnm = sysf_getUserInfo("deptengnm");
  3581. //imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + "e.jpg"
  3582. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + "e.jpg"
  3583. if (utlf_isNull(prtndeptnm))
  3584. {
  3585. prtndeptnm = sysf_getUserInfo("dutplcenm");
  3586. }
  3587. pageheader = "Page : ";
  3588. }
  3589. if (imgflag == "N")
  3590. {
  3591. if(utlf_isNull(trans))
  3592. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  3593. var ininm = "cmc";
  3594. switch(srcformcd)
  3595. {
  3596. case "0000000001"://외래초진
  3597. case "0000000002"://외래재진
  3598. case "0000000004"://입원경과
  3599. case "0000003325"://DSC기록
  3600. ininm += "_0000000001.ini";
  3601. break;
  3602. case "0000000003"://입원초진
  3603. //20100615-kys
  3604. if(signgenrflag == "E"){ //서식발생구분이 응급일경우
  3605. //타이틀에 [응급]추가
  3606. topformnm = topformnm + "[응급]";
  3607. erdt = "";
  3608. }else if (signgenrflag == "I"){ //서식발생구분이 입원일경우
  3609. //간호입실시간 추가
  3610. erdt = "[병동 입실시간] " + careinrmdt; //기존의 erdt변수를 사용한다.
  3611. }
  3612. //입원일자에서 간호입실일로 변경-kys-20100705
  3613. var careinrmdd = careinrmdt.substr(0, 10).toDate("YYYY/MM/DD").getDateFormat();
  3614. /* 20100623 김달현 - 입원초진 Staff사인 시작일자를 2010.03.01로 변경*/
  3615. //if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100301"){
  3616. //if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){ //20100309-kys-입원초진 Staff사인 추가 - 20100310-사본 js와 버젼 맞춘후 반영하기로 함
  3617. if(sysf_getUserInfo("dutplceinstcd") == "012" && careinrmdd >= "20100301"){
  3618. staffnmheader = "◈ Staff작성 및 확인 :";
  3619. /*20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  3620. if(staffnm != "")
  3621. staffnm += "(" + staffconfirmdt + ")";
  3622. */
  3623. emrrecusrnmheader = "";
  3624. ininm += "_1000000003.ini";
  3625. }else{
  3626. ininm += "_0000000003.ini";
  3627. }
  3628. break;
  3629. case "0000000676"://수술기록
  3630. staffnmheader = "◈ Surgeon :";
  3631. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3632. if(getUserInfo("dutplceinstcd") != "012"){ //20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  3633. if(staffnm != "")
  3634. staffnm += "(" + staffconfirmdt + ")";
  3635. }*/
  3636. emrrecusrnmheader = "";
  3637. ininm += "_0000000676.ini";
  3638. break;
  3639. case "0000003169"://Brief OP Note
  3640. staffnmheader = "";
  3641. ininm += "_0000000676.ini";
  3642. break;
  3643. case "0000000680"://입퇴원요약
  3644. staffnmheader = "◈ Staff작성 및 확인 :";
  3645. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3646. if(getUserInfo("dutplceinstcd") != "012"){ //20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  3647. if(staffnm != "")
  3648. staffnm += "(" + staffconfirmdt + ")";
  3649. } */
  3650. emrrecusrnmheader = "◈ 의무기록사 :";
  3651. ininm += "_0000000680.ini";
  3652. break;
  3653. case "0000000679"://응급실기록
  3654. ininm += "_0000000679.ini";
  3655. break;
  3656. case "0000002022"://마취기록지
  3657. ininm += "_0000002022.ini";
  3658. break;
  3659. default:
  3660. //ininm += "_0000000001.ini";
  3661. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y")
  3662. ininm += "_0000000001.ini";
  3663. else
  3664. ininm += ".ini";
  3665. break;
  3666. }
  3667. trans = "<!--% \n %BASE " + sysf_getURLprefix() + "/xpapps/ \n %INCLUDE emr/recmngtxp/xp/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_INORDDEPTHNGNM = " + inorddepthngnm + "\n %-->\n" + trans;
  3668. //var fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  3669. var a = fso.CreateTextFile(foldernm + "\\" + signno + "_" + formcd + ".HTML", true, true);
  3670. a.WriteLine(trans);
  3671. //a.Write(trans);
  3672. a.Close();
  3673. emrpath += foldernm + "\\" + signno + "_" + formcd + ".HTML|";
  3674. //emrorddate += orddd + "|";
  3675. emrorddate += recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  3676. emrformnm += formnm + "|";
  3677. emrformcd += formcd + "|";
  3678. emrdeptnm += deptengabbr + "|";
  3679. emrdeptcd += orddeptcd + "|";
  3680. emrpage += "1|";
  3681. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  3682. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  3683. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  3684. var chartinfo = "E|" + emrpath + emrorddate + emrformcd + emrformnm + emrdeptcd + emrdeptnm;
  3685. var objColInfo = new Array();
  3686. objColInfo.push({col: "treatno", type:"string", size:256, val:""});
  3687. objColInfo.push({col: "docucd", type:"string", size:256, val:""});
  3688. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  3689. dsf_createDsRow("ds_send_iemr", objColInfo);
  3690. var iemrNode = ds_send_iemr;
  3691. iviewerIemrprt.appendChart(iemrNode, chartinfo, emrhiddenmsg);
  3692. }
  3693. else
  3694. {
  3695. tmptreatno += signno + ",";
  3696. tmpiformcd += formcd + ",";
  3697. emrpath += "*|";
  3698. emrorddate += "*|";
  3699. emrformnm += "*|";
  3700. emrformcd += "*|";
  3701. emrdeptnm += "*|";
  3702. emrdeptcd += "*|";
  3703. emrpage += "*|";
  3704. emrhiddenmsg += "*|";
  3705. ds_imgrec_iemr.addColumn("treatno", "string");
  3706. ds_imgrec_iemr.addColumn("docucd", "string");
  3707. ds_imgrec_iemr.addColumn("instcd", "string");
  3708. ds_imgrec_iemr.setColumn(0, "treatno", signno);
  3709. ds_imgrec_iemr.setColumn(0, "docucd", formcd);
  3710. ds_imgrec_iemr.setColumn(0, "instcd", ds_init_env.getColumn(0, "instcd"));
  3711. var iemrNode = ds_imgrec_iemr;
  3712. var chartinfo;
  3713. chartinfo = "I";
  3714. var hiddenmsg;
  3715. hiddenmsg = "I";
  3716. iviewerIemrprt.appendChart(iemrNode, chartinfo, hiddenmsg);
  3717. }
  3718. }
  3719. iviewerIemrprt.refreshTrue();
  3720. }
  3721. /**
  3722. * @desc : 연속보기 더블클릭시 기록 rowno 리턴 인터페이스
  3723. * @id :
  3724. * @event : DOMActivate
  3725. * @return : void
  3726. * @authur : 박종훈
  3727. */
  3728. function fReturnRecRowno(rowno)
  3729. {
  3730. if (!utlf_isNull(rowno) && rowno > 0)
  3731. {
  3732. ds_init_etc.setColumn(0, "reccurpos", parseInt(rowno));
  3733. }
  3734. //model.refresh(); //pjh
  3735. }
  3736. /**
  3737. * @desc : 화면표시 대상이 EMR + IMG 기록인경우 처리
  3738. * @id :
  3739. * @event : onclick
  3740. * @return : void
  3741. * @authur : 박종훈
  3742. */
  3743. function fGetNextEmrImgRecOne()
  3744. {
  3745. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  3746. //--20130418 김동준 start(html 다운로드시 본원과 칠곡 분기)
  3747. var foldernm = "C:\\Certrec" + getUserInfo("dutplceinstcd");
  3748. //var foldernm = "C:\\Certrec";
  3749. //--20130418 김동준 end
  3750. var recall = model.getValue("/root/init/recall");
  3751. if (certnodeList.length <= 0)
  3752. {
  3753. return;
  3754. }
  3755. else if(certnodeList.length > 1)
  3756. {
  3757. model.setValue("/root/init/recall", "N");
  3758. }
  3759. var emrpath = "";
  3760. var emrorddate = "";
  3761. var emrformnm = "";
  3762. var emrformcd = "";
  3763. var emrdeptnm = "";
  3764. var emrdeptcd = "";
  3765. var emrpage = "";
  3766. var emrhiddenmsg = "";
  3767. var recrowno = "";
  3768. var k = "";
  3769. var pid = "";
  3770. var ptnm = "";
  3771. var depthngnm = "";
  3772. var deptengabbr = "";
  3773. var rgstno = "";
  3774. var sa = "";
  3775. var disporddd = "";
  3776. var orddd = "";
  3777. var drid = "";
  3778. var roomcd = "";
  3779. var ordtype = "";
  3780. var chosflag = "";
  3781. var orddeptcd = "";
  3782. var signflag = "";
  3783. var imgflag = "";
  3784. var langflag = "";
  3785. var tmptreatno = "";
  3786. var tmpiformcd = "";
  3787. var signno = 0;
  3788. var formcd = "";
  3789. var srcformcd = "";
  3790. var formnm = "";
  3791. var formprogflag = "";
  3792. var recdt = "";
  3793. var recdd = "";
  3794. var wardheader = "";
  3795. var dateheader = "";
  3796. var doctorheader = "";
  3797. var printheader = "";
  3798. var pageheader = "";
  3799. var imgepath = "";
  3800. var formrecdt = "";
  3801. var fstrgstdt = "";
  3802. var lastupdtdt = "";
  3803. var staffconfirmdt = "";
  3804. var fstrgstrusrnm = "";
  3805. var lastupdtrusrnm = "";
  3806. var erdt = "";
  3807. var ervisittm = "";
  3808. var staffnmheader = "";
  3809. var staffnm = "";
  3810. var emrrecusrnmheader = "";
  3811. var emrrecusrnm = "";
  3812. var indd = "";
  3813. var dschdd = "";
  3814. var inorddepthngnm = "";
  3815. var dschorddepthngnm = "";
  3816. var incnt = "";
  3817. var mainyn = "";
  3818. var rowno = "";
  3819. //2013/02/15 소스머지 시작(추가)
  3820. var surgeon = "";
  3821. var cover_header = "";
  3822. var cover_footer = "";
  3823. //2013/02/15 소스머지 끝
  3824. var prtnunm = getUserInfo("usernm");
  3825. var prtndeptnm = "";
  3826. //var getuseren = getUserInfo("userengnm");
  3827. var getdate = getCurrentDate();
  3828. var gettime = getCurrentTime();
  3829. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  3830. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  3831. var prtdt = dateprnt + " " + timeprnt;
  3832. var signgenrflag = ""; //20100615-kys
  3833. var careinrmdt = ""; //20100615-kys
  3834. fExistFolder(foldernm);
  3835. iviewerIemr.window.javascript.refreshFalse();
  3836. //for(var i = 1; i <= certnodeList.length; i++)
  3837. //{
  3838. signno = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/signno");
  3839. formcd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/formcd");
  3840. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/srcformcd");
  3841. formnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/formnm");
  3842. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/formprogflag");
  3843. recdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/recdt");
  3844. recdd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/recdd");
  3845. trans = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/trans");
  3846. pid = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/pid");
  3847. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/ptnm");
  3848. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/depthngnm");
  3849. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/deptengabbr");
  3850. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/rgstno");
  3851. sa = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/sa");
  3852. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/disporddd");
  3853. orddd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/orddd");
  3854. drid = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/drid");
  3855. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/roomcd");
  3856. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/ordtype");
  3857. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/chosflag");
  3858. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/orddeptcd");
  3859. signflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/signflag");
  3860. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/imgflag");
  3861. langflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/langflag");
  3862. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/formrecdt");
  3863. formrecdt = formrecdt.toString().toDate().getDateFormat("YYYY/MM/DD");
  3864. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/fstrgstdt");
  3865. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/lastupdtdt");
  3866. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/staffconfirmdt");
  3867. //20100628-kys-서울성모병원은 최초작성자(작성일시), 최종작성자(작성일시)->작성자, 작성일시로 표시한다.
  3868. if(getUserInfo("dutplceinstcd") == "012"){
  3869. fstrgstrusrnm = "◈ 작 성 자 : " + model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/fstrgstrusrnm");
  3870. if(fstrgstrusrnm != "")
  3871. lastupdtrusrnm = "◈ 작성일시 : " + fstrgstdt; //수정을 최소화 하기 위해 lastupdtrusrnm를 쓴다.-kys-20100628
  3872. }else{ //서울성모병원외는 최초작성자(작성일시), 최종작성자(작성일시) 그대로 표시.
  3873. // KNUH_20110406_박성호 수정
  3874. //fstrgstrusrnm = "◈ 최초작성자 : " + model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/fstrgstrusrnm");
  3875. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/fstrgstrusrnm");
  3876. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3877. if(fstrgstrusrnm != "")
  3878. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  3879. */
  3880. // KNUH_20110406_박성호 수정
  3881. //lastupdtrusrnm = "◈ 최종작성자 : " + model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/lastupdtrusrnm");
  3882. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/lastupdtrusrnm");
  3883. /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  3884. if(lastupdtrusrnm != "")
  3885. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  3886. */
  3887. }
  3888. erdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/erdt");
  3889. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/ervisittm");
  3890. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/staffnm");
  3891. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/emrrecusrnm");
  3892. indd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/indd");
  3893. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/dschdd");
  3894. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/inorddepthngnm");
  3895. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/dschorddepthngnm");
  3896. mainyn = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/mainyn");
  3897. rowno = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/rowno");
  3898. incnt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/incnt");
  3899. if(incnt != "")
  3900. incnt += " 회차";
  3901. signgenrflag = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/signgenrflag"); //20100615-kys
  3902. careinrmdt = model.getValue("/root/tmpinicert/iniinfo[" + nodeposcnt + "]/careinrmdt"); //20100615-kys
  3903. var ininfo = indd + " / " + inorddepthngnm;
  3904. if(erdt != "")
  3905. ininfo += " (응급실 내원일 : " + erdt + ")";
  3906. var dschinfo = dschdd + " / " + dschorddepthngnm;
  3907. var formnmarr = formnm.split("\n");
  3908. var topformnm = "";
  3909. var botformnm = "";
  3910. if (formnmarr.length == 1)
  3911. {
  3912. topformnm = formnmarr[0];
  3913. }
  3914. else if (formnmarr.length == 2)
  3915. {
  3916. topformnm = formnmarr[0];
  3917. botformnm = formnmarr[1];
  3918. }
  3919. else
  3920. {
  3921. topformnm = formnm;
  3922. }
  3923. //2009-06-02 등록번호 "-" 병원별 제거
  3924. var pidynhcd = model.getValue("/root/init/pidynhcd/hardcd/hardcd");
  3925. if (pidynhcd == "Y")
  3926. {
  3927. for(var k = pid.length; k <= 8; k++)
  3928. {
  3929. if(k < 8){
  3930. pid = "0"+pid;
  3931. }
  3932. }
  3933. var str1 = pid.substr(0, 3);
  3934. var str2 = pid.substr(3, 2);
  3935. var str3 = pid.substr(5, 2);
  3936. var str4 = pid.substr(7, 1);
  3937. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  3938. }
  3939. else
  3940. {
  3941. tmppid = pid;
  3942. }
  3943. if (chosflag == "O" || chosflag == "S")
  3944. {
  3945. wardheader = "진료과 : ";
  3946. }
  3947. else
  3948. {
  3949. wardheader = "병실 : ";
  3950. }
  3951. if (langflag == "KO")
  3952. {
  3953. if (chosflag == "O" || chosflag == "S")
  3954. {
  3955. wardheader = "진료과 : ";
  3956. }
  3957. else
  3958. {
  3959. wardheader = "병실 : ";
  3960. }
  3961. dateheader = "진료기간 : ";
  3962. doctorheader = "주치의 : ";
  3963. printheader = "출력 : ";
  3964. prtndeptnm = getUserInfo("dutplcenm");
  3965. imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + ".jpg"
  3966. pageheader = "페이지 : ";
  3967. }
  3968. else
  3969. {
  3970. if (chosflag == "O" || chosflag == "S")
  3971. {
  3972. wardheader = "Dept : ";
  3973. }
  3974. else
  3975. {
  3976. wardheader = "Room : ";
  3977. }
  3978. dateheader = "Date : ";
  3979. doctorheader = "Doctor : ";
  3980. printheader = "Print date : ";
  3981. prtndeptnm = getUserInfo("deptengnm");
  3982. imgepath = "com/commonweb/images/biglogo" + getUserInfo("dutplceinstcd") + "e.jpg"
  3983. if (prtndeptnm == "" || prtndeptnm == null)
  3984. {
  3985. prtndeptnm = getUserInfo("dutplcenm");
  3986. }
  3987. pageheader = "Page : ";
  3988. }
  3989. if (imgflag == "N")
  3990. {
  3991. if(trans == "")
  3992. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  3993. //2013/02/15 소스머지 시작(주석처리)
  3994. // var ininm = "cmc";
  3995. // switch(srcformcd)
  3996. // {
  3997. // case "0000000001"://외래초진
  3998. // case "0000000002"://외래재진
  3999. // case "0000000004"://입원경과
  4000. // case "0000003325"://DSC기록
  4001. // ininm += "_0000000001.ini";
  4002. // break;
  4003. // case "0000000003"://입원초진
  4004. // //20100615-kys
  4005. // if(signgenrflag == "E"){ //서식발생구분이 응급일경우
  4006. // //타이틀에 [응급]추가
  4007. // topformnm = topformnm + "[응급]";
  4008. // erdt = "";
  4009. // }else if (signgenrflag == "I"){ //서식발생구분이 입원일경우
  4010. // //간호입실시간 추가
  4011. // erdt = "[병동 입실시간] " + careinrmdt; //기존의 erdt변수를 사용한다.
  4012. // }
  4013. //
  4014. // //20100705-kys-입원일에서 간호입실일로 변경
  4015. // var careinrmdd = careinrmdt.substr(0, 10).toDate("YYYY/MM/DD").getDateFormat();
  4016. //
  4017. // if(getUserInfo("dutplceinstcd") == "012" && careinrmdd >= "20100301"){
  4018. // /* 20100623 김달현 - 입원초진 Staff사인 시작일자를 2010.03.01로 변경*/
  4019. // //if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100301"){
  4020. // //if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){//20100309-kys-입원초진 Staff사인 추가 -20100310-사본js와 버젼 맞춘후 반영하기로 함.
  4021. // staffnmheader = "◈ Staff작성 및 확인 :";
  4022. // /*20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  4023. // if(staffnm != "")
  4024. // staffnm += "(" + staffconfirmdt + ")";
  4025. // */
  4026. // emrrecusrnmheader = "";
  4027. // ininm += "_1000000003.ini";
  4028. // }else{
  4029. // ininm += "_0000000003.ini";
  4030. // }
  4031. // break;
  4032. // case "0000000676"://수술기록
  4033. // staffnmheader = "◈ Surgeon :";
  4034. // /* 20100705-kys-모든병원 작성일시를 제외시킨다.
  4035. // if(getUserInfo("dutplceinstcd") != "012"){ //20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  4036. // if(staffnm != "")
  4037. // staffnm += "(" + staffconfirmdt + ")";
  4038. // } */
  4039. //
  4040. // emrrecusrnmheader = "";
  4041. // ininm += "_0000000676.ini";
  4042. // break;
  4043. // case "0000003169"://Brief OP Note
  4044. // staffnmheader = "";
  4045. // ininm += "_0000000676.ini";
  4046. // break;
  4047. // case "0000000680"://입퇴원요약
  4048. // staffnmheader = "◈ Staff작성 및 확인 :";
  4049. // /*
  4050. // if(getUserInfo("dutplceinstcd") != "012"){ //20100628-kys-서울성모병원은 staff작성자만 표시한다.(일시제외)
  4051. // if(staffnm != "")
  4052. // staffnm += "(" + staffconfirmdt + ")";
  4053. // } */
  4054. //
  4055. // emrrecusrnmheader = "◈ 의무기록사 :";
  4056. // ininm += "_0000000680.ini";
  4057. // break;
  4058. // case "0000000679"://응급실기록
  4059. // ininm += "_0000000679.ini";
  4060. // break;
  4061. // case "0000002022"://마취기록지
  4062. // ininm += "_0000002022.ini";
  4063. // break;
  4064. // default:
  4065. // //ininm += "_0000000001.ini";
  4066. // if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y")
  4067. // ininm += "_0000000001.ini";
  4068. // else
  4069. // ininm += ".ini";
  4070. // break;
  4071. // }
  4072. //
  4073. // trans = "<!--% \n %BASE " + getDomain() + "/himed/webapps/ \n %INCLUDE emr/recmngtweb/xrw/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_INORDDEPTHNGNM = " + inorddepthngnm + "\n %-->\n" + trans;
  4074. //2013/02/15 소스머지 끝
  4075. //2013/02/15 소스머지 시작(추가)
  4076. //debugger
  4077. switch(srcformcd)
  4078. {
  4079. //case "0000000001"://외래초진
  4080. //case "0000000002"://외래재진
  4081. //case "0000000004"://입원경과
  4082. case "0000000003"://입원초진
  4083. cover_header = "emr/recmngtweb/html/cover_header2.html";
  4084. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4085. break;
  4086. case "0000000676"://수술기록
  4087. cover_header = "emr/recmngtweb/html/cover_header.html";
  4088. cover_footer = "emr/recmngtweb/html/cover_footer2.html";
  4089. break;
  4090. case "0000000679"://응급실기록
  4091. cover_header = "emr/recmngtweb/html/cover_header3.html";
  4092. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4093. break;
  4094. case "0000000680"://입퇴원요약
  4095. cover_header = "emr/recmngtweb/html/cover_header1.html";
  4096. cover_footer = "emr/recmngtweb/html/cover_footer1.html";
  4097. break;
  4098. case "0000002022"://마취기록지
  4099. cover_header = "emr/recmngtweb/html/cover_header4.html";
  4100. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4101. break;
  4102. //case "0000003325"://DSC기록
  4103. case "0000003169"://Brief OP Note
  4104. cover_header = "emr/recmngtweb/html/cover_header.html";
  4105. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4106. break;
  4107. default:
  4108. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  4109. cover_header = "emr/recmngtweb/html/cover_header10.html";
  4110. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4111. }else{
  4112. cover_header = "emr/recmngtweb/html/cover_header.html";
  4113. cover_footer = "emr/recmngtweb/html/cover_footer.html";
  4114. }
  4115. break;
  4116. }
  4117. trans = "<!--@\n @DOCUMENT_HOME = " + getDomain() + "/himed/webapps/" +
  4118. "\n @COVER_HEADER = " + cover_header +
  4119. "\n @COVER_FOOTER = " + cover_footer +
  4120. "\n @BODY_HEADER = emr/recmngtweb/html/body_header.html" +
  4121. "\n @BODY_FOOTER = emr/recmngtweb/html/body_footer.html" +
  4122. "\n @DEFAULT_FONT = 굴림 " +
  4123. "\n @DEFAULT_PRE_FONT = 굴림 " +
  4124. "\n @DEFAULT_FONT_SIZE = 9pt " +
  4125. "\n @DEFAULT_PRE_FONT_SIZE = 10pt " +
  4126. "\n @FONT_SIZE_OFFSET = 3px " +
  4127. "\n @USE_NU_SIZE_ADJUST = TRUE " +
  4128. "\n @HIDE_TAG = DIV:MTX_*, DIV:STX_* " +
  4129. "\n @VAR_PAT_NUM = " + tmppid +
  4130. "\n @VAR_CLASS = " + ordtype +
  4131. "\n @VAR_CHART_NAME_TOP = " + topformnm +
  4132. "\n @VAR_CHART_NAME_BOTTOM = " + botformnm +
  4133. "\n @VAR_CHART_NAME_LINE = " + formnm +
  4134. "\n @VAR_PAT_AGE_SEX = " + sa +
  4135. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  4136. "\n @VAR_PAT_JUMIN_NO = " + rgstno +
  4137. "\n @VAR_PAT_NAME = " + ptnm +
  4138. "\n @VAR_PRINT_NAME = " + prtnunm +
  4139. "\n @VAR_PRINT_DEPT = " + prtndeptnm +
  4140. "\n @VAR_WARD_HEAD = " + wardheader + roomcd +
  4141. "\n @VAR_DATE_HEADER = " + dateheader + disporddd +
  4142. "\n @VAR_DOCTOR_HEADER = " + doctorheader + drid +
  4143. "\n @VAR_PRINT_HEADER = " + printheader + prtdt +
  4144. "\n @SYS_PAGE_HEADER = " + pageheader +
  4145. "\n @VAR_HOSP_IMG = " + imgepath +
  4146. "\n @VAR_ORDDATE = " + formrecdt +
  4147. "\n @VAR_ORDDEPT = " + depthngnm +
  4148. "\n @VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm +
  4149. "\n @VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm +
  4150. "\n @VAR_ERDT = " + erdt +
  4151. "\n @VAR_ERVISITTM = " + ervisittm +
  4152. "\n @VAR_STAFFNM_HEADER = " + staffnmheader +
  4153. "\n @VAR_STAFFNM = " + staffnm +
  4154. "\n @VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader +
  4155. "\n @VAR_EMRRECUSRNM = " + emrrecusrnm +
  4156. "\n @VAR_ININFO = " + ininfo +
  4157. "\n @VAR_DSCHINFO = " + dschinfo +
  4158. "\n @VAR_INCNT = " + incnt +
  4159. "\n @VAR_INORDDEPTHNGNM = " + inorddepthngnm +
  4160. "\n @VAR_RECUSERID = " + fstrgstrusrnm +
  4161. "\n @VAR_REALRECDT = " + erdt +
  4162. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  4163. "\n @VAR_SURGEON = " + surgeon +
  4164. "\n @OUTPUT_MAGNIFICATION = 1 " +
  4165. "\n@-->\n" + trans + "\n";
  4166. //2013/02/15 소스머지 끝
  4167. var fso = new ActiveXObject("Scripting.FileSystemObject");
  4168. var a = fso.CreateTextFile(foldernm + "\\" + signno + "_" + formcd + ".HTML", true, true);
  4169. a.WriteLine(trans);
  4170. //a.Write(trans);
  4171. a.Close();
  4172. emrpath = foldernm + "\\" + signno + "_" + formcd + ".HTML|";
  4173. //emrorddate += orddd + "|";
  4174. emrorddate = recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  4175. emrformnm = formnm + "|";
  4176. emrformcd = formcd + "|";
  4177. emrdeptnm = deptengabbr + "|";
  4178. emrdeptcd = orddeptcd + "|";
  4179. emrpage = "1|";
  4180. emrhiddenmsg = formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  4181. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  4182. recrowno = rowno;
  4183. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  4184. var chartinfo = "";
  4185. chartinfo = "E|" + emrpath + emrorddate + emrformcd + emrformnm + emrdeptcd + emrdeptnm;
  4186. model.makeValue("/root/send/iemr/treatno", "");
  4187. model.makeValue("/root/send/iemr/docucd", "");
  4188. model.makeValue("/root/send/iemr/instcd", model.getValue("/root/init/env/instcd"));
  4189. var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  4190. iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, emrhiddenmsg, recrowno);
  4191. //iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, emrhiddenmsg);
  4192. }
  4193. else
  4194. {
  4195. tmptreatno = signno + ",";
  4196. tmpiformcd = formcd + ",";
  4197. emrpath = "*|";
  4198. emrorddate = "*|";
  4199. emrformnm = "*|";
  4200. emrformcd = "*|";
  4201. emrdeptnm = "*|";
  4202. emrdeptcd = "*|";
  4203. emrpage = "*|";
  4204. emrhiddenmsg = "*|";
  4205. recrowno = rowno;
  4206. model.makeValue("/root/imgrec/iemr/treatno", signno);
  4207. model.makeValue("/root/imgrec/iemr/docucd", formcd);
  4208. model.makeValue("/root/imgrec/iemr/instcd", model.getValue("/root/init/env/instcd"));
  4209. var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  4210. var chartinfo;
  4211. chartinfo = "I";
  4212. var hiddenmsg;
  4213. hiddenmsg = "I";
  4214. iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, hiddenmsg, recrowno);
  4215. //iviewerIemr.window.javascript.appendChart(iemrNode, chartinfo, hiddenmsg);
  4216. }
  4217. /*
  4218. if (certnodeList.length > 1 && certnodeList.length > nodeposcnt)
  4219. {
  4220. multirecyn = "Y";
  4221. }
  4222. else
  4223. {
  4224. multirecyn = "N";
  4225. nodeposcnt = 1;
  4226. }*/
  4227. //}
  4228. iviewerIemr.window.javascript.refreshTrue();
  4229. }
  4230. /**
  4231. * @desc : 북마크 등록 클릭시 모달창 호출
  4232. * @id :
  4233. * @event : DOMActivate
  4234. * @return : void
  4235. * @authur : 강지훈
  4236. */
  4237. function fSetBookmark()
  4238. {
  4239. sysf_trace("***** fSetBookmark() *****");
  4240. var ViewMode;
  4241. ViewMode = grup_right.iviewerIemr.hidden_currentViewMode;
  4242. var appcopykey = grup_right.iviewerIemr.SetMarkPage(ViewMode); //영상뷰어에서의 리턴값
  4243. var selPid = ds_patinfolist.getColumn(0, "pid");
  4244. sysf_trace("***** selPid : " + selPid + " appcopykey : " + appcopykey + " *****");
  4245. if(!utlf_isNull(selPid)){
  4246. if(!utlf_isNull(appcopykey)){
  4247. appcopykey = appcopykey.getTrim();
  4248. var copykey = appcopykey.split("|");
  4249. var appkeyArr = "";
  4250. var imageCnt = 0;
  4251. //1차적으로 영상EMR만 등록가능. 선택된 영상EMR의 갯수를 파악한다.
  4252. for(var i = 0; i < copykey.length; i++){
  4253. appkeyArr = copykey[i].split("▦");
  4254. reckind = appkeyArr[0];
  4255. if (reckind == "I"){
  4256. imageCnt++;
  4257. }
  4258. }
  4259. if(imageCnt > 0){ //선택된 이미지중에 영상EMR이 있을경우
  4260. frmf_setParameter("SPMRI01500_reckey", appcopykey);
  4261. frmf_setParameter("SPMRI01500_setflag", "A");
  4262. frmf_modal("SPMRI01500", "SPMRI01500", null, null, null, null, null, null, null, null, null, null, "M");
  4263. //북마크 treeview 재조회
  4264. fGetTreeView();
  4265. }
  4266. else{
  4267. sysf_messageBox("현재 영상EMR만 등록 ","I006");
  4268. return;
  4269. }
  4270. }
  4271. else{
  4272. frmf_setParameter("SPMRI01500_reckey", appcopykey);
  4273. frmf_setParameter("SPMRI01500_setflag", "A");
  4274. frmf_modal("SPMRI01500", "SPMRI01500", null, null, null, null, null, null, null, null, null, null, "M");
  4275. var ViewMode = grup_right.iviewerIemr.hidden_currentViewMode;
  4276. if (utlf_isNull(ViewMode) || ViewMode != "ChartView")
  4277. {
  4278. sysf_messageBox("선택된 기록이","I004");
  4279. return;
  4280. }
  4281. }
  4282. }
  4283. else{
  4284. sysf_messageBox("선택된 환자가","I004");
  4285. grup_left.switch1.tabindex = 0;
  4286. grup_left.btn_all.setSelectStatus(true);
  4287. grup_left.roundrect2.ipt_pid.setFocus();
  4288. return;
  4289. }
  4290. }
  4291. /**
  4292. * @group :
  4293. * @ver :
  4294. * @by : 2009-10-16 오전 10:13:04 강지훈
  4295. * @---------------------------------------------------
  4296. * @type : function
  4297. * @access : public
  4298. * @desc : 트리뷰 조회
  4299. * @param :
  4300. * @return :
  4301. * @---------------------------------------------------
  4302. */
  4303. function fGetTreeView(){
  4304. //북마크 트리뷰는 환자가 조회되어있어야만 조회된다. 환자가없을경우 전체창 모드
  4305. var selPid = model.getValue("/root/main/patinfo/patinfolist/pid");
  4306. if(selPid == ""){
  4307. messageBox("선택된 환자가","I004");
  4308. model.toggle("grd");
  4309. btn_all.selected = true;
  4310. model.setFocus("ipt_pid");
  4311. return;
  4312. }
  4313. else{
  4314. //북마크가 선택되어야만 조회를 한다.
  4315. var selIndx = switch1.selectedIndex;
  4316. var bmkAll = chk_allbmk.value;
  4317. if(bmkAll != "A"){
  4318. bmkAll = "S";
  4319. }
  4320. if(selIndx == 1){
  4321. //Instance초기화
  4322. model.removenode("/root/main/treeview");
  4323. model.makeNode("/root/main/treeview");
  4324. //send Node 설정
  4325. model.removenode("/root/send/bmkpara");
  4326. model.makeValue("/root/send/bmkpara/pid", selPid);
  4327. model.makeValue("/root/send/bmkpara/bmkall", bmkAll);
  4328. if(submit("TRMRI01500")){
  4329. trv_bookmark.rebuild();
  4330. //2010-02-23 오후 9:40:13 강지훈 수정 : 외래요약지가있을경우 자기과의 외래요약지가 자동 선택된다.
  4331. var nodelist = instance1.selectNodes("/root/main/treeview/item");
  4332. var sUserDeptcd = getUserInfo("dutplcecd");
  4333. //2010-03-09 이환석 : 내과 분과들 외래요약지 북마크에서 자동선택
  4334. mmbfGetHardCodeInfo("/root/send/reqdata", "/root/init/mdsupdept", 9931);
  4335. //하드코드 테이블에 있는
  4336. if(model.getValue("/root/init/mdsupdept/hardcd[hardcd='" + sUserDeptcd + "']/hardcd")) {
  4337. submit("TRMRI00410", "", "/root/init/mdsupdept/hardcd[hardcd='" + sUserDeptcd + "']/hardcd", "/root/tmp/ordsupdeptcd");
  4338. var ordSupDeptcd = model.getValue("/root/tmp/ordsupdeptcd/ordsupdeptcd");
  4339. sUserDeptcd = ordSupDeptcd;
  4340. }
  4341. var deptNodeIndx = 0;
  4342. if(nodelist.length > 0){
  4343. for (var i = 0; i < nodelist.length; i++){
  4344. var selNode = nodelist.item(i);
  4345. var markdeptcd = selNode.selectsinglenode("markdeptcd").text;
  4346. if(markdeptcd == sUserDeptcd){
  4347. deptNodeIndx = i;
  4348. break;
  4349. }
  4350. }
  4351. trv_bookmark.select(i);
  4352. fGetBookmarkItem();
  4353. }
  4354. }
  4355. }
  4356. }
  4357. }
  4358. /**
  4359. * @group :
  4360. * @ver :
  4361. * @by : 2009-10-16 오전 10:13:04 강지훈
  4362. * @---------------------------------------------------
  4363. * @type : function
  4364. * @access : public
  4365. * @desc : 북마크 항목을 더블클릭한다.
  4366. * @param :
  4367. * @return :
  4368. * @---------------------------------------------------
  4369. */
  4370. function fGetBookmarkItem(){
  4371. var selFolder = new SELFOLDER();
  4372. itemno = selFolder.itemno;
  4373. linkflag = selFolder.linkflag;
  4374. if(linkflag == "Y"){
  4375. model.removeNode("/root/send/bookmark");
  4376. model.makeValue("/root/send/bookmark/itemno", itemno);
  4377. submit("TRMRI00408");
  4378. var recinfos = instance1.selectNodes("/root/tmp/recinfos/recinfo");
  4379. if(recinfos.length > 0){
  4380. //초기화
  4381. iviewerIemr.window.javascript.cleanViewer();
  4382. iviewerIemr.window.javascript.refreshFalse();
  4383. model.removenode("/root/tmp/imgrec");
  4384. //통합기록조회 환자정보 셋팅
  4385. var selPid = "";
  4386. //북마크에 등록된 정보를 가져온다.
  4387. for(var i = 0 ; i < recinfos.length; i++){
  4388. var recinfo = recinfos.item(i);
  4389. var emrflag = recinfo.selectSingleNode("emrflag").text;
  4390. //영상일때
  4391. if(emrflag == "I"){
  4392. var nodePos = i+1;
  4393. var treatno = recinfo.selectSingleNode("recno").text;
  4394. var docucd = recinfo.selectSingleNode("formcd").text;
  4395. var pageno = recinfo.selectSingleNode("pageno").text;
  4396. var pid = recinfo.selectSingleNode("pid").text;
  4397. selPid = pid;
  4398. model.makeValue("/root/tmp/imgrec/iemr[" + nodePos + "]/treatno", parseInt(treatno));
  4399. model.makeValue("/root/tmp/imgrec/iemr[" + nodePos + "]/pid", pid);
  4400. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/orddeptcd");
  4401. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/indd");
  4402. model.makeValue("/root/tmp/imgrec/iemr[" + nodePos + "]/docucd", docucd);
  4403. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/ioflag");
  4404. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/cmc_cretno");
  4405. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/cmc_spcid");
  4406. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/cmc_orddate");
  4407. model.makeNode("/root/tmp/imgrec/iemr[" + nodePos + "]/cmc_orderseqno");
  4408. model.makeValue("/root/tmp/imgrec/iemr[" + nodePos + "]/pageno", parseInt(pageno));
  4409. }
  4410. }
  4411. //통합기록조회 환자정보입력란 Setting
  4412. if(chk_allbmk.value == "A"){
  4413. ipt_pid.value = selPid;
  4414. chkPidRtn = fPidKeyPress();
  4415. }
  4416. var iemrNode = instance1.selectSingleNode("/root/tmp/imgrec");
  4417. //chart추가
  4418. var chartinfo;
  4419. chartinfo = "I";
  4420. var hiddenmsg;
  4421. hiddenmsg = "I";
  4422. iviewerIemr.window.javascript.append_BmarkChart(iemrNode, chartinfo, hiddenmsg);
  4423. iviewerIemr.window.javascript.refreshTrue();
  4424. //ViewMode를 여러페이지 보기로 Setting
  4425. //lyj
  4426. // var ViewMode;
  4427. // ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  4428. // if (ViewMode == null || ViewMode == "" || ViewMode != "ChartView")
  4429. // {
  4430. // //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  4431. // if (grup_paging.visible) {
  4432. // iviewerIemr.window.javascript.setupChart("ThumbView");
  4433. // } else {
  4434. // iviewerIemr.window.javascript.setupChart("ChartView");
  4435. // }
  4436. // }
  4437. }
  4438. else{
  4439. messageBox("등록된 기록이 ", "I004");
  4440. return;
  4441. }
  4442. }
  4443. }
  4444. /**
  4445. * @group :
  4446. * @ver :
  4447. * @by : 2009-10-16 오전 10:13:04 강지훈
  4448. * @---------------------------------------------------
  4449. * @type : function
  4450. * @access : public
  4451. * @desc : 선택한 폴더의 정보
  4452. * @param :
  4453. * @return :
  4454. * @---------------------------------------------------
  4455. */
  4456. function SELFOLDER(){
  4457. var item = trv_bookmark.item(trv_bookmark.selectedIndex);
  4458. if(item == null) return;
  4459. var currow = item.index + 1;
  4460. this.level = model.getValue("/root/main/treeview/item["+currow+"]/level");
  4461. this.itemno = model.getValue("/root/main/treeview/item["+currow+"]/itemno");
  4462. this.supitemno = model.getValue("/root/main/treeview/item["+currow+"]/supitemno");
  4463. this.itemnm = model.getValue("/root/main/treeview/item["+currow+"]/itemnm");
  4464. this.linkflag = model.getValue("/root/main/treeview/item["+currow+"]/linkflag");
  4465. this.pid = model.getValue("/root/main/treeview/item["+currow+"]/pid");
  4466. }
  4467. /**
  4468. * @group :
  4469. * @ver :
  4470. * @by : 2009-10-16 오전 10:13:04 강지훈
  4471. * @---------------------------------------------------
  4472. * @type : function
  4473. * @access : public
  4474. * @desc : 폴더를 수정함
  4475. * @param :
  4476. * @return :
  4477. * @---------------------------------------------------
  4478. */
  4479. function fModiFolder(){
  4480. setParameter("SPMRI01500_setflag", "M");
  4481. open("SPMRI01500");
  4482. fGetTreeView();
  4483. }
  4484. /**
  4485. * @group :
  4486. * @ver :
  4487. * @by : 2009-10-16 오전 10:13:04 강지훈
  4488. * @---------------------------------------------------
  4489. * @type : function
  4490. * @access : public
  4491. * @desc : 북마크에 해당환자 기록이 있으면 북마크 탭 색을 변경.
  4492. * @param :
  4493. * @return :
  4494. * @---------------------------------------------------
  4495. */
  4496. function fChkBookmark(){
  4497. var selPid = ds_patinfolist.getColumn(0, "pid");
  4498. var objColInfo = new Array();
  4499. objColInfo.push({col: "pid", type:"string", size:256});
  4500. objColInfo.push({col: "instcd", type:"string", size:256});
  4501. dsf_createDs("ds_reqGetChkItem", objColInfo);
  4502. var nRow = ds_reqGetChkItem.addRow();
  4503. ds_reqGetChkItem.setColumn(nRow, "pid", selPid);
  4504. objColInfo = new Array();
  4505. objColInfo.push({col: "itemno", type:"string", size:256});
  4506. dsf_createDs("ds_getChkItem", objColInfo);
  4507. var oParam = {};
  4508. oParam.id = "TRMRI00409";
  4509. oParam.service = "recmngtapp.SystView";
  4510. oParam.method = "reqGetChkItem";
  4511. oParam.inds = "req=" + "ds_reqGetChkItem";
  4512. oParam.outds = "ds_getChkItem" + "=itemno";
  4513. oParam.async = false;
  4514. oParam.callback = "cf_TRMRI00409"
  4515. tranf_submit(oParam);
  4516. }
  4517. function cf_TRMRI00409(sSvcId, nErrorCode, sErrorMsg){
  4518. arErrorCode.push(sSvcId, nErrorCode);
  4519. sysf_trace("***** cf_TRMRI00409 *****");
  4520. if(nErrorCode > -1){
  4521. if(ds_getChkItem.rowcount > 0){
  4522. grup_left.btn_mark.style.color = "#ff0000";
  4523. }
  4524. else{
  4525. grup_left.btn_mark.style.color = "default";
  4526. }
  4527. }
  4528. dsf_deleteDs("ds_reqGetChkItem");
  4529. dsf_deleteDs("ds_getChkItem");
  4530. }
  4531. function fUpKeyBtn()
  4532. {
  4533. if ( (grd_pathist.row-1) >= grd_pathist.fixedRows )
  4534. {
  4535. fGetRecMidIndx(grd_pathist.row-1);
  4536. grd_pathist.row = grd_pathist.row - 1;
  4537. }
  4538. }
  4539. function fDownKeyBtn()
  4540. {
  4541. if ( (grd_pathist.row+1) != grd_pathist.rows )
  4542. {
  4543. fGetRecMidIndx(grd_pathist.row+1);
  4544. grd_pathist.row = grd_pathist.row + 1;
  4545. }
  4546. }
  4547. /**
  4548. * @group :
  4549. * @ver :
  4550. * @by : 2009-10-30 주희경
  4551. * @---------------------------------------------------
  4552. * @type : function
  4553. * @access : public
  4554. * @desc : xrw화면내에서 방향키(↑ , ↓) 이벤트 발생 시 다음/이전의 수진이력 조회
  4555. * @param :
  4556. * @return :
  4557. * @---------------------------------------------------
  4558. */
  4559. function onkeydown()
  4560. {
  4561. /*
  4562. if (event.keyCode == 38) //↑
  4563. {
  4564. if ( (grd_pathist.row-1) >= grd_pathist.fixedRows )
  4565. {
  4566. fGetRecMidIndx(grd_pathist.row-1);
  4567. grd_pathist.row = grd_pathist.row - 1;
  4568. }
  4569. }
  4570. else if ( event.keyCode == 40 ) //↓
  4571. {
  4572. if ( (grd_pathist.row+1) != grd_pathist.rows )
  4573. {
  4574. fGetRecMidIndx(grd_pathist.row+1);
  4575. grd_pathist.row = grd_pathist.row + 1;
  4576. }
  4577. }
  4578. else {
  4579. event.preventDefault();
  4580. }
  4581. event.stopPropagation();*/
  4582. }
  4583. /**
  4584. * @group :
  4585. * @ver :
  4586. * @by : 2010-02-17 박종훈
  4587. * @---------------------------------------------------
  4588. * @type : function
  4589. * @access : public
  4590. * @desc : 수진이력별, 진료과별 라디옵튼 선택
  4591. * @param :
  4592. * @return :
  4593. * @---------------------------------------------------
  4594. */
  4595. function fSelectOption()
  4596. {
  4597. /* tapindex 동작 처리는 수정 필요!*/
  4598. grup_left.rdo_option1.updateToDataset();
  4599. var option = ds_init_env.getColumn(0, "option");
  4600. sysf_trace("***** fSelectoption() option : " + option + " *****");
  4601. // var tCnt = grup_left.btn_sw.getTabpageCount();
  4602. // var oldIdx = grup_left.btn_sw.tabindex;
  4603. // var oldTapnm = grup_left.btn_sw.components[oldIdx].name;
  4604. //sysf_trace(grup_left.btn_sw.components["btn_out"]);
  4605. if (option == "H")
  4606. {
  4607. //model.toggle ("grd");
  4608. grup_left.switch1.tabindex = 0;
  4609. bool_viewflag.position.y = "478";
  4610. bool_viewflag.position.x = "313";
  4611. grup_left.btn_in.text = "입원";
  4612. grup_left.btn_in.position.left = 246;
  4613. grup_left.btn_in.position.right = 293;
  4614. // btn_in.attribute("width") = "47";
  4615. // btn_in.attribute("left") = "246";
  4616. //
  4617. // btn_out.attribute("width") = "47";
  4618. // btn_out.attribute("left") = "200";
  4619. grup_left.btn_out.text = "외래";
  4620. grup_left.btn_out.position.left = 200;
  4621. grup_left.btn_out.position.right = 247;
  4622. grup_left.btn_all.visible = true;
  4623. grup_left.btn_er.visible = true;
  4624. // if( utlf_isNull(grup_left.btn_sw.components["btn_all"]) ) grup_left.btn_sw.insertTabpage("btn_all", tCnt == 5 ? 1 : 0, "", "전체");
  4625. // if( utlf_isNull(grup_left.btn_sw.components["btn_er"]) ) grup_left.btn_sw.insertTabpage("btn_er", tCnt == 5 ? 4 : 3, "", "응급");
  4626. // btn_in.visible = true;
  4627. // btn_all.visible = true;
  4628. // btn_er.visible = true;
  4629. grup_left.caption2.text = "수진이력";
  4630. grup_left.roundrect2.cmb_dept.enable = true;
  4631. fSetGridSize("one");
  4632. var e = new ClickEventInfo;
  4633. // grup_left.onchanged.fireEvent(grup_left.btn_sw, e);
  4634. //
  4635. if(grup_left.btn_all.getSelectStatus())
  4636. {
  4637. grup_left.btn_all.onclick.fireEvent(grup_left.btn_all, e);
  4638. }
  4639. else if(grup_left.btn_out.getSelectStatus())
  4640. {
  4641. grup_left.btn_out.onclick.fireEvent(grup_left.btn_out, e);
  4642. }
  4643. else if(grup_left.btn_in.getSelectStatus())
  4644. {
  4645. grup_left.btn_in.onclick.fireEvent(grup_left.btn_in, e);
  4646. }
  4647. else if(grup_left.btn_er.getSelectStatus())
  4648. {
  4649. grup_left.btn_er.onclick.fireEvent(grup_left.btn_er, e);
  4650. }
  4651. else if(grup_left.btn_mark.getSelectStatus())
  4652. {
  4653. grup_left.btn_mark.onclick.fireEvent(grup_left.btn_mark, e);
  4654. }
  4655. }else if (option == "D"){
  4656. grup_left.switch1.tabindex = 0; //model.toggle ("grd");
  4657. bool_viewflag.position.y = "478";
  4658. bool_viewflag.position.x = "313";
  4659. // btn_all.visible = true;
  4660. // btn_in.value = "입원";
  4661. // btn_in.attribute("left") = "246";
  4662. // btn_in.attribute("width") = "47";
  4663. // btn_out.attribute("width") = "47";
  4664. // btn_out.attribute("left") = "200";
  4665. // btn_out.value = "외래";
  4666. // btn_in.visible = true;
  4667. // btn_out.visible = true;
  4668. // btn_er.visible = true;
  4669. grup_left.btn_in.text = "입원";
  4670. grup_left.btn_in.position.left = 246;
  4671. grup_left.btn_in.position.right = 293;
  4672. grup_left.btn_out.position.left = 200;
  4673. grup_left.btn_out.position.right = 247;
  4674. grup_left.btn_out.text = "외래";
  4675. grup_left.btn_all.visible = true;
  4676. grup_left.btn_er.visible = true;
  4677. // if( utlf_isNull(grup_left.btn_sw.components["btn_all"]) ) grup_left.btn_sw.insertTabpage("btn_all", tCnt == 5 ? 1 : 0, "", "전체");
  4678. // if( utlf_isNull(grup_left.btn_sw.components["btn_er"]) ) grup_left.btn_sw.insertTabpage("btn_er", tCnt == 5 ? 4 : 3, "", "응급");
  4679. grup_left.caption2.text = "진료과";
  4680. grup_left.roundrect2.cmb_dept.enable = false;
  4681. fSetGridSize("two");
  4682. grup_right.iviewerIemr.cleanViewer();
  4683. ds_init_etc.setColumn(0, "totcnt", "");
  4684. dsf_deleteDs("ds_send");
  4685. var objColInfo = new Array();
  4686. objColInfo.push([{col: "instcd", type:"string", size:256}]);
  4687. dsf_createDs("ds_send",objColInfo);
  4688. var nRow = ds_send.addRow();
  4689. ds_send.setColumn(nRow, ds_init_env.getColumn(0, "instcd"));
  4690. ds_grd_pathist.clearData();
  4691. ds_grd_midindx.clearData();
  4692. ds_init_accresn.clearData();
  4693. ds_init_prtresn.clearData();
  4694. ds_init_etc.setColumn(0, "itemindxseq", "");
  4695. ds_init_etc.setColumn(0, "midreccnt", "");
  4696. ds_init_etc.setColumn(0, "reccurpos", "");
  4697. var sUserDeptcd = sysf_getUserInfo("dutplcecd");
  4698. var defdept = ds_envinfo.lookup("qestcd", "021", "answcnt");
  4699. if (utlf_isNull(defdept))
  4700. defdept = "002";
  4701. //해당과, 전체과 환경설정
  4702. if (defdept == "002"){
  4703. ds_init_etc.setColumn(0, "orddept", "ALL");
  4704. ds_init_cmb_dept.rowposition = 0;
  4705. ds_init_cmb_dept.setColumn(0, "bgchk", "true");
  4706. }else if (defdept == "001"){
  4707. var itrgtNodeCnt = ds_init_cmb_dept.getCaseCount("deptcd == '"+ sUserDeptcd +"");
  4708. if (itrgtNodeCnt > 0){
  4709. ds_init_etc.setColumn(0, "orddept", sUserDeptcd);
  4710. var row = ds_init_cmb_dept.findRowAs("deptcd", sUserDeptcd);
  4711. ds_init_cmb_dept.rowposition = row;
  4712. ds_init_cmb_dept.setColumn(row, "bgchk", "true");
  4713. }else{
  4714. ds_init_etc.setColumn(0, "orddept", "ALL");
  4715. ds_init_cmb_dept.rowposition = 0;
  4716. ds_init_cmb_dept.setColumn(0, "bgchk", "true");
  4717. }
  4718. }else{
  4719. ds_init_etc.setColumn(0, "orddept", "ALL");
  4720. ds_init_cmb_dept.rowposition = 0;
  4721. ds_init_cmb_dept.setColumn(0, "bgchk", "true");
  4722. }
  4723. fDbclickDept();
  4724. }else if(option == "F"){
  4725. grup_left.caption2.text = "기록지";
  4726. grup_left.roundrect2.cmb_dept.enable = true;
  4727. // if( !utlf_isNull(grup_left.btn_sw.components["btn_er"]) ) grup_left.btn_sw.removeTabpage(tCnt == 5 ? 4 : 3);
  4728. // if( !utlf_isNull(grup_left.btn_sw.components["btn_all"]) ) grup_left.btn_sw.removeTabpage(tCnt == 5 ? 1 : 0);
  4729. grup_left.btn_in.text = "입원/응급/DSC";
  4730. grup_left.btn_out.text = "외래/건진";
  4731. grup_left.btn_er.visible = false;
  4732. grup_left.btn_all.visible = false;
  4733. grup_left.btn_out.position.left = 145;
  4734. grup_left.btn_out.position.right = 220;
  4735. grup_left.btn_in.position.left = 220;
  4736. grup_left.btn_in.position.right = 340;
  4737. // btn_er.visible = false;
  4738. // btn_all.visible = false;
  4739. // btn_out.attribute("left") = "145";
  4740. // btn_out.attribute("width") = "75";
  4741. // btn_out.value = "외래/건진";
  4742. // btn_in.value = "입원/응급/DSC";
  4743. // btn_in.attribute("width") = "120";
  4744. // btn_in.attribute("left") = "220";
  4745. grup_left.switch1.tabindex = 2;//model.toggle ("rec");
  4746. bool_viewflag.position.y = "216";
  4747. bool_viewflag.position.x = "210";
  4748. if( grup_left.btn_out.getSelectStatus() != true && grup_left.btn_in.getSelectStatus() != true ){
  4749. grup_left.btn_out.setSelectStatus(true);
  4750. }
  4751. // 기록지별 조회를 위한 Combo박스에 들어갈 서식 조회 2014.02.19
  4752. dsf_deleteDs("ds_send_recsrch");
  4753. var objColInfo = new Array();
  4754. objColInfo.push({col: "ordtype", type:"string", size:256});
  4755. objColInfo.push({col: "instcd", type:"string", size:256});
  4756. objColInfo.push({col: "hardcd", type:"string", size:256});
  4757. dsf_createDs("ds_send_recsrch", objColInfo);
  4758. var nRow = ds_send_recsrch.addRow();
  4759. if( grup_left.btn_out.getSelectStatus() )
  4760. {
  4761. ds_send_recsrch.setColumn(nRow, "ordtype", "O");
  4762. }
  4763. else if(grup_left.btn_in.getSelectStatus())
  4764. {
  4765. ds_send_recsrch.setColumn(nRow, "ordtype", "I");
  4766. }
  4767. ds_send_recsrch.setColumn(nRow, "instcd", sysf_getUserInfo("dutplceinstcd"));
  4768. ds_send_recsrch.setColumn(nRow, "hardcd", "5627");
  4769. var oParam = {};
  4770. oParam.id = "TRMRI08115";
  4771. oParam.service = "recmngtapp.IntegrityRec";
  4772. oParam.method = "reqGetHardCdList";
  4773. oParam.inds = "req=" + "ds_send_recsrch";
  4774. oParam.outds = "ds_init_cmb_recformcd" + "=hardcdlist";
  4775. oParam.async = false;
  4776. //oParam.callback = "cf_TRMRI08115"
  4777. tranf_submit(oParam); //submit("TRMRI08115");
  4778. // sysf_trace(ds_init_cmb_recformcd.saveXML());
  4779. }else{
  4780. grup_left.roundrect2.cmb_dept.enable = true;
  4781. }
  4782. }
  4783. /**
  4784. * @group :
  4785. * @ver :
  4786. * @by : 2010-02-18 박종훈
  4787. * @---------------------------------------------------
  4788. * @type : function
  4789. * @access : public
  4790. * @desc : 부서 그리드 더블클릭
  4791. * @param :
  4792. * @return :
  4793. * @---------------------------------------------------
  4794. */
  4795. function fDbclickDept()
  4796. {
  4797. sysf_trace("***** fDbclickDept *****");
  4798. var row = ds_init_cmb_dept.rowposition;
  4799. var deptcd = ds_init_cmb_dept.getColumn(row, "deptcd");
  4800. var privateflag = frmf_getParameter("SMMRI03000_privateflag");
  4801. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  4802. var breakyn = frmf_getParameter("SMMRI08000_breakyn");
  4803. sysf_trace( openerid + " : " + breakyn + " : " + row);
  4804. if ( openerid != "SMMRI08000" )
  4805. {
  4806. breakyn = "false";
  4807. }
  4808. else //열람신청에서 분기 -20120129 이윤주
  4809. {
  4810. var deptengabbr = ds_init_cmb_dept.getColumn(row, "deptengabbr");
  4811. var prntdeptengabbr = opener.frmf_getParameter("SMMRI00400_param_prntdeptengabbr");
  4812. var prntidx = prntdeptengabbr.indexOf(deptengabbr);
  4813. if (prntidx > -1) {
  4814. btn_prnt.visible = true; //출력버튼 보임
  4815. if(privateflag == "1"){
  4816. txt_private.visible = false;
  4817. }
  4818. }else {
  4819. btn_prnt.visible = false;
  4820. txt_private.visible = false;
  4821. }
  4822. }
  4823. if ( row > -1 && breakyn == "false" )
  4824. {
  4825. for( var i=0; i<ds_init_cmb_dept.rowcount; i++){
  4826. if( i == row ) ds_init_cmb_dept.setColumn( i, "bgchk", "true");
  4827. else ds_init_cmb_dept.setColumn( i, "bgchk", "false");
  4828. }
  4829. ds_init_etc.setColumn(0, "orddept", deptcd);
  4830. fGetPatOrdHist(null);
  4831. var option = ds_envinfo.lookup("qestcd", "020", "answcnt");
  4832. if (option == "")
  4833. option = "001";
  4834. var tab = ds_envinfo.lookup("qestcd", "022", "answcnt");
  4835. if (tab == "")
  4836. tab = "001";
  4837. //수진이력, 진료과별, 서식지별(미개발)에 따른 조건 설정
  4838. if(option == "002" && tab != "005") //북마크가 아닌경우에 자동 조회
  4839. {
  4840. if (ds_grd_pathist.rowcount > 0)
  4841. {
  4842. ds_grd_pathist.rowposition = 0;
  4843. fGetRecMidIndx();
  4844. }
  4845. }
  4846. }
  4847. else if (breakyn == "false")
  4848. {
  4849. sysf_messageBox("환자의 진료과를 ", "C002");
  4850. return;
  4851. }
  4852. }
  4853. /**
  4854. * @group :
  4855. * @ver :
  4856. * @by : 2010-02-18 박종훈
  4857. * @---------------------------------------------------
  4858. * @type : function
  4859. * @access : public
  4860. * @desc : 메세지 처리
  4861. * @param :
  4862. * @return :
  4863. * @---------------------------------------------------
  4864. */
  4865. function fShowMessage(msg)
  4866. {
  4867. sysf_trace("***** fShowMessage(msg) : " + msg + " *****");
  4868. frmf_setParameter("msg", msg);
  4869. frmf_modal("SPMRI03300", "SPMRI03300", null, null, sysf_getCurrentMonitorNumber(), 1000, 700, null, null, "width=295,height=125,title=false,resize=false", null, null, "M");
  4870. //modal("SPMRI03300", getCurrentMonitorNumber(), 1000, 700, "", "", "","width:295px; height:125px; caption:hidden; resize:false;");
  4871. //grup_right.iviewerIemr.objChartView.setFocus(); // jw.choe objChartView object not exist!!!
  4872. }
  4873. /**
  4874. * 서 식 Header & Footer 정의 2013.07.08 CYW
  4875. * @param srcformcd
  4876. * @returns
  4877. */
  4878. function MakerHeaderNFooter( srcformcd , formprogflag , mainyn ){
  4879. var instcd = model.getValue("/root/init/env/instcd");
  4880. var formcd = srcformcd; // 서식코드
  4881. var cover_header = "";
  4882. var cover_header_start = "";
  4883. var cover_header_txt = "";
  4884. var cover_header_end = "";
  4885. var cover_footer = "";
  4886. var cover_footer_start = "";
  4887. var cover_footer_txt = "";
  4888. var cover_footer_end = "";
  4889. var body_header = "";
  4890. var body_footer = "";
  4891. var logoImg031 = getDomain() + "/himed/webapps/com/commonweb/images/logo_lctech_031.png";
  4892. var logoImg032 = getDomain() + "/himed/webapps/com/commonweb/images/logo_lctech_032.png";
  4893. //var logoImg032 = getDomain() + "/himed/webapps/com/commonweb/images/logo032.gif";
  4894. var logo = "";
  4895. var ex = "\n<TD style='width: 50%; text-align: left; font-weight: bold;'></TD>";
  4896. if( instcd == "031" ) {
  4897. logo = logoImg031;
  4898. }else if( instcd == "032" ){
  4899. logo = logoImg032;
  4900. }else{
  4901. logo = logoImg031;
  4902. }
  4903. // Cover Header 부분 ---------------------------------------------------------------------------------------------------
  4904. cover_header_start ="<HTML> " +
  4905. "\n<BODY style='margin: 0;'> " +
  4906. "\n<TABLE cellspacing='0' width='100%'> " +
  4907. "\n<TR> " +
  4908. "\n <TD width='65%'> " +
  4909. "\n <TABLE style='width=100%; font-family: 맑은 고딕;'> " +
  4910. "\n <TR> " +
  4911. "\n <TD> " +
  4912. "\n <IMG SRC='" + logo + "' /> " +
  4913. "\n </TD> " +
  4914. "\n </TR> " +
  4915. "\n <TR> " +
  4916. "\n <TD style='font-size: 18pt; text-align: center;'><!--?VAR_CHART_NAME_TOP?--></TD>" +
  4917. "\n </TR> " +
  4918. "\n <TR> " +
  4919. "\n <TD style='font-size: 14pt; text-align: center;'><!--?VAR_CHART_NAME_BOTTOM?--></TD>" +
  4920. "\n </TR> " +
  4921. "\n </TABLE> " +
  4922. "\n </TD> " +
  4923. "\n <TD width='35%' style='padding-right: 20px; padding-bottom: 5px'> " +
  4924. "\n <DIV style='border-style: solid; border-width: 1px; padding: 5px;'> " +
  4925. "\n <TABLE cellspacing='0' width='100%' style='font-family: 맑은 고딕;'> " +
  4926. "\n <TR> " +
  4927. "\n <TD style='font-size: 18pt' colspan='2'><!--?VAR_PAT_NUM?--></TD>" +
  4928. "\n </TR> " +
  4929. "\n <TR> " +
  4930. "\n <TD style='font-size: 18pt'><!--?VAR_PAT_NAME?--></TD> " +
  4931. "\n <TD style='font-size: 14pt'><!--?VAR_TREAT_DEPT?--></TD> " +
  4932. "\n </TR> " +
  4933. "\n <TR> " +
  4934. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_JUMIN_NO?--></TD> " +
  4935. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_AGE_SEX?--></TD> " +
  4936. "\n </TR> " +
  4937. "\n </TABLE> " +
  4938. "\n </DIV> " +
  4939. "\n </TD> " +
  4940. "\n</TR> " +
  4941. "\n</TABLE> " +
  4942. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'> " +
  4943. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  4944. "\n <TR> " +
  4945. "\n <TD style='width: 50%; text-align: left'><!--?VAR_DATE_HEADER?--></TD> " +
  4946. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_DOCTOR_HEADER?--></TD> " +
  4947. "\n <TD style='width: 25%; text-align: center;'><!--?VAR_WARD_HEAD?--></TD> " +
  4948. "\n <TD style='width: 10%; text-align: right;'><!--?VAR_CLASS?--></TD> " +
  4949. "\n </TR> " +
  4950. "\n </TABLE> " +
  4951. "\n</DIV>";
  4952. cover_header_end = "\n</BODY>"+
  4953. "\n</HTML>";
  4954. // Cover Footer 부분 ---------------------------------------------------------------------------------------------------
  4955. cover_footer_start = "<HTML>"+
  4956. "\n<BODY style='margin: 0;'>"+
  4957. "\n"+
  4958. "\n<DIV>"+
  4959. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>"+
  4960. "\n <TR>"+
  4961. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>";
  4962. cover_footer_end = "\n<DIV style='border-top-style: solid; border-width: 2px;'>"+
  4963. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  4964. "\n <TR>"+
  4965. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD>"+
  4966. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD>"+
  4967. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD>"+
  4968. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD>"+
  4969. "\n </TR>"+
  4970. "\n </TABLE>"+
  4971. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  4972. "\n <TR>"+
  4973. "\n <TD style='width: 20%; text-align: left; '></TD>"+
  4974. "\n </TR>"+
  4975. "\n </TABLE>"+
  4976. "\n</DIV>"+
  4977. "\n"+
  4978. "\n</BODY>"+
  4979. "\n</HTML>";
  4980. //Body Header 부분 ---------------------------------------------------------------------------------------------------
  4981. body_header = "<HTML>"+
  4982. "\n<BODY style='margin-top: 0; margin-left: 0; margin-right; 0;'> "+
  4983. "\n "+
  4984. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'>"+
  4985. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  4986. "\n <TR> "+
  4987. "\n <TD style='width: 10%; text-align: left; '><!--?VAR_PAT_NUM?--></TD> "+
  4988. "\n <TD style='width: 10%; text-align: center;'><!--?VAR_PAT_NAME?--></TD> "+
  4989. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_PAT_AGE_SEX?--></TD> "+
  4990. "\n <TD style='width: 55%; text-align: center;'><!--?VAR_DATE_HEADER?--></TD> "+
  4991. "\n <TD style='width: 10%; text-align: right; '><!--?VAR_CLASS?--></TD> "+
  4992. "\n </TR> "+
  4993. "\n </TABLE> "+
  4994. "\n</DIV> "+
  4995. "\n "+
  4996. "\n</BODY> "+
  4997. "\n</HTML>";
  4998. // Body Footer 부분 ---------------------------------------------------------------------------------------------------
  4999. body_footer = "<HTML>"+
  5000. "\n<BODY style='margin: 0;'> "+
  5001. "\n "+
  5002. "\n<DIV> "+
  5003. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  5004. "\n <TR> "+
  5005. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD> "+
  5006. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> "+
  5007. "\n </TR> "+
  5008. "\n </TABLE> "+
  5009. "\n</DIV> "+
  5010. "\n<DIV style='border-top-style: solid; border-width: 2px;'> "+
  5011. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  5012. "\n <TR> "+
  5013. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD> "+
  5014. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD> "+
  5015. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD> "+
  5016. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD> "+
  5017. "\n </TR> "+
  5018. "\n </TABLE> "+
  5019. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  5020. "\n <TR> "+
  5021. "\n <TD style='width: 20%; text-align: left; '></TD> "+
  5022. "\n </TR> "+
  5023. "\n </TABLE> "+
  5024. "\n</DIV> "+
  5025. "\n "+
  5026. "\n</BODY> "+
  5027. "\n</HTML>";
  5028. // ----------------------------------------------------------------------------------------------------------------------
  5029. if( formcd == "0000000003" ){ // 입원초진
  5030. cover_header_txt = "\n <DIV>" +
  5031. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  5032. "\n <TR><TD style='text-align: left; font-weight: bold;'>입원일자 : <!--?VAR_ORDDATE?--></TD></TR> " +
  5033. "\n <TR><TD style='text-align: left; font-weight: bold;'>입 원 과 : <!--?VAR_INORDDEPTHNGNM?--></TD></TR> " +
  5034. "\n </TABLE>" +
  5035. "\n </DIV>";
  5036. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  5037. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5038. "\n </TR>" +
  5039. "\n </TABLE>" +
  5040. "\n </DIV>";
  5041. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5042. }else if( formcd == "0000000676" ){ // 수술기록
  5043. cover_header = cover_header_start + cover_header_end;
  5044. cover_footer_txt = "\n<TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Surgeon : <!--?VAR_SURGEON?--></TD>"+
  5045. "\n </TR>"+
  5046. "\n <TR>"+
  5047. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  5048. "\n </TR>"+
  5049. "\n </TABLE>"+
  5050. "\n</DIV>";
  5051. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5052. }else if( formcd == "0000000679" ){ // 응급실기록
  5053. cover_header_txt = "\n<DIV>" +
  5054. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  5055. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR>" +
  5056. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR>" +
  5057. "\n <TR><TD style='text-align: left; font-weight: bold;'></TD></TR>" +
  5058. "\n <TR><TD style='text-align: left; font-weight: bold;'>[환자 내원시간] : <!--?VAR_ERDT?--></TD></TR>" +
  5059. "\n </TABLE>" +
  5060. "\n</DIV>";
  5061. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  5062. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5063. "\n </TR>" +
  5064. "\n </TABLE>" +
  5065. "\n </DIV>";
  5066. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5067. }else if( formcd == "0000000680" ){ // 입퇴원요약
  5068. cover_header_txt = "\n<DIV>" +
  5069. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>" +
  5070. "\n <TR><TD style='text-align: left; font-weight: bold;'>[입퇴원정보] </TD></TR>" +
  5071. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;입원일/입원과 : <!--?VAR_ININFO?--></TD></TR>" +
  5072. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;퇴원일/퇴원과 : <!--?VAR_DSCHINFO?--></TD></TR>" +
  5073. "\n </TABLE>" +
  5074. "\n</DIV>";
  5075. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  5076. cover_footer_txt = "\n<TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Staff작성 및 확인 : <!--?VAR_STAFFNM?--></TD>"+
  5077. "\n </TR>"+
  5078. "\n <TR>"+
  5079. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  5080. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 의무기록사 : <!--?VAR_EMRRECUSRNM?--></TD>"+
  5081. "\n </TR>"+
  5082. "\n </TABLE>"+
  5083. "\n</DIV>";
  5084. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5085. }else if( formcd == "0000002022" ){ // 마취기록지
  5086. cover_header = cover_header_start + cover_header_end;
  5087. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5088. "\n </TR>" +
  5089. "\n </TABLE>" +
  5090. "\n </DIV>";
  5091. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5092. }else if( formcd == "0000003169" ){ // Brief OP Note
  5093. cover_header = cover_header_start + cover_header_end;
  5094. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5095. "\n </TR>" +
  5096. "\n </TABLE>" +
  5097. "\n </DIV>";
  5098. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5099. }else{
  5100. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  5101. cover_header_txt = "\n<DIV> " +
  5102. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  5103. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR> "+
  5104. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR> "+
  5105. "\n </TABLE> " +
  5106. "\n</DIV>";
  5107. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  5108. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5109. "\n </TR>" +
  5110. "\n </TABLE>" +
  5111. "\n </DIV>";
  5112. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5113. }else{
  5114. cover_header = cover_header_start + cover_header_end;
  5115. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  5116. "\n </TR>" +
  5117. "\n </TABLE>" +
  5118. "\n </DIV>";
  5119. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  5120. }
  5121. }
  5122. var txt = cover_header + "♥" + cover_footer + "♥" + body_header + "♥" + body_footer;
  5123. return txt;
  5124. }
  5125. function MakeRecFile( hfflag, txt, htmltxt ){
  5126. var foldernm = "C:\\Certrec" + getUserInfo("dutplceinstcd");
  5127. var local_path ="";
  5128. local_path = foldernm + "\\";
  5129. if( hfflag == "h" ){
  5130. var headso = new ActiveXObject("Scripting.FileSystemObject");
  5131. if(headso.FileExists(local_path +txt + "_cover_header.html") == true)
  5132. {
  5133. headso.DeleteFile(local_path + txt + "_cover_header.html", true)
  5134. }
  5135. var h = headso.CreateTextFile( local_path + txt + "_cover_header.html" , true, true);
  5136. h.WriteLine(htmltxt);
  5137. h.Close();
  5138. }
  5139. if( hfflag == "f" ){
  5140. var footso = new ActiveXObject("Scripting.FileSystemObject");
  5141. if(footso.FileExists(local_path + txt + "_cover_footer.html") == true)
  5142. {
  5143. footso.DeleteFile(local_path + txt + "_cover_footer.html", true)
  5144. }
  5145. var f = footso.CreateTextFile( local_path + txt + "_cover_footer.html" , true, true);
  5146. f.WriteLine(htmltxt);
  5147. f.Close();
  5148. }
  5149. }
  5150. function fGetDetlFormRec(){
  5151. grd_reclist.fixedcellischeck(0,1)=false;
  5152. iviewerIemr.window.javascript.cleanViewer();
  5153. if( model.getValue("/root/init/recformdata/formcd") == null ){
  5154. messageBox("조회할 서식을 선택한 후 진행하십시오.", "C999");
  5155. return;
  5156. }
  5157. if( model.getValue("/root/init/recformdata/fromdd") == null || model.getValue("/root/init/recformdata/todd") == null ){
  5158. messageBox("조회할 기간을 선택한 후 진행하십시오.", "C999");
  5159. return;
  5160. }
  5161. var recchosflag = "";
  5162. var recreckind = "";
  5163. if( btn_out.selected ){
  5164. recchosflag = "O";
  5165. }else if( btn_in.selected ){
  5166. recchosflag = "I";
  5167. }else if( btn_er.selected ){
  5168. recchosflag = "I";
  5169. }
  5170. multirecyn = "N";
  5171. if( model.getValue("/root/init/recformdata/formcd") == "0800000636"){
  5172. recreckind = "PRCP";
  5173. }else{
  5174. recreckind = "EMR";
  5175. }
  5176. var recorddeptcd = "";
  5177. if( model.getValue("/root/init/orddept") == "ALL" ){
  5178. recorddeptcd = "";
  5179. }else{
  5180. recorddeptcd = model.getValue("/root/init/orddept");
  5181. }
  5182. model.setValue("/root/init/reccurpos", 1);
  5183. model.setValue("/root/init/recall", "Y");
  5184. model.removeNodeset("/root/send");
  5185. model.makeValue("/root/send/pid" , model.getValue("/root/main/patinfo/patinfolist/pid"));
  5186. model.makeValue("/root/send/ordfromdd" , model.getValue("/root/init/recformdata/fromdd"));
  5187. model.makeValue("/root/send/ordtodd" , model.getValue("/root/init/recformdata/todd"));
  5188. model.makeValue("/root/send/cretno" , "" );
  5189. model.makeValue("/root/send/chosflag" , recchosflag );
  5190. model.makeValue("/root/send/orddeptcd" , recorddeptcd );
  5191. model.makeValue("/root/send/tabflag" , model.getValue("/root/init/tabflag"));
  5192. model.makeValue("/root/send/reccurpos" , model.getValue("/root/init/reccurpos"));
  5193. model.makeValue("/root/send/recall" , model.getValue("/root/init/recall"));
  5194. model.makeValue("/root/send/reckind" , recreckind);
  5195. model.makeValue("/root/send/itemindxseq" , "" );
  5196. model.makeValue("/root/send/lisflag" , "" );
  5197. model.makeValue("/root/send/instcd" , model.getValue("/root/init/env/instcd"));
  5198. model.makeValue("/root/send/privateyn" , model.getValue("/root/init/privateyn"));
  5199. model.makeValue("/root/send/recformcd" , model.getValue("/root/init/recformdata/formcd"));
  5200. model.makeValue("/root/send/option" , model.getValue("/root/init/env/option") );
  5201. if (multirecyn == "N"){
  5202. if(submit("TRMRI03004")){
  5203. model.removeNodeset("/root/copytmpinicert");
  5204. model.makeNode("/root/copytmpinicert");
  5205. model.copyNode("/root/copytmpinicert", "/root/tmpinicert");
  5206. model.removeNode("/root/tmpinicert");
  5207. }else{
  5208. model.removeNodeset("/root/copytmpinicert");
  5209. model.removeNode("/root/tmpinicert");
  5210. iviewerIemr.window.javascript.cleanViewer();
  5211. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  5212. }
  5213. }
  5214. model.refresh();
  5215. }
  5216. function fGetDetlFormRecDetail(idx){
  5217. iviewerIemr.window.javascript.cleanViewer();
  5218. iviewerIemr.window.javascript.refreshFalse();
  5219. if( model.getValue("/root/init/recformdata/formcd") == "0800000636" ){
  5220. if( model.getValue("/root/send/ordddtxt") != "" ){
  5221. model.makeValue("/root/send/option" , model.getValue("/root/init/env/option") );
  5222. } else{
  5223. model.makeValue("/root/send/option" , "" );
  5224. }
  5225. submit("TRMRI03004");
  5226. }else{
  5227. model.removeNode("/root/tmpinicert");
  5228. model.makeNode("/root/tmpinicert");
  5229. if( idx == "1"){
  5230. model.makeNode("/root/tmpinicert/iniinfo");
  5231. model.copyNode("/root/tmpinicert/iniinfo", "/root/copytmpinicert/iniinfo[" + grd_reclist.row + "]");
  5232. }else{
  5233. var iexNodeCnt = getNodesetCnt(model, "/root/copytmpinicert/iniinfo[recchk = 'true']");
  5234. var idxcnt = 1;
  5235. if( iexNodeCnt > 0 ){
  5236. for(var i = 1; i <= grd_reclist.rows-grd_reclist.fixedRows; i++ ){
  5237. if( model.getValue("/root/copytmpinicert/iniinfo["+ i +"]/recchk") == "true" ){
  5238. model.makeNode("/root/tmpinicert/iniinfo[" + idxcnt + "]");
  5239. model.copyNode("/root/tmpinicert/iniinfo[" + idxcnt + "]", "/root/copytmpinicert/iniinfo[" + i + "]");
  5240. idxcnt++;
  5241. }
  5242. }
  5243. }else{
  5244. model.makeNode("/root/tmpinicert/iniinfo");
  5245. model.copyNode("/root/tmpinicert/iniinfo", "/root/copytmpinicert/iniinfo[" + grd_reclist.row + "]");
  5246. }
  5247. }
  5248. }
  5249. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  5250. if (certnodeList.length > 1 && certnodeList.length >= nodeposcnt){
  5251. multirecyn = "Y";
  5252. if (prevflag == "Y")
  5253. nodeposcnt = certnodeList.length;
  5254. else
  5255. nodeposcnt = 0; //1->0
  5256. }else{
  5257. multirecyn = "N";
  5258. nodeposcnt = 0; //1->0
  5259. }
  5260. iviewerIemr.window.javascript.cleanViewer();
  5261. iviewerIemr.window.javascript.refreshFalse();
  5262. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  5263. model.setValue("/root/init/recall", "N");
  5264. model.refresh();
  5265. }
  5266. /**
  5267. * 네비게이션 팝업 처리
  5268. * 2014/04/01 이정택
  5269. * @return
  5270. */
  5271. function fPopupkey(){
  5272. pagingobj = getOpenWindow("SPMRI00400");
  5273. if(pagingobj==null){
  5274. open("SPMRI00400");
  5275. }else{
  5276. pagingobj.javascript.fInit(); // 초기함수호출
  5277. activateChild("SPMRI00400");
  5278. }
  5279. }
  5280. /**
  5281. * 페이징 처리
  5282. * 2014/04/01 이정택
  5283. * @return
  5284. */
  5285. var arr_keys = "";
  5286. var page_number = "";
  5287. var pagetotcnt="";
  5288. var allyn = "";
  5289. function fPaging(pageno){
  5290. sysf_trace("***** fPaging(pageno) : " + pageno + " *****");
  5291. if(utlf_isNull(pageno)){
  5292. page_number="1";
  5293. allyn="";
  5294. }else if(pageno!="ALL"){
  5295. page_number=pageno;
  5296. }else if(pageno=="ALL"){
  5297. page_number="1";
  5298. allyn="ALL";
  5299. }
  5300. if( utlf_isNull(this.objects["ds_send"]) ){
  5301. var objColInfo = new Array();
  5302. objColInfo.push({col: "instcd", type:"string", size:256});
  5303. objColInfo.push({col: "pid", type:"string", size:256});
  5304. objColInfo.push({col: "orddd", type:"string", size:256});
  5305. objColInfo.push({col: "chosflag", type:"int", size:256});
  5306. objColInfo.push({col: "reckind", type:"string", size:256});
  5307. objColInfo.push({col: "itemindxseq", type:"string", size:256});
  5308. objColInfo.push({col: "sortkind", type:"string", size:256});
  5309. objColInfo.push({col: "pagingyn", type:"string", size:256});
  5310. objColInfo.push({col: "keyfromdd", type:"string", size:256});
  5311. objColInfo.push({col: "keytodd", type:"string", size:256});
  5312. objColInfo.push({col: "keys", type:"string", size:256});
  5313. dsf_createDs("ds_send",objColInfo);
  5314. if(ds_send.rowcount == 0)ds_send.addRow();
  5315. }
  5316. var before = ds_send.getColumn(0, "itemindxseq");
  5317. var current = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq");
  5318. var foldernm = "C:\\Certrec" + sysf_getUserInfo("dutplceinstcd");
  5319. if((page_number=="1" || (before!=current)) && pageno!="ALL"){
  5320. grup_right.iviewerIemr.group1.cap_msg.text="";
  5321. fExistFolder_New(foldernm);
  5322. grup_right.cap_msg.text="";
  5323. grup_right.iviewerIemr.cleanViewer();
  5324. page_number="1";
  5325. /* TF makeValue 사용으로 컬럼 추가 로직, ds_send DataSet 은 있고 컬럼 정보가 없을 경우 */
  5326. ds_send.addColumn("itemindxseq", "string");
  5327. ds_send.addColumn("sortkind", "string");
  5328. ds_send.addColumn("pagingyn", "string");
  5329. ds_send.addColumn("keyfromdd", "string");
  5330. ds_send.addColumn("keytodd", "string");
  5331. ds_send.addColumn("keys", "string");
  5332. ds_send.setColumn(0, "itemindxseq", ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq"));
  5333. ds_send.setColumn(0, "sortkind", ds_init_etc.getColumn(0, "sortkind"));
  5334. sysf_trace( "***** ds_init_etc pagingyn : " + ds_init_etc.getColumn(0, "pagingyn") );
  5335. if(ds_init_etc.getColumn(0, "pagingyn")=="Y"){
  5336. ds_send.setColumn(0, "pagingyn", ds_init_etc.getColumn(0, "pagingyn"));
  5337. ds_send.setColumn(0, "keyfromdd", ds_init_paging.getColumn(0, "fromdd"));
  5338. ds_send.setColumn(0, "keytodd", ds_init_paging.getColumn(0, "todd"));
  5339. ds_tmp.setColumn(0, "keys", "");//model.makeValue("/root/tmp/keys", "");
  5340. }else{
  5341. ds_send.setColumn(0, "pagingyn", "");
  5342. ds_send.setColumn(0, "keyfromdd", "");
  5343. ds_send.setColumn(0, "keytodd", "");
  5344. ds_send.setColumn(0, "keys", "");
  5345. }
  5346. dsf_setDefaultVal(ds_send, "reckind:EMR,pagingyn:N");
  5347. //sysf_trace(ds_send.saveXML());
  5348. var oParam = {};
  5349. oParam.id = "TRMRI03009";
  5350. oParam.service = "recmngtapp.IntegrityRec";
  5351. oParam.method = "reqGetKeys";
  5352. oParam.inds = "req=" + "ds_send";
  5353. oParam.outds = "ds_tmp_keys" + "=item";
  5354. oParam.async = false;
  5355. oParam.callback = "cf_TRMRI03009"
  5356. tranf_submit(oParam);//submit("TRMRI03009");
  5357. }
  5358. //sysf_trace(ds_tmp_keys.saveXML());
  5359. sysf_trace("*************************" + ds_tmp_keys.rowcount);
  5360. var cnt = ds_tmp_keys.rowcount;//getNodesetCnt(model, "/root/tmp/keys/signno");
  5361. pagingobj = frmf_findPopup("SPMRI00400");
  5362. var fromdd="";
  5363. var todd="";
  5364. if(grup_left.switch1.grd.cbx_paging.value=="Y"){
  5365. fromdd=ds_init_paging.getColumn(0, "fromdd");
  5366. }else{
  5367. fromdd=ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "indd");
  5368. todd=ds_grd_pathist.getColumn(ds_grd_pathist.rowposition, "dschdd");
  5369. if(todd=="재원중"){
  5370. todd=utlf_getCurrentDate();
  5371. }
  5372. }
  5373. sysf_trace(" ***** fromdd : " + fromdd + " todd : " + todd + " *****");
  5374. sysf_trace(" ***** current : " + current + " page_number : " + page_number + " *****");
  5375. if(current=="20337" && parseInt(page_number) >= 1){
  5376. var sortkind = ds_init_etc.getColumn(0, "sortkind");
  5377. sysf_trace(" ***** sortkind : " + sortkind + " *****");
  5378. if(sortkind=="A"){
  5379. var plusdate ="";
  5380. if(parseInt(page_number) == 1){
  5381. arr_keys = new Array();
  5382. }
  5383. while(plusdate <= todd && parseInt(page_number) == 1){
  5384. var sb = new StringBuffer();
  5385. if(utlf_isNull(plusdate)){
  5386. sb.append(fromdd);
  5387. plusdate=date_add(fromdd, 35);
  5388. if(plusdate>todd){
  5389. sb.append(todd);
  5390. var sb_keys=sb.toString(",");
  5391. arr_keys.push(sb_keys);
  5392. break;
  5393. }else{
  5394. sb.append(plusdate);
  5395. }
  5396. }else{
  5397. plusdate=date_add(plusdate, 1);
  5398. sb.append(plusdate);
  5399. plusdate=date_add(plusdate, 35);
  5400. if(plusdate>todd){
  5401. sb.append(todd);
  5402. var sb_keys=sb.toString(",");
  5403. arr_keys.push(sb_keys);
  5404. break;
  5405. }else{
  5406. sb.append(plusdate);
  5407. }
  5408. }
  5409. var sb_keys=sb.toString(",");
  5410. arr_keys.push(sb_keys);
  5411. }
  5412. if(parseInt(page_number) == 1){
  5413. pagetotcnt = arr_keys.length;
  5414. }
  5415. ds_tmp.setColumn(0, "prcpfromdd", arr_keys[parseInt(page_number)-1].split(",")[0]);
  5416. ds_tmp.setColumn(0, "prcptodd", arr_keys[parseInt(page_number)-1].split(",")[1]);
  5417. // var sWindowMsg = "데이터 로딩 중입니다.";
  5418. // callLoadingWindow(sWindowMsg);
  5419. frmf_openLoadingBar();
  5420. fDbClickMidIndx_New();
  5421. frmf_closeLoadingBar();//removeLoadingWindow();
  5422. }else if(sortkind=="D"){
  5423. var minusdate ="";
  5424. if(parseInt(page_number) == 1){
  5425. arr_keys = new Array();
  5426. }
  5427. while((utlf_isNull(minusdate)) || (minusdate >= fromdd && parseInt(page_number) == 1)){
  5428. var sb = new StringBuffer();
  5429. var sb_keys="";
  5430. if(utlf_isNull(minusdate)){
  5431. minusdate=date_add(todd, -35);
  5432. if(minusdate<=fromdd){
  5433. sb.append(fromdd);
  5434. sb.append(todd);
  5435. sb_keys=sb.toString(",");
  5436. arr_keys.push(sb_keys);
  5437. break;
  5438. }else{
  5439. sb.append(minusdate);
  5440. sb.append(todd);
  5441. todd=minusdate;
  5442. sb_keys=sb.toString(",");
  5443. arr_keys.push(sb_keys);
  5444. }
  5445. }else{
  5446. minusdate=date_add(minusdate, -35);
  5447. if(minusdate<=fromdd){
  5448. sb.append(fromdd);
  5449. todd=date_add(todd, -1);
  5450. sb.append(todd);
  5451. sb_keys=sb.toString(",");
  5452. arr_keys.push(sb_keys);
  5453. break;
  5454. }else{
  5455. sb.append(minusdate);
  5456. todd=date_add(todd, -1);
  5457. sb.append(todd);
  5458. todd=minusdate;
  5459. sb_keys=sb.toString(",");
  5460. arr_keys.push(sb_keys);
  5461. }
  5462. }
  5463. }
  5464. if(parseInt(page_number) == 1){
  5465. pagetotcnt = arr_keys.length;
  5466. }
  5467. ds_tmp.setColumn(0, "prcpfromdd", arr_keys[parseInt(page_number)-1].split(",")[0]);
  5468. ds_tmp.setColumn(0, "prcptodd", arr_keys[parseInt(page_number)-1].split(",")[1]);
  5469. frmf_openLoadingBar();
  5470. fDbClickMidIndx_New();
  5471. frmf_closeLoadingBar();
  5472. }
  5473. }else{
  5474. if(cnt==0){
  5475. frmf_openLoadingBar();
  5476. fDbClickMidIndx_New();
  5477. frmf_closeLoadingBar();
  5478. }
  5479. /* else if(cnt >1 && allyn==""){
  5480. fPopupkey();
  5481. }
  5482. */
  5483. else{
  5484. var temp_keys="";
  5485. var keys="";
  5486. if(page_number=="1"){
  5487. arr_keys = new Array();
  5488. var sb = new StringBuffer();
  5489. for(var i=0; i<cnt; i++){
  5490. //sysf_trace("***** ds_tmp_keys.getColumn(i, 'signno') : " + ds_tmp_keys.getColumn(i, "signno") + "*****");
  5491. sb.append("'"+ds_tmp_keys.getColumn(i, "signno")+"'");
  5492. }
  5493. temp_keys=sb.toString(",");
  5494. keys=temp_keys.split(",");
  5495. // pagetotcnt = Math.ceil(cnt/35);
  5496. // for(var i=0; i<pagetotcnt; i++){
  5497. // var sb = new StringBuffer();
  5498. // for(var j=i*35; j<(i*35)+35 && j<keys.length; j++){
  5499. // sb.append(keys[j]);
  5500. // }
  5501. // var sb_keys=sb.toString(",");
  5502. // arr_keys.push(sb_keys);
  5503. // }
  5504. // jw.choe
  5505. pagetotcnt = 1;
  5506. arr_keys.push(keys);
  5507. }
  5508. sysf_trace("***** arr_keys[parseInt(page_number)-1] : " + arr_keys[parseInt(page_number)-1] + "*****");
  5509. ds_tmp.setColumn(0, "keys", arr_keys[parseInt(page_number)-1]);
  5510. if(parseInt(page_number) <= parseInt(pagetotcnt)){
  5511. //frmf_openLoadingBar();
  5512. fDbClickMidIndx_New();
  5513. //frmf_closeLoadingBar();
  5514. }
  5515. if(pagingobj!=null){
  5516. pagingobj.close();
  5517. }
  5518. }
  5519. }
  5520. if( !utlf_isNull(pagetotcnt) && (parseInt(page_number) < parseInt(pagetotcnt))){
  5521. fPagebtnCtl("false");
  5522. }else{
  5523. fPagebtnCtl("true");
  5524. }
  5525. }
  5526. /**
  5527. * 더보기 버튼 제어
  5528. */
  5529. function fPagebtnCtl(chk){
  5530. if(chk=="true"){
  5531. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.enable = false;
  5532. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.enable = false;
  5533. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.enable = false;
  5534. btn_paging.enable = false;
  5535. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  5536. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  5537. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  5538. grup_right.iviewerIemr.group1.cap_msg.text = "[기록이 더 이상 없습니다.]";
  5539. btn_paging.tooltiptext = "[기록이 더 이상 없습니다.]";
  5540. grup_right.cap_msg.text = "[기록이 더 이상 없습니다.]";
  5541. }else if(chk=="false"){
  5542. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.enable = true;
  5543. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.enable = true;
  5544. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.enable = true;
  5545. btn_paging.enable = true;
  5546. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.tooltiptext = "[기록 더보기]";
  5547. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.tooltiptext = "[기록 더보기]";
  5548. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.tooltiptext = "[기록 더보기]";
  5549. grup_right.iviewerIemr.group1.cap_msg.text = "[기록이 더 존재합니다. 더보기 버튼을 클릭해주세요.]";
  5550. btn_paging.tooltiptext = "[기록 더보기]";
  5551. grup_right.cap_msg.text = "[기록이 더 존재합니다. 더보기 버튼을 클릭해주세요.]";
  5552. }else{
  5553. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.enable = false;
  5554. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.enable = false;
  5555. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.enable = false;
  5556. btn_paging.enable = false;
  5557. grup_right.iviewerIemr.group1.switch1.case1.tv_pagebtn.tooltiptext = "";
  5558. grup_right.iviewerIemr.group1.switch1.case2.cv_pagebtn.tooltiptext = "";
  5559. grup_right.iviewerIemr.group1.switch1.case3.pv_pagebtn.tooltiptext = "";
  5560. grup_right.iviewerIemr.group1.cap_msg.text = "";
  5561. btn_paging.tooltiptext = "";
  5562. grup_right.cap_msg.text = "";
  5563. }
  5564. }
  5565. /**
  5566. * 이정택 2014/04/02
  5567. * @return
  5568. */
  5569. function StringBuffer(){
  5570. this.buffer = [];
  5571. }
  5572. /**
  5573. * 이정택 2014/04/02
  5574. * @return
  5575. */
  5576. StringBuffer.prototype.append = function(str) {
  5577. if (utlf_isNull(str)) { str = ""; }
  5578. this.buffer.push(str);
  5579. return this;
  5580. }
  5581. /**
  5582. * 이정택 2014/04/02
  5583. * @return
  5584. */
  5585. StringBuffer.prototype.toString = function(str) {
  5586. if (utlf_isNull(str)) { str = ""; }
  5587. return this.buffer.join(str);
  5588. }
  5589. /**
  5590. * 날짜계산
  5591. * 2014/04/08 이정택
  5592. */
  5593. function date_add(sDate, nDays){
  5594. sysf_trace("***** date_add *****");
  5595. sysf_trace("***** " + sDate + " " + nDays + " *****");
  5596. if( utlf_isNull(sDate) ) return "99991231";
  5597. var yy = parseInt(sDate.substr(0,4), 10);
  5598. var mm = parseInt(sDate.substr(4,2), 10);
  5599. var dd = parseInt(sDate.substr(6,2), 10);
  5600. var d = new Date(yy, mm - 1, dd + nDays);
  5601. yy = d.getFullYear().toString();
  5602. mm = d.getMonth() + 1; mm = (mm < 10) ? '0' + mm : mm.toString();
  5603. dd = d.getDate(); dd = (dd < 10) ? '0' + dd : dd.toString();
  5604. return yy + mm + dd;
  5605. }
  5606. /**
  5607. * 중분류 더블클릭시 신규로직
  5608. * 2014/04/09 이정택
  5609. * @return
  5610. */
  5611. function fDbClickMidIndx_New(){
  5612. sysf_trace("***** fDbClickMidIndx_New() *****");
  5613. multirecyn = "N"; //다수의 기록 여부(ex.기록+이미지)
  5614. nodeposcnt = 0; //1->0
  5615. prevflag = "N";
  5616. if (ds_grd_midindx.rowposition >= 0){
  5617. var curmidcnt = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "cnt"));
  5618. var itemindxseq = parseInt(ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq"));
  5619. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid"); //opener.window.javascript.getParameter("SMMRI00400_param_openerid");
  5620. // sysf_trace("***** SMMRI00400_param_openerid : " + openerid + " *****");
  5621. if ( openerid == "SMMRI08000" ){
  5622. // 중분류별 출력체크 CYW
  5623. var chkflag = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "chkflag");//model.getValue( "/root/main/midindx/midindxlist[" + grd_midindx.row + "]/chkflag");
  5624. var row = ds_init_cmb_dept.rowposition;//datagrid3.row;
  5625. // sysf_trace("***** ds_init_cmb_dept.rowposition : " + row + " *****");
  5626. var deptengabbr = ds_init_cmb_dept.getColumn(row, "deptengabbr");//datagrid3.valueMatrix(row, datagrid3.colref("deptengabbr"));
  5627. var prntdeptengabbr = opener.frmf_getParameter("SMMRI00400_param_prntdeptengabbr");//opener.window.javascript.getParameter("SMMRI00400_param_prntdeptengabbr");
  5628. var prntidx = prntdeptengabbr.indexOf(deptengabbr);
  5629. if( ( prntidx > -1 && chkflag == "Y" && privatetxt == "2" ) || ( prntidx > -1 && privatetxt == "3") ){
  5630. btn_prnt.visible = true;
  5631. txt_private.visible = true;
  5632. }else if( prntidx > -1 && privatetxt == "1" ){
  5633. btn_prnt.visible = true;
  5634. txt_private.visible = false;
  5635. }else{
  5636. btn_prnt.visible = false;
  5637. txt_private.visible = false;
  5638. }
  5639. }
  5640. ds_init_etc.setColumn(0, "midreccnt", curmidcnt);
  5641. ds_init_etc.setColumn(0, "reccurpos", 1);
  5642. ds_init_etc.setColumn(0, "itemindxseq", itemindxseq);
  5643. //2013/02/15 머지 시작(추가)
  5644. ds_init_etc.setColumn(0, "recall", "Y");
  5645. //2013/02/15 머지 끝
  5646. fGetDetlRec_New(ds_grd_midindx.rowposition);
  5647. }
  5648. }
  5649. /**
  5650. * 실질적인 기록조회
  5651. * 2014/04/09 이정택
  5652. * @param row1
  5653. * @param row2
  5654. * @return
  5655. */
  5656. function fGetDetlRec_New( row1, row2 ){
  5657. sysf_trace("***** fGetDetlRec_New( row1, row2 ) " + row1 + " " + row2 + "*****");
  5658. var grd_midindxrow = row1;
  5659. var grd_pathistrow = row2;
  5660. if ( row1 == null ){
  5661. grd_midindxrow = ds_grd_midindx.rowposition;
  5662. }
  5663. if ( row2 == null ){
  5664. grd_pathistrow = ds_grd_pathist.rowposition;
  5665. }
  5666. var itemindxseq = parseInt(ds_init_etc.getColumn(0, "itemindxseq")); //선택중분류 인덱스순번
  5667. var reccurpos = parseInt(ds_init_etc.getColumn(0, "reccurpos")); //현재선택된기록 순번
  5668. var midreccnt = parseInt(ds_init_etc.getColumn(0, "midreccnt")); //선택중분류 기록수
  5669. var bfopentest = ds_init_etc.getColumn(0, "bfopentest"); //오픈 이전 검사처방 수진이력
  5670. var reckind = ds_grd_midindx.getColumn(grd_midindxrow, "reckind");
  5671. var rowfocus = "";
  5672. var emrflag = ds_init_etc.getColumn(0, "emrflag");
  5673. var selIndx = grup_left.switch1.tabindex;//switch1.selectedIndex; //2009-10-20 오후 10:00:57 강지훈 추가
  5674. sysf_trace("***** selIndx : "+ selIndx +" *****");
  5675. if(selIndx == 1){
  5676. fGetBookmarkItem();
  5677. }else if(selIndx == 0){
  5678. if (emrflag == "I" && (reckind != "EMR" && reckind != "CDIS")){
  5679. // jw reccnt -> midreccnt 가능성!!
  5680. //var totcnt = "[ " + 1 + " / " + ds_grd_midindx.getColumn(grd_midindxrow, "cnt") + " / " + ds_init_etc.getColumn(0, "reccnt") + " ]";
  5681. var totcnt = "[ " + 1 + " / " + ds_grd_midindx.getColumn(grd_midindxrow, "cnt") + " / " + ds_init_etc.getColumn(0, "midreccnt") + " ]";
  5682. ds_init_etc.setColumn(0, "totcnt", totcnt);
  5683. var treatno = ds_grd_midindx.getColumn(grd_midindxrow, "itemindxseq");
  5684. var formcd = ds_grd_midindx.getColumn(grd_midindxrow, "supitemindxseq");
  5685. grup_right.iviewerIemr.cleanViewer();
  5686. grup_right.iviewerIemr.refreshFalse();
  5687. ds_imgrec_iemr.setColumn(0, "treatno", parseInt(treatno));
  5688. ds_imgrec_iemr.setColumn(0, "docucd", formcd);
  5689. ds_imgrec_iemr.setColumn(0, "instcd", ds_init_env.getColumn(0, "instcd"));
  5690. // model.makeValue("/root/imgrec/iemr/treatno", parseInt(treatno));
  5691. // model.makeValue("/root/imgrec/iemr/docucd", formcd);
  5692. // model.makeValue("/root/imgrec/iemr/instcd", model.getValue("/root/init/env/instcd"));
  5693. var iemrNode = eval("ds_imgrec_iemr");//instance1.selectSingleNode("/root/imgrec/iemr");
  5694. var chartinfo;
  5695. chartinfo = "I";
  5696. var hiddenmsg;
  5697. hiddenmsg = "I";
  5698. grup_right.iviewerIemr.appendChart(iemrNode, chartinfo, hiddenmsg);
  5699. grup_right.iviewerIemr.refreshTrue();
  5700. }else{
  5701. var calcReccurpos = parseInt(ds_init_etc.getColumn(0, "reccurpos"));
  5702. var itemindxseq = parseInt(ds_init_etc.getColumn(0, "itemindxseq"));
  5703. // 'ds_send' SET
  5704. dsf_deleteDs("ds_send");
  5705. var objColInfo = new Array();
  5706. objColInfo.push({col: "pid", type:"string", size:256});
  5707. objColInfo.push({col: "orddd", type:"string", size:256});
  5708. objColInfo.push({col: "cretno", type:"int", size:256});
  5709. objColInfo.push({col: "chosflag", type:"string", size:256});
  5710. objColInfo.push({col: "orddeptcd", type:"string", size:256});
  5711. objColInfo.push({col: "tabflag", type:"string", size:256});
  5712. objColInfo.push({col: "reccurpos", type:"int", size:256});
  5713. objColInfo.push({col: "recall", type:"string", size:256});
  5714. objColInfo.push({col: "reckind", type:"string", size:256});
  5715. objColInfo.push({col: "itemindxseq", type:"string", size:256});
  5716. objColInfo.push({col: "lisflag", type:"string", size:256});
  5717. objColInfo.push({col: "instcd", type:"string", size:256});
  5718. objColInfo.push({col: "privateyn", type:"string", size:256});
  5719. objColInfo.push({col: "option", type:"string", size:256});
  5720. objColInfo.push({col: "keys", type:"string", size:256});
  5721. objColInfo.push({col: "screen_id", type:"string", size:256});
  5722. objColInfo.push({col: "sortkind", type:"string", size:256});
  5723. objColInfo.push({col: "page_number", type:"string", size:256});
  5724. objColInfo.push({col: "fromprcpdd", type:"string", size:256});
  5725. objColInfo.push({col: "toprcpdd", type:"string", size:256});
  5726. objColInfo.push({col: "bfopentest", type:"string", size:256});
  5727. objColInfo.push({col: "midbftest", type:"string", size:256});
  5728. objColInfo.push({col: "pagingyn", type:"string", size:256});
  5729. objColInfo.push({col: "pagingfromdd", type:"string", size:256});
  5730. objColInfo.push({col: "pagingtodd", type:"string", size:256});
  5731. objColInfo.push({col: "ordfromdd", type:"string", size:256});
  5732. objColInfo.push({col: "ordtodd", type:"string", size:256});
  5733. objColInfo.push({col: "recformcd", type:"string", size:256});
  5734. objColInfo.push({col: "ordddtxt", type:"string", size:256});
  5735. objColInfo.push({col: "signnotxt", type:"string", size:256});
  5736. dsf_createDs("ds_send", objColInfo);
  5737. var nRow = ds_send.addRow();
  5738. ds_send.setColumn(nRow, "pid", ds_patinfolist.getColumn(0, "pid"));
  5739. ds_send.setColumn(nRow, "orddd", ds_grd_pathist.getColumn(grd_pathistrow, "orddd"));
  5740. ds_send.setColumn(nRow, "cretno", ds_grd_pathist.getColumn(grd_pathistrow, "cretno"));
  5741. ds_send.setColumn(nRow, "chosflag", ds_grd_pathist.getColumn(grd_pathistrow, "ordtype"));
  5742. ds_send.setColumn(nRow, "orddeptcd", ds_grd_pathist.getColumn(grd_pathistrow, "orddeptcd"));
  5743. ds_send.setColumn(nRow, "tabflag", ds_init_etc.getColumn(0, "tabflag"));
  5744. ds_send.setColumn(nRow, "reccurpos", calcReccurpos);
  5745. ds_send.setColumn(nRow, "recall", ds_init_etc.getColumn(0, "recall"));
  5746. ds_send.setColumn(nRow, "reckind", reckind);
  5747. ds_send.setColumn(nRow, "itemindxseq", itemindxseq);
  5748. ds_send.setColumn(nRow, "lisflag", ds_grd_midindx.getColumn(grd_midindxrow, "lisflag"));
  5749. ds_send.setColumn(nRow, "instcd", ds_init_env.getColumn(0, "instcd"));
  5750. ds_send.setColumn(nRow, "privateyn", ds_init_etc.getColumn(0, "privateyn"));
  5751. ds_send.setColumn(nRow, "option", ds_init_env.getColumn(0, "option"));
  5752. /* 이정택 파라미터 추가
  5753. * */
  5754. ds_send.setColumn(nRow, "keys", ds_tmp.getColumn(0, "keys"));
  5755. ds_send.setColumn(nRow, "screen_id", frmf_getScreenID());
  5756. ds_send.setColumn(nRow, "sortkind", ds_init_etc.getColumn(0, "sortkind"));
  5757. ds_send.setColumn(nRow, "page_number", page_number);
  5758. //sysf_trace("frmf_getScreenID : " + frmf_getScreenID() + "*****");
  5759. //sysf_trace("this.getOwnerFrame().name : " + this.getOwnerFrame().name + "*****");
  5760. //2010.02.04 안치원 - 통합기록조회 검사파트 처방일자로 조회조건 추가
  5761. ds_send.setColumn(nRow, "fromprcpdd", ds_grd_pathist.getColumn(grd_pathistrow, "orddd"));
  5762. ds_send.setColumn(nRow, "toprcpdd", ds_grd_pathist.getColumn(grd_pathistrow, "dschdd"));
  5763. //2009-11-02 오후 2:18:45 강지훈 수정
  5764. ds_send.setColumn(nRow, "bfopentest", bfopentest);
  5765. pathistEmrFlag = ds_grd_pathist.getColumn(grd_pathistrow, "emrflag");
  5766. if(bfopentest == "Y" && emrflag != "E"){
  5767. ds_send.setColumn(nRow, "midbftest", "Y");
  5768. }else{
  5769. ds_send.setColumn(nRow, "midbftest", "N");
  5770. }
  5771. //2010.03.31 안치원 - 대량Data의 수동출력을 위한 Paging기능 추가
  5772. if (ds_init_etc.getColumn(0, "pagingyn")=="Y" && !utlf_isNull(ds_init_paging.getColumn(0, "fromdd")) && !utlf_isNull(ds_init_paging.getColumn(0, "todd")) ) {
  5773. ds_send.setColumn(nRow, "pagingyn", "Y");
  5774. var ViewMode = grup_right.iviewerIemr.hidden_currentViewMode;
  5775. sysf_trace("***** ViewMode : " + ViewMode + " *****");
  5776. if(ViewMode == "ThumbView"){
  5777. ds_send.setColumn(nRow, "recall", "Y"); //추가-kys-20100331
  5778. ds_init_etc.setColumn(0, "recall", "Y"); //추가-kys-20100331
  5779. }
  5780. ds_send.setColumn(nRow, "pagingyn", "Y");
  5781. ds_send.setColumn(nRow, "pagingfromdd", ds_init_paging.getColumn(0, "fromdd"));
  5782. ds_send.setColumn(nRow, "pagingtodd", ds_init_paging.getColumn(0, "todd"));
  5783. }
  5784. if( !utlf_isNull(ds_tmp.getColumn(0, "prcpfromdd")) && !utlf_isNull(ds_tmp.getColumn(0, "prcptodd"))){
  5785. ds_send.setColumn(nRow, "pagingyn", "Y");
  5786. ds_send.setColumn(nRow, "pagingfromdd", ds_tmp.getColumn(0, "prcpfromdd"));
  5787. ds_send.setColumn(nRow, "pagingtodd", ds_tmp.getColumn(0, "prcptodd"));
  5788. }
  5789. if(multirecyn == "N"){
  5790. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:''pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N,page_number:1");
  5791. //sysf_trace(ds_send.saveXML());
  5792. //xp code add : col id change!!!execprcpuniqno
  5793. if( !utlf_isNull(ds_paging_iniinfo.getColumnInfo("cmc_orderseqno")))
  5794. ds_paging_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  5795. var oParam = {};
  5796. oParam.id = "TRMRI03010";
  5797. oParam.service = "recmngtapp.IntegrityRec";
  5798. oParam.method = "reqGetRecDetailInfoByCondFlag";
  5799. oParam.inds = "req=" + "ds_send";
  5800. oParam.outds = "ds_paging_iniinfo" + "=iniinfo";
  5801. oParam.async = true;
  5802. oParam.callback = "cf_TRMRI03010"
  5803. tranf_submit(oParam);
  5804. if(arErrorCode.pop("TRMRI03010") > -1){
  5805. /*
  5806. //xp code add : col id change!!!execprcpuniqno
  5807. ds_paging_iniinfo.updateColID("execprcpuniqno", "cmc_orderseqno");
  5808. dsf_setDefaultVal(ds_paging_iniinfo, "all");
  5809. //var certnodeList = instance1.selectNodes("/root/paging/iniinfo");
  5810. //sysf_trace(ds_paging_iniinfo.saveXML());
  5811. //if(certnodeList.length > 1 && certnodeList.length >= nodeposcnt){
  5812. if(ds_paging_iniinfo.rowcount > 1 && ds_paging_iniinfo.rowcount >= nodeposcnt){
  5813. multirecyn = "Y";
  5814. if(prevflag == "Y"){
  5815. nodeposcnt = ds_paging_iniinfo.rowcount;
  5816. }else{
  5817. nodeposcnt = 0; // 1->0
  5818. }
  5819. }else{
  5820. multirecyn = "N";
  5821. nodeposcnt = 0; // 1->0
  5822. }
  5823. //iviewerIemr.window.javascript.cleanViewer();
  5824. if(page_number!="1"){
  5825. //copyNodeset("/root/tmpinicert/iniinfo", "/root/paging/iniinfo", "append", model, model);
  5826. }else{
  5827. //iviewerIemr.window.javascript.cleanViewer();
  5828. //copyNodeset("/root/tmpinicert/iniinfo", "/root/paging/iniinfo", "replace", model, model);
  5829. }
  5830. if (ds_init_etc.getColumn(0, "recall") == "Y"){
  5831. fGetNextEmrImgRec_New();
  5832. }else{
  5833. fGetNextEmrImgRec_New();
  5834. }
  5835. ds_init_etc.setColumn(0, "recall", "N");
  5836. */
  5837. }
  5838. }else{
  5839. grup_right.iviewerIemr.cleanViewer();
  5840. fGetNextEmrImgRec(); //중분류 전체는 기존대로
  5841. }
  5842. }
  5843. }
  5844. }
  5845. /**
  5846. * 2014/04/01 통합기록 조회 신규로직
  5847. * 이정택
  5848. */
  5849. function fGetNextEmrImgRec_New(){
  5850. sysf_trace("***** fGetNextEmrImgRec_New() *****");
  5851. //var certnodeList = instance1.selectNodes("/root/paging/iniinfo");
  5852. var instcd = ds_init_env.getColumn(0, "instcd");//model.getValue("/root/init/env/instcd");
  5853. var foldernm = "C:\\Certrec" + sysf_getUserInfo("dutplceinstcd");
  5854. var recall = ds_init_etc.getColumn(0, "recall");//model.getValue("/root/init/recall");
  5855. if(ds_paging_iniinfo.rowcount <= 0){
  5856. return;
  5857. }else if(ds_paging_iniinfo.rowcount > 1){
  5858. ds_init_etc.setColumn(0, "recall", "N");//model.setValue("/root/init/recall", "N");
  5859. }
  5860. var emrpath = "";
  5861. var emrorddate = "";
  5862. var emrformnm = "";
  5863. var emrformcd = "";
  5864. var emrdeptnm = "";
  5865. var emrdeptcd = "";
  5866. var emrpage = "";
  5867. var emrhiddenmsg = "";
  5868. var recrowno = "";
  5869. var k = "";
  5870. var pid = "";
  5871. var ptnm = "";
  5872. var depthngnm = "";
  5873. var deptengabbr = "";
  5874. var icdrdeptengabbr = "";
  5875. var rgstno = "";
  5876. var sa = "";
  5877. var disporddd = "";
  5878. var orddd = "";
  5879. var drid = "";
  5880. var icdrdrid = "";
  5881. var roomcd = "";
  5882. var icdrroomcd = "";
  5883. var ordtype = "";
  5884. var chosflag = "";
  5885. var orddeptcd = "";
  5886. var signflag = "";
  5887. var imgflag = "";
  5888. var langflag = "";
  5889. var tmptreatno = "";
  5890. var tmpiformcd = "";
  5891. var signno = 0;
  5892. var formcd = "";
  5893. var srcformcd = "";
  5894. var formnm = "";
  5895. var formprogflag = "";
  5896. var recdt = "";
  5897. var recdd = "";
  5898. var wardheader = "";
  5899. var dateheader = "";
  5900. var doctorheader = "";
  5901. var printheader = "";
  5902. var pageheader = "";
  5903. var imgepath = "";
  5904. var formrecdt = "";
  5905. var fstrgstdt = "";
  5906. var lastupdtdt = "";
  5907. var staffconfirmdt = "";
  5908. var fstrgstrusrnm = "";
  5909. var lastupdtrusrnm = "";
  5910. var erdt = "";
  5911. var ervisittm = "";
  5912. var staffnmheader = "";
  5913. var staffnm = "";
  5914. var emrrecusrnmheader = "";
  5915. var emrrecusrnm = "";
  5916. var indd = "";
  5917. var dschdd = "";
  5918. var inorddepthngnm = "";
  5919. var dschorddepthngnm = "";
  5920. var incnt = "";
  5921. var mainyn = "";
  5922. var rowno = "";
  5923. var surgeon = "";
  5924. var cover_header = "";
  5925. var cover_footer = "";
  5926. var local_path = "";
  5927. var body_header = "";
  5928. var body_footer = "";
  5929. var makebodyfilecnt =0;
  5930. var default_cover_header = "";
  5931. var default_cover_footer = "";
  5932. var cover_header1 = "";
  5933. var cover_header2 = "";
  5934. var cover_header3 = "";
  5935. var cover_header4 = "";
  5936. var cover_header10 = "";
  5937. var cover_footer1 = "";
  5938. var cover_footer2 = "";
  5939. var cover_header_filenm = "";
  5940. var cover_footer_filenm = "";
  5941. var prtnunm = sysf_getUserInfo("usernm");
  5942. var prtndeptnm = "";
  5943. var getdate = utlf_getCurrentDate();
  5944. var gettime = utlf_getCurrentTime();
  5945. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  5946. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  5947. var SMMRI03000_privateflag = frmf_getParameter("SMMRI03000_privateflag");
  5948. var prtdt = dateprnt + " " + timeprnt;
  5949. var signgenrflag = "";
  5950. var careinrmdt = "";
  5951. var prcpdd ="";
  5952. // fExistFolder_New(foldernm);
  5953. grup_right.iviewerIemr.refreshFalse();
  5954. for(var i = 0; i < ds_paging_iniinfo.rowcount; i++){
  5955. signno = ds_paging_iniinfo.getColumn(i, "signno");
  5956. formcd = ds_paging_iniinfo.getColumn(i, "formcd");
  5957. srcformcd = ds_paging_iniinfo.getColumn(i, "srcformcd");
  5958. formnm = ds_paging_iniinfo.getColumn(i, "formnm");
  5959. formprogflag = ds_paging_iniinfo.getColumn(i, "formprogflag");
  5960. recdt = ds_paging_iniinfo.getColumn(i, "recdt");
  5961. recdd = ds_paging_iniinfo.getColumn(i, "recdd");
  5962. trans = ds_paging_iniinfo.getColumn(i, "trans");
  5963. ptnm = ds_paging_iniinfo.getColumn(i, "ptnm");
  5964. pid = ds_paging_iniinfo.getColumn(i, "pid");
  5965. rgstno = ds_paging_iniinfo.getColumn(i, "rgstno");
  5966. depthngnm = ds_paging_iniinfo.getColumn(i, "depthngnm");
  5967. deptengabbr = ds_paging_iniinfo.getColumn(i, "deptengabbr");
  5968. icdrdeptengabbr = ds_paging_iniinfo.getColumn(i, "icdrdeptengabbr");
  5969. sa = ds_paging_iniinfo.getColumn(i, "sa");
  5970. disporddd = ds_paging_iniinfo.getColumn(i, "disporddd");
  5971. orddd = ds_paging_iniinfo.getColumn(i, "orddd");
  5972. drid = ds_paging_iniinfo.getColumn(i, "drid");
  5973. icdrdrid = ds_paging_iniinfo.getColumn(i, "icdrdrid");
  5974. roomcd = ds_paging_iniinfo.getColumn(i, "roomcd");
  5975. icdrroomcd = ds_paging_iniinfo.getColumn(i, "icdrroomcd");
  5976. ordtype = ds_paging_iniinfo.getColumn(i, "ordtype");
  5977. chosflag = ds_paging_iniinfo.getColumn(i, "chosflag");
  5978. orddeptcd = ds_paging_iniinfo.getColumn(i, "orddeptcd");
  5979. signflag = ds_paging_iniinfo.getColumn(i, "signflag");
  5980. imgflag = ds_paging_iniinfo.getColumn(i, "imgflag");
  5981. langflag = ds_paging_iniinfo.getColumn(i, "langflag");
  5982. formrecdt = ds_paging_iniinfo.getColumn(i, "formrecdt");
  5983. formrecdt = formrecdt.toString().toDate().getDateFormat("YYYY/MM/DD");
  5984. fstrgstdt = ds_paging_iniinfo.getColumn(i, "fstrgstdt");
  5985. lastupdtdt = ds_paging_iniinfo.getColumn(i, "lastupdtdt");
  5986. staffconfirmdt = ds_paging_iniinfo.getColumn(i, "staffconfirmdt");
  5987. fstrgstrusrnm = ds_paging_iniinfo.getColumn(i, "fstrgstrusrnm");
  5988. lastupdtrusrnm = ds_paging_iniinfo.getColumn(i, "lastupdtrusrnm");
  5989. erdt = ds_paging_iniinfo.getColumn(i, "erdt");
  5990. ervisittm = ds_paging_iniinfo.getColumn(i, "ervisittm");
  5991. staffnm = ds_paging_iniinfo.getColumn(i, "staffnm");
  5992. surgeon = staffnm;
  5993. emrrecusrnm = ds_paging_iniinfo.getColumn(i, "emrrecusrnm");
  5994. indd = ds_paging_iniinfo.getColumn(i, "indd");
  5995. dschdd = ds_paging_iniinfo.getColumn(i, "dschdd");
  5996. inorddepthngnm = ds_paging_iniinfo.getColumn(i, "inorddepthngnm");
  5997. dschorddepthngnm = ds_paging_iniinfo.getColumn(i, "dschorddepthngnm");
  5998. mainyn = ds_paging_iniinfo.getColumn(i, "mainyn");
  5999. rowno = ds_paging_iniinfo.getColumn(i, "rowno");
  6000. //rowno = utlf_isNull(rowno) ? "" : rowno ;
  6001. incnt = ds_paging_iniinfo.getColumn(i, "incnt");
  6002. prcpdd = ds_paging_iniinfo.getColumn(i, "prcpdd");
  6003. if(!utlf_isNull(incnt))
  6004. incnt += " 회차";
  6005. signgenrflag = ds_paging_iniinfo.getColumn(i, "signgenrflag"); //20100615-kys
  6006. careinrmdt = ds_paging_iniinfo.getColumn(i, "careinrmdt"); //20100615-kys
  6007. var ininfo = indd + " / " + inorddepthngnm;
  6008. if(!utlf_isNull(erdt))
  6009. ininfo += " (응급실 내원일 : " + erdt + ")";
  6010. var dschinfo = dschdd + " / " + dschorddepthngnm;
  6011. var formnmarr = formnm.split("\n");
  6012. var topformnm = "";
  6013. var botformnm = "";
  6014. if (formnmarr.length == 1){
  6015. topformnm = formnmarr[0];
  6016. }else if (formnmarr.length == 2){
  6017. topformnm = formnmarr[0];
  6018. botformnm = formnmarr[1];
  6019. }else{
  6020. topformnm = formnm;
  6021. }
  6022. //2009-06-02 등록번호 "-" 병원별 제거
  6023. // jw 해당노드 셋 부분 없음. 빈 임시 데이터셋 만들어둠.
  6024. var pidynhcd = ds_pidynhcd.getColumn(0, "hardcd");//model.getValue("/root/init/pidynhcd/hardcd/hardcd");
  6025. if (pidynhcd == "Y"){
  6026. for(var k = pid.length; k <= 8; k++){
  6027. if(k < 8){
  6028. pid = "0"+pid;
  6029. }
  6030. }
  6031. var str1 = pid.substr(0, 3);
  6032. var str2 = pid.substr(3, 2);
  6033. var str3 = pid.substr(5, 2);
  6034. var str4 = pid.substr(7, 1);
  6035. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  6036. }else{
  6037. tmppid = pid;
  6038. }
  6039. if (chosflag == "O" || chosflag == "S"){
  6040. wardheader = "진료과 : ";
  6041. }else{
  6042. wardheader = "병실 : ";
  6043. }
  6044. if (langflag == "KO"){
  6045. if (chosflag == "O" || chosflag == "S"){
  6046. wardheader = "진료과 : ";
  6047. }else{
  6048. wardheader = "병실 : ";
  6049. }
  6050. dateheader = "진료기간 : ";
  6051. doctorheader = "주치의 : ";
  6052. printheader = "출력 : ";
  6053. prtndeptnm = sysf_getUserInfo("dutplcenm");
  6054. // jw imgepath 변경 필요!
  6055. //imgepath = "com/commonweb/images/biglogo" + sysf_getUserInfo("dutplceinstcd") + ".jpg"
  6056. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + ".jpg"
  6057. pageheader = "페이지 : ";
  6058. }else{
  6059. if (chosflag == "O" || chosflag == "S"){
  6060. wardheader = "Dept : ";
  6061. }else{
  6062. wardheader = "Room : ";
  6063. }
  6064. dateheader = "Date : ";
  6065. doctorheader = "Doctor : ";
  6066. printheader = "Print date : ";
  6067. prtndeptnm = sysf_getUserInfo("deptengnm");
  6068. imgepath = "com/commonweb/images/biglogo" + sysf_getUserInfo("dutplceinstcd") + "e.jpg"
  6069. if (utlf_isNull(prtndeptnm)){
  6070. prtndeptnm = sysf_getUserInfo("dutplcenm");
  6071. }
  6072. pageheader = "Page : ";
  6073. }
  6074. //sysf_trace(" ***** imgflag : " + imgflag +" instcd : " + instcd + " srcformcd : " + srcformcd + " rowno : " + rowno + "*****");
  6075. if (imgflag == "N"){
  6076. //sysf_trace("************** A ********************");
  6077. if(utlf_isNull(trans)){
  6078. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  6079. }
  6080. // jw.choe 차후 비지니스 로직에서 해당부분 확인 필요!
  6081. // SMMRC03100.xjs 6378line 동일
  6082. if ( trans.indexOf("/himed/webapps/") > -1 ){
  6083. trans = trans.replace("/himed/webapps/", "/himed2/webapps/");
  6084. }
  6085. if( trans.indexOf("&amp;instcd=&amp;") > -1 ){
  6086. trans = trans.replace("&amp;instcd=&amp;", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;");
  6087. }else if( trans.indexOf("&amp;business_id=") > -1 ){
  6088. trans = trans.replace("&amp;business_id=", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;business_id=");
  6089. }
  6090. var ininm = "cmc";
  6091. //이윤주 수정(20140819:최초작성시각 보이는 서식)
  6092. var fstsrcformcdcnt = ds_fstsrcformcd.getCaseCount("hardcd == '" + srcformcd + "']");
  6093. if (fstsrcformcdcnt > 0) {
  6094. if(!utlf_isNull(fstrgstrusrnm)) {
  6095. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  6096. }
  6097. }
  6098. //이윤주 추가(20140819:기록시점에 헤더정보 표현)
  6099. var icdrsrcformcdcnt = ds_icdrsrcformcd.getCaseCount("hardcd == '" + srcformcd + "']");
  6100. if (icdrsrcformcdcnt > 0) {
  6101. deptengabbr = icdrdeptengabbr;
  6102. roomcd = icdrroomcd;
  6103. drid = icdrdrid;
  6104. }
  6105. if( instcd == "032"){
  6106. switch(srcformcd){
  6107. case "0000000003"://입원초진
  6108. cover_header = "emr/recmngtxp/html/cover_header2_032.html";
  6109. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6110. break;
  6111. case "0000000676"://수술기록
  6112. cover_header = "emr/recmngtxp/html/cover_header_032.html";
  6113. cover_footer = "emr/recmngtxp/html/cover_footer2.html";
  6114. break;
  6115. case "0000000679"://응급실기록
  6116. cover_header = "emr/recmngtxp/html/cover_header3_032.html";
  6117. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6118. break;
  6119. case "0000000680"://입퇴원요약
  6120. cover_header = "emr/recmngtxp/html/cover_header1_032.html";
  6121. cover_footer = "emr/recmngtxp/html/cover_footer1.html";
  6122. break;
  6123. case "0000002022"://마취기록지
  6124. cover_header = "emr/recmngtxp/html/cover_header4_032.html";
  6125. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6126. break;
  6127. //case "0000003325"://DSC기록
  6128. case "0000003169"://Brief OP Note
  6129. cover_header = "emr/recmngtxp/html/cover_header_032.html";
  6130. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6131. break;
  6132. default:
  6133. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  6134. cover_header = "emr/recmngtxp/html/cover_header10_032.html";
  6135. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6136. }else{
  6137. cover_header = "emr/recmngtxp/html/cover_header_032.html";
  6138. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6139. }
  6140. break;
  6141. }
  6142. }else{
  6143. switch(srcformcd){
  6144. case "0000000003"://입원초진
  6145. cover_header = "emr/recmngtxp/html/cover_header2.html";
  6146. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6147. break;
  6148. case "0000000676"://수술기록
  6149. cover_header = "emr/recmngtxp/html/cover_header.html";
  6150. cover_footer = "emr/recmngtxp/html/cover_footer2.html";
  6151. break;
  6152. case "0000000679"://응급실기록
  6153. cover_header = "emr/recmngtxp/html/cover_header3.html";
  6154. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6155. break;
  6156. case "0000000680"://입퇴원요약
  6157. cover_header = "emr/recmngtxp/html/cover_header1.html";
  6158. cover_footer = "emr/recmngtxp/html/cover_footer1.html";
  6159. break;
  6160. case "0000002022"://마취기록지
  6161. cover_header = "emr/recmngtxp/html/cover_header4.html";
  6162. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6163. break;
  6164. //case "0000003325"://DSC기록
  6165. case "0000003169"://Brief OP Note
  6166. cover_header = "emr/recmngtxp/html/cover_header.html";
  6167. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6168. break;
  6169. default:
  6170. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  6171. cover_header = "emr/recmngtxp/html/cover_header10.html";
  6172. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6173. }else{
  6174. cover_header = "emr/recmngtxp/html/cover_header.html";
  6175. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  6176. }
  6177. break;
  6178. }
  6179. }
  6180. // CHECK 2013.07.10 CYW
  6181. var openerid = opener.frmf_getParameter("SMMRI00400_param_openerid");
  6182. //sysf_trace("***** SMMRI00400_param_openerid : " + openerid + "*****");
  6183. if( openerid == "SMMRI08000" && SMMRI03000_privateflag == "2" ){ // 본원 보호정책
  6184. ptnm = "";
  6185. rgstno = "";
  6186. lastupdtrusrnm = "";
  6187. fstrgstrusrnm = "";
  6188. drid = "";
  6189. emrrecusrnm = "";
  6190. staffnm = "";
  6191. surgeon = "";
  6192. tmppid = ds_paging_iniinfo.getColumn(i, "pid").substring(0,3) + "****";
  6193. }else if( openerid == "SMMRI08000" && SMMRI03000_privateflag == "3" ){ // 칠곡 보호정책
  6194. ptnm = ds_paging_iniinfo.getColumn(i, "ptnm").substring(0,1) + "**";
  6195. rgstno = ds_paging_iniinfo.getColumn(i, "rgstno").substring(0,6) + "-*******";
  6196. }
  6197. // 통합기록조회 조회조건(타이틀제거여부)에 따른 VIEW 2013.09.06 CYW 환경설정변수 040, 044
  6198. if(ds_envinit.getColumn(0, "viewflag") == "true"){
  6199. cover_header = "";
  6200. cover_footer = "";
  6201. body_header = "";
  6202. body_footer = "";
  6203. }else{
  6204. body_header = "emr/recmngtxp/html/body_header.html";
  6205. body_footer = "emr/recmngtxp/html/body_footer.html";
  6206. }
  6207. //trans = "<!--@\n @DOCUMENT_HOME = " + sysf_getURLprefix() + "/himed/webapps/ " +
  6208. trans = "<!--@\n @DOCUMENT_HOME = " + sysf_getURLprefix() + "/xpapps/ " +
  6209. "\n @COVER_HEADER = " + cover_header +
  6210. "\n @COVER_FOOTER = " + cover_footer +
  6211. "\n @BODY_HEADER = " + body_header +
  6212. "\n @BODY_FOOTER = " + body_footer +
  6213. "\n @DEFAULT_FONT = 굴림 " +
  6214. "\n @DEFAULT_PRE_FONT = 굴림 " +
  6215. "\n @DEFAULT_FONT_SIZE = 9pt " +
  6216. "\n @DEFAULT_PRE_FONT_SIZE = 10pt " +
  6217. "\n @FONT_SIZE_OFFSET = 3px " +
  6218. "\n @USE_NU_SIZE_ADJUST = TRUE " +
  6219. "\n @HIDE_TAG = DIV:MTX_*, DIV:STX_* " +
  6220. "\n @VAR_PAT_NUM = " + tmppid +
  6221. "\n @VAR_CLASS = " + ordtype +
  6222. "\n @VAR_CHART_NAME_TOP = " + topformnm +
  6223. "\n @VAR_CHART_NAME_BOTTOM = " + botformnm +
  6224. "\n @VAR_CHART_NAME_LINE = " + formnm +
  6225. "\n @VAR_PAT_AGE_SEX = " + sa +
  6226. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  6227. "\n @VAR_PAT_JUMIN_NO = " + rgstno +
  6228. "\n @VAR_PAT_NAME = " + ptnm +
  6229. "\n @VAR_PRINT_NAME = " + prtnunm +
  6230. "\n @VAR_PRINT_DEPT = " + prtndeptnm +
  6231. "\n @VAR_WARD_HEAD = " + wardheader + roomcd +
  6232. "\n @VAR_DATE_HEADER = " + dateheader + disporddd +
  6233. "\n @VAR_DOCTOR_HEADER = " + doctorheader + drid +
  6234. "\n @VAR_PRINT_HEADER = " + printheader + prtdt +
  6235. "\n @SYS_PAGE_HEADER = " + pageheader +
  6236. "\n @VAR_HOSP_IMG = " + imgepath +
  6237. "\n @VAR_ORDDATE = " + recdd +
  6238. "\n @VAR_ORDDEPT = " + depthngnm +
  6239. "\n @VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm +
  6240. "\n @VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm +
  6241. "\n @VAR_ERDT = " + erdt +
  6242. "\n @VAR_ERVISITTM = " + ervisittm +
  6243. "\n @VAR_STAFFNM_HEADER = " + staffnmheader +
  6244. "\n @VAR_STAFFNM = " + staffnm +
  6245. "\n @VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader +
  6246. "\n @VAR_EMRRECUSRNM = " + emrrecusrnm +
  6247. "\n @VAR_ININFO = " + ininfo +
  6248. "\n @VAR_DSCHINFO = " + dschinfo +
  6249. "\n @VAR_INCNT = " + incnt +
  6250. "\n @VAR_INORDDEPTHNGNM = " + inorddepthngnm +
  6251. "\n @VAR_RECUSERID = " + fstrgstrusrnm +
  6252. "\n @VAR_REALRECDT = " + formrecdt +
  6253. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  6254. "\n @VAR_DSCHINFO = " + dschinfo +
  6255. "\n @VAR_SURGEON = " + surgeon +
  6256. "\n @OUTPUT_MAGNIFICATION = 1 " +
  6257. "\n@-->\n" + trans + "\n";
  6258. //var fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  6259. var current = ds_grd_midindx.getColumn(ds_grd_midindx.rowposition, "itemindxseq");
  6260. //2014/05/09 이정택
  6261. //var a= fso.CreateTextFile(foldernm + "\\" + signno + i + "_" + formcd + ".HTML", true, true);
  6262. var a= fso.CreateTextFile(foldernm + "\\" + recdd + i + "_" + formnm.substr(0,4) + ".HTML", true, true);
  6263. //2014/05/09 이정택
  6264. a.WriteLine(trans);
  6265. a.Close();
  6266. //2014/05/09 이정택
  6267. //emrpath = foldernm + "\\" + signno + i + "_" + formcd + ".HTML|";
  6268. emrpath = foldernm + "\\" + recdd + i + "_" + formnm.substr(0,4) + ".HTML|";
  6269. //2014/05/09 이정택
  6270. if(current=="20337"){
  6271. emrorddate = prcpdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  6272. }else{
  6273. emrorddate = recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  6274. }
  6275. emrformnm = formnm + "|";
  6276. emrformcd = formcd + "|";
  6277. emrdeptnm = deptengabbr + "|";
  6278. emrdeptcd = orddeptcd + "|";
  6279. emrpage = "1|";
  6280. emrhiddenmsg = formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  6281. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  6282. recrowno = rowno;
  6283. //영상-EMR구분|파일경로|입원일|서식지코드|서식지이름|진료과코드|진료과이름
  6284. var chartinfo = "";
  6285. chartinfo = "E|" + emrpath + emrorddate + emrformcd + emrformnm + emrdeptcd + emrdeptnm;
  6286. var objColInfo = new Array();
  6287. objColInfo.push({col: "treatno", type:"string", size:256, val:""});
  6288. objColInfo.push({col: "docucd", type:"string", size:256, val:""});
  6289. objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  6290. dsf_createDs("ds_send_iemr", objColInfo);
  6291. var iemrNode = ds_send_iemr;
  6292. // model.makeValue("/root/send/iemr/treatno", "");
  6293. // model.makeValue("/root/send/iemr/docucd", "");
  6294. // model.makeValue("/root/send/iemr/instcd", model.getValue("/root/init/env/instcd")); //20120704 이윤주수정
  6295. //
  6296. // var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  6297. grup_right.iviewerIemr.appendChart(iemrNode, chartinfo, emrhiddenmsg, recrowno);
  6298. }else{
  6299. sysf_trace("************** B ********************");
  6300. tmptreatno = signno + ",";
  6301. tmpiformcd = formcd + ",";
  6302. emrpath = "*|";
  6303. emrorddate = "*|";
  6304. emrformnm = "*|";
  6305. emrformcd = "*|";
  6306. emrdeptnm = "*|";
  6307. emrdeptcd = "*|";
  6308. emrpage = "*|";
  6309. emrhiddenmsg = "*|";
  6310. recrowno = rowno;
  6311. ds_imgrec_iemr.addColumn("treatno", "string");
  6312. ds_imgrec_iemr.addColumn("docucd", "string");
  6313. ds_imgrec_iemr.addColumn("instcd", "string");
  6314. ds_imgrec_iemr.setColumn(0, "treatno", signno);
  6315. ds_imgrec_iemr.setColumn(0, "docucd", formcd);
  6316. ds_imgrec_iemr.setColumn(0, "instcd", ds_init_env.getColumn(0, "instcd"));
  6317. // model.makeValue("/root/imgrec/iemr/treatno", signno);
  6318. // model.makeValue("/root/imgrec/iemr/docucd", formcd);
  6319. // model.makeValue("/root/imgrec/iemr/instcd", model.getValue("/root/init/env/instcd")); //20120704 이윤주수정
  6320. //2013/08/13 Start 이정택:처방키가 있을시에 처방키에 해당하는 이미지만 가져오도록 소스 추가
  6321. var cmc_orderseqno = ds_paging_iniinfo.getColumn(i, "cmc_orderseqno");
  6322. //alert(cmc_orderseqno);
  6323. if(!utlf_isNull(cmc_orderseqno)){
  6324. ds_imgrec_iemr.addColumn("cmc_orderseqno", "string");
  6325. ds_imgrec_iemr.setColumn(0, "cmc_orderseqno", cmc_orderseqno); //makeValue
  6326. }else{
  6327. ds_imgrec_iemr.addColumn("cmc_orderseqno", "string");
  6328. ds_imgrec_iemr.setColumn(0, "cmc_orderseqno", "");
  6329. }
  6330. //2013/08/13 End
  6331. ds_imgrec_iemr.addColumn("formprogflag", "string");
  6332. ds_imgrec_iemr.setColumn("formprogflag", formprogflag);
  6333. //sysf_trace(ds_imgrec_iemr.saveXML());
  6334. var iemrNode = ds_imgrec_iemr;
  6335. //var iemrNode = instance1.selectSingleNode("/root/imgrec/iemr");
  6336. var chartinfo;
  6337. chartinfo = "I";
  6338. var hiddenmsg;
  6339. hiddenmsg = "I";
  6340. grup_right.iviewerIemr.appendChart(iemrNode, chartinfo, hiddenmsg, recrowno);
  6341. }
  6342. }
  6343. grup_right.iviewerIemr.refreshTrue();
  6344. }
  6345. /**
  6346. * 폴더체크
  6347. * 2014/04/09 이정택
  6348. */
  6349. function fExistFolder_New(foldernm){
  6350. //var fso, folder, s;
  6351. var folder, s;
  6352. //fso = inff_fileSystemObject();//new ActiveXObject("Scripting.FileSystemObject");
  6353. try{
  6354. folder = fso.GetFolder(foldernm);
  6355. s = folder.DateCreated;
  6356. if(s != ""){
  6357. fDelFolder(foldernm);
  6358. fMakeFolder(foldernm);
  6359. }
  6360. }catch(e){
  6361. fMakeFolder(foldernm);
  6362. }
  6363. }
  6364. /**
  6365. * 프로그레스바 생성
  6366. * @param msg
  6367. * @return
  6368. */
  6369. function callLoadingWindow(msg){
  6370. body.createChild("xforms:iviewer", "id:ivr_progress; src:../../../com/commonweb/xrw/SPZZZ00400_로딩중화면.xrw; left:650px; top:400px; width:330px; height:120px;");
  6371. var ivrObjt = document.all("ivr_progress");
  6372. ivrObjt.model.setValue("/root/main/msg", msg);
  6373. ivrObjt.model.refresh();
  6374. }
  6375. /**
  6376. * 프로그레스바 삭제
  6377. * @return
  6378. */
  6379. function removeLoadingWindow(){
  6380. body.removeChild("ivr_progress");
  6381. }
  6382. function fn_rdo_lindxEvent(aa)
  6383. {
  6384. var setcd = "";
  6385. setcd = rdo_lindx.getData();
  6386. ds_init_etc.setColumn(0, "tabflag", setcd);
  6387. //TF rdo_lindx xforms-select event
  6388. fGetRecMidIndx();
  6389. }]]></Script>