123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855 |
- /*
- Flow Sheet(SMMNR10100.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var sCondPath = "/root/main/cond";
- var xChartHeaderListPath = "/root/main/chartheaderlist";
- var xStnddayClincObsRecListPath = "/root/main/clincobsrecinfo/stnddayclincobsrecinfo/stnddayclincobsreclist";
- var xFormerdayClincObsRecListPath = "/root/main/clincobsrecinfo/formerclincobsrecinfo/formerclincobsreclist";
- var xHoursClincObsRecList = "/root/main/clincobsrecinfo/hoursclincobsrecinfo/hoursclincobsreclist";
- var xDaysClincObsRecList = "/root/main/clincobsrecinfo/daysclincobsrecinfo/daysclincobsreclist";
- var xPamInfoPath = "/root/main/paminfo/pamlist"; // 환자정보
- var xDayCountListPath = "/root/main/daycountinfo/daycountlist";
- var xFormerDayCountListPath = "/root/main/formerdaycountinfo/daycountlist";
- var xIntervalRecYNListPath = "/root/temp/clincobsrecinfo/intervalrecynlist";
- var xClincObsRecListPath = "/root/temp/clincobsrecinfo/clincobsreclist";
- var sAttrListPath = "/root/temp/clincobsrecinfo/attrlist";
- var sAttrListPath1 = "/root/temp/clincobsrecinfo/attrlist1";
- var xRecUserListPath = "/root/temp/clincobsrecinfo/recuserlist";
- var xTMSettingListPath = "/root/temp/clincobsrecinfo/tmsettinglist";
- var sAttrListTempPath = "/root/temp/attrinfo/attrlist";
- var sAttrListInitPath = "/root/temp/initcmblnfo/initcmblist";
- var xFormerIntervalRecYNListPath = "/root/temp/formerclincobsrecinfo/intervalrecynlist";
- var xFormerClincObsRecListPath = "/root/temp/formerclincobsrecinfo/clincobsreclist";
- var xFormerAttrListPath = "/root/temp/formerclincobsrecinfo/attrlist";
- var xFormerAttrListPath1 = "/root/temp/formerclincobsrecinfo/attrlist1";
- var xFormerRecUserListPath = "/root/temp/formerclincobsrecinfo/recuserlist";
- var xPathViewData = "/root/temp/clincobsrecinfo/rtnsigndata";
- var xFormerRecPath = "/root/temp/formerclincobsrecinfo";
- var sSettingNode = "/root/temp/viewersettinginfo/viewersettinglist" ;
- var xFluidPath = "/root/temp/clincobsrecinfo/fluidlist";
- var xInstrmtPath = "/root/temp/clincobsrecinfo/instrmtlist";
- var xFluidTmpPath = "/root/temp/clincobsfluidrecinfo/fluidlist";
- var xResultPath = "/root/certtemp/recinfo";
- var xResultAttrPath = "/root/certattrtemp/recattrinfo";
- var xItemPopupPath = "/root/init/popmenu/itemcolmenu";
- var xItemInitPopupPath = "/root/init/popmenu/iteminitmenu/menulist";
- var sHeader = new Array();
- var sFormerHeader = new Array();
- var sPid = ""; // 환자번호
- var sIndd = ""; // 입원일자
- var sCretNo = ""; // 환자 일자별 일련번호
- var sInstcd = ""; // 기관코드
- var sIOFlag = ""; // 입원/외래 구분
- var sWardCD = ""; // 병동코드
- var sRoomCD = ""; // 병실코드
- var sJobKindCD = ""; // 직급코드
- var sIndschacptstat = "";
- var sDschdd = "";
- var sChartItem = new Array();
- var sDayCountFlag = "";
- var sPopUpMenuFlag = "";
- var s4DateSrch = "";
- var sViewerRecDD = "";
- var sViewerFunc = "sign";
- var sMakeChartInfo = new Array();
- var sImageRecDD = "";
- var sPatNm = "";
- var sSexAge = "";
- var sDutplcecd = "";
- var sOrdDeptcd = "";
- var sMedispclid = "";
- var sUserFlag = "";
- var sUserDeptCd = "";
- var sUserId = "";
- var sUserNm = "";
- var sSpParamInfo = "";
- var sPamInfo = "";
- var sParamInfo = "";
- var sSelectView = "24hours";
- var sFluidSumInfo = new Array(); //Fluid 합계 정보 배열
- var sFluidBfSumInfo = new Array(); //Fluid 과거 합계 정보 배열
- //환경설정 변수
- var sDayStndTm = "999999";
- var sEvenStndTm = "999999";
- var sNightStndTm = "999999";
- var sIoTmUseYn = "Y";
- var sEventItemUseYn = "N";
- var sSeriousYseYn = "N";
- var sApchUseYn = "N";
- var sHdayUseYn = "Y";
- var sPodUseYn = "Y";
- var sIcuDayUseYn = "N";
- var sCpDayUseYn = "N";
- var sBmtUseYn = "N";
- var sAntiDayUseYn = "N";
- var sHeightUseYn = "N";
- var sWeightUseYn = "N";
- var sBloodUseYn = "N";
- var sChngRoomUseYn = "N";
- var sOpddUseYn = "Y";
- var sStartTm = "060000";
- var sGraphUseYn = "Y"
- var sSrchTypeInfo = "ALL";
- var sInitTimeFlag = "60";
- var sFamilyMeetUseYn = "N";
- var sBrthddUseYn = "N";
- var sWardBtnUseYn = "N";
- var sHeaderFlag = "D";
- var sTmpSaveUseYn = "N";
- var sPatInfoViewCdnt = 0;
- var sDayCountCnt = 0;
- var sDataRowHeight = 23;
- var sDataFontSize = 12;
- var sTotaluseYn = "Y";
- var sSubTotaluseYn = "N";
- var sRunTotaluseYn = "N";
- var sCurrentTMColInfo = 0; //Now 기준 Col정보
- var sDutyTMColInfo1 = 0; //Day 기준 Col정보
- var sDutyTMColInfo2 = 0; //Evening 기준 Col정보
- var sDutyTMColInfo3 = 0; //Night 기준 Col정보
- var sNowDate = "";
- var sCmbWardValue = "";
- var sCmbRoomValue = "";
- var sCmbPatValue = "";
- var sCmbMyPatValue = "";
- var s24ClsListInitYn = "N";
- var sSclsChkFlag = "Y";
- //---------(20110228) 경북대
- var gcurrentpid = "";
- var gpidPath = "/root/temp/cond/settingpatient/settingpatientlist";
- //---------(20110228) 경북대
- //경북대 응급실 관련 변수 (2011.03.02 Ahn)
- var eERDEPTCD = "";
- var eERFLAG = "";
- //경북대 환자 콤보 리스트 경로
- var erPatPidPath = "/root/temp/cond/patientgrup/patientgruplist";
- //경북대 기록지 구분용 (기록 유무 표시) _ 2011.03.10 (ahn)
- var eRECFLAG = "erFlow"; // 임상관찰기록
- //var sChartNum = 1;
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 환경 설정 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitViewer(){
- //FlowSheet 환경설정 정보 조회(FlowSheet에서 화면설정 버튼 눌러 설정하는 정보들)
- submit("TRMNR10101", false);
- if( getNodesetCount(sSettingNode) > 0 ){
- //화면 open시점 설정 정보
- sStartTm = model.getValue(sSettingNode + "/starttm" ); //조회시작시간
- sGraphUseYn = model.getValue(sSettingNode + "/graphuseyn" ); //그래프사용여부
- sSrchTypeInfo = model.getValue(sSettingNode + "/srchtypeinfo" ); //조회분류정보
- sInitTimeFlag = model.getValue(sSettingNode + "/inittimeflag" ); //초기조회시간구분
- sWardBtnUseYn = model.getValue(sSettingNode + "/wardbtnuseyn" ); //병동버튼사용여부
- sTmpSaveUseYn = model.getValue(sSettingNode + "/tmpsaveuseyn" ); //임시저장사용여부
- sIoTmUseYn = model.getValue(sSettingNode + "/iotmuseyn" ); //경구입력화면 버튼 사용여부
- if(getNodesetCount(sSettingNode + "/srchtminfo/minlist/item") > 0){
- model.copynode("/root/init/minlist", sSettingNode + "/srchtminfo/minlist"); //조회시간값
- }
- //환자 정보 조회 후 설정 정보
- sSeriousYseYn = model.getValue(sSettingNode + "/serioususeyn" ); //중증정보사용여부
- sApchUseYn = model.getValue(sSettingNode + "/apchuseyn" ); //아파치정보사용여부
- sHdayUseYn = model.getValue(sSettingNode + "/hdayuseyn" ); //HospitalDay사용여부
- sIcuDayUseYn = model.getValue(sSettingNode + "/icudayuseyn" ); //ICUDay사용여부
- sOpddUseYn = model.getValue(sSettingNode + "/opdduseyn" ); //수술일정보사용여부
- sPodUseYn = model.getValue(sSettingNode + "/poduseyn" ); //OP경과일사용여부
- sCpDayUseYn = model.getValue(sSettingNode + "/cpdayuseyn" ); //CP적용일자사용여부
- sBmtUseYn = model.getValue(sSettingNode + "/bmtuseyn" ); //BMT적용일자사용여부
- sAntiDayUseYn = model.getValue(sSettingNode + "/antidayuseyn" ); //항암프로토콜적용일사용여부
- sHeightUseYn = model.getValue(sSettingNode + "/heightuseyn" ); //키정보사용여부
- sWeightUseYn = model.getValue(sSettingNode + "/weightuseyn" ); //몸무게정보사용여부
- sBloodUseYn = model.getValue(sSettingNode + "/blooduseyn" ); //혈액준비사용여부
- sChngRoomUseYn = model.getValue(sSettingNode + "/chngroomuseyn" ); //전실사용여부
- sFamilyMeetUseYn = model.getValue(sSettingNode + "/familymeetuseyn"); //가족면회정보사용여부
- sBrthddUseYn = model.getValue(sSettingNode + "/brthdduseyn" ); //출생일정보조회여부
- //데이터 조회 후 처리 설정 정보
- sHeaderFlag = model.getValue(sSettingNode + "/headerflag" ); //조회해더구분(A:전체, D:일시 두줄 조회, T:일시 한줄조회)
- sDayStndTm = model.getValue(sSettingNode + "/daystndtm" ); //Day기준시간
- sEvenStndTm = model.getValue(sSettingNode + "/evenstndtm" ); //Evening기준시간
- sNightStndTm = model.getValue(sSettingNode + "/nightstndtm" ); //Night기준시간
- sDataRowHeight = model.getValue(sSettingNode + "/datarowheight" ); //Grid행 높이
- sDataFontSize = model.getValue(sSettingNode + "/datafontsize" ); //Grid글씨크기
- sTotaluseYn = model.getValue(sSettingNode + "/totaluseyn" ); //합계사용여부
- sSubTotaluseYn = model.getValue(sSettingNode + "/subtotaluseyn" ); //부분합계사용여부
- sRunTotaluseYn = model.getValue(sSettingNode + "/runtotaluseyn" ); //누적합계사용여부
- sEventItemUseYn = model.getValue(sSettingNode + "/eventitemuseyn" ); //Event사용여부
- }
- //화면 선택 정보(24시간 기준으로 ~)
- sSelectView = "24hours";
- //그래프 사용 여부 설정
- if(sGraphUseYn == "Y"){
- if(model.getValue(sCondPath+"/vwctrl_4days") == ""){ // (A : Graph Off, I : Graph On)
- model.setValue(sCondPath+"/vwctrl_4days", "I");
- }
- if(model.getValue(sCondPath+"/vwctrl_24hours") == ""){ // (A : Graph Off, I : Graph On)
- model.setValue(sCondPath+"/vwctrl_24hours", "I");
- }
- //그래프 초기화 작업 함수 호출(그래프 생성 함수와 동일 Parameter로 처리)
- fMakeChart("init24hours");
- }else{
- if(model.getValue(sCondPath+"/vwctrl_4days") == ""){ // (A : Graph Off, I : Graph On)
- model.setValue(sCondPath+"/vwctrl_4days", "A");
- }
- if(model.getValue(sCondPath+"/vwctrl_24hours") == ""){ // (A : Graph Off, I : Graph On)
- model.setValue(sCondPath+"/vwctrl_24hours", "A");
- }
- }
-
- //병동관련 업무 Btn그룹 사용 여부 설정
- if(sWardBtnUseYn == "Y"){
- grp_wardbtn.visible = true;
- }else{
- grp_wardbtn.visible = false;
- }
- //임시저장 기능 사용 여부 설정
- if(sTmpSaveUseYn == "Y"){
- btn_tempsave.disabled = false;
- }else{
- btn_tempsave.disabled = true;
- }
- //경구입력화면 버튼 사용여부
- if( sIoTmUseYn == "Y" ){
- btn_EtrlInpt.visible = true;
- }else{
- btn_EtrlInpt.visible = false;
- }
- //model.setValue(sCondPath+"/vwctrl_button","24hours");
- //model.setValue(sCondPath+"/daycountinfo", "1 2 3 4 5 6");
- //model.setValue(sCondPath+"/formerdaycountinfo", "1 2 3 4 5 6");
- //화면 전환 및 그래프 설정
- fChageView(sSelectView);
- //파라미터 정보 조회
- sParamInfo = "";
- sSpParamInfo = "";
- //24시간 그리드 콤보 노드 세팅
- for(var i=0; i< 24; i++){
- model.makeNode("/root/init/hourlist/item["+(i+1)+"]");
- if(i <10){
- model.makeValue("/root/init/hourlist/item["+(i+1)+"]/cd","0"+i);
- }else{
- model.makeValue("/root/init/hourlist/item["+(i+1)+"]/cd",i);
- }
- model.makeValue("/root/init/hourlist/item["+(i+1)+"]/nm",i);
- }
- //사용자 직급구분에 따른 화면 제어 설정
- sJobKindCD = getUserInfo("jobkindcd"); // 직급코드
- sUserDeptCd = getUserInfo("dutplcecd"); // 근무부서코드
- sUserId = getUserInfo("userid"); // 사용자ID
- sUserNm = getUserInfo("usernm"); // 사용자명
- //---------(20101204) 경북대
- //추가
- var ssflag = "";
- if(getUserInfo("dutplceinstcd") != '032' && getUserInfo("dutplceinstcd") != '031') {
- //경북대가 아니면
- if( sJobKindCD == "0330" || sJobKindCD == "0310"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- } else if(getUserInfo("dutplceinstcd") == '032' || getUserInfo("dutplceinstcd") == '031') {
- //경북대이면 03%로 체크한다.
- if( sJobKindCD.substring(0, 2) == "03"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- }
- //원본:의사의 경우만
- //병동, 진료 구분 설정
- //if(sJobKindCD == "0330" || sJobKindCD == "0310"){
- if(ssflag=="Y") {
- //---------(20101204) 경북대
- sUserFlag = "2";
- }else{
- sUserFlag = "1";
- }
- //사용자 구분에 따른 설정 변경 Test Setting
- //sUserFlag = "2";
- model.setValue(sCondPath+"/srchflag", sUserFlag);
- //Parameter 정보 체크
- if(checkOpener()){
- /**
- SMMNR00900_Param
- pid▦indd▦cretno▦instcd▩ ==> 등록번호▦입원일자▦생성번호▦기관코드▩
- SMMNR00900_SpParam
- pid▦indd▦cretno▦instcd▦inrmdt▦dutplcecd▩ ==> 등록번호▦입원일자▦생성번호▦기관코드▦근무지코드▩
- => Sample Param
- sSpParamInfo = "pid▦indd▦cretno▦instcd▦inrmdt▩18907181▦20080102▦800340650▦012▦20080930120300▦3073300000▩";
- sParamInfo = "pid▦indd▦cretno▦instcd▩19466116▦20080913▦800511468▦012▩";
- **/
- sSpParamInfo = opener.javascript.getParameter("SMMNR00900_SpParam");
- if(sSpParamInfo == ""){
- sParamInfo = opener.javascript.getParameter("SMMNR00900_Param");
- setParameter("SMMNR00900_Param","");
- }else{
- sParamInfo = sSpParamInfo;
- sDutplcecd = fGetArrayDataTPR(sSpParamInfo,1,5);
- }
- }
- model.setValue(sCondPath+"/timeflag", sInitTimeFlag);
- model.setValue(sCondPath+"/cmbstatusx", "0");
- model.setValue(sCondPath+"/cmbstatusy", "0");
- model.setValue(sCondPath+"/rectm",sStartTm);
- }
- function fControlPatInfo(){
- sPatInfoViewCdnt = 15; //0->15로 수정_20110207_SMY
- if(sSeriousYseYn == "Y"){
- cap_serious.visible = true;
- cap_seriousvalue1.visible = true;
- cap_seriousvalue2.visible = true;
- cap_seriousvalue3.visible = true;
- cap_serious.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_serious.attribute("width").replace("px", ""));
- cap_seriousvalue1.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_seriousvalue1.attribute("width").replace("px", ""));
- cap_seriousvalue2.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_seriousvalue2.attribute("width").replace("px", ""));
- cap_seriousvalue3.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_seriousvalue3.attribute("width").replace("px", "")) + 5;
- }
- if(sApchUseYn == "Y"){
- cap_apch.visible = true;
- cap_apchvalue.visible = true;
- cap_apch.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_apch.attribute("width").replace("px", ""));
- cap_apchvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_apchvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sHdayUseYn == "Y"){
- sDayCountCnt++;
- cap_hd.visible = true;
- cap_hdvalue.visible = true;
- cap_hd.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_hd.attribute("width").replace("px", ""));
- cap_hdvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_hdvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sIcuDayUseYn == "Y"){
- sDayCountCnt++;
- cap_icu.visible = true;
- cap_icuvalue.visible = true;
- cap_icu.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_icu.attribute("width").replace("px", ""));
- cap_icuvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_icuvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sOpddUseYn == "Y"){
- cap_opdd.visible = true;
- cap_opddvalue.visible = true;
- cap_opdd.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_opdd.attribute("width").replace("px", ""));
- cap_opddvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_opddvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sPodUseYn == "Y"){
- sDayCountCnt++;
- cap_pod.visible = true;
- cap_podvalue.visible = true;
- cap_pod.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_pod.attribute("width").replace("px", ""));
- cap_podvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_podvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sCpDayUseYn == "Y"){
- sDayCountCnt++;
- cap_cp.visible = true;
- cap_cpvalue.visible = true;
- cap_cp.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_cp.attribute("width").replace("px", ""));
- cap_cpvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_cpvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sBmtUseYn == "Y"){
- sDayCountCnt++;
- cap_bmt.visible = true;
- cap_bmtvalue.visible = true;
- cap_bmt.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_bmt.attribute("width").replace("px", ""));
- cap_bmtvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_bmtvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sAntiDayUseYn == "Y"){
- sDayCountCnt++;
- cap_d.visible = true;
- cap_dvalue.visible = true;
- cap_d.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_d.attribute("width").replace("px", ""));
- cap_dvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_dvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sHeightUseYn == "Y"){
- cap_height.visible = true;
- cap_heightvalue.visible = true;
- cap_height.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_height.attribute("width").replace("px", ""));
- cap_heightvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_heightvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sWeightUseYn == "Y"){
- cap_weight.visible = true;
- cap_weightvalue.visible = true;
- cap_weight.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_weight.attribute("width").replace("px", ""));
- cap_weightvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_weightvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sBloodUseYn == "Y"){
- cap_blood.visible = true;
- cap_bloodvalue.visible = true;
- cap_blood.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_blood.attribute("width").replace("px", ""));
- cap_bloodvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_bloodvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sChngRoomUseYn == "Y"){
- cap_chngroom.visible = true;
- cap_chngroomvalue.visible = true;
- cap_chngroom.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_chngroom.attribute("width").replace("px", ""));
- cap_chngroomvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_chngroomvalue.attribute("width").replace("px", "")) + 5;
- }
- if(sBrthddUseYn == "Y"){
- cap_brthdd.visible = true;
- cap_brthddvalue.visible = true;
- cap_brthdd.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_brthdd.attribute("width").replace("px", ""));
- cap_brthddvalue.attribute("left") = sPatInfoViewCdnt;
- sPatInfoViewCdnt = eval(sPatInfoViewCdnt) + eval(cap_brthddvalue.attribute("width").replace("px", "")) + 10;
- }
- if(sFamilyMeetUseYn == "Y"){
- cap_familymeetam.visible = true;
- cap_familymeetamvalue.visible = true;
- cap_familymeetpm.visible = true;
- cap_familymeetpmvalue.visible = true;
- }
- patinfolist_width = 1071;
- patinfolist_left = 0;
- //환자 기본 정보 조회 화면 위치 설정
- if(patinfolist_width - sPatInfoViewCdnt >= 225 ){
- grp_patinfolist.attribute("left") = 225;
- grp_patinfolist.attribute("width") = patinfolist_width - 225;
- }else{
- grp_patinfolist.attribute("left") = patinfolist_width - sPatInfoViewCdnt ;
- grp_patinfolist.attribute("width") = sPatInfoViewCdnt;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(pFlag){
- fSettingPamInfo(); // 함수 내 응급실 부서코드 조회 추가 (2011.03.02 Ahn)
- /* 중환자실 부서 조회 ( 2011.03.25 Ahn)
- * 내환자 저장 시 다음환자 넘어가지 않는 부서 추가 ( 2011.04.18)
- * 간호일지, 임상관찰기록 화면 공통코드 신규 생성 ('T30')
- */
- model.makeValue("/root/send/cdgpid", "T30");
- submit("TRMNW04001");
-
- if (pFlag == "init") {
- sParamInfo = "";
- }
- //parameter 정보 여부에 따른 처리ㅋ
- if(sParamInfo == ""){
- //환자정보 조회
- sPamInfo = getGlobalVariable("paminfo");
- model.removenodeset("/root/main/paminfo/pamlist");
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
- //상단정보 존재 여부 체크
- if(sPamInfo == ""){
- //내환자 등록 내역이 있으면 내환자 첫번째 환자 세팅
- if( getNodesetCount("/root/temp/cond/settingpatient/settingpatientlist") > 0){
- fSetParam("SettingPat", 1);
- return;
- }else{
- model.setValue(sCondPath+"/recdd",getCurrentDate());
- model.setValue(sCondPath+"/formerrecdd", getDateCalc(model.getValue(sCondPath+"/recdd"),1));
- fChkTgtPatInfo("disable");
- fChangUserTypeSrch(sUserFlag);
- model.refresh();
- return;
- }
- }else{
- fChkTgtPatInfo("able");
- fSettingViewCtrl();
- }
- fSettingPatInfo();
- //2008-04-28 삭제
- //var patinfo = "등록번호: "+sPid+", 환자명: "+model.getValue(xPamInfoPath+"/hngnm")+", 성별/나이: "+
- //model.getValue(xPamInfoPath+"/sex")+"/"+model.getValue(xPamInfoPath+"/age")+", 병실:"+model.getValue(xPamInfoPath+"/roomcd");
- //model.setValue(sCondPath+"/patinfo",patinfo);
- }else{
-
- sPid = fGetArrayDataTPR(sParamInfo,1,0); // 등록번호
- sIndd = fGetArrayDataTPR(sParamInfo,1,1); // 입원일자
- sCretNo = fGetArrayDataTPR(sParamInfo,1,2); // 생성번호
- sInstcd = fGetArrayDataTPR(sParamInfo,1,3); // 기관코드
- //sJobKindCD = fGetArrayDataTPR(sParamInfo,1,4); // 직급코드
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- submit("TRMNR00910", false);
- if(getNodesetCount("/root/main/patinfo") < 1){
- model.setValue(sCondPath+"/recdd",getCurrentDate());
- model.setValue(sCondPath+"/formerrecdd", getDateCalc(model.getValue(sCondPath+"/recdd"),1));
- fChkTgtPatInfo("disable");
- fChangUserTypeSrch(sUserFlag);
- //model.toggle("case_24hoursstnd");
- model.refresh();
- return;
- }else{
- fChkTgtPatInfo("able");
- fSettingViewCtrl();
- }
- sIOFlag = model.getValue("/root/main/patinfo/ordtype"); // 입원/외래 구분
- sWardCD = model.getValue("/root/main/patinfo/wardcd"); // 병동코드
- sRoomCD = model.getValue("/root/main/patinfo/roomcd"); // 병실코드
- sIndschacptstat = model.getValue("/root/main/patinfo/indschacptstat"); //입퇴원구분코드
- sDschdd = model.getValue("/root/main/patinfo/dschdd"); // 퇴원일자
- sOrdDeptcd = model.getValue("/root/main/patinfo/orddeptcd"); // 진료과
- sMedispclid = model.getValue("/root/main/patinfo/medispclid"); // 주치의
- model.setValue(sCondPath+"/pid", sPid);
- }
- // 응급실일 경우 (2011.02.24 Ahn)
- fGetWardChngInfo("Y", pFlag);
-
- fSettingPatInfo2("init");
-
-
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 사용자별 조회 조건 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingUserTypeSrch(pFlag){
- if( pFlag == "1"){
- grp_outpatinfo.visible = false;
- grp_oderinpatinfo.visible = false;
- grp_inpatinfo.visible = true;
- }else{
- grp_outpatinfo.visible = false;
- grp_inpatinfo.visible = false;
- grp_oderinpatinfo.visible = true;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 사용자별 조회 조건 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangUserTypeSrch(pFlag){
- fInitViewInfo();
- fSettingUserTypeSrch(pFlag);
- var sSettingId1 = "-";
- var sSettingId2 = "-";
- if( pFlag == "1" ){
- if( cmb_wardlist.value == "" ){
- cmb_wardlist.value = sUserDeptCd;
- cmb_wardlist.dispatch("xforms-value-changed");
- }else{
- fGetCareComRoomList(sUserDeptCd);
- model.setValue("/root/temp/cond/wardcdgrup/wardcdgruplist", sUserDeptCd);
- cmb_wardlist.refresh();
- }
- }else{
- if( sUserFlag == "2" ){
- if( cmb_deptlist.value == "" ) return;
- mmbfGetUserComboList("/root/send/reqdata", "/root/temp/cond/doctlist/medispcl" , sUserDeptCd, "0330", "", "M");
- mmbfGetUserComboList("/root/send/reqdata", "/root/temp/cond/doctlist/atdoct", sUserDeptCd, "0330", "", "A");
- addComboInstance("/root/temp/cond/doctlist/medispcl", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- addComboInstance("/root/temp/cond/doctlist/atdoct", "userid^usernm", "-^전체", "usercombo");//의사콤보 전체항목 추가
- if(model.getValue("/root/temp/cond/doctlist/medispcl/usercombo[userid='"+ sUserId+"']/userid") != ""){
- sSettingId1 = sUserId
- }
- if(model.getValue("/root/temp/cond/doctlist/atdoct/usercombo[userid='"+ sUserId+"']/userid") != ""){
- sSettingId2 = sUserId
- }
- fGetCareComDeptPatList(sUserDeptCd, sSettingId1 , sSettingId2, model.getValue("/root/init/mypatsrchflag"));
- if( model.getValue("/root/temp/cond/deptgrup/deptgruplist[deptcd='"+ sUserDeptCd +"']/dept") != "" ){
- model.setValue("/root/temp/cond/deptgrup/deptgruplist/dept", sUserDeptCd);
- model.setValue("/root/temp/cond/doctlist/medispcl/usercombo", sSettingId1);
- model.setValue("/root/temp/cond/doctlist/atdoct/usercombo", sSettingId2);
- }else{
- model.setValue("/root/temp/cond/deptgrup/deptgruplist/dept", "-");
- }
- }else{
- model.setValue("/root/temp/cond/deptgrup/deptgruplist/dept", "-");
- model.removenodeset("/root/temp/cond/doctlist/medispcl/usercombo");
- model.removenodeset("/root/temp/cond/doctlist/atdoct/usercombo");
- }
- cmb_deptlist.refresh();
- cmb_medispcllist.refresh();
- cmb_atdoctlist.refresh();
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 초기 param 존재 하지 않을 경우 환자 선택화면 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingPamInfo(){
- //병동코드 조회
- fGetCareComWardList("false");
- //------------(20110209) 경북대
- //내환자 조회
- //fGetSettingPatientList("false");
- fGetSettingPatientList_type2("false");
- //------------(20110209) 경북대
- //진료과 정보 조회
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/temp/cond/deptgrup/deptgruplist" , "D"); //부서코드 콤보
- //응급의료센터 부서코드 추출_ 경북대 (2011.02.24 Ahn)
- model.makeValue("/root/send/cdgrupid", "'002'");
- model.makeValue("/root/send/srchdd" , getCurrentDate()); // 조회기준일자
- model.makeNode("/root/code/codeinfo");
- if(submit("TRMNW00001", false)){
- eERDEPTCD = model.getvalue("/root/code/codeinfo/codelist[cdgrupid='002']/cdid");
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 버튼 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingViewCtrl(){
- // 의사의 경우는 조회만 가능
- if(sUserFlag == "2"){
- btn_viewsetting.disabled = true;
- btn_cleanitem.disabled = true;
- grp_wardbtn.disabled = true;
- btn_EtrlInpt.disabled = true;
- btn_cdisopen.disabled = true;
- btn_24hoursnursitem.disabled = true;
- btn_tempsave.disabled = true;
- btn_24hourscertsave.disabled = true;
- }
- /*
- else{
- btn_24hourscertsave.disabled = false;
- btn_24hoursnursitem.disabled = false;
- btn_EtrlInpt.disabled = false;
- btn_cdisopen.disabled = false;
- }
- */
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 이전/이후 날짜 Setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCalcDate(pFlag, pVWFlag, pTerm){
- var sRecDT = model.getValue(sCondPath+"/recdd")+model.getValue(sCondPath+"/rectm");
- switch(pVWFlag){
- case "24hours" :
- var sTime = eval(model.getValue(sCondPath+"/timeflag")) * pTerm;
- sRecDT = sRecDT.toDate("YYYYMMDDhhmmss");
- if(pFlag == "-"){
- sRecDT.setMinutes(sRecDT.getMinutes() - sTime);
- }else{
- sRecDT.getAddDate(sTime, "m");
- }
- model.setValue(sCondPath+"/recdd",getDateTime(sRecDT,'기본').substr(0,8));
- model.setValue(sCondPath+"/rectm",getDateTime(sRecDT,'기본').substr(8,6));
- break;
- case "4days" :
- model.setValue(sCondPath+"/recdd",getDateCalc(model.getValue(sCondPath+"/recdd"),4,pFlag));
- break;
- }
- fSearchClincObsRec(pVWFlag);
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 전환
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChageView(pFlag){
- model.setValue(sCondPath+"/vwctrl_button", pFlag);
- switch(pFlag){
- case "24hours" :
- //model.toggle("case_24hoursstnd");
- //chk_24hoursclslist.visible = true;
- //chk_supitemcd.visible = false;
- model.setValue(sCondPath+"/hourschartinfo","1 2 3 4 5");
- //model.setValue(sCondPath+"/daycountinfo", "1 2 3 4 5 6");
- break;
- }
- fControlGridSize(pFlag);
- //fSearchClincObsRec();
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 시작일자 계산, FlowSheet 화면 보는 단위가 1분이 아닐경우에는 분을 0분으로 맞춰서 리턴함.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCalcStartDate(pDate, pTimeFlag){
- var sStartDT = pDate.toDate("YYYYMMDDhhmmss");
- var sTime = "";
- var sRemainder = 0;
- if(pTimeFlag != 1 ){
- sRemainder = eval(pDate.substr(10,2))%pTimeFlag;
- }
- sStartDT.setMinutes(sStartDT.getMinutes()-sRemainder);
- return sStartDT;
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 크기 조절(Graph Off/ Graph On)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlGridSize(pFlag){
- switch(pFlag){
- case "24hours" : // 24시간 화면
- if(model.getValue(sCondPath+"/vwctrl_24hours") == "A"){ // Graph Off
- btn_24hoursvwctrl.value = "차트보기";
- model.setValue(sCondPath+"/vwctrl_24hours","I");
- document.all.item("obj_24hourschart").visible = false;
- document.all.item("obj_24hourschart").refresh();
- //grd_24hoursheader.visible = false;
- btn_24hoursup.visible = false;
- btn_24hoursdown.visible = false;
- //그래프 체크박스 숨김,보임 설정
- grp_chkbox.visible = false;
- chk_hourschartinfo.visible = false;
- //chk_dayschartinfo.visible = false;
- line2.attribute("y1") = 0;
- line2.attribute("y2") = 0;
- grd_24hoursclincobsreclist.attribute("top") = 4;
- grd_24hoursclincobsreclist.attribute("height") = 662;
- btn_24hoursdetailbefore.attribute("top") = 6;
- btn_24hoursdetailafter.attribute("top") = 6;
- }else{
- btn_24hoursvwctrl.value = "차트닫기";
- model.setValue(sCondPath+"/vwctrl_24hours","A");
- document.all.item("obj_24hourschart").visible = true;
- document.all.item("obj_24hourschart").refresh();
- //grd_24hoursheader.visible = true;
- btn_24hoursup.visible = true;
- btn_24hoursdown.visible = true;
- //그래프 체크박스 숨김,보임 설정
- grp_chkbox.visible = true;
- chk_hourschartinfo.visible = true;
- //chk_dayschartinfo.visible = false;
- line2.attribute("y1") = 224;
- line2.attribute("y2") = 224;
- grd_24hoursclincobsreclist.attribute("top") = 228;
- grd_24hoursclincobsreclist.attribute("height") = 429;
- btn_24hoursdetailbefore.attribute("top") = 231;
- btn_24hoursdetailafter.attribute("top") = 231;
- }
- btn_24hoursvwctrl.refresh();
- //fCreateHeader(pFlag);
- setTree(grd_24hoursclincobsreclist,31,0,false);
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 차트 생성
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMakeChart(pFlag){
- var Obj_Chart;
- var sColCnt = 0;
- var sRecRslt = "";
- var sRecRslt1 = "";
- var sChartInfo = "";
- var sRecDD = "";
- var sRecTM = "";
- var sRecRsltArr = new Array();
- var sRecRslt1Arr = new Array();
- var iArrSize = 0;
- var iChartPos = 0;
- var idx=0;
- if(pFlag == "24hours" || pFlag == "4days"){
- //2008-05-19 추가
- for(var i = 1 ; i <= getNodesetCount(xClincObsRecListPath) ; i++){
- if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "1" ){
- sChartItem[0] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }else if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "2"){
- sChartItem[1] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }else if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "3" && model.getValue(xClincObsRecListPath +"["+ i +"]/graphappyn")=="Y" ){
- sChartItem[2] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }else if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "4" && model.getValue(xClincObsRecListPath +"["+ i +"]/graphappyn")=="Y" ){
- sChartItem[3] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }else if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "5" && model.getValue(xClincObsRecListPath +"["+ i +"]/graphappyn")=="Y" ){
- sChartItem[4] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }else if(model.getValue(xClincObsRecListPath +"["+ i +"]/leftaxis") == "6" && model.getValue(xClincObsRecListPath +"["+ i +"]/graphappyn")=="Y" ){
- sChartItem[5] = model.getValue(xClincObsRecListPath +"["+ i +"]/itemcd");
- }
- }
- }else{
- sChartItem[0] = "99999999"; // 혈압(low)
- sChartItem[1] = "99999999"; // 혈압(high)
- sChartItem[2] = "99999999"; // 맥박
- sChartItem[3] = "99999999"; // 호흡
- sChartItem[4] = "99999999"; // 체온
- sChartItem[5] = "99999999"; // BP(M)
- }
- if(pFlag == "24hours" || pFlag == "init24hours" ){
- obj_24hourschart.ClearChart();
- sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
- //obj_24hourschart.RemoveAllSeries();
- //obj_24hourschart.Axis.RemoveAllCustom();
- //margin 값 정하기
- //obj_24hourschart.Panel.MarginTop = 1;
- obj_24hourschart.Panel.MarginTop = 3;
- obj_24hourschart.Panel.MarginLeft = 10;
- obj_24hourschart.Panel.MarginRight = 0;
- obj_24hourschart.Panel.MarginBottom = -1;
- //하단축 칸 수 정하기와 눈금 없애기
- obj_24hourschart.Axis.Bottom.Automatic = false; //하단축 자동 설정(기본값)
- obj_24hourschart.Axis.Bottom.Labels.Visible = true; //하단축 Label 설정
- obj_24hourschart.Axis.Bottom.Labels.multiline = true; //하단축 Label 2줄 설정
- obj_24hourschart.Axis.Bottom.Labels.Font.Size = 1; //하단축 Label 폰트 사이즈 조절
- //obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하단축 최소, 최대 길이 설정
- obj_24hourschart.Axis.Bottom.Minimum = 0;
- obj_24hourschart.Axis.Bottom.Maximum = 24.1;
- obj_24hourschart.Axis.Bottom.Increment = 1; //하단축 증가값 설정
- obj_24hourschart.Axis.Bottom.MinorTickCount = 0; //하단축 눈금 갯수 설정
- obj_24hourschart.Axis.Bottom.TicksInner.visible = true; //하단축 눈금 안쪽 표시 설정
- Obj_Chart = obj_24hourschart;
- sColCnt = 24;
- }
- Obj_Chart.Axis.Bottom.AxisPen.Visible = false ;
- Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
- Obj_Chart.Axis.Bottom.Labels.Font.Color = 0x000000; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
- Obj_Chart.Panel.BevelWidth = 0; // 주위 테두리 넓이 0으로 설정
- Obj_Chart.Header.Visible = false; // Graph Header 정보 사용 여부
- Obj_Chart.Aspect.View3D = false; // 2d 로 표현하기
- Obj_Chart.Zoom.Enable = true; // zoom 사용하지 않기 (마우스 하단으로 드래그 zoomin, 마우스 상단으로 드래그 zoomout)
- Obj_Chart.Scroll.Enable = true; // scroll 사용하지 않기
- Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
- Obj_Chart.Tools.Add(8); // 그래프 Hint 설정
- Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
- Obj_Chart.Panel.Gradient.StartColor = 0xffffff; // 그라디언트 시작색깔
- Obj_Chart.Panel.Gradient.EndColor = 0xffffff; // 그라디언트 종료색깔
- Obj_Chart.Environment.MouseWheelScroll = true; // Graph 마우스 휠 사용 여부
- // 혈압을 나타내는 막대그래프를 먼저 그려야 맥박, 체온,호흡 점이 막대 그래프에 가려지지 않는다.
- // 20130106_dark9258_이해확인을 위한 주석 추가.
- // 그래프의 좌측에 그래프 선색깔 각각별로의 축을 그린다.(축에 대한 정보를 그린다.)
- // 현재는 3가지의 축을 그린다.( (혈압,맥박), (호흡), (체온)에 대한 축을 그린다.
- // 3가지 종류만 그린이유는 그래프에 들어갈 값의 범위별로 Axis.Custom객체를 추가하였다..
- //스크롤없이 처음 한화면에 보이는 범위이다.
- // 혈압 및 맥박의 범위는 20~200, 증가는 20단위..
- // 호흡의 범위는 0~90
- var cus_axis1 = Obj_Chart.Axis.AddCustom(false); // 혈압축
- Obj_Chart.Axis.Custom(0).AxisPen.Color = 0x0000ff;
- //Obj_Chart.Axis.Custom(0).Title.Caption = "혈압/맥박"
- Obj_Chart.Axis.Custom(0).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(0).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(0).Title.Angle = 90;
- Obj_Chart.Axis.Custom(0).PositionPercent = -1;
- Obj_Chart.Axis.Custom(0).StartPosition = 0;
- Obj_Chart.Axis.Custom(0).EndPosition = 100;
- Obj_Chart.Axis.Custom(0).Automatic = false;
- Obj_Chart.Axis.Custom(0).Maximum = 200;
- Obj_Chart.Axis.Custom(0).Minimum = 20;
- Obj_Chart.Axis.Custom(0).Increment = 20;
- var cus_axis2 = Obj_Chart.Axis.AddCustom(false); // 호흡축
- Obj_Chart.Axis.Custom(1).AxisPen.Color = 0x00ff00;
- //Obj_Chart.Axis.Custom(1).Title.Caption = "호흡";
- Obj_Chart.Axis.Custom(1).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(1).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(1).Title.Angle = 90;
- Obj_Chart.Axis.Custom(1).PositionPercent = -9;
- Obj_Chart.Axis.Custom(1).Automatic = false;
- Obj_Chart.Axis.Custom(1).Maximum = 90;
- Obj_Chart.Axis.Custom(1).Minimum = 0;
- Obj_Chart.Axis.Custom(1).Increment = 10;
- var cus_axis3 = Obj_Chart.Axis.AddCustom(false); // 체온축
- Obj_Chart.Axis.Custom(2).AxisPen.Color = 0xff0000;
- //Obj_Chart.Axis.Custom(2).Title.Caption = "체온";
- Obj_Chart.Axis.Custom(2).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(2).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(2).Title.Angle = 90;
- Obj_Chart.Axis.Custom(2).PositionPercent = -5;
- Obj_Chart.Axis.Custom(2).Automatic = false;
- Obj_Chart.Axis.Custom(2).Maximum = 40.0;
- Obj_Chart.Axis.Custom(2).Minimum = 35.5;
- Obj_Chart.Axis.Custom(2).Increment = 0.5;
-
- //Custom 차트의 종류를 추가한다.(Series는 chart종류를 의미한다.
- //AddSeries(0)은 Line Series를 의미한다.
- //AddSeries(11)은 caldle
- // 37 horizon line
- Obj_Chart.AddSeries (0); //38도선
- Obj_Chart.Series(0).VerticalAxisCustom = cus_axis3; //38도선
- Obj_Chart.Series(0).asLine.LinePen.Width = 2; //라인의 굵기를 정함, 그래프 라인굵기
- Obj_Chart.Series(0).Color = 0xffcc00; //진한하늘색 38도선 그래프 라인 색깔.
- Obj_Chart.Series(0).Depth = 1;
- Obj_Chart.Series(0).AddXY (-5, 38, "", Obj_Chart.Series(0).Color );
- Obj_Chart.Series(0).AddXY (70, 38, "", Obj_Chart.Series(0).Color );
- Obj_Chart.AddSeries (11); // OP
- Obj_Chart.Series(1).VerticalAxisCustom = cus_axis1; // OP
- Obj_Chart.Series(1).asCandle.CandleStyle = 2;
- Obj_Chart.Series(1).asCandle.CandleWidth = 2;
- Obj_Chart.Series(1).Color = 0x0000ff; //red OP
- Obj_Chart.Series(1).Depth = 1;
- Obj_Chart.AddSeries (11); // 혈압
- Obj_Chart.Series(2).VerticalAxisCustom = cus_axis1; // 혈압
- Obj_Chart.Series(2).asCandle.CandleStyle = 2; //1:2:선 0:안보임
- Obj_Chart.Series(2).asCandle.CandleWidth = 6; //세로막대표시 선 굵기.
- Obj_Chart.Series(2).Color = 0x000000; //black 혈압
- Obj_Chart.Series(2).Depth = 1;
- Obj_Chart.AddSeries (0); //맥박
- Obj_Chart.Series(3).VerticalAxisCustom = cus_axis1;//맥박
- Obj_Chart.Series(3).asLine.LinePen.Width = 2;
- Obj_Chart.Series(3).Color = 0x0000ff; //red
- Obj_Chart.Series(3).asLine.Pointer.Visible = true; //맥박 Pointer 설정
- Obj_Chart.Series(3).asLine.Pointer.Style = 1;
- Obj_Chart.Series(3).asLine.Pointer.VerticalSize = 3;
- Obj_Chart.Series(3).asLine.Pointer.HorizontalSize = 3;
- Obj_Chart.Series(3).Depth = 1;
- Obj_Chart.AddSeries (0); // 호흡
- Obj_Chart.Series(4).VerticalAxisCustom = cus_axis2; // 호흡
- Obj_Chart.Series(4).asLine.LinePen.Width = 2;
- Obj_Chart.Series(4).Color = 0x00ff00; //green 호흡
- Obj_Chart.Series(4).asLine.Pointer.Visible = true;
- Obj_Chart.Series(4).asLine.Pointer.Style = 0;
- Obj_Chart.Series(4).asLine.Pointer.VerticalSize = 2;
- Obj_Chart.Series(4).asLine.Pointer.HorizontalSize = 2;
- Obj_Chart.Series(4).Depth = 1;
- Obj_Chart.AddSeries (0); // 체온
- Obj_Chart.Series(5).VerticalAxisCustom = cus_axis3; // 체온
- Obj_Chart.Series(5).asLine.LinePen.Width = 2;
- Obj_Chart.Series(5).Color = 0xff0000; //blue 체온
- Obj_Chart.Series(5).asLine.Pointer.Visible = true;
- Obj_Chart.Series(5).asLine.Pointer.Pen.color = 0xff0000;
- Obj_Chart.Series(5).asLine.Pointer.Pen.width = 2;
- Obj_Chart.Series(5).asLine.Pointer.Style = 2; //점표시
- Obj_Chart.Series(5).asLine.Pointer.VerticalSize = 2; //
- Obj_Chart.Series(5).asLine.Pointer.HorizontalSize = 2; //
- Obj_Chart.Series(5).Depth = 3;
- //BP(M)
- Obj_Chart.AddSeries (0); //
- Obj_Chart.Series(6).VerticalAxisCustom = cus_axis1; //
- Obj_Chart.Series(6).asLine.LinePen.Width = 2; //
- Obj_Chart.Series(6).asLine.LinePen.style = 2; //
- Obj_Chart.Series(6).Color = 0x000000; //Line 색 Black
- Obj_Chart.Series(6).asLine.Pointer.Visible = true; //Pointer 표시여부
- Obj_Chart.Series(6).asLine.Pointer.Pen.color = 0x000000; //Pointer 색 Black
- Obj_Chart.Series(6).asLine.Pointer.Pen.width = 2; //Pointer 선굵기 2
- Obj_Chart.Series(6).asLine.Pointer.Style = 5; //점표시 모양이 X모양의 점이다.
- Obj_Chart.Series(6).asLine.Pointer.VerticalSize = 8; //Pointer 세로너비
- Obj_Chart.Series(6).asLine.Pointer.HorizontalSize = 2; //Pointer 가로너비
- Obj_Chart.Series(6).Depth = 4;
-
-
- //Obj_Chart.Series(?).asLine.Pointer.Style => 0:네모점 1:동그란점 2:세모 3:역삼각? 4:「모향 5:x 6:굵고진한X 7: 테두리없는점. 8:없음..
-
-
- if(pFlag == "24hours" || pFlag == "4days"){
- var sTime = model.getValue("/root/main/cond/timeflag");
- iArrSize = model.getValue("/root/init/minlist/item[cd='"+sTime+"']/gap");
- // 그래프 표시
- /* emr.mnrdrcia테이블에 있는 leftaxis값에 대한 아이템값이 설정된다.
- sChartItem[0] = leftaxis값이 1인것 SBP;
- sChartItem[1] = leftaxis값이 2인것 DBP;
- sChartItem[2] = leftaxis값이 3인것 맥박;
- sChartItem[3] = leftaxis값이 4인것 호흡;
- sChartItem[4] = leftaxis값이 5인것 체온;
- sChartItem[5] = leftaxis값이 6인것 MBP;
- }
-
- */
-
-
-
- for(var i=0; i<sChartInfo.length; i++){
- if(sChartInfo[i] == "") continue;
- sChartInfo[i] = eval(sChartInfo[i]); // 그래프 최좌측 1:혈압, 2:맥박, 3:호흡, 4:체온, 5:BP(M)
-
- for(var iCol=1; iCol<=sColCnt; iCol++){
- //막대그래프(혈압), Series(2)가 혈압이다.
- if(sChartInfo[i] == 1){
-
- Obj_Chart.Series(sChartInfo[i]+1).asCandle.UpCloseColor = 0xffffff; //혈압의경우 두점이 sbp가 dbp보다 작을경우는 검은색 sbp가 dbp보다 클경우는 빨간색
- Obj_Chart.Series(sChartInfo[i]+1).asCandle.DownCloseColor = 0x0000ff;
- if(pFlag == "24hours"){
- //값들중에, SBP과 DBP의 값을 가져온다.
- sRecRslt1 = model.getValue(xHoursClincObsRecList+"[itemcd='"+sChartItem[(sChartInfo[i]-1)]+"']/recrslt"+iCol); // SBP
- sRecRslt = model.getValue(xHoursClincObsRecList+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrslt"+iCol); // DBP
-
- if(sRecRslt != "" && sRecRslt1 != "" && fIsNumber(sRecRslt) == true && fIsNumber(sRecRslt1) == true){
- Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle (iCol-1, eval(sRecRslt), 0, 0, eval(sRecRslt1)); //Candle타입 그림그리기.
- }
-
- //30분모드거나 60분모드일 경우에는 10분별로 기록된 상세정보를 가져와서
- //if( sTime == "30" || sTime == "60" ){
- // sRecRslt1 = model.getValue(xIntervalRecYNListPath+"[itemcd='"+sChartItem[(sChartInfo[i]-1)]+"']/recrsltitvl"+iCol);
- // sRecRslt = model.getValue(xIntervalRecYNListPath+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrsltitvl"+iCol);
- //
- // sRecRslt1Arr = sRecRslt1.split(" ");
- // sRecRsltArr = sRecRslt.split(" ");
- //
- // idx = 0;
- //
- // for( var arr = (sHeader[4][iCol]=="00" ? 0 : 3) ; arr < sRecRslt1Arr.length && arr < sRecRsltArr.length ; arr++ ){
- // iChartPos = (iCol-1) + ( (1/iArrSize)*(idx+1) );
- // idx++;
- // if(sRecRslt1Arr[arr] != "0" && sRecRsltArr[arr] != "0" && fIsNumber(sRecRslt1Arr[arr].substr(14)) == true && fIsNumber(sRecRslt1Arr[arr].substr(14)) == true){
- // Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle (iChartPos, eval(sRecRsltArr[arr].substr(14)), 0, 0, eval(sRecRslt1Arr[arr].substr(14)));
- // }
- // }
- //}
- }else{
- sRecRslt1 = model.getValue(xDaysClincObsRecList+"[itemcd='"+sChartItem[(sChartInfo[i]-1)]+"']/recrslt"+iCol);
- sRecRslt = model.getValue(xDaysClincObsRecList+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrslt"+iCol);
- if(sRecRslt != "" && sRecRslt1 != "" && fIsNumber(sRecRslt) == true && fIsNumber(sRecRslt1) == true){
- Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle ((iCol/4)-0.25, eval(sRecRslt), 0, 0, eval(sRecRslt1));
- }
- }
- }else{
- if(pFlag == "24hours"){
- sRecRslt = model.getValue(xHoursClincObsRecList+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrslt"+iCol);
- if(sRecRslt != "" && fIsNumber(sRecRslt) == true){
-
- Obj_Chart.Series(sChartInfo[i]+1).AddXY (iCol-1, eval(sRecRslt), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
-
-
-
-
- }
- //if ( sTime == "30" || sTime == "60" ){
- // sRecRslt = model.getValue(xIntervalRecYNListPath+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrsltitvl"+iCol);
- //
- // sRecRsltArr = sRecRslt.split(" ");
- //
- // idx = 0;
- //
- // for( var arr = (sHeader[4][iCol]=="00" ? 0 : 3) ; arr < sRecRsltArr.length ; arr++ ){
- // iChartPos = (iCol-1) + ( (1/iArrSize)*(idx+1) );
- // idx++;
- // if(sRecRsltArr[arr] != "0" && fIsNumber(sRecRsltArr[arr].substr(14)) == true){
- // Obj_Chart.Series(sChartInfo[i]+1).AddXY (iChartPos, eval(sRecRsltArr[arr].substr(14)), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
- // }
- // }
- //}
- }else{
- sRecRslt = model.getValue(xDaysClincObsRecList+"[itemcd='"+sChartItem[sChartInfo[i]]+"']/recrslt"+iCol);
- if(sRecRslt != "" && fIsNumber(sRecRslt) == true){
- Obj_Chart.Series(sChartInfo[i]+1).AddXY ((iCol/4)-0.25, eval(sRecRslt), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
- }
- }
- }
- }
- }
- // 수술시간 표시
- Obj_Chart.Series(1).asCandle.UpCloseColor = 0x0000ff;
- Obj_Chart.Series(1).asCandle.DownCloseColor = 0x0000ff;
- Obj_Chart.Series(1).Marks.visible = false;
- var sX = 0;
- var OPChartRow = 1; // 수술관련 Tools Itme은 위에 Hint Item이 존재하여 1부터 시작
- var sOPX = 0;
- for(var i=1; i<=sColCnt+1; i++){
- if(i == 1 || sRecDD != sHeader[1][i]){
- sRecDD = sHeader[1][i];
- sRecTM = model.getValue(xDayCountListPath+"[recdd ='"+sRecDD+"']/optm");
- //TEST 수술일자
- //sRecDD = "20100315";
- //sRecTM = "1240";
- if(sRecTM == "") continue;
- for(var iCol=1; iCol<=sColCnt+1; iCol++){
- if((sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]) >= (sRecDD+sRecTM) &&
- (sHeader[1][1]+sHeader[3][1]+sHeader[4][1]) <= (sRecDD+sRecTM)){
- sOpPnt = "";
- sOpPnt1 = 0;
- if(model.getValue("/root/main/cond/vwctrl_button") == "24hours"){
- sTimeFlag = model.getValue("/root/main/cond/timeflag");
- if(sRecTM.substr(2,1) == "0"){
- sOpPnt = eval(sRecTM.substr(3,1)) % eval(sTimeFlag) / eval(sTimeFlag);
- }else{
- sOpPnt = eval(sRecTM.substr(2,2)) % eval(sTimeFlag) / eval(sTimeFlag);
- }
- //나머지값이 1일 경우 +1을 해줌
- if(eval(sRecTM.substr(2,2)) % eval(sTimeFlag) == 0){
- sOpPnt = sOpPnt+1;
- }
- }else{
- if(sRecTM.substr(2,1) == "0"){
- sOpPnt1 = eval(sRecTM.substr(3,1));
- }else{
- sOpPnt1 = eval(sRecTM.substr(2,2));
- }
- if(iCol == 2 || iCol == 6 || iCol == 10 || iCol == 14 ){
- if(sRecTM.substr(0,2) == "06"){
- sOpPnt = (iCol - 2);
- }else if(sRecTM.substr(0,2) == "07"){
- sOpPnt = (iCol - 2) + 1 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "08"){
- sOpPnt = (iCol - 2) + 2 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "09"){
- sOpPnt = (iCol - 2) + 3 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "10"){
- sOpPnt = (iCol - 2) + 4 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "11"){
- sOpPnt = (iCol - 2) + 5 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "12"){
- sOpPnt = (iCol - 2) + 6 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "13"){
- sOpPnt = (iCol - 2) + 7 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "14"){
- sOpPnt = (iCol - 1);
- }
- }else if(iCol == 3 || iCol == 7 || iCol == 11 || iCol == 15 ){
- if(sRecTM.substr(0,2) == "14"){
- sOpPnt = (iCol - 2);
- }else if(sRecTM.substr(0,2) == "15"){
- sOpPnt = (iCol - 2) + 1/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "16"){
- sOpPnt = (iCol - 2) + 2/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "17"){
- sOpPnt = (iCol - 2) + 3/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "18"){
- sOpPnt = (iCol - 1);
- }
- }else if(iCol == 4 || iCol == 8 || iCol == 12 || iCol == 16 ){
- if(sRecTM.substr(0,2) == "18"){
- sOpPnt = (iCol - 2);
- }else if(sRecTM.substr(0,2) == "19"){
- sOpPnt = (iCol - 2) + 1/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "20"){
- sOpPnt = (iCol - 2) + 2/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "21"){
- sOpPnt = (iCol - 2) + 3/4 + sOpPnt1/60/4;
- }else if(sRecTM.substr(0,2) == "22"){
- sOpPnt = (iCol - 1);
- }
- }else if(iCol == 5 || iCol == 9 || iCol == 13 || iCol == 17 ){
- if(sRecTM.substr(0,2) == "22"){
- sOpPnt = (iCol - 2);
- }else if(sRecTM.substr(0,2) == "23"){
- sOpPnt = (iCol - 2) + 1 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "00"){
- sOpPnt = (iCol - 2) + 2 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "01"){
- sOpPnt = (iCol - 2) + 3 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "02"){
- sOpPnt = (iCol - 2) + 4 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "03"){
- sOpPnt = (iCol - 2) + 5 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "04"){
- sOpPnt = (iCol - 2) + 6 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "05"){
- sOpPnt = (iCol - 2) + 7 / 8 + sOpPnt1/60/8;
- }else if(sRecTM.substr(0,2) == "06"){
- sOpPnt = (iCol - 1);
- }
- }else{
- sOpPnt = (iCol - 1);
- }
- }
- if(pFlag == "24hours"){
- sX = iCol-2+sOpPnt;
- if(iCol < 2){
- sOPX = 110 + ((iCol-1) * 41.3) // max = 950;
- }else if(iCol < 25){
- sOPX = 120 + ((iCol-2) * 41.3) // max = 950;
- }else{
- sOPX = 90 + ((iCol-2) * 41.3) // max = 950;
- }
- }else{
- //sX = iCol/4-0.50;
- sX = eval(sOpPnt)/4;
- if(iCol < 2){
- sOPX = 110 + ((iCol -1) * 63.2) // max = 950;
- }else{
- if(iCol == 17){
- sOPX = 110 + ((iCol-2) * 63.2);// max = 950;
- }else{
- sOPX = 110 + ((iCol-2) * 63.2) + 16/iCol * 10 // max = 950;
- }
- }
- }
- Obj_Chart.Series(1).asCandle.AddCandle (sX, 0, 0, 0, 170);
- Obj_Chart.Tools.Add(10);
- Obj_Chart.Tools.Items(OPChartRow).Active = true;
- Obj_Chart.Tools.Items(OPChartRow).asAnnotation.Shape.Top= 8;
- Obj_Chart.Tools.Items(OPChartRow).asAnnotation.Shape.Left= sOPX;
- Obj_Chart.Tools.Items(OPChartRow).asAnnotation.Text = "OP "+ sRecTM.substr(0,2)+":"+sRecTM.substr(2,2);
- OPChartRow++;
- break;
- }
- }
- }
- }
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * sHeaderFlag = 'A' : 화면설정에서 헤더정보설정이 일자/시간/분일경우
- * 일자
- * HD: /POD: / ICU: / CP:
- * 06시 07시 08시 09시 10시
- * 00분 00분 00분 00분 00분
- *
- * sHeaderFlag = 'D' : 화면설정에서 헤더정보설정이 시간/분일 경우
- * 06시 07시 08시 09시 10시
- * 00분 00분 00분 00분 00분
- *
- * sHeaderFlag = '' : 화면설정에서 헤더정보설정이 시간/분일 경우
- * 06:00 07:00 08:00 09:00 10:00 11:00
- *
- * 형식으로 그리드 Caption을 Setting한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCreateHeader(pFlag){
- var sRecDT = "";
- //var sChartCapNm = "";
- var sGridCapNm = "";
- var sTimeFlag = 0;
- var sCDay = new Array();
- var sDayInfo = "";
- var iDayRow = 0;
- var sDayCountInfo = "";
- var sDateList = "";
- sHeader[1] = new Array();
- sHeader[2] = new Array();
- sHeader[3] = new Array();
- sHeader[4] = new Array();
- sHeader[1][0] = "날 짜";
- sHeader[2][0] = "Day count";
- sHeader[3][0] = "시 간";
- sHeader[4][0] = "분";
- model.removenode("/root/send");
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/dayinfo", ipt_24hoursrecdd.value);
- //현재 시점의 환자 기본 정보 조회
- submit("TRMNR10102");
- fControlPatInfo();
- switch(pFlag){
- case "24hours" :
- //그리드 스타일 초기화
- grd_24hoursclincobsreclist.rebuildStyle();
- /*
- 화면 초기화될시에 화면설정정보시간이 rectm에 셋팅되므로, 0600가 기본이다.
- 결국 처음 FlowSheet조회할 경우에는 그날의 0600부터 다음날 05시까지가 기본으로
- Setting되어져서 보여지게 된다.
- */
- sTimeFlag = eval(model.getValue(sCondPath+"/timeflag"));
- sRecDT = model.getValue(sCondPath+"/recdd")+model.getValue(sCondPath+"/rectm");
- var sStartDT = fCalcStartDate(sRecDT,sTimeFlag);
- var sTime = 0;
- //Header[1]은 날짜정보
- //Header[2]는 HD, ICUD정보들.
- //Header[3]는 시간정보들.
- //Header[4]는 분정보들.
- //첫조회시, sHeader[1][1] = '20130318'; sHeader[3][1] = '06' sHeader[4][1] = '00'의 값이 들어간다.
-
- for(var i=1; i<=25; i++){
- if(i>1){
- sStartDT = sStartDT.getAddDate(sTimeFlag,"m"); //시간을 더해서 셋팅한다.(60분일 경우는 60분씩 더한다.)
- }
-
- sHeader[1][i] = getDateTime(sStartDT,'기본').substr(0,8); //일자를 더한다.
-
- if(iDayRow == 0 || sCDay[iDayRow-1] != sHeader[1][i]){
- sCDay[iDayRow] = sHeader[1][i];
- iDayRow++;
- }
- sHeader[3][i] = getDateTime(sStartDT,'기본').substr(8,2);
- sHeader[4][i] = getDateTime(sStartDT,'기본').substr(10,2);
- }
- for(var i=0; i<sCDay.length;i++){
- sDayInfo += sCDay[i];
- if(i != sCDay.length-1){
- sDayInfo += ",";
- }
- }
- if(sDayCountCnt > 0){
- model.makeValue("/root/send/dayinfo",sDayInfo);
- if(submit("TRMNR00903", false)){ // 2008-07-09
- sDayCountInfo = model.getValue(sCondPath+"/daycountinfo").split(" ");
- for(var i=1; i<=24; i++){
- sHeader[2][i] = "";
- if(sHdayUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "HD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/hd");
- }
- if(sPodUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "POD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/pod");
- }
- if(sIcuDayUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "ICU:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/icu");
- }
- if(sAntiDayUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "D:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/d");
- }
- if(sBmtUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "BMT:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/bmt");
- }
- if(sCpDayUseYn == "Y"){
- if(sHeader[2][i] != "") sHeader[2][i] += "/";
- sHeader[2][i] += "CP:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/cp");
- }
- }
- }
- }
- //환경 설정 정보를 이용하여 그리드 Caption Control
- /*
- sHeaderFlag = 'A' : 화면설정에서 헤더정보설정이 일자/시간/분일경우
- 일자
- HD: /POD: / ICU: / CP:
- 06시 07시 08시 09시 10시
- 00분 00분 00분 00분 00분
-
- sHeaderFlag = 'D' : 화면설정에서 헤더정보설정이 시간/분일 경우
- 06시 07시 08시 09시 10시
- 00분 00분 00분 00분 00분
-
- sHeaderFlag = '' : 화면설정에서 헤더정보설정이 시간/분일 경우
- 06:00 07:00 08:00 09:00 10:00 11:00
-
- 형식으로 그리드 Caption을 Setting한다.
- */
- if(sHeaderFlag == "A"){
- for(var iRow=1; iRow<=4; iRow++){
- if(iRow == 2 && sDayCountCnt == 0 ) continue;
- for(var iCol=0; iCol<=24; iCol++){
- if(iRow == 1){
- if(iCol == 0){
- sGridCapNm += sHeader[iRow][iCol]; // 년월일
- }else{
- sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- }
- }else if(iRow == 2){ // day count
- sGridCapNm += sHeader[iRow][iCol];
- }else if(iRow == 3){ // 시
- sGridCapNm += sHeader[iRow][iCol];
- if(iCol != 0){
- sGridCapNm += "시";
- }
- }else if(iRow == 4){ // 분
- sGridCapNm += sHeader[iRow][iCol];
- if(iCol != 0){
- sGridCapNm += "분";
- }
- }
- if(iCol != 24){
- sGridCapNm += "^";
- }
- }
- if(iRow != 4){
- sGridCapNm += "|";
- }
- }
- }else if(sHeaderFlag == "D"){
- for(var iRow=1; iRow<=4; iRow++){
- if(iRow == 1 || iRow == 2 ) continue;
- for(var iCol=0; iCol<=24; iCol++){
- if(iRow == 3){ // 시
- sGridCapNm += sHeader[iRow][iCol];
- if(iCol != 0){
- sGridCapNm += "시";
- }
- }else if(iRow == 4){ // 분
- sGridCapNm += sHeader[iRow][iCol];
- if(iCol != 0){
- sGridCapNm += "분";
- }
- }
- if(iCol != 24){
- sGridCapNm += "^";
- }
- }
- if(iRow != 4){
- sGridCapNm += "|";
- }
- }
- }else{
- for(var iCol=0; iCol<=24; iCol++){
- //24시간 화면 Caption 설정
- if(iCol != 0){
- sGridCapNm += sHeader[3][iCol] + ":" + sHeader[4][iCol];
- }else{
- sGridCapNm += sHeader[3][iCol];
- }
- if(iCol != 24){
- sGridCapNm += "^";
- }
- }
- }
- grd_24hoursclincobsreclist.caption = sGridCapNm;
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 차트 Down
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlChartDown(pFlag){
- var sObj_Chart;
- switch(pFlag){
- case "24hours" :
- sObj_Chart = obj_24hourschart;
- break;
- case "4days" :
- sObj_Chart = obj_4dayschart;
- break;
- }
- sObj_Chart.Axis.Custom(0).Maximum = sObj_Chart.Axis.Custom(0).Maximum-20;
- sObj_Chart.Axis.Custom(0).Minimum = sObj_Chart.Axis.Custom(0).Minimum-20;
- sObj_Chart.Axis.Custom(1).Maximum = sObj_Chart.Axis.Custom(1).Maximum-10;
- sObj_Chart.Axis.Custom(1).Minimum = sObj_Chart.Axis.Custom(1).Minimum-10;
- sObj_Chart.Axis.Custom(2).Maximum = sObj_Chart.Axis.Custom(2).Maximum-1;
- sObj_Chart.Axis.Custom(2).Minimum = sObj_Chart.Axis.Custom(2).Minimum-1;
- for(var i=0; i < sObj_Chart.Tools.Count-1; i++){
- sObj_Chart.Tools.Items(i).asAnnotation.Shape.Top= sObj_Chart.Tools.Items(i).asAnnotation.Shape.Top - 20;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 차트 Up
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlChartUp(pFlag){
- var sObj_Chart;
- switch(pFlag){
- case "24hours" :
- sObj_Chart = obj_24hourschart;
- break;
- case "4days" :
- sObj_Chart = obj_4dayschart;
- break;
- }
- sObj_Chart.Axis.Custom(0).Maximum = sObj_Chart.Axis.Custom(0).Maximum+20; // 맥박
- sObj_Chart.Axis.Custom(0).Minimum = sObj_Chart.Axis.Custom(0).Minimum+20;
- sObj_Chart.Axis.Custom(1).Maximum = sObj_Chart.Axis.Custom(1).Maximum+10;
- sObj_Chart.Axis.Custom(1).Minimum = sObj_Chart.Axis.Custom(1).Minimum+10;
- sObj_Chart.Axis.Custom(2).Maximum = sObj_Chart.Axis.Custom(2).Maximum+1;
- sObj_Chart.Axis.Custom(2).Minimum = sObj_Chart.Axis.Custom(2).Minimum+1;
- for(var i=0; i < sObj_Chart.Tools.Count-1; i++){
- sObj_Chart.Tools.Items(i).asAnnotation.Shape.Top= sObj_Chart.Tools.Items(i).asAnnotation.Shape.Top + 10;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 기록 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchClincObsRec(pClsFlag){
- sFluidSumInfo = new Array();
- if(model.getValue("/root/main/patinfo/pid") == ""){
- messageBox("환자를 선택하십시요","I");
- return;
- }
- var sStrTime = "";
- var sRecCnt = 0;
- var sItemCD = "";
- var sItemSeqNo = "";
- var pFlag = model.getValue(sCondPath+"/vwctrl_button");
- var sTimeFlag = model.getValue(sCondPath+"/timeflag");
- var sRecDd = model.getValue(sCondPath+"/recdd");
- fCreateHeader(pFlag);
- model.removenode("/root/send");
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/timeflag", sTimeFlag);
- model.makeValue("/root/send/srchdd",sRecDd );//20090730 김홍점 [임상관찰기록] 삽관, 기구 관련 그룹정보 연동 시 삽입(적용)일 및 적용일수 정보 조회를 위한 기준일자
- //model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/fromdt",sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00");
- model.makeValue("/root/send/existsdelinfo", model.getValue("/root/main/cond/existsdelinfo"));
- model.removenodeset(xHoursClincObsRecList);
- model.removenodeset(xDaysClincObsRecList);
- model.removenodeSet(xClincObsRecListPath);
- model.removenodeset(xFormerRecPath);
- sCmbWardValue = cmb_wardlist.value;
- sCmbRoomValue = cmb_roomlist.value;
- sCmbPatValue = cmb_patlist.value;
- sCmbMyPatValue = cmb_mypatlist.value;
- switch(pFlag){
- case "24hours" :
- var iHoursRecRow = 0;
- var iHoursDataRow = 0;
- var sBizLnkFlag = model.getValue(sCondPath+"/bizlnkflag");
- model.makeValue("/root/send/todt",sHeader[1][25]+sHeader[3][25]+sHeader[4][25]+"00");
- model.makeValue("/root/send/recflag", "24hours");
- for(var i=1; i <= 25; i++){
- if(sStrTime == ""){
- sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }else{
- sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }
- }
- model.makeValue("/root/send/strtime", sStrTime);
- if(sBizLnkFlag == "Y"){
- model.makeValue("/root/send/bizdeptcd", sDutplcecd);
- }
- //if(pClsFlag == "selectedcls"){
- // model.makeValue("/root/send/clsinfo", model.getValue(sCondPath+"/hoursclsinfo"));
- //}else{
- // model.setValue(sCondPath+"/hoursclsinfo","");
- //}
- grd_24hoursclincobsreclist.rebuild(); //Grid 설정 초기화
- grd_24hoursclincobsreclist.dataHeight = sDataRowHeight; //Grid 행 높이 설정
- submit("TRMNR00901_SJH", false);
- chk_24hoursclslist.attribute("cols") = getNodesetCnt(model, "/root/init/clsinfo/clslist");
- if(s24ClsListInitYn == "N"){
- var sSrchClsInfoList = "";
- if(sSrchTypeInfo == "ALL"){
- for(var i = 0 ; i <= getNodesetCnt(model, "/root/init/clsinfo/clslist") ; i++){
- if(sSrchClsInfoList == ""){
- sSrchClsInfoList += model.getValue("/root/init/clsinfo/clslist["+i+"]/itemcd");
- }else{
- sSrchClsInfoList += " " + model.getValue("/root/init/clsinfo/clslist["+i+"]/itemcd");
- }
- }
- model.setValue("/root/main/cond/hoursclsinfo", sSrchClsInfoList);
- }else{
- model.setValue("/root/main/cond/hoursclsinfo", sSrchTypeInfo);
- }
- s24ClsListInitYn = "Y";
- }
- chk_24hoursclslist.refresh();
- model.makeValue("/root/send/clsinfo", model.getValue(sCondPath+"/hoursclsinfo") );
- //submit("TRMNR00902", false); // 2008-07-09
- submit("TRMNR10103", false); // 2008-07-09
- break;
- }
- fSettingClincObsRec(pFlag);
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 셀이 포커스를 얻을 때 발생
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fEnterGridCell(pFlag){
- var iRow = 0;
- var iCol = 0;
- var iRecRow = 0;
- var sRecFromDT = "";
- var sRecToDT = "";
- var sRecDT = "";
- var sAttrCD = "";
- switch(pFlag){
- case "24hours" :
- sMouseiCol = grd_24hoursclincobsreclist.mouseCol;
- if(sMouseiCol == grd_24hoursclincobsreclist.colRef("itemnm")) return;
- iRecRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows+1;
- iRow = grd_24hoursclincobsreclist.row;
- iCol = grd_24hoursclincobsreclist.col;
- sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
- sRecFromDT = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfromdt"));
- sRecToDT = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("rectodt"));
- sAttrCD = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("attrcd"));
- sReChartFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("reccharflag"));
- //추가
- if(model.getValue("/root/main/cond/cmbstatusx") != "0" && model.getValue("/root/main/cond/cmbstatusy") != "0"){
- if(sReChartFlag == "A"){
- var cmbstatusx = model.getValue("/root/main/cond/cmbstatusx");
- var cmbstatusy = model.getValue("/root/main/cond/cmbstatusy");
- var cmbRecRow = cmbstatusx - grd_24hoursclincobsreclist.fixedrows+1;
- var cmbAttrCD = model.getValue(xHoursClincObsRecList+"["+cmbRecRow+"]/attrcd");
- grd_24hoursclincobsreclist.cellComboNodeset(cmbstatusx,cmbstatusy) = sAttrListPath1+"[supcd='"+cmbAttrCD+"']";
- cmbstatusx = "0";
- cmbstatusy = "0";
- }else{
- cmbstatusx = "0";
- cmbstatusy = "0";
- }
- }
- //---------(20101204) 경북대
- //추가
- var ssflag = "";
- if(getUserInfo("dutplceinstcd") != '032' && getUserInfo("dutplceinstcd") != '031') {
- //경북대가 아니면
- if( sJobKindCD == "0330" || sJobKindCD == "0310"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- } else if(getUserInfo("dutplceinstcd") == '032' || getUserInfo("dutplceinstcd") == '031') {
- //경북대이면 03%로 체크한다.
- if( sJobKindCD.substring(0, 2) == "03"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- }
- //원본:의사의 경우만
- //if(sJobKindCD == "30" ){
- if(ssflag=="Y"){
- //---------(20101204) 경북대
- grd_24hoursclincobsreclist.combo.button.visible = false;
- grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols,iRow, grd_24hoursclincobsreclist.cols-1) = true;
- return;
- }
- if(sReChartFlag =="A" && sAttrCD != ""){
- model.removenodeSet(sAttrListPath);
- for(var i = 1 ; i <= getNodesetCount(sAttrListPath1) ; i ++){
- if(sAttrCD == model.getValue(sAttrListPath1+"["+i+"]/supcd") ){
- var insComboNode = eval(getNodesetCount(sAttrListPath)) + 1 ;
- if(insComboNode == 1){
- model.makeNode(sAttrListPath);
- model.makeValue(sAttrListPath+"["+insComboNode+"]/attrnm", "");
- model.makeValue(sAttrListPath+"["+insComboNode+"]/attrcd", "");
- insComboNode++;
- }
- model.makeValue(sAttrListPath+"["+insComboNode+"]/attrnm", model.getValue(sAttrListPath1+"["+i+"]/attrdesc"));
- model.makeValue(sAttrListPath+"["+insComboNode+"]/attrcd", model.getValue(sAttrListPath1+"["+i+"]/attrcd"));
- }
- }
- model.setValue("/root/main/cond/cmbstatusx",iRow );
- model.setValue("/root/main/cond/cmbstatusy",iCol );
- grd_24hoursclincobsreclist.combo.button.visible = true;
- grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath;
- grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col)-20;
- //2008-05-22 콤보 선택시 콤보노드 변경을 위해 추가
- model.setFocus("body");
- grd_24hoursclincobsreclist.row = iRow;
- grd_24hoursclincobsreclist.col = iCol;
- //model.setFocus("grd_24hoursclincobsreclist");
- }else{
- //grd_24hoursclincobsreclist.colAttribute(iCol, "type") = "input";
- grd_24hoursclincobsreclist.combo.button.visible = false;
- //grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListInitPath;
- grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col);
- //model.setFocus("body");
- //model.setFocus("grd_24hoursclincobsreclist");
- }
- //2008-05-21 멀티 선택이 되지 않아 삭제(콤보 변경이 안됌)
- //model.setFocus("body");
- //model.setFocus("grd_24hoursclincobsreclist");
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 셀의 서브컨트롤이 “input” 또는 “inputbutton”일 때 edit 상태로 들어가서 키보드 이벤트가 발생하기 시작하는 시점에서 발생
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangeGridEdit(pFlag){
- var iRow = 0;
- switch(pFlag){
- case "24hours" :
- iRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows + 1;
- if(eval(model.getValue(xHoursClincObsRecList+"["+iRow+"]/depth")) >= 2 && model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd") != "" && model.getValue(xHoursClincObsRecList+"["+iRow+"]/reccharflag") == "A"){
- event.preventDefault();
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 상세값과 사용자 정보를 Hint로 보여줌.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchDetlRecHintInfo(pFlag){
- var iRow = 0;
- var iCol = 0;
- var sItemCD = "";
- var sItemSeqNo = "";
- var sRecDD = "";
- var sRecTM = "";
- var sAttrCD = "";
- var sAttrNM = "";
- var sRecFlag = "";
- var sTimeFlag = "";
- var sRecRslt = "";
- var sSubTotal = 0;
- var sFromDT = "";
- var sToDT = "";
- var sStndDT = "";
- var sHintInfo = "";
- switch(pFlag){
- case "24hours" :
- iRow = grd_24hoursclincobsreclist.mouseRow - grd_24hoursclincobsreclist.fixedrows+1;
- iCol = grd_24hoursclincobsreclist.mouseCol;
- if(iRow < 1 || iCol < 0 ){
- sHintInfo = "";
- }else{
- if(iCol == 0){
- sHintInfo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemnm");
- }else{
- sItemCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemcd");
- sItemSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemseqno");
- sCareRecSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/carerecseqno");
- sRecDD = sHeader[1][iCol];
- sRecTM = sHeader[3][iCol]+sHeader[4][iCol]+"00";
- sTimeFlag = model.getValue(sCondPath+"/timeflag");
- sRecFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recflag");
- var sHistRecUserNm = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/usernm").split("^");
- var sHistRecDT = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/recdt").split("^");
- //model.setValue(sCondPath+"/detlrecinfo/usernm", sSettingUserNm);
- //model.setValue(sCondPath+"/detlrecinfo/usernm", model.getValue(xRecUserListPath+"[carerecseqno ='"+sCareRecSeqNo+"' and recdt ='"+sRecDD+sRecTM+"']/usernm"));
- sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd");
- if(sAttrCD == ""){
- sHintInfo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- }else{
- sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- sAttrNM = model.getValue(sAttrListPath1+"[attrcd ='"+sAttrCD+"']/attrdesc");
- if(sAttrNM == ""){
- sHintInfo = sAttrCD;
- }else{
- sHintInfo = sAttrNM;
- }
- }
- var sSettingUserNm = "";
- if(sHistRecDT.length > 0){
- for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
- if((sRecDD + sRecTM) == sHistRecDT[histrow]){
- sSettingUserNm = sHistRecUserNm[histrow];
- }
- }
- }
- if(sSettingUserNm != ""){
- sHintInfo += "\n" + sSettingUserNm;
- }
- sFromDT = sHeader[1][1]+sHeader[3][1]+sHeader[4][1];
- sToDT = sRecDD+sRecTM.substr(0,4);
- if( model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol)!= "" &&
- (model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd") == "" || model.getValue(xHoursClincObsRecList+"["+iRow+"]/totalyn") == "Y") &&
- (sRecFlag == "B" || sRecFlag == "C" || sRecFlag == "T") ){
- for(var i=1; i<= iCol; i++){
- sStndDT = sHeader[1][i]+sHeader[3][i]+sHeader[4][i];
- if(sStndDT >= sFromDT && sStndDT <= sToDT){
- sRecRslt = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+i);
- if(sRecRslt != "" && fIsNumber(sRecRslt) == true ){
- sSubTotal += eval(sRecRslt);
- }
- }
- }
- }
- if(sSubTotal == 0) sSubTotal== "";
- if(sSubTotal != "") sHintInfo += "\n" + sSubTotal;
- }
- }
- break;
- }
- return sHintInfo;
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 상세값과 사용자 정보를 보여줌.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchDetlRecInfo(pFlag){
- var iRow = 0;
- var iCol = 0;
- var sItemCD = "";
- var sItemSeqNo = "";
- var sRecDD = "";
- var sRecTM = "";
- var sAttrCD = "";
- var sAttrNM = "";
- var sRecFlag = "";
- var sTimeFlag = "";
- var sRecRslt = "";
- var sSubTotal = 0;
- var sFromDT = "";
- var sToDT = "";
- var sStndDT = "";
- var sSubTotalArray = "";
- switch(pFlag){
- case "24hours" :
- iRow = grd_24hoursclincobsreclist.mouseRow - grd_24hoursclincobsreclist.fixedrows+1;
- iCol = grd_24hoursclincobsreclist.mouseCol;
- if(iRow < 1 || iCol < 0 ){
- model.setValue(sCondPath+"/detlrecinfo/detlval" , "");
- model.setValue(sCondPath+"/detlrecinfo/usernm" , "");
- model.setValue(sCondPath+"/detlrecinfo/subtotal", "");
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", "");
- }else{
- if(iCol == 0){
- model.setValue(sCondPath+"/detlrecinfo/detlval", model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemnm"));
- model.setValue(sCondPath+"/detlrecinfo/usernm", "");
- model.setValue(sCondPath+"/detlrecinfo/subtotal", "");
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", "");
- }else{
- sItemCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemcd");
- sItemSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemseqno");
- sCareRecSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/carerecseqno");
- sRecDD = sHeader[1][iCol];
- sRecTM = sHeader[3][iCol]+sHeader[4][iCol]+"00";
- sTimeFlag = model.getValue(sCondPath+"/timeflag");
- sRecFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recflag");
- var sHistRecUserNm = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/usernm").split("^");
- var sHistRecDT = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/recdt").split("^");
- var sSettingUserNm = "";
- if(sHistRecDT.length > 0){
- for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
- if((sRecDD + sRecTM) == sHistRecDT[histrow]){
- sSettingUserNm = sHistRecUserNm[histrow];
- }
- }
- }
- model.setValue(sCondPath+"/detlrecinfo/usernm", sSettingUserNm);
- //model.setValue(sCondPath+"/detlrecinfo/usernm", model.getValue(xRecUserListPath+"[carerecseqno ='"+sCareRecSeqNo+"' and recdt ='"+sRecDD+sRecTM+"']/usernm"));
- sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd");
- if(sAttrCD == ""){
- model.setValue(sCondPath+"/detlrecinfo/detlval", model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol));
- }else{
- sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- sAttrNM = model.getValue(sAttrListPath1+"[attrcd ='"+sAttrCD+"']/attrdesc");
- if(sAttrNM == ""){
- model.setValue(sCondPath+"/detlrecinfo/detlval", sAttrCD);
- }else{
- model.setValue(sCondPath+"/detlrecinfo/detlval", sAttrNM);
- }
- }
- sFromDT = sHeader[1][1]+sHeader[3][1]+sHeader[4][1];
- sToDT = sRecDD+sRecTM.substr(0,4);
- if( model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol)!= "" &&
- (model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd") == "" || model.getValue(xHoursClincObsRecList+"["+iRow+"]/totalyn") == "Y") &&
- (sRecFlag == "B" || sRecFlag == "C" || sRecFlag == "T") ){
- for(var i=1; i<= iCol; i++){
- sStndDT = sHeader[1][i]+sHeader[3][i]+sHeader[4][i];
- if(sStndDT >= sFromDT && sStndDT <= sToDT){
- sRecRslt = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+i);
- if(sRecRslt != "" && fIsNumber(sRecRslt) == true ){
- sSubTotal += eval(sRecRslt);
- }
- }
- }
- }
- if( sSubTotal == 0 ) sSubTotal="";
- model.setValue(sCondPath+"/detlrecinfo/subtotal", sSubTotal);
- if( sSubTotal == "" ){
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", "");
- }else{
- sFromDT = sFromDT.substr(4,2)+"/"+sFromDT.substr(6,2)+" "+sFromDT.substr(8,2)+":"+sFromDT.substr(10,2);
- sToDT = sToDT.substr(4,2)+"/"+sToDT.substr(6,2)+" "+sToDT.substr(8,2)+":"+sToDT.substr(10,2);
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", sFromDT + "~" + sToDT);
- }
- }
- }
- break;
- }
- opt_detlval.refresh();
- opt_usernm.refresh();
- opt_subtotal.refresh();
- opt_subtotalarray.refresh();
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰 기록 저장(임시저장)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveTempClincObsRec(pRecFlag){
- var sSaveDataHeader = "status▦pid▦indd▦cretno▦wardcd▦roomcd▦instcd▦ioflag▦itemcd▦itemseqno▦recflag▦recdt▦recrslt▦certkey▦carerecseqno▩";
- var sSaveData = ""; // 저장데이터
- var sRowCnt = 0; // 전체 row 갯수
- var sItemCD = ""; // 항목코드
- var sItemSeqNO = ""; // 항목일련번호
- var sRecRslt_BK = ""; // 기존 기록결과
- var sRecRslt = ""; // 신규 기록결과
- var sCertKey = ""; // 기존 인증키
- var sStatus = ""; // 상태
- var sStrTime = ""; // 각 컬럼의 시간
- var sRecFlag = ""; // 기록구분
- var sRecCharFlag = ""; // 기록성격구분
- var sChkChngData = false;
- var sBizLnkFlag = model.getValue(sCondPath+"/bizlnkflag");
- var sTimeFlag = model.getValue(sCondPath+"/timeflag");
- var sRecDd = model.getValue(sCondPath+"/recdd");
- sFluidSumInfo = new Array();
- model.removeNodeSet(xResultPath);
- model.removenode("/root/send");
- if(sPid == ""){
- sPid = model.getValue("/root/main/patinfo/pid");
- sIndd = model.getValue("/root/main/patinfo/indd");
- sCretNo = model.getValue("/root/main/patinfo/cretno");
- sIOFlag = model.getValue("/root/main/patinfo/ordtype");
- }
- model.makeValue("/root/send/pid" , sPid);
- model.makeValue("/root/send/indd" , sIndd);
- model.makeValue("/root/send/cretno" , sCretNo);
- model.makeValue("/root/send/instcd" , sInstcd);
- model.makeValue("/root/send/ioflag" , sIOFlag);
- model.makeValue("/root/send/timeflag" , sTimeFlag);
- model.makeValue("/root/send/srchdd" , sRecDd );//20090730 김홍점 [임상관찰기록] 삽관, 기구 관련 그룹정보 연동 시 삽입(적용)일 및 적용일수 정보 조회를 위한 기준일자
- model.makeValue("/root/send/fromdt" , sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00");
- model.makeValue("/root/send/existsdelinfo", model.getValue("/root/main/cond/existsdelinfo"));
- switch(pRecFlag){
- case "24hours" :
- if(sBizLnkFlag == "Y"){
- model.makeValue("/root/send/bizdeptcd", sDutplcecd);
- }
- model.makeValue("/root/send/todt",sHeader[1][24]+sHeader[3][24]+sHeader[4][24]+"00");
- model.makeValue("/root/send/recflag", "24hours");
- model.makeValue("/root/send/clsinfo", model.getValue(sCondPath+"/hoursclsinfo") );
- for(var i=1; i <= 25; i++){
- if(sStrTime == ""){
- sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }else{
- sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }
- }
- model.makeValue("/root/send/strtime", sStrTime);
- sRowCnt = grd_24hoursclincobsreclist.rows - grd_24hoursclincobsreclist.fixedrows;
- for(var iRow = 1; iRow<=sRowCnt; iRow++){
- sItemCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemcd" );
- sItemSeqNO = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemseqno" );
- sRecFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recflag" );
- sRecCharFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/reccharflag" );
- sCareRecSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/carerecseqno");
- sItemNM = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemnm" );
- sLnkBizCd = model.getValue(xHoursClincObsRecList+"["+iRow+"]/lnkbizcd" );
- sStype = model.getValue(xHoursClincObsRecList+"["+iRow+"]/style" );
- // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
- if( sRecCharFlag == "C" || sRecCharFlag == "" || ( sLnkBizCd == "12" && sStype == "01") ) continue;
- for(var iCol=1; iCol<= 24; iCol++){
- //sRecRslt_BK = model.getValue(xClincObsRecListPath+"[itemcd='"+sItemCD+"' and itemseqno='"+sItemSeqNO+"' and recflag='"+sRecFlag+"']/recrslt"+iCol);
- sRecRslt_BK = model.getValue(xClincObsRecListPath+"[carerecseqno='"+sCareRecSeqNo+"']/recrslt"+iCol);
- sRecRslt = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- sStatus = "";
- sResultPath = "";
- //상태값 변경
- if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
- sStatus = "";
- }else if(sRecRslt_BK == "" && sRecRslt == ""){
- sStatus = "";
- }else if(sRecRslt_BK == "" && sRecRslt != ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt == ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt_BK != sRecRslt){
- sStatus = "U";
- }
- if(sStatus == "") continue;
- //sCertKey = model.getValue(xRecUserListPath+"[itemcd='"+sItemCD+"' and itemseqno='"+ sItemSeqNO+"' and recflag ='"+sRecFlag+"' and recdt = '"+sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00']/certkey");
- var sRsltNodeCnt = eval(getNodesetCount(xResultPath)) + 1;
- var sSaveRecDt = "";
- //간편 입력 저장 부분
- var sArraySaveData = new Array();
- if(isSearchString(sRecRslt, "'") == true){
- sArraySaveData = sRecRslt.split("/");
- for(var i = 0 ; i < sArraySaveData.length ; i++){
- if(i == sArraySaveData.length -1 && isSearchString(sArraySaveData[i], "'") == true && sArraySaveData[i].replace("'", "").isNumber() == true && sArraySaveData[i].replace("'", "") < 60 && sArraySaveData[i].replace("'", "").length == 2){
- sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sArraySaveData[i].replace("'", "")+"00";
- sRecRslt = sRecRslt.replace("/" + sArraySaveData[i], "" );
- }
- }
- }
- //if(sRecRslt.length < 1) return;
- if(sSaveRecDt == "") sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
- model.makeValue(xResultPath+"["+sRsltNodeCnt+"]/reclist" , sRecRslt );
- model.makeValue(xResultPath+"["+sRsltNodeCnt+"]/recdt" , sSaveRecDt );
- model.makeValue(xResultAttrPath+"["+sRsltNodeCnt+"]/attrcd" , model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd") );
- model.makeValue(xResultAttrPath+"["+sRsltNodeCnt+"]/reclist" , sRecRslt );
- sChkChngData = true;
- //sCertKey = model.getValue(xRecUserListPath+"[carerecseqno='"+sCareRecSeqNo+"' and recdt = '"+sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00']/certkey");
- sSaveData += sStatus +"▦"
- + sPid +"▦"
- + sIndd +"▦"
- + sCretNo +"▦"
- + sWardCD +"▦"
- + sRoomCD +"▦"
- + sInstcd +"▦"
- + sIOFlag +"▦"
- + sItemCD +"▦"
- + sItemSeqNO +"▦"
- + sRecFlag +"▦"
- + sSaveRecDt +"▦"
- + sRecRslt +"▦"
- + sCertKey +"▦"
- + sCareRecSeqNo +"▩";
- }
- }
- // 변경데이터 유뮤 체크
- if(sChkChngData == false){
- messageBox("저장 할 데이터", "I004");
- model.removeNodeSet("/root/send");
- return;
- }
- //**********************************************************************************************************************
- // 인증 구현 부분 24시 화면
- //**********************************************************************************************************************
- model.makeValue("/root/send/clincobsreclist",sSaveDataHeader+sSaveData);
- //return;
- model.removenodeSet("/root/main/clincobsrecinfo/hoursclincobsrecinfo");
- //submit("TXMNR00901", false); //2008-07-09
- submit("TXMNR10101", false); //2008-07-09
- break;
- }
- fSettingClincObsRec(pRecFlag);
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰 기록 저장(인증저장)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveClincObsRec(pRecFlag){
- sViewerFunc = "sign"
- var sSaveDataHeader = "status▦pid▦indd▦cretno▦wardcd▦roomcd▦instcd▦ioflag▦itemcd▦itemseqno▦recflag▦recdt▦recrslt▦certkey▦carerecseqno▩";
- var sSaveData = ""; // 저장데이터
- var sRowCnt = 0; // 전체 row 갯수
- var sItemCD = ""; // 항목코드
- var sItemSeqNO = ""; // 항목일련번호
- var sRecRslt_BK = ""; // 기존 기록결과
- var sRecRslt = ""; // 신규 기록결과
- var sCertKey = ""; // 기존 인증키
- var sStatus = ""; // 상태
- var sStrTime = ""; // 각 컬럼의 시간
- var sRecFlag = ""; // 기록구분
- var sRecCharFlag = ""; // 기록성격구분
- var sChkChngData = false;
- var sBizLnkFlag = model.getValue(sCondPath+"/bizlnkflag");
- var sTimeFlag = model.getValue(sCondPath+"/timeflag");
- var sRecDd = model.getValue(sCondPath+"/recdd");
- sFluidSumInfo = new Array();
- model.removeNodeSet(xResultPath);
- model.removenode("/root/send");
- if(sPid == ""){
- sPid = model.getValue("/root/main/patinfo/pid");
- sIndd = model.getValue("/root/main/patinfo/indd");
- sCretNo = model.getValue("/root/main/patinfo/cretno");
- sIOFlag = model.getValue("/root/main/patinfo/ordtype");
- }
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/timeflag",sTimeFlag );
- model.makeValue("/root/send/srchdd",sRecDd );//20090730 김홍점 [임상관찰기록] 삽관, 기구 관련 그룹정보 연동 시 삽입(적용)일 및 적용일수 정보 조회를 위한 기준일자
- model.makeValue("/root/send/fromdt",sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00");
- model.makeValue("/root/send/existsdelinfo", model.getValue("/root/main/cond/existsdelinfo"));
- switch(pRecFlag){
- case "24hours" :
- if(sBizLnkFlag == "Y"){
- model.makeValue("/root/send/bizdeptcd", sDutplcecd);
- }
- model.makeValue("/root/send/todt",sHeader[1][24]+sHeader[3][24]+sHeader[4][24]+"00");
- model.makeValue("/root/send/recflag", "24hours");
- model.makeValue("/root/send/clsinfo", model.getValue(sCondPath+"/hoursclsinfo") );
- for(var i=1; i <= 25; i++){
- if(sStrTime == ""){
- sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }else{
- sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }
- }
- model.makeValue("/root/send/strtime", sStrTime);
- sRowCnt = grd_24hoursclincobsreclist.rows - grd_24hoursclincobsreclist.fixedrows;
- for(var iRow = 1; iRow<=sRowCnt; iRow++){
- sItemCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemcd" );
- sItemSeqNO = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemseqno" );
- sRecFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recflag" );
- sRecCharFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/reccharflag" );
- sCareRecSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/carerecseqno");
- sItemNM = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemnm" );
- sLnkBizCd = model.getValue(xHoursClincObsRecList+"["+iRow+"]/lnkbizcd" );
- sStype = model.getValue(xHoursClincObsRecList+"["+iRow+"]/style" );
- // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
- if(sRecCharFlag == "C" || sRecCharFlag == "" || ( sLnkBizCd == "12" && sStype == "01") ) continue;
- //인증키 확인 로직
- var sHistRecDT = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/recdt").split("^");
- var sHistCertKey = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqNo+"']/certkey").split("^");
- for(var iCol=1; iCol<= 24; iCol++){
- sRecRslt_BK = model.getValue(xClincObsRecListPath+"[carerecseqno='"+sCareRecSeqNo+"']/recrslt"+iCol);
- sRecRslt = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- sCertKey = "";
- if(sHistRecDT.length > 0){
- for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
- if(sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00" == sHistRecDT[histrow]){
- sCertKey = sHistCertKey[histrow];
- }
- }
- }
- sStatus = "";
- sResultPath = "";
- //상태값 변경
- if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
- sStatus = "";
- }else if(sRecRslt_BK == "" && sRecRslt == ""){
- sStatus = "";
- }else if(sRecRslt_BK == sRecRslt && sCertKey == ""){
- sStatus = "U";
- }else if(sRecRslt_BK == "" && sRecRslt != ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt == ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt_BK != sRecRslt){
- sStatus = "U";
- }
- if(sStatus == "") continue;
- //sCertKey = model.getValue(xRecUserListPath+"[itemcd='"+sItemCD+"' and itemseqno='"+ sItemSeqNO+"' and recflag ='"+sRecFlag+"' and recdt = '"+sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00']/certkey");
- var sRsltNodeCnt = eval(getNodesetCount(xResultPath)) + 1;
- var sSaveRecDt = "";
- //간편 입력 저장 부분
- var sArraySaveData = new Array();
- if(isSearchString(sRecRslt, "'") == true){
- sArraySaveData = sRecRslt.split("/");
- for(var i = 0 ; i < sArraySaveData.length ; i++){
- if(i == sArraySaveData.length -1 && isSearchString(sArraySaveData[i], "'") == true && sArraySaveData[i].replace("'", "").isNumber() == true && sArraySaveData[i].replace("'", "") < 60 && sArraySaveData[i].replace("'", "").length == 2){
- sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sArraySaveData[i].replace("'", "")+"00";
- sRecRslt = sRecRslt.replace("/" + sArraySaveData[i], "" );
- }
- }
- }
- //if(sRecRslt.length < 1) return;
- if(sSaveRecDt == "") sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
- model.makeValue(xResultPath+"["+sRsltNodeCnt+"]/reclist" , sRecRslt );
- model.makeValue(xResultPath+"["+sRsltNodeCnt+"]/recdt" , sSaveRecDt );
- model.makeValue(xResultAttrPath+"["+sRsltNodeCnt+"]/attrcd" , model.getValue(xHoursClincObsRecList+"["+iRow+"]/attrcd") );
- model.makeValue(xResultAttrPath+"["+sRsltNodeCnt+"]/reclist" , sRecRslt );
- sChkChngData = true;
- sSaveData += sStatus +"▦"
- + sPid +"▦"
- + sIndd +"▦"
- + sCretNo +"▦"
- + sWardCD +"▦"
- + sRoomCD +"▦"
- + sInstcd +"▦"
- + sIOFlag +"▦"
- + sItemCD +"▦"
- + sItemSeqNO +"▦"
- + sRecFlag +"▦"
- + sSaveRecDt +"▦"
- + sRecRslt +"▦"
- + sCertKey +"▦"
- + sCareRecSeqNo +"▩";
- }
- }
- // 변경데이터 유뮤 체크
- if(sChkChngData == false){
- messageBox("저장 할 데이터", "I004");
- model.removeNodeSet("/root/send");
- return;
- }
- //**********************************************************************************************************************
- // 인증 구현 부분 24시 화면
- //************************************************ **********************************************************************
- //Sign.CERT_YEAR = 1970;
- if(Sign.signprocess() == true ){
- //var sSignDataRowCnt = eval(getNodesetCount("/rot/send/signdata")) + 1;
- model.makeValue("/root/send/signdata/pid", sPid);
- model.makeValue("/root/send/signdata/orddd", sIndd);
- model.makeValue("/root/send/signdata/signno", "" );
- model.makeValue("/root/send/signdata/cretno", sCretNo);
- model.makeValue("/root/send/signdata/recdd", getCurrentDate());
- model.makeValue("/root/send/signdata/rectm", getCurrentTime());
- model.makeValue("/root/send/signdata/recsaveflag", "Y");
- model.makeValue("/root/send/signdata/signflag", "02");
- model.makeValue("/root/send/signdata/signgenrflag", sIOFlag);
- model.makeValue("/root/send/signdata/formcd", "0000002443");
- model.makeValue("/root/send/signdata/orddeptcd", model.getValue("/root/main/paminfo/pamlist/orddeptcd"));
- model.makeValue("/root/send/signdata/orddrid", model.getValue("/root/main/paminfo/pamlist/medispclid"));
- model.makeValue("/root/send/signdata/carerecseqno", sCareRecSeqNo);
- model.makeValue("/root/send/signdata/itemseqno", sItemSeqNO);
- model.makeValue("/root/send/signdata/recflag", sRecFlag);
- model.makeValue("/root/send/signdata/lnkrecdt", sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00");
- model.makeValue("/root/send/signdata/dispyn", "N");
- //alert( Sign.signedInfos[1]);
- //alert( Sign.signedInfos[2]);
- //alert( Sign.signedInfos[3]);
- //alert( Sign.signedInfos[4]);
- //alert( Sign.signedInfos[5]);
- // ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- // ▶ 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
- model.makeValue("/root/send/signdata/signbfcnts", Sign.signedInfos[1]);
- //
- // ▶ 공인인증 처리후 데이터
- model.makeValue("/root/send/signdata/signaftcnts", Sign.signedInfos[2]);
- // 응급실 여부에 따라 다음 내환자 동작 제어 (2011.03.09 Ahn)
- if(eERFLAG == "Y"){
- fgetSelectPid(cmb_erpat);
- }else{
- //-------(20110228) 경북대
- //alert("0");
- fgetSelectPid(cmb_mypatlist);
- //alert("1");
- //-------(20110228) 경북대
- }
- }else{
- return false;
- }
- //**********************************************************************************************************************
- model.makeValue("/root/send/clincobsreclist",sSaveDataHeader+sSaveData);
- model.removenodeSet("/root/main/clincobsrecinfo/hoursclincobsrecinfo");
- //submit("TXMNR00901", false); //2008-07-09
- submit("TXMNR10101", false); //2008-07-09
- model.removenodeSet("/root/certtemp");
- model.removenodeSet("/root/certattrtemp");
- fMakeViewData();
- model.removenodeSet("/root/send");
- model.removenodeSet("/root/temp/clincobsrecinfo/rtnsigndata");
- model.removenodeSet("/root/temp/SignData");
- //model.refresh();
- // 응급실 여부에 따라 다음 내환자 동작 제어 (2011.03.08 Ahn)
- if(eERFLAG == "Y"){
- fGetCareComPatList(cmb_wardlist.value, cmb_roomlist.value, cmb_zone.value, eRECFLAG);
- fNextSelectErPat(cmb_erpat);
- cmb_erpat.refresh();
- }else{
- //-------(20110228) 경북대
- //alert("3");
- //내환자 조회-간호일지용
- //debugger;
- if (gcurrentpid != "") {
- fGetSettingPatientList_type2(); //--테스트완료 , XRW를 변경하면됨
- //alert("4");
- var posi = fgetSelectPidNext();
- //alert("5/"+ posi);
- fsetSelectPidNext(cmb_mypatlist,posi);
- //alert("6");
- cmb_mypatlist.refresh();
- }
- //-------(20110228) 경북대
- }
- break;
- }
- fSettingClincObsRec(pRecFlag);
- }
- /* -----(20110228) 경북대 ------------------------ */
- // 현재 위치 인지하기
- function fgetSelectPid(sobj){
- //현재위치찾기
- //alert("sobj.value:" + sobj.value);
- if (sobj.value != "") {
- gcurrentpid = sobj.value;
- } else {
- gcurrentpid = "";
- }
- //alert("gcurrentpid:" + gcurrentpid);
- }
- // 이전 저장위치이전 다음으로 조회시키기
- function fgetSelectPidNext(){
- //var sPath = "/root/temp/mypatsettinginfo/settingpatient/settingpatientlist"
- var tempPid = "";
- var sposition = 0;
- //alert("gcurrentpid:" + gcurrentpid + "/" + getNodesetCount(gpidPath));
- if ( gcurrentpid != "") {
- for(i = 1; i <= getNodesetCount(gpidPath); i++ ) {
- tempPid = model.getValue(gpidPath + "["+ i +"]/pid");
- //alert(gcurrentpid + "/" + tempPid);
- //gcurrentpid 전역변수
- if (gcurrentpid == tempPid) {
- sposition = i;
- //alert("pid찾음");
- i = getNodesetCount(gpidPath) + 1;
- }
- }
- }
- return sposition;
- }
- // 재설정하기
- function fsetSelectPidNext(sobj,sposition){
- var nextyn = model.getValue(chk_nextyn.attribute("ref"));
- // 중환자실 환자인 경우 저장 후 현재 환자 재선택 (2011.03.25 Ahn)
- if(fIsICUPatient(sWardCD)){
- if(nextyn == "Y") {
- sobj.select(sposition);
- } else {
- sobj.select(parseInt(sposition)-1);
- }
- //sobj.select(parseInt(sposition)-1);
- }else{
- if ( getNodesetCount(gpidPath) > sposition ) {
- if(nextyn == "Y") {
- sobj.select(sposition);
- } else {
- sobj.select(parseInt(sposition)-1);
- }
- //alert("1");
- }else {
- //콤보믄 0부터시작
- //instance는 1부터시작
- if(nextyn == "Y") {
- sobj.select(0);
- } else {
- sobj.select(parseInt(sposition)-1);
- }
- //alert("2");
- }
- }
- }
- /* -----(20110228) 경북대 ------------------------ */
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 기록 Setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingClincObsRec(pRecFlag){
- var sCurDT = getCurrentDate() + getCurrentTime();
- var sRecDT = ""; // 기록일시
- var sRecFromDT = ""; // 기록시작일시
- var sRecToDT = ""; // 기록종료일시
- var sAttrCD = ""; // 속성코드
- //var sUserID = getUserId();
- var sRecRslt = "";
- var sAnptTmSpec = "";
- var sSupCD = "";
- var sRecFlag = ""; // 기록구분
- var sTotalSum = new Array();
- var sSubTotalSum = new Array();
- var sRunTotalSum = new Array();
- var sRunTotalValue = "";
- var sTotalSumRow = 0;
- var sSubTotalSumRow = 0;
- var sRunTotalSumRow = 0;
- var sAttrCD = "";
- var sAttrValue = "";
- var sChkTotal = "N";
- var sChkSubTotal = "N";
- var sChkRunTotal = "N";
- var sTotalNm = "";
- var sStartOutput = "N";
- var sRecAddRow = "";
- var sReChartFlag = "";
- var sFixRow = 0;
- var sItemColRef = "";
- var sChkFluidRow = 0;
- var sChkDrugRow = 0;
- var sChkTotalIdx = "";
- var sChkSubTotalIdx = "";
- var sChkRunTotalIdx = "";
- var sRecFluidUnit = "";
- sNowDate = getCurrentDate() + getCurrentTime();
- switch(pRecFlag){
- case "24hours" :
- sCurDT = fCalcStartDate(sCurDT, eval(model.getValue(sCondPath+"/timeflag")));
- grd_24hoursclincobsreclist.rebuildStyle();
- grd_24hoursclincobsreclist.backcoloralternate = "transparent";
-
- //기록건수
- sRecCnt = getNodesetCnt(model, xClincObsRecListPath);
-
- sItemColRef = grd_24hoursclincobsreclist.colRef("itemnm");
- sFixRow = grd_24hoursclincobsreclist.fixedrows - 1 ;
- for(var i=1; i<= 24; i++){
- sTotalSum[i] = null;
- sSubTotalSum[i] = null;
- sRunTotalSum[i] = null;
- }
- for(var iRow=1; iRow <= sRecCnt; iRow++){
- //그리드 합계 Row 설정 처리
- var addRow = eval(getNodesetCount(xHoursClincObsRecList)) + 1;
- if( sTotalNm == "" ) sTotalNm = model.getValue( xClincObsRecListPath+"["+iRow+"]/totalnm" );
- sTotalYn = model.getValue(xClincObsRecListPath+"["+iRow+"]/totalyn" );
- sSubTotalYn = model.getValue(xClincObsRecListPath+"["+iRow+"]/subtotalyn" );
- sSubTotalNm = model.getValue(xClincObsRecListPath+"["+iRow+"]/subtotalnm" );
- sRunTotalYn = model.getValue(xClincObsRecListPath+"["+iRow+"]/runtotalyn" );
- sRunTotalNm = model.getValue(xClincObsRecListPath+"["+iRow+"]/runtotalnm" );
- sRecFlag = model.getValue(xClincObsRecListPath+"["+iRow+"]/recflag" );
- sLnkBizCd = model.getValue(xClincObsRecListPath+"["+iRow+"]/lnkbizcd" );
- sSupCD = model.getValue(xClincObsRecListPath+"["+iRow+"]/supcd" );
- sStyle = model.getValue(xClincObsRecListPath+"["+iRow+"]/style" );
- sItemNm = model.getValue(xClincObsRecListPath+"["+iRow+"]/itemnm" );
- sCareRecSeqNo = model.getValue(xClincObsRecListPath+"["+iRow+"]/carerecseqno");
- sRecFluidUnit = model.getValue(xClincObsRecListPath+"["+iRow+"]/recfluidunit");
- //현재 행 다음의 기록구분을 조회
- if(iRow == sRecCnt){
- sNextRecFlag = "Last";
- sNextSetnm = "";
- sNextSupCD = "";
- sNextSubTotalYn = "N";
- sNextSubTotalNm = "";
- sNextRunTotalYn = "N";
- sNextRunTotalNm = "";
- }else{
- sNextRecFlag = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/recflag" );
- sNextSetnm = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/totalnm" );
- sNextSupCD = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/supcd" );
- sNextSubTotalYn = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/subtotalyn" );
- sNextSubTotalNm = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/subtotalnm" );
- sNextRunTotalYn = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/runtotalyn" );
- sNextRunTotalNm = model.getValue(xClincObsRecListPath+"["+(iRow+1)+"]/runtotalnm" );
- }
- //전체합계 시작 여부
- if(sChkTotal == "N" && sTotalYn == "Y"){
- sChkTotal = sTotalYn;
- }
- //부분합계 시작 여부
- if(sChkSubTotal == "N" && sSubTotalYn == "Y"){
- sChkSubTotal = sSubTotalYn;
- }
- //누적합계 시작 여부
- if(sChkRunTotal == "N" && sRunTotalYn == "Y"){
- sChkRunTotal = sRunTotalYn;
- }
- //약,주사 행 추가 부분
- if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle != "01" && sChkDrugRow == 0 ){
- sChkDrugRow = addRow;
- fMakeGridNode(pRecFlag, addRow, "약/주사", "B", 2, sLnkBizCd, "-", "", "Y", "");
- addRow = addRow + 1;
- }
- //Fluid 행 추가 부분
- if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle == "01" && sChkFluidRow == 0 ){
- sChkFluidRow = addRow;
- fMakeGridNode(pRecFlag, addRow, "지속적약물", "B", 2, sLnkBizCd, "-", "", "Y", "");
- addRow = addRow + 1;
- }
- model.makeNode(xHoursClincObsRecList+"["+addRow+"]");
- model.copyNode(xHoursClincObsRecList+"["+addRow+"]", xClincObsRecListPath+"["+iRow+"]");
-
- //Graph 행 추가 부분
- //var ChkFluidList = model.getValue(xFluidPath+"[carerecseqno ='" +sCareRecSeqNo+ "']/carerecseqno" );
- //if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle == "01" && ChkFluidList != ""){
- if( sStyle == "01" ){
- if( sLnkBizCd =="02" || sLnkBizCd =="12" ){
- var sRealFluidRow = addRow;
- var sGraphRow = eval(getNodesetCount(xHoursClincObsRecList)) + 1;
- var sGraphNm = "Graph";
- if( !isNull(sRecFluidUnit) ) sGraphNm = sRecFluidUnit;
- fMakeGridNode(pRecFlag, sGraphRow, sGraphNm, "B", 4, sLnkBizCd, sStyle, "", "Y", sCareRecSeqNo);
- fSettingFluidInfo("F", "Init", sRealFluidRow, sGraphRow, sCareRecSeqNo);
- }else{
- var sRealFluidRow = addRow;
- fSettingFluidInfo("I", "Init", sRealFluidRow, sRealFluidRow, sCareRecSeqNo);
- }
- }
- //부분합계 행 추가 부분 FFCC99 //연주황색
- if( sSubTotaluseYn == "Y" && sChkSubTotal == "Y" ){
- if( sChkSubTotalIdx != "" ) sChkSubTotalIdx += ",";
- sChkSubTotalIdx += "/"+sCareRecSeqNo+"/";
- if(( sRecFlag == "A" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ||
- ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ||
- ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ){
- var addSubTotalRow = eval(getNodesetCount(xHoursClincObsRecList)) + 1;
- fMakeGridNode(pRecFlag, addSubTotalRow, sSubTotalNm, "S", 2, "", "-", "#FFCC99", "Y", "", sChkSubTotalIdx);
- sChkSubTotalIdx = "";
- sChkSubTotal = "N";
- sSubTotalNm = "";
- }
- }
- //누적합계 행 추가 부분 #FFFFCC" //연노란색
- if( sRunTotaluseYn == "Y" && sChkRunTotal == "Y" ){
- if( sChkRunTotalIdx != "" ) sChkRunTotalIdx += ",";
- sChkRunTotalIdx += "/"+sCareRecSeqNo+"/";
- if(( sRecFlag == "A" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ||
- ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ||
- ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ){
- var addRunTotalRow = eval(getNodesetCount(xHoursClincObsRecList)) + 1;
- fMakeGridNode(pRecFlag, addRunTotalRow, sRunTotalNm, "R", 2, "", "-", "#FFFFCC", "Y", "", sChkRunTotalIdx);
- sChkRunTotalIdx = "";
- sChkRunTotal = "N";
- sRunTotalNm = "";
- }
- }
- //분류별 전체 합계 행 추가 부분(Total Intake, Total Output, GCS총점)
-
- if( sTotaluseYn == "Y" && sChkTotal == "Y" ){
- if( sChkTotalIdx != "" ) sChkTotalIdx += ",";
- sChkTotalIdx += "/"+sCareRecSeqNo+"/";
- if( ( sRecFlag == "A" && ( sSupCD != sNextSupCD || sTotalNm != sNextSetnm || sRecFlag != sNextRecFlag ) ) ||
- ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sRecFlag != sNextRecFlag ) ) ||
- ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sRecFlag != sNextRecFlag ) ) ) {
-
- var addIntakeRow = eval(getNodesetCount(xHoursClincObsRecList)) + 1;
- sSumRowColor = "#dbb7ff"; //연보라색
- if( sRecFlag == "B" || sRecFlag == "C" ) sSumRowColor = "#FF7CFD"; //진분홍색
- fMakeGridNode(pRecFlag, addIntakeRow, sTotalNm, "T", 2, "", "-", sSumRowColor, "Y", "", sChkTotalIdx);
- sChkTotalIdx = "";
- sChkTotal = "N";
- sTotalNm = "";
- }
- }
- // Intake/OutTake 변경시 초기화
- if(sRecFlag != sNextRecFlag){
- //sChkTotal = "N";
- sStartOutput = "N";
- }
- }
-
- grd_24hoursclincobsreclist.refresh();
- grd_24hoursclincobsreclist.allStyle("data", "font-size") = sDataFontSize; //Grid 글씨 크기
- sCurrentTMColInfo = 0;
- sDutyTMColInfo1 = 0;
- sDutyTMColInfo2 = 0;
- sDutyTMColInfo3 = 0;
-
- //그리드 스타일 설정
- for(var iRow = grd_24hoursclincobsreclist.fixedRows ; iRow < grd_24hoursclincobsreclist.rows ; iRow++){
- sCareRecSeqno = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("carerecseqno") );
- sRecFromDT = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfromdt") );
- sRecToDT = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("rectodt") );
- sDepth = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("depth") );
- sAttrCD = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("attrcd") );
- sReChartFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("reccharflag") );
- sLnkBizCd = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("lnkbizcd") );
- sTotalYn = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("totalyn") );
- sSubTotalYn = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("subtotalyn") );
- sRunTotalYn = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("runtotalyn") );
- sRecFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recflag") );
- sFontColor = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("color") );
- sStyleValue = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("style") );
- sFluidStatInfo = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("fluidstat") );
- sReadOnlyYn = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("readonlyyn") );
- //현재 행 다음의 기록구분을 조회
- if(iRow == grd_24hoursclincobsreclist.rows){
- sNextRecFlag = "Last";
- }else{
- sNextRecFlag = grd_24hoursclincobsreclist.valueMatrix((iRow+1), grd_24hoursclincobsreclist.colRef("recflag"));
- }
- if(sReadOnlyYn == "Y" || (sStyleValue == "01" && (sLnkBizCd == "02" || sLnkBizCd == "12"))) grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1) = true;
- // 분류의 경우
- if(eval(sDepth) == 1){
- grd_24hoursclincobsreclist.mergeByFree(iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1);
- grd_24hoursclincobsreclist.rowStyle(iRow,"data","background-color") = "#d0e7ff"; //하늘색
- grd_24hoursclincobsreclist.rowStyle(iRow,"data","font-weight") = "bold";
- }else{ //분류가 아닐 경우
- // SubTotal 항목 표시
- if(sTotalYn == "Y"){
- grd_24hoursclincobsreclist.cellStyle("background-color", iRow, sItemColRef, iRow, sItemColRef) = "#fffebb"; //연노란색
- }
- //20090209 khj hierarchies 자동세팅관련 임상관찰기록에서 작성대상이 아닌 상위아이템행은 읽기전용으로 세팅
- if(sTotalYn == "H"){
- grd_24hoursclincobsreclist.mergeByFree(iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1);
- grd_24hoursclincobsreclist.isReadOnly(iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1) = true;
- }
- //연계업무항목 설정 추가
- if( sLnkBizCd == "01" || sLnkBizCd == "04" || sLnkBizCd == "05" ){ //경구기록, 혈당기록, CAPD기록
- grd_24hoursclincobsreclist.cellStyle("background-color", iRow, sItemColRef+1, iRow, grd_24hoursclincobsreclist.cols-1)= "#EAEAEA"; //추가, 회색
- grd_24hoursclincobsreclist.cellStyle("color", iRow, sItemColRef+1, iRow, grd_24hoursclincobsreclist.cols-1) = "#FF0000"; //빨간색
- }else if( sLnkBizCd == "02" || sLnkBizCd == "12" ){ //투약기록, 수액확장
- if( sDepth == 2 ){
- grd_24hoursclincobsreclist.mergeByFree(iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1);
- grd_24hoursclincobsreclist.cellStyle("background-color", iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1)= "#ffffff"; //추가, 흰색
- }
- }else if( sLnkBizCd == "03" ){ //수혈간호기록
- if( sDepth == 2 ){
- grd_24hoursclincobsreclist.mergeByFree(iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1);
- grd_24hoursclincobsreclist.cellStyle("background-color", iRow, grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1)= "#ffffff"; //추가
- }else{
- grd_24hoursclincobsreclist.cellStyle("background-color", iRow, sItemColRef+1, iRow, grd_24hoursclincobsreclist.cols-1)= "#EAEAEA"; //추가
- grd_24hoursclincobsreclist.cellStyle("color", iRow, sItemColRef+1, iRow, grd_24hoursclincobsreclist.cols-1) = "#FF0000";
- }
- }
- // Total Intake, Total Output 색 및 글꼴 변경
- if( sRecFlag == "T" || sRecFlag == "R" || sRecFlag == "S" ){
- grd_24hoursclincobsreclist.rowStyle(iRow,"data","background-color") = sFontColor;
- grd_24hoursclincobsreclist.cellStyle("font-weight", iRow, sItemColRef, iRow, sItemColRef) = "bold";
- if(sRecFlag == "T") sTotalSumRow = iRow;
- if(sRecFlag == "S") sSubTotalSumRow = iRow;
- if(sRecFlag == "R") sRunTotalSumRow = iRow;
- }else{
- // 색상지정 항목 색상 변경 및 글자 강조
- if( sFontColor != "" ){
- grd_24hoursclincobsreclist.cellStyle("color", iRow, sItemColRef, iRow, grd_24hoursclincobsreclist.cols-1) = sFontColor;
- grd_24hoursclincobsreclist.cellStyle("font-weight", iRow, sItemColRef, iRow, sItemColRef) = "bold";
- }
- }
- //컬럼별 설정 부분
- for(var iCol=1; iCol<= 24; iCol++){
- sRecRslt = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recrslt"+iCol));
- sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
- sFluidRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
- //Total Intake, Total Output 제외 대상 색 및 글꼴 변경
- if(sRecFlag != "T"){
- var sChkRecYn = model.getValue(xIntervalRecYNListPath+"[carerecseqno ='"+sCareRecSeqno+"']/recyn"+iCol);
- if(sChkRecYn == "Y" ){ //인증저장
- grd_24hoursclincobsreclist.cellStyle("background-image",iRow,iCol) = "../../../com/commonweb/images/input_s_essential.gif"; //노란별*
- grd_24hoursclincobsreclist.cellStyle("background-position",iRow,iCol) = "top right";
- }else if(sChkRecYn == "Z"){ //임시저장
- grd_24hoursclincobsreclist.cellStyle("background-image",iRow,iCol) = "../../../com/commonweb/images/input_essential.gif"; //파란별*
- grd_24hoursclincobsreclist.cellStyle("background-position",iRow,iCol) = "top right";
- }
- //Grid Graph 설정
- if(sStyleValue == "01" && isSearchString(sFluidStatInfo, sFluidRecDT) == true){
- grd_24hoursclincobsreclist.cellstyle("border-bottom-color",iRow,iCol) = "#0000ff"; //파란색
- grd_24hoursclincobsreclist.cellstyle("border-bottom-width",iRow,iCol) = 2;
- }
- // 기록 가능 일시가 아닌 경우(20090512 김홍점 모든 아이템에 대해서 입실체크 이전의 blocking 해제 김영림 05-12 12:55)
- if(sReadOnlyYn != "Y" && sRecDT > sRecToDT ){
- grd_24hoursclincobsreclist.isReadOnly(iRow,iCol) = true;
- grd_24hoursclincobsreclist.cellStyle("background-color",iRow,iCol,iRow,iCol)= "#ffeeee"; //추가, 연분홍색
- }
- // 속성 매핑 Item에 속성 정보 세팅
- if(sReChartFlag == "A" && sAttrCD != "") {
- if(sRecRslt != ""){
- grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath1+"[supcd='"+sAttrCD+"']";
- }
- }
- var sHistRecDT = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqno+"']/recdt").split("^");
- var sHistCertKey = model.getValue(xRecUserListPath+"[carerecseqno = '"+sCareRecSeqno+"']/certkey").split("^");
- var sSettingRecDT = "";
- var sSettingCertKey = "";
- if(sHistRecDT.length > 0){
- for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
- if(sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00" == sHistRecDT[histrow]){
- sSettingCertKey = sHistCertKey[histrow];
- }
- }
- if(sSettingCertKey == "" && ( sLnkBizCd == "11" || ( sLnkBizCd == "12" && sStyleValue != "01" ) || sLnkBizCd == "-" || sLnkBizCd == "99" )){ //11:경구확장, 12:수액확장
- grd_24hoursclincobsreclist.cellStyle("font-weight", iRow, iCol) = "bold";
- if(sRecRslt != ""){
- //임시저장 Cell Color
- grd_24hoursclincobsreclist.cellStyle("color",iRow,iCol) = "#0000ff"; //파란색
- }else{
- //미저장 Cell Color
- grd_24hoursclincobsreclist.cellStyle("color",iRow,iCol) = "#ff9900"; //주황색
- }
- }
- }
- //첫번째 Row 정보로 스타일 적용가능한 부분 처리
- if(iRow == grd_24hoursclincobsreclist.fixedRows+1){
- //현재시간 색 표시
- if(sCurrentTMColInfo == 0){
- if(getDateTime(sCurDT,'기본').substr(0,12) <= (sHeader[1][iCol]+ sHeader[3][iCol]+sHeader[4][iCol])){
- if(iCol == 1){
- grd_24hoursclincobsreclist.colstyle(iCol,"all","background-color") = "#ffe1fe";
- sCurrentTMColInfo = iCol;
- }else{
- if(getDateTime(sCurDT,'기본').substr(0,12) > (sHeader[1][iCol-1]+ sHeader[3][iCol-1]+sHeader[4][iCol-1])){
- grd_24hoursclincobsreclist.colstyle(iCol,"all","background-color") = "#ffe1fe"; //연분홍색
- sCurrentTMColInfo = iCol;
- }
- }
- }
- }
- //Duty 기준선 표시 설정
- if( iCol > 0 ){
- if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sDayStndTm ) sDutyTMColInfo1 = iCol;
- if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sEvenStndTm ) sDutyTMColInfo2 = iCol;
- if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sNightStndTm ) sDutyTMColInfo3 = iCol;
- if(sDutyTMColInfo1 == iCol || sDutyTMColInfo2 == iCol || sDutyTMColInfo3 == iCol){
- //Duty 기준선 해당시간 왼쪽으로 셋팅되도록 수정_20110210_SMY
- //grd_24hoursclincobsreclist.colstyle(iCol,"all","border-right-color") = "#ff0000"; //빨간색
- //grd_24hoursclincobsreclist.colstyle(iCol+1,"all","border-left-color") = "#ff0000";
- grd_24hoursclincobsreclist.colstyle(iCol-1,"all","border-right-color") = "#ff0000"; //빨간색
- grd_24hoursclincobsreclist.colstyle(iCol,"all","border-left-color") = "#ff0000";
- }
- }
- }
- }
- //**************************** clear ********************************
- //부분합계 계산 처리
- if( sSubTotalYn == "Y" ){
- sChkSubTotal = "Y";
- if( sLnkBizCd == "12" && sStyleValue == "01" ){
- for( var i = 0 ; i < sFluidSumInfo.length ; i++ ){
- if( sFluidSumInfo[i][0] == sCareRecSeqno ){
- if(sFluidSumInfo[i][iCol] > 0 ) sSubTotalSum[iCol] += eval(sFluidSumInfo[i][iCol]);
- }
- }
- }else{
- if(sRecRslt != ""){
- if(sRecFlag == "A"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sSubTotalSum[iCol] += eval(sRecRslt);
- }else{
- if( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc")) && fIsNumber(sRecRslt) == true ){
- sSubTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sSubTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }else if (sRecFlag == "B" || sRecFlag == "C"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sSubTotalSum[iCol] += eval(sRecRslt);
- }else{
- if(fIsNumber(sRecRslt) == true){
- sSubTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sSubTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }
- }
- }
- }
- //누적합계 계산 처리
- if(sRunTotalYn == "Y"){
- sChkRunTotal = "Y";
- if( sLnkBizCd == "12" && sStyleValue == "01" ){
- for( var i = 0 ; i < sFluidSumInfo.length ; i++ ){
- if( sFluidSumInfo[i][0] == sCareRecSeqno ){
- if(sFluidSumInfo[i][iCol] > 0 ) sRunTotalSum[iCol] += eval(sFluidSumInfo[i][iCol]);
- }
- }
- }else{
- if(sRecRslt != ""){
- if(sRecFlag == "A"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sRunTotalSum[iCol] += eval(sRecRslt);
- }else{
- if( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc")) && fIsNumber(sRecRslt) == true ){
- sRunTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sRunTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }else if (sRecFlag == "B" || sRecFlag == "C"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sRunTotalSum[iCol] += eval(sRecRslt);
- }else{
- if(fIsNumber(sRecRslt) == true){
- sRunTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sRunTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }
- }
- }
- }
- // Intake/output 합계 계산
- if(sTotalYn == "Y"){
- sChkTotal = "Y";
- if( sLnkBizCd == "12" && sStyleValue == "01" ){
- for( var i = 0 ; i < sFluidSumInfo.length ; i++ ){
- if( sFluidSumInfo[i][0] == sCareRecSeqno ){
- if(sFluidSumInfo[i][iCol] > 0 ) sTotalSum[iCol] += eval(sFluidSumInfo[i][iCol]);
- }
- }
- }else{
- if(sRecRslt != ""){
- if(sRecFlag == "A"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sTotalSum[iCol] += eval(sRecRslt);
- }else{
- if( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc")) && fIsNumber(sRecRslt) == true ){
- sTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }else if (sRecFlag == "B" || sRecFlag == "C"){
- if(sAttrCD == "" && fIsNumber(sRecRslt) == true){
- sTotalSum[iCol] += eval(sRecRslt);
- }else{
- if(fIsNumber(sRecRslt) == true){
- sTotalSum[iCol] += eval(sRecRslt);
- }else{
- sAttrValue =( isNull(model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc"))
- ? sRecRslt.split(":")
- : model.getValue(sAttrListPath1+"[attrcd ='"+sRecRslt+"']/attrdesc").split(":")
- );
- if(sAttrValue[0].getTrim().isNumber()){
- sTotalSum[iCol] += eval(sAttrValue[0]);
- }
- }
- }
- }
- }
- }
- }
- // 부분합계 계산목록 Setting
- if( ( sRecFlag == "S" || sRecFlag != sNextRecFlag ) && sChkSubTotal == "Y" && sSubTotalSumRow != "" ){
- if( sSubTotalSum[iCol] != null ){
- grd_24hoursclincobsreclist.valueMatrix(sSubTotalSumRow, iCol) = sSubTotalSum[iCol] ;
- }
- if( iCol == 24 ){
- sChkSubTotal = "C";
- }
- }
- // 누적합계 계산목록 Setting
- if( (sRecFlag == "S" || sRecFlag != sNextRecFlag ) && sChkRunTotal == "Y" && sRunTotalSumRow != "" ){
- if( sDutyTMColInfo1+1 == iCol || sDutyTMColInfo2+1 == iCol || sDutyTMColInfo3+1 == iCol ) sRunTotalValue = "";
- if( sRunTotalSum[iCol] != null ){
- if( sRunTotalValue == "" ){
- sRunTotalValue = sRunTotalSum[iCol];
- }else{
- sRunTotalValue += sRunTotalSum[iCol];
- }
- grd_24hoursclincobsreclist.valueMatrix(sRunTotalSumRow, iCol) = sRunTotalValue ;
- }
- if(iCol == 24){
- sChkRunTotal = "C";
- }
- }
- // 합계 계산목록 Intake/OutTake에 세팅
- if( (sRecFlag == "T" || sRecFlag != sNextRecFlag ) && sChkTotal == "Y" && sTotalSumRow != "" ){
- if( sTotalSum[iCol] != null ){
- grd_24hoursclincobsreclist.valueMatrix(sTotalSumRow, iCol) = sTotalSum[iCol] ;
- }
- if(iCol == 24){
- sChkTotal = "C";
- }
- }
- }
- //부분합계 관련 변수 초기화
- if(sChkSubTotal == "C"){
- for(var i = 1 ; i <25 ; i ++){
- sSubTotalSum[i] = null;
- }
- sSubTotalSumRow = "";
- sChkSubTotal = "N";
- }
- //누적합계 관련 변수 초기화
- if(sChkRunTotal == "C"){
- for(var i = 1 ; i <25 ; i ++){
- sRunTotalSum[i] = null;
- }
- sRunTotalValue = "";
- sRunTotalSumRow = "";
- sChkRunTotal = "N";
- }
- //전체합계 관련 변수 초기화
- if(sChkTotal == "C"){
- for(var i = 1 ; i <25 ; i ++){
- sTotalSum[i] = null;
- }
- sTotalSumRow = "";
- sChkTotal = "N";
- }
- }
- }
- setTree(grd_24hoursclincobsreclist, grd_24hoursclincobsreclist.colRef("depth"), 0, false, 4); //변경
- // 차트표시
- fMakeChart(pRecFlag);
- model.removenodeSet(xIntervalRecYNListPath);
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 팝업메뉴 SETTING
- * @param : pFlag
- * @return :
- * @---------------------------------------------------
- */
- function fSettingPopUpMenu(pFlag, pGridFlag){
- var iRow = 0;
- var sX = 0;
- var sY = 0;
- var sPopupMenumNodeCnt = 0;
- switch(pFlag){
- case "24hours" :
- iRow = grd_24hoursclincobsreclist.mouseRow;
- iCol = grd_24hoursclincobsreclist.mouseCol;
- if(event.button == 3){
- model.removeNodeset(xItemPopupPath);
- var sPopupCareRecSeqNo = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("carerecseqno"));
- var sPopupLnkBizCd = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("lnkbizcd"));
- var sPopupRecFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recflag"));
- var SPopupRecCharFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("reccharflag"));
- if(iRow < grd_24hoursclincobsreclist.fixedRows){
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+4+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+4+"']/func") );
- window.showPopupMenu(true);
- window.setPopupMenu(true, xItemPopupPath, "name", "func", false);
- }else{
- if( iCol == grd_24hoursclincobsreclist.colRef("itemnm") ){
- if( sPopupCareRecSeqNo != "" && sPopupCareRecSeqNo != 0 ){
- if( SPopupRecCharFlag == "A" ){
- //Item 시작/종료 시간 설정
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+2+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+2+"']/func") );
- }
- //확장명 변경 popup메뉴 설정
- if( sPopupLnkBizCd == "11" || sPopupLnkBizCd == "12" ){
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+1+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+1+"']/func") );
- }
- }
- }
- if( sPopupCareRecSeqNo != "" && sPopupCareRecSeqNo != 0 || sPopupRecFlag == "T" || sPopupRecFlag == "S" || sPopupRecFlag == "R" ){
- //부분합계 popup메뉴 설정
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+3+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+3+"']/func") );
- if( sPopupRecFlag != "T" && sPopupRecFlag != "S" && sPopupRecFlag != "R" ){
- //입력값 복사 popup메뉴 설정
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+5+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+5+"']/func") );
- //입력값 삭제 popup메뉴 설정
- sPopupMenumNodeCnt = eval(getNodesetCount(xItemPopupPath))+1;
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/name" , model.getValue(xItemInitPopupPath+"[idx ='"+6+"']/name") );
- model.makeValue(xItemPopupPath+"["+sPopupMenumNodeCnt+"]/func" , model.getValue(xItemInitPopupPath+"[idx ='"+6+"']/func") );
- }
- }
- setPopupMenu("grd_24hoursclincobsreclist", false, xItemPopupPath, "name", "func");
- }
- }
- //grd_24hoursclincobsreclist.focusColor = "#ffe79d";
- //grd_24hoursclincobsreclist.colStyle(iCol, "data", "background-color") = "#ffe79d";
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Day Count 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangedDayCountInfo(){
- var sDayCountInfo = "";
- var sCapNm = "";
- switch(sDayCountFlag){
- case "24HoursHeader" :
- sDayCountInfo = model.getValue(sCondPath+"/daycountinfo").split(" ");
- for(var i=1; i<=24; i++){
- sHeader[2][i] = "";
- for(var j=0; j<sDayCountInfo.length; j++){
- if(sHeader[2][i] != "") sHeader[2][i] += ", ";
- if(sDayCountInfo[j] == "1"){
- sHeader[2][i] += "HD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/hd");
- }else if(sDayCountInfo[j] == "2"){
- sHeader[2][i] +="POD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/pod");
- }else if(sDayCountInfo[j] == "3"){
- sHeader[2][i] += "ICU:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/icu");
- }else if(sDayCountInfo[j] == "4"){
- sHeader[2][i] += "D:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/d");
- }else if(sDayCountInfo[j] == "5"){
- sHeader[2][i] += "BMT:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/bmt");
- }else if(sDayCountInfo[j] == "6"){
- sHeader[2][i] += "CP:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/cp");
- }
- }
- }
- for(var iRow=1; iRow<=4; iRow++){
- for(var iCol=0; iCol<=24; iCol++){
- if(iRow == 1){
- sCapNm += sHeader[iRow+1][iCol]; // day count
- }else if(iRow == 3){ // 시
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "시"; }
- }else if(iRow == 4){ // 분
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "분"; }
- }
- if(iCol != 24){
- if(iRow != 2){ sCapNm += "^"; }
- }
- }
- if(iRow != 4){
- if((iRow%2)== 1){ sCapNm += "|"; }
- }
- }
- grd_24hoursheader.caption = sCapNm;
- break;
- case "4DaysHeader" :
- sDayCountInfo = model.getValue(sCondPath+"/daycountinfo").split(" ");
- for(var i=1; i<=16; i++){
- sHeader[2][i] = "";
- for(var j=0; j<sDayCountInfo.length; j++){
- if(sHeader[2][i] != "") sHeader[2][i] += ", ";
- if(sDayCountInfo[j] == "1"){
- sHeader[2][i] += "HD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/hd");
- }else if(sDayCountInfo[j] == "2"){
- sHeader[2][i] +="POD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/pod");
- }else if(sDayCountInfo[j] == "3"){
- sHeader[2][i] += "ICU:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/icu");
- }else if(sDayCountInfo[j] == "4"){
- sHeader[2][i] += "D:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/d");
- }else if(sDayCountInfo[j] == "5"){
- sHeader[2][i] += "BMT:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/bmt");
- }else if(sDayCountInfo[j] == "6"){
- sHeader[2][i] += "CP:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/cp");
- }
- }
- }
- for(var iRow=1; iRow<=3; iRow++){
- for(var iCol=0; iCol<= 16; iCol++){
- if(iRow == 1){
- sCapNm += sHeader[iRow+1][iCol]; // day count
- }else if(iRow == 3){ // 시
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += ":"+sHeader[4][iCol]; }
- }
- if(iCol != 16){
- if(iRow != 2){ sCapNm += "^"; }
- }
- }
- if(iRow != 3){
- if(iRow == 1){ sCapNm += "|"; }
- }
- }
- grd_4dayschartheader.caption = sCapNm;
- break;
- case "former" :
- sDayCountInfo = model.getValue(sCondPath+"/formerdaycountinfo").split(" ");
- for(var i=1; i<=6; i++){
- sFormerHeader[2][i] = "";
- for(var j=0; j<sDayCountInfo.length; j++){
- if(sFormerHeader[2][i] != "") sFormerHeader[2][i] += ", ";
- if(sDayCountInfo[j] == "1"){
- sFormerHeader[2][i] += "HD:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/hd");
- }else if(sDayCountInfo[j] == "2"){
- sFormerHeader[2][i] +="POD:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/pod");
- }else if(sDayCountInfo[j] == "3"){
- sFormerHeader[2][i] += "ICU:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/icu");
- }else if(sDayCountInfo[j] == "4"){
- sFormerHeader[2][i] += "D:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/d");
- }else if(sDayCountInfo[j] == "5"){
- sFormerHeader[2][i] += "BMT:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/bmt");
- }else if(sDayCountInfo[j] == "6"){
- sFormerHeader[2][i] += "CP:"+model.getValue(xFormerDayCountListPath+"[recdd='"+sFormerHeader[1][i]+"']/cp");
- }
- }
- }
- for(var iRow=1; iRow<=4; iRow++){
- for(var iCol=0; iCol<=6; iCol++){
- if(iRow == 1){
- if(iCol == 0){
- sCapNm += sFormerHeader[iRow][iCol];
- }else{
- sCapNm += sFormerHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sFormerHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- }
- }else if(iRow == 2){ // day count
- sCapNm += sFormerHeader[iRow][iCol];
- }else if(iRow == 3){ // 시
- sCapNm += sFormerHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "시"; }
- }else if(iRow == 4){ // 분
- sCapNm += sFormerHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "분"; }
- }
- if(iCol != 6){ sCapNm += "^"; }
- }
- if(iRow != 4){ sCapNm += "|";}
- }
- grd_formersclincobsreclist.caption = sCapNm;
- break;
- case "stnd" :
- sDayCountInfo = model.getValue(sCondPath+"/daycountinfo").split(" ");
- for(var i=1; i<=14; i++){
- sHeader[2][i] = "";
- for(var j=0; j<sDayCountInfo.length; j++){
- if(sHeader[2][i] != "") sHeader[2][i] += ", ";
- if(sDayCountInfo[j] == "1"){
- sHeader[2][i] += "HD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/hd");
- }else if(sDayCountInfo[j] == "2"){
- sHeader[2][i] +="POD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/pod");
- }else if(sDayCountInfo[j] == "3"){
- sHeader[2][i] += "ICU:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/icu");
- }else if(sDayCountInfo[j] == "4"){
- sHeader[2][i] += "D:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/d");
- }else if(sDayCountInfo[j] == "5"){
- sHeader[2][i] += "BMT:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/bmt");
- }else if(sDayCountInfo[j] == "6"){
- sHeader[2][i] += "CP:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/cp");
- }
- }
- }
- for(var iRow=1; iRow<=4; iRow++){
- for(var iCol=0; iCol<=14; iCol++){
- if(iRow == 1){
- if(iCol == 0){
- sCapNm += sHeader[iRow][iCol]; // 년월일
- }else{
- sCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- }
- }else if(iRow == 2){ // day count
- sCapNm += sHeader[iRow][iCol];
- }else if(iRow == 3){ // 시
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "시"; }
- }else if(iRow == 4){ // 분
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "분"; }
- }
- if(iCol != 14){ sCapNm += "^"; }
- }
- if(iRow != 4){ sCapNm += "|";}
- }
- grd_stndclincobsreclist.caption = sCapNm;
- break;
- case "24hours" :
- sDayCountInfo = model.getValue(sCondPath+"/daycountinfo").split(" ");
- for(var i=1; i<=24; i++){
- sHeader[2][i] = "";
- for(var j=0; j<sDayCountInfo.length; j++){
- if(sHeader[2][i] != "") sHeader[2][i] += ", ";
- if(sDayCountInfo[j] == "1"){
- sHeader[2][i] += "HD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/hd");
- }else if(sDayCountInfo[j] == "2"){
- sHeader[2][i] +="POD:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/pod");
- }else if(sDayCountInfo[j] == "3"){
- sHeader[2][i] += "ICU:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/icu");
- }else if(sDayCountInfo[j] == "4"){
- sHeader[2][i] += "D:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/d");
- }else if(sDayCountInfo[j] == "5"){
- sHeader[2][i] += "BMT:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/bmt");
- }else if(sDayCountInfo[j] == "6"){
- sHeader[2][i] += "CP:"+model.getValue(xDayCountListPath+"[recdd='"+sHeader[1][i]+"']/cp");
- }
- }
- }
- for(var iRow=1; iRow<=4; iRow++){
- for(var iCol=0; iCol<=24; iCol++){
- if(iRow == 1){
- if(iCol == 0){
- sCapNm += sHeader[iRow][iCol]; // 년월일
- }else{
- sCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- }
- }else if(iRow == 2){ // day count
- sCapNm += sHeader[iRow][iCol];
- }else if(iRow == 3){ // 시
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "시"; }
- }else if(iRow == 4){ // 분
- sCapNm += sHeader[iRow][iCol];
- if(iCol != 0){ sCapNm += "분"; }
- }
- if(iCol != 24){ sCapNm += "^"; }
- }
- if(iRow != 4){ sCapNm += "|"; }
- }
- grd_24hoursclincobsreclist.caption = sCapNm;
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 항목별 부분 합계 Setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAddItemSubTotal(){
- var iSelectedRow = 0;
- switch(sPopUpMenuFlag){
- case "24hours" :
- var iRowCnt = grd_24hoursclincobsreclist.selectedCells.length-1;
- //alert(iRowCnt);
- iSelectedRow = grd_24hoursclincobsreclist.selectedCells.item(iRowCnt).row;
- //alert(grd_24hoursclincobsreclist.selectedCells.length);
- //alert(iSelectedRow);
- // grd_24hoursclincobsreclist.insertRow(++iSelectedRow,"below");
- // var iCol =
- break;
- case "4days" :
- break;
- case "stnd" :
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 값별 부분 합계 계산
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCalcValueSubTotal(){
- var sPopUpMenuFlag = model.getValue("/root/main/cond/vwctrl_button");
- var sDataSum = 0;
- switch(sPopUpMenuFlag){
- case "24hours" :
- var sCells = grd_24hoursclincobsreclist.selectedCells;
- for(var i = 0 ; i < sCells.length ; i ++){
- var col = sCells.item(i).col;
- var row = sCells.item(i).row;
- var subtotal = 0;
- var sSubTotalRecFlag = grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("recflag"));
- var sSubTotalAttrCd = grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("attrcd"));
- if( sSubTotalAttrCd == "" || sSubTotalRecFlag == "B" || sSubTotalRecFlag == "C" || sSubTotalRecFlag == "T" ){
- subtotal = grd_24hoursclincobsreclist.valueMatrix( row, col );
- }
- if( subtotal != "" && fIsNumber(subtotal) == true){
- sDataSum += Number(subtotal) ;
- }
- }
-
- break;
- }
- sPopUpMenuFlag = "";
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자 선택시 상단정보 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetParam(pFlag, pIndex){
- if(getNodesetCount("/root/main/paminfo/pamlist") > 0){
- model.removenodeset("root/main/paminfo/pamlist");
- }
- var sOrdtype = "";
- var sPid = "";
- var sIndd = "";
- var sCretno = "";
- var sInstcd = "";
- var param = "";
- if(pFlag == "SrchPat"){
- sOrdtype = model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ pIndex +"]/ordtype" );
- if(sOrdtype == "I" || sOrdtype == "D") {
- sOrdtype = "I";
- }
- sPid = model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ pIndex +"]/pid" );
- sIndd = model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ pIndex +"]/indd" );
- sCretno = model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ pIndex +"]/cretno" );
- sInstcd = model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ pIndex +"]/instcd" );
- cmb_mypatlist.value = "";
- }else if(pFlag == "SettingPat"){
- sOrdtype = model.getValue("/root/temp/cond/settingpatient/settingpatientlist["+ pIndex +"]/ordtype" );
- //20120207_KNUH_Start 환자선택시 DSC같은 경우에는 상단 parameter가 잘못되었습니다 오류뜸.(그래서 I로 넣어줌, 항암메인과 조건동일)
- if(sOrdtype == "I" || sOrdtype == "D") {
- sOrdtype = "I";
- }
- sPid = model.getValue("/root/temp/cond/settingpatient/settingpatientlist["+ pIndex +"]/pid" );
- sIndd = model.getValue("/root/temp/cond/settingpatient/settingpatientlist["+ pIndex +"]/indd" );
- sCretno = model.getValue("/root/temp/cond/settingpatient/settingpatientlist["+ pIndex +"]/cretno" );
- sInstcd = model.getValue("/root/temp/cond/settingpatient/settingpatientlist["+ pIndex +"]/instcd" );
- }
- param = sOrdtype + "▦"
- + sPid + "▦"
- + sIndd + "▦"
- + sCretno + "▦"
- + sInstcd + "▦"
- + "▦" ;
- setParameter("condparam", param);
- modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
- if(pFlag == "SrchPat"){
- //fInitialize("patinit");
- fSettingPat("patinit");
- }else if(pFlag == "SettingPat"){
- //fInitialize("reset");
- fSettingPat("reset");
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자 선택시 상단정보 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingPat(pFlag){
- if(sSelectView == "24hours") fMakeChart("init24hours");
- //if(sSelectView == "4days" ) fMakeChart("init4days" );
- //환자정보 조회
- sPamInfo = getGlobalVariable("paminfo");
- model.removenodeset("/root/main/paminfo/pamlist");
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
- if(sPamInfo == ""){
- fChkTgtPatInfo("disable");
- fChangUserTypeSrch(sUserFlag);
- model.refresh();
- return;
- }else{
- fChkTgtPatInfo("able");
- fSettingViewCtrl();
- }
- fSettingPatInfo(pFlag);
- fSettingPatInfo2(pFlag);
- }
- function fSettingPatInfo(){
- sPid = model.getValue(xPamInfoPath+"/pid"); // 환자번호
- sCretNo = model.getValue(xPamInfoPath+"/cretno"); // 환자 일자별 일련번호
- sInstcd = model.getValue(xPamInfoPath+"/instcd"); // 기관코드
- sIOFlag = model.getValue(xPamInfoPath+"/ioflag"); // 입원/외래 구분
- sWardCD = model.getValue(xPamInfoPath+"/wardcd"); // 병동코드
- sRoomCD = model.getValue(xPamInfoPath+"/roomcd"); // 병실코드
- sIndschacptstat = model.getValue(xPamInfoPath+"/indschacptstat"); //입퇴원구분코드
- sDschdd = model.getValue(xPamInfoPath+"/dschdd"); // 퇴원일자
- sPatNm = model.getValue(xPamInfoPath+"/hngnm"); // 환자명
- sSexAge = model.getValue(xPamInfoPath+"/sex") +"/"+ model.getValue(xPamInfoPath+"/age"); // 성별
- sOrdDeptcd = model.getValue(xPamInfoPath+"/orddeptcd");
- sMedispclid = model.getValue(xPamInfoPath+"/medispclid");
- var eSectionCD = model.getValue(xPamInfoPath+"/sectioncd"); // 구역코드 (2011.03.02 Ahn)
- if(sIOFlag == "O"){
- sIndd = model.getValue(xPamInfoPath+"/orddd"); // 진료일자
- }else{
- sIndd = model.getValue(xPamInfoPath+"/indd"); // 입원일자
- }
- model.setValue(sCondPath+"/pid", sPid);
- model.setValue("/root/main/patinfo/pid", sPid);
- model.setValue("/root/main/patinfo/indd", sIndd);
- model.setValue("/root/main/patinfo/cretno", sCretNo);
- model.setValue("/root/main/patinfo/ordtype", sIOFlag);
- model.setValue("/root/main/patinfo/indschacptstat", sIndschacptstat);
- model.setValue("/root/main/patinfo/dschdd", sDschdd);
- model.setValue("/root/main/patinfo/wardcd", sWardCD);
- model.setValue("/root/main/patinfo/roomcd", sRoomCD);
- model.setValue("/root/main/patinfo/patnm", sPatNm);
- model.setValue("/root/main/patinfo/sexage", sSexAge);
- model.setValue("/root/main/patinfo/orddeptcd", sOrdDeptcd);
- model.setValue("/root/main/patinfo/medispclid", sMedispclid);
- model.setValue("/root/main/patinfo/sectioncd", eSectionCD); // 구역코드 (2011.03.02 Ahn)
- }
- function fSettingPatInfo2(pFlag){
- //외래 환자 임상관찰기록 화면 컨트롤 제어
- if(sIOFlag == "O"){
- fChkTgtPatInfo("disable");
- messageBox("외래 환자는 임상관찰기록이 ","I004");
- //model.toggle("case_24hoursstnd");
- model.refresh();
- return;
- }
- //퇴원/입원 환자 구분에 따른 화면 제어
- if(sIndschacptstat == "D"){
- rdo_srchflag.visible = false; //퇴원환자 조회구분 숨기기
- grp_oderinpatinfo.visible = false;
- grp_inpatinfo.visible = false;
- grp_outpatinfo.visible = true;
- model.setValue(sCondPath+"/recdd",sDschdd);
- model.setValue(sCondPath+"/formerrecdd", getDateCalc(sDschdd,1));
- }else{
- if(pFlag == "init" || pFlag == "reset"){
- fSettingUserTypeSrch(sUserFlag);
- }
- var sRecdate = "";
- var sRectime = "";
- if(sSpParamInfo == ""){
- if(getCurrentTime().substr(0,4) < sStartTm.substr(0,4)){
- sRecdate = getDateCalc(getCurrentDate(),1,"-");
- }else{
- sRecdate = getCurrentDate();
- }
- }else{
- sRecdate = fGetArrayDataTPR(sSpParamInfo,1,4).substr(0,8);
- sRectime = fGetArrayDataTPR(sSpParamInfo,1,4).substr(8,6);
- model.setValue(sCondPath+"/rectm",sRectime);
- }
- model.setValue(sCondPath+"/recdd",sRecdate);
- model.setValue(sCondPath+"/formerrecdd", getDateCalc(model.getValue(sCondPath+"/recdd"),1));
- /*
- if(pFlag == "init"){
- //병동코드 조회
- fGetCareComWardList("false");
- //진료과 정보 조회(진료 제공 인터페이스)
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/temp/cond/deptgrup/deptgruplist" , "D"); //부서코드 콤보
- //내환자 조회
- fGetSettingPatientList("false");
- }
- */
- if(pFlag == "reset" || pFlag == "init"){
- if(sUserFlag == "2"){
- mmbfGetUserComboList("/root/send/reqdata", "/root/temp/cond/doctlist/medispcl" , sOrdDeptcd, "0330", "", "M");
- mmbfGetUserComboList("/root/send/reqdata", "/root/temp/cond/doctlist/atdoct", sOrdDeptcd, "0330", "", "A");
- addComboInstance("/root/temp/cond/doctlist/medispcl", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
- addComboInstance("/root/temp/cond/doctlist/atdoct", "userid^usernm", "-^전체", "usercombo");//의사콤보 전체항목 추가
- //model.setValue("/root/temp/cond/doctlist/atdoct", "-");
- fGetCareComDeptPatList(sOrdDeptcd, sMedispclid , '-', model.getValue("/root/init/mypatsrchflag"));
- cmb_deptlist.value = sOrdDeptcd;
- cmb_medispcllist.value = sMedispclid;
- cmb_atdoctlist.value = "-";
- cmb_oderpatlist.value = sPid;
- ipt_orderpid.value = sPid;
- //model.setValue("/root/temp/cond/deptgrup/deptgruplist/dept", sOrdDeptcd);
- //model.setValue("/root/temp/cond/doctlist/medispcl/usercombo", sMedispclid);
- //model.setValue("/root/temp/cond/doctlist/atdoct/usercombo", "-");
- //model.setValue("/root/temp/cond/patientgrup/patientgruplist", sPid);
- //model.setValue("/root/main/cond/pid", sPid);
- }else{
- fGetCareComRoomList(sWardCD);
- fGetCareComPatList(sWardCD, sRoomCD, cmb_zone.value, eRECFLAG); // 환자 조회시 구역코드 추가 (2011.03.02 Ahn)
- cmb_wardlist.value = sWardCD;
- cmb_roomlist.value = sRoomCD;
- cmb_patlist.value = sPid;
- ipt_pid.value = sPid;
- cmb_mypatlist.value = sPid;
- //model.setValue("/root/temp/cond/wardcdgrup/wardcdgruplist", sWardCD);
- //model.setValue("/root/temp/cond/roomcdgrup/roomcdgruplist", sRoomCD);
- //model.setValue("/root/temp/cond/patientgrup/patientgruplist", sPid);
- //model.setValue("/root/main/cond/pid", sPid);
- //model.setValue("/root/temp/cond/settingpatient/settingpatientlist", sPid);
- }
- }else if(pFlag == "patinit"){
- cmb_mypatlist.value = sPid;
- }
- }
- //*********************************************************************************
- // 환자 조회 이후 처리 로직
- //*********************************************************************************
- //활력징후 대상 환자 환자 V/S 세팅
- var vsinfo = "";
- if(model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/unstableyn") == "Y"){
- vsinfo = model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosdt").substr(0, 4) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosdt").substr(4, 2) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosdt").substr(6, 2) + " "
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosdt").substr(8, 2) + ":"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosdt").substr(10, 2) + "\n"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/highbp" ) + "/"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/lowbp" ) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/mntpulsecnt" ) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/mntbrethcnt" ) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/chosbdtp" ) + "-"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist[pid = "+ sPid +"]/oxyconcen" ) ; //산소포화도 추가_20110207_SMY
- }
- model.setValue("/root/temp/vsinfo", vsinfo);
- var sBizLnkFlag = model.getValue(sCondPath+"/bizlnkflag");
- // 2008/04/21 추가
- //model.copyNode("/root/send", xPamInfoPath);
- model.copyNode("/root/send", "/root/main/patinfo");
- chk_24hoursclslist.attribute("cols")= 0;
- if(sBizLnkFlag == "Y"){
- model.makeValue("/root/send/bizdeptcd", sDutplcecd);
- }
- //환자 기록 정보 조회
- fSearchClincObsRec();
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 셀 선택시 합계 계산
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCalcDataSmmy(pFlag){
- var sDataSum = 0;
- var sStartDt = "";
- var sEndDt = "";
- switch(pFlag){
- case "24hours" :
- var sCells = grd_24hoursclincobsreclist.selectedCells;
- for(var i = 0 ; i < sCells.length ; i ++){
- var col = sCells.item(i).col;
- var row = sCells.item(i).row;
- var subtotal = 0;
- if(//grd_24hoursclincobsreclist.cellComboNodeset(row, col) == "/root/temp/attrinfo/attrlist" &&
- //grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("totalyn")) == "Y" &&
- (grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("recflag")) == "B" ||
- grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("recflag")) == "C" ||
- grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("recflag")) == "T" )){
- subtotal = grd_24hoursclincobsreclist.valueMatrix( row, col );
- }
- if( subtotal != "" && fIsNumber(subtotal) == true){
- sDataSum += Number(subtotal) ;
- }
- if( sStartDt == "" || sStartDt > sHeader[1][col]+sHeader[3][col]+sHeader[4][col] ) sStartDt = sHeader[1][col].substr(4,2)+"/"+sHeader[1][col].substr(6,2)+" "+sHeader[3][col]+":"+sHeader[4][col];
- if( sEndDt == "" || sEndDt < sHeader[1][col]+sHeader[3][col]+sHeader[4][col] ) sEndDt = sHeader[1][col].substr(4,2)+"/"+sHeader[1][col].substr(6,2)+" "+sHeader[3][col]+":"+sHeader[4][col];
- }
- if( sDataSum == 0 || sDataSum == ""){
- model.setValue(sCondPath+"/detlrecinfo/subtotal", "");
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", "");
- }else{
- model.setValue(sCondPath+"/detlrecinfo/subtotal", sDataSum);
- model.setValue(sCondPath+"/detlrecinfo/subtotalarray", sStartDt + "~" + sEndDt);
- }
- opt_subtotalarray.refresh();
- opt_subtotal.refresh();
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 선택시 선택 모드 변경 부분
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangeDataGridSelectionModeSet(pFlag){
- if( sCells.item(0).col == sCells.item(sCells.length-1).lcol ){
- grd_24hoursclincobsreclist.selectionmode = "bycol";
- }else{
- grd_24hoursclincobsreclist.selectionmode = "free";
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 셀 입력 완료 후 포커스를 받았을 경우 발생
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fEnterKeyGridCell(pFlag){
- var iRow = 0;
- var iCol = 0;
- var iRecRow = 0;
- var sRecFromDT = "";
- var sRecToDT = "";
- var sRecDT = "";
- var sAttrCD = "";
- switch(pFlag){
- case "24hours" :
- iRecRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows+1;
- iRow = grd_24hoursclincobsreclist.row;
- iCol = grd_24hoursclincobsreclist.col;
- sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
- sRecFromDT = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/recfromdt");
- sRecToDT = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/rectodt");
- sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/attrcd");
- sReChartFlag = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/reccharflag");
- //alert("fEnterKeyGridCell" +" : " + iRow);
- // 의사의 경우
- //---------(20101204) 경북대
- //추가
- var ssflag = "";
- if(getUserInfo("dutplceinstcd") != '032' && getUserInfo("dutplceinstcd") != '031') {
- //경북대가 아니면
- if( sJobKindCD == "0330" || sJobKindCD == "0310"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- } else if(getUserInfo("dutplceinstcd") == '032' || getUserInfo("dutplceinstcd") == '031') {
- //경북대이면 03%로 체크한다.
- if( sJobKindCD.substring(0, 2) == "03"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- }
- //원본:의사의 경우만
- //if(sJobKindCD == "30"){
- if(ssflag=="Y") {
- //---------(20101204) 경북대
- grd_24hoursclincobsreclist.combo.button.visible = false;
- grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols,iRow, grd_24hoursclincobsreclist.cols-1) = true;
- return;
- }
- // if(eval(model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/depth")) == 1){
- // grd_24hoursclincobsreclist.combo.button.visible = false;
- // grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols,iRow, grd_24hoursclincobsreclist.cols-1) = true;
- // }else{
- // //2008-05-21 변경
- // //if(sRecDT < sRecFromDT || sRecDT > sRecToDT || model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/recyn") == "N"){
- // if(sRecDT < sRecFromDT || sRecDT > sRecToDT ){
- // if(model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/attrcd") == ""){
- // grd_24hoursclincobsreclist.combo.button.visible = false;
- // grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col);
- // }
- // grd_24hoursclincobsreclist.isReadOnly(iRow,iCol) = true;
- //
- // }else{
- if(sReChartFlag =="A" && sAttrCD != ""){
- grd_24hoursclincobsreclist.combo.button.visible = true;
- grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath1+"[supcd='"+sAttrCD+"']";
- grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col)-20;
- //model.setFocus("body");
- //model.setFocus("grd_24hoursclincobsreclist");
- }else{
- grd_24hoursclincobsreclist.combo.button.visible = false;
- grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col);
- }
- break;
- // 2008-10-09 주석 추가
- // case "4days" :
- // iRecRow = grd_4daysclincobsreclist.row - grd_4daysclincobsreclist.fixedrows+1;
- // iRow = grd_4daysclincobsreclist.row;
- // iCol = grd_4daysclincobsreclist.col;
- // sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
- // sRecFromDT = model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/recfromdt");
- // sRecToDT = model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/rectodt");
- // sAttrCD = model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/attrcd");
- // sReChartFlag = model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/reccharflag");
- //
- // // 의사의 경우
- // if(sJobKindCD == "30"){
- // grd_4daysclincobsreclist.combo.button.visible = false;
- // grd_4daysclincobsreclist.isReadOnly(iRow,grd_4daysclincobsreclist.fixedCols,iRow, grd_4daysclincobsreclist.cols-1) = true;
- // return;
- // }
- // if(eval(model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/depth")) == 1){
- // grd_4daysclincobsreclist.combo.button.visible = false;
- // grd_4daysclincobsreclist.isReadOnly(iRow,grd_4daysclincobsreclist.fixedCols,iRow, grd_4daysclincobsreclist.cols-1) = true;
- // }else{
- // //2008-05-21 변경
- // //if(sRecDT < sRecFromDT || sRecDT > sRecToDT ){
- // if(sRecDT < sRecFromDT || sRecDT > sRecToDT || model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/reccharflag") == "C" ){
- // if(model.getValue(xDaysClincObsRecList+"["+iRecRow+"]/attrcd") == ""){
- // grd_4daysclincobsreclist.combo.button.visible = false;
- // grd_4daysclincobsreclist.combo.input.attribute("width") = grd_4daysclincobsreclist.colWidth(grd_4daysclincobsreclist.col);
- // }
- // grd_4daysclincobsreclist.isReadOnly(iRow,iCol) = true;
- // }else{
- // if(sReChartFlag =="A" && sAttrCD != ""){
- // grd_4daysclincobsreclist.combo.button.visible = true;
- // grd_4daysclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath+"[supcd='"+sAttrCD+"']";
- // grd_4daysclincobsreclist.combo.input.attribute("width") = grd_4daysclincobsreclist.colWidth(grd_4daysclincobsreclist.col)-20;
- // }else{
- // grd_4daysclincobsreclist.combo.button.visible = false;
- // grd_4daysclincobsreclist.combo.input.attribute("width") = grd_4daysclincobsreclist.colWidth(grd_4daysclincobsreclist.col);
- // }
- // }
- // }
- // model.setFocus("body");
- // model.setFocus("grd_4daysclincobsreclist");
- // break;
- // case "stnd":
- // iRecRow = grd_stndclincobsreclist.row - grd_stndclincobsreclist.fixedrows+1;
- // iRow = grd_stndclincobsreclist.row;
- // iCol = grd_stndclincobsreclist.col;
- // sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
- // sRecFromDT = model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/recfromdt");
- // sRecToDT = model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/rectodt");
- // // 의사의 경우
- // if(sJobKindCD == "30"){
- // grd_stndclincobsreclist.combo.button.visible = false;
- // grd_stndclincobsreclist.isReadOnly(iRow,grd_stndclincobsreclist.fixedCols,iRow, grd_stndclincobsreclist.cols-1) = true;
- // return;
- // }
- // if(eval(model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/depth")) == 1){
- // grd_stndclincobsreclist.combo.button.visible = false;
- // grd_stndclincobsreclist.isReadOnly(iRow,grd_stndclincobsreclist.fixedCols,iRow, grd_stndclincobsreclist.cols-1) = true;
- // }else{
- // //2008-05-21 변경
- // //if(sRecDT < sRecFromDT || sRecDT > sRecToDT || model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/recyn") == "N"){
- // if(sRecDT < sRecFromDT || sRecDT > sRecToDT || model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/reccharflag") == "C"){
- // if(model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/attrcd") == ""){
- // grd_stndclincobsreclist.combo.button.visible = false;
- // grd_stndclincobsreclist.combo.input.attribute("width") = grd_stndclincobsreclist.colWidth(grd_stndclincobsreclist.col);
- // }
- // grd_stndclincobsreclist.isReadOnly(iRow,iCol) = true;
- // }else{
- // sAttrCD = model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/attrcd");
- // sReChartFlag = model.getValue(xStnddayClincObsRecListPath+"["+iRecRow+"]/reccharflag");
- // if(sReChartFlag =="A" && sAttrCD != ""){
- // grd_stndclincobsreclist.combo.button.visible = true;
- // grd_stndclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath+"[supcd='"+sAttrCD+"']";
- // grd_stndclincobsreclist.combo.input.attribute("width") = grd_stndclincobsreclist.colWidth(grd_stndclincobsreclist.col)-20;
- // }else{
- // grd_stndclincobsreclist.combo.button.visible = false;
- // grd_stndclincobsreclist.combo.input.attribute("width") = grd_stndclincobsreclist.colWidth(grd_stndclincobsreclist.col);
- // }
- // }
- // }
- // model.setFocus("body");
- // model.setFocus("grd_stndclincobsreclist");
- // break;
- }
- }
- function fChageComboSet(pFlag){
- switch(pFlag){
- case "24hours" :
- iRecRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows+1;
- iRow = grd_24hoursclincobsreclist.row;
- iCol = grd_24hoursclincobsreclist.col;
- //sAttrCD = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/attrcd");
- //sReChartFlag = model.getValue(xHoursClincObsRecList+"["+iRecRow+"]/reccharflag");
- sAttrCD = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("attrcd"));
- sReChartFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("reccharflag"));
- if(sReChartFlag =="A" && sAttrCD != ""){
- grd_24hoursclincobsreclist.combo.button.visible = true;
- grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath1+"[supcd='"+sAttrCD+"']";
- grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(iCol)-20;
- //grd_24hoursclincobsreclist.select(iRow, iCol) = false;
- //2008-05-22 콤보 선택시 콤보노드 변경을 위해 추가
- //model.setFocus("body");
- //model.setFocus("grd_24hoursclincobsreclist");
- var iDataRow = 0;
- var sRecCharFlag = "";
- for(var row = iRow+1; row <= grd_24hoursclincobsreclist.rows;row++){
- iDataRow = row - grd_24hoursclincobsreclist.fixedrows+1;
- sRecCharFlag = grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("reccharflag"));
- if(sRecCharFlag == "A" || sRecCharFlag == "B"){
- model.setFocus("body");
- row = grd_24hoursclincobsreclist.rows + 1;
- }
- }
- }
- // else{
- // grd_24hoursclincobsreclist.combo.button.visible = false;
- // grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(iCol);
- // }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 경구입력 팝업 제어부분
- * @return :
- * @---------------------------------------------------
- */
- function fPopupOralRec(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- if( fChkSaveData() == false ) return;
- var sIndex = cmb_patlist.focusIndex + 1
- var sParam_Header = "pid▦orddd▦cretno▦wardcd▦recdd▩";
- var sParam_Data = model.getValue(sCondPath+"/pid")+"▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/indd" ) + "▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/cretno" ) + "▦"
- + cmb_wardlist.value + "▦"
- + model.getValue(sCondPath+"/recdd")+"▩";
- setParameter("SPMNR05700_Param",sParam_Header+sParam_Data);
- modal("SPMNR05700", "1", event.clientX , event.clientY);
- fSearchClincObsRec("24hours");
- //parameter 정보 초기화
- clearParameter("SPMNR05700_Param");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : CDIS 데이터 연동 팝업 제어부분
- * @return :
- * @---------------------------------------------------
- */
- function fPopupCDISRec(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- if( fChkSaveData() == false ) return;
- var sIndex = cmb_patlist.focusIndex + 1
- var sParam_Header = "srchdd▦stndtm▦pid▦orddd▦cretno▦starttm▦ordtype▦wardcd▦roomcd▩";
- var sParam_Data = getCurrentDate()+"▦"
- + "01"+"▦"
- + model.getValue(sCondPath+"/pid")+"▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/indd" ) + "▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/cretno" ) + "▦"
- + getCurrentTime().substr(0,2) + "▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/ordtype" ) + "▦"
- + cmb_wardlist.value + "▦"
- + cmb_roomlist.value + "▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/instcd" ) + "▩";
- setParameter("SPMNR06200_Param",sParam_Header+sParam_Data);
- modal("SPMNR06200", "1", event.clientX , event.clientY);
- fSearchClincObsRec("24hours");
- //parameter 정보 초기화
- clearParameter("SPMNR06200_Param");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 항목별 연계
- * @return :
- * @---------------------------------------------------
- */
- function fChkLnkBiz(pFlag){
- var sLnkBizCd = "";
- var sStyle = "";
- var sCareRecSeqNo = "";
- var sMessageSpec = "연동된 자료는 해당 기록지에서 직접 입력 및 수정하여야 합니다. ";
- switch (pFlag){
- case "24hours" :
- sLnkBizCd = grd_24hoursclincobsreclist.valueMatrix(grd_24hoursclincobsreclist.row, grd_24hoursclincobsreclist.colRef("lnkbizcd"));
- sStyle = grd_24hoursclincobsreclist.valueMatrix(grd_24hoursclincobsreclist.row, grd_24hoursclincobsreclist.colRef("style"));
- sCareRecSeqNo = grd_24hoursclincobsreclist.valueMatrix(grd_24hoursclincobsreclist.row, grd_24hoursclincobsreclist.colRef("carerecseqno"));
- break;
- case "4days":
- sLnkBizCd = grd_4daysclincobsreclist.valueMatrix(grd_4daysclincobsreclist.row, grd_4daysclincobsreclist.colRef("lnkbizcd"));
- break;
- case "stnd":
- sLnkBizCd = grd_stndclincobsreclist.valueMatrix(grd_stndclincobsreclist.row, grd_stndclincobsreclist.colRef("lnkbizcd"));
- break;
- case "former":
- sLnkBizCd = grd_formersclincobsreclist.valueMatrix(grd_formersclincobsreclist.row, grd_formersclincobsreclist.colRef("lnkbizcd"));
- break;
- }
- switch (sLnkBizCd){
- case "01" :
- messageBox(sMessageSpec + "(경구입력)","I");
- break;
- case "02" :
- messageBox(sMessageSpec + "(투약기록지)","I");
- break;
- case "03" :
- messageBox(sMessageSpec + "(수혈간호기록지)","I");
- break;
- case "04" :
- messageBox(sMessageSpec + "(혈당간호기록지)","I");
- break;
- case "05" :
- messageBox(sMessageSpec + "(CAPD기록지)","I");
- break;
- case "06" :
- messageBox(sMessageSpec + "(CRRT기록지)","I");
- break;
- case "06" :
- messageBox(sMessageSpec + "(CPCR기록지)","I");
- break;
- case "12" :
- var rtnmsg = "";
- //if( sStyle == "01" && sCareRecSeqNo != "" && grd_24hoursclincobsreclist.col != grd_24hoursclincobsreclist.colRef("itemnm") ) rtnmsg = messageBox("Fluid 기록 입력 화면을 여시겠습니까?","Q");
- //if( rtnmsg == "6" ) fPopupFluid();
- if( sStyle == "01" && sCareRecSeqNo != "" && grd_24hoursclincobsreclist.col != grd_24hoursclincobsreclist.colRef("itemnm") ){
- fPopupFluid();
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 문자여부 확인
- * @param : str : 값
- * @return : true / false
- * @---------------------------------------------------
- */
- function fIsNumber(str) {
- str += ''; // 문자열로 변환
- str = str.replace(/^\s*|\s*$/g, ''); // 좌우 공백 제거
- if (str == '' || isNaN(str)) return false;
- return true;
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : IO조회 Popup 호출
- * @return :
- * @---------------------------------------------------
- */
- function fPopupIOSearch(){
- if(model.getValue("/root/main/patinfo/pid") == ""){
- messageBox("환자를 선택하십시요","I");
- return;
- }
- var sIndex = cmb_patlist.focusIndex + 1
- var sParam_Header = "pid▦orddd▦cretno▦wardcd▦recdd▩";
- var sParam_Data = model.getValue(sCondPath+"/pid")+"▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/indd" ) + "▦"
- + model.getValue("/root/temp/cond/patientgrup/patientgruplist["+ sIndex +"]/cretno" ) + "▦"
- + cmb_wardlist.value + "▦"
- + model.getValue(sCondPath+"/recdd")+"▩";
- setParameter("SPMNR05800_Param",sParam_Header+sParam_Data);
- open("SPMNR05800", "1", event.clientX , event.clientY);
- //parameter 정보 초기화
- //clearParameter("SPMNR05800_Param");
- //fPopupIOSearchInitParam();
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet I/O 조회화면 Parameter 초기화 함수
- * I/O 조회 화면에서 초기화함수 호출.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupIOSearchInitParam(){
- //parameter 정보 초기화
- clearParameter("SPMNR05800_Param");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 간호관리ITEM 팝업 제어부분
- * @return :
- * @---------------------------------------------------
- */
- function fPopupItem(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- if( fChkSaveData() == false ) return;
- modal("SMMNR04100", "1", event.clientX , event.clientY);
- fSearchClincObsRec("24hours");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 환자 선택 여부확인
- * @return :
- * @---------------------------------------------------
- */
- function fChkTgtPatInfo(pFlag){
- switch(pFlag){
- case "disable":
- grp_srchbaselist.visible = false;
- grp_btnlist.visible = false;
- btn_24hoursdetailbefore.visible = false;
- btn_24hoursdetailafter.visible = false;
- btn_24hoursup.disabled = true;
- btn_24hoursdown.disabled = true;
- break;
- case "able":
- grp_srchbaselist.visible = true;
- grp_btnlist.visible = true;
- btn_24hoursdetailbefore.visible = true;
- btn_24hoursdetailafter.visible = true;
- btn_24hoursup.disabled = false;
- btn_24hoursdown.disabled = false;
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 임상관찰기록 인증 데이터 생성
- * @return :
- * @---------------------------------------------------
- */
- function fMake_SignData(){
- switch(sViewerFunc){
- case "sign":
- Sign.addnode("/root/certtemp");
- var xPathSignData = Sign.XPATH_SIGNINFO+"/certtemp/recinfo";
- for(var i = 0 ; i <= getNodesetCount(xPathSignData) ; i++){
- var sRecRslt = model.getValue(xPathSignData+"["+i+"]/reclist");
- var sCertAttrCd = model.getValue(xResultAttrPath+"["+i+"]/attrcd");
- var sCertAttrNm = model.getValue(sAttrListPath1+"[attrcd='"+sRecRslt+"']/attrdesc");
- if(sRecRslt != "" && sCertAttrCd != "" && sCertAttrNm != ""){
- model.setValue(xPathSignData+"["+i+"]/reclist", sCertAttrNm);
- }
- }
- break;
- case "veiw":
- Sign.addnode("/root/viewtemp/viewinfo");
- break;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 기록일별 기록 정보 view 생성
- * @return :
- * @---------------------------------------------------
- */
- function fMakeViewData(){
- model.removenodeSet("/root/send");
- model.removenodeSet("/root/viewtemp");
- sViewerFunc = "veiw";
- var sCntViewData = getNodesetCount(xPathViewData);
- var sTopColInfo = "";
- var sSrow = "";
- var sErow = "";
- sViewerRecDD = "";
- sMakeChartInfo[1] = new Array(); //Y축명
- sMakeChartInfo[2] = new Array(); //Y축정보
- sMakeChartInfo[3] = new Array(); //기록시간
- sMakeChartInfo[4] = new Array(); //기록값
- if(sCntViewData > 0 ){
- for(var i = 1 ; i <= eval(getNodesetCount(xPathViewData)) ; i++){
- if(model.getValue(xPathViewData+"["+i+"]/leftaxis") != "" && model.getValue(xPathViewData+"["+i+"]/leftaxis") != "-" ){
- var insIndex = sMakeChartInfo[1].length;
- sMakeChartInfo[1][insIndex] = model.getValue(xPathViewData + "[" +i+ "]/captiony");
- sMakeChartInfo[2][insIndex] = model.getValue(xPathViewData + "[" +i+ "]/leftaxis");
- sMakeChartInfo[3][insIndex] = model.getValue(xPathViewData + "[" +i+ "]/recdtlist");
- sMakeChartInfo[4][insIndex] = model.getValue(xPathViewData + "[" +i+ "]/recrsltlist");
- }
- //일자 정보 변경시 데이터 저장함수 호출
- if(model.getValue(xPathViewData +"[" +i+ "]/itemcd") == "-" && sViewerRecDD != "") {
- sTopColInfo = "";
- //fChngViewNode();
- //pErow = i -1;
- fSaveViewData();
- //fMakeViewChart(pSrow, pErow);
- model.removenodeSet("/root/viewtemp/viewinfo");
- //pSrow = "";
- //pErow = "";
- //pSrow = i;
- }
- if(model.getValue(xPathViewData +"[" +i+ "]/itemcd") == "-") {
- //pSrow = i;
- var sViewDate = model.getValue(xPathViewData+"["+i+"]/recdd");
- var sEndRows = 0;
- sViewerRecDD = sViewDate;
- model.makeValue("/root/viewtemp/viewinfo/vierdate" , sViewDate.substr(0,4)+"-"+sViewDate.substr(4,2)+"-"+sViewDate.substr(6,4));
- model.makeValue("/root/viewtemp/viewinfo/recdd" , sViewDate);
- model.makeValue("/root/viewtemp/viewinfo/pid" , sPid);
- model.makeValue("/root/viewtemp/viewinfo/orddd" , sIndd);
- model.makeValue("/root/viewtemp/viewinfo/cretno" , sCretNo);
- model.makeValue("/root/viewtemp/viewinfo/recflag" , "A");
- model.makeValue("/root/viewtemp/viewinfo/server" , getDomain());
- model.makeValue("/root/viewtemp/viewinfo/instcd" , sInstcd);
- sTopColInfo = model.getValue(xPathViewData +"[" + i + "]/recdtlist").split("^");
- var jrow = 0 ;
- var insRow = 0;
- for(var k = 0 ; k < sTopColInfo.length ; k++) {
- var insCol = (k % 9) ;
- //var tmpRow = (""+k / 9+"").getTruncate();
- if(jrow == 0){
- if(insRow != 0){
- insRow = eval(getNodesetCount("/root/viewtemp/viewinfo/viewlist")) ;
- }else{
- insRow = eval(getNodesetCount("/root/viewtemp/viewinfo/viewlist")) + 1 ;
- model.makeValue("/root/viewtemp/viewinfo/viewlist["+insRow+"]/itemnm", "기록시간");
- }
- }else{
- insRow = eval(getNodesetCount("/root/viewtemp/viewinfo/viewlist")) + 1 ;
- model.makeValue("/root/viewtemp/viewinfo/viewlist["+insRow+"]/itemnm", " ");
- insRow++;
- jrow = 0;
- }
- var sTempNode = "/root/viewtemp/viewinfo/viewlist["+insRow +"]/col"+insCol;
- model.makeValue(sTempNode, sTopColInfo[k]);
- if(insCol == 8 || k == sTopColInfo.length-1){
- for(var j = i + 1 ; j <= eval(getNodesetCount(xPathViewData)) ; j++) {
- if(sViewDate == model.getValue(xPathViewData+"["+j+"]/recdd")) {
- var sColInfo = model.getValue(xPathViewData +"[" +j+ "]/recdtlist").split("^");
- var sColrsltInfo = model.getValue(xPathViewData +"[" +j+ "]/recrsltlist").split("^");
- var sColrecnm = model.getValue(xPathViewData +"[" +j+ "]/recnm").split("^");
- for(var d = 0 ; d < sColInfo.length ; d++){
- var insSubCol = (d % 9) ;
- //var tmpSubRow = (""+d / 9+"").getTruncate();
- var insSubRow = insRow + j;
- model.makeValue("/root/viewtemp/viewinfo/viewlist["+insSubRow+"]/itemnm", model.getValue(xPathViewData+"["+j+"]/itemnm"));
- for(var z = 0 ; z <= insCol ; z++){
- if(model.getValue("/root/viewtemp/viewinfo/viewlist["+insRow+"]/col"+z) == sColInfo[d]){
- var sTempNode = "/root/viewtemp/viewinfo/viewlist["+insSubRow+"]/col"+z;
- var sTempNodeRow = "/root/viewtemp/viewinfo/viewlist["+insSubRow+"]/row"+z;
- var sTempRecNM = "";
- // if( model.getValue(xPathViewData+"["+j+"]/recnm") != "") {
- // sTempRecNM = "\n" + "[" + model.getValue(xPathViewData+"["+j+"]/recnm") + "]"
- // }
- // model.makeValue(sTempNode, sColrsltInfo[d] + sTempRecNM);
- model.makeValue(sTempNode, sColrsltInfo[d]);
- if( sColrecnm[d] != "") {
- sTempRecNM = "[" + sColrecnm[d] + "]";
- model.makeValue(sTempNodeRow, sTempRecNM);
- }
- jrow = j;
- }
- }
- }
- }
- }
- }
- }
- i = jrow;
- }
- //데이터 생성 종료시 저장 함수 호출
- if(i == getNodesetCount(xPathViewData)){
- fSaveViewData();
- }
- }
- submit("TXMNR00904", false);
- fMakeViewChartImg();
- }
- //fMakeViewChart(pSrow, pErow);
- //return;
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 기록일별 view 정보 저장
- * @return :
- * @---------------------------------------------------
- */
- function fSaveViewData(){
- //**********************************************************************************************************************
- // VIEWER 인증 구현 부분
- //**********************************************************************************************************************
- var today = new Date();
- Sign.CERT_YEAR = today.getFullYear();
- Sign.CERT_MONTH = today.getMonth() + 1;
- Sign.CERT_DATE = today.getDate();
- if(Sign.signprocess() == true ){
- var sSignDataRowCnt = eval(getNodesetCount("/root/send/signdata")) + 1;
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/pid", sPid);
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddd", sIndd);
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signno", "" );
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/cretno", sCretNo);
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/recdd", sViewerRecDD);
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/rectm", "000000");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/recsaveflag", "Y");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signflag", "02");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signgenrflag", sIOFlag);
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/formcd", "0000002443");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddeptcd", model.getValue("/root/main/paminfo/pamlist/orddeptcd"));
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddrid", model.getValue("/root/main/paminfo/pamlist/medispclid"));
- //alert( Sign.signedInfos[1]);
- //alert( Sign.signedInfos[2]);
- //alert( Sign.signedInfos[3]);
- //alert( Sign.signedInfos[4]);
- //alert( Sign.signedInfos[5]);
- //▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- //▶ 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signbfcnts", Sign.signedInfos[1]);
- //▶ 공인인증 처리후 데이터
- //model.makeValue("/root/send/signdata/signaftcnts", Sign.signedInfos[2]);
- }else{
- return false;
- }
- model.removenodeSet("/root/viewtemp/viewinfo");
- //return;
- //**********************************************************************************************************************
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 기록일별 view Chart 생성
- * @return :
- * @---------------------------------------------------
- */
- function fMakeViewChart(pSrow, pErow){
- var Obj_Chart;
- var sColCnt = 0;
- var sRecRslt = "";
- var sRecRslt1 = "";
- var sChartInfo = "";
- var sRecDD = "";
- var sRecTM = "";
- //sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
- obj_viewchart.ClearChart();
- //obj_viewchart.RemoveAllSeries();
- //obj_viewchart.Axis.RemoveAllCustom();
- //margin 값 정하기
- //obj_24hourschart.Panel.MarginTop = 1;
- obj_viewchart.Panel.MarginTop = 2;
- obj_viewchart.Panel.MarginLeft = 12;
- obj_viewchart.Panel.MarginRight = 0;
- obj_viewchart.Panel.MarginBottom = 0;
- //하단축 칸 수 정하기와 눈금 없애기
- obj_viewchart.Axis.Bottom.TickLength = 10;
- obj_viewchart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
- obj_viewchart.Axis.Bottom.Increment = 1;
- obj_viewchart.Axis.Bottom.MinorTickCount = 1;
- obj_viewchart.Axis.Bottom.Labels.Visible = true;
- obj_viewchart.Axis.Bottom.Labels.Font.Color = 0x000000;
- for(var i = 0 ; i < 24 ; i ++){
- obj_viewchart.Axis.Bottom.Labels.Add (i, i);
- }
- Obj_Chart = obj_viewchart;
- sColCnt = 24*60;
- Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
- Obj_Chart.Axis.Bottom.Labels.Font.Color = 0xffffff; //Obj_Chart.Panel.Color; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
- //Obj_Chart.Axis.Bottom.Labels.Font.Color = 0x000000
- Obj_Chart.Header.Visible = false;
- Obj_Chart.Aspect.View3D = 0; //2d 로 표현하기
- Obj_Chart.Zoom.Enable = false; // zoom 사용하지 않기
- Obj_Chart.Scroll.Enable = false; // scroll 사용하지 않기
- Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
- Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
- Obj_Chart.Panel.Gradient.StartColor = 0xffffff;
- Obj_Chart.Panel.Gradient.EndColor=0xffffff;
- Obj_Chart.Environment.MouseWheelScroll = false;
- // 혈압을 나타내는 막대그래프를 먼저 그려야 맥박, 체온,호흡 점이 막대 그래프에 가려지지 않는다.
- var cus_axis1 = Obj_Chart.Axis.AddCustom(false); // 혈압축
- Obj_Chart.Axis.Custom(0).AxisPen.Color = 0x0000ff;
- Obj_Chart.Axis.Custom(0).Title.Caption = "혈압/맥박"
- Obj_Chart.Axis.Custom(0).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(0).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(0).Title.Angle = 90;
- Obj_Chart.Axis.Custom(0).PositionPercent = 0;
- Obj_Chart.Axis.Custom(0).StartPosition = 0;
- Obj_Chart.Axis.Custom(0).EndPosition = 100;
- Obj_Chart.Axis.Custom(0).Automatic = false;
- Obj_Chart.Axis.Custom(0).Maximum = 200;
- Obj_Chart.Axis.Custom(0).Minimum = 20;
- Obj_Chart.Axis.Custom(0).Increment = 20;
- var cus_axis2 = Obj_Chart.Axis.AddCustom(false); // 호흡축
- Obj_Chart.Axis.Custom(1).AxisPen.Color = 0x00ff00;
- Obj_Chart.Axis.Custom(1).Title.Caption = "호흡";
- Obj_Chart.Axis.Custom(1).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(1).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(1).Title.Angle = 90;
- Obj_Chart.Axis.Custom(1).PositionPercent = -10;
- Obj_Chart.Axis.Custom(1).Automatic = false;
- Obj_Chart.Axis.Custom(1).Maximum = 90;
- Obj_Chart.Axis.Custom(1).Minimum = 0;
- Obj_Chart.Axis.Custom(1).Increment = 10;
- var cus_axis3 = Obj_Chart.Axis.AddCustom(false); // 체온축
- Obj_Chart.Axis.Custom(2).AxisPen.Color = 0xff0000;
- Obj_Chart.Axis.Custom(2).Title.Caption = "체온";
- Obj_Chart.Axis.Custom(2).Title.Font.Size = 8;
- Obj_Chart.Axis.Custom(2).Title.Font.Bold = true;
- Obj_Chart.Axis.Custom(2).Title.Angle = 90;
- Obj_Chart.Axis.Custom(2).PositionPercent = -5;
- Obj_Chart.Axis.Custom(2).Automatic = false;
- Obj_Chart.Axis.Custom(2).Maximum = 43;
- Obj_Chart.Axis.Custom(2).Minimum = 34;
- Obj_Chart.Axis.Custom(2).Increment = 1;
- Obj_Chart.AddSeries (11); // 혈압
- Obj_Chart.AddSeries (0); // 맥박
- Obj_Chart.AddSeries (0); // 호흡
- Obj_Chart.AddSeries (0); // 체온
- Obj_Chart.AddSeries (0); // 38선
- Obj_Chart.AddSeries (0); // BP(M)
- //Obj_Chart.AddSeries (11); // OP
- Obj_Chart.Series(0).VerticalAxisCustom = cus_axis1; // 혈압
- Obj_Chart.Series(1).VerticalAxisCustom = cus_axis1; // 맥박
- Obj_Chart.Series(2).VerticalAxisCustom = cus_axis2; // 호흡
- Obj_Chart.Series(3).VerticalAxisCustom = cus_axis3; // 체온
- Obj_Chart.Series(4).VerticalAxisCustom = cus_axis1; // BP(M)
- Obj_Chart.Series(5).VerticalAxisCustom = cus_axis3; // 38선
- //Obj_Chart.Series(5).VerticalAxisCustom = cus_axis1; // OP
- //라인의 굵기를 정해준다.
- Obj_Chart.Series(0).asCandle.CandleStyle = 2;
- Obj_Chart.Series(0).asCandle.CandleWidth = 3;
-
-
- Obj_Chart.Series(1).asLine.LinePen.Width = 1;
- Obj_Chart.Series(2).asLine.LinePen.Width = 1;
- Obj_Chart.Series(3).asLine.LinePen.Width = 1;
- Obj_Chart.Series(4).asLine.LinePen.Width = 1;
- Obj_Chart.Series(4).asLine.LinePen.style = 7;
- Obj_Chart.Series(5).asLine.LinePen.Width = 1;
- //Obj_Chart.Series(5).asCandle.CandleStyle = 2;
- //Obj_Chart.Series(5).asCandle.CandleWidth = 4;
- Obj_Chart.Series(0).Color = 0x000000; //black 혈압
- Obj_Chart.Series(1).Color = 0x0000ff; //red 맥박
- Obj_Chart.Series(2).Color = 0x00ff00; //green 호흡
- Obj_Chart.Series(3).Color = 0xff0000; //blue 체온
- Obj_Chart.Series(4).Color = 0x000000; //black BP(M)
- Obj_Chart.Series(5).Color = 0x000000; //black 38선
- //Obj_Chart.Series(5).Color = 0x000000; //black OP
- Obj_Chart.Series(1).asLine.Pointer.Visible = true;
- Obj_Chart.Series(1).asLine.Pointer.Style = 1;
- Obj_Chart.Series(1).asLine.Pointer.VerticalSize = 3;
- Obj_Chart.Series(1).asLine.Pointer.HorizontalSize = 3;
- Obj_Chart.Series(2).asLine.Pointer.Visible = true;
- Obj_Chart.Series(2).asLine.Pointer.Style = 0;
- Obj_Chart.Series(2).asLine.Pointer.VerticalSize = 2;
- Obj_Chart.Series(2).asLine.Pointer.HorizontalSize = 2;
- Obj_Chart.Series(3).asLine.Pointer.Visible = true;
- Obj_Chart.Series(3).asLine.Pointer.Style = 2;
- Obj_Chart.Series(3).asLine.Pointer.VerticalSize = 2;
- Obj_Chart.Series(3).asLine.Pointer.HorizontalSize = 2;
- Obj_Chart.Series(4).asLine.Pointer.Visible = true;
- Obj_Chart.Series(4).asLine.Pointer.Pen.color = 0x000000;
- Obj_Chart.Series(4).asLine.Pointer.Style = 5;
- Obj_Chart.Series(4).asLine.Pointer.VerticalSize = 2;
- Obj_Chart.Series(4).asLine.Pointer.HorizontalSize = 2;
- //depth 정하기
- Obj_Chart.Series(1).Depth = 1;
- Obj_Chart.Series(2).Depth = 1;
- Obj_Chart.Series(3).Depth = 1;
- Obj_Chart.Series(4).Depth = 1;
- Obj_Chart.Series(5).Depth = 3;
- //Obj_Chart.Series(5).Depth = 5;
- //Obj_Chart.Series(6).Depth = 6;
- //38선 그리기
- //Obj_Chart.Series(5).AddXY (-5, 38.5, "", Obj_Chart.Series(5).Color );
- //Obj_Chart.Series(5).AddXY (70, 38.5, "", Obj_Chart.Series(5).Color );
- //혈압 Candle 색설정
- Obj_Chart.Series(0).asCandle.UpCloseColor = 0xffffff;
- Obj_Chart.Series(0).asCandle.DownCloseColor = 0x0000ff;
- //그래프 표시
- //Header Info
- var sChartAllDateList = new Array();
- //Date Info
- var sChartDate1List = new Array();
- var sChartDate2List = new Array();
- var sChartDate3List = new Array();
- var sChartDate4List = new Array();
- var sChartDate5List = new Array();
- var sChartDate6List = new Array();
- //Result Info
- var sChartRslt1List = new Array();
- var sChartRslt2List = new Array();
- var sChartRslt3List = new Array();
- var sChartRslt4List = new Array();
- var sChartRslt5List = new Array();
- var sChartRslt6List = new Array();
- var sRecData1 = "";
- var sRecData2 = "";
- var sRecData3 = "";
- var sRecData4 = "";
- var sRecData5 = "";
- var sRecData6 = "";
- //instance 에서 그래프에 표기할 시간, 기록값 추출
- for(var i =pSrow ; i <= pErow ; i++){
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "-" &&
- model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/itemcd") == "-" ){
- sChartAllDateList = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "1"){
- sChartDate1List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt1List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "2"){
- sChartDate2List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt2List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "3"){
- sChartDate3List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt3List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "4"){
- sChartDate4List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt4List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "5"){
- sChartDate5List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt5List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/leftaxis") == "6"){
- sChartDate6List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdtlist").split("^");
- sChartRslt6List = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recrsltlist").split("^");
- }
- }
- for(var i = 0 ; i < sChartAllDateList.length ; i++){
- sRecData1 = "";
- sRecData2 = "";
- sRecData3 = "";
- sRecData4 = "";
- sRecData5 = "";
- sRecData6 = "";
- //if(sChartAllDateList[i].substr(3,2) == "00" || sChartAllDateList[i].substr(3,2) == "30"){
- var sCoordinate = eval(sChartAllDateList[i].substr(0,2)) + eval(sChartAllDateList[i].substr(3,2) / 60) ;
- //시간별 기록 데이터 추출
- for(var list1 = 0 ; list1 < sChartDate1List.length ; list1++){
- if(sChartAllDateList[i] == sChartDate1List[list1]){
- sRecData1 = sChartRslt1List[list1];
- }
- }
- for(var list2 = 0 ; list2 < sChartDate2List.length ; list2++){
- if(sChartAllDateList[i] == sChartDate2List[list2]){
- sRecData2 = sChartRslt2List[list2];
- }
- }
- for(var list3 = 0 ; list3 < sChartDate3List.length ; list3++){
- if(sChartAllDateList[i] == sChartDate3List[list3]){
- sRecData3 = sChartRslt3List[list3];
- }
- }
- for(var list4 = 0 ; list4 < sChartDate4List.length ; list4++){
- if(sChartAllDateList[i] == sChartDate4List[list4]){
- sRecData4 = sChartRslt4List[list4];
- }
- }
- for(var list5 = 0 ; list5 < sChartDate5List.length ; list5++){
- if(sChartAllDateList[i] == sChartDate5List[list5]){
- sRecData5 = sChartRslt5List[list5];
- }
- }
- for(var list6 = 0 ; list6 < sChartDate6List.length ; list6++){
- if(sChartAllDateList[i] == sChartDate6List[list6]){
- sRecData6 = sChartRslt6List[list6];
- }
- }
- //그래프에 데이터 입력
- if(sRecData1 != "" && sRecData2 != "" && fIsNumber(sRecData1) == true && fIsNumber(sRecData2) == true){
- Obj_Chart.Series(0).asCandle.AddCandle (eval(sCoordinate), eval(sRecData2), 0, 0, eval(sRecData1));
- }
- if(sRecData3 != "" && fIsNumber(sRecData3) == true){
- Obj_Chart.Series(1).AddXY (eval(sCoordinate), eval(sRecData3), "", Obj_Chart.Series(1).Color);
- }
- if(sRecData4 != "" && fIsNumber(sRecData4) == true){
- Obj_Chart.Series(2).AddXY (eval(sCoordinate), eval(sRecData4), "", Obj_Chart.Series(2).Color);
- }
- if(sRecData5 != "" && fIsNumber(sRecData5) == true){
- Obj_Chart.Series(3).AddXY (eval(sCoordinate), eval(sRecData5), "", Obj_Chart.Series(3).Color);
- }
- if(sRecData6 != "" && fIsNumber(sRecData6) == true){
- Obj_Chart.Series(4).AddXY (eval(sCoordinate), eval(sRecData6), "", Obj_Chart.Series(4).Color);
- }
- //}
- }
- //그래프 이미지 특정 폴더에 저장
- var fso, fldr;
- fladr = "C:/Program Files/himed/vitaltempimage";
- fso = new ActiveXObject("Scripting.FileSystemObject");
- if (fso.FolderExists(fladr)) {
- //IMAGE FILE 설정( PARAM : File Name ; Gray ; Performance ; Quality ; Width ; Height )
- //File 크기 조절 : Quality 및 Width, Height 설정(Width, Height 변경시 그래프 설정도 변경해야 함.)
- Obj_Chart.Export.SaveToJPEGFile(fladr+"/tchart.jpeg", false, 0, 30, 1155, 300 );
- //sChartNum++;
- } else {
- fldr = fso.CreateFolder(fladr);
- Obj_Chart.Export.SaveToJPEGFile(fladr+"/tchart.jpeg", false, 0, 30, 1155, 300 );
- //sChartNum++;
- }
- var file = fladr+"/tchart.jpeg";
- //var f = fso.GetFile(file);
- //fChangeImage(file);
- var pos = file.lastIndexOf("\\");
- var localFileName= file.substring(pos+1, file.length);
- img_tmp.src = "";
- img_tmp.src = file;
- var ldata = img_tmp.getbase64data();
- //var data = file.getbase64data();
- var sImgDataRowCnt = eval(getNodesetCount("/root/send/imginfo")) + 1;
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/pid", sPid);
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/orddd", sIndd);
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/cretno", sCretNo);
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/recdd", sImageRecDD);
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/recflag", "A");
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/imgrslt", ldata);
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/imght", "1155");
- model.makeValue("/root/send/imginfo["+sImgDataRowCnt+"]/imgwidt", "300");
- setImageRefInstance("/root/send/imginfo["+sImgDataRowCnt+"]/imgrslt");
- //getDomain()
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 기록일별 view img 정보 생성 및 저장
- * @return :
- * @---------------------------------------------------
- */
- function fMakeViewChartImg(){
- model.removenodeSet("/root/send");
- sImageRecDD = "";
- var sSrow = "";
- var sErow = "";
- //sChartNum = 1;
- for(var i = 1 ; i <= eval(getNodesetCount("/root/temp/clincobsrecinfo/rtnsigndata")) ; i++){
- if(model.getValue("/root/temp/clincobsrecinfo/rtnsigndata[" +i+ "]/itemcd") == "-"){
- if(sImageRecDD != ""){
- sErow = i -1;
- fMakeViewChart(sSrow, sErow);
- sImageRecDD = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdd");
- sSrow = "";
- sErow = "";
- sSrow = i;
- }else{
- sImageRecDD = model.getValue("/root/temp/clincobsrecinfo/rtnsigndata["+i+"]/recdd");
- sSrow = i;
- }
- }
- //데이터 생성 종료시 저장 함수 호출
- if(i == getNodesetCount("/root/temp/clincobsrecinfo/rtnsigndata")){
- sErow = i;
- fMakeViewChart(sSrow, sErow);
- sSrow = "";
- sErow = "";
- }
- }
- submit("TXMNR00905", false);
- model.removenodeSet("/root/send");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 화면 초기화
- * @return :
- * @---------------------------------------------------
- */
- function fInitViewInfo(){
- if(getNodesetCount("/root/temp/cond/patientgrup") < 1){
- return;
- }
- fInitTopInfo();
- model.removenodeset(xHoursClincObsRecList);
- model.removenodeset(xDaysClincObsRecList);
- model.removenodeset(xStnddayClincObsRecListPath);
- model.removenodeset(xFormerdayClincObsRecListPath);
- model.removenodeSet(xClincObsRecListPath);
- model.removenodeset(xFormerRecPath);
- model.removenodeset(xDayCountListPath);
- model.removenodeset(xFormerDayCountListPath);
- model.removenodeset(xPamInfoPath);
- model.removenodeset(xRecUserListPath);
- model.removenodeset(sAttrListPath1);
- model.removenodeset(xFormerAttrListPath1);
- model.removenodeset(xFormerRecUserListPath);
- model.removenodeset("/root/init/clsinfo");
- model.removeNode("/root/temp/cond/patientgrup");
- model.removeNode("/root/main/patdetlinfo");
- grd_24hoursclincobsreclist.caption = "";
- //grd_4daysclincobsreclist.caption = "";
- //grd_formersclincobsreclist.caption = "";
- //grd_stndclincobsreclist.caption = "";
- cpt_vsinfo.value = "";
- cmb_mypatlist.value = "";
- btn_24hoursdetailbefore.visible = false;
- btn_24hoursdetailafter.visible = false;
- fMakeChart("init24hours");
- //fMakeChart("init4days");
- if(getNodesetCount("/root/main/patinfo") > 0){
- model.setValue("/root/main/patinfo/pid", "");
- model.setValue("/root/main/patinfo/indd", "");
- model.setValue("/root/main/patinfo/cretno", "");
- model.setValue("/root/main/patinfo/ordtype", "");
- model.setValue("/root/main/patinfo/indschacptstat", "");
- model.setValue("/root/main/patinfo/dschdd", "");
- model.setValue("/root/main/patinfo/eroutdd", "");
- model.setValue("/root/main/patinfo/patnm", "");
- model.setValue("/root/main/patinfo/sexage", "");
- model.setValue("/root/main/patinfo/wardcd", "");
- model.setValue("/root/main/patinfo/roomcd", "");
- }
- sPid == "";
- sIndd == "";
- sCretNo == "";
- sInstcd == "";
- sIOFlag == "";
- sWardCD == "";
- sRoomCD == "";
- sIndschacptstat == "";
- sDschdd == "";
- sOrdDeptcd == "";
- sMedispclid == "";
- model.setValue(sCondPath+"/pid", "");
- //fChkTgtPatInfo("disable");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 구분자로 분리된 특정자료를 Reading
- * @param : pData : 원본데이터
- * @param : pRow : 찾고자 하는 위치의 row
- * @param : pCol : 찾고자 하는 위치의 column
- * @return : 해당 row, column의 문자열
- * @---------------------------------------------------
- */
- function fGetArrayDataTPR(pData, pRow, pCol){
- var rowSep = "▩"; // row 구분자
- var colSep = "▦"; // column 구분자;
- var arrRow = pData.split(rowSep);
- if(arrRow.length <= pRow) return "";
- var arrCol = arrRow[pRow].split(colSep);
- if(arrCol.length <= pCol) return "";
- return arrCol[pCol];
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰기록 일별 전체 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupSearchRecData(){
- var sIndex = cmb_patlist.focusIndex + 1
- var sParam_Header = "pid▦srchdd▩";
- var sParam_Data = model.getValue(sCondPath+"/pid") + "▦"
- + model.getValue(sCondPath+"/recdd") + "▩";
- setParameter("SPMNR06300_Param",sParam_Header+sParam_Data);
- open("SPMNR06300", "1", event.clientX , event.clientY);
- //parameter 정보 초기화
- //clearParameter("SPMNR06300_Param");
- }
- /**
- * @group :
- * @ver : 2009.12.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰기록 일별 전체 조회화면 Parameter 초기화 함수
- * 일별 전체 조회 화면에서 초기화함수 호출.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupSearchRecDataInitParam(){
- //parameter 정보 초기화
- clearParameter("SPMNR06300_Param");
- }
- /**
- * @group :
- * @ver : 2009.12.22
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Flow Sheet 환경 설정 화면 Open
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupFlowSheetSetting(){
- modal("SMMNR10200", "1", event.clientX , event.clientY);
- window.reload();
- }
- /**
- * @group :
- * @ver : 2010.01.20
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 그리드 행추가 로직
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMakeGridNode(pFlag, pAddRow, pItemnm, pRecFlag, pDepth, pLnkBizCd, pStyle, pColor, pReadOnly, pCareRecSeqNo, pTotalIdx){
- switch(pFlag){
- case "24hours" :
- model.makeNode(xHoursClincObsRecList+"["+pAddRow+"]");
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/itemnm" , pItemnm );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt1" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt2" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt3" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt4" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt5" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt6" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt7" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt8" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt9" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt10" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt11" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt12" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt13" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt14" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt15" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt16" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt17" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt18" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt19" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt20" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt21" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt22" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt23" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt24" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recflag" , pRecFlag );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/attrcd" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/itemcd" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/itemseqno" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/depth" , pDepth );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recfromdt" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/reccharflag" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/rectodt" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/supcd" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/carerecseqno" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/leftaxis" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/graphappyn" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/color" , pColor );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/totalyn" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/totalnm" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/lnkbizcd" , pLnkBizCd );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/style" , pStyle );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/subtotalyn" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/subtotalnm" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/runtotalyn" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/runtotalnm" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/fluidstat" , "" );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/readonlyyn" , pReadOnly );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/lnkcarerecseqno" , pCareRecSeqNo );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/totalidx" , pTotalIdx );
- model.makeValue(xHoursClincObsRecList+"["+pAddRow+"]/recfluidunit" , "" );
- break;
- case "24hours_Init" :
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt1" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt2" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt3" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt4" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt5" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt6" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt7" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt8" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt9" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt10" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt11" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt12" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt13" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt14" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt15" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt16" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt17" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt18" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt19" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt20" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt21" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt22" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt23" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/recrslt24" , "" );
- model.setValue(xHoursClincObsRecList+"["+pAddRow+"]/fluidstat" , "" );
- break;
- }
- }
- /**
- * @group :
- * @ver : 2010.01.26
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 확장명/부위 정보 입력 popup 호출
- * @return :
- * @---------------------------------------------------
- */
- function fPopupInputExtNm(){
- var iRow = grd_24hoursclincobsreclist.row;
- var sCareRecSeqNo = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("carerecseqno"));
- var sItemnm = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("itemnm"));
- var sItemLnkBizCd = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("lnkbizcd"));
- var sItemCd = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("itemcd"));
- var sRecFluidUnit = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfluidunit"));
- var sItemOrigin = "00";
- var sParamInfo = "";
- var sRtnParamInfo = "";
- if(sItemLnkBizCd == "11" || sItemLnkBizCd == "12" ) sItemOrigin = "04";
- sParamInfo = "upd▦";
- setParameter("SPMNR06100_Param",sParamInfo+sItemOrigin+"▦"+sCareRecSeqNo+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sItemnm+"▦"+sItemnm+"▦"+sItemCd+"▦"+sRecFluidUnit+"▩");
- modal("SPMNR06100", "1", event.clientX , event.clientY);
- sRtnParamInfo = getParameter("SPMNR06100_RtnParam");
- if(sRtnParamInfo == "") return;
- grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("itemnm")) = fGetArrayDataTPR(sRtnParamInfo, 0, 3);
- grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfluidunit")) = fGetArrayDataTPR(sRtnParamInfo, 0, 4);
- grd_24hoursclincobsreclist.valueMatrix(grd_24hoursclincobsreclist.findRow(sCareRecSeqNo, iRow, grd_24hoursclincobsreclist.colRef("lnkcarerecseqno")), grd_24hoursclincobsreclist.colRef("itemnm")) = fGetArrayDataTPR(sRtnParamInfo, 0, 4);
- //parameter 정보 초기화
- clearParameter("SPMNR06100_Param");
- clearParameter("SPMNR06100_RtnParam");
- }
- /**
- * @group :
- * @ver : 2010.01.26
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 기타기록(면회정보, 출생일) 입력 Popup
- * @return :
- * @---------------------------------------------------
- */
- function fPopupEtcRec(pFlag){
- var sRecDD = getCurrentDate();
- var sViewFlag = pFlag;
- var sParamInfo = "";
- setParameter("SPMNR10300_Param", sRecDD+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▩");
- modal("SPMNR10300","1", event.screenX, event.screenY);
- clearParameter("SPMNR10300_Param");
- model.removenode("/root/send");
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/dayinfo", ipt_24hoursrecdd.value);
- submit("TRMNR10102");
- fControlPatInfo();
- }
- /**
- * @group :
- * @ver : 2010.07.19
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 환자 면회 정보 입력 / 조회 Popup
- * @return :
- * @---------------------------------------------------
- */
- function fPopupPatMeetRec(){
- var sRecDD = ipt_24hoursrecdd.value;
- var sViewFlag = "01";
- var sParamInfo = "";
- setParameter("SPMNR10800_Param", sRecDD.substr(0, 6)+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▦"+sRecDD+"▦"+sPatNm+"▩");
- modal("SPMNR10800","1", event.screenX, event.screenY);
- clearParameter("SPMNR10800_Param");
- model.removenode("/root/send");
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/dayinfo", ipt_24hoursrecdd.value);
- submit("TRMNR10102");
- fControlPatInfo();
- }
- /**
- * @group :
- * @ver : 2010.07.19
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 근무 담당자 정보 입력 / 조회 Popup
- * @return :
- * @---------------------------------------------------
- */
- function fPopupDutyUserRec(){
- var sRecDD = ipt_24hoursrecdd.value;
- var sViewFlag = "03";
- var sParamInfo = "";
- setParameter("SPMNR10700_Param", sRecDD.substr(0, 6)+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▦"+sRecDD+"▦"+sPatNm+"▩");
- modal("SPMNR10700","1", event.screenX, event.screenY);
- clearParameter("SPMNR10700_Param");
- model.removenode("/root/send");
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/instcd", sInstcd);
- model.makeValue("/root/send/ioflag", sIOFlag);
- model.makeValue("/root/send/dayinfo", ipt_24hoursrecdd.value);
- submit("TRMNR10102");
- fControlPatInfo();
- }
- /**
- * @group :
- * @ver : 2010.01.26
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : Fluid기록 입력 화면 호출
- * @return :
- * @---------------------------------------------------
- */
- function fPopupFluid(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- //해당 함수는 필요가 없으나 예외 처리로 넣어둠.
- if( fChkSaveData() == false ) return;
- var sSearchDataHeader = "carerecseqno▦fromdt▦todt▦pid▦indd▦cretno▦wardcd▦roomcd▦ioflag▦orddeptcd▦orddrid▦recfluidunit▩";
- var sParamValue = "";
- iRow = grd_24hoursclincobsreclist.row;
- iCol = grd_24hoursclincobsreclist.col;
- iNodeRowValue = iRow - grd_24hoursclincobsreclist.fixedRows + 1;
- var sCareRecSeqNo = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("carerecseqno"));
- var sBaseFromDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
- var sBaseToDt = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00";
- var sRecFluidUnit = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfluidunit"));
- sParamValue += sCareRecSeqNo +"▦"
- + sBaseFromDt +"▦"
- + sBaseToDt +"▦"
- + sPid +"▦"
- + sIndd +"▦"
- + sCretNo +"▦"
- + sWardCD +"▦"
- + sRoomCD +"▦"
- + sIOFlag +"▦"
- + model.getValue("/root/main/paminfo/pamlist/orddeptcd" ) +"▦"
- + model.getValue("/root/main/paminfo/pamlist/medispclid") +"▦"
- + sRecFluidUnit +"▩";
- setParameter("SPMNR10400_Param", sParamValue);
- modal("SPMNR10400", "1", event.clientX , event.clientY);
- //입력 및 정보 조회 Parameter 설정
- model.makeValue("/root/send/clincobsfluidreclist", sSearchDataHeader + sParamValue);
- //특정 Fluid 정보 재조회 후 처리
- if(submit("TRMNR10104", false)){
- if( getNodesetCount(xFluidTmpPath) > 0 ){
- for( var i = 1 ; i <= getNodesetCount(xFluidTmpPath) ; i++ ){
- InsFluidNo = model.getValue(xFluidTmpPath+"[" + i + "]/carerecseqno");
- if(model.getValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/carerecseqno") != "" ){
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/recdt" , model.getValue(xFluidTmpPath+"[" + i + "]/recdt" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/recrslt" , model.getValue(xFluidTmpPath+"[" + i + "]/recrslt" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/fluidstat" , model.getValue(xFluidTmpPath+"[" + i + "]/fluidstat" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/fluidetcinfo" , model.getValue(xFluidTmpPath+"[" + i + "]/fluidetcinfo" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/usernm" , model.getValue(xFluidTmpPath+"[" + i + "]/usernm" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/userid" , model.getValue(xFluidTmpPath+"[" + i + "]/userid" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/certkey" , model.getValue(xFluidTmpPath+"[" + i + "]/certkey" ));
- model.setValue(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']/clncobsseqno" , model.getValue(xFluidTmpPath+"[" + i + "]/clncobsseqno" ));
- }else{
- AddRow = eval(getNodesetCount(xFluidPath)) + 1;
- model.makeValue(xFluidPath+"[" + AddRow + "]/carerecseqno" , InsFluidNo ) ;
- model.makeValue(xFluidPath+"[" + AddRow + "]/recdt" , model.getValue(xFluidTmpPath+"[" + i + "]/recdt" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/recrslt" , model.getValue(xFluidTmpPath+"[" + i + "]/recrslt" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/fluidstat" , model.getValue(xFluidTmpPath+"[" + i + "]/fluidstat" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/fluidetcinfo" , model.getValue(xFluidTmpPath+"[" + i + "]/fluidetcinfo" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/usernm" , model.getValue(xFluidTmpPath+"[" + i + "]/usernm" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/userid" , model.getValue(xFluidTmpPath+"[" + i + "]/userid" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/certkey" , model.getValue(xFluidTmpPath+"[" + i + "]/certkey" ));
- model.makeValue(xFluidPath+"[" + AddRow + "]/clncobsseqno" , model.getValue(xFluidTmpPath+"[" + i + "]/clncobsseqno" ));
- }
- }
- }else{
- model.removeNodeset(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']");
- }
- //재조회 Path 삭제
- model.removenode("/root/temp/clincobsfluidrecinfo");
- //Fluid 행 초기화
- fMakeGridNode("24hours_Init", iNodeRowValue);
- fMakeGridNode("24hours_Init", iNodeRowValue+1);
- //Fluid 정보를 이용하여 화면 Style및 정보 Setting
- fSettingFluidInfo("F", "Chng", iNodeRowValue, iNodeRowValue+1, sCareRecSeqNo);
- sFluidStatInfo = grd_24hoursclincobsreclist.valueMatrix(iRow+1, grd_24hoursclincobsreclist.colRef("fluidstat"));
- for(var iCol=1; iCol<= 24; iCol++){
- sFluidRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
- //Grid Graph 설정
- if(isSearchString(sFluidStatInfo, sFluidRecDT) == true){
- grd_24hoursclincobsreclist.cellstyle("border-bottom-color", iRow+1, iCol) = "#0000ff";
- grd_24hoursclincobsreclist.cellstyle("border-bottom-width", iRow+1, iCol) = 2;
- }else{
- grd_24hoursclincobsreclist.cellstyle("border-bottom-color", iRow+1, iCol) = "#B0B0B0";
- grd_24hoursclincobsreclist.cellstyle("border-bottom-width", iRow+1, iCol) = 1;
- }
- }
- }
- //Fluid 입력 화면에서 I/O처리 후 Param 정보가 있을 경우 처리
- if( getParameter("SPMNR10400_ReturnSaveInfo") != "" ){
- submit("TRMNR10105", false);
- xPathViewData = "/root/temp/rtnsigndatainfo/rtnsigndata";
- fMakeViewData();
- model.removenodeSet(xPathViewData);
- model.removenodeSet("/root/temp/SignData");
- xPathViewData = "/root/temp/clincobsrecinfo/rtnsigndata";
- }
- //parameter 정보 초기화
- clearParameter("SPMNR10400_Param");
- clearParameter("SPMNR10400_ReturnSaveInfo");
- }
- /**
- * @group :
- * @ver : 2010.07.30
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 체중누적조회 화면 호출
- * @return :
- * @---------------------------------------------------
- */
- function fPopupWeightList(){
- var sParamValue = "pid▦indd▦cretno▦wardcd▦recdd▩" ;
- sParamValue += sPid + "▦"
- + sIndd + "▦"
- + sCretNo + "▦"
- + "" + "▦"
- + model.getValue("/root/main/cond/seardd") + "▩";
- setParameter("SPMNR11000_Param", sParamValue);
- open("SPMNR11000", "1", event.clientX , event.clientY);
- }
- /**
- * @group :
- * @ver : 2010.01.26
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Fluid 정보 Setting
- * @param : pFlag : 세팅 구분
- * pRealFluidRow : Fluid Row 정보
- * pGraphRow : Fluid Graph Row 정보
- * pIndex : Fluid 간호일련번호 정보
- * @return :
- * @---------------------------------------------------
- */
- function fSettingFluidInfo(pFlag, pStat, pRealFluidRow, pGraphRow, pIndex){
- if(pRealFluidRow < 1 || pGraphRow < 1) return;
- var xRowGraphPath = "";
- if( pFlag == "I" ){
- xRowGraphPath = xInstrmtPath;
- }else{
- xRowGraphPath = xFluidPath;
- }
- var sFluidCareRecSeqNo = model.getValue(xRowGraphPath+"[carerecseqno ='" +pIndex+ "']/carerecseqno" );
- var sFluidRecDt = model.getValue(xRowGraphPath+"[carerecseqno ='" +pIndex+ "']/recdt" );
- var sFluidRslt = model.getValue(xRowGraphPath+"[carerecseqno ='" +pIndex+ "']/recrslt" );
- var sFluidStat = model.getValue(xRowGraphPath+"[carerecseqno ='" +pIndex+ "']/fluidstat" );
- var sFluidEtcInfo = model.getValue(xRowGraphPath+"[carerecseqno ='" +pIndex+ "']/fluidetcinfo" );
- if( sFluidCareRecSeqNo == "" ) sFluidCareRecSeqNo = pIndex;
- var sFluidRsltArray = new Array();
- var sFluidStatArray = new Array();
- var sFluidEtcInfoArray = new Array();
- var sFluidRecDtArray = new Array();
- sFluidRsltArray = sFluidRslt.split("^");
- sFluidStatArray = sFluidStat.split("^");
- sFluidEtcInfoArray = sFluidEtcInfo.split("^");
- sFluidRecDtArray = sFluidRecDt.split("^");
- var sFluidStatTmpInfo = ""; //Fluid 유지임시정보(시간정보)
- var sFluidStartTm = "";
- var sFluidChngTm = "";
- var sFluidEndTm = "";
- var sStayRsltValue = ""; //Fluid 결과값 유지 정보
- var sStayEtcInfoValue = ""; //Fluid 투여속도 유지 정보
- var sFluidStayFromdt = "";
- var sFluidStayTodt = "";
- var sFluidStayRslt = "";
- var sFluidStayFlag = "";
- var sFluidRunSumCalcValue = 0;
- var sFluidInitStayRslt = "";
- var sFluidInitStayEtcInfo = "";
- var sFluidIndexValue = "";
- if(pFlag == "F"){
- //Fluid 합계 배열 생성 부분
- for( var i=0 ; i < sFluidSumInfo.length ; i++ ){
- if( sFluidSumInfo[i][0] == sFluidCareRecSeqNo ){
- sFluidBfSumInfo[0] = sFluidCareRecSeqNo;
- sFluidIndexValue = i;
- }
- }
- if( fIsNumber(sFluidIndexValue) == false ){
- sFluidIndexValue = sFluidSumInfo.length;
- sFluidSumInfo[sFluidIndexValue] = new Array;
- sFluidSumInfo[sFluidIndexValue][0] = sFluidCareRecSeqNo;
- }
- for( var iCol=1; iCol<= 24; iCol++ ){
- sFluidBfSumInfo[iCol] = 0;
- if( fIsNumber(sFluidSumInfo[sFluidIndexValue][iCol]) == true ){
- sFluidBfSumInfo[iCol] = sFluidSumInfo[sFluidIndexValue][iCol]; //이전 합계 정보 저장
- }
- sFluidSumInfo[sFluidIndexValue][iCol] = 0; //합계 배열 초기화
- sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
- sAfterColDate = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00"; //다음 Col의 일시 정보
- for( var i = 0 ; i < sFluidRsltArray.length ; i ++ ){
- if( sFluidStatArray[i] == "S" ){
- if( sFluidRecDtArray[i] < sColDate || ( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate )){
- if( isSearchString(sFluidStatTmpInfo, sColDate) == false ){
- sFluidStatTmpInfo += sColDate+" ";
- }
- sStayRsltValue = sFluidRsltArray[i];
- sStayEtcInfoValue = sFluidEtcInfoArray[i];
- sFluidStartTm = sFluidRecDtArray[i];
- sFluidEndTm = "-";
- sFluidChngTm = "-";
- }
- }else if( sFluidStatArray[i] == "C" ){
- sFluidChngTm = sFluidRecDtArray[i];
- }else if( sFluidStatArray[i] == "E" ){
- if( sFluidEndTm == "-" ) sFluidEndTm = sFluidRecDtArray[i];
- if( sFluidRecDtArray[i] < sColDate ){
- sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
- }
- sStayRsltValue = "";
- sStayEtcInfoValue = "";
- sFluidEndTm = sFluidRecDtArray[i];
- sFluidChngTm = "-";
- }
- //Graph & '단위' Row에 값 입력
- if( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate ){
- var sGraphRowValue = model.getValue(xHoursClincObsRecList+"["+pGraphRow+"]/recrslt"+iCol);
- var sFluidRowValue = model.getValue(xHoursClincObsRecList+"["+pRealFluidRow+"]/recrslt"+iCol);
- if( sFluidStatArray[i] == "S" ){
- sFluidStayFromdt = sFluidRecDtArray[i];
- sFluidStayRslt = sFluidRsltArray[i];
- }else if( sFluidStatArray[i] == "C" ){
- if( sFluidStayFromdt != "" && sFluidStayRslt != "" && sColDate < sNowDate ){
- sFluidCalcFromdt = "";
- if( sFluidStayFromdt < sColDate ){
- sFluidCalcFromdt = sColDate;
- }else{
- sFluidCalcFromdt = sFluidStayFromdt;
- }
- sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sFluidRecDtArray[i], sFluidStayRslt, "+", "+");
- sFluidStayFromdt = sFluidRecDtArray[i];
- sFluidStayRslt = sFluidRsltArray[i];
- }
- }else if( sFluidStatArray[i] == "E" ){
- sFluidCalcFromdt = "";
- sFluidCalcTodt = "";
- //시작 및 변경 시간 체크
- if( sFluidStayFromdt < sColDate ){
- sFluidCalcFromdt = sColDate;
- }else{
- sFluidCalcFromdt = sFluidStayFromdt;
- }
- //종료시간 체크
- if( sFluidRecDtArray[i] < sNowDate){
- sFluidCalcTodt = sFluidRecDtArray[i];
- }else{
- sFluidCalcTodt = sNowDate;
- }
- if( sFluidCalcFromdt < sFluidCalcTodt ){
- sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sFluidCalcTodt, sFluidStayRslt, "+", "+");
- }
- sFluidStayFromdt = "";
- sFluidStayRslt = "";
- }
- //Event 표시 여부에 따른 Fluid 표시 설정
- if( sEventItemUseYn == "Y" ){
- if( sFluidStatArray[i] == "C" ){
- //Graph Row Setting
- if( sFluidEtcInfoArray[i] != "" && sStayEtcInfoValue != sFluidEtcInfoArray[i]){
- if( sGraphRowValue != "" ) sGraphRowValue += ", ";
- sGraphRowValue += "(" + sStayEtcInfoValue + "→" + sFluidEtcInfoArray[i] + ")";
- sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
- sStayEtcInfoValue = sFluidEtcInfoArray[i];
- }
- //Fluid Row Setting
- if( sFluidRsltArray[i] != "" && sStayRsltValue != sFluidRsltArray[i]){
- if( sFluidRowValue != "" ) sFluidRowValue += ", ";
- sFluidRowValue += sStayRsltValue + "→" + sFluidRsltArray[i];
- sFluidRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
- sStayRsltValue = sFluidRsltArray[i];
- }
- }else{
- //Graph Row Setting
- if( sFluidStatArray[i] != "" ){
- if( sGraphRowValue != "" ) sGraphRowValue += ", ";
- sGraphRowValue += sFluidStatArray[i];
- }
- if( sFluidEtcInfoArray[i] != "" ){
- sGraphRowValue += "/("+sFluidEtcInfoArray[i]+")";
- sStayEtcInfoValue = sFluidEtcInfoArray[i];
- }
- if( sFluidRecDtArray[i] != "" ) sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
- //Fluid Row Setting
- if( sFluidRsltArray[i] != "" ){
- if( sFluidRowValue != "" ) sFluidRowValue += ", ";
- sFluidRowValue += sFluidRsltArray[i];
- sStayRsltValue = sFluidRsltArray[i];
- }
- }
- }else{
- //Graph Row Setting
- if( sFluidStatArray[i] != "" ){
- if( sGraphRowValue != "" ) sGraphRowValue += ", ";
- sGraphRowValue += sFluidStatArray[i];
- }
- if( sFluidEtcInfoArray[i] != "" ){
- sGraphRowValue += "/("+sFluidEtcInfoArray[i]+")";
- }
- if( sFluidRecDtArray[i] != "" ) sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
- //Fluid Row Setting
- if( sFluidRsltArray[i] != "" ){
- if( sFluidRowValue != "" ) sFluidRowValue += ", ";
- sFluidRowValue += sFluidRsltArray[i];
- }
- }
- model.setValue(xHoursClincObsRecList+"["+pRealFluidRow+"]/recrslt"+iCol, sFluidRowValue );
- model.setValue(xHoursClincObsRecList+"["+pGraphRow+"]/recrslt"+iCol, sGraphRowValue );
- }else if( sFluidRecDtArray[i] < sColDate ){
- if( sFluidStatArray[i] != "E" ){
- if( sFluidStayFromdt <= sFluidRecDtArray[i] ){
- if( sFluidRsltArray[i] != "" ) sStayRsltValue = sFluidRsltArray[i];
- if( sFluidEtcInfoArray[i] != "" ) sStayEtcInfoValue = sFluidEtcInfoArray[i];
- sFluidStayFromdt = sFluidRecDtArray[i];
- sFluidStayRslt = sFluidRsltArray[i];
- sFluidInitStayRslt = sFluidRsltArray[i];
- sFluidInitStayEtcInfo = sFluidEtcInfoArray[i];
- }
- }else{
- sStayRsltValue = "";
- sFluidStayFromdt = "";
- sFluidStayRslt = "";
- }
- }
- }
- //Fluid 합계 처리 부분
- if( sFluidStayRslt != "" ){
- if( isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
- if( sFluidStayFromdt < sAfterColDate && sFluidStayFromdt < sNowDate ){
- sFluidCalcFromdt = "";
- if( sFluidStayFromdt < sColDate ){
- sFluidCalcFromdt = sColDate;
- }else{
- sFluidCalcFromdt = sFluidStayFromdt;
- }
- if( sNowDate < sAfterColDate ){
- if( sFluidCalcFromdt < sNowDate ) sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sNowDate, sFluidStayRslt, "+", "+");
- }else{
- if( sFluidCalcFromdt < sAfterColDate ) sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sAfterColDate, sFluidStayRslt, "+", "+");
- }
- }
- }
- }
- sFluidSumInfo[sFluidIndexValue][iCol] = Math.round(sFluidSumInfo[sFluidIndexValue][iCol] * Math.pow(10, (-4)*(-1)-1)) / Math.pow(10, (-4)*(-1)-1);
- //조회 시작시간에 정보가 없을 때 바로 전 데이터 표시
- if( iCol == "1" && model.getValue(xHoursClincObsRecList+"["+pRealFluidRow+"]/recrslt"+iCol) == "" && isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
- if( sFluidInitStayRslt != "" ) model.setValue(xHoursClincObsRecList+"["+pRealFluidRow+"]/recrslt"+iCol, sFluidInitStayRslt+"→" );
- }
- if( iCol == "1" && model.getValue(xHoursClincObsRecList+"["+pGraphRow+"]/recrslt"+iCol) == "" && isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
- if( sFluidInitStayEtcInfo != "" ) model.setValue(xHoursClincObsRecList+"["+pGraphRow+"]/recrslt"+iCol, sFluidInitStayEtcInfo+"→" );
- }
- }
- }else{
- for( var iCol=1; iCol<= 24; iCol++ ){
- sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
- sAfterColDate = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00"; //다음 Col의 일시 정보
- for( var i = 0 ; i < sFluidStatArray.length ; i ++ ){
- if( sFluidRsltArray[i] == "S" || sFluidRsltArray[i].substr(0,2) == "S/" ){
- if( sFluidRecDtArray[i] < sColDate || ( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate )){
- if( isSearchString(sFluidStatTmpInfo, sColDate) == false ){
- sFluidStatTmpInfo += sColDate+" ";
- }
- sStayRsltValue = sFluidRsltArray[i];
- sFluidStartTm = sFluidRecDtArray[i];
- sFluidEndTm = "-";
- sFluidChngTm = "-";
- }
- }else if( sFluidRsltArray[i] == "C" || sFluidStatArray[i].substr(0,2) == "C/" ){
- sFluidChngTm = sFluidRecDtArray[i];
- }else if( sFluidRsltArray[i] == "E" || sFluidStatArray[i].substr(0,2) == "E/" ){
- if( sFluidEndTm == "-" ) sFluidEndTm = sFluidRecDtArray[i];
- if( sFluidRecDtArray[i] < sColDate ){
- sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
- }
- sStayRsltValue = "";
- sStayEtcInfoValue = "";
- sFluidEndTm = sFluidRecDtArray[i];
- sFluidChngTm = "-";
- }
- }
- }
- }
- //Fluid 종료되지 않았을 경우 처리 로직
- if( sFluidEndTm == "-" ){
- if( sFluidChngTm != "-") sFluidStartTm = sFluidChngTm;
- for( var iCol=1; iCol<= 24; iCol++ ){
- sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
- if( sFluidStartTm <= sNowDate ){
- if( sNowDate < sColDate ){
- sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
- }
- }else{
- if( sFluidStartTm < sColDate ){
- sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
- }
- }
- }
- }
- //Fluid Row Event 발생시 별도 처리 부분(합계값 변경)
- if( pFlag == "F" ){
- if( pStat == "Chng" ){
- for(var iRow = grd_24hoursclincobsreclist.fixedRows ; iRow < grd_24hoursclincobsreclist.rows ; iRow++){
- sSrchStrValue = "/"+ sFluidCareRecSeqNo +"/";
- for( var iCol=1; iCol<= 24; iCol++ ){
- sTotalidx = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("totalidx"));
- sRecFlag = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recflag"));
- if( sTotalidx != "" && sSrchStrValue != "" && isSearchString(sTotalidx, sSrchStrValue) == true ){
- sTotalValue = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef(("recrslt"+iCol)));
- sFluidSumCalcValue = eval(sFluidSumInfo[sFluidIndexValue][iCol]) - eval(sFluidBfSumInfo[iCol]);
- sChngFluidSumCalcValue = "";
- if( fIsNumber(sFluidSumCalcValue) == true && sFluidSumCalcValue != 0 ){
- if( sRecFlag == "R"){
- if( sDutyTMColInfo1+1 != iCol && sDutyTMColInfo2+1 != iCol && sDutyTMColInfo3+1 != iCol ){
- sFluidRunSumCalcValue += eval(sFluidSumCalcValue);
- }else{
- sFluidRunSumCalcValue = sFluidSumCalcValue;
- }
- if( fIsNumber(sTotalValue) == true ){
- sChngFluidSumCalcValue = eval(sTotalValue) + eval(sFluidRunSumCalcValue);
- }else{
- sChngFluidSumCalcValue = eval(sFluidRunSumCalcValue);
- }
- }else if( sRecFlag == "T" || sRecFlag == "S" ){
- if( fIsNumber(sTotalValue) == true ){
- sChngFluidSumCalcValue = eval(sTotalValue) + eval(sFluidSumCalcValue);
- }else{
- sChngFluidSumCalcValue = eval(sFluidSumCalcValue);
- }
- }
- //합계값이 숫자값이고 0이 아닐때 계산 값 입력
- if( fIsNumber(sChngFluidSumCalcValue) == true && sChngFluidSumCalcValue != 0 ){
- grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef(("recrslt"+iCol))) = sChngFluidSumCalcValue;
- }else{
- grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef(("recrslt"+iCol))) = "";
- }
- }
- }
- }
- }
- }
- model.setValue(xHoursClincObsRecList+"["+pGraphRow+"]/readonlyyn", "Y");
- }
- model.setValue(xHoursClincObsRecList+"["+pGraphRow+"]/fluidstat", sFluidStatTmpInfo);
- }
- /**
- * @group :
- * @ver : 2010.02.23
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Fluid 합계 계산 로직
- * @param : pFromdd : 계산시작일시
- * pTodd : 계산종료일시
- * pRslt : 계산수식
- * pFromType : 계산시작일시 포함여부('+': 포함, '-': 제외)
- * pToType : 계산종료일시 포함여부('+': 포함, '-': 제외)
- * @return :
- * @---------------------------------------------------
- */
- function fMakeFluidSumData(pFromdd, pTodd, pRslt, pFromType, pToType){
- var sFromCalc = 0;
- var sToCalc = 0;
- if( pFromdd == pTodd ) return 0;
- if(pFromType == "-") sFromCalc = -1;
- if(pToType == "-") sToCalc = -1;
- if( pRslt.isFloat() == false ) return;
- var rstFromTime = new Date(eval(pFromdd.substr(0,4)), eval(pFromdd.substr(4,2))-1, eval(pFromdd.substr(6,2)), eval(pFromdd.substr(8,2)), eval(pFromdd.substr(10,2))+sFromCalc, eval(pFromdd.substr(12,2)) );
- var rstEndTime = new Date(eval(pTodd.substr(0,4)), eval(pTodd.substr(4,2))-1, eval(pTodd.substr(6,2)), eval(pTodd.substr(8,2)), eval(pTodd.substr(10,2))+sToCalc, eval(pTodd.substr(12,2)) );
- var diffTime = Math.ceil((rstEndTime - rstFromTime) / (60 * 1000)); //분단위로 반환
- rtnValue = (eval(pRslt) / 60 * eval(diffTime));
- if( rtnValue == "" ) return 0;
- return rtnValue;
- }
- /**
- * @group :
- * @ver : 2010.03.08
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록항목 시작/종료 일시 설정 popup화면 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupChngTime(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- if( fChkSaveData() == false ) return;
- var iRow = grd_24hoursclincobsreclist.row;
- var sCareRecSeqNo = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("carerecseqno"));
- var sItemnm = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("itemnm"));
- var sItemRecFromDt = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("recfromdt"));
- var sItemRecToDt = grd_24hoursclincobsreclist.valueMatrix(iRow, grd_24hoursclincobsreclist.colRef("rectodt"));
- setParameter("SPMNR10600_Param", sCareRecSeqNo+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sItemnm+"▦"+sItemRecFromDt+"▦"+sItemRecToDt+"▩");
- modal("SPMNR10600", "1", event.clientX , event.clientY);
- sRtnParamInfo = getParameter("SPMNR10600_RtnParam");
- //SPMNR10600 화면에서 저장완료되면 fSearchClincObsRec("24hours") 호출
- //fSearchClincObsRec("24hours");
- clearParameter("SPMNR10600_Param");
- clearParameter("SPMNR10600_RtnParam");
- }
- /**
- * @group :
- * @ver : 2010.03.09
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 재조회 popup호출을 할 경우 미기록 정보 존재하는지 확인
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChkSaveData(){
- var sChkChngData = false;
- var sBizLnkFlag = model.getValue(sCondPath+"/bizlnkflag");
- var sTimeFlag = model.getValue(sCondPath+"/timeflag");
- var sRecDd = model.getValue(sCondPath+"/recdd");
- var sRtnMsg = "";
- var sStrTime = "";
- if( sHeader.length < 1 ) return;
- for(var i=1; i <= 25; i++){
- if(sStrTime == ""){
- sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }else{
- sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
- }
- }
- sRowCnt = grd_24hoursclincobsreclist.rows - grd_24hoursclincobsreclist.fixedrows;
- for(var iRow = 1; iRow<=sRowCnt; iRow++){
- sItemCD = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemcd" );
- sItemSeqNO = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemseqno" );
- sRecFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recflag" );
- sRecCharFlag = model.getValue(xHoursClincObsRecList+"["+iRow+"]/reccharflag" );
- sCareRecSeqNo = model.getValue(xHoursClincObsRecList+"["+iRow+"]/carerecseqno");
- sItemNM = model.getValue(xHoursClincObsRecList+"["+iRow+"]/itemnm" );
- sLnkBizCd = model.getValue(xHoursClincObsRecList+"["+iRow+"]/lnkbizcd" );
- sStype = model.getValue(xHoursClincObsRecList+"["+iRow+"]/style" );
- // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
- if(sRecCharFlag == "C" || sRecCharFlag == "" || ( sLnkBizCd == "12" && sStype == "01") ) continue;
- for(var iCol=1; iCol<= 24; iCol++){
- //sRecRslt_BK = model.getValue(xClincObsRecListPath+"[itemcd='"+sItemCD+"' and itemseqno='"+sItemSeqNO+"' and recflag='"+sRecFlag+"']/recrslt"+iCol);
- sRecRslt_BK = model.getValue(xClincObsRecListPath+"[carerecseqno='"+sCareRecSeqNo+"']/recrslt"+iCol);
- sRecRslt = model.getValue(xHoursClincObsRecList+"["+iRow+"]/recrslt"+iCol);
- sStatus = "";
- sResultPath = "";
- //상태값 변경
- if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
- sStatus = "";
- }else if(sRecRslt_BK == "" && sRecRslt == ""){
- sStatus = "";
- }else if(sRecRslt_BK == "" && sRecRslt != ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt == ""){
- sStatus = "U";
- }else if(sRecRslt_BK != "" && sRecRslt_BK != sRecRslt){
- sStatus = "U";
- }
- if(sStatus == "") continue;
- sChkChngData = true;
- }
- }
- // 변경데이터 유뮤 체크
- if(sChkChngData == true){
- sRtnMsg = messageBox("저장하지 않은 데이터가 존재합니다.", "Q003");
- if ( sRtnMsg == 6 ){
- return true;
- }else{
- return false;
- }
- }
- return true;
- }
- /**
- * @group :
- * @ver : 2010.03.15
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 화면 기록 목록 정리 함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCleanPatItemList(pFlag){
- if( fChkSaveData() == false ){
- return;
- }
- var rtnmsg = messageBox("FlowSheet기록 항목을 부서기본 셋 정보로 정리하시겠습니까?\n\n(단, 지속적 물약 및 타기록이 주체인 기록항목은 정리하지 않습니다.)\n", "Q");
- if( rtnmsg == "6" ){
- model.removeNodeset("/root/send");
- model.makeNode("/root/send");
- model.makeValue("/root/send/pid", sPid );
- model.makeValue("/root/send/indd", sIndd );
- model.makeValue("/root/send/cretno", sCretNo );
- model.makeValue("/root/send/deptcd", getUserInfo("dutplcecd") );
- model.makeValue("/root/send/ordtype", sIOFlag );
- model.makeValue("/root/send/inrmdt", getCurrentDate() + getCurrentTime().substr(0,4));
- submit("TXMNR10102", false);
- fSearchClincObsRec(pFlag);
- }
- }
- /**
- * @group :
- * @ver : 2010.03.17
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 병동메인 Popup 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupNurseMain(pFlag){
- if(pFlag == "N" ) pFlag = "";
- model.setValue(gvMenuParamPath, pFlag);
- open("SMMNW00100", "1", event.clientX , event.clientY);
- //model.setValue(gvMenuParamPath, "");
- }
- /**
- * @group :
- * @ver : 2010.03.18
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 입원전과전실 조회 Popup 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupInOutInfo(){
- var inout_orddd = model.getValue("/root/main/cond/recdd");
- var inout_wardcd = model.getValue("/root/temp/cond/wardcdgrup/wardcdgruplist");
- var param = inout_orddd + "▩" + inout_wardcd;
- setParameter("SMMNW01100_PARAM1", param);
- modal("SMMNW01100",1,50,250);
- }
- /**
- * @group :
- * @ver : 2010.03.18
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 통합검사결과 조회 Popup 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupProc(){
- open("SMAER00800", "1", event.clientX , event.clientY);
- }
- /**
- * @group :
- * @ver : 2010.03.18
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 내환자세팅 Popup 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupMyPatSetting(){
- setParameter("wardcd", sUserDeptCd);
- setParameter("userid", sUserId );
- setParameter("usernm", sUserNm);
- modal("SMMNB00400","1" ,event.clientX , event.clientY);
- //------------(20110209) 경북대
- //내환자 조회
- //fGetSettingPatientList("false");
- //내환자 조회-임상관찰기록용
- fGetSettingPatientList_type2();
- //------------(20110209) 경북대
- if( cmb_patlist.value == ""){
- if( getNodesetCount("/root/temp/cond/settingpatient/settingpatientlist") > 0){
- fSetParam("SettingPat", 1);
- }
- }else{
- cmb_mypatlist.value = cmb_patlist.value;
- }
- }
- //--------------(20110209) 경북대
- /**
- * @group :
- * @ver : 2010.12.09
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호일지용 내환자 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetSettingPatientList_type2(pFlag){
- //model.removenode("/root/send");
- var sRefresh = "true";
- if( !isNull(pFlag)){
- sRefresh = pFlag
- }
- if(submit("TRMNR00919", sRefresh)){
- }
- }
- //--------------(20110209) 경북대
- /**
- * @group :
- * @ver : 2010.03.24
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Fluid Item 추가 화면 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPopupAddFluid(){
- //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
- //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
- if( fChkSaveData() == false ) return;
- var sParamValue = "flag▦itemcd▦itemnm▦pid▦orddd▦cretno▦ordtype▦lnkbizcd▩";
- sParamValue += "Flow" +"▦"
- + "" +"▦"
- + "" +"▦"
- + sPid +"▦"
- + sIndd +"▦"
- + sCretNo +"▦"
- + sIOFlag +"▦"
- + "12" +"▩";
- setParameter("SPMNR06001_Param", sParamValue);
- modal("SPMNR06001","1" ,event.clientX , event.clientY);
- //약,주사 입력 화면에서 Item추가 후 Param 정보가 있을 경우 처리
- if( getParameter("SPMNR06000_ReturnSaveInfo") != "" ){
- fSearchClincObsRec("24hours");
- }
- //parameter 정보 초기화
- clearParameter("SPMNR06001_Param");
- clearParameter("SPMNR06000_ReturnSaveInfo");
- }
- /**
- * @group :
- * @ver : 2010.05.28
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 기능 구현(Copy)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlGridCopy(){
- var sCells = grd_24hoursclincobsreclist.selectedCells;
- if( sCells.length < 2 ) return;
- var sStartIdxCol = sCells.item(0).col;
- var sStartIdxRow = sCells.item(0).row;
- var sStartData = grd_24hoursclincobsreclist.valueMatrix(sStartIdxRow, sStartIdxCol);
- var sCmbAttrCD = grd_24hoursclincobsreclist.valueMatrix(sStartIdxRow, grd_24hoursclincobsreclist.colRef("attrcd"));
- if( sStartData == "" ) return;
- for(var k = 1 ; k < sCells.length ; k ++){
- var irow = sCells.item(k).row;
- var icol = sCells.item(k).col;
- if( sCmbAttrCD == "" ){
- if( grd_24hoursclincobsreclist.isReadOnly(irow, icol) == false && icol != grd_24hoursclincobsreclist.colRef("itemnm") && grd_24hoursclincobsreclist.valueMatrix(irow, icol) == "" ){
- if( grd_24hoursclincobsreclist.valueMatrix(irow, grd_24hoursclincobsreclist.colRef("attrcd")) == "" ){
- grd_24hoursclincobsreclist.valueMatrix(irow, icol) = sStartData;
- }else{
- grd_24hoursclincobsreclist.valueMatrix(irow, icol) = sStartData;
- grd_24hoursclincobsreclist.cellComboNodeset(irow, icol) = sAttrListPath1+"[supcd='"+sCmbAttrCD+"']";
- }
- }
- }else{
- if( sCmbAttrCD == grd_24hoursclincobsreclist.valueMatrix(irow, grd_24hoursclincobsreclist.colRef("attrcd")) ){
- grd_24hoursclincobsreclist.valueMatrix(irow, icol) = sStartData;
- grd_24hoursclincobsreclist.cellComboNodeset(irow, icol) = sAttrListPath1+"[supcd='"+sCmbAttrCD+"']";
- }
- }
- }
- }
- /**
- * @group :
- * @ver : 2010.05.28
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 기능 구현(Clean)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlGridClean(){
- var sCells = grd_24hoursclincobsreclist.selectedCells;
- if( sCells.length > 1){
- var msg = messageBox("선택한 영역의 데이터를 삭제하시겠습니까?\n단 연동 항목 및 합계 부분 제외", "Q");
- if( msg == "6" ){
- for(var i = 0 ; i < sCells.length ; i ++){
- var col = sCells.item(i).col;
- var row = sCells.item(i).row;
- if( grd_24hoursclincobsreclist.isReadOnly(row, col, row, col) == false && col != grd_24hoursclincobsreclist.colRef("itemnm") ){
- grd_24hoursclincobsreclist.valueMatrix(row, col) = "";
- }
- }
- }
- }else{
- for(var i = 0 ; i < sCells.length ; i ++){
- var col = sCells.item(i).col;
- var row = sCells.item(i).row;
- if( grd_24hoursclincobsreclist.isReadOnly(row, col) == false && col != grd_24hoursclincobsreclist.colRef("itemnm") ){
- grd_24hoursclincobsreclist.valueMatrix(row, col) = "";
- }
- }
- }
- }
- /**
- * @group :
- * @ver : 2010.05.28
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 바코드 출력 기능 추가
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPrintPatLabel(){
- //설정된 상단정보를 불러옴
- sPamInfo = getGlobalVariable("paminfo");
- model.removenodeset(xPamInfoPath);
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
- var xPathBarCdNode = "/root/barcdtemp/barcdprntsetup";
- if (model.getValue(xPamInfoPath+"/pid") != "") { //상단정보에 환자가 셋팅되어 있을 경우
- var pid, indd, cretno, mskind, histstat;
- model.removenode("/root/send");
- model.removenode(xPathBarCdNode);
- model.makenode(xPathBarCdNode);
- model.makeValue("/root/send/scrnid", "SMMNR00600");
- var comport = "1";
- if(submit("TRLLC90101")){
- comport = model.getValue(xPathBarCdNode+"/prntsetupinfo/setupinfo[1]/comm02/comm");
- }
- // 바코드OCX 생성
- //2. 바코드 라벨 환경설정
- var barcdRef = xPathBarCdNode+"/prntsetupinfo/setupinfo";
- lzzfMakeBrcdPrntObjHanDo("CommAX", barcdRef);
- BarCdpid = model.getValue(xPamInfoPath+"/pid");
- BarCdindd = model.getValue(xPamInfoPath+"/indd");
- BarCdcretno = model.getValue(xPamInfoPath+"/cretno");
- BarCdmskind = model.getValue(xPamInfoPath+"/mskind");
- BarCdhiststat = model.getValue(xPamInfoPath+"/histstat");
- model.makeNode("/root/send/data17");
- model.makeNode("/root/hidden/h_receipt/receipt");
- //원무 메소드 호출
- //fInPatBarCodePrn(pid, indd, cretno, mskind, histstat, comport);
- /* 삭제된 파라미터 : pPort - COM Port 지정값
- * 추가된 파라미터 : pSetyn - 프린터설정정보 셋팅여부
- * pScrid - 프린터설정정보 조회용 화면 아이디
- * pBarcdRef - 설정정보 xpath
- */
- pmifPrintBarCode(BarCdpid, BarCdindd, BarCdcretno, BarCdmskind, BarCdhiststat, "N", "SMMNR00600", barcdRef); // 20090527 변경됨.
- } else {
- messageBox("환자를 선택 후 출력하십시오", "I");
- }
- }
- /**
- * @group :
- * @ver : 2010.07.22
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FlowSheet 조회분류 전체 선택 / 취소 기능
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlChkClsInfo(){
- if( sSclsChkFlag == "N" ){
- var sSrchClsInfoList = "";
- for( var i = 1 ; i <= getNodesetCount("/root/init/clsinfo/clslist") ; i ++ ){
- if(sSrchClsInfoList == ""){
- sSrchClsInfoList += model.getValue("/root/init/clsinfo/clslist["+i+"]/itemcd");
- }else{
- sSrchClsInfoList += " " + model.getValue("/root/init/clsinfo/clslist["+i+"]/itemcd");
- }
- }
- model.setValue("/root/main/cond/hoursclsinfo", sSrchClsInfoList);
- sSclsChkFlag = "Y";
- }else{
- model.setValue("/root/main/cond/hoursclsinfo", "");
- sSclsChkFlag = "N";
- }
- chk_24hoursclslist.refresh();
- }
- /**
- * @group :
- * @ver : 2011.03.02
- * @by : 안도영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 구역정보 조회 및 내환자정보 숨기기 (응급실인 경우)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetWardChngInfo(initFlag, pFlag){
- if(initFlag=="Y") {
- var sWardCD = model.getValue(xPamInfoPath+"/wardcd");
- }
- else{
- var sWardCD = model.getValue("/root/main/cond/wardcd");
- }
- if ( sWardCD == eERDEPTCD) {
- eERFLAG = "Y";
- }else{
- eERFLAG = "";
- }
- //응급실인 경우 구역정보 추가조회
- if(eERFLAG == "Y"){ // 응급실
- fGetZoneList();
- cap_ward.attribute("text") = "구 역 :";
- cmb_zone.visible = "true";
- cmb_erpat.visible = "true";
- cmb_roomlist.visible = "false";
- cmb_patlist.visible = "false";
- cmb_mypatlist.visible = "false";
- cap_mypat.visible = "false";
- ipt_pid.visible = "false";
- cap_ward.attribute("left") = 177; // (기존위치 + 35)
- cmb_zone.attribute("left") = 245;
- cap_patnm_pid.attribute("left") = 340;
- cmb_wardlist.attribute("width") = 97; // (기존 폭 + 30)
- if(pFlag != "SrchPat"){ // 환자를 직접 선택한 경우엔 구역정보 보존
- // 처음 상단 정보로 화면 열릴 때
- if(initFlag=="Y"){
- model.setValue("/root/main/cond/zonecd", (model.getValue(xPamInfoPath+"/sectioncd") == "") ? "-" : model.getValue(xPamInfoPath+"/sectioncd"));
- }else{
- model.setValue("/root/main/cond/zonecd", "-"); // 'All'로 default
- }
- }
- }else{
- cap_ward.attribute("text") = "병 실 :";
- cmb_zone.visible = "false";
- cmb_erpat.visible = "false";
- cmb_roomlist.visible = "true";
- cmb_patlist.visible = "true";
- cmb_mypatlist.visible = "true";
- cap_mypat.visible = "true";
- ipt_pid.visible = "true";
- cap_ward.attribute("left") = 142; // (기존위치)
- cmb_zone.attribute("left") = 210;
- cap_patnm_pid.attribute("left") = 305;
- cmb_wardlist.attribute("width") = 67; // (기존 폭)
- model.setValue("/root/main/cond/zonecd", "");
- // 구분 조건 default
- //model.setValue(xRecSrchCondPath+"/recsrchflag", "DR^ER"); // DR : 타기록지연계, ER : 응급실 간호일지만
- }
- cmb_zone.refresh();
- cap_ward.refresh();
- cmb_roomlist.refresh();
- cap_mypat.refresh();
- cmb_mypatlist.refresh();
- }
- /**
- * @group :
- * @ver : 2011.03.09
- * @by : 안도영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 현재 선택/저장한 환자의 combo 재선택 (응급실인 경우)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fNextSelectErPat(sobj){
- var tempPid = "";
- var sPosition = 0;
- if ( gcurrentpid != "") {
- for(i = 1; i <= getNodesetCount(erPatPidPath); i++ ) {
- tempPid = model.getValue(erPatPidPath + "["+ i +"]/pid");
- if (gcurrentpid == tempPid) {
- sPosition = i;
- break;
- }
- }
- }
- if(sPosition == getNodesetCount(erPatPidPath)){
- sobj.select(0); // 마지막 환자인 경우 처음 환자로 재 선택
- }else{
- sobj.select(sPosition);
- }
- }
- /**
- * @author : dhkim
- * @create : 20080827
- * @desc : 해당환자가 중환자실 환자인가?
- * @return : boolean (true/false)
- */
- function fIsICUPatient(wardcd){
- var ret = false;//icu 환자인지 여부 디폴트
- //중증도 기록에서 사용하는 부서코드 조회_20090414_SMY추가
- for(i = 1; i <= getNodesetCount("/root/init/icucdgrup/icucdgruplist"); i++){
- if(wardcd == model.getValue("/root/init/icucdgrup/icucdgruplist[" + i + "]/wardcd")
- && model.getValue("/root/init/icucdgrup/icucdgruplist[" + i + "]/clsflag") == '4'){
- ret = true;
- return true;
- }
- }
- return ret;
- }
|