1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[
- var TX_SUBMIT_COMN_FORM = "TXMMR01301";
- var TX_SUBMIT_EXTN_FORM = "TXMMR01303";
- //var gPageInfo = new PAGEINFO();
- var arrDsMain = ["ds_data_paminfo", "ds_data_validinfo", "ds_data_formmast", "ds_data_formdegn",
- "ds_data_unitformmast", "ds_data_unitformdegn", "ds_data_vallist", "ds_data_imgelist",
- "ds_data_extnformlist", "ds_data_readonlylist", "ds_data_programdesignformlist",
- "ds_data_formrec", "ds_data_recitem", "ds_temp_comnclinclist"];
- var arrDsForminfo = ["ds_data_validinfo", "ds_data_formmast", "ds_data_formdegn",
- "ds_data_unitformmast", "ds_data_unitformdegn", "ds_data_vallist", "ds_data_imgelist",
- "ds_data_extnformlist", "ds_data_readonlylist", "ds_data_programdesignformlist"];
-
- var arrDsTempFrominfo = ["ds_temp_validinfo", "ds_temp_formmast", "ds_temp_formdegn",
- "ds_temp_unitformmast", "ds_temp_unitformdegn", "ds_temp_vallist", "ds_temp_imgelist",
- "ds_temp_extnformlist", "ds_temp_readonlylist", "ds_temp_programdesignformlist" ];
- var arrDsRecinfo = ["ds_data_formrec", "ds_data_recitem"];
- var arrDsHiddenRecinfo = ["ds_hidden_formrec", "ds_hidden_recitem"];
- var arrDsTempRecinfo = ["ds_temp_formrec", "ds_temp_recitem"];
- // 추가 확인 필요한 부분
- var arrDsExtnRecinfo = ["ds_hidden_extnformrec_recitem", "ds_hidden_extnformrec_formrec"]
- var arrDsTempEtcinfo = ["ds_temp_imgerec_recitem", "ds_temp_fmyrec_recitem", "ds_temp_etcrec_recitem", "ds_temp_lastdiag_recitem"];
- // ds_data_paminfo
- // comnclinclist
- // ds_temp_comnclinclist
- /**
- * @desc : page info 설정
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function PAGEINFO(viewerobj)
- {
- // if(viewerobj == null){
- // if( frmf_getCurrentFormKind() == "main" ){
- // viewerobj = frmf_getMainViewer();
- // }else{
- // viewerobj = getOwnerFrame().form;
- // }
- // }
-
- this.paperwidth = 680;
- this.paperheight = 1000;
- // this.pagewidth = viewerobj.position.width;
- // this.pageheight = viewerobj.position.height;
- this.rowheight = 20;
- this.curxpos = 20;
- this.curypos = 10;
- this.ctrlwidth = 100;
- this.ctrlheight = 20;
- this.offsetx = 5;
- this.offsety = 5;
- this.fontengwidth = 8;
- this.fonthngwidth = 12;
- this.indentwidth = 15;
- this.leftmargin = 10;
- // this.forminfoRef = "ds_main_forminfo";
- // this.formmastRef = "ds_main_forminfo_formmast"; //this.formmastRef = "/root/main/forminfo/formmast";
- // this.formdegnRef = "ds_main_forminfo_formdegn";
- // this.vallistRef = "ds_main_forminfo_vallist";
- // this.imgelistRef = "ds_main_forminfo_imgelist";
- // this.recRef = "ds_main_recinfo";
- // this.recRef2 = "ds_hidden_recinfo";
- // this.initrecRef = "ds_temp_recinfo";
- // this.extnrecRef = "ds_hidden_extnformrec_recinfo";
- // this.recMastRef = "ds_main_recinfo_formrec";
- // this.recItemRef = "ds_main_recinfo_recitem";
- // this.recItemRef2 = "ds_hidden_recinfo_recitem";
- // this.initrecItemRef = "ds_temp_recinfo_recitem";
- // this.extnrecItemRef = "ds_hidden_extnformrec_recinfo_recitem";
- // this.savedInfoRef = "ds_main_savedinfo_";
- // this.savedInfoRef2 = "ds_hidden_savedinfo";
- // this.savedInfoItemRef2 = "ds_hidden_savedinfo_recitem";
- // this.grdNodeset = "ds_main_recinfo_recitem";
- // this.grdCapRef = "ds_main_forminfo_GrdList";
- // this.imgerecItemRef = "ds_temp_imgerec_recinfo_recitem";
- // //가계도 처리를 위하여 추가(2008-09-25) 박종훈
- // this.fmyrecItemRef = "ds_temp_fmyrec_recinfo";
- // //추가기록 처리를 위하여 추가(2008-09-25) 박종훈
- // this.etcrecItemRef = "ds_temp_etcrec_recinfo";
- // //누적데이터 조회를 위하여 추가(2008-09-30) 박종훈
- // this.acmlrecItemRef = "ds_acmltmp_recinfo_recitem";
- // this.sortItemRef = "ds_temp_sort_recinfo_recitem";
- // this.popForminfoRef = "ds_temp_pop_forminfo";
- // this.popRecinfoRef = "ds_temp2_getrecinfo_recinfo";
- // this.RecinfoGridRef = "ds_main_recinfo_grid";
- // this.initRecinfoGridRef = "ds_temp_recinfo_grid";
- // this.RecinfoGridrecItemRef = "ds_main_recinfo_grid_recitem";
- // this.initRecinfoGridrecItemRef = "ds_temp_recinfo_grid_recitem";
- //
- // // this.xsltRecinfoRecitemRef = "/recinfo/recitem";
- // // this.xsltRecinfoGridRef = "/recinfo/grid";
- //
- // //20080818 박종훈 추가(특수서식 로딩관련)
- // this.initforminfoRef = "ds_temp_forminfo";
- // this.initformmastRef = "ds_temp_forminfo_formmast";
- //
- // //2010-03-31 오전 9:33:12 강지훈 추가(최종진단명)
- // this.lastdiagItemRef = "ds_temp_lastdiag_recinfo";
-
- this.formCd = "";
- this.srcFormCd = "";
- this.formDegnSeq = "";
- this.degnItemNo = "";
- this.degnItemCd = "";
- this.degnItemLevlCd = "";
- this.fstLevlItemCd = "";
- this.degnitemkind = "";
- this.degnitemlevlno = "";
- this.degnitemnm = "";
- this.rectermnm = "";
- this.comuseyn = "";
- this.fontFamily = "돋움, Arial";
- this.fontSize = 11;
- this.align = "";
- this.valign = "";
- }
- function ITEMVAL()
- {
- this.rectermcd = "";
- this.rectermnm = "";
- this.reccnts = "";
- this.recimge = "";
- }
- function PARAM(name, value)
- {
- this.name = name;
- this.value = value;
- }
- /**
- * @desc : 기록정보 변수 초기화
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function SAVED_INFO()
- {
- this.formrecseq = 0;
- this.rechistseq = 0;
- }
- /**
- * @desc : 환자정보 변수 초기화
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function COMN_CONT_RECCNTS()
- {
- this.pid = "";
- this.recfromdt = "";
- this.rectodt = "";
- this.formrecdeptcd = "";
- this.chosflag = "";
- this.formrecseq = "";
- this.formcd = "-";
- }
- /**
- * @desc : 기록항목 변수 초기화
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function RECITEM_INFO()
- {
- this.pid = "";
- this.degnitemkind = "";
- this.degnitemcd = "";
- this.degnitemlevlcd = "";
- this.rectermcd = "";
- this.recitemcd = "";
- this.reccnts = "";
- }
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : struct
- * @access : public
- * @desc : 부모 화면으로 onloadcomplete 이벤트를 dispatch
- * @param : formcd - 현재 로딩이 완료된 서식코드
- * @param : curformtype - 로딩이 완료된 서식의 종류 (COMN_FORM/UNIT_FORM/GENL_FORM)
- * @return :
- * @---------------------------------------------------
- */
- /*
- function FORM_LOAD_STATUS()
- {
- this.curformcd = "";
- this.curformtype = "";
- this.loadlist = new ActiveXObject("Scripting.Dictionary");
- }
- */
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : 서식 로딩상태를 세팅
- * @param : obj - loadstatus를 세팅할 객체
- * @param : formcd - 현재 로딩이 완료된 서식코드
- * @param : curformtype - 로딩이 완료된 서식의 종류 (COMN_FORM/UNIT_FORM/GENL_FORM)
- * @return :
- * @---------------------------------------------------
- */
- function setLoadStatus(obj, curformcd, curformtype)
- {
- loadstatus = obj.window.javascript.gFormLoadStatus;
- loadstatus.curformcd = curformcd;
- loadstatus.curformtype = curformtype;
- //loadstatus.loadlist.add(curformcd, LOAD_COMPLETE);
- }
- /**
- * @desc : 초진, 재진기록지 여부
- * @id :
- * @event : xforms-ready
- * @return : void
- * @authur : 박종훈
- */
- function IsComnMediForm(srcformcd)
- {
- var flag = false;
- switch (srcformcd)
- {
- case "0000000001" :
- case "0000000002" :
- case "0000000003" :
- case "0000000004" :
- flag = true;
- break;
- }
- return flag;
- }
- /**
- * @desc : 기록값 셋팅
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetCommMediFormValue(pItemCds, reciteminfo)
- {
- var ivwObj;
- var flag;
- for (var i=0; i<pItemCds.length; i++)
- {
- ivwObj = document.controls("ivw_" + pItemCds[i]);
- //2010.03.09 안치원 - 기록내용에서 부분서식의 Copy가 안되는 오류 수정
- //if (ivwObj != null && ivwObj.attribute("ctrluseyn") == "Y")
- if (ivwObj != null && ivwObj.attribute("unitformcd") != "")
- flag = SetMediFormValue(ivwObj.model, reciteminfo);
- else
- flag = SetMediFormValue(model, reciteminfo);
- if (flag) break;
- }
- return flag;
- }
- var MMR_REC_INFO = "/root/main/recinfo/recitem";
- var MMR_FORM_INFO = "/root/main/forminfo/formdegn";
- /**
- * @desc : 기록값 셋팅
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetMediFormValue(pModel, reciteminfo)
- {
- var nodeSet = MMR_REC_INFO;
-
- //2010-05-28 오전 9:299:42 이지운 추가 : MSL -> 부분서식지로 복사할경우 발생하는 오류 수정
- if(reciteminfo.degnitemkind == "MSL"){
- nodeSet = nodeSet + "[degnitemlevlcd='" +reciteminfo.degnitemlevlcd+ "' and colno='" +reciteminfo.colno+ "']";
- }else{
- nodeSet = nodeSet + "[degnitemlevlcd='" +reciteminfo.degnitemlevlcd+ "']";
- }
-
- var xPathFunction = "count(" + nodeSet + ")";
- var cnt = pModel.getXPathValue(xPathFunction);
- if (cnt == 1)
- {
- //2009-10-07 오후 7:59:42 강지훈 추가 : MTX -> 부분서식지로 복사할경우 발생하는 오류 수정
- var nodeCnt
- if(reciteminfo.degnitemkind == "MTX"){
- var otherNodeSet = MMR_FORM_INFO + "[degnitemkind != 'MTX' and contains(degnitemlevlcd, '" + reciteminfo.degnitemlevlcd + ".')]";
- nodeCnt = pModel.getXPathValue("count(" + otherNodeSet + ")");
- }
- else{
- nodeCnt = 0;
- }
-
- var degnitemno = pModel.getXPathValue(nodeSet+"/degnitemno");
- var degncntrviewflag = pModel.getXPathValue(MMR_FORM_INFO + "[degnitemno='" +degnitemno+ "']/degncntrviewflag");
- if (degncntrviewflag != "L" && nodeCnt == 0)
- {
- pModel.setValue(nodeSet+"/rectermcd", reciteminfo.rectermcd);
-
- if (reciteminfo.rectermcd != "")
- {
- pModel.setValue(nodeSet+"/rectermnm", reciteminfo.rectermnm);
-
- if(reciteminfo.degnitemkind == "MSL" && reciteminfo.reccnts != ""){
- pModel.setValue(nodeSet+"/reccnts", reciteminfo.reccnts);
- }
- }
- else
- {
- pModel.setValue(nodeSet+"/reccnts", reciteminfo.reccnts);
- }
- pModel.refresh();
- }
- return true;
- }
- else
- {
- return false;
- }
- }
- /**
- * @desc : 기록값 Clear
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function ClearComnFormData(itemCds)
- {
- sysf_trace_emr("***** ClearComnFormData("+itemCds+") MMRCommon *****");
- var ctrlIvw;
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrlIvw = this.components["ivw_" + itemCds[i]];
- sysf_trace_emr("@@@@@ ctrlIvw.url : " + ctrlIvw.url + " MMRCommon @@@@@");
- if (!utlf_isNull(ctrlIvw) && ctrlIvw.visible && !utlf_isNull(ctrlIvw.url)){
- ctrlIvw.lf_clearData();
- }
- }
- var pageInfo = new PAGEINFO();
-
- dsf_clearDsList(["ds_hidden_extnformrec_recitem"], this);
- dsf_clearDsList(arrDsTempEtcinfo, this);
- //2010-03-31 오전 10:08:49 강지훈추가 : 최종진단명 요약 추가
-
- dsf_clearDsList(arrDsHiddenRecinfo);
- dsf_copyDsList(arrDsRecinfo, arrDsTempRecinfo, "replace", this, this);
- frmf_clearAllParameter();
- // model.removeNodeset("/root/properties/parameters");
- // model.makeNode("/root/properties/parameters");
- }
- /**
- * @desc : 이미지 편집화면 Open
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function OpenUnitFormImge(obj:Button, e:ClickEventInfo)
- {
- //fstlevlitemcd, ivwid
- var ctrlID = obj.name;
- var fstlevlitemcd = ctrlID.replace("btn_imge_", "");
-
- var ivwid = "ivw_" + fstlevlitemcd;
- var pageInfo = new PAGEINFO();
- var formdegnRefDs = this.objects["ds_data_formdegn"];
- var fidx = formdegnRefDs.findRow("degnitemcd", fstlevlitemcd);
-
- //var node = model.instances(0).selectSingleNode(pageInfo.formdegnRef + "[degnitemcd = '"+fstlevlitemcd+"']");
- frmf_setParameter("openmode", "MediRec");
- frmf_setParameter("formcd", parent.fGetFormMast("formcd"));
- frmf_setParameter("formdegnseq", parent.fGetFormMast("formdegnseq"));
- frmf_setParameter("fstlevlitemcd", fstlevlitemcd);
- frmf_setParameter("degnitemlevlcd", formdegnRefDs.getColumn(fidx, "degnitemlevlcd"));
- frmf_setParameter("degnitemlevlno", formdegnRefDs.getColumn(fidx, "degnitemlevlno"));
- frmf_setParameter("ivwid", ivwid);
-
- //부분서식 로딩
- var ctrl = this.components["lbl_" + fstlevlitemcd];
-
- if (!utlf_isNull(ctrl))
- {
- loadClickSection(fstlevlitemcd);
- }
-
- //var retVal = modalUrl("../../../emr/medirecweb/xrw/SMMMR03600_이미지편집.xrw",1,100,100,"이미지편집");
- var retVal = frmf_modal("SMMMR03600", "SMMMR03600", null, null, 1, 100, 100, null, null, null, null, null, "M");
-
- /**
- * @desc : 공통서식내의 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시한다.
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- */
- try {
- setButtonToggleByRecYn(null, obj.name);
- } catch (e) {
- sysf_catchTrace(e);
- }
-
- return retVal;
- }
- /**
- * @desc : 가계도 편집화면 Open
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function OpenUnitFormFmy(obj:Button, e:ClickEventInfo)
- {
- sysf_trace_emr("***** OpenUnitFormFmy MMRCommon *****");
- var ctrlID = obj.name;
- fstlevlitemcd = ctrlID.replace("btn_fmy_", "");
-
- //부분서식 로딩
- var ctrl = this.components["lbl_" + fstlevlitemcd];
-
- if (ctrl != null)
- {
- loadClickSection(fstlevlitemcd);
- }
- openFamilyDiagram(fstlevlitemcd);
- /**
- * @desc : 공통서식내의 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시한다.
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- */
- try {
- setButtonToggleByRecYn(null, obj.name);
- } catch (e) {
- sysf_catchTrace(e);
- }
- }
- /**
- * @desc : 서식 기록 항목 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitFormData(itemCds)
- {
- sysf_trace_emr("***** InitUnitFormData("+itemCds+") 서식기록항목초기화 MMRCommon *****");
- var ctrlIvw;
- var pageInfo = new PAGEINFO();
-
- var expr = "degnitemkind == 'FRM' && itemuseflag == 'F0'";
-
- //var frmlist = model.instances(0).selectNodes(pageInfo.formdegnRef + "[degnitemkind = 'FRM' and itemuseflag='F0']");
- var formdegnRefDs = this.objects["ds_data_formdegn"];
- var formdegnRefDsCnt = 0;
- if( formdegnRefDs != null ){
- dsf_createDs("tmp_formdegnRefDs");
- formdegnRefDs.filter(expr);
- tmp_formdegnRefDs.copyData(formdegnRefDs, true);
- formdegnRefDsCnt = tmp_formdegnRefDs.rowcount;
- formdegnRefDs.filter("");
- }
-
- for (var i = 0; i < formdegnRefDsCnt; i++)
- {
- var degnitemcd = tmp_formdegnRefDs.getColumn(i, "degnitemcd");
- var supdegnitemcd = tmp_formdegnRefDs.getColumn(i, "supdegnitemcd");
- var degnitemlevlcd = tmp_formdegnRefDs.getColumn(i, "degnitemlevlcd");
- sysf_trace_emr("degnitemcd : " + degnitemcd + " | supdegnitemcd : " + supdegnitemcd + " | degnitemlevlcd : " + degnitemlevlcd );
- ctrlIvw = this.components["ivw_" + supdegnitemcd];
- if (!utlf_isNull(ctrlIvw) && ctrlIvw.visible && !utlf_isNull(ctrlIvw.url))
- {
- ctrlIvw.lf_clearData();
- var fstlevlitembasecd = degnitemlevlcd.split(".")[0];
- var fstlevlitemcd = formdegnRefDs.lookup("degnitemlevlcd", fstlevlitembasecd, "degnitemcd");
-
- var recItemRef2Ds = this.objects["ds_hidden_recitem"];
- sysf_trace_emr("fstlevlitemcd : " + fstlevlitemcd + " || formcd : " + degnitemcd );
- //sysf_trace_emr(recItemRef2Ds.saveXML());
- recItemRef2Ds.filter("fstlevlitemcd=='" +fstlevlitemcd+ "' && formcd == '" + degnitemcd + "'");
- //lf_setSrchData2(ctrlIvw);
- lf_setItemValueDS(ctrlIvw, "PRE");
- recItemRef2Ds.filter("");
-
- //setSrchData(pageInfo.recItemRef2 + "[fstlevlitemcd='" +fstlevlitemcd+ "' and formcd = '" + degnitemcd + "']", ctrlIvw);
-
- ctrlIvw.fFormReload();
- }
- }
-
- if( formdegnRefDs != null ){
- dsf_deleteDs("tmp_formdegnRefDs");
- }
-
- dsf_clearDsList(["ds_hidden_extnformrec_recitem"]);//pageInfo.extnrecItemRef
-
- var cnt = ds_data_extnformlist.rowcount;
- for (var i = 0; i < cnt; i++)
- {
-
- //가계도는 확장서식에 붙으면 안되는 문제로 수정(박종훈/2008-09-29)
- var fstlevlitemcd = ds_data_extnformlist.getColumn(i, "supdegnitemcd");
- var formcd = ds_data_extnformlist.getColumn(i, "formcd");
- var filterStr = "degnitemkind != 'FDG' && fstlevlitemcd=='" +fstlevlitemcd+ "' && formcd == '" + formcd + "'";
- ds_hidden_recitem.filter(filterStr);
- dsf_copyDsList(["ds_hidden_extnformrec_recitem"], ["ds_hidden_recitem"], "append", this, this);
- ds_hidden_recitem.applyChange();
- ds_hidden_recitem.deleteAll();
- ds_hidden_recitem.applyChange();
- ds_hidden_recitem.filter("");
-
- }
- ds_hidden_recitem.filter("degnitemkind=='IMG' && !utlf_isNull(rowno)");
- dsf_copyDsList(["ds_temp_imgerec_recitem"], ["ds_hidden_recitem"], "replace", this, this);
- ds_hidden_recitem.filter("degnitemkind=='FDG'");
- dsf_copyDsList(["ds_temp_fmyrec_recitem"], ["ds_hidden_recitem"], "replace", this, this);
- ds_hidden_recitem.filter("degnitemno=='0'");
- dsf_copyDsList(["ds_temp_etcrec_recitem"], ["ds_hidden_recitem"], "replace", this, this);
- ds_hidden_recitem.filter("formcd == '1000007943'");
- dsf_copyDsList(["ds_temp_lastdiag_recitem"], ["ds_hidden_recitem"], "replace", this, this); //2010-03-31 오전 10:09:29 강지훈 추가 : 최종진단명 요약지 추가
- ds_hidden_recitem.filter("");
- }
- /**
- * @desc : 서식 기록 이미지 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitFormImgeData(itemCds)
- {
- var ctrlIvw;
- var imgelist;
- var node;
- var pageInfo = new PAGEINFO();
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- imgelist = ctrlIvw.model.instances(0).selectNodes(pageInfo.recItemRef+"[degnitemkind='IMG']");
- if (imgelist.length > 0)
- {
- copyNodeset(pageInfo.imgerecItemRef, pageInfo.recItemRef + "[degnitemkind='IMG']", "replace", model, ctrlIvw.model);
- for (var j = 0; j < imgelist.length; j++)
- {
- node = model.instances(0).selectSingleNode(pageInfo.imgelistRef + "[imgecd='"+ imgelist.item(j).getXPathString("degnitemcd") +"']/imgedata");
- if (node != null)
- {
- }
- }
- }
- }
- copyNodeset(pageInfo.imgerecItemRef, pageInfo.recItemRef2 + "[degnitemkind='IMG']", "replace", model, model);
- }
- /**
- * @desc : 프로그램 서식 데이터 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitPgmFormData()
- {
- sysf_trace_emr("***** InitPgmFormData() 프로그램서식 데이터 초기화 MMRCommon *****");
- sysf_trace_emr("jw.choe lf_setSrchData -> lf_setItemValueDs 로 변경");
- lf_setItemValueDS(this, "PRE");
- //lf_setSrchData2(this);
- }
- /**
- * @desc : 서식항목 기본 사이즈
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormOrgSize(pItemCds, iheig, oheig) //20100316
- {
- var grupObj;
- var ctrlIvw;
- for (var i = 0; i < pItemCds.length; i++)
- {
- grupObj = document.controls("grup_" + pItemCds[i]);
- ctrlIvw = document.controls("ivw_" + pItemCds[i]);
- if (grupObj.attribute("orgheight") == "" || grupObj.attribute("orgheight") == null)
- {
- grupObj.attribute("orgheight") = oheig;
- ctrlIvw.attribute("orgheight") = iheig;
- }
- else
- {
- if (iheig == null || iheig == "")
- {
- grupObj.attribute("height") = grupObj.attribute("orgheight");
- ctrlIvw.attribute("height") = ctrlIvw.attribute("orgheight");
- }
- else
- {
- grupObj.attribute("height") = oheig;
- ctrlIvw.attribute("height") = iheig;
- }
-
- SetMultiTextFull(ctrlIvw, 1);
- }
-
- var extngrupObj = document.controls("grup_extn" + pItemCds[i]);
-
- if (extngrupObj == null)
- continue;
-
- grupObj.attribute("visibility") = "visible";
- extngrupObj.attribute("visibility") = "visible";
-
- }
- }
- /**
- * @desc : 서식항목 기본 사이즈
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormOrgSizeCnst(pItemCds, iheigArr, oheigArr)
- {
- var grupObj;
- var ctrlIvw;
- for (var i = 0; i < pItemCds.length; i++)
- {
- grupObj = document.controls("grup_" + pItemCds[i]);
- ctrlIvw = document.controls("ivw_" + pItemCds[i]);
- if (grupObj.attribute("orgheight") == "" || grupObj.attribute("orgheight") == null)
- {
- grupObj.attribute("orgheight") = oheigArr[i];
- ctrlIvw.attribute("orgheight") = iheigArr[i];
- }
- else
- {
- if (iheigArr == null || iheigArr == "")
- {
- grupObj.attribute("height") = grupObj.attribute("orgheight");
- ctrlIvw.attribute("height") = ctrlIvw.attribute("orgheight");
- }
- else
- {
- grupObj.attribute("height") = oheigArr[i];
- ctrlIvw.attribute("height") = iheigArr[i];
- }
-
- SetMultiTextFull(ctrlIvw, 1);
- }
-
- var extngrupObj = document.controls("grup_extn" + pItemCds[i]);
-
- if (extngrupObj == null)
- continue;
-
- grupObj.attribute("visibility") = "visible";
- extngrupObj.attribute("visibility") = "visible";
- }
- }
- /**
- * @desc : 서식항목 최대 사이즈
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormFullSize(pItemCd, pIdx, pItemCds, pPageIdx, pGrupBase)
- {
- var grupObj;
- var toppos = 0;
- //for (var i = 0; i < pPageIdx.length; i++)
- for (var i = 0; i < pItemCds.length; i++)
- {
- grupObj = document.controls("grup_" + pItemCds[i]);
- extngrupObj = document.controls("grup_extn" + pItemCds[i]);
- if(grupObj == null)
- continue;
- grupObj.attribute("sizeFlag") = "full";
- if (pPageIdx[i] == pIdx)
- {
- if (pItemCds[i] == pItemCd)
- {
- grupObj.attribute("top") = 0;
-
- grupObj.attribute("orgheight") = grupObj.attribute("height");
- grupObj.attribute("height") = pGrupBase.attribute("height");
- var grupbase_hei = parseInt(pGrupBase.attribute("height"));
- var ctrlIvw = document.controls("ivw_" + pItemCds[i]);
- ctrlIvw.attribute("orgheight") = ctrlIvw.attribute("height");
- ctrlIvw.attribute("height") = parseInt(pGrupBase.attribute("height")) - parseInt(ctrlIvw.attribute("top"));
- //grupObj.attribute("visibility") = "visible";
- //extngrupObj.attribute("visibility") = "visible";
- SetMultiTextFull(ctrlIvw, 1);
- }
- else
- {
- grupObj.attribute("visibility") = "hidden";
- extngrupObj.attribute("visibility") = "hidden";
- }
- }
- else
- {
- grupObj.attribute("visibility") = "hidden";
- extngrupObj.attribute("visibility") = "hidden";
- }
- }
- }
- /**
- * @desc : 서식항목 visible hidden
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitFormLayer(itemCds, pageIdx, pageCnt, grup)
- {
- SetUserTimeLog("InitUnitFormLayer", "START");
- var pageInfo = new PAGEINFO();
- var i = 0;
- var pagePerSecCnt = new Array(pageCnt);
- for (i = 0; i < pagePerSecCnt.length; i++)
- {
- pagePerSecCnt[i] = 0;
- }
- var ctrlGrup;
- var existCtrl;
- // 안보이게 하기
- for (i = 0; i < itemCds.length; i++)
- {
- ctrlGrup = document.controls("grup_" + itemCds[i]);
- existCtrl = model.getValue(pageInfo.formdegnRef + "[degnitemcd='" + itemCds[i] + "']/degnitemcd");
- if (existCtrl == "")
- {
- ctrlGrup.visible = false;
- }
- else
- {
- ctrlGrup.visible = true;
- pagePerSecCnt[pageIdx[i]]++;
- }
- }
- // 보이는거 분할하기 위한 높이 구하기
- var pagePerTopPt = new Array(0 ,0, 0);
- var swtHei = parseInt(grup.attribute("height")) - 1;
- for (i = 0; i < pagePerSecCnt.length; i++)
- {
- if (pagePerSecCnt[i] == 1)
- {
- pagePerTopPt[i] = swtHei;
- }
- else
- {
- pagePerTopPt[i] = parseInt(swtHei / pagePerSecCnt[i]);
- }
- }
- // 보이는거 분할하기
- var topPt = 0;
- var prePageIdx = -1;
- var ctrlLbl;
- var ctrlExtn;
- var ctrlIvw;
- var ctrlCbo;
- var swtWid = parseInt(grup.attribute("width"));
- var grupHei;
- var toppos = 0;
- var grupextnHei = 0;
- for (i = 0; i < itemCds.length; i++)
- {
- ctrlGrup = document.controls("grup_" + itemCds[i]);
- if (ctrlGrup.visible)
- {
- // 보이는거 위치잡기
- grupHei = pagePerTopPt[pageIdx[i]];
- if (prePageIdx != pageIdx[i])
- topPt = 0;
- else
- topPt += grupHei;
- prePageIdx = pageIdx[i];
- ctrlGrup.attribute("left") = 0;
- // 보이는거 크기 조정
- ctrlLbl = document.controls("lbl_" + itemCds[i]);
- ctrlExtn= document.controls("grup_extn" + itemCds[i]);
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlCbo = document.controls("cbo_" + itemCds[i]);
- toppos = parseInt(ctrlLbl.attribute("height"));
- ctrlIvw.attribute("border-style") = "none";
- if (ctrlGrup.attribute("degnflag") != "fix")
- {
- ctrlGrup.attribute("top") = topPt;
- ctrlGrup.attribute("width") = swtWid - 2;
- ctrlGrup.attribute("height") = grupHei - 1;
- }
- if (ctrlExtn != null)
- {
- grupextnHei = parseInt(ctrlExtn.attribute("height"));
- ctrlExtn.attribute("left") = 0;
- ctrlExtn.attribute("top") = ctrlLbl.attribute("height");
- ctrlExtn.attribute("width") = ctrlGrup.attribute("width");
- ctrlExtn.attribute("orgheight") = ctrlExtn.attribute("height");
- ctrlExtn.attribute("border-style") = "none";
- ctrlExtn.attribute("overflow") = "visible";
- }
- else
- {
- grupextnHei = 0;
- }
- ctrlGrup.attribute("orgwidth") = ctrlGrup.attribute("width");
- ctrlGrup.attribute("orgheight") = ctrlGrup.attribute("height");
- ctrlLbl.attribute("top") = 0;
- // ctrlIvw.attribute("top") = ctrlLbl.attribute("height");
- ctrlIvw.attribute("top") = toppos + grupextnHei;
- ctrlIvw.attribute("height") = parseInt(ctrlGrup.attribute("height")) - parseInt(ctrlIvw.attribute("top")) - 1;
- ctrlIvw.attribute("orgheight") = ctrlIvw.attribute("height");
- ctrlLbl.attribute("left") = 0;
- ctrlIvw.attribute("left") = 0;
- //ctrlCbo.attribute("left") = parseInt(ctrlGrup.attribute("width")) - parseInt(ctrlCbo.attribute("width")) - 2;
- ctrlGrup.attribute("orgtop") = ctrlGrup.attribute("top");
- ctrlGrup.attribute("orgleft") = ctrlGrup.attribute("left");
- ctrlLbl.attribute("width") = ctrlGrup.attribute("width");
- ctrlIvw.attribute("width") = ctrlGrup.attribute("width");
- ctrlGrup.attribute("overflow") = "visible";
- }
- }
- var ctrlTar;
- for (i = 0; i < itemCds.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlTar = document.controls("tar_" + itemCds[i]);
- if (ctrlTar != null)
- {
- ctrlTar.attribute("top") = ctrlIvw.attribute("top");
- ctrlTar.attribute("left") = ctrlIvw.attribute("left");
- ctrlTar.attribute("width") = ctrlIvw.attribute("width");
- ctrlTar.attribute("height") = ctrlIvw.attribute("height");
- ctrlTar.attribute("orgtop") = ctrlIvw.attribute("orgtop");
- ctrlTar.attribute("orgheight") = ctrlIvw.attribute("orgheight");
- }
- }
- model.refresh();
- SetUserTimeLog("InitUnitFormLayer", "END");
- }
- /**
- * @desc : 서식항목 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitForm(itemCds, pageIdx, pageCnt, grup)
- {
- InitUnitFormLayer(itemCds, pageIdx, pageCnt, grup);
- InitSetUnitForm(itemCds, true);
- }
- var gLoadUnitFormCnt = 0;
- var gLoadedUnitFormCnt = 0;
- /**
- * @desc : 자유입력 Textarea(부분서식 대체)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitLoadSection(itemCds)
- {
- var pageInfo = new PAGEINFO();
- for (var i = 0; i < itemCds.length; i++)
- {
- var cnt = getNodesetCnt(model, pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']");
- var ivwObj = document.controls("ivw_" + itemCds[i]);
- var tarObj = document.controls("tar_" + itemCds[i]);
- //alert(itemCds[i]+", "+model.getValue(pageInfo.forminfoRef + "/unitformmast/orgsupdegnitemcd"));
- if (cnt == 0)
- {
- //alert(itemCds[i]+", true");
- ivwObj.visible = false;
- tarObj.visible = true;
- //ivwObj.attribute("ctrluseyn") = "N";
- //tarObj.attribute("ctrluseyn") = "Y";
- }
- else
- {
- //alert(itemCds[i]+", false");
- ivwObj.visible = true;
- tarObj.visible = false;
- //ivwObj.attribute("ctrluseyn") = "Y";
- //tarObj.attribute("ctrluseyn") = "N";
- }
- if (tarObj.visible == true)
- {
- setComnEvent(parent.window.javascript.fGetFormMast("srcformcd"), tarObj.attribute("degnitemno"), tarObj.attribute("id"));
- }
- var cboObj = document.controls("cbo_" + gItemCds[i]);
- if (cboObj != null)
- SetUnitFormList(cboObj, gItemCds[i])
- }
- InitSetUnitForm(itemCds, true);
- makeRefByDegnitemno();
- }
- /*
- * @desc : 부분서식 Load
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitSetUnitForm(itemCds, pDraw)
- {
- SetUserTimeLog("InitSetUnitForm", "START");
- var pageInfo = new PAGEINFO();
- var ctrlIvw;
- gLoadUnitFormCnt = itemCds.length;
- gLoadedUnitFormCnt = 0;
- for (var i = 0; i < itemCds.length; i++)
- {
- //try
- //{
- var unitformcd = model.getValue(pageInfo.formdegnRef + "[supdegnitemcd='" + itemCds[i] +
- "' and degnitemkind = 'FRM' and itemuseflag = 'F0']/degnitemcd");
- if (unitformcd != "")
- {
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlIvw.attribute("supdegnitemcd") = itemCds[i];
- ctrlIvw.attribute("unitformcd") = unitformcd;
- SetUnitForm(ctrlIvw, unitformcd, pDraw);
- }
- ctrlCbo = document.controls("cbo_" + itemCds[i]);
- SetUnitFormList(ctrlCbo, itemCds[i]);
- //}
- //catch (e)
- //{
- // alert("[ERROR] InitUnitForm : " + itemCds[i]);
- // throw e;
- //}
- }
- SetUserTimeLog("InitSetUnitForm", "END");
- }
- /**
- * @desc : 부분서식 Set
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitForm(ivwObj, unitformcd, bDraw)
- {
- SetUserTimeLog("SetUnitForm", "START - " + unitformcd);
- //try
- //{
- if(bDraw == null)
- bDraw = true;
- var pageInfo = new PAGEINFO();
- var supdegnitemcd = ivwObj.attribute("supdegnitemcd");
- if (ivwObj.src == "")
- {
- ivwObj.src = "../../../emr/formmngtweb/xrw/SSMRF01200.xrw";
- }
-
- if (opener.model.getValue("/root/emrtemp/sysformxrwyn") == "Y" &&
- model.getValue(pageInfo.forminfoRef + "/unitformmast[formcd='"+unitformcd+"']/formxrwyn") == "Y")
- {
- if(bDraw)
- {
- //alert("xrwyesdraw"+ivwObj.attribute("id"));
- /*********************/
- /* XRW Loading Logic */
- /*********************/
- /*var formdegnseq = model.getValue(pageInfo.forminfoRef + "/unitformmast[formcd='"+unitformcd+"']/formdegnseq") ;
- if (ivwObj.attribute("loaded_formdegnseq") == formdegnseq)
- {
- ivwObj.window.javascript.clearData();
- SetUserTimeLog("SetUnitForm", "clearData END - " + ivwObj.attribute("id"));
- // EmrFormReady(ivwObj.attribute("id"));
- }
- else
- {
- ivwObj.attribute("loaded_formdegnseq") = formdegnseq;
- // ivwObj.window.javascript.fDrawFormByFormDegnSeq(formdegnseq, ivwObj.attribute("id"));
- // SetUserTimeLog("SetUnitForm", "fDrawFormByFormDegnSeq END - " + ivwObj.attribute("id"));
- ivwObj.src = GetFormXrwSubmitStr(formdegnseq, "", ivwObj.attribute("id"));
- SetUserTimeLog("SetUnitForm", "GetFormXrwSubmitStr END");
- var pageInfo = new PAGEINFO();
- ivwObj.window.javascript.fSetDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- SetUserTimeLog("SetUnitForm", "fSetDegnItems END");
- ivwObj.window.javascript.makeInstance(NewPageInfo(ivwObj, supdegnitemcd));
- SetUserTimeLog("SetUnitForm", "makeInstance END");
- SetMultiTextFull(ivwObj, 1);
- ivwObj.model.refresh();
- }*/
- /*ivwObj.window.javascript.fPreviewByDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- "", //디자인정보를 주지 않기로 함.
- pageInfo.forminfoRef + "/vallist",
- pageInfo.forminfoRef + "/imgelist",
- "record",
- supdegnitemcd,
- ivwObj);
- SetUserTimeLog("SetUnitForm", "fPreviewByDegnItems new END");
- SetMultiTextFull(ivwObj, 1);
- ivwObj.model.refresh();*/
- //ivwObj.window.javascript.fDrawFormByFormDegnSeq(model.getValue(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']/formdegnseq"), ivwObj.attribute("id"));
- ivwObj.window.javascript.fLoadFormByFormDegnSeq(model.getValue(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']/formdegnseq"), ivwObj.attribute("id"));
- SetUserTimeLog("SetUnitForm", "fLoadFormByFormDegnSeq END");
- SetMultiTextFull(ivwObj, 1);
- }
- else if(!bDraw)
- {
- ivwObj.window.javascript.fSetDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- }
- }
- else
- {
- if(bDraw)
- {
- if (ivwObj.src != "../../../emr/formmngtweb/xrw/SSMRF01200.xrw")
- {
- ivwObj.src = "../../../emr/formmngtweb/xrw/SSMRF01200.xrw";
- SetUserTimeLog("SetUnitForm", "ivwObj.src END");
- }
- ivwObj.window.javascript.fPreviewByDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- SetUserTimeLog("SetUnitForm", "fPreviewByDegnItems END");
- SetMultiTextFull(ivwObj, 1);
- ivwObj.model.refresh();
- }
- else if(!bDraw)
- {
- ivwObj.window.javascript.fSetDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- }
- }
- //}
- //catch (e)
- //{
- // alert("[ERROR] SetUnitForm");
- // throw e;
- //}
- SetUserTimeLog("SetUnitForm", "END");
- }
- /**
- * @desc : 서식항목 타입 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitFormTypeOne(itemCds)
- {
- var ctrlIvw;
- var ctrlCbo;
- var ctrlGrup;
- var unitformcd;
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrlGrup = document.controls("grup_" + itemCds[i]);
- ctrlGrup.attribute("orgtop") = ctrlGrup.attribute("top");
- ctrlGrup.attribute("orgheight") = ctrlGrup.attribute("height");
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlIvw.attribute("width") = 593;
- ctrlIvw.attribute("orgheight") = ctrlIvw.attribute("height");
- ctrlIvw.attribute("border-style") = "none";
- unitformcd = model.getValue(pageInfo.formdegnRef + "[supdegnitemcd='" + itemCds[i] +
- "' and degnitemkind = 'FRM' and itemuseflag = 'F0']/degnitemcd");
- if (unitformcd != "")
- {
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlIvw.attribute("unitformcd") = unitformcd;
- SetUnitForm(ctrlIvw, itemCds[i]);
- }
- ctrlCbo = document.controls("cbo_" + itemCds[i]);
- SetUnitFormList(ctrlCbo, itemCds[i]);
- }
- }
- /**
- * @desc : 그룹사이즈 최대화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function maxSizeGrup(pItemCd, pIdx, pItemCds, pPageIdx, pGrupBase, flag)
- {
- var grupMinHei = 24;
- var grupObj = document.controls("grup_" + pItemCd);
- if (grupObj.attribute("sizeFlag") == "full")
- {
- return;
- }
- else if (grupObj.attribute("sizeFlag") == "max")
- {
- resetSizeGrup(pIdx, pItemCds, pPageIdx);
- return;
- }
- var grupCnt = 0;
- for (var i = 0; i < pPageIdx.length; i++)
- {
- if (pPageIdx[i] == pIdx) grupCnt++;
- }
- var baseHei = parseInt(pGrupBase.attribute("height"));
- var grupMaxHei = baseHei - (grupMinHei * (grupCnt - 1));
- var ypos = 0;
- var ivwObj;
- var extnObj;
- for (var i = 0; i < pItemCds.length; i++)
- {
- grupObj = document.controls("grup_" + pItemCds[i]);
- ivwObj = document.controls("ivw_" + pItemCds[i]);
- extnObj = document.controls("grup_extn" + pItemCds[i]);
- if (pItemCds[i] == pItemCd)
- {
- grupObj.attribute("height") = grupMaxHei;
- grupObj.attribute("sizeFlag") = "max";
- //grupObj.attribute("orgheight") = grupObj.attribute("height");
- if (extnObj != null)
- {
- extnObj.attribute("visibility") = "visible"
- extnObj.attribute("height") = extnObj.attribute("orgheight");
- }
- ivwObj.attribute("height") = parseInt(grupObj.attribute("height")) - parseInt(ivwObj.attribute("top")) - 1;
- SetMultiTextFull(ivwObj, 1);
- }
- else
- {
- if (pPageIdx[i] == pIdx)
- {
- grupObj.attribute("height") = grupMinHei;
- grupObj.attribute("sizeFlag") = "min";
- if (extnObj != null)
- {
- extnObj.attribute("visibility") = "hidden"
- extnObj.attribute("height") = 0;
- }
- ivwObj.attribute("height") = 0;
- //SetMultiTextFull(ivwObj, 1);
- }
- }
- if (pPageIdx[i] == pIdx)
- {
- grupObj.attribute("top") = ypos;
- ypos += parseInt(grupObj.attribute("height"));
- }
- }
- }
- /**
- * @desc : 그룹 사이즈 초기화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function resetSizeGrup(pIdx, pItemCds, pPageIdx)
- {
- for (var i = 0; i < pItemCds.length; i++)
- {
- if (pPageIdx[i] == pIdx)
- {
- var grupObj = document.controls("grup_" + pItemCds[i]);
- var ivwObj = document.controls("ivw_" + pItemCds[i]);
- var extnObj = document.controls("grup_extn" + pItemCds[i]);
- grupObj.attribute("top") = parseInt(grupObj.attribute("orgtop"));
- grupObj.attribute("height") = parseInt(grupObj.attribute("orgheight"));
- grupObj.attribute("sizeFlag") = "";
- if (extnObj != null)
- {
- extnObj.attribute("visibility") = "visible"
- extnObj.attribute("height") = extnObj.attribute("orgheight");
- }
- ivwObj.attribute("height") = ivwObj.attribute("orgheight");
- SetMultiTextFull(ivwObj, 1);
- }
- }
- }
- /**
- * @desc : 서식 정보 Set
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormInfo(itemCds)
- {
- var ctrlIvw;
- var ctrlCbo;
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + itemCds[i]);
- ctrlCbo = document.controls("cbo_" + itemCds[i]);
- SetUnitForm(ctrlIvw, itemCds[i]);
- SetUnitFormList(ctrlCbo, itemCds[i]);
- }
- }
- var gFstItemCds; //gItemCds가 최상위아이템이 아닐때 세팅된다.
- /**
- * @desc : 기록 아이템 데이터 저장
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitSaveComnFormRecItemData(mode)
- {
- var ctrlIvw;
- var pageInfo = new PAGEINFO();
- if (gFstItemCds == null)
- {
- gFstItemCds = gItemCds;
- }
- model.removeNodeset(pageInfo.sortItemRef);
- //program서식 데이터 저장
- getSaveData(pageInfo.sortItemRef, "append", model, null, mode);
- for (var i = 0; i < gItemCds.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + gItemCds[i]);
- if (ctrlIvw != null && ctrlIvw.visible)
- ctrlIvw.window.javascript.getSaveData(pageInfo.sortItemRef, "append", model, NewPageInfo(ctrlIvw, gFstItemCds[i]));
- copyNodeset(pageInfo.sortItemRef, "/root/hidden/extnformrec/recinfo/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- copyNodeset(pageInfo.sortItemRef, pageInfo.imgerecItemRef + "[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
-
- //copyNodeset(pageInfo.sortItemRef, pageInfo.etcrecItemRef + "/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- }
- /*var nodelist = model.instances(0).selectNodes(pageInfo.formdegnRef + "[degnitemlevlno = '1']/degnitemcd");
- for (var i = 0; i < nodelist.length; i++)
- {
- var degnitemcd = nodelist.item(i).text;
- copyNodeset(pageInfo.sortItemRef, "/root/hidden/extnformrec/recinfo/recitem[fstlevlitemcd = '" +degnitemcd+ "']", "append", model, model);
- copyNodeset(pageInfo.sortItemRef, pageInfo.imgerecItemRef + "[fstlevlitemcd = '" +degnitemcd+ "']", "append", model, model);
- }
- */
- SortRecItem();
- copyNodeset(pageInfo.recItemRef2, pageInfo.recItemRef2, "replace", opener.model, model);
- }
- /**
- * @desc : 기록 아이템 Sort
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SortRecItem()
- {
- sysf_trace_emr("***** SortRecItem() 기록아이템 sort MMRCommon *****");
- sysf_trace_emr("jw.choe deleteAll check && return " + this.name);
- var pageInfo = new PAGEINFO();
- dsf_clearDsList(arrDsHiddenRecinfo, this);
- var formdegnRefDs = this.objects["ds_data_formdegn"];
- formdegnRefDs.filter("degnitemlevlno == '1'");
- var fromdegnRefCnt = formdegnRefDs.rowcount;
- //var nodelist = model.instances(0).selectNodes(pageInfo.formdegnRef + "[degnitemlevlno = '1']/degnitemcd");
- var degnitemcd = null;
- for (var i = 0; i < fromdegnRefCnt; i++)
- {
- degnitemcd = formdegnRefDs.getColumn(i, "degnitemcd");
-
- var recItemRef2Ds = this.objects["ds_hidden_recitem"];
- var sortItemRefDs = this.objects["ds_temp_sort_recitem"];
-
- //jw.choe sort node check
- if( sortItemRefDs != null ){
- sortItemRefDs.filter("fstlevlitemcd == '" +degnitemcd+ "'");
- //recItemRef2Ds.appendData(sortItemRefDs);
- dsf_copyDsList(["ds_hidden_recitem"], ["ds_temp_sort_recitem"], "append", this, this);
- sortItemRefDs.applyChange();
- sortItemRefDs.deleteAll();
- sortItemRefDs.applyChange();
- sortItemRefDs.filter("");
- }
- // copyNodeset(pageInfo.recItemRef2, pageInfo.sortItemRef + "[fstlevlitemcd = '" +degnitemcd+ "']", "append", model, model);
- // model.removeNodeset(pageInfo.sortItemRef + "[fstlevlitemcd = '" +degnitemcd+ "']");
- }
- formdegnRefDs.filter("");
-
- }
- /**
- * @desc : Page Info 재설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function NewPageInfo(ctrlIvw, fstlevlitemcd, refPath)
- {
- sysf_trace_emr("***** NewPageInfo("+ctrlIvw.name+", "+fstlevlitemcd+", "+refPath+") EMRCommon -> MMRCommon *****");
- if(utlf_isNull(refPath))
- refPath = "ds_data";
- //var node = model.instances(0).selectSingleNode(refPath + "/formdegn[degnitemcd='"+ fstlevlitemcd +"']");
- var pageInfo = new PAGEINFO(ctrlIvw);
-
- var formmastDs = this.objects[refPath + "_formmast"];
- var formdegnDs = this.objects[refPath + "_formdegn"];
-
- pageInfo.formCd = formmastDs.getColumn(0, "formcd");
- pageInfo.formDegnSeq = formmastDs.getColumn(0, "formdegnseq");
- pageInfo.degnItemNo = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemno");
- pageInfo.degnItemCd = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemcd");
- pageInfo.degnItemLevlCd = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemlevlcd");
- pageInfo.fstLevlItemCd = fstlevlitemcd;
- pageInfo.degnitemkind = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemkind");
- pageInfo.degnitemlevlno = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemlevlno");
- pageInfo.degnitemnm = formdegnDs.lookup("degnitemcd", fstlevlitemcd, "degnitemnm");
- return pageInfo;
- }
- /**
- * @desc : 부분서식 갯수 카운트하여 리턴
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function GetUnitFormCnt()
- {
- return opener.window.javascript.fGetUnitFormCnt();
- }
- /**
- * @desc : 부분서식 정보 가져온다
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function GetUnitFormInfo(pIvwID)
- {
- try
- {
- var ivwObj = document.controls(pIvwID);
- var supdegnitemcd = ivwObj.attribute("supdegnitemcd");
- var pageInfo = new PAGEINFO();
- ivwObj.window.javascript.fSetDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- ivwObj.window.javascript.makeInstance(pageInfo);
- SetMultiTextFull(ivwObj, 1);
- }
- catch (e)
- {
- alert("[ERROR] GetUnitFormInfo : " + pIvwID);
- throw e;
- }
- }
- /**
- * @desc : XRW Submit
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function GetFormXrwSubmitStr(pFormDegnSeq, pFormCd, pIvwID)
- {
- return getActionURL("TRMRF01201") + "&formdegnseq=" +pFormDegnSeq+ "&formcd=" +pFormCd+ "&ivwid=" +pIvwID+ "&";
- }
- var gFrLoadTime;
- /**
- * @desc : 시간을 리턴헤준다
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function GetFrLoadTime()
- {
- return gFrLoadTime;
- }
- /**
- * @desc : 서식로드 관련 시간계산
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetFrLoadTime(frtime)
- {
- if (frtime == null)
- {
- gFrLoadTime = new Date();
- }
- else
- {
- gFrLoadTime = frtime;
- }
- }
- /**
- * @desc : 서식로드 관련 시간계산
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetToLoadTime(flag, totime)
- {
- if (totime == null)
- {
- totime = new Date();
- }
- if (flag==1)
- {
- cap_loadtime.text = ((totime.getTime() - gFrLoadTime.getTime()) / 1000) + " sec";
- }
- else if (flag==2)
- {
- opener.window.javascript.cap_loadtime.text = ((totime.getTime() - opener.window.javascript.gFrLoadTime.getTime()) / 1000) + " sec";
- }
- }
- /**
- * @desc : 서식로드 관련 시간계산
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function EmrFormReady(ivwID)
- {
- if (ivwID == "")
- {
- SetToLoadTime(1);
- }
- else
- {
- SetToLoadTime(2);
- }
- // if (ivwID == "")
- // {
- // SetToLoadTime(1);
- // }
- // else
- // {
- // SetUnitFormModel(ivwID);
- // fEndLoadForm(ivwID);
- // SetUserTimeLog("EmrFormReady", "END - " + ivwID);
- // }
- //
- // gLoadedUnitFormCnt++;
- // if (gLoadUnitFormCnt == gLoadedUnitFormCnt)
- // {
- // try {
- // fEndLoadForm();
- // SetToLoadTime(2);
- // SetUserTimeLog("EmrFormReady", "END - ALL");
- // }
- // catch (e) {
- // alert("Function fEndLoadForm 가 정의되어 있지 않습니다.");
- // }
- //
- // opener.window.javascript.fLoaderEndForm();
- // }
- }
- /**
- * @desc : 부분서식 모델 Set
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormModel(ivwID)
- {
- SetUserTimeLog("SetUnitFormModel", "START - " + ivwID);
- var ivwObj = document.controls(ivwID);
- var supdegnitemcd = ivwObj.attribute("supdegnitemcd");
- var pageInfo = new PAGEINFO();
- ivwObj.window.javascript.fSetDegnItems(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']",
- pageInfo.forminfoRef + "/vallist", pageInfo.forminfoRef + "/imgelist", "record", supdegnitemcd, ivwObj);
- SetUserTimeLog("SetUnitFormModel", "fSetDegnItems END - " + ivwID);
- ivwObj.window.javascript.makeInstance(NewPageInfo(ivwObj, supdegnitemcd));
- SetUserTimeLog("SetUnitFormModel", "makeInstance END - " + ivwID);
- SetMultiTextFull(ivwObj, 1);
- //ivwObj.model.refresh();
- SetToLoadTime(2);
- SetUserTimeLog("SetUnitFormModel", "makeInstance END - " + ivwID);
- }
- /**
- * @desc : 부분서식리스트 Set
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetUnitFormList(cboObj, supdegnitemcd)
- {
- if (cboObj == null) return;
- var pageInfo = new PAGEINFO();
- cboObj.refresh();
- if (cboObj.itemCount == 0)
- {
- cboObj.visible = false;
- }
- else
- {
- cboObj.visible = true;
- var node = model.instances(0).selectSingleNode(pageInfo.forminfoRef + "/unitformdegn[orgsupdegnitemcd='"+ supdegnitemcd +"']/formdegnseq");
- if (node != null)
- {
- model.makeValue("/root/hidden/choicbo/cbo_" + supdegnitemcd + "/baseunitformdegnseq", node.text);
- model.makeValue("/root/hidden/choicbo/cbo_" + supdegnitemcd + "/extnunitformdegnseq", node.text);
- }
- else
- {
- model.makeValue("/root/hidden/choicbo/cbo_" + supdegnitemcd + "/baseunitformdegnseq", "");
- model.makeValue("/root/hidden/choicbo/cbo_" + supdegnitemcd + "/extnunitformdegnseq", "");
- }
- //model.makeNode("/root/hidden/choicbo/cbo_" + supdegnitemcd + "/extnunitformdegnseq");
- cboObj.attribute("ref") = "/root/hidden/choicbo/cbo_" + supdegnitemcd + "/extnunitformdegnseq";
- cboObj.refresh();
- }
- }
- /**
- * @desc : 서식로더 셋팅
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function setFormLoader(iviewer)
- {
- iviewer.src = "../../medirecweb/xrw/SSMMR01100_서식로더.xrw";
- iviewer.attribute("border-style") = "solid";
- iviewer.attribute("border-color") = "#c0c0c0";
- }
- /**
- * @desc : 서식그리기
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function drawForm()
- {
- for(var i = 0; i < document.controls.length; i++)
- {
- var ctrl = document.controls.item(i);
- if(ctrl.elementName != "xforms:iviewer")
- continue;
- var formcd = ctrl.attribute("formcd");
- var formdegnseqno = ctrl.attribute("formdegnseqno");
- if(formcd == "" && formdegnseqno == "")
- continue;
- //var degndeptcd = ctrl.attribute("degndeptcd");
- //var degnid = ctrl.attribute("degnid");
- ctrl.window.javascript.fSetFormDegnInfo(ctrl);
- }
- }
- /**
- * @desc : 부분서식 데이터 조회
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function getSubFormData()
- {
- var targetRef = "/root/main/subform";
- var srcRef = "/root/main/formrecinfo/items";
- model.removeNodeset(targetRef);
- for(var i = 0; i < document.controls.length; i++)
- {
- var ctrl = document.controls.item(i);
- if(ctrl.elementName != "xforms:iviewer")
- continue;
- var formcd = ctrl.attribute("formcd");
- var formdegnseqno = ctrl.attribute("formdegnseqno");
- var id = "";
- var type = "";
- if(formcd != "")
- {
- id = formcd;
- type = "formcd";
- }
- else if(formdegnseqno != "")
- {
- id = formdegnseqno;
- type = "formdegnseqno";
- }
- else
- continue;
- var cntSubForm = getNodesetCnt(model, targetRef);
- //model.makeValue(targetRef + "[" + (cntSubForm + 1) + "]/@id", id);
- copyNodeset(model, ctrl.model, targetRef + "[" + (cntSubForm + 1) + "]/items", srcRef);
- model.makeValue(targetRef + "[" + (cntSubForm + 1) + "]/@id", id);
- model.makeValue(targetRef + "[" + (cntSubForm + 1) + "]/@type", type);
- }
- }
- /**
- * @desc : 노드셋 Count
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fGetRecNodeCount(srcPath)
- {
- return getNodesetCount(srcPath);
- }
- /**
- * @desc : 노드셋 삭제
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fRemoveRecNodeset(srcPath)
- {
- model.removeNodeset(srcPath);
- }
- //function GetExtnUnitFormInfo(baseunitformdegnseq, extnunitformdegnseq)
- //{
- // return opener.window.javascript.fGetExtnUnitFormInfo(baseunitformdegnseq, extnunitformdegnseq)
- //}
- /**
- * @desc : 가계도
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function openFamilyDiagram(supdegnitemcd)
- {
- sysf_trace_emr("***** openFamilyDiagram("+supdegnitemcd+") MMRCommon *****");
- var fRow = ds_hidden_recitem.findRowExpr("fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='0000002615'");
- var fdgInfo = ds_hidden_recitem.getColumn(fRow, "reccnts");
-
- if(!utlf_isNull(fdgInfo)) {
- frmf_setParameter("SPMMR04711_shape", fdgInfo);
- //model.setValue("/root/properties/parameters/SPMMR04711_shape/SPMMR04711_shapevalue", fdgInfo, true);
- }
-
- var fdgImg = ds_hidden_recitem.getColumn(fRow, "recimge");
- if(!utlf_isNull(fdgImg)) {
- frmf_setParameter("SPMMR04711_base64", fdgImg);
- //model.setValue("/root/properties/parameters/SPMMR04711_base64/SPMMR04711_base64value", fdgImg, true);
- }
- frmf_modal("SPMMR04700", "SPMMR04700", null, null, 1, 0, 0, null, null, null, null, null, "M");
-
- // 가계도 Shape 데이터 및 Base64 이미지를 CDATA로 세팅
- fdgInfo = frmf_getParameter("SPMMR04711_shape");
- fdgImg = frmf_getParameter("SPMMR04711_base64");
- if(!utlf_isNull(fdgInfo)) {
- //model.setValue("/root/properties/parameters/SPMMR04711_shape/SPMMR04711_shapevalue", fdgInfo, true);
- }
- if(!utlf_isNull(fdgImg)) {
- //model.setValue("/root/properties/parameters/SPMMR04711_base64/SPMMR04711_base64value", fdgImg, true);
- }
- if(utlf_isNull(fdgInfo))
- {
- frmf_clearParameter("SPMMR04711_shape");
- frmf_clearParameter("SPMMR04711_base64");
- if( this.objects["ds_temp_fmyrec_recitem"] == null ) sysf_trace_emr("jw.choe ds_temp_fmyrec_recitem is Null MMRCommon !!!!!!! ");
- if( this.objects["ds_temp_fmyrec_recitem"] != null ){
- var fRow = ds_temp_fmyrec_recitem.findRowExpr("fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='0000002615'");
- ds_temp_fmyrec_recitem.deleteRow(fRow);
- }
- return;
- }
- else
- {
- //var targetNode = instance1.selectSingleNode(pageInfo.fmyrecItemRef + "/recitem[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']");
- var idx = 0;
- if( this.objects["ds_temp_fmyrec_recitem"] == null ){
- dsf_createDs("ds_temp_fmyrec_recitem");
- }else if( ds_temp_fmyrec_recitem.findRowExpr("fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='0000002615'") < 0 ){
- idx = ds_temp_fmyrec_recitem.addRow();
- }else{
- //targetNode.parentNode.replaceChild(recitem, targetNode);
- idx = ds_temp_fmyrec_recitem.findRowExpr("fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='0000002615'");
- }
- dsf_makeValue(ds_temp_fmyrec_recitem, "instcd", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "rechistseq", "BIGDECIMAL", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "recitemno", "INT", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "fstlevlitemcd", "string", supdegnitemcd, idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "formcd", "string", "0000002615", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "formdegnseq", "BIGDECIMAL", "12838", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemno", "INT", "1", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemcd", "string", "0000006001", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemkind", "string", "FDG", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemlevlno", "string", "1", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemnm", "string", "가계도", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "degnitemlevlcd", "string", supdegnitemcd.substr(0, 7) + ".0000006", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "rectermcd", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "rectermnm", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "recrefcd", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "recitemnm", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "reccnts", "string", fdgInfo, idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "unitnm", "string", "", idx);
- var objExt = new ExtCommon;
- var objBlob = objExt.decodeBase64(fdgImg, "BIN");
- dsf_makeValue(ds_temp_fmyrec_recitem, "recimge", "BLOB", objBlob, idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "srcimge", "BLOB", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "rowno", "string", "", idx);
- dsf_makeValue(ds_temp_fmyrec_recitem, "colno", "string", "", idx);
-
-
- sysf_trace_emr(ds_temp_fmyrec_recitem.saveXML());
- }
- }
- /**
- * @desc : 최종진단소견
- * @id :
- * @event :
- * @return : void
- * @authur : 2010-03-31 오전 10:11:05 강지훈 추가
- */
- function openLastDiag(supdegnitemcd){
-
-
- var pageInfo = new PAGEINFO();
-
- supdegnitemcd = "0001013001";
- setParameter("lastdiag_supdegnitemcd", supdegnitemcd);
-
- //부분서식 로딩
- var ctrl = document.controls("lbl_" + supdegnitemcd);
-
- if (ctrl != null){
- loadClickSection(supdegnitemcd);
- }
- var bfCosignedYN = opener.window.javascript.fGetFormRec("cosign");
-
- //팝업을띄워 내용입력.
- modal("SPMMR06600");
- var saveFlag = getParameter("lastdiag_saveflag_" + supdegnitemcd); //기록상태
-
-
- //Flag에 따라 기록 저장, 수정, 삭제
- if(saveFlag == "C"){ // 기록내용이 이전과같을때.
- return;
- }
- else if(saveFlag == "D") //삭제
- {
- model.removeNodeSet(pageInfo.recItemRef2 + "[formcd='1000007943']/reccnts");
- model.removeNodeSet(pageInfo.lastdiagItemRef + "/recitem[formcd='1000007943']");
-
- opener.opener.window.javascript.setParameter("SSMMR01100_fChkPreSaveUseFlag", "N");
- opener.window.javascript.setParameter("SSMMR01100_fChkLastDiag", "Y");
- var savedYn = opener.window.javascript.fClickSave("Y");
- if(savedYn == true){
- //기록반려처리
- parent.window.javascript.fSaveLastDiagRec(bfCosignedYN);
- }
-
- }
- else if(saveFlag == "S")
- {
- opener.opener.window.javascript.setParameter("SSMMR01100_fChkPreSaveUseFlag", "N");
- opener.window.javascript.setParameter("SSMMR01100_fChkLastDiag", "Y");
- var savedYn = opener.window.javascript.fClickSave("Y");
- if(savedYn == true){
- //기록반려처리
- parent.window.javascript.fSaveLastDiagRec(bfCosignedYN);
- }
- }
-
- opener.window.javascript.clearParameter("cosignclclyn");
- opener.window.javascript.clearParameter("SSMMR01100_fChkLastDiag");
- opener.opener.window.javascript.clearParameter("SSMMR01100_fChkPreSaveUseFlag", "N");
- //
- //버튼 모양설정
- try {
- setButtonToggleByRecYn(null, event.target);
- } catch (e) {
- }
- }
- /**
- * @desc : 추가기록
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function openEtcRec(obj:Button, e:ClickEventInfo)
- {
- sysf_trace_emr("jw.choe openEtcRec 추가기록 동작에서 opener 을 parent로 처리 확인 필요함. MMRCommon ");
- var supdegnitemcd = obj.name;
- supdegnitemcd = supdegnitemcd.split("_")[2];
-
- var pageInfo = new PAGEINFO();
-
- frmf_setParameter("etcrec_supdegnitemcd", supdegnitemcd);
-
- //부분서식 로딩
- var ctrl = this.components["lbl_" + supdegnitemcd];
-
- if (!utlf_isNull(ctrl))
- {
- loadClickSection(supdegnitemcd);
- }
- var recItemRef2Ds = this.objects["ds_hidden_recitem"];
- var etcrec = "";
-
- if( recItemRef2Ds != null ){
- var fidx = ds_hidden_recitem.findRowExpr("degnitemno=='0' && fstlevlitemcd=='" + supdegnitemcd + "' && formcd='" + parent.fGetFormMast("formcd") + "'");
- etcrec = ds_hidden_recitem.getColumn(fidx, "reccnts");
- }
-
- if(!utlf_isNull(etcrec))
- {
- frmf_setParameter("etc_rec_" + supdegnitemcd, etcrec);
- }
- frmf_modal("SPMMR06100", "SPMMR06100", null, null, null, null, null, null, null, null, null, null, "M");
-
- var recrtn = frmf_getParameter("etcrec_rtn_" + supdegnitemcd);
-
- if(utlf_isNull(recrtn))
- {
- frmf_setParameter("etcrec_rtn_" + supdegnitemcd, recrtn);
- frmf_setParameter("etc_rec_" + supdegnitemcd, recrtn);
-
- var expr = "degnitemno=='0' && fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='" + parent.fGetFormMast("formcd") + "'";
- var recItemRef2Ds = this.objects["ds_hidden_recitem"];
- if( recItemRef2Ds != null && recItemRef2Ds.findRowExpr(expr) != -1 ){
- var fidx = recItemRef2Ds.findRowExpr(expr);
- recItemRef2Ds.setColumn(fidx, "reccnts", "");
- }
-
- expr = "fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='" + parent.fGetFormMast("formcd") + "'";
- var etcrecItemRefDs = this.objects["ds_temp_etcrec_recitem"];
-
- if( etcrecItemRefDs != null && etcrecItemRefDs.findRowExpr(expr) != -1 ){
- var fidx = etcrecItemRefDs.findRowExpr(expr);
- etcrecItemRefDs.deleteRow(fidx);
- }
- // model.removeNode(pageInfo.recItemRef2 + "[degnitemno='0' and fstlevlitemcd='" + supdegnitemcd + "' and formcd='" + opener.window.javascript.fGetFormMast("formcd") + "']/reccnts");
- // model.removeNode(pageInfo.etcrecItemRef + "/recitem[fstlevlitemcd='" + supdegnitemcd + "' and formcd='" + opener.window.javascript.fGetFormMast("formcd") + "']");
- }
- else
- {
- frmf_setParameter("etc_rec_" + supdegnitemcd, recrtn);
-
- var objColInfo = new Array();
- objColInfo.push({col: "instcd", type:"string", size:256});
- objColInfo.push({col: "rechistseq", type:"string", size:256});
- objColInfo.push({col: "recitemno", type:"string", size:256});
- objColInfo.push({col: "fstlevlitemcd", type:"string", size:256});
- objColInfo.push({col: "formcd", type:"string", size:256});
- objColInfo.push({col: "formdegnseq", type:"string", size:256});
- objColInfo.push({col: "degnitemno", type:"string", size:256});
- objColInfo.push({col: "degnitemcd", type:"string", size:256});
- objColInfo.push({col: "degnitemkind", type:"string", size:256});
- objColInfo.push({col: "degnitemlevlno", type:"string", size:256});
- objColInfo.push({col: "degnitemnm", type:"string", size:256});
- objColInfo.push({col: "degnitemlevlcd", type:"string", size:256});
- objColInfo.push({col: "rectermcd", type:"string", size:256});
- objColInfo.push({col: "rectermnm", type:"string", size:256});
- objColInfo.push({col: "recrefcd", type:"string", size:256});
- objColInfo.push({col: "recitemnm", type:"string", size:256});
- objColInfo.push({col: "reccnts", type:"string", size:256});
- objColInfo.push({col: "unitnm", type:"string", size:256});
- objColInfo.push({col: "recimge", type:"BLOB", size:256});
- objColInfo.push({col: "rowno", type:"string", size:256});
- objColInfo.push({col: "colno", type:"string", size:256});
- dsf_createDs("ds_etcrecItemRef_temp", objColInfo);
- ds_etcrecItemRef_temp.addRow();
- ds_etcrecItemRef_temp.setColumn(0, "fstlevlitemcd", supdegnitemcd);
- ds_etcrecItemRef_temp.setColumn(0, "formcd", parent.fGetFormMast("formcd"));
- ds_etcrecItemRef_temp.setColumn(0, "formdegnseq", parent.fGetFormMast("formdegnseq"));
- ds_etcrecItemRef_temp.setColumn(0, "degnitemno", "0");
- ds_etcrecItemRef_temp.setColumn(0, "degnitemcd", "0008458001");
- ds_etcrecItemRef_temp.setColumn(0, "degnitemkind", "STX");
- ds_etcrecItemRef_temp.setColumn(0, "degnitemlevlno", "2");
- ds_etcrecItemRef_temp.setColumn(0, "degnitemnm", "§추가입력");
- ds_etcrecItemRef_temp.setColumn(0, "degnitemlevlcd", supdegnitemcd.substr(0, 7) + ".0008458");
- ds_etcrecItemRef_temp.setColumn(0, "reccnts", recrtn);
-
- // // CDATA 섹션으로 묶어줌
- // var node = recitem.selectSingleNode("reccnts");
- // model.setValue(node, node.text, true);
- //
- // node = recitem.selectSingleNode("recimge");
- // model.setValue(node, node.text, true);
- var etcrecItemRefDs = this.objects["ds_temp_etcrec_recitem"];
- var expr = "fstlevlitemcd=='" + supdegnitemcd + "' && formcd=='" + parent.fGetFormMast("formcd") + "'";
- if( etcrecItemRefDs == null || etcrecItemRefDs.findRowExpr(expr) == -1){
- if( etcrecItemRefDs == null ){
- dsf_createDs("ds_temp_etcrec_recitem");
- etcrecItemRefDs = this.objects["ds_temp_etcrec_recitem"];
- dsf_copyColInfo(etcrecItemRefDs, ds_etcrecItemRef_temp, true);
- }
- etcrecItemRefDs.appendData(ds_etcrecItemRef_temp, true, false);
-
- }else{
- var fidx = etcrecItemRefDs.findRowExpr(expr);
- etcrecItemRefDs.copyRow(fidx, ds_etcrecItemRef_temp, 0);
- }
- // var targetNode = instance1.selectSingleNode(pageInfo.etcrecItemRef + "/recitem[fstlevlitemcd='" + supdegnitemcd + "' and formcd='" + opener.window.javascript.fGetFormMast("formcd") + "']");
- //
- // if(targetNode == null)
- // {
- // model.makeValue(pageInfo.etcrecItemRef, "");
- // var parentNode = instance1.selectSingleNode(pageInfo.etcrecItemRef);
- // parentNode.appendChild(recitem);
- // }
- // else
- // {
- // targetNode.parentNode.replaceChild(recitem, targetNode);
- // }
- /* 동적 사용한 Dataset을 삭제 */
- var oRemoveDs = this.removeChild("ds_etcrecItemRef_temp");
- oRemoveDs = null;
- }
-
- /**
- * @desc : 공통서식내의 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시한다.
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- */
- try {
- setButtonToggleByRecYn(null, obj.name);
- } catch (e) {
- sysf_catchTrace(e);
- }
- }
- /**
- * @desc : 가계도
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function openFamilyDiagram_old(supdegnitemcd)
- {
- var pageInfo = new PAGEINFO();
- //setParameter("SPMMR04700_opemode", "comnform");
- //setParameter("SPMMR04700_fstlevlitemcd", supdegnitemcd);
- //setParameter("SPMMR04700_path_output", pageInfo.extnrecItemRef);
- //setParameter("SPMMR04700_path_output", pageInfo.extnrecItemRef + "[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']");
- var fdgInfo = model.getValue(pageInfo.extnrecItemRef + "[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']/reccnts");
- if(fdgInfo != "") {
- setParameter("SPMMR04711_shape", fdgInfo);
- model.setValue("/root/properties/parameters/SPMMR04711_shape/SPMMR04711_shapevalue", fdgInfo, true);
- }
- var fdgImg = model.getValue(pageInfo.extnrecItemRef + "[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']/recimge");
- if(fdgImg != "") {
- setParameter("SPMMR04711_base64", fdgImg);
- model.setValue("/root/properties/parameters/SPMMR04711_base64/SPMMR04711_base64value", fdgImg, true);
- }
- modal("SPMMR04700", 1, 0, 0, "", "", "");
- // 가계도 Shape 데이터 및 Base64 이미지를 CDATA로 세팅
- fdgInfo = getParameter("SPMMR04711_shape");
- fdgImg = getParameter("SPMMR04711_base64");
- if(fdgInfo != "") {
- model.setValue("/root/properties/parameters/SPMMR04711_shape/SPMMR04711_shapevalue", fdgInfo, true);
- }
- if(fdgImg != "") {
- model.setValue("/root/properties/parameters/SPMMR04711_base64/SPMMR04711_base64value", fdgImg, true);
- }
- if(fdgInfo == "")
- {
- model.removeNode(pageInfo.extnrecItemRef + "[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']");
- return;
- }
- else
- {
- var instcd = instance1.createElement("instcd" );
- var rechistseq = instance1.createElement("rechistseq" );
- var recitemno = instance1.createElement("recitemno" );
- var fstlevlitemcd = instance1.createElement("fstlevlitemcd" );
- var formcd = instance1.createElement("formcd" );
- var formdegnseq = instance1.createElement("formdegnseq" );
- var degnitemno = instance1.createElement("degnitemno" );
- var degnitemcd = instance1.createElement("degnitemcd" );
- var degnitemkind = instance1.createElement("degnitemkind" );
- var degnitemlevlno = instance1.createElement("degnitemlevlno" );
- var degnitemnm = instance1.createElement("degnitemnm" );
- var degnitemlevlcd = instance1.createElement("degnitemlevlcd" );
- var rectermcd = instance1.createElement("rectermcd" );
- var rectermnm = instance1.createElement("rectermnm" );
- var recrefcd = instance1.createElement("recrefcd" );
- var recitemnm = instance1.createElement("recitemnm" );
- var reccnts = instance1.createElement("reccnts" );
- var unitnm = instance1.createElement("unitnm" );
- var recimge = instance1.createElement("recimge" );
- var rowno = instance1.createElement("rowno" );
- var colno = instance1.createElement("colno" );
- fstlevlitemcd.text = supdegnitemcd ;
- formcd.text = "0000002615" ;
- formdegnseq.text = "12838" ;
- degnitemno .text = "1" ;
- degnitemcd .text = "0000006001" ;
- degnitemkind .text = "FDG" ;
- degnitemlevlno.text = "1" ;
- degnitemnm.text = "가계도" ;
- degnitemlevlcd.text = "0000006" ;
- reccnts.text = fdgInfo;
- recimge.text = fdgImg;
- var recitem = instance1.createElement("recitem" );
- recitem.appendChild(instcd );
- recitem.appendChild(rechistseq );
- recitem.appendChild(recitemno );
- recitem.appendChild(fstlevlitemcd );
- recitem.appendChild(formcd );
- recitem.appendChild(formdegnseq );
- recitem.appendChild(degnitemno );
- recitem.appendChild(degnitemcd );
- recitem.appendChild(degnitemkind );
- recitem.appendChild(degnitemlevlno );
- recitem.appendChild(degnitemnm );
- recitem.appendChild(degnitemlevlcd );
- recitem.appendChild(rectermcd );
- recitem.appendChild(rectermnm );
- recitem.appendChild(recrefcd );
- recitem.appendChild(recitemnm );
- recitem.appendChild(reccnts );
- recitem.appendChild(unitnm );
- recitem.appendChild(recimge );
- recitem.appendChild(rowno );
- recitem.appendChild(colno );
- // CDATA 섹션으로 묶어줌
- var node = recitem.selectSingleNode("reccnts");
- model.setValue(node, node.text, true);
- node = recitem.selectSingleNode("recimge");
- model.setValue(node, node.text, true);
- var targetNode = instance1.selectSingleNode(pageInfo.extnrecItemRef + "[fstlevlitemcd='" + supdegnitemcd + "' and formcd='0000002615']");
- if(targetNode == null)
- {
- model.makeValue(pageInfo.extnrecRef, "");
- var parentNode = instance1.selectSingleNode(pageInfo.extnrecRef);
- parentNode.appendChild(recitem);
- }
- else
- {
- targetNode.parentNode.replaceChild(recitem, targetNode);
- }
- }
- }
- /**
- * @desc : 확장서식항목 오픈
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function openExtnUnitFormOfComnMediForm(supdegnitemcd)
- {
- sysf_trace_emr("***** openExtnUnitFormOfComnMediForm("+supdegnitemcd+") MMRCommon *****");
- var pageInfo = new PAGEINFO();
- var cboObj = this.components["cbo_" + supdegnitemcd];
- var cboid = cboObj.name;
- var baseunitformdegnseq = model.getValue("/root/hidden/choicbo/" + cboid + "/baseunitformdegnseq");
- var extnunitformdegnseq = model.getValue("/root/hidden/choicbo/" + cboid + "/extnunitformdegnseq");
- var node = model.instances(0).selectSingleNode(pageInfo.forminfoRef + "/extnformlist[formdegnseq='"+ extnunitformdegnseq +"']/formcd");
- if (node != null && node.text == "0000002615") //가계도
- {
- openFamilyDiagram(supdegnitemcd);
- return;
- }
- var baseNode = model.instances(0).selectSingleNode(pageInfo.forminfoRef + "/unitformmast[formdegnseq='"+ baseunitformdegnseq +"']/srcformcd");
- var extnNode = model.instances(0).selectSingleNode(pageInfo.forminfoRef + "/extnformlist[formdegnseq='"+ extnunitformdegnseq +"']/srcformcd");
- var forminfo;
- var widflag;
- if (baseNode != null && baseNode.text == extnNode.text)
- {
- forminfo = opener.window.javascript.fGetExtnUnitFormInfo(baseunitformdegnseq, extnunitformdegnseq);
- widflag = "ExtnUnitForm";
- }
- else
- {
- // opener.window.javascript.fGetFormInfoByFormDegnCd(extnunitformdegnseq);
- // forminfo, formcd, formdegnseq, extnunitformlistyn, sysformrecdt, formfromdt
- var sysformrecdt = opener.window.javascript.fGetFormRec("sysformrecdt") ;
- opener.window.javascript.fGetFormInfoByFormDegnCd("extnform", "", extnunitformdegnseq, "N", sysformrecdt);
- widflag = "-";
- var cnt = getNodesetCnt(opener.model, "/root/temp/settingform/forminfo/formdegnseq");
- if (cnt == 0)
- forminfo = "";
- else
- forminfo = opener.window.javascript.fGetCSVByFormInfo("/root/temp/settingform/forminfo");
- }
- if (forminfo == "") //기본서식에 없는 확장서식 아이템만 추출한 정보
- {
- messageBox("중복된 아이템을 제거하면 확장서식에 추가될 아이템이", "I004");
- }
- else
- {
- var nodelist = model.instances(0).selectNodes(pageInfo.extnrecItemRef + "[fstlevlitemcd='" +supdegnitemcd+ "' and formcd='" + node.text + "']");
- var recinfo = getNodeListCSV(nodelist);
- //alert(pageInfo.extnrecItemRef + "[fstlevlitemcd='" +supdegnitemcd+ "' and formcd='" + node.text + "']");
- //alert("forminfo: "+forminfo);
- setParameter("openmode", "extnunitform");
- setParameter("fstlevlitemcd", supdegnitemcd);
- setParameter("recinfo", recinfo); //확장서식에 저장한 정보
- setParameter("forminfo", forminfo); //기본서식에 없는 확장서식 아이템만 추출한 정보
- setParameter("widflag", widflag);
- modalUrl("../../../emr/medirecweb/xrw/SSMMR01100_서식로더.xrw", 1, 0, 0, "", "", "");
- }
- }
- /**
- * @desc : 부분서식의 디자인에 있는 이미지를 이미지편집창으로 복사한다.
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function getBaseUnitFormRecImge(ivwId, destModel)
- {
- //var pageInfo = new PAGEINFO();
- var ivwObj = this.components[ivwId];
- if (ivwObj == null || !ivwObj.visible)
- ivwObj = this;
- ivwObj.ds_data_recitem.filter("degnitemkind=='IMG'");
- dsf_copyDsList(["ds_data_recitem"], ["ds_data_recitem"], "replace", destModel, ivwObj);
- ivwObj.ds_data_recitem.filter("");
- //copyNodeset(pageInfo.recItemRef, pageInfo.recItemRef+"[degnitemkind='IMG']", "replace" ,destModel, ivwObj.model);
- //var cnt = getNodesetCnt(destModel, pageInfo.recItemRef);
- var cnt = destModel.ds_data_recitem.rowcount;
- var imgecd;
- var imgedata;
- for (var i = 0; i < cnt; i++)
- {
- if (utlf_isNull(destModel.ds_data_recitem.getColumn(i, "recimge")))
- {
- imgecd = destModel.ds_data_recitem.getColumn(i, "degnitemcd");
- imgedata = ivwObj.ds_data_recitem.lookup("imgecd", imgecd, "imgedata");
- destModel.ds_data_recitem.setColumn(i, "recimge", imgedata);
- }
- }
- }
- /**
- * @desc : 편집된 이미지를 부분서식으로 카피한다.
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function setBaseUnitFormRecImge(ivwId, destModel)
- {
- //var pageInfo = new PAGEINFO();
- var ivwObj = this.components[ivwId];
- if (utlf_isNull(ivwObj) || !ivwObj.visible)
- ivwObj = this;
- var recItemRefDs = destModel.objects["ds_data_recitem"];
- recItemRefDs.filter("utlf_isNull(rowno) && !utlf_isNull(reccnts)");
- //var nodelist = destModel.instance1.selectNodes(pageInfo.recItemRef + "[rowno = '' and reccnts != '']");
- var path;
- for (var i = 0; i < recItemRefDs.rowcount; i++)
- {
- var fRow = (ivwObj.objects["ds_data_recitem"]).findRowExpr("degnitemno=='" + recItemRefDs.getColumn(i, "degnitemno") + "'");
-
- ivwObj.objects["ds_data_recitem"].setColumn(fRow, "reccnts", recItemRefDs.getColumn(i, "reccnts"));
- ivwObj.objects["ds_data_recitem"].setColumn(fRow, "recimge", recItemRefDs.getColumn(i, "recimge"));
- }
-
- recItemRefDs.filter("utlf_isNull(rowno)");
- recItemRefDs.applyChange();
- recItemRefDs.deleteAll();
- recItemRefDs.applyChange();
- recItemRefDs.filter("");
-
- }
- /**
- * @desc : 프로그램서식여부 검사
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function isProgForm()
- {
- sysf_trace_emr("***** isProgForm() MMRCommon *****");
- var formprogflag = fGetFormMast("formprogflag");
- sysf_trace_emr("@@@@@ formprogflag('-', 'prof', 'main' -> return false) : " + formprogflag + " MMRCommon @@@@@");
- if (formprogflag == "-" || formprogflag == "PROF" || formprogflag == "MAIN")
- return false;
- else
- return true;
- }
- /**
- * @desc : lt, gt 변환
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function doReplaceLtGt(path:Dataset)
- {
- // dataset filter
- path.filter("degnitemkind == 'IMG'");
-
- var dsCnt = path.rowcount;
- var shape = "";
-
- for (var i = 0; i < dsCnt; i++)
- {
- if( path.getColumn( i, "reccnts").indexOf("<") == 0 )
- {
- shape = path.getColumn( i, "reccnts").replace(/</gi, "<");
-
- path.setColumn( i, "reccnts", shape.replace(/>/gi, ">"));
- }
- }
-
- // dataset filter reset
- path.filter("");
-
- /*
- var nodelist = model.instances(0).selectNodes(path + "[degnitemkind = 'IMG']/reccnts");
- var shape = "";
- for (var i = 0; i < nodelist.length; i++)
- {
- if (nodelist.item(i).text.indexOf("<") == 0)
- {
- shape = nodelist.item(i).text.replace(/</gi, "<");
- nodelist.item(i).text = shape.replace(/>/gi, ">");
- }
- }
- */
- }
- var gTermViewTopPos = 0;
- var gTermViewHei = 0;
- var gTermViewItems;
- var gTermViewMaxCtrlID = "";
- var gTermViewCtrlInitFlag = false;
- /**
- * @desc : 아이템 영역 최대화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function fSetTermViewMaxSize(ivwID)
- {
- if (gTermViewItems == null) return;
- var ctrl;
- if (! gTermViewCtrlInitFlag)
- {
- for (var i = 0; i < gTermViewItems.length; i++)
- {
- ctrl = document.controls("ivw_" + gTermViewItems[i]);
- ctrl.attribute("orgtop") = ctrl.attribute("top");
- ctrl.attribute("orgheight") = ctrl.attribute("height");
- }
- gTermViewCtrlInitFlag = true;
- }
- ctrl = document.controls(ivwID);
- var ctrlvisible = ivwID == gTermViewMaxCtrlID ? true : false;
- for (var i = 0; i < gTermViewItems.length; i++)
- {
- ctrl = document.controls("ivw_" + gTermViewItems[i]);
- ctrl.attribute("top") = ctrl.attribute("orgtop");
- ctrl.attribute("height") = ctrl.attribute("orgheight");
- ctrl.visible = ctrlvisible;
- }
- ctrl = document.controls(ivwID);
- if (ivwID != gTermViewMaxCtrlID)
- {
- ctrl.visible = true;
- ctrl.attribute("top") = gTermViewTopPos;
- ctrl.attribute("height") = gTermViewHei;
- gTermViewMaxCtrlID = ivwID;
- }
- else
- {
- gTermViewMaxCtrlID = "";
- }
- ctrl.window.javascript.fInitPage(false, parseInt(ctrl.attribute("height")), parseInt(ctrl.attribute("width")), ivwID);
- }
- var gMaxSectionTop;
- var gMaxSectionHei;
- /**
- * @desc : 아이템 영역 최대화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function setSectionSize(itemCds, topPos, heiSz)
- {
- sysf_trace_emr("***** MMRCommon setSectionSize("+itemCds+", "+topPos+", "+heiSz+") *****");
- gMaxSectionTop = topPos;
- gMaxSectionHei = heiSz;
- var ivwObj;
- var tarObj;
- for (var i = 0; i < itemCds.length; i++)
- {
- ivwObj = eval("ivw_" + itemCds[i]);
- tarObj = eval("tar_" + itemCds[i]);
- if (utlf_isNull(tarObj))
- {
- ivwObj.orgtop = ivwObj.position.top;
- ivwObj.orgheight = ivwObj.position.height;
- ivwObj.ctrluseyn = "Y";
- }
- else
- {
- tarObj.position.top = ivwObj.position.top;
- tarObj.position.left = ivwObj.position.left;
- tarObj.position.width = ivwObj.position.width;
- tarObj.position.height = ivwObj.position.height;
- tarObj.style.borderStyle = "solid";
- ivwObj.style.borderStyle = "none";
- ivwObj.orgtop = ivwObj.position.top;
- tarObj.orgtop = tarObj.position.top;
- ivwObj.orgheight = ivwObj.position.height;
- tarObj.orgheight = tarObj.position.height;
- tarObj.taborder = 100 + i;
- }
- }
- }
- var gMaxSectionID = "";
- /**
- * @desc : 아이템의 영역 최대화
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetMaxSizeSection(itemCds)
- {
- var ctrlID = event.target;
- var itemcd = ctrlID.replace("lbl_", "");
- var ctrlvisible = itemcd == gMaxSectionID ? true : false;
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = document.controls("ivw_" + itemCds[i]);
- if (ctrl.attribute("ctrluseyn") == "N")
- ctrl = document.controls("tar_" + itemCds[i]);
- ctrl.attribute("top") = ctrl.attribute("orgtop");
- ctrl.attribute("height") = ctrl.attribute("orgheight");
- ctrl.visible = ctrlvisible;
- if (ctrl.elementName == "xforms:iviewer")
- SetMultiTextFull(ctrl, 1);
- ctrl = document.controls("lbl_" + itemCds[i]);
- ctrl.attribute("background-color") = "#cce8ff";
- }
- ctrl = document.controls("ivw_" + itemcd);
- if (ctrl.attribute("ctrluseyn") == "N")
- {
- ctrl = document.controls("tar_" + itemcd);
- }
- if (! ctrlvisible)
- {
- ctrl.visible = true;
- ctrl.attribute("top") = gMaxSectionTop;
- ctrl.attribute("height") = gMaxSectionHei;
- if (ctrl.elementName == "xforms:iviewer")
- SetMultiTextFull(ctrl, 1);
- ctrl = document.controls("lbl_" + itemcd);
- ctrl.attribute("background-color") = "#99ccff";
- gMaxSectionID = itemcd;
- }
- else
- {
- if (ctrl.elementName == "xforms:iviewer")
- SetMultiTextFull(ctrl, 1);
- gMaxSectionID = "";
- }
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = document.controls("tar_" + itemCds[i]);
- if (ctrl == null)
- {
- ctrl = document.controls("ivw_" + itemCds[i]);
- ctrl.window.javascript.fInitPage(false, parseInt(ctrl.attribute("height")), parseInt(ctrl.attribute("width")));
- }
- }
- ctrl = document.controls("tar_" + itemcd);
- if (ctrl != null && ctrl.attribute("ctrluseyn") == "Y")
- {
- model.setFocus(ctrl.attribute("id"));
- ctrl.dispatch("onkeyup");
- }
- }
- /**
- * @desc : 이미지 버튼 함수 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnImge(itemCds)
- {
- sysf_trace_emr("***** InitBtnImge("+itemCds+") MMRCommon *****");
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = this.components["btn_imge_" + itemCds[i]];
- //alert(itemCds[i]);
- if (!utlf_isNull(ctrl)) {
- //ctrl.attribute("DOMActivate") = "OpenUnitFormImge()";
- ctrl.onclick.setHandler(OpenUnitFormImge);
- }
- else {
- //alert("no set attribute");
- }
- }
- }
- /**
- * @desc : 확장서식 콤보 ref 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 주희경, 2010.01.19
- */
- function initCmbExtnList(itemCds)
- {
- sysf_trace_emr("***** initCmbExtnList("+itemCds+") MMRCommon *****");
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = this.components["cbo_" + itemCds[i]];
- if (!utlf_isNull(ctrl)) {
- //확장서식 콤보리스트 컨트롤들에 이벤트를 동적으로 생성한다. (1. 값셋팅, 2. 해당 서식 오픈 )
- //ctrl.attribute("xforms-select") = "setExtnValueChange(cbo_" + itemCds[i]+", '"+itemCds[i]+"')";
- ctrl.onitemchanged.setHandler(setExtnValueChange);
- //확장서식 콤보리스트들에 동적으로 인스턴스를 매핑한다.
- setExtnFormList(ctrl, itemCds[i]);
- }
- else {
- //alert("no set attribute");
- }
- }
- }
- /**
- * @desc : 확장서식 콤보 value-change 실행 함수
- * @id :
- * @event :
- * @return : void
- * @authur : 주희경, 2010.01.19
- */
- function setExtnValueChange(strCtrl, itemCd)
- {
- fSetBaseForm( itemCd ); //기본서식 로딩
-
- setExtnFormList(eval(strCtrl), itemCd); //현재 선택한 콤보값 저장
- openExtnUnitFormOfComnMediForm(itemCd); //선택한 확장서식 오픈
- }
- /**
- * @desc : 확장서식 팝업에서 기본서식과 겹치는 아이템은 disable 처리
- * ( 기본적으로 쿼리에서 중복은 처리하나 특정 아이템의 경우 부모 아이템이 딸려 조회되야 하므로 부모 아이템을 disable 처리 )
- * @id :
- * @event :
- * @return : void
- * @authur : 주희경, 2010.01.27
- */
- function setCtrlDisabled(gFstLevlItemCd)
- {
- var parentIvw = eval("opener.ivw_"+gFstLevlItemCd);
- var bodyCtrls = ivw_base.body.children;
- var length = bodyCtrls.length;
-
- for (i=0; i< length; i++)
- {
- if ( bodyCtrls.item(i).elementName == "xforms:scrollbar" || bodyCtrls.item(i).elementName == "xforms:import" || bodyCtrls.item(i).elementName == "xforms:script"|| bodyCtrls.item(i).elementName == "xforms:tooltip" || bodyCtrls.item(i).elementName == "xforms:caption" || bodyCtrls.item(i).elementName == "xforms:group")
- continue;
-
- var degnitemno = bodyCtrls.item(i).attribute("degnitemno");
- var cnt = parentIvw.model.getXPathValue("count(/root/main/recinfo/recitem[degnitemno='"+degnitemno+"'])");
- if ( cnt == 1 )
- bodyCtrls.item(i).disabled= true;
- }
- }
- /**
- * @desc : 가계도 버튼 함수 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnFmy(itemCds)
- {
- sysf_trace_emr("***** InitBtnFmy("+itemCds+") MMRCommon *****");
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = this.components["btn_fmy_" + itemCds[i]];
- if (!utlf_isNull(ctrl))
- //ctrl.attribute("DOMActivate") = "OpenUnitFormFmy()";
- ctrl.onclick.setHandler(OpenUnitFormFmy);
- }
- }
- /**
- * @desc : 추가기록 버튼 함수 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnEtcRec(itemCds)
- {
- sysf_trace_emr("***** InitBtnEtcRec("+itemCds+") MMRCommon *****");
- for (var i = 0; i < itemCds.length; i++)
- {
- ctrl = this.components["btn_etcrec_" + itemCds[i]];
- if (!utlf_isNull(ctrl))
- ctrl.onclick.setHandler(openEtcRec);
- }
- }
- /**
- * @desc : 최종진단소견 버튼 함수 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 강지훈
- */
- function InitBtnLastDiag(itemCd)
- {
- ctrl = document.controls("btn_lastdiag_" + itemCd);
- if (ctrl != null)
- {
- ctrl.attribute("DOMActivate") = "openLastDiag('" + itemCd + "')";
- }
- }
- /**
- * @desc : 상용구 관리화면 버튼 함수 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnComn(itemCds)
- {
- //상용구관리화면 에러로 임시 막음(2008-01-03) 박종훈
- // for (var i = 0; i < itemCds.length; i++)
- // {
- // ctrl = document.controls("btn_comn_" + itemCds[i]);
- //
- // if (ctrl != null)
- // ctrl.attribute("DOMActivate") = "OpenComnUseStmt()";
- // }
- }
- /**
- * @desc : 상용구 예문관리 화면 팝업
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function OpenComnUseStmt(obj)
- {
- sysf_trace_emr("***** OpenComnUseStmt("+obj+") MMRCommon *****");
- var ctrlID = obj.name;
- var degnitemcd = ctrlID.replace("btn_comn_", "");
- frmf_setParameter("comn_degnitemcd", degnitemcd);
- frmf_setParameter("comn_srcformcd", parent.fGetFormMast("srcformcd"));
-
- frmf_modal("SMMRF02400", "SMMRF02400", null, null, 1, 50, 50, null, null, null, null, null, "M");
- //modal("SMMRF02400",1 ,50, 50);
- }
- /**
- * @desc :환자진단정보 가져오기 버튼 설정
- * 2010.01.15 dhkim
- * - 버튼위치가 부분서식의 섹션인 경우 버튼을 hidden처리함
- * - isBtnSet 파라미터 추가 (Y:hidden처리적용, N:기존대로사용)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnDiag(itemCd, isBtnSet)
- {
- sysf_trace_emr("***** InitBtnDiag("+itemCd+", "+isBtnSet+") *****");
- ctrl = this.components["btn_diag_" + itemCd];
- if (!utlf_isNull(ctrl))
- {
- //ctrl.attribute("DOMActivate") = "GetPatDiagNm('" + itemCd + "')";
- ctrl.onclick.setHandler(GetPatDiagNm);
- }
-
- //2010.01.15 dhkim
- //isBtnSet 파라미터 추가 (Y:hidden처리적용, N:기존대로사용)
- if(utlf_isNull(isBtnSet)){
- isBtnSet = "N";
- }
-
- //버튼위치가 부분서식의 섹션인 경우 버튼을 hidden처리함
- if(isBtnSet == "Y"){
-
- var srcNode = this.objects["ds_data_formdegn"];
- var srcNodeidx = srcNode.findRowExpr("supdegnitemcd=='" + itemCd + "' && itemuseflag=='F0'");
- if(srcNodeidx == -1){
- return;
- }
-
- var degnitemkindNode = srcNode.getColumn(srcNodeidx, "degnitemkind");
- var degnitemcd = srcNode.getColumn(srcNodeidx, "degnitemcd");
-
- //FRM & 00000005 (자유서식)아닌것
- if(degnitemkindNode == "FRM" && degnitemcd != "0000000005"){
- this.components["btn_diag_" + itemCd].visible = false;
- }else{
- this.components["btn_diag_" + itemCd].visible = true;
- }
- }
-
- }
- /**
- * @desc :환자처방정보 가져오기 버튼 설정
- * 2010.01.15 dhkim
- * - 버튼위치가 부분서식의 섹션인 경우 버튼을 hidden처리함
- * - isBtnSet 파라미터 추가 (Y:hidden처리적용, N:기존대로사용)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnPrcp(itemCd, isBtnSet)
- {
- sysf_trace_emr("***** InitBtnPrcp("+itemCd+", "+isBtnSet+") MMRCommon *****");
- ctrl = this.components["btn_prcp_" + itemCd];
- if (!utlf_isNull(ctrl))
- {
- ctrl.onclick.setHandler(GetPatPrcpList);
- }
-
- //20130329 정창혁/ 처방내역을 선택하여 추가할 수 있는 팝업창 호출
- var ctrlSelBtn = this.components["btn_sel_prcp_" + itemCd];
- if (!utlf_isNull(ctrlSelBtn)) {
- ctrlSelBtn.onclick.setHandler(lf_btn_sel_prcp_onclick);
- }
-
- //2010.01.15 dhkim
- //isBtnSet 파라미터 추가 (Y:hidden처리적용, N:기존대로사용)
- if(utlf_isNull(isBtnSet)){
- isBtnSet = "N";
- }
-
- //버튼위치가 부분서식의 섹션인 경우 버튼을 hidden처리함
- if(isBtnSet == "Y"){
- var srcNode = this.objects["ds_data_formdegn"];
- var srcNodeidx = srcNode.findRowExpr("supdegnitemcd=='" + itemCd + "' && itemuseflag=='F0'");
- if(srcNodeidx == -1){
- return;
- }
-
- var degnitemkindNode = srcNode.getColumn(srcNodeidx, "degnitemkind");
- var degnitemcd = srcNode.getColumn(srcNodeidx, "degnitemcd");
-
- //FRM & 00000005 (자유서식)아닌것
- if(degnitemkindNode == "FRM" && degnitemcd != "0000000005"){
- this.components["btn_prcp_" + itemCd].visible = false;
- }else{
- this.components["btn_prcp_" + itemCd].visible = true;
- }
- }
-
- }
- function lf_btn_sel_prcp_onclick(){
- frmf_modal("SPMMR09000", "SPMMR09000", null, null, null, null, null, null, null, null, null, null, "M");
- }
- /**
- * @desc :환자퇴원처방정보 가져오기 버튼 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnOutPrcp(itemCd)
- {
- ctrl = document.controls("btn_outprcp_" + itemCd);
- if (ctrl != null)
- {
- ctrl.attribute("DOMActivate") = "GetPatOutPrcpList('" + itemCd + "')";
- }
- }
- /**
- * @desc :환자예약정보 가져오기 버튼 설정
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitBtnResv(itemCd)
- {
- ctrl = document.controls("btn_resv_" + itemCd);
- if (ctrl != null)
- {
- ctrl.attribute("DOMActivate") = "GetPatResvList('" + itemCd + "')";
- }
- }
- /**
- * @desc :환자예약정보 가져오기
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function GetPatResvList(itemCd)
- {
- var pageInfo = new PAGEINFO();
- var pid = parent.model.getValue(pageInfo.recMastRef + "/pid");
- //2009-11-10 오후 11:48:12 강지훈 수정 : 첫번째 pid를 찾아가기때문에 생기는 오류
- model.removeNode("/root/send/pid");
- model.setValue("/root/send/reqinfstrec/pid", pid);
- model.makeValue("/root/send/pid", pid );
- if (submit("TRMMR00301"))
- {
- var nodelistResrvinfo = model.instances(0).selectNodes("/root/main/resvlist");
- var resvinfo
- if (nodelistResrvinfo.length > 0)
- {
- resvinfo = "진료예약 : ";
- var orddd = "";
- var ordtm = "";
- var orddeptnm = "";
- var orddrnm = "";
- for (var i = 1; i <= nodelistResrvinfo.length; i++)
- {
- var subNode = nodelistResrvinfo.item(i - 1);
- var orddd = subNode.selectSingleNode("orddd").text;
- var ordtm = subNode.selectSingleNode("ordtm").text;
- var orddeptnm = subNode.selectSingleNode("orddeptnm").text;
- var orddrnm = subNode.selectSingleNode("orddrnm").text;
- if (i == 1)
- {
- resvinfo += orddd.substr(0, 4) + "-" + orddd.substr(4, 2) + "-"
- + orddd.substr(6, 2) + " " + ordtm.substr(0, 2) + ":"
- + ordtm.substr(2, 2) + ", 진료과 : " + orddeptnm + ", 진료의 : " + orddrnm + "\n";
- }
- else
- {
- resvinfo += " " + orddd.substr(0, 4) + "-" + orddd.substr(4, 2) + "-"
- + orddd.substr(6, 2) + " " + ordtm.substr(0, 2) + ":"
- + ordtm.substr(2, 2) + ", 진료과 : " + orddeptnm + ", 진료의 : " + orddrnm + "\n";
- }
- }
- }
- else
- {
- messageBox("예약내역이", "I004");
- return;
- }
- }
- if (resvinfo != "")
- {
- model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", resvinfo);
- }
- model.refresh();
- }
- /**
- * @desc :환자퇴원처방정보 가져오기
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function GetPatOutPrcpList(itemCd)
- {
- var pageInfo = new PAGEINFO();
- var prcpdd = "";
- var bfflag = "bfprcp";
- var flag = "-";
- var todd = "";
- var pid = parent.model.getValue(pageInfo.recMastRef + "/pid");
- var orddd = parent.model.getValue(pageInfo.recMastRef + "/orddd");
- //var orddd = getCurrentDate();
- var cretno = parent.model.getValue(pageInfo.recMastRef + "/cretno");
- //var orddrid = parent.model.getValue(pageInfo.recMastRef + "/orddrid");
- var orddrid = "";
- var orddeptcd = parent.model.getValue(pageInfo.recMastRef + "/orddeptcd");
- var prcpgenrflag = parent.model.getValue(pageInfo.recMastRef + "/chosflag");
- // if (prcpgenrflag == "I")
- // {
- // prcpdd = getCurrentDate();
- // }
- // else
- // {
- prcpdd = "recbfsrch"; // 입퇴원 요약지의 퇴원처방 날짜조건 변경을 위한 구분자 20100301 이윤정
- // }
- //alert("onbuttonclick prcpdd" + prcpdd);
- model.addLog("==GetPatOutPrcpList 입퇴원요약 처방버튼클릭시 : prcpdd ::" + prcpdd);
- //처방정보 가져오기(퇴원처방 prcpkindcd = 60)
- if(fBfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", true))
- {
- var nodelistPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[prcpkindcd = 60 and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E']");
- }
-
- var prcpkind = ""; //처방종류
- var orgprcpnm = ""; //처방명
- var drugmthdspccdnm = ""; //용법
- var prcpdelivefact = ""; //전달사항
- var prcplist = "";
-
- var prcpclscd = "";
-
- var tmpdrugmthdspccdnm = "";
- if(nodelistPrcpinfo.length >= 1){
- for(var i = 1; i <= nodelistPrcpinfo.length; i++)
- {
- var subNode = nodelistPrcpinfo.item(i - 1);
- //orgprcpnm = subNode.selectSingleNode("orgprcpnm").text;
- tmpdrugmthdspccdnm = subNode.selectSingleNode("drugmthdspccdnm").text;
- prcpkind = subNode.selectSingleNode("tempcol13").text;
- orgprcpnm = subNode.selectSingleNode("tempcol6").text;
- drugmthdspccdnm = subNode.selectSingleNode("tempcol7").text;
- prcpclscd = subNode.selectSingleNode("prcpclscd").text;
-
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
-
- drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
- var prcpdelivefact = subNode.selectSingleNode("prcpdelivefact").text;
- //prcplist += prcpkind + " " +orgprcpnm + " " + drugmthdspccdnm + " " + prcpdelivefact + "\n"
-
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += orgprcpnm + "\n"
- }
- }
- }
- else
- {
- messageBox("퇴원처방 내역이", "I004");
- return false;
- }
- var prerec = model.getValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts");
- if (prerec != "")
- {
- prerec = prerec + "\n" + prcplist + "\n";
- }
- else
- {
- prerec = prcplist + "\n"
- }
- model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", prerec);
- model.refresh();
- return true;
- }
- /**
- * @desc :환자처방정보 가져오기
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function GetPatPrcpList(obj:Button, e:ClickEventInfo)
- {
- var itemCd = obj.name.split("_")[2];
-
- var pageInfo = new PAGEINFO();
- var prcpdd = utlf_getCurrentDate();
- var bfflag = "bfprcp";
- var flag = "";
- var todd = "";
-
- var parent_recMastRefDs = parent.objects[pageInfo.recMastRef];
- var pid = parent_recMastRefDs.getColumn(0, "pid");
- var orddd = parent_recMastRefDs.getColumn(0, "orddd");
- var cretno = parent_recMastRefDs.getColumn(0, "cretno");
- var orddrid = parent_recMastRefDs.getColumn(0, "orddrid");
- var orddeptcd = parent_recMastRefDs.getColumn(0, "orddeptcd");
- var prcpgenrflag = parent_recMastRefDs.getColumn(0, "chosflag");
- if (prcpgenrflag == "I" || prcpgenrflag == "E" || prcpgenrflag == "D")
- {
- prcpdd = parent_recMastRefDs.getColumn(0, "formrecdd");
- }
- else
- {
- prcpdd = orddd;
- }
-
- //처방정보 가져오기(퇴원처방 prcpkindcd = 60)
- //if(fBfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", true))
- var prcplistCnt = 0;
- var expr = "!utlf_isNull(prcpkindcd) && prcphistcd != 'C' && prcphistcd != 'L' && prcphistcd != 'E'";
- if(lf_bfPrcpSrchCom( pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", "", "", ""))
- {
- prcplistCnt = ds_prcpsrch_prcplist.getCaseCount(expr);
- //var nodelistPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[prcpkindcd != '' and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E']");
- }
-
- var prcpkind = ""; //처방종류
- var orgprcpnm = ""; //처방명
- var drugmthdspccdnm = ""; //용법
- var prcpdelivefact = ""; //전달사항
- var prcplist = "";
- var prcphistcd = ""; //임시,인증구분
- var prcpclscd = "";
-
- var tmpdrugmthdspccdnm = "";
- if(prcplistCnt >= 1){
- //filter
- ds_prcpsrch_prcplist.filter(expr);
- for(var i = 0; i < prcplistCnt; i++)
- {
- //var subNode = nodelistPrcpinfo.item(i - 1);
- tmpdrugmthdspccdnm = ds_prcpsrch_prcplist.getColumn(i, "drugmthdspccdnm");
- prcpkind = ds_prcpsrch_prcplist.getColumn(i, "tempcol13");
- orgprcpnm = ds_prcpsrch_prcplist.getColumn(i, "tempcol6");
- drugmthdspccdnm = ds_prcpsrch_prcplist.getColumn(i, "tempcol7");
- prcpclscd = ds_prcpsrch_prcplist.getColumn(i, "prcpclscd");
-
- //2012.06.08 처방 가져오기 개인 설정 조회 엄영만
- //fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/envinit/getprcpcnt", "033");
- //var getprcpcnt = model.getValue("/root/envinit/getprcpcnt/answcnt");
- var getprcpcnt = ds_envinit.lookup("qestcd", "033", "answcnt")
- switch(getprcpcnt)
- {
- case "001" : // 기본값 용법 삭제
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
- break;
-
- case "002" : // 약품처방 용법표시
- if (prcpclscd != "A2" && prcpclscd != "A4" && prcpclscd != "A6") {
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
- }
- break;
-
- default:
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
- break;
- }
-
- drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
- prcpdelivefact = ds_prcpsrch_prcplist.getColumn(i, "prcpdelivefact");
- prcphistcd = ds_prcpsrch_prcplist.getColumn(i, "prcphistcd");
-
- if(prcphistcd == "T") {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6") {
- prcplist += "[임] " + orgprcpnm + " " + drugmthdspccdnm + "\n"
- } else {
- prcplist += "[임] " + orgprcpnm + "\n"
- }
- } else {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6") {
- prcplist += orgprcpnm + " " + drugmthdspccdnm + " " + "\n"
- }
- else {
- prcplist += orgprcpnm + "\n"
- }
- }
- }
- ds_prcpsrch_prcplist.filter("");
- }
-
- var recItemRefDs = this.objects[pageInfo.recItemRef];
- var prerec = recItemRefDs.lookup("fstlevlitemcd", itemCd, "reccnts");
- if (!utlf_isNull(prerec))
- {
- prerec = prerec + "\n" + prcplist + "\n";
- }
- else
- {
- prerec = prcplist + "\n"
- }
- var objColInfo = new Array();
- objColInfo.push({col: "pid", type:"string", size:256, val:pid});
- dsf_createDsRow("ds_send_TRMMR00301", objColInfo);
-
-
- var objColInfo = new Array();
- objColInfo.push({col: "pid", type:"string", size:256});
- objColInfo.push({col: "orddd", type:"string", size:256});
- objColInfo.push({col: "cretno", type:"decimal", size:256});
- objColInfo.push({col: "ordtm", type:"string", size:256});
- objColInfo.push({col: "orddeptcd", type:"string", size:256});
- objColInfo.push({col: "orddeptnm", type:"string", size:256});
- objColInfo.push({col: "orddrid", type:"string", size:256});
- objColInfo.push({col: "orddrnm", type:"string", size:256});
- objColInfo.push({col: "dutdeptcd", type:"string", size:256});
- dsf_createDs("ds_main_resvlist", objColInfo);
-
- var oParam = {};
- oParam.id = "TRMMR00301";
- oParam.service = "medirecapp.ComnMediRec";
- oParam.method = "reqGetResvList";
- oParam.inds = "req=ds_send_TRMMR00301";
- oParam.outds = "ds_main_resvlist=resvlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMR00301";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMR00301") > -1)
- {
- //var nodelistResrvinfo = model.instances(0).selectNodes("/root/main/resvlist");
- var resvinfo
- if (ds_main_resvlist.rowcount > 0)
- {
- resvinfo = "진료예약 : ";
- var orddd = "";
- var ordtm = "";
- var orddeptnm = "";
- var orddrnm = "";
- for (var i = 0; i < ds_main_resvlist.rowcount; i++)
- {
- //var subNode = nodelistResrvinfo.item(i - 1);
- var orddd = ds_main_resvlist.getColumn(i, "orddd");
- var ordtm = ds_main_resvlist.getColumn(i, "ordtm");
- var orddeptnm = ds_main_resvlist.getColumn(i, "orddeptnm");
- var orddrnm = ds_main_resvlist.getColumn(i, "orddrnm");
- if (i == 1)
- {
- resvinfo += orddd.substr(0, 4) + "-" + orddd.substr(4, 2) + "-"
- + orddd.substr(6, 2) + " " + ordtm.substr(0, 2) + ":"
- + ordtm.substr(2, 2) + ", 진료과 : " + orddeptnm + ", 진료의 : " + orddrnm + "\n";
- }
- else
- {
- resvinfo += " " + orddd.substr(0, 4) + "-" + orddd.substr(4, 2) + "-"
- + orddd.substr(6, 2) + " " + ordtm.substr(0, 2) + ":"
- + ordtm.substr(2, 2) + ", 진료과 : " + orddeptnm + ", 진료의 : " + orddrnm + "\n";
- }
- }
- }
- else
- {
- resvinfo = "";
- }
-
- dsf_deleteDs("ds_send_TRMMR00301");
- dsf_deleteDs("ds_main_resvlist");
- }
- if (!utlf_isNull(resvinfo))
- {
- prerec += resvinfo;
- }
- var fidx = recItemRefDs.findRow("fstlevlitemcd", itemCd);
- recItemRefDs.setColumn(fidx, "reccnts", prerec);
- sysf_trace_emr("@@@@@ GetPatPrcpList reccnts : " + prerec + " *****");
- //model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", prerec);
-
- }
- function cf_TRMMR00301(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- if(nErrorCode < 0) return;
- }
- /**
- * @desc :환자진단정보 가져오기
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function GetPatDiagNm(obj:Button, e:ClickEventInfo)
- {
- var itemCd = obj.name;
- itemCd = itemCd.split("_")[2];
-
- var pageInfo = new PAGEINFO();
- var sPid = parent.objects[pageInfo.recMastRef].getColumn(0, "pid");
- var sOrddd = parent.objects[pageInfo.recMastRef].getColumn(0, "orddd");
- var sCretno = parent.objects[pageInfo.recMastRef].getColumn(0, "cretno");
- var sOrddeptcd = parent.objects[pageInfo.recMastRef].getColumn(0, "orddeptcd");
- var sIoflag = parent.objects[pageInfo.recMastRef].getColumn(0, "chosflag");
-
- ds_main_diaginfo_diagcdlist.clearData();
- ds_send.setColumn(0, "cond1", sPid);
- ds_send.setColumn(0, "cond2", sOrddd);
- ds_send.setColumn(0, "cond3", sCretno);
- ds_send.setColumn(0, "cond4", sOrddeptcd);
- ds_send.setColumn(0, "cond5", sIoflag);
- var oParam = {};
- oParam.id = "TRMMO00105";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPatDiagInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_diaginfo_diagcdlist=diagcdlist";
- oParam.async = false;
- oParam.callback = "cf_TRMMO00105";
- tranf_submit(oParam);
-
- if (arErrorCode.pop("TRMMO00105") > -1)
- {
- //var nodelistDiaginfo = model.instances(0).selectNodes("/root/main/diaginfo/diagcdlist");
- var ro = "";
- var ms = "";
- var diaglist = "";
- if(ds_main_diaginfo_diagcdlist.rowcount > 0){
- for(var i = 0; i < ds_main_diaginfo_diagcdlist.rowcount; i++)
- {
- sDiagkindcd = ds_main_diaginfo_diagcdlist.getColumn(i, "diagkindcd");
- sDiagkindcdflag = ds_main_diaginfo_diagcdlist.getColumn(i, "diagkindcdflag");
- sTmpdiagcd = ds_main_diaginfo_diagcdlist.getColumn(i, "icd10cd");
- sTmpdiagengnm = ds_main_diaginfo_diagcdlist.getColumn(i, "diagengnm");
- if (sDiagkindcd == "R")
- ro = "R/O";
- else
- ro = " - ";
- if (sDiagkindcdflag == "M")
- ms = "주";
- else
- ms = "부";
- //diaglist += ro + " " + ms + " " + sTmpdiagcd + " " + sTmpdiagengnm + "\n"
- diaglist += ro + " " + ms + " " + sTmpdiagengnm + "\n"
- }
- }
- }
- var prerec = (this.objects[pageInfo.recItemRef]).lookup("fstlevlitemcd", itemCd, "reccnts");
- if (!utlf_isNull(prerec))
- {
- prerec = prerec + "\n" + diaglist;
- }
- else
- {
- prerec = diaglist;
- }
-
- var sidx = (this.objects[pageInfo.recItemRef]).findRowExpr("fstlevlitemcd=='" + itemCd + "'");
- (this.objects[pageInfo.recItemRef]).setColumn(sidx, "reccnts", prerec);
-
- var degnitemno = (this.objects[pageInfo.recItemRef]).getColumn(sidx, "degnitemno");
- ds_data_itemvalue.setColumn(0, "tar_"+itemCd+"_"+degnitemno, prerec);
-
- sysf_trace_emr("@@@@@ prerec : " + prerec + " @@@@@");
-
-
- }
- function cf_TRMMO00105(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- if(nErrorCode < 0) return;
- }
- function EditableCtrl(trgElement, editableBool)
- {
- var editableStr = "";
- if( editableBool )
- editableStr = "true";
- else
- editableStr = "false";
- var childLen = trgElement.children.length;
- var tmpChildObj = null;
- for( var i = 0; i < childLen; i++ ) {
- tmpChildObj = trgElement.children.item(i);
- if (tmpChildObj.attribute("usereditable") == "Y")
- continue;
- // group, switch일 경우
- if( tmpChildObj.elementName == "xforms:group" ) {
- EditableCtrl( tmpChildObj, editableBool);
- }
- // iviewer일 경우
- else if( tmpChildObj.elementName == "xforms:iviewer" ) {
- if( tmpChildObj.src != "" && tmpChildObj.attribute("id").indexOf("FRM_") == -1 )
- EditableCtrl( tmpChildObj.window.body, editableBool);
- }
- // switch일 경우
- else if( tmpChildObj.elementName == "xforms:switch" ) {
- for( var j = 0; j < tmpChildObj.children.length; j++ ) {
- EditableCtrl( tmpChildObj.children.item(j), editableBool);
- }
- }
- else{
- // inout, secret, textarea
- if( tmpChildObj.elementName == "xforms:input" || tmpChildObj.elementName == "xforms:secret" || tmpChildObj.elementName == "xforms:textarea" ) {
- tmpChildObj.attribute("editable") = editableStr;
- }
- // select, select1
- else if( tmpChildObj.elementName == "xforms:select" || tmpChildObj.elementName == "xforms:select1") {
- tmpChildObj.disabled = !editableBool;
- }
- else if( tmpChildObj.elementName == "xforms:datagrid" ) {
- tmpChildObj.isReadOnly(tmpChildObj.fixedRows, tmpChildObj.fixedCols, tmpChildObj.rows - 1, tmpChildObj.cols - 1) = !editableBool;
- }
- else if( tmpChildObj.elementName == "xforms:button" ) {
- tmpChildObj.disabled = !editableBool;
- }
- }
- }
- }
- /*****************************************************************************
- 튜닝
- ******************************************************************************/
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : Section 초기화(부분서식 로딩 및 확장서식 세팅) <-- InitLoadSection, InitSetUnitForm 통합
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function initSection(itemCds)
- {
- sysf_trace_emr("***** initSection("+itemCds+") MMRCommon Section 초기화(부분서식 로딩 및 확장서식 세팅) *****");
- // var pageInfo = new PAGEINFO();
- //alert("itemCds.length : " + itemCds.length);
-
- sysf_trace_emr("jw.choe parent.model -> model copynode 확인");
- // 공통서식 인스턴스 생성
- dsf_copyDsList(arrDsMain, arrDsMain, "replace", this, parent);
- dsf_clearDsList(arrDsRecinfo, this);
- //copyNodeset("/root/main", "/root/main", "replace", model, parent.model);
- //model.removeNodeset("/root/main/recinfo");
-
- //수술기록 분기(2008.10.24 박종훈)
- if (parent.fGetFormMast("srcformcd") == "1000000001" || parent.fGetFormMast("srcformcd") == "0000000676" || parent.fGetFormMast("srcformcd") == "0000003169")
- {
- sysf_trace_emr("jw.choe makeRefByDegnitemLevlCd 임시주석.");
- makeRefByDegnitemLevlCd();
- }
- else
- {
- sysf_trace_emr("jw.choe makeRefByDegnitemno 임시주석.");
- makeRefByDegnitemno();
- }
-
- // trace("######################################");
- // trace("Loading 시작 : " + utlf_getCurrentTime());
- // trace("######################################");
- var fstLoad = false;
- for (var i = 0; i < itemCds.length; i++)
- {
- var formdegnseq = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCds[i], "formdegnseq");
- var unitformcd = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCds[i], "formcd");
- var ivwObj = this.components["ivw_" + itemCds[i]];
- var tarObj = this.components["tar_" + itemCds[i]];
- sysf_trace_emr("@@@@@ formdegnseq : " + formdegnseq + " @@@@@");
- if(utlf_isNull(formdegnseq))
- {
- ivwObj.visible = false;
- tarObj.visible = true;
- fOnLoadComplete();
- }
- //snoweye(2008-12-16) - Section별 로딩
- /*************************************************************************/
- else if(!fstLoad || unitformcd == '0000000005')//첫번째 부분서식만 로딩(2008-12-04)
- {
- sysf_trace_emr("***** !fstLoad || unitformcd == '0000000005' *****");
- ivwObj.visible = true;
- tarObj.visible = false;
- //var unitformcd = model.getValue(pageInfo.formdegnRef + "[supdegnitemcd='" + itemCds[i] +
- // "' and degnitemkind = 'FRM' and itemuseflag = 'F0']/degnitemcd");
-
- var unitformprogflag = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCds[i], "formprogflag");
- if (!utlf_isNull(unitformcd))
- {
- ivwObj.supdegnitemcd = itemCds[i];
- ivwObj.unitformcd = unitformcd;
- trace(unitformcd + " Loading 시작 : " + utlf_getCurrentTime());
- loadUnitForm(ivwObj, itemCds[i]);
- trace(unitformcd + " Loading 끝 : " + utlf_getCurrentTime());
- sysf_trace_emr("@@@@@ " + unitformprogflag + " : " + parent.fGetFormRec("status") + " : " + parent.fGetFormMast("formcd") + " : " + unitformcd );
- if (unitformprogflag != "PROG" && parent.fGetFormRec("status") == "C" && parent.fGetFormMast("formcd") != "0800000722" && unitformcd != '0000000005') //영양검색의뢰 제외
- {
- var srcformcd = ds_data_formmast.getColumn(0, "srcformcd");
-
- //입원경과,외래재진은 제외한다(20130729 이윤주)
- if (srcformcd != "0000000004" && srcformcd != "0000000002") {
- fstLoad = true;//첫번째 부분서식 로딩완료(2008-12-04)
- dispOnLoadComplete(UNIT_FORM);
- }
- }
- else if(unitformprogflag == "PROG" && parent.fGetFormRec("status") == "C" && parent.fGetFormMast("formcd") == "0800000722")
- {
- }
- }
- }
- //snoweye(2008-12-16) - Section별 로딩 끝
- /*************************************************************************/
- if(!utlf_isNull(formdegnseq))
- {
- ivwObj.visible = true;
- tarObj.visible = false;
- }
- if (tarObj.visible == true)
- {
- setComnEvent(parent.fGetFormMast("srcformcd"), tarObj.degnitemno, tarObj.name);
- }
- var cboObj = this.components["cbo_" + gItemCds[i]];
- //var cboObj = eval("cbo_" + gItemCds[i]);
- setExtnFormList(cboObj, gItemCds[i]);
-
- }
-
- sysf_trace_emr("jw.choe xp에 맞는 ds 구성 로직 MMRCommon !!!!!!!!!");
- lf_setItemValueDS();
-
- return fstLoad;
-
- }
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : 부분서식 Load
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function loadUnitForm(ivwObj, fstLevlItemCd)
- {
- sysf_trace_emr("***** MMRCommon loadUnitForm("+ivwObj+", "+fstLevlItemCd+") 부분서식 로드 *****");
- var pageInfo = new PAGEINFO();
- var formdegnseq = ds_data_unitformmast.lookup("orgsupdegnitemcd", fstLevlItemCd, "formdegnseq");
- var formprogflag = ds_data_unitformmast.lookup("orgsupdegnitemcd", fstLevlItemCd, "formprogflag");
- var srcformcd = ds_data_formmast.getColumn(0, "srcformcd");
-
- if(formprogflag == "PROG")
- {
- var formprognm = ds_data_unitformmast.lookup("orgsupdegnitemcd", fstLevlItemCd, "formprognm");
- var obj = sysf_getScreenInfo(formprognm.split("_")[0]);
- // sysf_trace_emr("***** MMRCommon formprognm : " + formprognm );
- sysf_trace_emr("***** MMRCommon obj.scrnurlxp : " + obj.scrnurlxp );
- ivwObj.url = obj.scrnurlxp;
- }
- else
- {
- sysf_trace_emr("jw.choe 특수서식 임시 제외 MMRCommon 3497 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
- //ivwObj.url = getFormUrl(formdegnseq, ivwObj.name);
- ivwObj.url = "emr_medirecxp::5. 통증관찰기록.xfdl";
-
- }
-
- setMaxSizeMtx(ivwObj, 1);
-
- if (srcformcd == "0000000679" && !utlf_isNull(ivwObj.url))
- {
- if (oOpener.frmf_getScreenID() == "SSMMR01100")
- {
- fSetErTriageRec(ivwObj, null);
- }
- else
- {
- ivw_base.fSetErTriageRec(ivwObj, null);
- }
- }
- }
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : private
- * @desc : 확장서식 세팅 (<--SetUnitFormList)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function setExtnFormList(cboObj, supdegnitemcd)
- {
- sysf_trace_emr("***** MMRCommon setExtnFormList("+cboObj+", "+supdegnitemcd+") 확장서식 셋팅 ******");
- if (utlf_isNull(cboObj)) return;
- var pageInfo = new PAGEINFO();
- var cboObjDs = cboObj.innerdataset;
- if (cboObjDs.rowcount == 0)
- {
- cboObj.visible = false;
- }
- else
- {
- cboObj.visible = true;
- var node = (this.objects[pageInfo.forminfoRef + "_unitformmast"]).lookup("orgsupdegnitemcd", supdegnitemcd, "formdegnseq");
-
- var dsNm = "ds_hidden_choicbo_cbo_"+supdegnitemcd;
- var objColInfo = new Array();
- objColInfo.push({col: "baseunitformdegnseq", type:"string", size:256});
- objColInfo.push({col: "extnunitformdegnseq", type:"string", size:256});
- dsf_createDs(dsNm, objColInfo);
- var cboDs = this.objects[dsNm];
- if( cboDs.rowcount == 0 ) cboDs.addRow();
-
- if (!utlf_isNull(node))
- {
- cboDs.setColumn(0, "baseunitformdegnseq", node);
- cboDs.setColumn(0, "extnunitformdegnseq", cboObj.value);
- }
- else
- {
- cboDs.setColumn(0, "baseunitformdegnseq", "");
- cboDs.setColumn(0, "extnunitformdegnseq", "");
- }
- var objBindItem = new BindItem();
- objBindItem.init(ds_Nm, cboObj.name, "value", dsNm, "extnunitformdegnseq");
- this.addChild(dsNm, objBindItem);
- objBindItem.bind();
- //cboObj.attribute("ref") = "/root/hidden/choicbo/cbo_" + supdegnitemcd + "/extnunitformdegnseq";
- }
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 로드할 서식의 Url을 반환
- * @param : formdegnseq - load할 서식의 디자인 순번
- * @param : ivwid - 서식을 load할 viewer의 id
- * @return : Action Url (String)
- * @---------------------------------------------------
- */
- function getFormUrl(formdegnseq, ivwid)
- {
- sysf_trace_emr("***** getFormUrl("+formdegnseq+", "+ivwid+") *****");
- var objColInfo = new Array();
- objColInfo.push({col: "formcd", type:"string", size:256, val:""});
- objColInfo.push({col: "formdegnseq", type:"int", size:256, val:formdegnseq});
- objColInfo.push({col: "ivwid", type:"string", size:256, val:ivwid});
- dsf_createDsRow("ds_inds_TRMRF01201", objColInfo);
- objColInfo = new Array();
- objColInfo.push({col: "formxrw", type:"string", size:256});
- dsf_createDsRow("ds_outds_TRMRF01201", objColInfo);
- var oParam = {};
- oParam.id = "TRMRF01201";
- oParam.service = "formmngtapp.FormDegnMngt";
- oParam.method = "reqGetFormDegnXRWInfo";
- oParam.inds = "req=ds_inds_TRMRF01201";
- oParam.outds = "ds_outds_TRMRF01201=xrw";
- oParam.async = false;
- //oParam.callback = "cf_TRMRF02003";
- tranf_submit(oParam);
- //sysf_trace_emr("***** return ds_outds_TRMRF01201.getColumn(0, 'formxrw') : " + ds_outds_TRMRF01201.getColumn(0, "formxrw") + " *****");
- //return getActionURL("TRMRF01201") + getUserSessionString() + "&formcd=&formdegnseq=" + formdegnseq + "&ivwid=" + ivwid;
- return ds_outds_TRMRF01201.getColumn(0, "formxrw");
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Section영역 최대화 ( <-- SetMaxSizeSection)
- * @param : itemCds - 섹션 itemcd 배열
- * @return :
- * @---------------------------------------------------
- */
- function expandSection(itemCds, obj)
- {
- sysf_trace_emr("***** expandSection("+itemCds+", "+obj+") MMRCommon *****");
- var ctrlID = obj.name;
- var itemcd = ctrlID.replace("lbl_", "");
- var bFold = itemcd == gMaxSectionID ? true : false;
- var ctrl = null;
- var prevItemCd = gMaxSectionID;
- var unitformcd = "";
-
- for (var i = 0; i < itemCds.length; i++)
- {
- var secCtrl = this.components["lbl_" + itemCds[i]];
- var formdegnseq = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCds[i], "formdegnseq");
- unitformcd = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCds[i], "formcd");
- if(utlf_isNull(formdegnseq))
- ctrl = this.components["tar_" + itemCds[i]];
- else
- ctrl = this.components["ivw_" + itemCds[i]];
- if(itemcd == itemCds[i])
- {
- fSetBaseForm( itemCds[i] );
-
- if(bFold)//fold
- {
- ctrl.position.top = ctrl.orgtop;
- ctrl.position.height = ctrl.orgheight;
- secCtrl.style.backgroundColor = secCtrl.orgbackgroundColor;
- gMaxSectionID = "";
- }
- else//expand
- {
- ctrl.orgtop = ctrl.position.top;
- ctrl.orgheight = ctrl.position.height;
- secCtrl.orgbackgroundColor = secCtrl.style.backgroundColor;
- ctrl.position.top = gMaxSectionTop;
- ctrl.position.height = gMaxSectionHei;
- secCtrl.style.backgroundColor = "#99ccff";
- gMaxSectionID = itemcd;
-
- }
- ctrl.visible = true;
- }
- else
- {
- if(bFold)//fold
- {
- ctrl.visible = true;
- }
- else//expand
- {
- ctrl.visible = false;
- if(prevItemCd == itemCds[i])
- {
- ctrl.position.top = ctrl.orgtop;
- ctrl.position.height = ctrl.orgheight;
- secCtrl.style.backgroundColor = secCtrl.orgbackgroundColor;
- }
- }
- }
-
- if (ctrl.name == "ivw_" + itemCds[i])
- {
- SetMultiTextFull(ctrl, 1);
- }
-
- if (unitformcd == "0000000901" || unitformcd == "0000000899" || unitformcd == "0000000900")
- {
- ctrl.fInitPage(false, parseInt(ctrl.position.height), parseInt(ctrl.position.width));
- }
-
- }
- }
- function fSetBaseForm( itemCd )
- {
- sysf_trace_emr("***** fSetBaseForm( "+itemCd +") MMRCommon *****");
- //섹션 선택시 해당 섹션의 부분서식의 로딩되어있는지 확인하여
- //로딩되어 있지 않으면 부분서식로딩
- var ivwObj = this.components["ivw_" + itemCd];
- if(utlf_isNull(ivwObj.url))
- {
- var unitformcd = ds_data_unitformmast.lookup("orgsupdegnitemcd", itemCd, "formcd");
-
- if (!utlf_isNull(unitformcd))
- {
- ivwObj.supdegnitemcd = itemCd;
- ivwObj.unitformcd = unitformcd;
- trace(unitformcd + " Loading 시작 : " + utlf_getCurrentTime());
- loadUnitForm(ivwObj, itemCd);
- trace(unitformcd + " Loading 끝 : " + utlf_getCurrentTime());
-
- }
- }
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : TextArea 최대화 ( <-- SetMultiTextFull)
- * @param : ctrl - TextArea가 포함된 iviewer object 또는 TextArea
- * @return :
- * @---------------------------------------------------
- */
- function setMaxSizeMtx(ivwObj, pDegnItemNo)
- {
- sysf_trace_emr("***** MMRCommon setMaxSizeMtx("+ivwObj+", "+pDegnItemNo+") *****");
- //if (ivwObj.attribute("unitformcd") == "0000000005")
- if (ivwObj.unitformcd == "0000000005")
- {
- //ivwObj.window.javascript.fSetMtxSize(pDegnItemNo, 0, 0, parseInt(ivwObj.attribute("width"))-5, parseInt(ivwObj.attribute("height")));
- ivwObj.fSetMtxSize(pDegnItemNo, 0, 0, parseInt(ivwObj.position.width)-5, parseInt(ivwObj.position.height));
- }
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 복합서식(부분서식을 포함, 공통서식)의 기록 데이터를 취합 ( <-- initSaveComnFormRecItemData)
- * @param : mode - null / 'all' ( 기록된 데이터만 / 전체 데이터)
- * @return :
- * @---------------------------------------------------
- */
- function getSaveComnFormData_old(mode)
- {
- var ctrlIvw;
- var pageInfo = new PAGEINFO();
- if (gFstItemCds == null)
- {
- gFstItemCds = gItemCds;
- }
- model.removeNodeset(pageInfo.sortItemRef);
- //program서식 데이터 저장
- getSaveData(pageInfo.sortItemRef, "append", model, null, mode);
- for (var i = 0; i < gItemCds.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + gItemCds[i]);
- if (ctrlIvw != null && ctrlIvw.visible)
- ctrlIvw.window.javascript.getSaveData(pageInfo.sortItemRef, "append", model, NewPageInfo(ctrlIvw, gFstItemCds[i]));
- copyNodeset(pageInfo.sortItemRef, "/root/hidden/extnformrec/recinfo/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- copyNodeset(pageInfo.sortItemRef, pageInfo.imgerecItemRef + "[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- }
- SortRecItem();
- copyNodeset(pageInfo.recItemRef2, pageInfo.recItemRef2, "replace", opener.model, model);
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 복합서식(부분서식을 포함, 공통서식)의 기록 데이터를 취합 ( <-- initSaveComnFormRecItemData)
- * @param : mode - null / 'all' ( 기록된 데이터만 / 전체 데이터)
- * @return :
- * @---------------------------------------------------
- */
- function getSaveComnFormData(mode, tmp)
- {
- sysf_trace_emr("***** MMRCommon getSaveComnFormData("+mode+", "+tmp+") 복합서식(부분서식을 포함, 공통서식)의 기록 데이터를 취합 *****");
- var ctrlIvw;
- var ctrlTar;
- var pageInfo = new PAGEINFO();
- var savedInfo = new SAVED_INFO();
- if (utlf_isNull(gFstItemCds))
- {
- gFstItemCds = gItemCds;
- }
- dsf_clearDsList(["ds_temp_sort_recitem"], this);//pageInfo.sortItemRef
- //model.removeNodeset(pageInfo.sortItemRef);
- getSaveData("ds_temp_sort_recitem", "append", this, null, mode);
-
-
- for (var i = 0; i < gItemCds.length; i++)
- {
- ctrlIvw = this.components["ivw_" + gItemCds[i]];
-
- //2010-03-31 오전 10:12:54 강지훈 추가 : 입퇴원요약지 최종진단명 추가
- var lastDiagStrDestDs = this.objects["ds_temp_sort_recitem"];
- var lastDiagStrSrcDs = this.objects["ds_temp_lastdiag_recitem"];
- if(lastDiagStrSrcDs != null)
- lastDiagStrSrcDs.filter("fstlevlitemcd == '" +gItemCds[i]+ "'");
-
- var unitformmastDs = this.objects["ds_data_unitformmast"];
- var formdegnseq = unitformmastDs.lookup("orgsupdegnitemcd", gItemCds[i], "formdegnseq");
-
- //dataset check
-
- var sortItemRefDs = this.objects["ds_temp_sort_recitem"];
- var extnformrecDs = this.objects["ds_hidden_extnformrec_recitem"];
- var filterStr = "fstlevlitemcd == '" +gItemCds[i]+ "'";
- var imgerecItemRefDs = this.objects["ds_temp_imgerec_recitem"];
- var fmyrecItemRefDs = this.objects["ds_temp_fmyrec_recitem"];
- var etcrecItemRefDs = this.objects["ds_temp_etcrec_recitem"];
-
-
- if(!utlf_isNull(formdegnseq) && !utlf_isNull(ctrlIvw.url))
- {
- var orgsupdegnitemno = unitformmastDs.lookup("orgsupdegnitemcd", gItemCds[i], "orgsupdegnitemno");
-
- if(utlf_isNull(orgsupdegnitemno))
- {
-
- if ( extnformrecDs != null ){
- extnformrecDs.filter("degnitemkind != 'FDG' && fstlevlitemcd == '" +gItemCds[i]+ "'");
- sortItemRefDs.appendData(extnformrecDs, true, false);
- extnformrecDs.filter("");
- }
-
- if( imgerecItemRefDs != null ){
- imgerecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(imgerecItemRefDs, true, false);
- imgerecItemRefDs.filter("");
- }
-
- if( fmyrecItemRefDs != null ){
- fmyrecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(fmyrecItemRefDs, true, false);
- fmyrecItemRefDs.filter("");
- }
-
- if( etcrecItemRefDs != null ){
- etcrecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(etcrecItemRefDs, true, false);
- etcrecItemRefDs.filter("");
- }
-
- fInsertNodes(lastDiagStrDestDs, lastDiagStrSrcDs); //2010-03-30 오후 9:03:47 강지훈 추가 : 입퇴원요약지 최종진단명 추가
-
-
- // copyNodeset(pageInfo.sortItemRef, "/root/hidden/extnformrec/recinfo/recitem[degnitemkind != 'FDG' and fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- // copyNodeset(pageInfo.sortItemRef, pageInfo.imgerecItemRef + "[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- // copyNodeset(pageInfo.sortItemRef, pageInfo.fmyrecItemRef + "/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model); //가계도
- // copyNodeset(pageInfo.sortItemRef, pageInfo.etcrecItemRef + "/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model); //추가기록
- // fInsertNodes(lastDiagStrDest, lastDiagStrSrc); //2010-03-30 오후 9:03:47 강지훈 추가 : 입퇴원요약지 최종진단명 추가
- continue;
- }
-
- var degnitemlevlcd = this.objects["ds_data_formdegn"].lookup("degnitemno", orgsupdegnitemno, "degnitemlevlcd");
- var fstLevlBaseItemCd = degnitemlevlcd.substr(0, degnitemlevlcd.indexOf(".") >= 0 ? degnitemlevlcd.indexOf(".") : degnitemlevlcd.length);
- var fstLevlItemCd = this.objects["ds_data_formdegn"].lookup("degnitemlevlcd", fstLevlBaseItemCd, "degnitemcd");
-
- if (utlf_isNull(tmp))
- {
-
- //2010-07-27 김달현
- //의뢰상태의 격리병실신청 수정시 보이지 않는 회신내역 필수체크때문에 수정안되는 오류발생(요청번호:9731)
- //HIT강지훈사원이 MMR04900에 ivw.src공백처리로 수정했으나(2010-04-06) 이 부분으로 인해 컨설트 회신시 입력한 내용이 공백으로 저장된 오류발생해 다시 주석처리함.
- //notChkEssnYn 플래그를 추가함.(ivw.attribute)값이 Y일 경우는 필수체크 안함. N으로 설정한 경우만 필수체크함.
- sysf_trace_emr("jw.choe ctrlIvw.attribute(\"notChkEssnYn\") 확인필요 "+ ctrlIvw.name +" MMRCommon");
- if(ctrlIvw.notChkEssnYn != "Y" && ctrlIvw.chkEssentialitem(gItemCds[i].substr(0, 7)) == false)//필수 입력항목 체크(특수서식)
- {
- return savedInfo;
- }
-
- }
- ctrlIvw.getSaveData("ds_temp_sort_recitem", "append", this, NewPageInfo(ctrlIvw, fstLevlItemCd));
-
- }
-
- if ( extnformrecDs != null ){
- extnformrecDs.filter("degnitemkind != 'FDG' && fstlevlitemcd == '" +gItemCds[i]+ "'");
- sortItemRefDs.appendData(extnformrecDs, true, false);
- extnformrecDs.filter("");
- }
-
- if( imgerecItemRefDs != null ){
- imgerecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(imgerecItemRefDs, true, false);
- imgerecItemRefDs.filter("");
- }
-
- if( etcrecItemRefDs != null ){
- etcrecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(etcrecItemRefDs, true, false);
- etcrecItemRefDs.filter("");
- }
-
- if( fmyrecItemRefDs != null ){
- fmyrecItemRefDs.filter(filterStr);
- sortItemRefDs.appendData(fmyrecItemRefDs, true, false);
- fmyrecItemRefDs.filter("");
- }
-
- fInsertNodes(lastDiagStrDestDs, lastDiagStrSrcDs);
-
- // copyNodeset(pageInfo.sortItemRef, "/root/hidden/extnformrec/recinfo/recitem[degnitemkind != 'FDG' and fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- // copyNodeset(pageInfo.sortItemRef, pageInfo.imgerecItemRef + "[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model);
- // copyNodeset(pageInfo.sortItemRef, pageInfo.etcrecItemRef + "/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model); //추가기록
- // copyNodeset(pageInfo.sortItemRef, pageInfo.fmyrecItemRef + "/recitem[fstlevlitemcd = '" +gItemCds[i]+ "']", "append", model, model); //가계도
- // fInsertNodes(lastDiagStrDest, lastDiagStrSrc); //2010-03-30 오후 9:03:47 강지훈 추가 : 입퇴원요약지 최종진단명 추가
- }
- SortRecItem();
-
- // sysf_trace_emr(ds_hidden_recitem.saveXML());
-
- sysf_trace_emr("jw.choe opener -> parent 변경 this : ivw_base, parent : ivw_loader ");
- dsf_copyDsList(arrDsHiddenRecinfo, arrDsHiddenRecinfo, "replace", parent, this);
- //copyNodeset(pageInfo.recItemRef2, pageInfo.recItemRef2, "replace", opener.model, model);
-
- //2010.01.12 안치원 - MTX의 필수입력시 기본부분서식이 있으면 부분서식을, 없으면 MTX의 입력여부를 검사한다.
- if (utlf_isNull(tmp))
- {
- //필수 입력항목 체크(특수서식)
- if(chkEssentialitem() == false)
- {
- return savedInfo;
- }
- }
- }
- /**
- * @desc : Text Box 최대화(컨설트서식을 위해 다시 추가)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function SetMultiTextFull(ivwObj, pDegnItemNo)
- {
- if (ivwObj.unitformcd == "0000000005")
- {
- ivwObj.fSetMtxSize(pDegnItemNo, 0, 0, parseInt(ivwObj.position.width)-5, parseInt(ivwObj.position.height));
- }
- }
- /**
- * @desc :환자처방정보 가져오기
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function GetPatDrugPrcpList(itemCd, itemCd1)
- {
- var pageInfo = new PAGEINFO();
- var prcpdd = "";
- var bfflag = "bfprcp";
- var flag = "";
- var todd = "";
- var pid = parent.model.getValue(pageInfo.recMastRef + "/pid");
- var orddd = parent.model.getValue(pageInfo.recMastRef + "/orddd");
- var cretno = parent.model.getValue(pageInfo.recMastRef + "/cretno");
- var orddrid = parent.model.getValue(pageInfo.recMastRef + "/orddrid");
- var orddeptcd = parent.model.getValue(pageInfo.recMastRef + "/orddeptcd");
- var prcpgenrflag = parent.model.getValue(pageInfo.recMastRef + "/chosflag");
- if (prcpgenrflag == "I" || prcpgenrflag == "E" || prcpgenrflag == "D")
- {
- prcpdd = parent.model.getValue(pageInfo.recMastRef + "/formrecdd");
- }
- else
- {
- prcpdd = orddd;
- }
- //처방정보 가져오기(퇴원처방 prcpkindcd = 60)
- if(fBfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", true))
- {
- //투약
- var nodelistDrugPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[(prcpkindcd != '' and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E') and (prcpclscd = 'A2' or prcpclscd = 'A4' or prcpclscd = 'A6')]");
- //처치
- var nodelistPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[(prcpkindcd != '' and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E') and (prcpclscd = 'H2' or prcpclscd = 'H4')]");
- }
-
- var prcpkind = ""; //처방종류
- var orgprcpnm = ""; //처방명
- var drugmthdspccdnm = ""; //용법
- var prcpdelivefact = ""; //전달사항
- var prcplist = "";
- var prcphistcd = ""; //임시,인증구분
- var prcpclscd = "";
-
- var tmpdrugmthdspccdnm = "";
- if(nodelistDrugPrcpinfo.length >= 1){
- for(var i = 1; i <= nodelistDrugPrcpinfo.length; i++)
- {
- var subNode = nodelistDrugPrcpinfo.item(i - 1);
- //orgprcpnm = subNode.selectSingleNode("orgprcpnm").text;
- tmpdrugmthdspccdnm = subNode.selectSingleNode("drugmthdspccdnm").text;
- prcpkind = subNode.selectSingleNode("tempcol13").text;
- orgprcpnm = subNode.selectSingleNode("tempcol6").text;
- drugmthdspccdnm = subNode.selectSingleNode("tempcol7").text;
- prcpclscd = subNode.selectSingleNode("prcpclscd").text;
-
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
-
- drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
- prcpdelivefact = subNode.selectSingleNode("prcpdelivefact").text;
- prcphistcd = subNode.selectSingleNode("prcphistcd").text;
-
- if(prcphistcd == "T")
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += "[임] " + orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += "[임] " + orgprcpnm + "\n"
- }
- }
- else
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += orgprcpnm + "\n"
- }
- }
- }
- }
- var prerec = model.getValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts");
- if (prerec != "")
- {
- prerec = prerec + "\n" + prcplist + "\n";
- }
- else
- {
- prerec = prcplist + "\n"
- }
- model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", prerec);
-
- var prcpkind = ""; //처방종류
- var orgprcpnm = ""; //처방명
- var drugmthdspccdnm = ""; //용법
- var prcpdelivefact = ""; //전달사항
- var prcplist = "";
- var prcphistcd = ""; //임시,인증구분
- var prcpclscd = "";
-
- var tmpdrugmthdspccdnm = "";
- if(nodelistPrcpinfo.length >= 1){
- for(var i = 1; i <= nodelistPrcpinfo.length; i++)
- {
- var subNode = nodelistPrcpinfo.item(i - 1);
- prcpkind = subNode.selectSingleNode("tempcol13").text;
- orgprcpnm = subNode.selectSingleNode("tempcol6").text;
- tmpdrugmthdspccdnm = subNode.selectSingleNode("drugmthdspccdnm").text;
- drugmthdspccdnm = subNode.selectSingleNode("tempcol7").text;
- prcpclscd = subNode.selectSingleNode("prcpclscd").text;
-
- drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
-
- drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
- drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
- prcpdelivefact = subNode.selectSingleNode("prcpdelivefact").text;
- prcphistcd = subNode.selectSingleNode("prcphistcd").text;
-
- if(prcphistcd == "T")
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += "[임] " + orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += "[임] " + orgprcpnm + "\n"
- }
- }
- else
- {
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
- {
- prcplist += orgprcpnm + " " + drugmthdspccdnm + "\n"
- }
- else
- {
- prcplist += orgprcpnm + "\n"
- }
- }
- }
- }
- var prerec = model.getValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd1 + "']/reccnts");
- if (prerec != "")
- {
- prerec = prerec + "\n" + prcplist + "\n";
- }
- else
- {
- prerec = prcplist + "\n"
- }
- model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd1 + "']/reccnts", prerec);
- model.refresh();
- }
- /**
- * @desc :공통기록 디폴트 포커스처리(MTX)
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function SetDefFocusMTX(itemArr)
- {
- sysf_trace_emr("***** SetDefFocusMTX("+itemArr+") MMRCommon *****");
- var ctrlTar;
- for (var i = 0; i < itemArr.length; i++)
- {
- ctrlTar = this.components["tar_" + itemArr[i]];
- if (ctrlTar != null && ctrlTar.visible)
- {
- ctrlTar.setFocus();
- frmf_inputEnterKey("tar_" + itemArr[i], "onkeyup", new KeyEventInfo);
- //ctrlTar.dispatch("onkeyup");
- break;
- }
- }
- }
- /**
- * @desc :공통기록 디폴트 포커스처리(IVW)
- * @id :
- * @event : onclick
- * @return : void
- * @authur : 박종훈
- */
- function SetDefFocusIVW(itemArr)
- {
- var ctrlIvw;
- var mtxNm = "MTX_1";
- var mtx
- for (var i = 0; i < itemArr.length; i++)
- {
- ctrlIvw = document.controls("ivw_" + itemArr[i]);
- if (ctrlIvw != null && ctrlIvw.visible && ctrlIvw.src != "")
- {
-
- var mtx = ctrlIvw.window.document.controls(mtxNm);
-
- if (mtx == null)
- continue;
-
- ctrlIvw.model.setFocus(mtxNm);
-
- mtx.dispatch("onkeyup");
- break;
- }
- }
- }
- /**
- * @desc : 부분서식 로딩 후 기록내용 셋팅(보완필요)
- * @id :
- * @event :
- * @return : void
- * @authur : 박종훈
- */
- function InitUnitFormDataBySupdegnitemcd(itemcd)
- {
- if (fGetFormRec("status") != "U")
- return;
-
- var ctrlIvw;
- var pageInfo = new PAGEINFO();
- //var degnitemcdlist = model.instances(0).selectNodes(pageInfo.formdegnRef + "[degnitemkind = 'FRM' and itemuseflag='F0']/degnitemcd");
- //var supdegnitemcdlist = model.instances(0).selectNodes(pageInfo.formdegnRef + "[degnitemkind = 'FRM' and itemuseflag='F0']/supdegnitemcd");
- var node = model.instances(0).selectSingleNode(pageInfo.formdegnRef + "[degnitemkind = 'FRM' and itemuseflag='F0' and supdegnitemcd = '" + itemcd + "']");
-
- var degnitemcd = node.getXPathString("degnitemcd");
- var supdegnitemcd = node.getXPathString("supdegnitemcd");
- var degnitemlevlcd = node.getXPathString("degnitemlevlcd");
- ctrlIvw = document.controls("ivw_" + supdegnitemcd);
- if (ctrlIvw != null && ctrlIvw.visible && ctrlIvw.src != "")
- {
- ctrlIvw.window.javascript.clearData();
- var fstlevlitembasecd = degnitemlevlcd.split(".")[0];
- var fstlevlitemcd = model.getValue(gPrePath_formdegnRef + "degnitemlevlcd = '" + fstlevlitembasecd + "']/degnitemcd");
- setSrchData(pageInfo.recItemRef2 + "[fstlevlitemcd='" +fstlevlitemcd+ "' and formcd = '" + degnitemcd + "']", ctrlIvw);
- }
-
- model.removeNodeset(pageInfo.extnrecItemRef);
- var cnt = getNodesetCnt(model, pageInfo.forminfoRef + "/extnformlist");
- for (var i = 1; i <= cnt; i++)
- {
-
- // stmt = pageInfo.recItemRef2 + "[degnitemkind != 'FDG' and fstlevlitemcd='" +model.getValue(pageInfo.forminfoRef + "/extnformlist[" +i+ "]/supdegnitemcd")+
- // "' and formcd = '" + model.getValue(pageInfo.forminfoRef + "/extnformlist[" +i+ "]/formcd") + "']";
- //가계도는 확장서식에 붙으면 안되는 문제로 수정(박종훈/2008-09-29)
- stmt = pageInfo.recItemRef2 + "[degnitemkind != 'FDG' and fstlevlitemcd='" +model.getValue(pageInfo.forminfoRef + "/extnformlist[" +i+ "]/supdegnitemcd")+
- "' and formcd = '" + model.getValue(pageInfo.forminfoRef + "/extnformlist[" +i+ "]/formcd") + "']";
- copyNodeset(pageInfo.extnrecItemRef, stmt, "append", model, model);
- model.removeNodeset(stmt);
- }
- copyNodeset(pageInfo.imgerecItemRef, pageInfo.recItemRef2 + "[degnitemkind='IMG' and rowno != '']", "replace", model, model);
- copyNodeset(pageInfo.fmyrecItemRef + "/recitem", pageInfo.recItemRef2 + "[degnitemkind='FDG']", "replace", model, model);
- copyNodeset(pageInfo.etcrecItemRef + "/recitem", pageInfo.recItemRef2 + "[degnitemno='0']", "replace", model, model);
- copyNodeset(pageInfo.lastdiagItemRef + "/recitem", pageInfo.recItemRef2 + "[formcd = '1000007943']", "replace", model, model); //2010-03-31 오전 10:14:27 강지훈추가 : 최종진단명 요약지 추가
- }
- /**
- * @group :
- * @ver : 2008.06.23
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Section영역 최대화 ( <-- SetMaxSizeSection)
- * @param : itemCds - 섹션 itemcd 배열
- * @return :
- * @---------------------------------------------------
- */
- function loadClickSection(itemCd)
- {
- // var ctrlID = event.target;
- // var itemcd = ctrlID.replace("lbl_", "");
- var ctrl = null;
- var prevItemCd = gMaxSectionID;
- var unitformcd = "";
-
-
- var secCtrl = this.components["lbl_" + itemCd];
- var fidx = ds_data_unitformmast.findRowExpr("orgsupdegnitemcd=='"+itemCd+"'");
- var formdegnseq = ds_data_unitformmast.getColumn(fidx, "formdegnseq");
- unitformcd = ds_data_unitformmast.getColumn(fidx, "formcd");
- if(utlf_isNull(formdegnseq))
- ctrl = this.components["tar_" + itemCd];
- else
- ctrl = this.components["ivw_" + itemCd];
-
- //섹션 선택시 해당 섹션의 부분서식의 로딩되어있는지 확인하여
- //로딩되어 있지 않으면 부분서식로딩
- var ivwObj = this.components["ivw_" + itemCd];
- if(utlf_isNull(ivwObj.url))
- {
- var unitformcd = ds_data_unitformmast.getColumn(fidx, "formcd");
-
- if (!utlf_isNull(unitformcd))
- {
- ivwObj.supdegnitemcd = itemCd;
- ivwObj.unitformcd = unitformcd;
- trace(unitformcd + " Loading 시작 : " + utlf_getCurrentTime());
- loadUnitForm(ivwObj, itemCd);
- trace(unitformcd + " Loading 끝 : " + utlf_getCurrentTime());
-
- }
- }
- }
- /**
- * @desc : 공통서식내의 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시한다.
- * @id :
- * @event : 공통서식을 열었을때
- * @param : pViewObj - button을 가지고 있는 화면이 열린 view
- * pButtonIds - 확장버튼(이미지,가계도,추가기록)의 id 의 배열
- * @return : void
- * @authur : 안치원
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- */
- function setButtonToggleAllByRecYn(pViewObj, pButtonIds)
- {
- sysf_trace_emr("***** setButtonToggleAllByRecYn("+pViewObj+", "+pButtonIds+") MMRCommon *****");
- if( pButtonIds == null ) return;
- for (var i = 0; i < pButtonIds.length; i++) {
- setButtonToggleByRecYn(pViewObj, pButtonIds[i]);
- }
- }
- /**
- * @desc : 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시한다.
- * @id :
- * @event : 확장버튼 클릭후에 열린 팝업창이 닫힐때,
- * setButtonToggleAllByRecYn 에 의한 호출일때
- * @param : pViewObj - button을 가지고 있는 화면이 열린 view
- * pButtonIds - 확장버튼(이미지,가계도,추가기록)의 id
- * @return : void
- * @authur : 안치원
- * @history : 2009.09.09 신규 안치원 ACW_090909A
- */
- function setButtonToggleByRecYn(pViewObj, pButtonId)
- {
- sysf_trace_emr("***** setButtonToggleByRecYn ("+pViewObj+", "+pButtonId+") MMRCommon *****");
- //alert("setButtonToggleByRecYn>>pButtonId::"+pButtonId);
- /**
- * pButtonId Example
- * btn_imge_0008224001 이미지
- * btn_fmy_0008224001 가계도
- * btn_etcrec_0008224001 추가기록
- */
- var buttonObj = null;
- if (pViewObj == null) {
- pViewObj = this;
- }
- sysf_trace_emr("@@@@@ pViewObj.name : " + pViewObj.name + " @@@@@");
- buttonObj = pViewObj.components[pButtonId];
- var arr = pButtonId.split("_");
- var supperItemCd = arr[2];
- var recPath = "";
- if (arr[1] == "imge") {
- recPath = "ds_temp_imgerec_recitem";//gPageInfo.imgerecItemRef;
- }
- else if (arr[1] == "fmy") {
- recPath = "ds_temp_fmyrec_recitem";//gPageInfo.fmyrecItemRef + "_recitem";
- }
- else if (arr[1] == "etcrec") {
- recPath = "ds_temp_etcrec_recitem";//gPageInfo.etcrecItemRef + "_recitem";
- }
- else if (arr[1] == "lastdiag") { //2010-02-16 오후 3:35:13 강지훈 추가
- recPath = "ds_temp_lastdiag_recitem";//gPageInfo.lastdiagItemRef + "_recitem";
- }
- else {
- return;
- }
-
- if( utlf_isNull(pViewObj.objects[recPath]) ) var nodes = 0;
- //alert("setButtonToggleByRecYn>>supperItemCd::"+supperItemCd);
- else var nodes = (pViewObj.objects[recPath]).getCaseCount("fstlevlitemcd == '" + supperItemCd + "'");
- //alert("setButtonToggleByRecYn>>nodes.length::"+nodes.length);
- //sysf_trace_emr("setButtonToggleByRecYn>>nodes.length::"+nodes);
- if (arr[1] == "imge") {
- if (nodes > 0) {
- buttonObj.style.backgroundImage = "IMG::emr\\MR\\icon_picture_s.png";
- //buttonObj.attribute("background-image") = "../../../emr/commonweb/images/icon_picture_s.jpg";
- }
- else {
- buttonObj.style.image = "IMG::emr\\MR\\icon_picture.gif";
- //buttonObj.attribute("background-image") = "../../../com/commonweb/images/icon_picture.gif";
- }
- } else {
- if (nodes > 0) {
- buttonObj.class = "btn5";
- }
- else {
- buttonObj.class = "btn2";
- }
- }
- }
- /**
- * @desc : 사용자 답변 조회
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetUserEnvOcsOrdAnsw(oDsTarget, qestcd){
-
- var oDsEnvinfo = emr_getOrderBaseInfo("envinfo");
- if (oDsEnvinfo != null) {
- oDsTarget.copyRow(0, oDsEnvinfo, oDsEnvinfo.findRow("qestcd", sQestCd));
- return oDsTarget;
- // var anstcnt = oDsEnvinfo.getColumn(oDsEnvinfo.findRow("qestcd", sQestCd), "answcnt");
- // return anstcnt;
- }
- // else {
- // var sRef = dsf_createDsRow("ds_cond_reqdata", [{col:"interqestcd", type:"string", size:256, val:sQestCd}]);
- // var oRef = this.objects[sRef];
- //
- // var sDsTemp = dsf_createDs("ds_temp");
- // var oDsTemp = this.objects[sDsTemp];
- //
- // var answcnt = ""; // 답변번호
- //
- // var oParam = {};
- // oParam.id = "TRMMB01104"; // transaction을 구분하기 위한 ID
- // oParam.service = "prcpbaseapp.EnvInfoMngt"; // service ID
- // oParam.method = "reqGetInterfaceAnsw"; // method ID
- // oParam.inds = "req=" + sRef; // transaction을 요청할 때 입력값으로 보낼 Dataset 의 ID
- // oParam.outds = sDsTemp + "=interface"; // transaction을 처리 결과를 받을 Dataset의 ID
- //
- // tranf_submit(oParam);
- //
- // answcnt = oDsTemp.getColumn(0, "answcnt");
- //
- // var oRemoveDs = this.removeChild(sDsTemp);
- // oRemoveDs = null;
- // oRemoveDs = this.removeChild(sRef);
- // oRemoveDs = null;
- //
- // return answcnt;
- // }
- /*
- model.removeNodeset(rsltref);
- model.makeNode(rsltref);
- var viewerObj = getViewer("sysMessage");
- //KNUH_20110208, 주희경, 로그인 시 미리 데이터를 조회해 놓고 copy해서 쓰는 방식으로 변경
- var srcNode = viewerObj.window.instance1.selectSingleNode(gvOrderBasicInfoPath +"/interface[qestcd='"+qestcd+"']");
-
- var targetNode = instance1.selectSingleNode(rsltref);
- var srcChildNodes = srcNode.childNodes;
-
- for(i=0; i<srcChildNodes.length; i++)
- {
- targetNode.appendChild(srcChildNodes.item(i));
- }
- model.refresh();
- */
- }
- /***************************************************************************************************
- * Function : emr_getOrderBaseInfo
- * Description : 아이디에 해당하는 기초정보를 리턴한다. (시스템메세지 정보 조회)
- * Argument : sID [String : 데이타셋명(ds_를 제외한)]
- * : objSrcDs [Dataset : 리턴 데이타를 받을 데이타셋]
- * return type : [Dataset : 기초정보를 리턴]
- * Creator :
- ***************************************************************************************************/
- function emr_getOrderBaseInfo(sID, objSrcDs)
- {
- var oDescDs = agv_objAppTopPath.form.dv_orderbasicinfo.lf_getOrderBaseInfo(sID);
- if (utlf_isNull(objSrcDs)) {
- return oDescDs
- }
- else {
- objSrcDs.copyData(oDescDs, true);
- }
- }
- function lf_setSrchData(viewobj){
- sysf_trace_emr("***** lf_setSrchData("+viewobj+") *****");
- if( utlf_isNull(viewobj) ) viewobj = this;
- // MRF01200 fFormReady()
- // 초기화 되는 부분 로직 필요
- // if( (parent.objects["ds_temp"] != null && (parent.ds_temp.getColumn(0, "scrid") == "SMMRF01000" || parent.ds_temp.getColumn(0, "scrid") == "SMMRF00600" )) ||
- // (frmf_getCurrentFormKind() != 'main' && ds_temp.getColumn(0, "formxrwyn") == "Y" && ds_temp.getColumn(0, "loadcomplete") != "true"))
- // {
- var loadStatus = "";
- var formkind = viewobj.ds_data_formmast == null ? "" : viewobj.ds_data_formmast.getColumn(0, "formkind");
- if(formkind == "C")
- loadStatus = UNIT_FORM;
- /*
- // 그리드 Height 재설정
- fResetGrd();
-
- // 현재 달력 설정
- //if(opener.model.getValue("/root/temp/scrid") != "SMMRF01000")
- fSetCurrentDateCal();
-
- // OCX 이미지 로드
- fLoadOcxImage();
-
- // 가계도 데이터 로드
- fLoadFdgInfo();
-
- // 버튼 컨트롤 속성 설정
- //fSetBtnCtrlAttrval();
-
- // Disabled 컨트롤 재설정
- fResetDisableCtrls();
-
- // RDO, CHK 컨트롤 서브아이템 텍스트 숨기기 확인
- fSelCtrlHidden();
-
- */
- dsf_copyDsList(["ds_temp_recitem"], ["ds_data_recitem"], "replace", viewobj, viewobj);
- lf_setItemValueDS(this);
-
- sysf_trace_emr("jw.choe 초기화 시 ds_data_formmast 는 존재하지 않는다.. MMRCommon ");
- dispOnLoadComplete(loadStatus, viewobj.ds_data_recitem.getColumn(0, "formcd"));
-
- sysf_trace_emr("MMRCommon parent.frmf_getScreenID() : " + parent.frmf_getScreenID());
- sysf_trace_emr("jw.choe opener -> parent changed! MMRCommon ");
- /*
- // 백업 원위치
- model.copyNode( "/root/temp2/localimage", "/root/main/localimage" );
- model.removenode( "/root/main/localimage" );
-
- model.makeValue("/root/temp/loadcomplete", "true");
- */
-
- // fRecalculate() 함수 선행 작업.
- g_degnitemlevlcnt = 0;
- // calculation 갯수 체크하는 부분 제외
- // fSetDegnitemlevlcnt();
-
- var newflag = parent.frmf_getParameter("fLoadNewForm", "Y");
-
-
- if ( newflag == "Y" ) //2010.06.15, 주희경, 제증명 수정모드에서는 디폴트값 셋팅 안하도록
- {
- // 기본값 설정 컨트롤 계산
- fCacDefltVal();
- }
-
- //2010.06.15, 주희경, 제증명 관리의 이력탬에서 클릭하여 조회시에는 디폴트 값 셋팅 안하도록 설정 해 놓은 세션값 clear
- parent.frmf_clearParameter("fLoadNewForm");
-
-
- // 서식데이터를 불러오는 경우 그리드의 rowno 를 CDATA 해제함.
- // fRemoveGrdCdata();
-
- //20130808 Start
- if(parent.frmf_getScreenID()=="SSMMR01100"){//opener
- var formcd = model.getValue(g_pageInfo.formmastRef + "/formcd");
- if(formcd=="0900005261"){
- var atdoctnm=model.getValue("/root/main/recinfo/recitem[degnitemno='181']/reccnts"); // 전공의
- var staffname = model.getValue("/root/main/recinfo/recitem[degnitemno='182']/rectermcd"); // Staff
- if(atdoctnm==null || atdoctnm==""){
- model.setValue("/root/main/recinfo/recitem[degnitemno='181']/reccnts", getUserInfo("usernm"));
- }
- if(staffname==null || staffname==""){ // 스태프 자동세팅되도록 수정
- var usernm=parent.parent.parent.cmb_anstdrid1.label;
- if(usernm!=null && usernm!="" && usernm!="-"){
- model.makeNode("/root/main/valcd");
- model.makeValue("/root/send/temp/valitemnm", usernm);
- model.makeValue("/root/send/temp/grupcd", "0003106006"); // 서식 아이템에서 스태프에 해당되는 값을 가져온다.
- if(submit("TRMRF00307")){
- if(model.getValue("/root/main/itemvalcd[1]/valcd")!="" && model.getValue("/root/main/itemvalcd[1]/valcd")!=null){
- model.setValue("/root/main/recinfo/recitem[degnitemno='182']/rectermcd", model.getValue("/root/main/itemvalcd[1]/valcd"));
- model.setValue("/root/main/recinfo/recitem[degnitemno='182']/rectermnm", model.getValue("/root/main/itemvalcd[1]/valnm"));
- }
- }
- }
- }
- //20131104 Start 마취전 평가서를 오픈시 마취 일반정보의 수술 구분이 응급이라면 마취전 평가서에 'E'로 체크 되도록 기능 추가
- var opflag=parent.parent.parent.rdo_opflag.value;
- if(opflag=="2"){
- model.setValue("/root/main/recinfo/recitem[degnitemno='146']/rectermcd", "0031829001");
- model.setValue("/root/main/recinfo/recitem[degnitemno='146']/rectermnm", "E");
- }
- //20131104 End
-
- }
- }
- }
- function lf_setSrchData2(viewobj){
- sysf_trace_emr("***** lf_setSrchData2("+ viewobj +") MMRCommon ******");
- sysf_trace_emr("@@@@@ viewobj : " + viewobj.name + " *****");
-
-
-
- //trace("[DEBUG] setSrchData srcPath::"+srcPath);
- var startTime = new Date().getTime(); //시작시간 체크(단위 ms)
- var pageInfo = new PAGEINFO(viewobj);
- var nodeList = this.objects["ds_hidden_recitem"];
- //viewobj.model.removeNodeset(pageInfo.recItemRef + "[orgdegnitemkind = 'DGN' or orgdegnitemkind = 'OPN' or orgdegnitemkind = 'CCN']");//"/root/main/recinfo/recitem";
- viewobj.ds_data_recitem.filter("orgdegnitemkind == 'DGN' || orgdegnitemkind == 'OPN' || orgdegnitemkind == 'CCN'");
- var initRowno = 0;
- var prevColno = 0;
- var cntGSL = 0;
- var prev_Grddegnitemlevlcd = "";
- var prev_Grddegnitemno = "";
- var prev_degnitemlevlcd = "";
- var prev_degnitemno = "";
- var prev_MSLdegnitemno = ""; //2010-03-16 오전 9:17:25 강지훈 : MSL타입 수정모드시 값설정이 제대로 되지않는 오류 수정
-
- //2010-02-08 오후 1:28:25 강지훈 수정 : default 값이 설정되어있을경우 default값을 빼기위해서 destNode의 값을 일괄삭제
- var filterStr = "!utlf_isNull(rectermcd) || !utlf_isNull(rectermnm) || !utlf_isNull(reccnts)";
- var delNodes = viewobj.ds_data_recitem;
- delNodes.filter(filterStr);
- for(var a = 0; a < delNodes.rowcount; a++){
- //var trgNode = delNodes.item(a);
- if(delNodes.getColumnInfo("rectermcd") != null){
- delNodes.setColumn(a, "rectermcd", "");
- }
- if(delNodes.getColumnInfo("rectermnm") != null){
- delNodes.setColumn(a, "rectermnm", "");
- }
- if(delNodes.getColumnInfo("reccnts") != null){
- delNodes.setColumn(a, "reccnts", "");
- }
- }
- delNodes.filter("");
-
- var nodeListCnt = nodeList == null ? 0 : nodeList.rowcount;
- if( nodeListCnt == 0 ) sysf_trace_emr("@@@@@ ds_hidden_recitem rowcount == 0 " );
- trace("[DEBUG] setSrchData nodeList.length::"+nodeListCnt);
- for(var i = 0; i < nodeListCnt; i++)
- {
- var srcNode = nodeList; // 기록노드 recitem 하나씩 가져옴.
- //var srcCopyNode = srcNode.cloneNode(true);
- var formcdNode = srcNode.getColumn(i, "formcd");
- var formdegnseqNode = srcNode.getColumn(i, "formdegnseq");
- var degnitemcdNode = srcNode.getColumn(i, "degnitemcd");
- var degnitemnmNode = srcNode.getColumn(i, "degnitemnm");
- trace("[DEBUG] setSrchData degnitemnmNode::"+degnitemnmNode);
- var degnitemnoNode = srcNode.getColumn(i, "degnitemno");
- trace("[DEBUG] setSrchData degnitemnoNode::"+degnitemnoNode);
- var degnitemkindNode = srcNode.getColumn(i, "degnitemkind");
- var degnitemlevlcdNode = srcNode.getColumn(i, "degnitemlevlcd");
- trace("[DEBUG] setSrchData degnitemkindNode::"+degnitemkindNode);
- trace("[DEBUG] setSrchData reccnts::"+srcNode.getColumn(i, "reccnts"));
- var rectermcdNode = srcNode.getColumn(i, "rectermcd");
- var rectermnmNode = srcNode.getColumn(i, "rectermnm");
- var recrefcdNode = srcNode.getColumn(i, "recrefcd");
- var recitemnmNode = srcNode.getColumn(i, "recitemnm");
-
- var reccntsNode = srcNode.getColumn(i, "reccnts");
- var rownoNode = srcNode.getColumn(i, "rowno");
- var colnoNode = srcNode.getColumn(i, "colno");
-
- //"/root/main/forminfo/formdegn";
- sysf_trace_emr("jw.choe gridtype??!!!!!");
- /*
- var supdegnitemnoNode = viewobj.ds_data_formdegn.lookup("degnitemno", degnitemnoNode, "supdegnitemno");
- var itemattrvalNode = null;
- if(!utlf_isNull(supdegnitemnoNode))
- itemattrvalNode = viewobj.ds_data_formdegn.lookup("degnitemno", supdegnitemnoNode, "itemattrval");
- var grdtype = "";
- if(!utlf_isNull(itemattrvalNode))
- grdtype = getStyleValue(itemattrvalNode, "gridtype");
- */
- sysf_trace_emr("jw.choe gridtype??!!!!!");
- //"/root/main/forminfo/formmast";
- var destformcdNode = viewobj.objects["ds_data_formmast"] == null ? viewobj.ds_data_recitem.getColumn(0, "formcd") : viewobj.ds_data_formmast.getColumn(0, "formcd");
- sysf_trace_emr("viewobj.objects[\"ds_data_formmast\"] : " + viewobj.objects["ds_data_formmast"] );
- sysf_trace_emr("formcdNode : " + formcdNode + " | destformcdNode : " + destformcdNode );
- if(formcdNode != destformcdNode)
- continue;
- var condition = "formcd == '" + formcdNode + "' && degnitemlevlcd == '" + degnitemlevlcdNode + "'";
- var destNode = null;
-
- if(degnitemkindNode == "GSU")
- {
- // debugger;
-
- // GSU의 그리드가 어떤 타입인지 확인한다.
- //// 1. root/temp/recinfo 의 노드를 찾는다.
- var tempRecinfoNode = findNode(viewobj.model, pageInfo.initrecRef);
-
- //"/root/temp/recinfo/grid/recitem";
- var tmpRecitemNode = viewobj.instance1.selectSingleNode(pageInfo.initRecinfoGridrecItemRef + "[degnitemlevlcd = '" + degnitemlevlcdNode.text + "']");
-
- var tempParentNode = null;
- var mainGrdType = "";
-
- if(tmpRecitemNode != null)
- {
- tempParentNode = tmpRecitemNode.parentNode;
-
- var fst_recitemNode = tempParentNode.selectSingleNode("recitem");
-
- var top_degnitemnoNode = tempParentNode.selectSingleNode("degnitemno");
- var top_degnitemlevlcdNode = tempParentNode.selectSingleNode("degnitemlevlcd");
-
- var fst_degnitemkindNode = fst_recitemNode.selectSingleNode("degnitemkind");
- var fst_orgdegnitemkindNode = fst_recitemNode.selectSingleNode("orgdegnitemkind");
-
- var rootCond = "degnitemno = '" + top_degnitemnoNode.text + "' and degnitemlevlcd = '" + top_degnitemlevlcdNode.text + "'";
-
- if(top_degnitemnoNode !=null && top_degnitemlevlcdNode != null)
- {
- if(prev_Grddegnitemno == "" && prev_Grddegnitemlevlcd == "")
- {
- prev_Grddegnitemno = top_degnitemnoNode.text;
- prev_Grddegnitemlevlcd = top_degnitemlevlcdNode.text;
- }
- else
- {
- // Grid의 degnitemno와 degnitemlevlcd가 다르면 다른 그리드이므로 값을 초기화한다.
- if(prev_Grddegnitemno != top_degnitemnoNode.text && prev_Grddegnitemlevlcd != top_degnitemlevlcdNode.text)
- {
- prev_Grddegnitemno = top_degnitemnoNode.text;
- prev_Grddegnitemlevlcd = top_degnitemlevlcdNode.text;
-
- initRowno = 0;
- prevColno = -1;
- prev_degnitemlevlcd = "";
- prev_degnitemno = "";
- prev_row = -1;
- }
- }
- }
-
- if(fst_orgdegnitemkindNode == null)
- {
- // X축, Y축, G축, T축
- itemattrvalNode = viewobj.instance1.selectSingleNode(pageInfo.formdegnRef + "[degnitemlevlcd = '" + top_degnitemlevlcdNode.text + "']/itemattrval");
-
- if(itemattrvalNode != null)
- mainGrdType = getStyleValue(itemattrvalNode.text, "gridtype");
-
- //// 2. 찾을 조건을 정의한다.
- if(mainGrdType == "X")
- {
- condition = condition + " and rowno = '" + rownoNode.text + "' and colno = '" + colnoNode.text + "'";
-
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // 1. root/main/recinfo의 하위노드중에서 condition에 해당하는 grid 노드의 자식노드(recitem) 노드를 찾는다.
- var tmpDestNodeList = findNodeset(viewobj.model, pageInfo.RecinfoGridRef);
-
- // grid 노드의 자식노드recitem중 condition에 해당하는 노드를 찾는다.
- destNode = findNode(viewobj.model, pageInfo.RecinfoGridRef + "/descendant::recitem[" + condition + "]");
-
- if(destNode == null)
- {
- // X축 그리드의 빈 컬럼을 추가한다.
- var grdList = viewobj.instance1.selectNodes("/root/main/recinfo/grid[degnitemlevlcd='" + top_degnitemlevlcdNode.text + "']");
- var tmpgrdList = viewobj.instance1.selectNodes("/root/temp/recinfo/grid[degnitemlevlcd='" + top_degnitemlevlcdNode.text + "']");
-
- var len = grdList.length;
- var grdNode = "";
- var subRecitemNodeList = "";
- var sublength = 0;
-
- var subNode = "";
- var tmpNode = "";
- for(var x = 0; x < len; x++)
- {
- grdNode = grdList.item(x); // 첫번째 grid row를 선택
-
- subRecitemNodeList = grdNode.selectNodes("recitem");
- sublength = subRecitemNodeList.length;
-
- // recitem의 마지막 컬럼을 복사.
- subNode = subRecitemNodeList.item(sublength-1);
-
- tmpNode = subNode.cloneNode(true);
- tmpNode.selectSingleNode("colno").text = colnoNode.text;
-
- if(tmpNode.selectSingleNode("rowno").text == rownoNode.text)
- tmpNode.selectSingleNode("reccnts").text = reccntsNode.text;
- else
- tmpNode.selectSingleNode("reccnts").text = "";
-
- tmpNode.selectSingleNode("rectermcd").text = "";
- tmpNode.selectSingleNode("rectermnm").text = "";
- tmpNode.selectSingleNode("degnitemkind").text = "GSU";
- grdNode.appendChild(tmpNode);
- }
-
- // Grid 컨트롤을 생성할때에는 createchild 명령어가 제대로 작동하나,
- // 이미 생성된 컨트롤에서 컬럼을 추가할때에는 createchild 명령어는 작동하지 않음.
- var grd = viewobj.document.controls("GRD_" + top_degnitemnoNode.text);
-
- if(grd == null)
- continue;
-
- var cols = grd.cols;
- grd.addColumn("type:input; ref:recitem[colno='" + cols + "']/reccnts");
- grd.rebuild();
- model.refresh();
- }
- else
- {
- // 복사할 대상 노드를 찾은 경우
- // 기록된 grid의 recitem 노드셋(srcNode)를 하나씩 destNode를 찾아 교환한다.
- destNode.parentNode.replaceChild(srcCopyNode, destNode);
- }
-
- continue;
- }
- /*
- else if(mainGrdType == "Y")
- {
- // 이전 Colno 보다 colnoNode가 큰 경우
- if(prev_degnitemlevlcd == "")
- {
- prev_degnitemlevlcd = degnitemlevlcdNode.text;
- prev_degnitemno = degnitemnoNode.text;
- }
- else
- {
- if(prev_degnitemno != degnitemnoNode.text && prev_degnitemlevlcd == degnitemlevlcdNode.text && (parseInt(prevColno) < parseInt(colnoNode.text)))
- {
- prevColno =colnoNode.text;
- }
- // 이전 Colno 와 colnoNode가 같은 경우
- else if(prev_degnitemno != degnitemnoNode.text && prev_degnitemlevlcd == degnitemlevlcdNode.text && (parseInt(prevColno) >= parseInt(colnoNode.text)))
- {
- initRowno++;
- }
- else // 이전 Colno 보다 colnoNode가 작은 경우 다음 row로 넘어간다.
- {
- initRowno++;
- prevColno =colnoNode.text;
- }
- }
- //condition = condition + " and rowno = '" + initRowno + "' and colno = '" + colnoNode.text + "'";
- condition = condition + " and rowno = '" + rownoNode.text + "' and colno = '" + colnoNode.text + "'";
- }
- */
- else // Y축, G축, T축
- {
- // G축, T축 그리드
- // 행추가/삭제, 열추가/삭제가 없으므로 DB에 저장된 rowno, colno 그대로 맵핑한다.
- condition = condition + " and rowno = '" + rownoNode.text + "' and colno = '" + colnoNode.text + "'";
- }
-
- ///////////////////////////////////////////////////////////////////
- //// 3. root/main/recinfo 에서 Grid를 찾는다.
- var tmpDestNodeList = findNodeset(viewobj.model, pageInfo.RecinfoGridRef + "[" + rootCond + "]");
- var tmpdestNode = null;
-
- for(var idx = 0; idx < tmpDestNodeList.length; idx++)
- {
- var subgrdNode = tmpDestNodeList.item(idx);
-
- tmpdestNode = subgrdNode.selectSingleNode("recitem[" + condition + "]");
-
- if(tmpdestNode != null)
- {
- break;
- }
- }
-
- //// 4. root/main/recinfo 노드에 해당 GRD기 없으면 temp/recinfo 에서 찾은 grid 노드를 main으로 복사한다.
- // rowno 를 initRowno로 수정한 후 복사한다.
- if(tmpdestNode == null)
- {
- var mainParentNode = tempParentNode.cloneNode(true);
-
- var recitemList = mainParentNode.selectNodes("recitem");
-
- for(var tmpidx = 0; tmpidx < recitemList.length; tmpidx++)
- {
- var tmpSubRecNode = recitemList.item(tmpidx);
-
- tmpSubRecNode.selectSingleNode("rowno").text = rownoNode.text;
- }
-
- var recinfoNode = findNode(viewobj.model, pageInfo.recRef);
-
- if(recinfoNode == null)
- {
- viewobj.document.models(0).makeNode(pageInfo.recRef);
- recinfoNode = viewobj.document.models(0).instances(0).selectSingleNode(pageInfo.recRef);
- }
-
- recinfoNode.appendChild(mainParentNode);
- }
- }
- else
- {
- // DGN, OPN, CCN
- mainGrdType = fst_orgdegnitemkindNode.text;
-
- //// 2. 찾을 조건을 정의한다.
- // 이전 Colno 보다 colnoNode가 큰 경우
- if(prev_degnitemlevlcd == "")
- {
- prev_degnitemlevlcd = degnitemlevlcdNode.text;
- }
- else
- {
- // rowno는 같고 이전 Colno 보다 현재 colnoNode가 큰 경우
- if(prev_degnitemlevlcd != degnitemlevlcdNode.text && (parseInt(prevColno) < parseInt(colnoNode.text)))
- {
- prevColno =colnoNode.text;
- prev_degnitemlevlcd = degnitemlevlcdNode.text;
- }
- // 이전 Colno 와 colnoNode가 같은 경우 rowno를 증가시킴
- else if(prev_degnitemlevlcd == degnitemlevlcdNode.text && (parseInt(prevColno) == parseInt(colnoNode.text)))
- {
- initRowno++;
- prev_degnitemlevlcd = degnitemlevlcdNode.text;
- }
- else // 이전 Colno 보다 colnoNode가 작은 경우 다음 row로 넘어간다.
- {
- initRowno++;
- prevColno =colnoNode.text;
- prev_degnitemlevlcd = degnitemlevlcdNode.text;
- }
- }
-
- condition = condition + " and rowno = '" + initRowno + "' and colno = '" + colnoNode.text + "'";
-
- //// 3. root/main/recinfo 항목을 찾는다.
- var tmpDestNodeList = findNodeset(viewobj.model, pageInfo.RecinfoGridRef + "[" + rootCond + "]");
- var tmpdestNode = null;
-
- for(var idx = 0; idx < tmpDestNodeList.length; idx++)
- {
- var subgrdNode = tmpDestNodeList.item(idx);
-
- tmpdestNode = subgrdNode.selectSingleNode("recitem[" + condition + "]");
-
- if(tmpdestNode != null)
- {
- break;
- }
- }
-
- //// 4. root/main/recinfo 노드에 해당 GRD가 없으면 temp/recinfo 에서 찾은 grid 노드를 main으로 복사한다.
- //// rowno 를 initRowno로 수정한 후 복사한다.
- if(tmpdestNode == null)
- {
- var mainParentNode = tempParentNode.cloneNode(true);
-
- var recitemList = mainParentNode.selectNodes("recitem");
-
- for(var tmpidx = 0; tmpidx < recitemList.length; tmpidx++)
- {
- var tmpSubRecNode = recitemList.item(tmpidx);
-
- tmpSubRecNode.selectSingleNode("rowno").text = initRowno;
- }
-
- var recinfoNode = findNode(viewobj.model, pageInfo.recRef);
-
- if(recinfoNode == null)
- {
- viewobj.document.models(0).makeNode(pageInfo.recRef);
- recinfoNode = viewobj.document.models(0).instances(0).selectSingleNode(pageInfo.recRef);
- }
-
- recinfoNode.appendChild(mainParentNode);
- }
-
- srcCopyNode.selectSingleNode("rowno").text = initRowno;
- }
- }
-
- destNode = findNode(viewobj.model, pageInfo.RecinfoGridRef + "/descendant::recitem[" + condition + "]");
-
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- //// 5. main/recinfo 노드에서 해당 노드를 찾지 못하면 다시한번 temp 에서 찾아 main으로 복사한다.
- if(destNode == null)
- {
- // 2. /root/main/recinfo 에서 못찾으면 /root/temp/recinfo 에서 찾아온다.
- var supdegnitemlevlcd = degnitemlevlcdNode.text.substr(0, degnitemlevlcdNode.text.lastIndexOf("."));
-
- // DB에서 불러온 서식의 instances 구조에 해당 노드가 없는 경우 /root/temp/recinfo/ 에서 찾아 복사한다.
- grdNode = viewobj.model.instances(0).selectSingleNode("/root/temp/recinfo/grid[degnitemlevlcd='" + supdegnitemlevlcd + "']");
-
- if(grdNode != null)
- {
- var orgdegnitemkindNode = grdNode.selectSingleNode("recitem/orgdegnitemkind");
-
- var grdCloneNode = grdNode.cloneNode(true);
-
- var recitemNodeList = grdCloneNode.selectNodes("recitem");
-
- for(var idx = 0; idx < recitemNodeList.length; idx++)
- {
- // recitem
- var recitemNode = recitemNodeList.item(idx);
- recitemNode.selectSingleNode("rowno").text = initRowno; //rownoNode.text;
- }
-
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // 5. /root/temp/recinfo 에서 가져온 grid 인스턴스가 진단명/수술명/주호소 인지를 판단한다.
- if(orgdegnitemkindNode != null)
- {
- if(orgdegnitemkindNode.text == "DGN" // 진단명
- || orgdegnitemkindNode.text == "OPN" // 수술
- || orgdegnitemkindNode.text == "CCN") // 주호소
- {
- recinfoNode.appendChild(grdCloneNode);
- }
- }
- else
- {
- // 현재 grdNode는 root/temp/recinfo의 그리드노드이므로, root/main/recinfo의 그리드노드를 찾는다.
- var grdNodeList = viewobj.instance1.selectNodes(pageInfo.RecinfoGridRef + "[degnitemlevlcd = '" + supdegnitemlevlcd + "']");
-
- // rowno 순서를 맞추기 위해 srcNode의 rowno 이전의 GRD를 찾는다.
- for(var idx = 0; idx < grdNodeList.length; idx++)
- {
- var subgrdNode = grdNodeList.item(idx);
- if(subgrdNode.selectSingleNode("recitem/rowno").text == (rownoNode.text-1))
- {
- grdNode = subgrdNode;
- break;
- }
- }
- recinfoNode.insertAfter(grdCloneNode, grdNode);
- }
- grdNode = grdCloneNode;
- }
-
- //2010.06.08 김달현 수정. grdNode null 처리
- if(grdNode == null){
- continue;
- }
-
- //교체할 대상 gsu를 구한다.
- //var gsucond = "degnitemno = '" + degnitemnoNode.text + "' and colno = '" + colnoNode.text + "'";
- var gsucond = "degnitemlevlcd = '" + degnitemlevlcdNode.text + "' and colno = '" + colnoNode.text + "'";
-
- destNode = grdNode.selectSingleNode("recitem[" + gsucond +"]");
-
- if(destNode == null)
- {
- addGridCol(supdegnitemnoNode.text, viewobj);
- destNode = grdNode.selectSingleNode("recitem[" + gsucond +"]");
- if(destNode == null)
- continue;
- }
-
- // 기록된 grid의 recitem(srcNode)를 main/recinfo/grid의 recitem(destNode)로 교환한다.
- //replaceChild(node newChild, node oldChild)
- srcCopyNode.selectSingleNode("rowno").text = initRowno; // 저장된 rowno는 순서가 뒤바뀌어 있으므로 initRowno를 대입한다.
- grdNode.replaceChild(srcCopyNode, destNode);
-
- continue;
- }
-
- destNode.parentNode.replaceChild(srcCopyNode, destNode);
- }
- else if(degnitemkindNode == "CHK")
- {
- //condition = condition + " and rowno = '" + rownoNode.text + "' and colno = '" + colnoNode.text + "'";
- destNode = findNode(viewobj.model, pageInfo.recRef + "/descendant::recitem[" + condition + "]");
- if(destNode == null)
- continue;
- /*
- var srcdegnitemno = srcNode.selectSingleNode("degnitemno").text;
- srcNodeList = findNodeset(model, srcPath + "[degnitemno = '" + srcdegnitemno + "']");
- var rectermcd = "";
-
- for(var idx = 0; idx < srcNodeList.length; idx++)
- {
- var node = srcNodeList.item(idx);
- if(idx == 0)
- rectermcd += node.selectSingleNode("rectermcd").text;
- else
- rectermcd += " " + node.selectSingleNode("rectermcd").text;
- }
- destNode.selectSingleNode("rectermcd").text = rectermcd;
- */
- // CHK 아이템 정렬 문제 수정 setsrchdata, getCheckSaveData
- var srcdegnitemno = srcNode.selectSingleNode("degnitemno").text;
-
- /* 2010.01.27 안치원 - 수정모드시 degnitemno가 같은 item에 값이 설정되는 오류수정
- * 아래 srcPath + "[degnitemno = '" + srcdegnitemno + "']" 의 값이
- * "/root/hidden/recinfo/recitem[fstlevlitemcd='0000098001' and formcd = '0900004557'][degnitemno = '11']"
- * 으로 나옴으로 해서, 앞의 조건은 무시되고 degnitemno = '11'인 값을 가져와 설정하는 문제가 발생했음.
- * 그래서 path의 값이
- * "/root/hidden/recinfo/recitem[fstlevlitemcd='0000098001' and formcd = '0900004557' and degnitemno = '11']"
- * 로 나오도록 수정함.
- */
- //srcNodeList = findNodeset(model, srcPath + "[degnitemno = '" + srcdegnitemno + "']");
- var l_srcPath = srcPath + "[degnitemno = '" + srcdegnitemno + "']";
- l_srcPath = l_srcPath.replace("][", " and ");
- srcNodeList = findNodeset(model, l_srcPath);
-
- var rectermcd = "";
- var rectermnm = "";
- var reccnts = "";
-
- for(var idx = 0; idx < srcNodeList.length; idx++)
- {
- var node = srcNodeList.item(idx);
- reccnts = node.selectSingleNode("reccnts").text;
-
- var tmpRectermnm = node.selectSingleNode("rectermnm").text;
- if(tmpRectermnm == "")
- {
- tmpRectermnm = model.getValue(pageInfo.vallistRef + "[valcd='" + node.selectSingleNode("rectermcd").text + "']/valitemnm");
- }
-
- if(idx == 0)
- {
- rectermcd += node.selectSingleNode("rectermcd").text;
- rectermnm += tmpRectermnm; //node.selectSingleNode("rectermnm").text;
- }
- else
- {
- rectermcd += " " + node.selectSingleNode("rectermcd").text;
- rectermnm += "▦" + tmpRectermnm; //node.selectSingleNode("rectermnm").text;
- }
- }
- destNode.selectSingleNode("rectermcd").text = rectermcd;
- destNode.selectSingleNode("rectermnm").text = rectermnm;
- destNode.selectSingleNode("reccnts").text = reccnts;
- destNode.selectSingleNode("rowno").text = srcNode.selectSingleNode("rowno").text; //2010.04.29, 주희경, 기록 수정 시 수식 계산을 위해 기록시 저장한 rowno셋팅
- }
- else if(degnitemkindNode == "MSL")
- {
- condition = condition + " && degnitemno == '" + degnitemnoNode + "' && colno == '" + colnoNode + "'";
- //destNode = findNode(viewobj.model, pageInfo.recRef + "/descendant::recitem[" + condition + "]");
- //if(destNode == null)
- var destIdx = viewobj.ds_data_recitem.findRowExpr(condition);
- if(destIdx < 0)
- continue;
-
- //2010-03-16 오전 9:18:31 강지훈 : MSL 합계가 colno = 0 에 setting된다.
- if(prev_MSLdegnitemno != degnitemnoNode){
- //debugger;
- //colno 가 0인 targetNode를 찾는다.
- var zeroNodeSrchCond = "formcd == '" + formcdNode + "' && degnitemlevlcd == '" + degnitemlevlcdNode ;
- zeroNodeSrchCond += "' && degnitemno == '" + degnitemnoNode + "' && colno = '0'";
-
- //var prev_recMSLSumNode = findNode(viewobj.model, pageInfo.recRef + "/descendant::recitem[" + zeroNodeSrchCond + "]");
- var prev_recMSLSumNodeIdx = viewobj.ds_data_recitem.findRowExpr(zeroNodeSrchCond);
-
- //targetNode가 존재한다면 기록된 동일degnitemno 값들을 sum하여 targetNode의 0번째 colno에 setting
- //if(prev_recMSLSumNode != null){
- if(prev_recMSLSumNodeIdx > -1){
- var recMSLSrchCond = "formcd == '" + formcdNode + "' && degnitemlevlcd = '" + degnitemlevlcdNode + "' && degnitemno == "+ degnitemnoNode;
- var recMSLSumCnt = ds_data_recitem.getCaseCount(recMSLSrchCond) ;
- viewobj.ds_data_recitem.setColumn(prev_recMSLSumNodeIdx, "rowno", recMSLSumCnt);
- }
- }
-
- var destNode = viewobj.ds_data_recitem;
- destNode.setColumn(destIdx, "rectermcd", srcNode.getColumn(i, "rectermcd"));
- destNode.setColumn(destIdx, "rectermnm", srcNode.getColumn(i, "rectermnm"));
- destNode.setColumn(destIdx, "reccnts", srcNode.getColumn(i, "reccnts"));
- destNode.setColumn(destIdx, "recimge", srcNode.getColumn(i, "recimge"));
- destNode.setColumn(destIdx, "rowno", srcNode.getColumn(i, "rowno"));
- destNode.setColumn(destIdx, "colno", srcNode.getColumn(i, "colno"));
-
- prev_MSLdegnitemno = degnitemnoNode;
- }
- else
- {
- //20100624-kys-연령감정서의 경우 로딩시 디폴트값으로 degnitemlevlcd의 값이 같은 STX가 존재하여 저정후 값셋팅이 되지 않음.
- //이러한 경우 condition에 degnitemno를 추가함.
- if(degnitemkindNode == "STX"){
- condition = condition + " && degnitemno == '" + degnitemnoNode + "'";
- }
-
- //destNode = findNode(viewobj.model, pageInfo.recItemRef + "[" + condition + "]");
- var destIdx = viewobj.ds_data_recitem.findRowExpr(condition);
- //if(destNode == null)
- if( destIdx < 0 )
- continue;
-
- destNode = viewobj.ds_data_recitem;
-
- //pointer 복사에서 값 복사로 변경
- //destNode.parentNode.replaceChild(srcNode.cloneNode(true), destNode);
-
- destNode.setColumn(destIdx, "rectermcd", srcNode.getColumn(i, "rectermcd"));
- destNode.setColumn(destIdx, "rectermnm", srcNode.getColumn(i, "rectermnm"));
- destNode.setColumn(destIdx, "reccnts", srcNode.getColumn(i, "reccnts"));
- destNode.setColumn(destIdx, "recimge", srcNode.getColumn(i, "recimge"));
- destNode.setColumn(destIdx, "rowno", srcNode.getColumn(i, "rowno"));
- destNode.setColumn(destIdx, "colno", srcNode.getColumn(i, "colno"));
-
- //이미지 OCX처리
- if(degnitemkindNode == "IMG")
- {
- var degnitemno = degnitemnoNode;
- var imgedit = getStyleValue(model.getValue(pageInfo.formdegnRef + "[degnitemno = '']/itemattrval"), "imgedit");
- if(imgedit == "Y")
- {
- var ctrlid = "IMG_" + degnitemno;
- eval(ctrlid).SetShapeString(reccntsNode.text);
- }
- }
- }
- }
-
- lf_setItemValueDS(viewobj)
-
- //copyNodeset(pageInfo.recItemRef, srcPath, "replace", viewobj.model, model);
- var endTime = new Date().getTime(); //종료시간 체크(단위 ms)
- trace("setSrchData 시간: " + ((endTime-startTime)/1000) );
- trace("[DEBUG] setSrchData refresh");
- //viewobj.model.refresh();
- trace("[DEBUG] setSrchData dispatch");
- try{
- viewobj.lf_onsubformdataloadcomp();
- }catch(e){
- sysf_catchTrace(e);
- }
-
-
- }
- /**
- * @group :
- * @ver : 2008.06.13
- * @by : snoweye
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부모 화면으로 onloadcomplete 이벤트를 dispatch
- * @param : curformtype - 로딩이 완료된 서식의 종류 (COMN_FORM/UNIT_FORM/GENL_FORM)
- * @return :
- * @---------------------------------------------------
- */
- function dispOnLoadComplete(curformtype, formcd)
- {
- sysf_trace_emr("***** dispOnLoadComplete("+curformtype+", "+formcd+") EMRCommon -> MMRCommon*****");
- // TF 는 parent 체크하여 동작되나 XP일 경우 this는 서식로더가 포함되는 진료기록메인의 ivw_loder 임
- if(utlf_isNull(parent))
- return;
- //setLoadStatus(parent, formcd, curformtype);
- parent.frmf_setParameter("loadstatus", curformtype);
- parent.frmf_setParameter("loadformcd", formcd);
- parent.lf_onloadcomplete();
-
-
- }
- /////////////////////////////////////////////////////////
- //////////////////// EMRCommon ///////////////////////
- /////////////////////////////////////////////////////////
- function ITEMVAL()
- {
- this.rectermcd = "";
- this.rectermnm = "";
- this.reccnts = "";
- this.recimge = "";
- }
- /**
- * @desc : 기록아이템 값을 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function getFormItemValue(degnitemlevlcd)
- {
- sysf_trace_emr("***** getFormItemValue("+degnitemlevlcd+") MMRCommon *****");
- // var pageInfo = new PAGEINFO();
- var itemVal = new ITEMVAL();
-
- var recItemRefDs = this.objects["ds_data_recitem"];
- if( recItemRefDs != null ){
- var fidx = recItemRefDs.findRow("degnitemlevlcd", degnitemlevlcd);
-
- itemVal.rectermcd = recItemRefDs.getColumn(fidx, "rectermcd");
- itemVal.rectermnm = recItemRefDs.getColumn(fidx, "rectermnm");
- itemVal.reccnts = recItemRefDs.getColumn(fidx, "reccnts");
- itemVal.recimge = recItemRefDs.getColumn(fidx, "recimge");
- }
-
- return itemVal;
- }
- /**
- * @desc : 기록아이템 값을 셋팅
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function setFormItemValue(degnitemlevlcd, itemVal, bRefresh)
- {
- sysf_trace_emr("***** setFormItemValue(degnitemlevlcd, itemVal, bRefresh) EMRCommon *****");
- var pageInfo = new PAGEINFO();
-
- if(utlf_isNull(bRefresh))
- bRefresh == false;
-
- var recItemRefDs = this.objects[pageInfo.recItemRef];
- if( recItemRefDs != null ){
- var fidx = recItemRefDs.findRow("degnitemlevlcd", degnitemlevlcd);
-
- var node = recItemRefDs.getColumn(fidx, "rectermcd");
- if(!utlf_isNull(node))
- recItemRefDs.setColumn(fidx, "rectermcd", itemVal.rectermcd);
-
- node = recItemRefDs.getColumn(fidx, "rectermnm");
- if(!utlf_isNull(node))
- recItemRefDs.setColumn(fidx, "rectermnm", itemVal.rectermnm);
-
- node = recItemRefDs.getColumn(fidx, "recimge");
- if(!utlf_isNull(node))
- recItemRefDs.setColumn(fidx, "recimge", itemVal.recimge);
- node = recItemRefDs.getColumn(fidx, "reccnts");
- if(!utlf_isNull(node))
- recItemRefDs.setColumn(fidx, "reccnts", itemVal.reccnts);
- }
-
- // if(bRefresh)
- // model.refresh();
- }
- /**
- * @desc : 노드셋을 맨위에 집어넣는다.
- strDest : 목적노드
- strSrc : 소스노드
- * @param :
- * @return :
- * @author : 2010.03.30 강지훈
- * @---------------------------------------------------
- */
- function fInsertNodes(strDest, strSrc){
- sysf_trace_emr("***** fInsertNodes("+strDest+", "+strSrc+") MMRCommon *****");
- // var srcNodeList = instance1.selectNodes(strSrc);
- if(strSrc != null && strSrc.rowcount > 0 ){
- // var destNodeList = instance1.selectNodes(strDest);
-
- if( strDest == null || strDest.rowcount == 0 ) {
- return false;
- }
- // var pDestNode = destNodeList(0).parentNode;
- // var destLastNodesetName = destNodeList(0).nodeName;
- // var tmpSrcNode;
- for( var a = strSrc.rowcount - 1; a >= 0; a-- ) {
- strDest.insertRow(0);
- strDest.copyRow(0, strSrc, a);
- // pDestNode = instance1.selectSingleNode(strDest).parentNode;
- // tmpSrcNode = srcNodeList.item(a).cloneNode(true);
- // tmpSrcNode.nodeName = destLastNodesetName;
- // model.duplicate(pDestNode, tmpSrcNode, "*[1]");
- }
- }
- }
- /**
- * @group :
- * @ver : 2008.07.16
- * @by : 이경희
- * @modify:
- * @---------------------------------------------------
- * @type :
- * @access : public
- * @desc : 진료기록에서 서식 저장시 필수입력 아이템 입력 여부를 체크한다.
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function chkEssentialitem(supdegnitemcd)
- {
- sysf_trace_emr("***** chkEssentialitem("+supdegnitemcd+") 필수입력 아이템 입력 여부 체트 EMRCommon -> MMRCommon *****");
- sysf_trace_emr("jw.choe return ");
- return;
-
- var pageInfo = new PAGEINFO();
-
- // formdegn 인스턴스에서 essential:true 속성 아이템리스트를 골라낸다.
- var esCnt = ds_main_forminfo_formdegn.getCaseCount("essnrecyn == 'Y'");
- //2010.11.26 김달현 - 서식 구분
- var formprogflag = ds_main_forminfo_formmast.getColumn(0, "formprogflag");
-
- if(esCnt > 0)
- {
- // degnitemlevlcd 를 찾는다.
- var filterStr = "essnrecyn == 'Y'";
- ds_main_forminfo_formdegn.filter(filterStr);
-
- //var formdegnNodelist = findNodeset(model, "/root/main/forminfo/formdegn[essnrecyn =='Y']");
- for(var idx = 0; idx < ds_main_forminfo_formdegn.rowcount; idx++)
- {
- //var formdegnNode = formdegnNodelist.item(idx);
- var degnitemno = ds_main_forminfo_formdegn.getColumn(idx, "degnitemno");
- var degnitemlevlcd = ds_main_forminfo_formdegn.getColumn(idx, "degnitemlevlcd");
- var degnitemkind = ds_main_forminfo_formdegn.getColumn(idx, "degnitemkind");
- //var itemattrvalNode = formdegnNode.selectSingleNode("itemattrval");
- var degnitemnm = ds_main_forminfo_formdegn.getColumn(idx, "degnitemnm");
-
-
- if ( fGetReadOnlyStat( degnitemno ) ) //현재 disable 상태이면 필수체크 안한다. 2010.04.15, 주희경
- {
- continue;
- }
- if(ds_main_forminfo_formdegn.getColumnInfo("itemattrval") != null)
- {
- var attr = getStyleValue(ds_main_forminfo_formdegn.getColumn(idx, "itemattrval"), "essential");
- var recitemNode = null;
-
- if(attr == "true")
- {
- sysf_trce_emr("jw.choe 여기부터");
- if (!utlf_isNull(supdegnitemcd)) {
- recitemNode = findNode(model, pageInfo.recItemRef + "[degnitemlevlcd = '" + supdegnitemcd + "." + degnitemlevlcd +"']");
- //recitemNode = this.objects[pageInfo.recItemRef].filter("degnitemlevlcd == '" + supdegnitemcd + "." + degnitemlevlcd +"'");
-
- } else {
- //2010.01.17 안치원 - 진단명,수술명 필수입력체크 하지 못하는 오류 수정
- if (degnitemkind == "DGN" || degnitemkind == "OPN") {
- recitemNode = findNode(model, "/root/main/recinfo/grid/recitem[degnitemlevlcd = '" + degnitemlevlcd +"']");
- } else {
- recitemNode = findNode(model, pageInfo.recItemRef + "[degnitemlevlcd = '" + degnitemlevlcd +"']");
- }
- }
- //var rectemcdNode = findNode(model, pageInfo.grdNodeset + "[degnitemlevlcd = '" + degnitemlevlcd +"']");
- //var rectemnmNode = findNode(model, pageInfo.grdNodeset + "[degnitemlevlcd = '" + degnitemlevlcd +"']");
- if(recitemNode != null)
- {
- //2010.01.16 안치원 - MSL 필수입력체크 오류수정
- if(degnitemkind == "MSL")
- {
- var cnt = getNodesetCnt(model, pageInfo.recItemRef + "[degnitemlevlcd = '" + supdegnitemcd + "." + degnitemlevlcd+"' and rectermcd != '']");
- if(cnt > 0)
- continue;
- }
- else if(degnitemkind == "RDO" || degnitemkind == "CMB" || degnitemkind == "CHK" || degnitemkind == "SSL")
- {
- var rectermcdNode = recitemNode.selectSingleNode("rectermcd");
- if(rectermcdNode != null && rectermcdNode.text != "")
- continue;
- }
- else if(degnitemkind == "FRM")
- {
- //2010.01.12 안치원 - MTX의 필수입력시 기본부분서식이 있으면 부분서식을, 없으면 MTX의 입력여부를 검사한다.
- continue;
- }
- //2010.11.26 김달현 - 제증명 서식의 진단필수체크
- else if(formprogflag == "PROF" && degnitemkind == "DGN"){
-
- var degnitemcd = formdegnNode.selectSingleNode("degnitemcd").text;
- var fstlevlitemcd = model.getValue("/root/main/recinfo/grid/recitem[degnitemcd = '"+degnitemcd+"']/fstlevlitemcd");
- var diagrectermcd = model.getValue("/root/main/recinfo/grid/recitem[fstlevlitemcd = '"+fstlevlitemcd+"' and colno = 2]/rectermcd");//진단코드
- var diagrectermnm = model.getValue("/root/main/recinfo/grid/recitem[fstlevlitemcd = '"+fstlevlitemcd+"' and colno = 2]/rectermnm");//진단명
- if(diagrectermnm == null || diagrectermnm == ""){
- degnitemnm = "진단명";
- }
-
- //진단코드가 입력된 경우는 진단명까지 입력여부 체크
- if(diagrectermnm != ""){
- continue;
- }else{
- if(diagrectermcd != "" && diagrectermnm != ""){
- continue;
- }
- }
- }
-
- else if(degnitemkind == "MTX" || degnitemkind == "DGN" || degnitemkind == "OPN")//2010.01.17 안치원 - 진단명,수술명 필수입력체크 하지 못하는 오류 수정
- {
- //2010.01.12 안치원 - MTX의 필수입력시 기본부분서식이 있으면 부분서식을, 없으면 MTX의 입력여부를 검사한다.
- var baseFormCnt = getNodesetCnt(model, "/root/main/forminfo/formdegn[supdegnitemno = '"+degnitemno+"' and itemuseflag='F0']");
- if (baseFormCnt == 0) {
- var recCntsNode = recitemNode.selectSingleNode("reccnts");
- if(recCntsNode != null && recCntsNode.text != "")
- continue;
-
- } else {
- var degnitemcd = formdegnNode.selectSingleNode("degnitemcd").text;
- var recCnt = getNodesetCnt(model, pageInfo.recItemRef2+"[fstlevlitemcd = '"+degnitemcd+"']");
- if (recCnt != 0)
- continue;
- }
- }
- else
- {
- var reccntsNode = recitemNode.selectSingleNode("reccnts");
- if(reccntsNode != null && reccntsNode.text != "")
- continue;
- }
- // 필수 입력 아이템에 포커스를 맞춰준다.
- messageBox("필수 입력항목(" + degnitemnm + ")이 입력되지", "E007");
-
- var ctrlid = degnitemkind + "_" + degnitemno;
- var ctrl = document.controls(degnitemkind + "_" + degnitemno);
-
- model.setFocus(ctrlid);
- return false;
- }
- }
- }
- }
- ds_main_forminfo_formdegn.filter("");
- }
- return true;
- }
-
-
- /**
- * @desc : 저장할 기록정보를 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function getSaveData(targetPath, appendMode, pmodel, pageInfo, mode)
- {
- sysf_trace_emr("***** getSaveData("+targetPath+", "+appendMode+", "+pmodel+", "+pageInfo+", "+mode+") EMRCommon *****");
- if(utlf_isNull(mode))
- mode = "";
- if(mode == "all")
- getSaveDataAll(targetPath, appendMode, pmodel, pageInfo);
- else
- getSaveDataVal(targetPath, appendMode, pmodel, pageInfo);
- }
- /**
- * @desc : 저장할 기록정보를 모두 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function getSaveDataAll(targetPath, appendMode, pmodel, pageInfo)
- {
- sysf_trace_emr("***** MMRCommon getSaveDataAll("+targetPath+", "+appendMode+", "+pmodel+", "+pageInfo+") EMRCommon*****");
- if(utlf_isNull(pageInfo))
- pageInfo = new PAGEINFO();
- if(utlf_isNull(pmodel))
- pmodel == this;
- dsf_clearDsList( pageInfo.savedInfoRef2 );
- sysf_trace_emr("model.makeValue(pageInfo.savedInfoRef2... 체크필요");
- // model.removeNodeset(pageInfo.savedInfoRef2);
- // model.makeValue(pageInfo.savedInfoRef2, "");
- var recItemRefDs = this.objects[pageInfo.recItemRef];
- var nodeListCnt = 0;
- if( !utlf_isNull(recItemRefDs) ){
- recItemRefDs.filter("degnitemkind != 'GRD' && degnitemkind != 'IMG'");
- nodeListCnt = recItemRefDs.rowcount;
- //temp
- dsf_create("tmp_recItemRefDs");
- tmp_recItemRefDs.copyDs(recItemRefDs, true);
- recItemRefDs.filter("");
- }
-
- //var nodeList = model.instances(0).selectNodes(pageInfo.recItemRef + "[degnitemkind != 'GRD' and degnitemkind != 'IMG']");
- for(var i = 0; i < nodeListCnt; i++)
- {
- var condition = "";
- //var itemsNode = nodeList.item(i);
- var degnitemnoNode = tmp_recItemRefDs.getColumn(i, "degnitemno");
- if(utlf_isNull(degnitemnoNode))
- continue;
- var rowCondition = "";
- if(utlf_isNull(condition))
- condition = "degnitemno == '" + degnitemnoNode + "'" + rowCondition;
- else
- condition += " || degnitemno == '" + degnitemnoNode + "'" + rowCondition;
- var supdegnitemno = (this.objects[gPrePath_formdegnRef]).lookup("degnitemno", degnitemnoNode, "supdegnitemno");
- if(!utlf_isNull(supdegnitemno))
- condition = getSaveDataParent(supdegnitemno, condition);
-
- if(!utlf_isNull(condition)){
- //copyNodeset(pageInfo.savedInfoItemRef2, gPrePath_recItemRef + condition + "]", "append", model, model);
- var savedInfoItemRef2Ds = this.objects[pageInfo.savedInfoItemRef2];
- var recItemRefDs = this.objects[gPrePath_recItemRef];
-
- if( utlf_isNull(savedInfoItemRef2Ds) ){
- dsf_createDs( pageInfo.savedInfoItemRef2 );
- dsf_copyColInfo( savedInfoItemRef2Ds, recItemRefDs );
- }
-
- recItemRefDs.filter( condition );
- savedInfoItemRef2Ds.appendData( recItemRefDs );
- recItemRefDs.filter("");
- }
- condAll += condition;
- }
- getCheckSaveData(pageInfo);
- if(!utlf_isNull(this.objects[pageInfo.savedInfoItemRef2]) && (this.objects[pageInfo.savedInfoItemRef2]).rowcount > 0)
- {
- if(!utlf_isNull(pageInfo.formCd))
- {
- var idx = getNodesetCnt(pmodel, targetPath) + 1;
- pmodel.makeValue(targetPath + "[" + idx + "]/instcd", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/rechistseq", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/recitemno", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/fstlevlitemcd", pageInfo.fstLevlItemCd);
- pmodel.makeValue(targetPath + "[" + idx + "]/formcd", pageInfo.formCd);
- pmodel.makeValue(targetPath + "[" + idx + "]/formdegnseq", pageInfo.formDegnSeq);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemno", pageInfo.degnItemNo);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemcd", pageInfo.degnItemCd);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemkind", pageInfo.degnitemkind);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemlevlno", pageInfo.degnitemlevlno);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemnm", pageInfo.degnitemnm);
- pmodel.makeValue(targetPath + "[" + idx + "]/rectermnm", pageInfo.rectermnm);
- pmodel.makeValue(targetPath + "[" + idx + "]/degnitemlevlcd", pageInfo.degnItemLevlCd);
- pmodel.makeValue(targetPath + "[" + idx + "]/rectermcd", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/recrefcd", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/recitemnm", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/reccnts", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/recimge", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/srcimge", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/rowno", "");
- pmodel.makeValue(targetPath + "[" + idx + "]/colno", "");
- }
- copyNodeset(targetPath, pageInfo.savedInfoItemRef2, appendMode, pmodel, model);
- }
- }
- /**
- * @desc : 저장할 기록정보 값을 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현, 20100209, 주희경 수정
- */
- function getSaveDataVal(targetPath, appendMode, pmodel, pageInfo)
- {
- sysf_trace_emr("***** getSaveDataVal("+targetPath+", "+appendMode+", "+pmodel.name+", "+pageInfo+") EMRCommon -> MMRCommon *****");
- sysf_trace_emr("***** 저장할 기록정보 값을 가져온다 ****");
- if(utlf_isNull(pageInfo))
- pageInfo = new PAGEINFO();
-
- if(utlf_isNull(pmodel))
- pmodel == this;
-
- //이미지ocx에 있는 annotation 정보 grep
- getImgeData();
-
- //그리드 데이타를 변형하기 위해 일단 main에서 hidden으로 옮긴다.
- sysf_trace_emr(" jw.choe 그리드 데이타셋 추가 체크 필요 MMRCommon ");
- dsf_clearDsList(["ds_hidden_savedinfo_recitem"], this); //
- // model.removeNodeset(pageInfo.savedInfoRef2);
- // model.makeValue(pageInfo.savedInfoRef2, "");
-
- if( pmodel.objects[targetPath] == null ){
- var objDs = new Dataset(targetPath);
- pmodel.addChild(targetPath, objDs);
- objDs.name = targetPath;
- }
-
-
- getGridSaveData(pageInfo);
-
- /////////////////////////////
- // 2010.02.08, 주희경 수정
- // 기본서식 기록 데이터가 없고 [추가기록, 이미지, 가계도, 확장서식]의 데이터가 있는경우 부분서식 타이틀 저장을 위해 체크 및 데이터 셋팅
- var expr = "!utlf_isNull(rectermcd) || !utlf_isNull(reccnts)";
- var etcrecItemRefDs = this.objects["ds_temp_etcrec_recitem"];
- var etcrecItemRefCnt = etcrecItemRefDs == null ? 0 : etcrecItemRefDs.getCaseCount(expr);
- //추가기록이 존재하면 기본서식 노드리스트의 헤더에 값을 셋팅
- if ( etcrecItemRefCnt > 0 )
- {
- etcrecItemRefDs.filter(expr);
- fSetFormRecItemHeader(pageInfo, etcrecItemRefDs, false);
- etcrecItemRefDs.filter("");
- //fSetFormRecItemHeader(pageInfo, etcrecNodeList, false);
- }
-
- var imgerecItemRefDs = this.objects["ds_temp_imgerec_recitem"];
- var imgerecItemRefCnt = imgerecItemRefDs == null ? 0 : imgerecItemRefDs.getCaseCount(expr);
- //이미지가 존재하면 기본서식 노드리스트의 헤더에 값을 셋팅
- if ( imgerecItemRefCnt > 0 )
- {
- imgerecItemRefDs.filter(expr);
- fSetFormRecItemHeader(pageInfo, imgerecItemRefDs, false);
- imgerecItemRefDs.filter("");
- //fSetFormRecItemHeader(pageInfo, imgrecNodeList, false);
- }
-
- var fmyrecItemRefDs = this.objects["ds_temp_fmyrec_recitem"];
- var fmyrecItemRefCnt = fmyrecItemRefDs == null ? 0 : fmyrecItemRefDs.getCaseCount(expr);
- //가계도가 존재하면 기본서식 노드리스트의 헤더에 값을 셋팅
- if ( fmyrecItemRefCnt > 0 )
- {
- fmyrecItemRefDs.filter(expr);
- fSetFormRecItemHeader(pageInfo, fmyrecItemRefDs, false);
- fmyrecItemRefDs.filter("");
- //fSetFormRecItemHeader(pageInfo, fmyrecNodeList, false);
- }
-
- var extnrecRefDs = this.objects["ds_hidden_extnformrec_recitem"];//pageInfo.extnrecRef
- var extnrecRefCnt = extnrecRefDs == null ? 0 : extnrecRefDs.getCaseCount(expr);
- //확장서식 데이터가 존재하면 기본서식 노드리스트의 헤더에 값을 셋팅
- if ( extnrecRefCnt > 0 )
- {
- extnrecRefDs.filter(expr);
- fSetFormRecItemHeader(pageInfo, extnrecRefDs, false);
- extnrecRefDs.filter("");
- //fSetFormRecItemHeader(pageInfo, extnecNodeList, false);
- }
- //
- /////////////////////////////////////////////
- // 그리드 이외의 아이템 노드리스트를 가져온다.
- //var nodeList = model.instances(0).selectNodes(pageInfo.recItemRef + "[(rectermcd != '' or reccnts != '') and degnitemkind != 'GRD' and degnitemkind != 'GSU']");
- ds_data_recitem.filter("(!utlf_isNull(rectermcd) || !utlf_isNull(reccnts)) && degnitemkind != 'GRD' && degnitemkind != 'GSU'");
- var nodeListCnt = ds_data_recitem.rowcount;
- if( nodeListCnt > 0 ){
- dsf_createDs("tmp_ds_data_recitem");
- tmp_ds_data_recitem.copyData(ds_data_recitem, true);
- }
- ds_data_recitem.filter("");
-
- //////////////////////////
- // 2010.02.08, 주희경 수정
- // 기본 서식의 타이틀에 셋팅한 데이터 원복
-
- //추가기록, 기본 서식의 타이틀에 셋팅한 데이터 원복
- if ( etcrecItemRefCnt > 0 )
- fSetFormRecItemHeader(pageInfo, etcrecItemRefDs, true);
-
- //이미지, 기본 서식의 타이틀에 셋팅한 데이터 원복
- if ( imgerecItemRefCnt > 0 )
- fSetFormRecItemHeader(pageInfo, imgerecItemRefDs, true);
-
- //가계도, 기본 서식의 타이틀에 셋팅한 데이터 원복
- if ( fmyrecItemRefCnt > 0 )
- fSetFormRecItemHeader(pageInfo, fmyrecItemRefDs, true);
-
- //확장서식, 기본 서식의 타이틀에 셋팅한 데이터 원복
- if ( extnrecRefCnt > 0 )
- fSetFormRecItemHeader(pageInfo, extnrecRefDs, true);
- //
- //////////////////////////////
- // grdClone은 <grid> 의 row 하나를 뜻함.
- for(var i = 0; i < nodeListCnt; i++)
- {
- var condition = "";
- var itemsNode = tmp_ds_data_recitem; //nodeList.item(i); // 값이 있는 단일 노드
- var degnitemnoNode = itemsNode.getColumn(i, "degnitemno"); // itemsNode의 degnitemno값
- var degnitemnmNode = itemsNode.getColumn(i, "degnitemnm"); // itemsNode의 degnitemnm값
- var degnitemkindNode = itemsNode.getColumn(i, "degnitemkind"); // itemsNode의 degnitemkind값
-
- var RecCntsNode = itemsNode.getColumn(i, "reccnts"); // itemsNode의 reccnts값
- var recimgeNode = itemsNode.getColumn(i, "recimge"); // itemsNode의 reccnts값
-
- var subrecrefcdNode = itemsNode.getColumn(i, "recrefcd");
- var subrecitemnmNode = itemsNode.getColumn(i, "recitemnm");
- var subtermcdNode = itemsNode.getColumn(i, "rectermcd");
- var subfstlevlcdNode = itemsNode.getColumn(i, "fstlevlitemcd");
- var sublevlcdNode = itemsNode.getColumn(i, "degnitemlevlcd");
- var sublevlnoNode = itemsNode.getColumn(i, "degnitemlevlno");
- sysf_trace_emr("@@@@@ reccnts : " + RecCntsNode + " MMRCommon " );
-
- if(itemsNode.getColumnInfo("degnitemno") == null)
- continue;
-
- if(degnitemkindNode == "IMG" && degnitemnmNode == "빈이미지" && !utlf_isNull(RecCntsNode))
- {
- var tmpMeta = removeXvgTag(RecCntsNode);
- if( utlf_isNull(tmpMeta))
- continue;
- }
-
- var rowCondition = "";
- var srchno = "'" + degnitemnoNode + "'";
- if(!utlf_isSearchString(condition, srchno) && !utlf_isSearchString(condAll, srchno))
- {
- if(utlf_isNull(condition))
- condition = "degnitemno == '" + degnitemnoNode + "'" + rowCondition;
- else
- condition += " || degnitemno == '" + degnitemnoNode + "'" + rowCondition;
- }
-
- var supdegnitemno = ds_data_formdegn.lookup("degnitemno", degnitemnoNode, "supdegnitemno");
- if(!utlf_isNull(supdegnitemno) && supdegnitemno != "0")
- condition = getSaveDataParent(supdegnitemno, condition);
-
- if(!utlf_isNull(condition))
- {
- //copyNodeset(pageInfo.savedInfoItemRef2, gPrePath_recItemRef + condition + "]", "append", model, model);
- ds_data_recitem.filter(condition);
- dsf_copyDsList(["ds_hidden_savedinfo_recitem"], ["ds_data_recitem"], "append", this, this);
- ds_data_recitem.filter("");
-
- // MSL-SSU 데이터 체크
- //var nodelist = model.instances(0).selectNodes(pageInfo.savedInfoItemRef2 + "[degnitemkind = 'MSL']");
- ds_hidden_savedinfo_recitem.filter("degnitemkind == 'MSL'");
- var oDs = ds_hidden_savedinfo_recitem;
- for(var idx = oDs.rowcount-1; idx > -1; idx--) // jw.choe 삭제는 뒷부분부터 처리되도록 수정.
- {
- //var recitemNode = nodelist.item(idx);
- var degnitemnm = oDs.getColumn(idx, "degnitemnm");
- var degnitemno = oDs.getColumn(idx, "degnitemno");
- var degnitemkind = oDs.getColumn(idx, "degnitemkind");
- var degnitemlevlcd = oDs.getColumn(idx, "degnitemlevlcd");
-
- var rectermcd = oDs.getColumn(idx, "rectermcd");
- var rectermnm = oDs.getColumn(idx, "rectermnm");
- var reccnts = oDs.getColumn(idx, "reccnts");
-
- var rowno = oDs.getColumn(idx, "rowno");
- var colno = oDs.getColumn(idx, "colno");
- if( !utlf_isNull(rectermcd))
- continue;
- else if(!utlf_isNull(reccnts))
- continue;
-
- oDs.deleteRow(idx);
- }
-
- ds_hidden_savedinfo_recitem.filter("");
- }
-
- if(utlf_isNull(condAll))
- condAll = condition;
- else
- {
- if(!utlf_isNull(condition))
- condAll += " || " + condition;
- }
- }
-
- if( nodeListCnt > 0 ){
- dsf_deleteDs("tmp_ds_data_recitem");
- }
-
- condAll = "";
- getCheckSaveData(pageInfo);
-
- var savedInfoItemRef2Ds = this.objects["ds_hidden_savedinfo_recitem"];
- var savedInfoItemRef2Cnt = savedInfoItemRef2Ds == null ? 0 : savedInfoItemRef2Ds.rowcount;
- if(savedInfoItemRef2Cnt > 0)
- {
- if(!utlf_isNull(pageInfo.formCd))
- {
- // pmodel : this, targetPath : ds_temp_sort_recitem
- var targetPathDs = pmodel.objects[targetPath];
- var idx = targetPathDs.rowcount;//getNodesetCnt(pmodel, targetPath) + 1;
-
- dsf_makeValue(targetPathDs, "instcd", "string", "", idx);
- dsf_makeValue(targetPathDs, "rechistseq", "BIGDECIMAL", "", idx);
- dsf_makeValue(targetPathDs, "recitemno", "INT", "", idx);
- dsf_makeValue(targetPathDs, "fstlevlitemcd", "string", pageInfo.fstLevlItemCd, idx);
- dsf_makeValue(targetPathDs, "formcd", "string", pageInfo.formCd, idx);
- dsf_makeValue(targetPathDs, "formdegnseq", "BIGDECIMAL", pageInfo.formDegnSeq, idx);
- dsf_makeValue(targetPathDs, "degnitemno", "INT", pageInfo.degnItemNo, idx);
- dsf_makeValue(targetPathDs, "degnitemcd", "string", pageInfo.degnItemCd, idx);
- dsf_makeValue(targetPathDs, "degnitemkind", "string", pageInfo.degnitemkind, idx);
- dsf_makeValue(targetPathDs, "degnitemlevlno", "string", pageInfo.degnitemlevlno, idx);
- dsf_makeValue(targetPathDs, "degnitemnm", "string", pageInfo.degnitemnm, idx);
- dsf_makeValue(targetPathDs, "rectermnm", "string", pageInfo.rectermnm, idx);
- dsf_makeValue(targetPathDs, "degnitemlevlcd", "string", pageInfo.degnItemLevlCd, idx);
- dsf_makeValue(targetPathDs, "rectermcd", "string", "", idx);
- dsf_makeValue(targetPathDs, "recrefcd", "string", "", idx);
- dsf_makeValue(targetPathDs, "recitemnm", "string", "", idx);
- dsf_makeValue(targetPathDs, "reccnts", "string", "", idx);
- dsf_makeValue(targetPathDs, "recimge", "BLOB", "", idx);
- dsf_makeValue(targetPathDs, "srcimge", "BLOB", "", idx);
- dsf_makeValue(targetPathDs, "rowno", "string", "", idx);
- dsf_makeValue(targetPathDs, "colno", "string", "", idx);
- dsf_makeValue(targetPathDs, "degnunitcd", "string", "", idx);
- }
-
- // savedInfoItemRef2(/root/hidden/savedinfo/recitem) => /root/temp/sort/recinfo/recitem 으로 복사
- //copyNodeset(targetPath, pageInfo.savedInfoItemRef2, appendMode, pmodel, model);
- dsf_copyDsList([targetPath], ["ds_hidden_savedinfo_recitem"], appendMode, pmodel, this);
- }
- }
- /**
- * @desc : Data Clear
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function lf_clearData()
- {
- sysf_trace_emr("***** lf_clearData() EMRCommon -> MMRCommon *****");
- // 특수서식은 temp recitem 이 없다.
- dsf_copyDsList(arrDsRecinfo, arrDsTempRecinfo, "replace", this, this);
- lf_setItemValueDS();
-
- // ds_data_itemvalue.clearData();
- // ds_data_itemvalue.addRow();
- dsf_clearDsList(arrDsExtnRecinfo, this);
- dsf_clearDsList(["ds_hidden_recitem"], this);
- clearImgeData();
- }
- /**
- * @desc : 이미지데이터를 clear한다
- * @id :
- * @event :
- * @return :
- * @authur : 박종훈
- * @history:
- 2008-12-02 : 신규생성
- */
- function clearImgeData()
- {
- sysf_trace_emr("***** clearImgeData() EMRCommon -> MMRCommon *****");
- var pageInfo = new PAGEINFO();
- var nodeListDs = this.objects["ds_data_recitem"];//instance1.selectNodes(pageInfo.recItemRef + "[degnitemkind = 'IMG']");
-
- var nodeListDsCnt = nodeListDs == null ? 0 : nodeListDs.getCaseCount("degnitemkind == 'IMG'");
-
- // 공통서식인지 과별서식인지 구분
- var FormInfoNodeDs = this.objects["ds_data_formmast"];//instance1.selectNodes(pageInfo.formmastRef);
- var FormInfoNodeDsCnt = FormInfoNodeDs == null ? 0 : FormInfoNodeDs.rowcount;
-
- var isFormMain = "";
-
- if(FormInfoNodeDsCnt > 0)
- {
- //var formmastInfoNode = FormInfoNode.item(0);
-
- var formprogflag = FormInfoNodeDs.getColumn(i, "formprogflag");
- var formprognm = FormInfoNodeDs.getColumn(i, "formprognm");
- var formkind = FormInfoNodeDs.getColumn(i, "formkind");
-
- if(formprognm != "-" && formkind == "C" && formprogflag != "-")
- {
- isFormMain = true;
- }
- else
- {
- isFormMain = false;
- }
- }
-
- if( nodeListDsCnt > 0 )
- nodeListDs.filter("degnitemkind == 'IMG'");
- for(var i = 0; i < nodeListDsCnt; i++)
- {
- //var itemNode = nodeList.item(i);
- var degnitemno = nodeListDs.getColumn(i, "degnitemno");
- var degnitemcd = nodeListDs.getColumn(i, "degnitemcd");
- var degnitemlevlcd = nodeListDs.getColumn(i, "degnitemlevlcd");
-
- var formdegnRefDs = this.objects["ds_data_formdegn"];
- sysf_trace_emr(" @@@@@ formdegnRefDs : " + formdegnRefDs + " MMRCommon clearImageData @@@@@");
- var itemattrval = formdegnRefDs == null ? "" : formdegnRefDs.lookup("degnitemno", degnitemno, "itemattrval");
- var imgedit = getStyleValue(itemattrval, "imgedit");
-
- if(imgedit != "Y")
- continue;
-
- var degnattrval = formdegnRefDs.lookup("degnitemno", degnitemno, "degnattrval");
-
- var ctrlwidth = getStyleValue(degnattrval, "ctrl.width");
- var ctrlheight = getStyleValue(degnattrval, "ctrl.height");
-
- var ctrlid = "IMG_" + degnitemno;
- var ctrlObj = this.components["IMG_" + degnitemno];
- sysf_trace_emr(" jw.choe ctrlObj activex 동작 처리 확인 필요함. MMRCommon ");
- var strShape = ctrlObj.DeleteAllShape();
-
- var Viewmode = ctrlObj.GetViewMode();
-
- if(Viewmode != "1")
- {
- ctrlObj.SetViewMode(1);
- }
-
- if (!utlf_isNull(ctrlwidth)) // 2011-01-17 경북대 최원돈 예외사항 오류수정
- {
- ctrlObj.width = ctrlwidth;
- }
-
- if (!urlf_isNull(ctrlheight)) // 2011-01-17 경북대 최원돈 예외사항 오류수정
- {
- ctrlObj.height = ctrlheight;
- }
-
- var domain = sysf_getURLprefix();
-
- var imgurl = GetImgUrl(degnitemcd);
-
- var imgsrc = domain + imgurl;
-
- ctrlObj.LoadImage(imgsrc);
-
- }
-
- if( nodeListDsCnt > 0 )
- nodeListDs.filter("");
- }
- // control -> ds_data_recitem
- function lf_setItemRecDS(obj:Dataset, e:DSColChangeEventInfo)
- {
- sysf_trace_emr("@@@@@ lf_setItemRecDS : " + e.newvalue + " " + e.columnid + " " + e.fromobject.name + " " + e.fromreferenceobject.name +"*****");
- var columnid = e.columnid;
- var sColid = columnid.split("_");
-
-
- // component object
- var objNm = lf_getCompNm(columnid, this, e.newvalue);
- var comObj = this.components[objNm];
- var refitem = obj.refitem;
-
- // user properties
- var supdegnitemno = "";
- var colno = "";
- var rowno = "";
- var ctrltype = "";
- var ParentsNo = "";
-
- var type = "";
- var degnitemkind = "";
- var degnitemno = "";
- var extn = "";
- var expr = "";
- var getColumnid = "reccnts";
-
- type = sColid[0];
- degnitemno = sColid[1];
- extn = sColid.length > 2 ? sColid[2] : "";
-
- // set degnitemkind
- if( type == "SSU" ){
- degnitemkind = "MSL";
- degnitemno = obj.supdegnitemno;
- }else{
- degnitemkind = type;
- }
-
-
-
- if( degnitemkind == "STX" || degnitemkind == "MTX" || degnitemkind == "CAL" || degnitemkind == "LBL" || !utlf_isNull(extn)){
- // getColumnid = "reccnts";
- if( !utlf_isNull(refitem) )
- getColumnid = "rectermnm";
- }else{
- if( !utlf_isNull(refitem) )
- getColumnid = "rectermcd";
- else
- getColumnid = "rectermcd";
- }
-
-
- sysf_trace_emr(" - " + type + " + " + degnitemkind);
- sysf_trace_emr(" filterstr : " + ds_data_recitem.filterstr);
- sysf_trace_emr(" ds_data_recitem rowcount cnt : " + ds_data_recitem.rowcount);
- if( (degnitemkind == "BOL" || degnitemkind == "SSL" || degnitemkind == "IMG" || degnitemkind == "MSL" ||
- degnitemkind == "CHK" || degnitemkind == "RDO" || degnitemkind == "CMB") && utlf_isNull(extn) ){
- lf_fSelectValList(comObj, objNm.split("_")[1], degnitemkind);
- }
- if( degnitemkind == "MTX" ){
-
- var oDs = this.objects["ds_hidden_selectiontext"];
- if( oDs == null ) dsf_createDs("ds_hidden_selectiontext");
- if( ctrl == null ) var selidx = ["",""]
- else var selidx = ctrl.getSelect();
-
- dsf_makeValue(ds_hidden_selectiontext, "begin", "string", selidx[0])
- dsf_makeValue(ds_hidden_selectiontext, "end", "string", selidx[1])
-
- var fRow = ds_data_recitem.findRowExpr("degnitemkind == '" + degnitemkind + "' && degnitemno == '" + degnitemno + "'");
- sysf_trace_emr("!!!!! fRow : " + fRow + " | e.newvalue : " + e.newvalue + " | getColumnid : " + getColumnid + " degnitemkind == '" + degnitemkind + "' && degnitemno == '" + degnitemno + "'");
- ds_data_recitem.setColumn(fRow, getColumnid, e.newvalue);
- }
- if( degnitemkind == "STX" || !utlf_isNull(extn) ){
- var fRow = this.ds_data_recitem.findRowExpr("degnitemkind == '" + degnitemkind + "' && degnitemno == '" + degnitemno + "'");
- this.ds_data_recitem.setColumn(fRow, getColumnid, e.newvalue);
- sysf_trace_emr("!!!!! fRow : " + fRow + " | e.newvalue : " + e.newvalue + " | getColumnid : " + getColumnid + " degnitemkind == '" + degnitemkind + "' && degnitemno == '" + degnitemno + "'");
- sysf_trace_emr(this.name);
- sysf_trace_emr(this.objects["ds_data_recitem"].findRow("degnitemno", degnitemno));
- //sysf_trace_emr(ds_data_recitem.saveXML());
- }
-
- }
- function lf_setItemRecDS_old(obj:Dataset, e:DSColChangeEventInfo)
- {
- sysf_trace_emr("@@@@@ lf_setItemRecDS : " + e.newvalue + " *****");
- var columnid = e.columnid
-
- var objNm = lf_getCompNm(columnid);
- var comObj = this.components[objNm];
- var refitem = comObj.refitem;
-
-
- var colno = "";
- var degnitemkind = "";
- var degnitemno = "";
- var expr = "";
-
- if( viewObj.objects["ds_bind"] != null ){
- for(var j=0; j<ds_bind.rowcount; j++){
- var componentsid = ds_bind.getColumn(j, "componentid");
- var supitem = ds_bind.getColumn(j, "supitem");
- // itemvalue Columnid와 동일한 ds_bind 정보가 존재할때
- if( supitem.indexOf(colid) > -1 ){
- var supitemSplit = supitem.split(",");
- for(var k in supitemSplit){
- if(supitemSplit[k] == colid)
- colno = k;
- }
-
- degnitemkind = componentsid.split("_")[0];
- degnitemno = componentsid.split("_")[1];
- }
- }
- }
- // ds_bind에 degnitemkind 정보가 없으면 itemvalue 정보를 그대로 사용
- if( utlf_isNull(degnitemkind) ) degnitemkind = colid.split("_")[0];
- if( utlf_isNull(degnitemno) ) degnitemno = colid.split("_")[1];
-
- if( !utlf_isNull(colno) ){
- expr = "degnitemkind == '"+degnitemkind+"' && degnitemno == '"+degnitemno+"' && colno == '"+ colno +"'";
- }else{
- expr = "degnitemkind == '"+degnitemkind+"' && degnitemno == '"+degnitemno+"'";
- }
-
- var nidx = ds_data_recitem.findRowExpr(expr);
- var setColumnid = "";
-
- if( utlf_isNull(refitem) ){
- if(comObj instanceof Edit || comObj instanceof MaskEdit || comObj instanceof TextArea)
- setColumnid = "reccnts";
- else// if(comObj instanceof Combo || comObj instanceof Calendar || comObj instanceof Spin)
- setColumnid = "rectermcd";
- }else{
- if(comObj instanceof Edit || comObj instanceof MaskEdit || comObj instanceof TextArea)
- setColumnid = "rectermnm";
- //else if(comObj instanceof Combo || comObj instanceof Calendar || comObj instanceof Spin)
- else
- setColumnid = "rectermcd";
- }
-
- ds_data_recitem.setColumn(nidx, setColumnid, e.newvalue);
- }
- // ds_data_recitem -> ds_data_itemvalue
- function lf_setItemValueDS(viewObj, mode){
- sysf_trace_emr("***** lf_setItemValueDS("+viewObj+", "+mode+") *****" );
- if( utlf_isNull(viewObj) ) viewObj = this;
- if( utlf_isNull(mode) ) mode = "INIT";
- var itemvalueDs = viewObj.ds_data_itemvalue;
- var recitemDs = null;
- sysf_trace_emr(" this.name (MMRCommon) : " + this.name + " | viewObj.name : " + viewObj.name);
-
- if( mode == "INIT") recitemDs = viewObj.ds_data_recitem;
- else recitemDs = ds_hidden_recitem;
-
- // 임시
- //itemvalueDs.enableevent = false;
- for( var i=0; i<itemvalueDs.getColCount(); i++){
- var colid = itemvalueDs.getColID(i);
- var sColid = colid.split("_");
- // component object
- var objNm = lf_getCompNm(colid, viewObj);
- var obj = viewObj.components[objNm];
- var refitem = obj.refitem;
-
- // user properties
- var supdegnitemno = "";
- var colno = "";
- var rowno = "";
- var ctrltype = "";
- var ParentsNo = "";
-
- var type = "";
- var degnitemkind = "";
- var degnitemno = "";
- var extn = "";
- var expr = "";
-
- var getColumnid = "reccnts";
-
- type = sColid[0];
- degnitemno = sColid[1];
- extn = sColid.length > 2 ? sColid[2] : "";
-
- // set degnitemkind
- if( type == "SSU" ){
- degnitemkind = "MSL";
- degnitemno = obj.supdegnitemno;
- colno = obj.colno;
- rowno = obj.rowno;
- }else{
- degnitemkind = type;
- }
-
- // set getColumnid
- //var obj_degnitemkind = objNm.split("_")[0];
- if( type == "STX" || type == "MTX" || type == "CAL" || type == "LBL" || !utlf_isNull(extn)){
- // getColumnid = "reccnts";
- if( !utlf_isNull(obj.refitem) )
- getColumnid = "rectermnm";
- }else{
- if( !utlf_isNull(obj.refitem) )
- getColumnid = "rectermcd";
- else
- getColumnid = "rectermcd";
- }
-
- // set expr
- expr = "degnitemkind == '" + degnitemkind + "' && degnitemno == '" + degnitemno + "'";
-
- if( !utlf_isNull(colno) ){
- expr = expr + " && colno == '" + colno + "'";
- }
- if( !utlf_isNull(rowno) ){
- expr = expr + " && rowno == '" + rowno + "'";
- }
-
- // findrow
- var fidx = recitemDs.findRowExpr(expr);
-
- // get Data
- var data = recitemDs.getColumn(fidx, getColumnid);
-
- // ds_data_itemvalue value set
- itemvalueDs.setColumn(0, colid, utlf_transNullToEmpty(data));
-
- }
- // 임시
- //itemvalueDs.enableevent = true;
- }
- function lf_getCompNm(columnid, tarObj, tarValue){
- //<BindItem id="CMB_22" compid="CMB_22" propid="value" datasetid="ds_data_itemvalue" columnid="CMB_22"/>
- if( utlf_isNull(tarObj) ) tarObj = this;
- var compNm = null;
- for(var i in tarObj.binds){
- var bindObj = tarObj.binds[i];
- if( bindObj.columnid == columnid ){
- compNm = bindObj.compid;
- if( !utlf_isNull(tarValue) ){
- var objComp = tarObj.components[compNm];
- if( objComp != null && !utlf_isNull(objComp.innerdataset) ){
- if(!((objComp.innerdataset).toString() == "[object Dataset]")){
- var objDs = eval(objComp.innerdataset);
- }else{
- var objDs = objComp.innerdataset;
- }
- var fRow = objDs.findRow(objComp.codecolumn, tarValue);
- if( fRow < 0 )
- continue;
- }
-
- }
- return compNm;
- }
- }
- return compNm;
- }
- /**
- * @ver : 2007-09-21
- * @desc : 점수계산이 포함된 체크박스나 라디오버튼을 체크할 때 실행되는 이벤트
- * @
- * @by : 이상현
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- var valGrupArr = new Array();
- function lf_fSelectValList(comObj, degnitemno, type)
- {
- sysf_trace_emr( "lf_fSelectValList("+comObj.name+", "+degnitemno+", "+type+")");
- /*
- 기존 TF fSelectValList 에서의 degnitemno 는 Comonent에 적용되어있는 degnitemno 임.
- XP 에서는 Component이름을 degnitemno 로 생성하였으므로 Component 의 이름으로 확인
- */
- try
- {
- if(type == null)
- type = "RDO";
-
- var sCd = ds_data_recitem.lookup("degnitemno", degnitemno, "rectermcd");
-
- if( !utlf_isNull(sCd) && !utlf_isNull(comObj.innerdataset) ){
-
- if(!((comObj.innerdataset).toString() == "[object Dataset]")){
- var comObjDs = eval(objComp.innerdataset);
- }else{
- var comObjDs = objComp.innerdataset;
- }
-
- var fRow = comObjDs.findRow("termbasecd", sCd);
- var sNm = comObjDs.getColumn(fRow, "valitemnm");
- var sPnt = comObjDs.getColumn(fRow, "valitempnt");
- }
-
- if(type == "RDO" || type == "CMB")
- {
- var fRow = ds_data_recitem.findRow("degnitemno", degnitemno);
- sysf_trace_emr(" CMB fRow : " + fRow);
- ds_data_recitem.setColumn(fRow, "rectermnm", sNm);
- ds_data_recitem.setColumn(fRow, "rowno", sPnt);
- }
- else if(type == "CHK")
- {
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////
- // CHK 아이템을 배열로 저장해둠.(체크한 순서에 상관없이 순서대로 저장하기 위함.)
- //
- // formdegn노드의 valgrupcd 를 구한다.
- var valgrupcd = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/valgrupcd");
- var Grupcdlist= "";
-
- if(valGrupArr[degnitemno] == null)
- {
- valGrupArr[degnitemno] = new Array();
-
- // 수정모드시 기존에 저장되었던 vallist 코드를 미리 대입해둠.
- if(model.getValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermnm") != '')
- {
- sCdlist = model.getValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermcd").split(" ");
-
- Grupcdlist= findNodeset(model, pageInfo.vallistRef + "[grupcd='" + valgrupcd + "']");
-
- for(var cdidx = 0; cdidx < sCdlist.length; cdidx++)
- {
- for(var setidx = 0; setidx < Grupcdlist.length; setidx++)
- {
- var valitemNode = Grupcdlist.item(setidx);
-
- if(sCdlist[cdidx] == valitemNode.selectSingleNode("valcd").text)
- {
- sNm = model.getValue(pageInfo.vallistRef + "[grupcd='" + valgrupcd + "' and valcd='" + valitemNode.selectSingleNode("valcd").text + "']/valitemnm");
- sPnt = model.getValue(pageInfo.vallistRef + "[grupcd='" + valgrupcd + "' and valcd='" + valitemNode.selectSingleNode("valcd").text + "']/valitempnt");
-
- valGrupArr[degnitemno][setidx] = valitemNode.selectSingleNode("valcd").text + "|" + sNm + "|" + sPnt;
-
- break;
- }
- }
- }
- }
- }
-
- // 가장 마지막에 체크된 value 코드를 얻어온다.
- sCdlist = model.getValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermcd").split(" ");
- sCd = sCdlist[sCdlist.length-1];
-
- sNm = model.getValue(pageInfo.vallistRef + "[grupcd='" + valgrupcd + "' and valcd='" + sCd + "']/valitemnm");
- sPnt = model.getValue(pageInfo.vallistRef + "[grupcd='" + valgrupcd + "' and valcd='" + sCd + "']/valitempnt");
- Grupcdlist= findNodeset(model, pageInfo.vallistRef + "[grupcd='" + valgrupcd + "']");
-
- for(var grpidx = 0; grpidx < Grupcdlist.length; grpidx++)
- {
- var valitemNode = Grupcdlist.item(grpidx);
-
- if(valitemNode.selectSingleNode("valcd").text == sCd)
- {
- if(valGrupArr[degnitemno][grpidx] == null)
- {
- valGrupArr[degnitemno][grpidx] = sCd + "|" + sNm + "|" + sPnt;
- break;
- }
- }
- }
-
- var nms = "";
- var cds = "";
- var pnts = 0;
-
- for(var i = 0 ; i < valGrupArr[degnitemno].length; i++)
- {
- var sValue = valGrupArr[degnitemno][i];
-
- if(sValue != null)
- {
- var cd = sValue.split("|")[0];
- var nm = sValue.split("|")[1];
- var pnt = sValue.split("|")[2];
- if(pnt == "")
- pnt = "0";
-
- if(nms == "")
- {
- nms += nm;
- cds += cd;
- }
- else
- {
- nms += "▦" + nm;
- cds += " " + cd;
- }
-
- //pnts += parseInt(pnt);
- if(pnt.isNumber() == true || pnt.isFloat() == true)
- pnts += eval(pnt);
- }
- }
-
- // CHK 아이템 체크시 순서대로 정렬(백업)
- /*
- var arrCd = sCd.split(" ");
- for(var i = 0 ; i < arrCd.length; i++)
- {
- var cd = arrCd[i];
- var nm = model.getValue(pageInfo.vallistRef + "[valcd='" + cd + "']/valitemnm");
- var pnt = model.getValue(pageInfo.vallistRef + "[valcd='" + cd + "']/valitempnt");
- if(pnt == "")
- pnt = 0;
-
- if(i == 0)
- nms += nm;
- else
- nms += " " + nm;
-
- pnts += parseInt(pnt);
- }
- */
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermcd", cds);
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermnm", nms);
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rowno", pnts);
- }
- else if (type == "MSL")
- {
- var sItemNm = comObj.text
- var supdegnitemno =comObj.supdegnitemno;
- //var extn = getStyleValue(model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/itemattrval"), "extn");
- var pnts = 0;
-
- // start for
- //ds_data_recitem.filter("degnitemno == '" + supdegnitemno + "' && degnitemkind == '" type + "'");
- //for( var i = 0; i < ds_data_recitem.rowcount; i++){
- var subdegnitemno = comObj.name.split("_")[1];
-
- var rectermcd = comObj.value;
- var extnCtrl = this.components["STX_" + subdegnitemno];
- sysf_trace_emr(" rectermcd : " + rectermcd );
- if( extnCtrl != null ){
- if(!utlf_isNull(rectermcd) && rectermcd != "nonevalue")
- {
- extnCtrl.enable = true;
- }
- else
- {
- extnCtrl.enable = false;
- }
- }
-
- var sDefltScr = comObj.degnitempnts
-
- if(utlf_isNull(sDefltScr))
- sDefltScr = "0";
-
- if(!utlf_isNull(rectermcd))
- {
- if(sDefltScr.isNumber() == true || sDefltScr.isFloat() == true)
- pnts += eval(sDefltScr);
- }
- sysf_trace_emr("jw.choe pnts 체크 필요...기존 for문 사라짐... 6681 MMRCommon ");
- if(subdegnitemno == degnitemno)
- {
- var oDs = this.objects["ds_data_recitem"];
-
- var fRow = oDs.findRowExpr("degnitemno == '" + supdegnitemno + "' && colno == '" + comObj.colno + "'");
- sysf_trace_emr(" fRow : " + fRow);
- ds_data_recitem.setColumn(fRow, "rectermnm", sItemNm);
- ds_data_recitem.setColumn(fRow, "rowno", sDefltScr);
- }
- // }
- // ds_data_recitem.filter("");
- // end for
- var fRow = ds_data_recitem.findRowExpr("degnitemno == '" + supdegnitemno +"' && and colno == '0'");
- ds_data_recitem.setColumn(fRow, "rowno", pnts);
- }
- else if (type == "IMG")
- {
- var sItemNm = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/degnitemnm");
- var supdegnitemno = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/supdegnitemno");
- var degnitemlevlcd = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/degnitemlevlcd");
- var extn = getStyleValue(model.getValue(pageInfo.formdegnRef + "[degnitemno='" + degnitemno + "']/itemattrval"), "extn");
-
- var pnts = 0;
- var nodeList = instance1.selectNodes(pageInfo.formdegnRef + "[supdegnitemno = '" + supdegnitemno + "' and degnitemkind = 'ISU']/degnitemno");
- for(var i = 0; i < nodeList.length; i++)
- {
- var subdegnitemno = nodeList.item(i).text;
- var rectermcd = model.getValue(pageInfo.recItemRef + "[degnitemno='" + subdegnitemno + "']/rectermcd");
-
- if(extn == "visible")
- {
- var extnCtrl = document.controls("STX_" + subdegnitemno);
- if(extnCtrl == null)
- continue;
-
- if(rectermcd != "")
- {
- extnCtrl.disabled = false;
- }
- else
- {
- extnCtrl.disabled = true;
- }
- }
-
- // 아이템기본값 항목을 아이템기본값과 아이템점수로 분리
- // 2008.04.16
- // 수정자: 이경희
- /*
- var sDefltVal = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + subdegnitemno + "']/degnitemdefltval");
- if(sDefltVal == "")
- sDefltVal = 0;
- */
- var sDefltScr = model.getValue(pageInfo.formdegnRef + "[degnitemno='" + subdegnitemno + "']/degnitempnts");
- if(sDefltScr == "")
- sDefltScr = "0";
-
- if(rectermcd != "")
- {
- //pnts += parseInt(sDefltScr);
- if(sDefltScr.isNumber() == true || sDefltScr.isFloat() == true)
- pnts += eval(sDefltScr);
- }
- }
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermnm", sItemNm);
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + supdegnitemno + "']/rowno", pnts);
- }
- else if (type == "SSL")
- {
- // 아이템기본값 항목을 아이템기본값과 아이템점수로 분리
- var sDefltScr = comObj.degnitempnts;
-
- var comObjDs = this.objects["ds_" + comObj.name];
-
- var sItemNm = comObjDs.getColumn(0, "valitemnm");
- var supdegnitemno = comObj.supdegnitemno;
-
-
- for( var i in components ){
- if( components[i].supdegnitemno == supdegnitemno ){
- var subdegnitemno = components[i].name.split("_")[1];
- sysf_trace_emr(" subdegnitemno : " + subdegnitemno ) ;
- var extnCtrl = this.components["STX_" + subdegnitemno];
- var unitCtrl = this.components["UNIT_" + subdegnitemno];
-
- if(extnCtrl == null)
- continue;
-
- if(degnitemno == subdegnitemno)
- {
- extnCtrl.enable = true;
- extnCtrl.visible = true;
-
- if(unitCtrl != null)
- unitCtrl.visible = true;
- }
- else
- {
- extnCtrl.visible = false;
- extnCtrl.enable = false;
- //extnCtrl.value = "";
-
- if(unitCtrl != null)
- unitCtrl.visible = false;
- }
-
- }
-
- }
-
- var nIdx = ds_data_recitem.findRow("degnitemno", supdegnitemno);
- sysf_trace_emr(" nIdx : " + nIdx );
- ds_data_recitem.setColumn(nIdx, "rectermnm", sItemNm);
- ds_data_recitem.setColumn(nIdx, "rowno", sDefltScr);
- }
- else if (type == "BOL")
- {
- sCd = model.getValue(pageInfo.recItemRef + "[degnitemno = '" + degnitemno + "']/rectermcd");
- var nm = model.getValue(pageInfo.formdegnRef + "[degnitemno = '" + degnitemno + "']/degnitemnm");
-
- // 아이템기본값 항목을 아이템기본값과 아이템점수로 분리
- // 2008.04.16
- // 수정자: 이경희
- //var pnt = model.getValue(pageInfo.formdegnRef + "[degnitemno = '" + degnitemno + "']/degnitemdefltval");
- var pnt = model.getValue(pageInfo.formdegnRef + "[degnitemno = '" + degnitemno + "']/degnitempnts");
-
- if(pnt == "")
- pnt = "0";
-
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rectermnm", nm);
- model.setValue(pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/rowno", pnt);
-
- var extnCtrl = document.controls("STX_" + degnitemno);
- if(extnCtrl != null)
- {
- extnCtrl.disabled = false;
- extnCtrl.attribute("ref") = pageInfo.recItemRef + "[degnitemno='" + degnitemno + "']/reccnts";
- }
- }
-
- fReCalculate();
- }
- catch(e)
- {
- sysf_catchTrace(e);
- return;
- }
- }
- /**
- * @group :
- * @ver : 2009.12.22
- * @by : acwon
- * @modify : 2009.12.22 (acwon)
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부분서식의 아이템에 부분서식 상위코드를 세팅
- * 동일한 부분서식이 두개이상일때 문제점이 발견되어 보완함.
- * @param : ivwObj - 최상위 아이템 코드를 세팅할 iviewer 객체
- * orgSupDegnItemNo
- * @return :
- * @---------------------------------------------------
- */
- function setFstLevlItemCdOnUnitForm(ivwObj, orgSupDegnItemNo)
- {
- sysf_trace_emr("***** setFstLevlItemCdOnUnitForm("+ivwObj+", "+orgSupDegnItemNo+") EMRCommon -> MMRCommon 부분서식의 아이템에 부분서식 상위코드를 세팅*****");
- //var EMR_formdegnRefDs = this.objects[gPageInfo_EMR.formdegnRef];
- var degnitemlevlcd = ds_data_formdegn.lookup("degnitemno", orgSupDegnItemNo, "degnitemlevlcd");
- var fstLevlBaseItemCd = degnitemlevlcd.substr(0, degnitemlevlcd.indexOf(".") >= 0 ? degnitemlevlcd.indexOf(".") : degnitemlevlcd.length);
- var fstLevlItemCd = ds_data_formdegn.lookup("degnitemlevlcd", fstLevlBaseItemCd, "degnitemcd");
-
- var nodeList = ivwObj.objects["ds_data_recitem"];
- var nodeListCnt = 0;
- if( nodeList != null ) nodeListCnt = nodeList.rowcount;
-
- for(var i = 0; i < nodeListCnt; i++)
- {
- var recitemNode = nodeList;
-
- if(recitemNode.getColumnInfo("fstlevlitemcd") == null)
- continue;
-
- if(recitemNode.getColumnInfo("degnunitcd") == null)
- {
- recitemNode.addColumn("degnunitcd", "string");
- }
-
- recitemNode.setColumn(i, "fstlevlitemcd", fstLevlItemCd);
- recitemNode.setColumn(i, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + recitemNode.getColumn(i, "degnitemlevlcd"));
- recitemNode.setColumn(i, "degnitemlevlno", parseInt(recitemNode.getColumn(i, "degnitemlevlno")) + 1)
- }
- //if( nodeList != null ) sysf_trace_emr(nodeList.saveXML());
- sysf_trace_emr("jw.choe grid dataset check EMRCommon !!!!!!!!!!!!!!!!!!!!!!!!");
- var grdNodeList = ivwObj.objects["ds_main_recinfo_grid"];//ivwObj.objects[gPageInfo_EMR.RecinfoGridRef];
- var grdNodeListCnt = 0;
- if( grdNodeList != null ) grdNodeListCnt = grdNodeList.rowcount;
- for(var i = 0; i < grdNodeListCnt; i++)
- {
- grdNodeList.setColumn(i, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + grdNodeList.getColumn(i, "degnitemlevlcd"));
-
- //var itemNodeList = grdNodeList.item(i).selectNodes("recitem");
- var itemNodeList = ivwObj.objects["ds_main_recinfo_grid_recitem"];
- var itemNodeListCnt = 0;
- if( itemNodeList != null ) itemNodeListCnt = itemNodeList.rowcount;
- for(var j = 0; j < itemNodeListCnt; j++)
- {
- var recitemNode = itemNodeList;
- //var fstlevlitemcdNode = recitemNode.selectSingleNode("fstlevlitemcd");
-
- if(recitemNode.getColumnInfo("fstlevlitemcd") == null)
- continue;
-
- if(recitemNode.getColumnInfo("degnunitcd") == null)
- {
- recitemNode.addColumn("degnunitcd", "string");
- }
-
- recitemNode.setColumn(j, "fstlevlitemcd", fstLevlItemCd);
- recitemNode.setColumn(j, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + recitemNode.getColumn(j, "degnitemlevlcd"));
- recitemNode.setColumn(j, "degnitemlevlno", parseInt(recitemNode.getColumn(j, "degnitemlevlno")) + 1);
- }
- }
-
- var tempnodeList = ivwObj.objects["ds_temp_recitem"];//ivwObj.objects[gPageInfo_EMR.initrecItemRef];
- var tempnodeListCnt = 0;
- if( tempnodeList != null ) tempnodeListCnt = tempnodeList.rowcount;
-
- for(var i = 0; i < tempnodeListCnt; i++)
- {
- var recitemNode = tempnodeList;
- //var fstlevlitemcdNode = recitemNode.selectSingleNode("fstlevlitemcd");
-
- if(recitemNode.getColumnInfo("fstlevlitemcd") == null)
- continue;
-
- if(recitemNode.getColumnInfo("degnunitcd") == null)
- {
- recitemNode.addColumn("degnunitcd", "string");
- }
-
- recitemNode.setColumn(i, "fstlevlitemcd", fstLevlItemCd);
- recitemNode.setColumn(i, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + recitemNode.getColumn(i, "degnitemlevlcd"));
- recitemNode.setColumn(i, "degnitemlevlno", parseInt(recitemNode.getColumn(i, "degnitemlevlno")) + 1);
- }
-
- var tempgrdNodeList = ivwObj.objects["ds_temp_recinfo_grid"];//ivwObj.objects[gPageInfo_EMR.initRecinfoGridRef];
- var tempgrdNodeListCnt = 0;
- if( tempgrdNodeList != null ) tempgrdNodeListCnt = tempgrdNodeList.rowcount;
- for(var i = 0; i < tempgrdNodeListCnt; i++)
- {
- tempgrdNodeList.setColumn(i, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + tempgrdNodeList.getColumn(i, "degnitemlevlcd"))
-
- //var itemNodeList = tempgrdNodeList.item(i).selectNodes("recitem");
- var itemNodeList = ivwObj.objects["ds_temp_recinfo_grid_recitem"];
- var itemNodeListCnt = 0;
- if( itemNodeList != null ) itemNodeListCnt = itemNodeList.rowcount;
- for(var j = 0; j < itemNodeListCnt; j++)
- {
- var recitemNode = itemNodeList;
- //var fstlevlitemcdNode = recitemNode.selectSingleNode("fstlevlitemcd");
-
- if(recitemNode.getColumnInfo("fstlevlitemcd") == null)
- continue;
-
- recitemNode.setColumn(j, "fstlevlitemcd", fstLevlItemCd);
- recitemNode.setColumn(j, "degnitemlevlcd", fstLevlItemCd.substr(0, 7) + "." + recitemNode.getColumn(j, "degnitemlevlcd"));
- recitemNode.setColumn(j, "degnitemlevlno", parseInt(recitemNode.getColumn(j, "degnitemlevlno")) + 1);
- }
- }
- }
- //MRF01200
- function fFormReload()
- {
- // 그리드 Height 재설정
- //fResetGrd();
-
-
- // OCX 이미지 로드
- // fLoadOcxImage();
-
- // 가계도 데이터 로드
- // fLoadFdgInfo();
-
-
- // Disabled 컨트롤 재설정
- // fResetDisableCtrls();
-
- // 백업 원위치
- // model.copyNode( "/root/temp2/localimage", "/root/main/localimage" );
- // model.removenode( "/root/main/localimage" );
-
- // fRecalculate() 함수 선행 작업.
- g_degnitemlevlcnt = 0;
- // fSetDegnitemlevlcnt();
-
- }
- /**
- * @desc : 컨트롤의 스타일 값 가져오기
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function getStyleValue(attrs, attrNm, ctrltype)
- {
- sysf_trace_emr("***** getStyleValue("+attrs+", "+attrNm+", "+ctrltype+") EMRCommon -> MMRCommon *****");
- if(!urlf_isNull(ctrltype))
- attrNm = ctrltype + "." + attrNm;
- var arrAttrs = attrs.split(";");
- for(var i = 0; i < arrAttrs.length; i++)
- {
- var arrAttr = arrAttrs[i].split(":");
- if(arrAttr.length == 0)
- continue;
- if(arrAttr[0] == attrNm)
- {
- return arrAttr[1];
- }
- }
- return "";
- }
- function GetImgUrl(imgecd)
- {
- sysf_trace_emr("***** GetImgUrl("+imgecd+") EMRCommon -> MMRCommon *****");
- return getActionURI("TRMRF01212") + getUserSessionString() + "&imgecd=" + imgecd;
- }
- /**
- * @desc : 이미지데이터를 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- * @history:
- 2008-11-24
- - 로컬이미지는 공통서식, 과별서식 구분 없이 무조건 저장.
- - 편집가능 DB이미지는 공통서식의 경우 편집을 하지 않으면 Pass
- 과별서식의 경우 편집을 하지 않아도 저장하도록 수정
- */
- var BASE_SHAPE = "<Xvg viewMode='1' zoom='0' width='300' height='300'></Xvg>";
- function getImgeData()
- {
- sysf_trace_emr("***** getImgeData() 이미지데이터를 가져온다. EMRCommon -> MMRCommon *****");
- var pageInfo = new PAGEINFO();
- var expr = "degnitemkind == 'IMG'";
- //var nodeList = instance1.selectNodes(pageInfo.recItemRef + "[degnitemkind = 'IMG']");
- var recItemRefDs = this.objects["ds_data_recitem"];
- var recItemRefDsCnt = 0;
- if( recItemRefDs != null ){
- recItemRefDs.filter(expr);
- recItemRefDsCnt = recItemRefDs.rowcount;
- }
-
- // 공통서식인지 과별서식인지 구분
- //var FormInfoNode = instance1.selectNodes(pageInfo.formmastRef);
- var formmastRefDs = this.objects["ds_data_formmast"];
- var formmastRefDsCnt = formmastRefDs == null ? 0 : formmastRefDs.rowcount;
-
- var isFormMain = "";
- var formkind = "";
- var formprognm = "";
- var formprogflag = "";
- sysf_trace_emr("jw.choe 특수서식은 formmast 정보가 없기때문에 차후 확인필요함 MMRCommon");
- if(formmastRefDsCnt > 0)
- {
- //var formmastInfoNode = FormInfoNode.item(0);
-
- formprogflag = formmastRefDs.getColumn(0, "formprogflag");
- formprognm = formmastRefDs.getColumn(0, "formprognm");
- formkind = formmastRefDs.getColumn(0, "formkind");
-
- if(formprognm != "-" && formkind == "C" && formprogflag != "-")
- {
- isFormMain = true;
- }
- else if(formkind == "U")
- {
- isFormMain = true; // 공통서식내의 부분 서식.
- }
- else
- {
- isFormMain = false;
- }
- }
-
- for(var i = 0; i < recItemRefDsCnt; i++)
- {
- //var itemNode = nodeList.item(i);
- var degnitemno = recItemRefDs.getColumn(i, "degnitemno");
- var degnitemcd = recItemRefDs.getColumn(i, "degnitemcd");
- var degnitemlevlcd = recItemRefDs.getColumn(i, "degnitemlevlcd");
-
- var degnitemnm = recItemRefDs.getColumn(i, "degnitemnm");
- var fstlevlitemcd = recItemRefDs.getColumn(i, "fstlevlitemcd");
- var reccnts = recItemRefDs.getColumn(i, "reccnts");
-
- var imgedit = "";
-
- if(formkind == "U")
- {
- var Tmpdegnitemlevlcd = degnitemlevlcd;
- var Tmpfstlevlitemcd = "";
-
- if(!utlf_isNull(fstlevlitemcd))
- {
- Tmpfstlevlitemcd = fstlevlitemcd.substr(0, 7) + ".";
- Tmpdegnitemlevlcd = Tmpdegnitemlevlcd.setReplaceWord(Tmpfstlevlitemcd, "");
- }
-
- imgedit = getStyleValue(ds_data_formdegn.lookup("degnitemlevlcd", Tmpdegnitemlevlcd, "itemattrval"), "imgedit");
- }
- else
- imgedit = getStyleValue(ds_data_formdegn.lookup("degnitemlevlcd", degnitemlevlcd, "itemattrval"), "imgedit");
-
- if(imgedit != "Y")
- continue;
-
- var ctrlid = "IMG_" + degnitemno;
-
- var strShape = eval("IMG_" + degnitemno).GetShapeString();
- var strRecImge = eval("IMG_" + degnitemno).SaveImageBase64();
- var strImgSize = eval("IMG_" + degnitemno).GetImageSizeEx(false); // 이미지의 크기
-
-
- sysf_trace_emr("jw.choe Local Image path check! /roo/temp2/localimage/ ctrlid / srcimage, LocalYN, degnitemlevlcd MMRCommon ");
-
- // var LocalImgNode = "/root/temp2/localimage/" + ctrlid + "/srcimge";
- // var LocalYNNode = "/root/temp2/localimage/" + ctrlid + "/LocalYN";
- // var LocalDegnitemlevlCDNode = "/root/temp2/localimage/" + ctrlid + "/degnitemlevlcd";
- var LocalImgDs = this.objects["ds_temp2_localimage_"+ctrlid];
-
- var strSrcImge = LocalImgDs.getColumn(0, "srcimge");
- var strLocalYN = LocalImgDs.getColumn(0, "LocalYn");
- var strLocalImgDegnitemlevlcd = LocalImgDs.getColumn(0, "degnitemlevlcd");
-
- if(strLocalYN == "Y") // 로컬이미지 저장 루틴
- {
- if(degnitemlevlcd == strLocalImgDegnitemlevlcd)
- {
- // Image Size
- var fRow = ds_data_recitem.findRowExpr("degnitemlevlcd == '" + degnitemlevlcd + "' && degnitemno == '" + degnitemno + "'");
- ds_data_recitem.setColumn(fRow, "unitnm", strImgSize);
-
- // MetaData
- ds_data_recitem.setColumn(fRow, "reccnts", strShape);//cdata 처리
-
- // recimage
- fRow = ds_data_recitem.findRow("degnitemlevlcd", degnitemlevlcd);
- ds_data_recitem.setColumn(fRow, "recimge", strRecImge);//cdata 처리
-
- // srcimage
- var newNode = LocalImgDs.getColumn(0, "srcimge");
-
- var srcimgNode = recItemRefDs.getColumn(i,"srcimge");
-
- if(!utlf_isNull(newNode) && !utlf_isNull(srcimgNode))
- {
- //itemNode.replaceChild(newNode, srcimgNode);
- recItemRefDs.setColumn(i, "srcimge", newNode);
- }
-
- // 진료기록메인에서 미리보기 쿼리 실행 시 로컬이미지를 찾기 위해 colno를 'FILE'로 설정
-
- ds_data_recitem.setColumn(fRow, "colno", "FILE");
-
- // 미리보기시 로컬이미지와 DB이미지를 구분하기 위해 설정
- ds_data_recitem.setColumn(fRow, "degnitemnm", "LOCALIMG");
- }
- }
- else // DB 이미지 저장 루틴
- {
- if(isFormMain == true) // 공통서식은 수정하지 않은 편집가능 이미지인 경우 저장하지 않음.
- {
- var tmpShape = removeXvgTag(strShape);
- sysf_trace_emr("@@@@@ tmpShape : " + tmpShape + " @@@@@");
- if(!utlf_isNull(tmpShape))
- {
- var fRow = ds_data_recitem.findRow("degnitemlevlcd", degnitemlevlcd);
- sysf_trace_emr("@@@@@ fRow : " + fRow + " | i : " + i + " @@@@@");
- ds_data_recitem.setColumn(fRow, "reccnts", strShape);//cdata set
-
- // 진료기록메인에서 미리보기 쿼리 실행 시 로컬이미지를 찾기 위해 colno를 'FILE'로 설정
- ds_data_recitem.setColumn(fRow, "colno", "MAST"); //cdata set
-
- ds_data_recitem.setColumn(fRow, "recimge", strRecImge); //cdata set
- }
- }
- else // 과별서식
- {
- if(degnitemnm == "빈이미지" && utlf_isNull(strShape))
- {
-
- }
- else
- {
- var fRow = ds_data_recitem.findRow("degnitemlevlcd", degnitemlevlcd);
- ds_data_recitem.setColumn(fRow, "reccnts", strShape); //cdata set
-
- // 진료기록메인에서 미리보기 쿼리 실행 시 로컬이미지를 찾기 위해 colno를 'FILE'로 설정
- ds_data_recitem.setColumn(fRow, "colno", "MAST"); //cdata set
-
- dfs_data_recitem.setColumn(fRow, "recimge", strRecImge); //cdata set
- }
- }
- }
- }
- if( recItemRefDs != null ){
- recItemRefDs.filter("");
- }
- }
- /**
- * @desc : 그리드의 저장할 기록정보를 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- * @history:
- 2008-11-28 이경희
- -그리드 저장시 셀에 입력된 값이 있으면 그리드 구조 통채로 저장하며, 입력된 값이 없으면 저장하지 않는다.
- - Y, G축 DGN, OPN, CCN 저장시 그리드 제목은 처음 하나만 저장되는 기존 구조를 따르면서 내용은 모두 저장하도록 수정
- 2010-03-24 주희경
- - 그리드 저장 시 값을 select 할 때 그리드 기록 데이터의 순서가 꼬인 구조로 되어 있어 그룹별로 기록 데이터를 copy하도록 수정
-
- 2010-04-14 김달현
- - 그리드의 degnitemno별로 모으는 작업 할 때에 indexOf제외조건 오류 수정
- */
- function getGridSaveData(pageInfo)
- {
- sysf_trace_emr("***** getGridSaveData("+pageInfo+") 그리드의 저장할 기록정보를 가져온다 EMRCommon -> MMRCommon *****");
- sysf_trace_emr("jw.choe grid 데이타셋 구조 변경으로 해당 루틴 필요없음 return" );
- return;
- var tmpGrdList = this.objects[pageInfo.RecinfoGridRef];
- var tmpGrdListCnt = tmpGrdList == null ? 0 : tmpGrdList.rowcount;
- //var tmpGrdList = model.instances(0).selectNodes(pageInfo.RecinfoGridRef); // "/root/main/recinfo/grid";
- var groupKeys = "";
- for(var grdIdx = 0; grdIdx < tmpGrdListCnt; grdIdx++)
- {
- //var grdNode = tmpGrdList.item(grdIdx); // grid 리스트중에 grid 를 하나씩 가져온다.
- var degnitemno = tmpGrdList.getColumn(grdIdx, "degnitemno");
- groupKeys = groupKeys + degnitemno + ",";
- }
- var arrGroupKey = groupKeys.split(",");
-
- //2010.04.22 dhkim 배열을 순서대로 정렬한다.(순서대로 정렬되어있지 않은 경우는 skip시키지 않아 정렬 로직 추가)
- if(arrGroupKey.length > 0){
- var tmp;
- for(var i = arrGroupKey.length; i >= 0; i--){
- for(var j = 0; j < i; j++){
- if(Number(arrGroupKey[j]) > Number(arrGroupKey[j+1])){
- tmp = arrGroupKey[j];
- arrGroupKey[j] = arrGroupKey[j+1];
- arrGroupKey[j+1] = tmp;
- }
- }
- }
-
- groupKeys = "";
- for(var i = 0; i < arrGroupKey.length; i++){
- if(arrGroupKey.length -1 == i){
- groupKeys += arrGroupKey[i];
- }else{
- groupKeys += arrGroupKey[i] + ",";
- }
- }
- }
-
- //2010.04.14 dhkim
- //(기존의 indexOf로 string을 검색했을 때 degnitemno가 중복된 경우의 처리가 불가능함)
- //ex) degnitemno가 7, 17, 27 등으로 들어가 있는 경우 indexOf에서 제외되어 7값만 가져가게됨.
- //루프를 돌면서 key값이 같은게 있으면 skip시키면서 새로운 array를 만들어준다.
- var tmpKey = ""; var _tmpKey;
- groupKeys = "";
- for(var x = 0; x < arrGroupKey.length ; x++){
-
- _tmpKey = arrGroupKey[x];
-
- if(tmpKey != _tmpKey){
- groupKeys = groupKeys + _tmpKey + ",";
- }
- tmpKey = _tmpKey;
- }
-
- arrGroupKey = groupKeys.split(",");
-
- sysf_trace_emr("jw.choe grd data 노드 체크후 처리 ");
- for (i=0; i<arrGroupKey.length-1; i++)
- {
-
- tmpGrdList = model.instances(0).selectNodes(pageInfo.RecinfoGridRef+"[degnitemno='"+arrGroupKey[i]+"']"); // "/root/main/recinfo/grid";
- getGridData(pageInfo, tmpGrdList);
- }
- }
- /**
- * @desc : 기본서식 기록 데이터가 없고 [추가기록, 이미지, 가계도, 확장서식]의 데이터가 있는경우 부분서식 타이틀 저장을 위해 체크 및 데이터 셋팅
- * @id :
- * @event :
- * @return :
- * @authur : 주희경
- */
- function fSetFormRecItemHeader(pageInfo, etcNodeList, resetDataFlag)
- {
- sysf_trace_emr("***** fSetFormRecItemHeader("+pageInfo+", "+etcNodeList+", "+resetDataFlag+") EMRCommon -> MMRCommon*****");
- var tmpivwObj = "";
- for(var i = 0; i < etcNodeList.rowcount; i++)
- {
- //var etcitemsNode = etcNodeList.item(i); // 값이 있는 단일 노드
- var etcfstlevlitemcd = etcNodeList.getColumn(i, "fstlevlitemcd");
- var etcreccnts = etcNodeList.getColumn(i, "reccnts").text;
- var fRow = ds_data_recitem.findRow("fstlevlitemcd", etcfstlevlitemcd);
- var orgreccnts = ds_data_recitem.getColumn(fRow, "reccnts");
- if (utlf_isNull(etcreccnts))
- etcreccnts = etcNodeList.getColumn(i, "rectermcd");
-
- tmpivwObj = this.components["ivw_" + etcfstlevlitemcd];
- sysf_trace_emr("tmpivwObj : " + tmpivwObj.name);
- if (!resetDataFlag)
- {
- if(!utlf_isNull(tmpivwObj) && !utlf_isNull(tmpivwObj.url))
- {
- var cnt = tmpivwObj.getFormRecItemExist();
-
- if (cnt < 1 && utlf_isNull(orgreccnts) && !utlf_isNull(etcreccnts))
- {
- ds_data_recitem.setColumn(fRow, "reccnts", etcreccnts);
- }
- }
- else
- {
- if (utlf_isNull(orgreccnts))
- {
- ds_data_recitem.setColumn(fRow, "reccnts", etcreccnts);
- }
- }
- }
- else
- {
- if(!utlf_isNull(tmpivwObj) && !utlf_isNull(tmpivwObj.url))
- {
- var cnt = tmpivwObj.getFormRecItemExist();
-
- if (cnt < 1 && orgreccnts == etcreccnts && !utlf_isNull(etcreccnts))
- {
- ds_data_recitem.setColumn(fRow, "reccnts", "");
- }
-
- }
- else
- {
- if (orgreccnts == etcreccnts)
- {
- ds_data_recitem.setColumn(fRow, "reccnts", "");
- }
- }
- }
- }
- }
- /**
- * @desc : 기록아이템 값을 가져온다
- * @id :
- * @event :
- * @return :
- * @authur : 이상현
- */
- function getFormRecItemExist()
- {
- sysf_trace_emr("***** getFormRecItemExist() 기록아이템값 조회 EMRCommon -> MMRCommon *****")
- var iNodeCnt = 0;
-
- var iNodeCnt = ds_data_recitem.getCaseCount("!utlf_isNull(reccnts) || !utlf_isNull(rectermcd) || !utlf_isNull(rectermnm)");
-
- return iNodeCnt;
- }
- ]]></Script>
|