SMMNR10100_FlowSheet.xfdl 426 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNR10100" position="absolute 0 0 1213 870" titletext="FlowSheet" oninit="SMMNR10100_oninit" onload="SMMNR10100_onload" onclose="SMMNR10100_onclose" ontimer="SMMNR10100_ontimer">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 2 1208 60" id="group1">
  8. <Layouts>
  9. <Layout>
  10. <Div position="absolute 257 0 1177 25" id="grp_outpatinfo" visible="false" taborder="2" anchor="default">
  11. <Layouts>
  12. <Layout>
  13. <Static position="absolute 91 4 198 20" id="caption18" anchor="default" style="font:Dotum,9,bold;"/>
  14. <Static text="등록번호 :" position="absolute 25 5 93 21" id="caption14" anchor="default" style="color:blue;font:Dotum,9,bold;"/>
  15. <Static text="환자명 :" position="absolute 205 5 260 21" id="caption15" anchor="default" style="color:blue;font:Dotum,9,bold;"/>
  16. <Static text="S/A :" position="absolute 385 5 427 21" id="caption16" anchor="default" style="color:blue;font:Dotum,9,bold;"/>
  17. <Static position="absolute 426 4 516 20" id="caption20" anchor="default" style="font:Dotum,9,bold;"/>
  18. <Static position="absolute 262 4 367 20" id="caption19" anchor="default" style="font:Dotum,9,bold;"/>
  19. </Layout>
  20. </Layouts>
  21. </Div>
  22. <Static text="V/S" position="absolute 294 0 475 20" align="align:center middle;" id="cpt_vsinfo2" style="background:transparent;color:blue;align:center middle;font:돋움체,9,bold;" anchor="default" visible="false"/>
  23. <ImageViewer position="absolute 6 11 106 49" id="img_tmp" visible="false" taborder="0" anchor="default"/>
  24. <Static text="FlowSheet&#13;" position="absolute 73 -30 172 -2" id="caption6" class="tit_2" visible="false" anchor="default"/>
  25. <Radio position="absolute 1 5 87 20" id="rdo_srchflag" visible="false" columncount="2" codecolumn="codecolumn" datacolumn="datacolumn" taborder="1" anchor="default">
  26. <Dataset id="innerdataset">
  27. <ColumnInfo>
  28. <Column id="codecolumn"/>
  29. <Column id="datacolumn"/>
  30. </ColumnInfo>
  31. <Rows>
  32. <Row>
  33. <Col id="codecolumn">1</Col>
  34. <Col id="datacolumn">병동</Col>
  35. </Row>
  36. <Row>
  37. <Col id="codecolumn">2</Col>
  38. <Col id="datacolumn">진료</Col>
  39. </Row>
  40. </Rows>
  41. </Dataset>
  42. </Radio>
  43. <Div position="absolute 0 29 1116 49" align="align:center middle;" id="grp_patinfolist" taborder="4" anchor="default">
  44. <Layouts>
  45. <Layout>
  46. <Static text="중증도&gt;" position="absolute 0 0 46 20" id="cap_serious" visible="false" anchor="default"/>
  47. <Static position="absolute 0 0 29 20" align="align:center middle;" id="cap_seriousvalue1" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  48. <Static text="/" position="absolute 0 0 9 20" align="align:center middle;" id="cap_seriousvalue2" visible="false" anchor="default"/>
  49. <Static position="absolute 0 0 23 20" align="align:center middle;" id="cap_seriousvalue3" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  50. <Static text="Apache&gt;" position="absolute 96 0 149 20" id="cap_apch" visible="false" anchor="default"/>
  51. <Static position="absolute 0 0 23 20" id="cap_apchvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  52. <Static text="HD&gt;" position="absolute 0 0 26 20" id="cap_hd" visible="false" anchor="default"/>
  53. <Static position="absolute 0 0 23 20" id="cap_hdvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  54. <Static text="ICUD&gt;" position="absolute 0 0 38 20" id="cap_icu" visible="false" anchor="default"/>
  55. <Static position="absolute 0 0 56 20" id="cap_icuvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  56. <Static text="OP&gt;" position="absolute 0 0 27 20" id="cap_opdd" visible="false" anchor="default"/>
  57. <Static position="absolute 0 0 72 20" id="cap_opddvalue" visible="false" mask="yyyy-mm-dd" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  58. <Static text="POD&gt;" position="absolute 0 0 35 20" id="cap_pod" visible="false" anchor="default"/>
  59. <Static position="absolute 0 0 23 20" id="cap_podvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  60. <Static text="BMT&gt;" position="absolute 0 0 36 20" id="cap_bmt" visible="false" anchor="default"/>
  61. <Static position="absolute 0 0 23 20" id="cap_bmtvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  62. <Static text="CP&gt;" position="absolute 0 0 27 20" id="cap_cp" visible="false" anchor="default"/>
  63. <Static position="absolute 0 0 23 20" id="cap_cpvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  64. <Static text="D&gt;" position="absolute 0 0 18 20" id="cap_d" visible="false" anchor="default"/>
  65. <Static position="absolute 0 0 23 20" id="cap_dvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  66. <Static text="신장&gt;" position="absolute 0 0 34 20" id="cap_height" visible="false" anchor="default"/>
  67. <Static position="absolute 0 0 35 20" id="cap_heightvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  68. <Static text="체중&gt;" position="absolute 0 0 34 20" id="cap_weight" visible="false" onclick="group1_grp_patinfolist_cap_weight_onclick" tooltiptext="클릭시 체중 누적조회 화면이 호출됩니다" anchor="default"/>
  69. <Static text="&#13;&#10; " position="absolute 0 0 35 20" id="cap_weightvalue" visible="false" onclick="group1_grp_patinfolist_cap_weightvalue_onclick" tooltiptext="클릭시 체중 누적조회 화면이 호출됩니다." anchor="default" style="color:blue;font:돋움,9,bold;"/>
  70. <Static text="혈액&gt;" position="absolute 0 0 34 20" id="cap_blood" visible="false" anchor="default"/>
  71. <Static position="absolute 0 0 15 20" align="align:center middle;" id="cap_bloodvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  72. <Static text="전실&gt;" position="absolute 0 0 34 20" id="cap_chngroom" visible="false" anchor="default"/>
  73. <Static position="absolute 0 0 15 20" align="align:center middle;" id="cap_chngroomvalue" visible="false" anchor="default" style="color:blue;font:돋움,9,bold;"/>
  74. <Static text="출생일&gt;" position="absolute 0 0 46 20" id="cap_brthdd" visible="false" onclick="group1_grp_patinfolist_cap_brthdd_onclick" tooltiptext="클릭시 출생일 정보 등록 화면이 호출됩니다" anchor="default"/>
  75. <Static text="&#13;&#10; " position="absolute 0 -1 72 19" align="align:left top;" id="cap_brthddvalue" visible="false" mask="yyyy-mm-dd" onclick="group1_grp_patinfolist_cap_brthddvalue_onclick" tooltiptext="클릭시 출생일 정보 등록 화면이 호출됩니다." anchor="default" style="color:blue;font:돋움,9,bold;"/>
  76. </Layout>
  77. </Layouts>
  78. </Div>
  79. <Div position="absolute 1098 25 1205 54" id="grp_meetinfo" taborder="5" anchor="default">
  80. <Layouts>
  81. <Layout>
  82. <Static text="AM&gt;" position="absolute 17 2 51 15" id="cap_familymeetam" visible="false" anchor="default" onclick="group1_grp_meetinfo_cap_familymeetamvalue_onclick"/>
  83. <Static position="absolute 47 2 108 14" id="cap_familymeetamvalue" visible="false" anchor="default" onclick="group1_grp_meetinfo_cap_familymeetamvalue_onclick" wordwrap="none" style="color:blue;font:Dotum,9,bold;"/>
  84. <Static text="PM&gt;" position="absolute 17 15 51 27" id="cap_familymeetpm" visible="false" anchor="default" onclick="group1_grp_meetinfo_cap_familymeetpmvalue_onclick"/>
  85. <Static position="absolute 47 15 108 27" id="cap_familymeetpmvalue" visible="false" onclick="group1_grp_meetinfo_cap_familymeetpmvalue_onclick" tooltiptext="클릭시 환자 면회 및 교육 관리 화면이 호출됩니다." anchor="default" wordwrap="none" style="color:blue;font:Dotum,9,bold;"/>
  86. </Layout>
  87. </Layouts>
  88. </Div>
  89. <Button position="absolute 1185 1 1208 24" id="btn_lnktopinfo" text="" onclick="group1_btn_lnktopinfo_onclick" class="icon_redo" taborder="6" anchor="default"/>
  90. <TextArea id="cpt_vsinfo" taborder="8" wordwrap="word" readonly="true" position="absolute 112 0 283 28" anchor="top right" style="padding:1 1 1 1;background:stretch 5,5;color:blue;align:center middle;font:돋움체,9,bold;" align="align:center middle;"/>
  91. <Div id="grp_oderinpatinfo" taborder="9" class="div_SA" visible="false" position="absolute 284 0 1181 25">
  92. <Layouts>
  93. <Layout>
  94. <Static id="caption17" text="진료과 :" class="search_name" position="absolute 5 4 69 21" anchor="default"/>
  95. <Static id="caption21" text="담당교수 :" class="search_name" position="absolute 201 4 273 21" anchor="default"/>
  96. <Static id="caption22" text="담당의 :" class="search_name" position="absolute 361 4 424 21" anchor="default"/>
  97. <Static id="caption23" text="환자명/등록번호 :" class="search_name" position="absolute 509 4 631 21" anchor="default"/>
  98. <Combo id="cmb_deptlist" taborder="1" innerdataset="ds_init_cmb_deptlist" codecolumn="deptcd" datacolumn="depthngnm" onitemchanged="group1_grp_oderinpatinfo_cmb_deptlist_onitemchanged" class="combo_s_essential" position="absolute 67 3 194 22" anchor="default"/>
  99. <Combo id="cmb_medispcllist" taborder="2" innerdataset="ds_init_cmb_medispcllist" codecolumn="userid" datacolumn="usernm" onitemchanged="group1_grp_oderinpatinfo_cmb_medispcllist_onitemchanged" class="combo_s_essential" position="absolute 279 3 354 22" anchor="default"/>
  100. <Combo id="cmb_atdoctlist" taborder="3" innerdataset="ds_init_cmb_atdoctlist" codecolumn="userid" datacolumn="usernm" onitemchanged="group1_grp_oderinpatinfo_cmb_atdoctlist_onitemchanged" class="combo_s_essential" position="absolute 428 3 503 22" anchor="default"/>
  101. <Combo id="cmb_oderpatlist" taborder="4" innerdataset="ds_data_patientgruplist" codecolumn="pid" datacolumn="patientnm" onitemchanged="group1_grp_oderinpatinfo_cmb_oderpatlist_onitemchanged" class="combo_s_essential" position="absolute 633 3 723 22" anchor="default"/>
  102. <Edit id="ipt_orderpid" taborder="5" enable="false" position="absolute 724 3 794 22" anchor="default"/>
  103. <CheckBox id="chk_mypatchk" taborder="6" text="내환자 포함" value="Y" truevalue="Y" falsevalue="N" onclick="group1_grp_oderinpatinfo_chk_mypatchk_onclick" position="absolute 798 4 889 19" anchor="default"/>
  104. </Layout>
  105. </Layouts>
  106. </Div>
  107. <Div id="grp_inpatinfo" taborder="10" class="div_SA2" position="absolute 284 2 1183 28" visible="false">
  108. <Layouts>
  109. <Layout>
  110. <Static id="caption33" text="병 동 :" class="search_name" position="absolute 8 3 58 23" anchor="default"/>
  111. <Static id="cap_ward" text="병 실 :" class="search_name" position="absolute 142 3 195 23" anchor="default"/>
  112. <Static id="cap_mypat" text="내환자 정보 :" onclick="group1_grp_inpatinfo_cap_mypat_onclick" class="search_name" position="absolute 592 3 685 23" tooltiptext="클릭시 내환자세팅 화면이 호출됩니다." anchor="default"/>
  113. <Combo id="cmb_wardlist" taborder="1" innerdataset="ds_data_wardcdgruplist" codecolumn="wardcd" datacolumn="wardnm" onitemchanged="group1_grp_inpatinfo_cmb_wardlist_onitemchanged" class="combo_s_essential" position="absolute 64 3 136 23" style="background:URL('theme://images/bg_edit_N.png') stretch 5,5;" anchor="default"/>
  114. <Combo id="cmb_roomlist" taborder="2" innerdataset="ds_data_roomcdgruplist" codecolumn="roomcd" datacolumn="roomnm" onitemchanged="group1_grp_inpatinfo_cmb_roomlist_onitemchanged" class="combo_s_essential" position="absolute 196 3 282 22" anchor="default"/>
  115. <Edit id="ipt_pid" taborder="3" autoselect="true" position="absolute 506 3 588 22" style="background:URL('theme://images/bg_edit_N.png') stretch 5,5;" anchor="default"/>
  116. <Combo id="cmb_mypatlist" taborder="4" innerdataset="@ds_data_settingpatientlist" codecolumn="pid" datacolumn="etcinfo" onitemchanged="group1_grp_inpatinfo_cmb_mypatlist_onitemchanged" class="combo_s_essential" position="absolute 686 3 897 23" anchor="default"/>
  117. <Combo id="cmb_zone" taborder="5" innerdataset="ds_temp_zoneinfo_zonelist" codecolumn="bedcd" datacolumn="bednm" onitemchanged="group1_grp_inpatinfo_cmb_zone_onitemchanged" class="combo_search" visible="false" position="absolute 196 3 282 23" style="background:URL('theme://images/bg_edit_N.png') stretch 5,5;" anchor="default"/>
  118. <Combo id="cmb_patlist" taborder="6" innerdataset="ds_data_patientgruplist" codecolumn="pid" datacolumn="patientnm" onitemchanged="group1_grp_inpatinfo_cmb_patlist_onitemchanged" class="combo_s_essential" position="absolute 419 3 505 22" anchor="default"/>
  119. <Static id="cap_patnm_pid" text="환자명 / 등록번호 :" class="search_name" position="absolute 287 3 414 23" anchor="default"/>
  120. <Combo id="cmb_erpat" taborder="7" innerdataset="@ds_data_patientgruplist" codecolumn="pid" datacolumn="etcinfo" onitemchanged="group1_grp_inpatinfo_cmb_erpat_onitemchanged" class="combo_s_essential" visible="false" position="absolute 419 3 634 23" displayrowcount="40" anchor="default"/>
  121. </Layout>
  122. </Layouts>
  123. </Div>
  124. </Layout>
  125. </Layouts>
  126. </Div>
  127. <Div position="absolute 2 89 1208 837" id="group4" anchor="left top bottom">
  128. <Layouts>
  129. <Layout>
  130. <Grid id="grd_24hoursclincobsreclist" taborder="1" autoenter="key" useinputpanel="false" selecttype="multiarea" extendsizetype="row" cellsizingtype="col" autosizingtype="none" treeusecheckbox="false" treeuseimage="false" treeinitstatus="expand,null" position="absolute 0 248 1206 739" style="background:transparent;color:black;align:center middle;" autofittype="none" mergeview="scrollview" useselcolor="true" anchor="left top bottom" oncellclick="group4_grd_24hoursclincobsreclist_oncellclick" oncelldblclick="group4_grd_24hoursclincobsreclist_oncelldblclick" oncloseup="group4_grd_24hoursclincobsreclist_oncloseup" ondropdown="group4_grd_24hoursclincobsreclist_ondropdown" onkeydown="group4_grd_24hoursclincobsreclist_onkeydown" onmouseleave="group4_grd_24hoursclincobsreclist_onmouseleave" onrbuttonup="group4_grd_24hoursclincobsreclist_onrbuttonup" binddataset="ds_grd_24hoursclincobsreclist" onheadclick="group4_grd_24hoursclincobsreclist_onheadclick" onenteredit="group4_grd_24hoursclincobsreclist_onenteredit" onlbuttondown="group4_grd_24hoursclincobsreclist_onlbuttondown" scrollbars="alwaysvert" onlbuttonup="group4_grd_24hoursclincobsreclist_onlbuttonup" onkillfocus="group4_grd_24hoursclincobsreclist_onkillfocus" onselectchanged="group4_grd_24hoursclincobsreclist_onselectchanged" cantreestatuschange="group4_grd_24hoursclincobsreclist_cantreestatuschange" ontextchanged="group4_grd_24hoursclincobsreclist_ontextchanged" usecontrolkey="true" onmousemove="group4_grd_24hoursclincobsreclist_onmousemove">
  131. <Formats>
  132. <Format id="default">
  133. <Columns>
  134. <Column size="200" band="left"/>
  135. <Column size="41"/>
  136. <Column size="41"/>
  137. <Column size="41"/>
  138. <Column size="41"/>
  139. <Column size="41"/>
  140. <Column size="41"/>
  141. <Column size="41"/>
  142. <Column size="41"/>
  143. <Column size="41"/>
  144. <Column size="41"/>
  145. <Column size="41"/>
  146. <Column size="41"/>
  147. <Column size="41"/>
  148. <Column size="41"/>
  149. <Column size="41"/>
  150. <Column size="41"/>
  151. <Column size="41"/>
  152. <Column size="41"/>
  153. <Column size="41"/>
  154. <Column size="41"/>
  155. <Column size="41"/>
  156. <Column size="41"/>
  157. <Column size="41"/>
  158. <Column size="41"/>
  159. <Column size="0"/>
  160. <Column size="0"/>
  161. <Column size="0"/>
  162. <Column size="0"/>
  163. <Column size="0"/>
  164. <Column size="0"/>
  165. <Column size="0"/>
  166. <Column size="0"/>
  167. <Column size="0"/>
  168. <Column size="0"/>
  169. <Column size="0"/>
  170. <Column size="0"/>
  171. <Column size="0"/>
  172. <Column size="0"/>
  173. <Column size="0"/>
  174. <Column size="0"/>
  175. <Column size="0"/>
  176. <Column size="0"/>
  177. <Column size="0"/>
  178. <Column size="0"/>
  179. <Column size="0"/>
  180. <Column size="0"/>
  181. <Column size="0"/>
  182. <Column size="0"/>
  183. <Column size="0"/>
  184. <Column size="0"/>
  185. </Columns>
  186. <Rows>
  187. <Row size="24" band="head"/>
  188. <Row size="24" band="head"/>
  189. <Row size="24"/>
  190. </Rows>
  191. <Band id="head">
  192. <Cell style="align:left;padding:0 0 0 0;"/>
  193. <Cell col="1"/>
  194. <Cell col="2"/>
  195. <Cell col="3"/>
  196. <Cell col="4"/>
  197. <Cell col="5"/>
  198. <Cell col="6"/>
  199. <Cell col="7"/>
  200. <Cell col="8"/>
  201. <Cell col="9"/>
  202. <Cell col="10"/>
  203. <Cell col="11"/>
  204. <Cell col="12"/>
  205. <Cell col="13"/>
  206. <Cell col="14"/>
  207. <Cell col="15"/>
  208. <Cell col="16"/>
  209. <Cell col="17"/>
  210. <Cell col="18"/>
  211. <Cell col="19"/>
  212. <Cell col="20"/>
  213. <Cell col="21"/>
  214. <Cell col="22"/>
  215. <Cell col="23"/>
  216. <Cell col="24"/>
  217. <Cell col="25" text="itemcd"/>
  218. <Cell col="26" text="itemseqno"/>
  219. <Cell col="27" text="recflag"/>
  220. <Cell col="28" text="attrcd"/>
  221. <Cell col="29" text="wardcd"/>
  222. <Cell col="30" text="roomcd"/>
  223. <Cell col="31" text="depth"/>
  224. <Cell col="32" text="recfromdt"/>
  225. <Cell col="33" text="rectodt"/>
  226. <Cell col="34" text="reccharflag"/>
  227. <Cell col="35" text="supcd"/>
  228. <Cell col="36" text="subtata"/>
  229. <Cell col="37" text="color"/>
  230. <Cell col="38" text="style"/>
  231. <Cell col="39" text="subtotalyn"/>
  232. <Cell col="40" text="subtotalnm"/>
  233. <Cell col="41" text="runtotalyn"/>
  234. <Cell col="42" text="runtotalnm"/>
  235. <Cell col="43"/>
  236. <Cell col="44"/>
  237. <Cell col="45"/>
  238. <Cell col="46"/>
  239. <Cell col="47"/>
  240. <Cell col="48"/>
  241. <Cell col="49"/>
  242. <Cell col="50"/>
  243. <Cell row="1" style="align:left;padding:0 0 0 0;"/>
  244. <Cell row="1" col="1"/>
  245. <Cell row="1" col="2"/>
  246. <Cell row="1" col="3"/>
  247. <Cell row="1" col="4"/>
  248. <Cell row="1" col="5"/>
  249. <Cell row="1" col="6"/>
  250. <Cell row="1" col="7"/>
  251. <Cell row="1" col="8"/>
  252. <Cell row="1" col="9"/>
  253. <Cell row="1" col="10"/>
  254. <Cell row="1" col="11"/>
  255. <Cell row="1" col="12"/>
  256. <Cell row="1" col="13"/>
  257. <Cell row="1" col="14"/>
  258. <Cell row="1" col="15"/>
  259. <Cell row="1" col="16"/>
  260. <Cell row="1" col="17"/>
  261. <Cell row="1" col="18"/>
  262. <Cell row="1" col="19"/>
  263. <Cell row="1" col="20"/>
  264. <Cell row="1" col="21"/>
  265. <Cell row="1" col="22"/>
  266. <Cell row="1" col="23"/>
  267. <Cell row="1" col="24"/>
  268. <Cell row="1" col="25"/>
  269. <Cell row="1" col="26"/>
  270. <Cell row="1" col="27"/>
  271. <Cell row="1" col="28"/>
  272. <Cell row="1" col="29"/>
  273. <Cell row="1" col="30"/>
  274. <Cell row="1" col="31"/>
  275. <Cell row="1" col="32"/>
  276. <Cell row="1" col="33"/>
  277. <Cell row="1" col="34"/>
  278. <Cell row="1" col="35"/>
  279. <Cell row="1" col="36"/>
  280. <Cell row="1" col="37"/>
  281. <Cell row="1" col="38"/>
  282. <Cell row="1" col="39"/>
  283. <Cell row="1" col="40"/>
  284. <Cell row="1" col="41"/>
  285. <Cell row="1" col="42"/>
  286. <Cell row="1" col="43"/>
  287. <Cell row="1" col="44"/>
  288. <Cell row="1" col="45"/>
  289. <Cell row="1" col="46"/>
  290. <Cell row="1" col="47"/>
  291. <Cell row="1" col="48"/>
  292. <Cell row="1" col="49"/>
  293. <Cell row="1" col="50"/>
  294. </Band>
  295. <Band id="body">
  296. <Cell displaytype="tree" edittype="tree" style="align:left middle;padding:0 0 0 0;line:BIND(line0);linetype:BIND(linetype0);background:BIND(backcolor0);background2:BIND(backcolor0);color:BIND(fontcolor0);color2:BIND(fontcolor0);controlalign:left;" text="bind:itemnm" wordwrap="char" treestartlevel="1" treelevel="bind:depth" tooltiptype="left" autosizerow="limitmin"/>
  297. <Cell col="1" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line1);linetype:BIND(linetype1);background:BIND(backcolor1);background2:BIND(backcolor1);color:BIND(fontcolor1);color2:BIND(fontcolor1);backgroundimage:BIND(backimage1);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt1" wordwrap="char" editacceptsdirectionkey="true" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  298. <Cell col="2" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line2);linetype:BIND(linetype2);background:BIND(backcolor2);background2:BIND(backcolor2);color:BIND(fontcolor2);color2:BIND(fontcolor2);backgroundimage:BIND(backimage2);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt2" wordwrap="char" editacceptsdirectionkey="true" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  299. <Cell col="3" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line3);linetype:BIND(linetype3);background:BIND(backcolor3);background2:BIND(backcolor3);color:BIND(fontcolor3);color2:BIND(fontcolor3);backgroundimage:BIND(backimage3);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt3" wordwrap="char" editacceptsdirectionkey="true" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  300. <Cell col="4" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line4);linetype:BIND(linetype4);background:BIND(backcolor4);background2:BIND(backcolor4);color:BIND(fontcolor4);color2:BIND(fontcolor4);backgroundimage:BIND(backimage4);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt4" wordwrap="char" editacceptsdirectionkey="true" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  301. <Cell col="5" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line5);linetype:BIND(linetype5);background:BIND(backcolor5);background2:BIND(backcolor5);color:BIND(fontcolor5);color2:BIND(fontcolor5);backgroundimage:BIND(backimage5);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt5" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  302. <Cell col="6" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;linetype:BIND(linetype6);background:BIND(backcolor6);background2:BIND(backcolor6);color:BIND(fontcolor6);color2:BIND(fontcolor6);backgroundimage:BIND(backimage6);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt6" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  303. <Cell col="7" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line7);linetype:BIND(linetype7);background:BIND(backcolor7);background2:BIND(backcolor7);color:BIND(fontcolor7);color2:BIND(fontcolor7);backgroundimage:BIND(backimage7);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt7" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  304. <Cell col="8" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line8);linetype:BIND(linetype8);background:BIND(backcolor8);background2:BIND(backcolor8);color:BIND(fontcolor8);color2:BIND(fontcolor8);backgroundimage:BIND(backimage8);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt8" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  305. <Cell col="9" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line9);linetype:BIND(linetype9);background:BIND(backcolor9);background2:BIND(backcolor9);color:BIND(fontcolor9);color2:BIND(fontcolor9);backgroundimage:BIND(backimage9);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt9" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  306. <Cell col="10" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line10);linetype:BIND(linetype10);background:BIND(backcolor10);background2:BIND(backcolor10);color:BIND(fontcolor10);color2:BIND(fontcolor10);backgroundimage:BIND(backimage10);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt10" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  307. <Cell col="11" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line11);linetype:BIND(linetype11);background:BIND(backcolor11);background2:BIND(backcolor11);color:BIND(fontcolor11);color2:BIND(fontcolor11);backgroundimage:BIND(backimage11);controlbuttonsize: ;controlalign:left top;" text="bind:recrslt11" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  308. <Cell col="12" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line12);linetype:BIND(linetype12);background:BIND(backcolor12);background2:BIND(backcolor12);color:BIND(fontcolor12);color2:BIND(fontcolor12);backgroundimage:BIND(backimage12);controlalign:left top;" text="bind:recrslt12" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  309. <Cell col="13" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line13);linetype:BIND(linetype13);background:BIND(backcolor13);background2:BIND(backcolor13);color:BIND(fontcolor13);color2:BIND(fontcolor13);backgroundimage:BIND(backimage13);controlalign:left top;" text="bind:recrslt13" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  310. <Cell col="14" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line14);linetype:BIND(linetype14);background:BIND(backcolor14);background2:BIND(backcolor14);color:BIND(fontcolor14);color2:BIND(fontcolor14);backgroundimage:BIND(backimage14);controlalign:left top;" text="bind:recrslt14" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  311. <Cell col="15" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line15);linetype:BIND(linetype15);background:BIND(backcolor15);background2:BIND(backcolor15);color:BIND(fontcolor15);color2:BIND(fontcolor15);backgroundimage:BIND(backimage15);controlalign:left top;" text="bind:recrslt15" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  312. <Cell col="16" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line16);linetype:BIND(linetype16);background:BIND(backcolor16);background2:BIND(backcolor16);color:BIND(fontcolor16);color2:BIND(fontcolor16);backgroundimage:BIND(backimage16);controlalign:left top;" text="bind:recrslt16" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  313. <Cell col="17" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line17);linetype:BIND(linetype17);background:BIND(backcolor17);background2:BIND(backcolor17);color:BIND(fontcolor17);color2:BIND(fontcolor17);backgroundimage:BIND(backimage17);controlalign:left top;" text="bind:recrslt17" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  314. <Cell col="18" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line18);linetype:BIND(linetype18);background:BIND(backcolor18);background2:BIND(backcolor18);color:BIND(fontcolor18);color2:BIND(fontcolor18);backgroundimage:BIND(backimage18);controlalign:left top;" text="bind:recrslt18" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  315. <Cell col="19" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line19);linetype:BIND(linetype19);background:BIND(backcolor19);background2:BIND(backcolor19);color:BIND(fontcolor19);color2:BIND(fontcolor19);backgroundimage:BIND(backimage19);controlalign:left top;" text="bind:recrslt19" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  316. <Cell col="20" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line20);linetype:BIND(linetype20);background:BIND(backcolor20);background2:BIND(backcolor20);color:BIND(fontcolor20);color2:BIND(fontcolor20);backgroundimage:BIND(backimage20);controlalign:left top;" text="bind:recrslt20" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  317. <Cell col="21" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line21);linetype:BIND(linetype21);background:BIND(backcolor21);background2:BIND(backcolor21);color:BIND(fontcolor21);color2:BIND(fontcolor21);backgroundimage:BIND(backimage21);controlalign:left top;" text="bind:recrslt21" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  318. <Cell col="22" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line22);linetype:BIND(linetype22);background:BIND(backcolor22);background2:BIND(backcolor22);color:BIND(fontcolor22);color2:BIND(fontcolor22);backgroundimage:BIND(backimage22);controlalign:left top;" text="bind:recrslt22" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  319. <Cell col="23" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line23);linetype:BIND(linetype23);background:BIND(backcolor23);background2:BIND(backcolor23);color:BIND(fontcolor23);color2:BIND(fontcolor23);backgroundimage:BIND(backimage23);controlalign:left top;" text="bind:recrslt23" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="dropdown" autosizerow="default"/>
  320. <Cell col="24" displaytype="expr:getColumn(currow,'coltype' + self.col) == 'combo'?'combo':'text'" edittype="expr:getColumn(currow,'readonly' + self.col == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' &amp;&amp; (lnkbizcd == '02' || lnkbizcd == '12')))?'none':getColumn(currow,'edittype' + self.col == 'text'?'text':'combo'" style="align:left top;line:BIND(line24);linetype:BIND(linetype24);background:BIND(backimage24);background2:BIND(backimage24);color:BIND(fontcolor24);color2:BIND(fontcolor24);backgroundimage:BIND(backimage24);controlalign:left top;" text="bind:recrslt24" wordwrap="char" combocodecol="attrcd" combodatacol="attrnm" combodisplayrowcount="20" combotype="search" autosizerow="default"/>
  321. <Cell col="25"/>
  322. <Cell col="26"/>
  323. <Cell col="27"/>
  324. <Cell col="28"/>
  325. <Cell col="29"/>
  326. <Cell col="30"/>
  327. <Cell col="31"/>
  328. <Cell col="32"/>
  329. <Cell col="33"/>
  330. <Cell col="34"/>
  331. <Cell col="35"/>
  332. <Cell col="36"/>
  333. <Cell col="37"/>
  334. <Cell col="38"/>
  335. <Cell col="39"/>
  336. <Cell col="40"/>
  337. <Cell col="41"/>
  338. <Cell col="42"/>
  339. <Cell col="43"/>
  340. <Cell col="44"/>
  341. <Cell col="45"/>
  342. <Cell col="46"/>
  343. <Cell col="47"/>
  344. <Cell col="48"/>
  345. <Cell col="49"/>
  346. <Cell col="50"/>
  347. </Band>
  348. </Format>
  349. </Formats>
  350. </Grid>
  351. <Button position="absolute 1189 20 1206 37" id="btn_24hoursup" text="" onclick="group4_btn_24hoursup_onclick" class="icon_up" anchor="left top"/>
  352. <Button position="absolute 1189 218 1206 235" id="btn_24hoursdown" text="" onclick="group4_btn_24hoursdown_onclick" class="icon_down" anchor="left top"/>
  353. <Button position="absolute 5 252 31 271" id="btn_24hoursdetailbefore" class="icon_left" text="" onclick="group4_btn_24hoursdetailbefore_onclick" anchor="default"/>
  354. <Button position="absolute 171 252 197 271" id="btn_24hoursdetailafter" class="icon_right" text="" onclick="group4_btn_24hoursdetailafter_onclick" anchor="default"/>
  355. <ActiveX position="absolute 93 18 1188 236" id="obj_24hourschart" progid="{fab9b41c-87d6-474d-ab7e-f07d78f2422e}" windowed="true" anchor="default"/>
  356. <ActiveX id="obj_viewchart" position="absolute 93 28 1188 246" progid="{fab9b41c-87d6-474d-ab7e-f07d78f2422e}" useautobitmapcache="1" taborder="2" visible="false" anchor="default"/>
  357. <Shape id="Shape00" position="absolute 0 240 1206 253" class="line_10" anchor="default"/>
  358. </Layout>
  359. </Layouts>
  360. </Div>
  361. <Div position="absolute 0 110 72 323" id="grp_chkbox" visible="false">
  362. <Layouts>
  363. <Layout>
  364. <Static text="V/S" position="absolute 2 2 42 22" id="caption25" style="font:돋움체,9,bold;" anchor="default"/>
  365. <Static text="혈압" position="absolute 18 25 46 45" id="caption10" style="font:돋움체,9,bold;" anchor="default"/>
  366. <Static text="맥박" position="absolute 18 45 46 65" id="caption12" style="color:red;font:돋움체,9,bold;" anchor="default"/>
  367. <Static text="호흡" position="absolute 18 65 46 85" id="caption13" style="color:#00ff00ff;font:돋움체,9,bold;" anchor="default"/>
  368. <Static text="체온" position="absolute 18 85 46 105" id="caption24" style="color:#0000ffff;font:돋움체,9,bold;" anchor="default"/>
  369. <Static text="BP(M)" position="absolute 18 105 60 125" id="caption3" style="font:돋움체,9,bold;" anchor="default"/>
  370. <Static text="D:&#13;&#10;" position="absolute 1 141 16 169" id="caption4" style="align:left middle;font:돋움체,9,bold;" onclick="grp_chkbox_caption4_onclick" tooltiptext="클릭시 환자 담당자 등록 화면이 호출됩니다" anchor="default"/>
  371. <Static text="E:&#13;&#10;" position="absolute 1 163 16 191" id="caption26" style="align:left middle;font:돋움체,9,bold;" onclick="grp_chkbox_caption26_onclick" tooltiptext="클릭시 환자 담당자 등록 화면이 호출됩니다" anchor="default"/>
  372. <Static text="N:&#13;&#10;" position="absolute 1 185 16 213" id="caption27" style="align:left middle;font:돋움체,9,bold;" onclick="grp_chkbox_caption27_onclick" tooltiptext="클릭시 환자 담당자 등록 화면이 호출됩니다" anchor="default"/>
  373. <Static position="absolute 13 139 72 159" id="caption28" anchor="default" style="align:left middle;font:Dotum,9,bold;" onclick="grp_chkbox_caption28_onclick"/>
  374. <Static position="absolute 13 161 72 181" id="caption29" anchor="default" style="align:left middle;font:Dotum,9,bold;" onclick="grp_chkbox_caption29_onclick"/>
  375. <Static position="absolute 13 183 72 203" id="caption30" anchor="default" style="align:left middle;font:Dotum,9,bold;" onclick="grp_chkbox_caption30_onclick"/>
  376. <cp_checkboxList id="chk_hourschartinfo" titletext="CheckBox List" taborder="1" text="cp_checkboxList00" scrollbars="none" position="absolute 1 25 16 123" style="background:transparent; " col="1" row="5" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible" anchor="default"/>
  377. </Layout>
  378. </Layouts>
  379. </Div>
  380. <Div position="absolute 0 55 1220 75" id="grp_btnlist" visible="false">
  381. <Layouts>
  382. <Layout>
  383. <Button position="absolute 798 0 862 20" id="btn_srchtest" class="btn2" text="검사조회" onclick="grp_btnlist_btn_srchtest_onclick" anchor="default" style="font:Dotum,8;"/>
  384. <Button position="absolute 679 0 743 20" id="btn_srchrecdata" class="btn2" text="일별조회" onclick="grp_btnlist_btn_srchrecdata_onclick" anchor="default" style="font:Dotum,8;"/>
  385. <Button position="absolute 744 0 797 20" id="btn_cdisopen" class="btn2" text="CDIS" onclick="grp_btnlist_btn_cdisopen_onclick" anchor="default" style="font:Dotum,8;"/>
  386. <Button position="absolute 614 0 678 20" id="btn_EtrlInpt" class="btn2" text="경구입력" onclick="grp_btnlist_btn_EtrlInpt_onclick" anchor="default" style="font:Dotum,8;"/>
  387. <Button position="absolute 863 0 927 20" id="btn_IOSerch" class="btn2" text="I/O조회" onclick="grp_btnlist_btn_IOSerch_onclick" anchor="default" style="font:Dotum,8;"/>
  388. <Button position="absolute 928 0 992 20" id="btn_24hoursnursitem" class="btn2" text="Item세팅" onclick="grp_btnlist_btn_24hoursnursitem_onclick" anchor="default" style="font:Dotum,8;"/>
  389. <Button position="absolute 1036 0 1078 20" id="btn_24refresh" class="btn2" text="조회" onclick="grp_btnlist_btn_24refresh_onclick" anchor="default" style="font:Dotum,8;"/>
  390. <Button position="absolute 1079 0 1143 20" id="btn_tempsave" class="btn2" enable="false" text="임시저장" onclick="grp_btnlist_btn_tempsave_onclick" anchor="default" style="font:Dotum,8;"/>
  391. <Button position="absolute 1144 0 1208 20" id="btn_24hourscertsave" class="btn5" text="인증저장" onclick="grp_btnlist_btn_24hourscertsave_onclick" anchor="default" style="font:Dotum,8;"/>
  392. <Div position="absolute 222 0 608 20" id="grp_wardbtn" visible="false" anchor="default">
  393. <Layouts>
  394. <Layout>
  395. <Button position="absolute 34 0 98 20" id="btn_barcode" class="btn2" text="팔찌출력" anchor="default" onclick="grp_btnlist_grp_wardbtn_btn_barcode_onclick" style="font:Dotum,8;"/>
  396. <Button position="absolute 99 0 152 20" id="btn_nurse" class="btn2" text="Nurse" anchor="default" onclick="grp_btnlist_grp_wardbtn_btn_nurse_onclick" style="font:Dotum,8;"/>
  397. <Button position="absolute 153 0 206 20" id="btn_todo" class="btn2" text="To_do" anchor="default" onclick="grp_btnlist_grp_wardbtn_btn_todo_onclick" style="font:Dotum,8;"/>
  398. <Button position="absolute 207 0 260 20" id="btn_order" class="btn2" text="Order" anchor="default" onclick="grp_btnlist_grp_wardbtn_btn_order_onclick" style="font:Dotum,8;"/>
  399. <Button position="absolute 261 0 329 20" id="btn_inout" class="btn2" text="전과전실" anchor="default" onclick="grp_btnlist_grp_wardbtn_btn_inout_onclick" style="font:Dotum,8;"/>
  400. </Layout>
  401. </Layouts>
  402. </Div>
  403. <Button position="absolute 65 0 129 20" id="btn_cleanitem" class="btn2" text="목록정리" onclick="grp_btnlist_btn_cleanitem_onclick" anchor="default" style="font:Dotum,8;"/>
  404. <Button position="absolute 0 0 64 20" id="btn_viewsetting" class="btn5" text="화면설정" onclick="grp_btnlist_btn_viewsetting_onclick" anchor="default" style="font:Dotum,8;"/>
  405. <CheckBox position="absolute 132 -1 224 19" id="chk_existsdelinfo" text="정리목록포함" truevalue="Y" falsevalue="N" anchor="default"/>
  406. <Button position="absolute 993 0 1035 20" id="button2" class="btn2" visible="false" text="통증" onclick="grp_btnlist_button2_onclick" anchor="default" style="font:Dotum,8;"/>
  407. </Layout>
  408. </Layouts>
  409. </Div>
  410. <Div position="absolute 0 77 1208 116" id="grp_srchbaselist" visible="false">
  411. <Layouts>
  412. <Layout>
  413. <Button position="absolute 0 0 26 20" id="btn_24hoursbefore" class="icon_left" text="" onclick="grp_srchbaselist_btn_24hoursbefore_onclick" anchor="default"/>
  414. <Calendar position="absolute 27 0 129 20" id="ipt_24hoursrecdd" onchanged="grp_srchbaselist_ipt_24hoursrecdd_onchanged" style="dayborder:0 none #808080ff ;daybordertype:normal 0 0 ;background:#ffff99ff stretch 5,5;border:1 solid #808080ff ;" anchor="default" autoselect="true"/>
  415. <Button position="absolute 128 0 154 20" id="btn_24hoursafter" class="icon_right" text="" onclick="grp_srchbaselist_btn_24hoursafter_onclick" anchor="default"/>
  416. <Combo position="absolute 155 0 217 20" id="cmb_24hourstimeflag" class="combo_search" innerdataset="ds_init_cmb_24hourstimeflag" datacolumn="nm" codecolumn="cd" onitemchanged="grp_srchbaselist_cmb_24hourstimeflag_onitemchanged" anchor="default"/>
  417. <Button position="absolute 1144 0 1208 20" id="btn_24hoursvwctrl" class="btn2" text="차트보기" onclick="grp_srchbaselist_btn_24hoursvwctrl_onclick" anchor="default" style="font:Dotum,8;"/>
  418. <Button position="absolute 256 0 272 16" id="btn_chkhoursclslist" text="" class="icon_next_month" onclick="grp_srchbaselist_btn_chkhoursclslist_onclick" tooltiptext="조회분류 전체 선택 / 해지" anchor="default"/>
  419. <CheckBox position="absolute 1062 0 1142 20" id="chk_nextyn" text="환자넘기기" truevalue="Y" falsevalue="N" anchor="default"/>
  420. <cp_checkboxList id="chk_24hoursclslist" taborder="1" scrollbars="none" position="absolute 274 0 1059 39" col="1" row="" cellspacing="2" vcellspacing="" itemWidth="" itemHeight="" overflow="" anchor="default" style="background:#ccffffff;"/>
  421. </Layout>
  422. </Layouts>
  423. </Div>
  424. <Div position="absolute 1 838 1208 864" id="group2" anchor="left bottom" style="border:2 solid #9999ffff ;" scrollbars="none">
  425. <Layouts>
  426. <Layout>
  427. <Static text="합계" position="absolute 737 -1 817 23" align="align:center middle;" id="caption1" class="cell_1" anchor="default"/>
  428. <Edit readonly="true" position="absolute 115 0 550 22" id="opt_detlval" anchor="default" style="background:transparent;"/>
  429. <Static text="입력자" position="absolute 555 -1 635 23" align="align:center middle;" id="caption2" class="cell_1" anchor="default"/>
  430. <Static text="입력내용 상세보기" position="absolute -1 -1 114 23" align="align:center middle;" id="caption11" class="cell_1" anchor="default"/>
  431. <Edit readonly="true" position="absolute 637 0 735 22" id="opt_usernm" anchor="default" style="background:transparent;"/>
  432. <Edit readonly="true" position="absolute 819 0 917 22" id="opt_subtotal" anchor="default" style="background:transparent;"/>
  433. <Static text="합계 범위" position="absolute 919 -1 999 23" align="align:center middle;" id="caption5" class="cell_1" anchor="default"/>
  434. <Edit readonly="true" position="absolute 1001 0 1169 22" id="opt_subtotalarray" anchor="default" style="background:transparent;"/>
  435. <Static text="[표]" position="absolute 1176 3 1202 19" align="align:right middle;" id="caption7" anchor="default"/>
  436. </Layout>
  437. </Layouts>
  438. </Div>
  439. <Static id="caption6" text="FlowSheet" class="tit_1" position="absolute 0 -1 104 24"/>
  440. </Layout>
  441. </Layouts>
  442. <Objects>
  443. <Dataset id="ds_init_cmb_deptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  444. <ColumnInfo>
  445. <Column id="depthngnm" type="STRING"/>
  446. <Column id="deptcd" type="STRING"/>
  447. </ColumnInfo>
  448. </Dataset>
  449. <Dataset id="ds_init_cmb_medispcllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  450. <ColumnInfo>
  451. <Column id="usernm" type="STRING"/>
  452. <Column id="userid" type="STRING"/>
  453. </ColumnInfo>
  454. </Dataset>
  455. <Dataset id="ds_init_cmb_atdoctlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  456. <ColumnInfo>
  457. <Column id="usernm" type="STRING"/>
  458. <Column id="userid" type="STRING"/>
  459. </ColumnInfo>
  460. </Dataset>
  461. <Dataset id="ds_data_wardcdgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  462. <ColumnInfo>
  463. <Column id="wardnm" type="STRING"/>
  464. <Column id="wardcd" type="STRING"/>
  465. </ColumnInfo>
  466. </Dataset>
  467. <Dataset id="ds_data_roomcdgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  468. <ColumnInfo>
  469. <Column id="roomnm" type="STRING"/>
  470. <Column id="roomcd" type="STRING"/>
  471. </ColumnInfo>
  472. </Dataset>
  473. <Dataset id="ds_temp_zoneinfo_zonelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  474. <ColumnInfo>
  475. <Column id="bednm" type="STRING"/>
  476. <Column id="bedcd" type="STRING"/>
  477. </ColumnInfo>
  478. </Dataset>
  479. <Dataset id="ds_data_patientgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  480. <ColumnInfo>
  481. <Column id="patientnm" type="STRING"/>
  482. <Column id="pid" type="STRING"/>
  483. </ColumnInfo>
  484. </Dataset>
  485. <Dataset id="ds_init_cmb_erpat" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  486. <ColumnInfo>
  487. <Column id="etcinfo" type="STRING"/>
  488. <Column id="pid" type="STRING"/>
  489. </ColumnInfo>
  490. </Dataset>
  491. <Dataset id="ds_grd_24hoursclincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_grd_24hoursclincobsreclist_oncolumnchanged">
  492. <ColumnInfo>
  493. <Column id="itemnm" type="STRING"/>
  494. <Column id="recrslt1" type="STRING"/>
  495. <Column id="recrslt2" type="STRING"/>
  496. <Column id="recrslt3" type="STRING"/>
  497. <Column id="recrslt4" type="STRING"/>
  498. <Column id="recrslt5" type="STRING"/>
  499. <Column id="recrslt6" type="STRING"/>
  500. <Column id="recrslt7" type="STRING"/>
  501. <Column id="recrslt8" type="STRING"/>
  502. <Column id="recrslt9" type="STRING"/>
  503. <Column id="recrslt10" type="STRING"/>
  504. <Column id="recrslt11" type="STRING"/>
  505. <Column id="recrslt12" type="STRING"/>
  506. <Column id="recrslt13" type="STRING"/>
  507. <Column id="recrslt14" type="STRING"/>
  508. <Column id="recrslt15" type="STRING"/>
  509. <Column id="recrslt16" type="STRING"/>
  510. <Column id="recrslt17" type="STRING"/>
  511. <Column id="recrslt18" type="STRING"/>
  512. <Column id="recrslt19" type="STRING"/>
  513. <Column id="recrslt20" type="STRING"/>
  514. <Column id="recrslt21" type="STRING"/>
  515. <Column id="recrslt22" type="STRING"/>
  516. <Column id="recrslt23" type="STRING"/>
  517. <Column id="recrslt24" type="STRING"/>
  518. <Column id="itemcd" type="STRING"/>
  519. <Column id="itemseqno" type="STRING"/>
  520. <Column id="recflag" type="STRING"/>
  521. <Column id="attrcd" type="STRING"/>
  522. <Column id="wardcd" type="STRING"/>
  523. <Column id="roomcd" type="STRING"/>
  524. <Column id="depth" type="STRING"/>
  525. <Column id="recfromdt" type="STRING"/>
  526. <Column id="rectodt" type="STRING"/>
  527. <Column id="reccharflag" type="STRING"/>
  528. <Column id="supcd" type="STRING"/>
  529. <Column id="totalyn" type="STRING"/>
  530. <Column id="carerecseqno" type="STRING"/>
  531. <Column id="totalnm" type="STRING"/>
  532. <Column id="lnkbizcd" type="STRING"/>
  533. <Column id="color" type="STRING"/>
  534. <Column id="style" type="STRING"/>
  535. <Column id="subtotalyn" type="STRING"/>
  536. <Column id="subtotalnm" type="STRING"/>
  537. <Column id="runtotalyn" type="STRING"/>
  538. <Column id="runtotalnm" type="STRING"/>
  539. <Column id="fluidstat" type="STRING"/>
  540. <Column id="readonlyyn" type="STRING"/>
  541. <Column id="lnkcarerecseqno" type="STRING"/>
  542. <Column id="totalidx" type="STRING"/>
  543. <Column id="recfluidunit" type="STRING"/>
  544. <Column id="backcolor0" type="STRING" size="256"/>
  545. <Column id="fontcolor0" type="STRING" size="256"/>
  546. <Column id="backimage0" type="STRING" size="256"/>
  547. <Column id="fonttype0" type="STRING" size="256"/>
  548. <Column id="backcolor1" type="STRING" size="256"/>
  549. <Column id="fontcolor1" type="STRING" size="256"/>
  550. <Column id="backimage1" type="STRING" size="256"/>
  551. <Column id="fonttype1" type="STRING" size="256"/>
  552. <Column id="backcolor2" type="STRING" size="256"/>
  553. <Column id="fontcolor2" type="STRING" size="256"/>
  554. <Column id="backimage2" type="STRING" size="256"/>
  555. <Column id="fonttype2" type="STRING" size="256"/>
  556. <Column id="backcolor3" type="STRING" size="256"/>
  557. <Column id="fontcolor3" type="STRING" size="256"/>
  558. <Column id="backimage3" type="STRING" size="256"/>
  559. <Column id="fonttype3" type="STRING" size="256"/>
  560. <Column id="backcolor4" type="STRING" size="256"/>
  561. <Column id="fontcolor4" type="STRING" size="256"/>
  562. <Column id="backimage4" type="STRING" size="256"/>
  563. <Column id="fonttype4" type="STRING" size="256"/>
  564. <Column id="backcolor5" type="STRING" size="256"/>
  565. <Column id="fontcolor5" type="STRING" size="256"/>
  566. <Column id="backimage5" type="STRING" size="256"/>
  567. <Column id="fonttype5" type="STRING" size="256"/>
  568. <Column id="backcolor6" type="STRING" size="256"/>
  569. <Column id="fontcolor6" type="STRING" size="256"/>
  570. <Column id="backimage6" type="STRING" size="256"/>
  571. <Column id="fonttype6" type="STRING" size="256"/>
  572. <Column id="backcolor7" type="STRING" size="256"/>
  573. <Column id="fontcolor7" type="STRING" size="256"/>
  574. <Column id="backimage7" type="STRING" size="256"/>
  575. <Column id="fonttype7" type="STRING" size="256"/>
  576. <Column id="backcolor8" type="STRING" size="256"/>
  577. <Column id="fontcolor8" type="STRING" size="256"/>
  578. <Column id="backimage8" type="STRING" size="256"/>
  579. <Column id="fonttype8" type="STRING" size="256"/>
  580. <Column id="backcolor9" type="STRING" size="256"/>
  581. <Column id="fontcolor9" type="STRING" size="256"/>
  582. <Column id="backimage9" type="STRING" size="256"/>
  583. <Column id="fonttype9" type="STRING" size="256"/>
  584. <Column id="backcolor10" type="STRING" size="256"/>
  585. <Column id="fontcolor10" type="STRING" size="256"/>
  586. <Column id="backimage10" type="STRING" size="256"/>
  587. <Column id="fonttype10" type="STRING" size="256"/>
  588. <Column id="backcolor11" type="STRING" size="256"/>
  589. <Column id="fontcolor11" type="STRING" size="256"/>
  590. <Column id="backimage11" type="STRING" size="256"/>
  591. <Column id="fonttype11" type="STRING" size="256"/>
  592. <Column id="backcolor12" type="STRING" size="256"/>
  593. <Column id="fontcolor12" type="STRING" size="256"/>
  594. <Column id="backimage12" type="STRING" size="256"/>
  595. <Column id="fonttype12" type="STRING" size="256"/>
  596. <Column id="backcolor13" type="STRING" size="256"/>
  597. <Column id="fontcolor13" type="STRING" size="256"/>
  598. <Column id="backimage13" type="STRING" size="256"/>
  599. <Column id="fonttype13" type="STRING" size="256"/>
  600. <Column id="backcolor14" type="STRING" size="256"/>
  601. <Column id="fontcolor14" type="STRING" size="256"/>
  602. <Column id="backimage14" type="STRING" size="256"/>
  603. <Column id="fonttype14" type="STRING" size="256"/>
  604. <Column id="backcolor15" type="STRING" size="256"/>
  605. <Column id="fontcolor15" type="STRING" size="256"/>
  606. <Column id="backimage15" type="STRING" size="256"/>
  607. <Column id="fonttype15" type="STRING" size="256"/>
  608. <Column id="backcolor16" type="STRING" size="256"/>
  609. <Column id="fontcolor16" type="STRING" size="256"/>
  610. <Column id="backimage16" type="STRING" size="256"/>
  611. <Column id="fonttype16" type="STRING" size="256"/>
  612. <Column id="backcolor17" type="STRING" size="256"/>
  613. <Column id="fontcolor17" type="STRING" size="256"/>
  614. <Column id="backimage17" type="STRING" size="256"/>
  615. <Column id="fonttype17" type="STRING" size="256"/>
  616. <Column id="backcolor18" type="STRING" size="256"/>
  617. <Column id="fontcolor18" type="STRING" size="256"/>
  618. <Column id="backimage18" type="STRING" size="256"/>
  619. <Column id="fonttype18" type="STRING" size="256"/>
  620. <Column id="backcolor19" type="STRING" size="256"/>
  621. <Column id="fontcolor19" type="STRING" size="256"/>
  622. <Column id="backimage19" type="STRING" size="256"/>
  623. <Column id="fonttype19" type="STRING" size="256"/>
  624. <Column id="backcolor20" type="STRING" size="256"/>
  625. <Column id="fontcolor20" type="STRING" size="256"/>
  626. <Column id="backimage20" type="STRING" size="256"/>
  627. <Column id="fonttype20" type="STRING" size="256"/>
  628. <Column id="backcolor21" type="STRING" size="256"/>
  629. <Column id="fontcolor21" type="STRING" size="256"/>
  630. <Column id="backimage21" type="STRING" size="256"/>
  631. <Column id="fonttype21" type="STRING" size="256"/>
  632. <Column id="backcolor22" type="STRING" size="256"/>
  633. <Column id="fontcolor22" type="STRING" size="256"/>
  634. <Column id="backimage22" type="STRING" size="256"/>
  635. <Column id="fonttype22" type="STRING" size="256"/>
  636. <Column id="backcolor23" type="STRING" size="256"/>
  637. <Column id="fontcolor23" type="STRING" size="256"/>
  638. <Column id="backimage23" type="STRING" size="256"/>
  639. <Column id="fonttype23" type="STRING" size="256"/>
  640. <Column id="backcolor24" type="STRING" size="256"/>
  641. <Column id="fontcolor24" type="STRING" size="256"/>
  642. <Column id="backimage24" type="STRING" size="256"/>
  643. <Column id="fonttype24" type="STRING" size="256"/>
  644. </ColumnInfo>
  645. <Rows>
  646. <Row/>
  647. </Rows>
  648. </Dataset>
  649. <Dataset id="ds_init_cmb_24hourstimeflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  650. <ColumnInfo>
  651. <Column id="nm" type="STRING"/>
  652. <Column id="cd" type="STRING"/>
  653. <Column id="gap" type="STRING" size="256"/>
  654. </ColumnInfo>
  655. <Rows>
  656. <Row>
  657. <Col id="nm">1분</Col>
  658. <Col id="cd">1</Col>
  659. <Col id="gap">1</Col>
  660. </Row>
  661. <Row>
  662. <Col id="nm">5분</Col>
  663. <Col id="cd">5</Col>
  664. <Col id="gap">2</Col>
  665. </Row>
  666. <Row>
  667. <Col id="nm">10분</Col>
  668. <Col id="cd">10</Col>
  669. <Col id="gap">2</Col>
  670. </Row>
  671. <Row>
  672. <Col id="nm">15분</Col>
  673. <Col id="cd">15</Col>
  674. <Col id="gap">3</Col>
  675. </Row>
  676. <Row>
  677. <Col id="nm">30분</Col>
  678. <Col id="cd">30</Col>
  679. <Col id="gap">4</Col>
  680. </Row>
  681. <Row>
  682. <Col id="nm">60분</Col>
  683. <Col id="cd">60</Col>
  684. <Col id="gap">7</Col>
  685. </Row>
  686. </Rows>
  687. </Dataset>
  688. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  689. <ColumnInfo>
  690. <Column id="pid" type="STRING" size="256"/>
  691. <Column id="recdd" type="STRING" size="256"/>
  692. <Column id="rectm" type="STRING" size="256"/>
  693. <Column id="formerrecdd" type="STRING" size="256"/>
  694. <Column id="timeflag" type="STRING" size="256"/>
  695. <Column id="formerhourflag" type="STRING" size="256"/>
  696. <Column id="vwctrl_4days" type="STRING" size="256"/>
  697. <Column id="vwctrl_24hours" type="STRING" size="256"/>
  698. <Column id="vwctrl_formerday" type="STRING" size="256"/>
  699. <Column id="vwctrl_button" type="STRING" size="256"/>
  700. <Column id="hourflag" type="STRING" size="256"/>
  701. <Column id="hoursclsinfo" type="STRING" size="256"/>
  702. <Column id="formerclsinfo" type="STRING" size="256"/>
  703. <Column id="patinfo" type="STRING" size="256"/>
  704. <Column id="hourschartinfo" type="STRING" size="256"/>
  705. <Column id="dayschartinfo" type="STRING" size="256"/>
  706. <Column id="daycountinfo" type="STRING" size="256"/>
  707. <Column id="formerdaycountinfo" type="STRING" size="256"/>
  708. <Column id="cmbstatusx" type="STRING" size="256"/>
  709. <Column id="cmbstatusy" type="STRING" size="256"/>
  710. <Column id="bizlnkflag" type="STRING" size="256"/>
  711. <Column id="srchflag" type="STRING" size="256"/>
  712. <Column id="existsdelinfo" type="STRING" size="256"/>
  713. <Column id="zonecd" type="STRING" size="256"/>
  714. <Column id="wardcd" type="STRING" size="256"/>
  715. <Column id="nextyn" type="STRING" size="256"/>
  716. </ColumnInfo>
  717. <Rows>
  718. <Row>
  719. <Col id="pid"/>
  720. <Col id="recdd"/>
  721. <Col id="rectm"/>
  722. <Col id="formerrecdd"/>
  723. <Col id="timeflag"/>
  724. <Col id="formerhourflag"/>
  725. <Col id="vwctrl_4days"/>
  726. <Col id="vwctrl_24hours"/>
  727. <Col id="vwctrl_formerday"/>
  728. <Col id="vwctrl_button"/>
  729. <Col id="hourflag"/>
  730. <Col id="hoursclsinfo"/>
  731. <Col id="formerclsinfo"/>
  732. <Col id="patinfo"/>
  733. <Col id="hourschartinfo"/>
  734. <Col id="dayschartinfo"/>
  735. <Col id="daycountinfo"/>
  736. <Col id="formerdaycountinfo"/>
  737. <Col id="cmbstatusx"/>
  738. <Col id="cmbstatusy"/>
  739. <Col id="bizlnkflag"/>
  740. <Col id="srchflag"/>
  741. <Col id="existsdelinfo"/>
  742. <Col id="zonecd"/>
  743. <Col id="wardcd"/>
  744. <Col id="nextyn"/>
  745. </Row>
  746. </Rows>
  747. </Dataset>
  748. <Dataset id="ds_cond_detlrecinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  749. <ColumnInfo>
  750. <Column id="detlval" type="STRING" size="256"/>
  751. <Column id="usernm" type="STRING" size="256"/>
  752. <Column id="subtotal" type="STRING" size="256"/>
  753. <Column id="subtotalarray" type="STRING" size="256"/>
  754. </ColumnInfo>
  755. <Rows>
  756. <Row>
  757. <Col id="detlval"/>
  758. <Col id="usernm"/>
  759. <Col id="subtotal"/>
  760. <Col id="subtotalarray"/>
  761. </Row>
  762. </Rows>
  763. </Dataset>
  764. <Dataset id="ds_daysclincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  765. <ColumnInfo>
  766. <Column id="itemnm" type="STRING" size="256"/>
  767. <Column id="recrslt1" type="STRING" size="256"/>
  768. <Column id="recrslt2" type="STRING" size="256"/>
  769. <Column id="recrslt3" type="STRING" size="256"/>
  770. <Column id="recrslt4" type="STRING" size="256"/>
  771. <Column id="recrslt5" type="STRING" size="256"/>
  772. <Column id="recrslt6" type="STRING" size="256"/>
  773. <Column id="recrslt7" type="STRING" size="256"/>
  774. <Column id="recrslt8" type="STRING" size="256"/>
  775. <Column id="recrslt9" type="STRING" size="256"/>
  776. <Column id="recrslt10" type="STRING" size="256"/>
  777. <Column id="recrslt11" type="STRING" size="256"/>
  778. <Column id="recrslt12" type="STRING" size="256"/>
  779. <Column id="recrslt13" type="STRING" size="256"/>
  780. <Column id="recrslt14" type="STRING" size="256"/>
  781. <Column id="recrslt15" type="STRING" size="256"/>
  782. <Column id="recrslt16" type="STRING" size="256"/>
  783. <Column id="itemcd" type="STRING" size="256"/>
  784. <Column id="itemseqno" type="STRING" size="256"/>
  785. <Column id="recflag" type="STRING" size="256"/>
  786. <Column id="attrcd" type="STRING" size="256"/>
  787. <Column id="wardcd" type="STRING" size="256"/>
  788. <Column id="roomcd" type="STRING" size="256"/>
  789. <Column id="depth" type="STRING" size="256"/>
  790. <Column id="recfromdt" type="STRING" size="256"/>
  791. <Column id="rectodt" type="STRING" size="256"/>
  792. <Column id="reccharflag" type="STRING" size="256"/>
  793. <Column id="carerecseqno" type="STRING" size="256"/>
  794. <Column id="subtotalyn" type="STRING" size="256"/>
  795. <Column id="setnm" type="STRING" size="256"/>
  796. <Column id="lnkbizcd" type="STRING" size="256"/>
  797. </ColumnInfo>
  798. <Rows>
  799. <Row>
  800. <Col id="itemnm"/>
  801. <Col id="recrslt1"/>
  802. <Col id="recrslt2"/>
  803. <Col id="recrslt3"/>
  804. <Col id="recrslt4"/>
  805. <Col id="recrslt5"/>
  806. <Col id="recrslt6"/>
  807. <Col id="recrslt7"/>
  808. <Col id="recrslt8"/>
  809. <Col id="recrslt9"/>
  810. <Col id="recrslt10"/>
  811. <Col id="recrslt11"/>
  812. <Col id="recrslt12"/>
  813. <Col id="recrslt13"/>
  814. <Col id="recrslt14"/>
  815. <Col id="recrslt15"/>
  816. <Col id="recrslt16"/>
  817. <Col id="itemcd"/>
  818. <Col id="itemseqno"/>
  819. <Col id="recflag"/>
  820. <Col id="attrcd"/>
  821. <Col id="wardcd"/>
  822. <Col id="roomcd"/>
  823. <Col id="depth"/>
  824. <Col id="recfromdt"/>
  825. <Col id="rectodt"/>
  826. <Col id="reccharflag"/>
  827. <Col id="carerecseqno"/>
  828. <Col id="subtotalyn"/>
  829. <Col id="setnm"/>
  830. <Col id="lnkbizcd"/>
  831. </Row>
  832. </Rows>
  833. </Dataset>
  834. <Dataset id="ds_formerclincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  835. <ColumnInfo>
  836. <Column id="itemnm" type="STRING" size="256"/>
  837. <Column id="recrslt1" type="STRING" size="256"/>
  838. <Column id="recrslt2" type="STRING" size="256"/>
  839. <Column id="recrslt3" type="STRING" size="256"/>
  840. <Column id="recrslt4" type="STRING" size="256"/>
  841. <Column id="recrslt5" type="STRING" size="256"/>
  842. <Column id="recrslt6" type="STRING" size="256"/>
  843. <Column id="itemcd" type="STRING" size="256"/>
  844. <Column id="itemseqno" type="STRING" size="256"/>
  845. <Column id="depth" type="STRING" size="256"/>
  846. <Column id="recfromdt" type="STRING" size="256"/>
  847. <Column id="rectodt" type="STRING" size="256"/>
  848. <Column id="reccharflag" type="STRING" size="256"/>
  849. <Column id="attrcd" type="STRING" size="256"/>
  850. <Column id="recflag" type="STRING" size="256"/>
  851. <Column id="carerecseqno" type="STRING" size="256"/>
  852. <Column id="setnm" type="STRING" size="256"/>
  853. <Column id="subtotalyn" type="STRING" size="256"/>
  854. <Column id="lnkbizcd" type="STRING" size="256"/>
  855. </ColumnInfo>
  856. <Rows>
  857. <Row>
  858. <Col id="itemnm"/>
  859. <Col id="recrslt1"/>
  860. <Col id="recrslt2"/>
  861. <Col id="recrslt3"/>
  862. <Col id="recrslt4"/>
  863. <Col id="recrslt5"/>
  864. <Col id="recrslt6"/>
  865. <Col id="itemcd"/>
  866. <Col id="itemseqno"/>
  867. <Col id="depth"/>
  868. <Col id="recfromdt"/>
  869. <Col id="rectodt"/>
  870. <Col id="reccharflag"/>
  871. <Col id="attrcd"/>
  872. <Col id="recflag"/>
  873. <Col id="carerecseqno"/>
  874. <Col id="setnm"/>
  875. <Col id="subtotalyn"/>
  876. <Col id="lnkbizcd"/>
  877. </Row>
  878. </Rows>
  879. </Dataset>
  880. <Dataset id="ds_stnddayclincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  881. <ColumnInfo>
  882. <Column id="itemnm" type="STRING" size="256"/>
  883. <Column id="recrslt1" type="STRING" size="256"/>
  884. <Column id="recrslt2" type="STRING" size="256"/>
  885. <Column id="recrslt3" type="STRING" size="256"/>
  886. <Column id="recrslt4" type="STRING" size="256"/>
  887. <Column id="recrslt5" type="STRING" size="256"/>
  888. <Column id="recrslt6" type="STRING" size="256"/>
  889. <Column id="recrslt7" type="STRING" size="256"/>
  890. <Column id="recrslt8" type="STRING" size="256"/>
  891. <Column id="recrslt9" type="STRING" size="256"/>
  892. <Column id="recrslt10" type="STRING" size="256"/>
  893. <Column id="recrslt11" type="STRING" size="256"/>
  894. <Column id="recrslt12" type="STRING" size="256"/>
  895. <Column id="recrslt13" type="STRING" size="256"/>
  896. <Column id="recrslt14" type="STRING" size="256"/>
  897. <Column id="itemcd" type="STRING" size="256"/>
  898. <Column id="itemseqno" type="STRING" size="256"/>
  899. <Column id="recflag" type="STRING" size="256"/>
  900. <Column id="attrcd" type="STRING" size="256"/>
  901. <Column id="wardcd" type="STRING" size="256"/>
  902. <Column id="roomcd" type="STRING" size="256"/>
  903. <Column id="depth" type="STRING" size="256"/>
  904. <Column id="recfromdt" type="STRING" size="256"/>
  905. <Column id="rectodt" type="STRING" size="256"/>
  906. <Column id="reccharflag" type="STRING" size="256"/>
  907. <Column id="supcd" type="STRING" size="256"/>
  908. <Column id="subtotalyn" type="STRING" size="256"/>
  909. <Column id="carerecseqno" type="STRING" size="256"/>
  910. <Column id="setnm" type="STRING" size="256"/>
  911. <Column id="lnkbizcd" type="STRING" size="256"/>
  912. </ColumnInfo>
  913. <Rows>
  914. <Row>
  915. <Col id="itemnm"/>
  916. <Col id="recrslt1"/>
  917. <Col id="recrslt2"/>
  918. <Col id="recrslt3"/>
  919. <Col id="recrslt4"/>
  920. <Col id="recrslt5"/>
  921. <Col id="recrslt6"/>
  922. <Col id="recrslt7"/>
  923. <Col id="recrslt8"/>
  924. <Col id="recrslt9"/>
  925. <Col id="recrslt10"/>
  926. <Col id="recrslt11"/>
  927. <Col id="recrslt12"/>
  928. <Col id="recrslt13"/>
  929. <Col id="recrslt14"/>
  930. <Col id="itemcd"/>
  931. <Col id="itemseqno"/>
  932. <Col id="recflag"/>
  933. <Col id="attrcd"/>
  934. <Col id="wardcd"/>
  935. <Col id="roomcd"/>
  936. <Col id="depth"/>
  937. <Col id="recfromdt"/>
  938. <Col id="rectodt"/>
  939. <Col id="reccharflag"/>
  940. <Col id="supcd"/>
  941. <Col id="subtotalyn"/>
  942. <Col id="carerecseqno"/>
  943. <Col id="setnm"/>
  944. <Col id="lnkbizcd"/>
  945. </Row>
  946. </Rows>
  947. </Dataset>
  948. <Dataset id="ds_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  949. <Dataset id="ds_daycountinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  950. <Dataset id="ds_formerdaycountinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  951. <Dataset id="ds_patinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  952. <ColumnInfo>
  953. <Column id="pid" type="STRING" size="256"/>
  954. <Column id="indd" type="STRING" size="256"/>
  955. <Column id="cretno" type="STRING" size="256"/>
  956. <Column id="ordtype" type="STRING" size="256"/>
  957. <Column id="indschacptstat" type="STRING" size="256"/>
  958. <Column id="dschdd" type="STRING" size="256"/>
  959. <Column id="eroutdd" type="STRING" size="256"/>
  960. <Column id="patnm" type="STRING" size="256"/>
  961. <Column id="sexage" type="STRING" size="256"/>
  962. <Column id="wardcd" type="STRING" size="256"/>
  963. <Column id="roomcd" type="STRING" size="256"/>
  964. <Column id="orddeptcd" type="STRING" size="256"/>
  965. <Column id="medispclid" type="STRING" size="256"/>
  966. <Column id="sectioncd" type="STRING" size="256"/>
  967. </ColumnInfo>
  968. <Rows>
  969. <Row>
  970. <Col id="pid"/>
  971. <Col id="indd"/>
  972. <Col id="cretno"/>
  973. <Col id="ordtype"/>
  974. <Col id="indschacptstat"/>
  975. <Col id="dschdd"/>
  976. <Col id="eroutdd"/>
  977. <Col id="patnm"/>
  978. <Col id="sexage"/>
  979. <Col id="wardcd"/>
  980. <Col id="roomcd"/>
  981. <Col id="orddeptcd"/>
  982. <Col id="medispclid"/>
  983. <Col id="sectioncd"/>
  984. </Row>
  985. </Rows>
  986. </Dataset>
  987. <Dataset id="ds_init_clsinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  988. <ColumnInfo>
  989. <Column id="itemcd" type="STRING" size="256"/>
  990. <Column id="itemnm" type="STRING" size="256"/>
  991. </ColumnInfo>
  992. </Dataset>
  993. <Dataset id="ds_init_chartlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  994. <ColumnInfo>
  995. <Column id="cd" type="STRING" size="256"/>
  996. <Column id="nm" type="STRING" size="256"/>
  997. </ColumnInfo>
  998. <Rows>
  999. <Row>
  1000. <Col id="cd">1</Col>
  1001. <Col id="nm"/>
  1002. </Row>
  1003. <Row>
  1004. <Col id="cd">2</Col>
  1005. <Col id="nm"/>
  1006. </Row>
  1007. <Row>
  1008. <Col id="cd">3</Col>
  1009. <Col id="nm"/>
  1010. </Row>
  1011. <Row>
  1012. <Col id="cd">4</Col>
  1013. <Col id="nm"/>
  1014. </Row>
  1015. <Row>
  1016. <Col id="cd">5</Col>
  1017. <Col id="nm"/>
  1018. </Row>
  1019. </Rows>
  1020. </Dataset>
  1021. <Dataset id="ds_temp_roomcdgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1022. <ColumnInfo>
  1023. <Column id="roomnm" type="STRING" size="256"/>
  1024. <Column id="roomcd" type="STRING" size="256"/>
  1025. </ColumnInfo>
  1026. <Rows>
  1027. <Row/>
  1028. </Rows>
  1029. </Dataset>
  1030. <Dataset id="ds_data_formerclincobsrecinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1031. <Dataset id="ds_temp_clincobsrecinfo_intervalrecynlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1032. <Dataset id="ds_data_attrlist1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1033. <Dataset id="ds_barcdprntsetup" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1034. <Dataset id="ds_certtemp_recinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1035. <ColumnInfo>
  1036. <Column id="reclist" type="STRING" size="256"/>
  1037. <Column id="recdt" type="STRING" size="256"/>
  1038. <Column id="attrcd" type="STRING" size="256"/>
  1039. </ColumnInfo>
  1040. </Dataset>
  1041. <Dataset id="ds_certattrtemp_recattrinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1042. <ColumnInfo>
  1043. <Column id="attrcd" type="STRING" size="256"/>
  1044. <Column id="reclist" type="STRING" size="256"/>
  1045. </ColumnInfo>
  1046. </Dataset>
  1047. <Dataset id="ds_init_minlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1048. <ColumnInfo>
  1049. <Column id="cd" type="STRING" size="256"/>
  1050. <Column id="nm" type="STRING" size="256"/>
  1051. <Column id="gap" type="STRING" size="256"/>
  1052. </ColumnInfo>
  1053. <Rows>
  1054. <Row>
  1055. <Col id="cd">1</Col>
  1056. <Col id="nm">1분</Col>
  1057. <Col id="gap">1</Col>
  1058. </Row>
  1059. <Row>
  1060. <Col id="cd">5</Col>
  1061. <Col id="nm">5분</Col>
  1062. <Col id="gap">2</Col>
  1063. </Row>
  1064. <Row>
  1065. <Col id="cd">10</Col>
  1066. <Col id="nm">10분</Col>
  1067. <Col id="gap">2</Col>
  1068. </Row>
  1069. <Row>
  1070. <Col id="cd">15</Col>
  1071. <Col id="nm">15분</Col>
  1072. <Col id="gap">3</Col>
  1073. </Row>
  1074. <Row>
  1075. <Col id="cd">30</Col>
  1076. <Col id="nm">30분</Col>
  1077. <Col id="gap">4</Col>
  1078. </Row>
  1079. <Row>
  1080. <Col id="cd">60</Col>
  1081. <Col id="nm">60분</Col>
  1082. <Col id="gap">7</Col>
  1083. </Row>
  1084. <Row>
  1085. <Col id="cd">120</Col>
  1086. <Col id="nm">120분</Col>
  1087. <Col id="gap">7</Col>
  1088. </Row>
  1089. </Rows>
  1090. </Dataset>
  1091. <Dataset id="ds_init_hourlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1092. <ColumnInfo>
  1093. <Column id="cd" type="STRING" size="256"/>
  1094. <Column id="nm" type="STRING" size="256"/>
  1095. </ColumnInfo>
  1096. </Dataset>
  1097. <Dataset id="ds_data_rtnsigndata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1098. <Dataset id="ds_data_patientgruplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1099. <Dataset id="ds_data_viewersettinglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1100. <Dataset id="ds_data_settingpatientlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1101. <Dataset id="ds_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1102. <Dataset id="ds_data_recuserlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1103. <Dataset id="ds_data_attrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1104. <ColumnInfo>
  1105. <Column id="attrcd" type="STRING" size="256"/>
  1106. <Column id="attrnm" type="STRING" size="256"/>
  1107. </ColumnInfo>
  1108. <Rows>
  1109. <Row/>
  1110. </Rows>
  1111. </Dataset>
  1112. <Dataset id="ds_data_clincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1113. <ColumnInfo>
  1114. <Column id="depth" type="BIGDECIMAL" size="256"/>
  1115. <Column id="supsetnoseq" type="STRING" size="256"/>
  1116. <Column id="subitemrefseq" type="BIGDECIMAL" size="256"/>
  1117. <Column id="supcarerecseqno" type="BIGDECIMAL" size="256"/>
  1118. <Column id="itemcd" type="STRING" size="256"/>
  1119. <Column id="itemnm" type="STRING" size="256"/>
  1120. <Column id="pathcd1" type="BIGDECIMAL" size="256"/>
  1121. <Column id="pathcd2" type="STRING" size="256"/>
  1122. <Column id="itemseqno" type="BIGDECIMAL" size="256"/>
  1123. <Column id="attrcd" type="STRING" size="256"/>
  1124. <Column id="reccharflag" type="STRING" size="256"/>
  1125. <Column id="recflag" type="STRING" size="256"/>
  1126. <Column id="carerecseqno" type="BIGDECIMAL" size="256"/>
  1127. <Column id="supcd" type="STRING" size="256"/>
  1128. <Column id="recfromdt" type="STRING" size="256"/>
  1129. <Column id="rectodt" type="STRING" size="256"/>
  1130. <Column id="totalyn" type="STRING" size="256"/>
  1131. <Column id="totalnm" type="STRING" size="256"/>
  1132. <Column id="lnkbizcd" type="STRING" size="256"/>
  1133. <Column id="pnt" type="STRING" size="256"/>
  1134. <Column id="color" type="STRING" size="256"/>
  1135. <Column id="leftaxis" type="STRING" size="256"/>
  1136. <Column id="captiony" type="STRING" size="256"/>
  1137. <Column id="sortno" type="BIGDECIMAL" size="256"/>
  1138. <Column id="graphappyn" type="STRING" size="256"/>
  1139. <Column id="rangemin" type="STRING" size="256"/>
  1140. <Column id="rangemax" type="STRING" size="256"/>
  1141. <Column id="intvl" type="STRING" size="256"/>
  1142. <Column id="defaultyn" type="STRING" size="256"/>
  1143. <Column id="inptstyle" type="STRING" size="256"/>
  1144. <Column id="seq" type="BIGDECIMAL" size="256"/>
  1145. <Column id="lnkbizcdseq" type="STRING" size="256"/>
  1146. <Column id="sort_suprecflag" type="STRING" size="256"/>
  1147. <Column id="style" type="STRING" size="256"/>
  1148. <Column id="subtotalyn" type="STRING" size="256"/>
  1149. <Column id="subtotalnm" type="STRING" size="256"/>
  1150. <Column id="runtotalyn" type="STRING" size="256"/>
  1151. <Column id="runtotalnm" type="STRING" size="256"/>
  1152. <Column id="readonlyyn" type="STRING" size="256"/>
  1153. <Column id="recfluidunit" type="STRING" size="256"/>
  1154. <Column id="recrslt1" type="STRING" size="256"/>
  1155. <Column id="recrslt2" type="STRING" size="256"/>
  1156. <Column id="recrslt3" type="STRING" size="256"/>
  1157. <Column id="recrslt4" type="STRING" size="256"/>
  1158. <Column id="recrslt5" type="STRING" size="256"/>
  1159. <Column id="recrslt6" type="STRING" size="256"/>
  1160. <Column id="recrslt7" type="STRING" size="256"/>
  1161. <Column id="recrslt8" type="STRING" size="256"/>
  1162. <Column id="recrslt9" type="STRING" size="256"/>
  1163. <Column id="recrslt10" type="STRING" size="256"/>
  1164. <Column id="recrslt11" type="STRING" size="256"/>
  1165. <Column id="recrslt12" type="STRING" size="256"/>
  1166. <Column id="recrslt13" type="STRING" size="256"/>
  1167. <Column id="recrslt14" type="STRING" size="256"/>
  1168. <Column id="recrslt15" type="STRING" size="256"/>
  1169. <Column id="recrslt16" type="STRING" size="256"/>
  1170. <Column id="recrslt17" type="STRING" size="256"/>
  1171. <Column id="recrslt18" type="STRING" size="256"/>
  1172. <Column id="recrslt19" type="STRING" size="256"/>
  1173. <Column id="recrslt20" type="STRING" size="256"/>
  1174. <Column id="recrslt21" type="STRING" size="256"/>
  1175. <Column id="recrslt22" type="STRING" size="256"/>
  1176. <Column id="recrslt23" type="STRING" size="256"/>
  1177. <Column id="recrslt24" type="STRING" size="256"/>
  1178. <Column id="sortseq" type="BIGDECIMAL" size="256"/>
  1179. <Column id="lnkcarerecseqno" type="STRING" size="256"/>
  1180. <Column id="totalidx" type="STRING" size="256"/>
  1181. <Column id="saveyn1" type="STRING" size="256"/>
  1182. <Column id="saveyn2" type="STRING" size="256"/>
  1183. <Column id="saveyn3" type="STRING" size="256"/>
  1184. <Column id="saveyn4" type="STRING" size="256"/>
  1185. <Column id="saveyn5" type="STRING" size="256"/>
  1186. <Column id="saveyn6" type="STRING" size="256"/>
  1187. <Column id="saveyn7" type="STRING" size="256"/>
  1188. <Column id="saveyn8" type="STRING" size="256"/>
  1189. <Column id="saveyn9" type="STRING" size="256"/>
  1190. <Column id="saveyn10" type="STRING" size="256"/>
  1191. <Column id="saveyn11" type="STRING" size="256"/>
  1192. <Column id="saveyn12" type="STRING" size="256"/>
  1193. <Column id="saveyn13" type="STRING" size="256"/>
  1194. <Column id="saveyn14" type="STRING" size="256"/>
  1195. <Column id="saveyn15" type="STRING" size="256"/>
  1196. <Column id="saveyn16" type="STRING" size="256"/>
  1197. <Column id="saveyn17" type="STRING" size="256"/>
  1198. <Column id="saveyn18" type="STRING" size="256"/>
  1199. <Column id="saveyn19" type="STRING" size="256"/>
  1200. <Column id="saveyn20" type="STRING" size="256"/>
  1201. <Column id="saveyn21" type="STRING" size="256"/>
  1202. <Column id="saveyn22" type="STRING" size="256"/>
  1203. <Column id="saveyn23" type="STRING" size="256"/>
  1204. <Column id="saveyn24" type="STRING" size="256"/>
  1205. <Column id="recyn1" type="STRING" size="256"/>
  1206. <Column id="recyn2" type="STRING" size="256"/>
  1207. <Column id="recyn3" type="STRING" size="256"/>
  1208. <Column id="recyn4" type="STRING" size="256"/>
  1209. <Column id="recyn5" type="STRING" size="256"/>
  1210. <Column id="recyn6" type="STRING" size="256"/>
  1211. <Column id="recyn7" type="STRING" size="256"/>
  1212. <Column id="recyn8" type="STRING" size="256"/>
  1213. <Column id="recyn9" type="STRING" size="256"/>
  1214. <Column id="recyn10" type="STRING" size="256"/>
  1215. <Column id="recyn11" type="STRING" size="256"/>
  1216. <Column id="recyn12" type="STRING" size="256"/>
  1217. <Column id="recyn13" type="STRING" size="256"/>
  1218. <Column id="recyn14" type="STRING" size="256"/>
  1219. <Column id="recyn15" type="STRING" size="256"/>
  1220. <Column id="recyn16" type="STRING" size="256"/>
  1221. <Column id="recyn17" type="STRING" size="256"/>
  1222. <Column id="recyn18" type="STRING" size="256"/>
  1223. <Column id="recyn19" type="STRING" size="256"/>
  1224. <Column id="recyn20" type="STRING" size="256"/>
  1225. <Column id="recyn21" type="STRING" size="256"/>
  1226. <Column id="recyn22" type="STRING" size="256"/>
  1227. <Column id="recyn23" type="STRING" size="256"/>
  1228. <Column id="recyn24" type="STRING" size="256"/>
  1229. <Column id="setdisplay" type="STRING" size="256"/>
  1230. </ColumnInfo>
  1231. </Dataset>
  1232. <Dataset id="ds_formerclincobsrecinfo_attrlist1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1233. <ColumnInfo>
  1234. <Column id="attrcd" type="STRING" size="256"/>
  1235. <Column id="attrnm" type="STRING" size="256"/>
  1236. <Column id="supcd" type="STRING" size="256"/>
  1237. <Column id="attrdesc" type="STRING" size="256"/>
  1238. </ColumnInfo>
  1239. <Rows>
  1240. <Row>
  1241. <Col id="attrcd"/>
  1242. </Row>
  1243. </Rows>
  1244. </Dataset>
  1245. <Dataset id="ds_formerclincobsrecinfo_recuserlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1246. <Dataset id="ds_data_patdetllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1247. <ColumnInfo>
  1248. <Column id="bapntnm" type="STRING" size="256"/>
  1249. <Column id="totpnt" type="BIGDECIMAL" size="256"/>
  1250. <Column id="apchscore" type="BIGDECIMAL" size="256"/>
  1251. <Column id="height" type="STRING" size="256"/>
  1252. <Column id="weight" type="STRING" size="256"/>
  1253. <Column id="blood" type="STRING" size="256"/>
  1254. <Column id="chngroom" type="STRING" size="256"/>
  1255. <Column id="ammemo" type="STRING" size="256"/>
  1256. <Column id="pmmemo" type="STRING" size="256"/>
  1257. <Column id="brthdd" type="STRING" size="256"/>
  1258. <Column id="duser" type="STRING" size="256"/>
  1259. <Column id="euser" type="STRING" size="256"/>
  1260. <Column id="nuser" type="STRING" size="256"/>
  1261. <Column id="hd" type="BIGDECIMAL" size="256"/>
  1262. <Column id="pod" type="BIGDECIMAL" size="256"/>
  1263. <Column id="cp" type="BIGDECIMAL" size="256"/>
  1264. <Column id="d" type="BIGDECIMAL" size="256"/>
  1265. <Column id="icu" type="STRING" size="256"/>
  1266. <Column id="bmt" type="STRING" size="256"/>
  1267. <Column id="opdd" type="STRING" size="256"/>
  1268. <Column id="optm" type="STRING" size="256"/>
  1269. </ColumnInfo>
  1270. </Dataset>
  1271. <Dataset id="ds_temp_fluidlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1272. <Dataset id="ds_data_time" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1273. <Dataset id="ds_data_clsinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1274. <Dataset id="ds_data_fluidlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1275. <Dataset id="ds_data_instrmtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1276. <Dataset id="ds_grd_design" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1277. <ColumnInfo>
  1278. <Column id="coltype0" type="STRING" size="256"/>
  1279. <Column id="edittype0" type="STRING" size="256"/>
  1280. <Column id="readonly0" type="STRING" size="256"/>
  1281. <Column id="coltype1" type="STRING" size="256"/>
  1282. <Column id="edittype1" type="STRING" size="256"/>
  1283. <Column id="readonly1" type="STRING" size="256"/>
  1284. <Column id="coltype2" type="STRING" size="256"/>
  1285. <Column id="edittype2" type="STRING" size="256"/>
  1286. <Column id="readonly2" type="STRING" size="256"/>
  1287. <Column id="coltype3" type="STRING" size="256"/>
  1288. <Column id="edittype3" type="STRING" size="256"/>
  1289. <Column id="readonly3" type="STRING" size="256"/>
  1290. <Column id="coltype4" type="STRING" size="256"/>
  1291. <Column id="edittype4" type="STRING" size="256"/>
  1292. <Column id="readonly4" type="STRING" size="256"/>
  1293. <Column id="coltype5" type="STRING" size="256"/>
  1294. <Column id="edittype5" type="STRING" size="256"/>
  1295. <Column id="readonly5" type="STRING" size="256"/>
  1296. </ColumnInfo>
  1297. <Rows>
  1298. <Row/>
  1299. </Rows>
  1300. </Dataset>
  1301. <Dataset id="ds_data_setupinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1302. <ColumnInfo>
  1303. <Column id="dsvaluepath" type="STRING" size="256"/>
  1304. <Column id="prntkind" type="STRING" size="256"/>
  1305. <Column id="commkind" type="STRING" size="256"/>
  1306. <Column id="rexgbn" type="STRING" size="256"/>
  1307. </ColumnInfo>
  1308. </Dataset>
  1309. <Dataset id="ds_data_blank" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1310. <ColumnInfo>
  1311. <Column id="dsvaluepath" type="STRING" size="256"/>
  1312. <Column id="left" type="STRING" size="256"/>
  1313. <Column id="top" type="STRING" size="256"/>
  1314. <Column id="b472size" type="STRING" size="256"/>
  1315. </ColumnInfo>
  1316. </Dataset>
  1317. <Dataset id="ds_data_comm01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1318. <ColumnInfo>
  1319. <Column id="setupval" type="STRING" size="256"/>
  1320. </ColumnInfo>
  1321. </Dataset>
  1322. <Dataset id="ds_data_comm02" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1323. <ColumnInfo>
  1324. <Column id="dsvaluepath" type="STRING" size="256"/>
  1325. <Column id="comm" type="STRING" size="256"/>
  1326. <Column id="databit" type="STRING" size="256"/>
  1327. <Column id="stopbit" type="STRING" size="256"/>
  1328. <Column id="baudrate" type="STRING" size="256"/>
  1329. <Column id="parity" type="STRING" size="256"/>
  1330. </ColumnInfo>
  1331. <Rows>
  1332. <Row>
  1333. <Col id="dsvaluepath">/setupinfo</Col>
  1334. <Col id="comm">2</Col>
  1335. <Col id="databit">8</Col>
  1336. <Col id="stopbit">1</Col>
  1337. <Col id="baudrate">9600</Col>
  1338. <Col id="parity">n</Col>
  1339. </Row>
  1340. </Rows>
  1341. </Dataset>
  1342. <Dataset id="ds_data_comm03" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1343. <ColumnInfo>
  1344. <Column id="dsvaluepath" type="STRING" size="256"/>
  1345. <Column id="comm" type="STRING" size="256"/>
  1346. <Column id="databit" type="STRING" size="256"/>
  1347. <Column id="stopbit" type="STRING" size="256"/>
  1348. <Column id="baudrate" type="STRING" size="256"/>
  1349. <Column id="parity" type="STRING" size="256"/>
  1350. </ColumnInfo>
  1351. <Rows>
  1352. <Row>
  1353. <Col id="dsvaluepath">/setupinfo</Col>
  1354. <Col id="comm">2</Col>
  1355. <Col id="databit">8</Col>
  1356. <Col id="stopbit">1</Col>
  1357. <Col id="baudrate">9600</Col>
  1358. <Col id="parity">n</Col>
  1359. </Row>
  1360. </Rows>
  1361. </Dataset>
  1362. <Dataset id="ds_temp_clincobsfluidrecinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1363. <Dataset id="ds_main_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1364. <ColumnInfo>
  1365. <Column id="pid" type="STRING" size="256"/>
  1366. <Column id="indd" type="STRING" size="256"/>
  1367. <Column id="cretno" type="STRING" size="256"/>
  1368. <Column id="ordtype" type="STRING" size="256"/>
  1369. <Column id="indschacptstat" type="STRING" size="256"/>
  1370. <Column id="dschdd" type="STRING" size="256"/>
  1371. <Column id="eroutdd" type="STRING" size="256"/>
  1372. <Column id="patnm" type="STRING" size="256"/>
  1373. <Column id="sexage" type="STRING" size="256"/>
  1374. <Column id="wardcd" type="STRING" size="256"/>
  1375. <Column id="roomcd" type="STRING" size="256"/>
  1376. <Column id="orddeptcd" type="STRING" size="256"/>
  1377. <Column id="medispclid" type="STRING" size="256"/>
  1378. <Column id="sectioncd" type="STRING" size="256"/>
  1379. </ColumnInfo>
  1380. <Rows>
  1381. <Row/>
  1382. </Rows>
  1383. </Dataset>
  1384. <Dataset id="ds_send_imginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1385. <ColumnInfo>
  1386. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  1387. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  1388. <Column id="cretno" type="INT" size="256" sumtext="생성번호"/>
  1389. <Column id="recdd" type="STRING" size="256" sumtext="기록일자"/>
  1390. <Column id="recflag" type="STRING" size="256" sumtext="기록구분"/>
  1391. <Column id="imgrslt" type="BLOB" size="0" encript="base64" sumtext="기록구분"/>
  1392. <Column id="imght" type="STRING" size="256" sumtext="기록구분"/>
  1393. <Column id="imgwidt" type="STRING" size="256" sumtext="기록구분"/>
  1394. </ColumnInfo>
  1395. </Dataset>
  1396. <Dataset id="ds_temp_viewinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1397. <Dataset id="ds_temp_viewinfo_viewlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1398. <Dataset id="ds_send_signdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1399. <Dataset id="Dataset00" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1400. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  1401. <Dataset id="Dataset01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1402. <ColumnInfo>
  1403. <Column id="code" type="STRING" size="256"/>
  1404. </ColumnInfo>
  1405. <Rows>
  1406. <Row/>
  1407. </Rows>
  1408. </Dataset>
  1409. <Dataset id="ds_send_clincobsreclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  1410. <ColumnInfo>
  1411. <Column id="status" type="STRING" size="256"/>
  1412. <Column id="pid" type="STRING" size="256"/>
  1413. <Column id="indd" type="STRING" size="256"/>
  1414. <Column id="cretno" type="STRING" size="256"/>
  1415. <Column id="wardcd" type="STRING" size="256"/>
  1416. <Column id="roomcd" type="STRING" size="256"/>
  1417. <Column id="instcd" type="STRING" size="256"/>
  1418. <Column id="ioflag" type="STRING" size="256"/>
  1419. <Column id="itemcd" type="STRING" size="256"/>
  1420. <Column id="itemseqno" type="STRING" size="256"/>
  1421. <Column id="recflag" type="STRING" size="256"/>
  1422. <Column id="recdt" type="STRING" size="256"/>
  1423. <Column id="recrslt" type="STRING" size="256"/>
  1424. <Column id="certkey" type="STRING" size="256"/>
  1425. <Column id="carerecseqno" type="STRING" size="256"/>
  1426. </ColumnInfo>
  1427. </Dataset>
  1428. </Objects>
  1429. <Bind>
  1430. <BindItem id="item0" compid="group1.grp_inpatinfo.cmb_wardlist" propid="value" datasetid="ds_cond" columnid="wardcd"/>
  1431. <BindItem id="item2" compid="group1.grp_inpatinfo.cmb_zone" propid="value" datasetid="ds_cond" columnid="zonecd"/>
  1432. <BindItem id="item5" compid="group1.grp_inpatinfo.ipt_pid" propid="value" datasetid="ds_cond" columnid="pid"/>
  1433. <BindItem id="item4" compid="group1.grp_oderinpatinfo.ipt_orderpid" propid="value" datasetid="ds_cond" columnid="pid"/>
  1434. <BindItem id="item1" compid="group1.rdo_srchflag" propid="value" datasetid="ds_cond" columnid="srchflag"/>
  1435. <BindItem id="item6" compid="group2.opt_detlval" propid="value" datasetid="ds_cond_detlrecinfo" columnid="detlval"/>
  1436. <BindItem id="item7" compid="group2.opt_usernm" propid="value" datasetid="ds_cond_detlrecinfo" columnid="usernm"/>
  1437. <BindItem id="item8" compid="group2.opt_subtotal" propid="value" datasetid="ds_cond_detlrecinfo" columnid="subtotal"/>
  1438. <BindItem id="item9" compid="group2.opt_subtotalarray" propid="value" datasetid="ds_cond_detlrecinfo" columnid="subtotalarray"/>
  1439. <BindItem id="item10" compid="grp_srchbaselist.ipt_24hoursrecdd" propid="value" datasetid="ds_cond" columnid="recdd"/>
  1440. <BindItem id="item11" compid="grp_srchbaselist.cmb_24hourstimeflag" propid="value" datasetid="ds_cond" columnid="timeflag"/>
  1441. <BindItem id="item12" compid="grp_srchbaselist.chk_nextyn" propid="value" datasetid="ds_cond" columnid="nextyn"/>
  1442. <BindItem id="item13" compid="group1.grp_meetinfo.cap_familymeetamvalue" propid="text" datasetid="ds_data_patdetllist" columnid="ammemo"/>
  1443. <BindItem id="item14" compid="group1.grp_meetinfo.cap_familymeetpmvalue" propid="text" datasetid="ds_data_patdetllist" columnid="pmmemo"/>
  1444. <BindItem id="item15" compid="grp_chkbox.caption28" propid="text" datasetid="ds_data_patdetllist" columnid="duser"/>
  1445. <BindItem id="item16" compid="grp_chkbox.caption29" propid="text" datasetid="ds_data_patdetllist" columnid="euser"/>
  1446. <BindItem id="item17" compid="grp_chkbox.caption30" propid="text" datasetid="ds_data_patdetllist" columnid="nuser"/>
  1447. <BindItem id="item18" compid="group1.grp_patinfolist.cap_brthddvalue" propid="text" datasetid="ds_data_patdetllist" columnid="brthdd"/>
  1448. <BindItem id="item19" compid="group1.grp_patinfolist.cap_chngroomvalue" propid="text" datasetid="ds_data_patdetllist" columnid="chngroom"/>
  1449. <BindItem id="item20" compid="group1.grp_patinfolist.cap_apchvalue" propid="text" datasetid="ds_data_patdetllist" columnid="apchscore"/>
  1450. <BindItem id="item21" compid="group1.grp_patinfolist.cap_bloodvalue" propid="text" datasetid="ds_data_patdetllist" columnid="blood"/>
  1451. <BindItem id="item22" compid="group1.grp_patinfolist.cap_bmtvalue" propid="text" datasetid="ds_data_patdetllist" columnid="bmt"/>
  1452. <BindItem id="item23" compid="group1.grp_patinfolist.cap_cpvalue" propid="text" datasetid="ds_data_patdetllist" columnid="cp"/>
  1453. <BindItem id="item24" compid="group1.grp_patinfolist.cap_dvalue" propid="text" datasetid="ds_data_patdetllist" columnid="d"/>
  1454. <BindItem id="item25" compid="group1.grp_patinfolist.cap_hdvalue" propid="text" datasetid="ds_data_patdetllist" columnid="hd"/>
  1455. <BindItem id="item26" compid="group1.grp_patinfolist.cap_heightvalue" propid="text" datasetid="ds_data_patdetllist" columnid="height"/>
  1456. <BindItem id="item27" compid="group1.grp_patinfolist.cap_icuvalue" propid="text" datasetid="ds_data_patdetllist" columnid="icu"/>
  1457. <BindItem id="item28" compid="group1.grp_patinfolist.cap_opddvalue" propid="text" datasetid="ds_data_patdetllist" columnid="opdd"/>
  1458. <BindItem id="item29" compid="group1.grp_patinfolist.cap_podvalue" propid="text" datasetid="ds_data_patdetllist" columnid="pod"/>
  1459. <BindItem id="item30" compid="group1.grp_patinfolist.cap_seriousvalue1" propid="text" datasetid="ds_data_patdetllist" columnid="bapntnm"/>
  1460. <BindItem id="item31" compid="group1.grp_patinfolist.cap_seriousvalue3" propid="text" datasetid="ds_data_patdetllist" columnid="totpnt"/>
  1461. <BindItem id="item32" compid="group1.grp_patinfolist.cap_weightvalue" propid="text" datasetid="ds_data_patdetllist" columnid="weight"/>
  1462. <BindItem id="item3" compid="group1.cpt_vsinfo" propid="value" datasetid="ds_main_precondlist" columnid="blodpreplist"/>
  1463. <BindItem id="item33" compid="grp_btnlist.chk_existsdelinfo" propid="value" datasetid="ds_cond" columnid="existsdelinfo"/>
  1464. <BindItem id="item34" compid="group1.grp_outpatinfo.caption18" propid="text" datasetid="ds_patinfo" columnid="pid"/>
  1465. <BindItem id="item35" compid="group1.grp_outpatinfo.caption19" propid="text" datasetid="ds_patinfo" columnid="patnm"/>
  1466. <BindItem id="item36" compid="group1.grp_outpatinfo.caption20" propid="text" datasetid="ds_patinfo" columnid="sexage"/>
  1467. </Bind>
  1468. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  1469. * System Name :
  1470. * Job Name :
  1471. * Creator :
  1472. * Make Date : 2015-11-13
  1473. * Description :
  1474. *---------------------------------------------------------------------------------------
  1475. * Modify Date Modifier Modify Description
  1476. *---------------------------------------------------------------------------------------
  1477. * 2015-11-13 Live Converter TF->XP
  1478. *
  1479. *---------------------------------------------------------------------------------------
  1480. ****************************************************************************************/
  1481. include "com_commonxp::comm_main.xjs";
  1482. include "emr_prcpmngtxp::MMO001.xjs";
  1483. include "emr_carecomxp::CareCom.xjs";
  1484. include "emr_carerecxp::CareRec.xjs";
  1485. include "emr_carecomxp::ENRSignEngine.xjs"; //인증저장 모듈
  1486. include "pam_ipatmngtxp::PMI001.xjs";
  1487. //include "emr_carerecxp::SMMNR10100.xjs";
  1488. include "com_commodulexp::SSZFM00901.xjs";
  1489. include "lis_commonxp::LLZ001.xjs";
  1490. var sHeader = new Array();
  1491. var sFormerHeader = new Array();
  1492. var sGbn = ""; // 환자번호
  1493. var sPid = ""; // 환자번호
  1494. var sIndd = ""; // 입원일자
  1495. var sCretNo = ""; // 환자 일자별 일련번호
  1496. var sInstcd = ""; // 기관코드
  1497. var sIOFlag = ""; // 입원/외래 구분
  1498. var sWardCD = ""; // 병동코드
  1499. var sRoomCD = ""; // 병실코드
  1500. var sJobKindCD = ""; // 직급코드
  1501. var sIndschacptstat = "";
  1502. var sDschdd = "";
  1503. var sChartItem = new Array();
  1504. var sDayCountFlag = "";
  1505. var sPopUpMenuFlag = "";
  1506. var s4DateSrch = "";
  1507. var sViewerRecDD = "";
  1508. var sViewerFunc = "sign";
  1509. var sMakeChartInfo = new Array();
  1510. var sImageRecDD = "";
  1511. var sPatNm = "";
  1512. var sSexAge = "";
  1513. var sDutplcecd = "";
  1514. var sOrdDeptcd = "";
  1515. var sMedispclid = "";
  1516. var sUserFlag = "";
  1517. var sUserDeptCd = "";
  1518. var sUserId = "";
  1519. var sUserNm = "";
  1520. var sSpParamInfo = "";
  1521. var sPamInfo = "";
  1522. var sParamInfo = "";
  1523. var sSelectView = "24hours";
  1524. var sFluidSumInfo = new Array(); //Fluid 합계 정보 배열
  1525. var sFluidBfSumInfo = new Array(); //Fluid 과거 합계 정보 배열
  1526. //환경설정 변수
  1527. var sDayStndTm = "999999";
  1528. var sEvenStndTm = "999999";
  1529. var sNightStndTm = "999999";
  1530. var sIoTmUseYn = "Y";
  1531. var sEventItemUseYn = "N";
  1532. var sSeriousYseYn = "N";
  1533. var sApchUseYn = "N";
  1534. var sHdayUseYn = "Y";
  1535. var sPodUseYn = "Y";
  1536. var sIcuDayUseYn = "N";
  1537. var sCpDayUseYn = "N";
  1538. var sBmtUseYn = "N";
  1539. var sAntiDayUseYn = "N";
  1540. var sHeightUseYn = "N";
  1541. var sWeightUseYn = "N";
  1542. var sBloodUseYn = "N";
  1543. var sChngRoomUseYn = "N";
  1544. var sOpddUseYn = "Y";
  1545. var sStartTm = "060000";
  1546. var sGraphUseYn = "Y"
  1547. var sSrchTypeInfo = "ALL";
  1548. var sInitTimeFlag = "60";
  1549. var sFamilyMeetUseYn = "N";
  1550. var sBrthddUseYn = "N";
  1551. var sWardBtnUseYn = "N";
  1552. var sHeaderFlag = "D";
  1553. var sTmpSaveUseYn = "N";
  1554. var sPatInfoViewCdnt = 0;
  1555. var sDayCountCnt = 0;
  1556. var sDataRowHeight = 23;
  1557. var sDataFontSize = 12;
  1558. var sTotaluseYn = "Y";
  1559. var sSubTotaluseYn = "N";
  1560. var sRunTotaluseYn = "N";
  1561. var sCurrentTMColInfo = 0; //Now 기준 Col정보
  1562. var sDutyTMColInfo1 = 0; //Day 기준 Col정보
  1563. var sDutyTMColInfo2 = 0; //Evening 기준 Col정보
  1564. var sDutyTMColInfo3 = 0; //Night 기준 Col정보
  1565. var sNowDate = "";
  1566. var sCurDT = utlf_getCurrentDate() + utlf_getCurrentTime();
  1567. var sCmbWardValue = "";
  1568. var sCmbRoomValue = "";
  1569. var sCmbPatValue = "";
  1570. var sCmbMyPatValue = "";
  1571. var s24ClsListInitYn = "N";
  1572. var sSclsChkFlag = "Y";
  1573. //---------(20110228) 경북대
  1574. var gcurrentpid = "";
  1575. //---------(20110228) 경북대
  1576. var sJobkind = sysf_getUserInfo("jobkindcd").substring(0, 2);
  1577. var mypatsrchflag = "Y";
  1578. //경북대 응급실 관련 변수 (2011.03.02 Ahn)
  1579. var eERDEPTCD = "";
  1580. var eERFLAG = "";
  1581. //경북대 기록지 구분용 (기록 유무 표시) _ 2011.03.10 (ahn)
  1582. var eRECFLAG = "erFlow"; // 임상관찰기록
  1583. var temp_wardcdgruplist = "";
  1584. var eRow = "";
  1585. var eCol = "";
  1586. var gEXPRComboCol = "";
  1587. var gstrEXPR = "";
  1588. var nowTimeCol = "";//20160826 추민수 트리레벨 1 분홍색을 하늘색으로 변경위해서...
  1589. var countTree = 0;//20160826 추민수 트리 클릭
  1590. var bolCilck = false;
  1591. var objDomParser;
  1592. var objDOM;
  1593. var arErrorCode = new HashArray();
  1594. var LoadGubun = false;
  1595. var screenX;
  1596. var screenY;
  1597. var grdheadCol;
  1598. var lnktopinfo = false;
  1599. var grdRow = 0;
  1600. var grdCol = 0;
  1601. var grd_Row = 0;
  1602. var grd_Col = 0;
  1603. var oldRow = 0;
  1604. var oldCol = 0;
  1605. var bolenter = false;
  1606. var enterRow = 0;
  1607. var enterCol = 0;
  1608. //var stredit = "";
  1609. var stredit2 = "";
  1610. var streditFocus = "";
  1611. var bolToData = false;//현재시간이 그리드에 표시 되는지 구분 (true == 현재시간이 그리드에 표시X)
  1612. function lf_setDsValue(pDsObj, pRow, pColumnName, pSetValue)
  1613. {
  1614. if((pDsObj.rowcount -1) < pRow){
  1615. for(var i = pRow - pDsObj.rowcount; i >= 0; i--){
  1616. pDsObj.addRow();
  1617. }
  1618. }
  1619. if(utlf_isNull(pDsObj.getColumnInfo(pColumnName)) || utlf_isNull(pDsObj.getColumn(pRow, pColumnName))){
  1620. pDsObj.addColumn(pColumnName, "string", 256);
  1621. }
  1622. pDsObj.setColumn(pRow, pColumnName, pSetValue);
  1623. }
  1624. function lf_getDsValue(pDsObj, pRow, pColumnName)
  1625. {
  1626. return (utlf_isNull(pDsObj.getColumnInfo(pColumnName)) || utlf_isNull(pDsObj.getColumn(pRow, pColumnName))) ? "" : pDsObj.getColumn(pRow, pColumnName);
  1627. }
  1628. function lf_findDsRow(pDsObj, pColumnName, pFindValue)
  1629. {
  1630. return utlf_isNull(pDsObj.getColumnInfo(pColumnName)) ? -1 : pDsObj.findRow(pColumnName, pFindValue);
  1631. }
  1632. function lf_PopupChngTime(){
  1633. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  1634. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  1635. if( fChkSaveData() == false ) return;
  1636. var iRow = ds_grd_24hoursclincobsreclist.rowposition;
  1637. var sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow, "carerecseqno");
  1638. var sItemnm = ds_grd_24hoursclincobsreclist.getColumn(iRow, "itemnm");
  1639. var sItemRecFromDt = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recfromdt");
  1640. var sItemRecToDt = ds_grd_24hoursclincobsreclist.getColumn(iRow, "rectodt");
  1641. frmf_setParameter("SPMNR10600_Param", sCareRecSeqNo+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sItemnm+"▦"+sItemRecFromDt+"▦"+sItemRecToDt+"▩");
  1642. frmf_modal("SPMNR10600", "SPMNR10600", "","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  1643. sRtnParamInfo = frmf_getParameter("SPMNR10600_RtnParam");
  1644. //SPMNR10600 화면에서 저장완료되면 fSearchClincObsRec("24hours") 호출
  1645. //fSearchClincObsRec("24hours");
  1646. frmf_clearParameter("SPMNR10600_Param");
  1647. frmf_clearParameter("SPMNR10600_RtnParam");
  1648. }
  1649. function lf_CalcValueSubTotal(){
  1650. var sPopUpMenuFlag = ds_cond.getColumn(0,"vwctrl_button");
  1651. var sDataSum = 0;
  1652. switch(sPopUpMenuFlag){
  1653. case "24hours" :
  1654. //var sCells = grd_24hoursclincobsreclist.selectedCells;
  1655. var sRows = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  1656. var sCols = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  1657. for(var irow = 0 ; irow < sRows.length;irow++)
  1658. {
  1659. for(var i = 0 ; i < sCols.length ; i ++){
  1660. var col = sCols[i];
  1661. var row = sRows[irow];
  1662. var subtotal = 0;
  1663. var sSubTotalRecFlag = ds_grd_24hoursclincobsreclist.getColumn(row,"recflag");
  1664. var sSubTotalAttrCd = ds_grd_24hoursclincobsreclist.getColumn(row,"attrcd");
  1665. if( utlf_isNull(sSubTotalAttrCd) || sSubTotalRecFlag == "B" || sSubTotalRecFlag == "C" || sSubTotalRecFlag == "T" ){
  1666. subtotal = group4.grd_24hoursclincobsreclist.getCellValue( row, col );
  1667. }
  1668. if( !utlf_isNull(subtotal) && fIsNumber(subtotal) == true){
  1669. sDataSum += Number(subtotal) ;
  1670. }
  1671. }
  1672. }
  1673. alert( sDataSum );
  1674. break;
  1675. }
  1676. sPopUpMenuFlag = "";
  1677. }
  1678. /****************************************************************************************
  1679. * Components : popup menu
  1680. * Components ID : pmn_popupMenuMain
  1681. * Event : onmenuclick
  1682. * Argument : 01.obj : Object Event has occurred
  1683. * : 02.e : Event Object
  1684. * Description : 마우스 우측메뉴 클릭 이벤트(메인그리드)
  1685. ****************************************************************************************/
  1686. function pmn_popupMenuMain_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1687. {
  1688. switch(e.id){
  1689. case "chngnm" : //확장명 변경
  1690. fPopupInputExtNm();
  1691. break;
  1692. case "settime" : //Item 시작/종료 시간 설정
  1693. lf_PopupChngTime();
  1694. break;
  1695. case "subtotal" : //SubTotal
  1696. lf_CalcValueSubTotal();
  1697. break;
  1698. case "drugadditem" : //약/주사 항목 추가
  1699. lf_PopupAddFluid();
  1700. break;
  1701. case "valuecopy" : //Copy
  1702. lf_ControlGridCopy();
  1703. break;
  1704. case "valuedel" : //Delete
  1705. lf_ControlGridClean();
  1706. break;
  1707. }
  1708. }
  1709. function SMMNR10100_oninit(obj:Form, e:InitEventInfo)
  1710. {
  1711. frmf_initForm(obj); // 화면공통
  1712. }
  1713. function pop_iteminitmenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1714. {
  1715. }
  1716. function SMMNR10100_onload(obj:Form, e:LoadEventInfo)
  1717. {
  1718. zesf_InitSign(); // 전자서명관련 모듈 생성 및 초기화
  1719. // var sProp = "col=10,row=2,cellspacing=2,vcellspacing=0,itemWidth=80,itemHeight=20,overflow='visible'";
  1720. // chk_24hoursclslist.setInitComp(sProp, ds_chk_tootstatkind,"code","name", "fn_24hoursclslist");
  1721. //마우스 우측 메뉴 항목 세팅(메인)
  1722. frmf_createPopupMenu("pmn_popupMenuMain", "pmn_popupMenuMain_onmenuclick", [{id: "settime", level: "1", title: "시작/종료 시간 설정"}
  1723. ,{id: "chngnm", level: "1", title: "확장명 변경"}
  1724. ,{id: "subtotal", level: "1", title: "SubTotal"}
  1725. ,{id: "drugadditem", level: "1", title: "약/주사 항목 추가"}
  1726. ,{id: "valuecopy", level: "1", title: "입력값 복사"}
  1727. ,{id: "valuedel", level: "1", title: "입력값 삭제"}
  1728. ], "ds_data_mainpop");
  1729. var sProp = "col=10,row=2,cellspacing=4,vcellspacing=0,itemWidth=-1,itemHeight=15,overflow='visible'";
  1730. grp_srchbaselist.chk_24hoursclslist.setInitComp(sProp, ds_init_clsinfo, "itemcd","itemnm", "fn_24hoursclslist");
  1731. LoadGubun = true;
  1732. grp_chkbox.chk_hourschartinfo.setBindDataset(ds_init_chartlist,"cd","nm");
  1733. fInitialize("init");
  1734. fInitViewer();
  1735. this.setTimer(1, 100);
  1736. }
  1737. function SMMNR10100_ontimer(obj:Form, e:TimerEventInfo)
  1738. {
  1739. if(e.timerid == 1) {
  1740. this.killTimer(e.timerid);
  1741. //frmf_inputEnterKey("group1.grp_inpatinfo.cmb_patlist", "onitemchanged", new ItemChangeEventInfo );
  1742. if(!utlf_isNull(group1.grp_inpatinfo.cmb_patlist.value))
  1743. {
  1744. if( fChkSaveData() == false ){
  1745. group1.grp_inpatinfo.cmb_patlist.value = scmbpatvalue;
  1746. return;
  1747. }
  1748. fSetParam("SrchPat", group1.grp_inpatinfo.cmb_patlist.index);
  1749. this.setFocus();
  1750. }else if(sIndschacptstat == "D" || sIndschacptstat == "T"){
  1751. fSettingPatInfo2("patinit");
  1752. this.setFocus();
  1753. }
  1754. LoadGubun = false;
  1755. countTree = 0;
  1756. }
  1757. }
  1758. function fn_24hoursclslist()
  1759. {
  1760. var getData = String(grp_srchbaselist.chk_24hoursclslist.getData()).replace(","," ");
  1761. ds_cond.setColumn(0, "hoursclsinfo", getData);
  1762. //ds_cond.setColumn(0,"hoursclsinfo"));
  1763. }
  1764. function SMMNR10100_onclose(obj:Form, e:CloseEventInfo)
  1765. {
  1766. // 2.0 에서 장시간 미사용일 때 창 닫을 때 아래 모달 팝업 띄우면서 스크린 정보를 가져오면서 submit 호출 하여 암호확인창 뜨는 경우 꼬이는 현상이 있어서 주석
  1767. //frmf_modal("SPMNZ00300","SPMNZ00300", "","","","","","","","","","","M");
  1768. //common.js
  1769. frmf_closeChildPop();
  1770. }
  1771. // function fn_24hoursclslist()
  1772. // {
  1773. // var getData = String(chk_tootstatkind.getData()).replace(","," ");
  1774. // ds_data_tootstat.setColumn(0, "tootstatkind", getData);
  1775. // }
  1776. function group1_grp_oderinpatinfo_cmb_deptlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1777. {
  1778. ds_data_patientgruplist.clearData();
  1779. group1.grp_oderinpatinfo.ipt_orderpid.value = "";
  1780. fInitViewInfo();
  1781. lf_mmbfGetUserComboList(ds_init_cmb_medispcllist , e.postvalue,"0330", "", "M");
  1782. lf_mmbfGetUserComboList(ds_init_cmb_atdoctlist , e.postvalue,"0330", "", "A");
  1783. dsf_addDsItem( ds_init_cmb_medispcllist, "userid", "usernm", "전체", "-", "above");
  1784. dsf_addDsItem( ds_init_cmb_atdoctlist, "userid", "usernm", "전체", "-", "above");
  1785. if(e.postvalue ==sUserDeptCd){
  1786. group1.grp_oderinpatinfo.cmb_medispcllist.value = sUserId;
  1787. }else{
  1788. group1.grp_oderinpatinfo.cmb_medispcllist.value = "-";
  1789. }
  1790. group1.grp_oderinpatinfo.cmb_atdoctlist.value = "-";
  1791. fGetCareComDeptPatList(e.postvalue, group1.grp_oderinpatinfo.cmb_medispcllist.value , group1.grp_oderinpatinfo.cmb_atdoctlist.value, group1.grp_oderinpatinfo.chk_mypatchk.value);
  1792. group1.grp_oderinpatinfo.cmb_medispcllist.setFocus();
  1793. }
  1794. function group1_grp_oderinpatinfo_cmb_medispcllist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1795. {
  1796. ds_data_patientgruplist.clearData();
  1797. group1.grp_oderinpatinfo.ipt_orderpid.value = "";
  1798. fInitViewInfo();
  1799. fGetCareComDeptPatList(group1.grp_oderinpatinfo.cmb_deptlist.value, e.postvalue , group1.grp_oderinpatinfo.cmb_atdoctlist.value, group1.grp_oderinpatinfo.chk_mypatchk.value);
  1800. group1.grp_oderinpatinfo.cmb_oderpatlist.setFocus();
  1801. }
  1802. function group1_grp_oderinpatinfo_cmb_atdoctlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1803. {
  1804. ds_data_patientgruplist.clearData();
  1805. group1.grp_oderinpatinfo.ipt_orderpid.value = "";
  1806. fInitViewInfo();
  1807. fGetCareComDeptPatList(group1.grp_oderinpatinfo.cmb_deptlist.value, group1.grp_oderinpatinfo.cmb_medispcllist.value ,e.postvalue, group1.grp_oderinpatinfo.chk_mypatchk.value);
  1808. group1.grp_oderinpatinfo.cmb_oderpatlist.setFocus();
  1809. }
  1810. function group1_grp_oderinpatinfo_cmb_oderpatlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1811. {
  1812. group1.grp_inpatinfo.cmb_patlist.index = e.postindex;
  1813. fSetParam("SrchPat", e.postindex);
  1814. this.setFocus();
  1815. }
  1816. function group1_grp_oderinpatinfo_chk_mypatchk_onclick(obj:CheckBox, e:ClickEventInfo)
  1817. {
  1818. ds_data_patientgruplist.clearData();
  1819. group1.grp_oderinpatinfo.ipt_orderpid.value = "";
  1820. fInitViewInfo();
  1821. fGetCareComDeptPatList(group1.grp_oderinpatinfo.cmb_deptlist.value, group1.grp_oderinpatinfo.cmb_medispcllist.value , group1.grp_oderinpatinfo.cmb_atdoctlist.value, obj.value);
  1822. group1.grp_oderinpatinfo.cmb_oderpatlist.setFocus();
  1823. }
  1824. function group1_grp_inpatinfo_cap_mypat_onclick(obj:Static, e:ClickEventInfo)
  1825. {
  1826. fPopupMyPatSetting();
  1827. }
  1828. function group1_grp_inpatinfo_cmb_wardlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1829. {
  1830. obj.updateToDataset();
  1831. if( fChkSaveData() == false ){
  1832. obj.value = sCmbWardValue;
  1833. return;
  1834. }
  1835. // 응급실인 경우 (2011.03.02 Ahn)
  1836. ds_data_roomcdgruplist.clearData();
  1837. //ds_data_patientgruplist.clearData();
  1838. //group1.grp_inpatinfo.cmb_roomlist.value = "";
  1839. group1.grp_inpatinfo.cmb_roomlist.enableevent = false;
  1840. group1.grp_inpatinfo.cmb_roomlist.value = "";
  1841. group1.grp_inpatinfo.cmb_roomlist.enableevent = true;
  1842. fGetWardChngInfo("N");
  1843. fInitViewInfo();
  1844. //fGetCareComRoomList(e.postvalue);// 병실정보를 가져온다.
  1845. fGetCareComRoomList( group1.grp_inpatinfo.cmb_wardlist.value);// 병실정보를 가져온다.
  1846. group1.grp_inpatinfo.ipt_pid.value = "";
  1847. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  1848. sCmbWardValue = group1.grp_inpatinfo.cmb_wardlist.value;
  1849. if(eERFLAG == "Y"){ // 응급실 조회인 경우 defalut로 'All' 구역 환자 조회
  1850. group1.grp_inpatinfo.cmb_roomlist.value = ds_data_roomcdgruplist.getColumn(0,"roomcd");
  1851. //fGetEmerPatList(cmb_wardcd.value, cmb_roomcd.value, cmb_zone.value);// 환자정보
  1852. fGetCareComPatList(e.postvalue, group1.grp_inpatinfo.cmb_roomlist.value, group1.grp_inpatinfo.cmb_zone.value, eRECFLAG);// 환자정보
  1853. group1.grp_inpatinfo.cmb_erpat.setFocus();
  1854. }else{
  1855. if( ds_data_roomcdgruplist.rowcount < 2 ){
  1856. group1.grp_inpatinfo.cmb_roomlist.index = 0;
  1857. fGetCareComPatList(e.postvalue, group1.grp_inpatinfo.cmb_roomlist.value);// 병실정보를 가져온다.
  1858. group1.grp_inpatinfo.ipt_pid.value = "";
  1859. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  1860. sCmbRoomValue = group1.grp_inpatinfo.cmb_roomlist.value;
  1861. group1.grp_inpatinfo.cmb_patlist.setFocus();
  1862. }else{
  1863. // if(!utlf_isNull(group1.grp_inpatinfo.cmb_roomlist.value) && group1.grp_inpatinfo.cmb_roomlist.value != "-")
  1864. // {
  1865. // frmf_inputEnterKey("group1.grp_inpatinfo.cmb_roomlist", "onitemchanged", new ItemChangeEventInfo );
  1866. // }
  1867. group1.grp_inpatinfo.cmb_roomlist.setFocus();
  1868. }
  1869. }
  1870. }
  1871. function group1_grp_inpatinfo_cmb_roomlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1872. {
  1873. if( fChkSaveData() == false ){
  1874. obj.value = sCmbRoomValue;
  1875. return;
  1876. }
  1877. //ds_data_patientgruplist.clearData();
  1878. fInitViewInfo();
  1879. fGetCareComPatList(group1.grp_inpatinfo.cmb_wardlist.value, group1.grp_inpatinfo.cmb_roomlist.value);// 병실정보를 가져온다.
  1880. group1.grp_inpatinfo.ipt_pid.value = "";
  1881. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  1882. sCmbRoomValue = group1.grp_inpatinfo.cmb_roomlist.value;
  1883. group1.grp_inpatinfo.cmb_patlist.setFocus();
  1884. }
  1885. function group1_grp_inpatinfo_cmb_mypatlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1886. {
  1887. if( fChkSaveData() == false ){
  1888. obj.value = sCmbMyPatValue;
  1889. return;
  1890. }
  1891. sCmbMyPatValue = group1.grp_inpatinfo.cmb_mypatlist.index;
  1892. fSetParam("SettingPat", group1.grp_inpatinfo.cmb_mypatlist.index);
  1893. this.setFocus();
  1894. }
  1895. function group1_grp_inpatinfo_cmb_zone_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1896. {
  1897. fGetCareComPatList(group1.grp_inpatinfo.cmb_wardlist.value, group1.grp_inpatinfo.cmb_roomlist.value, group1.grp_inpatinfo.cmb_zone.value, eRECFLAG);
  1898. group1.grp_inpatinfo.cmb_erpat.setFocus();
  1899. }
  1900. function group1_grp_inpatinfo_cmb_patlist_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1901. {
  1902. if( fChkSaveData() == false ){
  1903. obj.value = scmbpatvalue;
  1904. return;
  1905. }
  1906. scmbpatvalue = group1.grp_inpatinfo.cmb_patlist.value;
  1907. fSetParam("SrchPat", group1.grp_inpatinfo.cmb_patlist.index);
  1908. this.setFocus();
  1909. }
  1910. function group1_grp_inpatinfo_cmb_erpat_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1911. {
  1912. fSetParam("SrchPat", e.postindex);
  1913. }
  1914. function group1_grp_patinfolist_cap_weight_onclick(obj:Static, e:ClickEventInfo)
  1915. {
  1916. fPopupWeightList();
  1917. }
  1918. function group1_grp_patinfolist_cap_weightvalue_onclick(obj:Static, e:ClickEventInfo)
  1919. {
  1920. fPopupWeightList();
  1921. }
  1922. function group1_grp_patinfolist_cap_brthdd_onclick(obj:Static, e:ClickEventInfo)
  1923. {
  1924. fPopupEtcRec("02");
  1925. }
  1926. function group1_grp_patinfolist_cap_brthddvalue_onclick(obj:Static, e:ClickEventInfo)
  1927. {
  1928. fPopupEtcRec("02");
  1929. }
  1930. function group1_grp_meetinfo_cap_familymeetpmvalue_onclick(obj:Static, e:ClickEventInfo)
  1931. {
  1932. fPopupPatMeetRec();
  1933. }
  1934. function group1_btn_lnktopinfo_onclick(obj:Button, e:ClickEventInfo)
  1935. {
  1936. if( !utlf_isNull(sysf_getGlobalVariable("paminfo")) ){
  1937. if( sysf_messageBox("상단 환자의 FlowSheet 기록을 조회 하시겠습니까?", "Q") == 6 ){
  1938. if( fChkSaveData() == false ) return;
  1939. fInitialize("init");
  1940. if(sIndschacptstat == "D" || sIndschacptstat == "T"){
  1941. fSettingPatInfo2("patinit");
  1942. }else{
  1943. fSetParam("SrchPat", group1.grp_inpatinfo.cmb_patlist.index);
  1944. }
  1945. this.setFocus();
  1946. }
  1947. }
  1948. }
  1949. function group4_grd_24hoursclincobsreclist_onenteredit(obj:Grid, e:GridEditEventInfo)
  1950. {
  1951. fChangeGridEdit("24hours", e.row);
  1952. //group4.grd_24hoursclincobsreclist.setCellProperty("Body", e.col, "combodatacol", "attrnm");
  1953. }
  1954. function group4_grd_24hoursclincobsreclist_onselectchanged(obj:Grid, e:GridSelectEventInfo)
  1955. {
  1956. //fEnterGridCell("24hours",e.row,e.col);
  1957. //멀티 일경우
  1958. var ColMCount = 0;
  1959. var RowMCount = 0;
  1960. var readonly = "";
  1961. var totalyn = "";
  1962. var readonlyyn = "";
  1963. var style = "";
  1964. var lnkbizcd = "";
  1965. var depth;
  1966. var sNextStatus = false;
  1967. ColMCount = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  1968. RowMCount = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  1969. if(oldCol < 0 || oldRow < 0){
  1970. return;
  1971. }
  1972. if(ColMCount.length > 1 || RowMCount.length > 1)
  1973. {
  1974. bolenter = false;
  1975. // Edittype Combo, Multi Select Combodatacol Changed
  1976. if(ds_grd_24hoursclincobsreclist.getColumn(e.oldrow, "edittype"+e.oldcol) == "combo")
  1977. {
  1978. ds_grd_24hoursclincobsreclist.setColumn(e.oldrow,"cboname" + e.oldcol,"attrgrde");
  1979. }
  1980. return;
  1981. }
  1982. if(bolenter == false)
  1983. {
  1984. if(ds_grd_24hoursclincobsreclist.getColumn(e.oldrow, "edittype"+e.oldcol) == "text" || ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype"+oldCol) == "text")
  1985. {
  1986. stredit2 = "";
  1987. streditFocus = "";
  1988. }
  1989. }
  1990. else if(bolenter == true)
  1991. {
  1992. if(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype"+oldCol) == "text")
  1993. {
  1994. stredit2 = "";
  1995. streditFocus = "";
  1996. }
  1997. }
  1998. if(bolenter == false)
  1999. {
  2000. if(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype"+oldCol) == "combo")
  2001. {
  2002. if(!utlf_isNull(stredit2))
  2003. {
  2004. var Gubun = false;
  2005. var nAttrcd = lf_getDsValue(ds_grd_24hoursclincobsreclist, oldRow, "attrcd");
  2006. //stredit2 = group4.grd_24hoursclincobsreclist.getEditText(e.oldrow, e.oldcol);
  2007. Gubun = lf_showExpr(nAttrcd, oldRow, oldCol, stredit2);
  2008. //if(Gubun == true)
  2009. //{
  2010. ds_grd_24hoursclincobsreclist.setColumn(oldRow, "recrslt"+oldCol, stredit2);
  2011. //}
  2012. }
  2013. else if(utlf_isNull(stredit2))
  2014. {
  2015. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "recrslt"+oldCol)))
  2016. {
  2017. ds_grd_24hoursclincobsreclist.setColumn(oldRow, "recrslt"+oldCol, stredit2);
  2018. }
  2019. }
  2020. // Edittype Combo, Select Combodatacol Changed
  2021. ds_grd_24hoursclincobsreclist.setColumn(oldRow,"cboname" + oldCol,"attrgrde");
  2022. }
  2023. stredit2 = "";
  2024. streditFocus = "";
  2025. }
  2026. // else if(bolenter == true)
  2027. // {
  2028. // if(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype"+oldCol) == "combo")
  2029. // {
  2030. // if(!utlf_isNull(stredit2))
  2031. // {
  2032. // var Gubun = false;
  2033. // var nAttrcd = lf_getDsValue(ds_grd_24hoursclincobsreclist, oldRow, "attrcd");
  2034. // //stredit2 = group4.grd_24hoursclincobsreclist.getEditText(e.oldrow, e.oldcol);
  2035. // Gubun = lf_showExpr(nAttrcd, oldRow, oldCol, stredit2);
  2036. // ds_grd_24hoursclincobsreclist.setColumn(oldRow, oldCol, stredit2);
  2037. // }
  2038. // else if(utlf_isNull(stredit2))
  2039. // {
  2040. // if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(e.oldrow, "recrslt"+e.oldcol)))
  2041. // {
  2042. // ds_grd_24hoursclincobsreclist.setColumn(e.oldrow, e.oldcol, stredit2);
  2043. // }
  2044. // }
  2045. // stredit2 = "";
  2046. // ds_grd_24hoursclincobsreclist.setColumn(e.oldrow,"cboname" + e.oldcol,"attrgrde");
  2047. // }
  2048. // }
  2049. bolenter = false;
  2050. //grdRow = e.row;
  2051. //grdCol = e.col;
  2052. }
  2053. function cms()
  2054. {
  2055. // var sReChartFlag = "";
  2056. // var sAttrCD = "";
  2057. // var iRow = 0;
  2058. // var iCol = 0;
  2059. //
  2060. // for(iRow = 0 ; iRow < ds_grd_24hoursclincobsreclist.rowcount ;iRow++)
  2061. // {
  2062. // for(iCol = 0 ; iCol < ds_grd_24hoursclincobsreclist.colcount ;iCol++)
  2063. // {
  2064. // sReChartFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "reccharflag");
  2065. // sAttrCD = ds_grd_24hoursclincobsreclist.getColumn(iRow, "attrcd");
  2066. //
  2067. // if(sReChartFlag == "A" && !utlf_isNull(sAttrCD))
  2068. // {
  2069. // var DaFdssAttrCD = objects["fds_" + sAttrCD];
  2070. // ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"combo");
  2071. // ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"combo");
  2072. //
  2073. //
  2074. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodataset","expr:reccharflag == 'A' && !utlf_isNull(attrcd)?'fds_' + attrcd:''");
  2075. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combocodecol","attrcd");
  2076. //
  2077. // if(DaFdssAttrCD.getColumn(0, "attrnm") == DaFdssAttrCD.getColumn(0, "attrgrde"))
  2078. // {
  2079. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrnm");
  2080. // }
  2081. // else
  2082. // {
  2083. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrgrde");
  2084. // }
  2085. // }
  2086. // else
  2087. // {
  2088. // ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"text");
  2089. // ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"text");
  2090. // group4.grd_24hoursclincobsreclist.showEditor(true);
  2091. // }
  2092. // }
  2093. // }
  2094. }
  2095. function group4_grd_24hoursclincobsreclist_onmouseleave(obj:Grid, e:MouseEventInfo)
  2096. {
  2097. ds_cond_detlrecinfo.setColumn(0,"detlval", "");
  2098. ds_cond_detlrecinfo.setColumn(0,"usernm", "");
  2099. ds_cond_detlrecinfo.setColumn(0,"subtotal", "");
  2100. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", "");
  2101. eRow = "";
  2102. eCol = "";
  2103. }
  2104. function group4_grd_24hoursclincobsreclist_onmouseenter(obj:Grid, e:MouseEventInfo)
  2105. {
  2106. }
  2107. function group4_grd_24hoursclincobsreclist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  2108. {/*
  2109. //fSettingPopUpMenu("24hours");
  2110. if(sUserFlag == "2") return; //진료의사는 권한 없음
  2111. grdf_setSelectedCell(obj, e);
  2112. ds_data_mainpop.filter("");
  2113. var iRow = e.row;
  2114. var iCol = e.col;
  2115. var strfilter1 = "";
  2116. var strfilter2 = "";
  2117. var strfilter3 = "";
  2118. var strfilter4 = "";
  2119. var strfilter5 = "";
  2120. var strfilter6 = "";
  2121. var strfilterTotal = "";
  2122. var sPopupCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow, "carerecseqno");
  2123. var sPopupLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "lnkbizcd");
  2124. var sPopupRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recflag");
  2125. var SPopupRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "reccharflag");
  2126. var strEditType = "";
  2127. //strEditType = group4.grd_24hoursclincobsreclist.getCellProperty("Body", e.col, "editType");
  2128. var readonly = ds_grd_24hoursclincobsreclist.getColumn(iRow, "readonly" + iCol);
  2129. var totalyn = ds_grd_24hoursclincobsreclist.getColumn(iRow, "totalyn");
  2130. var readonlyyn = ds_grd_24hoursclincobsreclist.getColumn(iRow, "readonlyyn");
  2131. var style = ds_grd_24hoursclincobsreclist.getColumn(iRow, "style");
  2132. var lnkbizcd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "lnkbizcd");
  2133. var ColMCount = 0;
  2134. var RowMCount = 0;
  2135. if(iRow < 0)
  2136. {
  2137. ds_data_mainpop.filter("id == 'drugadditem'");
  2138. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2139. }
  2140. else
  2141. {
  2142. if( iCol == 0)
  2143. {
  2144. if( !utlf_isNull(sPopupCareRecSeqNo) && sPopupCareRecSeqNo != 0 )
  2145. {
  2146. if( SPopupRecCharFlag == "A" )
  2147. {
  2148. //Item 시작/종료 시간 설정
  2149. strfilter2 = "id == 'settime'";
  2150. }
  2151. //확장명 변경 popup메뉴 설정
  2152. if( sPopupLnkBizCd == "11" || sPopupLnkBizCd == "12" )
  2153. {
  2154. strfilter1 = "id == 'chngnm'";
  2155. }
  2156. }
  2157. }
  2158. if( (!utlf_isNull(sPopupCareRecSeqNo) && sPopupCareRecSeqNo != 0) || sPopupRecFlag == "T" || sPopupRecFlag == "S" || sPopupRecFlag == "R" )
  2159. {
  2160. //부분합계 popup메뉴 설정
  2161. strfilter3 = "id == 'subtotal'";
  2162. if( sPopupRecFlag != "T" && sPopupRecFlag != "S" && sPopupRecFlag != "R" )
  2163. {
  2164. //입력값 복사 popup메뉴 설정
  2165. strfilter5 = "id == 'valuecopy'";
  2166. //입력값 삭제 popup메뉴 설정
  2167. strfilter6 = "id == 'valuedel'";
  2168. }
  2169. }
  2170. if(!utlf_isNull(strfilter1))
  2171. {
  2172. if(utlf_isNull(strfilterTotal))
  2173. {
  2174. strfilterTotal += strfilter1;
  2175. }
  2176. else
  2177. {
  2178. strfilterTotal += " || " + strfilter1;
  2179. }
  2180. }
  2181. if(!utlf_isNull(strfilter2))
  2182. {
  2183. if(utlf_isNull(strfilterTotal))
  2184. {
  2185. strfilterTotal += strfilter2;
  2186. }
  2187. else
  2188. {
  2189. strfilterTotal += " || " + strfilter2;
  2190. }
  2191. }
  2192. if(!utlf_isNull(strfilter3))
  2193. {
  2194. if(utlf_isNull(strfilterTotal))
  2195. {
  2196. strfilterTotal += strfilter3;
  2197. }
  2198. else
  2199. {
  2200. strfilterTotal += " || " + strfilter3;
  2201. }
  2202. }
  2203. if(!utlf_isNull(strfilter5))
  2204. {
  2205. if(utlf_isNull(strfilterTotal))
  2206. {
  2207. strfilterTotal += strfilter5;
  2208. }
  2209. else
  2210. {
  2211. strfilterTotal += " || " + strfilter5;
  2212. }
  2213. }
  2214. if(!utlf_isNull(strfilter6))
  2215. {
  2216. if(utlf_isNull(strfilterTotal))
  2217. {
  2218. strfilterTotal += strfilter6;
  2219. }
  2220. else
  2221. {
  2222. strfilterTotal += " || " + strfilter6;
  2223. }
  2224. }
  2225. //멀티 일경우
  2226. for( var i=0 ; i < group4.grd_24hoursclincobsreclist.selectcount ; i++ ){
  2227. for( var j = group4.grd_24hoursclincobsreclist.selectstartcol[i] ; j <= group4.grd_24hoursclincobsreclist.selectendcol[i] ; j++ ){
  2228. ColMCount++;
  2229. }
  2230. for( var j = group4.grd_24hoursclincobsreclist.selectstartrow[i] ; j <= group4.grd_24hoursclincobsreclist.selectendrow[i] ; j++ ){
  2231. RowMCount++;
  2232. }
  2233. }
  2234. if(ColMCount > 1 || RowMCount > 1)
  2235. {
  2236. if(!utlf_isNull(strfilterTotal))
  2237. {
  2238. ds_data_mainpop.filter(strfilterTotal);
  2239. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2240. }
  2241. else
  2242. {
  2243. ds_data_mainpop.filter("id == ''");
  2244. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2245. }
  2246. }
  2247. else
  2248. {
  2249. //셀타입 None일경우
  2250. if(!utlf_isNull(strfilter2) || !utlf_isNull(strfilter1))
  2251. {
  2252. if(!utlf_isNull(strfilterTotal))
  2253. {
  2254. ds_data_mainpop.filter(strfilterTotal);
  2255. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2256. }
  2257. else
  2258. {
  2259. ds_data_mainpop.filter("id == ''");
  2260. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2261. }
  2262. }
  2263. else if(readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12'))))
  2264. {
  2265. if(!utlf_isNull(strfilterTotal))
  2266. {
  2267. ds_data_mainpop.filter(strfilterTotal);
  2268. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2269. }
  2270. else
  2271. {
  2272. ds_data_mainpop.filter("id == ''");
  2273. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  2274. }
  2275. }
  2276. }
  2277. }*/
  2278. }
  2279. function group4_grd_24hoursclincobsreclist_oncellclick(obj:Grid, e:GridClickEventInfo)
  2280. {
  2281. // fEnterGridCell("24hours",e.row,e.col);
  2282. if( e.col < 0 || e.row < 0 ){
  2283. return;
  2284. }
  2285. lastrow = -1;
  2286. lastcol = -1;
  2287. oldRow = e.row;
  2288. oldCol = e.col;
  2289. grdheadCol = oldCol;
  2290. stredit2 = "";
  2291. streditFocus = "";
  2292. if( e.oldcol != e.col)
  2293. {
  2294. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",e.oldcol,"combodatacol", gstrEXPR);//gstrEXPR
  2295. }
  2296. if(e.col == 0)
  2297. {
  2298. if(obj.userdata == 1) {
  2299. obj.userdata = 0;
  2300. return;
  2301. }
  2302. var row = obj.getTreeRow(e.row);
  2303. if(obj.getTreeStatus(row) == 0)
  2304. obj.setTreeStatus(row, true);
  2305. else if(obj.getTreeStatus(row) == 1)
  2306. obj.setTreeStatus(row, false);
  2307. obj.userdata = 0;
  2308. }
  2309. countTree = 0;
  2310. }
  2311. var bDrop = false;
  2312. function group4_grd_24hoursclincobsreclist_onlbuttonup(obj:Grid, e:GridMouseEventInfo)
  2313. {
  2314. // Combo DropDown Click 처리
  2315. grdf_setSelectedCell(obj, e);
  2316. group4.grd_24hoursclincobsreclist.autoenter = "key";
  2317. if( e.fromreferenceobject.name == "dropbutton" ){
  2318. bDrop = true;
  2319. }
  2320. if(e.col > 0)
  2321. {
  2322. fCalcDataSmmy("24hours");
  2323. }
  2324. if(e.row > -1 && e.col > 0 &&ds_grd_24hoursclincobsreclist.getColumn(e.row, "coltype" + e.col) == "combo") {
  2325. //group4.grd_24hoursclincobsreclist.autoenter = "select";
  2326. // Combo 선택시 활성화 및 combodatacol 변경
  2327. if(grdf_getSelectedCols(group4.grd_24hoursclincobsreclist).length == 1
  2328. && grdf_getSelectedRows(group4.grd_24hoursclincobsreclist).length == 1
  2329. && group4.grd_24hoursclincobsreclist.getEditText() == undefined){
  2330. ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col, "attrnm");
  2331. group4.grd_24hoursclincobsreclist.showEditor(true);
  2332. } else {
  2333. if(!obj.isDropdownCombo() && (lastrow != e.row || lastcol != e.col)) {
  2334. obj.setCellPos(e.col);
  2335. ds_grd_24hoursclincobsreclist.rowposition = e.row;
  2336. ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col, "attrnm");
  2337. obj.showEditor(true);
  2338. if(bDrop) {
  2339. ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col, "attrnm");
  2340. obj.dropdownCombo();
  2341. }
  2342. }
  2343. }
  2344. }
  2345. else
  2346. {
  2347. group4.grd_24hoursclincobsreclist.autoenter = "key";
  2348. }
  2349. var ColMCount = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  2350. var RowMCount = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  2351. if(ColMCount.length > 1 || RowMCount.length > 1)
  2352. {
  2353. obj.showEditor(false);
  2354. }
  2355. }
  2356. var lastrow = -1;
  2357. var lastcol = -1;
  2358. function ds_grd_24hoursclincobsreclist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  2359. {
  2360. }
  2361. function group4_grd_24hoursclincobsreclist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  2362. {
  2363. fChkLnkBiz("24hours");
  2364. }
  2365. function group4_btn_24hoursup_onclick(obj:Button, e:ClickEventInfo)
  2366. {
  2367. fControlChartUp("24hours");
  2368. }
  2369. function group4_btn_24hoursdown_onclick(obj:Button, e:ClickEventInfo)
  2370. {
  2371. fControlChartDown("24hours");
  2372. }
  2373. function group4_btn_24hoursdetailbefore_onclick(obj:Button, e:ClickEventInfo)
  2374. {
  2375. if( fChkSaveData() == false ){
  2376. return;
  2377. }
  2378. fCalcDate("-" , "24hours",4);
  2379. grdheadCol = -1;
  2380. }
  2381. function group4_btn_24hoursdetailafter_onclick(obj:Button, e:ClickEventInfo)
  2382. {
  2383. if( fChkSaveData() == false ){
  2384. return;
  2385. }
  2386. //fCalcDate("+", "24hours",4);
  2387. fCalcDate("+", "24hours",4);
  2388. grdheadCol = -1;
  2389. }
  2390. function chk_hourschartinfo1_onclick()
  2391. {
  2392. fMakeChart("24hours");
  2393. }
  2394. function grp_chkbox_caption4_onclick(obj:Static, e:ClickEventInfo)
  2395. {
  2396. screenX = e.screenX;
  2397. screenY = e.screenY;
  2398. fPopupDutyUserRec();
  2399. }
  2400. function grp_chkbox_caption26_onclick(obj:Static, e:ClickEventInfo)
  2401. {
  2402. screenX = e.screenX;
  2403. screenY = e.screenY;
  2404. fPopupDutyUserRec();
  2405. }
  2406. function grp_chkbox_caption27_onclick(obj:Static, e:ClickEventInfo)
  2407. {
  2408. screenX = e.screenX;
  2409. screenY = e.screenY;
  2410. fPopupDutyUserRec();
  2411. }
  2412. /**
  2413. * @group :
  2414. * @ver : 2010.07.19
  2415. * @by : 양천덕
  2416. * @---------------------------------------------------
  2417. * @type : function
  2418. * @access : public
  2419. * @desc :
  2420. * @param : 근무 담당자 정보 입력 / 조회 Popup
  2421. * @return :
  2422. * @---------------------------------------------------
  2423. */
  2424. function fPopupDutyUserRec(){
  2425. var sRecDD = grp_srchbaselist.ipt_24hoursrecdd.value;
  2426. var sViewFlag = "03";
  2427. var sParamInfo = "";
  2428. frmf_setParameter("SPMNR10700_Param", String(sRecDD).substr(0, 6)+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▦"+sRecDD+"▦"+sPatNm+"▩");
  2429. frmf_modal("SPMNR10700", "SPMNR10700", "", null, "1", screenX, screenY, null, null, null, null, null, "M");
  2430. frmf_clearParameter("SPMNR10700_Param");
  2431. ds_send.clearData();
  2432. dsf_makeValue(ds_send, "pid", "string", sPid);
  2433. dsf_makeValue(ds_send, "indd", "string", sIndd);
  2434. dsf_makeValue(ds_send, "cretno", "string", sCretNo);
  2435. dsf_makeValue(ds_send, "instcd", "string", sInstcd);
  2436. dsf_makeValue(ds_send, "ioflag", "string", sIOFlag);
  2437. dsf_makeValue(ds_send, "dayinfo", "string", grp_srchbaselist.ipt_24hoursrecdd.value);
  2438. var oParam = {};
  2439. oParam.id = "TRMNR10102";
  2440. oParam.service = "flowchartapp.FlowChartRecMngt";
  2441. oParam.method = "reqGetDayCountList";
  2442. oParam.inds = "req=ds_send";
  2443. oParam.outds = "ds_data_patdetllist=patdetllist";
  2444. oParam.async = false;
  2445. tranf_submit(oParam);
  2446. fControlPatInfo();
  2447. }
  2448. function grp_btnlist_btn_srchtest_onclick(obj:Button, e:ClickEventInfo)
  2449. {
  2450. fPopupProc();
  2451. }
  2452. function grp_btnlist_btn_srchrecdata_onclick(obj:Button, e:ClickEventInfo)
  2453. {
  2454. fPopupSearchRecData();
  2455. }
  2456. function grp_btnlist_btn_cdisopen_onclick(obj:Button, e:ClickEventInfo)
  2457. {
  2458. fPopupCDISRec();
  2459. }
  2460. function grp_btnlist_btn_EtrlInpt_onclick(obj:Button, e:ClickEventInfo)
  2461. {
  2462. fPopupOralRec();
  2463. }
  2464. function grp_btnlist_btn_IOSerch_onclick(obj:Button, e:ClickEventInfo)
  2465. {
  2466. fPopupIOSearch();
  2467. }
  2468. function grp_btnlist_btn_24hoursnursitem_onclick(obj:Button, e:ClickEventInfo)
  2469. {
  2470. fPopupItem();
  2471. }
  2472. function grp_btnlist_btn_24refresh_onclick(obj:Button, e:ClickEventInfo)
  2473. {
  2474. if( fChkSaveData() == false ){
  2475. return;
  2476. }
  2477. fSearchClincObsRec("24hours");
  2478. }
  2479. function grp_btnlist_btn_tempsave_onclick(obj:Button, e:ClickEventInfo)
  2480. {
  2481. fSaveTempClincObsRec("24hours");
  2482. }
  2483. function grp_btnlist_btn_24hourscertsave_onclick(obj:Button, e:ClickEventInfo)
  2484. {
  2485. fSaveClincObsRec("24hours");
  2486. }
  2487. function grp_btnlist_grp_wardbtn_btn_barcode_onclick(obj:Button, e:ClickEventInfo)
  2488. {
  2489. fPrintPatLabel();
  2490. }
  2491. function grp_btnlist_grp_wardbtn_btn_nurse_onclick(obj:Button, e:ClickEventInfo)
  2492. {
  2493. fPopupNurseMain("N");
  2494. }
  2495. function grp_btnlist_grp_wardbtn_btn_todo_onclick(obj:Button, e:ClickEventInfo)
  2496. {
  2497. fPopupNurseMain("td");
  2498. }
  2499. function grp_btnlist_grp_wardbtn_btn_order_onclick(obj:Button, e:ClickEventInfo)
  2500. {
  2501. fPopupNurseMain("om");
  2502. }
  2503. function grp_btnlist_grp_wardbtn_btn_inout_onclick(obj:Button, e:ClickEventInfo)
  2504. {
  2505. fPopupInOutInfo();
  2506. }
  2507. function grp_btnlist_btn_cleanitem_onclick(obj:Button, e:ClickEventInfo)
  2508. {
  2509. if( fChkSaveData() == false ){
  2510. return;
  2511. }
  2512. var rtnmsg = sysf_messageBox("FlowSheet기록 항목을 부서기본 셋 정보로 정리하시겠습니까?\n\n(단, 지속적 물약 및 타기록이 주체인 기록항목은 정리하지 않습니다.)\n", "Q");
  2513. if( rtnmsg == "6" ){
  2514. dsf_createDsRow("ds_send",
  2515. [{col:"pid", val:sPid}
  2516. ,{col:"indd", val:sIndd}
  2517. ,{col:"orddd", val:sIndd}
  2518. ,{col:"cretno", val:sCretNo}
  2519. ,{col:"deptcd", val:sysf_getUserInfo("dutplcecd") }
  2520. ,{col:"ordtype", val:sIOFlag}
  2521. ,{col:"inrmdt", val:utlf_getCurrentDate() + utlf_getCurrentTime().substr(0,4)}
  2522. ]);
  2523. var oParam = {};
  2524. oParam.id = "TXMNR10102";
  2525. oParam.service = "flowchartapp.FlowChartRecMngt";
  2526. oParam.method = "reqExeClincObsItemClean";
  2527. oParam.inds = "req=ds_send";
  2528. oParam.outds = "ds_temp_clincobsrecinfo=rtnvalue";
  2529. oParam.async = false;
  2530. oParam.callback = "cf_TXMNR10102";
  2531. tranf_submit(oParam);
  2532. fSearchClincObsRec(ds_cond.getColumn(0,"vwctrl_button"));
  2533. }
  2534. }
  2535. function cf_TXMNR10102(sSvcId, nErrorCode, sErrorMsg) {
  2536. if(nErrorCode < 0) return;
  2537. }
  2538. function grp_btnlist_btn_viewsetting_onclick(obj:Button, e:ClickEventInfo)
  2539. {
  2540. if( fChkSaveData() == false ){
  2541. return;
  2542. }
  2543. frmf_modal("SMMNR10200","SMMNR10200", "", "", "1", e.clientX , e.clientY,"","","","","","M");
  2544. this.reload();
  2545. }
  2546. function grp_btnlist_button2_onclick(obj:Button, e:ClickEventInfo)
  2547. {
  2548. if(utlf_isNull(ds_patinfo.getColumn(0,"pid"))){
  2549. sysf_messageBox("환자를 선택하십시요","I");
  2550. return;
  2551. }
  2552. var instcd = sysf_getUserInfo("dutplceinstcd");
  2553. if(instcd == "031"){
  2554. frmf_open("SMMNW04820","SMMNW04820","","","","","","","","","","","M");
  2555. }else {
  2556. frmf_open("SMMNW04800","SMMNW04800","","","","","","","","","","","M");
  2557. }
  2558. }
  2559. function grp_srchbaselist_btn_24hoursbefore_onclick(obj:Button, e:ClickEventInfo)
  2560. {
  2561. if( fChkSaveData() == false ){
  2562. return;
  2563. }
  2564. fCalcDate("-" , "24hours",24);
  2565. }
  2566. function grp_srchbaselist_ipt_24hoursrecdd_onchanged(obj:Calendar, e:ChangeEventInfo)
  2567. {
  2568. if( fChkSaveData() == false ){
  2569. obj.value = e.prevalue;
  2570. return;
  2571. }
  2572. ds_cond.setColumn(0,"rectm", sStartTm.substring(0,4));
  2573. fSearchClincObsRec("24hours");
  2574. grdheadCol = -1;
  2575. }
  2576. function grp_srchbaselist_btn_24hoursafter_onclick(obj:Button, e:ClickEventInfo)
  2577. {
  2578. if( fChkSaveData() == false ){
  2579. return;
  2580. }
  2581. fCalcDate("+", "24hours",24);
  2582. }
  2583. function grp_srchbaselist_cmb_24hourstimeflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2584. {
  2585. obj.updateToDataset();
  2586. if( fChkSaveData() == false ){
  2587. obj.value = sInitTimeFlag;
  2588. return;
  2589. }
  2590. var sSelectCol = grdheadCol;
  2591. if(sSelectCol == "0") sSelectCol = -1;
  2592. if(utlf_isNull(sSelectCol)) sSelectCol = -1;
  2593. if(ds_cond.getColumn(0, "timeflag") == "60"){
  2594. sSelectCol = -1;
  2595. }
  2596. if(sSelectCol == group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm")) return;
  2597. if(sSelectCol < group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm")){
  2598. if( sHeader[3][1] + sHeader[4][1] < sStartTm.substr(0,4) ){
  2599. ds_cond.setColumn(0,"recdd", getDateCalc(sHeader[1][1], 1, "-"));
  2600. ds_cond.setColumn(0,"rectm", sStartTm.substr(0,4));
  2601. }else{
  2602. ds_cond.setColumn(0,"recdd", sHeader[1][1]);
  2603. ds_cond.setColumn(0,"rectm", sStartTm.substr(0,4));
  2604. }
  2605. }else{
  2606. ds_cond.setColumn(0,"recdd", sHeader[1][sSelectCol]);
  2607. ds_cond.setColumn(0,"rectm", sHeader[3][sSelectCol]+sHeader[4][sSelectCol]);
  2608. }
  2609. fSearchClincObsRec();
  2610. grdheadCol = -1;
  2611. }
  2612. function grp_srchbaselist_btn_24hoursvwctrl_onclick(obj:Button, e:ClickEventInfo)
  2613. {
  2614. fControlGridSize("24hours");
  2615. }
  2616. function grp_srchbaselist_btn_chkhoursclslist_onclick(obj:Button, e:ClickEventInfo)
  2617. {
  2618. fControlChkClsInfo();
  2619. }
  2620. function group4_grd_24hoursclincobsreclist_onkeydown(obj:Grid, e:KeyEventInfo)
  2621. {
  2622. var iRow = ds_grd_24hoursclincobsreclist.rowposition;
  2623. var iCol = obj.currentcol;
  2624. var iDataRow = 0;
  2625. var sNextRecFlag = "";
  2626. var sNextAttrCd = "";
  2627. var sNextLnkBizCd = "";
  2628. var Gubun = false;
  2629. var sNextStatus = false;
  2630. var readonly = "";
  2631. var totalyn = "";
  2632. var readonlyyn ="";
  2633. var style = "";
  2634. var lnkbizcd = "";
  2635. var bolrowcount = true;//combo일경우 null값을경우에만 row + 1 함수...
  2636. var rowPlus = "";
  2637. var row = 0;
  2638. //group4.grd_24hoursclincobsreclist.updateToDataset();
  2639. oldRow = iRow;
  2640. oldCol = iCol;
  2641. if(e.keycode == 46)
  2642. {
  2643. if(ds_grd_24hoursclincobsreclist.getColumn(iRow, "edittype"+ iCol) == "text")
  2644. {
  2645. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt" + iCol, "");
  2646. stredit2 = "";
  2647. streditFocus = "";
  2648. }
  2649. }
  2650. if(e.keycode != 9 && e.keycode == 13) {
  2651. //var nAttrcd = lf_getDsValue(ds_grd_24hoursclincobsreclist, iRow, "attrcd");
  2652. //var stredit = group4.grd_24hoursclincobsreclist.getEditText(iRow, iCol)
  2653. group4.grd_24hoursclincobsreclist.updateToDataset();
  2654. //var stredit = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recrslt" + iCol);
  2655. var stredit = "";
  2656. if(group4.grd_24hoursclincobsreclist.autoenter == "key")
  2657. {
  2658. stredit = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recrslt" + iCol);
  2659. }
  2660. else
  2661. {
  2662. stredit = group4.grd_24hoursclincobsreclist.getEditText(iRow, iCol);
  2663. }
  2664. if(!utlf_isNull(stredit))
  2665. {
  2666. if(utlf_isNull(stredit2))
  2667. {
  2668. bolrowcount = false;
  2669. }
  2670. }
  2671. if(utlf_isNull(stredit2))
  2672. {
  2673. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt" + iCol, "");
  2674. }
  2675. //stredit2 = stredit;
  2676. bolenter = true;
  2677. oldRow = iRow;
  2678. oldCol = iCol;
  2679. enterRow = iRow;
  2680. enterCol = iCol;
  2681. if(bolrowcount == true)
  2682. {
  2683. for(row = iRow+1; row < ds_grd_24hoursclincobsreclist.rowcount;row++){
  2684. sNextRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(row, "reccharflag");
  2685. //sNextStatus = grd_24hoursclincobsreclist.isReadOnly(row, iCol);
  2686. sNextStatus = false;
  2687. readonly = ds_grd_24hoursclincobsreclist.getColumn(row, "readonly" + iCol);
  2688. totalyn = ds_grd_24hoursclincobsreclist.getColumn(row, "totalyn");
  2689. readonlyyn = ds_grd_24hoursclincobsreclist.getColumn(row, "readonlyyn");
  2690. style = ds_grd_24hoursclincobsreclist.getColumn(row, "style");
  2691. lnkbizcd = ds_grd_24hoursclincobsreclist.getColumn(row, "lnkbizcd");
  2692. if(readonly == "Y" || totalyn == "H" || (readonlyyn == "Y" || (style == "01" && (lnkbizcd == "02" || lnkbizcd == "12"))))
  2693. {
  2694. sNextStatus = true;
  2695. }
  2696. if(ds_grd_24hoursclincobsreclist.getColumn(row, "edittype" + iCol) == "none")
  2697. {
  2698. sNextStatus = true;
  2699. }
  2700. if((sNextRecCharFlag == "A" || sNextRecCharFlag == "B") && sNextStatus == false){
  2701. //fEnterKeyGridCell("24hours");
  2702. //grd_24hoursclincobsreclist.select(row, iCol, row, iCol) = true;
  2703. if(ds_grd_24hoursclincobsreclist.getColumn(row, "backcolor" + iCol) == "#ffeeee")
  2704. {
  2705. ds_grd_24hoursclincobsreclist.rowposition = row + 1;
  2706. //ds_grd_24hoursclincobsreclist.selectRow = row + 1;
  2707. }
  2708. else
  2709. {
  2710. ds_grd_24hoursclincobsreclist.rowposition = row;
  2711. //ds_grd_24hoursclincobsreclist.selectRow = row;
  2712. }
  2713. rowPlus = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(row, "recrslt" + iCol));
  2714. obj.setCellPos(iCol);
  2715. this.setFocus();
  2716. break;
  2717. }
  2718. }
  2719. }
  2720. if (ds_grd_24hoursclincobsreclist.getColumn(iRow, "edittype" + iCol) == "combo") {
  2721. if (!utlf_isNull(stredit2)) {
  2722. var Gubun = false;
  2723. var nAttrcd = lf_getDsValue(ds_grd_24hoursclincobsreclist, iRow, "attrcd");
  2724. //stredit2 = group4.grd_24hoursclincobsreclist.getEditText(e.oldrow, e.oldcol);
  2725. Gubun = lf_showExpr(nAttrcd, iRow, iCol, stredit2);
  2726. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt" + iCol, stredit2);
  2727. } else if (utlf_isNull(stredit2)) {
  2728. if (utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow, "recrslt" + iCol))) {
  2729. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt" + iCol, stredit2);
  2730. }
  2731. }
  2732. stredit2 = "";
  2733. streditFocus = "";
  2734. ds_grd_24hoursclincobsreclist.setColumn(iRow, "cboname" + iCol, "attrgrde");
  2735. if (ds_grd_24hoursclincobsreclist.getColumn(row, "edittype" + iCol) == "text") {
  2736. ds_grd_24hoursclincobsreclist.setColumn(row, "recrslt" + iCol, rowPlus);
  2737. }
  2738. }
  2739. if(iRow == ds_grd_24hoursclincobsreclist.rowcount - 1)
  2740. {
  2741. obj.showEditor(false);
  2742. }
  2743. else if (iRow + 1 == ds_grd_24hoursclincobsreclist.rowcount - 1)
  2744. {
  2745. readonly = ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "readonly" + iCol);
  2746. totalyn = ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "totalyn");
  2747. readonlyyn = ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "readonlyyn");
  2748. style = ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "style");
  2749. lnkbizcd = ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "lnkbizcd");
  2750. if(readonly == "Y" || totalyn == "H" || (readonlyyn == "Y" || (style == "01" && (lnkbizcd == "02" || lnkbizcd == "12"))))
  2751. {
  2752. sNextStatus = true;
  2753. }
  2754. if(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "edittype" + iCol) == "none")
  2755. {
  2756. sNextStatus = true;
  2757. }
  2758. if(sNextStatus == true)
  2759. {
  2760. obj.showEditor(false);
  2761. }
  2762. }
  2763. }
  2764. }
  2765. function fInitViewer(){
  2766. //FlowSheet 환경설정 정보 조회
  2767. var oParam = {};
  2768. oParam.id = "TRMNR10101";
  2769. oParam.service = "flowchartapp.FlowChartRecMngt";
  2770. oParam.method = "reqGetViewSettingList";
  2771. oParam.inds = "";
  2772. oParam.outds = "ds_data_viewersettinglist=viewersettinglist";
  2773. oParam.async = false;
  2774. //oParam.callback = "cf_TRMNR10101";
  2775. tranf_submit(oParam);
  2776. if(ds_data_viewersettinglist.rowcount > 0 ){
  2777. //화면 open시점 설정 정보
  2778. sStartTm = ds_data_viewersettinglist.getColumn(0,"starttm" ); //조회시작시간
  2779. sGraphUseYn = ds_data_viewersettinglist.getColumn(0,"graphuseyn" ); //그래프사용여부
  2780. sSrchTypeInfo = ds_data_viewersettinglist.getColumn(0,"srchtypeinfo" ); //조회분류정보
  2781. sInitTimeFlag = ds_data_viewersettinglist.getColumn(0,"inittimeflag" ); //초기조회시간구분
  2782. sWardBtnUseYn = ds_data_viewersettinglist.getColumn(0,"wardbtnuseyn" ); //병동버튼사용여부
  2783. sTmpSaveUseYn = ds_data_viewersettinglist.getColumn(0,"tmpsaveuseyn" ); //임시저장사용여부
  2784. sIoTmUseYn = ds_data_viewersettinglist.getColumn(0,"iotmuseyn" ); //경구입력화면 버튼 사용여부
  2785. if(!utlf_isNull(ds_data_viewersettinglist.getColumn(0, "srchtminfo"))){
  2786. //model.copynode("/root/init/minlist", sSettingNode + "/srchtminfo/minlist"); //조회시간값
  2787. gDsPrifixNm = "ds_init_minlist";
  2788. var sParamObj = new Object();
  2789. sParamObj.pathYN = "Y";
  2790. sParamObj.nullColumnYN = "Y";
  2791. sParamObj.colNameCase = "Y";
  2792. lf_convertXmlToDs(ds_data_viewersettinglist.getColumn(0, "srchtminfo"), sParamObj);
  2793. }
  2794. //환자 정보 조회 후 설정 정보
  2795. sSeriousYseYn = ds_data_viewersettinglist.getColumn(0,"serioususeyn" ); //중증정보사용여부
  2796. sApchUseYn = ds_data_viewersettinglist.getColumn(0,"apchuseyn" ); //아파치정보사용여부
  2797. sHdayUseYn = ds_data_viewersettinglist.getColumn(0,"hdayuseyn" ); //HospitalDay사용여부
  2798. sIcuDayUseYn = ds_data_viewersettinglist.getColumn(0,"icudayuseyn" ); //ICUDay사용여부
  2799. sOpddUseYn = ds_data_viewersettinglist.getColumn(0,"opdduseyn" ); //수술일정보사용여부
  2800. sPodUseYn = ds_data_viewersettinglist.getColumn(0,"poduseyn" ); //OP경과일사용여부
  2801. sCpDayUseYn = ds_data_viewersettinglist.getColumn(0,"cpdayuseyn" ); //CP적용일자사용여부
  2802. sBmtUseYn = ds_data_viewersettinglist.getColumn(0,"bmtuseyn" ); //BMT적용일자사용여부
  2803. sAntiDayUseYn = ds_data_viewersettinglist.getColumn(0,"antidayuseyn" ); //항암프로토콜적용일사용여부
  2804. sHeightUseYn = ds_data_viewersettinglist.getColumn(0,"heightuseyn" ); //키정보사용여부
  2805. sWeightUseYn = ds_data_viewersettinglist.getColumn(0,"weightuseyn" ); //몸무게정보사용여부
  2806. sBloodUseYn = ds_data_viewersettinglist.getColumn(0,"blooduseyn" ); //혈액준비사용여부
  2807. sChngRoomUseYn = ds_data_viewersettinglist.getColumn(0,"chngroomuseyn" ); //전실사용여부
  2808. sFamilyMeetUseYn = ds_data_viewersettinglist.getColumn(0,"familymeetuseyn"); //가족면회정보사용여부
  2809. sBrthddUseYn = ds_data_viewersettinglist.getColumn(0,"brthdduseyn" ); //출생일정보조회여부
  2810. //데이터 조회 후 처리 설정 정보
  2811. sHeaderFlag = ds_data_viewersettinglist.getColumn(0,"headerflag" ); //조회해더구분(A:전체, D:일시 두줄 조회, T:일시 한줄조회)
  2812. sDayStndTm = ds_data_viewersettinglist.getColumn(0,"daystndtm" ); //Day기준시간
  2813. sEvenStndTm = ds_data_viewersettinglist.getColumn(0,"evenstndtm" ); //Evening기준시간
  2814. sNightStndTm = ds_data_viewersettinglist.getColumn(0,"nightstndtm" ); //Night기준시간
  2815. sDataRowHeight = ds_data_viewersettinglist.getColumn(0,"datarowheight" ); //Grid행 높이
  2816. sDataFontSize = ds_data_viewersettinglist.getColumn(0,"datafontsize" ); //Grid글씨크기
  2817. sTotaluseYn = ds_data_viewersettinglist.getColumn(0,"totaluseyn" ); //합계사용여부
  2818. sSubTotaluseYn = ds_data_viewersettinglist.getColumn(0,"subtotaluseyn" ); //부분합계사용여부
  2819. sRunTotaluseYn = ds_data_viewersettinglist.getColumn(0,"runtotaluseyn" ); //누적합계사용여부
  2820. sEventItemUseYn = ds_data_viewersettinglist.getColumn(0,"eventitemuseyn" ); //Event사용여부
  2821. }
  2822. //화면 선택 정보
  2823. sSelectView = "24hours";
  2824. //그래프 사용 여부 설정
  2825. if(sGraphUseYn == "Y"){
  2826. if(utlf_isNull(ds_cond.getColumn(0,"vwctrl_4days"))){ // (A : Graph Off, I : Graph On)
  2827. ds_cond.setColumn(0,"vwctrl_4days", "I");
  2828. }
  2829. if(utlf_isNull(ds_cond.getColumn(0,"vwctrl_24hours"))){ // (A : Graph Off, I : Graph On)
  2830. ds_cond.setColumn(0,"vwctrl_24hours", "I");
  2831. }
  2832. //그래프 초기화 작업 함수 호출(그래프 생성 함수와 동일 Parameter로 처리)
  2833. fMakeChart("init24hours");
  2834. //ds_cond.setColumn(0,"vwctrl_24hours", "I");
  2835. //fMakeChart("init4days" );
  2836. }else{
  2837. if(utlf_isNull(ds_cond.getColumn(0,"vwctrl_4days"))){ // (A : Graph Off, I : Graph On)
  2838. ds_cond.setColumn(0,"vwctrl_4days", "A");
  2839. }
  2840. if(utlf_isNull(ds_cond.getColumn(0,"vwctrl_24hours"))){ // (A : Graph Off, I : Graph On)
  2841. ds_cond.setColumn(0,"vwctrl_24hours", "A");
  2842. }
  2843. }
  2844. //병동관련 업무 Btn그룹 사용 여부 설정
  2845. if(sWardBtnUseYn == "Y"){
  2846. grp_btnlist.grp_wardbtn.visible = true;
  2847. }else{
  2848. grp_btnlist.grp_wardbtn.visible = false;
  2849. }
  2850. //임시저장 기능 사용 여부 설정
  2851. if(sTmpSaveUseYn == "Y"){
  2852. grp_btnlist.btn_tempsave.enable = true;
  2853. }else{
  2854. grp_btnlist.btn_tempsave.enable = false;
  2855. }
  2856. //경구입력화면 버튼 사용여부
  2857. if( sIoTmUseYn == "Y" ){
  2858. grp_btnlist.btn_EtrlInpt.visible = true;
  2859. }else{
  2860. grp_btnlist.btn_EtrlInpt.visible = false;
  2861. }
  2862. //화면 전환 및 그래프 설정
  2863. if(lnktopinfo != true)
  2864. {
  2865. fChageView(sSelectView);
  2866. }
  2867. else
  2868. {
  2869. fChageView();
  2870. }
  2871. //파라미터 정보 조회
  2872. sParamInfo = "";
  2873. sSpParamInfo = "";
  2874. //24시간 그리드 콤보 노드 세팅
  2875. ds_init_hourlist.clearData();
  2876. for(var i=0; i< 24; i++){
  2877. ds_init_hourlist.addRow();
  2878. if(i <10){
  2879. ds_init_hourlist.setColumn(i,"cd","0"+i);
  2880. }else{
  2881. ds_init_hourlist.setColumn(i,"cd",i);
  2882. }
  2883. ds_init_hourlist.setColumn(i,"nm",i);
  2884. }
  2885. /////////////////////////////cms//////////////////////
  2886. //사용자 직급구분에 따른 화면 제어 설정
  2887. sJobKindCD = sysf_getUserInfo("jobkindcd"); // 직급코드
  2888. sUserDeptCd = sysf_getUserInfo("dutplcecd"); // 근무부서코드
  2889. sUserId = sysf_getUserInfo("userid"); // 사용자ID
  2890. sUserNm = sysf_getUserInfo("usernm"); // 사용자명
  2891. if(sysf_getUserInfo("dutplceinstcd") == "031"){
  2892. grp_btnlist.button2.visible = true;
  2893. }else{
  2894. grp_btnlist.button2.visible = false;
  2895. }
  2896. //---------(20101204) 경북대
  2897. //추가
  2898. var ssflag = "";
  2899. //경북대이면 03%로 체크한다.
  2900. if(sysf_getUserInfo("dutplceinstcd") != '032' && sysf_getUserInfo("dutplceinstcd") != '031') {
  2901. if( sJobKindCD == "0330" || sJobKindCD == "0310"){
  2902. ssflag = "Y";
  2903. }else{
  2904. ssflag = "N";
  2905. }
  2906. } else if(sysf_getUserInfo("dutplceinstcd") == '032' || sysf_getUserInfo("dutplceinstcd") == '031') {
  2907. if( sJobKindCD.substr(0, 2) == "03"){
  2908. ssflag = "Y";
  2909. }else{
  2910. ssflag = "N";
  2911. }
  2912. }
  2913. //원본:의사의 경우만
  2914. //병동, 진료 구분 설정
  2915. //if(sJobKindCD == "0330" || sJobKindCD == "0310"){
  2916. if(ssflag=="Y") {
  2917. //---------(20101204) 경북대
  2918. sUserFlag = "2";
  2919. }else{
  2920. sUserFlag = "1";
  2921. }
  2922. //fChangUserTypeSrch(sUserFlag);
  2923. fSettingUserTypeSrch(sUserFlag);
  2924. ds_cond.setColumn(0,"srchflag", sUserFlag);
  2925. /////////////////////////////cms//////////////////////
  2926. //Parameter 정보 체크
  2927. if(frmf_checkOpener()){
  2928. sSpParamInfo = opener.frmf_getParameter("SMMNR00900_SpParam");
  2929. if(utlf_isNull(sSpParamInfo)){
  2930. sParamInfo = opener.frmf_getParameter("SMMNR00900_Param");
  2931. opener.frmf_clearParameter("SMMNR00900_Param");
  2932. frmf_setParameter("SMMNR00900_Param","");
  2933. }else{
  2934. sParamInfo = sSpParamInfo;
  2935. sDutplcecd = fGetArrayDataTPR(sSpParamInfo,1,5);
  2936. }
  2937. }
  2938. ds_cond.setColumn(0,"timeflag", sInitTimeFlag);
  2939. ds_cond.setColumn(0,"cmbstatusx", "0");
  2940. ds_cond.setColumn(0,"cmbstatusy", "0");
  2941. ds_cond.setColumn(0,"rectm",sStartTm);
  2942. }
  2943. function fIsNumber(str) {
  2944. str += ""; // 문자열로 변환
  2945. str = str.replace(/^\s*|\s*$/g, ""); // 좌우 공백 제거
  2946. if (utlf_isNull(str) || isNaN(str)) return false;
  2947. return true;
  2948. }
  2949. /**
  2950. * @group :
  2951. * @ver : 2009.12.15
  2952. * @by : 양천덕
  2953. * @---------------------------------------------------
  2954. * @type : function
  2955. * @access : public
  2956. * @desc : 구분자로 분리된 특정자료를 Reading
  2957. * @param : pData : 원본데이터
  2958. * @param : pRow : 찾고자 하는 위치의 row
  2959. * @param : pCol : 찾고자 하는 위치의 column
  2960. * @return : 해당 row, column의 문자열
  2961. * @---------------------------------------------------
  2962. */
  2963. function fGetArrayDataTPR(pData, pRow, pCol){
  2964. var rowSep = "▩"; // row 구분자
  2965. var colSep = "▦"; // column 구분자;
  2966. var arrRow = utlf_transNullToEmpty(pData).split(rowSep);
  2967. if(arrRow.length <= pRow) return "";
  2968. var arrCol = arrRow[pRow].split(colSep);
  2969. if(arrCol.length <= pCol) return "";
  2970. return arrCol[pCol];
  2971. }
  2972. function fMakeChart(pFlag){
  2973. var Obj_Chart;
  2974. var sColCnt = 0;
  2975. var sRecRslt = "";
  2976. var sRecRslt1 = "";
  2977. var sChartInfo = "";
  2978. var sRecDD = "";
  2979. var sRecTM = "";
  2980. var sRecRsltArr = new Array();
  2981. var sRecRslt1Arr = new Array();
  2982. var iArrSize = 0;
  2983. var iChartPos = 0;
  2984. var idx=0;
  2985. if(pFlag == "24hours" || pFlag == "4days"){
  2986. //2008-05-19 추가
  2987. for(var i = 0 ; i < ds_data_clincobsreclist.rowcount; i++){
  2988. if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "1" ){
  2989. sChartItem[0] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  2990. }else if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "2"){
  2991. sChartItem[1] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  2992. }else if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "3" && ds_data_clincobsreclist.getColumn(i,"graphappyn")=="Y" ){
  2993. sChartItem[2] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  2994. }else if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "4" && ds_data_clincobsreclist.getColumn(i,"graphappyn")=="Y" ){
  2995. sChartItem[3] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  2996. }else if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "5" && ds_data_clincobsreclist.getColumn(i,"graphappyn")=="Y" ){
  2997. sChartItem[4] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  2998. }else if(ds_data_clincobsreclist.getColumn(i,"leftaxis") == "6" && ds_data_clincobsreclist.getColumn(i,"graphappyn")=="Y" ){
  2999. sChartItem[5] = ds_data_clincobsreclist.getColumn(i,"itemcd");
  3000. }
  3001. }
  3002. }else{
  3003. sChartItem[0] = "99999999"; // 혈압(low)
  3004. sChartItem[1] = "99999999"; // 혈압(high)
  3005. sChartItem[2] = "99999999"; // 맥박
  3006. sChartItem[3] = "99999999"; // 호흡
  3007. sChartItem[4] = "99999999"; // 체온
  3008. sChartItem[5] = "99999999"; // BP(M)
  3009. }
  3010. if(pFlag == "24hours" || pFlag == "init24hours" ){
  3011. group4.obj_24hourschart.ClearChart();
  3012. sChartInfo = String(utlf_transNullToEmpty(grp_chkbox.chk_hourschartinfo.getData())).split(",");
  3013. group4.obj_24hourschart.Panel.MarginTop = 3;
  3014. group4.obj_24hourschart.Panel.MarginLeft = 10;
  3015. group4.obj_24hourschart.Panel.MarginRight = 0;
  3016. group4.obj_24hourschart.Panel.MarginBottom = -1;
  3017. //하단축 칸 수 정하기와 눈금 없애기
  3018. group4.obj_24hourschart.Axis.Bottom.Automatic = false; //하단축 자동 설정(기본값)
  3019. group4.obj_24hourschart.Axis.Bottom.Labels.Visible = true; //하단축 Label 설정
  3020. group4.obj_24hourschart.Axis.Bottom.Labels.Multiline = true; //하단축 Label 2줄 설정
  3021. group4.obj_24hourschart.Axis.Bottom.Labels.Font.Size = 1; //하단축 Label 폰트 사이즈 조절
  3022. //obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하단축 최소, 최대 길이 설정
  3023. group4.obj_24hourschart.Axis.Bottom.Minimum = 0;
  3024. group4.obj_24hourschart.Axis.Bottom.Maximum = 24.1;
  3025. group4.obj_24hourschart.Axis.Bottom.Increment = 1; //하단축 증가값 설정
  3026. group4.obj_24hourschart.Axis.Bottom.MinorTickCount = 0; //하단축 눈금 갯수 설정
  3027. group4.obj_24hourschart.Axis.Bottom.TicksInner.Visible = true; //하단축 눈금 안쪽 표시 설정
  3028. Obj_Chart = group4.obj_24hourschart;
  3029. sColCnt = 24;
  3030. }
  3031. Obj_Chart.Axis.Bottom.AxisPen.Visible = false ;
  3032. Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
  3033. Obj_Chart.Axis.Bottom.Labels.Font.Color = 0x000000; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
  3034. Obj_Chart.Panel.BevelWidth = 0; // 주위 테두리 넓이 0으로 설정
  3035. Obj_Chart.Header.Visible = false; // Graph Header 정보 사용 여부
  3036. Obj_Chart.Aspect.View3D = false; // 2d 로 표현하기
  3037. Obj_Chart.Zoom.Enable = true; // zoom 사용하지 않기 (마우스 하단으로 드래그 zoomin, 마우스 상단으로 드래그 zoomout)
  3038. Obj_Chart.Scroll.Enable = true; // scroll 사용하지 않기
  3039. Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
  3040. Obj_Chart.Tools.Add(8); // 그래프 Hint 설정
  3041. Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
  3042. Obj_Chart.Panel.Gradient.StartColor = 0xffffff; // 그라디언트 시작색깔
  3043. Obj_Chart.Panel.Gradient.EndColor = 0xffffff; // 그라디언트 종료색깔
  3044. Obj_Chart.Environment.MouseWheelScroll = true; // Graph 마우스 휠 사용 여부
  3045. // 혈압을 나타내는 막대그래프를 먼저 그려야 맥박, 체온,호흡 점이 막대 그래프에 가려지지 않는다.
  3046. var cus_axis1 = Obj_Chart.Axis.AddCustom(false); // 혈압축
  3047. Obj_Chart.Axis.get_Custom(0).AxisPen.Color = 0x0000ff;
  3048. //Obj_Chart.Axis.get_Custom(0).Title.Caption = "혈압/맥박"
  3049. Obj_Chart.Axis.get_Custom(0).Title.Font.Size = 8;
  3050. Obj_Chart.Axis.get_Custom(0).Title.Font.Bold = true;
  3051. Obj_Chart.Axis.get_Custom(0).Title.Angle = 90;
  3052. Obj_Chart.Axis.get_Custom(0).PositionPercent = 0;
  3053. Obj_Chart.Axis.get_Custom(0).StartPosition = 0;
  3054. Obj_Chart.Axis.get_Custom(0).EndPosition = 100;
  3055. Obj_Chart.Axis.get_Custom(0).Automatic = false;
  3056. Obj_Chart.Axis.get_Custom(0).Maximum = 200;
  3057. Obj_Chart.Axis.get_Custom(0).Minimum = 20;
  3058. Obj_Chart.Axis.get_Custom(0).Increment = 20;
  3059. var cus_axis2 = Obj_Chart.Axis.AddCustom(false); // 호흡축
  3060. Obj_Chart.Axis.get_Custom(1).AxisPen.Color = 0x00ff00;
  3061. //Obj_Chart.Axis.Custom(1).Title.Caption = "호흡";
  3062. Obj_Chart.Axis.get_Custom(1).Title.Font.Size = 8;
  3063. Obj_Chart.Axis.get_Custom(1).Title.Font.Bold = true;
  3064. Obj_Chart.Axis.get_Custom(1).Title.Angle = 90;
  3065. Obj_Chart.Axis.get_Custom(1).PositionPercent = -8;
  3066. Obj_Chart.Axis.get_Custom(1).Automatic = false;
  3067. Obj_Chart.Axis.get_Custom(1).Maximum = 90;
  3068. Obj_Chart.Axis.get_Custom(1).Minimum = 0;
  3069. Obj_Chart.Axis.get_Custom(1).Increment = 10;
  3070. var cus_axis3 = Obj_Chart.Axis.AddCustom(false); // 체온축
  3071. Obj_Chart.Axis.get_Custom(2).AxisPen.Color = 0xff0000;
  3072. //Obj_Chart.Axis.Custom(2).Title.Caption = "체온";
  3073. Obj_Chart.Axis.get_Custom(2).Title.Font.Size = 8;
  3074. Obj_Chart.Axis.get_Custom(2).Title.Font.Bold = true;
  3075. Obj_Chart.Axis.get_Custom(2).Title.Angle = 90;
  3076. Obj_Chart.Axis.get_Custom(2).PositionPercent = -4;
  3077. Obj_Chart.Axis.get_Custom(2).Automatic = false;
  3078. Obj_Chart.Axis.get_Custom(2).Maximum = 40.0;
  3079. Obj_Chart.Axis.get_Custom(2).Minimum = 35.5;
  3080. Obj_Chart.Axis.get_Custom(2).Increment = 0.5;
  3081. Obj_Chart.AddSeries (0); // 38선
  3082. Obj_Chart.AddSeries (11); // OP
  3083. Obj_Chart.AddSeries (11); // 혈압
  3084. Obj_Chart.AddSeries (0); // 맥박
  3085. Obj_Chart.AddSeries (0); // 호흡
  3086. Obj_Chart.AddSeries (0); // 체온
  3087. Obj_Chart.AddSeries (0); // BP(M)
  3088. Obj_Chart.Series(0).VerticalAxisCustom = cus_axis3; // 38선
  3089. Obj_Chart.Series(1).VerticalAxisCustom = cus_axis1; // OP
  3090. Obj_Chart.Series(2).VerticalAxisCustom = cus_axis1; // 혈압
  3091. Obj_Chart.Series(3).VerticalAxisCustom = cus_axis1; // 맥박
  3092. Obj_Chart.Series(4).VerticalAxisCustom = cus_axis2; // 호흡
  3093. Obj_Chart.Series(5).VerticalAxisCustom = cus_axis3; // 체온
  3094. Obj_Chart.Series(6).VerticalAxisCustom = cus_axis1; // BP(M)
  3095. //라인의 굵기를 정해준다.
  3096. Obj_Chart.Series(0).asLine.LinePen.Width = 2;
  3097. Obj_Chart.Series(1).asCandle.CandleStyle = 2;
  3098. Obj_Chart.Series(1).asCandle.CandleWidth = 2;
  3099. Obj_Chart.Series(2).asCandle.CandleStyle = 2;
  3100. Obj_Chart.Series(2).asCandle.CandleWidth = 2;
  3101. Obj_Chart.Series(3).asLine.LinePen.Width = 2;
  3102. Obj_Chart.Series(4).asLine.LinePen.Width = 2;
  3103. Obj_Chart.Series(5).asLine.LinePen.Width = 2;
  3104. Obj_Chart.Series(6).asLine.LinePen.Width = 2;
  3105. Obj_Chart.Series(6).asLine.LinePen.Style = 2;
  3106. //Series 색상 설정
  3107. Obj_Chart.Series(0).Color = 0xffcc00; //black 38선
  3108. Obj_Chart.Series(1).Color = 0x0000ff; //red OP
  3109. Obj_Chart.Series(2).Color = 0x000000; //black 혈압
  3110. Obj_Chart.Series(3).Color = 0x0000ff; //red 맥박
  3111. Obj_Chart.Series(4).Color = 0x00ff00; //green 호흡
  3112. Obj_Chart.Series(5).Color = 0xff0000; //blue 체온
  3113. Obj_Chart.Series(6).Color = 0x000000; //black BP(M)
  3114. //Pointer 설정
  3115. Obj_Chart.Series(3).asLine.Pointer.Visible = true;
  3116. Obj_Chart.Series(3).asLine.Pointer.Style = 1;
  3117. Obj_Chart.Series(3).asLine.Pointer.VerticalSize = 3;
  3118. Obj_Chart.Series(3).asLine.Pointer.HorizontalSize = 3;
  3119. Obj_Chart.Series(4).asLine.Pointer.Visible = true;
  3120. Obj_Chart.Series(4).asLine.Pointer.Style = 0;
  3121. Obj_Chart.Series(4).asLine.Pointer.VerticalSize = 2;
  3122. Obj_Chart.Series(4).asLine.Pointer.HorizontalSize = 2;
  3123. Obj_Chart.Series(5).asLine.Pointer.Visible = true;
  3124. Obj_Chart.Series(5).asLine.Pointer.Pen.Color = 0xff0000;
  3125. Obj_Chart.Series(5).asLine.Pointer.Pen.Width = 2;
  3126. Obj_Chart.Series(5).asLine.Pointer.Style = 2;
  3127. Obj_Chart.Series(5).asLine.Pointer.VerticalSize = 2;
  3128. Obj_Chart.Series(5).asLine.Pointer.HorizontalSize = 2;
  3129. Obj_Chart.Series(6).asLine.Pointer.Visible = true;
  3130. Obj_Chart.Series(6).asLine.Pointer.Pen.Color = 0x000000;
  3131. Obj_Chart.Series(6).asLine.Pointer.Pen.Width = 2;
  3132. Obj_Chart.Series(6).asLine.Pointer.Style = 5;
  3133. Obj_Chart.Series(6).asLine.Pointer.VerticalSize = 2;
  3134. Obj_Chart.Series(6).asLine.Pointer.HorizontalSize = 2;
  3135. //depth 정하기 : Depth 적용이 안됨.
  3136. Obj_Chart.Series(0).Depth = 1;
  3137. Obj_Chart.Series(1).Depth = 1;
  3138. Obj_Chart.Series(2).Depth = 1;
  3139. Obj_Chart.Series(3).Depth = 1;
  3140. Obj_Chart.Series(4).Depth = 1;
  3141. Obj_Chart.Series(5).Depth = 3;
  3142. Obj_Chart.Series(6).Depth = 4;
  3143. //38선 그리기
  3144. Obj_Chart.Series(0).AddXY (-5, 38, "", Obj_Chart.Series(0).Color );
  3145. Obj_Chart.Series(0).AddXY (70, 38, "", Obj_Chart.Series(0).Color );
  3146. /*
  3147. 20090715 김홍점 그래프 interval값도 timeflag가 30, 60 일때 10분 단위로 표시
  3148. intervalrecynlist 의 substring(recrsltitvl+iCol,14) 값을 세팅한다.
  3149. */
  3150. if(pFlag == "24hours" || pFlag == "4days"){
  3151. var sTime = ds_cond.getColumn(0,"timeflag");
  3152. iArrSize = ds_init_minlist.lookup("cd",sTime,"gap");
  3153. // 그래프 표시
  3154. for(var i=0; i<sChartInfo.length; i++){
  3155. if(utlf_isNull(sChartInfo[i])) continue;
  3156. sChartInfo[i] = eval(sChartInfo[i]);
  3157. for(var iCol=1; iCol<=sColCnt; iCol++){
  3158. if(sChartInfo[i] == 1){ //막대그래프
  3159. Obj_Chart.Series(sChartInfo[i]+1).asCandle.UpCloseColor = 0xffffff;
  3160. Obj_Chart.Series(sChartInfo[i]+1).asCandle.DownCloseColor = 0x0000ff;
  3161. if(pFlag == "24hours"){
  3162. sRecRslt1 = ds_grd_24hoursclincobsreclist.lookup("itemcd",sChartItem[(sChartInfo[i]-1)],"recrslt"+iCol);
  3163. sRecRslt = ds_grd_24hoursclincobsreclist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrslt"+iCol);
  3164. if(!utlf_isNull(sRecRslt) && !utlf_isNull(sRecRslt1) && fIsNumber(sRecRslt) == true && fIsNumber(sRecRslt1) == true){
  3165. Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle (iCol-1, eval(sRecRslt), 0, 0, eval(sRecRslt1));
  3166. }
  3167. if( sTime == "30" || sTime == "60" ){
  3168. sRecRslt1 = utlf_transNullToEmpty(ds_temp_clincobsrecinfo_intervalrecynlist.lookup("itemcd",sChartItem[(sChartInfo[i]-1)],"recrsltitvl"+iCol));
  3169. sRecRslt = utlf_transNullToEmpty(ds_temp_clincobsrecinfo_intervalrecynlist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrsltitvl"+iCol));
  3170. sRecRslt1Arr = sRecRslt1.split(" ");
  3171. sRecRsltArr = sRecRslt.split(" ");
  3172. idx = 0;
  3173. for( var arr = (sHeader[4][iCol]=="00" ? 0 : 3) ; arr < sRecRslt1Arr.length && arr < sRecRsltArr.length ; arr++ ){
  3174. iChartPos = (iCol-1) + ( (1/iArrSize)*(idx+1) );
  3175. idx++;
  3176. if(sRecRslt1Arr[arr] != "0" && sRecRsltArr[arr] != "0" && fIsNumber(sRecRslt1Arr[arr].substr(14)) == true && fIsNumber(sRecRsltArr[arr].substr(14)) == true){
  3177. Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle (iChartPos, eval(sRecRsltArr[arr].substr(14)), 0, 0, eval(sRecRslt1Arr[arr].substr(14)));
  3178. }
  3179. }
  3180. }
  3181. }else{
  3182. sRecRslt1 = ds_daysclincobsreclist.lookup("itemcd",sChartItem[(sChartInfo[i]-1)],"recrslt"+iCol);
  3183. sRecRslt = ds_daysclincobsreclist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrslt"+iCol);
  3184. if(!utlf_isNull(sRecRslt) && !utlf_isNull(sRecRslt1) && fIsNumber(sRecRslt) == true && fIsNumber(sRecRslt1) == true){
  3185. Obj_Chart.Series(sChartInfo[i]+1).asCandle.AddCandle ((iCol/4)-0.25, eval(sRecRslt), 0, 0, eval(sRecRslt1));
  3186. }
  3187. }
  3188. }else{
  3189. if(pFlag == "24hours"){
  3190. sRecRslt = ds_grd_24hoursclincobsreclist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrslt"+iCol);
  3191. if(!utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  3192. Obj_Chart.Series(sChartInfo[i]+1).AddXY (iCol-1, eval(sRecRslt), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
  3193. }
  3194. if ( sTime == "30" || sTime == "60" ){
  3195. sRecRslt = utlf_transNullToEmpty(ds_temp_clincobsrecinfo_intervalrecynlist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrsltitvl"+iCol));
  3196. sRecRsltArr = sRecRslt.split(" ");
  3197. idx = 0;
  3198. for( var arr = (sHeader[4][iCol]=="00" ? 0 : 3) ; arr < sRecRsltArr.length ; arr++ ){
  3199. iChartPos = (iCol-1) + ( (1/iArrSize)*(idx+1) );
  3200. idx++;
  3201. if(sRecRsltArr[arr] != "0" && fIsNumber(sRecRsltArr[arr].substr(14)) == true){
  3202. Obj_Chart.Series(sChartInfo[i]+1).AddXY (iChartPos, eval(sRecRsltArr[arr].substr(14)), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
  3203. }
  3204. }
  3205. }
  3206. }else{
  3207. sRecRslt = ds_daysclincobsreclist.lookup("itemcd",sChartItem[sChartInfo[i]],"recrslt"+iCol);
  3208. if(!utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  3209. Obj_Chart.Series(sChartInfo[i]+1).AddXY ((iCol/4)-0.25, eval(sRecRslt), "", Obj_Chart.Series(sChartInfo[i]+1).Color);
  3210. }
  3211. }
  3212. }
  3213. }
  3214. }
  3215. // 수술시간 표시
  3216. Obj_Chart.Series(1).asCandle.UpCloseColor = 0x0000ff;
  3217. Obj_Chart.Series(1).asCandle.DownCloseColor = 0x0000ff;
  3218. Obj_Chart.Series(1).Marks.Visible = false;
  3219. var sX = 0;
  3220. var OPChartRow = 1; // 수술관련 Tools Itme은 위에 Hint Item이 존재하여 1부터 시작
  3221. var sOPX = 0;
  3222. for(var i=1; i<=sColCnt+1; i++){
  3223. if(i == 1 || sRecDD != sHeader[1][i]){
  3224. sRecDD = sHeader[1][i];
  3225. sRecTM = ds_daycountinfo.lookup("recdd",sRecDD,"optm");
  3226. if(utlf_isNull(sRecTM)) continue;
  3227. for(var iCol=1; iCol<=sColCnt+1; iCol++){
  3228. if((sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]) >= (sRecDD+sRecTM) &&
  3229. (sHeader[1][1]+sHeader[3][1]+sHeader[4][1]) <= (sRecDD+sRecTM)){
  3230. sOpPnt = "";
  3231. sOpPnt1 = 0;
  3232. if(ds_cond.getColumn(0,"vwctrl_button") == "24hours"){
  3233. sTimeFlag = ds_cond.getColumn(0,"timeflag");
  3234. if(sRecTM.substr(2,1) == "0"){
  3235. sOpPnt = eval(sRecTM.substr(3,1)) % eval(sTimeFlag) / eval(sTimeFlag);
  3236. }else{
  3237. sOpPnt = eval(sRecTM.substr(2,2)) % eval(sTimeFlag) / eval(sTimeFlag);
  3238. }
  3239. //나머지값이 1일 경우 +1을 해줌
  3240. if(eval(sRecTM.substr(2,2)) % eval(sTimeFlag) == 0){
  3241. sOpPnt = sOpPnt+1;
  3242. }
  3243. }else{
  3244. if(sRecTM.substr(2,1) == "0"){
  3245. sOpPnt1 = eval(sRecTM.substr(3,1));
  3246. }else{
  3247. sOpPnt1 = eval(sRecTM.substr(2,2));
  3248. }
  3249. if(iCol == 2 || iCol == 6 || iCol == 10 || iCol == 14 ){
  3250. if(sRecTM.substr(0,2) == "06"){
  3251. sOpPnt = (iCol - 2);
  3252. }else if(sRecTM.substr(0,2) == "07"){
  3253. sOpPnt = (iCol - 2) + 1 / 8 + sOpPnt1/60/8;
  3254. }else if(sRecTM.substr(0,2) == "08"){
  3255. sOpPnt = (iCol - 2) + 2 / 8 + sOpPnt1/60/8;
  3256. }else if(sRecTM.substr(0,2) == "09"){
  3257. sOpPnt = (iCol - 2) + 3 / 8 + sOpPnt1/60/8;
  3258. }else if(sRecTM.substr(0,2) == "10"){
  3259. sOpPnt = (iCol - 2) + 4 / 8 + sOpPnt1/60/8;
  3260. }else if(sRecTM.substr(0,2) == "11"){
  3261. sOpPnt = (iCol - 2) + 5 / 8 + sOpPnt1/60/8;
  3262. }else if(sRecTM.substr(0,2) == "12"){
  3263. sOpPnt = (iCol - 2) + 6 / 8 + sOpPnt1/60/8;
  3264. }else if(sRecTM.substr(0,2) == "13"){
  3265. sOpPnt = (iCol - 2) + 7 / 8 + sOpPnt1/60/8;
  3266. }else if(sRecTM.substr(0,2) == "14"){
  3267. sOpPnt = (iCol - 1);
  3268. }
  3269. }else if(iCol == 3 || iCol == 7 || iCol == 11 || iCol == 15 ){
  3270. if(sRecTM.substr(0,2) == "14"){
  3271. sOpPnt = (iCol - 2);
  3272. }else if(sRecTM.substr(0,2) == "15"){
  3273. sOpPnt = (iCol - 2) + 1/4 + sOpPnt1/60/4;
  3274. }else if(sRecTM.substr(0,2) == "16"){
  3275. sOpPnt = (iCol - 2) + 2/4 + sOpPnt1/60/4;
  3276. }else if(sRecTM.substr(0,2) == "17"){
  3277. sOpPnt = (iCol - 2) + 3/4 + sOpPnt1/60/4;
  3278. }else if(sRecTM.substr(0,2) == "18"){
  3279. sOpPnt = (iCol - 1);
  3280. }
  3281. }else if(iCol == 4 || iCol == 8 || iCol == 12 || iCol == 16 ){
  3282. if(sRecTM.substr(0,2) == "18"){
  3283. sOpPnt = (iCol - 2);
  3284. }else if(sRecTM.substr(0,2) == "19"){
  3285. sOpPnt = (iCol - 2) + 1/4 + sOpPnt1/60/4;
  3286. }else if(sRecTM.substr(0,2) == "20"){
  3287. sOpPnt = (iCol - 2) + 2/4 + sOpPnt1/60/4;
  3288. }else if(sRecTM.substr(0,2) == "21"){
  3289. sOpPnt = (iCol - 2) + 3/4 + sOpPnt1/60/4;
  3290. }else if(sRecTM.substr(0,2) == "22"){
  3291. sOpPnt = (iCol - 1);
  3292. }
  3293. }else if(iCol == 5 || iCol == 9 || iCol == 13 || iCol == 17 ){
  3294. if(sRecTM.substr(0,2) == "22"){
  3295. sOpPnt = (iCol - 2);
  3296. }else if(sRecTM.substr(0,2) == "23"){
  3297. sOpPnt = (iCol - 2) + 1 / 8 + sOpPnt1/60/8;
  3298. }else if(sRecTM.substr(0,2) == "00"){
  3299. sOpPnt = (iCol - 2) + 2 / 8 + sOpPnt1/60/8;
  3300. }else if(sRecTM.substr(0,2) == "01"){
  3301. sOpPnt = (iCol - 2) + 3 / 8 + sOpPnt1/60/8;
  3302. }else if(sRecTM.substr(0,2) == "02"){
  3303. sOpPnt = (iCol - 2) + 4 / 8 + sOpPnt1/60/8;
  3304. }else if(sRecTM.substr(0,2) == "03"){
  3305. sOpPnt = (iCol - 2) + 5 / 8 + sOpPnt1/60/8;
  3306. }else if(sRecTM.substr(0,2) == "04"){
  3307. sOpPnt = (iCol - 2) + 6 / 8 + sOpPnt1/60/8;
  3308. }else if(sRecTM.substr(0,2) == "05"){
  3309. sOpPnt = (iCol - 2) + 7 / 8 + sOpPnt1/60/8;
  3310. }else if(sRecTM.substr(0,2) == "06"){
  3311. sOpPnt = (iCol - 1);
  3312. }
  3313. }else{
  3314. sOpPnt = (iCol - 1);
  3315. }
  3316. }
  3317. if(pFlag == "24hours"){
  3318. sX = iCol-2+sOpPnt;
  3319. if(iCol < 2){
  3320. sOPX = 110 + ((iCol-1) * 41.3) // max = 950;
  3321. }else if(iCol < 25){
  3322. sOPX = 120 + ((iCol-2) * 41.3) // max = 950;
  3323. }else{
  3324. sOPX = 90 + ((iCol-2) * 41.3) // max = 950;
  3325. }
  3326. }else{
  3327. //sX = iCol/4-0.50;
  3328. sX = eval(sOpPnt)/4;
  3329. if(iCol < 2){
  3330. sOPX = 110 + ((iCol -1) * 63.2) // max = 950;
  3331. }else{
  3332. if(iCol == 17){
  3333. sOPX = 110 + ((iCol-2) * 63.2);// max = 950;
  3334. }else{
  3335. sOPX = 110 + ((iCol-2) * 63.2) + 16/iCol * 10 // max = 950;
  3336. }
  3337. }
  3338. }
  3339. Obj_Chart.Series(1).asCandle.AddCandle (sX, 0, 0, 0, 170);
  3340. Obj_Chart.Tools.Add(10);
  3341. Obj_Chart.Tools.get_Items(OPChartRow).Active = true;
  3342. Obj_Chart.Tools.get_Items(OPChartRow).asAnnotation.Shape.Top= 8;
  3343. Obj_Chart.Tools.get_Items(OPChartRow).asAnnotation.Shape.Left= sOPX;
  3344. Obj_Chart.Tools.get_Items(OPChartRow).asAnnotation.Text = "OP "+ sRecTM.substr(0,2)+":"+sRecTM.substr(2,2);
  3345. OPChartRow++;
  3346. break;
  3347. }
  3348. }
  3349. }
  3350. }
  3351. }
  3352. }
  3353. function fPrintPatLabel(){
  3354. //설정된 상단정보를 불러옴
  3355. sPamInfo = sysf_getGlobalVariable("paminfo");
  3356. dsf_setCSVToDs("ds_main_paminfo",sPamInfo);
  3357. if( utlf_isNull(ds_main_paminfo.getColumnInfo("sectioncd")) ){
  3358. ds_main_paminfo.addColumn("sectioncd", "string");
  3359. }
  3360. //var xPathBarCdNode = "/root/barcdtemp/barcdprntsetup";
  3361. if (!utlf_isNull(ds_main_paminfo.getColumn(0,"pid"))) { //상단정보에 환자가 셋팅되어 있을 경우
  3362. var pid, indd, cretno, mskind, histstat;
  3363. dsf_createDsRow("ds_send",
  3364. [{col:"scrnid", val:"SMMNR00600"}
  3365. ]);
  3366. var comport = "1";
  3367. var oParam = {};
  3368. oParam.id = "TRLLC90101";
  3369. oParam.service = "diagtestapplib.LisCommon";
  3370. oParam.method = "reqGetSetUpInfo";
  3371. oParam.inds = "scrnid=ds_send";
  3372. oParam.outds = "ds_barcdprntsetup=getSetUpInfo";
  3373. oParam.async = false;
  3374. // oParam.callback = "cf_TRLLC90101";
  3375. tranf_submit(oParam);
  3376. var pParamObj = new Object();
  3377. pParamObj.pathYN = "N";
  3378. pParamObj.nullColumnYN = "N";
  3379. lf_convertXmlToDs(ds_barcdprntsetup.getColumn(0,"prntsetupinfo"),pParamObj);
  3380. lzzfMakeBrcdPrntObjHanDo("CommAX");
  3381. pid = ds_main_paminfo.getColumn(0,"pid");
  3382. indd = ds_main_paminfo.getColumn(0,"indd");
  3383. cretno = ds_main_paminfo.getColumn(0,"cretno");
  3384. dmskind = ds_main_paminfo.getColumn(0,"mskind");
  3385. histstat = ds_main_paminfo.getColumn(0,"histstat");
  3386. pmifPrintBarCode(pid, indd, cretno, mskind, histstat, "N", "SMMNR00600", ""); // 20090527 변경됨.
  3387. } else {
  3388. sysf_messageBox("환자를 선택 후 출력하십시오", "I");
  3389. }
  3390. }
  3391. function fPopupNurseMain(pFlag){
  3392. if(pFlag == "N" ) pFlag = "";
  3393. //model.setValue(gvMenuParamPath, pFlag);
  3394. frmf_open("SMMNW00100","SMMNW00100", "","","","","","","","","","","M");
  3395. //model.setValue(gvMenuParamPath, "");
  3396. }
  3397. function fPopupInOutInfo(){
  3398. var inout_orddd = ds_cond.getColumn(0,"recdd");
  3399. var inout_wardcd = temp_wardcdgruplist;
  3400. var param = inout_orddd + "▩" + inout_wardcd;
  3401. frmf_setParameter("SMMNW01100_PARAM1", param);
  3402. frmf_modal("SMMNW01100","SMMNW01100","","",1,50,250,"","","","","","M");
  3403. }
  3404. function fSearchClincObsRec(pClsFlag){
  3405. sFluidSumInfo = new Array();
  3406. if(utlf_isNull(ds_patinfo.getColumn(0,"pid"))){
  3407. sysf_messageBox("환자를 선택하십시요","I");
  3408. return;
  3409. }
  3410. var sStrTime = "";
  3411. var sRecCnt = 0;
  3412. var sItemCD = "";
  3413. var sItemSeqNo = "";
  3414. var pFlag = ds_cond.getColumn(0,"vwctrl_button");
  3415. var sTimeFlag = ds_cond.getColumn(0,"timeflag");
  3416. var sRecDd = ds_cond.getColumn(0,"recdd");
  3417. ds_grd_24hoursclincobsreclist.clearData();
  3418. sCurDT = utlf_getCurrentDate() + utlf_getCurrentTime();
  3419. sCurDT = fCalcStartDate(sCurDT, eval(ds_cond.getColumn(0,"timeflag")));
  3420. fCreateHeader(pFlag);
  3421. dsf_createDsRow("ds_send",
  3422. [{col:"pid", val:sPid}
  3423. ,{col:"indd", val:sIndd}
  3424. ,{col:"cretno", val:sCretNo}
  3425. ,{col:"instcd", val:sInstcd }
  3426. ,{col:"timeflag", val:sTimeFlag}
  3427. ,{col:"srchdd", val:sRecDd}
  3428. ,{col:"fromdt", val:sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00"}
  3429. ,{col:"existsdelinfo", val:ds_cond.getColumn(0,"existsdelinfo")}
  3430. ]);
  3431. sCmbWardValue = group1.grp_inpatinfo.cmb_wardlist.value;
  3432. sCmbRoomValue = group1.grp_inpatinfo.cmb_roomlist.value;
  3433. sCmbPatValue = group1.grp_inpatinfo.cmb_patlist.value;
  3434. sCmbMyPatValue = group1.grp_inpatinfo.cmb_mypatlist.value;
  3435. switch(pFlag){
  3436. case "24hours" :
  3437. var iHoursRecRow = 0;
  3438. var iHoursDataRow = 0;
  3439. var sBizLnkFlag = ds_cond.getColumn(0,"bizlnkflag");
  3440. for(var i=1; i <= 25; i++){
  3441. if(utlf_isNull(sStrTime)){
  3442. sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  3443. }else{
  3444. sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  3445. }
  3446. }
  3447. ds_send.addColumn("todt","string");
  3448. ds_send.setColumn(0,"todt",sHeader[1][25]+sHeader[3][25]+sHeader[4][25]+"00");
  3449. ds_send.addColumn("recflag","string");
  3450. ds_send.setColumn(0,"recflag", "24hours");
  3451. ds_send.addColumn("strtime","string");
  3452. ds_send.setColumn(0,"strtime", sStrTime);
  3453. if(sBizLnkFlag == "Y"){
  3454. ds_send.addColumn("bizdeptcd","string");
  3455. ds_send.setColumn(0,"bizdeptcd", sDutplcecd);
  3456. }
  3457. //group4.grd_24hoursclincobsreclist.redraw();
  3458. //group4.grd_24hoursclincobsreclist.dataHeight = sDataRowHeight; //Grid 행 높이 설정
  3459. var HeadCount = group4.grd_24hoursclincobsreclist.getCellCount("Head");
  3460. if(HeadCount > 25){
  3461. group4.grd_24hoursclincobsreclist.setFormatRowProperty(2, "size", sDataRowHeight);
  3462. }
  3463. else{
  3464. group4.grd_24hoursclincobsreclist.setFormatRowProperty(1, "size", sDataRowHeight);
  3465. }
  3466. var oParam = {};
  3467. oParam.id = "TRMNR00901_SJH";
  3468. oParam.service = "flowchartapp.FlowChartRecMngt";
  3469. oParam.method = "reqGetClincObsClsItemList";
  3470. oParam.inds = "req=ds_send";
  3471. oParam.outds = "ds_init_clsinfo=clslist";
  3472. oParam.async = false;
  3473. oParam.callback = "cf_TRMNR00901_SJH";
  3474. tranf_submit(oParam);
  3475. //chk_24hoursclslist.attribute("cols") = getNodesetCnt(model, "/root/init/clsinfo/clslist");
  3476. // if(s24ClsListInitYn == "N"){
  3477. // var sSrchClsInfoList = "";
  3478. //
  3479. // if(sSrchTypeInfo == "ALL"){
  3480. // for(var i = 0 ; i < ds_init_clsinfo.rowcount; i++)
  3481. // {
  3482. // if(utlf_isNull(sSrchClsInfoList))
  3483. // {
  3484. // sSrchClsInfoList += ds_init_clsinfo.getColumn(i, "itemcd");
  3485. // }else{
  3486. // sSrchClsInfoList += " " + ds_init_clsinfo.getColumn(i, "itemcd");
  3487. // }
  3488. // }
  3489. // ds_cond.setColumn(0, "hoursclsinfo", sSrchClsInfoList);
  3490. // }else{
  3491. // ds_cond.setColumn(0, "hoursclsinfo", sSrchTypeInfo);
  3492. // }
  3493. //
  3494. // s24ClsListInitYn = "Y";
  3495. // }
  3496. // model.makeValue("/root/send/clsinfo", model.getValue(sCondPath+"/hoursclsinfo") );
  3497. break;
  3498. }
  3499. //fSettingClincObsRec(pFlag);
  3500. }
  3501. function cf_TRMNR00901_SJH(sSvcId, nErrorCode, sErrorMsg) {
  3502. if(nErrorCode < 0) return;
  3503. //grp_srchbaselist.chk_24hoursclslist.col = ds_init_clsinfo.rowcount;
  3504. grp_srchbaselist.chk_24hoursclslist.col = 10;
  3505. grp_srchbaselist.chk_24hoursclslist.setBindDataset(ds_init_clsinfo,"itemcd","itemnm");
  3506. if(s24ClsListInitYn == "N")
  3507. {
  3508. var sSrchClsInfoList = "";
  3509. if(sSrchTypeInfo == "ALL"){
  3510. for(var i = 0 ; i < ds_init_clsinfo.rowcount ; i++)
  3511. {
  3512. if(utlf_isNull(sSrchClsInfoList)){
  3513. sSrchClsInfoList += ds_init_clsinfo.getColumn(i,"itemcd");
  3514. }else{
  3515. sSrchClsInfoList += " " + ds_init_clsinfo.getColumn(i,"itemcd");
  3516. }
  3517. }
  3518. ds_cond.setColumn(0,"hoursclsinfo", sSrchClsInfoList);
  3519. }else
  3520. {
  3521. ds_cond.setColumn(0,"hoursclsinfo", sSrchTypeInfo);
  3522. }
  3523. s24ClsListInitYn = "Y";
  3524. }
  3525. var str_hoursclsinfo = utlf_transNullToEmpty(ds_cond.getColumn(0,"hoursclsinfo")).split(" ");
  3526. grp_srchbaselist.chk_24hoursclslist.setData(str_hoursclsinfo,null,false);
  3527. ds_send.addColumn("clsinfo","string");
  3528. ds_send.setColumn(0,"clsinfo", ds_cond.getColumn(0,"hoursclsinfo"));
  3529. var oParam = {};
  3530. oParam.id = "TRMNR10103";
  3531. oParam.service = "flowchartapp.FlowChartRecMngt";
  3532. oParam.method = "reqGetClincObsRecList_XP";
  3533. oParam.inds = "req=ds_send";
  3534. oParam.outds = "ds_data_clincobsreclist=clincobsreclist ds_temp_clincobsrecinfo_intervalrecynlist=intervalrecynlist ds_data_recuserlist=recuserlist ds_data_attrlist1=attrlist1 ds_data_fluidlist=fluidlist ds_data_instrmtlist=instrmtlist";
  3535. oParam.async = true;
  3536. oParam.callback = "cf_TRMNR10103";
  3537. tranf_submit(oParam);
  3538. }
  3539. function cf_TRMNR10103(sSvcId, nErrorCode, sErrorMsg) {
  3540. if(nErrorCode < 0) return;
  3541. var pFlag = ds_cond.getColumn(0,"vwctrl_button");
  3542. fSettingClincObsRec(pFlag);
  3543. }
  3544. function fCalcDate(pFlag, pVWFlag, pTerm){
  3545. var sRecDT = ds_cond.getColumn(0,"recdd")+ds_cond.getColumn(0,"rectm");
  3546. switch(pVWFlag){
  3547. case "24hours" :
  3548. var sTime = eval(ds_cond.getColumn(0,"timeflag")) * pTerm;
  3549. sRecDT = sRecDT.toDate("YYYYMMDDhhmmss");
  3550. if(pFlag == "-"){
  3551. sRecDT.setMinutes(sRecDT.getMinutes() - sTime);
  3552. }else{
  3553. sRecDT.getAddDate(sTime, "m");
  3554. }
  3555. ds_cond.setColumn(0,"recdd",utlf_getDateTime(sRecDT,'기본').substr(0,8));
  3556. ds_cond.setColumn(0,"rectm",utlf_getDateTime(sRecDT,'기본').substr(8,6));
  3557. break;
  3558. case "4days" :
  3559. ds_cond.setColumn(0,"recdd",utlf_getDateCalc(ds_cond.getColumn(0,"recdd"),4,pFlag));
  3560. break;
  3561. }
  3562. fSearchClincObsRec(pVWFlag);
  3563. }
  3564. function fControlChkClsInfo(){
  3565. if( sSclsChkFlag == "N" ){
  3566. var sSrchClsInfoList = "";
  3567. for( var i = 0 ; i < ds_init_clsinfo.rowcount ; i ++ ){
  3568. if(utlf_isNull(sSrchClsInfoList)){
  3569. sSrchClsInfoList += ds_init_clsinfo.getColumn(i,"itemcd");
  3570. }else{
  3571. sSrchClsInfoList += " " + ds_init_clsinfo.getColumn(i,"itemcd");
  3572. }
  3573. }
  3574. ds_cond.setColumn(0,"hoursclsinfo", sSrchClsInfoList);
  3575. sSclsChkFlag = "Y";
  3576. }else{
  3577. var sSrchClsInfoList = "";
  3578. for( var i = 0 ; i < ds_init_clsinfo.rowcount ; i ++ ){
  3579. if(utlf_isNull(sSrchClsInfoList)){
  3580. sSrchClsInfoList += ds_init_clsinfo.getColumn(i,"itemcd");
  3581. }else{
  3582. sSrchClsInfoList += " " + ds_init_clsinfo.getColumn(i,"itemcd");
  3583. }
  3584. }
  3585. ds_cond.setColumn(0,"hoursclsinfo", "");
  3586. sSclsChkFlag = "N";
  3587. }
  3588. // var str_hoursclsinfo = utlf_transNullToEmpty(ds_cond.getColumn(0,"hoursclsinfo")).replace(","," ");
  3589. // str_hoursclsinfo = str_hoursclsinfo.split(" ");
  3590. //
  3591. // grp_srchbaselist.chk_24hoursclslist.setData(str_hoursclsinfo,null,false);
  3592. //var str_hoursclsinfo = utlf_transNullToEmpty(ds_cond.getColumn(0,"hoursclsinfo")).split(" ");
  3593. sSrchClsInfoList = utlf_transNullToEmpty(sSrchClsInfoList).split(" ");
  3594. if(sSclsChkFlag == "Y")
  3595. {
  3596. //grp_srchbaselist.chk_24hoursclslist.setCheckAll(true, false);
  3597. grp_srchbaselist.chk_24hoursclslist.setData(sSrchClsInfoList, null, false);
  3598. }
  3599. else
  3600. {
  3601. grp_srchbaselist.chk_24hoursclslist.setCheckAll(false, false);
  3602. }
  3603. }
  3604. function fControlGridSize(pFlag){
  3605. switch(pFlag){
  3606. case "24hours" : // 24시간 화면
  3607. if(ds_cond.getColumn(0,"vwctrl_24hours") == "A"){ // Graph Off
  3608. grp_srchbaselist.btn_24hoursvwctrl.text = "차트보기";
  3609. ds_cond.setColumn(0,"vwctrl_24hours","I");
  3610. group4.obj_24hourschart.visible = false;
  3611. group4.btn_24hoursup.visible = false;
  3612. group4.btn_24hoursdown.visible = false;
  3613. //그래프 체크박스 숨김,보임 설정
  3614. grp_chkbox.visible = false;
  3615. group4.Shape00.visible = false;
  3616. group4.grd_24hoursclincobsreclist.position.top = 30;
  3617. //group4.grd_24hoursclincobsreclist.position.height = 628;
  3618. group4.btn_24hoursdetailbefore.position.top = 32;
  3619. group4.btn_24hoursdetailafter.position.top = 32;
  3620. group4.btn_24hoursdetailbefore.position.height = 19;
  3621. group4.btn_24hoursdetailafter.position.height = 19;
  3622. }else{
  3623. grp_srchbaselist.btn_24hoursvwctrl.text = "차트닫기";
  3624. ds_cond.setColumn(0,"vwctrl_24hours","A");
  3625. group4.obj_24hourschart.visible = true;
  3626. group4.btn_24hoursup.visible = true;
  3627. group4.btn_24hoursdown.visible = true;
  3628. //그래프 체크박스 숨김,보임 설정
  3629. grp_chkbox.visible = true;
  3630. group4.Shape00.visible = true;
  3631. group4.Shape00.position.top = 239;
  3632. group4.grd_24hoursclincobsreclist.position.top = 248;
  3633. //group4.grd_24hoursclincobsreclist.position.height= 491;
  3634. group4.btn_24hoursdetailbefore.position.top = 252;
  3635. group4.btn_24hoursdetailafter.position.top = 252;
  3636. group4.btn_24hoursdetailbefore.position.height = 19;
  3637. group4.btn_24hoursdetailafter.position.height = 19;
  3638. }
  3639. break;
  3640. }
  3641. }
  3642. function fChkSaveData(){
  3643. var sChkChngData = false;
  3644. var sBizLnkFlag = ds_cond.getColumn(0,"bizlnkflag");
  3645. var sTimeFlag = ds_cond.getColumn(0,"timeflag");
  3646. var sRecDd = ds_cond.getColumn(0,"recdd");
  3647. var sRtnMsg = "";
  3648. var sStrTime = "";
  3649. if( sHeader.length < 1 ) return true;
  3650. for(var i=1; i <= 25; i++){
  3651. if(utlf_isNull(sStrTime)){
  3652. sStrTime += utlf_transNullToEmpty(sHeader[1][i])+utlf_transNullToEmpty(sHeader[3][i])+utlf_transNullToEmpty(sHeader[4][i])+"00";
  3653. }else{
  3654. sStrTime += ","+utlf_transNullToEmpty(sHeader[1][i])+utlf_transNullToEmpty(sHeader[3][i])+utlf_transNullToEmpty(sHeader[4][i])+"00";
  3655. }
  3656. }
  3657. for(var iRow = 0; iRow < ds_grd_24hoursclincobsreclist.rowcount; iRow++){
  3658. sItemCD = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemcd" );
  3659. sItemSeqNO = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemseqno" );
  3660. sRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recflag" );
  3661. sRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"reccharflag" );
  3662. sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow,"carerecseqno");
  3663. sItemNM = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemnm" );
  3664. sLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow,"lnkbizcd" );
  3665. sStype = ds_grd_24hoursclincobsreclist.getColumn(iRow,"style" );
  3666. // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
  3667. if(sRecCharFlag == "C" || utlf_isNull(sRecCharFlag) || ( sLnkBizCd == "12" && sStype == "01") ) continue;
  3668. for(var iCol=1; iCol<= 24; iCol++){
  3669. sRecRslt_BK = ds_data_clincobsreclist.lookup("carerecseqno",sCareRecSeqNo,"recrslt"+iCol);
  3670. sRecRslt = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol);
  3671. sStatus = "";
  3672. sResultPath = "";
  3673. //상태값 변경
  3674. if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
  3675. sStatus = "";
  3676. }else if(utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  3677. sStatus = "";
  3678. }else if(utlf_isNull(sRecRslt_BK) && !utlf_isNull(sRecRslt)){
  3679. sStatus = "U";
  3680. }else if(!utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  3681. sStatus = "U";
  3682. }else if(!utlf_isNull(sRecRslt_BK) && sRecRslt_BK != sRecRslt){
  3683. sStatus = "U";
  3684. }
  3685. if(utlf_isNull(sStatus)) continue;
  3686. sChkChngData = true;
  3687. }
  3688. }
  3689. // 변경데이터 유뮤 체크
  3690. if(sChkChngData == true){
  3691. sRtnMsg = sysf_messageBox("저장하지 않은 데이터가 존재합니다.", "Q003");
  3692. if ( sRtnMsg == 6 ){
  3693. return true;
  3694. }else{
  3695. return false;
  3696. }
  3697. }
  3698. return true;
  3699. }
  3700. function fSaveClincObsRec(pRecFlag){
  3701. sViewerFunc = "sign";
  3702. var sSaveDataHeader = "status▦pid▦indd▦cretno▦wardcd▦roomcd▦instcd▦ioflag▦itemcd▦itemseqno▦recflag▦recdt▦recrslt▦certkey▦carerecseqno▩";
  3703. var sSaveData = ""; // 저장데이터
  3704. var sRowCnt = 0; // 전체 row 갯수
  3705. var sItemCD = ""; // 항목코드
  3706. var sItemSeqNO = ""; // 항목일련번호
  3707. var sRecRslt_BK = ""; // 기존 기록결과
  3708. var sRecRslt = ""; // 신규 기록결과
  3709. var sCertKey = ""; // 기존 인증키
  3710. var sStatus = ""; // 상태
  3711. var sStrTime = ""; // 각 컬럼의 시간
  3712. var sRecFlag = ""; // 기록구분
  3713. var sRecCharFlag = ""; // 기록성격구분
  3714. var sChkChngData = false;
  3715. var sBizLnkFlag = ds_cond.getColumn(0,"bizlnkflag");
  3716. var sTimeFlag = ds_cond.getColumn(0,"timeflag");
  3717. var sRecDd = ds_cond.getColumn(0,"recdd");
  3718. var insertrow = 0;
  3719. sFluidSumInfo = new Array();
  3720. ds_send_clincobsreclist.clearData();
  3721. if(utlf_isNull(sPid)){
  3722. sPid = ds_patinfo.getColumn(0,"pid");
  3723. sIndd = ds_patinfo.getColumn(0,"indd");
  3724. sCretNo = ds_patinfo.getColumn(0,"cretno");
  3725. sIOFlag = ds_patinfo.getColumn(0,"ordtype");
  3726. }
  3727. dsf_createDsRow("ds_send",
  3728. [{col:"pid" , val:sPid}
  3729. ,{col:"indd" , val:sIndd}
  3730. ,{col:"cretno" , val:sCretNo}
  3731. ,{col:"instcd" , val:sInstcd}
  3732. ,{col:"ioflag", val:sIOFlag}
  3733. ,{col:"timeflag" , val:sTimeFlag}
  3734. ,{col:"srchdd",val:sRecDd}
  3735. ,{col:"fromdt" , val:sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00"}
  3736. ,{col:"existsdelinfo" , val:ds_cond.getColumn(0,"existsdelinfo")}
  3737. ]);
  3738. switch(pRecFlag){
  3739. case "24hours" :
  3740. if(sBizLnkFlag == "Y"){
  3741. dsf_makeValue(ds_send,"bizdeptcd","string", sDutplcecd);
  3742. }
  3743. dsf_makeValue(ds_send,"todt","string",sHeader[1][24]+sHeader[3][24]+sHeader[4][24]+"00");
  3744. dsf_makeValue(ds_send,"recflag","string", "24hours");
  3745. dsf_makeValue(ds_send,"clsinfo","string", ds_cond.getColumn(0,"hoursclsinfo") );
  3746. for(var i=1; i <= 24; i++){
  3747. if(utlf_isNull(sStrTime)){
  3748. sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  3749. }else{
  3750. sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  3751. }
  3752. }
  3753. dsf_makeValue(ds_send,"strtime","string", sStrTime);
  3754. // sRowCnt = grd_24hoursclincobsreclist.rows - grd_24hoursclincobsreclist.fixedrows;
  3755. group4.grd_24hoursclincobsreclist.updateToDataset();
  3756. for(var iRow = 0; iRow <ds_grd_24hoursclincobsreclist.rowcount; iRow++){
  3757. sItemCD = "";
  3758. sItemSeqNO = "";
  3759. sRecFlag = "";
  3760. sRecCharFlag = "";
  3761. sCareRecSeqNo = "";
  3762. sItemNM = "";
  3763. sLnkBizCd = "";
  3764. sStype = "";
  3765. sItemCD = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemcd");
  3766. sItemSeqNO = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemseqno");
  3767. sRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recflag");
  3768. sRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"reccharflag");
  3769. sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow,"carerecseqno");
  3770. sItemNM = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemnm");
  3771. sLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow,"lnkbizcd");
  3772. sStype = ds_grd_24hoursclincobsreclist.getColumn(iRow,"style");
  3773. // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
  3774. if(sRecCharFlag == "C" || utlf_isNull(sRecCharFlag) || ( sLnkBizCd == "12" && sStype == "01") ) continue;
  3775. //인증키 확인 로직
  3776. var sHistRecDT = utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno",sCareRecSeqNo,"recdt")).split("^");
  3777. var sHistCertKey = utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno",sCareRecSeqNo,"certkey")).split("^");
  3778. for(var iCol=1; iCol<= 24; iCol++){
  3779. sRecRslt_BK = utlf_transNullToEmpty(ds_data_clincobsreclist.lookup("carerecseqno",sCareRecSeqNo,"recrslt"+iCol));
  3780. sRecRslt = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol));
  3781. sCertKey = "";
  3782. if(sHistRecDT.length > 0){
  3783. for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
  3784. if(sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00" == sHistRecDT[histrow]){
  3785. sCertKey = sHistCertKey[histrow];
  3786. }
  3787. }
  3788. }
  3789. sStatus = "";
  3790. sResultPath = "";
  3791. //상태값 변경
  3792. if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
  3793. sStatus = "";
  3794. }else if(utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  3795. sStatus = "";
  3796. }else if(sRecRslt_BK == sRecRslt && utlf_isNull(sCertKey)){
  3797. sStatus = "U";
  3798. }else if(utlf_isNull(sRecRslt_BK) && !utlf_isNull(sRecRslt)){
  3799. sStatus = "U";
  3800. }else if(!utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  3801. sStatus = "U";
  3802. }else if(!utlf_isNull((sRecRslt_BK)) && String(sRecRslt_BK) != String(sRecRslt)){
  3803. sStatus = "U";
  3804. }
  3805. if(utlf_isNull(sStatus)) continue;
  3806. var sRsltNodeCnt = ds_certtemp_recinfo.addRow();
  3807. var sRsltNodeCnt2 = ds_certattrtemp_recattrinfo.addRow();
  3808. var sSaveRecDt = "";
  3809. //간편 입력 저장 부분
  3810. var sArraySaveData = new Array();
  3811. if(utlf_isSearchString(sRecRslt, "'") == true){
  3812. sArraySaveData = sRecRslt.split("/");
  3813. for(var i = 0 ; i < sArraySaveData.length ; i++){
  3814. if(i == sArraySaveData.length -1 && utlf_isSearchString(sArraySaveData[i], "'") == true && sArraySaveData[i].replace("'", "").isNumber() == true && sArraySaveData[i].replace("'", "") < 60 && sArraySaveData[i].replace("'", "").length == 2){
  3815. sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sArraySaveData[i].replace("'", "")+"00";
  3816. sRecRslt = sRecRslt.replace("/" + sArraySaveData[i], "" );
  3817. }
  3818. }
  3819. }
  3820. if(utlf_isNull(sSaveRecDt)) sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
  3821. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"reclist" , sRecRslt );
  3822. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"recdt" , sSaveRecDt );
  3823. ds_certattrtemp_recattrinfo.setColumn(sRsltNodeCnt2,"attrcd" , ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd"));
  3824. ds_certattrtemp_recattrinfo.setColumn(sRsltNodeCnt2,"reclist" , sRecRslt );
  3825. sChkChngData = true;
  3826. // sSaveData += sStatus +"▦"
  3827. // + sPid +"▦"
  3828. // + sIndd +"▦"
  3829. // + sCretNo +"▦"
  3830. // + sWardCD +"▦"
  3831. // + sRoomCD +"▦"
  3832. // + sInstcd +"▦"
  3833. // + sIOFlag +"▦"
  3834. // + sItemCD +"▦"
  3835. // + sItemSeqNO +"▦"
  3836. // + sRecFlag +"▦"
  3837. // + sSaveRecDt +"▦"
  3838. // + sRecRslt +"▦"
  3839. // + sCertKey +"▦"
  3840. // + sCareRecSeqNo +"▩";
  3841. insertrow = ds_send_clincobsreclist.addRow();
  3842. ds_send_clincobsreclist.setColumn(insertrow, "status",sStatus);
  3843. ds_send_clincobsreclist.setColumn(insertrow, "pid",sPid);
  3844. ds_send_clincobsreclist.setColumn(insertrow, "indd",sIndd);
  3845. ds_send_clincobsreclist.setColumn(insertrow, "cretno",sCretNo);
  3846. ds_send_clincobsreclist.setColumn(insertrow, "wardcd",sWardCD);
  3847. ds_send_clincobsreclist.setColumn(insertrow, "roomcd",sRoomCD);
  3848. ds_send_clincobsreclist.setColumn(insertrow, "instcd",sInstcd);
  3849. ds_send_clincobsreclist.setColumn(insertrow, "ioflag",sIOFlag);
  3850. ds_send_clincobsreclist.setColumn(insertrow, "itemcd",sItemCD);
  3851. ds_send_clincobsreclist.setColumn(insertrow, "itemseqno",sItemSeqNO);
  3852. ds_send_clincobsreclist.setColumn(insertrow, "recflag",sRecFlag);
  3853. ds_send_clincobsreclist.setColumn(insertrow, "recdt",sSaveRecDt);
  3854. ds_send_clincobsreclist.setColumn(insertrow, "recrslt",sRecRslt);
  3855. ds_send_clincobsreclist.setColumn(insertrow, "certkey",sCertKey);
  3856. ds_send_clincobsreclist.setColumn(insertrow, "carerecseqno",sCareRecSeqNo);
  3857. }
  3858. }
  3859. // 변경데이터 유뮤 체크
  3860. if(sChkChngData == false){
  3861. sysf_messageBox("저장 할 데이터", "I004");
  3862. return;
  3863. }
  3864. //**********************************************************************************************************************
  3865. // 인증 구현 부분 24시 화면
  3866. //************************************************ **********************************************************************
  3867. //Sign.certreload = false; // 전자서명 호출시 인증저장 버튼을 누늘때마다 인증서가 뜨도록 처리
  3868. if(Sign.signprocess() == true ){
  3869. // ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
  3870. // ▶ 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
  3871. //
  3872. // ▶ 공인인증 처리후 데이터
  3873. dsf_createDsRow("ds_send_signdata",
  3874. [{col:"pid" , val:sPid}
  3875. ,{col:"orddd" , val:sIndd}
  3876. ,{col:"signno" , val:""}
  3877. ,{col:"cretno" , val:sCretNo}
  3878. ,{col:"recdd", val:utlf_getCurrentDate()}
  3879. ,{col:"rectm" , val:utlf_getCurrentTime()}
  3880. ,{col:"recsaveflag",val:"Y"}
  3881. ,{col:"signflag" , val:"02"}
  3882. ,{col:"signgenrflag" , val:sIOFlag}
  3883. ,{col:"formcd" , val:"0000002443"}
  3884. ,{col:"orddeptcd" , val:ds_main_paminfo.getColumn(0,"orddeptcd")}
  3885. ,{col:"orddrid" , val:ds_main_paminfo.getColumn(0,"medispclid")}
  3886. ,{col:"carerecseqno" , val:sCareRecSeqNo}
  3887. ,{col:"itemseqno" , val:sItemSeqNO}
  3888. ,{col:"recflag" , val:sRecFlag}
  3889. ,{col:"lnkrecdt" , val:sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"}
  3890. ,{col:"dispyn" , val:"N"}
  3891. ,{col:"signbfcnts" , val:Sign.signedInfos[1]}// ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
  3892. ,{col:"signaftcnts" , val:Sign.signedInfos[2]}// ▶ 공인인증 처리후 데이터
  3893. ]);
  3894. // 응급실 여부에 따라 다음 내환자 동작 제어 (2011.03.09 Ahn)
  3895. if(eERFLAG == "Y"){
  3896. fgetSelectPid(group1.grp_inpatinfo.cmb_erpat);
  3897. }else{
  3898. //-------(20110228) 경북대
  3899. //alert("0");
  3900. fgetSelectPid(group1.grp_inpatinfo.cmb_mypatlist);
  3901. //alert("1");
  3902. //-------(20110228) 경북대
  3903. }
  3904. }else{
  3905. return false;
  3906. }
  3907. //**********************************************************************************************************************
  3908. //dsf_createDs("ds_send_clincobsreclist");
  3909. //dsf_setCSVToDs("ds_send_clincobsreclist",sSaveDataHeader+sSaveData);
  3910. //model.makeValue("/root/send/clincobsreclist",sSaveDataHeader+sSaveData);
  3911. ds_grd_24hoursclincobsreclist.clearData();
  3912. var oParam = {};
  3913. oParam.id = "TXMNR10101";
  3914. oParam.service = "flowchartapp.FlowChartRecMngt";
  3915. oParam.method = "reqExeClincObsRecList";
  3916. oParam.inds = "req=ds_send clincobsreclist=ds_send_clincobsreclist signinfo=ds_send_signdata";
  3917. oParam.outds = "ds_data_clincobsreclist=clincobsreclist ds_temp_clincobsrecinfo_intervalrecynlist=intervalrecynlist ds_data_recuserlist=recuserlist ds_data_attrlist1=attrlist1 ds_data_rtnsigndata=rtnsigndata ds_data_fluidlist=fluidlist ds_data_instrmtlist=instrmtlist";
  3918. oParam.async = false;
  3919. //oParam.callback = "cf_TXMNR10101";
  3920. tranf_submit(oParam);
  3921. ds_certtemp_recinfo.clearData();
  3922. ds_certattrtemp_recattrinfo.clearData();
  3923. fMakeViewData();
  3924. // 응급실 여부에 따라 다음 내환자 동작 제어 (2011.03.08 Ahn)
  3925. if(eERFLAG == "Y"){
  3926. fGetCareComPatList(group1.grp_inpatinfo.cmb_wardlist.value, group1.grp_inpatinfo.cmb_roomlist.value, group1.grp_inpatinfo.cmb_zone.value, eRECFLAG);
  3927. fNextSelectErPat(group1.grp_inpatinfo.cmb_erpat);
  3928. }else{
  3929. //-------(20110228) 경북대
  3930. //alert("3");
  3931. //내환자 조회-간호일지용
  3932. //debugger;
  3933. if (!utlf_isNull(gcurrentpid)) {
  3934. fGetSettingPatientList_type2(); //--테스트완료 , XRW를 변경하면됨
  3935. //alert("4");
  3936. var posi = fgetSelectPidNext();
  3937. //alert("5/"+ posi);
  3938. fsetSelectPidNext(group1.grp_inpatinfo.cmb_mypatlist,posi);
  3939. if(grp_srchbaselist.chk_nextyn.value == "Y")
  3940. {
  3941. if(group1.grp_inpatinfo.cmb_mypatlist.index >= 0)
  3942. {
  3943. frmf_inputEnterKey("group1.grp_inpatinfo.cmb_mypatlist", "onitemchanged", new ItemChangeEventInfo );
  3944. }
  3945. }
  3946. }
  3947. //-------(20110228) 경북대
  3948. }
  3949. break;
  3950. }
  3951. //fSettingClincObsRec(pRecFlag);
  3952. fSearchClincObsRec(pRecFlag);
  3953. }
  3954. function fNextSelectErPat(sobj){
  3955. var tempPid = "";
  3956. var sPosition = 0;
  3957. var nextyn = grp_srchbaselist.chk_nextyn.value;
  3958. if ( !utlf_isNull(gcurrentpid)) {
  3959. for(i = 0; i < ds_data_patientgruplist.rowcount; i++ ) {
  3960. tempPid = ds_data_patientgruplist.getColumn(i, "pid");
  3961. if (gcurrentpid == tempPid) {
  3962. sPosition = i;
  3963. break;
  3964. }
  3965. }
  3966. }
  3967. if(nextyn == "Y") {
  3968. if(sPosition == ds_data_patientgruplist.rowcount - 1){
  3969. sobj.index = 0; // 마지막 환자인 경우 처음 환자로 재 선택 sobj.index = 0;
  3970. }else{
  3971. sobj.index = sPosition + 1;
  3972. }
  3973. } else {
  3974. sobj.index = sPosition;
  3975. }
  3976. fSetParam("SrchPat", sobj.index);
  3977. }
  3978. /**
  3979. * @author : dhkim
  3980. * @create : 20080827
  3981. * @desc : 해당환자가 중환자실 환자인가?
  3982. * @return : boolean (true/false)
  3983. */
  3984. function fIsICUPatient(wardcd){
  3985. var ret = false;//icu 환자인지 여부 디폴트
  3986. /*
  3987. for(var i = 0; i < icuArr.length ; i++){
  3988. if(wardcd == icuArr[i]){
  3989. ret = true;
  3990. return true;
  3991. }
  3992. }
  3993. */
  3994. //중증도 기록에서 사용하는 부서코드 조회_20090414_SMY추가
  3995. for( var i=0 ; i < ds_icucdgruplist.rowcount ; i++ ){
  3996. if( wardcd == ds_icucdgruplist.getColumn(i, "wardcd") && ds_icucdgruplist.getColumn(i, "clsflag") == '4' ){
  3997. ret = true;
  3998. return true;
  3999. }
  4000. }
  4001. return ret;
  4002. }
  4003. // 재설정하기
  4004. function fsetSelectPidNext(sobj,sposition){
  4005. // 중환자실 환자인 경우 저장 후 현재 환자 재선택 (2011.03.25 Ahn)
  4006. var nextyn = grp_srchbaselist.chk_nextyn.value;
  4007. if(fIsICUPatient(sWardCD)){
  4008. if(nextyn == "Y")
  4009. {
  4010. sobj.index = sposition + 1;
  4011. }
  4012. else
  4013. {
  4014. sobj.index = sposition;
  4015. }
  4016. }else{
  4017. if( ds_data_settingpatientlist.rowcount - 1 > sposition ){
  4018. if(nextyn == "Y") {
  4019. sobj.index = sposition + 1;
  4020. } else {
  4021. sobj.index = sposition;
  4022. }
  4023. //alert("1");
  4024. }else {
  4025. //콤보믄 0부터시작
  4026. //instance는 1부터시작
  4027. if(nextyn == "Y") {
  4028. sobj.index = 0;
  4029. }
  4030. else
  4031. {
  4032. sobj.index = sposition;
  4033. }
  4034. //alert("2");
  4035. }
  4036. }
  4037. //group5_cmb_mypat_onitemchanged();
  4038. }
  4039. function fgetSelectPidNext(){
  4040. //var sPath = "/root/temp/mypatsettinginfo/settingpatient/settingpatientlist"
  4041. var tempPid = "";
  4042. var sposition = -1;
  4043. //alert("gcurrentpid:" + gcurrentpid + "/" + getNodesetCount(gpidPath));
  4044. if ( !utlf_isNull(gcurrentpid)) {
  4045. for( var i=0 ; i < ds_data_settingpatientlist.rowcount ; i++ ){
  4046. tempPid = ds_data_settingpatientlist.getColumn(i, "pid");
  4047. //alert(gcurrentpid + "/" + tempPid);
  4048. //gcurrentpid 전역변수
  4049. if( gcurrentpid == tempPid ){
  4050. sposition = i;
  4051. //alert("pid찾음");
  4052. i = ds_data_settingpatientlist.rowcount;
  4053. }
  4054. }
  4055. }
  4056. return sposition;
  4057. }
  4058. /* -----(20110228) 경북대 ------------------------ */
  4059. // 현재 위치 인지하기
  4060. function fgetSelectPid(sobj)
  4061. {
  4062. //현재위치찾기
  4063. //alert("sobj.value:" + sobj.value);
  4064. if (!utlf_isNull(sobj.value))
  4065. {
  4066. gcurrentpid = sobj.value;
  4067. } else {
  4068. gcurrentpid = "";
  4069. }
  4070. //alert("gcurrentpid:" + gcurrentpid);
  4071. }
  4072. function fMakeViewData(){
  4073. ds_send_signdata.clearData();
  4074. ds_temp_viewinfo.clearData();
  4075. ds_temp_viewinfo_viewlist.clearData();
  4076. sViewerFunc = "veiw";
  4077. var sCntViewData = ds_data_rtnsigndata.rowcount;
  4078. var sTopColInfo = "";
  4079. var sSrow = "";
  4080. var sErow = "";
  4081. var xPathViewData = ds_data_rtnsigndata;
  4082. sViewerRecDD = "";
  4083. sMakeChartInfo[1] = new Array(); //Y축명
  4084. sMakeChartInfo[2] = new Array(); //Y축정보
  4085. sMakeChartInfo[3] = new Array(); //기록시간
  4086. sMakeChartInfo[4] = new Array(); //기록값
  4087. if(sCntViewData > 0 )
  4088. {
  4089. for(var i = 0 ; i < xPathViewData.rowcount ; i++)
  4090. {
  4091. if(!utlf_isNull(xPathViewData.getColumn(i, "leftaxis")) && xPathViewData.getColumn(i, "leftaxis") != "-" )
  4092. {
  4093. var insIndex = sMakeChartInfo[1].length;
  4094. sMakeChartInfo[1][insIndex] = xPathViewData.getColumn(i, "captiony");
  4095. sMakeChartInfo[2][insIndex] = xPathViewData.getColumn(i, "leftaxis");
  4096. sMakeChartInfo[3][insIndex] = xPathViewData.getColumn(i, "recdtlist");
  4097. sMakeChartInfo[4][insIndex] = xPathViewData.getColumn(i, "recrsltlist");
  4098. }
  4099. //일자 정보 변경시 데이터 저장함수 호출
  4100. if(xPathViewData.getColumn(i, "itemcd") == "-" && !utlf_isNull(sViewerRecDD))
  4101. {
  4102. sTopColInfo = "";
  4103. fSaveViewData();
  4104. //model.removenodeSet("/root/viewtemp/viewinfo");
  4105. //ds_temp_viewinfo.clearData();
  4106. //ds_temp_viewinfo_viewlist.clearData();
  4107. }
  4108. if(xPathViewData.getColumn(i, "itemcd") == "-")
  4109. {
  4110. //pSrow = i;
  4111. var sViewDate = xPathViewData.getColumn(i, "recdd");
  4112. var sEndRows = 0;
  4113. sViewerRecDD = sViewDate;
  4114. dsf_makeValue(ds_temp_viewinfo, "vierdate" , "string", sViewDate.substr(0,4)+"-"+sViewDate.substr(4,2)+"-"+sViewDate.substr(6,4));
  4115. dsf_makeValue(ds_temp_viewinfo, "recdd" , "string", sViewDate);
  4116. dsf_makeValue(ds_temp_viewinfo, "pid" , "string", sPid);
  4117. dsf_makeValue(ds_temp_viewinfo, "orddd" , "string", sIndd);
  4118. dsf_makeValue(ds_temp_viewinfo, "cretno" , "string", sCretNo);
  4119. dsf_makeValue(ds_temp_viewinfo, "recflag" , "string", "A");
  4120. dsf_makeValue(ds_temp_viewinfo, "server" , "string", sysf_getURLprefix());
  4121. dsf_makeValue(ds_temp_viewinfo, "instcd" , "string", sInstcd);
  4122. sTopColInfo = utlf_transNullToEmpty(xPathViewData.getColumn(i, "recdtlist")).split("^");
  4123. var jrow = 0 ;
  4124. var insRow = 0;
  4125. for(var k = 0 ; k < sTopColInfo.length ; k++)
  4126. {
  4127. var insCol = (k % 9) ;
  4128. if(jrow == 0)
  4129. {
  4130. if(insRow != 0)
  4131. {
  4132. //insRow = eval(getNodesetCount("/root/viewtemp/viewinfo/viewlist")) ;
  4133. insRow = ds_temp_viewinfo_viewlist.rowcount - 1;
  4134. }
  4135. else
  4136. {
  4137. if(ds_temp_viewinfo_viewlist.rowcount > 0)
  4138. {
  4139. insRow = ds_temp_viewinfo_viewlist.rowcount - 1;
  4140. }
  4141. else
  4142. {
  4143. insRow = ds_temp_viewinfo_viewlist.addRow();
  4144. dsf_makeValue(ds_temp_viewinfo_viewlist, "itemnm", "string", "기록시간", insRow);
  4145. }
  4146. }
  4147. }
  4148. else
  4149. {
  4150. insRow = ds_temp_viewinfo_viewlist.addRow();
  4151. dsf_makeValue(ds_temp_viewinfo_viewlist, "itemnm", "string", " ", insRow);
  4152. insRow++;
  4153. jrow = 0;
  4154. }
  4155. //var sTempNode = "/root/viewtemp/viewinfo/viewlist["+insRow +"]/col"+insCol;
  4156. dsf_makeValue(ds_temp_viewinfo_viewlist, "col"+insCol, "string", sTopColInfo[k], insRow);
  4157. if(insCol == 8 || k == sTopColInfo.length-1)
  4158. {
  4159. for(var j = i + 1; j < xPathViewData.rowcount ; j++)
  4160. {
  4161. if(sViewDate == xPathViewData.getColumn(j, "recdd"))
  4162. {
  4163. var sColInfo = utlf_transNullToEmpty(xPathViewData.getColumn(j, "recdtlist")).split("^");
  4164. var sColrsltInfo = utlf_transNullToEmpty(xPathViewData.getColumn(j, "recrsltlist")).split("^");
  4165. var sColrecnm = utlf_transNullToEmpty(xPathViewData.getColumn(j, "recnm")).split("^");
  4166. for(var d = 0 ; d < sColInfo.length ; d++)
  4167. {
  4168. var insSubCol = (d % 9) ;
  4169. //var tmpSubRow = (""+d / 9+"").getTruncate();
  4170. var insSubRow = insRow + j;
  4171. //날짜 바뀌면은 j 바뀜 원래 row보다 2플러스 됨...그래서 데이터셋 로우 가지고 옴... 추민수
  4172. //insSubRow = ds_temp_viewinfo_viewlist.rowcount;
  4173. dsf_makeValue(ds_temp_viewinfo_viewlist, "itemnm", "string", xPathViewData.getColumn(j, "itemnm"), insSubRow);
  4174. for(var z = 0 ; z <= insCol ; z++)
  4175. {
  4176. if(ds_temp_viewinfo_viewlist.getColumn(insRow, "col"+z) == sColInfo[d])
  4177. {
  4178. //var sTempNode = "/root/viewtemp/viewinfo/viewlist["+insSubRow+"]/col"+z;
  4179. //var sTempNodeRow = "/root/viewtemp/viewinfo/viewlist["+insSubRow+"]/row"+z;
  4180. var sTempRecNM = "";
  4181. dsf_makeValue(ds_temp_viewinfo_viewlist, "col"+z, "string", sColrsltInfo[d], insSubRow);
  4182. if( !utlf_isNull(sColrecnm[d]))
  4183. {
  4184. sTempRecNM = "[" + sColrecnm[d] + "]";
  4185. dsf_makeValue(ds_temp_viewinfo_viewlist, "row"+z, "string", sTempRecNM, insSubRow);
  4186. }
  4187. jrow = j;
  4188. }
  4189. }
  4190. }
  4191. }
  4192. }
  4193. }
  4194. }
  4195. i = jrow;
  4196. }
  4197. //데이터 생성 종료시 저장 함수 호출
  4198. if(i == xPathViewData.rowcount - 1){
  4199. fSaveViewData();
  4200. }
  4201. }
  4202. var oParam = {};
  4203. oParam.id = "TXMNR00904";
  4204. oParam.service = "carerecapp.ClincObsRec";
  4205. oParam.method = "reqExeSaveViewData";
  4206. oParam.inds = "signinfo=ds_send_signdata";
  4207. oParam.outds = "";
  4208. oParam.async = false;
  4209. tranf_submit(oParam);
  4210. fMakeViewChartImg();
  4211. }
  4212. }
  4213. /**
  4214. * @group :
  4215. * @ver : 2009.12.15
  4216. * @by : 양천덕
  4217. * @---------------------------------------------------
  4218. * @type : function
  4219. * @access : public
  4220. * @desc :
  4221. * @param : 기록일별 view img 정보 생성 및 저장
  4222. * @return :
  4223. * @---------------------------------------------------
  4224. */
  4225. function fMakeViewChartImg(){
  4226. ds_send_imginfo.clearData();
  4227. sImageRecDD = "";
  4228. var sSrow = "";
  4229. var sErow = "";
  4230. //sChartNum = 1;
  4231. for(var i = 0 ; i < ds_data_rtnsigndata.rowcount ; i++)
  4232. {
  4233. if(ds_data_rtnsigndata.getColumn(i, "itemcd") == "-")
  4234. {
  4235. if(!utlf_isNull(sImageRecDD))
  4236. {
  4237. sErow = i -1;
  4238. fMakeViewChart(sSrow, sErow);
  4239. sImageRecDD = ds_data_rtnsigndata.getColumn(i, "recdd");
  4240. sSrow = "";
  4241. sErow = "";
  4242. sSrow = i;
  4243. }else{
  4244. sImageRecDD = ds_data_rtnsigndata.getColumn(i, "recdd");
  4245. sSrow = i;
  4246. }
  4247. }
  4248. //데이터 생성 종료시 저장 함수 호출
  4249. if(i == ds_data_rtnsigndata.rowcount - 1)
  4250. {
  4251. sErow = i;
  4252. fMakeViewChart(sSrow, sErow);
  4253. sSrow = "";
  4254. sErow = "";
  4255. }
  4256. }
  4257. //
  4258. var oParam = {};
  4259. oParam.id = "TXMNR00905";
  4260. oParam.service = "carerecapp.ClincObsRec";
  4261. oParam.method = "reqExeSaveViewChartData";
  4262. oParam.inds = "imginfo=ds_send_imginfo";
  4263. //oParam.outds = "";
  4264. oParam.async = false;
  4265. //oParam.callback = "cf_TXMNR00905";
  4266. tranf_submit(oParam);
  4267. ds_send_imginfo.clearData();
  4268. }
  4269. /**
  4270. * @group :
  4271. * @ver : 2009.12.15
  4272. * @by : 양천덕
  4273. * @---------------------------------------------------
  4274. * @type : function
  4275. * @access : public
  4276. * @desc :
  4277. * @param : 기록일별 view Chart 생성
  4278. * @return :
  4279. * @---------------------------------------------------
  4280. */
  4281. function fMakeViewChart(pSrow, pErow)
  4282. {
  4283. var Obj_Chart;
  4284. var sColCnt = 0;
  4285. var sRecRslt = "";
  4286. var sRecRslt1 = "";
  4287. var sChartInfo = "";50
  4288. var sRecDD = "";
  4289. var sRecTM = "";
  4290. sChartInfo = String(utlf_transNullToEmpty(grp_chkbox.chk_hourschartinfo.getData())).split(",");
  4291. group4.obj_viewchart.ClearChart();
  4292. //margin 값 정하기
  4293. //obj_24hourschart.Panel.MarginTop = 1;
  4294. group4.obj_viewchart.Panel.MarginTop = 2;
  4295. group4.obj_viewchart.Panel.MarginLeft = 12;
  4296. group4.obj_viewchart.Panel.MarginRight = 0;
  4297. group4.obj_viewchart.Panel.MarginBottom = 0;
  4298. //하단축 칸 수 정하기와 눈금 없애기
  4299. group4.obj_viewchart.Axis.Bottom.TickLength = 10;
  4300. group4.obj_viewchart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
  4301. group4.obj_viewchart.Axis.Bottom.Increment = 1;
  4302. group4.obj_viewchart.Axis.Bottom.MinorTickCount = 1;
  4303. group4.obj_viewchart.Axis.Bottom.Labels.Visible = true;
  4304. group4.obj_viewchart.Axis.Bottom.Labels.Font.Color = 0x000000;
  4305. for(var i = 0 ; i < 24 ; i ++){
  4306. group4.obj_viewchart.Axis.Bottom.Labels.Add(i, i);
  4307. }
  4308. Obj_Chart = group4.obj_viewchart;
  4309. sColCnt = 24*60;
  4310. Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
  4311. Obj_Chart.Axis.Bottom.Labels.Font.Color = 0xffffff; //Obj_Chart.Panel.Color; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
  4312. //Obj_Chart.Axis.Bottom.Labels.Font.Color = 0x000000
  4313. Obj_Chart.Header.Visible = false;
  4314. Obj_Chart.Aspect.View3D = 0; //2d 로 표현하기
  4315. Obj_Chart.Zoom.Enable = false; // zoom 사용하지 않기
  4316. Obj_Chart.Scroll.Enable = false; // scroll 사용하지 않기
  4317. Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
  4318. Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
  4319. Obj_Chart.Panel.Gradient.StartColor = 0xffffff;
  4320. Obj_Chart.Panel.Gradient.EndColor=0xffffff;
  4321. Obj_Chart.Environment.MouseWheelScroll = false;
  4322. // 혈압을 나타내는 막대그래프를 먼저 그려야 맥박, 체온,호흡 점이 막대 그래프에 가려지지 않는다.
  4323. var cus_axis1 = Obj_Chart.Axis.AddCustom(false); // 혈압축
  4324. Obj_Chart.Axis.get_Custom(0).AxisPen.Color = 0x0000ff;
  4325. Obj_Chart.Axis.get_Custom(0).Title.Caption = "혈압/맥박"
  4326. Obj_Chart.Axis.get_Custom(0).Title.Font.Size = 8;
  4327. Obj_Chart.Axis.get_Custom(0).Title.Font.Bold = true;
  4328. Obj_Chart.Axis.get_Custom(0).Title.Angle = 90;
  4329. Obj_Chart.Axis.get_Custom(0).PositionPercent = 0;
  4330. Obj_Chart.Axis.get_Custom(0).StartPosition = 0;
  4331. Obj_Chart.Axis.get_Custom(0).EndPosition = 100;
  4332. Obj_Chart.Axis.get_Custom(0).Automatic = false;
  4333. Obj_Chart.Axis.get_Custom(0).Maximum = 200;
  4334. Obj_Chart.Axis.get_Custom(0).Minimum = 20;
  4335. Obj_Chart.Axis.get_Custom(0).Increment = 20;
  4336. var cus_axis2 = Obj_Chart.Axis.AddCustom(false); // 호흡축
  4337. Obj_Chart.Axis.get_Custom(1).AxisPen.Color = 0x00ff00;
  4338. Obj_Chart.Axis.get_Custom(1).Title.Caption = "호흡";
  4339. Obj_Chart.Axis.get_Custom(1).Title.Font.Size = 8;
  4340. Obj_Chart.Axis.get_Custom(1).Title.Font.Bold = true;
  4341. Obj_Chart.Axis.get_Custom(1).Title.Angle = 90;
  4342. Obj_Chart.Axis.get_Custom(1).PositionPercent = -10;
  4343. Obj_Chart.Axis.get_Custom(1).Automatic = false;
  4344. Obj_Chart.Axis.get_Custom(1).Maximum = 90;
  4345. Obj_Chart.Axis.get_Custom(1).Minimum = 0;
  4346. Obj_Chart.Axis.get_Custom(1).Increment = 10;
  4347. var cus_axis3 = Obj_Chart.Axis.AddCustom(false); // 체온축
  4348. Obj_Chart.Axis.get_Custom(2).AxisPen.Color = 0xff0000;
  4349. Obj_Chart.Axis.get_Custom(2).Title.Caption = "체온";
  4350. Obj_Chart.Axis.get_Custom(2).Title.Font.Size = 8;
  4351. Obj_Chart.Axis.get_Custom(2).Title.Font.Bold = true;
  4352. Obj_Chart.Axis.get_Custom(2).Title.Angle = 90;
  4353. Obj_Chart.Axis.get_Custom(2).PositionPercent = -5;
  4354. Obj_Chart.Axis.get_Custom(2).Automatic = false;
  4355. Obj_Chart.Axis.get_Custom(2).Maximum = 43;
  4356. Obj_Chart.Axis.get_Custom(2).Minimum = 34;
  4357. Obj_Chart.Axis.get_Custom(2).Increment = 1;
  4358. Obj_Chart.AddSeries (11); // 혈압
  4359. Obj_Chart.AddSeries (0); // 맥박
  4360. Obj_Chart.AddSeries (0); // 호흡
  4361. Obj_Chart.AddSeries (0); // 체온
  4362. Obj_Chart.AddSeries (0); // 38선
  4363. Obj_Chart.AddSeries (0); // BP(M)
  4364. //Obj_Chart.AddSeries (11); // OP
  4365. Obj_Chart.Series(0).VerticalAxisCustom = cus_axis1; // 혈압
  4366. Obj_Chart.Series(1).VerticalAxisCustom = cus_axis1; // 맥박
  4367. Obj_Chart.Series(2).VerticalAxisCustom = cus_axis2; // 호흡
  4368. Obj_Chart.Series(3).VerticalAxisCustom = cus_axis3; // 체온
  4369. Obj_Chart.Series(4).VerticalAxisCustom = cus_axis1; // BP(M)
  4370. Obj_Chart.Series(5).VerticalAxisCustom = cus_axis3; // 38선
  4371. //Obj_Chart.Series(5).VerticalAxisCustom = cus_axis1; // OP
  4372. //라인의 굵기를 정해준다.
  4373. Obj_Chart.Series(0).asCandle.CandleStyle = 2;
  4374. Obj_Chart.Series(0).asCandle.CandleWidth = 3;
  4375. Obj_Chart.Series(1).asLine.LinePen.Width = 1;
  4376. Obj_Chart.Series(2).asLine.LinePen.Width = 1;
  4377. Obj_Chart.Series(3).asLine.LinePen.Width = 1;
  4378. Obj_Chart.Series(4).asLine.LinePen.Width = 1;
  4379. Obj_Chart.Series(4).asLine.LinePen.Style = 7;
  4380. Obj_Chart.Series(5).asLine.LinePen.Width = 1;
  4381. //Obj_Chart.Series(5).asCandle.CandleStyle = 2;
  4382. //Obj_Chart.Series(5).asCandle.CandleWidth = 4;
  4383. Obj_Chart.Series(0).Color = 0x000000; //black 혈압
  4384. Obj_Chart.Series(1).Color = 0x0000ff; //red 맥박
  4385. Obj_Chart.Series(2).Color = 0x00ff00; //green 호흡
  4386. Obj_Chart.Series(3).Color = 0xff0000; //blue 체온
  4387. Obj_Chart.Series(4).Color = 0x000000; //black BP(M)
  4388. Obj_Chart.Series(5).Color = 0x000000; //black 38선
  4389. //Obj_Chart.Series(5).Color = 0x000000; //black OP
  4390. Obj_Chart.Series(1).asLine.Pointer.Visible = true;
  4391. Obj_Chart.Series(1).asLine.Pointer.Style = 1;
  4392. Obj_Chart.Series(1).asLine.Pointer.VerticalSize = 3;
  4393. Obj_Chart.Series(1).asLine.Pointer.HorizontalSize = 3;
  4394. Obj_Chart.Series(2).asLine.Pointer.Visible = true;
  4395. Obj_Chart.Series(2).asLine.Pointer.Style = 0;
  4396. Obj_Chart.Series(2).asLine.Pointer.VerticalSize = 2;
  4397. Obj_Chart.Series(2).asLine.Pointer.HorizontalSize = 2;
  4398. Obj_Chart.Series(3).asLine.Pointer.Visible = true;
  4399. Obj_Chart.Series(3).asLine.Pointer.Style = 2;
  4400. Obj_Chart.Series(3).asLine.Pointer.VerticalSize = 2;
  4401. Obj_Chart.Series(3).asLine.Pointer.HorizontalSize = 2;
  4402. Obj_Chart.Series(4).asLine.Pointer.Visible = true;
  4403. Obj_Chart.Series(4).asLine.Pointer.Pen.Color = 0x000000;
  4404. Obj_Chart.Series(4).asLine.Pointer.Style = 5;
  4405. Obj_Chart.Series(4).asLine.Pointer.VerticalSize = 2;
  4406. Obj_Chart.Series(4).asLine.Pointer.HorizontalSize = 2;
  4407. //depth 정하기
  4408. Obj_Chart.Series(1).Depth = 1;
  4409. Obj_Chart.Series(2).Depth = 1;
  4410. Obj_Chart.Series(3).Depth = 1;
  4411. Obj_Chart.Series(4).Depth = 1;
  4412. Obj_Chart.Series(5).Depth = 3;
  4413. //Obj_Chart.Series(5).Depth = 5;
  4414. //Obj_Chart.Series(6).Depth = 6;
  4415. //38선 그리기
  4416. //Obj_Chart.Series(5).AddXY (-5, 38.5, "", Obj_Chart.Series(5).Color );
  4417. //Obj_Chart.Series(5).AddXY (70, 38.5, "", Obj_Chart.Series(5).Color );
  4418. //혈압 Candle 색설정
  4419. Obj_Chart.Series(0).asCandle.UpCloseColor = 0xffffff;
  4420. Obj_Chart.Series(0).asCandle.DownCloseColor = 0x0000ff;
  4421. //그래프 표시
  4422. //Header Info
  4423. var sChartAllDateList = new Array();
  4424. //Date Info
  4425. var sChartDate1List = new Array();
  4426. var sChartDate2List = new Array();
  4427. var sChartDate3List = new Array();
  4428. var sChartDate4List = new Array();
  4429. var sChartDate5List = new Array();
  4430. var sChartDate6List = new Array();
  4431. //Result Info
  4432. var sChartRslt1List = new Array();
  4433. var sChartRslt2List = new Array();
  4434. var sChartRslt3List = new Array();
  4435. var sChartRslt4List = new Array();
  4436. var sChartRslt5List = new Array();
  4437. var sChartRslt6List = new Array();
  4438. var sRecData1 = "";
  4439. var sRecData2 = "";
  4440. var sRecData3 = "";
  4441. var sRecData4 = "";
  4442. var sRecData5 = "";
  4443. var sRecData6 = "";
  4444. //instance 에서 그래프에 표기할 시간, 기록값 추출
  4445. for(var i = pSrow ; i <= pErow ; i++){
  4446. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "-" &&
  4447. ds_data_rtnsigndata.getColumn(i, "itemcd") == "-" )
  4448. {
  4449. sChartAllDateList = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4450. }
  4451. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "1")
  4452. {
  4453. sChartDate1List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4454. sChartRslt1List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4455. }
  4456. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "2")
  4457. {
  4458. sChartDate2List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4459. sChartRslt2List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4460. }
  4461. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "3")
  4462. {
  4463. sChartDate3List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4464. sChartRslt3List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4465. }
  4466. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "4")
  4467. {
  4468. sChartDate4List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4469. sChartRslt4List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4470. }
  4471. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "5")
  4472. {
  4473. sChartDate5List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4474. sChartRslt5List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4475. }
  4476. if(ds_data_rtnsigndata.getColumn(i, "leftaxis") == "6")
  4477. {
  4478. sChartDate6List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recdtlist")).split("^");
  4479. sChartRslt6List = utlf_transNullToEmpty(ds_data_rtnsigndata.getColumn(i, "recrsltlist")).split("^");
  4480. }
  4481. }
  4482. for(var i = 0 ; i < sChartAllDateList.length ; i++){
  4483. sRecData1 = "";
  4484. sRecData2 = "";
  4485. sRecData3 = "";
  4486. sRecData4 = "";
  4487. sRecData5 = "";
  4488. sRecData6 = "";
  4489. //if(sChartAllDateList[i].substr(3,2) == "00" || sChartAllDateList[i].substr(3,2) == "30"){
  4490. var sCoordinate = eval(sChartAllDateList[i].substr(0,2)) + eval(sChartAllDateList[i].substr(3,2) / 60) ;
  4491. //시간별 기록 데이터 추출
  4492. for(var list1 = 0 ; list1 < sChartDate1List.length ; list1++){
  4493. if(sChartAllDateList[i] == sChartDate1List[list1]){
  4494. sRecData1 = sChartRslt1List[list1];
  4495. }
  4496. }
  4497. for(var list2 = 0 ; list2 < sChartDate2List.length ; list2++){
  4498. if(sChartAllDateList[i] == sChartDate2List[list2]){
  4499. sRecData2 = sChartRslt2List[list2];
  4500. }
  4501. }
  4502. for(var list3 = 0 ; list3 < sChartDate3List.length ; list3++){
  4503. if(sChartAllDateList[i] == sChartDate3List[list3]){
  4504. sRecData3 = sChartRslt3List[list3];
  4505. }
  4506. }
  4507. for(var list4 = 0 ; list4 < sChartDate4List.length ; list4++){
  4508. if(sChartAllDateList[i] == sChartDate4List[list4]){
  4509. sRecData4 = sChartRslt4List[list4];
  4510. }
  4511. }
  4512. for(var list5 = 0 ; list5 < sChartDate5List.length ; list5++){
  4513. if(sChartAllDateList[i] == sChartDate5List[list5]){
  4514. sRecData5 = sChartRslt5List[list5];
  4515. }
  4516. }
  4517. for(var list6 = 0 ; list6 < sChartDate6List.length ; list6++){
  4518. if(sChartAllDateList[i] == sChartDate6List[list6]){
  4519. sRecData6 = sChartRslt6List[list6];
  4520. }
  4521. }
  4522. //그래프에 데이터 입력
  4523. if(!utlf_isNull(sRecData1) && !utlf_isNull(sRecData2) && fIsNumber(sRecData1) == true && fIsNumber(sRecData2) == true)
  4524. {
  4525. Obj_Chart.Series(0).asCandle.AddCandle (eval(sCoordinate), eval(sRecData2), 0, 0, eval(sRecData1));
  4526. }
  4527. if(!utlf_isNull(sRecData3) && fIsNumber(sRecData3) == true)
  4528. {
  4529. Obj_Chart.Series(1).AddXY (eval(sCoordinate), eval(sRecData3), "", Obj_Chart.Series(1).Color);
  4530. }
  4531. if(!utlf_isNull(sRecData4) && fIsNumber(sRecData4) == true){
  4532. Obj_Chart.Series(2).AddXY (eval(sCoordinate), eval(sRecData4), "", Obj_Chart.Series(2).Color);
  4533. }
  4534. if(!utlf_isNull(sRecData5) && fIsNumber(sRecData5) == true){
  4535. Obj_Chart.Series(3).AddXY (eval(sCoordinate), eval(sRecData5), "", Obj_Chart.Series(3).Color);
  4536. }
  4537. if(!utlf_isNull(sRecData6) && fIsNumber(sRecData6) == true){
  4538. Obj_Chart.Series(4).AddXY (eval(sCoordinate), eval(sRecData6), "", Obj_Chart.Series(4).Color);
  4539. }
  4540. //}
  4541. }
  4542. //그래프 이미지 특정 폴더에 저장
  4543. var fso, fldr;
  4544. var ExtObj = new ExtCommon();
  4545. var sImgDataRowCnt = ds_send_imginfo.addRow();
  4546. fladr = system.convertRealPath("%MYDOCUMENT%") + "\KU20\\himed\\vitaltempimage";
  4547. fso = inff_fileSystemObject();
  4548. var vFileDown = new VirtualFile();
  4549. var bSucc = vFileDown.createDirectory(fladr, true);
  4550. Obj_Chart.Export.SaveToJPEGFile(fladr+"/tchart.jpeg", false, 0, 30, 1155, 300 );//obj_viewchart
  4551. var file = fladr + "/tchart.jpeg";
  4552. group1.img_tmp.image = file; // 파일에서 읽은 이미지의 base64 encoding 값을 가져오기 위한 이미지 컨트롤
  4553. var bData = new Buffer(ExtObj.readFile(file));
  4554. ds_send_imginfo.setColumn(sImgDataRowCnt, "pid", sPid);
  4555. ds_send_imginfo.setColumn(sImgDataRowCnt, "orddd", sIndd);
  4556. ds_send_imginfo.setColumn(sImgDataRowCnt, "cretno", sCretNo);
  4557. ds_send_imginfo.setColumn(sImgDataRowCnt, "recdd", sImageRecDD);
  4558. ds_send_imginfo.setColumn(sImgDataRowCnt, "recflag", "A");
  4559. var vFile = new VirtualFile();
  4560. var bSucc = vFile.open(file, VirtualFile.openRead | VirtualFile.openBinary) ;
  4561. //데이터 BLOB으로 만들기
  4562. var bData = new Buffer(vFile.read(vFile.getFileSize()));
  4563. ds_send_imginfo.setColumn(sImgDataRowCnt,"imgrslt",bData.data);
  4564. //ds_send_imginfo.setColumn(sImgDataRowCnt, "imgrslt", group1.img_tmp.image.getImage());
  4565. ds_send_imginfo.setColumn(sImgDataRowCnt, "imght", "1155");
  4566. ds_send_imginfo.setColumn(sImgDataRowCnt, "imgwidt", "300");
  4567. bData = "";
  4568. vFile.close();
  4569. }
  4570. function fSaveViewData(){
  4571. //**********************************************************************************************************************
  4572. // VIEWER 인증 구현 부분
  4573. //**********************************************************************************************************************
  4574. var today = new Date();
  4575. Sign.CERT_YEAR = today.getFullYear();
  4576. Sign.CERT_MONTH = today.getMonth() + 1;
  4577. Sign.CERT_DATE = today.getDate();Sign.certreload = false; // 전자서명 호출시 인증저장 버튼을 누늘때마다 인증서가 뜨도록 처리
  4578. Sign.certreload = false; // 전자서명 호출시 인증저장 버튼을 누늘때마다 인증서가 뜨도록 처리
  4579. if(Sign.signprocess() == true ){
  4580. var sSignDataRowCnt =ds_send_signdata.addRow();
  4581. dsf_makeValue(ds_send_signdata, "pid", "string", sPid, sSignDataRowCnt);
  4582. dsf_makeValue(ds_send_signdata, "orddd", "string", sIndd, sSignDataRowCnt);
  4583. dsf_makeValue(ds_send_signdata, "signno", "string", "" , sSignDataRowCnt);
  4584. dsf_makeValue(ds_send_signdata, "cretno", "string", sCretNo, sSignDataRowCnt);
  4585. dsf_makeValue(ds_send_signdata, "recdd", "string", sViewerRecDD, sSignDataRowCnt);
  4586. dsf_makeValue(ds_send_signdata, "rectm", "string", "000000", sSignDataRowCnt);
  4587. dsf_makeValue(ds_send_signdata, "recsaveflag", "string", "Y", sSignDataRowCnt);
  4588. dsf_makeValue(ds_send_signdata, "signflag", "string", "02", sSignDataRowCnt);
  4589. dsf_makeValue(ds_send_signdata, "signgenrflag", "string", sIOFlag, sSignDataRowCnt);
  4590. dsf_makeValue(ds_send_signdata, "formcd", "string", "0000002443", sSignDataRowCnt);
  4591. dsf_makeValue(ds_send_signdata, "orddeptcd", "string", ds_main_paminfo.getColumn(0,"orddeptcd"), sSignDataRowCnt);
  4592. dsf_makeValue(ds_send_signdata, "orddrid", "string", ds_main_paminfo.getColumn(0,"medispclid"), sSignDataRowCnt);
  4593. //▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
  4594. //▶ 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
  4595. dsf_makeValue(ds_send_signdata, "signbfcnts", "string", Sign.signedInfos[1], sSignDataRowCnt);
  4596. //▶ 공인인증 처리후 데이터
  4597. //model.makeValue("/root/send/signdata/signaftcnts", Sign.signedInfos[2]);
  4598. }else{
  4599. return false;
  4600. }
  4601. //model.removenodeSet("/root/viewtemp/viewinfo");
  4602. //dsf_deleteDs("ds_temp_viewinfo");
  4603. ds_temp_viewinfo.clearData();
  4604. ds_temp_viewinfo_viewlist.clearData();
  4605. //return;
  4606. //**********************************************************************************************************************
  4607. }
  4608. //2016-08-09 추민수
  4609. function fSettingrecrsltValue()
  4610. {
  4611. for(var icms = 0 ; icms < ds_data_clincobsreclist.rowcount ; icms++)
  4612. {
  4613. if(ds_data_clincobsreclist.getColumn(icms, "reccharflag") == "A" && !utlf_isNull(ds_data_clincobsreclist.getColumn(icms, "attrcd")))
  4614. {
  4615. ds_data_attrlist1.filter("supcd == '" + ds_data_clincobsreclist.getColumn(icms, "attrcd") + "'");
  4616. for(var icmsCol = 0; icmsCol < ds_data_clincobsreclist.colcount; icmsCol++)
  4617. {
  4618. var strColName = ds_data_clincobsreclist.getColID(icmsCol);
  4619. if(strColName.substr(0, 7) == "recrslt")
  4620. {
  4621. var strNmae = ds_data_clincobsreclist.getColumn(icms, strColName);
  4622. if(!utlf_isNull(strNmae))
  4623. {
  4624. var strCode = ds_data_attrlist1.lookup("attrnm", strNmae, "attrcd");
  4625. if(utlf_isNull(strCode))
  4626. {
  4627. strCode = ds_data_attrlist1.lookup("attrgrde", strNmae, "attrcd");
  4628. ds_data_clincobsreclist.setColumn(icms, icmsCol, strCode);
  4629. if(utlf_isNull(strCode))
  4630. {
  4631. ds_data_clincobsreclist.setColumn(icms, icmsCol, strNmae);
  4632. }
  4633. }
  4634. else
  4635. {
  4636. ds_data_clincobsreclist.setColumn(icms, icmsCol, strCode);
  4637. }
  4638. }
  4639. }
  4640. }
  4641. ds_data_attrlist1.filter("");
  4642. }
  4643. }
  4644. }
  4645. /**
  4646. * @group :
  4647. * @ver : 2009.12.15
  4648. * @by : 양천덕
  4649. * @---------------------------------------------------
  4650. * @type : function
  4651. * @access : public
  4652. * @desc : FlowSheet 기록 Setting
  4653. * @param :
  4654. * @return :
  4655. * @---------------------------------------------------
  4656. */
  4657. function fSettingClincObsRec(pRecFlag){
  4658. fSettingrecrsltValue();
  4659. var sRecDT = ""; // 기록일시
  4660. var sRecFromDT = ""; // 기록시작일시
  4661. var sRecToDT = ""; // 기록종료일시
  4662. var sAttrCD = ""; // 속성코드
  4663. //var sUserID = getUserId();
  4664. var sRecRslt = "";
  4665. var sAnptTmSpec = "";
  4666. var sSupCD = "";
  4667. var sRecFlag = ""; // 기록구분
  4668. var sTotalSum = new Array();
  4669. var sSubTotalSum = new Array();
  4670. var sRunTotalSum = new Array();
  4671. var sRunTotalValue = "";
  4672. var sTotalSumRow = -1;
  4673. var sSubTotalSumRow = -1;
  4674. var sRunTotalSumRow = -1;
  4675. var sAttrCD = "";
  4676. var sAttrValue = "";
  4677. var sChkTotal = "N";
  4678. var sChkSubTotal = "N";
  4679. var sChkRunTotal = "N";
  4680. var sTotalNm = "";
  4681. var sStartOutput = "N";
  4682. var sRecAddRow = "";
  4683. var sReChartFlag = "";
  4684. var sFixRow = 0;
  4685. var sItemColRef = "";
  4686. var sChkFluidRow = 0;
  4687. var sChkDrugRow = 0;
  4688. var sChkTotalIdx = "";
  4689. var sChkSubTotalIdx = "";
  4690. var sChkRunTotalIdx = "";
  4691. var sRecFluidUnit = "";
  4692. var linetyper = "";
  4693. var linetyper_1 = "";
  4694. var linetypetotal = "";
  4695. var bolFromDate = false;
  4696. var sFluidRecDTRed;
  4697. var nVal1:decimal = 0;
  4698. var nVal2:decimal = 0;
  4699. sNowDate = utlf_getCurrentDate() + utlf_getCurrentTime();
  4700. this.enableredraw = false;
  4701. ds_grd_24hoursclincobsreclist.enableevent = false;
  4702. group4.grd_24hoursclincobsreclist.enableredraw = false;
  4703. group4.grd_24hoursclincobsreclist.enableevent = false;
  4704. switch(pRecFlag){
  4705. case "24hours" :
  4706. // sCurDT = fCalcStartDate(sCurDT, eval(ds_cond.getColumn(0,"timeflag")));
  4707. //lf_gridstyleclear();
  4708. ds_grd_24hoursclincobsreclist.clearData();
  4709. group4.grd_24hoursclincobsreclist.style.background.color = "transparent";
  4710. sRecCnt = ds_data_clincobsreclist.rowcount;
  4711. sItemColRef = group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm");
  4712. sFixRow = -1;
  4713. sDutyTMColInfo1 = 0;
  4714. sDutyTMColInfo2 = 0;
  4715. sDutyTMColInfo3 = 0;
  4716. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumnInfo("linetypetotal0")))
  4717. {
  4718. ds_grd_24hoursclincobsreclist.addColumn("linetypet0", "string");
  4719. ds_grd_24hoursclincobsreclist.addColumn("linetyper0", "string");
  4720. ds_grd_24hoursclincobsreclist.addColumn("linetypeb0", "string");
  4721. ds_grd_24hoursclincobsreclist.addColumn("linetypel0", "string");
  4722. ds_grd_24hoursclincobsreclist.addColumn("linetypetotal0", "string");
  4723. }
  4724. group4.grd_24hoursclincobsreclist.setCellProperty("Body", 0, "line", "expr:linetypetotal0");
  4725. for(var iCol = 1; iCol <= 24; iCol++){
  4726. sTotalSum[iCol] = null;
  4727. sSubTotalSum[iCol] = null;
  4728. sRunTotalSum[iCol] = null;
  4729. //컬럼생성 combodatacol에 설정 주기 위한 컬럼....
  4730. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumnInfo("cboname" + iCol)))
  4731. {
  4732. ds_grd_24hoursclincobsreclist.addColumn("cboname" + iCol, "string");
  4733. }
  4734. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumnInfo("linetypetotal" + iCol)))
  4735. {
  4736. ds_grd_24hoursclincobsreclist.addColumn("linetypet" + iCol, "string");
  4737. ds_grd_24hoursclincobsreclist.addColumn("linetyper" + iCol, "string");
  4738. ds_grd_24hoursclincobsreclist.addColumn("linetypeb" + iCol, "string");
  4739. ds_grd_24hoursclincobsreclist.addColumn("linetypel" + iCol, "string");
  4740. ds_grd_24hoursclincobsreclist.addColumn("linetypetotal" + iCol, "string");
  4741. }
  4742. if(iCol > 0)
  4743. {
  4744. //var displayexpr = "text";//"expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  4745. var displayexpr = "expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  4746. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"displaytype", displayexpr);
  4747. var editexpr = "expr:readonly"+iCol+" == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':edittype" + iCol + " == 'text'?'text': edittype" + iCol + " == 'none'?'none':'combo'";
  4748. //var editexpr = "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(edittype" + iCol + ")?edittype" + iCol + ":'combo'";
  4749. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", editexpr);
  4750. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(getColumn(currow,'edittype" + iCol + "')?getColumn(currow,'edittype" + iCol + "':'combo'");
  4751. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sDayStndTm ) sDutyTMColInfo1 = iCol;
  4752. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sEvenStndTm ) sDutyTMColInfo2 = iCol;
  4753. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sNightStndTm ) sDutyTMColInfo3 = iCol;
  4754. var colcount = group4.grd_24hoursclincobsreclist.getCellCount("Head");
  4755. colcount = colcount - 26;
  4756. if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sDayStndTm.substr(0, 2) + "시")
  4757. {
  4758. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  4759. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  4760. }
  4761. if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sEvenStndTm.substr(0, 2) + "시")
  4762. {
  4763. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  4764. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  4765. }
  4766. if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sNightStndTm.substr(0, 2) + "시")
  4767. {
  4768. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  4769. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  4770. }
  4771. if(sDutyTMColInfo1 == iCol || sDutyTMColInfo2 == iCol || sDutyTMColInfo3 == iCol)
  4772. {
  4773. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca ");
  4774. group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount + 1,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  4775. }
  4776. }
  4777. group4.grd_24hoursclincobsreclist.setCellProperty("Body", iCol, "align", "center top");
  4778. group4.grd_24hoursclincobsreclist.setCellProperty("Body", iCol, "combodatacol", "expr:cboname" + iCol + "");
  4779. group4.grd_24hoursclincobsreclist.setCellProperty("Body", iCol, "line", "expr:linetypetotal" + iCol + "");
  4780. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodataset","expr:(recflag != 'T' && reccharflag == 'A' && !utlf_isNull(attrcd))?'fds_' + attrcd:''");
  4781. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combocodecol","expr:(recflag != 'T' && reccharflag == 'A' && !utlf_isNull(attrcd))? 'attrcd' : ''");
  4782. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combotype","expr:(recflag != 'T' && reccharflag == 'A' && !utlf_isNull(attrcd))? 'filter' : ''");
  4783. }
  4784. for(var iRow=0; iRow < sRecCnt; iRow++){
  4785. //그리드 합계 Row 설정 처리
  4786. var addRow = ds_grd_24hoursclincobsreclist.addRow();
  4787. //ds_grd_design.addRow();
  4788. if( utlf_isNull(sTotalNm)) sTotalNm = lf_getDsValue(ds_data_clincobsreclist,iRow,"totalnm" );
  4789. sTotalYn = lf_getDsValue(ds_data_clincobsreclist,iRow,"totalyn" );
  4790. sSubTotalYn = lf_getDsValue(ds_data_clincobsreclist,iRow,"subtotalyn" );
  4791. sSubTotalNm = lf_getDsValue(ds_data_clincobsreclist,iRow,"subtotalnm" );
  4792. sRunTotalYn = lf_getDsValue(ds_data_clincobsreclist,iRow,"runtotalyn" );
  4793. sRunTotalNm = lf_getDsValue(ds_data_clincobsreclist,iRow,"runtotalnm" );
  4794. sRecFlag = lf_getDsValue(ds_data_clincobsreclist,iRow,"recflag" );
  4795. sLnkBizCd = lf_getDsValue(ds_data_clincobsreclist,iRow,"lnkbizcd" );
  4796. sSupCD = lf_getDsValue(ds_data_clincobsreclist,iRow,"supcd" );
  4797. sStyle = lf_getDsValue(ds_data_clincobsreclist,iRow,"style" );
  4798. sItemNm = lf_getDsValue(ds_data_clincobsreclist,iRow,"itemnm" );
  4799. sCareRecSeqNo = lf_getDsValue(ds_data_clincobsreclist,iRow,"carerecseqno");
  4800. sRecFluidUnit = lf_getDsValue(ds_data_clincobsreclist,iRow,"recfluidunit");
  4801. //현재 행 다음의 기록구분을 조회
  4802. if(iRow == sRecCnt){
  4803. sNextRecFlag = "Last";
  4804. sNextSetnm = "";
  4805. sNextSupCD = "";
  4806. sNextSubTotalYn = "N";
  4807. sNextSubTotalNm = "";
  4808. sNextRunTotalYn = "N";
  4809. sNextRunTotalNm = "";
  4810. }else{
  4811. sNextRecFlag = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"recflag" );
  4812. sNextSetnm = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"totalnm" );
  4813. sNextSupCD = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"supcd" );
  4814. sNextSubTotalYn = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"subtotalyn" );
  4815. sNextSubTotalNm = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"subtotalnm" );
  4816. sNextRunTotalYn = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"runtotalyn" );
  4817. sNextRunTotalNm = lf_getDsValue(ds_data_clincobsreclist,iRow+1,"runtotalnm" );
  4818. }
  4819. //전체합계 시작 여부
  4820. if(sChkTotal == "N" && sTotalYn == "Y"){
  4821. sChkTotal = sTotalYn;
  4822. }
  4823. //부분합계 시작 여부
  4824. if(sChkSubTotal == "N" && sSubTotalYn == "Y"){
  4825. sChkSubTotal = sSubTotalYn;
  4826. }
  4827. //누적합계 시작 여부
  4828. if(sChkRunTotal == "N" && sRunTotalYn == "Y"){
  4829. sChkRunTotal = sRunTotalYn;
  4830. }
  4831. //약,주사 행 추가 부분
  4832. if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle != "01" && sChkDrugRow == 0 ){
  4833. sChkDrugRow = addRow;
  4834. fMakeGridNode("N","N",pRecFlag, addRow, "약/주사", "B", 2, sLnkBizCd, "-", "", "Y", "");
  4835. addRow = ds_grd_24hoursclincobsreclist.addRow();
  4836. //ds_grd_design.addRow();
  4837. }
  4838. //Fluid 행 추가 부분
  4839. if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle == "01" && sChkFluidRow == 0 ){
  4840. sChkFluidRow = addRow;
  4841. fMakeGridNode("N","N",pRecFlag, addRow, "지속적약물", "B", 2, sLnkBizCd, "-", "", "Y", "");
  4842. addRow = ds_grd_24hoursclincobsreclist.addRow();
  4843. //ds_grd_design.addRow();
  4844. }
  4845. ds_grd_24hoursclincobsreclist.copyRow(addRow,ds_data_clincobsreclist,iRow);
  4846. //model.copyNode(xHoursClincObsRecList+"["+addRow+"]", xClincObsRecListPath+"["+iRow+"]");
  4847. ds_grd_24hoursclincobsreclist.setColumn(iRow, "itemnm", ds_grd_24hoursclincobsreclist.getColumn(iRow, "itemnm").trim())
  4848. //Graph 행 추가 부분
  4849. //var ChkFluidList = model.getValue(xFluidPath+"[carerecseqno ='" +sCareRecSeqNo+ "']/carerecseqno" );
  4850. //if( (sLnkBizCd =="02" || sLnkBizCd =="12") && sStyle == "01" && ChkFluidList != ""){
  4851. if( sStyle == "01" ){
  4852. if( sLnkBizCd =="02" || sLnkBizCd =="12" ){
  4853. var sRealFluidRow = addRow;
  4854. var sGraphRow = ds_grd_24hoursclincobsreclist.addRow();
  4855. //ds_grd_design.addRow();
  4856. var sGraphNm = "Graph";
  4857. if(sRecFluidUnit == "undefined")
  4858. {
  4859. sRecFluidUnit = "";
  4860. }
  4861. if( !utlf_isNull(sRecFluidUnit)) sGraphNm = sRecFluidUnit;
  4862. fMakeGridNode("N","N",pRecFlag, sGraphRow, sGraphNm, "B", 4, sLnkBizCd, sStyle, "", "Y", sCareRecSeqNo);
  4863. fSettingFluidInfo("F", "Init", sRealFluidRow, sGraphRow, sCareRecSeqNo);
  4864. }else{
  4865. var sRealFluidRow = addRow;
  4866. fSettingFluidInfo("I", "Init", sRealFluidRow, sRealFluidRow, sCareRecSeqNo);
  4867. }
  4868. }
  4869. //부분합계 행 추가 부분
  4870. if( sSubTotaluseYn == "Y" && sChkSubTotal == "Y" ){
  4871. if( !utlf_isNull(sChkSubTotalIdx) && sChkSubTotalIdx != "undefined") sChkSubTotalIdx += ",";
  4872. sChkSubTotalIdx += "/"+sCareRecSeqNo+"/";
  4873. if(( sRecFlag == "A" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ||
  4874. ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ||
  4875. ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sSubTotalNm != sNextSubTotalNm || sRecFlag != sNextRecFlag )) ){
  4876. var addSubTotalRow = ds_grd_24hoursclincobsreclist.addRow();
  4877. //ds_grd_design.addRow();
  4878. fMakeGridNode("Y","N",pRecFlag, addSubTotalRow, sSubTotalNm, "S", 2, "", "-", "#FFCC99", "Y", "", sChkSubTotalIdx);
  4879. sChkSubTotalIdx = "";
  4880. sChkSubTotal = "N";
  4881. sSubTotalNm = "";
  4882. }
  4883. }
  4884. //누적합계 행 추가 부분
  4885. if( sRunTotaluseYn == "Y" && sChkRunTotal == "Y" ){
  4886. if( !utlf_isNull(sChkRunTotalIdx) && sChkSubTotalIdx != "undefined") sChkRunTotalIdx += ",";
  4887. sChkRunTotalIdx += "/"+sCareRecSeqNo+"/";
  4888. if(( sRecFlag == "A" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ||
  4889. ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ||
  4890. ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sRunTotalNm != sNextRunTotalNm || sRecFlag != sNextRecFlag )) ){
  4891. var addRunTotalRow = ds_grd_24hoursclincobsreclist.addRow();
  4892. //ds_grd_design.addRow();
  4893. fMakeGridNode("Y","N",pRecFlag, addRunTotalRow, sRunTotalNm, "R", 2, "", "-", "#FFFFCC", "Y", "", sChkRunTotalIdx);
  4894. sChkRunTotalIdx = "";
  4895. sChkRunTotal = "N";
  4896. sRunTotalNm = "";
  4897. }
  4898. }
  4899. //분류별 전체 합계 행 추가 부분(Total Intake, Total Output, GCS총점)
  4900. if( sTotaluseYn == "Y" && sChkTotal == "Y" ){
  4901. if( !utlf_isNull(sChkTotalIdx) && sChkSubTotalIdx != "undefined") sChkTotalIdx += ",";
  4902. sChkTotalIdx += "/"+sCareRecSeqNo+"/";
  4903. if( ( sRecFlag == "A" && ( sSupCD != sNextSupCD || sTotalNm != sNextSetnm || sRecFlag != sNextRecFlag ) ) ||
  4904. ( sRecFlag == "B" && ( sSupCD != sNextSupCD || sRecFlag != sNextRecFlag ) ) ||
  4905. ( sRecFlag == "C" && ( sSupCD != sNextSupCD || sRecFlag != sNextRecFlag ) ) ) {
  4906. var addIntakeRow = ds_grd_24hoursclincobsreclist.addRow();
  4907. //ds_grd_design.addRow();
  4908. sSumRowColor = "#dbb7ff"; //연보라색
  4909. if( sRecFlag == "B" || sRecFlag == "C" ) sSumRowColor = "#FF7CFD"; //진분홍색
  4910. fMakeGridNode("Y","N",pRecFlag, addIntakeRow, sTotalNm, "T", 2, "", "-", sSumRowColor, "Y", "", sChkTotalIdx);
  4911. sChkTotalIdx = "";
  4912. sChkTotal = "N";
  4913. sTotalNm = "";
  4914. }
  4915. }
  4916. // Intake/OutTake 변경시 초기화
  4917. if(sRecFlag != sNextRecFlag){
  4918. //sChkTotal = "N";
  4919. sStartOutput = "N";
  4920. }
  4921. }
  4922. group4.grd_24hoursclincobsreclist.style.font.size = sDataFontSize; //Grid 글씨 크기
  4923. sCurrentTMColInfo = 0;
  4924. sDutyTMColInfo1 = 0;
  4925. sDutyTMColInfo2 = 0;
  4926. sDutyTMColInfo3 = 0;
  4927. //그리드 스타일 설정
  4928. var EXPR = "EXPR(";
  4929. var iColGubun = false;
  4930. var rowCount = ds_grd_24hoursclincobsreclist.rowcount;
  4931. nowTimeCol = 0;
  4932. for(var iRow = 0 ; iRow < rowCount; iRow++)
  4933. {
  4934. iColGubun = false;
  4935. sCareRecSeqno = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"carerecseqno") ;
  4936. sRecFromDT = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"recfromdt") ;
  4937. sRecToDT = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"rectodt") ;
  4938. sDepth = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"depth") ;
  4939. sAttrCD = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"attrcd") ;
  4940. sReChartFlag = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"reccharflag") ;
  4941. sLnkBizCd = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"lnkbizcd") ;
  4942. sTotalYn = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"totalyn") ;
  4943. sSubTotalYn = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"subtotalyn") ;
  4944. sRunTotalYn = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"runtotalyn") ;
  4945. sRecFlag = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"recflag") ;
  4946. sFontColor = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"color") ;
  4947. sStyleValue = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"style") ;
  4948. sFluidStatInfo = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"fluidstat") ;
  4949. sReadOnlyYn = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow,"readonlyyn") ;
  4950. //현재 행 다음의 기록구분을 조회
  4951. if(iRow == ds_grd_24hoursclincobsreclist.rowcount -1){
  4952. sNextRecFlag = "Last";
  4953. }else{
  4954. sNextRecFlag = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow + 1 ,"recflag");
  4955. }
  4956. //expr처리
  4957. //if(sReadOnlyYn == "Y" || (sStyleValue == "01" && (sLnkBizCd == "02" || sLnkBizCd == "12"))) grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols, iRow, grd_24hoursclincobsreclist.cols-1) = true;
  4958. //컬럼별 설정 부분
  4959. // 분류의 경우
  4960. if(eval(sDepth) != 1)
  4961. {
  4962. // Total Intake, Total Output 색 및 글꼴 변경
  4963. if( sRecFlag == "T" || sRecFlag == "R" || sRecFlag == "S" )
  4964. {
  4965. if(sRecFlag == "T")
  4966. {
  4967. sTotalSumRow = iRow;
  4968. }
  4969. if(sRecFlag == "S") sSubTotalSumRow = iRow;
  4970. if(sRecFlag == "R") sRunTotalSumRow = iRow;
  4971. }
  4972. for(var iCol = 1; iCol <= 24; iCol++)
  4973. {
  4974. // //컬럼생성 combodatacol에 설정 주기 위한 컬럼....
  4975. // if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumnInfo("cboname" + iCol)))
  4976. // {
  4977. // ds_grd_24hoursclincobsreclist.addColumn("cboname" + iCol, "string");
  4978. // ds_grd_24hoursclincobsreclist.addColumn("linetypet" + iCol, "string");
  4979. // ds_grd_24hoursclincobsreclist.addColumn("linetyper" + iCol, "string");
  4980. // ds_grd_24hoursclincobsreclist.addColumn("linetypeb" + iCol, "string");
  4981. // ds_grd_24hoursclincobsreclist.addColumn("linetypel" + iCol, "string");
  4982. // ds_grd_24hoursclincobsreclist.addColumn("linetypetotal" + iCol, "string");
  4983. // }
  4984. //합친 코드........
  4985. if(iCol > 0)
  4986. {
  4987. // //var displayexpr = "text";//"expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  4988. // var displayexpr = "expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  4989. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"displaytype", displayexpr);
  4990. //
  4991. // var editexpr = "expr:readonly"+iCol+" == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':edittype" + iCol + " == 'text'?'text': edittype" + iCol + " == 'none'?'none':'combo'";
  4992. // //var editexpr = "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(edittype" + iCol + ")?edittype" + iCol + ":'combo'";
  4993. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", editexpr);
  4994. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(getColumn(currow,'edittype" + iCol + "')?getColumn(currow,'edittype" + iCol + "':'combo'");
  4995. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sDayStndTm ) sDutyTMColInfo1 = iCol;
  4996. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sEvenStndTm ) sDutyTMColInfo2 = iCol;
  4997. if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sNightStndTm ) sDutyTMColInfo3 = iCol;
  4998. // var colcount = group4.grd_24hoursclincobsreclist.getCellCount("Head");
  4999. // colcount = colcount - 26;
  5000. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sDayStndTm.substr(0, 2) + "시")
  5001. // {
  5002. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  5003. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  5004. // }
  5005. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sEvenStndTm.substr(0, 2) + "시")
  5006. // {
  5007. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  5008. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  5009. // }
  5010. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sNightStndTm.substr(0, 2) + "시")
  5011. // {
  5012. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  5013. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  5014. // }
  5015. if(sDutyTMColInfo1 == iCol || sDutyTMColInfo2 == iCol || sDutyTMColInfo3 == iCol)
  5016. {
  5017. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol-1,"line","0 none, 2 solid red, 1 solid #B0B0B0, 1 solid #B0B0B0");
  5018. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypet" + (iCol-1), "0 none");
  5019. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetyper" + (iCol-1), "2 solid red");
  5020. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypeb" + (iCol-1), "1 solid #B0B0B0");
  5021. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypel" + (iCol-1), "1 solid #B0B0B0");
  5022. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow, "linetypetotal" + (iCol-1))))
  5023. {
  5024. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + (iCol-1), "0 none, 2 solid red, 1 solid #B0B0B0, 1 solid #B0B0B0");
  5025. }
  5026. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca ");
  5027. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount + 1,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  5028. } else {
  5029. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol-1,"line","expr:depth == 1 ? '0 none, 0 none, 1 solid #B0B0B0, 1 solid #B0B0B0' : ''");
  5030. }
  5031. }
  5032. //현재시간 색 표시
  5033. if(iCol > 0)
  5034. {
  5035. if(sCurrentTMColInfo == 0)
  5036. {
  5037. if(utlf_getDateTime(sCurDT,"기본").substr(0,12) <= (sHeader[1][iCol]+ sHeader[3][iCol]+sHeader[4][iCol])){
  5038. if(iCol == 1){
  5039. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background", "#FFEFFE");
  5040. sCurrentTMColInfo = iCol;
  5041. nowTimeCol = iCol;
  5042. bolFromDate = true;
  5043. }else{
  5044. if(utlf_getDateTime(sCurDT,"기본").substr(0,12) > (sHeader[1][iCol-1]+ sHeader[3][iCol-1]+sHeader[4][iCol-1])){
  5045. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background", "#FFEFFE"); //연분홍색
  5046. sCurrentTMColInfo = iCol;
  5047. nowTimeCol = iCol;
  5048. bolFromDate = true;
  5049. }
  5050. }
  5051. }
  5052. }
  5053. }
  5054. //합친 코드........
  5055. //group4.grd_24hoursclincobsreclist.setCellProperty("Body", iCol, "align", "center top")
  5056. sRecRslt = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recrslt"+iCol);
  5057. if(!utlf_isNull(ds_data_attrlist1.lookup("attrcd", sRecRslt, "attrgrde")))
  5058. {
  5059. sRecRslt = ds_data_attrlist1.lookup("attrcd", sRecRslt, "attrgrde");
  5060. }
  5061. sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
  5062. sFluidRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
  5063. //Total Intake, Total Output 제외 대상 색 및 글꼴 변경
  5064. if(sRecFlag != "T")
  5065. {
  5066. //Grid Graph 설정
  5067. if(sStyleValue == "01" && utlf_isSearchString(sFluidStatInfo, sFluidRecDT) == true)
  5068. {
  5069. linetyper = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn((iRow - 1), "linetyper" + (iCol)));
  5070. if(linetyper == "2 solid red")
  5071. {
  5072. linetypetotal = "0 none, 2 solid red, 2 solid blue, 1 solid #B0B0B0";
  5073. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypeb" + (iCol), "2 solid blue");
  5074. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + (iCol), linetypetotal);
  5075. }
  5076. else
  5077. {
  5078. linetypetotal = "0 none, 1 solid #B0B0B0, 2 solid blue, 1 solid #B0B0B0";
  5079. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypeb" + (iCol), "2 solid blue");
  5080. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + (iCol), linetypetotal);
  5081. }
  5082. if((iCol - 1) > 0)
  5083. {
  5084. sFluidRecDTRed = "";
  5085. sFluidRecDTRed = sHeader[1][iCol - 1]+sHeader[3][iCol - 1]+sHeader[4][iCol - 1]+"00";
  5086. linetyper_1 = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow, "linetyper" + (iCol - 1)));
  5087. linetypetotal = "";
  5088. if(linetyper_1 == "2 solid red")
  5089. {
  5090. linetypetotal = "0 none, 2 solid red, 2 solid blue, 1 solid #B0B0B0";
  5091. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + (iCol - 1), linetypetotal);
  5092. if(utlf_isSearchString(sFluidStatInfo, sFluidRecDTRed) != true)
  5093. {
  5094. linetypetotal = "0 none, 2 solid red, 1 solid #B0B0B0, 1 solid #B0B0B0";
  5095. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + (iCol - 1), linetypetotal);
  5096. }
  5097. }
  5098. }
  5099. }
  5100. // 기록 가능 일시가 아닌 경우(20090512 김홍점 모든 아이템에 대해서 입실체크 이전의 blocking 해제 김영림 05-12 12:55)
  5101. if(sReadOnlyYn != "Y" && sRecDT > sRecToDT )
  5102. {
  5103. ds_grd_24hoursclincobsreclist.setColumn(iRow,"readonly" + iCol,"Y");
  5104. ds_grd_24hoursclincobsreclist.setColumn(iRow,"backcolor"+iCol,"#ffeeee");
  5105. }
  5106. var ssflag = "";
  5107. if( sJobKindCD.substring(0, 2) == "03")
  5108. {
  5109. ssflag = "Y";
  5110. }
  5111. else
  5112. {
  5113. ssflag = "N";
  5114. }
  5115. if(ssflag=="Y")
  5116. {
  5117. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"text");
  5118. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"none");
  5119. }
  5120. // 속성 매핑 Item에 속성 정보 세팅
  5121. if(sReChartFlag == "A" && !utlf_isNull(sAttrCD))
  5122. {
  5123. //if(!utlf_isNull(sRecRslt)){
  5124. var inDs = this.objects["fds_" + sAttrCD];
  5125. if(utlf_isNull(inDs))
  5126. {
  5127. ds_data_attrlist1.filter("supcd == '" +sAttrCD+"'");
  5128. dsf_createDs("fds_" + sAttrCD);
  5129. this.objects["fds_" + sAttrCD].copyData(ds_data_attrlist1,true);
  5130. this.objects["fds_" + sAttrCD].insertRow(0);
  5131. this.objects["fds_" + sAttrCD].setColumn(0, "attrnm", "");
  5132. ds_data_attrlist1.filter("");
  5133. }
  5134. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"combo");
  5135. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"combo");
  5136. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"expr","expr:lf_showExpr(attrcd, currow, self.col)");
  5137. lf_showExpr(sAttrCD, iRow, iCol);
  5138. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodataset","expr:reccharflag == 'A' && !utlf_isNull(attrcd)?'fds_' + attrcd:''");
  5139. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combocodecol","attrcd");
  5140. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combotype","filter");
  5141. var DaFdssAttrCD = objects["fds_" + sAttrCD];
  5142. if(DaFdssAttrCD.getColumn(0, "attrnm") == DaFdssAttrCD.getColumn(0, "attrgrde"))
  5143. {
  5144. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrnm");
  5145. }
  5146. else
  5147. {
  5148. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrgrde");
  5149. if(iColGubun == false)
  5150. {
  5151. //그리드 컴보 setCellProperty(EXPR)세팅 부분...... -> attrnm이 기본 attrgrde은 변수...
  5152. //EXPR += "currow == " + iRow + " ? 'attrgrde' : ";
  5153. iColGubun = true;
  5154. }
  5155. }
  5156. ds_grd_24hoursclincobsreclist.setColumn(iRow,"cboname" + iCol,"attrgrde");
  5157. //}
  5158. }
  5159. else
  5160. {
  5161. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"text");
  5162. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"text");
  5163. if(sLnkBizCd == "03"){
  5164. if(sDepth == 2){
  5165. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"none");
  5166. }
  5167. }
  5168. group4.grd_24hoursclincobsreclist.showEditor(true);
  5169. }
  5170. var sHistRecDT = utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno",sCareRecSeqno,"recdt")).split("^");
  5171. var sHistCertKey = utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno",sCareRecSeqno,"certkey")).split("^");
  5172. var sSettingRecDT = "";
  5173. var sSettingCertKey = "";
  5174. if(sHistRecDT.length > 0)
  5175. {
  5176. for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++)
  5177. {
  5178. if(sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00" == sHistRecDT[histrow])
  5179. {
  5180. sSettingCertKey = sHistCertKey[histrow];
  5181. }
  5182. }
  5183. if(utlf_isNull(sSettingCertKey) && ( sLnkBizCd == "11" || ( sLnkBizCd == "12" && sStyleValue != "01" ) || sLnkBizCd == "-" || sLnkBizCd == "99" )){ //11:경구확장, 12:수액확장
  5184. //grd_24hoursclincobsreclist.cellStyle("font-weight", iRow, iCol) = "bold";
  5185. ds_grd_24hoursclincobsreclist.setColumn(iRow,"fonttype"+iCol, "돋움, 9, bold");
  5186. if(!utlf_isNull(sRecRslt))
  5187. {
  5188. //임시저장 Cell Color
  5189. //grd_24hoursclincobsreclist.cellStyle("color",iRow,iCol) = "#0000ff"; //파란색
  5190. ds_grd_24hoursclincobsreclist.setColumn(iRow,"fontcolor"+iCol, "#0000ff");
  5191. }
  5192. else
  5193. {
  5194. //미저장 Cell Color
  5195. //grd_24hoursclincobsreclist.cellStyle("color",iRow,iCol) = "#ff9900"; //주황색
  5196. ds_grd_24hoursclincobsreclist.setColumn(iRow,"fontcolor"+iCol, "#ff9900");
  5197. }
  5198. }
  5199. }
  5200. }
  5201. //**************************** clear ********************************
  5202. //부분합계 계산 처리
  5203. if( sSubTotalYn == "Y" ){
  5204. sChkSubTotal = "Y";
  5205. if( sLnkBizCd == "12" && sStyleValue == "01" ){
  5206. var sFluidSumInfoLength = sFluidSumInfo.length;
  5207. for( var i = 0 ; i < sFluidSumInfoLength; i++ ){
  5208. if( sFluidSumInfo[i][0] == sCareRecSeqno ){
  5209. if(sFluidSumInfo[i][iCol] > 0 )
  5210. {
  5211. nVal1 = sSubTotalSum[iCol];
  5212. nVal2 = sFluidSumInfo[i][iCol];
  5213. sSubTotalSum[iCol] = nVal1 + nVal2;
  5214. }
  5215. }
  5216. }
  5217. }else{
  5218. if(!utlf_isNull(sRecRslt)){
  5219. if(sRecFlag == "A"){
  5220. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5221. sSubTotalSum[iCol] += eval(sRecRslt);
  5222. }else{
  5223. if( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")) && fIsNumber(sRecRslt) == true ){
  5224. sSubTotalSum[iCol] += eval(sRecRslt);
  5225. }else{
  5226. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5227. ? sRecRslt.split(":")
  5228. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5229. );
  5230. if(sAttrValue[0].getTrim().isNumber()){
  5231. sSubTotalSum[iCol] += eval(sAttrValue[0]);
  5232. }
  5233. }
  5234. }
  5235. }else if (sRecFlag == "B" || sRecFlag == "C"){
  5236. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5237. sSubTotalSum[iCol] += eval(sRecRslt);
  5238. }else{
  5239. if(fIsNumber(sRecRslt) == true){
  5240. sSubTotalSum[iCol] += eval(sRecRslt);
  5241. }else{
  5242. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5243. ? sRecRslt.split(":")
  5244. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5245. );
  5246. if(sAttrValue[0].getTrim().isNumber()){
  5247. sSubTotalSum[iCol] += eval(sAttrValue[0]);
  5248. }
  5249. }
  5250. }
  5251. }
  5252. }
  5253. }
  5254. }
  5255. //누적합계 계산 처리
  5256. if(sRunTotalYn == "Y"){
  5257. sChkRunTotal = "Y";
  5258. if( sLnkBizCd == "12" && sStyleValue == "01" ){
  5259. var sFluidSumInfoLength = sFluidSumInfo.length;
  5260. for( var i = 0 ; i < sFluidSumInfoLength; i++ ){
  5261. if( sFluidSumInfo[i][0] == sCareRecSeqno ){
  5262. if(sFluidSumInfo[i][iCol] > 0 )
  5263. {
  5264. nVal1 = sRunTotalSum[iCol];
  5265. nVal2 = sFluidSumInfo[i][iCol];
  5266. sRunTotalSum[iCol] = nVal1 + nVal2;
  5267. }
  5268. }
  5269. }
  5270. }else{
  5271. if(!utlf_isNull(sRecRslt)){
  5272. if(sRecFlag == "A"){
  5273. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5274. sRunTotalSum[iCol] += eval(sRecRslt);
  5275. }else{
  5276. if( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")) && fIsNumber(sRecRslt) == true ){
  5277. sRunTotalSum[iCol] += eval(sRecRslt);
  5278. }else{
  5279. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5280. ? sRecRslt.split(":")
  5281. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5282. );
  5283. if(sAttrValue[0].getTrim().isNumber()){
  5284. sRunTotalSum[iCol] += eval(sAttrValue[0]);
  5285. }
  5286. }
  5287. }
  5288. }else if (sRecFlag == "B" || sRecFlag == "C"){
  5289. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5290. sRunTotalSum[iCol] += eval(sRecRslt);
  5291. }else{
  5292. if(fIsNumber(sRecRslt) == true){
  5293. sRunTotalSum[iCol] += eval(sRecRslt);
  5294. }else{
  5295. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5296. ? sRecRslt.split(":")
  5297. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5298. );
  5299. if(sAttrValue[0].getTrim().isNumber()){
  5300. sRunTotalSum[iCol] += eval(sAttrValue[0]);
  5301. }
  5302. }
  5303. }
  5304. }
  5305. }
  5306. }
  5307. }
  5308. // Intake/output 합계 계산
  5309. if(sTotalYn == "Y"){
  5310. sChkTotal = "Y";
  5311. if( sLnkBizCd == "12" && sStyleValue == "01" ){
  5312. var sFluidSumInfoLength = sFluidSumInfo.length;
  5313. for( var i = 0 ; i < sFluidSumInfoLength; i++ ){
  5314. if( sFluidSumInfo[i][0] == sCareRecSeqno ){
  5315. if(sFluidSumInfo[i][iCol] > 0 )
  5316. {
  5317. nVal1 = sTotalSum[iCol];
  5318. nVal2 = sFluidSumInfo[i][iCol];
  5319. sTotalSum[iCol] = nVal1 + nVal2;
  5320. }
  5321. }
  5322. }
  5323. }else{
  5324. if(!utlf_isNull(sRecRslt)){
  5325. if(sRecFlag == "A"){
  5326. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5327. sTotalSum[iCol] += eval(sRecRslt);
  5328. }else{
  5329. if( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")) && fIsNumber(sRecRslt) == true ){
  5330. sTotalSum[iCol] += eval(sRecRslt);
  5331. }else{
  5332. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5333. ? sRecRslt.split(":")
  5334. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5335. );
  5336. if(sAttrValue[0].getTrim().isNumber()){
  5337. sTotalSum[iCol] += eval(sAttrValue[0]);
  5338. }
  5339. }
  5340. }
  5341. }else if (sRecFlag == "B" || sRecFlag == "C"){
  5342. if(utlf_isNull(sAttrCD) && fIsNumber(sRecRslt) == true){
  5343. sTotalSum[iCol] += eval(sRecRslt);
  5344. }else{
  5345. if(fIsNumber(sRecRslt) == true){
  5346. sTotalSum[iCol] += eval(sRecRslt);
  5347. }else{
  5348. sAttrValue =( utlf_isNull(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc"))
  5349. ? sRecRslt.split(":")
  5350. : utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sRecRslt,"attrdesc")).split(":")
  5351. );
  5352. if(sAttrValue[0].getTrim().isNumber()){
  5353. sTotalSum[iCol] += eval(sAttrValue[0]);
  5354. }
  5355. }
  5356. }
  5357. }
  5358. }
  5359. }
  5360. }
  5361. // 부분합계 계산목록 Setting
  5362. if( sRecFlag == "T" || sRecFlag == "R" || sRecFlag == "S" ){
  5363. if( ( sRecFlag == "S" || sRecFlag != sNextRecFlag ) && sChkSubTotal == "Y" && !utlf_isNull(sSubTotalSumRow) ){
  5364. if( !utlf_isNull(sSubTotalSum[iCol])){
  5365. ds_grd_24hoursclincobsreclist.setColumn(sSubTotalSumRow, lf_getBindCellName(group4.grd_24hoursclincobsreclist, iCol),sSubTotalSum[iCol]) ;
  5366. }
  5367. if( iCol == 24 ){
  5368. sChkSubTotal = "C";
  5369. }
  5370. }
  5371. }
  5372. // 누적합계 계산목록 Setting
  5373. if(sRecFlag == "R" ){
  5374. if( (sRecFlag == "S" || sRecFlag != sNextRecFlag ) && sChkRunTotal == "Y" && !utlf_isNull(sRunTotalSumRow)){
  5375. if( sDutyTMColInfo1+1 == iCol || sDutyTMColInfo2+1 == iCol || sDutyTMColInfo3+1 == iCol ) sRunTotalValue = "";
  5376. if( !utlf_isNull(sRunTotalSum[iCol])){
  5377. if( utlf_isNull(sRunTotalValue)){
  5378. sRunTotalValue = sRunTotalSum[iCol];
  5379. }else{
  5380. sRunTotalValue += sRunTotalSum[iCol];
  5381. }
  5382. ds_grd_24hoursclincobsreclist.setColumn(sRunTotalSumRow,lf_getBindCellName(group4.grd_24hoursclincobsreclist, iCol),sRunTotalValue );
  5383. }
  5384. if(iCol == 24){
  5385. sChkRunTotal = "C";
  5386. }
  5387. }
  5388. }
  5389. // 합계 계산목록 Intake/OutTake에 세팅
  5390. if( (sRecFlag == "T" || sRecFlag != sNextRecFlag ) && sChkTotal == "Y" && sTotalSumRow > 0){
  5391. if( !utlf_isNull(sTotalSum[iCol]) ){
  5392. ds_grd_24hoursclincobsreclist.setColumn(sTotalSumRow,lf_getBindCellName(group4.grd_24hoursclincobsreclist, iCol),sTotalSum[iCol]) ;
  5393. }
  5394. if(iCol == 24){
  5395. sChkTotal = "C";
  5396. }
  5397. }
  5398. }//for icol
  5399. for(var i = 1 ; i < 25 ; i ++){
  5400. //부분합계 관련 변수 초기화
  5401. if(sChkSubTotal == "C"){
  5402. sSubTotalSum[i] = null;
  5403. }
  5404. //누적합계 관련 변수 초기화
  5405. if(sChkRunTotal == "C"){
  5406. sRunTotalSum[i] = null;
  5407. }
  5408. //전체합계 관련 변수 초기화
  5409. if(sChkTotal == "C"){
  5410. sTotalSum[i] = null;
  5411. }
  5412. }
  5413. //부분합계 관련 변수 초기화2
  5414. if(sChkSubTotal == "C"){
  5415. sSubTotalSumRow = "";
  5416. sChkSubTotal = "N";
  5417. }
  5418. //누적합계 관련 변수 초기화2
  5419. if(sChkRunTotal == "C"){
  5420. sRunTotalValue = "";
  5421. sRunTotalSumRow = "";
  5422. sChkRunTotal = "N";
  5423. }
  5424. //전체합계 관련 변수 초기화2
  5425. if(sChkTotal == "C"){
  5426. sTotalSumRow = "";
  5427. sChkTotal = "N";
  5428. }
  5429. // //부분합계 관련 변수 초기화
  5430. // if(sChkSubTotal == "C"){
  5431. // for(var i = 1 ; i < 25 ; i ++){
  5432. // sSubTotalSum[i] = null;
  5433. // }
  5434. // sSubTotalSumRow = "";
  5435. // sChkSubTotal = "N";
  5436. // }
  5437. // //누적합계 관련 변수 초기화
  5438. // if(sChkRunTotal == "C"){
  5439. // for(var i = 1 ; i < 25 ; i ++){
  5440. // sRunTotalSum[i] = null;
  5441. // }
  5442. // sRunTotalValue = "";
  5443. // sRunTotalSumRow = "";
  5444. // sChkRunTotal = "N";
  5445. // }
  5446. // //전체합계 관련 변수 초기화
  5447. // if(sChkTotal == "C"){
  5448. // for(var i = 1 ; i < 25 ; i ++){
  5449. // sTotalSum[i] = null;
  5450. // }
  5451. // sTotalSumRow = "";
  5452. // sChkTotal = "N";
  5453. // }
  5454. }
  5455. else if(ds_grd_24hoursclincobsreclist.getColumn(iRow, "depth") == "1")
  5456. {
  5457. for(var iCol = 1; iCol <= 24; iCol++)
  5458. {
  5459. var linetypetotalCol = iCol-1;
  5460. if(!utlf_isNull(ds_grd_24hoursclincobsreclist.getColumnInfo("linetypetotal" + linetypetotalCol)))
  5461. {
  5462. ds_grd_24hoursclincobsreclist.setColumn(iRow, "linetypetotal" + linetypetotalCol, "1 solid #B0B0B0, 0 none, 1 solid #B0B0B0, 0 none");
  5463. }
  5464. }
  5465. }
  5466. }//for irow
  5467. if(bolFromDate == false)
  5468. {
  5469. bolToData = true;
  5470. }
  5471. EXPR += "'attrgrde')";
  5472. gstrEXPR = EXPR;
  5473. var EXPRTree = "EXPR(";
  5474. var EXPRTree2 = "EXPR(";
  5475. // for(var iCol = 1; iCol <= 24; iCol++)
  5476. // {
  5477. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol", EXPR);
  5478. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol", "expr:cboname" + iCol + "");
  5479. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"line", "expr:linetypetotal" + iCol + "");
  5480. // }
  5481. // if(ds_cond.getColumn(0, "recdd") >= utlf_getCurrentDate().substr(0, 8))//현재 시간으로 인한 주석처리
  5482. // {
  5483. var rowCount = ds_grd_24hoursclincobsreclist.rowcount;
  5484. if (nowTimeCol > 0)
  5485. {
  5486. for(var iRow = 0; iRow < rowCount; iRow++)
  5487. {
  5488. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow, "backcolor" + nowTimeCol)))
  5489. {
  5490. ds_grd_24hoursclincobsreclist.setColumn(iRow, "backcolor" + nowTimeCol, "#FFE1FE");
  5491. }
  5492. else
  5493. {
  5494. if(ds_grd_24hoursclincobsreclist.getColumn(iRow, "backcolor" + nowTimeCol) == "#ffffff")
  5495. {
  5496. ds_grd_24hoursclincobsreclist.setColumn(iRow, "backcolor" + nowTimeCol, "#FFE1FE");
  5497. }
  5498. }
  5499. }
  5500. grdheadCol = nowTimeCol;
  5501. // if(ds_cond.getColumn(0, "timeflag") != "60"){
  5502. //
  5503. // sysf_trace("nowTimeCol : " + nowTimeCol)
  5504. // }else{
  5505. // grdheadCol = 0;
  5506. // }
  5507. }
  5508. //}
  5509. ds_grd_24hoursclincobsreclist.rowposition = 0;
  5510. // 차트표시
  5511. fMakeChart(pRecFlag);
  5512. // if(sGraphUseYn == "Y")
  5513. // {
  5514. // ds_cond.setColumn(0, "vwctrl_24hours", "I");
  5515. // }
  5516. break;
  5517. }
  5518. ds_grd_24hoursclincobsreclist.enableevent = true;
  5519. group4.grd_24hoursclincobsreclist.enableevent = true;
  5520. group4.grd_24hoursclincobsreclist.enableredraw = true;
  5521. group4.grd_24hoursclincobsreclist.redraw();
  5522. this.enableredraw = true;
  5523. }
  5524. /********************************************************************************
  5525. * 설 명 : 시작일자 계산
  5526. * argument :
  5527. ********************************************************************************/
  5528. function fCalcStartDate(pDate, pTimeFlag){
  5529. var sStartDT = String(pDate).toDate("YYYYMMDDhhmmss");
  5530. var sTime = "";
  5531. var sRemainder = 0;
  5532. if(pTimeFlag != 1 ){
  5533. sRemainder = eval(String(pDate).substr(10,2))%pTimeFlag;
  5534. }
  5535. sStartDT.setMinutes(sStartDT.getMinutes()-sRemainder);
  5536. return sStartDT;
  5537. }
  5538. function fGetSettingPatientList_type2(pFlag){
  5539. //model.removenode("/root/send");
  5540. var sRefresh = "true";
  5541. if( !utlf_isNull(pFlag)){
  5542. sRefresh = pFlag
  5543. }
  5544. var oParam = {};
  5545. oParam.id = "TRMNR00919";
  5546. oParam.service = "carerecapp.ClincObsRec";
  5547. oParam.method = "reqGetsettinpatlist_type2";
  5548. oParam.inds = "refCond=ds_cond";
  5549. oParam.outds = "ds_data_settingpatientlist=settingpatientlist";
  5550. oParam.async = false;
  5551. //oParam.callback = "cf_TRMNR00919";
  5552. tranf_submit(oParam);
  5553. }
  5554. function fSettingPamInfo(){
  5555. //병동코드 조회
  5556. fGetCareComWardList("false");
  5557. //------------(20110209) 경북대
  5558. //내환자 조회
  5559. //fGetSettingPatientList("false");
  5560. fGetSettingPatientList_type2("false");
  5561. //------------(20110209) 경북대
  5562. //진료과 정보 조회
  5563. lf_mmbfGetDeptCodeComboList(ds_init_cmb_deptlist , "D"); //부서코드 콤보
  5564. //응급의료센터 부서코드 추출_ 경북대 (2011.02.24 Ahn)
  5565. dsf_createDsRow("ds_send"
  5566. , [{col: "cdgrupid", val: "'002'"}
  5567. , {col: "srchdd", val: utlf_getCurrentDate()}
  5568. ]);
  5569. var oParam = {};
  5570. oParam.id = "TRMNW00001";
  5571. oParam.service = "wardcareapp.WardCareMngt";
  5572. oParam.method = "reqGetNursHardCdInfo";
  5573. oParam.inds = "req=ds_send";
  5574. oParam.outds = "ds_codelist=codelist";
  5575. oParam.async = false;
  5576. oParam.callback = "cf_TRMNW00001";
  5577. tranf_submit(oParam);
  5578. }
  5579. function cf_TRMNW00001(sSvcId, nErrorCode, sErrorMsg) {
  5580. if(nErrorCode < 0) return;
  5581. eERDEPTCD = ds_codelist.lookup("cdgrupid","002","cdid");
  5582. }
  5583. function fInitialize(pFlag){
  5584. fSettingPamInfo(); // 함수 내 응급실 부서코드 조회 추가 (2011.03.02 Ahn)
  5585. /* 중환자실 부서 조회 ( 2011.03.25 Ahn)
  5586. * 내환자 저장 시 다음환자 넘어가지 않는 부서 추가 ( 2011.04.18)
  5587. * 간호일지, 임상관찰기록 화면 공통코드 신규 생성 ('T30')
  5588. */
  5589. for(var i=0;i<= 24; i++)
  5590. {
  5591. ds_grd_24hoursclincobsreclist.addColumn("coltype" + i,"string");
  5592. ds_grd_24hoursclincobsreclist.addColumn("edittype" + i,"string");
  5593. ds_grd_24hoursclincobsreclist.addColumn("readonly" + i,"string");
  5594. ds_grd_24hoursclincobsreclist.addColumn("linetype" + i,"string");
  5595. ds_grd_24hoursclincobsreclist.addColumn("line" + i,"string");
  5596. }
  5597. dsf_createDsRow("ds_send",
  5598. [{col:"wardcd", val:ds_cond.getColumn(0,"wardcd")}
  5599. ,{col:"cdgpid", val:"T30"}
  5600. ]);
  5601. dsf_createDs("ds_icucdgruplist");
  5602. var oParam = {};
  5603. oParam.id = "TRMNW04001";
  5604. oParam.service = "carerecapp.AsesRec";
  5605. oParam.method = "reqGetICUWardList";
  5606. oParam.inds = "refCond=ds_send";
  5607. oParam.outds = "ds_icucdgruplist=icucdgruplist";
  5608. oParam.async = false;
  5609. oParam.callback = "cf_default";
  5610. tranf_submit(oParam);
  5611. if(frmf_checkOpener()){
  5612. sSpParamInfo = opener.frmf_getParameter("SMMNR00900_SpParam");
  5613. if(utlf_isNull(sSpParamInfo)){
  5614. sParamInfo = opener.frmf_getParameter("SMMNR00900_Param");
  5615. opener.frmf_clearParameter("SMMNR00900_Param");
  5616. frmf_setParameter("SMMNR00900_Param","");
  5617. }else{
  5618. sParamInfo = sSpParamInfo;
  5619. sDutplcecd = fGetArrayDataTPR(sSpParamInfo,1,5);
  5620. }
  5621. }
  5622. sSpParamInfo = opener.frmf_getParameter("SMMNR00900_Param");
  5623. sGbn = fGetArrayDataTPR(sParamInfo,1,4); // 구분
  5624. if (sGbn == "dr") {
  5625. } else {
  5626. sParamInfo = "";
  5627. }
  5628. //parameter 정보 여부에 따른 처리
  5629. if(utlf_isNull(sParamInfo)){
  5630. //환자정보 조회
  5631. sPamInfo = sysf_getGlobalVariable("paminfo");
  5632. //dsf_setCSVToDs("ds_paminfo",sPamInfo);
  5633. dsf_setCSVToDs("ds_main_paminfo",sPamInfo);
  5634. if( utlf_isNull(ds_main_paminfo.getColumnInfo("sectioncd")) ){
  5635. ds_main_paminfo.addColumn("sectioncd", "string");
  5636. }
  5637. //상단정보 존재 여부 체크
  5638. if(utlf_isNull(sPamInfo)){
  5639. //내환자 등록 내역이 있으면 내환자 첫번째 환자 세팅
  5640. if( ds_data_settingpatientlist.rowcount > 0){
  5641. fSetParam("SettingPat", 0);
  5642. return;
  5643. }else{
  5644. ds_cond.setColumn(0,"recdd",utlf_getCurrentDate());
  5645. ds_cond.setColumn(0,"formerrecdd", getDateCalc(ds_cond.getColumn(0,"recdd"),1));
  5646. fChkTgtPatInfo("disable");
  5647. fChangUserTypeSrch(sUserFlag);
  5648. return;
  5649. }
  5650. }else{
  5651. fChkTgtPatInfo("able");
  5652. fSettingViewCtrl();
  5653. }
  5654. fSettingPatInfo();
  5655. }else{
  5656. sPid = fGetArrayDataTPR(sParamInfo,1,0); // 등록번호
  5657. sIndd = fGetArrayDataTPR(sParamInfo,1,1); // 입원일자
  5658. sCretNo = fGetArrayDataTPR(sParamInfo,1,2); // 생성번호
  5659. sInstcd = fGetArrayDataTPR(sParamInfo,1,3); // 기관코드
  5660. //sJobKindCD = fGetArrayDataTPR(sParamInfo,1,4); // 직급코드
  5661. //sJobKindCD = getUserInfo("jobkindcd");
  5662. dsf_createDsRow("ds_send",
  5663. [{col:"pid", val:sPid}
  5664. ,{col:"indd", val:sIndd}
  5665. ,{col:"cretno", val:sCretNo}
  5666. ,{col:"instcd", val:sInstcd}
  5667. ]);
  5668. var oParam = {};
  5669. oParam.id = "TRMNR00910";
  5670. oParam.service = "carerecapp.ClincObsRec";
  5671. oParam.method = "reqGetPatInfo";
  5672. oParam.inds = "refCond=ds_send";
  5673. oParam.outds = "ds_patinfo=patinfo";
  5674. oParam.async = false;
  5675. oParam.callback = "cf_default";
  5676. tranf_submit(oParam);
  5677. if(ds_patinfo.rowcount < 1){
  5678. ds_cond.setColumn(0,"recdd",utlf_getCurrentDate());
  5679. ds_cond.setColumn(0,"formerrecdd", getDateCalc(ds_cond.getColumn(0,"recdd"),1));
  5680. fChkTgtPatInfo("disable");
  5681. fChangUserTypeSrch(sUserFlag);
  5682. return;
  5683. }else{
  5684. fChkTgtPatInfo("able");
  5685. fSettingViewCtrl();
  5686. }
  5687. sIOFlag = ds_patinfo.getColumn(0,"ordtype"); // 입원/외래 구분
  5688. sWardCD = ds_patinfo.getColumn(0,"wardcd"); // 병동코드
  5689. sRoomCD = ds_patinfo.getColumn(0,"roomcd"); // 병실코드
  5690. sIndschacptstat = ds_patinfo.getColumn(0,"indschacptstat"); //입퇴원구분코드
  5691. sDschdd = ds_patinfo.getColumn(0,"dschdd"); // 퇴원일자
  5692. sOrdDeptcd = ds_patinfo.getColumn(0,"orddeptcd"); // 진료과
  5693. sMedispclid = ds_patinfo.getColumn(0,"medispclid"); // 주치의
  5694. ds_cond.setColumn(0,"pid", sPid);
  5695. }
  5696. // 응급실일 경우 (2011.02.24 Ahn)
  5697. fGetWardChngInfo("Y", pFlag);
  5698. fSettingPatInfo2("init");
  5699. }
  5700. function cf_default(sSvcId, nErrorCode, sErrorMsg) {
  5701. if(nErrorCode < 0) return;
  5702. }
  5703. /**
  5704. * @group :
  5705. * @ver : 2009.12.15
  5706. * @by : 양천덕
  5707. * @---------------------------------------------------
  5708. * @type : function
  5709. * @access : public
  5710. * @desc : 환자 선택시 상단정보 변경
  5711. * @param :
  5712. * @return :
  5713. * @---------------------------------------------------
  5714. */
  5715. function fSettingPat(pFlag){
  5716. if(pFlag != "init" && sSelectView == "24hours") fMakeChart("init24hours");
  5717. //if(sSelectView == "4days" ) fMakeChart("init4days" );
  5718. //환자정보 조회
  5719. sPamInfo = sysf_getGlobalVariable("paminfo");
  5720. dsf_setCSVToDs("ds_main_paminfo",sPamInfo);
  5721. if( utlf_isNull(ds_main_paminfo.getColumnInfo("sectioncd")) ){
  5722. ds_main_paminfo.addColumn("sectioncd", "string");
  5723. }
  5724. //이윤주 수정(20160111)
  5725. if ( sJobkind == "03") {
  5726. dsf_createDsRow("ds_send"
  5727. , [{col: "pid", val: group1.grp_inpatinfo.cmb_patlist.value}
  5728. ]);
  5729. var oParam = {};
  5730. oParam.id = "TRMNR00911";
  5731. oParam.service = "carerecapp.ClincObsRec";
  5732. oParam.method = "reqGetPamInfoList";
  5733. oParam.inds = "req=ds_send";
  5734. oParam.outds = "ds_main_paminfo=pamlist";
  5735. oParam.async = false;
  5736. oParam.callback = "cf_TRMNR00911";
  5737. tranf_submit(oParam);
  5738. }
  5739. if(utlf_isNull(sPamInfo)){
  5740. fChkTgtPatInfo("disable");
  5741. fChangUserTypeSrch(sUserFlag);
  5742. return;
  5743. }else{
  5744. fChkTgtPatInfo("able");
  5745. fSettingViewCtrl();
  5746. }
  5747. fSettingPatInfo(pFlag);
  5748. fSettingPatInfo2(pFlag);
  5749. }
  5750. function cf_TRMNR00911(sSvcId, nErrorCode, sErrorMsg) {
  5751. if(nErrorCode < 0) return;
  5752. sPamInfo = "-";
  5753. }
  5754. function fSettingPatInfo(){
  5755. sPid = ds_main_paminfo.getColumn(0,"pid"); // 환자번호
  5756. sCretNo = ds_main_paminfo.getColumn(0,"cretno"); // 환자 일자별 일련번호
  5757. sInstcd = ds_main_paminfo.getColumn(0,"instcd"); // 기관코드
  5758. sIOFlag = ds_main_paminfo.getColumn(0,"ioflag"); // 입원/외래 구분
  5759. sWardCD = ds_main_paminfo.getColumn(0,"wardcd"); // 병동코드
  5760. sRoomCD = ds_main_paminfo.getColumn(0,"roomcd"); // 병실코드
  5761. sIndschacptstat = ds_main_paminfo.getColumn(0,"indschacptstat"); //입퇴원구분코드
  5762. sDschdd = ds_main_paminfo.getColumn(0,"dschdd"); // 퇴원일자
  5763. sPatNm = ds_main_paminfo.getColumn(0,"hngnm"); // 환자명
  5764. sSexAge = ds_main_paminfo.getColumn(0,"sex") +"/"+ ds_main_paminfo.getColumn(0,"age"); // 성별
  5765. sOrdDeptcd = ds_main_paminfo.getColumn(0,"orddeptcd");
  5766. sMedispclid = ds_main_paminfo.getColumn(0,"medispclid");
  5767. var eSectionCD = ds_main_paminfo.getColumn(0,"sectioncd"); // 구역코드 (2011.03.02 Ahn)
  5768. if(sIOFlag == "O"){
  5769. sIndd = ds_main_paminfo.getColumn(0,"orddd"); // 진료일자
  5770. }else{
  5771. sIndd = ds_main_paminfo.getColumn(0,"indd"); // 입원일자
  5772. }
  5773. ds_cond.setColumn(0, "pid", sPid);
  5774. dsf_makeValue(ds_patinfo, "pid", "string", sPid);
  5775. dsf_makeValue(ds_patinfo, "indd", "string", sIndd);
  5776. dsf_makeValue(ds_patinfo, "cretno", "string", sCretNo);
  5777. dsf_makeValue(ds_patinfo, "ordtype", "string", sIOFlag);
  5778. dsf_makeValue(ds_patinfo, "indschacptstat", "string", sIndschacptstat);
  5779. dsf_makeValue(ds_patinfo, "dschdd", "string", sDschdd);
  5780. dsf_makeValue(ds_patinfo, "wardcd", "string", sWardCD);
  5781. dsf_makeValue(ds_patinfo, "roomcd", "string", sRoomCD);
  5782. dsf_makeValue(ds_patinfo, "patnm", "string", sPatNm);
  5783. dsf_makeValue(ds_patinfo, "sexage", "string", sSexAge);
  5784. dsf_makeValue(ds_patinfo, "orddeptcd", "string", sOrdDeptcd);
  5785. dsf_makeValue(ds_patinfo, "medispclid", "string", sMedispclid);
  5786. dsf_makeValue(ds_patinfo, "sectioncd", "string", eSectionCD); // 구역코드 (2011.03.02 Ahn)
  5787. }
  5788. function fSettingPatInfo2(pFlag){
  5789. //외래 환자 임상관찰기록 화면 컨트롤 제어
  5790. if(sIOFlag == "O"){
  5791. fChkTgtPatInfo("disable");
  5792. sysf_messageBox("외래 환자는 임상관찰기록이 ","I004");
  5793. //model.toggle("case_24hoursstnd");
  5794. return;
  5795. }
  5796. //퇴원/입원 환자 구분에 따른 화면 제어
  5797. if(sIndschacptstat == "D"){
  5798. group1.rdo_srchflag.visible = false; //퇴원환자 조회구분 숨기기
  5799. group1.grp_oderinpatinfo.visible = false;
  5800. group1.grp_inpatinfo.visible = false;
  5801. group1.grp_outpatinfo.visible = true;
  5802. ds_cond.setColumn(0,"recdd",sDschdd);
  5803. ds_cond.setColumn(0,"formerrecdd", getDateCalc(sDschdd,1));
  5804. }else{
  5805. if(pFlag == "init" || pFlag == "reset"){
  5806. fSettingUserTypeSrch(sUserFlag);
  5807. }
  5808. var sRecdate = "";
  5809. var sRectime = "";
  5810. if(utlf_isNull(sSpParamInfo) || sGbn == "dr"){
  5811. if(utlf_getCurrentTime().substr(0,4) < sStartTm.substr(0,4)){
  5812. sRecdate = getDateCalc(utlf_getCurrentDate(),1,"-");
  5813. }else{
  5814. sRecdate = utlf_getCurrentDate();
  5815. }
  5816. }else{
  5817. sRecdate = fGetArrayDataTPR(sSpParamInfo,1,4).substr(0,8);
  5818. sRectime = fGetArrayDataTPR(sSpParamInfo,1,4).substr(8,6);
  5819. ds_cond.setColumn(0,"rectm",sRectime);
  5820. }
  5821. ds_cond.setColumn(0,"recdd",sRecdate);
  5822. ds_cond.setColumn(0,"formerrecdd", getDateCalc(ds_cond.getColumn(0,"recdd"),1));
  5823. if(pFlag == "reset" || pFlag == "init"){
  5824. if(sUserFlag == "2"){
  5825. lf_mmbfGetUserComboList(ds_init_cmb_medispcllist, sOrdDeptcd, "0330", "", "M");
  5826. lf_mmbfGetUserComboList(ds_init_cmb_atdoctlist, sOrdDeptcd, "0330", "", "A");
  5827. if(isValidObject("ds_init_cmb_medispcllist"))
  5828. {
  5829. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispcllist", "전체", "-", "above"); //의사콤보 전체항목 추가
  5830. }
  5831. if(isValidObject("ds_init_cmb_atdoctlist"))
  5832. {
  5833. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "전체", "-", "above"); //의사콤보 전체항목 추가
  5834. }
  5835. //model.setValue("/root/temp/cond/doctlist/atdoct", "-");
  5836. fGetCareComDeptPatList(sOrdDeptcd, sMedispclid , '-', mypatsrchflag);
  5837. group1.grp_oderinpatinfo.cmb_deptlist.value = sOrdDeptcd;
  5838. group1.grp_oderinpatinfo.cmb_medispcllist.value = sMedispclid;
  5839. group1.grp_oderinpatinfo.cmb_atdoctlist.value = "-";
  5840. group1.grp_oderinpatinfo.cmb_oderpatlist.value = sPid;
  5841. group1.grp_oderinpatinfo.ipt_orderpid.value = sPid;
  5842. //2017-11-09 추민수 진료리스트 정보변경시 자동으로 환자 변경
  5843. group1.grp_inpatinfo.cmb_patlist.value = sPid;
  5844. }else{
  5845. fGetCareComRoomList(sWardCD);
  5846. if(group1.grp_inpatinfo.cmb_zone.value != "-")
  5847. {
  5848. fGetCareComPatList(sWardCD, sRoomCD, group1.grp_inpatinfo.cmb_zone.value, eRECFLAG); // 환자 조회시 구역코드 추가 (2011.03.02 Ahn)
  5849. }
  5850. else
  5851. {
  5852. if(eERFLAG == "Y"){
  5853. fGetCareComPatList(sWardCD, sRoomCD, "-", eRECFLAG); // 환자 조회시 구역코드 추가 (2011.03.02 Ahn)
  5854. }else{
  5855. fGetCareComPatList(sWardCD, sRoomCD, "", eRECFLAG); // 환자 조회시 구역코드 추가 (2011.03.02 Ahn)
  5856. }
  5857. }
  5858. group1.grp_inpatinfo.cmb_wardlist.value = sWardCD;
  5859. group1.grp_inpatinfo.cmb_roomlist.value = sRoomCD;
  5860. group1.grp_inpatinfo.cmb_patlist.value = sPid;
  5861. group1.grp_inpatinfo.ipt_pid.value = sPid;
  5862. group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
  5863. group1.grp_inpatinfo.cmb_erpat.value = sPid;
  5864. }
  5865. }else if(pFlag == "patinit"){
  5866. group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
  5867. }
  5868. }
  5869. //*********************************************************************************
  5870. // 환자 조회 이후 처리 로직
  5871. //*********************************************************************************
  5872. //활력징후 대상 환자 환자 V/S 세팅
  5873. var vsinfo = "";
  5874. if(ds_data_patientgruplist.lookup("pid", sPid,"unstableyn") == "Y"){
  5875. vsinfo = utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"chosdt")).substr(0, 4) + "-"
  5876. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"chosdt")).substr(4, 2) + "-"
  5877. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"chosdt")).substr(6, 2) + " "
  5878. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"chosdt")).substr(8, 2) + ":"
  5879. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"chosdt")).substr(10, 2) + "\n"
  5880. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"highbp" )) + "/"
  5881. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"lowbp" )) + "-"
  5882. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"mntpulsecnt" )) + "-"
  5883. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"mntbrethcnt" )) + "-"
  5884. + utlf_transNullToEmpty( ds_data_patientgruplist.lookup("pid", sPid,"chosbdtp" )) + "-"
  5885. + utlf_transNullToEmpty(ds_data_patientgruplist.lookup("pid", sPid,"oxyconcen" )) ; //산소포화도 추가_20110207_SMY
  5886. }
  5887. group1.cpt_vsinfo.value = vsinfo;
  5888. var sBizLnkFlag = ds_cond.getColumn(0,"bizlnkflag");
  5889. // 2008/04/21 추가
  5890. //model.copyNode("/root/send", xPamInfoPath);
  5891. //model.copyNode("/root/send", "/root/main/patinfo");
  5892. dsf_copyDs(ds_send,ds_patinfo,"replace");
  5893. grp_srchbaselist.chk_24hoursclslist.col= 0;
  5894. if(sBizLnkFlag == "Y"){
  5895. dsf_makeValue(ds_send,"bizdeptcd","string", sDutplcecd);
  5896. }
  5897. if(pFlag == "patinit"|| pFlag == "reset") {
  5898. //환자 기록 정보 조회
  5899. fSearchClincObsRec();
  5900. }
  5901. }
  5902. /**
  5903. * @group :
  5904. * @ver : 2009.12.15
  5905. * @by : 양천덕
  5906. * @---------------------------------------------------
  5907. * @type : function
  5908. * @access : public
  5909. * @desc : 사용자별 조회 조건 변경
  5910. * @param :
  5911. * @return :
  5912. * @---------------------------------------------------
  5913. */
  5914. function fSettingUserTypeSrch(pFlag)
  5915. {
  5916. if(utlf_transNullToEmpty(sIndschacptstat) != "D"){
  5917. if(pFlag == "1"){
  5918. group1.grp_outpatinfo.visible = false;
  5919. group1.grp_oderinpatinfo.visible = false;
  5920. group1.grp_inpatinfo.visible = true;
  5921. }else{
  5922. group1.grp_outpatinfo.visible = false;
  5923. group1.grp_inpatinfo.visible = false;
  5924. group1.grp_oderinpatinfo.visible = true;
  5925. }
  5926. }
  5927. }
  5928. /**
  5929. * @group :
  5930. * @ver : 2009.12.15
  5931. * @by : 양천덕
  5932. * @---------------------------------------------------
  5933. * @type : function
  5934. * @access : public
  5935. * @desc : 사용자별 조회 조건 변경
  5936. * @param :
  5937. * @return :
  5938. * @---------------------------------------------------
  5939. */
  5940. function fChangUserTypeSrch(pFlag){
  5941. fInitViewInfo();
  5942. fSettingUserTypeSrch(pFlag);
  5943. var sSettingId1 = "-";
  5944. var sSettingId2 = "-";
  5945. if( pFlag == "1" ){
  5946. if( utlf_isNull(group1.grp_inpatinfo.cmb_wardlist.value)){
  5947. group1.grp_inpatinfo.cmb_wardlist.value = sUserDeptCd;
  5948. var ev = new ItemChangeEventInfo;
  5949. frmf_inputEnterKey("group1.grp_inpatinfo.cmb_wardlist", "onitemchanged", ev );
  5950. }else{
  5951. fGetCareComRoomList(sUserDeptCd);
  5952. //model.setValue("/root/temp/cond/wardcdgrup/wardcdgruplist", sUserDeptCd);
  5953. ds_cond.setColumn(0,"wardcd",sUserDeptCd);
  5954. }
  5955. }else{
  5956. if( sUserFlag == "2" ){
  5957. if( utlf_isNull(group1.grp_oderinpatinfo.cmb_deptlist.value)) return;
  5958. lf_mmbfGetUserComboList(ds_init_cmb_medispcllist, gUserInfo.sUserDeptCd, "0330", "", "M");
  5959. lf_mmbfGetUserComboList(ds_init_cmb_atdoctlist, gUserInfo.sUserDeptCd, "0330", "", "A");
  5960. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispclist", "-", "", "above"); //의사콤보 전체항목 추가
  5961. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "-", "", "above"); //의사콤보 전체항목 추가
  5962. if(!utlf_isNull(ds_init_cmb_medispcllist.lookup("userid", sUserId,"userid"))){
  5963. sSettingId1 = sUserId
  5964. }
  5965. if(!utlf_isNull(ds_init_cmb_atdoctlist.lookup("userid", sUserId,"userid"))){
  5966. sSettingId2 = sUserId
  5967. }
  5968. fGetCareComDeptPatList(sUserDeptCd, sSettingId1 , sSettingId2, mypatsrchflag);
  5969. if( !utlf_isNull(ds_init_cmb_deptlist.lookup("deptcd", sUserDeptCd,"dept"))){
  5970. group1.grp_oderinpatinfo.cmb_deptlist.value = sUserDeptCd;
  5971. group1.grp_oderinpatinfo.cmb_medispcllist.value = sSettingId1;
  5972. group1.grp_oderinpatinfo.cmb_atdoctlist.value = sSettingId2;
  5973. }else{
  5974. group1.grp_oderinpatinfo.cmb_deptlist.value = "-";
  5975. }
  5976. }else{
  5977. group1.grp_oderinpatinfo.cmb_deptlist.value = "-";
  5978. ds_init_cmb_medispcllist.clearData();
  5979. ds_init_cmb_atdoctlist.clearData();
  5980. }
  5981. }
  5982. }
  5983. /********************************************************************************
  5984. * 설 명 : 환자선택여부확인 함수
  5985. * argument : pFlag : disable / able
  5986. ********************************************************************************/
  5987. function fChkTgtPatInfo(pFlag)
  5988. {
  5989. switch(pFlag){
  5990. case "disable":
  5991. grp_srchbaselist.visible = false;
  5992. grp_btnlist.visible = false;
  5993. group4.btn_24hoursdetailbefore.visible = false;
  5994. group4.btn_24hoursdetailafter.visible = false;
  5995. group4.btn_24hoursup.enable = false;
  5996. group4.btn_24hoursdown.enable = false;
  5997. break;
  5998. case "able":
  5999. grp_srchbaselist.visible = true;
  6000. grp_btnlist.visible = true;
  6001. group4.btn_24hoursdetailbefore.visible = true;
  6002. group4.btn_24hoursdetailafter.visible = true;
  6003. group4.btn_24hoursup.enable = true;
  6004. group4.btn_24hoursdown.enable = true;
  6005. break;
  6006. }
  6007. }
  6008. function fEnterGridCell(pFlag,currrow,currcol){
  6009. var iRow = 0;
  6010. var iCol = 0;
  6011. var iRecRow = 0;
  6012. var sRecFromDT = "";
  6013. var sRecToDT = "";
  6014. var sRecDT = "";
  6015. var sAttrCD = "";
  6016. switch(pFlag){
  6017. case "24hours" :
  6018. sMouseiCol = currcol;
  6019. if(sMouseiCol == group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm")) return;
  6020. //iRecRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows+1;
  6021. iRow = currrow;
  6022. iCol = currcol;
  6023. sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
  6024. sRecFromDT = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recfromdt");
  6025. sRecToDT = ds_grd_24hoursclincobsreclist.getColumn(iRow, "rectodt");
  6026. sAttrCD = ds_grd_24hoursclincobsreclist.getColumn(iRow, "attrcd");
  6027. sReChartFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "reccharflag");
  6028. //추가
  6029. if(ds_cond.getColumn(0,"cmbstatusx") != "0" && ds_cond.getColumn(0,"cmbstatusy") != "0"){
  6030. if(sReChartFlag == "A"){
  6031. var cmbstatusx = ds_cond.getColumn(0,"cmbstatusx");
  6032. var cmbstatusy = ds_cond.getColumn(0,"cmbstatusy");
  6033. var cmbRecRow = cmbstatusx;
  6034. var cmbAttrCD = ds_grd_24hoursclincobsreclist.getColumn(cmbRecRow,"attrcd");
  6035. //grd_24hoursclincobsreclist.cellComboNodeset(cmbstatusx,cmbstatusy) = ds_data_attrlist1.filter("supcd=='"+cmbAttrCD+"'");
  6036. group4.grd_24hoursclincobsreclist.setCellProperty("Body",cmbstatusy,"combodataset","expr(currow == " + cmbstatusx + "?ds_data_attrlist1:'')");
  6037. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combocodecol","attrcd");
  6038. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrnm");//cms
  6039. cmbstatusx = "0";
  6040. cmbstatusy = "0";
  6041. }else{
  6042. cmbstatusx = "0";
  6043. cmbstatusy = "0";
  6044. }
  6045. }
  6046. //---------(20101204) 경북대
  6047. //추가
  6048. var ssflag = "";
  6049. //경북대이면 03%로 체크한다.
  6050. if( sJobKindCD.substring(0, 2) == "03"){
  6051. ssflag = "Y";
  6052. }else{
  6053. ssflag = "N";
  6054. }
  6055. //원본:의사의 경우만
  6056. //if(sJobKindCD == "30" ){
  6057. group4.grd_24hoursclincobsreclist.enableredraw = false;
  6058. if(ssflag=="Y"){
  6059. //---------(20101204) 경북대
  6060. for(var j =0;j<=24;j++)
  6061. {
  6062. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + j,"text");
  6063. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + j,"none");
  6064. }
  6065. return;
  6066. }
  6067. if(sReChartFlag =="A" && !utlf_isNull(sAttrCD)){
  6068. ds_data_attrlist.clearData();
  6069. for(var i = 0 ; i < ds_data_attrlist1.rowcount; i ++){
  6070. if(sAttrCD == ds_data_attrlist1.getColumn(i,"supcd") ){
  6071. var insComboNode = eval(ds_data_attrlist.rowcount) + 1 ;
  6072. if(insComboNode == 1){
  6073. var nRow = ds_data_attrlist.addRow();
  6074. ds_data_attrlist.setColumn(nRow,"attrnm", "");
  6075. ds_data_attrlist.setColumn(nRow,"attrcd", "");
  6076. }
  6077. var nRow = ds_data_attrlist.addRow();
  6078. ds_data_attrlist.setColumn(nRow,"attrnm", ds_data_attrlist1.getColumn(i,"attrnm"));
  6079. ds_data_attrlist.setColumn(nRow,"attrcd", ds_data_attrlist1.getColumn(i,"attrcd"));
  6080. }
  6081. }
  6082. ds_cond.setColumn(0,"cmbstatusx",iRow );
  6083. ds_cond.setColumn(0,"cmbstatusy",iCol );
  6084. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"combo");
  6085. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"combo");
  6086. //grd_24hoursclincobsreclist.combo.button.visible = true;
  6087. //grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath;
  6088. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodataset","ds_data_attrlist");
  6089. group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combocodecol","attrcd");
  6090. //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"combodatacol","attrnm");//cms
  6091. //grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col)-20;
  6092. //2008-05-22 콤보 선택시 콤보노드 변경을 위해 추가
  6093. ds_grd_24hoursclincobsreclist.rowposition = iRow;
  6094. group4.grd_24hoursclincobsreclist.setCellPos(iCol);
  6095. }else{
  6096. //grd_24hoursclincobsreclist.combo.button.visible = false;
  6097. ds_grd_24hoursclincobsreclist.setColumn(currrow,"coltype" + currcol,"text");
  6098. ds_grd_24hoursclincobsreclist.setColumn(currrow,"edittype" + currcol,"text");
  6099. group4.grd_24hoursclincobsreclist.showEditor(true);
  6100. //grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col);
  6101. }
  6102. break;
  6103. }
  6104. }
  6105. function fSearchDetlRecInfo(pFlag,currow,curcol){
  6106. var iRow = 0;
  6107. var iCol = 0;
  6108. var sItemCD = "";
  6109. var sItemSeqNo = "";
  6110. var sRecDD = "";
  6111. var sRecTM = "";
  6112. var sAttrCD = "";
  6113. var sAttrNM = "";
  6114. var sRecFlag = "";
  6115. var sTimeFlag = "";
  6116. var sRecRslt = "";
  6117. var sSubTotal = 0;
  6118. var sFromDT = "";
  6119. var sToDT = "";
  6120. var sStndDT = "";
  6121. var sSubTotalArray = "";
  6122. switch(pFlag){
  6123. case "24hours" :
  6124. iRow = currow;
  6125. iCol = curcol;
  6126. if(iRow < 0 || iCol < 0 ){
  6127. ds_cond_detlrecinfo.setColumn(0,"detlval" , "");
  6128. ds_cond_detlrecinfo.setColumn(0,"usernm" , "");
  6129. ds_cond_detlrecinfo.setColumn(0,"subtotal", "");
  6130. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", "");
  6131. }else{
  6132. if(iCol == 0){
  6133. ds_cond_detlrecinfo.setColumn(0,"detlval", ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemnm"));
  6134. ds_cond_detlrecinfo.setColumn(0,"usernm", "");
  6135. ds_cond_detlrecinfo.setColumn(0,"subtotal", "");
  6136. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", "");
  6137. }else{
  6138. sItemCD = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemcd"));
  6139. sItemSeqNo = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemseqno"));
  6140. sCareRecSeqNo = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"carerecseqno"));
  6141. sRecDD = sHeader[1][iCol];
  6142. sRecTM = sHeader[3][iCol]+sHeader[4][iCol]+"00";
  6143. sTimeFlag = ds_cond.getColumn(0,"timeflag");
  6144. sRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recflag");
  6145. var sHistRecUserNm = String(utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno", sCareRecSeqNo, "usernm"))).split("^");
  6146. var sHistRecDT = String(utlf_transNullToEmpty(ds_data_recuserlist.lookup("carerecseqno", sCareRecSeqNo, "recdt"))).split("^");
  6147. var sSettingUserNm = "";
  6148. if(sHistRecDT.length > 0){
  6149. for(var histrow = 0 ; histrow < sHistRecDT.length ; histrow++){
  6150. if((sRecDD + sRecTM) == sHistRecDT[histrow]){
  6151. sSettingUserNm = sHistRecUserNm[histrow];
  6152. }
  6153. }
  6154. }
  6155. ds_cond_detlrecinfo.setColumn(0,"usernm", sSettingUserNm);
  6156. sAttrCD = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd"));
  6157. if(utlf_isNull(sAttrCD)){
  6158. ds_cond_detlrecinfo.setColumn(0,"detlval", ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol));
  6159. }else{
  6160. sAttrCD = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol));
  6161. sAttrNM = utlf_transNullToEmpty(ds_data_attrlist1.lookup("attrcd",sAttrCD,"attrnm"));
  6162. if(utlf_isNull(sAttrNM)){
  6163. ds_cond_detlrecinfo.setColumn(0,"detlval", sAttrCD);
  6164. }else{
  6165. ds_cond_detlrecinfo.setColumn(0,"detlval", sAttrNM);
  6166. }
  6167. }
  6168. sFromDT = sHeader[1][1]+sHeader[3][1]+sHeader[4][1];
  6169. sToDT = sRecDD+sRecTM.substr(0,4);
  6170. if(!utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol)) &&
  6171. (utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd")) || ds_grd_24hoursclincobsreclist.getColumn(iRow,"totalyn") == "Y") &&
  6172. (sRecFlag == "B" || sRecFlag == "C" || sRecFlag == "T") ){
  6173. for(var i=1; i<= iCol; i++){
  6174. sStndDT = sHeader[1][i]+sHeader[3][i]+sHeader[4][i];
  6175. if(sStndDT >= sFromDT && sStndDT <= sToDT){
  6176. sRecRslt = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+i));
  6177. if(!utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true ){
  6178. //2019.01.21_2.0 부동소수점 처리 오류에 따른 소수점 처리 로직 추가
  6179. //sSubTotal += eval(sRecRslt);
  6180. sSubTotal += eval(sRecRslt);
  6181. sSubTotal = roundDight(sSubTotal, 5);
  6182. }
  6183. }
  6184. }
  6185. }
  6186. if( sSubTotal == 0 ) sSubTotal="";
  6187. ds_cond_detlrecinfo.setColumn(0,"subtotal", sSubTotal);
  6188. if( utlf_isNull(sSubTotal) ){
  6189. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", "");
  6190. }else{
  6191. sFromDT = sFromDT.substr(4,2)+"/"+sFromDT.substr(6,2)+" "+sFromDT.substr(8,2)+":"+sFromDT.substr(10,2);
  6192. sToDT = sToDT.substr(4,2)+"/"+sToDT.substr(6,2)+" "+sToDT.substr(8,2)+":"+sToDT.substr(10,2);
  6193. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", sFromDT + "~" + sToDT);
  6194. }
  6195. }
  6196. }
  6197. break;
  6198. }
  6199. }
  6200. //2019.01.21_2.0 부동소수점 처리 오류에 따른 소수점 처리 로직 추가
  6201. function roundDight(n, digits)
  6202. {
  6203. if (digits > 0)
  6204. {
  6205. return parseFloat(n.toFixed(digits));
  6206. } else {
  6207. return parseFloat(n.toFixed(0));
  6208. }
  6209. }
  6210. //enr
  6211. function lf_removeClincObsRecGrid()
  6212. {
  6213. //임상관찰기록 초기화
  6214. ds_grd_24hoursclincobsreclist.clearData();
  6215. for(var i = 0 ; i< group4.grd_24hoursclincobsreclist.getCellCount("Head");i++)
  6216. {
  6217. group4.grd_24hoursclincobsreclist.setCellProperty("Head",i,"text","");
  6218. }
  6219. }
  6220. function fInitViewInfo(){
  6221. if(ds_data_patientgruplist.rowcount < 0){
  6222. return;
  6223. }
  6224. fInitTopInfo();
  6225. ds_grd_24hoursclincobsreclist.clearData();
  6226. ds_daysclincobsreclist.clearData();
  6227. ds_stnddayclincobsreclist.clearData();
  6228. ds_formerclincobsreclist.clearData();
  6229. ds_data_clincobsreclist.clearData();
  6230. ds_data_formerclincobsrecinfo.clearData();
  6231. ds_daycountinfo.clearData();
  6232. ds_formerdaycountinfo.clearData();
  6233. ds_main_paminfo.clearData();
  6234. ds_data_recuserlist.clearData();
  6235. ds_data_attrlist1.clearData();
  6236. ds_formerclincobsrecinfo_attrlist1.clearData();
  6237. ds_formerclincobsrecinfo_recuserlist.clearData();
  6238. ds_init_clsinfo.clearData();
  6239. ds_data_patientgruplist.clearData();
  6240. ds_data_patdetllist.clearData();
  6241. lf_removeClincObsRecGrid(); //그리드 초기화
  6242. group1.cpt_vsinfo.value = "";
  6243. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  6244. group4.btn_24hoursdetailbefore.visible = false;
  6245. group4.btn_24hoursdetailafter.visible = false;
  6246. fMakeChart("init24hours");
  6247. if(ds_patinfo.rowcount > 0){
  6248. ds_patinfo.setColumn(0,"pid", "");
  6249. ds_patinfo.setColumn(0,"indd", "");
  6250. ds_patinfo.setColumn(0,"cretno", "");
  6251. ds_patinfo.setColumn(0,"ordtype", "");
  6252. ds_patinfo.setColumn(0,"indschacptstat", "");
  6253. ds_patinfo.setColumn(0,"dschdd", "");
  6254. ds_patinfo.setColumn(0,"eroutdd", "");
  6255. ds_patinfo.setColumn(0,"patnm", "");
  6256. ds_patinfo.setColumn(0,"sexage", "");
  6257. ds_patinfo.setColumn(0,"wardcd", "");
  6258. ds_patinfo.setColumn(0,"roomcd", "");
  6259. }
  6260. sPid == "";
  6261. sIndd == "";
  6262. sCretNo == "";
  6263. sInstcd == "";
  6264. sIOFlag == "";
  6265. sWardCD == "";
  6266. sRoomCD == "";
  6267. sIndschacptstat == "";
  6268. sDschdd == "";
  6269. sOrdDeptcd == "";
  6270. sMedispclid == "";
  6271. ds_cond.setColumn(0,"pid", "");
  6272. }
  6273. /********************************************************************************
  6274. * 설 명 : 화면전환 함수
  6275. * argument :
  6276. ********************************************************************************/
  6277. function fChageView(pFlag)
  6278. {
  6279. lf_setDsValue(ds_cond, 0, "vwctrl_button", pFlag);
  6280. switch(pFlag){
  6281. case "24hours" :
  6282. ds_cond.setColumn(0, "hourschartinfo", "1 2 3 4 5");
  6283. var aData = String(ds_cond.getColumn(0, "hourschartinfo")).split(" ");
  6284. grp_chkbox.chk_hourschartinfo.setData(aData);
  6285. grp_chkbox.chk_hourschartinfo.setCallEvent("chk_hourschartinfo1_onclick");
  6286. break;
  6287. }
  6288. fControlGridSize(pFlag);
  6289. }
  6290. /**
  6291. * @group :
  6292. * @ver : 2009.12.15
  6293. * @by : 양천덕
  6294. * @---------------------------------------------------
  6295. * @type : function
  6296. * @access : public
  6297. * @desc : 환자 선택시 상단정보 변경
  6298. * @param :
  6299. * @return :
  6300. * @---------------------------------------------------
  6301. */
  6302. function fSetParam(pFlag, pIndex){
  6303. if(ds_main_paminfo.rowcount > 0){
  6304. ds_main_paminfo.clear();
  6305. }
  6306. var sOrdtype = "";
  6307. var sPid = "";
  6308. var sIndd = "";
  6309. var sCretno = "";
  6310. var sInstcd = "";
  6311. var param = "";
  6312. if(pFlag == "SrchPat"){
  6313. sOrdtype = ds_data_patientgruplist.getColumn(pIndex, "ordtype" );
  6314. if(sOrdtype == "I" || sOrdtype == "D") {
  6315. sOrdtype = "I";
  6316. }
  6317. sPid = ds_data_patientgruplist.getColumn(pIndex, "pid" );
  6318. sIndd = ds_data_patientgruplist.getColumn(pIndex, "indd" );
  6319. sCretno = ds_data_patientgruplist.getColumn(pIndex, "cretno" );
  6320. sInstcd = ds_data_patientgruplist.getColumn(pIndex, "instcd" );
  6321. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  6322. }else if(pFlag == "SettingPat"){
  6323. sOrdtype = ds_data_settingpatientlist.getColumn(pIndex,"ordtype" );
  6324. //20120207_KNUH_Start 환자선택시 DSC같은 경우에는 상단 parameter가 잘못되었습니다 오류뜸.(그래서 I로 넣어줌, 항암메인과 조건동일)
  6325. if(sOrdtype == "I" || sOrdtype == "D") {
  6326. sOrdtype = "I";
  6327. }
  6328. sPid = ds_data_settingpatientlist.getColumn(pIndex,"pid" );
  6329. sIndd = ds_data_settingpatientlist.getColumn(pIndex,"indd" );
  6330. sCretno = ds_data_settingpatientlist.getColumn(pIndex,"cretno" );
  6331. sInstcd = ds_data_settingpatientlist.getColumn(pIndex,"instcd" );
  6332. }
  6333. if ( sJobkind != "03" ) {
  6334. param = sOrdtype + "▦"
  6335. + sPid + "▦"
  6336. + sIndd + "▦"
  6337. + sCretno + "▦"
  6338. + sInstcd + "▦"
  6339. + "▦" ;
  6340. frmf_setParameter("condparam", param);
  6341. appf_initPatientInfo(param);
  6342. //modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  6343. }
  6344. if(pFlag == "SrchPat"){
  6345. //fInitialize("patinit");
  6346. if(LoadGubun == true)
  6347. {
  6348. fSettingPat("init");
  6349. }
  6350. fSettingPat("patinit");
  6351. }else if(pFlag == "SettingPat"){
  6352. //fInitialize("reset");
  6353. fSettingPat("reset");
  6354. }
  6355. }
  6356. /********************************************************************************
  6357. * 설 명 : 구역정보 조회 및 내환자정보 숨기기(응급실인 경우)
  6358. * argument :
  6359. ********************************************************************************/
  6360. function fGetWardChngInfo(initFlag, pFlag)
  6361. {
  6362. if(initFlag=="Y"){
  6363. var sWardCD = lf_getDsValue(ds_main_paminfo, 0, "wardcd");
  6364. }else{
  6365. var sWardCD = lf_getDsValue(ds_cond, 0, "wardcd");
  6366. }
  6367. if(sWardCD == eERDEPTCD){
  6368. eERFLAG = "Y";
  6369. }else{
  6370. eERFLAG = "";
  6371. }
  6372. //응급실인 경우 구역정보 추가조회
  6373. if(eERFLAG == "Y"){ // 응급실
  6374. //ds_temp_zoneinfo_zonelist
  6375. fGetZoneList();
  6376. group1.grp_inpatinfo.cap_ward.text = "구 역 :";
  6377. group1.grp_inpatinfo.cmb_zone.visible = true;
  6378. group1.grp_inpatinfo.cmb_erpat.visible = true;
  6379. //group1.grp_inpatinfo.cmb_roomlist.visible = false;
  6380. //group1.grp_inpatinfo.cmb_patlist.visible = false;
  6381. //group1.grp_inpatinfo.ipt_pid.visible = false;
  6382. //group1.grp_inpatinfo.cmb_wardlist.enable = false; //응급실일 경우 병동 리스트 변경 못하게 처리
  6383. group1.grp_inpatinfo.cmb_roomlist.visible = false;
  6384. group1.grp_inpatinfo.cmb_patlist.visible = false;
  6385. group1.grp_inpatinfo.cmb_mypatlist.visible = false;
  6386. group1.grp_inpatinfo.cap_mypat.visible = false;
  6387. group1.grp_inpatinfo.ipt_pid.visible = false;
  6388. // group1.grp_inpatinfo.cap_room.position.x = 145;
  6389. // group1.grp_inpatinfo.cmb_zone.position.x = 193;
  6390. // group1.grp_inpatinfo.cap_patnm_pid.position.x = 290;
  6391. // group1.grp_inpatinfo.cmb_erpat.position.x = 420;
  6392. //
  6393. // group1.grp_inpatinfo.cap_ward.position.x = 177;
  6394. // group1.grp_inpatinfo.cmb_zone.position.x = 245;
  6395. // group1.grp_inpatinfo.cap_patnm_pid.position.x =340;
  6396. // group1.grp_inpatinfo.cmb_wardlist.position.x = 97;
  6397. if(pFlag != "SrchPat"){ // 환자를 직접 선택한 경우엔 구역정보 보존
  6398. // 처음 상단 정보로 화면 열릴 때
  6399. if(initFlag=="Y"){
  6400. if(utlf_isNull(ds_main_paminfo.getColumn(0, "sectioncd")) && !utlf_isNull(ds_main_paminfo.getColumn(0, "basetypecd")))
  6401. {
  6402. ds_main_paminfo.setColumn(0, "sectioncd", ds_main_paminfo.getColumn(0, "basetypecd"));
  6403. }
  6404. lf_setDsValue(ds_cond, 0, "zonecd", lf_getDsValue(ds_main_paminfo, 0, "sectioncd") == "" ? "-" : lf_getDsValue(ds_main_paminfo, 0, "sectioncd"));
  6405. }else{
  6406. lf_setDsValue(ds_cond, 0, "zonecd", "-");
  6407. }
  6408. }
  6409. }else{
  6410. group1.grp_inpatinfo.cap_ward.text = "병 실 :";
  6411. group1.grp_inpatinfo.cmb_zone.visible = false;
  6412. group1.grp_inpatinfo.cmb_erpat.visible = false;
  6413. group1.grp_inpatinfo.cmb_roomlist.visible = true;
  6414. group1.grp_inpatinfo.cmb_patlist.visible = true;
  6415. group1.grp_inpatinfo.cmb_mypatlist.visible = true;
  6416. group1.grp_inpatinfo.cap_mypat.visible = true;
  6417. group1.grp_inpatinfo.ipt_pid.visible = true;
  6418. // group1.grp_inpatinfo.cap_room.position.x = 310;
  6419. // group1.grp_inpatinfo.cmb_zone.x = 193;
  6420. // group1.grp_inpatinfo.cap_patnm_pid.position.x = 462;
  6421. //
  6422. // group1.grp_inpatinfo.cap_ward.position.x = 142;
  6423. // group1.grp_inpatinfo.cmb_zone.x = 210;
  6424. // group1.grp_inpatinfo.cap_patnm_pid.position.x = 305;
  6425. // group1.grp_inpatinfo.cmb_wardlist.position.x = 67;
  6426. lf_setDsValue(ds_cond, 0, "zonecd", "-");
  6427. }
  6428. }
  6429. /********************************************************************************
  6430. * 설 명 : 화면버튼 설정 함수
  6431. * argument :
  6432. ********************************************************************************/
  6433. function fSettingViewCtrl()
  6434. {
  6435. // 의사의 경우는 조회만 가능
  6436. if(sUserFlag == "2"){
  6437. grp_btnlist.btn_viewsetting.enable = false;
  6438. grp_btnlist.btn_cleanitem.enable = false;
  6439. grp_btnlist.grp_wardbtn.enable = false;
  6440. grp_btnlist.btn_EtrlInpt.enable = false;
  6441. grp_btnlist.btn_cdisopen.enable = false;
  6442. grp_btnlist.btn_tempsave.enable= false;
  6443. grp_btnlist.btn_24hourscertsave.enable = false;
  6444. grp_btnlist.btn_24hoursnursitem.enable= false;
  6445. }
  6446. }
  6447. /********************************************************************************
  6448. * 설 명 : 임상관찰 기록 날짜 및 시간 그리드 헤드 생성 함수
  6449. * argument :
  6450. ********************************************************************************/
  6451. function fCreateHeader(pFlag)
  6452. {
  6453. var sRecDT = "";
  6454. //var sChartCapNm = "";
  6455. var sGridCapNm = "";
  6456. var sFormatInfo = "";
  6457. var sColumnInfo = "";
  6458. var sRowInfo = "";
  6459. var sHeadInfo = "";
  6460. var sBodyInfo = "";
  6461. var sTimeFlag = 0;
  6462. var sCDay = new Array();
  6463. var sDayInfo = "";
  6464. var iDayRow = 0;
  6465. var sDayCountInfo = "";
  6466. var sDateList = "";
  6467. var sHeadLineCount = 0; //헤더 라인 수
  6468. var bolFromDate = false;
  6469. bolToData = false;
  6470. sHeader[1] = new Array();
  6471. sHeader[2] = new Array();
  6472. sHeader[3] = new Array();
  6473. sHeader[4] = new Array();
  6474. sHeader[1][0] = "날 짜";
  6475. sHeader[2][0] = "Day count";
  6476. sHeader[3][0] = "시 간";
  6477. sHeader[4][0] = "분";
  6478. dsf_createDsRow("ds_send"
  6479. , [{col: "pid", val: sPid}
  6480. ,{col: "indd", val: sIndd}
  6481. ,{col: "cretno", val: sCretNo}
  6482. ,{col: "instcd", val: sInstcd}
  6483. ,{col: "ioflag", val: sIOFlag}
  6484. ,{col: "dayinfo", val: grp_srchbaselist.ipt_24hoursrecdd.value}
  6485. ]);
  6486. var oParam = {};
  6487. oParam.id = "TRMNR10102";
  6488. oParam.service = "flowchartapp.FlowChartRecMngt";
  6489. oParam.method = "reqGetDayCountList";
  6490. oParam.inds = "req=ds_send";
  6491. oParam.outds = "ds_data_patdetllist=patdetllist";
  6492. oParam.async = false;
  6493. //oParam.callback = "cf_TRMNR10102";
  6494. tranf_submit(oParam);
  6495. var stropdd = "";
  6496. if(!utlf_isNull(ds_data_patdetllist.getColumn(0, "opdd")))
  6497. {
  6498. stropdd = ds_data_patdetllist.getColumn(0, "opdd");
  6499. stropdd = stropdd.substr(0, 4) + "-" + stropdd.substr(4, 2) + "-" + stropdd.substr(6, 2);
  6500. group1.grp_patinfolist.cap_opddvalue.text = stropdd;
  6501. }
  6502. var brthddvalue = group1.grp_patinfolist.cap_brthddvalue.text;
  6503. if(!utlf_isNull(brthddvalue))
  6504. {
  6505. brthddvalue = brthddvalue.substr(0, 4) + "-" + brthddvalue.substr(4, 2) + "-" + brthddvalue.substr(6, 2);
  6506. group1.grp_patinfolist.cap_brthddvalue.text = brthddvalue;
  6507. }
  6508. fControlPatInfo();
  6509. switch(pFlag){
  6510. case "24hours" :
  6511. //그리드 스타일 초기화
  6512. //lf_gridstyleclear();
  6513. sTimeFlag = eval(ds_cond.getColumn(0,"timeflag"));
  6514. sRecDT = ds_cond.getColumn(0,"recdd")+ds_cond.getColumn(0,"rectm");
  6515. var sStartDT = fCalcStartDate(sRecDT,sTimeFlag);
  6516. var sTime = 0;
  6517. for(var i=1; i<=25; i++){
  6518. if(i>1){
  6519. sStartDT = sStartDT.getAddDate(sTimeFlag,"m");
  6520. }
  6521. sHeader[1][i] = utlf_getDateTime(sStartDT,"기본").substr(0,8);
  6522. if(iDayRow == 0 || sCDay[iDayRow-1] != sHeader[1][i]){
  6523. sCDay[iDayRow] = sHeader[1][i];
  6524. iDayRow++;
  6525. }
  6526. sHeader[3][i] = utlf_getDateTime(sStartDT,"기본").substr(8,2);
  6527. sHeader[4][i] = utlf_getDateTime(sStartDT,"기본").substr(10,2);
  6528. }
  6529. for(var i=0; i<sCDay.length;i++){
  6530. sDayInfo += sCDay[i];
  6531. if(i != sCDay.length-1){
  6532. sDayInfo += ",";
  6533. }
  6534. }
  6535. if(sDayCountCnt > 0){
  6536. ds_send.setColumn(0,"dayinfo",sDayInfo);
  6537. var oParam = {};
  6538. oParam.id = "TRMNR00903";
  6539. oParam.service = "carerecapp.ClincObsRec";
  6540. oParam.method = "reqGetDayCountList";
  6541. oParam.inds = "refCond=ds_send";
  6542. oParam.outds = "ds_daycountinfo=daycountlist";
  6543. oParam.async = false;
  6544. oParam.callback = "cf_TRMNR00903";
  6545. tranf_submit(oParam);
  6546. }
  6547. //Column info 세팅
  6548. for(var iCol=0; iCol<=24; iCol++){
  6549. if(iCol == 0){
  6550. sColumnInfo += '<Columns size="202" /> \r\n';
  6551. }else{
  6552. sColumnInfo += '<Columns size="41" /> \r\n';
  6553. }
  6554. }
  6555. //환경 설정 정보를 이용하여 그리드 Caption Control
  6556. if(sHeaderFlag == "A"){
  6557. // for(var iRow=1; iRow<=4; iRow++){
  6558. // if(iRow == 2 && sDayCountCnt == 0 ) continue;
  6559. // for(var iCol=0; iCol<=24; iCol++){
  6560. // if(iRow == 1){
  6561. // if(iCol == 0){
  6562. // sGridCapNm += sHeader[iRow][iCol]; // 년월일
  6563. // }else{
  6564. // sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
  6565. // " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
  6566. // }
  6567. // }else if(iRow == 2){ // day count
  6568. // sGridCapNm += sHeader[iRow][iCol];
  6569. // }else if(iRow == 3){ // 시
  6570. // sGridCapNm += sHeader[iRow][iCol];
  6571. // if(iCol != 0){
  6572. // sGridCapNm += "시";
  6573. // }
  6574. // }else if(iRow == 4){ // 분
  6575. // sGridCapNm += sHeader[iRow][iCol];
  6576. // if(iCol != 0){
  6577. // sGridCapNm += "분";
  6578. // }
  6579. // }
  6580. // if(iCol != 24){
  6581. // sGridCapNm += "^";
  6582. // }
  6583. // }
  6584. //
  6585. // if(iRow != 4){
  6586. // sGridCapNm += "|";
  6587. // }
  6588. // }
  6589. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6590. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6591. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6592. sRowInfo += '<Row size="24"/> \r\n';
  6593. sHeadLineCount = 3;
  6594. }else if(sHeaderFlag == "D"){
  6595. // for(var iRow=1; iRow<=4; iRow++){
  6596. // if(iRow == 1 || iRow == 2 ) continue;
  6597. // for(var iCol=0; iCol<=24; iCol++){
  6598. // if(iRow == 3){ // 시
  6599. // sGridCapNm += sHeader[iRow][iCol];
  6600. // if(iCol != 0){
  6601. // sGridCapNm += "시";
  6602. // }
  6603. // }else if(iRow == 4){ // 분
  6604. // sGridCapNm += sHeader[iRow][iCol];
  6605. // if(iCol != 0){
  6606. // sGridCapNm += "분";
  6607. // }
  6608. // }
  6609. // if(iCol != 24){
  6610. // sGridCapNm += "^";
  6611. // }
  6612. // }
  6613. //
  6614. // if(iRow != 4){
  6615. // sGridCapNm += "|";
  6616. // }
  6617. // }
  6618. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6619. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6620. sRowInfo += '<Row size="24"/> \r\n';
  6621. sHeadLineCount = 2;
  6622. }else if(sHeaderFlag == "T"){
  6623. // for(var iCol=0; iCol<=24; iCol++){
  6624. // //24시간 화면 Caption 설정
  6625. // if(iCol != 0){
  6626. // sGridCapNm += sHeader[3][iCol] + ":" + sHeader[4][iCol];
  6627. // }else{
  6628. // sGridCapNm += sHeader[3][iCol];
  6629. // }
  6630. //
  6631. // if(iCol != 24){
  6632. // sGridCapNm += "^";
  6633. // }
  6634. // }
  6635. sRowInfo += '<Row size="24" band="head"/> \r\n';
  6636. sRowInfo += '<Row size="24"/> \r\n';
  6637. sHeadLineCount = 1;
  6638. }
  6639. //grd_24hoursclincobsreclist.caption = sGridCapNm;
  6640. //Head info 세팅
  6641. for(var j=1; j <= sHeadLineCount; j++){
  6642. sFirstColSpan = 1;
  6643. sSecondColSpan = 1;
  6644. sThirdColSpan = 1;
  6645. for(var iCol=0; iCol<=24; iCol++){
  6646. if(sHeaderFlag == "A"){ //년월일(요일) 시 분(3줄)
  6647. if(j==1){ //첫번째 줄
  6648. if(iCol==0){
  6649. sHeadInfo += '<Cell text="' + sHeader[j][iCol] + '"/> \r\n';
  6650. }else{
  6651. sHeadInfo += '<Cell col="' + iCol + '" text="' + sHeader[j][iCol].toDate("YYYYMMDD").getDateFormat("MM/DD")+'"/> \r\n';
  6652. }
  6653. }else{ //두번째, 세번째 줄
  6654. if(iCol==0){
  6655. if(j==2) sHeadInfo += '<Cell row="' + (j-1) + '" text="' + sHeader[j+1][iCol] + '"/> \r\n';
  6656. if(j==3) sHeadInfo += '<Cell row="' + (j-1) + '" text="' + sHeader[j+1][iCol] + '"/> \r\n';
  6657. }else{
  6658. if(j==2) sHeadInfo += '<Cell row="' + (j-1) + '" col="' + iCol + '" text="' + sHeader[j+1][iCol] + '시"/> \r\n';
  6659. if(j==3) sHeadInfo += '<Cell row="' + (j-1) + '" col="' + iCol + '" text="' + sHeader[j+1][iCol] + '분"/> \r\n';
  6660. }
  6661. }
  6662. }else if(sHeaderFlag == "D"){ //시분(2줄)
  6663. if(j==1){ //첫번째 줄
  6664. if(iCol==0){
  6665. sHeadInfo += '<Cell text="' + sHeader[3][iCol] + '"/> \r\n';
  6666. }else{
  6667. sHeadInfo += '<Cell col="' + iCol + '" text="' + sHeader[3][iCol] + '시"/> \r\n';
  6668. }
  6669. }else{ //두번째
  6670. if(iCol==0){
  6671. sHeadInfo += '<Cell row="' + (j-1) + '" text="' + sHeader[4][iCol] + '"/> \r\n';
  6672. }else{
  6673. sHeadInfo += '<Cell row="' + (j-1) + '" col="' + iCol + '" text="' + sHeader[4][iCol] + '분"/> \r\n';
  6674. }
  6675. }
  6676. }else if(sHeaderFlag == "T"){ //시분(1줄)
  6677. if(j==1){ //첫번째 줄
  6678. if(iCol==0){
  6679. sHeadInfo += '<Cell text="' + sHeader[3][iCol] + '"/> \r\n';
  6680. }else{
  6681. sHeadInfo += '<Cell col="' + iCol + '" text="' + sHeader[3][iCol] + ':' + sHeader[4][iCol] + '"/> \r\n';
  6682. }
  6683. }
  6684. }
  6685. }
  6686. }
  6687. //Body info 세팅
  6688. for(var iCol=0; iCol<=24; iCol++){
  6689. var styleinfo = 'style="background:BIND(backcolor'+ iCol + ');background2:BIND(backcolor'+ iCol + ');color:BIND(fontcolor'+ iCol + ');color2:BIND(fontcolor'+ iCol + ');backgroundimage:BIND(backimage'+ iCol + ');font:BIND(fonttype'+ iCol + ');padding:0 0 0 0;combodisplayrowcount:20;editautoselect:true;"';
  6690. if(iCol==0){
  6691. sBodyInfo += '<Cell displaytype="tree" edittype="tree" ' + styleinfo + ' text="bind:itemnm" wordwrap="char" treestartlevel="1" treelevel="bind:depth" autosizerow="limitmin" selectbackground="#CCFF99"/> \r\n';
  6692. }else{
  6693. sBodyInfo += '<Cell displaytype="text" edittype="text" col="' + iCol + '" ' + styleinfo + ' text="bind:recrslt' + iCol +'" wordwrap="char" editacceptsdirectionkey="true"/> \r\n';
  6694. //sBodyInfo += '<Cell displaytype="text" edittype="text" col="' + iCol + '" ' + styleinfo + ' text="bind:recrslt' + iCol +' combodatacol="cboname' + iCol +'" wordwrap="char"/> \r\n';
  6695. }
  6696. }
  6697. sColumnInfo = '<Columns> \r\n' + sColumnInfo + '</Columns> \r\n' ;
  6698. sRowInfo = '<Rows> \r\n' + sRowInfo + '</Rows> \r\n';
  6699. sHeadInfo = '<Band id="head"> \r\n' + sHeadInfo + '</Band> \r\n';
  6700. sBodyInfo = '<Band id="body"> \r\n' + sBodyInfo + '</Band> \r\n';
  6701. sFormatInfo = '<Formats> \r\n';
  6702. sFormatInfo += '<Format id="default"> \r\n';
  6703. sFormatInfo += sColumnInfo + sRowInfo + sHeadInfo + sBodyInfo;
  6704. sFormatInfo += '</Format> \r\n';
  6705. sFormatInfo += '</Formats>';
  6706. group4.grd_24hoursclincobsreclist.enableredraw = false;
  6707. group4.grd_24hoursclincobsreclist.formats = sFormatInfo;
  6708. //group4.grd_24hoursclincobsreclist.setFormatColProperty(0,"band","left");
  6709. group4.grd_24hoursclincobsreclist.redraw();
  6710. for(var iCol=23; iCol>=0; iCol--){
  6711. if(group4.grd_24hoursclincobsreclist.getCellProperty("head",iCol,"text") == group4.grd_24hoursclincobsreclist.getCellProperty("head",iCol+1,"text"))
  6712. {
  6713. group4.grd_24hoursclincobsreclist.mergeContentsCell("head", 0, iCol, 0, iCol+1, iCol, false);
  6714. }
  6715. }
  6716. //for(var iCol=24; iCol>=0; iCol--){
  6717. // if(iCol > 0)
  6718. // {
  6719. // //var displayexpr = "text";//"expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  6720. // var displayexpr = "expr:coltype" + iCol+ "== 'combo'?'combo':'text'";
  6721. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"displaytype", displayexpr);
  6722. //
  6723. // var editexpr = "expr:readonly"+iCol+" == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':edittype" + iCol + " == 'text'?'text':'combo'";
  6724. // //var editexpr = "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(edittype" + iCol + ")?edittype" + iCol + ":'combo'";
  6725. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", editexpr);
  6726. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"edittype", "expr:readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12')))?'none':!utlf_isNull(getColumn(currow,'edittype" + iCol + "')?getColumn(currow,'edittype" + iCol + "':'combo'");
  6727. //
  6728. // if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sDayStndTm ) sDutyTMColInfo1 = iCol;
  6729. // if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sEvenStndTm ) sDutyTMColInfo2 = iCol;
  6730. // if( sHeader[3][iCol]+sHeader[4][iCol]+"00" == sNightStndTm ) sDutyTMColInfo3 = iCol;
  6731. //
  6732. //
  6733. // var colcount = group4.grd_24hoursclincobsreclist.getCellCount("Head");
  6734. // colcount = colcount - 26;
  6735. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sDayStndTm.substr(0, 2) + "시")
  6736. // {
  6737. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  6738. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  6739. // }
  6740. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sEvenStndTm.substr(0, 2) + "시")
  6741. // {
  6742. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  6743. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  6744. // }
  6745. // if(group4.grd_24hoursclincobsreclist.getCellValue(-1, iCol) == sNightStndTm.substr(0, 2) + "시")
  6746. // {
  6747. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol-1,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca");
  6748. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  6749. // }
  6750. //
  6751. // if(sDutyTMColInfo1 == iCol || sDutyTMColInfo2 == iCol || sDutyTMColInfo3 == iCol)
  6752. // {
  6753. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol-1,"line","0 none, 2 solid red, 1 solid #B0B0B0, 1 solid #B0B0B0");
  6754. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount,"line","1 solid #92bcca , 2 solid red, 1 solid #92bcca , 1 solid #92bcca ");
  6755. // group4.grd_24hoursclincobsreclist.setCellProperty("Head",iCol + colcount + 1,"line","1 solid #92bcca , 1 solid #92bcca , 1 solid #92bcca , 2 solid red");
  6756. // } else {
  6757. // group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol-1,"line","expr:depth == 1 ? '0 none, 0 none, 1 solid #B0B0B0, 1 solid #B0B0B0' : ''");
  6758. // }
  6759. // }
  6760. //
  6761. // //현재시간 색 표시
  6762. // if(iCol > 0)
  6763. // {
  6764. // if(sCurrentTMColInfo == 0)
  6765. // {
  6766. //
  6767. // if(utlf_getDateTime(sCurDT,"기본").substr(0,12) <= (sHeader[1][iCol]+ sHeader[3][iCol]+sHeader[4][iCol])){
  6768. // if(iCol == 1){
  6769. //
  6770. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background", "#FFEFFE");
  6771. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background2", "#FFEFFE");
  6772. // sCurrentTMColInfo = iCol;
  6773. // nowTimeCol = iCol;
  6774. // bolFromDate = true;
  6775. // }else{
  6776. // if(utlf_getDateTime(sCurDT,"기본").substr(0,12) > (sHeader[1][iCol-1]+ sHeader[3][iCol-1]+sHeader[4][iCol-1])){
  6777. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background", "#FFEFFE"); //연분홍색
  6778. // //group4.grd_24hoursclincobsreclist.setCellProperty("Body",iCol,"background2", "#FFEFFE");
  6779. // sCurrentTMColInfo = iCol;
  6780. // nowTimeCol = iCol;
  6781. // bolFromDate = true;
  6782. // }
  6783. // }
  6784. // }
  6785. // }
  6786. // }
  6787. //}
  6788. //grdf_setToolTipBind(group4.grd_24hoursclincobsreclist);
  6789. group4.grd_24hoursclincobsreclist.enableredraw = true;
  6790. group4.grd_24hoursclincobsreclist.redraw();
  6791. break;
  6792. }
  6793. }
  6794. function cf_TRMNR00903(sSvcId, nErrorCode, sErrorMsg) {
  6795. if(nErrorCode < 0) return;
  6796. sDayCountInfo = utlf_transNullToEmpty(ds_cond.getColumn(0,"daycountinfo")).split(" ");
  6797. for(var i=1; i<=24; i++){
  6798. sHeader[2][i] = "";
  6799. if(sHdayUseYn == "Y"){
  6800. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6801. sHeader[2][i] += "HD:"+ utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"hd"));
  6802. }
  6803. if(sPodUseYn == "Y"){
  6804. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6805. sHeader[2][i] += "POD:"+ utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"pod"));
  6806. }
  6807. if(sIcuDayUseYn == "Y"){
  6808. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6809. sHeader[2][i] += "ICU:"+ utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"icu"));
  6810. }
  6811. if(sAntiDayUseYn == "Y"){
  6812. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6813. sHeader[2][i] += "D:"+ utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"d"));
  6814. }
  6815. if(sBmtUseYn == "Y"){
  6816. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6817. sHeader[2][i] += "BMT:"+utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"bmt"));
  6818. }
  6819. if(sCpDayUseYn == "Y"){
  6820. if(!utlf_isNull(sHeader[2][i])) sHeader[2][i] += "/";
  6821. sHeader[2][i] += "CP:"+utlf_transNullToEmpty(ds_daycountinfo.lookup("recdd",sHeader[1][i],"cp"));
  6822. }
  6823. }
  6824. }
  6825. /********************************************************************************
  6826. * 설 명 : 환자정보 중증도 apache had 등의 caption 위치 세팅 함수
  6827. * argument :
  6828. ********************************************************************************/
  6829. function fControlPatInfo(){
  6830. //sPatInfoViewCdnt = 35; //처음 caption 위치 설정값
  6831. sPatInfoViewCdnt = 5;
  6832. var sCharacterSize = 11;
  6833. /////////////////////////////
  6834. // sSeriousYseYn = "N";
  6835. // sApchUseYn = "N";
  6836. // sHdayUseYn = "N";
  6837. // sIcuDayUseYn = "N";
  6838. // sOpddUseYn = "N";
  6839. // sPodUseYn = "N";
  6840. // sCpDayUseYn = "N";
  6841. // sBmtUseYn = "N";
  6842. // sAntiDayUseYn = "N";
  6843. // //sHeightUseYn
  6844. // //sWeightUseYn
  6845. // sBloodUseYn = "N";
  6846. // sChngRoomUseYn = "N";k
  6847. // sBrthddUseYn = "N";
  6848. // sFamilyMeetUseYn = "N";
  6849. /////////////////////////////
  6850. if(sSeriousYseYn == "Y"){
  6851. group1.grp_patinfolist.cap_serious.visible = true;
  6852. group1.grp_patinfolist.cap_seriousvalue1.visible = true;
  6853. group1.grp_patinfolist.cap_seriousvalue2.visible = true;
  6854. group1.grp_patinfolist.cap_seriousvalue3.visible = true;
  6855. // group1.grp_patinfolist.cap_serious.position.x = sPatInfoViewCdnt;
  6856. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_serious.position.width);
  6857. //
  6858. // group1.grp_patinfolist.cap_seriousvalue3.position.x = sPatInfoViewCdnt;
  6859. // group1.grp_patinfolist.cap_seriousvalue3.position.width = String(group1.grp_patinfolist.cap_seriousvalue3.text.length * sCharacterSize);
  6860. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue3.position.width) +5 ;
  6861. //
  6862. // group1.grp_patinfolist.cap_seriousvalue2.position.x = sPatInfoViewCdnt;
  6863. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue2.position.width);
  6864. //
  6865. // group1.grp_patinfolist.cap_seriousvalue1.position.x = sPatInfoViewCdnt;
  6866. // group1.grp_patinfolist.cap_seriousvalue1.position.width = String(group1.grp_patinfolist.cap_seriousvalue1.text.length * sCharacterSize);
  6867. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue1.position.width);
  6868. ////////////////////////////////////
  6869. group1.grp_patinfolist.cap_serious.position.x = sPatInfoViewCdnt;
  6870. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_serious.position.width);
  6871. group1.grp_patinfolist.cap_seriousvalue1.position.x = sPatInfoViewCdnt;
  6872. group1.grp_patinfolist.cap_seriousvalue1.position.width = String(group1.grp_patinfolist.cap_seriousvalue1.text.length * sCharacterSize);
  6873. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue1.position.width);
  6874. group1.grp_patinfolist.cap_seriousvalue2.position.x = sPatInfoViewCdnt;
  6875. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue2.position.width);
  6876. group1.grp_patinfolist.cap_seriousvalue3.position.x = sPatInfoViewCdnt;
  6877. group1.grp_patinfolist.cap_seriousvalue3.position.width = String(group1.grp_patinfolist.cap_seriousvalue3.text.length * sCharacterSize);
  6878. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_seriousvalue3.position.width) +5 ;
  6879. }
  6880. else
  6881. {
  6882. group1.grp_patinfolist.cap_serious.visible = false;
  6883. group1.grp_patinfolist.cap_seriousvalue1.visible = false;
  6884. group1.grp_patinfolist.cap_seriousvalue2.visible = false;
  6885. group1.grp_patinfolist.cap_seriousvalue3.visible = false;
  6886. }
  6887. if(sApchUseYn == "Y"){
  6888. // group1.grp_patinfolist.cap_apch.visible = true;
  6889. // group1.grp_patinfolist.cap_apchvalue.visible = true;
  6890. // group1.grp_patinfolist.cap_apch.position.x = String(sPatInfoViewCdnt);
  6891. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_apch.position.width);
  6892. //
  6893. // group1.grp_patinfolist.cap_apchvalue.position.x = String(sPatInfoViewCdnt);
  6894. // group1.grp_patinfolist.cap_apchvalue.position.width = String(group1.grp_patinfolist.cap_apchvalue.text.length * sCharacterSize);
  6895. // sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_apchvalue.position.width) + 5;
  6896. //김영애선생님 요청사항... 모든과에서 안쓴다고 함...
  6897. group1.grp_patinfolist.cap_apch.visible = false;
  6898. group1.grp_patinfolist.cap_apchvalue.visible = false;
  6899. }
  6900. else
  6901. {
  6902. group1.grp_patinfolist.cap_apch.visible = false;
  6903. group1.grp_patinfolist.cap_apchvalue.visible = false;
  6904. }
  6905. if(sHdayUseYn == "Y"){
  6906. sDayCountCnt++;
  6907. group1.grp_patinfolist.cap_hd.visible = true;
  6908. group1.grp_patinfolist.cap_hdvalue.visible = true;
  6909. group1.grp_patinfolist.cap_hd.position.x = String(sPatInfoViewCdnt);
  6910. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_hd.position.width);
  6911. group1.grp_patinfolist.cap_hdvalue.position.x = String(sPatInfoViewCdnt);
  6912. group1.grp_patinfolist.cap_hdvalue.position.width = String(group1.grp_patinfolist.cap_hdvalue.text.length * sCharacterSize);
  6913. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_hdvalue.position.width) + 5;
  6914. }
  6915. else
  6916. {
  6917. group1.grp_patinfolist.cap_hd.visible = false;
  6918. group1.grp_patinfolist.cap_hdvalue.visible = false;
  6919. }
  6920. //
  6921. if(sIcuDayUseYn == "Y"){
  6922. sDayCountCnt++;
  6923. group1.grp_patinfolist.cap_icu.visible = true;
  6924. group1.grp_patinfolist.cap_icuvalue.visible = true;
  6925. group1.grp_patinfolist.cap_icu.position.x = String(sPatInfoViewCdnt);
  6926. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_icu.position.width);
  6927. group1.grp_patinfolist.cap_icuvalue.position.x = String(sPatInfoViewCdnt);
  6928. group1.grp_patinfolist.cap_icuvalue.position.width = String(group1.grp_patinfolist.cap_icuvalue.text.length * (sCharacterSize-4));
  6929. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_icuvalue.position.width) + 5;
  6930. }
  6931. else
  6932. {
  6933. group1.grp_patinfolist.cap_icu.visible = false;
  6934. group1.grp_patinfolist.cap_icuvalue.visible = false;
  6935. }
  6936. if(sOpddUseYn == "Y"){
  6937. group1.grp_patinfolist.cap_opdd.visible = true;
  6938. group1.grp_patinfolist.cap_opddvalue.visible = true;
  6939. group1.grp_patinfolist.cap_opdd.position.x = String(sPatInfoViewCdnt);
  6940. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_opdd.position.width);
  6941. group1.grp_patinfolist.cap_opddvalue.position.x = String(sPatInfoViewCdnt);
  6942. if(!utlf_isNull(group1.grp_patinfolist.cap_opddvalue.text))
  6943. {
  6944. group1.grp_patinfolist.cap_opddvalue.position.width = String(group1.grp_patinfolist.cap_opddvalue.text.length * sCharacterSize - 35);
  6945. }
  6946. else
  6947. {
  6948. group1.grp_patinfolist.cap_opddvalue.position.width = String(group1.grp_patinfolist.cap_opddvalue.text.length * sCharacterSize - 3);
  6949. }
  6950. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_opddvalue.position.width) + 5;
  6951. }
  6952. else
  6953. {
  6954. group1.grp_patinfolist.cap_opdd.visible = false;
  6955. group1.grp_patinfolist.cap_opddvalue.visible = false;
  6956. }
  6957. if(sPodUseYn == "Y"){
  6958. sDayCountCnt++;
  6959. group1.grp_patinfolist.cap_pod.visible = true;
  6960. group1.grp_patinfolist.cap_podvalue.visible = true;
  6961. group1.grp_patinfolist.cap_pod.position.x = String(sPatInfoViewCdnt);
  6962. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_pod.position.width);
  6963. group1.grp_patinfolist.cap_podvalue.position.x = String(sPatInfoViewCdnt);
  6964. if(!utlf_isNull(group1.grp_patinfolist.cap_podvalue.text))
  6965. {
  6966. group1.grp_patinfolist.cap_podvalue.position.width = String(group1.grp_patinfolist.cap_podvalue.text.length * sCharacterSize - 4);
  6967. }
  6968. else
  6969. {
  6970. group1.grp_patinfolist.cap_podvalue.position.width = String(group1.grp_patinfolist.cap_podvalue.text.length * sCharacterSize);
  6971. }
  6972. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_podvalue.position.width) + 5;
  6973. }
  6974. else
  6975. {
  6976. group1.grp_patinfolist.cap_pod.visible = false;
  6977. group1.grp_patinfolist.cap_podvalue.visible = false;
  6978. }
  6979. if(sCpDayUseYn == "Y"){
  6980. sDayCountCnt++;
  6981. group1.grp_patinfolist.cap_cp.visible = true;
  6982. group1.grp_patinfolist.cap_cpvalue.visible = true;
  6983. group1.grp_patinfolist.cap_cp.position.x = String(sPatInfoViewCdnt);
  6984. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_cp.position.width);
  6985. group1.grp_patinfolist.cap_cpvalue.position.x = String(sPatInfoViewCdnt);
  6986. group1.grp_patinfolist.cap_cpvalue.position.width = String(group1.grp_patinfolist.cap_cpvalue.text.length * sCharacterSize);
  6987. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_cpvalue.position.width) + 5;
  6988. }
  6989. else
  6990. {
  6991. group1.grp_patinfolist.cap_cp.visible = false;
  6992. group1.grp_patinfolist.cap_cpvalue.visible = false;
  6993. }
  6994. if(sBmtUseYn == "Y"){
  6995. sDayCountCnt++;
  6996. group1.grp_patinfolist.cap_bmt.visible = true;
  6997. group1.grp_patinfolist.cap_bmtvalue.visible = true;
  6998. group1.grp_patinfolist.cap_bmt.position.x = String(sPatInfoViewCdnt);
  6999. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_bmt.position.width);
  7000. group1.grp_patinfolist.cap_bmtvalue.position.x = String(sPatInfoViewCdnt);
  7001. group1.grp_patinfolist.cap_bmtvalue.position.width = String(group1.grp_patinfolist.cap_bmtvalue.text.length * 7);
  7002. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_bmtvalue.position.width) + 5;
  7003. }
  7004. else
  7005. {
  7006. group1.grp_patinfolist.cap_bmt.visible = false;
  7007. group1.grp_patinfolist.cap_bmtvalue.visible = false;
  7008. }
  7009. if(sAntiDayUseYn == "Y"){
  7010. sDayCountCnt++;
  7011. group1.grp_patinfolist.cap_d.visible = true;
  7012. group1.grp_patinfolist.cap_dvalue.visible = true;
  7013. group1.grp_patinfolist.cap_d.position.x = String(sPatInfoViewCdnt);
  7014. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_d.position.width);
  7015. group1.grp_patinfolist.cap_dvalue.position.x = String(sPatInfoViewCdnt);
  7016. group1.grp_patinfolist.cap_dvalue.position.width = String(group1.grp_patinfolist.cap_dvalue.text.length * sCharacterSize);
  7017. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_dvalue.position.width) + 5;
  7018. }
  7019. else
  7020. {
  7021. group1.grp_patinfolist.cap_d.visible = false;
  7022. group1.grp_patinfolist.cap_dvalue.visible = false;
  7023. }
  7024. if(sHeightUseYn == "Y"){
  7025. group1.grp_patinfolist.cap_height.visible = true;
  7026. group1.grp_patinfolist.cap_heightvalue.visible = true;
  7027. group1.grp_patinfolist.cap_height.position.x = String(sPatInfoViewCdnt);
  7028. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_height.position.width);
  7029. group1.grp_patinfolist.cap_heightvalue.position.x = String(sPatInfoViewCdnt);
  7030. group1.grp_patinfolist.cap_heightvalue.position.width = String(group1.grp_patinfolist.cap_heightvalue.text.length * (sCharacterSize-2));
  7031. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_heightvalue.position.width) + 5;
  7032. }
  7033. else
  7034. {
  7035. group1.grp_patinfolist.cap_height.visible = false;
  7036. group1.grp_patinfolist.cap_heightvalue.visible = false;
  7037. }
  7038. if(sWeightUseYn == "Y"){
  7039. group1.grp_patinfolist.cap_weight.visible = true;
  7040. group1.grp_patinfolist.cap_weightvalue.visible = true;
  7041. group1.grp_patinfolist.cap_weight.position.x = String(sPatInfoViewCdnt);
  7042. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_weight.position.width);
  7043. group1.grp_patinfolist.cap_weightvalue.position.x = String(sPatInfoViewCdnt);
  7044. group1.grp_patinfolist.cap_weightvalue.position.width = String(group1.grp_patinfolist.cap_weightvalue.text.length * (sCharacterSize-3));
  7045. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_weightvalue.position.width) + 5;
  7046. }
  7047. else
  7048. {
  7049. group1.grp_patinfolist.cap_weight.visible = false;
  7050. group1.grp_patinfolist.cap_weightvalue.visible = false;
  7051. }
  7052. if(sBloodUseYn == "Y"){
  7053. group1.grp_patinfolist.cap_blood.visible = true;
  7054. group1.grp_patinfolist.cap_bloodvalue.visible = true;
  7055. group1.grp_patinfolist.cap_blood.position.x = String(sPatInfoViewCdnt);
  7056. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_blood.position.width);
  7057. group1.grp_patinfolist.cap_bloodvalue.position.x = String(sPatInfoViewCdnt);
  7058. group1.grp_patinfolist.cap_bloodvalue.position.width = String(group1.grp_patinfolist.cap_bloodvalue.text.length * sCharacterSize);
  7059. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_bloodvalue.position.width) + 5;
  7060. }
  7061. else
  7062. {
  7063. group1.grp_patinfolist.cap_blood.visible = false;
  7064. group1.grp_patinfolist.cap_bloodvalue.visible = false;
  7065. }
  7066. if(sChngRoomUseYn == "Y"){
  7067. group1.grp_patinfolist.cap_chngroom.visible = true;
  7068. group1.grp_patinfolist.cap_chngroomvalue.visible = true;
  7069. group1.grp_patinfolist.cap_chngroom.position.x = String(sPatInfoViewCdnt);
  7070. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_chngroom.position.width);
  7071. group1.grp_patinfolist.cap_chngroomvalue.position.x = String(sPatInfoViewCdnt);
  7072. group1.grp_patinfolist.cap_chngroomvalue.position.width = String(group1.grp_patinfolist.cap_chngroomvalue.text.length * sCharacterSize);
  7073. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_chngroomvalue.position.width) + 5;
  7074. }
  7075. else
  7076. {
  7077. group1.grp_patinfolist.cap_chngroom.visible = false;
  7078. group1.grp_patinfolist.cap_chngroomvalue.visible = false;
  7079. }
  7080. if(sBrthddUseYn == "Y"){
  7081. group1.grp_patinfolist.cap_brthdd.visible = true;
  7082. group1.grp_patinfolist.cap_brthddvalue.visible = true;
  7083. group1.grp_patinfolist.cap_brthdd.position.x = String(sPatInfoViewCdnt);
  7084. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_brthdd.position.width);
  7085. group1.grp_patinfolist.cap_brthddvalue.position.x = String(sPatInfoViewCdnt);
  7086. group1.grp_patinfolist.cap_brthddvalue.position.width = String(group1.grp_patinfolist.cap_brthddvalue.text.length * sCharacterSize);
  7087. sPatInfoViewCdnt += parseInt(group1.grp_patinfolist.cap_brthddvalue.position.width) + 5;
  7088. }
  7089. else
  7090. {
  7091. group1.grp_patinfolist.cap_brthdd.visible = false;
  7092. group1.grp_patinfolist.cap_brthddvalue.visible = false;
  7093. }
  7094. if(sFamilyMeetUseYn == "Y"){
  7095. group1.grp_meetinfo.cap_familymeetam.visible = true;
  7096. group1.grp_meetinfo.cap_familymeetamvalue.visible = true;
  7097. group1.grp_meetinfo.cap_familymeetpm.visible = true;
  7098. group1.grp_meetinfo.cap_familymeetpmvalue.visible = true;
  7099. }
  7100. else
  7101. {
  7102. group1.grp_meetinfo.cap_familymeetam.visible = false;
  7103. group1.grp_meetinfo.cap_familymeetamvalue.visible = false;
  7104. group1.grp_meetinfo.cap_familymeetpm.visible = false;
  7105. group1.grp_meetinfo.cap_familymeetpmvalue.visible = false;
  7106. }
  7107. // group1.grp_patinfolist.position.width = 1270;
  7108. // group1.grp_patinfolist.position.left = 0;
  7109. //
  7110. // //환자 기본 정보 조회 화면 위치 설정
  7111. // if(group1.grp_patinfolist.position.width - sPatInfoViewCdnt >= 300 ){
  7112. // group1.grp_patinfolist.position.left = 70;
  7113. // group1.grp_patinfolist.position.width = group1.grp_patinfolist.position.width - 70;
  7114. // }else{
  7115. //
  7116. // // group1.grp_patinfolist.position.left = group1.grp_patinfolist.position.width - sPatInfoViewCdnt;
  7117. // // group1.grp_patinfolist.position.width = sPatInfoViewCdnt;
  7118. // }
  7119. }
  7120. /**
  7121. * @group :
  7122. * @ver : 2009.12.15
  7123. * @by : 양천덕
  7124. * @---------------------------------------------------
  7125. * @type : function
  7126. * @access : public
  7127. * @desc : 셀 선택시 합계 계산
  7128. * @param :
  7129. * @return :
  7130. * @---------------------------------------------------
  7131. */
  7132. function fCalcDataSmmy(pFlag){
  7133. var sDataSum = 0;
  7134. var sStartDt = "";
  7135. var sEndDt = "";
  7136. switch(pFlag){
  7137. case "24hours" :
  7138. //var sCells = group4.grd_24hoursclincobsreclist.selectedCells;
  7139. var sRows = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  7140. var sCols = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  7141. for(var irow = 0 ; irow < sRows.length;irow++)
  7142. {
  7143. for(var i = 0 ; i < sCols.length ; i ++){
  7144. var col = sCols[i];
  7145. var row = sRows[irow];
  7146. var subtotal = 0;
  7147. if(//grd_24hoursclincobsreclist.cellComboNodeset(row, col) == "/root/temp/attrinfo/attrlist" &&
  7148. //grd_24hoursclincobsreclist.valueMatrix(row, grd_24hoursclincobsreclist.colRef("totalyn")) == "Y" &&
  7149. (ds_grd_24hoursclincobsreclist.getColumn(row,"recflag") == "B" ||
  7150. ds_grd_24hoursclincobsreclist.getColumn(row,"recflag") == "C" ||
  7151. ds_grd_24hoursclincobsreclist.getColumn(row,"recflag")== "T" )){
  7152. subtotal = group4.grd_24hoursclincobsreclist.getCellValue( row, col );
  7153. }
  7154. if( !utlf_isNull(subtotal) && fIsNumber(subtotal) == true){
  7155. sDataSum += Number(subtotal) ;
  7156. }
  7157. if( utlf_isNull(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];
  7158. if( utlf_isNull(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];
  7159. }
  7160. }
  7161. if( sDataSum == 0 || utlf_isNull(sDataSum)){
  7162. ds_cond_detlrecinfo.setColumn(0,"subtotal", "");
  7163. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", "");
  7164. }else{
  7165. ds_cond_detlrecinfo.setColumn(0,"subtotal", sDataSum);
  7166. ds_cond_detlrecinfo.setColumn(0,"subtotalarray", sStartDt + "~" + sEndDt);
  7167. }
  7168. break;
  7169. }
  7170. }
  7171. /**
  7172. * @group :
  7173. * @ver : 2010.07.19
  7174. * @by : 양천덕
  7175. * @---------------------------------------------------
  7176. * @type : function
  7177. * @access : public
  7178. * @desc :
  7179. * @param : 환자 면회 정보 입력 / 조회 Popup
  7180. * @return :
  7181. * @---------------------------------------------------
  7182. */
  7183. function fPopupPatMeetRec(){
  7184. var sRecDD = grp_srchbaselist.ipt_24hoursrecdd.value;
  7185. var sViewFlag = "01";
  7186. var sParamInfo = "";
  7187. frmf_setParameter("SPMNR10800_Param", String(sRecDD).substr(0, 6)+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▦"+sRecDD+"▦"+sPatNm+"▩");
  7188. frmf_modal("SPMNR10800","SPMNR10800", "","", system.cursorx, system.cursory,"","","","","","","M");
  7189. frmf_clearParameter("SPMNR10800_Param");
  7190. dsf_createDsRow("ds_send"
  7191. , [{col: "pid", val: sPid}
  7192. ,{col: "indd", val: sIndd}
  7193. ,{col: "cretno", val: sCretNo}
  7194. ,{col: "instcd", val: sInstcd}
  7195. ,{col: "ioflag", val: sIOFlag}
  7196. ,{col: "dayinfo", val: grp_srchbaselist.ipt_24hoursrecdd.value}
  7197. ]);
  7198. var oParam = {};
  7199. oParam.id = "TRMNR10102";
  7200. oParam.service = "flowchartapp.FlowChartRecMngt";
  7201. oParam.method = "reqGetDayCountList";
  7202. oParam.inds = "req=ds_send";
  7203. oParam.outds = "ds_data_patdetllist=patdetllist";
  7204. oParam.async = false;
  7205. //oParam.callback = "cf_TRMNR10102";
  7206. tranf_submit(oParam);
  7207. var stropdd = "";
  7208. if(!utlf_isNull(ds_data_patdetllist.getColumn(0, "opdd")))
  7209. {
  7210. stropdd = ds_data_patdetllist.getColumn(0, "opdd");
  7211. stropdd = stropdd.substr(0, 4) + "-" + stropdd.substr(4, 2) + "-" + stropdd.substr(6, 2);
  7212. group1.grp_patinfolist.cap_opddvalue.text = stropdd;
  7213. }
  7214. fControlPatInfo();
  7215. }
  7216. /********************************************************************************
  7217. * 설 명 : 그리드 행추가 함수
  7218. * argument :
  7219. ********************************************************************************/
  7220. function fMakeGridNode(psetbackcolor,psetforecolor,pFlag, pAddRow, pItemnm, pRecFlag, pDepth, pLnkBizCd, pStyle, pColor, pReadOnly, pCareRecSeqNo, pTotalIdx, pPathcd2, pCheckFlag, pSeq, pItemSeqNo){
  7221. switch(pFlag){
  7222. case "24hours" :
  7223. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "itemnm", pItemnm);
  7224. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt1", "");
  7225. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt2", "");
  7226. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt3", "");
  7227. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt4", "");
  7228. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt5", "");
  7229. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt6", "");
  7230. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt7", "");
  7231. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt8", "");
  7232. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt9", "");
  7233. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt10", "");
  7234. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt11", "");
  7235. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt12", "");
  7236. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt13", "");
  7237. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt14", "");
  7238. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt15", "");
  7239. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt16", "");
  7240. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt17", "");
  7241. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt18", "");
  7242. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt19", "");
  7243. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt20", "");
  7244. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt21", "");
  7245. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt22", "");
  7246. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt23", "");
  7247. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt24", "");
  7248. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recflag", pRecFlag);
  7249. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "attrcd", "");
  7250. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "itemcd", "");
  7251. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "depth", pDepth);
  7252. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recfromdt", "");
  7253. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "reccharflag", "");
  7254. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "rectodt", "");
  7255. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "supcd", "");
  7256. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "carerecseqno", "");
  7257. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "leftaxis", "");
  7258. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "graphappyn", "");
  7259. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "color", pColor);
  7260. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "totalyn", "");
  7261. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "totalnm", "");
  7262. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "lnkbizcd", pLnkBizCd);
  7263. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "style", pStyle);
  7264. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "subtotalyn", "");
  7265. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "subtotalnm", "");
  7266. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "runtotalyn", "");
  7267. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "runtotalnm", "");
  7268. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "fluidstat", "");
  7269. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "readonlyyn", pReadOnly);
  7270. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "lnkcarerecseqno", pCareRecSeqNo);
  7271. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "totalidx", pTotalIdx);
  7272. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recfluidunit", "");
  7273. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "pathcd2", pPathcd2);
  7274. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "sort_suprecflag", pCheckFlag);
  7275. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "seq", pSeq);
  7276. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "itemseqno", "");
  7277. if(psetbackcolor == "Y")
  7278. {
  7279. for(i=0;i<=24;i++)
  7280. {
  7281. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow,"backcolor" + i, pColor);
  7282. }
  7283. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow,"fonttype0", "돋움,9,bold");
  7284. }
  7285. break;
  7286. case "24hours_Init" :
  7287. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt1", "");
  7288. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt2", "");
  7289. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt3", "");
  7290. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt4", "");
  7291. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt5", "");
  7292. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt6", "");
  7293. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt7", "");
  7294. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt8", "");
  7295. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt9", "");
  7296. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt10", "");
  7297. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt11", "");
  7298. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt12", "");
  7299. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt13", "");
  7300. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt14", "");
  7301. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt15", "");
  7302. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt16", "");
  7303. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt17", "");
  7304. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt18", "");
  7305. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt19", "");
  7306. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt20", "");
  7307. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt21", "");
  7308. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt22", "");
  7309. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt23", "");
  7310. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "recrslt24", "");
  7311. lf_setDsValue(ds_grd_24hoursclincobsreclist, pAddRow, "fluidstat", "");
  7312. break;
  7313. }
  7314. }
  7315. /********************************************************************************
  7316. * 설 명 : Fluid 정보 setting 함수
  7317. * argument :
  7318. ********************************************************************************/
  7319. function fSettingFluidInfo(pFlag, pStat, pRealFluidRow, pGraphRow, pIndex){
  7320. if(pRealFluidRow < 1 || pGraphRow < 1) return;
  7321. var xRowGraphPath = "";
  7322. if( pFlag == "I" ){
  7323. xRowGraphPath = ds_data_instrmtlist;
  7324. }else{
  7325. xRowGraphPath = ds_data_fluidlist;
  7326. }
  7327. var sFluidCareRecSeqNo = utlf_transNullToEmpty(xRowGraphPath.lookup("carerecseqno",pIndex, "carerecseqno" ));
  7328. var sFluidRecDt = utlf_transNullToEmpty(xRowGraphPath.lookup("carerecseqno",pIndex, "recdt" ));
  7329. var sFluidRslt = utlf_transNullToEmpty(xRowGraphPath.lookup("carerecseqno",pIndex, "recrslt" ));
  7330. var sFluidStat = utlf_transNullToEmpty(xRowGraphPath.lookup("carerecseqno",pIndex, "fluidstat" ));
  7331. var sFluidEtcInfo = utlf_transNullToEmpty(xRowGraphPath.lookup("carerecseqno",pIndex, "fluidetcinfo" ));
  7332. if( utlf_isNull(sFluidCareRecSeqNo)) sFluidCareRecSeqNo = pIndex;
  7333. var sFluidRsltArray = new Array();
  7334. var sFluidStatArray = new Array();
  7335. var sFluidEtcInfoArray = new Array();
  7336. var sFluidRecDtArray = new Array();
  7337. sFluidRsltArray = sFluidRslt.split("^");
  7338. sFluidStatArray = sFluidStat.split("^");
  7339. sFluidEtcInfoArray = sFluidEtcInfo.split("^");
  7340. sFluidRecDtArray = sFluidRecDt.split("^");
  7341. var sFluidStatTmpInfo = ""; //Fluid 유지임시정보(시간정보)
  7342. var sFluidStartTm = "";
  7343. var sFluidChngTm = "";
  7344. var sFluidEndTm = "";
  7345. var sStayRsltValue = ""; //Fluid 결과값 유지 정보
  7346. var sStayEtcInfoValue = ""; //Fluid 투여속도 유지 정보
  7347. var sFluidStayFromdt = "";
  7348. var sFluidStayTodt = "";
  7349. var sFluidStayRslt = "";
  7350. var sFluidStayFlag = "";
  7351. var sFluidRunSumCalcValue = 0;
  7352. var sFluidInitStayRslt = "";
  7353. var sFluidInitStayEtcInfo = "";
  7354. var sFluidIndexValue = "";
  7355. var strEXPRCMS = "";
  7356. if(pFlag == "F"){
  7357. //Fluid 합계 배열 생성 부분
  7358. for( var i=0 ; i < sFluidSumInfo.length ; i++ ){
  7359. if( sFluidSumInfo[i][0] == sFluidCareRecSeqNo ){
  7360. sFluidBfSumInfo[0] = sFluidCareRecSeqNo;
  7361. sFluidIndexValue = i;
  7362. }
  7363. }
  7364. if( fIsNumber(sFluidIndexValue) == false ){
  7365. sFluidIndexValue = sFluidSumInfo.length;
  7366. sFluidSumInfo[sFluidIndexValue] = new Array;
  7367. sFluidSumInfo[sFluidIndexValue][0] = sFluidCareRecSeqNo;
  7368. }
  7369. for( var iCol=1; iCol<= 24; iCol++ ){
  7370. sFluidBfSumInfo[iCol] = 0;
  7371. if( fIsNumber(sFluidSumInfo[sFluidIndexValue][iCol]) == true ){
  7372. sFluidBfSumInfo[iCol] = sFluidSumInfo[sFluidIndexValue][iCol]; //이전 합계 정보 저장
  7373. }
  7374. sFluidSumInfo[sFluidIndexValue][iCol] = 0; //합계 배열 초기화
  7375. sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
  7376. sAfterColDate = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00"; //다음 Col의 일시 정보
  7377. for( var i = 0 ; i < sFluidRsltArray.length ; i ++ ){
  7378. if( sFluidStatArray[i] == "S" ){
  7379. if( sFluidRecDtArray[i] < sColDate || ( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate )){
  7380. if( utlf_isSearchString(sFluidStatTmpInfo, sColDate) == false ){
  7381. sFluidStatTmpInfo += sColDate+" ";
  7382. }
  7383. sStayRsltValue = sFluidRsltArray[i];
  7384. sStayEtcInfoValue = sFluidEtcInfoArray[i];
  7385. sFluidStartTm = sFluidRecDtArray[i];
  7386. sFluidEndTm = "-";
  7387. sFluidChngTm = "-";
  7388. }
  7389. }else if( sFluidStatArray[i] == "C" ){
  7390. sFluidChngTm = sFluidRecDtArray[i];
  7391. }else if( sFluidStatArray[i] == "E" ){
  7392. if( sFluidEndTm == "-" ) sFluidEndTm = sFluidRecDtArray[i];
  7393. if( sFluidRecDtArray[i] < sColDate ){
  7394. sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
  7395. }
  7396. sStayRsltValue = "";
  7397. sStayEtcInfoValue = "";
  7398. sFluidEndTm = sFluidRecDtArray[i];
  7399. sFluidChngTm = "-";
  7400. }
  7401. //Graph & '단위' Row에 값 입력
  7402. if( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate ){
  7403. var sGraphRowValue = ds_grd_24hoursclincobsreclist.getColumn(pGraphRow,"recrslt"+iCol);
  7404. var sFluidRowValue = ds_grd_24hoursclincobsreclist.getColumn(pRealFluidRow,"recrslt"+iCol);
  7405. if( sFluidStatArray[i] == "S" ){
  7406. sFluidStayFromdt = sFluidRecDtArray[i];
  7407. sFluidStayRslt = sFluidRsltArray[i];
  7408. }else if( sFluidStatArray[i] == "C" ){
  7409. if( !utlf_isNull(sFluidStayFromdt) && !utlf_isNull(sFluidStayRslt) && sColDate < sNowDate ){
  7410. sFluidCalcFromdt = "";
  7411. if( sFluidStayFromdt < sColDate ){
  7412. sFluidCalcFromdt = sColDate;
  7413. }else{
  7414. sFluidCalcFromdt = sFluidStayFromdt;
  7415. }
  7416. sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sFluidRecDtArray[i], sFluidStayRslt, "+", "+");
  7417. sFluidStayFromdt = sFluidRecDtArray[i];
  7418. sFluidStayRslt = sFluidRsltArray[i];
  7419. }
  7420. }else if( sFluidStatArray[i] == "E" ){
  7421. sFluidCalcFromdt = "";
  7422. sFluidCalcTodt = "";
  7423. //시작 및 변경 시간 체크
  7424. if( sFluidStayFromdt < sColDate ){
  7425. sFluidCalcFromdt = sColDate;
  7426. }else{
  7427. sFluidCalcFromdt = sFluidStayFromdt;
  7428. }
  7429. //종료시간 체크
  7430. if( sFluidRecDtArray[i] < sNowDate){
  7431. sFluidCalcTodt = sFluidRecDtArray[i];
  7432. }else{
  7433. sFluidCalcTodt = sNowDate;
  7434. }
  7435. if( sFluidCalcFromdt < sFluidCalcTodt ){
  7436. sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sFluidCalcTodt, sFluidStayRslt, "+", "+");
  7437. }
  7438. sFluidStayFromdt = "";
  7439. sFluidStayRslt = "";
  7440. }
  7441. //Event 표시 여부에 따른 Fluid 표시 설정
  7442. if( sEventItemUseYn == "Y" ){
  7443. if( sFluidStatArray[i] == "C" ){
  7444. //Graph Row Setting
  7445. if( !utlf_isNull(sFluidEtcInfoArray[i]) && sStayEtcInfoValue != sFluidEtcInfoArray[i]){
  7446. if( !utlf_isNull(sGraphRowValue) ) sGraphRowValue += ", ";
  7447. sGraphRowValue += "(" + sStayEtcInfoValue + "→" + sFluidEtcInfoArray[i] + ")";
  7448. sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
  7449. sStayEtcInfoValue = sFluidEtcInfoArray[i];
  7450. }
  7451. //Fluid Row Setting
  7452. if( !utlf_isNull(sFluidRsltArray[i]) && sStayRsltValue != sFluidRsltArray[i]){
  7453. if( !utlf_isNull(sFluidRowValue) ) sFluidRowValue += ", ";
  7454. sFluidRowValue += sStayRsltValue + "→" + sFluidRsltArray[i];
  7455. sFluidRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
  7456. sStayRsltValue = sFluidRsltArray[i];
  7457. }
  7458. }else{
  7459. //Graph Row Setting
  7460. if( !utlf_isNull(sFluidStatArray[i]) ){
  7461. if( !utlf_isNull(sGraphRowValue)) sGraphRowValue += ", ";
  7462. sGraphRowValue += sFluidStatArray[i];
  7463. }
  7464. if( !utlf_isNull(sFluidEtcInfoArray[i]) ){
  7465. sGraphRowValue += "/("+sFluidEtcInfoArray[i]+")";
  7466. sStayEtcInfoValue = sFluidEtcInfoArray[i];
  7467. }
  7468. if( !utlf_isNull(sFluidRecDtArray[i]) ) sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
  7469. //Fluid Row Setting
  7470. if( !utlf_isNull(sFluidRsltArray[i]) ){
  7471. if( !utlf_isNull(sFluidRowValue) ) sFluidRowValue += ", ";
  7472. sFluidRowValue += sFluidRsltArray[i];
  7473. sStayRsltValue = sFluidRsltArray[i];
  7474. }
  7475. }
  7476. }else{
  7477. //Graph Row Setting
  7478. if( !utlf_isNull(sFluidStatArray[i]) ){
  7479. if( !utlf_isNull(sGraphRowValue) ) sGraphRowValue += ", ";
  7480. sGraphRowValue += sFluidStatArray[i];
  7481. }
  7482. if( !utlf_isNull(sFluidEtcInfoArray[i]) ){
  7483. sGraphRowValue += "/("+sFluidEtcInfoArray[i]+")";
  7484. }
  7485. if( !utlf_isNull(sFluidRecDtArray[i]) ) sGraphRowValue += "/"+sFluidRecDtArray[i].substr(10,2)+"'";
  7486. //Fluid Row Setting
  7487. if( !utlf_isNull(sFluidRsltArray[i]) ){
  7488. if( !utlf_isNull(sFluidRowValue)) sFluidRowValue += ", ";
  7489. sFluidRowValue += sFluidRsltArray[i];
  7490. }
  7491. }
  7492. if(!utlf_isNull(sFluidRowValue))
  7493. {
  7494. sFluidRowValue = sFluidRowValue.replace("undefined", "");
  7495. }
  7496. ds_grd_24hoursclincobsreclist.setColumn(pRealFluidRow,"recrslt"+iCol, sFluidRowValue );
  7497. ds_grd_24hoursclincobsreclist.setColumn(pGraphRow,"recrslt"+iCol, sGraphRowValue );
  7498. ds_grd_24hoursclincobsreclist.setColumn(pRealFluidRow,"recrslt"+iCol, sFluidRowValue );
  7499. ds_grd_24hoursclincobsreclist.setColumn(pGraphRow,"recrslt"+iCol, sGraphRowValue );
  7500. }else if( sFluidRecDtArray[i] < sColDate ){
  7501. if( sFluidStatArray[i] != "E" ){
  7502. if( sFluidStayFromdt <= sFluidRecDtArray[i] ){
  7503. if( !utlf_isNull(sFluidRsltArray[i])) sStayRsltValue = sFluidRsltArray[i];
  7504. if( !utlf_isNull(sFluidEtcInfoArray[i])) sStayEtcInfoValue = sFluidEtcInfoArray[i];
  7505. sFluidStayFromdt = sFluidRecDtArray[i];
  7506. sFluidStayRslt = sFluidRsltArray[i];
  7507. sFluidInitStayRslt = sFluidRsltArray[i];
  7508. sFluidInitStayEtcInfo = sFluidEtcInfoArray[i];
  7509. }
  7510. }else{
  7511. sStayRsltValue = "";
  7512. sFluidStayFromdt = "";
  7513. sFluidStayRslt = "";
  7514. }
  7515. }
  7516. }
  7517. //Fluid 합계 처리 부분
  7518. if( !utlf_isNull(sFluidStayRslt)){
  7519. if( utlf_isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
  7520. if( sFluidStayFromdt < sAfterColDate && sFluidStayFromdt < sNowDate ){
  7521. sFluidCalcFromdt = "";
  7522. if( sFluidStayFromdt < sColDate ){
  7523. sFluidCalcFromdt = sColDate;
  7524. }else{
  7525. sFluidCalcFromdt = sFluidStayFromdt;
  7526. }
  7527. if( sNowDate < sAfterColDate ){
  7528. if( sFluidCalcFromdt < sNowDate ) sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sNowDate, sFluidStayRslt, "+", "+");
  7529. }else{
  7530. if( sFluidCalcFromdt < sAfterColDate ) sFluidSumInfo[sFluidIndexValue][iCol] += fMakeFluidSumData(sFluidCalcFromdt, sAfterColDate, sFluidStayRslt, "+", "+");
  7531. }
  7532. }
  7533. }
  7534. }
  7535. sFluidSumInfo[sFluidIndexValue][iCol] = Math.round(sFluidSumInfo[sFluidIndexValue][iCol] * Math.pow(10, (-4)*(-1)-1)) / Math.pow(10, (-4)*(-1)-1);
  7536. //조회 시작시간에 정보가 없을 때 바로 전 데이터 표시
  7537. if( iCol == "1" && utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(pRealFluidRow,"recrslt"+iCol)) && utlf_isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
  7538. if( !utlf_isNull(sFluidInitStayRslt)) ds_grd_24hoursclincobsreclist.setColumn(pRealFluidRow,"recrslt"+iCol, sFluidInitStayRslt+"→" );
  7539. }
  7540. if( iCol == "1" && utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(pGraphRow,"recrslt"+iCol)) && utlf_isSearchString( sFluidStatTmpInfo, sColDate ) == true ){
  7541. if( !utlf_isNull(sFluidInitStayEtcInfo)) ds_grd_24hoursclincobsreclist.setColumn(pGraphRow,"recrslt"+iCol, sFluidInitStayEtcInfo+"→" );
  7542. }
  7543. }
  7544. }else{
  7545. for( var iCol=1; iCol<= 24; iCol++ ){
  7546. sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
  7547. sAfterColDate = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00"; //다음 Col의 일시 정보
  7548. for( var i = 0 ; i < sFluidStatArray.length ; i ++ ){
  7549. if( sFluidRsltArray[i] == "S" || sFluidRsltArray[i].substr(0,2) == "S/" ){
  7550. if( sFluidRecDtArray[i] < sColDate || ( sFluidRecDtArray[i] >= sColDate && sFluidRecDtArray[i] < sAfterColDate )){
  7551. if( isSearchString(sFluidStatTmpInfo, sColDate) == false ){
  7552. sFluidStatTmpInfo += sColDate+" ";
  7553. }
  7554. sStayRsltValue = sFluidRsltArray[i];
  7555. sFluidStartTm = sFluidRecDtArray[i];
  7556. sFluidEndTm = "-";
  7557. sFluidChngTm = "-";
  7558. }
  7559. }else if( sFluidRsltArray[i] == "C" || sFluidStatArray[i].substr(0,2) == "C/" ){
  7560. sFluidChngTm = sFluidRecDtArray[i];
  7561. }else if( sFluidRsltArray[i] == "E" || sFluidStatArray[i].substr(0,2) == "E/" ){
  7562. if( sFluidEndTm == "-" ) sFluidEndTm = sFluidRecDtArray[i];
  7563. if( sFluidRecDtArray[i] < sColDate ){
  7564. sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
  7565. }
  7566. sStayRsltValue = "";
  7567. sStayEtcInfoValue = "";
  7568. sFluidEndTm = sFluidRecDtArray[i];
  7569. sFluidChngTm = "-";
  7570. }
  7571. }
  7572. }
  7573. }
  7574. //Fluid 종료되지 않았을 경우 처리 로직
  7575. if( sFluidEndTm == "-" ){
  7576. if( sFluidChngTm != "-") sFluidStartTm = sFluidChngTm;
  7577. for( var iCol=1; iCol<= 24; iCol++ ){
  7578. sColDate = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00"; //현재 Col의 일시 정보
  7579. if( sFluidStartTm <= sNowDate ){
  7580. if( sNowDate < sColDate ){
  7581. sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
  7582. }
  7583. }else{
  7584. if( sFluidStartTm < sColDate ){
  7585. sFluidStatTmpInfo = sFluidStatTmpInfo.replace(sColDate+" ", "");
  7586. }
  7587. }
  7588. }
  7589. }
  7590. //Fluid Row Event 발생시 별도 처리 부분(합계값 변경)
  7591. if( pFlag == "F" ){
  7592. if( pStat == "Chng" ){
  7593. for(var iRow = 0 ; iRow < ds_grd_24hoursclincobsreclist.rowcount ; iRow++){
  7594. sSrchStrValue = "/"+ sFluidCareRecSeqNo +"/";
  7595. for( var iCol=1; iCol<= 24; iCol++ ){
  7596. sTotalidx = ds_grd_24hoursclincobsreclist.getColumn(iRow, "totalidx");
  7597. sRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recflag");
  7598. if( !utlf_isNull(sTotalidx) && !utlf_isNull(sSrchStrValue) && utlf_isSearchString(sTotalidx, sSrchStrValue) == true ){
  7599. sTotalValue = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recrslt"+iCol);
  7600. sFluidSumCalcValue = eval(sFluidSumInfo[sFluidIndexValue][iCol]) - eval(sFluidBfSumInfo[iCol]);
  7601. sChngFluidSumCalcValue = "";
  7602. if( fIsNumber(sFluidSumCalcValue) == true && sFluidSumCalcValue != 0 ){
  7603. if( sRecFlag == "R"){
  7604. if( sDutyTMColInfo1+1 != iCol && sDutyTMColInfo2+1 != iCol && sDutyTMColInfo3+1 != iCol ){
  7605. sFluidRunSumCalcValue += eval(sFluidSumCalcValue);
  7606. }else{
  7607. sFluidRunSumCalcValue = sFluidSumCalcValue;
  7608. }
  7609. if( fIsNumber(sTotalValue) == true ){
  7610. sChngFluidSumCalcValue = eval(sTotalValue) + eval(sFluidRunSumCalcValue);
  7611. }else{
  7612. sChngFluidSumCalcValue = eval(sFluidRunSumCalcValue);
  7613. }
  7614. }else if( sRecFlag == "T" || sRecFlag == "S" ){
  7615. if( fIsNumber(sTotalValue) == true ){
  7616. sChngFluidSumCalcValue = eval(sTotalValue) + eval(sFluidSumCalcValue);
  7617. }else{
  7618. sChngFluidSumCalcValue = eval(sFluidSumCalcValue);
  7619. }
  7620. }
  7621. //합계값이 숫자값이고 0이 아닐때 계산 값 입력
  7622. if( fIsNumber(sChngFluidSumCalcValue) == true && sChngFluidSumCalcValue != 0 ){
  7623. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt"+iCol, sChngFluidSumCalcValue);
  7624. }else{
  7625. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recrslt"+iCol, "");
  7626. }
  7627. }
  7628. }
  7629. }
  7630. }
  7631. }
  7632. ds_grd_24hoursclincobsreclist.setColumn(pGraphRow,"readonlyyn", "Y");
  7633. }
  7634. ds_grd_24hoursclincobsreclist.setColumn(pGraphRow,"fluidstat", sFluidStatTmpInfo);
  7635. }
  7636. /**
  7637. * @group :
  7638. * @ver : 2009.12.15
  7639. * @by : 양천덕
  7640. * @---------------------------------------------------
  7641. * @type : function
  7642. * @access : public
  7643. * @desc :
  7644. * @param : 항목별 연계
  7645. * @return :
  7646. * @---------------------------------------------------
  7647. */
  7648. function fChkLnkBiz(pFlag){
  7649. var sLnkBizCd = "";
  7650. var sStyle = "";
  7651. var sCareRecSeqNo = "";
  7652. var sMessageSpec = "연동된 자료는 해당 기록지에서 직접 입력 및 수정하여야 합니다. ";
  7653. switch (pFlag){
  7654. case "24hours" :
  7655. sLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(ds_grd_24hoursclincobsreclist.rowposition,"lnkbizcd");
  7656. sStyle = ds_grd_24hoursclincobsreclist.getColumn(ds_grd_24hoursclincobsreclist.rowposition,"style");
  7657. sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(ds_grd_24hoursclincobsreclist.rowposition,"carerecseqno");
  7658. break;
  7659. // case "4days":
  7660. // sLnkBizCd = grd_4daysclincobsreclist.valueMatrix(grd_4daysclincobsreclist.row, grd_4daysclincobsreclist.colRef("lnkbizcd"));
  7661. // break;
  7662. // case "stnd":
  7663. // sLnkBizCd = grd_stndclincobsreclist.valueMatrix(grd_stndclincobsreclist.row, grd_stndclincobsreclist.colRef("lnkbizcd"));
  7664. // break;
  7665. // case "former":
  7666. // sLnkBizCd = grd_formersclincobsreclist.valueMatrix(grd_formersclincobsreclist.row, grd_formersclincobsreclist.colRef("lnkbizcd"));
  7667. // break;
  7668. }
  7669. switch (sLnkBizCd){
  7670. case "01" :
  7671. sysf_messageBox(sMessageSpec + "(경구입력)","I");
  7672. break;
  7673. case "02" :
  7674. sysf_messageBox(sMessageSpec + "(투약기록지)","I");
  7675. break;
  7676. case "03" :
  7677. sysf_messageBox(sMessageSpec + "(수혈간호기록지)","I");
  7678. break;
  7679. case "04" :
  7680. sysf_messageBox(sMessageSpec + "(혈당간호기록지)","I");
  7681. break;
  7682. case "05" :
  7683. sysf_messageBox(sMessageSpec + "(CAPD기록지)","I");
  7684. break;
  7685. case "06" :
  7686. sysf_messageBox(sMessageSpec + "(CRRT기록지)","I");
  7687. break;
  7688. case "06" :
  7689. sysf_messageBox(sMessageSpec + "(CPCR기록지)","I");
  7690. break;
  7691. case "12" :
  7692. var rtnmsg = "";
  7693. if( sStyle == "01" && !utlf_isNull(sCareRecSeqNo) && group4.grd_24hoursclincobsreclist.currentcol != group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm") ){
  7694. fPopupFluid();
  7695. }
  7696. break;
  7697. }
  7698. }
  7699. /**
  7700. * @group :
  7701. * @ver : 2009.12.15
  7702. * @by : 양천덕
  7703. * @---------------------------------------------------
  7704. * @type : function
  7705. * @access : public
  7706. * @desc : 셀의 서브컨트롤이 “input” 또는 “inputbutton”일 때 edit 상태로 들어가서 키보드 이벤트가 발생하기 시작하는 시점에서 발생
  7707. * @param :
  7708. * @return :
  7709. * @---------------------------------------------------
  7710. */
  7711. function fChangeGridEdit(pFlag,currow){
  7712. var iRow = 0;
  7713. switch(pFlag){
  7714. case "24hours" :
  7715. iRow = currow;
  7716. if(eval(ds_grd_24hoursclincobsreclist.getColumn(iRow,"depth")) >= 2 && !utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd")) && ds_grd_24hoursclincobsreclist.getColumn(iRow,"reccharflag") == "A"){
  7717. //event.preventDefault();
  7718. //group4.grd_24hoursclincobsreclist.enableevent = false;
  7719. }
  7720. break;
  7721. }
  7722. }
  7723. /**
  7724. * @group :
  7725. * @ver : 2009.12.15
  7726. * @by : 양천덕
  7727. * @---------------------------------------------------
  7728. * @type : function
  7729. * @access : public
  7730. * @desc : 셀 입력 완료 후 포커스를 받았을 경우 발생
  7731. * @param :
  7732. * @return :
  7733. * @---------------------------------------------------
  7734. */
  7735. function fEnterKeyGridCell(pFlag){
  7736. var iRow = 0;
  7737. var iCol = 0;
  7738. var iRecRow = 0;
  7739. var sRecFromDT = "";
  7740. var sRecToDT = "";
  7741. var sRecDT = "";
  7742. var sAttrCD = "";
  7743. switch(pFlag){
  7744. case "24hours" :
  7745. //iRecRow = grd_24hoursclincobsreclist.row - grd_24hoursclincobsreclist.fixedrows+1;
  7746. iRow = ds_grd_24hoursclincobsreclist.rowposition;
  7747. iCol = group4.grd_24hoursclincobsreclist.currentcol;
  7748. sRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"59";
  7749. sRecFromDT = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recfromdt");
  7750. sRecToDT = ds_grd_24hoursclincobsreclist.getColumn(iRow,"rectodt");
  7751. sAttrCD = ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd");
  7752. sReChartFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"reccharflag");
  7753. //alert("fEnterKeyGridCell" +" : " + iRow);
  7754. // 의사의 경우
  7755. //---------(20101204) 경북대
  7756. //추가
  7757. var ssflag = "";
  7758. if( sJobKindCD.substring(0, 2) == "03"){
  7759. ssflag = "Y";
  7760. }else{
  7761. ssflag = "N";
  7762. }
  7763. //원본:의사의 경우만
  7764. //if(sJobKindCD == "30"){
  7765. if(ssflag=="Y") {
  7766. //---------(20101204) 경북대
  7767. // grd_24hoursclincobsreclist.combo.button.visible = false;
  7768. // grd_24hoursclincobsreclist.isReadOnly(iRow,grd_24hoursclincobsreclist.fixedCols,iRow, grd_24hoursclincobsreclist.cols-1) = true;
  7769. for(var j =0;j<=24;j++)
  7770. {
  7771. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + j,"text");
  7772. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + j,"none");
  7773. }
  7774. return;
  7775. }
  7776. if(sReChartFlag =="A" && !utlf_isNull(sAttrCD)){
  7777. //grd_24hoursclincobsreclist.combo.button.visible = true;
  7778. //grd_24hoursclincobsreclist.cellComboNodeset(iRow,iCol) = sAttrListPath1+"[supcd='"+sAttrCD+"']";
  7779. //grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col)-20;
  7780. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"combo");
  7781. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"combo");
  7782. }else{
  7783. //grd_24hoursclincobsreclist.combo.button.visible = false;
  7784. //grd_24hoursclincobsreclist.combo.input.attribute("width") = grd_24hoursclincobsreclist.colWidth(grd_24hoursclincobsreclist.col);
  7785. ds_grd_24hoursclincobsreclist.setColumn(iRow,"coltype" + iCol,"text");
  7786. ds_grd_24hoursclincobsreclist.setColumn(iRow,"edittype" + iCol,"text");
  7787. group4.grd_24hoursclincobsreclist.showEditor(true);
  7788. }
  7789. break;
  7790. }
  7791. }
  7792. /**
  7793. * @group :
  7794. * @ver : 2010.07.30
  7795. * @by : 양천덕
  7796. * @---------------------------------------------------
  7797. * @type : function
  7798. * @access : public
  7799. * @desc :
  7800. * @param : 체중누적조회 화면 호출
  7801. * @return :
  7802. * @---------------------------------------------------
  7803. */
  7804. function fPopupWeightList(){
  7805. var sParamValue = "pid▦indd▦cretno▦wardcd▦recdd▩" ;
  7806. sParamValue += sPid + "▦"
  7807. + sIndd + "▦"
  7808. + sCretNo + "▦"
  7809. + "" + "▦"
  7810. + lf_getDsValue(ds_cond,0,"seardd") + "▩";
  7811. frmf_setParameter("SPMNR11000_Param", sParamValue);
  7812. frmf_open("SPMNR11000", "SPMNR11000","","","","","","","","","","","M");
  7813. //open("SPMNR11000", "1", event.clientX , event.clientY);
  7814. }
  7815. /**
  7816. * @group :
  7817. * @ver : 2010.01.26
  7818. * @by : 양천덕
  7819. * @---------------------------------------------------
  7820. * @type : function
  7821. * @access : public
  7822. * @desc :
  7823. * @param : 기타기록(면회정보, 출생일) 입력 Popup
  7824. * @return :
  7825. * @---------------------------------------------------
  7826. */
  7827. function fPopupEtcRec(pFlag){
  7828. var sRecDD = utlf_getCurrentDate();
  7829. var sViewFlag = pFlag;
  7830. var sParamInfo = "";
  7831. frmf_setParameter("SPMNR10300_Param", sRecDD+"▦"+sViewFlag+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sIOFlag+"▩");
  7832. frmf_modal("SPMNR10300","SPMNR10300","","","","","","","","","","","M");
  7833. frmf_clearParameter("SPMNR10300_Param");
  7834. dsf_createDsRow("ds_send"
  7835. , [{col: "pid", val: sPid}
  7836. ,{col: "indd", val: sIndd}
  7837. ,{col: "cretno", val: sCretNo}
  7838. ,{col: "instcd", val: sInstcd}
  7839. ,{col: "ioflag", val: sIOFlag}
  7840. ,{col: "dayinfo", val: grp_srchbaselist.ipt_24hoursrecdd.value}
  7841. ]);
  7842. var oParam = {};
  7843. oParam.id = "TRMNR10102";
  7844. oParam.service = "flowchartapp.FlowChartRecMngt";
  7845. oParam.method = "reqGetDayCountList";
  7846. oParam.inds = "req=ds_send";
  7847. oParam.outds = "ds_data_patdetllist=patdetllist";
  7848. oParam.async = false;
  7849. tranf_submit(oParam);
  7850. var stropdd = "";
  7851. if(!utlf_isNull(ds_data_patdetllist.getColumn(0, "opdd")))
  7852. {
  7853. stropdd = ds_data_patdetllist.getColumn(0, "opdd");
  7854. stropdd = stropdd.substr(0, 4) + "-" + stropdd.substr(4, 2) + "-" + stropdd.substr(6, 2);
  7855. group1.grp_patinfolist.cap_opddvalue.text = stropdd;
  7856. }
  7857. var brthddvalue = group1.grp_patinfolist.cap_brthddvalue.text;
  7858. if(!utlf_isNull(brthddvalue))
  7859. {
  7860. brthddvalue = brthddvalue.substr(0, 4) + "-" + brthddvalue.substr(4, 2) + "-" + brthddvalue.substr(6, 2);
  7861. group1.grp_patinfolist.cap_brthddvalue.text = brthddvalue;
  7862. }
  7863. fControlPatInfo();
  7864. }
  7865. /**
  7866. * @group :
  7867. * @ver : 2010.03.18
  7868. * @by : 양천덕
  7869. * @---------------------------------------------------
  7870. * @type : function
  7871. * @access : public
  7872. * @desc : 내환자세팅 Popup 호출
  7873. * @param :
  7874. * @return :
  7875. * @---------------------------------------------------
  7876. */
  7877. function fPopupMyPatSetting(){
  7878. frmf_setParameter("wardcd", sUserDeptCd);
  7879. frmf_setParameter("userid", sUserId );
  7880. frmf_setParameter("usernm", sUserNm);
  7881. frmf_modal("SMMNB00400","SMMNB00400" ,"" , "", "","","","","","","","","M");
  7882. //------------(20110209) 경북대
  7883. //내환자 조회
  7884. //fGetSettingPatientList("false");
  7885. //내환자 조회-임상관찰기록용
  7886. fGetSettingPatientList_type2();
  7887. //------------(20110209) 경북대
  7888. if( utlf_isNull(group1.grp_inpatinfo.cmb_patlist.value)){
  7889. if(ds_data_settingpatientlist.rowcount > 0){
  7890. fSetParam("SettingPat", 1);
  7891. }
  7892. }else{
  7893. group1.grp_inpatinfo.cmb_mypatlist.value = group1.grp_inpatinfo.cmb_patlist.value;
  7894. }
  7895. }
  7896. /**
  7897. * @group :
  7898. * @ver : 2010.01.26
  7899. * @by : 양천덕
  7900. * @---------------------------------------------------
  7901. * @type : function
  7902. * @access : public
  7903. * @desc :
  7904. * @param : Fluid기록 입력 화면 호출
  7905. * @return :
  7906. * @---------------------------------------------------
  7907. */
  7908. function fPopupFluid()
  7909. {
  7910. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  7911. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  7912. //해당 함수는 필요가 없으나 예외 처리로 넣어둠.
  7913. if( fChkSaveData() == false ) return;
  7914. var sSearchDataHeader = "carerecseqno▦fromdt▦todt▦pid▦indd▦cretno▦wardcd▦roomcd▦ioflag▦orddeptcd▦orddrid▦recfluidunit▩";
  7915. var sParamValue = "";
  7916. var iRow = ds_grd_24hoursclincobsreclist.rowposition;
  7917. var iCol = group4.grd_24hoursclincobsreclist.currentcol;
  7918. var iNodeRowValue = iRow;
  7919. var sCareRecSeqNo = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow, "carerecseqno");
  7920. var sBaseFromDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
  7921. var sBaseToDt = sHeader[1][iCol+1]+sHeader[3][iCol+1]+sHeader[4][iCol+1]+"00";
  7922. var sRecFluidUnit = lf_getDsValue(ds_grd_24hoursclincobsreclist,iRow, "recfluidunit");
  7923. var linetypet = "";
  7924. var linetyper = "";
  7925. var linetypeb = "";
  7926. var linetypel = "";
  7927. var linetypetotal = "";
  7928. var linetyperRed = "";
  7929. if(sRecFluidUnit == "undefined")
  7930. {
  7931. sRecFluidUnit = "";
  7932. }
  7933. sParamValue += sCareRecSeqNo +"▦"
  7934. + sBaseFromDt +"▦"
  7935. + sBaseToDt +"▦"
  7936. + sPid +"▦"
  7937. + sIndd +"▦"
  7938. + sCretNo +"▦"
  7939. + sWardCD +"▦"
  7940. + sRoomCD +"▦"
  7941. + sIOFlag +"▦"
  7942. + lf_getDsValue(ds_main_paminfo,0,"orddeptcd" ) +"▦"
  7943. + lf_getDsValue(ds_main_paminfo,0,"medispclid") +"▦"
  7944. + sRecFluidUnit +"▩";
  7945. frmf_setParameter("SPMNR10400_Param", sParamValue);
  7946. frmf_modal("SPMNR10400", "SPMNR10400", "","", "","", "","", "","", "","","M" );
  7947. //입력 및 정보 조회 Parameter 설정
  7948. dsf_createDsRow("ds_in_req"
  7949. , [{col:"pid", val: sPid}
  7950. ,{col:"indd", val: sIndd}
  7951. ,{col:"cretno", val: sCretNo}
  7952. ,{col:"wardcd", val: sWardCD}
  7953. ,{col:"roomcd", val: sRoomCD}
  7954. ,{col:"ioflag", val: sIOFlag}
  7955. ,{col:"carerecseqno", val: sCareRecSeqNo}
  7956. ,{col:"fromdt", val: sBaseFromDt}]);
  7957. var oParam = {};
  7958. oParam.id = "TRMNR10104";
  7959. oParam.service = "flowchartapp.FlowChartRecMngt";
  7960. oParam.method = "reqGetFluidInfo";
  7961. oParam.inds = "req=ds_in_req";
  7962. oParam.outds = "ds_temp_fluidlist=fluidlist";
  7963. oParam.async = false;
  7964. oParam.callback = "cf_TRMNR10104";
  7965. tranf_submit(oParam);
  7966. //특정 Fluid 정보 재조회 후 처리
  7967. var FluidFindrow = -1;
  7968. if(arErrorCode.pop("TRMNR10104") > -1){
  7969. if( ds_temp_fluidlist.rowcount > 0 ){
  7970. ds_data_fluidlist.enableevent = false;
  7971. for( var i = 0 ; i < ds_temp_fluidlist.rowcount ; i++ ){
  7972. InsFluidNo = lf_getDsValue(ds_temp_fluidlist, i , "carerecseqno");
  7973. FluidFindrow = ds_data_fluidlist.findRowExpr("carerecseqno == '" + sCareRecSeqNo + "'");
  7974. if(!utlf_isNull(ds_data_fluidlist.getColumn(FluidFindrow,"carerecseqno"))){
  7975. ds_data_fluidlist.setColumn(FluidFindrow,"recdt" , lf_getDsValue(ds_temp_fluidlist, i , "recdt" ));
  7976. ds_data_fluidlist.setColumn(FluidFindrow,"recrslt" , lf_getDsValue(ds_temp_fluidlist, i , "recrslt" ));
  7977. ds_data_fluidlist.setColumn(FluidFindrow,"fluidstat" , lf_getDsValue(ds_temp_fluidlist, i , "fluidstat" ));
  7978. ds_data_fluidlist.setColumn(FluidFindrow,"fluidetcinfo" , lf_getDsValue(ds_temp_fluidlist, i , "fluidetcinfo" ));
  7979. ds_data_fluidlist.setColumn(FluidFindrow,"usernm" , lf_getDsValue(ds_temp_fluidlist, i , "usernm" ));
  7980. ds_data_fluidlist.setColumn(FluidFindrow,"userid" , lf_getDsValue(ds_temp_fluidlist, i , "userid" ));
  7981. ds_data_fluidlist.setColumn(FluidFindrow,"certkey" , lf_getDsValue(ds_temp_fluidlist, i , "certkey" ));
  7982. ds_data_fluidlist.setColumn(FluidFindrow,"clncobsseqno" , lf_getDsValue(ds_temp_fluidlist, i , "clncobsseqno" ));
  7983. }else{
  7984. var AddRow = ds_data_fluidlist.addRow();
  7985. ds_data_fluidlist.setColumn(AddRow,"carerecseqno" , InsFluidNo ) ;
  7986. ds_data_fluidlist.setColumn(AddRow,"recdt" , lf_getDsValue(ds_temp_fluidlist, i , "recdt" ));
  7987. ds_data_fluidlist.setColumn(AddRow,"recrslt" , lf_getDsValue(ds_temp_fluidlist, i , "recrslt" ));
  7988. ds_data_fluidlist.setColumn(AddRow,"fluidstat" , lf_getDsValue(ds_temp_fluidlist, i , "fluidstat" ));
  7989. ds_data_fluidlist.setColumn(AddRow,"fluidetcinfo" , lf_getDsValue(ds_temp_fluidlist, i , "fluidetcinfo" ));
  7990. ds_data_fluidlist.setColumn(AddRow,"usernm" , lf_getDsValue(ds_temp_fluidlist, i , "usernm" ));
  7991. ds_data_fluidlist.setColumn(AddRow,"userid" , lf_getDsValue(ds_temp_fluidlist, i , "userid" ));
  7992. ds_data_fluidlist.setColumn(AddRow,"certkey" , lf_getDsValue(ds_temp_fluidlist, i , "certkey" ));
  7993. ds_data_fluidlist.setColumn(AddRow,"clncobsseqno" , lf_getDsValue(ds_temp_fluidlist, i , "clncobsseqno" ));
  7994. }
  7995. }
  7996. ds_data_fluidlist.enableevent = true;
  7997. }
  7998. else{
  7999. //model.removeNodeset(xFluidPath+"[carerecseqno ='" + sCareRecSeqNo + "']");
  8000. FluidFindrow = ds_data_fluidlist.findRowExpr("carerecseqno == '" + sCareRecSeqNo + "'");
  8001. ds_data_fluidlist.deleteRow(FluidFindrow);
  8002. }
  8003. //재조회 Path 삭제
  8004. //model.removenode("/root/temp/clincobsfluidrecinfo");
  8005. ds_temp_fluidlist.clearData();
  8006. //Fluid 행 초기화
  8007. fMakeGridNode("N","N","24hours_Init", iNodeRowValue);
  8008. fMakeGridNode("N","N","24hours_Init", iNodeRowValue+1);
  8009. //Fluid 정보를 이용하여 화면 Style및 정보 Setting
  8010. fSettingFluidInfo("F", "Chng", iNodeRowValue, iNodeRowValue+1, sCareRecSeqNo);
  8011. sFluidStatInfo = ds_grd_24hoursclincobsreclist.getColumn(iRow+1, "fluidstat");
  8012. ds_grd_24hoursclincobsreclist.enableevent = false;
  8013. for(var iCol=1; iCol<= 24; iCol++){
  8014. sFluidRecDT = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
  8015. //Grid Graph 설정
  8016. if(utlf_isSearchString(sFluidStatInfo, sFluidRecDT) == true){
  8017. //ds_grd_24hoursclincobsreclist.setColumn(iRow,"backcolor"+iCol,"khaki");//겨자
  8018. linetypet = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypet" + (iCol)));
  8019. linetyper = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetyper" + (iCol)));
  8020. linetypeb = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypeb" + (iCol)));
  8021. linetypel = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypel" + (iCol)));
  8022. linetypetotal = "";
  8023. linetypetotal = "0 none, ";
  8024. linetypetotal += utlf_isNull(linetyper) ? "1 solid #B0B0B0" : linetyper;
  8025. linetypetotal += ", ";
  8026. linetypetotal += "2 solid blue"
  8027. linetypetotal += ", ";
  8028. linetypetotal += utlf_isNull(linetypel) ? "1 solid #B0B0B0" : linetypel;
  8029. ds_grd_24hoursclincobsreclist.setColumn((iRow + 1), "linetypeb" + (iCol), "2 solid blue");
  8030. ds_grd_24hoursclincobsreclist.setColumn((iRow + 1), "linetypetotal" + (iCol), linetypetotal);
  8031. if(iCol - 1 > 0)
  8032. {
  8033. linetyperRed = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetyper" + (iCol)));
  8034. if(linetyperRed == "2 solid red")
  8035. {
  8036. linetypetotal = "0 none, 2 solid red, 2 solid blue, 1 solid #B0B0B0";
  8037. ds_grd_24hoursclincobsreclist.setColumn((iRow + 1), "linetypetotal" + (iCol+ 2), linetypetotal);
  8038. }
  8039. }
  8040. }else{
  8041. //ds_grd_24hoursclincobsreclist.setColumn(iRow,"backcolor"+iCol, "");
  8042. linetypet = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypet" + (iCol)));
  8043. linetyper = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetyper" + (iCol)));
  8044. linetypeb = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypeb" + (iCol)));
  8045. linetypel = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetypel" + (iCol)));
  8046. linetypetotal = "";
  8047. linetypetotal = "0 none, ";
  8048. linetypetotal += utlf_isNull(linetyper) ? "1 solid #B0B0B0" : linetyper;
  8049. linetypetotal += ", ";
  8050. linetypetotal += "1 solid #B0B0B0"
  8051. linetypetotal += ", ";
  8052. linetypetotal += utlf_isNull(linetypel) ? "1 solid #B0B0B0" : linetypel;
  8053. ds_grd_24hoursclincobsreclist.setColumn(iRow + 1, "linetypeb" + (iCol), "1 solid #B0B0B0");
  8054. ds_grd_24hoursclincobsreclist.setColumn(iRow + 1, "linetypetotal" + (iCol), linetypetotal);
  8055. if(iCol - 1 > 0)
  8056. {
  8057. linetyperRed = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(iRow + 1, "linetyper" + (iCol)));
  8058. if(linetyperRed == "2 solid red")
  8059. {
  8060. linetypetotal = "0 none, 2 solid red, 1 solid #B0B0B0, 1 solid #B0B0B0";
  8061. ds_grd_24hoursclincobsreclist.setColumn(iRow + 1, "linetypetotal" + (iCol), linetypetotal);
  8062. }
  8063. }
  8064. }
  8065. }
  8066. ds_grd_24hoursclincobsreclist.enableevent = true;
  8067. }
  8068. //Fluid 입력 화면에서 I/O처리 후 Param 정보가 있을 경우 처리
  8069. if( !utlf_isNull(frmf_getParameter("SPMNR10400_ReturnSaveInfo"))){
  8070. ds_data_rtnsigndata.clearData();
  8071. dsf_createDsRow("ds_in_req"
  8072. , [{col:"pid", val: sPid}
  8073. ,{col:"orddd", val: sIndd}
  8074. ,{col:"cretno", val: sCretNo}
  8075. ,{col:"wardcd", val: sWardCD}
  8076. ,{col:"roomcd", val: sRoomCD}
  8077. ,{col:"ioflag", val: sIOFlag}
  8078. ,{col:"carerecseqno", val: sCareRecSeqNo}
  8079. ,{col:"strtime", val: sBaseFromDt}]);
  8080. var oParam = {};
  8081. oParam.id = "TRMNR10105";
  8082. oParam.service = "flowchartapp.FlowChartRecMngt";
  8083. oParam.method = "reqGetMakeSignData";
  8084. oParam.inds = "req=ds_in_req";
  8085. oParam.outds = "ds_data_rtnsigndata=rtnsigndata";
  8086. oParam.async = false;
  8087. //oParam.callback = "cf_TRMNR10105";
  8088. tranf_submit(oParam);
  8089. //xPathViewData = "/root/temp/rtnsigndatainfo/rtnsigndata";
  8090. fMakeViewData();
  8091. //model.removenodeSet(xPathViewData);
  8092. ds_data_rtnsigndata.clear();
  8093. //model.removenodeSet("/root/temp/SignData");
  8094. //xPathViewData = "/root/temp/clincobsrecinfo/rtnsigndata";
  8095. }
  8096. //parameter 정보 초기화
  8097. frmf_clearParameter("SPMNR10400_Param");
  8098. frmf_clearParameter("SPMNR10400_ReturnSaveInfo");
  8099. }
  8100. function cf_TRMNR10104(sSvcId, nErrorCode, sErrorMsg) {
  8101. arErrorCode.push(sSvcId, nErrorCode);
  8102. }
  8103. /**
  8104. * @group :
  8105. * @ver : 2010.03.24
  8106. * @by : 양천덕
  8107. * @---------------------------------------------------
  8108. * @type : function
  8109. * @access : public
  8110. * @desc : Fluid Item 추가 화면 호출
  8111. * @param :
  8112. * @return :
  8113. * @---------------------------------------------------
  8114. */
  8115. function lf_PopupAddFluid(){
  8116. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  8117. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  8118. if( fChkSaveData() == false ) return;
  8119. var sParamValue = "flag▦itemcd▦itemnm▦pid▦orddd▦cretno▦ordtype▦lnkbizcd▩";
  8120. sParamValue += "Flow" +"▦"
  8121. + "" +"▦"
  8122. + "" +"▦"
  8123. + sPid +"▦"
  8124. + sIndd +"▦"
  8125. + sCretNo +"▦"
  8126. + sIOFlag +"▦"
  8127. + "12" +"▩";
  8128. frmf_setParameter("SPMNR06001_Param", sParamValue);
  8129. //frmf_modal("SPMNR06001","SPMNR06001" ,"" , "","","","" , "","","","","M");
  8130. frmf_modal("SPMNR06001", "SPMNR06001", "", null, "1", "", "", null, null, null, null, null, "M");
  8131. //약,주사 입력 화면에서 Item추가 후 Param 정보가 있을 경우 처리
  8132. if( !utlf_isNull(frmf_getParameter("SPMNR06000_ReturnSaveInfo"))){
  8133. fSearchClincObsRec("24hours");
  8134. }
  8135. //parameter 정보 초기화
  8136. frmf_clearParameter("SPMNR06001_Param");
  8137. frmf_clearParameter("SPMNR06000_ReturnSaveInfo");
  8138. }
  8139. /**
  8140. * @group :
  8141. * @ver : 2010.02.23
  8142. * @by : 양천덕
  8143. * @---------------------------------------------------
  8144. * @type : function
  8145. * @access : public
  8146. * @desc : Fluid 합계 계산 로직
  8147. * @param : pFromdd : 계산시작일시
  8148. * pTodd : 계산종료일시
  8149. * pRslt : 계산수식
  8150. * pFromType : 계산시작일시 포함여부('+': 포함, '-': 제외)
  8151. * pToType : 계산종료일시 포함여부('+': 포함, '-': 제외)
  8152. * @return :
  8153. * @---------------------------------------------------
  8154. */
  8155. function fMakeFluidSumData(pFromdd, pTodd, pRslt, pFromType, pToType){
  8156. var sFromCalc = 0;
  8157. var sToCalc = 0;
  8158. if( pFromdd == pTodd ) return 0;
  8159. if(pFromType == "-") sFromCalc = -1;
  8160. if(pToType == "-") sToCalc = -1;
  8161. if( pRslt.isFloat() == false ) return;
  8162. 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)) );
  8163. 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)) );
  8164. var diffTime = Math.ceil((rstEndTime - rstFromTime) / (60 * 1000)); //분단위로 반환
  8165. rtnValue = (eval(pRslt) / 60 * eval(diffTime));
  8166. if( utlf_isNull(rtnValue) ) return 0;
  8167. return rtnValue;
  8168. }
  8169. function group4_grd_24hoursclincobsreclist_onmousemove(obj:Grid, e:GridMouseEventInfo)
  8170. {
  8171. if( LoadGubun == true ) return;
  8172. if(e.row >-1 && e.col > -1){
  8173. if(!utlf_isNull(group4.grd_24hoursclincobsreclist.getCellValue(e.row,e.col))){
  8174. group4.grd_24hoursclincobsreclist.tooltiptext = group4.grd_24hoursclincobsreclist.getCellText(e.row,e.col);
  8175. }else{
  8176. group4.grd_24hoursclincobsreclist.tooltiptext = "";
  8177. }
  8178. }
  8179. stredit = group4.grd_24hoursclincobsreclist.getEditText(oldRow, oldCol);
  8180. if(!utlf_isNull(group1.grp_inpatinfo.cmb_patlist.value)){
  8181. fSearchDetlRecInfo("24hours",e.row,e.col);
  8182. }
  8183. }
  8184. /**
  8185. * @group :
  8186. * @ver : 2009.12.15
  8187. * @by : 양천덕
  8188. * @---------------------------------------------------
  8189. * @type : function
  8190. * @access : public
  8191. * @desc : 차트 Up
  8192. * @param :
  8193. * @return :
  8194. * @---------------------------------------------------
  8195. */
  8196. function fControlChartUp(pFlag){
  8197. var sObj_Chart;
  8198. switch(pFlag){
  8199. case "24hours" :
  8200. sObj_Chart = group4.obj_24hourschart;
  8201. break;
  8202. }
  8203. sObj_Chart.Axis.get_Custom(0).Maximum = sObj_Chart.Axis.get_Custom(0).Maximum+20; // 맥박
  8204. sObj_Chart.Axis.get_Custom(0).Minimum = sObj_Chart.Axis.get_Custom(0).Minimum+20;
  8205. sObj_Chart.Axis.get_Custom(1).Maximum = sObj_Chart.Axis.get_Custom(1).Maximum+10;
  8206. sObj_Chart.Axis.get_Custom(1).Minimum = sObj_Chart.Axis.get_Custom(1).Minimum+10;
  8207. sObj_Chart.Axis.get_Custom(2).Maximum = sObj_Chart.Axis.get_Custom(2).Maximum+1;
  8208. sObj_Chart.Axis.get_Custom(2).Minimum = sObj_Chart.Axis.get_Custom(2).Minimum+1;
  8209. for(var i=0; i < sObj_Chart.Tools.Count-1; i++){
  8210. sObj_Chart.Tools.get_Items(i).asAnnotation.Shape.Top= sObj_Chart.Tools.get_Items(i).asAnnotation.Shape.Top + 10;
  8211. }
  8212. }
  8213. /**
  8214. * @group :
  8215. * @ver : 2009.12.15
  8216. * @by : 양천덕
  8217. * @---------------------------------------------------
  8218. * @type : function
  8219. * @access : public
  8220. * @desc : 차트 Down
  8221. * @param :
  8222. * @return :
  8223. * @---------------------------------------------------
  8224. */
  8225. function fControlChartDown(pFlag){
  8226. var sObj_Chart;
  8227. switch(pFlag){
  8228. case "24hours" :
  8229. sObj_Chart = group4.obj_24hourschart;
  8230. break;
  8231. }
  8232. sObj_Chart.Axis.get_Custom(0).Maximum = sObj_Chart.Axis.get_Custom(0).Maximum-20;
  8233. sObj_Chart.Axis.get_Custom(0).Minimum = sObj_Chart.Axis.get_Custom(0).Minimum-20;
  8234. sObj_Chart.Axis.get_Custom(1).Maximum = sObj_Chart.Axis.get_Custom(1).Maximum-10;
  8235. sObj_Chart.Axis.get_Custom(1).Minimum = sObj_Chart.Axis.get_Custom(1).Minimum-10;
  8236. sObj_Chart.Axis.get_Custom(2).Maximum = sObj_Chart.Axis.get_Custom(2).Maximum-1;
  8237. sObj_Chart.Axis.get_Custom(2).Minimum = sObj_Chart.Axis.get_Custom(2).Minimum-1;
  8238. for(var i=0; i < sObj_Chart.Tools.Count-1; i++){
  8239. sObj_Chart.Tools.get_Items(i).asAnnotation.Shape.Top= sObj_Chart.Tools.get_Items(i).asAnnotation.Shape.Top - 20;
  8240. }
  8241. }
  8242. /**
  8243. * @group :
  8244. * @ver : 2010.01.26
  8245. * @by : 양천덕
  8246. * @---------------------------------------------------
  8247. * @type : function
  8248. * @access : public
  8249. * @desc :
  8250. * @param : 확장명/부위 정보 입력 popup 호출
  8251. * @return :
  8252. * @---------------------------------------------------
  8253. */
  8254. function fPopupInputExtNm(){
  8255. var iRow = ds_grd_24hoursclincobsreclist.rowposition;
  8256. var sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow, "carerecseqno");
  8257. var sItemnm = ds_grd_24hoursclincobsreclist.getColumn(iRow, "itemnm");
  8258. var sItemLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "lnkbizcd");
  8259. var sItemCd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "itemcd");
  8260. var sRecFluidUnit = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recfluidunit");
  8261. var sItemOrigin = "00";
  8262. var sParamInfo = "";
  8263. var sRtnParamInfo = "";
  8264. if(sItemLnkBizCd == "11" || sItemLnkBizCd == "12" ) sItemOrigin = "04";
  8265. sParamInfo = "upd▦";
  8266. frmf_setParameter("SPMNR06100_Param",sParamInfo+sItemOrigin+"▦"+sCareRecSeqNo+"▦"+sPid+"▦"+sIndd+"▦"+sCretNo+"▦"+sItemnm+"▦"+sItemnm+"▦"+sItemCd+"▦"+sRecFluidUnit+"▩");
  8267. frmf_modal("SPMNR06100", "SPMNR06100", "" , "", "" , "","" , "","" , "","" , "","M");
  8268. sRtnParamInfo = frmf_getParameter("SPMNR06100_RtnParam");
  8269. if(utlf_isNull(sRtnParamInfo)) return;
  8270. ds_grd_24hoursclincobsreclist.setColumn(iRow, "itemnm", fGetArrayDataTPR(sRtnParamInfo, 0, 3));
  8271. ds_grd_24hoursclincobsreclist.setColumn(iRow, "recfluidunit",fGetArrayDataTPR(sRtnParamInfo, 0, 4));
  8272. ds_grd_24hoursclincobsreclist.setColumn(ds_grd_24hoursclincobsreclist.findRow("lnkcarerecseqno",sCareRecSeqNo, iRow), "itemnm", fGetArrayDataTPR(sRtnParamInfo, 0, 4));
  8273. //parameter 정보 초기화
  8274. frmf_clearParameter("SPMNR06100_Param");
  8275. frmf_clearParameter("SPMNR06100_RtnParam");
  8276. }
  8277. function fPopupItem(){
  8278. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  8279. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  8280. if( fChkSaveData() == false ) return;
  8281. frmf_modal("SMMNR04100","SMMNR04100", "", "", "", "","", "","", "","", "","M");
  8282. fSearchClincObsRec("24hours");
  8283. }
  8284. function fPopupIOSearch(){
  8285. if(utlf_isNull(ds_patinfo.getColumn(0,"pid"))){
  8286. sysf_messageBox("환자를 선택하십시요","I");
  8287. return;
  8288. }
  8289. var sIndex = group1.grp_inpatinfo.cmb_patlist.index;
  8290. var sParam_Header = "pid▦orddd▦cretno▦wardcd▦recdd▩";
  8291. var sParam_Data = ds_cond.getColumn(0,"pid")+"▦"
  8292. + ds_data_patientgruplist.getColumn(sIndex,"indd" ) + "▦"
  8293. + ds_data_patientgruplist.getColumn(sIndex,"cretno" ) + "▦"
  8294. + group1.grp_inpatinfo.cmb_wardlist.value + "▦"
  8295. + ds_cond.getColumn(0,"recdd")+"▩";
  8296. frmf_setParameter("SPMNR05800_Param", sParam_Header+sParam_Data);
  8297. frmf_open("SPMNR05800","SPMNR05800","","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  8298. }
  8299. function fPopupProc(){
  8300. frmf_open("SMAER00800","SMAER00800", "","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  8301. }
  8302. function fPopupCDISRec(){
  8303. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  8304. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  8305. if( fChkSaveData() == false ) return;
  8306. var sIndex = group1.grp_inpatinfo.cmb_patlist.index;
  8307. var sParam_Header = "srchdd▦stndtm▦pid▦orddd▦cretno▦starttm▦ordtype▦wardcd▦roomcd▩";
  8308. var sParam_Data = utlf_getCurrentDate()+"▦"
  8309. + "01"+"▦"
  8310. + ds_cond.getColumn(0,"pid")+"▦"
  8311. + ds_data_patientgruplist.getColumn(sIndex,"indd" ) + "▦"
  8312. + ds_data_patientgruplist.getColumn(sIndex,"cretno" ) + "▦"
  8313. + utlf_getCurrentTime().substr(0,2) + "▦"
  8314. + ds_data_patientgruplist.getColumn(sIndex,"ordtype" ) + "▦"
  8315. + group1.grp_inpatinfo.cmb_wardlist.value + "▦"
  8316. + group1.grp_inpatinfo.cmb_roomlist.value + "▦"
  8317. + ds_data_patientgruplist.getColumn(sIndex,"instcd" ) + "▩";
  8318. frmf_setParameter("SPMNR06200_Param",sParam_Header+sParam_Data);
  8319. //modal("SPMNR06200", "1", event.clientX , event.clientY);
  8320. frmf_open("SPMNR06200", "SPMNR06200", "","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  8321. }
  8322. function fPopupSearchRecData(){
  8323. var sIndex = group1.grp_inpatinfo.cmb_patlist.index;
  8324. var sParam_Header = "pid▦srchdd▩";
  8325. var sParam_Data = ds_cond.getColumn(0,"pid") + "▦"
  8326. + ds_cond.getColumn(0,"recdd") + "▩";
  8327. frmf_setParameter("SPMNR06300_Param",sParam_Header+sParam_Data);
  8328. frmf_open("SPMNR06300","SPMNR06300", "","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  8329. }
  8330. function fPopupOralRec(){
  8331. //화면 재조회 popup호출을 할 경우 미기록 정보 체크 함수
  8332. //fSearchClincObsRec 함수를 호출하는 함수에 추가 필요
  8333. if( fChkSaveData() == false ) return;
  8334. var sIndex = group1.grp_inpatinfo.cmb_patlist.index;
  8335. var sParam_Header = "pid▦orddd▦cretno▦wardcd▦recdd▩";
  8336. var sParam_Data = ds_cond.getColumn(0,"pid")+"▦"
  8337. + ds_data_patientgruplist.getColumn(sIndex,"indd" ) + "▦"
  8338. + ds_data_patientgruplist.getColumn(sIndex,"cretno" ) + "▦"
  8339. + group1.grp_inpatinfo.cmb_wardlist.value + "▦"
  8340. + ds_cond.getColumn(0,"recdd")+"▩";
  8341. frmf_setParameter("SPMNR05700_Param",sParam_Header+sParam_Data);
  8342. frmf_modal("SPMNR05700", "SPMNR05700", "","","",system.screenToClientX(this,system.cursorx),system.screenToClientY(this,system.cursory),"","","","","","M");
  8343. fSearchClincObsRec("24hours");
  8344. //parameter 정보 초기화
  8345. frmf_clearParameter("SPMNR05700_Param");
  8346. }
  8347. function fSaveTempClincObsRec(pRecFlag){
  8348. var sSaveDataHeader = "status▦pid▦indd▦cretno▦wardcd▦roomcd▦instcd▦ioflag▦itemcd▦itemseqno▦recflag▦recdt▦recrslt▦certkey▦carerecseqno▩";
  8349. var sSaveData = ""; // 저장데이터
  8350. var sRowCnt = 0; // 전체 row 갯수
  8351. var sItemCD = ""; // 항목코드
  8352. var sItemSeqNO = ""; // 항목일련번호
  8353. var sRecRslt_BK = ""; // 기존 기록결과
  8354. var sRecRslt = ""; // 신규 기록결과
  8355. var sCertKey = ""; // 기존 인증키
  8356. var sStatus = ""; // 상태
  8357. var sStrTime = ""; // 각 컬럼의 시간
  8358. var sRecFlag = ""; // 기록구분
  8359. var sRecCharFlag = ""; // 기록성격구분
  8360. var sChkChngData = false;
  8361. var sBizLnkFlag = ds_cond.getColumn(0,"bizlnkflag");
  8362. var sTimeFlag = ds_cond.getColumn(0,"timeflag");
  8363. var sRecDd = ds_cond.getColumn(0,"recdd");
  8364. sFluidSumInfo = new Array();
  8365. //model.removeNodeSet(xResultPath);
  8366. //model.removenode("/root/send");
  8367. if(utlf_isNull(sPid)){
  8368. sPid = ds_patinfo.getColumn(0,"pid");
  8369. sIndd = ds_patinfo.getColumn(0,"indd");
  8370. sCretNo = ds_patinfo.getColumn(0,"cretno");
  8371. sIOFlag = ds_patinfo.getColumn(0,"ordtype");
  8372. }
  8373. dsf_createDsRow("ds_send"
  8374. , [{col:"pid", val: sPid}
  8375. ,{col:"indd", val: sIndd}
  8376. ,{col:"cretno", val: sCretNo}
  8377. ,{col:"instcd", val: sInstcd}
  8378. ,{col:"ioflag", val: sIOFlag}
  8379. ,{col:"timeflag", val: sTimeFlag}
  8380. ,{col:"srchdd", val: sRecDd}//20090730 김홍점 [임상관찰기록] 삽관, 기구 관련 그룹정보 연동 시 삽입(적용)일 및 적용일수 정보 조회를 위한 기준일자
  8381. ,{col:"fromdt", val: sHeader[1][1]+sHeader[3][1]+sHeader[4][1]+"00"}
  8382. ,{col:"existsdelinfo", val: ds_cond.getColumn(0,"existsdelinfo")}]);
  8383. switch(pRecFlag){
  8384. case "24hours" :
  8385. if(sBizLnkFlag == "Y"){
  8386. dsf_makeValue(ds_send,"bizdeptcd","string", sDutplcecd);
  8387. }
  8388. dsf_makeValue(ds_send,"todt","string",sHeader[1][24]+sHeader[3][24]+sHeader[4][24]+"00");
  8389. dsf_makeValue(ds_send,"recflag","string", "24hours");
  8390. dsf_makeValue(ds_send,"clsinfo","string",ds_cond.getColumn(0,"hoursclsinfo") );
  8391. for(var i=1; i <= 24; i++){
  8392. if(utlf_isNull(sStrTime)){
  8393. sStrTime += sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  8394. }else{
  8395. sStrTime += ","+sHeader[1][i]+sHeader[3][i]+sHeader[4][i]+"00";
  8396. }
  8397. }
  8398. dsf_makeValue(ds_send,"strtime","string", sStrTime);
  8399. for(var iRow = 0; iRow<ds_grd_24hoursclincobsreclist.rowcount; iRow++){
  8400. sItemCD = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemcd" );
  8401. sItemSeqNO = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemseqno" );
  8402. sRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recflag" );
  8403. sRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow,"reccharflag" );
  8404. sCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow,"carerecseqno");
  8405. sItemNM = ds_grd_24hoursclincobsreclist.getColumn(iRow,"itemnm" );
  8406. sLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow,"lnkbizcd" );
  8407. sStype = ds_grd_24hoursclincobsreclist.getColumn(iRow,"style" );
  8408. // 값조회, 추가행, Graph사용 수액의 경우는 저장이 필요없음.
  8409. if( sRecCharFlag == "C" || utlf_isNull(sRecCharFlag) || ( sLnkBizCd == "12" && sStype == "01") ) continue;
  8410. for(var iCol=1; iCol<= 24; iCol++){
  8411. //sRecRslt_BK = model.getValue(xClincObsRecListPath+"[itemcd='"+sItemCD+"' and itemseqno='"+sItemSeqNO+"' and recflag='"+sRecFlag+"']/recrslt"+iCol);
  8412. sRecRslt_BK = ds_data_clincobsreclist.lookup("carerecseqno",sCareRecSeqNo,"recrslt"+iCol);
  8413. sRecRslt = ds_grd_24hoursclincobsreclist.getColumn(iRow,"recrslt"+iCol);
  8414. sStatus = "";
  8415. sResultPath = "";
  8416. //상태값 변경
  8417. if(sLnkBizCd == "99" || sLnkBizCd == "01" || sLnkBizCd == "02" || sLnkBizCd == "03" || sLnkBizCd == "04"){ //연계항목, 분류는 제외
  8418. sStatus = "";
  8419. }else if(utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  8420. sStatus = "";
  8421. }else if(utlf_isNull(sRecRslt_BK) && !utlf_isNull((sRecRslt))){
  8422. sStatus = "U";
  8423. }else if(!utlf_isNull(sRecRslt_BK) && utlf_isNull(sRecRslt)){
  8424. sStatus = "U";
  8425. }else if(!utlf_isNull(sRecRslt_BK) && sRecRslt_BK != sRecRslt){
  8426. sStatus = "U";
  8427. }
  8428. if(utlf_isNull(sStatus))
  8429. {
  8430. continue;
  8431. }
  8432. //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");
  8433. var sRsltNodeCnt = ds_certtemp_recinfo.addRow();
  8434. var sSaveRecDt = "";
  8435. //간편 입력 저장 부분
  8436. var sArraySaveData = new Array();
  8437. if(utlf_isSearchString(sRecRslt, "'") == true){
  8438. sArraySaveData = sRecRslt.split("/");
  8439. for(var i = 0 ; i < sArraySaveData.length ; i++){
  8440. if(i == sArraySaveData.length -1 && utlf_isSearchString(sArraySaveData[i], "'") == true &&
  8441. sArraySaveData[i].replace("'", "").isNumber() == true && sArraySaveData[i].replace("'", "") < 60 &&
  8442. sArraySaveData[i].replace("'", "").length == 2){
  8443. sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sArraySaveData[i].replace("'", "")+"00";
  8444. sRecRslt = sRecRslt.replace("/" + sArraySaveData[i], "" );
  8445. }
  8446. }
  8447. }
  8448. //if(sRecRslt.length < 1) return;
  8449. if(utlf_isNull(sSaveRecDt)) sSaveRecDt = sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00";
  8450. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"reclist" , sRecRslt );
  8451. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"recdt" , sSaveRecDt );
  8452. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"attrcd" , ds_grd_24hoursclincobsreclist.getColumn(iRow,"attrcd") );
  8453. ds_certtemp_recinfo.setColumn(sRsltNodeCnt,"reclist" , sRecRslt );
  8454. sChkChngData = true;
  8455. //sCertKey = model.getValue(xRecUserListPath+"[carerecseqno='"+sCareRecSeqNo+"' and recdt = '"+sHeader[1][iCol]+sHeader[3][iCol]+sHeader[4][iCol]+"00']/certkey");
  8456. sSaveData += sStatus +"▦"
  8457. + sPid +"▦"
  8458. + sIndd +"▦"
  8459. + sCretNo +"▦"
  8460. + sWardCD +"▦"
  8461. + sRoomCD +"▦"
  8462. + sInstcd +"▦"
  8463. + sIOFlag +"▦"
  8464. + sItemCD +"▦"
  8465. + sItemSeqNO +"▦"
  8466. + sRecFlag +"▦"
  8467. + sSaveRecDt +"▦"
  8468. + sRecRslt +"▦"
  8469. + sCertKey +"▦"
  8470. + sCareRecSeqNo +"▩";
  8471. }
  8472. }
  8473. // 변경데이터 유뮤 체크
  8474. if(sChkChngData == false){
  8475. sysf_messageBox("저장 할 데이터", "I004");
  8476. return;
  8477. }
  8478. //**********************************************************************************************************************
  8479. // 인증 구현 부분 24시 화면
  8480. //**********************************************************************************************************************
  8481. dsf_setCSVToDs("ds_send_clincobsreclist", sSaveDataHeader+sSaveData);
  8482. //model.makeValue("/root/send/clincobsreclist",sSaveDataHeader+sSaveData);
  8483. //return;
  8484. ds_grd_24hoursclincobsreclist.clearData();
  8485. dsf_createDs("ds_cms_signinfo");
  8486. //submit("TXMNR00901", false); //2008-07-09
  8487. var oParam = {};
  8488. oParam.id = "TXMNR10101";
  8489. oParam.service = "flowchartapp.FlowChartRecMngt";
  8490. oParam.method = "reqExeClincObsRecList";
  8491. oParam.inds = "req=ds_send clincobsreclist=ds_send_clincobsreclist signinfo=ds_cms_signinfo";
  8492. oParam.outds = "ds_data_clincobsreclist=clincobsreclist ds_temp_clincobsrecinfo_intervalrecynlist=intervalrecynlist ds_data_recuserlist=recuserlist ds_data_attrlist1=attrlist1 ds_data_rtnsigndata=rtnsigndata ds_data_fluidlist=fluidlist ds_data_instrmtlist=instrmtlist";
  8493. oParam.async = false;
  8494. //oParam.callback = "cf_TXMNR10101";
  8495. tranf_submit(oParam);
  8496. // var oParam = {};
  8497. // oParam.id = "TXMNR10101";
  8498. // oParam.service = "flowchartapp.FlowChartRecMngt";
  8499. // oParam.method = "reqExeClincObsRecList";
  8500. // oParam.inds = "req=ds_ clincobsreclist=ds_ signinfo=ds_";
  8501. // oParam.outds = "ds_=clincobsreclist ds_=intervalrecynlist ds_=recuserlist ds_=attrlist1 ds_=rtnsigndata ds_=fluidlist ds_=instrmtlist";
  8502. // oParam.async = false;
  8503. // oParam.callback = "cf_TXMNR10101";
  8504. break;
  8505. }
  8506. fSearchClincObsRec();
  8507. //fSettingClincObsRec(pRecFlag);
  8508. }
  8509. function lf_ControlGridClean(){
  8510. var sRows = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  8511. var sCols = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  8512. //var sCells = grd_24hoursclincobsreclist.selectedCells;
  8513. if( sRows.length > 1 || sCols.length > 1){
  8514. var msg = sysf_messageBox("선택한 영역의 데이터를 삭제하시겠습니까?\n단 연동 항목 및 합계 부분 제외", "Q");
  8515. if( msg == "6" ){
  8516. for(var i = 0 ; i < sRows.length ; i ++){
  8517. for(var j = 0; j< sCols.length; j++)
  8518. {
  8519. var col = sCols[j];
  8520. var row = sRows[i];
  8521. if( ds_grd_24hoursclincobsreclist.getColumn(row,"readonly" + col) != "Y" && col != group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm") ){
  8522. ds_grd_24hoursclincobsreclist.setColumn(row,lf_getBindCellName(group4.grd_24hoursclincobsreclist, col),"");
  8523. }
  8524. }
  8525. }
  8526. }
  8527. }else{
  8528. for(var i = 0 ; i < sRows.length ; i ++){
  8529. for(var j = 0; j< sCols.length; j++)
  8530. {
  8531. var col = sCols[j];
  8532. var row = sRows[i];
  8533. if( ds_grd_24hoursclincobsreclist.getColumn(row,"readonly" + col) != "Y" && col != group4.grd_24hoursclincobsreclist.getBindCellIndex("body","itemnm") ){
  8534. ds_grd_24hoursclincobsreclist.setColumn(row,lf_getBindCellName(group4.grd_24hoursclincobsreclist, col),"");
  8535. }
  8536. }
  8537. }
  8538. }
  8539. }
  8540. function lf_ControlGridCopy(){
  8541. var sRows = grdf_getSelectedRows(group4.grd_24hoursclincobsreclist);
  8542. var sCols = grdf_getSelectedCols(group4.grd_24hoursclincobsreclist);
  8543. //var sCells = grd_24hoursclincobsreclist.selectedCells;
  8544. var sStartData = "";
  8545. var sCmbAttrCD = "";
  8546. //if( sRows.length < 2 && sCols.length < 2) return;
  8547. var sStartIdxCol = sCols[0];
  8548. var sStartIdxRow = sRows[0];
  8549. //if( utlf_isNull(sStartData) ) return;
  8550. var isReadOnly = false;
  8551. var readonly = "";
  8552. var totalyn = "";
  8553. var readonlyyn = "";
  8554. var style = "";
  8555. var lnkbizcd = "";
  8556. //멀티 일경우
  8557. var i = 0;
  8558. var iColSel = 0;
  8559. var iRowSel = 0;
  8560. var irow = 0;
  8561. var icol = 0;
  8562. for(i= 0 ; i < group4.grd_24hoursclincobsreclist.selectcount ; i++ ){
  8563. for( iRowSel = group4.grd_24hoursclincobsreclist.selectstartrow[i] ; iRowSel <= group4.grd_24hoursclincobsreclist.selectendrow[i] ; iRowSel++ ){
  8564. for( iColSel = group4.grd_24hoursclincobsreclist.selectstartcol[i] ; iColSel <= group4.grd_24hoursclincobsreclist.selectendcol[i] ; iColSel++ ){
  8565. irow = iRowSel;
  8566. icol = iColSel;
  8567. if(utlf_isNull(sStartData))
  8568. {
  8569. sStartData = group4.grd_24hoursclincobsreclist.getCellValue(irow, icol);
  8570. }
  8571. if(utlf_isNull(sCmbAttrCD))
  8572. {
  8573. sCmbAttrCD = ds_grd_24hoursclincobsreclist.getColumn(irow, "attrcd");
  8574. }
  8575. if( utlf_isNull(sCmbAttrCD)){
  8576. isReadOnly = false;
  8577. readonly = ds_grd_24hoursclincobsreclist.getColumn(irow, "readonly" + icol);
  8578. totalyn = ds_grd_24hoursclincobsreclist.getColumn(irow, "totalyn");
  8579. readonlyyn = ds_grd_24hoursclincobsreclist.getColumn(irow, "readonlyyn");
  8580. style = ds_grd_24hoursclincobsreclist.getColumn(irow, "style");
  8581. lnkbizcd = ds_grd_24hoursclincobsreclist.getColumn(irow, "lnkbizcd");
  8582. if(readonly == "Y" || totalyn == "H" || (readonlyyn == "Y" || (style == "01" && (lnkbizcd == "02" || lnkbizcd == "12"))))
  8583. {
  8584. isReadOnly = true;
  8585. }
  8586. if( isReadOnly == false &&
  8587. icol != group4.grd_24hoursclincobsreclist.getBindCellIndex("Body", "itemnm") &&
  8588. utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(irow, "recrslt" + icol)))
  8589. {
  8590. if(utlf_isNull(ds_grd_24hoursclincobsreclist.getColumn(irow, "attrcd")))
  8591. {
  8592. ds_grd_24hoursclincobsreclist.setColumn(irow, "recrslt" + icol, sStartData);
  8593. }
  8594. else
  8595. {
  8596. ds_grd_24hoursclincobsreclist.setColumn(irow, "recrslt" + icol, sStartData);
  8597. }
  8598. }
  8599. }
  8600. else
  8601. {
  8602. if( sCmbAttrCD == ds_grd_24hoursclincobsreclist.getColumn(irow, "attrcd"))
  8603. {
  8604. ds_grd_24hoursclincobsreclist.setColumn(irow, "recrslt" + icol, sStartData);
  8605. }
  8606. }
  8607. }
  8608. }
  8609. }
  8610. }
  8611. function group4_grd_24hoursclincobsreclist_oncloseup(obj:Grid, e:GridEditEventInfo)
  8612. {
  8613. // Combo Dropdown Click 후 Edit 포커스 아웃
  8614. ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col,"attrgrde");
  8615. var preVal = utlf_transNullToEmpty(ds_grd_24hoursclincobsreclist.getColumn(e.row, e.col));
  8616. var posVal = utlf_transNullToEmpty(e.value);
  8617. if( bDrop == true && (!utlf_isNull(posVal) || preVal != posVal )){
  8618. bComboEdit = false;
  8619. obj.showEditor(false);
  8620. // ds_grd_24hoursclincobsreclist.setColumn(e.row, "edittype" + e.col, "none");
  8621. ds_grd_24hoursclincobsreclist.rowposition = ds_grd_24hoursclincobsreclist.rowposition + 1;
  8622. ds_grd_24hoursclincobsreclist.selectRow(ds_grd_24hoursclincobsreclist.rowposition, true);
  8623. //obj.setCellPos(e.col);
  8624. stredit2 = "";
  8625. oldRow = ds_grd_24hoursclincobsreclist.rowposition;
  8626. }
  8627. bDrop = false;
  8628. lastrow = e.row;
  8629. lastcol = e.col;
  8630. }
  8631. function group4_grd_24hoursclincobsreclist_ondropdown(obj:Grid, e:GridEditEventInfo)
  8632. {
  8633. //ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col,"attrnm");
  8634. //group4.grd_24hoursclincobsreclist.redraw();
  8635. //group4.grd_24hoursclincobsreclist.setCellProperty("Body", e.col, "combodatacol", "expr(cboname" + e.col + ")");
  8636. }
  8637. /**
  8638. * @group :
  8639. * @ver : 2009.12.15
  8640. * @by : 양천덕
  8641. * @---------------------------------------------------
  8642. * @type : function
  8643. * @access : public
  8644. * @desc :
  8645. * @param : 임상관찰기록 인증 데이터 생성
  8646. * @return :
  8647. * @---------------------------------------------------
  8648. */
  8649. function fMake_SignData(){
  8650. switch(sViewerFunc)
  8651. {
  8652. case "sign":
  8653. var xPathSignData = ds_certtemp_recinfo;
  8654. for(var i = 0 ; i < ds_certtemp_recinfo.rowcount ; i++)
  8655. {
  8656. var sRecRslt = ds_certtemp_recinfo.getColumn(i, "reclist");
  8657. var sCertAttrCd = ds_certattrtemp_recattrinfo.getColumn(i, "attrcd");
  8658. var sCertAttrNm = ds_data_attrlist1.lookup("attrcd", sRecRslt, "attrgrde");
  8659. if(!utlf_isNull(sRecRslt) && !utlf_isNull(sCertAttrCd) && !utlf_isNull(sCertAttrNm))
  8660. {
  8661. ds_certtemp_recinfo.setColumn(i, "reclist", sCertAttrNm);
  8662. }
  8663. }
  8664. //Sign.addnode("/root/certtemp");//ds_certtemp_recinfo
  8665. Sign.addnode("/root/certtemp", ds_certtemp_recinfo.saveXML());
  8666. break;
  8667. case "veiw":
  8668. for( var i=ds_temp_viewinfo_viewlist.rowcount -1; i>=0 ; i--){
  8669. var bDel = true;
  8670. for(var j=0; j<ds_temp_viewinfo_viewlist.getColCount(); j++){
  8671. var tmp = ds_temp_viewinfo_viewlist.getColumn(i, j);
  8672. if( !utlf_isNull(tmp) ){
  8673. bDel = false;
  8674. continue;
  8675. }
  8676. }
  8677. if( bDel == true ){
  8678. ds_temp_viewinfo_viewlist.deleteRow(i);
  8679. }
  8680. }
  8681. var arrSignPath = new Array();
  8682. arrSignPath[0] = "/viewinfo/";
  8683. arrSignPath[1] = "/viewinfo/viewlist";
  8684. var arrSignDs = new Array();
  8685. arrSignDs[0] = ds_temp_viewinfo.saveXML();
  8686. arrSignDs[1] = ds_temp_viewinfo_viewlist.saveXML();
  8687. Sign.addnodeset(arrSignPath, arrSignDs);
  8688. //Sign.addnode("/root/viewtemp/viewinfo");
  8689. break;
  8690. }
  8691. }
  8692. function lf_showExpr(nAttrcd, nRow, nCol, nedit){
  8693. var sVal = ds_grd_24hoursclincobsreclist.getColumn(nRow, nCol);
  8694. if(!utlf_isNull(nedit))
  8695. {
  8696. sVal = nedit;
  8697. }
  8698. var inDs = this.objects["fds_" + nAttrcd];
  8699. var sName = sVal;
  8700. if( inDs != null ) {
  8701. if(!utlf_isNull(sVal))
  8702. {
  8703. sName = inDs.lookup("attrcd", sVal, "attrgrde");
  8704. if( !utlf_isNull(sVal) && utlf_isNull(sName) ){
  8705. sName = sVal;
  8706. var nFindRow = inDs.findRow("supcd", nAddRow);
  8707. var nAddRow = inDs.addRow();
  8708. inDs.copyRow(nAddRow, inDs, nAddRow - 1);
  8709. //inDs.setColumn(nAddRow, "supcd", nAddRow);
  8710. inDs.setColumn(nAddRow, "refseq", nAddRow);
  8711. inDs.setColumn(nAddRow, "attrcd", sName);
  8712. inDs.setColumn(nAddRow, "attrnm", sName);
  8713. inDs.setColumn(nAddRow, "attrgrde", sName);
  8714. return true;
  8715. }
  8716. }
  8717. }
  8718. return false;
  8719. }
  8720. function group4_grd_24hoursclincobsreclist_cantreestatuschange(obj:Grid, e:GridTreeStatusEventInfo)
  8721. {
  8722. obj.userdata = 1;
  8723. }
  8724. function group4_grd_24hoursclincobsreclist_onkillfocus(obj:Grid, e:KillFocusEventInfo)
  8725. {
  8726. frmf_inputEnterKey("group4.grd_24hoursclincobsreclist", "onselectchanged", new GridSelectEventInfo);
  8727. }
  8728. function group1_grp_meetinfo_cap_familymeetamvalue_onclick(obj:Static, e:ClickEventInfo)
  8729. {
  8730. fPopupPatMeetRec();
  8731. }
  8732. // function group4_grd_24hoursclincobsreclist_onheadclick(obj:Grid, e:GridClickEventInfo)
  8733. // {
  8734. // // try{
  8735. // // grdheadCol = e.col;
  8736. // // }
  8737. // // catch(e){
  8738. // // sysf_catchTrace(e);
  8739. // // }
  8740. //
  8741. // }
  8742. function group4_grd_24hoursclincobsreclist_onrbuttonup(obj:Grid, e:GridMouseEventInfo)
  8743. {
  8744. //fSettingPopUpMenu("24hours");
  8745. if(sUserFlag == "2") return; //진료의사는 권한 없음
  8746. grdf_setSelectedCell(obj, e);
  8747. ds_data_mainpop.filter("");
  8748. var iRow = e.row;
  8749. var iCol = e.col;
  8750. var strfilter1 = "";
  8751. var strfilter2 = "";
  8752. var strfilter3 = "";
  8753. var strfilter4 = "";
  8754. var strfilter5 = "";
  8755. var strfilter6 = "";
  8756. var strfilterTotal = "";
  8757. var sPopupCareRecSeqNo = ds_grd_24hoursclincobsreclist.getColumn(iRow, "carerecseqno");
  8758. var sPopupLnkBizCd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "lnkbizcd");
  8759. var sPopupRecFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "recflag");
  8760. var SPopupRecCharFlag = ds_grd_24hoursclincobsreclist.getColumn(iRow, "reccharflag");
  8761. var strEditType = "";
  8762. //strEditType = group4.grd_24hoursclincobsreclist.getCellProperty("Body", e.col, "editType");
  8763. var readonly = ds_grd_24hoursclincobsreclist.getColumn(iRow, "readonly" + iCol);
  8764. var totalyn = ds_grd_24hoursclincobsreclist.getColumn(iRow, "totalyn");
  8765. var readonlyyn = ds_grd_24hoursclincobsreclist.getColumn(iRow, "readonlyyn");
  8766. var style = ds_grd_24hoursclincobsreclist.getColumn(iRow, "style");
  8767. var lnkbizcd = ds_grd_24hoursclincobsreclist.getColumn(iRow, "lnkbizcd");
  8768. var ColMCount = 0;
  8769. var RowMCount = 0;
  8770. if(iRow < 0)
  8771. {
  8772. ds_data_mainpop.filter("id == 'drugadditem'");
  8773. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8774. }
  8775. else
  8776. {
  8777. if( iCol == 0)
  8778. {
  8779. if( !utlf_isNull(sPopupCareRecSeqNo) && sPopupCareRecSeqNo != 0 )
  8780. {
  8781. if( SPopupRecCharFlag == "A" )
  8782. {
  8783. //Item 시작/종료 시간 설정
  8784. strfilter2 = "id == 'settime'";
  8785. }
  8786. //확장명 변경 popup메뉴 설정
  8787. if( sPopupLnkBizCd == "11" || sPopupLnkBizCd == "12" )
  8788. {
  8789. strfilter1 = "id == 'chngnm'";
  8790. }
  8791. }
  8792. }
  8793. if( (!utlf_isNull(sPopupCareRecSeqNo) && sPopupCareRecSeqNo != 0) || sPopupRecFlag == "T" || sPopupRecFlag == "S" || sPopupRecFlag == "R" )
  8794. {
  8795. //부분합계 popup메뉴 설정
  8796. strfilter3 = "id == 'subtotal'";
  8797. if( sPopupRecFlag != "T" && sPopupRecFlag != "S" && sPopupRecFlag != "R" )
  8798. {
  8799. //입력값 복사 popup메뉴 설정
  8800. strfilter5 = "id == 'valuecopy'";
  8801. //입력값 삭제 popup메뉴 설정
  8802. strfilter6 = "id == 'valuedel'";
  8803. }
  8804. }
  8805. if(!utlf_isNull(strfilter1))
  8806. {
  8807. if(utlf_isNull(strfilterTotal))
  8808. {
  8809. strfilterTotal += strfilter1;
  8810. }
  8811. else
  8812. {
  8813. strfilterTotal += " || " + strfilter1;
  8814. }
  8815. }
  8816. if(!utlf_isNull(strfilter2))
  8817. {
  8818. if(utlf_isNull(strfilterTotal))
  8819. {
  8820. strfilterTotal += strfilter2;
  8821. }
  8822. else
  8823. {
  8824. strfilterTotal += " || " + strfilter2;
  8825. }
  8826. }
  8827. if(!utlf_isNull(strfilter3))
  8828. {
  8829. if(utlf_isNull(strfilterTotal))
  8830. {
  8831. strfilterTotal += strfilter3;
  8832. }
  8833. else
  8834. {
  8835. strfilterTotal += " || " + strfilter3;
  8836. }
  8837. }
  8838. if(!utlf_isNull(strfilter5))
  8839. {
  8840. if(utlf_isNull(strfilterTotal))
  8841. {
  8842. strfilterTotal += strfilter5;
  8843. }
  8844. else
  8845. {
  8846. strfilterTotal += " || " + strfilter5;
  8847. }
  8848. }
  8849. if(!utlf_isNull(strfilter6))
  8850. {
  8851. if(utlf_isNull(strfilterTotal))
  8852. {
  8853. strfilterTotal += strfilter6;
  8854. }
  8855. else
  8856. {
  8857. strfilterTotal += " || " + strfilter6;
  8858. }
  8859. }
  8860. //멀티 일경우
  8861. for( var i=0 ; i < group4.grd_24hoursclincobsreclist.selectcount ; i++ ){
  8862. for( var j = group4.grd_24hoursclincobsreclist.selectstartcol[i] ; j <= group4.grd_24hoursclincobsreclist.selectendcol[i] ; j++ ){
  8863. ColMCount++;
  8864. }
  8865. for( var j = group4.grd_24hoursclincobsreclist.selectstartrow[i] ; j <= group4.grd_24hoursclincobsreclist.selectendrow[i] ; j++ ){
  8866. RowMCount++;
  8867. }
  8868. }
  8869. if(ColMCount > 1 || RowMCount > 1)
  8870. {
  8871. if(!utlf_isNull(strfilterTotal))
  8872. {
  8873. ds_data_mainpop.filter(strfilterTotal);
  8874. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8875. }
  8876. else
  8877. {
  8878. ds_data_mainpop.filter("id == ''");
  8879. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8880. }
  8881. }
  8882. else
  8883. {
  8884. //셀타입 None일경우
  8885. if(!utlf_isNull(strfilter2) || !utlf_isNull(strfilter1))
  8886. {
  8887. if(!utlf_isNull(strfilterTotal))
  8888. {
  8889. ds_data_mainpop.filter(strfilterTotal);
  8890. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8891. }
  8892. else
  8893. {
  8894. ds_data_mainpop.filter("id == ''");
  8895. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8896. }
  8897. }
  8898. else if(readonly == 'Y' || totalyn == 'H' || (readonlyyn == 'Y' || (style == '01' && (lnkbizcd == '02' || lnkbizcd == '12'))))
  8899. {
  8900. if(!utlf_isNull(strfilterTotal))
  8901. {
  8902. ds_data_mainpop.filter(strfilterTotal);
  8903. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8904. }
  8905. else
  8906. {
  8907. ds_data_mainpop.filter("id == ''");
  8908. pmn_popupMenuMain.trackPopup(e.screenX,e.screenY); //마우스 우측 메뉴
  8909. }
  8910. }
  8911. }
  8912. }
  8913. }
  8914. function group4_grd_24hoursclincobsreclist_onheadclick(obj:Grid, e:GridClickEventInfo)
  8915. {
  8916. try{
  8917. grdheadCol = e.col;
  8918. if(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype" + oldCol) == "combo"){
  8919. ds_grd_24hoursclincobsreclist.setColumn(oldRow,"cboname" + oldCol, "attrgrde");
  8920. }
  8921. }
  8922. catch(e){
  8923. sysf_catchTrace(e);
  8924. }
  8925. }
  8926. function group4_grd_24hoursclincobsreclist_onlbuttondown(obj:Grid, e:GridMouseEventInfo)
  8927. {
  8928. if(e.col > 0 && e.row > -1)
  8929. {
  8930. if(ds_grd_24hoursclincobsreclist.getColumn(e.row, "edittype" + e.col) == "combo")
  8931. {
  8932. // ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col, "attrnm");
  8933. //group4.grd_24hoursclincobsreclist.setCellProperty("Body", e.col, "combodatacol", "expr(cboname" + e.col + ")");
  8934. }
  8935. }
  8936. }
  8937. function group4_grd_24hoursclincobsreclist_ontextchanged(obj:Grid, e:GridEditTextChangedEventInfo)
  8938. {
  8939. var iRow = ds_grd_24hoursclincobsreclist.rowposition;
  8940. var iCol = e.col;
  8941. oldRow = iRow;
  8942. oldCol = iCol;
  8943. stredit2 = utlf_transNullToEmpty(group4.grd_24hoursclincobsreclist.getEditText(iRow, iCol));
  8944. streditFocus = utlf_transNullToEmpty(group4.grd_24hoursclincobsreclist.getEditText(iRow, iCol));
  8945. }
  8946. function group4_grd_24hoursclincobsreclist_ondragmove(obj:Grid, e:GridDragEventInfo)
  8947. {
  8948. // if(ds_grd_24hoursclincobsreclist.getColumn(oldRow, "edittype" + oldCol) == "combo"){
  8949. // ds_grd_24hoursclincobsreclist.setColumn(oldRow,"cboname" + oldCol, "attrgrde");
  8950. // }
  8951. }
  8952. function group4_grd_24hoursclincobsreclist_ondrag(obj:Grid, e:GridDragEventInfo)
  8953. {
  8954. // if(ds_grd_24hoursclincobsreclist.getColumn(e.row, "edittype" + e.col) == "combo"){
  8955. // ds_grd_24hoursclincobsreclist.setColumn(e.row,"cboname" + e.col, "attrgrde");
  8956. // }
  8957. }
  8958. function grp_chkbox_caption28_onclick(obj:Static, e:ClickEventInfo)
  8959. {
  8960. screenX = e.screenX;
  8961. screenY = e.screenY;
  8962. fPopupDutyUserRec();
  8963. }
  8964. function grp_chkbox_caption29_onclick(obj:Static, e:ClickEventInfo)
  8965. {
  8966. screenX = e.screenX;
  8967. screenY = e.screenY;
  8968. fPopupDutyUserRec();
  8969. }
  8970. function grp_chkbox_caption30_onclick(obj:Static, e:ClickEventInfo)
  8971. {
  8972. screenX = e.screenX;
  8973. screenY = e.screenY;
  8974. fPopupDutyUserRec();
  8975. }
  8976. /*******************************************************************
  8977. * Description : 진료대상자 변경시 상단환자 정보설정
  8978. *******************************************************************/
  8979. function lf_emrSetTimer(){
  8980. this.setTimer(1, 100);
  8981. }
  8982. ]]></Script>
  8983. </Form>
  8984. </FDL>