SMMRC03100.xjs 449 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  3. * System Name : DBS
  4. * Job Name :
  5. * File Name : SMMRC03100.xjs
  6. * Creator :
  7. * Make Date : 2014-11-06
  8. *
  9. * Description :
  10. *---------------------------------------------------------------------------------------
  11. * Modify Date Modifier Modify Description
  12. *---------------------------------------------------------------------------------------
  13. * 2014-11-06 DBS Converting Program(TF->XP)
  14. *
  15. *---------------------------------------------------------------------------------------
  16. ****************************************************************************************/
  17. //=======================================================================================
  18. // Global Form Variable
  19. //---------------------------------------------------------------------------------------
  20. var arErrorCode = new HashArray();
  21. var fso = inff_fileSystemObject();
  22. //=======================================================================================
  23. // Transaction Callback
  24. //---------------------------------------------------------------------------------------
  25. /****************************************************************************************
  26. * Argument : 01.sSvcId : 서비스 ID
  27. * : 02.nErrorCode : 에러코드
  28. * : 03.sErrorMsg : 에러메시지
  29. * Description : tr_getCodeList의 콜백함수
  30. ****************************************************************************************/
  31. function cf_TRMMR05501(sSvcId, nErrorCode, sErrorMsg) {
  32. arErrorCode.push(sSvcId, nErrorCode);
  33. if(nErrorCode < 0) return;
  34. sysf_trace("***** cf_TRMMR05501 *****");
  35. }
  36. function cf_TRMRF03104(sSvcId, nErrorCode, sErrorMsg) {
  37. arErrorCode.push(sSvcId, nErrorCode);
  38. if(nErrorCode < 0) return;
  39. sysf_trace("***** cf_TRMRF03104 *****");
  40. }
  41. function cf_TRMRC03019(sSvcId, nErrorCode, sErrorMsg) {
  42. arErrorCode.push(sSvcId, nErrorCode);
  43. if(nErrorCode < 0) return;
  44. sysf_trace("***** cf_TRMRC03019 *****");
  45. }
  46. function cf_TRMRC03103(sSvcId, nErrorCode, sErrorMsg) {
  47. arErrorCode.push(sSvcId, nErrorCode);
  48. if(nErrorCode < 0) return;
  49. sysf_trace("***** cf_TRMRC03103 *****");
  50. }
  51. function cf_TRMRC03004(sSvcId, nErrorCode, sErrorMsg) {
  52. arErrorCode.push(sSvcId, nErrorCode);
  53. if(nErrorCode < 0) return;
  54. sysf_trace("***** cf_TRMRC03004 *****");
  55. //sysf_trace(ds_grd_outpat.saveXML());
  56. }
  57. function cf_TRMRC03005(sSvcId, nErrorCode, sErrorMsg) {
  58. arErrorCode.push(sSvcId, nErrorCode);
  59. if(nErrorCode < 0) return;
  60. sysf_trace("***** cf_TRMRC03005 *****");
  61. //sysf_trace(ds_grd_outpat.saveXML());
  62. }
  63. function cf_TRMRC03010(sSvcId, nErrorCode, sErrorMsg) {
  64. arErrorCode.push(sSvcId, nErrorCode);
  65. if(nErrorCode < 0) return;
  66. sysf_trace("***** cf_TRMRC03010 *****");
  67. var oDs = this.objects["ds_main_appinfo_copyinfo"];
  68. dsf_setDefaultVal(oDs, "all");
  69. for( var i=0; i<oDs.rowcount; i++){
  70. oDs.setColumn(i, "issgoaletc", oDs.getColumn(i, "issgoalnm"));
  71. oDs.setColumn(i, "issgoaletccd", oDs.getColumn(i, "issgoalcd"));
  72. }
  73. ds_main_appinfo_copyinfo.applyChange();
  74. }
  75. function cf_TRMRC03003(sSvcId, nErrorCode, sErrorMsg) {
  76. arErrorCode.push(sSvcId, nErrorCode);
  77. if(nErrorCode < 0) return;
  78. sysf_trace("***** cf_TRMRC03003 *****");
  79. ds_grd_apphist.rowposition = -1;
  80. ds_grd_apphist.enableevent = true;
  81. }
  82. function cf_TRMRC03016(sSvcId, nErrorCode, sErrorMsg) {
  83. arErrorCode.push(sSvcId, nErrorCode);
  84. if(nErrorCode < 0) return;
  85. sysf_trace("***** cf_TRMRC03016 *****");
  86. var oDs = this.objects["ds_tmpinicert_iniinfo"];
  87. //xp code add : col id change!!!execprcpuniqno
  88. if( !utlf_isNull(oDs.getColumnInfo("execprcpuniqno")))
  89. oDs.updateColID("execprcpuniqno", "cmc_orderseqno");
  90. dsf_setDefaultVal(oDs, "all");
  91. }
  92. function cf_TRMRC03021(sSvcId, nErrorCode, sErrorMsg) {
  93. arErrorCode.push(sSvcId, nErrorCode);
  94. if(nErrorCode < 0) return;
  95. sysf_trace("***** cf_TRMRC03021 *****");
  96. }
  97. function cf_TRMRI03004(sSvcId, nErrorCode, sErrorMsg) {
  98. arErrorCode.push(sSvcId, nErrorCode);
  99. if(nErrorCode < 0) return;
  100. sysf_trace("***** cf_TRMRI03004 *****");
  101. var oDs = this.objects["ds_tmpinicert_iniinfo"];
  102. //xp code add : col id change!!!execprcpuniqno
  103. if( !utlf_isNull(oDs.getColumnInfo("execprcpuniqno")))
  104. oDs.updateColID("execprcpuniqno", "cmc_orderseqno");
  105. dsf_setDefaultVal(oDs, "all");
  106. }
  107. function cf_TRMRC03012(sSvcId, nErrorCode, sErrorMsg) {
  108. arErrorCode.push(sSvcId, nErrorCode);
  109. if(nErrorCode < 0) return;
  110. sysf_trace("***** cf_TRMRC03012 *****");
  111. }
  112. function cf_TRMRC03023(sSvcId, nErrorCode, sErrorMsg) {
  113. arErrorCode.push(sSvcId, nErrorCode);
  114. if(nErrorCode < 0) return;
  115. sysf_trace("***** cf_TRMRC03023 *****");
  116. // status_rcpt --> m
  117. // oldprcptimes 는 orgprcptimes로 대체
  118. dsf_setDefaultVal(ds_grd_rcptlist, "prcpno:0,prcphistno:0,cretno:0");
  119. for( var i=0; i<ds_grd_rcptlist.rowcount; i++)
  120. ds_grd_rcptlist.setColumn(i, "oldprcptims", ds_grd_rcptlist.getColumn(i, "prcptims"));
  121. ds_grd_rcptlist.applyChange();
  122. }
  123. function cf_TRMRC03017(sSvcId, nErrorCode, sErrorMsg) {
  124. arErrorCode.push(sSvcId, nErrorCode);
  125. if(nErrorCode < 0) return;
  126. sysf_trace("***** cf_TRMRC03017 *****");
  127. var oDs = this.objects["ds_grd_outapplist"];
  128. //xp code add : col id change!!!execprcpuniqno
  129. if( !utlf_isNull(oDs.getColumnInfo("orddeptdcd")))
  130. oDs.updateColID("orddeptdcd", "orddeptcd");
  131. dsf_setDefaultVal(oDs, "all");
  132. dsf_setDefaultVal(oDs, "appseq:0,medirecno:0");
  133. }
  134. function cf_TRMRC03022(sSvcId, nErrorCode, sErrorMsg) {
  135. arErrorCode.push(sSvcId, nErrorCode);
  136. if(nErrorCode < 0) return;
  137. sysf_trace("***** cf_TRMRC03022 *****");
  138. }
  139. function cf_TRMRC03011(sSvcId, nErrorCode, sErrorMsg) {
  140. arErrorCode.push(sSvcId, nErrorCode);
  141. if(nErrorCode < 0) return;
  142. sysf_trace("***** cf_TRMRC03011 *****");
  143. }
  144. function cf_TRMRC03029(sSvcId, nErrorCode, sErrorMsg) {
  145. arErrorCode.push(sSvcId, nErrorCode);
  146. if(nErrorCode < 0) return;
  147. sysf_trace("***** cf_TRMRC03029 *****");
  148. var oDs = this.objects["ds_tmpinicert_iniinfo"];
  149. //xp code add : col id change!!!execprcpuniqno
  150. if( !utlf_isNull(oDs.getColumnInfo("execprcpuniqno")))
  151. oDs.updateColID("execprcpuniqno", "cmc_orderseqno");
  152. dsf_setDefaultVal(oDs, "all");
  153. }
  154. function cf_TRMRC03027(sSvcId, nErrorCode, sErrorMsg) {
  155. arErrorCode.push(sSvcId, nErrorCode);
  156. if(nErrorCode < 0) return;
  157. sysf_trace("***** cf_TRMRC03027 *****");
  158. }
  159. function cf_TXMRC01310(sSvcId, nErrorCode, sErrorMsg) {
  160. arErrorCode.push(sSvcId, nErrorCode);
  161. if(nErrorCode < 0) return;
  162. sysf_trace("***** cf_TXMRC01310 *****");
  163. }
  164. function cf_TXMRC03005(sSvcId, nErrorCode, sErrorMsg) {
  165. arErrorCode.push(sSvcId, nErrorCode);
  166. if(nErrorCode < 0) return;
  167. sysf_trace("***** cf_TXMRC03005 *****");
  168. }
  169. function cf_TRMRC03024(sSvcId, nErrorCode, sErrorMsg) {
  170. arErrorCode.push(sSvcId, nErrorCode);
  171. if(nErrorCode < 0) return;
  172. sysf_trace("***** cf_TRMRC03024 *****");
  173. }
  174. function cf_TRMMO02705(sSvcId, nErrorCode, sErrorMsg) {
  175. arErrorCode.push(sSvcId, nErrorCode);
  176. if(nErrorCode < 0) return;
  177. sysf_trace("***** cf_TRMMO02705 *****");
  178. }
  179. function cf_TRMRC03007(sSvcId, nErrorCode, sErrorMsg) {
  180. arErrorCode.push(sSvcId, nErrorCode);
  181. if(nErrorCode < 0) return;
  182. sysf_trace("***** cf_TRMRC03007 *****");
  183. }
  184. function cf_TRMRC03008(sSvcId, nErrorCode, sErrorMsg) {
  185. arErrorCode.push(sSvcId, nErrorCode);
  186. if(nErrorCode < 0) return;
  187. sysf_trace("***** cf_TRMRC03008 *****");
  188. sysf_trace(ds_temp_issinfo_copyinfo.saveXML());
  189. sysf_trace(ds_temp_issinfo_emrapplist.saveXML());
  190. sysf_trace(ds_temp_issinfo_rcptlist.saveXML());
  191. }
  192. function cf_TRMMR00001(sSvcId, nErrorCode, sErrorMsg) {
  193. arErrorCode.push(sSvcId, nErrorCode);
  194. if(nErrorCode < 0) return;
  195. sysf_trace("***** cf_TRMMR00001 *****");
  196. }
  197. function cf_TXMRC03006(sSvcId, nErrorCode, sErrorMsg) {
  198. arErrorCode.push(sSvcId, nErrorCode);
  199. if(nErrorCode < 0) return;
  200. sysf_trace("***** cf_TXMRC03006 *****");
  201. }
  202. function cf_TRMRI00407(sSvcId, nErrorCode, sErrorMsg) {
  203. arErrorCode.push(sSvcId, nErrorCode);
  204. if(nErrorCode < 0) return;
  205. sysf_trace("***** cf_TRMRI00407 *****");
  206. }
  207. function cf_(sSvcId, nErrorCode, sErrorMsg) {
  208. arErrorCode.push(sSvcId, nErrorCode);
  209. if(nErrorCode < 0) return;
  210. sysf_trace("***** cf_ *****");
  211. }
  212. //=======================================================================================
  213. // Function
  214. //---------------------------------------------------------------------------------------
  215. /****************************************************************************************
  216. * Argument : 01.flag : true/false
  217. * : 02. :
  218. * Description : ds_main_otherinfo event on/off
  219. ****************************************************************************************/
  220. function fSet_enableevent(flag){
  221. group1.chk_testinfo1.enableevent = flag;
  222. group1.chk_testinfo.enableevent = flag;
  223. group1.chk_testinfo_bak.enableevent = flag;
  224. chk_anoinfo.enableevent = flag;
  225. }
  226. /****************************************************************************************
  227. * Argument : 01. :
  228. * : 02. :
  229. * Description : ds_main_emrinfo_emrlist default setting
  230. ****************************************************************************************/
  231. function lf_fMakeColumn_main_emrinfo(){
  232. var oDsEmrlist = this.objects["ds_main_emrinfo_emrlist"];
  233. if( oDsEmrlist.getColumnInfo("chrtflag") == null || oDsEmrlist.getColumnInfo("orddeptcd") == null ||
  234. oDsEmrlist.getColumnInfo("atdoctid") == null || oDsEmrlist.getColumnInfo("formcd") == null ||
  235. oDsEmrlist.getColumnInfo("orddd") == null || oDsEmrlist.getColumnInfo("cretno") == null ||
  236. oDsEmrlist.getColumnInfo("pid") == null || oDsEmrlist.getColumnInfo("ioflag") == null ||
  237. oDsEmrlist.getColumnInfo("testflag") == null || oDsEmrlist.getColumnInfo("reckeyno") == null ||
  238. oDsEmrlist.getColumnInfo("formnm") == null || oDsEmrlist.getColumnInfo("supitemindxseq") == null ||
  239. oDsEmrlist.getColumnInfo("midindxseq") == null || oDsEmrlist.getColumnInfo("sortno") == null ||
  240. oDsEmrlist.getColumnInfo("status") == null ){
  241. oDsEmrlist.addColumn("chrtflag", "string"); oDsEmrlist.addColumn("orddeptcd", "string");
  242. oDsEmrlist.addColumn("atdoctid", "string"); oDsEmrlist.addColumn("formcd", "string");
  243. oDsEmrlist.addColumn("orddd", "string"); oDsEmrlist.addColumn("cretno", "string");
  244. oDsEmrlist.addColumn("pid", "string"); oDsEmrlist.addColumn("ioflag", "string");
  245. oDsEmrlist.addColumn("testflag", "string"); oDsEmrlist.addColumn("reckeyno", "BIGDECIMAL");
  246. oDsEmrlist.addColumn("formnm", "string"); oDsEmrlist.addColumn("supitemindxseq", "string");
  247. oDsEmrlist.addColumn("midindxseq", "BIGDECIMAL"); oDsEmrlist.addColumn("sortno", "string");
  248. oDsEmrlist.addColumn("status", "string");
  249. }
  250. }
  251. var PRIN_COPY = ""; // 출력매수
  252. var PRIN_QUNT = ""; // 부수
  253. var SAVE_COPY = "1";
  254. var RESAVE_COPY = "1"; // 재신청
  255. var SAVE_ORDDD = "";
  256. var OUTCOPY_FLAG = "";
  257. var INCOPY_FLAG = "";
  258. var issnoYN = "";
  259. var PRCP_REISS = "";
  260. var srchcnt = 0;
  261. var srchorgcnt = 0;
  262. var g_DefCalcscorcd = ""; // 기본 수가 코드
  263. var g_DefCalcscorcdnm = ""; // 기본 수가 설명
  264. var g_AddCalcscorcd = ""; // 추가 수가 코드
  265. var g_AddCalcscorcdnm = ""; // 추가 수가 설명
  266. var g_DefCnt = ""; // 기본 발행 매수
  267. var g_AddCnt = ""; // 추가 발행 매수
  268. var g_FreeCnt = ""; // 추가 발행 매수
  269. var g_inputbox = "";
  270. var g_addstatus = "";
  271. var g_FreeCalcscorcd = ""; // 하드코드 테이블에 무료수가가 등록되어 있는 경우는 사용하는걸로 간주함.(등록된 무료수가가 없을 경우는 사용하지 않는 걸로 간주함.)
  272. var g_FreeCalcscornm = ""; // 무료 수가 설명
  273. var g_GrdTotalCnt = 0;
  274. //2012/03/13 Start
  275. var before_delivefact="";
  276. var after_delivefact="";
  277. //2012/03/13 End
  278. //2013/01/14 Start 총 출력장수
  279. var totprntcnt=0;
  280. var printcount=0;
  281. //2013/01/14 End
  282. var splittxt = "";
  283. var OcrImgUseFlag = "";
  284. /****************************************************************************************
  285. * Function : dsf_createDs
  286. * Description : 공통코드를 가져온다.
  287. * Argument : 01.sKey : 코드아이디
  288. * : 02.sValue : 코드명
  289. * return type : String - dataset name
  290. * Creator : 임준호
  291. ****************************************************************************************/
  292. /**
  293. * @desc : 사본신청/발급 화면 초기화
  294. * : 상단정보 처리 여부, 화면 팝업처리 여부 판단 및 화면 기본정보 설정
  295. * @
  296. * @param :
  297. * @return :
  298. * @---------------------------------------------------
  299. */
  300. function fInitialize(){
  301. btn_out.setSelectStatus(true);
  302. iviewerIemr.enableevent = false;
  303. iviewerIemr.enableredraw = false;
  304. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  305. lf_getHardCDList("N", 5501, null, ds_temp_hardcd);
  306. // KNUH_20101124_박성호_end
  307. // 2012/02/29 수가입력 버튼 제어
  308. lf_getHardCDList("N", 5567, null, ds_temp_hardcd2);
  309. //2012/02/29
  310. //2013/01/15 Start
  311. lf_getHardCDList("N", 5630, null, ds_temp_hardcd3);
  312. //2013/01/15 End
  313. //2014.01.16 Start 사본발행시 Split구분값 설정
  314. lf_getHardCDList("N", 5623, null, ds_temp_hardcd4);
  315. splittxt = ds_temp_hardcd4.getColumn(0, "hardcd");
  316. //2014.01.16 End
  317. //2014.04.29 Start 사본발행 이미지포함 기능사용여부
  318. lf_getHardCDList("N", 5636, null, ds_temp_hardcd5);
  319. OcrImgUseFlag = ds_temp_hardcd5.getColumn(0, "hardcd");
  320. if( OcrImgUseFlag == "Y"){
  321. chk_addimageyn.visible = true;
  322. }else{
  323. chk_addimageyn.visible = false;
  324. }
  325. //2014.04.29 End
  326. //2012/02/29 Start 칠곡에서 사본발행시 병동위임장 버튼 안보이게 함
  327. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  328. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  329. button4.visible=true;
  330. break;
  331. }
  332. }
  333. //2012/02/29 End
  334. //2013/01/15 Start 하드코드 번호 5630번에 등록된 유저라면 신청내역 건수가 보이도록 수정
  335. for(var i=0; i<ds_temp_hardcd3.rowcount; i++){
  336. if(ds_temp_hardcd3.getColumn(i, "hardcd")==sysf_getUserInfo("userid")){
  337. caption18.visible=true;
  338. output1.visible=true;
  339. break;
  340. }
  341. }
  342. ds_main.setColumn(0, "delivefactcnt", "");
  343. //2013/01/15 End
  344. //20140820 이윤주수정
  345. // jw.choe 같은 경로에 다른 코드 조회, 결과는 최종 코드만...
  346. //lf_getHardCDList("N", 5976, null, ds_temp_hardcd6); //최초작성일자 보이는 기록지
  347. lf_getHardCDList("N", 5977, null, ds_temp_hardcd6); //헤더정보를 기록시점의 icdr를 읽어서 표시
  348. var paminfo = sysf_getGlobalVariable("paminfo");
  349. if(!utlf_isNull(paminfo)){
  350. ds_main_paminfo.clearData();
  351. dsf_setCSVToDs("ds_main_paminfo", paminfo);
  352. var ioflag = ds_main_paminfo.getColumn(0, "ioflag");
  353. if(!utlf_isNull(opener.frmf_getParameter("SMMRC03000_pid"))) { // 통합기록조회
  354. if(opener.frmf_getParameter("SMMRC03000_pid") != ds_main_paminfo.getColumn(0, "pid")) {
  355. sysf_messageBox("사본신청은 진료중인 환자에 대해서만 신청이 가능합니다.\n등록번호를 상단 환자등록번호와 일치시켜서","C003");
  356. return;
  357. }
  358. }
  359. ds_main_cond.setColumn(0, "pid", ds_main_paminfo.getColumn(0, "pid"));
  360. ds_main_cond.setColumn(0, "hngnm", ds_main_paminfo.getColumn(0, "hngnm"));
  361. ds_main_cond.setColumn(0, "ioflag", ds_main_paminfo.getColumn(0, "ioflag"));
  362. if ((ioflag == "I") || (ioflag == "E") || (ioflag == "D"))
  363. {
  364. ds_main_cond.setColumn(0, "orddd", ds_main_paminfo.getColumn(0, "indd"));
  365. ds_main_cond.setColumn(0, "orddeptnm", ds_main_paminfo.getColumn(0, "orddeptnm"));
  366. ds_main_cond.setColumn(0, "orddeptcd", ds_main_paminfo.getColumn(0, "orddeptcd"));
  367. ds_main_cond.setColumn(0, "roomcd", ds_main_paminfo.getColumn(0, "roomcd"));
  368. ds_main_cond.setColumn(0, "dschdd", ds_main_paminfo.getColumn(0, "dschdd"));
  369. //fClikInTab();
  370. var e = new ClickEventInfo;
  371. frmf_inputEnterKey("btn_in", "onclick", e);
  372. //btn_in.dispatch("onclick");
  373. }
  374. else
  375. {
  376. ds_main_cond.setColumn(0, "orddd", ds_main_paminfo.getColumn(0, "orddd"));
  377. var e = new ClickEventInfo;
  378. frmf_inputEnterKey("btn_out", "onclick", e);
  379. //btn_out.dispatch("onclick");
  380. //fClikOutTab();
  381. }
  382. ds_main_cond.setColumn(0, "cretno", ds_main_paminfo.getColumn(0, "cretno"));
  383. //ds_main_cond.setColumn(0, "ioflag", ds_main_paminfo.getColumn(0, "ordtype"));
  384. ds_main_cond.setColumn(0, "rrgstno1", ds_main_paminfo.getColumn(0, "rrgstno1"));
  385. ds_main_cond.setColumn(0, "rrgstno2" , "*******");
  386. sex = ds_main_paminfo.getColumn(0, "sex");
  387. age = ds_main_paminfo.getColumn(0, "age");
  388. ds_main_cond.setColumn(0, "sa", sex.concat("/").concat(age));
  389. ds_main_cond.setColumn(0, "age", age);
  390. }
  391. var userinfo = sysf_getUserInfo("dutplcecd");
  392. var userid = sysf_getUserId();
  393. var jobkindcd = sysf_getUserInfo("jobkindcd");
  394. lf_getHardCDList("N", 1200, null, ds_tmphdcd); //저장 후 창닫힘 여부
  395. userid = userid.getTrim();
  396. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  397. //if(userinfo == "3230000000"){ // 의료정보
  398. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  399. {
  400. // KNUH_20101124_박성호_end
  401. parent.position.height = "967";
  402. // right
  403. caption14.position2.top = "785";
  404. caption20.position2.top = "785";
  405. btn_cnfm.position2.top = "783";
  406. rdo_lang.position2.top = "783";
  407. btn_crtfct.position2.top = "783";
  408. //btn_crtfct.position.top = "783";
  409. textarea2.position2.top = "802";
  410. grd_rcptlist.position2.top = "802";
  411. button6.position2.top = "884";
  412. button7.position2.top = "884";
  413. button5.position2.top = "884";
  414. button8.position2.top = "884";
  415. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  416. btn_colorcalcscoryn.position2.top = "783";
  417. //mmbfGetHardCodeInfo("/root/send/reqdata","/root/hidden/inputbox", 1111); //의무기록 사본발행수가코드
  418. //g_inputbox = model.getValue("/root/hidden/inputbox/hardcd/hardcd");//의무기록 사본발행 수가코드
  419. g_inputbox = lf_getHardCDList("Y", 1111, 3, null);
  420. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  421. {
  422. // 부수 입력칸 추가..
  423. caption28.position2.top = "884";
  424. caption29.position2.top = "884";
  425. caption16.position2.top = "884";
  426. ipt_emrappcopies.position2.top = "884";
  427. button10.position2.top = "783";
  428. input1.position2.top = "884";
  429. caption11.position2.top = "882";
  430. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  431. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  432. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  433. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "prcptims"), "edittype", "none");
  434. ds_grd_rcptlist.applyChange();
  435. }else{ // 수가가 추가 수가코드로 이루어진 경우
  436. }
  437. // left
  438. swc_prof.position2.height = "363";//343
  439. swc_prof.out.grd_outpat.position2.height = "320";//330
  440. group1.position2.top = "680";
  441. caption24.position2.top = "785";
  442. caption18.position2.top = "785";
  443. output1.position2.top = "785";
  444. txt_delivefact.position2.top = "802";
  445. txt_delivefact.position2.height = "75";
  446. btn_reappinfo.position2.top = "884";
  447. button3.position2.top = "884";
  448. btn_update.position2.top = "884";
  449. btn_save.position2.top = "884";
  450. // 상세내역추가
  451. button12.position2.top = "778";
  452. // switch
  453. if(btn_in.getSelectStatus()) {
  454. group1.visible = false;
  455. swc_prof.position2.height = "450";
  456. swc_prof.in.grd_inapplist.position2.height = "200";
  457. swc_prof.in.caption10.position2.top = "197";
  458. //line7.position.top = "218px";
  459. //grd_emrapplist.position.top = "212px";
  460. //grd_emrapplist.attribute("height") = "140px";
  461. swc_prof.in.grd_inpat.position2.top = "212";
  462. swc_prof.in.grd_inpat.position2.height = "140";
  463. }
  464. if(btn_out.getSelectStatus()) {
  465. swc_prof.tabindex = 0;
  466. //model.toggle("out" );
  467. group1.visible = true;
  468. swc_prof.position2.height = "343";
  469. swc_prof.out.grd_outpat.position2.height = "310";
  470. group1.position2.top = "680";
  471. caption24.position2.top = "785";
  472. caption18.position2.top = "785";
  473. output1.position2.top = "785";
  474. txt_delivefact.position2.top = "802";
  475. txt_delivefact.position2.height = "75";
  476. btn_reappinfo.position2.top = "884";
  477. button3.position2.top = "884";
  478. btn_update.position2.top = "884";
  479. btn_save.position2.top = "884";
  480. }
  481. iviewerIemr.position2.height = "710";
  482. // jw.choe 임시
  483. var e = new SizeEventInfo;
  484. frmf_inputEnterKey("iviewerIemr", "onsize", e);
  485. cmb_emrorddeptcd.enable = true;
  486. cmb_orddrid.enable = true;
  487. fSetSugaCode();
  488. fSetData();
  489. }else{
  490. if(jobkindcd == "0330" || jobkindcd == "0332") { // 의사일 경우
  491. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", null, null, "ds_init_cmb_emrorddeptcd", false, null); //전체 진료과
  492. /*frmf_addComboItem("cmb_emrorddeptcd","전체","-", "above");*/
  493. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", sysf_getUserInfo("dutplcecd")); // 신청과
  494. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  495. ds_main_appinfo_copyinfo.setColumn(0, "appdrid",userid); //신청의
  496. iviewerIemr.position2.height = "720";
  497. // jw.choe 임시
  498. var e = new SizeEventInfo;
  499. frmf_inputEnterKey("iviewerIemr", "onsize", e);
  500. cmb_emrorddeptcd.enable = false;
  501. cmb_orddrid.enable = false;
  502. // 접근제한 환자인지 확인
  503. ds_send_cond.clearData();
  504. ds_send_cond.addRow();
  505. ds_send_cond.setColumn(0, "pid", ds_main_paminfo.getColumn(0, "pid"));
  506. var objColInfo = new Array();
  507. objColInfo.push({col: "pid", type:"string", size:256});
  508. objColInfo.push({col: "prntlim", type:"string", size:256});
  509. objColInfo.push({col: "limrem", type:"string", size:256});
  510. dsf_createDs("ds_tmppatinfo_accessiblepatinfo", objColInfo, true);
  511. var oParam = {};
  512. oParam.id = "TRMRC03103";
  513. oParam.service = "chrtmngtapp.CopyIssMngt";
  514. oParam.method = "reqGetAccessiblePatInfo";
  515. oParam.inds = "req=ds_send_cond";
  516. oParam.outds = "ds_tmppatinfo_accessiblepatinfo=accessiblepatinfo";
  517. oParam.async = false;
  518. oParam.callback = "cf_TRMRC03103";
  519. tranf_submit(oParam);
  520. if(ds_tmppatinfo_accessiblepatinfo.getColumn(0, "prntlim") == "Y") {
  521. if(!utlf_isNull(ds_tmppatinfo_accessiblepatinfo.getColumn(0, "limrem"))) {
  522. var limrem = ds_tmppatinfo_accessiblepatinfo.getColumn(0, "limrem");
  523. var pid = ds_main_cond.getColumn(0, "pid");
  524. var name = ds_main_cond.getColumn(0, "hngnm");
  525. sysf_messageBox(" " + pid + "(" + name + ") : " + limrem +" " + "\n 유의환자", "I009");
  526. }
  527. }
  528. } else{ // 의사가 아닐경우
  529. //iviewerIemr.attribute("height") = "590px";
  530. }
  531. this.titletext = "사본발행신청";
  532. caption22.visible = true;
  533. caption6.visible = false;
  534. }
  535. iviewerIemr.enableevent = true;
  536. iviewerIemr.enableredraw = true;
  537. if (jobkindcd == "1140" || jobkindcd == "1110")
  538. {
  539. fSetData();
  540. fSetDisabled();
  541. }
  542. iviewerIemr.setupChart("ThumbView"); // 여러페이지 보기 default
  543. ipt_pid.setFocus();
  544. //model.removeNodeset("/root/temp/issinfo/emrlist");
  545. ds_grd_outapplist.clearData(); //model.removeNodeset("/root/temp/issinfo/emrlist");
  546. ds_grd_inapplist.clearData(); //model.removeNodeset("/root/main/inpathistlist/inpathistlist");
  547. ds_grd_emrapplist.clearData(); //model.removeNodeset("/root/main/issinfo/emrapplist");
  548. ds_grd_outpat.clearData(); //model.removeNodeset("/root/main/outpathistlist/outpathistlist");
  549. ds_grd_inpat.clearData(); //model.removeNodeset("/root/main/midissinfo/emrapplist");
  550. ds_grd_apphist.clearData(); //model.removeNodeset("/root/main/apphist/applist");
  551. ds_grd_rcptlist.clearData(); //model.removeNodeset("/root/main/rcptlist/rcptlist");
  552. appf_getCodeList([{dsNm: "ds_init_ioflaglist_P0001", cdGrpId: "P0001"}, {dsNm: "ds_init_issgoalcd_M0332", cdGrpId: "M0332"}, {dsNm: "ds_init_prcpstatcd_M0011", cdGrpId: "M0011"}], true);
  553. //zbcfGetCodeList(new Array("P0001","M0332", "M0011"),new Array("/root/init/ioflaglist","/root/init/issgoalcd", "/root/init/prcpstatcd"));
  554. lf_mmbfGetDeptCodeComboList(ds_init_orddept, "A", utlf_getCurrentDate()); //부서코드 콤보
  555. var fromdd = ((utlf_getCurrentDate()).toDate()).getAddDate(-1, "Y");
  556. //시작일자, 종료일자 설정
  557. ds_main_cond.setColumn(0, "fromdd", fromdd.getDateFormat());
  558. ds_main_cond.setColumn(0, "todd" , utlf_getCurrentDate());
  559. ds_main_out.setColumn(0, "fromdd" , fromdd.getDateFormat());
  560. ds_main_out.setColumn(0, "todd" , utlf_getCurrentDate());
  561. ds_main_in.setColumn(0, "fromdd" , fromdd.getDateFormat());
  562. ds_main_in.setColumn(0, "todd" , utlf_getCurrentDate());
  563. ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  564. grdf_initGrid(swc_prof.in.grd_inpat);
  565. grdf_initGrid(swc_prof.out.grd_outpat);
  566. // grd_inpat.fixedcellcheckbox(0, grd_emrapplist.colRef("chk"), false) = true;
  567. // grd_outpat.fixedcellcheckbox(0, grd_outpat.colRef("chk"), false) = true;
  568. if(!utlf_isNull(ipt_pid.text))
  569. {
  570. fReqGetBfCopyIssHistList(ipt_pid.text); // 사본발행내역
  571. }
  572. //iviewerIemr.refresh();
  573. if(jobkindcd == "0330" || jobkindcd == "0332") { // 의사일 경우
  574. fReqGetOutPatHistList(); // 외래진료내역
  575. fReqGetInPatHistList(); // 입원진료내역
  576. fReqGetPaperYN(); // 종이차트유무
  577. }
  578. if ((ioflag == "I") || (ioflag == "E") || (ioflag == "D"))
  579. {
  580. fClikInTab();
  581. }
  582. else
  583. {
  584. fClikOutTab();
  585. }
  586. ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  587. }
  588. /**
  589. * @desc : 세션값을 읽어 해당환자의 사본신청 이력 조회
  590. * @
  591. * @param :
  592. * @return :
  593. * @---------------------------------------------------
  594. */
  595. function fSetData()
  596. {
  597. sysf_trace("**** fSetData() *****");
  598. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", null, null, "ds_init_cmb_emrorddeptcd", false, null); //전체 진료과
  599. frmf_addComboItem("cmb_emrorddeptcd","전체","-", "above");
  600. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd","-"); // 신청과
  601. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");
  602. this.titletext = "사본신청/발급";
  603. caption22.visible = false;
  604. caption6.visible = true;
  605. if(!utlf_isNull(opener.frmf_getParameter("SMMRC03000_param_pid"))) {
  606. ds_main_cond.setColumn(0, "pid", opener.frmf_getParameter("SMMRC03000_param_pid"));
  607. //ds_main_cond.setColumn(0, "hngnm", opener.frmf_getParameter("SMMRC03000_param_hngnm"));
  608. //ds_main_cond.setColumn(0, "rrgstno1", opener.frmf_getParameter("SMMRC03000_param_rrgstno1"));
  609. //ds_main_cond.setColumn(0, "rrgstno2", opener.frmf_getParameter("SMMRC03000_param_rrgstno2"));
  610. ds_main_cond.setColumn(0, "copyseqno", opener.frmf_getParameter("SMMRC03000_param_copyseqno"));
  611. fReqGetComnPatOrdInfo(opener.frmf_getParameter("SMMRC03000_param_pid"));
  612. fReqGetPaperYN(); // 종이차트 유무여부
  613. if(opener.frmf_getParameter("SMMRC03000_param_prntlim") == "Y") {
  614. if(!utlf_isNull(ds_main_paper.getColumn(0, "limrem"))) {
  615. var limrem = ds_main_paper.getColumn(0, "limrem");
  616. var pid = ds_main_cond.getColumn(0, "pid");
  617. var name = ds_main_cond.getColumn(0, "hngnm");
  618. sysf_messageBox(" " + pid + "(" + name + ") : " + limrem +" " + "\n 유의환자", "I009");
  619. }
  620. }
  621. }
  622. frmf_clearParameter("SMMRC03000_param_pid");
  623. //frmf_clearParameter("SMMRC03000_param_hngnm");
  624. //frmf_clearParameter("SMMRC03000_param_rrgstno1");
  625. //frmf_clearParameter("SMMRC03000_param_rrgstno2");
  626. frmf_clearParameter("SMMRC03000_param_copyseqno");
  627. frmf_clearParameter("SMMRC03000_param_prntlim");
  628. }
  629. /**
  630. * @desc : 사본 신청/발급 관련된 실행 버튼 disable 설정
  631. * @
  632. * @param :
  633. * @return :
  634. * @---------------------------------------------------
  635. */
  636. function fSetDisabled()
  637. {
  638. button12.enable = false; //상세내역추가
  639. btn_reappinfo.enable = false; //재신청
  640. button3.enable = false; //초기화
  641. btn_update.enable = false; //신청내역수정
  642. btn_save.enable = false; //신청내역저장
  643. button6.enable = false; //메모저장
  644. button7.enable = false; //사본출력
  645. button5.enable = false; //처방이력
  646. button8.enable = false; //수가입력
  647. swc_prof.out.button9.enable = false; //기록조회
  648. }
  649. /**
  650. * @desc : 환자진료정보 조회 및 설정
  651. * @
  652. * @param : pid : 등록번호
  653. * @return :
  654. * @---------------------------------------------------
  655. */
  656. function fReqGetComnPatOrdInfo(pid){
  657. ds_send_reqdata.clearData();
  658. var nRow = ds_send_reqdata.addRow();
  659. ds_send_reqdata.setColumn(nRow, "pid" , pid);
  660. ds_send_reqdata.setColumn(nRow, "orddeptcd", "-");
  661. ds_send_reqdata.setColumn(nRow, "orddrid", "-");
  662. ds_send_reqdata.setColumn(nRow, "srchmode" , "F");
  663. dsf_setDefaultVal(ds_send_reqdata, "orddeptcd:-,orddrid:-");
  664. var oParam = {};
  665. oParam.id = "TRMMR05501";
  666. oParam.service = "medirecapp.ExtnMediRec";
  667. oParam.method = "reqGetPatHistList";
  668. oParam.inds = "req=ds_send_reqdata";
  669. oParam.outds = "ds_main_result_pathistlist=pathistlist";
  670. oParam.async = false;
  671. oParam.callback = "cf_TRMMR05501";
  672. tranf_submit(oParam);
  673. if(arErrorCode.pop("TRMMR05501") > -1 ){
  674. dsf_setDefaultVal(ds_main_result_pathistlist, "all");
  675. if(ds_main_result_pathistlist.rowcount > 0){
  676. var pid = ds_main_result_pathistlist.getColumn(0, "pid");
  677. var orddd = ds_main_result_pathistlist.getColumn(0, "orddd");
  678. var cretno = ds_main_result_pathistlist.getColumn(0, "cretno");
  679. var hngnm = ds_main_result_pathistlist.getColumn(0, "hngnm");
  680. var sex = ds_main_result_pathistlist.getColumn(0, "sex");
  681. var age = ds_main_result_pathistlist.getColumn(0, "age");
  682. var brthdd = ds_main_result_pathistlist.getColumn(0, "brthdd");
  683. var rrgstno1 = ds_main_result_pathistlist.getColumn(0, "rrgstno1");
  684. var rrgstno2 = ds_main_result_pathistlist.getColumn(0, "rrgstno2");
  685. var addr = ds_main_result_pathistlist.getColumn(0, "addr");
  686. var hometel = ds_main_result_pathistlist.getColumn(0, "hometel");
  687. var ioflag = ds_main_result_pathistlist.getColumn(0, "ordtype");
  688. var orddeptcd= ds_main_result_pathistlist.getColumn(0, "orddeptcd");
  689. var orddeptnm= ds_main_result_pathistlist.getColumn(0, "orddeptnm");
  690. }else{
  691. sysf_messageBox("환자 정보를 찾을 수", "I004");
  692. return;
  693. }
  694. ds_main_cond.setColumn(0, "pid" , pid);
  695. //ds_main_cond.setColumn(0, "orddd" , orddd);
  696. //ds_main_cond.setColumn(0, "cretno" , cretno);
  697. ds_main_cond.setColumn(0, "hngnm" , hngnm);
  698. ds_main_cond.setColumn(0, "rrgstno1" , rrgstno1);
  699. ds_main_cond.setColumn(0, "rrgstno2" , rrgstno2.substring(0, 1) + "******");
  700. ds_main_cond.setColumn(0, "age" , age);
  701. ds_main_cond.setColumn(0, "sa" , sex.concat("/").concat(age));
  702. if(age < parseInt(14)) {
  703. ds_main_appinfo_copyinfo.setColumn(0, "appmanflag", "2");
  704. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "Y");
  705. }
  706. fSetRcptpossynmsg(ds_main_cond.getColumn(0, "pid")); //무인수납 가능 여부 조회, 2010.03.08 주희경
  707. }
  708. }
  709. /**
  710. * @desc 이전사본발행 내역조회
  711. * @param pid : 등록번호
  712. */
  713. function fReqGetBfCopyIssHistList(pid){
  714. ds_grd_emrapplist.clearData(); //model.removeNodeset("/root/main/issinfo/emrapplist");
  715. ds_tmpinicert2_iniinfo.clearData(); //model.removeNodeset("/root/tmpinicert2/iniinfo");
  716. ds_send_reqdata.clearData();
  717. ds_send_reqdata.addRow();
  718. ds_send_reqdata.setColumn(0, "pid", pid);
  719. ds_grd_apphist.enableevent = false;
  720. var oParam = {};
  721. oParam.id = "TRMRC03003";
  722. oParam.service = "chrtmngtapp.CopyIssMngt";
  723. oParam.method = "reqGetCopyIssHist";
  724. oParam.inds = "req=ds_send_reqdata";
  725. oParam.outds = "ds_grd_apphist=applist";
  726. oParam.async = false;
  727. oParam.callback = "cf_TRMRC03003";
  728. tranf_submit(oParam);
  729. }
  730. /**
  731. * @desc : EMR부서콤보 조회
  732. * @
  733. * @param : ref - reference path
  734. * rsltref - result reference path
  735. * orddeptflag- 진료과구분
  736. * @return :
  737. * @author : 오지훈
  738. * @---------------------------------------------------
  739. */
  740. /*
  741. function mmbfGetDeptCodeComboList(ref, rsltref, orddeptflag, stnddd){
  742. var mmb_rsltref = "/root/hidden/mmb/orddept";
  743. model.removeNode(mmb_rsltref);
  744. model.makeNode(mmb_rsltref);
  745. model.removeNode(ref);
  746. model.makeValue(ref + "/orddeptflag", orddeptflag);
  747. if(stnddd != ""){
  748. model.makeValue(ref + "/stnddd", stnddd);
  749. }
  750. if(submit("TRMMB04101", "false", ref, mmb_rsltref)==true){
  751. model.copyNode(rsltref, mmb_rsltref);
  752. model.removeNode(mmb_rsltref);
  753. }
  754. model.refresh();
  755. }
  756. */
  757. /**
  758. * @desc : 하드코드 조회
  759. * @
  760. * @param : ref - reference path
  761. * rsltref - result reference path
  762. * hardcd - 하드코드
  763. * @return :
  764. * @author : 오지훈
  765. * @---------------------------------------------------
  766. */
  767. /*
  768. function mmbfGetHardCodeInfo(ref, rsltref, hardcd){
  769. var mmb_rsltref = "/root/hidden/mmb/hardcd";
  770. model.removeNode(mmb_rsltref);
  771. model.makeNode(mmb_rsltref);
  772. model.removeNode(ref);
  773. model.makeValue(ref + "/hardcd", hardcd);
  774. if(submit("TRMMB04103", "false", ref, mmb_rsltref)==true){
  775. model.copyNode(rsltref, mmb_rsltref);
  776. model.removeNode(mmb_rsltref);
  777. }
  778. model.refresh();
  779. }
  780. */
  781. /**
  782. * @desc : 하드코드 조회 (하드코드, 하드코드명)
  783. * @
  784. * @param : ref - reference path
  785. * rsltref - result reference path
  786. * hardcd - 하드코드
  787. * @return :
  788. * @author : 오지훈
  789. * @---------------------------------------------------
  790. */
  791. /*
  792. function mmbfGetHardCodeInfoNm(ref, rsltref, hardcd){
  793. var mmb_rsltref = "/root/hidden/mmb/hardcd";
  794. model.removeNode(mmb_rsltref);
  795. model.makeNode(mmb_rsltref);
  796. model.removeNode(ref);
  797. model.makeValue(ref + "/hardcd", hardcd);
  798. if(submit("TRMMB04105", "false", ref, mmb_rsltref)==true){
  799. model.copyNode(rsltref, mmb_rsltref);
  800. model.removeNode(mmb_rsltref);
  801. }
  802. model.refresh();
  803. }
  804. */
  805. /**
  806. * @desc : 외래환자 이력조회
  807. *
  808. * @param :
  809. * @return:
  810. */
  811. function fReqGetOutPatHistList(param){
  812. sysf_trace("***** fReqGetOutPatHistList("+param+") *****");
  813. ds_send_reqdata.clearData();
  814. var nRow = ds_send_reqdata.addRow();
  815. if(param == "Y") {
  816. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_out.getColumn(0, "fromdd"));
  817. ds_send_reqdata.setColumn(nRow, "todd", ds_main_out.getColumn(0, "todd"));
  818. if(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd") != "-")
  819. ds_send_reqdata.setColumn(nRow, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  820. }
  821. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  822. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  823. if(param == "T") {
  824. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_out.getColumn(0, "fromdd"));
  825. ds_send_reqdata.setColumn(nRow, "todd", ds_main_out.getColumn(0, "todd"));
  826. ds_send_reqdata.setColumn(nRow, "anoinfo", "Y");
  827. }
  828. var userinfo = sysf_getUserInfo("dutplcecd");
  829. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  830. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  831. {
  832. // KNUH_20101124_박성호_end
  833. ds_send_reqdata.setColumn(nRow, "orddeptcd", userinfo);
  834. }
  835. var oParam = {};
  836. oParam.id = "TRMRC03004";
  837. oParam.service = "chrtmngtapp.CopyIssMngt";
  838. oParam.method = "reqGetOutPatHistList";
  839. oParam.inds = "req=ds_send_reqdata";
  840. oParam.outds = "ds_grd_outpat=outpathistlist";
  841. oParam.async = false;
  842. oParam.callback = "cf_TRMRC03004";
  843. tranf_submit(oParam);
  844. }
  845. /**
  846. * @desc : 입원환자 이력조회
  847. *
  848. * @param :
  849. * @return:
  850. */
  851. function fReqGetInPatHistList(param){
  852. ds_grd_inpat.clearData(); //model.removeNodeset("/root/main/midissinfo/emrapplist");
  853. ds_send_reqdata.clearData();
  854. var nRow = ds_send_reqdata.addRow();
  855. if(param == "Y") {
  856. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_in.getColumn(0, "fromdd"));
  857. ds_send_reqdata.setColumn(nRow, "todd", ds_main_in.getColumn(0, "todd"));
  858. if(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd") != "-")
  859. ds_send_reqdata.setColumn(nRow, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  860. }
  861. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  862. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  863. if(param == "T") {
  864. ds_send_reqdata.setColumn(nRow, "anoinfo", "Y");
  865. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_in.getColumn(0, "fromdd"));
  866. ds_send_reqdata.setColumn(nRow, "todd", ds_main_in.getColumn(0, "todd"));
  867. }
  868. var userinfo = sysf_getUserInfo("dutplcecd");
  869. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  870. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  871. {
  872. // KNUH_20101124_박성호_end
  873. ds_send_reqdata.setColumn(nRow, "orddeptcd", userinfo);
  874. }
  875. var oParam = {};
  876. oParam.id = "TRMRC03005";
  877. oParam.service = "chrtmngtapp.CopyIssMngt";
  878. oParam.method = "reqGetInPatHistList";
  879. oParam.inds = "req=ds_send_reqdata";
  880. oParam.outds = "ds_grd_inapplist=inpathistlist";
  881. oParam.async = false;
  882. oParam.callback = "cf_TRMRC03005";
  883. tranf_submit(oParam);
  884. if(arErrorCode.pop("TRMRC03005") > -1){
  885. swc_prof.in.grd_inapplist.setCellProperty("body", 0, "edittype", "none");
  886. // for(var i = 0; i < ds_grd_inapplist.rowcount; i++) {
  887. // //var chk = grd_inapplist.valueMatrix(i, grd_inapplist.colRef("chk"));
  888. // grd_inapplist.isReadOnly(i, 0) = true;
  889. // }
  890. }
  891. }
  892. function fReqGetPaperYN(param){
  893. sysf_trace("***** fReqGetPaperYN("+param+") *****");
  894. ds_send_reqdata.clearData();
  895. var nRow = ds_send_reqdata.addRow();
  896. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  897. if( !utlf_isNull(ds_main_cond.getColumn(0, "orddeptcd")) )
  898. ds_send_reqdata.setColumn(nRow, "orddeptcd", ds_main_cond.getColumn(0, "orddeptcd"));
  899. //종이차트 유무 체크 용 신청과 코드 전달 노드 셋팅
  900. if( !utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")) )
  901. ds_send_reqdata.setColumn(nRow, "orddeptcd2", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  902. var userinfo = sysf_getUserInfo("dutplcecd");
  903. var age = ds_main_cond.getColumn(0, "age");
  904. // 사본발행 증명서 병원별 주소 가져오기
  905. var hardcdno = "1006"; // 사본발행 병원별 주소
  906. ds_send_reqdata.setColumn(nRow, "hardcdno", hardcdno);
  907. var oParam = {};
  908. oParam.id = "TRMRF03104";
  909. oParam.service = "formmngtapp.SetIndxMngt";
  910. oParam.method = "reqGetEmrInfoTeamCd";
  911. oParam.inds = "req=ds_send_reqdata";
  912. oParam.outds = "ds_main_hardcdlist=hardcdlist";
  913. oParam.async = false;
  914. oParam.callback = "cf_TRMRF03104";
  915. tranf_submit(oParam);
  916. //var hardcdlistNode = findNodeset(model, "/root/main/hardcdlist");
  917. var HospAddr = "";
  918. for(var idx = 0; idx < ds_main_hardcdlist.rowcount; idx++)
  919. {
  920. if(ds_main_hardcdlist.getColumn(idx, "trgtcd") == "ADDR")
  921. HospAddr = ds_main_hardcdlist.getColumn(idx, "trgtcdnm");
  922. }
  923. var oParam = {};
  924. oParam.id = "TRMRC03019";
  925. oParam.service = "chrtmngtapp.CopyIssMngt";
  926. oParam.method = "reqGetPaperChrtYN";
  927. oParam.inds = "req=ds_send_reqdata";
  928. oParam.outds = "ds_main_paper=paper";
  929. oParam.async = false;
  930. oParam.callback = "cf_TRMRC03019";
  931. tranf_submit(oParam);
  932. if(arErrorCode.pop("TRMRC03019") > -1){
  933. //default null
  934. dsf_setDefaultVal(ds_main_paper, "all");
  935. ds_main_paper.setColumn(0, "addr", HospAddr);
  936. var paperyn = ds_main_paper.getColumn(0, "paperyn");
  937. if(paperyn == "무") {
  938. swc_prof.out.rdo_outchrtflag.enable = false;
  939. } else if(paperyn == "유") {
  940. swc_prof.out.rdo_outchrtflag.enable = true;
  941. }
  942. if( param != "HIST") {
  943. var deathyn = ds_main_paper.getColumn(0, "deathyn");
  944. if(deathyn == "Y") {
  945. rdo_appmanflag.value = "";
  946. } else if(deathyn == "N") {
  947. if(age < parseInt(14)) {
  948. rdo_appmanflag.value = "2";
  949. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "Y");
  950. } else {
  951. rdo_appmanflag.value = "1";
  952. }
  953. }
  954. }
  955. var userinfo = sysf_getUserInfo("dutplcecd");
  956. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  957. //if(userinfo == "3230000000"){
  958. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  959. {
  960. // KNUH_20101124_박성호_end
  961. ds_main_cond.setColumn(0, "roomcd", ds_main_paper.getColumn(0, "roomcd"));
  962. ds_main_cond.setColumn(0, "dschdd", ds_main_paper.getColumn(0, "dschdd"));
  963. ds_main_cond.setColumn(0, "orddeptnm", ds_main_paper.getColumn(0, "deptnm"));
  964. ds_main_cond.setColumn(0, "wardhospnm", ds_main_paper.getColumn(0, "wardhospnm"));
  965. }
  966. }
  967. }
  968. /**
  969. * @group :
  970. * @ver :
  971. * @by : 이창록 2008-08-29
  972. * @---------------------------------------------------
  973. * @type : function
  974. * @access : public
  975. * @desc : 이전사본발행 내역 조회
  976. * @param :
  977. * @return :
  978. * @---------------------------------------------------
  979. */
  980. /*
  981. function fHistSearch()
  982. {
  983. model.makeValue("/root/send/cond/pid",model.getValue("/root/temp/appinfo/patinfo/pid"));
  984. if(submit("TRMRC01201")){
  985. }
  986. model.removeNodeset("/root/send/cond");
  987. }
  988. */
  989. /**
  990. * @group :
  991. * @ver :
  992. * @by : 이창록 2008-08-29
  993. * @---------------------------------------------------
  994. * @type : function
  995. * @access : public
  996. * @desc : 환자 회차별 정보 조회(입원)
  997. * @param :
  998. * @return :
  999. * @---------------------------------------------------
  1000. */
  1001. /*
  1002. function fCopyPatInfoList()
  1003. {
  1004. model.makeValue("/root/send/patinfo/pid",model.getValue("/root/temp/appinfo/patinfo/pid"));
  1005. if(submit("TRMRC03202")){
  1006. }
  1007. model.removeNodeset("/root/send/patinfo");
  1008. }
  1009. */
  1010. /**
  1011. * @group :
  1012. * @ver :
  1013. * @by : 이창록 2008-08-29
  1014. * @---------------------------------------------------
  1015. * @type : function
  1016. * @access : public
  1017. * @desc : 사본발행 목적 팝업 호출(사본발행신청 화면과 동일)
  1018. * @param :
  1019. * @return :
  1020. * @---------------------------------------------------
  1021. */
  1022. function fIssGoalPopUp(){
  1023. sysf_trace("***** fIssGoalPopUp() *****");
  1024. var sIssUsge = "";
  1025. var sIssUsgeCnt = 0;
  1026. var sIssGoalEtcYN = false;
  1027. var sIssGoalEtc = "";
  1028. var sIssGoalEtcCd = "";
  1029. var sIssGoalCd = "";
  1030. var sStndRow = 0;
  1031. frmf_setParameter("SPMMR02200_multichkyn", "Y");
  1032. frmf_modal("SPMMR02200", "SPMMR02200", null, null, null, null, null, null, null, null, null, null, "M");
  1033. //ds_main_issusge dataset return
  1034. //sIssUsge = model.getValue("/root/main/issusge");
  1035. sIssUsgeCnt = ds_main_issusge.rowcount;
  1036. if(sIssUsgeCnt > 0){
  1037. for(var i=0; i<sIssUsgeCnt; i++){
  1038. if(i != sIssUsgeCnt){
  1039. if(!utlf_isNull(sIssGoalEtc)) sIssGoalEtc += ",";
  1040. if(!utlf_isNull(sIssGoalEtcCd)) sIssGoalEtcCd += ",";
  1041. }
  1042. sIssGoalEtc += ds_main_issusge.getColumn(i, 1);
  1043. sIssGoalCd = ds_main_issusge.getColumn(i, 0);
  1044. if(sIssGoalCd == "99"){
  1045. sIssGoalEtcYN = true;
  1046. }
  1047. sIssGoalEtcCd += sIssGoalCd;
  1048. }
  1049. if(sIssGoalEtcYN == true){
  1050. ipt_issgoaletc.enable = true;
  1051. }else{
  1052. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd","");
  1053. ipt_issgoaletc.enable = false;
  1054. }
  1055. if(sIssGoalEtcCd.indexOf("06") > -1){
  1056. sysf_messageBox("직할병원용 : 주치의가 8개 직할 병원으로 이동하여 환자도 함께 전원 가기를 희망하는 경우 선택","E008");
  1057. }
  1058. ds_main_appinfo_copyinfo.setColumn(0, "issgoaletc", sIssGoalEtc);
  1059. ds_main_appinfo_copyinfo.setColumn(0, "issgoaletccd", sIssGoalEtcCd);
  1060. }
  1061. }
  1062. /**
  1063. * @group :
  1064. * @ver :
  1065. * @by : 이창록 2008-08-29
  1066. * @---------------------------------------------------
  1067. * @type : function
  1068. * @access : public
  1069. * @desc : 사본발행 기본정보 조회
  1070. * @param :
  1071. * @return :
  1072. * @---------------------------------------------------
  1073. */
  1074. function fAppInfoSearch(){
  1075. sysf_trace("***** fAppInfoSearch() *****");
  1076. //var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  1077. try
  1078. {
  1079. var vdept = "";
  1080. var hRow = ds_grd_apphist.rowposition;
  1081. ds_send_search.clearData();
  1082. var nRow = ds_send_search.addRow();
  1083. if(hRow > -1){
  1084. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1085. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1086. }
  1087. var oParam = {};
  1088. oParam.id = "TRMRC03010";
  1089. oParam.service = "chrtmngtapp.CopyIssMngt";
  1090. oParam.method = "reqGetCopyIssInfo2";
  1091. oParam.inds = "req=ds_send_search";
  1092. oParam.outds = "ds_main_appinfo_copyinfo=copyinfo";
  1093. oParam.async = false;
  1094. oParam.callback = "cf_TRMRC03010";
  1095. tranf_submit(oParam);
  1096. if (arErrorCode.pop("TRMRC03010") > -1){ // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/copyinfo
  1097. for(var k = 0; k < ds_init_cmb_emrorddeptcd.rowcount; k++) {
  1098. if(ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd") == ds_init_cmb_emrorddeptcd.getColumn(k, "deptcd")){
  1099. vdept = "Y";
  1100. }
  1101. }
  1102. if(vdept == "Y") {
  1103. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  1104. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  1105. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  1106. }else {
  1107. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", "");
  1108. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", "");
  1109. }
  1110. }
  1111. btn_reappinfo.enable = true;
  1112. }
  1113. catch(e){ sysf_catchTrace(e); }
  1114. }
  1115. function fOutAppInfoSearch(){
  1116. sysf_trace("***** fOutAppInfoSearch() *****");
  1117. var hRow = ds_grd_apphist.rowposition;
  1118. ds_grd_outpat.clearData();
  1119. ds_send_search.clearData();
  1120. var nRow = ds_send_search.addRow();
  1121. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1122. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1123. var oParam = {};
  1124. oParam.id = "TRMRC03011";
  1125. oParam.service = "chrtmngtapp.CopyIssMngt";
  1126. oParam.method = "reqGetCopyEmrOutAppList";
  1127. oParam.inds = "req=ds_send_search";
  1128. oParam.outds = "ds_grd_outpat=outpathistlist";
  1129. oParam.async = false;
  1130. oParam.callback = "cf_TRMRC03011";
  1131. tranf_submit(oParam);
  1132. if (arErrorCode.pop("TRMRC03011") > -1) // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/applist
  1133. {
  1134. for(var k = 0; k < ds_grd_outpat.rowcount; k++){
  1135. ds_grd_outpat.setColumn(k, "chk", "Y");
  1136. //sysf_trace(" k : "+ k);
  1137. }
  1138. }
  1139. btn_reappinfo.enable = true;
  1140. }
  1141. function fInAppInfoSearch(){
  1142. sysf_trace("***** fInAppInfoSearch() *****");
  1143. var hRow = ds_grd_apphist.rowposition;
  1144. ds_grd_inapplist.clearData();
  1145. ds_send_search.clearData();
  1146. var nRow =ds_send_search.addRow();
  1147. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1148. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1149. var oParam = {};
  1150. oParam.id = "TRMRC03012";
  1151. oParam.service = "chrtmngtapp.CopyIssMngt";
  1152. oParam.method = "reqGetCopyEmrInAppList";
  1153. oParam.inds = "req=ds_send_search";
  1154. oParam.outds = "ds_grd_inapplist=inpathistlist";
  1155. oParam.async = false;
  1156. oParam.callback = "cf_TRMRC03012";
  1157. tranf_submit(oParam);
  1158. if (arErrorCode.pop("TRMRC03012") > -1) // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/applist
  1159. {
  1160. for(var k = 0; k < ds_grd_inapplist.rowcount; k++)
  1161. ds_grd_inapplist.setColumn(k, "chk", "Y");
  1162. }
  1163. //2012/02/29 Start
  1164. //btn_save.disabled = true;
  1165. //btn_update.disabled = false;
  1166. //2012/02/29 End
  1167. btn_reappinfo.enable = true;
  1168. }
  1169. /**
  1170. * @group :
  1171. * @ver :
  1172. * @by : 이창록 2008-08-29
  1173. * @---------------------------------------------------
  1174. * @type : function
  1175. * @access : public
  1176. * @desc : 통합기록조회에서 받아오는 정보 함수
  1177. * @param :
  1178. * @return :
  1179. * @---------------------------------------------------
  1180. */
  1181. function fGetCopyInfo(copyparam)
  1182. {
  1183. model.removeNodeset(" ");
  1184. var copyArr = copyparam.split("▩");
  1185. var duplFlag = false;
  1186. for(var i = 0; i <(copyArr.length-1); i++){
  1187. var reckeyno = copyArr[i].split("▦")[15];
  1188. var sFormcd = copyArr[i].split("▦")[16];
  1189. var sFormnm = copyArr[i].split("▦")[8];
  1190. var orddd = copyArr[i].split("▦")[11];
  1191. var ioflag = copyArr[i].split("▦")[6];
  1192. for(var rowcnt = 0; rowcnt < grd_outapplist.rows; rowcnt++){
  1193. if((model.getValue("/root/temp/issinfo/emrapplist["+ rowcnt + "]/reckeyno") == reckeyno) && (model.getValue("/root/temp/issinfo/emrapplist["+ rowcnt + "]/formcd") == sFormcd)){
  1194. duplFlag = true;
  1195. break;
  1196. } else {
  1197. duplFlag = false;
  1198. }
  1199. }
  1200. if(!(duplFlag)){
  1201. grd_outapplist.addRow(false);
  1202. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/shtno" ,copyArr[i].split("▦")[4]);
  1203. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/chrtflag" ,copyArr[i].split("▦")[5]);
  1204. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/ioflag" ,copyArr[i].split("▦")[6]);
  1205. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/dschdd" ,copyArr[i].split("▦")[12]);
  1206. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formnm" ,copyArr[i].split("▦")[8]);
  1207. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddeptnm" ,copyArr[i].split("▦")[9]);
  1208. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddeptcd" ,copyArr[i].split("▦")[10]);
  1209. if((ioflag=="O")||(ioflag=="E")){
  1210. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddd" ,orddd);
  1211. }else{
  1212. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/indd" ,orddd);
  1213. }
  1214. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formrecdt" ,copyArr[i].split("▦")[7]);
  1215. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/atdoctnm" ,copyArr[i].split("▦")[13]);
  1216. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/atdoctid" ,copyArr[i].split("▦")[14]);
  1217. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/reckeyno" ,copyArr[i].split("▦")[15]);
  1218. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formcd" ,copyArr[i].split("▦")[16]);
  1219. duplFlag = false;
  1220. }
  1221. }
  1222. grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  1223. grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  1224. grd_outapplist.refresh();
  1225. }
  1226. // 외래 tab
  1227. function fClikOutTab() {
  1228. var userinfo = sysf_getUserInfo("dutplcecd");
  1229. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1230. //if(userinfo != "3230000000"){
  1231. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1232. {
  1233. swc_prof.tabindex = 0;
  1234. group1.visible = true;
  1235. swc_prof.position2.height = "285";//270
  1236. }
  1237. //else if(userinfo == "3230000000"){
  1238. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1239. {
  1240. // KNUH_20101124_박성호_end
  1241. swc_prof.tabindex = 0;
  1242. group1.visible = true;
  1243. swc_prof.position2.height = "363";//343
  1244. swc_prof.out.grd_outpat.position2.height = "320";//310
  1245. group1.position2.top = "680";
  1246. caption24.position2.top = "785";
  1247. caption18.position2.top = "785";
  1248. output1.position2.top = "785";
  1249. txt_delivefact.position2.top = "802";
  1250. txt_delivefact.position2.height = "75";
  1251. btn_reappinfo.position2.top = "884";
  1252. button3.position2.top = "884";
  1253. btn_update.position2.top = "884";
  1254. btn_save.position2.top = "884";
  1255. }
  1256. }
  1257. // 입원 tab
  1258. function fClikInTab() {
  1259. var userinfo = sysf_getUserInfo("dutplcecd");
  1260. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1261. //if(userinfo != "3230000000"){
  1262. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1263. {
  1264. swc_prof.tabindex = 1;
  1265. group1.visible = false;
  1266. swc_prof.position2.height = "379";//364
  1267. swc_prof.in.grd_inapplist.position2.height = "161";
  1268. swc_prof.in.caption10.position2.top = "184";
  1269. swc_prof.in.grd_inpat.position2.top = "202";//200
  1270. swc_prof.in.grd_inpat.position2.height = "160";
  1271. }
  1272. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1273. {
  1274. //else if(userinfo == "3230000000"){
  1275. // KNUH_20101124_박성호_end
  1276. swc_prof.tabindex = 1;
  1277. group1.visible = false;
  1278. swc_prof.position2.height = "457";//445
  1279. swc_prof.in.grd_inapplist.position2.height = "200";
  1280. swc_prof.in.caption10.position2.top = "225";
  1281. swc_prof.in.grd_inpat.position2.top = "242";//240
  1282. swc_prof.in.grd_inpat.position2.height = "200";
  1283. }
  1284. }
  1285. // 사본발행 신청내역 저장
  1286. function fBefCopySave(param)
  1287. {
  1288. sysf_trace("***** fBefCopySave("+param+") *****");
  1289. ds_send_savedata_copyinfo.clearData();
  1290. ds_send_savedata_copyinfo.addRow();
  1291. ds_send_savedata_emrapplist.clearData();
  1292. ds_send_savedata_emrapplist.addRow();
  1293. ds_send_savedata_otptinfo.clearData();
  1294. ds_send_savedata_otptinfo.addRow();
  1295. //2012/10/15 Start
  1296. if(param=="UDT" && ds_grd_apphist.rowposition < 0){
  1297. sysf_messageBox("수정할 사본발행 내역을 먼저 선택","I008");
  1298. return;
  1299. }
  1300. //2012/10/15 End
  1301. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  1302. sysf_messageBox("진료과를 먼저 선택","I008");
  1303. return;
  1304. }
  1305. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  1306. sysf_messageBox("신청의사를 선택","I008");
  1307. return;
  1308. }
  1309. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  1310. rdo_appmanflag.setFocus();
  1311. sysf_messageBox("사본발행 신청인을", "C001");
  1312. return;
  1313. }
  1314. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  1315. rdo_trustyn.setFocus();
  1316. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  1317. return;
  1318. }
  1319. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  1320. ipt_issgoalnm.setFocus();
  1321. sysf_messageBox("사본발행목적을", "C001");
  1322. return;
  1323. }
  1324. if(ds_grd_outpat.getCaseCount("chk == 'Y'") < 1) {
  1325. if(group1.chk_onlytest.value == "Y" || group1.chk_prcpinfo.value == "Y" || group1.chk_testinfo2.value == "Y" || group1.chk_testinfo3.value == "Y" || group1.chk_testinfo4.value == "Y" || group1.chk_testinfo5.value == "Y" || group1.chk_testinfo6.value == "Y" || group1.chk_testinfo7.value == "Y" || group1.chk_testinfo8.value == "Y") {
  1326. sysf_messageBox("외래 진료일을", "C002");
  1327. return;
  1328. }
  1329. }
  1330. //alert(333); return;
  1331. // 외래 서식
  1332. if(SAVE_COPY == 1)
  1333. {
  1334. ds_grd_outapplist.clearData();
  1335. // 외래 수진이력 체크된 노드를 가져옴.
  1336. var rsrvinfoCnt = ds_grd_outpat.getCaseCount("chk == 'Y'");
  1337. if(rsrvinfoCnt > 0) // 수진으로 신청
  1338. {
  1339. ds_send_search.clearData();
  1340. ds_send_search.addRow();
  1341. ds_send_search_rsrvinfo.clearData();
  1342. ds_grd_outpat.filter("chk=='Y'");
  1343. ds_send_search_rsrvinfo.copyData(ds_grd_outpat, true);
  1344. ds_grd_outpat.filter("");
  1345. ds_send_search_rsrvinfo.addColumn("chosflag", "string");
  1346. ds_send_search_rsrvinfo.addColumn("chrtflag", "string");
  1347. ds_send_search_rsrvinfo.addColumn("medirecno", "BIGDECIMAL");
  1348. ds_send_search_rsrvinfo.addColumn("midindxseq", "BIGDECIMAL");
  1349. ds_send_search_rsrvinfo.addColumn("supitemindxseq", "string");
  1350. dsf_setDefaultVal(ds_send_search_rsrvinfo, "all");
  1351. for(var i=0; i<ds_send_search_rsrvinfo.rowcount; i++)
  1352. ds_send_search_rsrvinfo.setColumn(i, "chosflag", ds_send_search_rsrvinfo.getColumn(i, "ordtype"));
  1353. OUTCOPY_FLAG = "Y"; // 외래기록 신청여부
  1354. var onlytest = group1.chk_onlytest.value; // 검사결과만
  1355. if(onlytest == "Y") {
  1356. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1357. ds_send_search.setColumn(0, "onlytest", "Y");
  1358. var midseq = "";
  1359. if(group1.chk_testinfo2.value == "Y") { // 진단검사
  1360. midseq += 11137 + ",";
  1361. }
  1362. if(group1.chk_testinfo3.value == "Y") { // 임상병리
  1363. midseq += 11132 + ",";
  1364. }
  1365. if(group1.chk_testinfo4.value == "Y") { // 기능검사
  1366. midseq += 11135 + ",";
  1367. ds_send_search.setColumn(0, "testinfo4", "Y");
  1368. }
  1369. if(group1.chk_testinfo5.value == "Y") { // 영상의학
  1370. midseq += 11136 + ",";
  1371. ds_send_search.setColumn(0, "testinfo5", "Y");
  1372. }
  1373. if(group1.chk_testinfo6.value == "Y") { // 핵체외
  1374. midseq += 18788 + ",";
  1375. }
  1376. if(group1.chk_testinfo7.value == "Y") { // 내시경
  1377. midseq += 11133 + ",";
  1378. ds_send_search.setColumn(0, "testinfo7", "Y");
  1379. }
  1380. if(group1.chk_testinfo8.value == "Y") { // 미생물
  1381. midseq += 19697 + ",";
  1382. }
  1383. ds_send_search.setColumn(0, "midseq", midseq.substring(0, midseq.length - 1));
  1384. } else {
  1385. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1386. ds_send_search.setColumn(0, "onlytest", "N");
  1387. }
  1388. var oParam = {};
  1389. oParam.id = "TRMRC03024";
  1390. oParam.service = "chrtmngtapp.CopyIssMngt";
  1391. oParam.method = "reqGetAllCopyEmrInfo";
  1392. oParam.inds = "rsrvinfo=ds_send_search_rsrvinfo req=ds_send_search";
  1393. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  1394. oParam.async = false;
  1395. oParam.callback = "cf_TRMRC03024";
  1396. tranf_submit(oParam);
  1397. if(arErrorCode.pop("TRMRC03024") > -1) {
  1398. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  1399. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  1400. ds_grd_outapplist.copyData(ds_main_emrinfo_emrlist);
  1401. //setCSVToNode("/root/temp/issinfo", getNodeListCSV(NodeList), "emrlist");
  1402. }
  1403. }
  1404. //}
  1405. //return;
  1406. // 외래 검사
  1407. if(group1.chk_testinfo.value == "Y") { // "전체" 체크박스가 선택되어 있는지 확인
  1408. fAddTestList("0000000000");
  1409. if(group1.chk_onlytest.value == "Y") { // 검사결과만 신청
  1410. fAddTestList("T");
  1411. }
  1412. } else {
  1413. if(group1.chk_prcpinfo.value == "Y") { // 처방기록
  1414. fAddTestList("0800000636");
  1415. } else {
  1416. fDelTestList("0800000636");
  1417. }
  1418. if(group1.chk_testinfo2.value == "Y") { // 진단검사
  1419. fAddTestList("0800004096");
  1420. } else {
  1421. fDelTestList("0800004096");
  1422. }
  1423. if(group1.chk_testinfo3.value == "Y") { // 임상병리
  1424. fAddTestList("E");
  1425. } else {
  1426. fDelTestList("E");
  1427. }
  1428. if(group1.chk_testinfo4.value == "Y") { // 기능검사
  1429. fAddTestList("F");
  1430. } else {
  1431. fDelTestList("F");
  1432. }
  1433. if(group1.chk_testinfo5.value == "Y") { // 영상의학
  1434. fAddTestList("0800004099");
  1435. } else {
  1436. fDelTestList("0800004099");
  1437. }
  1438. if(group1.chk_testinfo6.value == "Y") { // 핵체외
  1439. fAddTestList("0800004098");
  1440. } else {
  1441. fDelTestList("0800004098");
  1442. }
  1443. if(group1.chk_testinfo7.value == "Y") { // 내시경
  1444. fAddTestList("I");
  1445. } else {
  1446. fDelTestList("I");
  1447. }
  1448. if(group1.chk_testinfo8.value == "Y") { // 미생물
  1449. fAddTestList("0800004097");
  1450. } else {
  1451. fDelTestList("0800004097");
  1452. }
  1453. if(group1.chk_onlytest.value == "Y") { // 검사결과만 신청
  1454. fAddTestList("T");
  1455. } else {
  1456. fDelTestList("T");
  1457. }
  1458. }
  1459. ds_main_cond.setColumn(0, "emrordflag", "O");
  1460. }
  1461. //return;
  1462. // 종이차트
  1463. fPaperList();
  1464. } // end of 외래서식
  1465. //debugger;
  1466. //alert(457384); return;
  1467. // 입원 서식 copy + 검사결과
  1468. //fInEMRChrtListSelect();
  1469. var inrsrvinfoCnt = ds_grd_inpat.getCaseCount("chk == 'Y'");
  1470. if(inrsrvinfoCnt > 0) { // 수진으로 신청
  1471. INCOPY_FLAG = "Y";
  1472. ds_send_search.clearData();
  1473. ds_send_search.addRow();
  1474. ds_send_search_rsrvinfo.clearData();
  1475. ds_grd_outpat.filter("chk=='Y'");
  1476. ds_send_search_rsrvinfo.copyData(ds_grd_outpat, true);
  1477. ds_grd_outpat.filter("");
  1478. ds_send_search_rsrvinfo.addColumn("chosflag", "string");
  1479. ds_send_search_rsrvinfo.addColumn("chrtflag", "string");
  1480. ds_send_search_rsrvinfo.addColumn("medirecno", "BIGDECIMAL");
  1481. ds_send_search_rsrvinfo.addColumn("midindxseq", "BIGDECIMAL");
  1482. ds_send_search_rsrvinfo.addColumn("supitemindxseq", "string");
  1483. dsf_setDefaultVal(ds_send_search_rsrvinfo, "all");
  1484. for(var i=0; i<ds_send_search_rsrvinfo.rowcount; i++)
  1485. ds_send_search_rsrvinfo.setColumn(i, "chosflag", ds_send_search_rsrvinfo.getColumn(i, "ordtype"));
  1486. ds_send_search.setColumn(0, "onlytest", "N");
  1487. var inmidseq = "";
  1488. var inimgseq = "";
  1489. for(var x = 0; x < ds_grd_inpat.rowcount; x++){
  1490. if(ds_grd_inpat.getColumn(x, "chk") == "Y") {
  1491. if(!utlf_isNull(ds_grd_inpat.getColumn(x, "midindxseq"))) {
  1492. inmidseq += ds_grd_inpat.getColumn(x, "midindxseq") + ",";
  1493. }
  1494. if(!utlf_isNull(ds_grd_inpat.getColumn(x, "formcd"))) {
  1495. inimgseq += "'" + ds_grd_inpat.getColumn(x, "formcd") + "'" + ",";
  1496. }
  1497. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11135") { // 기능
  1498. ds_send_search.setColumn(0, "testinfo4", "Y");
  1499. }
  1500. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11136") { // 영상
  1501. ds_send_search.setColumn(0, "testinfo5", "Y");
  1502. }
  1503. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11133") { // 내시경
  1504. ds_send_search.setColumn(0, "testinfo7", "Y");
  1505. }
  1506. }
  1507. }
  1508. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1509. ds_send_search.setColumn(0, "midseq", inmidseq.substring(0, inmidseq.length - 1));
  1510. ds_send_search.setColumn(0, "imgseq", inimgseq.substring(0, inimgseq.length - 1));
  1511. sysf_trace(ds_send_search_rsrvinfo.saveXML());
  1512. sysf_trace(ds_send_search.saveXML());
  1513. var oParam = {};
  1514. oParam.id = "TRMRC03024";
  1515. oParam.service = "chrtmngtapp.CopyIssMngt";
  1516. oParam.method = "reqGetAllCopyEmrInfo";
  1517. oParam.inds = "rsrvinfo=ds_send_search_rsrvinfo req=ds_send_search";
  1518. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  1519. oParam.async = false;
  1520. oParam.callback = "cf_TRMRC03024";
  1521. tranf_submit(oParam);
  1522. if(arErrorCode.pop("TRMRC03024") > -1) {
  1523. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  1524. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  1525. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  1526. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  1527. //var tmpNodeList = instance1.selectNodes("/root/temp/issinfo/emrlist");
  1528. for(var a = 0; a < ds_grd_outapplist.rowcount; a++)
  1529. {
  1530. if (ds_grd_outapplist.getColumn(a, "status") == "i")
  1531. {
  1532. var arrPostion = new Array();
  1533. arrPostion[0] = a;
  1534. grdf_setStatus(grd_outapplist, "I", arrPostion);
  1535. //grd_outapplist.addStatus(a + 1, "insert");
  1536. }
  1537. }
  1538. }
  1539. }
  1540. if(!utlf_isNull(ds_main_cond.getColumn(0, "emrordflag"))) {
  1541. ds_main_cond.setColumn(0, "emrordflag", "OI");
  1542. } else {
  1543. ds_main_cond.setColumn(0, "emrordflag", "I");
  1544. }
  1545. }
  1546. //alert(4953); return;
  1547. // var outList = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist"); // 입원회차
  1548. // var totalList = model.instance1.selectNodes("/root/main/inpathistlist/inpathistlist"); // 입원회차
  1549. // var chkList = model.instance1.selectNodes("/root/main/inpathistlist/inpathistlist[chk = 'Y']"); // 저장된 입원회차
  1550. // var midList = model.instance1.selectNodes("/root/main/midissinfo/emrapplist[chk = 'Y']"); // 중분류서식
  1551. // ds_grd_outpat
  1552. // ds_grd_inapplist
  1553. var chkListCnt = ds_grd_inapplist.getCaseCount("chk=='Y'");
  1554. var midListCnt = ds_grd_inpat.getCaseCount("chk=='Y'");
  1555. if(param != "UDT")
  1556. {
  1557. if(midListCnt > 0 && ds_grd_inapplist.rowcount != 0 && (ds_grd_inapplist.rowcount != chkListCnt)) {
  1558. SAVE_ORDDD = ds_grd_inpat.getColumn(0, "orddd");
  1559. ////////////////////////////////////////////////////////////////////////////////////////////////////////
  1560. var midformcd = "";
  1561. var midreckeyno = "";
  1562. var comporddd = "";
  1563. var compcretno = "";
  1564. var compioflag = "";
  1565. var comporddeptcd = "";
  1566. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  1567. for(var j = 0; j < ds_grd_inpat.rowcount; j++ )
  1568. {
  1569. var chk = ds_grd_inpat.getColumn(j, "chk");
  1570. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  1571. if (emrflag == "E")
  1572. {
  1573. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  1574. if(chk =="Y")
  1575. {
  1576. var subNode = "";
  1577. if(!utlf_isNull(ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq")))
  1578. {
  1579. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  1580. if(midindxseq == compmidindxseq){
  1581. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  1582. //subNode = compNodeSet.item(i);
  1583. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "midindxseq") == midindxseq) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  1584. {
  1585. ds_grd_outapplist.setColumn(i, "status", "i");
  1586. }
  1587. }
  1588. }
  1589. }
  1590. }
  1591. }
  1592. else
  1593. {
  1594. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  1595. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  1596. if(chk =="Y"){
  1597. var subNode = "";
  1598. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  1599. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  1600. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  1601. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  1602. //subNode = compNodeSet.item(i);
  1603. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "formcd") == compformcd && ds_grd_outapplist.getColumn(i, "reckeyno") == compreckeyno) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  1604. {
  1605. ds_grd_outapplist.setColumn(i, "status", "i");
  1606. }
  1607. }
  1608. }
  1609. }
  1610. }
  1611. }
  1612. ///////////////////////////////////////////////////////////////////////////////////////////////////////
  1613. ret =sysf_messageBox("신청서식이 저장되었습니다. 다른 회차도 신청", "Q014");
  1614. if(ret == "6") {
  1615. if(!utlf_isNull(SAVE_ORDDD)) {
  1616. var nidx = ds_grd_inapplist.findRow("indd=='"+ SAVE_ORDDD +"'");
  1617. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1618. }
  1619. SAVE_COPY ++;
  1620. ds_grd_emrapplist.clearData();
  1621. } else {
  1622. if(!utlf_isNull(SAVE_ORDDD)) {
  1623. var nidx = ds_grd_inapplist.findRow("indd=='"+ SAVE_ORDDD +"'");
  1624. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1625. }
  1626. //alert(3333); return;
  1627. fCopySave();
  1628. ////////////////////////////////////////////
  1629. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1630. ////////////////////////////////////////////
  1631. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn");// model.getValue("/root/send/aftcert/aftcertdryn"); // 후인증 대상 의사 여부
  1632. if (aftcertdryn == "Y") {
  1633. return;
  1634. }
  1635. ////////////////////////////////////////////
  1636. sysf_messageBox("사본발행 신청이", "I002");
  1637. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1638. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1639. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1640. {
  1641. // KNUH_20101124_박성호_end
  1642. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  1643. var oprnerId = opener.frmf_getScreenID();
  1644. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  1645. frmf_clearParameter("SMMRC03000_appYN");
  1646. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1647. if (utlf_isNull(closeyn))
  1648. {
  1649. closeyn = "N";
  1650. }
  1651. if (closeyn == "Y")
  1652. {
  1653. //20111017
  1654. fReqGetBfCopyIssHistList(ipt_pid.text);
  1655. //20111017
  1656. }
  1657. else
  1658. {
  1659. fReqGetBfCopyIssHistList(ipt_pid.text);
  1660. }
  1661. } else {
  1662. this.close();
  1663. }
  1664. }
  1665. }
  1666. else
  1667. {
  1668. if(ds_grd_inapplist.rowcount > 0) { // 입원
  1669. if(!utlf_isNull(SAVE_ORDDD)){
  1670. var nidx = ds_grd_inapplist.findRow("indd == '"+ SAVE_ORDDD +"'");
  1671. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1672. }
  1673. fCopySave();
  1674. ////////////////////////////////////////////
  1675. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1676. ////////////////////////////////////////////
  1677. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn"); // 후인증 대상 의사 여부
  1678. if (aftcertdryn == "Y") {
  1679. return;
  1680. }
  1681. ////////////////////////////////////////////
  1682. sysf_messageBox("사본발행 신청이", "I002");
  1683. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1684. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1685. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1686. {
  1687. // KNUH_20101124_박성호_end
  1688. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  1689. var oprnerId = opener.frmf_getScreenID();
  1690. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  1691. frmf_clearParameter("SMMRC03000_appYN");
  1692. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1693. if (utlf_isNull(closeyn))
  1694. {
  1695. closeyn = "N";
  1696. }
  1697. if (closeyn == "Y")
  1698. {
  1699. //20111017
  1700. fReqGetBfCopyIssHistList(ipt_pid.text);
  1701. //20111017
  1702. }
  1703. else
  1704. {
  1705. fReqGetBfCopyIssHistList(ipt_pid.text);
  1706. }
  1707. } else {
  1708. this.close();
  1709. }
  1710. }
  1711. else {
  1712. fCopySave();
  1713. ////////////////////////////////////////////
  1714. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1715. ////////////////////////////////////////////
  1716. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn"); // 후인증 대상 의사 여부
  1717. if (aftcertdryn == "Y") {
  1718. return;
  1719. }
  1720. ////////////////////////////////////////////
  1721. sysf_messageBox("사본발행 신청이", "I002");
  1722. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1723. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1724. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1725. {
  1726. // KNUH_20101124_박성호_end
  1727. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1728. if (utlf_isNull(closeyn))
  1729. {
  1730. closeyn = "N";
  1731. }
  1732. if (closeyn == "Y")
  1733. {
  1734. //20111017
  1735. fReqGetBfCopyIssHistList(ipt_pid.text);
  1736. //20111017
  1737. }
  1738. else
  1739. {
  1740. fReqGetBfCopyIssHistList(ipt_pid.text);
  1741. }
  1742. }
  1743. else
  1744. {
  1745. this.close();
  1746. }
  1747. }
  1748. }
  1749. } //return;
  1750. else
  1751. {
  1752. fCopySave("UPT");
  1753. }
  1754. //2012/03/12 Start 이전 사본발행 목적을 새로 클릭 하지 않더라도 증명서 및 승낙서가 발급될수 있도록 수정
  1755. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  1756. if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  1757. var goal1_cd=ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd"); // 사본신청내역 수정 전 발급목적 코드
  1758. var goal1_nm=ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm"); // 사본신청내역 수정 전 발급목적 이름
  1759. var goal2_cd=ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"); // 사본신청내역 수정 후 발급목적 코드
  1760. var goal2_nm=ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"); // 사본신청내역 수정 후 발급목적 이름
  1761. if(goal1_cd!=goal2_cd && goal1_nm!=goal2_nm){ // 수정전과 수정후가 동일하지 않을 경우
  1762. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd", goal2_cd);
  1763. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", goal2_nm);
  1764. }
  1765. }
  1766. }
  1767. //2012/03/12 End
  1768. }
  1769. // 사본 저장
  1770. function fCopySave(param) {
  1771. sysf_trace("***** fCopySave("+param+") *****");
  1772. ////////////////////////////////////////////
  1773. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1774. ////////////////////////////////////////////
  1775. ds_send_aftcert.setColumn(0, "aftcertdryn", "N"); // 후인증 대상 의사 여부
  1776. // 외래 - 처방기록 포함 체크인 경우
  1777. var prcpInfoYN = ds_main_otherinfo.getColumn(0, "prcpinfo");
  1778. if (utlf_isNull(prcpInfoYN)) { prcpInfoYN = "N"; }
  1779. // 입원 - 중분류서식 (의사지시기록) 체크인 경우
  1780. var cntMidPrcp = 0;
  1781. var cntMidList = ds_grd_inpat.rowcount;
  1782. for (var i=0; i < cntMidList ; i++) {
  1783. var chk = ds_grd_inpat.getColumn(i, "chk");
  1784. var midindxseq = ds_grd_inpat.getColumn(i, "midindxseq");
  1785. if (midindxseq == '20337' && chk == "Y") {
  1786. cntMidPrcp = cntMidPrcp + 1;
  1787. }
  1788. }
  1789. if (prcpInfoYN == "Y" || cntMidPrcp > 0) {
  1790. //alert("외래 처방기록 포함 여부 => " + prcpInfoYN + " , 입원 중분류서식(의사지시기록) 선택 건수 => " + cntMidPrcp);
  1791. var userkind = "E"; // 의사 : "D" , 그외 : "E"
  1792. var jobkindcd = sysf_getUserInfo("jobkindcd");
  1793. if(jobkindcd.substring(0, 2) == "03") { // 의사일 경우 블락킹 (2010.06.14 변경)
  1794. userkind = "D";
  1795. }
  1796. var pid = "";
  1797. var orddd = "";
  1798. var cretno = "";
  1799. if (param == "UPT") { // 수정모드
  1800. pid = ds_main_appinfo_copyinfo.getColumn(0, "pid");
  1801. orddd = ds_main_appinfo_copyinfo.getColumn(0, "orddd");
  1802. cretno = ds_main_appinfo_copyinfo.getColumn(0, "cretno");
  1803. } else {
  1804. pid = ds_main_cond.getColumn(0, "pid");
  1805. orddd = ds_main_cond.getColumn(0, "orddd");
  1806. cretno = ds_main_cond.getColumn(0, "cretno");
  1807. }
  1808. if (utlf_isNull(cretno)) { // 수진정보가 없으면..
  1809. pid = ds_main_result_pathistlist.getColumn(0, "pid");
  1810. orddd = ds_main_result_pathistlist.getColumn(0, "orddd");
  1811. cretno = ds_main_result_pathistlist.getColumn(0, "cretno");
  1812. }
  1813. ds_send_aftcert.setColumn(0, "pid" , pid);
  1814. ds_send_aftcert.setColumn(0, "orddd" , orddd);
  1815. ds_send_aftcert.setColumn(0, "cretno" , cretno);
  1816. ds_send_aftcert.setColumn(0, "userdeptcd" , sysf_getUserInfo("dutplcecd")); // 사용자 소속과
  1817. ds_send_aftcert.setColumn(0, "userkind" , userkind); // 의사 : "D" , 그외 : "E"
  1818. ds_send_aftcert.setColumn(0, "jobkindcd" , jobkindcd); // 직종코드
  1819. var oParam = {};
  1820. oParam.id = "TRMMO02705";
  1821. oParam.service = "prcpmngtapp.PrcpMngt";
  1822. oParam.method = "reqGetPatAftPrcpChk";
  1823. oParam.inds = "req=ds_send_aftcert";
  1824. oParam.outds = "ds_hidden_aftcert=aftcert";
  1825. oParam.async = false;
  1826. oParam.callback = "cf_TRMMO02705";
  1827. tranf_submit(oParam);
  1828. if (parseInt(ds_hidden_aftcert.getColumn(0, "aftcertcnt")) > 0 ) {
  1829. if (userkind == "E") {
  1830. frmf_setParameter("aftcert_pid", pid);
  1831. }
  1832. sysf_messageBox("후인증 미비 내역이 존재합니다. 인증 후 진행하시기 바랍니다.", "C");
  1833. frmf_modal("SMMMO02700", "SMMMO02700", null, null, null, null, null, null, null, null, null, null, "M");
  1834. if(userkind == "D") { // 의사일 경우 블락킹 (2010.06.14 변경)
  1835. ds_send_aftcert.setColumn(0, "aftcertdryn", "Y"); // 후인증 대상 의사 여부
  1836. return;
  1837. }
  1838. }
  1839. }
  1840. ////////////////////////////////////////////
  1841. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1842. ////////////////////////////////////////////
  1843. if(param == "UPT") { // 수정모드
  1844. ds_send_savedata_copyinfo.clearData();
  1845. ds_send_savedata_copyinfo.addRow();
  1846. ds_send_savedata_emrapplist.clearData();
  1847. ds_send_savedata_emrapplist.addRow();
  1848. ds_send_savedata_otptinfo.clearData();
  1849. ds_send_savedata_otptinfo.addRow();
  1850. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  1851. sysf_messageBox("진료과를 먼저 선택","I008");
  1852. return;
  1853. }
  1854. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  1855. sysf_messageBox("신청의사를 선택","I008");
  1856. return;
  1857. }
  1858. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  1859. rdo_appmanflag.setFocus();
  1860. sysf_messageBox("사본발행 신청인을", "C001");
  1861. return;
  1862. }
  1863. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  1864. rdo_trustyn.setFocus();
  1865. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  1866. return;
  1867. }
  1868. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  1869. ipt_issgoalnm.setFocus();
  1870. sysf_messageBox("사본발행목적을", "C001");
  1871. return;
  1872. }
  1873. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1874. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1875. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1876. {
  1877. // KNUH_20101124_박성호_end
  1878. if(!utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issno"))) { // 발행번호가 있으면
  1879. sysf_messageBox("사본이 발행되어 수정할 수 없습니다. 재신청", "I008");
  1880. return;
  1881. }
  1882. }
  1883. }
  1884. // 신청부서 1부 default
  1885. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0"|| utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  1886. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  1887. }
  1888. else
  1889. {
  1890. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  1891. }
  1892. // 신규일 때
  1893. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "status")))
  1894. {
  1895. //if(model.getValue("/root/temp/appinfo/patinfo/cretno") == ""){
  1896. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno")))
  1897. {
  1898. ds_send_savedata_otptinfo.clearData();
  1899. ds_send_savedata_otptinfo.addRow();
  1900. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag" , "I"); // 구분자
  1901. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid" , ds_main_cond.getColumn(0, "pid")); // 등록번호
  1902. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd" , utlf_getCurrentDate()); // 진료일자
  1903. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd" , ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  1904. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid" , ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  1905. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm" , utlf_getCurrentTime()); // 진료시간
  1906. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag" , "4"); // 예약구분
  1907. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd" , sysf_getUserInfo("dutplceinstcd")); // 기관코드
  1908. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact" , ""); // 참고사항
  1909. ds_send_savedata_otptinfo.setColumn(0, "sess_userid" , sysf_getUserInfo("userid")); // 사용자ID
  1910. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn", "N"); // 진찰료산정여부
  1911. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn", "Y"); // 진찰료후불여부
  1912. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  1913. }
  1914. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  1915. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  1916. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  1917. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9")
  1918. {
  1919. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  1920. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  1921. //ds_send_savedata_copyinfo.setColumn(0, "appmanetc" ,ipt_appmannm.currentText);
  1922. }
  1923. else
  1924. {
  1925. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  1926. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  1927. }
  1928. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  1929. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99") // 사본발행목적이 기타일 경우
  1930. {
  1931. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  1932. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  1933. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  1934. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  1935. }
  1936. else
  1937. {
  1938. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  1939. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  1940. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  1941. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  1942. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  1943. }
  1944. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  1945. if((ds_main_cond.getColumn(0, "ioflag")=="O")||(ds_main_cond.getColumn(0, "ioflag")=="S"))
  1946. {
  1947. ds_send_savedata_copyinfo.setColumn(0, "orddd", ds_main_cond.getColumn(0, "orddd"));
  1948. }
  1949. else
  1950. {
  1951. ds_send_savedata_copyinfo.setColumn(0, "orddd", ds_main_cond.getColumn(0, "orddd"));
  1952. }
  1953. ds_send_savedata_copyinfo.setColumn(0, "cretno", ds_main_cond.getColumn(0, "cretno"));
  1954. var userinfo = sysf_getUserInfo("dutplcecd");
  1955. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1956. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1957. {
  1958. // KNUH_20101124_박성호_end
  1959. ds_send_savedata_copyinfo.setColumn(0, "emrordflag", ds_main_cond.getColumn(0, "emrordflag"));
  1960. }else{
  1961. ds_send_savedata_copyinfo.setColumn(0, "emrordflag", ds_main_cond.getColumn(0, "emrordflag"));
  1962. }
  1963. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  1964. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  1965. ds_send_savedata_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  1966. var midformcd = "";
  1967. var midreckeyno = "";
  1968. var comporddd = "";
  1969. var compcretno = "";
  1970. var compioflag = "";
  1971. var comporddeptcd = "";
  1972. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  1973. var histlength = ds_grd_inpat.rowcount;
  1974. if (histlength <= 0)
  1975. {
  1976. for(var j = 0; j < ds_grd_outpat.rowcount; j++ ){
  1977. var chk = ds_grd_outpat.getColumn(j, "chk");
  1978. var orddd = ds_grd_outpat.getColumn(j, "orddd");
  1979. var cretno = ds_grd_outpat.getColumn(j, "cretno");
  1980. var ordtype = ds_grd_outpat.getColumn(j, "ordtype");
  1981. var orddeptcd = ds_grd_outpat.getColumn(j, "orddeptcd");
  1982. if(chk =="Y"){
  1983. var subNode = "";
  1984. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  1985. //subNode = compNodeSet.item(i);
  1986. if ((ds_grd_outapplist.getColumn(i, "orddd") == orddd &&
  1987. ds_grd_outapplist.getColumn(i, "cretno") == cretno &&
  1988. ds_grd_outapplist.getColumn(i, "ioflag") == ordtype &&
  1989. ds_grd_outapplist.getColumn(i, "orddeptcd") == orddeptcd) || (ds_grd_outapplist.getColumn(i, "chrtflag") == "P"))
  1990. {
  1991. var arrPostion = new Array();
  1992. arrPostion[0] = i;
  1993. grdf_setStatus(grd_outapplist, "I", arrPostion);
  1994. //grd_outapplist.addStatus(i + 1, "insert");
  1995. }
  1996. }
  1997. }
  1998. }
  1999. }
  2000. else
  2001. {
  2002. for(var j = 0; j < ds_grd_inpat.rowcount; j++ ){
  2003. var chk = ds_grd_inpat.getColumn(j, "chk");
  2004. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  2005. if (emrflag == "E")
  2006. {
  2007. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  2008. if(chk =="Y")
  2009. {
  2010. var subNode = "";
  2011. if(!utlf_isNull(ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq")))
  2012. {
  2013. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  2014. if(midindxseq == compmidindxseq){
  2015. for(var i = 0; i < ds_grd_outapplist.rowcount; i++)
  2016. {
  2017. //subNode = compNodeSet.item(i);
  2018. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "midindxseq") == midindxseq) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  2019. {
  2020. var arrPostion = new Array();
  2021. arrPostion[0] = i;
  2022. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2023. //grd_outapplist.addStatus(i + 1, "insert");
  2024. }
  2025. }
  2026. }
  2027. }
  2028. }
  2029. }
  2030. else
  2031. {
  2032. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  2033. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  2034. if(chk =="Y"){
  2035. var subNode = "";
  2036. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  2037. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  2038. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  2039. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2040. //subNode = compNodeSet.item(i);
  2041. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "formcd") == compformcd && ds_grd_outapplist.getColumn(i, "reckeyno") == compreckeyno) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S")) {
  2042. var arrPostion = new Array();
  2043. arrPostion[0] = i;
  2044. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2045. //grd_outapplist.addStatus(i + 1, "insert");
  2046. }
  2047. }
  2048. }
  2049. }
  2050. }
  2051. }
  2052. }
  2053. //model.makeValue("/root/send/savedata/emrapplist" ,grd_outapplist.getUpdateData());
  2054. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2055. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) : " + oDsUpdate.saveXML());
  2056. if( utlf_isNull(oDsUpdate) ) {
  2057. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2058. }
  2059. grdf_setStatusColumn(oDsUpdate, "status");
  2060. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2061. sysf_trace(ds_send_savedata_emrapplist.saveXML());
  2062. }
  2063. else if(ds_main_appinfo_copyinfo.getColumn(0, "status") == "u")
  2064. {
  2065. fInReCopyEMRChrtListSelect();
  2066. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0" || utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) )
  2067. {
  2068. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2069. }
  2070. else
  2071. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2072. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99") // 사본발행목적이 기타일 경우
  2073. {
  2074. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2075. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2076. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2077. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2078. }
  2079. else
  2080. {
  2081. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"));
  2082. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2083. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2084. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2085. }
  2086. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9")
  2087. {
  2088. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2089. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2090. }
  2091. else
  2092. {
  2093. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2094. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2095. }
  2096. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  2097. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2098. ds_send_savedata_copyinfo.setColumn(0, "copyseqno" ,ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  2099. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_appinfo_copyinfo.getColumn(0, "emrordflag"));
  2100. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd " ,ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  2101. ds_send_savedata_copyinfo.setColumn(0, "status" ,ds_main_appinfo_copyinfo.getColumn(0, "status"));
  2102. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2103. // KNUH_20101124_박성호_start_수정시 신청일자, 신청시간 기존꺼 가져오기
  2104. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdd"));
  2105. ds_send_savedata_copyinfo.setColumn(0, "apptm" ,ds_main_appinfo_copyinfo.getColumn(0, "apptm"));
  2106. // KNUH_20101124_박성호_end
  2107. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  2108. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  2109. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  2110. ds_send_savedata_copyinfo.setColumn(0, "appdrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  2111. ds_send_savedata_copyinfo.setColumn(0, "copyseqno" ,ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  2112. //grd_outapplist.clearStatus();
  2113. ds_grd_outapplist.applyChange();
  2114. var midformcd = "";
  2115. var midreckeyno = "";
  2116. var compformcd = "";
  2117. var compreckeyno = "";
  2118. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  2119. var histlength = ds_grd_inpat.rowcount;
  2120. if (histlength <= 0)
  2121. {
  2122. for(var j = 0; j < ds_grd_outpat.rowcount; j++ ){
  2123. var chk = ds_grd_outpat.getColumn(j, "chk");
  2124. var orddd = ds_grd_outpat.getColumn(j, "orddd");
  2125. var cretno = ds_grd_outpat.getColumn(j, "cretno");
  2126. var ordtype = ds_grd_outpat.getColumn(j, "ordtype");
  2127. var orddeptcd = ds_grd_outpat.getColumn(j, "orddeptcd");
  2128. if(chk =="Y"){
  2129. var subNode = "";
  2130. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2131. //subNode = compNodeSet.item(i);
  2132. if ((ds_grd_outapplist.getColumn(i, "orddd") == orddd &&
  2133. ds_grd_outapplist.getColumn(i, "cretno") == cretno &&
  2134. ds_grd_outapplist.getColumn(i, "ioflag") == ordtype &&
  2135. ds_grd_outapplist.getColumn(i, "orddeptcd") == orddeptcd) || (ds_grd_outapplist.getColumn(i, "chrtflag") == "P"))
  2136. {
  2137. var arrPostion = new Array();
  2138. arrPostion[0] = i;
  2139. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2140. //grd_outapplist.addStatus(i + 1, "update");
  2141. }
  2142. }
  2143. }
  2144. }
  2145. }
  2146. else
  2147. {
  2148. for(var j = 0; j < ds_grd_inpat.rowcount; j++ ){
  2149. var chk = ds_grd_inpat.getColumn(j, "chk");
  2150. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  2151. if (emrflag == "E")
  2152. {
  2153. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  2154. if(chk =="Y"){
  2155. var subNode = "";
  2156. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  2157. if(midindxseq == compmidindxseq){
  2158. for(var i = 0; i < ds_grd_outapplist.rowcount ; i++){
  2159. //subNode = compNodeSet.item(i);
  2160. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "midindxseq") == midindxseq) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  2161. {
  2162. var arrPostion = new Array();
  2163. arrPostion[0] = i;
  2164. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2165. //grd_outapplist.addStatus(i + 1, "update");
  2166. }
  2167. }
  2168. }
  2169. }
  2170. }
  2171. else
  2172. {
  2173. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  2174. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  2175. if(chk =="Y")
  2176. {
  2177. var subNode = "";
  2178. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  2179. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  2180. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  2181. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2182. //subNode = compNodeSet.item(i);
  2183. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "formcd") == compformcd && ds_grd_outapplist.getColumn(i, "reckeyno") == compreckeyno) || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  2184. {
  2185. var arrPostion = new Array();
  2186. arrPostion[0] = i;
  2187. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2188. //grd_outapplist.addStatus(i + 1, "update");
  2189. }
  2190. }
  2191. }
  2192. }
  2193. }
  2194. }
  2195. }
  2196. //model.makeValue("/root/send/savedata/emrapplist" ,grd_outapplist.getUpdateData());
  2197. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2198. if( utlf_isNull(oDsUpdate) ) {
  2199. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2200. }
  2201. grdf_setStatusColumn(oDsUpdate, "status");
  2202. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2203. sysf_trace(ds_send_savedata_emrapplist.saveXML());
  2204. }
  2205. //BMT사본신청여부 20100322
  2206. ds_send_savedata_copyinfo.setColumn(0, "bmtappyn" ,ds_main_otherinfo.getColumn(0, "bmtappyn"));
  2207. ds_return.clearData();
  2208. //2012/08/09 Start
  2209. ds_send_savedata_copyinfo.setColumn(0, "memo" ,ds_main_appinfo_copyinfo.getColumn(0, "memo"));
  2210. //2012/08/09 end
  2211. //2013/01/22 Start 기타 상세신청내역에 중간에 엔터키 삭제
  2212. var temp_delivefact = ds_main_appinfo_copyinfo.getColumn(0, "delivefact").split("\n");
  2213. var temp="";
  2214. for(var i=0; i <temp_delivefact.length; i++){
  2215. if(!utlf_isNull(temp_delivefact[i])){
  2216. temp+=temp_delivefact[i]+"\n";
  2217. }
  2218. }
  2219. ds_main_appinfo_copyinfo.setColumn(0, "delivefact", temp);
  2220. ds_send_savedata_copyinfo.setColumn(0, "delivefact", temp);
  2221. //2013/01/22 End
  2222. // default value setting
  2223. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  2224. dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  2225. sysf_trace(ds_send_savedata_copyinfo.saveXML());
  2226. sysf_trace(ds_send_savedata_emrapplist.saveXML());
  2227. sysf_trace(ds_send_savedata_otptinfo.saveXML());
  2228. sysf_trace("***** TXMRC03005 *****");
  2229. var oParam = {};
  2230. oParam.id = "TXMRC03005";
  2231. oParam.service = "chrtmngtapp.CopyIssMngt";
  2232. oParam.method = "reqExeCopyIssInfo2";
  2233. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  2234. oParam.outds = "ds_return=return";
  2235. oParam.async = false;
  2236. oParam.callback = "cf_TXMRC03005";
  2237. tranf_submit(oParam);
  2238. if(arErrorCode.pop("TXMRC03005") > -1)
  2239. {
  2240. if(param == "UPT") { // 수정모드
  2241. sysf_messageBox("수정이", "I002");
  2242. //// KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2243. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2244. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2245. // KNUH_20101124_박성호_end
  2246. {
  2247. fReqGetBfCopyIssHistList(ipt_pid.text);
  2248. }
  2249. else
  2250. {
  2251. this.close();
  2252. }
  2253. return;
  2254. }
  2255. }
  2256. else
  2257. {
  2258. sysf_messageBox("저장을","E009");
  2259. return false;
  2260. }
  2261. }
  2262. // 사본발행 수가입력시 부수만큼 신청내역 insert
  2263. function fCopyReSave()
  2264. {
  2265. sysf_trace("***** fCopyReSave() *****");
  2266. // 입원 서식
  2267. for(var i = 0; i < ds_grd_inpat.rowcount; i++){
  2268. var nRow = ds_grd_outapplist.addRow();
  2269. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_grd_emrapplist.getColumn(i, "formcd"));
  2270. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_grd_emrapplist.getColumn(i, "chrtflag"));
  2271. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_grd_emrapplist.getColumn(i, "reckeyno"));
  2272. ds_grd_outapplist.setColumn(nRow, "ioflag" , "I");
  2273. ds_grd_outapplist.setColumn(nRow, "indd" ,ds_grd_emrapplist.getColumn(i, "orddd"));
  2274. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_emrapplist.getColumn(i, "orddd"));
  2275. ds_grd_outapplist.setColumn(nRow, "pid" ,ds_grd_emrapplist.getColumn(i, "pid"));
  2276. ds_grd_outapplist.setColumn(nRow, "cretno" ,ds_grd_emrapplist.getColumn(i, "cretno"));
  2277. ds_grd_outapplist.setColumn(nRow, "orddeptcd",ds_grd_emrapplist.getColumn(i, "orddeptcd"));
  2278. ds_grd_outapplist.setColumn(nRow, "testflag" ,ds_grd_emrapplist.getColumn(i, "testflag"));
  2279. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_grd_inpat.getColumn(i, "formrecuserid"));
  2280. }
  2281. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2282. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2283. // 신청부서 1부 default
  2284. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0"|| utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  2285. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2286. }
  2287. else
  2288. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2289. // 신규일 때
  2290. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno"))){
  2291. ds_send_savedata_otptinfo.clearData();
  2292. ds_send_savedata_otptinfo.addRow();
  2293. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag" ,"I"); // 구분자
  2294. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid" ,ds_main_cond.getColumn(0, "pid")); // 등록번호
  2295. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd" ,utlf_getCurrentDate()); // 진료일자
  2296. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2297. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2298. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm" ,utlf_getCurrentTime()); // 진료시간
  2299. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag" ,"4"); // 예약구분
  2300. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd" ,sysf_getUserInfo("dutplceinstcd")); // 기관코드
  2301. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact" , ""); // 참고사항
  2302. ds_send_savedata_otptinfo.setColumn(0, "sess_userid" ,sysf_getUserInfo("userid")); // 사용자ID
  2303. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn" , "N"); // 진찰료산정여부
  2304. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn" , "Y"); // 진찰료후불여부
  2305. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  2306. }
  2307. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  2308. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2309. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  2310. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9"){
  2311. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2312. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2313. }else{
  2314. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2315. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2316. }
  2317. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2318. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){ // 사본발행목적이 기타일 경우
  2319. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2320. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2321. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2322. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2323. }else{
  2324. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  2325. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2326. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2327. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2328. }
  2329. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  2330. if((ds_main_cond.getColumn(0, "ioflag")=="O")||(ds_main_cond.getColumn(0, "ioflag")=="S")){
  2331. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_cond.getColumn(0, "orddd"));
  2332. }else{
  2333. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_cond.getColumn(0, "orddd"));
  2334. }
  2335. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_cond.getColumn(0, "cretno"));
  2336. var userinfo = sysf_getUserInfo("dutplcecd");
  2337. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2338. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinf, "hardcd")))
  2339. {
  2340. // KNUH_20101124_박성호_end
  2341. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,"O");
  2342. }else{
  2343. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_cond.getColumn(0, "ioflag"));
  2344. }
  2345. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2346. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2347. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2348. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2349. {
  2350. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  2351. }
  2352. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2353. {
  2354. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", dutplcecd);
  2355. // KNUH_20101124_박성호_end
  2356. }
  2357. ds_send_savedata_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2358. ds_grd_outapplist.applyChange();
  2359. //grd_outapplist.clearStatus();
  2360. for(var i = 0; i < ds_grd_outapplist.rowcount; i++)
  2361. {
  2362. var arrPostion = new Array();
  2363. arrPostion[0] = i;
  2364. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2365. //grd_outapplist.addStatus(i, "insert");
  2366. }
  2367. //ds_send_savedamodel.makeValue("/root/send/savedata/emrapplist" ,grd_outapplist.getUpdateData());
  2368. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2369. if( utlf_isNull(oDsUpdate) ) {
  2370. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2371. }
  2372. grdf_setStatusColumn(oDsUpdate, "status");
  2373. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2374. sysf_trace(ds_send_savedata_emrapplist.saveXML());
  2375. }
  2376. // 종이차트 신청
  2377. function fPaperList()
  2378. {
  2379. sysf_trace("***** fPaperList() *****");
  2380. ds_main_emrinfo_emrlist.clearData();
  2381. var j = 0;
  2382. if(swc_prof.out.rdo_outchrtflag.value == "01" || swc_prof.out.rdo_outchrtflag.value == "02") {
  2383. var nodeListCnt = ds_grd_outpat.rowcount;
  2384. if(nodeListCnt > 0)
  2385. {
  2386. lf_fMakeColumn_main_emrinfo();
  2387. for(var i = 0 ; i < nodeListCnt; i++ )
  2388. {
  2389. if("Y" == ds_grd_outpat.getColumn(i, "chk"))
  2390. {
  2391. ds_main_emrinfo_emrlist.insertRow(j);
  2392. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" , "P");
  2393. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" , "O");
  2394. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd" , cmb_emrorddeptcd.value);
  2395. ds_main_emrinfo_emrlist.setColumn(j, "atdoctid" , cmb_orddrid.value);
  2396. ds_main_emrinfo_emrlist.setColumn(j, "formcd" , swc_prof.out.rdo_outchrtflag.value);
  2397. ds_main_emrinfo_emrlist.setColumn(j, "testflag" , "-");
  2398. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" , "0");
  2399. ds_main_emrinfo_emrlist.setColumn(j, "pid" , ds_grd_outpat.getColumn(i, "pid"));
  2400. ds_main_emrinfo_emrlist.setColumn(j, "orddd" , ds_grd_outpat.getColumn(i, "orddd"));
  2401. ds_main_emrinfo_emrlist.setColumn(j, "cretno" , ds_grd_outpat.getColumn(i, "cretno"));
  2402. ds_main_emrinfo_emrlist.setColumn(j, "status" , "");
  2403. j++;
  2404. }
  2405. }
  2406. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2407. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2408. }
  2409. }
  2410. if( !utlf_isNull(ds_main_cond.getColumn(0, "emrordflag")))
  2411. ds_main_cond.setColumn(0, "emrordflag", "O");
  2412. }
  2413. // 검사결과 신청
  2414. function fAddTestList(formcd)
  2415. {
  2416. sysf_trace("***** fAddTestList("+formcd+") *****");
  2417. var vsformcd = formcd;
  2418. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  2419. sysf_messageBox("진료과를 먼저 선택","I008");
  2420. fChkTestList(vsformcd);
  2421. return;
  2422. }
  2423. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  2424. sysf_messageBox("주치의를 선택","I008");
  2425. fChkTestList(vsformcd);
  2426. return;
  2427. }
  2428. if(vsformcd == "0000000000")
  2429. {
  2430. if(group1.chk_prcpinfo.value == "Y")
  2431. fCopyTestList("0800000636");
  2432. fCopyTestList("0800004096");
  2433. fCopyTestList("0800004099");
  2434. fCopyTestList("0800004098");
  2435. fCopyTestList("0800004097");
  2436. fCopyTestList("E");
  2437. fCopyTestList("F");
  2438. fCopyTestList("I");
  2439. fCopyTestList("O");
  2440. }
  2441. else
  2442. {
  2443. fCopyTestList(vsformcd);
  2444. }
  2445. }
  2446. // 검사 copy
  2447. function fCopyTestList(formcd)
  2448. {
  2449. sysf_trace("***** fCopyTestList("+formcd+") *****");
  2450. var vsformcd = formcd;
  2451. var testflg = "";
  2452. var chrtflag = "";
  2453. var formnm = "";
  2454. var recdt = "";
  2455. var supitemindxseq = "";
  2456. var midindxseq = "";
  2457. var sortno = "";
  2458. if(vsformcd == "0800004096") {testflg = "D"; chrtflag = "E"; formnm = "진단검사"; supitemindxseq = "5162"; midindxseq = "11137"; sortno = "17";}// 진단검사
  2459. if(vsformcd == "0800004099") {testflg = "G"; chrtflag = "E"; formnm = "영상의학"; supitemindxseq = "5162"; midindxseq = "11136"; sortno = "20";}// 영상의학
  2460. if(vsformcd == "0800004098") {testflg = "H"; chrtflag = "E"; formnm = "핵체외"; supitemindxseq = "5162"; midindxseq = "18788"; sortno = "21";}// 핵체외
  2461. if(vsformcd == "0800004097") {testflg = "J"; chrtflag = "E"; formnm = "미생물"; supitemindxseq = "5162"; midindxseq = "20339"; sortno = "23";}// 미생물
  2462. if(vsformcd == "0800000636") {testflg = "A"; chrtflag = "E"; formnm = "처방기록"; supitemindxseq = "19338"; midindxseq = "20337"; sortno = "25";}// 처방기록
  2463. if(vsformcd == "C") {testflg = "C"; chrtflag = "-"} // 초진
  2464. if(vsformcd == "E") {testflg = "E"; chrtflag = "E"}// 임상병리
  2465. if(vsformcd == "F") {testflg = "F"; chrtflag = "E"}// 기능검사
  2466. if(vsformcd == "I") {testflg = "I"; chrtflag = "E"}// 내시경
  2467. if(vsformcd == "T") {testflg = "T"; chrtflag = "E"}// 검사결과만 신청
  2468. if(vsformcd == "O") {testflg = "O"; chrtflag = "E"}// 전체
  2469. var j = 0;
  2470. ds_main_emrinfo_emrlist.clearData();
  2471. lf_fMakeColumn_main_emrinfo();
  2472. var nodeListCnt = ds_grd_outpat.getCaseCount("chk == 'Y'");
  2473. if(nodeListCnt > 0){
  2474. for(var i = 0 ; i < ds_grd_outpat.rowcount; i++ ) {
  2475. if("Y" == ds_grd_outpat.getColumn(i, "chk")) {
  2476. ds_main_emrinfo_emrlist.insertRow(j);
  2477. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" ,chrtflag);
  2478. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd" ,ds_grd_outpat.getColumn(i, "orddeptcd"));
  2479. ds_main_emrinfo_emrlist.setColumn(j, "atdoctid" ,cmb_orddrid.value);
  2480. ds_main_emrinfo_emrlist.setColumn(j, "formcd" ,vsformcd);
  2481. ds_main_emrinfo_emrlist.setColumn(j, "orddd" ,ds_grd_outpat.getColumn(i, "orddd"));
  2482. ds_main_emrinfo_emrlist.setColumn(j, "cretno" ,ds_grd_outpat.getColumn(i, "cretno"));
  2483. ds_main_emrinfo_emrlist.setColumn(j, "pid" ,ds_grd_outpat.getColumn(i, "pid"));
  2484. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" ,ds_grd_outpat.getColumn(i, "ordtype"));
  2485. ds_main_emrinfo_emrlist.setColumn(j, "testflag" ,testflg);
  2486. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" ,"0");
  2487. ds_main_emrinfo_emrlist.setColumn(j, "formnm" ,formnm);
  2488. ds_main_emrinfo_emrlist.setColumn(j, "supitemindxseq" ,supitemindxseq);
  2489. ds_main_emrinfo_emrlist.setColumn(j, "midindxseq" ,midindxseq);
  2490. ds_main_emrinfo_emrlist.setColumn(j, "sortno" ,sortno);
  2491. ds_main_emrinfo_emrlist.setColumn(j, "status" ,"");
  2492. j ++;
  2493. }
  2494. }
  2495. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2496. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2497. }
  2498. }
  2499. // 검사 rest
  2500. function fChkTestList(fromcd)
  2501. {
  2502. sysf_trace("***** fChkTestList("+fromcd+") *****");
  2503. // testinfo value "" -> "N" 로 변경
  2504. var vsformcd = fromcd;
  2505. switch(vsformcd){
  2506. case "0800004096": // 진검
  2507. ds_main_otherinfo.setColumn(0, "testinfo2", "N");
  2508. break;
  2509. case "0800004099": // 영상
  2510. ds_main_otherinfo.setColumn(0, "testinfo5", "N");
  2511. break;
  2512. case "0800004098": // 핵의학
  2513. ds_main_otherinfo.setColumn(0, "testinfo6", "N");
  2514. break;
  2515. case "0800004097": //미생물
  2516. ds_main_otherinfo.setColumn(0, "testinfo8", "N");
  2517. break;
  2518. case "0800000636": //처방
  2519. ds_main_otherinfo.setColumn(0, "prcpinfo", "N");
  2520. break;
  2521. case "0000000000": // 검사 전체
  2522. ds_main_otherinfo.setColumn(0, "testinfo", "N");
  2523. ds_main_otherinfo.setColumn(0, "testinfo2", "N");
  2524. ds_main_otherinfo.setColumn(0, "testinfo3", "N");
  2525. ds_main_otherinfo.setColumn(0, "testinfo4", "N");
  2526. ds_main_otherinfo.setColumn(0, "testinfo5", "N");
  2527. ds_main_otherinfo.setColumn(0, "testinfo6", "N");
  2528. ds_main_otherinfo.setColumn(0, "testinfo7", "N");
  2529. ds_main_otherinfo.setColumn(0, "testinfo8", "N");
  2530. break;
  2531. }
  2532. }
  2533. // 검사결과 신청
  2534. function fDelTestList(formcd)
  2535. {
  2536. sysf_trace("***** fDelTestList("+formcd+") *****");
  2537. var vsformcd = formcd;
  2538. if(vsformcd == "0000000000") {
  2539. //var test2Row = grd_outapplist.findRow("0800004096", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2540. var test2Row = ds_grd_outapplist.findRow("formcd", "0800004096");
  2541. sysf_trace(" test2Row : " + test2Row);
  2542. ds_grd_outapplist.deleteRow(test2Row);
  2543. //var test5Row = grd_outapplist.findRow("0800004099", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2544. var test5Row = ds_grd_outapplist.findRow("formcd", "0800004099");
  2545. sysf_trace(" test5Row : " + test5Row);
  2546. ds_grd_outapplist.deleteRow(test5Row);
  2547. //var test6Row = grd_outapplist.findRow("0800004098", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2548. var test6Row = ds_grd_outapplist.findRow("formcd", "0800004098");
  2549. sysf_trace(" test6Row : " + test6Row);
  2550. ds_grd_outapplist.deleteRow(test6Row);
  2551. //var test8Row = grd_outapplist.findRow("0800004097", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2552. var test8Row = ds_grd_outapplist.findRow("formcd", "0800004097");
  2553. sysf_trace(" test8Row : " + test8Row);
  2554. ds_grd_outapplist.deleteRow(test8Row);
  2555. } else {
  2556. var iFndRow2 = ds_grd_outapplist.findRow("formcd", vsformcd);
  2557. sysf_trace(" iFndRow2 : " + iFndRow2 + " vsformcd : " + vsformcd);
  2558. //var iFndRow2 = grd_outapplist.findRow(vsformcd, 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2559. ds_grd_outapplist.deleteRow(iFndRow2);
  2560. }
  2561. }
  2562. //회차별 입원 차트 조회
  2563. function fEMRChrtList(param)
  2564. {
  2565. sysf_trace("***** fEMRChrtList("+param+") *****");
  2566. ds_send_search.clearData();
  2567. ds_send_search_rsrvinfo.clearData();
  2568. var nRow = ds_send_search.addRow();
  2569. var i = 1;
  2570. if(param != "F") {
  2571. if(btn_out.getSelectStatus() == true) {
  2572. cur = ds_grd_outpat.rowposition;
  2573. ds_send_search.setColumn(nRow, "pid" ,ds_grd_outpat.getColumn(cur, "pid"));
  2574. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_outpat.getColumn(cur, "orddd"));
  2575. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_outpat.getColumn(cur, "cretno"));
  2576. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_outpat.getColumn(cur, "orddeptcd"));
  2577. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2578. } else if(btn_in.getSelectStatus() == true) {
  2579. cur = ds_grd_inapplist.rowposition;
  2580. ds_send_search.setColumn(nRow, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2581. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2582. ds_send_search.setColumn(nRow, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2583. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2584. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2585. ds_send_search.setColumn(nRow, "ordtype" ,"I");
  2586. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2587. }
  2588. } else if(param == "F") {
  2589. cur = 1;
  2590. ds_send_search.setColumn(nRow, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2591. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2592. ds_send_search.setColumn(nRow, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2593. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2594. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2595. ds_send_search.setColumn(nRow, "ordtype" ,"I");
  2596. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2597. }
  2598. ds_grd_emrapplist.clearData();
  2599. var oParam = {};
  2600. oParam.id = "TRMRC03007";
  2601. oParam.service = "chrtmngtapp.CopyIssMngt";
  2602. oParam.method = "reqGetCopyEmrTestInfo";
  2603. oParam.inds = "req=ds_send_search";
  2604. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  2605. oParam.async = false;
  2606. oParam.callback = "cf_TRMRC03007";
  2607. tranf_submit(oParam);
  2608. if (arErrorCode.pop("TRMRC03007") > -1)
  2609. {
  2610. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  2611. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  2612. if(btn_out.getSelectStatus() == true) {
  2613. fOutEMRChrtListSelect();
  2614. } else if(btn_in.getSelectStatus() == true) {
  2615. ds_grd_outapplist.copyData(ds_main_emrinfo_emrlist);
  2616. //setCSVToNode("/root/main/issinfo", getNodeListCSV(NodeList), "emrapplist");
  2617. }
  2618. }
  2619. else{
  2620. return;
  2621. }
  2622. }
  2623. ds_send_search.clearData();
  2624. ds_send_search.addRow();
  2625. ds_send_search_rsrvinfo.clearData();
  2626. return;
  2627. }
  2628. // 입원 중분류 chart
  2629. function fGetINChrtList()
  2630. {
  2631. sysf_trace("***** fGetINChrtList() *****");
  2632. if(ds_grd_inapplist.rowposition > -1)
  2633. {
  2634. iviewerIemr.cleanViewer();
  2635. ds_tmpinicert2_iniinfo.clearData();
  2636. //fShowProgress(true, "기록을 조회하고 있습니다");
  2637. cur = ds_grd_inapplist.rowposition;
  2638. ds_send_search.clearData();
  2639. ds_send_search.addRow();
  2640. ds_send_search.setColumn(0, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2641. ds_send_search.setColumn(0, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2642. ds_send_search.setColumn(0, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2643. ds_send_search.setColumn(0, "dschdd" ,ds_grd_inapplist.getColumn(cur, "dschdd"));
  2644. ds_send_search.setColumn(0, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2645. ds_send_search.setColumn(0, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2646. //ds_send_search.setColumn(0, "ordtype" ,ds_grd_inapplist.getColumn(cur, "ioflag"));
  2647. ds_send_search.setColumn(0, "ordtype" ,ds_grd_inapplist.getColumn(cur, "ioflag"));
  2648. ds_send_search.setColumn(0, "emrflag" ,ds_grd_inapplist.getColumn(cur, "emrflag"));
  2649. //2009-11-02 오후 11:36:28 강지훈 추가
  2650. ds_send_search.setColumn(0, "bfopentest" ,ds_grd_inapplist.getColumn(cur, "bfopentest"));
  2651. ds_send_search.setColumn(0, "chrtflag" ,"A");
  2652. //ds_send_search.setColumn(0, "orddeptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2653. //ds_send_search.setColumn(0, "tabflag" , "ALL");
  2654. ds_grd_inpat.clearData();
  2655. var oParam = {};
  2656. oParam.id = "TRMRC03021";
  2657. oParam.service = "chrtmngtapp.CopyIssMngt";
  2658. oParam.method = "reqGetInChrtList";
  2659. oParam.inds = "req=ds_send_search";
  2660. oParam.outds = "ds_grd_inpat=emrapplist";
  2661. oParam.async = false;
  2662. oParam.callback = "cf_TRMRC03021";
  2663. tranf_submit(oParam);
  2664. // fShowProgress(false);
  2665. }
  2666. }
  2667. /**
  2668. * @type : function
  2669. * @access : public
  2670. * @desc : 진료일자별 외래 차트 사본 신청
  2671. * @param :
  2672. * @return :
  2673. * @---------------------------------------------------
  2674. */
  2675. function fOutEMRChrtListSelect()
  2676. {
  2677. sysf_trace("***** fOutEMRChrtListSelect() *****");
  2678. var formcd = "";
  2679. var reckeyno = "";
  2680. var duplFlag = false;
  2681. if(ds_main_emrinfo_emrlist.rowcount > 0){
  2682. for(var i = 0; i < ds_main_emrinfo_emrlist.rowcount; i++){
  2683. reckeyno = ds_main_emrinfo_emrlist.getColumn(i, "reckeyno");
  2684. formcd = ds_main_emrinfo_emrlist.getColumn(i, "formcd");
  2685. for(var rowcnt = 0; rowcnt < ds_grd_outapplist.rowcount; rowcnt++){
  2686. if((ds_grd_outapplist.getColumn(rowcnt, "reckeyno") == reckeyno) && (ds_grd_outapplist.getColumn(rowcnt, "formcd") == formcd)){
  2687. duplFlag = true;
  2688. break;
  2689. } else {
  2690. duplFlag = false;
  2691. }
  2692. }
  2693. if((duplFlag)){
  2694. //sysf_messageBox(sFormnm+"은(는) 이미 신청하신 서식지","I009");
  2695. }else{
  2696. var nRow = ds_grd_outapplist.addRow();
  2697. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_main_emrinfo_emrlist.getColumn(i, "formcd"));
  2698. ds_grd_outapplist.setColumn(nRow, "formnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formnm"));
  2699. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_main_emrinfo_emrlist.getColumn(i, "chrtflag"));
  2700. ds_grd_outapplist.setColumn(nRow, "formrecdt" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdt"));
  2701. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_main_emrinfo_emrlist.getColumn(i, "reckeyno"));
  2702. ds_grd_outapplist.setColumn(nRow, "ioflag" ,"O");
  2703. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_outpat.getColumn(ds_grd_outpat.rowposition, "orddd"));
  2704. ds_grd_outapplist.setColumn(nRow, "orddeptcd" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdeptcd"));
  2705. ds_grd_outapplist.setColumn(nRow, "orddeptnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdeptnm"));
  2706. ds_grd_outapplist.setColumn(nRow, "atdoctnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecusernm"));
  2707. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecuserid"));
  2708. duplFlag = false;
  2709. }
  2710. }
  2711. }else{
  2712. //sysf_messageBox("신청할 서식이","I004");
  2713. if(ds_grd_outpat.getColumn(ds_grd_outpat.rowposition, "chk") == "Y") {
  2714. ds_grd_outpat.setColumn(ds_grd_outpat.rowposition, "chk", "N");
  2715. }
  2716. return;
  2717. }
  2718. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2719. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2720. }
  2721. /**
  2722. * @type : function
  2723. * @access : public
  2724. * @desc : 진료일자별 입원 차트 사본 신청
  2725. * @param :
  2726. * @return :
  2727. * @---------------------------------------------------
  2728. */
  2729. function fInEMRChrtListSelect()
  2730. {
  2731. sysf_trace("***** fInEMRChrtListSelect() *****");
  2732. var nodeListCnt = ds_grd_inpat.getCaseCount("chk == 'Y'");
  2733. if(nodeListCnt > 0){
  2734. // 서식
  2735. for(var i = 0; i < ds_grd_inpat.rowcount; i++){
  2736. var chk = ds_grd_inpat.getColumn(i, "chk");
  2737. if( chk == "Y") {
  2738. var leftindx = ds_grd_inpat.getColumn(i, "midindxseq");
  2739. for( var j = 0; j < ds_grd_emrapplist.rowcount; j++) {
  2740. var rightindx = ds_grd_emrapplist.getColumn(j, "midindxseq");
  2741. if(leftindx == rightindx) {
  2742. grd_outapplist.additem();
  2743. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_grd_emrapplist.getColumn(j, "formcd"));
  2744. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_grd_emrapplist.getColumn(j, "chrtflag"));
  2745. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_grd_emrapplist.getColumn(j, "reckeyno"));
  2746. ds_grd_outapplist.setColumn(nRow, "ioflag" , "I");
  2747. ds_grd_outapplist.setColumn(nRow, "indd" ,ds_grd_emrapplist.getColumn(j, "orddd"));
  2748. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_emrapplist.getColumn(j, "orddd"));
  2749. ds_grd_outapplist.setColumn(nRow, "pid" ,ds_grd_emrapplist.getColumn(j, "pid"));
  2750. ds_grd_outapplist.setColumn(nRow, "cretno" ,ds_grd_emrapplist.getColumn(j, "cretno"));
  2751. ds_grd_outapplist.setColumn(nRow, "orddeptcd" ,ds_grd_emrapplist.getColumn(j, "orddeptcd"));
  2752. ds_grd_outapplist.setColumn(nRow, "testflag" ,ds_grd_emrapplist.getColumn(j, "testflag"));
  2753. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_grd_inpat.getColumn(i, "formrecuserid"));
  2754. }
  2755. }
  2756. }
  2757. }
  2758. }else{
  2759. //sysf_messageBox("신청할 서식이","I004");
  2760. if(ds_grd_inpat.getColumn(ds_grd_inpat.rowposition, "chk") == "Y") {
  2761. ds_grd_inpat.setColumn(ds_grd_inpat.rowposition, "chk", "N");
  2762. }
  2763. return;
  2764. }
  2765. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2766. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2767. }
  2768. // 신청된 사본 재신청시.
  2769. function fInReCopyEMRChrtListSelect()
  2770. {
  2771. sysf_trace("***** fInReCopyEMRChrtListSelect() *****");
  2772. // 서식
  2773. var j = 0;
  2774. ds_main_emrinfo_emrlist.clearData();
  2775. lf_fMakeColumn_main_emrinfo();
  2776. for(var i = 0; i < ds_grd_emrapplist.rowcount; i++){
  2777. ds_main_emrinfo_emrlist.insertRow(j);
  2778. ds_main_emrinfo_emrlist.setColumn(j, "formcd" ,ds_grd_emrapplist.getColumn(i, "formcd"));
  2779. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" ,ds_grd_emrapplist.getColumn(i, "chrtflag"));
  2780. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" ,ds_grd_emrapplist.getColumn(i, "reckeyno"));
  2781. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" , "I");
  2782. ds_main_emrinfo_emrlist.setColumn(j, "indd" ,ds_grd_emrapplist.getColumn(i, "testorddd"));
  2783. ds_main_emrinfo_emrlist.setColumn(j, "orddd" ,ds_grd_emrapplist.getColumn(i, "testorddd"));
  2784. ds_main_emrinfo_emrlist.setColumn(j, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2785. ds_main_emrinfo_emrlist.setColumn(j, "cretno" ,ds_grd_emrapplist.getColumn(i, "testcretno"));
  2786. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd",ds_grd_emrapplist.getColumn(i, "testorddeptcd"));
  2787. ds_main_emrinfo_emrlist.setColumn(j, "testflag" ,ds_grd_emrapplist.getColumn(i, "testflag"));
  2788. j ++;
  2789. }
  2790. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2791. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2792. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2793. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2794. }
  2795. /**
  2796. * @group :
  2797. * @ver :
  2798. * @by : 이창록 2008-08-29
  2799. * @---------------------------------------------------
  2800. * @type : function
  2801. * @access : public
  2802. * @desc : 초기화 버튼
  2803. * @param :
  2804. * @return :
  2805. * @---------------------------------------------------
  2806. */
  2807. function fAppCopyInfoClear(){
  2808. sysf_trace("***** fAppCopyInfoClear() *****");
  2809. PRIN_COPY = ""; // 출력매수
  2810. PRIN_QUNT = ""; // 부수
  2811. SAVE_COPY = "1";
  2812. RESAVE_COPY = "1";
  2813. SAVE_ORDDD = "";
  2814. OUTCOPY_FLAG = "";
  2815. INCOPY_FLAG = "";
  2816. ds_send.clearData();
  2817. ds_send_cond.clearData();
  2818. ds_send_reqdata.clearData();
  2819. ds_send_search.clearData();
  2820. ds_send_search_rsrvinfo.clearData();
  2821. ds_main_appinfo_copyinfo.clearData();
  2822. ds_main_appinfo_copyinfo.addRow();
  2823. dsf_setDefaultVal(ds_main_appinfo_copyinfo, "all");
  2824. fSet_enableevent(false);
  2825. ds_main_otherinfo.clearData();
  2826. ds_main_otherinfo.addRow();
  2827. fSet_enableevent(true);
  2828. ds_grd_outapplist.clearData();
  2829. ds_grd_outpat.clearData();
  2830. ds_grd_inapplist.clearData();
  2831. ds_grd_emrapplist.clearData();
  2832. ds_grd_inpat.clearData();
  2833. ds_main_emrinfo_emrlist.clearData();
  2834. //model.resetInstanceNode("/root/result");
  2835. //model.removeNodeset("/root/main/ordinfo/ordlist");
  2836. /*
  2837. model.resetInstanceNode("/root/send");
  2838. model.resetInstanceNode("/root/main/appinfo");
  2839. model.resetInstanceNode("/root/main/otherinfo");
  2840. model.removeNodeset("/root/temp/issinfo/emrlist");
  2841. model.removeNodeset("/root/main/outpathistlist/outpathistlist");
  2842. model.removeNodeset("/root/main/inpathistlist/inpathistlist");
  2843. model.removeNodeset("/root/main/issinfo/emrapplist");
  2844. model.removeNodeset("/root/main/midissinfo/emrapplist");
  2845. model.removeNodeset("/root/main/emrinfo/emrlist");
  2846. */
  2847. rdo_appmanflag.enable = true;
  2848. rdo_trustyn.enable = true;
  2849. btn_save.enable = true;
  2850. btn_issgoal.enable = true;
  2851. btn_update.enable = false;
  2852. ds_main_appinfo_copyinfo.setColumn(0, "status","");
  2853. ds_main_appinfo_copyinfo.setColumn(0, "appmanflag", "1");
  2854. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "N");
  2855. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2856. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2857. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2858. {
  2859. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", sysf_getUserInfo("dutplcecd")); // 신청과
  2860. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  2861. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", sysf_getUserId().getTrim()); //신청의
  2862. }
  2863. // KNUH_20101124_박성호_end
  2864. iviewerIemr.cleanViewer();
  2865. iviewerIemr.enableevent = false;
  2866. // var e = new SizeEventInfo;
  2867. // frmf_inputEnterKey("iviewerIemr", "onsize", e);
  2868. var strWidth = parseInt(iviewerIemr.position.width);
  2869. var strHeight = parseInt(iviewerIemr.position.height);
  2870. iviewerIemr.setChartViewerSize(strWidth, strHeight);//687
  2871. iviewerIemr.enableevent = true;
  2872. }
  2873. /**
  2874. * @group :
  2875. * @ver :
  2876. * @by : 이창록 2008-08-29
  2877. * @---------------------------------------------------
  2878. * @type : function
  2879. * @access : public
  2880. * @desc : 신청인에 따른 위임장유뮤 변경
  2881. * @param :
  2882. * @return :
  2883. * @---------------------------------------------------
  2884. */
  2885. function fAppManNmSetting()
  2886. {
  2887. sysf_trace("***** fAppManNmSetting() *****");
  2888. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")!="9"){
  2889. ipt_appmannm.enable = false;
  2890. ipt_appmannm.value = "";
  2891. var appmanflag = ds_main_appinfo_copyinfo.getColumn(0, "appmanflag");
  2892. if(appmanflag=="1"){
  2893. rdo_trustyn.value = "N";
  2894. }else{
  2895. rdo_trustyn.value = "Y";
  2896. }
  2897. }else{
  2898. ipt_appmannm.enable = true;
  2899. rdo_trustyn.value = "Y";
  2900. }
  2901. }
  2902. // 사본발행 재신청
  2903. function fReCopyAppInfoSave()
  2904. {
  2905. sysf_trace("***** fReCopyAppInfoSave() *****");
  2906. ds_send_savedata_copyinfo.clearData();
  2907. ds_send_savedata_copyinfo.addRow();
  2908. ds_send_savedata_otptinfo.clearData();
  2909. ds_send_savedata_otptinfo.addRow();
  2910. ds_send_savedata_emrapplist.clearData();
  2911. ds_send_savedata_emrapplist.addRow();
  2912. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  2913. sysf_messageBox("진료과를 먼저 선택","I008");
  2914. return;
  2915. }
  2916. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  2917. sysf_messageBox("신청의사를 선택","I008");
  2918. return;
  2919. }
  2920. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  2921. rdo_appmanflag.setFocus();
  2922. sysf_messageBox("사본발행 신청인을", "C001");
  2923. return;
  2924. }
  2925. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  2926. rdo_trustyn.setFocus();
  2927. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  2928. return;
  2929. }
  2930. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  2931. ipt_issgoalnm.setFocus();
  2932. sysf_messageBox("사본발행목적을", "C001");
  2933. return;
  2934. }
  2935. var iCopyseqno = ds_main_cond.getColumn(0, "copyseqno");
  2936. if (utlf_isNull(iCopyseqno))
  2937. {
  2938. sysf_messageBox("사본발행 내역을","C002");
  2939. return;
  2940. }
  2941. ds_send_savedata_copyinfo.setColumn(0, "copyseqno", iCopyseqno);
  2942. ds_send_savedata_copyinfo.setColumn(0, "reappyn", "Y");
  2943. // 저장된 입원 서식 copy
  2944. if(RESAVE_COPY == "1") {
  2945. }
  2946. var userinfo = sysf_getUserInfo("dutplcecd");
  2947. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2948. //if(userinfo == "3230000000"){
  2949. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  2950. {
  2951. // KNUH_20101124_박성호_end
  2952. ds_main_appinfo_copyinfo.setColumn(0, "status","");
  2953. ds_main_appinfo_copyinfo.setColumn(0, "cretno","");
  2954. ds_main_cond.setColumn(0, "cretno","");
  2955. }else{
  2956. ds_main_appinfo_copyinfo.setColumn(0, "status","I");
  2957. }
  2958. ds_grd_outapplist.applyChange();
  2959. // 신청부서 1부 default
  2960. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0" || utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  2961. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2962. }
  2963. else
  2964. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2965. // 신규일 때
  2966. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "status")) || ds_main_appinfo_copyinfo.getColumn(0, "status") == "I")
  2967. {
  2968. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno"))) {
  2969. //model.removeNodeset("/root/send/savedata/otptinfo");
  2970. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag","I"); // 구분자
  2971. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid",ds_main_cond.getColumn(0, "pid")); // 등록번호
  2972. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd",utlf_getCurrentDate()); // 진료일자
  2973. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2974. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2975. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm",utlf_getCurrentTime()); // 진료시간
  2976. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag","4"); // 예약구분
  2977. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd",sysf_getUserInfo("dutplceinstcd")); // 기관코드
  2978. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact", ""); // 참고사항
  2979. ds_send_savedata_otptinfo.setColumn(0, "sess_userid",sysf_getUserInfo("userid")); // 사용자ID
  2980. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn", "N"); // 진찰료산정여부
  2981. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn", "Y"); // 진찰료후불여부
  2982. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  2983. }
  2984. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  2985. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2986. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  2987. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9"){
  2988. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2989. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2990. //ds_send_savedata_copyinfo.setColumn(0, "appmanetc" ,ipt_appmannm.text);
  2991. }else{
  2992. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2993. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2994. }
  2995. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2996. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){ // 사본발행목적이 기타일 경우
  2997. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2998. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2999. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3000. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  3001. }else{
  3002. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  3003. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3004. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3005. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  3006. }
  3007. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  3008. if((ds_main_appinfo_copyinfo.getColumn(0, "ioflag")=="O")||(ds_main_appinfo_copyinfo.getColumn(0, "ioflag")=="S")){
  3009. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3010. }else{
  3011. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3012. }
  3013. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3014. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_appinfo_copyinfo.getColumn(0, "emrordflag"));
  3015. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  3016. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  3017. ds_send_savedata_copyinfo.setColumn(0, "appdrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  3018. }
  3019. //alert(54268); return;
  3020. var hRow = ds_grd_apphist.rowposition;
  3021. var IssNo = ds_grd_apphist.getColumn(hRow, "issno");
  3022. //BMT사본신청여부 20100322
  3023. ds_send_savedata_copyinfo.setColumn(0, "bmtappyn", ds_main_otherinfo.getColumn(0, "bmtappyn"));
  3024. if(!utlf_isNull(IssNo)){
  3025. var Msg= sysf_messageBox("한번 발행한 사본입니다.그래도 재신청을","Q004");
  3026. if(Msg=="6"){
  3027. // default value setting
  3028. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  3029. //dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  3030. var oParam = {};
  3031. oParam.id = "TXMRC03005";
  3032. oParam.service = "chrtmngtapp.CopyIssMngt";
  3033. oParam.method = "reqExeCopyIssInfo2";
  3034. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  3035. oParam.outds = "ds_return=return";
  3036. oParam.async = false;
  3037. oParam.callback = "cf_TXMRC03005";
  3038. tranf_submit(oParam);
  3039. if(arErrorCode.pop("TXMRC03005") > -1){
  3040. sysf_messageBox("재신청이","I002");
  3041. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  3042. var oprnerId = opener.frmf_getScreenID();
  3043. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  3044. frmf_clearParameter("SMMRC03000_appYN");
  3045. }else{
  3046. sysf_mssageBox("재신청이","E009");
  3047. }
  3048. this.close();
  3049. }else if(Msg=="7"){
  3050. RESAVE_COPY ++;
  3051. ds_send_savedata_copyinfo.clearData();
  3052. ds_send_savedata_emrapplist.clearData();
  3053. ds_send_savedata_otptinfo.clearData();
  3054. return;
  3055. }
  3056. }else{
  3057. var Msg= sysf_messageBox("신청된 사본입니다 그래도 재신청을","Q004");
  3058. if(Msg=="6"){
  3059. // default value setting
  3060. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  3061. //dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  3062. var oParam = {};
  3063. oParam.id = "TXMRC03005";
  3064. oParam.service = "chrtmngtapp.CopyIssMngt";
  3065. oParam.method = "reqExeCopyIssInfo2";
  3066. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  3067. oParam.outds = "ds_return=return";
  3068. oParam.async = false;
  3069. oParam.callback = "cf_TXMRC03005";
  3070. tranf_submit(oParam);
  3071. if(arErrorCode.pop("TXMRC03005") > -1){
  3072. sysf_messageBox("재신청이","I002");
  3073. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  3074. var oprnerId = opener.frmf_getScreenID();
  3075. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  3076. frmf_clearParameter("SMMRC03000_appYN");
  3077. }else{
  3078. sysf_mssageBox("재신청이","E009");
  3079. }
  3080. this.close();
  3081. }else if(Msg=="7"){
  3082. RESAVE_COPY ++;
  3083. ds_send_savedata_copyinfo.clearData();
  3084. ds_send_savedata_emrapplist.clearData();
  3085. ds_send_savedata_otptinfo.clearData();
  3086. return;
  3087. }
  3088. }
  3089. }
  3090. /**
  3091. * @group :
  3092. * @ver :
  3093. * @by : 이창록 2008-08-29
  3094. * @---------------------------------------------------
  3095. * @type : function
  3096. * @access : public
  3097. * @desc : 통합뷰어 창 close 시 사본신청 창 close
  3098. * @param :
  3099. * @return :
  3100. * @---------------------------------------------------
  3101. */
  3102. function fCopyInfoClose()
  3103. {
  3104. sysf_trace("***** fCopyInfoClose() *****");
  3105. this.close();
  3106. }
  3107. /**
  3108. * @group :
  3109. * @ver :
  3110. * @by : 이창록 2008-08-29
  3111. * @---------------------------------------------------
  3112. * @type : function
  3113. * @access : public
  3114. * @desc : 서식신청이 없을 시 메세지
  3115. * @param :
  3116. * @return :
  3117. * @---------------------------------------------------
  3118. */
  3119. function fSaveExcp()
  3120. {
  3121. sysf_trace("***** fSaveExcp() *****");
  3122. var msg = sysf_messageBox("사본 신청된 내역이 없습니다\n"+"검사 결과에 대해서만 사본신청을","Q004"
  3123. ,"\n(검사결과 신청내용은 텍스트로 전달사항에 기재해주세요)");
  3124. if(msg=="6"){
  3125. fCopySave();
  3126. }else if(msg=="7"){
  3127. sysf_messageBox("사본신청 취소가","I001");
  3128. return;
  3129. }
  3130. }
  3131. function fBfAppformInfo()
  3132. {
  3133. sysf_trace("***** fBfAppformInfo() *****");
  3134. ds_send_search.setColumn(0, "pid" , ds_main_cond.getColumn(0, "pid"));
  3135. ds_send_search.setColumn(0, "copyseqno" , ds_grd_inapplist.getColumn(ds_grd_inapplist.rowposition, "copyseqno"));
  3136. ds_send_search.setColumn(0, "srchflag" , "Y");
  3137. dsf_createDs("ds_temp_issinfo_copyinfo");
  3138. dsf_createDs("ds_temp_issinfo_rcptlist");
  3139. var oParam = {};
  3140. oParam.id = "TRMRC03008";
  3141. oParam.service = "chrtmngtapp.CopyIssMngt";
  3142. oParam.method = "reqGetCopyIssDetailInfo";
  3143. oParam.inds = "req=ds_send_search";
  3144. oParam.outds = "ds_temp_issinfo_copyinfo=copyinfo ds_temp_issinfo_emrapplist=emrapplist ds_temp_issinfo_rcptlist=rcptlist";
  3145. oParam.async = false;
  3146. oParam.callback = "cf_TRMRC03008";
  3147. tranf_submit(oParam);
  3148. if (arErrorCode.pop("TRMRC03008") > -1) { } // 서식 /root/temp/issinfo/emrlist grd_outapplist
  3149. ds_send_search.clearData();
  3150. ds_send_search.addRow();
  3151. }
  3152. // 신청정보 상세조회
  3153. function fIssSearch()
  3154. {
  3155. sysf_trace("***** fIssSearch() *****");
  3156. //debugger;
  3157. if (ds_grd_apphist.rowcount < 1) return;
  3158. if (ds_grd_apphist.rowposition < 0) return;
  3159. //Event Off
  3160. ds_grd_rcptlist.enableevent = false;
  3161. var lrow = ds_grd_apphist.rowposition;
  3162. var RecPrcpCd = ds_hidden_calcscorcd.getColumn(0, "hardcd");//의무기록 사본발행 수가코드
  3163. // ds_send_search.clearData();
  3164. // ds_send_search.addRow();
  3165. ds_send_search.setColumn(0, "pid", ds_grd_apphist.getColumn(lrow, "pid"));
  3166. ds_send_search.setColumn(0, "copyseqno", ds_grd_apphist.getColumn(lrow, "copyseqno"));
  3167. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  3168. var totalcopies = ds_grd_apphist.getColumn(lrow, "totalcopies");
  3169. // reqGetCopyIssDetailInfo
  3170. // getCopyIssInfo : 발행정보
  3171. // getPaperScopCd : 종이서식범위
  3172. // getCopyEmrAppList : emr서식
  3173. // getCopyRcptList : 수가
  3174. /*if(model.getValue("/root/main/isshist/isslist[" + lrow + "]/unprepyn") == "Y"){
  3175. messageBox("환자의 기록이 미완결","I009");
  3176. }*/
  3177. ds_grd_rcptlist.applyChange();// grd_rcptlist.clearStatus();
  3178. var oParam = {};
  3179. oParam.id = "TRMRC03023";
  3180. oParam.service = "chrtmngtapp.CopyIssMngt";
  3181. oParam.method = "reqGetCopyRcptList";
  3182. oParam.inds = "req=ds_send_search";
  3183. oParam.outds = "ds_grd_rcptlist=rcptlist";
  3184. oParam.async = false;
  3185. oParam.callback = "cf_TRMRC03023";
  3186. tranf_submit(oParam);
  3187. //sysf_trace(ds_grd_rcptlist.saveXML());
  3188. //fDisabled(false);
  3189. // fAppManNmSetting("S");
  3190. // fIssGoalNmSetting();
  3191. ds_main_appinfo_copyinfo.setColumn(0, "status", "u");
  3192. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  3193. if(ds_grd_rcptlist.rowcount <= 0) // 그리드가 빈줄인 경우
  3194. {
  3195. var currentdate = utlf_getCurrentDate();
  3196. var lrow = ds_grd_rcptlist.addRow();
  3197. // 06: 직할병원 - 수가코드(HCDD001-서울성모)
  3198. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd)) // 무료 수가 코드 적용
  3199. {
  3200. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  3201. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  3202. // 처방코드(임시로 수가코드로 함)
  3203. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  3204. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  3205. }
  3206. else
  3207. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  3208. if(g_DefCnt != 0) // 기본수가코드의 기본매수가 0 이 아닌 경우( ex) 의정부성모..등
  3209. {
  3210. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  3211. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  3212. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  3213. }
  3214. else
  3215. {
  3216. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  3217. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  3218. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  3219. }
  3220. // 수가 명칭 설정
  3221. if(ds_grd_rcptlist.getColumn(lrow, "defyn") == "ADD")
  3222. {
  3223. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  3224. }
  3225. else
  3226. {
  3227. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  3228. }
  3229. }
  3230. if(g_DefCnt != 0)
  3231. {
  3232. if(utlf_isNull(totalcopies)){
  3233. ds_grd_rcptlist.setColumn(lrow, "shtno", g_DefCnt);
  3234. //ds_grd_rcptlist.setColumn(lrow, "shtno", "1");
  3235. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", g_DefCnt);
  3236. }else{
  3237. ds_grd_rcptlist.setColumn(lrow, "shtno", totalcopies);
  3238. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", totalcopies);
  3239. }
  3240. }
  3241. else
  3242. {
  3243. ds_grd_rcptlist.setColumn(lrow, "shtno", g_AddCnt);
  3244. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", g_AddCnt);
  3245. }
  3246. //model.getValue("/root/temp/picmmech/picmmech_unitcost") 어디서나옴??
  3247. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3248. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3249. {
  3250. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3251. }
  3252. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  3253. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  3254. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  3255. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3256. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3257. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3258. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  3259. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3260. ds_temp2_appinfo_copyinfo.setColumn(0, "totalcopies", "1");
  3261. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  3262. {
  3263. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  3264. }
  3265. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3266. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3267. var arrPostion = new Array();
  3268. arrPostion[0] = lrow;
  3269. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  3270. }
  3271. else // 발행된 내역을 조회하는 경우
  3272. {
  3273. var shtno = 0;
  3274. var iFindRow = 0;
  3275. var RowCnt = 0;
  3276. var lrow = 0;
  3277. var currentdate = "";
  3278. var tmpTotalCopies = 0;
  3279. tmpTotalCopies = fGetTotalCopies();
  3280. if(eval(ds_grd_rcptlist.rowcount) == 1)
  3281. {
  3282. var iRow = ds_grd_rcptlist.rowcount - 1;
  3283. sysf_trace("***** iRow : " + iRow + " *****");
  3284. if(parseInt(tmpTotalCopies) == parseInt(g_DefCnt))
  3285. {
  3286. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3287. }
  3288. if(g_DefCnt > 0 && ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd)
  3289. {
  3290. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3291. }
  3292. sysf_trace("***** tmpTotalCopies : " + parseInt(tmpTotalCopies)+ " g_DefCnt : " + parseInt(g_DefCnt) +" *****");
  3293. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt)) // 기본 매수보다 새로 입력한 장수가 10장 미만인경우
  3294. {
  3295. //var rcptNodelist = findNodeset(model, "/root/main/rcptlist/rcptlist[" + iRow + "]");
  3296. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3297. {
  3298. }
  3299. else
  3300. {
  3301. // if(rcptNodelist.length >= 1)
  3302. // {
  3303. //var rcptNode = rcptNodelist.item(0);
  3304. // 기본 수가로 설정
  3305. if(g_DefCnt != 0)
  3306. {
  3307. //rcptNode.parentNode.appendChild(rcptNode);
  3308. var nRow = ds_grd_rcptlist.addRow();
  3309. ds_grd_rcptlist.copyRow(nRow, ds_grd_rcptlist, iRow);
  3310. if(iRow == 0)
  3311. {
  3312. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3313. //ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  3314. ds_grd_rcptlist.setColumn(iRow, "calcscornm", g_DefCalcscorcdnm);
  3315. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3316. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  3317. // 추가 수가를 설정-1
  3318. ds_grd_rcptlist.setColumn(nRow, "calcscorcd", g_AddCalcscorcd);
  3319. //ds_grd_rcptlist.setColumn(nRow, "calcscornm", "의무기록복사(추가한매당)");
  3320. ds_grd_rcptlist.setColumn(nRow, "prcpcd", g_AddCalcscorcd);
  3321. ds_grd_rcptlist.setColumn(nRow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3322. ds_grd_rcptlist.setColumn(nRow, "defyn", "ADD");
  3323. ds_grd_rcptlist.setColumn(nRow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3324. }
  3325. }
  3326. else
  3327. {
  3328. ds_grd_rcptlist.setColumn(iRow, "calcscorcd", g_AddCalcscorcd);
  3329. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  3330. ds_grd_rcptlist.setColumn(iRow, "prcpcd", g_AddCalcscorcd);
  3331. if(g_DefCnt == 0)
  3332. {
  3333. ds_grd_rcptlist.setColumn(iRow, "shtno", tmpTotalCopies);
  3334. ds_grd_rcptlist.setColumn(iRow, "prcpqty", tmpTotalCopies);
  3335. }
  3336. else
  3337. {
  3338. ds_grd_rcptlist.setColumn(iRow, "shtno", (tmpTotalCopies-g_AddCnt));
  3339. ds_grd_rcptlist.setColumn(iRow, "prcpqty", (tmpTotalCopies-g_AddCnt));
  3340. }
  3341. ds_grd_rcptlist.setColumn(iRow, "defyn", "ADD");
  3342. }
  3343. //}
  3344. }
  3345. }
  3346. else // 기존 그리드가 1줄이고 이미 발행된 내역보다 새로 입력한 장수가 10장 이상인경우(그리드가 2줄이 되어야 함.
  3347. {
  3348. ds_grd_rcptlist.setColumn(iRow, "shtno", tmpTotalCopies);
  3349. }
  3350. sysf_trace("***** g_inputbox : " + g_inputbox + " *****");
  3351. if(g_inputbox != "Y")
  3352. {
  3353. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != ds_grd_rcptlist.getColumn(iRow, "prcptims"))
  3354. {
  3355. ds_grd_rcptlist.setColumn(iRow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3356. var arrPostion = new Array();
  3357. arrPostion[0] = iRow;
  3358. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  3359. }
  3360. }
  3361. }
  3362. else // 수가가 여러줄인 경우
  3363. {
  3364. if(g_DefCalcscorcd != "HCDD030")
  3365. {
  3366. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3367. {
  3368. // 첫번째 매수 확인
  3369. if(ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd && utlf_isNull(ds_grd_rcptlist.getColumn(iRow, "defyn")))
  3370. {
  3371. var fstshtno = ds_grd_rcptlist.getColumn(iRow, "shtno");
  3372. if(fstshtno == g_DefCnt)
  3373. {
  3374. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3375. }
  3376. if(fstshtno > g_DefCnt)
  3377. {
  3378. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3379. }
  3380. }
  3381. // 기본 수가로 설정
  3382. if(g_DefCnt != 0)
  3383. {
  3384. if(iRow == 0)
  3385. {
  3386. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3387. //ds_grd_rcptlist.setColumn(iRow, "shtno", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  3388. //ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  3389. ds_grd_rcptlist.setColumn(iRow, "calcscornm", g_DefCalcscorcdnm);
  3390. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3391. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  3392. // 추가 수가를 설정
  3393. ds_grd_rcptlist.setColumn((iRow+1), "calcscorcd", g_AddCalcscorcd);
  3394. //ds_grd_rcptlist.setColumn((iRow+1), "calcscornm", "의무기록복사(추가한매당)");
  3395. ds_grd_rcptlist.setColumn((iRow+1), "calcscornm", g_AddCalcscorcdnm);
  3396. ds_grd_rcptlist.setColumn((iRow+1), "prcpcd", g_AddCalcscorcd);
  3397. ds_grd_rcptlist.setColumn((iRow+1), "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3398. ds_grd_rcptlist.setColumn((iRow+1), "defyn", "ADD");
  3399. ds_grd_rcptlist.setColumn((iRow+1), "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3400. }
  3401. }
  3402. else
  3403. {
  3404. ds_grd_rcptlist.setColumn(iRow, "calcscorcd", g_AddCalcscorcd);
  3405. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  3406. ds_grd_rcptlist.setColumn(iRow, "prcpcd", g_AddCalcscorcd);
  3407. ds_grd_rcptlist.setColumn(iRow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_AddCnt));
  3408. ds_grd_rcptlist.setColumn(iRow, "defyn", "ADD");
  3409. ds_grd_rcptlist.setColumn(iRow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_AddCnt));
  3410. // 의정부, 성가는 부수를 1로 고정
  3411. if(g_inputbox == "Y")
  3412. {
  3413. ds_grd_rcptlist.setColumn(iRow, "prcptims", "1");
  3414. }
  3415. }
  3416. }
  3417. }
  3418. }
  3419. // 직할병원
  3420. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3421. {
  3422. //iFindRow = grd_rcptlist.findRow(g_FreeCalcscorcd,0,2);
  3423. iFindRow = ds_grd_rcptlist.findRow("calcscorcd", g_FreeCalcscorcd);
  3424. if(iFindRow < 0){
  3425. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3426. {
  3427. var arrPostion = new Array();
  3428. arrPostion[0] = iRow;
  3429. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  3430. ds_grd_rcptlist.setColumn(iRow, "readonly", "Y");
  3431. // grd_rcptlist.rowStatus(iRow) = 4;
  3432. // grd_rcptlist.isReadOnly(iRow,4) = true;
  3433. shtno += eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  3434. }
  3435. RowCnt = 1;
  3436. }
  3437. }
  3438. else
  3439. {// 그외 목적
  3440. //iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  3441. iFindRow = ds_grd_rcptlist.findRow("calcscorcd", RecPrcpCd);
  3442. // sysf_trace("*****#1 iFindRow : " + iFindRow +" *****");
  3443. // sysf_trace("*****#1 RecPrcpCd : " + RecPrcpCd +" *****");
  3444. if(iFindRow < 0)
  3445. {
  3446. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3447. {
  3448. var arrPostion = new Array();
  3449. arrPostion[0] = iRow;
  3450. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  3451. ds_grd_rcptlist.setColumn(iRow, "readonly", "Y");
  3452. // grd_rcptlist.rowStatus(iRow) = 4;
  3453. // grd_rcptlist.isReadOnly(iRow,4) = true;
  3454. shtno += eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  3455. }
  3456. if(shtno > 10){
  3457. RowCnt = 2;
  3458. }else{
  3459. RowCnt = 1;
  3460. }
  3461. }
  3462. }
  3463. //sysf_trace("*****#2 iFindRow : " + iFindRow +" *****");
  3464. if(iFindRow < 0)
  3465. {
  3466. for(var iRow = 0; iRow < RowCnt; iRow++)
  3467. {
  3468. currentdate = utlf_getCurrentDate();
  3469. lrow = ds_grd_rcptlist.addRow();
  3470. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3471. {
  3472. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  3473. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  3474. // 처방코드(임시로 수가코드로 함)
  3475. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  3476. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3477. }
  3478. else
  3479. {
  3480. if(iRow == 0)
  3481. {
  3482. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", RecPrcpCd);
  3483. //ds_grd_rcptlist.setColumn(lrow, "calcscornm", "의무기록사본발행");
  3484. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  3485. // 처방코드(임시로 수가코드로 함)
  3486. ds_grd_rcptlist.setColumn(lrow, "prcpcd", RecPrcpCd);
  3487. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3488. }
  3489. else if(iRow == 1)
  3490. {
  3491. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  3492. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  3493. // 처방코드(임시로 수가코드로 함)
  3494. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  3495. ds_grd_rcptlist.setColumn(lrow, "unitcost", "");
  3496. }
  3497. }
  3498. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3499. {
  3500. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3501. }
  3502. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  3503. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  3504. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  3505. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3506. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3507. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3508. if(RowCnt == 1){
  3509. ds_grd_rcptlist.setColumn(lrow, "shtno", shtno);
  3510. ds_grd_rcptlist.setColumn(lrow, "oldshtno", shtno);
  3511. if(issgoalcd == "06"){
  3512. ds_grd_rcptlist.setColumn(lrow, "prcpqty", shtno);
  3513. }else{
  3514. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3515. }
  3516. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  3517. if(iRow == 0){ // 수가코드 (HCDD027) 처리
  3518. ds_grd_rcptlist.setColumn(lrow, "shtno", "10");
  3519. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "10");
  3520. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3521. }else if(iRow == 1){ // 수가코드(HCDD030) 처리
  3522. ds_grd_rcptlist.setColumn(lrow, "shtno", (shtno-10));
  3523. ds_grd_rcptlist.setColumn(lrow, "oldshtno", (shtno-10));
  3524. ds_grd_rcptlist.setColumn(lrow, "prcpqty", (shtno-10));
  3525. }
  3526. }
  3527. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3528. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3529. var arrPostion = new Array();
  3530. arrPostion[0] = lrow;
  3531. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  3532. //grd_rcptlist.addStatus(lrow, "insert");
  3533. }
  3534. }
  3535. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  3536. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  3537. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies",1);
  3538. fChangedAppCopies();
  3539. }
  3540. var totalcopiesNew = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "totalcopies");
  3541. var emrappcopiesNew = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "emrappcopies");
  3542. g_GrdTotalCnt = totalcopiesNew * emrappcopiesNew;
  3543. }
  3544. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  3545. {
  3546. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  3547. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "prcptims", "none");
  3548. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  3549. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  3550. ds_grd_rcptlist.applyChange();
  3551. // 그리드 복사
  3552. ds_grd_tmprcptlist.copyData(ds_grd_rcptlist);
  3553. ds_grd_tmprcptlist.applyChange();
  3554. //model.copyNode("/root/temp2/rcptlist", "/root/main/rcptlist");
  3555. }
  3556. // event On
  3557. ds_grd_rcptlist.enableevent = true;
  3558. }
  3559. function fIssSearch_old()
  3560. {
  3561. if (grd_apphist.rows<= 1) return;
  3562. if (grd_apphist.row < 1) return;
  3563. var lrow = grd_apphist.row;
  3564. var RecPrcpCd = model.getValue("/root/hidden/calcscorcd/hardcd/hardcd");//의무기록 사본발행 수가코드
  3565. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + lrow + "]/pid"));
  3566. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + lrow + "]/copyseqno"));
  3567. //model.removeNodeset("/root/main/issinfo/emrapplist");
  3568. // reqGetCopyIssDetailInfo
  3569. // getCopyIssInfo : 발행정보
  3570. // getPaperScopCd : 종이서식범위
  3571. // getCopyEmrAppList : emr서식
  3572. // getCopyRcptList : 수가
  3573. /*if(model.getValue("/root/main/isshist/isslist[" + lrow + "]/unprepyn") == "Y"){
  3574. messageBox("환자의 기록이 미완결","I009");
  3575. }*/
  3576. grd_rcptlist.clearStatus();
  3577. if (submit("TRMRC03023", false) == true)
  3578. //{
  3579. //fDisabled(false);
  3580. // fAppManNmSetting("S");
  3581. // fIssGoalNmSetting();
  3582. model.setValue("/root/main/appinfo/copyinfo/status", "u");
  3583. model.refresh();
  3584. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  3585. if(grd_rcptlist.rows == grd_rcptlist.fixedrows){
  3586. grd_rcptlist.additem();
  3587. var currentdate = getCurrentDate();
  3588. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  3589. // 06: 직할병원 - 수가코드(HCDD001)
  3590. if(issgoalcd == "06" && g_FreeCalcscorcd != "") {
  3591. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  3592. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  3593. // 처방코드(임시로 수가코드로 함)
  3594. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  3595. }else{ // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  3596. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  3597. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  3598. // 처방코드(임시로 수가코드로 함)
  3599. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  3600. }
  3601. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3602. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3603. {
  3604. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3605. }
  3606. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  3607. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  3608. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  3609. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3610. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3611. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3612. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "1");
  3613. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  3614. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3615. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3616. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3617. grd_rcptlist.addStatus(lrow, "insert");
  3618. //btn_delete.disabled = false;
  3619. //btn_delete.refresh();
  3620. }else{
  3621. var shtno = 0;
  3622. var iFindRow =0;
  3623. var RowCnt = 0;
  3624. var lrow = 0;
  3625. var currentdate = "";
  3626. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3627. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims")){
  3628. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3629. grd_rcptlist.rowStatus(iRow) = 2;
  3630. }
  3631. }
  3632. // 직할병원
  3633. if(issgoalcd == "06" && g_FreeCalcscorcd != ""){
  3634. iFindRow = grd_rcptlist.findRow("HCDD001",0,2);
  3635. if(iFindRow < 1){
  3636. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3637. grd_rcptlist.rowStatus(iRow) = 4;
  3638. grd_rcptlist.isReadOnly(iRow,4) = true;
  3639. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  3640. }
  3641. RowCnt = 1;
  3642. }
  3643. }else{// 그외 목적
  3644. iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  3645. if(iFindRow < 1){
  3646. for(var iRow = grd_rcptlist.fixedrows; iRow<= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3647. grd_rcptlist.rowStatus(iRow) = 4;
  3648. grd_rcptlist.isReadOnly(iRow,4) = true;
  3649. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  3650. }
  3651. if(shtno > 10){
  3652. RowCnt = 2;
  3653. }else{
  3654. RowCnt = 1;
  3655. }
  3656. }
  3657. }
  3658. if(iFindRow < 1){
  3659. for(var iRow = 1; iRow <= RowCnt; iRow++){
  3660. grd_rcptlist.additem();
  3661. currentdate = getCurrentDate();
  3662. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  3663. if(issgoalcd == "06"){
  3664. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  3665. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  3666. // 처방코드(임시로 수가코드로 함)
  3667. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  3668. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3669. }else{
  3670. if(iRow == 1){
  3671. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  3672. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  3673. // 처방코드(임시로 수가코드로 함)
  3674. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  3675. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3676. }else if(iRow == 2){
  3677. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  3678. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  3679. // 처방코드(임시로 수가코드로 함)
  3680. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  3681. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", "");
  3682. }
  3683. }
  3684. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3685. {
  3686. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3687. }
  3688. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  3689. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  3690. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  3691. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3692. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3693. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3694. if(RowCnt == 1){
  3695. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", shtno);
  3696. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", shtno);
  3697. if(issgoalcd == "06"){
  3698. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", shtno);
  3699. }else{
  3700. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3701. }
  3702. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  3703. if(iRow == 1){ // 수가코드 (HCDD027) 처리
  3704. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "10");
  3705. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "10");
  3706. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3707. }else if(iRow == 2){ // 수가코드(HCDD030) 처리
  3708. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", (shtno-10));
  3709. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", (shtno-10));
  3710. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", (shtno-10));
  3711. }
  3712. }
  3713. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3714. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3715. grd_rcptlist.addStatus(lrow, "insert");
  3716. }
  3717. }
  3718. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  3719. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  3720. model.setValue("/root/main/appinfo/copyinfo/emrappcopies",1);
  3721. //ipt_emrappcopies.refresh();
  3722. fChangedAppCopies();
  3723. }
  3724. //btn_delete.disabled = true;
  3725. //btn_delete.refresh();
  3726. }
  3727. /* }
  3728. else
  3729. {
  3730. messageBox("조회를", "E009");
  3731. }*/
  3732. //model.refresh();
  3733. }
  3734. // 신청부수가 변경될 경우
  3735. function fChangedAppCopies(){
  3736. sysf_trace(" ***** fChangedAppCopies() *****");
  3737. var sEMRAppCopies = ds_grd_rcptlist.getColumn(ds_grd_rcptlist.rowposition, "prcptims");
  3738. var iPrcpTims = 0;
  3739. var sShtNo = 0;
  3740. var sOldShtNo = 0;
  3741. var iStatus = 0;
  3742. iRow = ds_grd_rcptlist.rowposition;
  3743. iPrcpTims = ds_grd_rcptlist.getColumn(iRow, "oldprcptims");
  3744. iStatus = ds_grd_rcptlist.getRowType(iRow);
  3745. ds_grd_rcptlist.enableevent = false;
  3746. if(sEMRAppCopies != iPrcpTims){
  3747. ds_grd_rcptlist.setColumn(iRow, "prcptims",sEMRAppCopies);
  3748. // TF status 0 : new , 2 : update XP 1 : nomal, 4 : update
  3749. if(iStatus == 1){
  3750. var arrPostion = new Array();
  3751. arrPostion[0] = iRow;
  3752. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  3753. }
  3754. //grd_rcptlist.rowstatus(iRow) = 2;
  3755. }else{
  3756. sShtNo = ds_grd_rcptlist.getColumn(iRow, "shtno");
  3757. sOldShtNo = ds_grd_rcptlist.getColumn(iRow, "oldshtno");
  3758. if(sShtNo == sOldShtNo && iStatus == 4){
  3759. //grd_rcptlist.rowstatus(iRow) = 0;
  3760. var arrPostion = new Array();
  3761. arrPostion[0] = iRow;
  3762. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  3763. }
  3764. }
  3765. ds_grd_rcptlist.enableevent = true;
  3766. }
  3767. function fChangedAppCopies_old(){
  3768. //var sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  3769. var sEMRAppCopies = model.getValue("/root/main/rcptlist/rcptlist["+ grd_rcptlist.row +"]/prcptims");
  3770. var iPrcpTims = 0;
  3771. var sShtNo = 0;
  3772. var sOldShtNo = 0;
  3773. var iStatus = 0;
  3774. //for(var iRow = grd_rcptlist.fixedrows; iRow <= grd_rcptlist.rows - grd_rcptlist.fixedrows; iRow++){
  3775. iRow = grd_rcptlist.row;
  3776. iPrcpTims = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldprcptims");
  3777. iStatus = grd_rcptlist.rowstatus(iRow);
  3778. if(sEMRAppCopies != iPrcpTims){
  3779. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcptims",sEMRAppCopies);
  3780. if(iStatus == 0) grd_rcptlist.rowstatus(iRow) = 2;
  3781. }else{
  3782. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno");
  3783. sOldShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  3784. if(sShtNo == sOldShtNo && iStatus == 2){
  3785. grd_rcptlist.rowstatus(iRow) = 0;
  3786. }
  3787. }
  3788. //}
  3789. }
  3790. function fGetInEmrFormList() {
  3791. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  3792. model.removeNodeset("/root/main/issinfo/emrapplist");
  3793. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  3794. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + hRow + "]/pid"));
  3795. if (submit("TRMRC03015",false)) // 서식지분류 조회 list /root/main/issinfo/emrapplist
  3796. {
  3797. }
  3798. btn_save.disabled = true;
  3799. btn_update.disabled = false;
  3800. btn_reappinfo.disabled = false;
  3801. grd_emrapplist.refresh();
  3802. }
  3803. function fGetEMRDrawList() {
  3804. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  3805. model.removeNodeset("/root/main/issinfo/emrapplist");
  3806. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  3807. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + hRow + "]/pid"));
  3808. if (submit("TRMRC03031",false))
  3809. {
  3810. }
  3811. btn_save.disabled = true;
  3812. btn_update.disabled = false;
  3813. btn_reappinfo.disabled = false;
  3814. grd_emrapplist.refresh();
  3815. }
  3816. // 신청된 사본 호출
  3817. function fGetMidFormList() {
  3818. sysf_trace("***** fGetMidFormList() *****");
  3819. ds_grd_inpat.clearData();//model.removeNodeset("/root/main/midissinfo");
  3820. ds_main_midissinfo_totemrapplist.clearData();
  3821. dsf_createDs("ds_isstemp_emrapplist");
  3822. dsf_createDs("ds_totisstemp_totemrapplist");
  3823. dsf_copyColInfo(ds_isstemp_emrapplist, ds_grd_inpat);
  3824. dsf_copyColInfo(ds_totisstemp_totemrapplist, ds_main_midissinfo_totemrapplist);
  3825. var hRow = ds_grd_apphist.rowposition;
  3826. var copyseqno = ds_grd_apphist.getColumn(hRow, "copyseqno");
  3827. //var inpathistNodes = instance1.selectNodes("/root/main/inpathistlist/inpathistlist");
  3828. for(var i = 0; i < ds_grd_inapplist.rowcount; i++)
  3829. {
  3830. ds_send_search.clearData();
  3831. var nRow = ds_send_search.addRow();
  3832. ds_send_search.setColumn(nRow, "copyseqno", copyseqno);
  3833. ds_send_search.setColumn(nRow, "pid", ds_grd_inapplist.getColumn(i, "pid"));
  3834. ds_send_search.setColumn(nRow, "orddd", ds_grd_inapplist.getColumn(i, "indd"));
  3835. ds_send_search.setColumn(nRow, "cretno", ds_grd_inapplist.getColumn(i, "cretno"));
  3836. ds_send_search.setColumn(nRow, "orddeptcd", ds_grd_inapplist.getColumn(i, "orddeptcd"));
  3837. ds_send_search.setColumn(nRow, "ordtype", ds_grd_inapplist.getColumn(i, "ioflag"));
  3838. //2009-11-03 오전 2:06:12 강지훈 추가
  3839. ds_send_search.setColumn(nRow, "bfopentest", ds_grd_inapplist.getColumn(i, "bfopentest"));
  3840. if (!utlf_isNull(ds_grd_inapplist.getColumn(i, "pid")))
  3841. {
  3842. // 중분류 단위조회
  3843. var oParam = {};
  3844. oParam.id = "TRMRC03022";
  3845. oParam.service = "chrtmngtapp.CopyIssMngt";
  3846. oParam.method = "reqGetInMidEmrFormList";
  3847. oParam.inds = "req=ds_send_search";
  3848. oParam.outds = "ds_grd_inpat=emrapplist ds_main_midissinfo_totemrapplist=totemrapplist";
  3849. oParam.async = false;
  3850. oParam.callback = "cf_TRMRC03022";
  3851. tranf_submit(oParam);
  3852. if(arErrorCode.pop("TRMRC03022") > -1){
  3853. ds_isstemp_emrapplist.appendData(ds_grd_inpat);
  3854. ds_totisstemp_totemrapplist.appendData(ds_main_midissinfo_totemrapplist);
  3855. // copyNodeset("/root/isstemp/emrapplist", "/root/midtemp/midissinfo/emrapplist", "append");
  3856. // copyNodeset("/root/totisstemp/totemrapplist", "/root/midtemp/midissinfo/totemrapplist", "append");
  3857. ds_grd_inpat.clearData();//model.removeNodeset("/root/main/midissinfo");
  3858. ds_main_midissinfo_totemrapplist.clearData();
  3859. }
  3860. }
  3861. }
  3862. ds_grd_inpat.appendData(ds_isstemp_emrapplist);
  3863. ds_main_midissinfo_totemrapplist.appendData(ds_totisstemp_totemrapplist);
  3864. dsf_deleteDs("ds_isstemp_emrapplist");
  3865. dsf_deleteDs("ds_totisstemp_totemrapplist");
  3866. // copyNodeset("/root/main/midissinfo/emrapplist", "/root/isstemp/emrapplist", "append");
  3867. // copyNodeset("/root/main/midissinfo/totemrapplist", "/root/totisstemp/totemrapplist", "append");
  3868. // model.removeNodeset("/root/isstemp");
  3869. // model.removeNodeset("/root/totisstemp");
  3870. }
  3871. // 신청된 사본 호출
  3872. function fGetMidFormList_old() {
  3873. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  3874. model.removeNodeset("/root/main/midissinfo/emrapplist");
  3875. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  3876. model.makeValue("/root/send/search/pid", model.getValue("/root/main/inpathistlist/inpathistlist/pid"));
  3877. model.makeValue("/root/send/search/orddd", model.getValue("/root/main/inpathistlist/inpathistlist/indd"));
  3878. model.makeValue("/root/send/search/cretno", model.getValue("/root/main/inpathistlist/inpathistlist/cretno"));
  3879. model.makeValue("/root/send/search/orddeptcd", model.getValue("/root/main/inpathistlist/inpathistlist/orddeptcd"));
  3880. model.makeValue("/root/send/search/ordtype", model.getValue("/root/main/inpathistlist/inpathistlist/ioflag"));
  3881. if (model.getValue("/root/main/inpathistlist/inpathistlist/pid") != "")
  3882. {
  3883. // 중분류 단위조회
  3884. if(submit("TRMRC03022")){
  3885. //for(var k = 1; k < grd_inpat.rows; k++)
  3886. // model.setValue("/root/main/midissinfo/emrapplist["+ k +"]/chk", "Y");
  3887. }
  3888. }
  3889. }
  3890. function fGetOutEmrFormList() {
  3891. sysf_trace("***** fGetOutEmrFormList() *****");
  3892. var hRow = ds_grd_apphist.rowposition;
  3893. ds_grd_outapplist.clearData();
  3894. // ds_send_search.clearData();
  3895. // var nRow = ds_send_search.addRow();
  3896. ds_send_search.setColumn(0, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  3897. ds_send_search.setColumn(0, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  3898. //xp code add : col id change!!!execprcpuniqno
  3899. if( !utlf_isNull(ds_grd_outapplist.getColumnInfo("orddeptcd")))
  3900. ds_grd_outapplist.updateColID("orddeptcd", "orddeptdcd");
  3901. var oParam = {};
  3902. oParam.id = "TRMRC03017";
  3903. oParam.service = "chrtmngtapp.CopyIssMngt";
  3904. oParam.method = "reqGetOutEmrFormList";
  3905. oParam.inds = "req=ds_send_search";
  3906. oParam.outds = "ds_grd_outapplist=emrlist";
  3907. oParam.async = false;
  3908. oParam.callback = "cf_TRMRC03017";
  3909. tranf_submit(oParam);
  3910. if (arErrorCode.pop("TRMRC03017") > -1) // 사본신청 list /root/temp/issinfo/emrlist
  3911. {
  3912. fSet_enableevent(false);
  3913. ds_main_otherinfo.clearData();
  3914. ds_main_otherinfo.addRow();
  3915. fSet_enableevent(true);
  3916. if(ds_grd_outapplist.rowcount > 0) {
  3917. for(var rowcnt = 0; rowcnt < ds_grd_outapplist.rowcount; rowcnt++){
  3918. if(ds_grd_outapplist.getColumn(rowcnt, "chrtflag") == "P") { // 종이차트
  3919. ds_main_otherinfo.setColumn(0, "outchrtflag", ds_grd_outapplist.getColumn(rowcnt, "formcd"));
  3920. }
  3921. var testflag = ds_grd_outapplist.getColumn(rowcnt, "testflag");
  3922. //sysf_trace("testflag : " + testflag );
  3923. switch(testflag) {
  3924. case "A" : ds_main_otherinfo.setColumn(0, "prcpinfo", "Y"); break;
  3925. case "C" : ds_main_otherinfo.setColumn(0, "testinfo1", "Y"); break;
  3926. case "D" : ds_main_otherinfo.setColumn(0, "testinfo2", "Y"); break;
  3927. case "E" : ds_main_otherinfo.setColumn(0, "testinfo3", "Y"); break;
  3928. case "F" : ds_main_otherinfo.setColumn(0, "testinfo4", "Y"); break;
  3929. case "G" : ds_main_otherinfo.setColumn(0, "testinfo5", "Y"); break;
  3930. case "H" : ds_main_otherinfo.setColumn(0, "testinfo6", "Y"); break;
  3931. case "I" : ds_main_otherinfo.setColumn(0, "testinfo7", "Y"); break;
  3932. case "J" : ds_main_otherinfo.setColumn(0, "testinfo8", "Y"); break;
  3933. case "T" : ds_main_otherinfo.setColumn(0, "onlytest", "Y"); break;
  3934. case "O" : ds_main_otherinfo.setColumn(0, "testinfo", "Y"); break;
  3935. }
  3936. }
  3937. }
  3938. ds_main_otherinfo.setColumn(0, "lang", "K");
  3939. }
  3940. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  3941. ds_grd_outapplist.setColumn(i, "indd" ,ds_grd_outapplist.getColumn(i, "testorddd"));
  3942. ds_grd_outapplist.setColumn(i, "orddd" ,ds_grd_outapplist.getColumn(i, "testorddd"));
  3943. ds_grd_outapplist.setColumn(i, "cretno" ,ds_grd_outapplist.getColumn(i, "testcretno"));
  3944. ds_grd_outapplist.setColumn(i, "orddeptcd",ds_grd_outapplist.getColumn(i, "testorddeptcd"));
  3945. }
  3946. btn_reappinfo.enable = true;
  3947. //model.removeNodeset("/root/send/deptcond");
  3948. }
  3949. // 처방이력 팝업 호출
  3950. function fPopUpPrcpHist(){
  3951. sysf_trace("***** fPopUpPrcpHist() *****");
  3952. if(ds_grd_apphist.rowposition < 0){
  3953. sysf_messageBox("환자를 먼저", "C002");
  3954. return;
  3955. }
  3956. var copyseqno = ds_main_appinfo_copyinfo.getColumn(0, "copyseqno");
  3957. frmf_setParameter("SPMRC02400_Param", copyseqno);
  3958. frmf_modal("SPMRC02400", "SPMRC02400", null, null, null, null, null, null, null, null, null, null, "M");
  3959. }
  3960. // 승락서/증명서 출력
  3961. function fPrnt(pFlag)
  3962. {
  3963. sysf_trace("***** fPrnt("+pFlag+") *****");
  3964. var iRow = ds_grd_apphist.rowposition;
  3965. if(ds_grd_apphist.rowcount == 1) {iRow = 0;}
  3966. else {
  3967. var sCopySeqNo = ds_main_cond.getColumn(0, "copyseqno");
  3968. // 2009.05.29 이경희
  3969. // 이전 사본발행 내역에서 컬럼을 하나 추가함에 따라 검색 범위를 변경
  3970. //var iRow = grd_apphist.findRow(sCopySeqNo,1,24);
  3971. var iRow = ds_grd_apphist.findRow("copyseqno", sCopySeqNo);
  3972. ds_grd_apphist.rowposition = iRow;
  3973. }
  3974. var pid = ds_main_cond.getColumn(0, "pid");
  3975. if(utlf_isNull(pid)){
  3976. sysf_messageBox("환자를 먼저","C002");
  3977. return;
  3978. }
  3979. var issno = ds_grd_apphist.getColumn(iRow, "issno");
  3980. // 증명서
  3981. if(pFlag == "crtfct" || pFlag == null){
  3982. ds_temp_crtfctinfo.clearData();
  3983. ds_temp_crtfctinfo.addRow();
  3984. var sIssGoalCd = "";
  3985. var sIssGoalNm = "";
  3986. ds_temp_crtfctinfo.setColumn(0, "pid", pid);
  3987. ds_temp_crtfctinfo.setColumn(0, "hngnm", ds_main_appinfo_copyinfo.getColumn(0, "hngnm"));
  3988. ds_temp_crtfctinfo.setColumn(0, "engnm", ds_main_appinfo_copyinfo.getColumn(0, "engnm"));
  3989. ds_temp_crtfctinfo.setColumn(0, "usernm", sysf_getUserInfo("usernm"));
  3990. sIssGoalCd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  3991. if(rdo_lang.value == "E"){
  3992. switch(sIssGoalCd){
  3993. case "01":
  3994. sIssGoalNm = "Hospital Referral";
  3995. break;
  3996. case "02":
  3997. sIssGoalNm = "Insurance company Submission";
  3998. break;
  3999. case "03":
  4000. sIssGoalNm = "Military Submission";
  4001. break;
  4002. case "04":
  4003. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4004. break;
  4005. case "05":
  4006. sIssGoalNm = "Personal Record";
  4007. break;
  4008. case "06":
  4009. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4010. break;
  4011. case "07":
  4012. sIssGoalNm = "Government Submission";
  4013. break;
  4014. case "08":
  4015. sIssGoalNm = "Police Submission";
  4016. break;
  4017. case "09":
  4018. sIssGoalNm = "Court Submission";
  4019. break;
  4020. case "10":
  4021. sIssGoalNm = "Public corporation Submission";
  4022. break;
  4023. case "11":
  4024. sIssGoalNm = "Company submission";
  4025. break;
  4026. case "12":
  4027. sIssGoalNm = "School Submission";
  4028. break;
  4029. case "13":
  4030. sIssGoalNm = "Medical certificate issuance";
  4031. break;
  4032. case "99":
  4033. sIssGoalNm = "Other";
  4034. sIssGoalNm += "("+ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm")+")";
  4035. break;
  4036. }
  4037. ds_temp_crtfctinfo.setColumn(0, "issgoalnm", sIssGoalNm);
  4038. ds_temp_crtfctinfo.setColumn(0, "enghospnm", ds_main_paper.getColumn(0, "enghospnm"));
  4039. } else {
  4040. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4041. ds_temp_crtfctinfo.setColumn(0, "hospnm", ds_main_paper.getColumn(0, "hospnm"));
  4042. if(sIssGoalCd == "99"){ // 기타
  4043. sIssGoalNm += "("+ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm")+")";
  4044. }
  4045. }
  4046. ds_temp_crtfctinfo.setColumn(0, "issgoalnm", sIssGoalNm);
  4047. ds_temp_crtfctinfo.setColumn(0, "addr", ds_main_paper.getColumn(0, "addr"));
  4048. if(ds_temp2_appinfo_copyinfo.getColumn(0, "newcopy") == "Y") // 추가로 사본등록을 신청한 경우
  4049. {
  4050. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4051. }
  4052. else
  4053. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_main_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4054. ds_temp_crtfctinfo.setColumn(0, "issdd", ds_main_appinfo_copyinfo.getColumn(0, "issdt").substr(0,8));
  4055. ds_temp_crtfctinfo.setColumn(0, "nissdd", ds_main_appinfo_copyinfo.getColumn(0, "issdt").substr(0,4) + "." + ds_main_appinfo_copyinfo.getColumn(0, "issdt").substring(4,6)+ "." + ds_main_appinfo_copyinfo.getColumn(0, "issdt").substring(6,8));
  4056. //2008-09-20 이창록 추가 (신청 부수만큼 증명서 출력)
  4057. if(g_inputbox == "Y")
  4058. {
  4059. sEMRAppCopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  4060. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4061. }
  4062. else
  4063. {
  4064. sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  4065. }
  4066. // KNUH_20101223_박성호_start_기관코드추가
  4067. ds_temp_crtfctinfo.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  4068. // KHNU_20101223_end
  4069. var tmpissno = "";
  4070. if(issnoYN != "Y") {
  4071. ds_temp_crtfctinfo.setColumn(0, "issno", issno);
  4072. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4073. rptf_setNodeListToDOM(objDOM, "/root/temp/crtfctinfo", ds_temp_crtfctinfo); // 데이터셋 1
  4074. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4075. var objParam = new Object();
  4076. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4077. var option = "open=1;save=1;directprint=1;printdialog=0;print="+sEMRAppCopies+";zoom=0";
  4078. // jw.choe print 장수 체크 필요!!!
  4079. // 2013.09.05 CYW 증명서 출력시 느린현상 수정
  4080. if(rdo_lang.value == "K") {
  4081. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4082. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option);
  4083. } else if(rdo_lang.value == "E"){
  4084. //exeReportPreview("RPMRC01103", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4085. rptf_exeReportPreview30(["RPMRC01103"],[objParam], option);
  4086. } else {
  4087. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4088. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option);
  4089. }
  4090. } else if(issnoYN == "Y") {
  4091. //var issnolist = instance1.selectNodes("/root/return/return/issno");
  4092. //model.makeNode("/root/temp/crtfctinfo/issno");
  4093. var issnos = ds_return.rowcount;
  4094. var tmpissno1 = "";
  4095. var tmpissno2 = "";
  4096. for(var i = 0; i < ds_return.rowcount; i++) {
  4097. ds_temp_crtfctinfo.setColumn(0, "issno", ds_return.getColumn(i, "issno"));
  4098. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4099. rptf_setNodeListToDOM(objDOM, "/root/temp/crtfctinfo", ds_temp_crtfctinfo); // 데이터셋 1
  4100. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4101. var objParam = new Object();
  4102. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4103. var option = "open=1;save=1;directprint=1;printdialog=0;print="+sEMRAppCopies+";zoom=0";
  4104. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트) 하면서 증명서 출력매수 오류 수정...
  4105. tmpissno1 = ds_return.getColumn(i, "issno");
  4106. if (tmpissno1 != tmpissno2)
  4107. {
  4108. if(g_addstatus == "Y")
  4109. tmpissno = ds_temp_crtfctinfo.getColumn(0, "llissno");
  4110. // 2013.09.05 CYW 증명서 출력시 느린현상 수정
  4111. if(rdo_lang.value == "K") {
  4112. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4113. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option);
  4114. } else if(rdo_lang.value == "E"){
  4115. //exeReportPreview("RPMRC01103", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4116. rptf_exeReportPreview30(["RPMRC01103"],[objParam], option);
  4117. } else {
  4118. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4119. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option);
  4120. }
  4121. }
  4122. tmpissno2 = ds_return.getColumn(i, "issno");
  4123. }
  4124. }
  4125. }
  4126. if(pFlag == "cnfm" || pFlag == null){ // 승락서
  4127. ds_temp_cnfminfo_issinfo.clearData();
  4128. ds_temp_cnfminfo_issinfo.addRow();
  4129. ds_send_reqdata.clearData()
  4130. var nRow = ds_send_reqdata.addRow();
  4131. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(iRow, "pid"));
  4132. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(iRow, "orddd"));
  4133. ds_send_reqdata.setColumn(nRow, "cretno", ds_grd_apphist.getColumn(iRow, "cretno"));
  4134. ds_send_reqdata.setColumn(nRow, "formcd", "0000001127");
  4135. var oParam = {};
  4136. oParam.id = "TRMRC03027";
  4137. oParam.service = "chrtmngtapp.CopyIssMngt";
  4138. oParam.method = "reqGetOCRInfo";
  4139. oParam.inds = "req=ds_send_reqdata";
  4140. oParam.outds = "ds_main_cnfmlist=cnfmlist";
  4141. oParam.async = false;
  4142. oParam.callback = "cf_TRMRC03027";
  4143. tranf_submit(oParam);
  4144. ds_temp_cnfminfo_issinfo.setColumn(0, "seq", ds_main_cnfmlist.getColumn(0, "seq"));
  4145. var formnm = "";
  4146. //model.resetInstanceNode("/root/temp/cnfminfo/issinfo");
  4147. ds_temp_cnfminfo_issinfo.setColumn(0, "pid", pid);
  4148. if(g_addstatus == "Y")
  4149. ds_temp_cnfminfo_issinfo.setColumn(0, "issno", tmpissno);
  4150. else
  4151. ds_temp_cnfminfo_issinfo.setColumn(0, "issno", issno);
  4152. ds_temp_cnfminfo_issinfo.setColumn(0, "orddeptnm", ds_main_appinfo_copyinfo.getColumn(0, "orddeptnm"));
  4153. ds_temp_cnfminfo_issinfo.setColumn(0, "atdoctnm", ds_main_appinfo_copyinfo.getColumn(0, "atdoctnm"));
  4154. ds_temp_cnfminfo_issinfo.setColumn(0, "hngnm", ds_main_appinfo_copyinfo.getColumn(0, "hngnm"));
  4155. ds_temp_cnfminfo_issinfo.setColumn(0, "rrgstno1", ds_main_appinfo_copyinfo.getColumn(0, "rrgstno1"));
  4156. var rrgstno2 = ds_main_appinfo_copyinfo.getColumn(0, "rrgstno2");
  4157. rrgstno2 = rrgstno2.substr(0,1) + "******";
  4158. ds_temp_cnfminfo_issinfo.setColumn(0, "rrgstno2", rrgstno2);
  4159. if(ds_temp2_appinfo_copyinfo.getColumn(0, "newcopy") == "Y") // 추가로 사본등록을 신청한 경우
  4160. {
  4161. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4162. //model.removeNodeset("/root/temp2");
  4163. ds_temp2_appinfo_copyinfo.clearData();
  4164. ds_temp2_appinfo_copyinfo.addRow();
  4165. ds_grd_rcptlist.clearData();
  4166. }
  4167. else
  4168. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_main_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4169. if(g_inputbox == "Y")
  4170. {
  4171. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4172. }
  4173. ds_temp_cnfminfo_issinfo.setColumn(0, "issgoalcd", ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd"));
  4174. ds_temp_cnfminfo_issinfo.setColumn(0, "issgoaletcnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  4175. ds_temp_cnfminfo_issinfo.setColumn(0, "hospnm", ds_main_paper.getColumn(0, "hospnm"));
  4176. var emrordflag = ds_main_appinfo_copyinfo.getColumn(0, "emrordflag");
  4177. var inemrordinfo = ds_grd_inpat.getCaseCount("chk=='Y'");
  4178. if (emrordflag == "O" && inemrordinfo > 0)
  4179. {
  4180. ds_main_appinfo_copyinfo.setColumn(0, "emrordflag", "OI");
  4181. var emrordflag = ds_main_appinfo_copyinfo.getColumn(0, "emrordflag");
  4182. }
  4183. if (emrordflag.indexOf("O") >= 0 || emrordflag.indexOf("A") >= 0){
  4184. ds_temp_cnfminfo_issinfo.setColumn(0, "outflag", "O"); // 에러
  4185. }
  4186. if (emrordflag.indexOf("I") >= 0 || emrordflag.indexOf("A") >= 0){
  4187. ds_temp_cnfminfo_issinfo.setColumn(0, "inflag", "I");
  4188. }
  4189. if (emrordflag.indexOf("E") >= 0 || emrordflag.indexOf("A") >= 0){
  4190. ds_temp_cnfminfo_issinfo.setColumn(0, "erflag", "E");
  4191. }
  4192. ds_temp_cnfminfo_issinfo.setColumn(0, "appdd", ds_main_appinfo_copyinfo.getColumn(0, "appdt").substr(0,8));
  4193. ds_temp_cnfminfo_issinfo.setColumn(0, "issdd", ds_main_appinfo_copyinfo.getColumn(0, "issdt").substr(0,8));
  4194. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  4195. if(ds_grd_outapplist.getColumn(i, "chrtflag") == "P"){
  4196. formnm += "종이차트("+ds_grd_outapplist.getColumn(i, "formnm")+")" + ",";
  4197. }else{
  4198. }
  4199. }
  4200. for(var i = 0; i < ds_main_midissinfo_totemrapplist.rowcount; i++){
  4201. formnm += ds_main_midissinfo_totemrapplist.getColCount(i, "formnm");
  4202. if(!utlf_isNull(formnm)) formnm += ",";
  4203. }
  4204. if(formnm.length > 0)
  4205. formnm = formnm.substring(0, formnm.length - 1)
  4206. // 승낙서 발행 시 상세내역 추가
  4207. formnm = fPrntDetailContents(formnm);
  4208. ds_temp_cnfminfo_issinfo.setColumn(0, "formnm", formnm);
  4209. // 승낙서 출력 셋팅 변경 ( 매수가 많을 경우 Instance양으로 인해 느려지는 현상 처리 ) - 2013.08.19 CYW
  4210. var instcd = "";
  4211. instcd = sysf_getUserInfo("dutplceinstcd");
  4212. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4213. rptf_setNodeListToDOM(objDOM, "/root/temp/cnfminfo/issinfo", ds_temp_cnfminfo_issinfo); // 데이터셋 1
  4214. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4215. var objParam = new Object();
  4216. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4217. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
  4218. if( instcd == "031"){
  4219. //exeReportPreview("RPMRC01101", "XMLSTR", "/root/temp/cnfminfo/issinfo", "", "true","","","","","true","","", "","","","", "", "", "/root/temp/cnfminfo/issinfo");
  4220. rptf_exeReportPreview30(["RPMRC01101"],[objParam], option);
  4221. }else{
  4222. //exeReportPreview("RPMRC01102", "XMLSTR", "/root/temp/cnfminfo/issinfo", "", "true","","","","","true","","", "","","","", "", "", "/root/temp/cnfminfo/issinfo");
  4223. rptf_exeReportPreview30(["RPMRC01102"],[objParam], option);
  4224. }
  4225. var seq = ds_main_cnfmlist.getColumn(0, "seq");
  4226. var pid = ds_main_cnfmlist.getColumn(0, "pid");
  4227. var orddd = ds_main_cnfmlist.getColumn(0, "orddd");
  4228. var cretno = ds_main_cnfmlist.getColumn(0, "cretno");
  4229. var ordtype = ds_main_cnfmlist.getColumn(0, "ordtype");
  4230. var orddeptcd = ds_main_cnfmlist.getColumn(0, "orddeptcd");
  4231. var orddrid = ds_main_cnfmlist.getColumn(0, "orddrid");
  4232. var formcd = "0000001127";
  4233. var formfromdt = ds_main_cnfmlist.getColumn(0, "formfromdt");
  4234. var pagecnt = "1"; //출력장수
  4235. if(!fSaveOCRIF(seq, pid, orddd, cretno, ordtype, orddeptcd, orddrid, formcd, formfromdt, "", "", pagecnt)){
  4236. return;
  4237. }
  4238. }
  4239. }
  4240. // 그리드 열 변경
  4241. function fChangedGridRow()
  4242. {
  4243. sysf_trace("***** fChangedGridRow() *****");
  4244. var iRow = ds_grd_rcptlist.rowposition;
  4245. var totalshrtno = ds_grd_rcptlist.getColumn(iRow, "shtno");
  4246. var totalcopies = ds_grd_rcptlist.getColumn(iRow, "prcptims");
  4247. if(utlf_isNull(totalshrtno) || parseInt(totalshrtno) < 0)
  4248. return false;
  4249. if(utlf_isNull(totalcopies) || parseInt(totalcopies) < 0)
  4250. return false;
  4251. //Event Off
  4252. ds_grd_rcptlist.enableevent = false;
  4253. var totalpapers = parseInt(totalshrtno) * parseInt(totalcopies);
  4254. ds_temp2_appinfo_copyinfo.setColumn(0, "totalpapers", totalpapers);
  4255. var sShtNo= eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4256. var sValue = 0;
  4257. var sCalcScorCd = ds_grd_rcptlist.getColumn(iRow, "calcscorcd");
  4258. var sExtraPrcpTims = 0;
  4259. var currentdate = utlf_getCurrentDate();
  4260. var iStatus = ds_grd_rcptlist.getRowType(iRow);
  4261. if(iStatus == 4){// TF 2 -> XP 4
  4262. if(ds_grd_rcptlist.getColumn(iRow, "shtno") == ds_grd_rcptlist.getColumn(iRow, "oldshtno")){
  4263. //grd_rcptlist.rowStatus(iRow) = 0;
  4264. var arrPostion = new Array();
  4265. arrPostion[0] = iRow;
  4266. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4267. }
  4268. }
  4269. // 전체 매수
  4270. var tmpTotalCopies = fGetTotalCopies();
  4271. var sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4272. if(ds_grd_rcptlist.rowcount > 1)
  4273. {
  4274. if(ds_grd_rcptlist.getColumn(iRow, "defyn") == "DEF" && eval(ds_grd_rcptlist.getColumn(iRow, "shtno")) != 1)
  4275. {
  4276. sysf_messageBox("기본 수가부분은 변경할 수 없습니다. 하단의 추가수가부분을", "I008");
  4277. //model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", "1");
  4278. if(g_DefCnt != 0)
  4279. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  4280. else
  4281. ds_grd_rcptlist.setColumn(iRow, "shtno", g_AddCnt);
  4282. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  4283. return;
  4284. }
  4285. }
  4286. if(ds_grd_rcptlist.getColumn(iRow, "defyn") == "DEF" && eval(ds_grd_rcptlist.getColumn(iRow, "shtno")) > 1)
  4287. {
  4288. if(ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd)
  4289. {
  4290. sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4291. if(sShtNo < 1)
  4292. {
  4293. sysf_messageBox("매수는","I003");
  4294. //model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  4295. ds_grd_rcptlist.setColumn(iRow, "shtno", ds_grd_rcptlist.getColumn(iRow, "oldshtno"));
  4296. if(iStatus == 4){
  4297. //grd_rcptlist.rowStatus(iRow) = 0;
  4298. var arrPostion = new Array();
  4299. arrPostion[0] = iRow;
  4300. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4301. }
  4302. }
  4303. //else if(sShtNo > 10) - 기본수가 보다 클때
  4304. else if(sShtNo > g_DefCnt)
  4305. {
  4306. // if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  4307. if( utlf_isNull(ds_grd_rcptlist.lookup("calcscorcd", "HCDD030", "calcscorcd")) )
  4308. {
  4309. var currentdate = utlf_getCurrentDate();
  4310. var lrow = ds_grd_rcptlist.addRow();
  4311. // 기본 매수 등록
  4312. ds_grd_rcptlist.setColumn((lrow-1), "shtno", g_DefCnt);
  4313. ds_grd_rcptlist.setColumn((lrow-1), "prcpqty", "1");
  4314. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  4315. // 06: 직할병원 - 수가코드(HCDD001)
  4316. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  4317. {
  4318. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  4319. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  4320. // 처방코드(임시로 수가코드로 함)
  4321. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  4322. }
  4323. else
  4324. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  4325. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  4326. if(g_AddCalcscorcd == "HCDD030")
  4327. {
  4328. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  4329. }
  4330. else
  4331. {
  4332. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  4333. }
  4334. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  4335. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  4336. }
  4337. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  4338. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  4339. {
  4340. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  4341. }
  4342. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  4343. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  4344. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  4345. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  4346. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  4347. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  4348. ds_grd_rcptlist.setColumn(lrow, "shtno", (tmpTotalCopies - g_DefCnt));
  4349. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  4350. ds_grd_rcptlist.setColumn(lrow, "prcpqty", (tmpTotalCopies - g_DefCnt));
  4351. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  4352. {
  4353. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  4354. }
  4355. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  4356. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  4357. //grd_rcptlist.addStatus(lrow, "insert");
  4358. var arrPostion = new Array();
  4359. arrPostion[0] = lrow;
  4360. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  4361. }
  4362. else
  4363. {
  4364. var sExtraRow = ds_grd_rcptlist.findRow("calcscorcd", "HCDD030");
  4365. //grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4366. var sExtraStatus = ds_grd_rcptlist.getRowType(sExtraRow);
  4367. if(sExtraStatus != 2 ){
  4368. var arrPostion = new Array();
  4369. arrPostion[0] = sExtraRow;
  4370. grdf_setStatus(grd_rcptlist, "U", arrPostion);//grd_rcptlist.rowStatus(sExtraRow) = 2;
  4371. }
  4372. ds_grd_rcptlist.setColumn(sExtraRow, "shtno", sValue);
  4373. ds_grd_rcptlist.setColumn(sExtraRow, "prcpqty", sValue);
  4374. }
  4375. }
  4376. else
  4377. {
  4378. }
  4379. }
  4380. }
  4381. if(sCalcScorCd == g_FreeCalcscorcd)
  4382. {
  4383. if(sShtNo < 1){
  4384. sysf_messageBox("매수는","I003");
  4385. ds_grd_rcptlist.setColumn(iRow, "shtno",ds_grd_rcptlist.getColumn(iRow, "oldshtno"));
  4386. if(iStatus == 4){
  4387. //grd_rcptlist.rowStatus(iRow) = 0;
  4388. var arrPostion = new Array();
  4389. arrPostion[0] = iRow;
  4390. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4391. }
  4392. sShtNo = ds_grd_rcptlist.getColumn(iRow, "oldshtno");
  4393. }
  4394. if(sShtNo != ds_grd_rcptlist.getColumn(iRow, "prcpqty")){
  4395. ds_grd_rcptlist.setColumn(iRow, "prcpqty", sShtNo);
  4396. }
  4397. }
  4398. else
  4399. { // 추가
  4400. if(sShtNo < 1)
  4401. {
  4402. var iStatus = ds_grd_rcptlist.getRowType(iRow);
  4403. if(iStatus == 2)
  4404. {
  4405. ds_grd_rcptlist.deleteRow(iRow);
  4406. }
  4407. else
  4408. {
  4409. //grd_rcptlist.rowStatus(iRow) = 4;
  4410. var arrPostion = new Array();
  4411. arrPostion[0] = iRow;
  4412. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  4413. }
  4414. }
  4415. else
  4416. {
  4417. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  4418. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  4419. if (colorcalcscoryn == "Y") {
  4420. if (ds_grd_rcptlist.getColumn(iRow, "pdefyn") == "ADD"){
  4421. ds_grd_rcptlist.setColumn(iRow, "pprcpqty", sShtNo);
  4422. }
  4423. } else {
  4424. if (ds_grd_rcptlist.getColumn(iRow, "pdefyn") == "ADD" && (tmpTotalCopies - g_DefCnt) != ds_grd_rcptlist.getColumn(iRow, "pprcpqty")){
  4425. ds_grd_rcptlist.setColumn(iRow, "pprcpqty", (tmpTotalCopies - g_DefCnt));
  4426. }
  4427. }
  4428. }
  4429. }
  4430. //Event On
  4431. ds_grd_rcptlist.enableevent = true;
  4432. }
  4433. function fChangedGridRow_old(){
  4434. var iRow = grd_rcptlist.row;
  4435. var sShtNo= eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  4436. var sValue = 0;
  4437. var sCalcScorCd = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd");
  4438. var sExtraPrcpTims = 0;
  4439. var currentdate = getCurrentDate();
  4440. var iStatus = grd_rcptlist.rowStatus(iRow);
  4441. if(iStatus == 2){
  4442. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno") == model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno")){
  4443. grd_rcptlist.rowStatus(iRow) = 0;
  4444. }
  4445. }
  4446. /*if(sCalcScorCd == "HCDD027"){
  4447. if(sShtNo < 1){
  4448. messageBox("매수는","I003");
  4449. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  4450. if(iStatus == 2){
  4451. grd_rcptlist.rowStatus(iRow) = 0;
  4452. }
  4453. }else if(sShtNo > 10){
  4454. sValue = sShtNo - 10;
  4455. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno","10");
  4456. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == ""){
  4457. grd_rcptlist.additem();
  4458. var lrow = grd_rcptlist.rows - 1;
  4459. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  4460. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  4461. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", "");
  4462. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  4463. {
  4464. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  4465. }
  4466. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", currentdate);
  4467. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno", "0");
  4468. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  4469. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid", model.getValue("/root/main/issinfo/copyinfo/pid"));
  4470. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  4471. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno", model.getValue("/root/main/issinfo/copyinfo/cretno"));
  4472. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", sValue);
  4473. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", sValue);
  4474. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", sValue);
  4475. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcptims", model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  4476. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/copyseqno", model.getValue("/root/main/issinfo/copyinfo/copyseqno"));
  4477. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/issno", model.getValue("/root/main/issinfo/rcptlist[" + iRow + "]/issno"));
  4478. // 처방코드(임시로 수가코드로 함)
  4479. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  4480. grd_rcptlist.addStatus(lrow, "insert");
  4481. }else{
  4482. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4483. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  4484. if(sExtraStatus != 1 && sExtraStatus != 3) grd_rcptlist.rowStatus(sExtraRow) = 2;
  4485. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/shtno", sValue);
  4486. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/prcpqty", sValue);
  4487. }
  4488. }else{
  4489. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4490. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  4491. if(sExtraStatus == 1 || sExtraStatus == 3){
  4492. grd_rcptlist.deleteRow(sExtraRow, true);
  4493. }else{
  4494. grd_rcptlist.rowStatus(sExtraRow) = 4;
  4495. }
  4496. }
  4497. }*/if(sCalcScorCd == "HCDD001"){
  4498. if(sShtNo < 1){
  4499. messageBox("매수는","I003");
  4500. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno"));
  4501. if(iStatus == 2){
  4502. grd_rcptlist.rowStatus(iRow) = 0;
  4503. }
  4504. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  4505. }
  4506. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  4507. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  4508. }
  4509. }else{ // 추가
  4510. if(sShtNo < 1){
  4511. var iStatus = grd_rcptlist.rowStatus(iRow);
  4512. if(iStatus == 1 || iStatus == 3)
  4513. grd_rcptlist.deleteRow(iRow, true);
  4514. else
  4515. grd_rcptlist.rowStatus(iRow) = 4;
  4516. }else{
  4517. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  4518. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  4519. }
  4520. }
  4521. }
  4522. }
  4523. // 검사결과조회 호출
  4524. function fExamRultListCall(){
  4525. sysf_trace("***** fExamRultListCall() *****");
  4526. var pid = ds_main_cond.getColumn(0, "pid");
  4527. if(utlf_isNull(pid)){
  4528. sysf_messageBox("검사결과조회 할 환자를", "C002");
  4529. return;
  4530. }
  4531. var objArgs = new Object();
  4532. objArgs.ds_main_cond = ds_main_cond;
  4533. frmf_open("SMAER00800", "SMAER00800", objArgs, null, null, null, null, null, null, null, null, null, "M");
  4534. //open("SMAER00800","","","","SMAER00800", "/root/main/cond/pid", "/root/send/data/singdata/srchpid");
  4535. }
  4536. // 통합기록조회 호출
  4537. function fMedirecListCall(){
  4538. sysf_trace("***** fMedirecListCall() *****");
  4539. var pid = ds_main_cond.getColumn(0, "pid");
  4540. if(utlf_isNull(pid)){
  4541. sysf_messageBox("통합기록조회를 검색할 환자를", "C002");
  4542. return;
  4543. }
  4544. var wndobj = frmf_findPopup("SMMRI00400");
  4545. if(wndobj != null){
  4546. frmf_setParameter("SMMRI00400_param_pid", pid);
  4547. wndobj.fInitalize();
  4548. }else{
  4549. frmf_setParameter("SMMRI00400_param_pid", pid);
  4550. frmf_open("SMMRI00400", "SMMRI00400", null, null, null, null, null, null, null, null, null, null, "M");
  4551. }
  4552. }
  4553. // 차트대출 호출
  4554. function fChrtRultListCall(){
  4555. sysf_trace("***** fChrtRultListCall() *****");
  4556. var pid = ds_main_cond.getColumn(0, "pid");
  4557. if(utlf_isNull(pid)){
  4558. sysf_messageBox("차트대출조회를 검색할 환자를", "C002");
  4559. return;
  4560. }
  4561. frmf_setParameter("pid", pid);
  4562. frmf_modal("SMMRC00100", "SMMRC00100", null, null, 1, 10, 10, null, null, null, null, null, "M");
  4563. }
  4564. // 차트대출이력 호출
  4565. function fChrtHistRultListCall(){
  4566. sysf_trace("***** fChrtHistRultListCall() *****");
  4567. var pid = ds_main_cond.getColumn(0, "pid");
  4568. if(utlf_isNull(pid)){
  4569. sysf_messageBox("차트대출이력조회를 검색할 환자를", "C002");
  4570. return;
  4571. }
  4572. var wndobj = frmf_findPopup("SMMRC01400");
  4573. if(wndobj != null){
  4574. frmf_setParameter("pid", pid);
  4575. wndobj.fInitalize();
  4576. }else{
  4577. frmf_setParameter("pid", pid);
  4578. frmf_open("SMMRC01400", "SMMRC01400", null, null, 1, 10, 10, null, null, null, null, null, "M");
  4579. }
  4580. }
  4581. // 환자찾기 Popup
  4582. function fPatPopUp(pFlag)
  4583. {
  4584. sysf_trace("***** fPatPopUp("+pFlag+") *****");
  4585. var objColInfo = new Array();
  4586. objColInfo.push({col: "pid", type:"string", size:256});
  4587. objColInfo.push({col: "hngnm", type:"string", size:256});
  4588. objColInfo.push({col: "srchcond", type:"string", size:256});
  4589. objColInfo.push({col: "autoflag", type:"string", size:256});
  4590. objColInfo.push({col: "rrgstno1", type:"string", size:256});
  4591. objColInfo.push({col: "rrgstno2", type:"string", size:256});
  4592. dsf_createDs("ds_temp_patcond", objColInfo);
  4593. ds_temp_patcond.addRow();
  4594. ds_temp_patcond.setColumn(0, "srchcond", pFlag);
  4595. if(pFlag == "1"){
  4596. ds_temp_patcond.setColumn(0, "pid", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "pid")));
  4597. }else{
  4598. ds_temp_patcond.setColumn(0, "pid", "");
  4599. }
  4600. if(pFlag == "2"){
  4601. ds_temp_patcond.setColumn(0, "hngnm", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "hngnm")));
  4602. }else{
  4603. ds_temp_patcond.setColumn(0, "hngnm", "");
  4604. }
  4605. if(pFlag == "3"){
  4606. ds_temp_patcond.setColumn(0, "rrgstno1", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno1")));
  4607. ds_temp_patcond.setColumn(0, "rrgstno2", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno2")));
  4608. }else{
  4609. ds_temp_patcond.setColumn(0, "rrgstno1", "");
  4610. ds_temp_patcond.setColumn(0, "rrgstno2", "");
  4611. }
  4612. ds_temp_patcond.setColumn(0, "autoflag", "Y");
  4613. var objArgs = new Object();
  4614. objArgs.ds_SPPMC02500 = ds_temp_patcond;
  4615. ds_main_cond.clearData();
  4616. ds_main_cond.addRow();
  4617. frmf_modal("SPPMC02500", "SPPMC02500", objArgs, null, "1", "10", "10", null, null, null, null, null, "M");
  4618. if(fIsEmrDept() == false){
  4619. if(pFlag == "2"){
  4620. var globalPid = appf_getPatientInfo("pid");
  4621. var newPid = ds_patinfolist.getColumn(0, "pid");//model.getValue("/root/main/patinfo/patinfolist/pid");
  4622. if(globalPid != newPid) {
  4623. sysf_messageBox("사본신청은 진료중인 환자에 대해서만 신청이 가능합니다.\n등록번호를 상단 환자등록번호와 일치시켜서","C003");
  4624. fInitialize();
  4625. return;
  4626. }
  4627. }
  4628. }
  4629. ds_main_cond.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  4630. ds_main_cond.setColumn(0, "hngnm", ds_patinfolist.getColumn(0, "hngnm"));
  4631. ds_main_cond.setColumn(0, "rrgstno1", ds_patinfolist.getColumn(0, "rrgstno1"));
  4632. ds_main_cond.setColumn(0, "rrgstno2", ds_patinfolist.getColumn(0, "rrgstno2"));
  4633. ds_main_cond.setColumn(0, "sa", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  4634. //환자 이전사본발행내역 조회
  4635. fReqGetBfCopyIssHistList(ipt_pid.text);
  4636. // 진료내역 조회
  4637. fReqGetOutPatHistList(); // 외래진료내역
  4638. fReqGetInPatHistList(); // 입원진료내역
  4639. fReqGetPaperYN();
  4640. ds_main_appinfo_copyinfo.clearData();
  4641. ds_main_appinfo_copyinfo.addRow();
  4642. dsf_setDefaultVal(ds_main_appinfo_copyinfo, "all");
  4643. fSet_enableevent(false);
  4644. ds_main_otherinfo.clearData();
  4645. ds_main_otherinfo.addRow();
  4646. fSet_enableevent(true);
  4647. ds_grd_outapplist.clearData();
  4648. ds_grd_rcptlist.clearData();
  4649. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "N");
  4650. }
  4651. /**
  4652. * @group :
  4653. * @ver :
  4654. * @by : 이창록 2008-09-19 추가
  4655. * @---------------------------------------------------
  4656. * @type : function
  4657. * @access : public
  4658. * @desc : 발급제한 환자 제한
  4659. * @param :
  4660. * @return :
  4661. * @---------------------------------------------------
  4662. */
  4663. function fSaveRcpt()
  4664. {
  4665. var iIssHistRow = grd_isshist.row;
  4666. var msg = messageBox("사본 발급 제한 사유 : "+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/limrem")
  4667. +"\n"+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/hngnm")+"환자는 사본발급 제한 환자입니다\n","Q002");
  4668. if(msg=="6"){
  4669. fSave();
  4670. }else if(msg=="7"){
  4671. return;
  4672. }
  4673. }
  4674. // 수가입력저장
  4675. function fSave()
  4676. {
  4677. sysf_trace("***** fSave() *****");
  4678. //debugger;
  4679. if(ds_grd_apphist.rowposition < 0){
  4680. sysf_messageBox("환자를 먼저", "C002");
  4681. return;
  4682. }
  4683. ds_send_reqdata.clearData();
  4684. var nRow = ds_send_reqdata.addRow();
  4685. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "pid"));
  4686. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "orddd"));
  4687. // KNUH_20101124_박성호_start_사본용도 체크(멀티인 경우 수가입력 안되게)
  4688. var IssUsgeCnt = ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd").split(",").length;
  4689. if (IssUsgeCnt > 1){
  4690. sysf_messageBox("하나의 사본발행목적일 때만 수가입력이 가능합니다. 여러목적으로 할 경우에는 신청내역을 저장하신 후", "I008");
  4691. return;
  4692. }
  4693. // KNUH_20101124_박성호_end
  4694. ds_send_savedata_copyinfo.clearData();
  4695. //ds_send_savedata_copyinfo.addRow();
  4696. ds_send_savedata_outinfo.clearData();
  4697. ds_send_savedata_ininfo.clearData();
  4698. ds_send_savedata_rcptlist.clearData();
  4699. ds_send_savedata_newinput.clearData();
  4700. ds_send_savedata_newinput.addRow();
  4701. if(g_inputbox == "Y")
  4702. {
  4703. ds_send_savedata_newinput.setColumn(0, "newinput", g_inputbox);
  4704. //ds_send_savedata_newinput.setColumn(0, "shtno", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4705. ds_send_savedata_newinput.setColumn(0, "shtno", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4706. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4707. // KNUH_20101001_박성호_start 오류 수정
  4708. // if (tmp = 0)
  4709. if (tmp == 0)
  4710. {
  4711. ds_send_savedata_newinput.setColumn(0, "emrappcopies", 1);
  4712. var delyn = 'Y';
  4713. }
  4714. else
  4715. {
  4716. ds_send_savedata_newinput.setColumn(0, "emrappcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4717. }
  4718. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  4719. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4720. }
  4721. else
  4722. {
  4723. var slow = ds_grd_rcptlist.rowcount - 1;
  4724. ds_send_savedata_newinput.setColumn(0, "newinput", "N");
  4725. ds_send_savedata_newinput.setColumn(0, "shtno", ds_grd_rcptlist.getColumn(slow, "shtno"));
  4726. ds_send_savedata_newinput.setColumn(0, "emrappcopies", ds_grd_rcptlist.getColumn(slow, "prcptims"));
  4727. var tmp = parseInt(ds_grd_rcptlist.getColumn(slow, "shtno")) * parseInt(ds_grd_rcptlist.getColumn(slow, "prcptims"));
  4728. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  4729. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  4730. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  4731. if (colorcalcscoryn == "Y") {
  4732. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4733. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  4734. }
  4735. }
  4736. ds_main_appinfo_copyinfo.setColumn(0, "addstatus", "N");
  4737. ds_send_savedata_newinput.setColumn(0, "prcpflag", "N");
  4738. var iIssHistRow = ds_grd_apphist.rowposition;
  4739. var sIssNo = ds_grd_apphist.getColumn(iIssHistRow, "issno");
  4740. if(!utlf_isNull(sIssNo)) {
  4741. if (delyn == "Y")
  4742. {
  4743. // 반환이면 승락서, 증명서 출력안되도록.
  4744. pntflag = "N";
  4745. }
  4746. else
  4747. {
  4748. //2012/03/14 Start
  4749. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  4750. if(ds_temp_hardcd2.getcolumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  4751. var ret = sysf_messageBox("추가 사본발행 수가를", "Q014");
  4752. }else if(ds_temp_hardcd2.getcolumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  4753. var ret = sysf_messageBox("새로운 발행 번호로 수가를", "Q014");
  4754. break;
  4755. }
  4756. }
  4757. //2012/03/14 End
  4758. if(ret == 6) { // 신규로 등록
  4759. ds_send_savedata_newinput.setColumn(0, "prcpflag", "Y");
  4760. PRCP_REISS = "Y";
  4761. ds_grd_rcptlist.rowposition = 0;
  4762. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  4763. {
  4764. if(ds_grd_rcptlist.getRowType(iRow) == 8)// TF 4 : delete -> XP 8
  4765. {
  4766. ds_grd_rcptlist.deleteRow(iRow);
  4767. }
  4768. }
  4769. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  4770. {
  4771. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  4772. var arrPostion = new Array();
  4773. arrPostion[0] = iRow;
  4774. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  4775. }
  4776. var Tmptotalcopies = ds_main_appinfo_copyinfo.getColumn(0, "totalcopies");
  4777. ds_temp2_appinfo_copyinfo.setColumn(0, "newcopy", "Y");
  4778. ds_main_appinfo_copyinfo.setColumn(0, "addstatus", "Y");
  4779. g_addstatus = "Y";
  4780. if(g_inputbox != "Y") // 서울성모인 경우
  4781. {
  4782. ds_temp2_appinfo_copyinfo.setColumn(0, "totalcopies", ds_grd_rcptlist.getColumn((iRow-1), "shtno"));
  4783. }
  4784. }
  4785. else
  4786. {
  4787. // 반환이면 승락서, 증명서 출력안되도록.
  4788. iRow = ds_grd_rcptlist.rowposition;
  4789. if(ds_grd_rcptlist.getRowType(iRow) == 8) var pntflag = "N";
  4790. // 수가처방
  4791. var iRow = ds_grd_rcptlist.rowposition;
  4792. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  4793. {
  4794. if (ds_grd_rcptlist.getRowType(iRow) == 1) // 상태값이 new일시에 TF 0 : new , XP 1 : nomal
  4795. {
  4796. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  4797. var arrPostion = new Array();
  4798. arrPostion[0] = iRow;
  4799. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  4800. }
  4801. }
  4802. }
  4803. }
  4804. }
  4805. else
  4806. {
  4807. ds_send_savedata_newinput.setColumn(0, "prcpflag", "Y");
  4808. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  4809. {
  4810. if (ds_grd_rcptlist.getRowType(iRow) == 1)
  4811. {
  4812. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  4813. var arrPostion = new Array();
  4814. arrPostion[0] = iRow;
  4815. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  4816. }
  4817. }
  4818. }
  4819. // 의정부인경우 출력 안되게..
  4820. if(g_inputbox == "Y")
  4821. {
  4822. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4823. if (tmp == 0)
  4824. {
  4825. var pntflag = "N";
  4826. }
  4827. }
  4828. //fCopyReSave(); // 부수만큼 신청내역 insert
  4829. // 신청정보
  4830. if (ds_main_appinfo_copyinfo.getColumn(0, "appmanflag") == "9") // 사본발행 신청인이 기타일 경우
  4831. {
  4832. ds_main_appinfo_copyinfo.setColumn(0, "appmannm", ipt_appmannm.text);
  4833. }
  4834. // 사본목적
  4835. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){
  4836. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  4837. }else{
  4838. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"));
  4839. }
  4840. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  4841. /*getUserStateMsg : 사용자 일반의, 퇴직의 조회*/
  4842. var deptcd = ds_main_appinfo_copyinfo.getColumn(0, "orddeptcd");
  4843. var objColInfo = new Array();
  4844. objColInfo.push({col: "userid", type:"string", size:256, val:ds_main_appinfo_copyinfo.getColumn(0, "orddrid")});
  4845. objColInfo.push({col: "deptcd", type:"string", size:256, val:deptcd});
  4846. dsf_createDsRow("ds_send_msg", objColInfo);
  4847. objColInfo = new Array();
  4848. objColInfo.push({col: "chk_msg", type:"string", size:256});
  4849. dsf_createDs("ds_main_msg", objColInfo);
  4850. var oParam = {};
  4851. oParam.id = "TRMMR00001";
  4852. oParam.service = "medirecapp.ComnMediRec";
  4853. oParam.method = "reqGetUserStateMsg";
  4854. oParam.inds = "req=ds_send_msg";
  4855. oParam.outds = "ds_main_msg=msg";
  4856. oParam.async = false;
  4857. oParam.callback = "cf_TRMMR00001";
  4858. tranf_submit(oParam);
  4859. var chk_msg = ds_main_msg.getColumn(0, "chk_msg");
  4860. var nodecnt = ds_main_msg.rowcount;
  4861. if( nodecnt > 0 ){
  4862. sysf_messageBox(chk_msg, "E");
  4863. frmf_setParameter("SPMMR06503_pid", ds_main_appinfo_copyinfo.getColumn(0, "pid") );
  4864. frmf_setParameter("SPMMR06503_orddeptcd", deptcd );
  4865. frmf_setParameter("SPMMR06503_vieworddeptcd", deptcd );
  4866. frmf_setParameter("SPMMR06503_switflag" , "orddrid" );
  4867. var rtn = frmf_modal("SPMMR06503", "SPMMR06503", null, null, null, null, null, null, null, null, null, null, "M");
  4868. //ds_send_chngissinfo dataset return
  4869. if( utlf_isNull(rtn) ){
  4870. sysf_trace(" SPMMR06503 return value Null ");
  4871. }
  4872. if( utlf_isNull(ds_send_chngissinfo.getColumn(0, "orddoctid")) ){
  4873. sysf_messageBox("발행의사를 선택하신 후 진행해주십시오.", "C999");
  4874. return;
  4875. }else{
  4876. ds_main_appinfo_copyinfo.setColumn(0, "orddrid", ds_send_chngissinfo.getColumn(0, "orddoctid"));
  4877. }
  4878. }
  4879. ds_send_savedata_copyinfo.copyData(ds_main_appinfo_copyinfo);
  4880. //model.copyNode("/root/send/savedata/copyinfo", "/root/main/appinfo/copyinfo");
  4881. // emr서식정보
  4882. ds_grd_outapplist.applyChange();
  4883. ds_grd_emrapplist.applyChange();
  4884. // var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist");
  4885. // var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist");
  4886. if(ds_grd_outapplist.rowcount > 0) {
  4887. //model.setValue("/root/send/savedata/outinfo", getNodeListCSV(outinfo));
  4888. ds_send_savedata_outinfo.copyData(ds_grd_outapplist);
  4889. //xp code add : col id change!!!orddeptcd
  4890. if( !utlf_isNull(ds_send_savedata_outinfo.getColumnInfo("orddeptcd")))
  4891. ds_send_savedata_outinfo.updateColID("orddeptcd", "orddeptdcd");
  4892. }
  4893. if(ds_grd_emrapplist.rowcount > 0) {
  4894. //model.setValue("/root/send/savedata/ininfo", getNodeListCSV(ininfo));
  4895. ds_send_savedata_ininfo.copyData(ds_grd_emrapplist);
  4896. //xp code add : col id change!!!orddeptcd
  4897. if( !utlf_isNull(ds_send_savedata_ininfo.getColumnInfo("orddeptcd")))
  4898. ds_send_savedata_ininfo.updateColID("orddeptcd", "orddeptdcd");
  4899. }
  4900. //model.setValue("/root/send/savedata/rcptlist", grd_rcptlist.getUpdateData());
  4901. var oDsUpdate = grdf_getGridUpdateData(grd_rcptlist);
  4902. if( utlf_isNull(oDsUpdate) ) {
  4903. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  4904. }
  4905. grdf_setStatusColumn(oDsUpdate, "status");
  4906. ds_send_savedata_rcptlist.copyData(oDsUpdate, true);
  4907. //sysf_trace(ds_send_savedata_rcptlist.saveXML());
  4908. var sCopySeqNo = ds_main_appinfo_copyinfo.getColumn(0, "copyseqno");
  4909. var sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  4910. if(g_inputbox == "Y")
  4911. {
  4912. // 출력매수 =
  4913. PRIN_COPY = ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno");
  4914. // 출력부수 =
  4915. PRIN_QUNT = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  4916. }
  4917. else
  4918. {
  4919. // 출력매수 =
  4920. PRIN_COPY = ds_grd_rcptlist.getColumn(0, "shtno");
  4921. // 출력부수 =
  4922. PRIN_QUNT = ds_grd_rcptlist.getColumn(0, "prcptims");
  4923. }
  4924. //2012/03/13 Start
  4925. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  4926. if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  4927. if(before_delivefact!=ds_main_appinfo_copyinfo.getColumn(0, "delivefact")){
  4928. after_delivefact=ds_main_appinfo_copyinfo.getColumn(0, "delivefact")
  4929. var chk_result = sysf_messageBox("기타 상세신청내역이 변경되었습니다. 변경된 내역으로 저장 ","S001");
  4930. if(chk_result=="6"){ //변경된 내역으로 저장
  4931. }else if(chk_result=="7"){ //변경되기 전 내역으로 저장
  4932. ds_send_savedata_copyinfo.setColumn(0, "delivefact", before_delivefact);
  4933. }else if(chk_result=="2"){// 수가 입력을 취소
  4934. return;
  4935. }
  4936. }
  4937. }
  4938. break;
  4939. }
  4940. //2012/03/13 End
  4941. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0");
  4942. dsf_setDefaultVal(ds_send_savedata_emrapplist, "formrecseq:0,appseq:0,medirecno:0");
  4943. dsf_setDefaultVal(ds_send_savedata_outinfo, "appseq:0,medirecno:0");
  4944. dsf_setDefaultVal(ds_send_savedata_rcptlist, "prcpno:0,prcphistno:0");
  4945. var oParam = {};
  4946. oParam.id = "TXMRC03006";
  4947. oParam.service = "chrtmngtapp.CopyIssMngt";
  4948. oParam.method = "reqExeCopyIssMngt2";
  4949. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqoutinfo=ds_send_savedata_outinfo reqininfo=ds_send_savedata_ininfo reqrcptlist=ds_send_savedata_rcptlist reqnewinput=ds_send_savedata_newinput";
  4950. oParam.outds = "ds_return=return";
  4951. oParam.async = false;
  4952. oParam.callback = "cf_TXMRC03006";
  4953. tranf_submit(oParam);
  4954. if (arErrorCode.pop("TXMRC03006") > -1)
  4955. {
  4956. ds_main_appinfo_copyinfo.setColumn(0, "totalcopies", PRIN_COPY);
  4957. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", PRIN_QUNT);
  4958. ds_grd_rcptlist.applyChange();
  4959. fReqGetBfCopyIssHistList(ipt_pid.text);
  4960. // 2009.05.29 이경희
  4961. // 이전 사본발행 내역에서 컬럼을 하나 추가함에 따라 검색 범위를 변경
  4962. var iRow = ds_grd_apphist.findRow("copyseqno", sCopySeqNo);
  4963. //grd_apphist.findRow(sCopySeqNo,1,25);
  4964. ds_grd_apphist.rowposition = iRow;
  4965. fIssSearch();
  4966. fAppInfoSearch();
  4967. //alert(pntflag);
  4968. // 신규로 발행번호 발생시 출력.
  4969. if(pntflag != "N") { // 반환된것은 출력되지 않도록
  4970. if(utlf_isNull(sIssNo)){
  4971. //var isslist = instance1.selectNodes("/root/return/return/issno");
  4972. if(ds_return.rowcount > 0) {
  4973. //2012/03/12 칠곡에서는 사본발행 목적을 바꾸더라도 증명서 및 승낙서가 발급되도록
  4974. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  4975. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  4976. issnoYN = "Y";
  4977. }else if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  4978. issnoYN = "";
  4979. }
  4980. }
  4981. }
  4982. //2012/03/12 End
  4983. fPrnt();
  4984. }else if((!utlf_isNull(sIssNo))&&(sEMRAppCopies!=0)){// 사본 반환후 다시 입력시출력 가능
  4985. //var isslist = instance1.selectNodes("/root/return/return/issno");
  4986. if(ds_return.rowcount > 0) {
  4987. issnoYN = "Y";
  4988. }
  4989. fPrnt();
  4990. }
  4991. }
  4992. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  4993. var oprnerId = opener.frmf_getScreenID();
  4994. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  4995. frmf_clearParameter("SMMRC03000_appYN");
  4996. //2012/02/29 칠곡 요청 수가입력 후 자동으로 안닫히도록 수정(5567번)
  4997. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  4998. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  4999. this.close();
  5000. return;
  5001. }
  5002. }
  5003. return;
  5004. //2012/02/29
  5005. }
  5006. else
  5007. {
  5008. sysf_messageBox("저장에", "E009");
  5009. }
  5010. }
  5011. // 이전내역조회
  5012. // jw.choe grd_isshist 화면에 미존재 호출부분 없음.
  5013. function fHistDetilSearch()
  5014. {
  5015. // reqGetCopyIssHist
  5016. // getCopyIssHist
  5017. //model.resetInstanceNode("/root/main/issinfo/copyinfo");
  5018. //model.removeNodeset("/root/main/issinfo/emrapplist");
  5019. //model.removenode("/root/main/issinfo/rcptlist");
  5020. //model.removeNodeset("/root/main/issinfo/rcptlist");
  5021. if (submit("TRMRC01101",false) == true)
  5022. {
  5023. grd_isshist.rebuild();
  5024. grd_isshist.rebuildStyle();
  5025. setRowStyle("grd_isshist","0","입원","ioflagnm");
  5026. }
  5027. else
  5028. {
  5029. messageBox("조회를", "E009");
  5030. }
  5031. grd_isshist.rebuild();
  5032. }
  5033. /**
  5034. * @group :
  5035. * @ver :
  5036. * @by : 이창록 2008-08-29
  5037. * @---------------------------------------------------
  5038. * @type : function
  5039. * @access : public
  5040. * @desc : 체크박스 선택시 전달사항에 전달
  5041. * @param :
  5042. * @return :
  5043. * @---------------------------------------------------
  5044. */
  5045. function fSendChkLabelText(label)
  5046. {
  5047. label += "\n";
  5048. ds_main_appinfo_copyinfo.setColumn(0, "delivefact",txt_delivefact.text+label);
  5049. }
  5050. /**
  5051. * @desc : 화면표시 대상이 EMR + IMG 기록인경우 처리
  5052. * @id :
  5053. * @event : onclick
  5054. * @return : void
  5055. * @authur : 박종훈
  5056. */
  5057. function fEmrImgRec()
  5058. {
  5059. sysf_trace("***** fEmrImgRec() *****");
  5060. //var certnodeList = instance1.selectNodes("/root/tmpinicert2/iniinfo");
  5061. //--20130418 김동준 start(본원과 칠곡 분기)
  5062. var foldernm = "C:/CertrecPrnt" + sysf_getUserInfo("dutplceinstcd");
  5063. var local_path ="";
  5064. local_path = foldernm + "\\";
  5065. //var foldernm = "C:/CertrecPrnt";
  5066. //--20130418 김동준 end
  5067. //sysf_trace("***** ds_tmpinicert2_iniinfo.rowcount : " + ds_tmpinicert2_iniinfo.rowcount);
  5068. if (ds_tmpinicert2_iniinfo.rowcount <= 0)
  5069. return;
  5070. var emrpath = "";
  5071. var emrorddate = "";
  5072. var emrformnm = "";
  5073. var emrformcd = "";
  5074. var emrdeptnm = "";
  5075. var emrdeptcd = "";
  5076. //2013/01/15 Start
  5077. var signemrdeptnm = "";
  5078. var signemrdeptcd = "";
  5079. var signorddeptcd = "";
  5080. var signdeptengabbr = "";
  5081. //2013/01/15 End
  5082. var emrpage = "";
  5083. var emrhiddenmsg = "";
  5084. var k = "";
  5085. var pid = "";
  5086. var ptnm = "";
  5087. var depthngnm = "";
  5088. var deptengabbr = "";
  5089. var icdrdeptengabbr = "";
  5090. var rgstno = "";
  5091. var sa = "";
  5092. var disporddd = "";
  5093. var orddd = "";
  5094. var drid = "";
  5095. var icdrdrid = "";
  5096. var roomcd = "";
  5097. var icdrroomcd = "";
  5098. var ordtype = "";
  5099. var chosflag = "";
  5100. var orddeptcd = "";
  5101. var signflag = "";
  5102. var imgflag = "";
  5103. var langflag = "";
  5104. var tmptreatno = "";
  5105. var tmpiformcd = "";
  5106. var signno = 0;
  5107. var formcd = "";
  5108. var srcformcd = "";
  5109. var formnm = "";
  5110. var formprogflag = "";
  5111. var recdt = "";
  5112. var wardheader = "";
  5113. var dateheader = "";
  5114. var doctorheader = "";
  5115. var printheader = "";
  5116. var pageheader = "";
  5117. var imgepath = "";
  5118. var formrecdt = "";
  5119. var fstrgstdt = "";
  5120. var lastupdtdt = "";
  5121. var staffconfirmdt = "";
  5122. var fstrgstrusrnm = "";
  5123. var lastupdtrusrnm = "";
  5124. var erdt = "";
  5125. var ervisittm = "";
  5126. var staffnmheader = "";
  5127. var staffnm = "";
  5128. var emrrecusrnmheader = "";
  5129. var emrrecusrnm = "";
  5130. var indd = "";
  5131. var dschdd = "";
  5132. var inorddepthngnm = "";
  5133. var dschorddepthngnm = "";
  5134. var incnt = "";
  5135. var mainyn = "";
  5136. var rowno = "";
  5137. //2013/02/15 소스머지 시작(추가)
  5138. var surgeon = "";
  5139. var cover_header = "";
  5140. var cover_footer = "";
  5141. var makebodyfilecnt =0;
  5142. var default_cover_header = "";
  5143. var default_cover_footer = "";
  5144. var cover_header1 = "";
  5145. var cover_header2 = "";
  5146. var cover_header3 = "";
  5147. var cover_header4 = "";
  5148. var cover_header10 = "";
  5149. var cover_footer1 = "";
  5150. var cover_footer2 = "";
  5151. var cover_header_filenm = "";
  5152. var cover_footer_filenm = "";
  5153. //2013/02/15 소스머지 끝
  5154. //2013/02/18 추가
  5155. var trans="";
  5156. var signgenrflag = "";
  5157. //2013/02/18 추가
  5158. //2013/08/20 Start CDIS 해당하는 이미지만 나오도록 수정
  5159. var orderseqno = "";
  5160. var temporderseqno="";
  5161. //2013/08/20 End
  5162. var prtnunm = sysf_getUserInfo("usernm");
  5163. var prtndeptnm = "";
  5164. //var getuseren = getUserInfo("userengnm");
  5165. var getdate = utlf_getCurrentDate();
  5166. var gettime = utlf_getCurrentTime();
  5167. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  5168. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  5169. var prtdt = dateprnt + " " + timeprnt;
  5170. var sDutplcecd = sysf_getUserInfo("dutplcecd");
  5171. fExistFolder(foldernm);
  5172. for(var i = 0; i < ds_tmpinicert2_iniinfo.rowcount; i++)
  5173. {
  5174. orderseqno = ds_tmpinicert2_iniinfo.getColumn(i, "cmc_orderseqno");
  5175. signno = ds_tmpinicert2_iniinfo.getColumn(i, "signno");
  5176. formcd = ds_tmpinicert2_iniinfo.getColumn(i, "formcd");
  5177. srcformcd = ds_tmpinicert2_iniinfo.getColumn(i, "srcformcd");
  5178. formnm = ds_tmpinicert2_iniinfo.getColumn(i, "formnm");
  5179. formprogflag = ds_tmpinicert2_iniinfo.getColumn(i, "formprogflag");
  5180. recdt = ds_tmpinicert2_iniinfo.getColumn(i, "recdt");
  5181. recdd = ds_tmpinicert2_iniinfo.getColumn(i, "recdd");
  5182. if(utlf_isNull(recdd)){ //의사지시기록
  5183. recdd = ds_tmpinicert2_iniinfo.getColumn(i, "recdt");
  5184. }
  5185. if(utlf_isNull(recdd)){//진단검사결과지, 영상의학판독, 핵의학검사지, 미생물검사결과지
  5186. recdd = ds_tmpinicert2_iniinfo.getColumn(i, "orddd");
  5187. }
  5188. trans = ds_tmpinicert2_iniinfo.getColumn(i, "trans");
  5189. pid = ds_tmpinicert2_iniinfo.getColumn(i, "pid");
  5190. ptnm = ds_tmpinicert2_iniinfo.getColumn(i, "ptnm");
  5191. depthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "depthngnm");
  5192. deptengabbr = ds_tmpinicert2_iniinfo.getColumn(i, "deptengabbr");
  5193. icdrdeptengabbr = ds_tmpinicert2_iniinfo.getColumn(i, "icdrdeptengabbr");
  5194. signorddeptcd = ds_tmpinicert2_iniinfo.getColumn(i, "signorddeptcd");
  5195. signdeptengabbr = ds_tmpinicert2_iniinfo.getColumn(i, "signdeptengabbr");
  5196. rgstno = ds_tmpinicert2_iniinfo.getColumn(i, "rgstno");
  5197. sa = ds_tmpinicert2_iniinfo.getColumn(i, "sa");
  5198. disporddd = ds_tmpinicert2_iniinfo.getColumn(i, "disporddd");
  5199. orddd = ds_tmpinicert2_iniinfo.getColumn(i, "orddd");
  5200. drid = ds_tmpinicert2_iniinfo.getColumn(i, "drid");
  5201. icdrdrid = ds_tmpinicert2_iniinfo.getColumn(i, "icdrdrid");
  5202. roomcd = ds_tmpinicert2_iniinfo.getColumn(i, "roomcd");
  5203. icdrroomcd = ds_tmpinicert2_iniinfo.getColumn(i, "icdrroomcd");
  5204. ordtype = ds_tmpinicert2_iniinfo.getColumn(i, "ordtype");
  5205. signgenrflag = ordtype;
  5206. chosflag = ds_tmpinicert2_iniinfo.getColumn(i, "chosflag");
  5207. orddeptcd = ds_tmpinicert2_iniinfo.getColumn(i, "orddeptcd");
  5208. signflag = ds_tmpinicert2_iniinfo.getColumn(i, "signflag");
  5209. imgflag = ds_tmpinicert2_iniinfo.getColumn(i, "imgflag");
  5210. langflag = ds_tmpinicert2_iniinfo.getColumn(i, "langflag");
  5211. formrecdt = ds_tmpinicert2_iniinfo.getColumn(i, "formrecdt");
  5212. formrecdt = formrecdt.toString().toDate().getDateFormat("YYYY/MM/DD");
  5213. fstrgstdt = ds_tmpinicert2_iniinfo.getColumn(i, "fstrgstdt");
  5214. lastupdtdt = ds_tmpinicert2_iniinfo.getColumn(i, "lastupdtdt");
  5215. staffconfirmdt = ds_tmpinicert2_iniinfo.getColumn(i, "staffconfirmdt");
  5216. fstrgstrusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "fstrgstrusrnm");
  5217. /* 20100407-kys-작성자일시 주석처리.
  5218. if(fstrgstrusrnm != "")
  5219. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  5220. */
  5221. lastupdtrusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "lastupdtrusrnm");
  5222. /* 20100407-kys-작성자일시 주석처리.
  5223. if(lastupdtrusrnm != "")
  5224. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  5225. */
  5226. erdt = ds_tmpinicert2_iniinfo.getColumn(i, "erdt");
  5227. ervisittm = ds_tmpinicert2_iniinfo.getColumn(i, "ervisittm");
  5228. staffnm = ds_tmpinicert2_iniinfo.getColumn(i, "staffnm");
  5229. surgeon = staffnm;
  5230. emrrecusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "emrrecusrnm");
  5231. indd = ds_tmpinicert2_iniinfo.getColumn(i, "indd");
  5232. dschdd = ds_tmpinicert2_iniinfo.getColumn(i, "dschdd");
  5233. inorddepthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "inorddepthngnm");
  5234. dschorddepthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "dschorddepthngnm");
  5235. mainyn = ds_tmpinicert2_iniinfo.getColumn(i, "mainyn");
  5236. rowno = ds_tmpinicert2_iniinfo.getColumn(i, "rowno");
  5237. incnt = ds_tmpinicert2_iniinfo.getColumn(i, "incnt");
  5238. if(!utlf_isNull(incnt))
  5239. incnt += " 회차";
  5240. var ininfo = indd + " / " + inorddepthngnm;
  5241. if(!utlf_isNull(erdt))
  5242. ininfo += " (응급실 내원일 : " + erdt + ")";
  5243. var dschinfo = dschdd + " / " + dschorddepthngnm;
  5244. var formnmarr = formnm.split("\n");
  5245. var topformnm = "";
  5246. var botformnm = "";
  5247. if (formnmarr.length == 1)
  5248. {
  5249. topformnm = formnmarr[0];
  5250. }
  5251. else if (formnmarr.length == 2)
  5252. {
  5253. topformnm = formnmarr[0];
  5254. botformnm = formnmarr[1];
  5255. }
  5256. else
  5257. {
  5258. topformnm = formnm;
  5259. }
  5260. //2009-06-02 등록번호 "-" 병원별 제거
  5261. var pidynhcd = ds_init_pidynhcd.getColumn(0, "hardcd");
  5262. if (pidynhcd == "Y")
  5263. {
  5264. for(var k = pid.length; k <= 8; k++)
  5265. {
  5266. if(k < 8){
  5267. pid = "0"+pid;
  5268. }
  5269. }
  5270. var str1 = pid.substr(0, 3);
  5271. var str2 = pid.substr(3, 2);
  5272. var str3 = pid.substr(5, 2);
  5273. var str4 = pid.substr(7, 1);
  5274. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  5275. }
  5276. else
  5277. {
  5278. tmppid = pid;
  5279. }
  5280. if (chosflag == "O" || chosflag == "S")
  5281. {
  5282. wardheader = "진료과 : ";
  5283. }
  5284. else
  5285. {
  5286. wardheader = "병실 : ";
  5287. }
  5288. if (langflag == "KO")
  5289. {
  5290. if (chosflag == "O" || chosflag == "S")
  5291. {
  5292. wardheader = "진료과 : ";
  5293. }
  5294. else
  5295. {
  5296. wardheader = "병실 : ";
  5297. }
  5298. dateheader = "진료기간 : ";
  5299. doctorheader = "주치의 : ";
  5300. printheader = "출력 : ";
  5301. prtndeptnm = sysf_getUserInfo("dutplcenm");
  5302. imgepath = fGetImgPath("KO");
  5303. //imgepath = "com/commonweb/images/biglogo012.jpg"
  5304. pageheader = "페이지 : ";
  5305. }
  5306. else
  5307. {
  5308. if (chosflag == "O" || chosflag == "S")
  5309. {
  5310. wardheader = "Dept : ";
  5311. }
  5312. else
  5313. {
  5314. wardheader = "Room : ";
  5315. }
  5316. dateheader = "Date : ";
  5317. doctorheader = "Doctor : ";
  5318. printheader = "Print date : ";
  5319. prtndeptnm = sysf_getUserInfo("deptengnm");
  5320. imgepath = fGetImgPath("EN");
  5321. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  5322. if (utlf_isNull(prtndeptnm))
  5323. {
  5324. prtndeptnm = sysf_getUserInfo("dutplcenm");
  5325. }
  5326. pageheader = "Page : ";
  5327. }
  5328. if (imgflag == "N")
  5329. {
  5330. ds_datagrid1.insertRow(i);
  5331. ds_datagrid1.setColumn(i, "pid", pid);
  5332. ds_datagrid1.setColumn(i, "signno", signno);
  5333. ds_datagrid1.setColumn(i, "reckind", "01");
  5334. ds_datagrid1.setColumn(i, "readprtflag", "E");
  5335. ds_datagrid1.setColumn(i, "formcd", formcd);
  5336. ds_datagrid1.setColumn(i, "signflag", signflag);
  5337. ds_datagrid1.setColumn(i, "orddd", orddd);
  5338. ds_datagrid1.setColumn(i, "chosflag", chosflag);
  5339. ds_datagrid1.setColumn(i, "refusge", "");
  5340. ds_datagrid1.setColumn(i, "refremark", "");
  5341. if(utlf_isNull(trans))
  5342. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  5343. //이윤주 수정(20140819:최초작성시각 보이는 서식)
  5344. // var fstsrcformcdcnt = ds_temp_hardcd6.getCaseCount("hardcd == '" + srcformcd + "'");
  5345. // if (fstsrcformcdcnt > 0) {
  5346. // if(!utlf_isNull(fstrgstrusrnm)) {
  5347. // fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  5348. // }
  5349. // }
  5350. //이윤주 추가(20140819:기록시점에 헤더정보 표현)
  5351. var icdrsrcformcdcnt = ds_temp_hardcd6.getCaseCount("hardcd == '" + srcformcd + "'");
  5352. if (icdrsrcformcdcnt > 0) {
  5353. deptengabbr = icdrdeptengabbr;
  5354. roomcd = icdrroomcd;
  5355. drid = icdrdrid;
  5356. }
  5357. var instcd = sysf_getUserInfo("dutplceinstcd");
  5358. if( instcd == "032" ){
  5359. switch(srcformcd)
  5360. {
  5361. case "0000000003"://입원초진
  5362. cover_header = "emr/chrtmngtxp/html/cover_header2_032.html";
  5363. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5364. break;
  5365. case "0000000676"://수술기록
  5366. cover_header = "emr/chrtmngtxp/html/cover_header_032.html";
  5367. cover_footer = "emr/chrtmngtxp/html/cover_footer2.html";
  5368. break;
  5369. case "0000000679"://응급실기록
  5370. cover_header = "emr/chrtmngtxp/html/cover_header3_032.html";
  5371. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5372. break;
  5373. case "0000000680"://입퇴원요약
  5374. cover_header = "emr/chrtmngtxp/html/cover_header1_032.html";
  5375. cover_footer = "emr/chrtmngtxp/html/cover_footer1.html";
  5376. break;
  5377. case "0000002022"://마취기록지
  5378. cover_header = "emr/chrtmngtxp/html/cover_header4_032.html";
  5379. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5380. break;
  5381. //case "0000003325"://DSC기록
  5382. case "0000003169"://Brief OP Note
  5383. cover_header = "emr/chrtmngtxp/html/cover_header_032.html";
  5384. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5385. break;
  5386. default:
  5387. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  5388. cover_header = "emr/chrtmngtxp/html/cover_header10_032.html";
  5389. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5390. }else{
  5391. cover_header = "emr/chrtmngtxp/html/cover_header_032.html";
  5392. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5393. }
  5394. break;
  5395. }
  5396. }else{
  5397. switch(srcformcd)
  5398. {
  5399. case "0000000003"://입원초진
  5400. cover_header = "emr/chrtmngtxp/html/cover_header2.html";
  5401. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5402. break;
  5403. case "0000000676"://수술기록
  5404. cover_header = "emr/chrtmngtxp/html/cover_header.html";
  5405. cover_footer = "emr/chrtmngtxp/html/cover_footer2.html";
  5406. break;
  5407. case "0000000679"://응급실기록
  5408. cover_header = "emr/chrtmngtxp/html/cover_header3.html";
  5409. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5410. break;
  5411. case "0000000680"://입퇴원요약
  5412. cover_header = "emr/chrtmngtxp/html/cover_header1.html";
  5413. cover_footer = "emr/chrtmngtxp/html/cover_footer1.html";
  5414. break;
  5415. case "0000002022"://마취기록지
  5416. cover_header = "emr/chrtmngtxp/html/cover_header4.html";
  5417. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5418. break;
  5419. //case "0000003325"://DSC기록
  5420. case "0000003169"://Brief OP Note
  5421. cover_header = "emr/chrtmngtxp/html/cover_header.html";
  5422. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5423. break;
  5424. default:
  5425. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  5426. cover_header = "emr/chrtmngtxp/html/cover_header10.html";
  5427. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5428. }else{
  5429. cover_header = "emr/chrtmngtxp/html/cover_header.html";
  5430. cover_footer = "emr/chrtmngtxp/html/cover_footer.html";
  5431. }
  5432. break;
  5433. }
  5434. }
  5435. trans = "utf16://<!--@\n @DOCUMENT_HOME = " + sysf_getURLprefix() + "/xpapps/ " +
  5436. "\n @COVER_HEADER = " + cover_header +
  5437. "\n @COVER_FOOTER = " + cover_footer +
  5438. "\n @BODY_HEADER = emr/chrtmngtxp/html/body_header.html" +
  5439. "\n @BODY_FOOTER = emr/chrtmngtxp/html/body_footer.html" +
  5440. "\n @DEFAULT_FONT = 굴림 " +
  5441. "\n @DEFAULT_PRE_FONT = 굴림 " +
  5442. "\n @DEFAULT_FONT_SIZE = 9pt " +
  5443. "\n @DEFAULT_PRE_FONT_SIZE = 10pt " +
  5444. "\n @FONT_SIZE_OFFSET = 3px " +
  5445. "\n @USE_NU_SIZE_ADJUST = TRUE " +
  5446. "\n @HIDE_TAG = DIV:MTX_*, DIV:STX_* " +
  5447. "\n @VAR_PAT_NUM = " + tmppid +
  5448. "\n @VAR_CLASS = " + ordtype +
  5449. "\n @VAR_CHART_NAME_TOP = " + topformnm +
  5450. "\n @VAR_CHART_NAME_BOTTOM = " + botformnm +
  5451. "\n @VAR_CHART_NAME_LINE = " + formnm +
  5452. "\n @VAR_PAT_AGE_SEX = " + sa +
  5453. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  5454. "\n @VAR_PAT_JUMIN_NO = " + rgstno +
  5455. "\n @VAR_PAT_NAME = " + ptnm +
  5456. "\n @VAR_PRINT_NAME = " + prtnunm +
  5457. "\n @VAR_PRINT_DEPT = " + prtndeptnm +
  5458. "\n @VAR_WARD_HEAD = " + wardheader + roomcd +
  5459. "\n @VAR_DATE_HEADER = " + dateheader + disporddd +
  5460. "\n @VAR_DOCTOR_HEADER = " + doctorheader + drid +
  5461. "\n @VAR_PRINT_HEADER = " + printheader + prtdt +
  5462. "\n @SYS_PAGE_HEADER = " + pageheader +
  5463. "\n @VAR_HOSP_IMG = " + imgepath +
  5464. "\n @VAR_ORDDATE = " + formrecdt +
  5465. "\n @VAR_ORDDEPT = " + depthngnm +
  5466. "\n @VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm +
  5467. "\n @VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm +
  5468. "\n @VAR_ERDT = " + erdt +
  5469. "\n @VAR_ERVISITTM = " + ervisittm +
  5470. "\n @VAR_STAFFNM_HEADER = " + staffnmheader +
  5471. "\n @VAR_STAFFNM = " + staffnm +
  5472. "\n @VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader +
  5473. "\n @VAR_EMRRECUSRNM = " + emrrecusrnm +
  5474. "\n @VAR_ININFO = " + ininfo +
  5475. "\n @VAR_DSCHINFO = " + dschinfo +
  5476. "\n @VAR_INCNT = " + incnt +
  5477. "\n @VAR_INORDDEPTHNGNM = " + inorddepthngnm +
  5478. "\n @VAR_RECUSERID = " + fstrgstrusrnm +
  5479. "\n @VAR_REALRECDT = " + erdt +
  5480. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  5481. "\n @VAR_DSCHINFO = " + dschinfo +
  5482. "\n @VAR_SURGEON = " + surgeon +
  5483. "\n @OUTPUT_MAGNIFICATION = 1 " +
  5484. "\n@-->\n" + trans + "\n";
  5485. //sysf_trace(trans);
  5486. // jw.choe 차후 비지니스 로직에서 해당부분 확인 필요!
  5487. // SMMRC03000.xjs 6940 Line 동일
  5488. if ( trans.indexOf("/himed/webapps/") > -1 ){
  5489. trans = trans.replace("/himed/webapps/", "/himed2/webapps/");
  5490. }
  5491. if( trans.indexOf("&amp;instcd=&amp;") > -1 ){
  5492. trans = trans.replace("&amp;instcd=&amp;", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;");
  5493. }else if( trans.indexOf("&amp;business_id=") > -1 ){
  5494. trans = trans.replace("&amp;business_id=", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;business_id=");
  5495. }
  5496. emrpath = emrpath + trans.replace(/"/g, "'") + splittxt;
  5497. //emrorddate += orddd + "|";
  5498. emrorddate += recdd + splittxt; //기록일을 보여달라는 의료정보팀 요청
  5499. emrformnm += formnm + splittxt;
  5500. emrformcd += formcd + splittxt;
  5501. emrdeptnm += deptengabbr + splittxt;
  5502. emrdeptcd += orddeptcd + splittxt;
  5503. //2013/01/15 Start
  5504. signemrdeptnm += signdeptengabbr + splittxt;
  5505. signemrdeptcd += signorddeptcd + splittxt;
  5506. //2013/01/15 End
  5507. emrpage += "1"+ splittxt;
  5508. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  5509. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E" + splittxt;
  5510. }
  5511. else
  5512. {
  5513. tmptreatno += signno + ",";
  5514. tmpiformcd += formcd + ",";
  5515. emrpath += "*" + splittxt;
  5516. emrorddate += "*" + splittxt;
  5517. emrformnm += "*" + splittxt;
  5518. emrformcd += "*" + splittxt;
  5519. emrdeptnm += "*" + splittxt;
  5520. emrdeptcd += "*" + splittxt;
  5521. //2013/01/15 Start
  5522. signemrdeptnm += "*" + splittxt;
  5523. signemrdeptcd += "*" + splittxt;
  5524. //2013/01/15 End
  5525. emrpage += "*" + splittxt;
  5526. emrhiddenmsg += "*" + splittxt;
  5527. //2013/08/20 Start
  5528. temporderseqno += orderseqno +",";
  5529. //2013/08/20 End
  5530. }
  5531. }
  5532. //model.removeNodeset("/root/temp/inisend");
  5533. var objColInfo = new Array();
  5534. objColInfo.push({col: "treatno", type:"string", size:256, val:tmptreatno.substring(0, tmptreatno.length - 1)});
  5535. objColInfo.push({col: "docucd", type:"string", size:256, val:tmpiformcd.substring(0, tmpiformcd.length - 1)});
  5536. //2013/08/20 Start 이정택:처방키가 있을시에 처방키에 해당하는 이미지만 가져오도록 소스 추가
  5537. objColInfo.push({col: "cmc_orderseqno", type:"string", size:256, val:temporderseqno.substring(0, temporderseqno.length - 1)});
  5538. //2013/08/20 End
  5539. //objColInfo.push({col: "instcd", type:"string", size:256, val:ds_init_env.getColumn(0, "instcd")});
  5540. dsf_createDsRow("ds_imgrec_iemr", objColInfo);
  5541. objColInfo = new Array();
  5542. objColInfo.push({col: "emrpath", type:"string", size:256});
  5543. objColInfo.push({col: "emrorddate", type:"string", size:256});
  5544. objColInfo.push({col: "emrformnm", type:"string", size:256});
  5545. objColInfo.push({col: "emrformcd", type:"string", size:256});
  5546. objColInfo.push({col: "emrdeptnm", type:"string", size:256});
  5547. objColInfo.push({col: "emrdeptcd", type:"string", size:256});
  5548. objColInfo.push({col: "signemrdeptcd", type:"string", size:256});
  5549. objColInfo.push({col: "signemrdeptnm", type:"string", size:256});
  5550. objColInfo.push({col: "emrpage", type:"string", size:256});
  5551. objColInfo.push({col: "emrhiddenmsg", type:"string", size:256});
  5552. dsf_createDs("ds_temp_inisend", objColInfo);
  5553. ds_temp_inisend.addRow();
  5554. //이미지경로
  5555. ds_temp_inisend.setColumn(0, "emrpath", emrpath.substring(0, emrpath.length - 1));
  5556. iviewerIemr.main_emrpath = ds_temp_inisend.getColumn(0, "emrpath");
  5557. //진료일
  5558. ds_temp_inisend.setColumn(0, "emrorddate", emrorddate.substring(0, emrorddate.length - 1));
  5559. iviewerIemr.main_emrorddate = ds_temp_inisend.getColumn(0, "emrorddate");
  5560. //서식명
  5561. ds_temp_inisend.setColumn(0, "emrformnm", emrformnm.substring(0, emrformnm.length - 1));
  5562. iviewerIemr.main_emrformnm = ds_temp_inisend.getColumn(0, "emrformnm");
  5563. //서식코드
  5564. ds_temp_inisend.setColumn(0, "emrformcd", emrformcd.substring(0, emrformcd.length - 1));
  5565. iviewerIemr.main_emrformcd = ds_temp_inisend.getColumn(0, "emrformcd");
  5566. //진료과
  5567. ds_temp_inisend.setColumn(0, "emrdeptnm", emrdeptnm.substring(0, emrdeptnm.length - 1));
  5568. iviewerIemr.main_emrdeptnm = ds_temp_inisend.getColumn(0, "emrdeptnm");
  5569. //진료과코드
  5570. ds_temp_inisend.setColumn(0, "emrdeptcd", emrdeptcd.substring(0, emrdeptcd.length - 1));
  5571. iviewerIemr.main_emrdeptcd = ds_temp_inisend.getColumn(0, "emrdeptcd");
  5572. //2013/01/15 Start
  5573. //기록과코드
  5574. ds_temp_inisend.setColumn(0, "signemrdeptcd", signemrdeptcd.substring(0, signemrdeptcd.length - 1));
  5575. iviewerIemr.main_signemrdeptcd = ds_temp_inisend.getColumn(0, "signemrdeptcd");
  5576. //기록과
  5577. ds_temp_inisend.setColumn(0, "signemrdeptnm", signemrdeptnm.substring(0, signemrdeptnm.length - 1));
  5578. iviewerIemr.main_signemrdeptnm = ds_temp_inisend.getColumn(0, "signemrdeptnm");
  5579. //2013/01/15 End
  5580. //페이지
  5581. ds_temp_inisend.setColumn(0, "emrpage", emrpage.substring(0, emrpage.length - 1));
  5582. iviewerIemr.main_emrpage = ds_temp_inisend.getColumn(0, "emrpage");
  5583. ds_temp_inisend.setColumn(0, "emrhiddenmsg", emrhiddenmsg.substring(0, emrhiddenmsg.length - 1));
  5584. iviewerIemr.main_emrhiddenmsg = ds_temp_inisend.getColumn(0, "emrhiddenmsg");
  5585. gtmptreatno = tmptreatno;
  5586. gtmpiformcd = tmpiformcd;
  5587. gemrpath = emrpath;
  5588. gemrorddate = emrorddate;
  5589. gemrformnm = emrformnm;
  5590. gemrformcd = emrformcd;
  5591. gemrdeptnm = emrdeptnm;
  5592. gemrdeptcd = emrdeptcd;
  5593. gemrpage = emrpage;
  5594. gemrhiddenmsg = emrhiddenmsg;
  5595. var iemrNode = ds_imgrec_iemr;
  5596. iviewerIemr.searchChart_EMR(iemrNode); // CDIS 및 스캔 이미지 세팅
  5597. if (iviewerIemr.downloadChart() == true)
  5598. {
  5599. // 뷰어 모드 유지 기능 추가 - 20080417
  5600. var ViewMode;
  5601. ViewMode = iviewerIemr.hidden_currentViewMode;
  5602. if (utlf_isNull(ViewMode))
  5603. {
  5604. //2013/02/15 소스머지 시작(수정)
  5605. iviewerIemr.setupChartCopy("ChartView");
  5606. //2013/02/15 소스머지 끝
  5607. }
  5608. else
  5609. {
  5610. //2013/02/15 소스머지 시작(수정)
  5611. iviewerIemr.setupChartCopy(ViewMode);
  5612. //2013/02/15 소스머지 끝
  5613. }
  5614. }
  5615. }
  5616. /* @group : 폴더 존재여부 파악
  5617. * @ver : 2007.01.06
  5618. * @by : 박종훈
  5619. * @-----------------------------------
  5620. * @type : function
  5621. * @access : public
  5622. * @desc :
  5623. */
  5624. function fExistFolder(foldernm)
  5625. {
  5626. //var fso,
  5627. var folder, s;
  5628. //fso = new ActiveXObject("Scripting.FileSystemObject");
  5629. try
  5630. {
  5631. folder = fso.GetFolder(foldernm);
  5632. s = folder.DateCreated;
  5633. if (!utlf_isNull(s))
  5634. {
  5635. fDelFolder(foldernm);
  5636. fMakeFolder(foldernm);
  5637. }
  5638. }
  5639. catch (e)
  5640. {
  5641. fMakeFolder(foldernm);
  5642. }
  5643. }
  5644. /* @group : 폴더 삭제
  5645. * @ver : 2007.01.06
  5646. * @by : 박종훈
  5647. * @-----------------------------------
  5648. * @type : function
  5649. * @access : public
  5650. * @desc :
  5651. */
  5652. function fDelFolder(foldernm)
  5653. {
  5654. // var fso;
  5655. // fso = new ActiveXObject("Scripting.FileSystemObject");
  5656. //20130418 김동준 start try Catch 추가
  5657. try {
  5658. fso.DeleteFolder(foldernm);
  5659. }
  5660. catch(e){
  5661. }
  5662. //20130418 김동준 end
  5663. }
  5664. /* @group : 폴더 생성
  5665. * @ver : 2007.01.06
  5666. * @by : 박종훈
  5667. * @-----------------------------------
  5668. * @type : function
  5669. * @access : public
  5670. * @desc :
  5671. */
  5672. function fMakeFolder(foldernm)
  5673. {
  5674. // var fso = new ActiveXObject("Scripting.FileSystemObject");
  5675. var check = true;
  5676. while(check){
  5677. try
  5678. {
  5679. var a = fso.CreateFolder(foldernm);
  5680. check = false;
  5681. }
  5682. catch (e)
  5683. {
  5684. check = true;
  5685. }
  5686. }
  5687. }
  5688. function fMakeFolder_20130328(foldernm)
  5689. {
  5690. // var fso = new ActiveXObject("Scripting.FileSystemObject");
  5691. var a = fso.CreateFolder(foldernm);
  5692. }
  5693. /**
  5694. * @desc : 사본발행 신청
  5695. * @id :
  5696. * @event : xforms-ready
  5697. * @return : void
  5698. * @authur : 박종훈
  5699. */
  5700. function fAppcopy()
  5701. {
  5702. sysf_trace("***** fAppcopy() *****");
  5703. var appcopykey = iviewerIemr.setCopy(true); //영상뷰어에서의 리턴값
  5704. sysf_trace("***** appcopykey : "+ appcopykey );
  5705. if (!utlf_isNull(appcopykey))
  5706. {
  5707. var copykey = appcopykey.split("|");
  5708. var appkeyArr = copykey[0].split("▦");
  5709. var reckind = ""; //기록, 영상구분(E/I)
  5710. //var chosflag = model.getValue(ref + "[" + rowpos + "]/chosflag");
  5711. if(btn_out.getSelectStatus() == true) {
  5712. var chosflag = "O";
  5713. } else if(btn_in.getSelectStatus() == true) {
  5714. var chosflag = "I";
  5715. }
  5716. var sendval = "";
  5717. var sendformcd = "";
  5718. var tmpval = "";
  5719. var tmpformcd = "";
  5720. var tmptotpage = "";
  5721. appkeyArr = "";
  5722. var copyparam = "";
  5723. var compsignno = "";
  5724. for(var i = 0; i < copykey.length; i++)
  5725. {
  5726. appkeyArr = copykey[i].split("▦");
  5727. reckind = appkeyArr[0];
  5728. if (reckind == "I")
  5729. {
  5730. tmpval = appkeyArr[1];
  5731. tmpformcd = appkeyArr[2];
  5732. tmptotpage = appkeyArr[3];
  5733. }
  5734. else
  5735. {
  5736. tmpval = appkeyArr[2];
  5737. tmpformcd = appkeyArr[1];
  5738. tmptotpage = appkeyArr[16];
  5739. if (compsignno != tmpval)
  5740. {
  5741. compsignno = tmpval;
  5742. }
  5743. else
  5744. {
  5745. continue;
  5746. }
  5747. }
  5748. var objColInfo = new Array();
  5749. objColInfo.push({col: "val", type:"string", size:256, val:tmpval});
  5750. objColInfo.push({col: "formcd", type:"string", size:256, val:tmpformcd});
  5751. objColInfo.push({col: "reckind", type:"string", size:256, val:reckind});
  5752. objColInfo.push({col: "chosflag", type:"string", size:256, val:chosflag});
  5753. objColInfo.push({col: "instcd", type:"string", size:256});
  5754. dsf_createDsRow("ds_copysend", objColInfo);
  5755. objColInfo = new Array();
  5756. objColInfo.push({col: "patnm", type:"string", size:256});
  5757. objColInfo.push({col: "ioflag", type:"string", size:256});
  5758. objColInfo.push({col: "recdd", type:"string", size:256});
  5759. objColInfo.push({col: "formnm", type:"string", size:256});
  5760. objColInfo.push({col: "deptnm", type:"string", size:256});
  5761. objColInfo.push({col: "deptcd", type:"string", size:256});
  5762. objColInfo.push({col: "orddd", type:"string", size:256});
  5763. objColInfo.push({col: "dschdd", type:"string", size:256});
  5764. objColInfo.push({col: "atdoctnm", type:"string", size:256});
  5765. objColInfo.push({col: "atdoctcd", type:"string", size:256});
  5766. objColInfo.push({col: "keyno", type:"string", size:256});
  5767. objColInfo.push({col: "formcd", type:"string", size:256});
  5768. objColInfo.push({col: "cretno", type:"string", size:256});
  5769. dsf_createDsRow("ds_tmpcopyinfo_copyinfo", objColInfo);
  5770. var oParam = {};
  5771. oParam.id = "TRMRI00407";
  5772. oParam.service = "recmngtapp.SystView";
  5773. oParam.method = "reqGetReqCopyInfo";
  5774. oParam.inds = "req=ds_copysend";
  5775. oParam.outds = "ds_tmpcopyinfo_copyinfo=copyinfo";
  5776. oParam.async = false;
  5777. oParam.callback = "cf_TRMRI00407";
  5778. tranf_submit(oParam);
  5779. if (arErrorCode.pop("TRMRI00407") > -1)
  5780. {
  5781. var patid = ds_patinfolist.getColumn(0, "pid");
  5782. var patnm = ds_patinfolist.getColumn(0, "hngnm");
  5783. var ioflag = ds_tmpcopyinfo_copyinfo.getColumn(0, "ioflag");
  5784. var recdd = ds_tmpcopyinfo_copyinfo.getColumn(0, "recdd");
  5785. var formnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "formnm");
  5786. var deptnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "deptnm");
  5787. var deptcd = ds_tmpcopyinfo_copyinfo.getColumn(0, "deptcd");
  5788. var orddd = ds_tmpcopyinfo_copyinfo.getColumn(0, "orddd");
  5789. var dschdd = ds_tmpcopyinfo_copyinfo.getColumn(0, "dschdd");
  5790. var atdoctnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "atdoctnm");
  5791. var atdoctcd = ds_tmpcopyinfo_copyinfo.getColumn(0, "atdoctcd");
  5792. var sex = ds_patinfolist.getColumn(0, "sex");
  5793. var age = ds_patinfolist.getColumn(0, "age");
  5794. }
  5795. copyparam += patid + "▦" + patnm + "▦" + age + "▦" + sex + "▦" + tmptotpage + "▦" + reckind + "▦" + chosflag + "▦" + recdd + "▦" + formnm + "▦"
  5796. + deptnm + "▦" + deptcd + "▦" + orddd + "▦" + dschdd + "▦" + atdoctnm + "▦" + atdoctcd + "▦" + tmpval + "▦" + tmpformcd + "▩";
  5797. }
  5798. this.close();
  5799. return copyparam;
  5800. }
  5801. return "";
  5802. }
  5803. function fCheckAppList() {
  5804. var userinfo = getUserInfo("dutplcecd");
  5805. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  5806. //if(userinfo == "3230000000"){
  5807. if(model.getValue("/root/temp/hardcd/hardcd[hardcd='" + userinfo + "']/hardcd") != "")
  5808. {
  5809. // KNUH_20101124_박성호_end
  5810. var grdoRow = 0;
  5811. var grdcRow = 0;
  5812. var hist_orddd = 0;
  5813. var hist_cretno = 0;
  5814. var hist_indd = 0;
  5815. var copyseqno = 0;
  5816. var issno = 0;
  5817. for( var i = 1 ; i < grd_apphist.rows; i++) {
  5818. hist_orddd = model.getValue("/root/main/apphist/applist["+ i +"]/orddd");
  5819. hist_indd = model.getValue("/root/main/apphist/applist["+ i +"]/orddd");
  5820. hist_cretno = model.getValue("/root/main/apphist/applist["+ i +"]/cretno");
  5821. copyseqno = model.getValue("/root/main/apphist/applist["+ i +"]/copyseqno");
  5822. issno = model.getValue("/root/main/apphist/applist["+ i +"]/copyseqno");
  5823. // 외래 신청내역 check되도록
  5824. for(var j = 1; j < grd_outpat.rows; j++) {
  5825. grdoRow = grd_outpat.findRow(hist_orddd, j, 3);
  5826. grdcRow = grd_outpat.findRow(hist_cretno, j, 2);
  5827. if(grdoRow > 0 && (grdoRow == grdcRow)) model.setValue("/root/main/outpathistlist/outpathistlist["+ j +"]/chk", "Y");
  5828. }
  5829. // 입원 신청내역 check 되도록
  5830. for(var k = 1; k < grd_inapplist.rows; k++) {
  5831. grdoRow = grd_inapplist.findRow(hist_indd, k, 1);
  5832. grdcRow = grd_inapplist.findRow(hist_cretno, k, 6);
  5833. if(grdoRow > 0 && (grdoRow == grdcRow)) {
  5834. model.setValue("/root/main/inpathistlist/inpathistlist["+ k +"]/chk", "Y");
  5835. model.makeValue("/root/main/inpathistlist/inpathistlist["+ k +"]/copyseqno", copyseqno);
  5836. model.makeValue("/root/main/inpathistlist/inpathistlist["+ k +"]/issno", issno);
  5837. }
  5838. }
  5839. }
  5840. }
  5841. }
  5842. // 서식만
  5843. /*function fGetEMRList() {
  5844. model.removeNodeset("/root/send/reqdata");
  5845. ds_send_reqdata.setColumn(nRow, "depth", "3");
  5846. ds_send_reqdata.setColumn(nRow, "label", "-");
  5847. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  5848. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  5849. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  5850. ds_send_reqdata.setColumn(nRow, "testflag", "N");
  5851. if(btn_out.selected) {
  5852. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/outpathistlist/outpathistlist[" + grd_outpat.row + "]/orddd"));
  5853. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  5854. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  5855. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/pid"));
  5856. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/cretno"));
  5857. ds_send_reqdata.setColumn(nRow, "chosflag", "O");
  5858. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  5859. ds_send_reqdata.setColumn(nRow, "ordtype", "O");
  5860. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddeptcd"));
  5861. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  5862. } else if(btn_in.selected) {
  5863. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/inpathistlist/inpathistlist[" + grd_inapplist.row + "]/indd"));
  5864. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  5865. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  5866. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/pid"));
  5867. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/cretno"));
  5868. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  5869. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  5870. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  5871. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/orddeptcd"));
  5872. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  5873. }
  5874. if (submit("TRMRC03026",false))
  5875. {
  5876. }
  5877. btn_save.disabled = false;
  5878. btn_update.disabled = true;
  5879. btn_reappinfo.disabled = true;
  5880. }*/
  5881. // 외래 : 기록조회
  5882. function fGetEMROutTestList() {
  5883. sysf_trace("***** fGetEMROutTestList() *****");
  5884. ds_send_reqdata.clearData();
  5885. var nRow = ds_send_reqdata.addRow();
  5886. ds_send_reqdata.setColumn(nRow, "testflag", "Y");
  5887. ds_grd_outpat.filter("chk=='Y'");
  5888. //var rsrvinfo = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist[chk = 'Y']");
  5889. if(ds_grd_outpat.rowcount < 1) {
  5890. ds_grd_outpat.filter("");
  5891. sysf_messageBox("외래 진료일을 check", "I008");
  5892. return;
  5893. } else{
  5894. ds_tmpinicert2_iniinfo.clearData();
  5895. iviewerIemr.resetInstance_EMR();
  5896. iviewerIemr.cleanViewer();
  5897. dsf_createDs("ds_grd_outpat_rsrvinfo_filter");
  5898. ds_grd_outpat_rsrvinfo_filter.copyData(ds_grd_outpat, true);
  5899. ds_grd_outpat.filter("");
  5900. ds_grd_outpat_rsrvinfo_filter.addColumn("chosflag", "string");
  5901. dsf_setDefaultVal(ds_grd_outpat_rsrvinfo_filter, "all");
  5902. for(var i=0; i<ds_grd_outpat_rsrvinfo_filter.rowcount; i++)
  5903. ds_grd_outpat_rsrvinfo_filter.setColumn(i, "chosflag", ds_grd_outpat_rsrvinfo_filter.getColumn(i, "ordtype"));
  5904. //ds_send_reqdata.setColumn(nRow, "rsrvinfo",getNodeListCSV(rsrvinfo));
  5905. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  5906. ds_send_reqdata.setColumn(nRow, "depth", "3");
  5907. ds_send_reqdata.setColumn(nRow, "label", "-");
  5908. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  5909. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  5910. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  5911. }
  5912. ds_send_reqdata.setColumn(nRow, "scrnid" , "SMMRC03000" );
  5913. ds_send_reqdata.setColumn(nRow, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  5914. if(group1.chk_testinfo.value == "Y") {
  5915. ds_send_reqdata.setColumn(nRow, "testinfo", "Y");
  5916. for( var i = 2; i < 9 ; i++) {
  5917. ds_main_otherinfo.setColumn(0, "testinfo" + i +"", "Y");
  5918. ds_send_reqdata.setColumn(nRow, "testinfo" + i +"", "Y");
  5919. }
  5920. } else {
  5921. if(group1.chk_testinfo2.value == "Y") {
  5922. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  5923. }
  5924. if(group1.chk_testinfo3.value == "Y") {
  5925. ds_send_reqdata.setColumn(nRow, "testinfo3", "Y");
  5926. }
  5927. if(group1.chk_testinfo4.value == "Y") {
  5928. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  5929. }
  5930. if(group1.chk_testinfo5.value == "Y") {
  5931. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  5932. }
  5933. if(group1.chk_testinfo6.value == "Y") {
  5934. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  5935. }
  5936. if(group1.chk_testinfo7.value == "Y") {
  5937. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  5938. }
  5939. if(group1.chk_testinfo8.value == "Y") {
  5940. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  5941. }
  5942. }
  5943. if(group1.chk_prcpinfo.value == "Y") {
  5944. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  5945. }
  5946. // 검사결과만
  5947. if(group1.chk_onlytest.value == "Y") {
  5948. ds_send_reqdata.setColumn(nRow, "onlytest", "Y");
  5949. }
  5950. ds_tmpinicert2_iniinfo.clearData();
  5951. // sysf_trace(ds_grd_outpat_rsrvinfo_filter.saveXML());
  5952. // sysf_trace(ds_send_reqdata.saveXML());
  5953. //xp code add : col id change!!!execprcpuniqno
  5954. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  5955. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  5956. var oParam = {};
  5957. oParam.id = "TRMRC03016";
  5958. oParam.service = "chrtmngtapp.CopyIssMngt";
  5959. oParam.method = "reqGetEMROutTestList";
  5960. oParam.inds = "rsrvinfo=ds_grd_outpat_rsrvinfo_filter req=ds_send_reqdata";
  5961. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  5962. oParam.async = false;
  5963. oParam.callback = "cf_TRMRC03016";
  5964. tranf_submit(oParam);
  5965. if (arErrorCode.pop("TRMRC03016") > -1)
  5966. {
  5967. if( ds_main_otherinfo.getColumn(0, "addimageyn") != "Y" ){
  5968. iviewerIemr.cleanViewer();
  5969. var noimg = "";
  5970. var imgarray = "";
  5971. var certcnt = ds_tmpinicert_iniinfo.rowcount;
  5972. for(var a = 0; a < certcnt ; a++ ){
  5973. var add_imgflag = ds_tmpinicert_iniinfo.getColumn(a, "imgflag");
  5974. var add_formcd = ds_tmpinicert_iniinfo.getColumn(a, "formcd");
  5975. var add_formprogflag = ds_tmpinicert_iniinfo.getColumn(a, "formprogflag");
  5976. if( !utlf_isNull(add_imgflag) ){
  5977. if( add_imgflag != "N" && add_formcd != "Z001" && add_formprogflag != "IMG" ){
  5978. if( a == 0 ){
  5979. noimg = ds_tmpinicert_iniinfo.getColumn(a, "signno");
  5980. }else{
  5981. noimg = noimg + "*" + ds_tmpinicert_iniinfo.getColumn(a, "signno");
  5982. }
  5983. }
  5984. }
  5985. }
  5986. imgarray = noimg.toString().split("*");
  5987. for(var i = 0; i < imgarray.length ; i++ ){
  5988. for(var j = 0; j < certcnt ; j++ ){
  5989. if( imgarray[i] == ds_tmpinicert_iniinfo.getColumn(j, "signno") ){
  5990. var bSucc = ds_tmpinicert_iniinfo.deleteRow(j);
  5991. //ds_tmpinicert_iniinfo.applyChange();
  5992. }
  5993. }
  5994. }
  5995. }
  5996. dsf_copyColInfo(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo);
  5997. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo, "after");
  5998. ds_tmpinicert2_iniinfo.appendData(ds_tmpinicert_iniinfo);
  5999. dsf_setDefaultVal(ds_tmpinicert2_iniinfo, "all");
  6000. }
  6001. btn_reappinfo.enable = false;
  6002. }
  6003. // 입원 : 기록조회
  6004. function fGetEMRInTestList() {
  6005. var supitemindxseq = "";
  6006. var midindxseq = "";
  6007. for(var i = 0; i < grd_inpat.rows; i++ ) {
  6008. if("Y" == ds_grd_inpat.getColumn(i, "chk")) {
  6009. supitemindxseq += ds_grd_inpat.getColumn(i, "supitemindxseq") + ",";
  6010. midindxseq = ds_grd_inpat.getColumn(i, "midindxseq") + ",";
  6011. }
  6012. }
  6013. model.removeNodeset("/root/send/reqdata");
  6014. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/orddd"));
  6015. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/orddd"));
  6016. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/midindxseq"));
  6017. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/pid"));
  6018. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/cretno"));
  6019. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/orddeptcd"));
  6020. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6021. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  6022. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  6023. if(isSearchString(supitemindxseq, "19338") || isSearchString(supitemindxseq, "5162")) {
  6024. if(isSearchString(midindxseq, "19698")) { // 처방(운영)
  6025. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6026. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6027. } else if(isSearchString(midindxseq, "18788")) { // 핵의학
  6028. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6029. } else if(isSearchString(midindxseq, "19697")) { // 미생물
  6030. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6031. } else { // 통합검사결과에 포함되는 검사결과
  6032. if(isSearchString(midindxseq, "11137")) { // 진검
  6033. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6034. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6035. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6036. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6037. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6038. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6039. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6040. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6041. } else if(isSearchString(midindxseq, "11136")) { // 영상
  6042. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6043. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6044. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6045. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6046. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6047. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6048. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6049. } else if(isSearchString(midindxseq, "11133")) { // 내시경
  6050. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6051. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6052. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6053. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6054. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6055. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6056. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  6057. } else if(isSearchString(midindxseq, "11135")) { // 기능
  6058. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6059. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6060. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6061. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6062. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6063. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6064. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  6065. } else {
  6066. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6067. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"));
  6068. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6069. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6070. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6071. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6072. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6073. }
  6074. }
  6075. } else{
  6076. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6077. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"));
  6078. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6079. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6080. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6081. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6082. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6083. }
  6084. if(submit("TRMRC03025")) {
  6085. copyNodeset("/root/tmpinicert2/iniinfo", "/root/tmpinicert/iniinfo");
  6086. fEmrImgRec(); // html
  6087. }
  6088. btn_save.disabled = false;
  6089. btn_update.disabled = true;
  6090. btn_reappinfo.disabled = true;
  6091. }
  6092. // 수진이력
  6093. function fGetPatHist() {
  6094. frmf_setParameter("SPMMR05500_orddeptcd", ds_main_cond.getColumn(0, "orddeptcd"));
  6095. frmf_setParameter("SPMMR05500_pid", ds_main_cond.getColumn(0, "pid"));
  6096. frmf_modal("SPMMR05500", "SPMMR05500", null, null, 1, 10, 10, null, null, null, null, null, "M");
  6097. }
  6098. // 입원결과만
  6099. function fGetEMRTestList() {
  6100. model.removeNodeset("/root/send/reqdata");
  6101. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6102. ds_send_reqdata.setColumn(nRow, "label", "-");
  6103. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6104. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6105. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6106. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6107. if(btn_out.selected) {
  6108. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/outpathistlist/outpathistlist[" + grd_outpat.row + "]/orddd"));
  6109. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6110. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6111. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/pid"));
  6112. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/cretno"));
  6113. ds_send_reqdata.setColumn(nRow, "chosflag", "O");
  6114. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  6115. ds_send_reqdata.setColumn(nRow, "ordtype", "O");
  6116. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddeptcd"));
  6117. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6118. var rsrvinfo = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist[chk = 'Y']");
  6119. model.makeValue("/root/send/search/rsrvinfo",getNodeListCSV(rsrvinfo));
  6120. } else if(btn_in.selected) {
  6121. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/inpathistlist/inpathistlist[" + grd_inapplist.row + "]/indd"));
  6122. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6123. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6124. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/pid"));
  6125. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/cretno"));
  6126. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6127. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  6128. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  6129. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/orddeptcd"));
  6130. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6131. /*ds_main_otherinfo.setColumn(0, "testinfo2", "Y");
  6132. ds_main_otherinfo.setColumn(0, "testinfo6", "Y");
  6133. ds_main_otherinfo.setColumn(0, "testinfo8", "Y");
  6134. ds_main_otherinfo.setColumn(0, "testinfo5", "Y");
  6135. ds_main_otherinfo.setColumn(0, "prcpinfo", "Y");*/
  6136. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6137. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6138. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6139. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6140. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6141. }
  6142. if(chk_testinfo.value == "Y") {
  6143. ds_send_reqdata.setColumn(nRow, "testinfo", "Y");
  6144. for( var i = 2; i < 9 ; i++) {
  6145. ds_main_otherinfo.setColumn(0, "testinfo" + i +"", "Y");
  6146. ds_send_reqdata.setColumn(nRow, "testinfo" + i +"", "Y");
  6147. }
  6148. } else {
  6149. if(chk_testinfo2.value == "Y") {
  6150. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6151. }
  6152. if(chk_testinfo3.value == "Y") {
  6153. ds_send_reqdata.setColumn(nRow, "testinfo3", "Y");
  6154. }
  6155. if(chk_testinfo4.value == "Y") {
  6156. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  6157. }
  6158. if(chk_testinfo5.value == "Y") {
  6159. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6160. }
  6161. if(chk_testinfo6.value == "Y") {
  6162. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6163. }
  6164. if(chk_testinfo7.value == "Y") {
  6165. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  6166. }
  6167. if(chk_testinfo8.value == "Y") {
  6168. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6169. }
  6170. }
  6171. if(chk_prcpinfo.value == "Y") {
  6172. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6173. }
  6174. /*if(param == "PRCP") {
  6175. ds_send_reqdata.setColumn(nRow, "fromdd", model.getValue("/root/main/cond/fromdd"));
  6176. ds_send_reqdata.setColumn(nRow, "todd", model.getValue("/root/main/cond/todd"));
  6177. model.makeValue("")
  6178. }*/
  6179. if (submit("TRMRC03025"))
  6180. {
  6181. }
  6182. btn_save.disabled = false;
  6183. btn_update.disabled = true;
  6184. btn_reappinfo.disabled = true;
  6185. }
  6186. // 처방일만
  6187. function fGetEMRPrcpList() {
  6188. sysf_trace("***** fGetEMRPrcpList() *****");
  6189. ds_send_reqdata.clearData();
  6190. var nRow = ds_send_reqdata.addRow();
  6191. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6192. ds_send_reqdata.setColumn(nRow, "label", "-");
  6193. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6194. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6195. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6196. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6197. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6198. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6199. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6200. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6201. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6202. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6203. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  6204. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_cond.getColumn(0, "fromdd"));
  6205. ds_send_reqdata.setColumn(nRow, "todd", ds_main_cond.getColumn(0, "todd"));
  6206. ds_send_reqdata.setColumn(nRow, "prcpflag", "Y");
  6207. //xp code add : col id change!!!execprcpuniqno
  6208. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  6209. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  6210. var oParam = {};
  6211. oParam.id = "TRMRC03029";
  6212. oParam.service = "chrtmngtapp.CopyIssMngt";
  6213. oParam.method = "reqGetEMRPrcpList";
  6214. oParam.inds = "req=ds_send_reqdata";
  6215. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  6216. oParam.async = false;
  6217. oParam.callback = "cf_TRMRC03029";
  6218. tranf_submit(oParam);
  6219. }
  6220. // 병동위임장
  6221. function fGetInptRoomInfo() {
  6222. ds_send_reqdata.clearData();
  6223. var nRow = ds_send_reqdata.addRow();
  6224. var iRow = ds_grd_apphist.rowposition;
  6225. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(iRow, "pid"));
  6226. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(iRow, "orddd"));
  6227. ds_send_reqdata.setColumn(nRow, "cretno", ds_grd_apphist.getColumn(iRow, "cretno"));
  6228. ds_send_reqdata.setColumn(nRow, "formcd", "0000001127");
  6229. var oParam = {};
  6230. oParam.id = "TRMRC03027";
  6231. oParam.service = "chrtmngtapp.CopyIssMngt";
  6232. oParam.method = "reqGetOCRInfo";
  6233. oParam.inds = "req=ds_send_reqdata";
  6234. oParam.outds = "ds_main_cnfmlist=cnfmlist";
  6235. oParam.async = false;
  6236. oParam.callback = "cf_TRMRC03027";
  6237. tranf_submit(oParam);
  6238. if(arErrorCode.pop("TRMRC03027") > -1) {
  6239. ds_main_cond.setColumn(0, "dschdd", ds_main_cnfmlist.getColumn(0, "dschdd"));
  6240. ds_main_cond.setColumn(0, "roomcd", ds_main_cnfmlist.getColumn(0, "roomcd"));
  6241. }
  6242. }
  6243. // 신청된 사본 발급시 이미지 draw
  6244. function fViewer_back()
  6245. {
  6246. if (grd_apphist.rows<= 1) return;
  6247. if (grd_apphist.row < 1) return;
  6248. var iRow = grd_emrapplist.row;
  6249. if((grd_emrapplist.findRow("E", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1 && grd_emrapplist.findRow("I", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1)
  6250. && (grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1)
  6251. ){
  6252. //messageBox("출력할 EMR 서식이 ","I004");
  6253. return;
  6254. }
  6255. /*if(grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1){
  6256. messageBox("출력할 EMR 서식이 ","I004");
  6257. return;
  6258. }*/
  6259. var pid = model.getValue("/root/main/cond/pid");
  6260. var certinfo = "";
  6261. var intestinfo = "";
  6262. var outtestinfo = "";
  6263. var sChrtFlag = "";
  6264. // 영상 or EMR : 입원
  6265. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  6266. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  6267. sReckeyNo = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno");
  6268. if(sReckeyNo != 0) {
  6269. if(sChrtFlag == "E"){
  6270. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag") + "▩";
  6271. }else if(sChrtFlag == "I"){
  6272. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag") + "▩";
  6273. }
  6274. }
  6275. }
  6276. // 영상 or EMR : 외래
  6277. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  6278. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  6279. sReckeyNo = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno");
  6280. if(sReckeyNo != 0) {
  6281. if(sChrtFlag == "E"){
  6282. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag") + "▩";
  6283. }else if(sChrtFlag == "I"){
  6284. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag") + "▩";
  6285. }
  6286. }
  6287. }
  6288. // 영상 or EMR : 입원
  6289. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  6290. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  6291. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  6292. if(testflag != "-") {
  6293. if(sChrtFlag == "E"){
  6294. intestinfo = intestinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/orddd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag")+ "▩";
  6295. }
  6296. }
  6297. }
  6298. // 영상 or EMR : 외래
  6299. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  6300. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  6301. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  6302. if(testflag != "-") {
  6303. if(sChrtFlag == "E"){
  6304. outtestinfo = outtestinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/orddd")+ "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag")+"▩";
  6305. }
  6306. }
  6307. }
  6308. if (certinfo != "" || intestinfo != "" || outtestinfo != "")
  6309. {
  6310. var certArr = certinfo.split("▩");
  6311. var tmpsignno = ""; //EMR기록 인증번호
  6312. var tmptreatno = ""; //영상차트 키값
  6313. var tmpeformcd = ""; //EMR기록 서식코드
  6314. var tmpiformcd = ""; //영상차트 서식코드
  6315. var ieflag = "";
  6316. var tmpotestflag = "";
  6317. var tmpotestorddd = "";
  6318. var tmpotestcretno = "";
  6319. var tmpotestorddeptcd = "";
  6320. var tmpotestioflag = "";
  6321. var tmptestlist = "";
  6322. var tmpitestflag = "";
  6323. var tmpitestorddd = "";
  6324. var tmpitestcretno = "";
  6325. var tmpitestorddeptcd = "";
  6326. var tmpitestioflag = "";
  6327. var otestorddd = "";
  6328. var otestcretno = "";
  6329. var otestioflag = "";
  6330. var itestorddd = "";
  6331. var itestcretno = "";
  6332. var itestioflag = "";
  6333. var emrpath = "";
  6334. var emrorddate = "";
  6335. var emrformnm = "";
  6336. var emrformcd = "";
  6337. var emrdeptnm = "";
  6338. var emrdeptcd = "";
  6339. var emrpage = "";
  6340. var emrhiddenmsg = "";
  6341. var emrchosflag = "";
  6342. var emrsortno = "";
  6343. for(var i = 0; i < (certArr.length - 1); i++)
  6344. {
  6345. ieflag = certArr[i].split("▦")[0];
  6346. if (ieflag == "I")
  6347. {
  6348. tmptreatno += certArr[i].split("▦")[1]+ ",";
  6349. tmpiformcd += certArr[i].split("▦")[2]+ ",";
  6350. }
  6351. else
  6352. {
  6353. tmpsignno += certArr[i].split("▦")[1]+ ",";
  6354. tmpeformcd += certArr[i].split("▦")[2]+ ",";
  6355. }
  6356. }
  6357. if (tmpsignno != "" || intestinfo != "" || outtestinfo != "") //EMR기록 + 검사결과
  6358. {
  6359. model.removeNodeset("/root/inisend");
  6360. model.removeNodeset("/root/prthist");
  6361. model.makeValue("/root/inisend/signno", tmpsignno.substring(0, tmpsignno.length - 1));
  6362. model.makeValue("/root/inisend/dispall", "Y");
  6363. model.makeValue("/root/inisend/pid", model.getValue("/root/main/cond/pid"));
  6364. var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist[reckeyno = '0' and chrtflag = 'E']");
  6365. var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist[reckeyno = '0' and chrtflag = 'E']");
  6366. model.makeValue("/root/inisend/outinfo" ,getNodeListCSV(outinfo));
  6367. model.makeValue("/root/inisend/ininfo" ,getNodeListCSV(ininfo));
  6368. //if(submit("TRMRI02401"))
  6369. if(submit("TRMRC03020"))
  6370. {
  6371. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  6372. //--20130418 김동준 start(본원과 칠곡 분기)
  6373. var foldernm = "C:/CertrecPrnt" + getUserInfo("dutplceinstcd");
  6374. //var foldernm = "C:/CertrecPrnt";
  6375. //--20130418 김동준 end
  6376. if (certnodeList.length <= 0)
  6377. {
  6378. return;
  6379. }
  6380. //fExistFolder(foldernm);
  6381. var k = "";
  6382. var pid = "";
  6383. var ptnm = "";
  6384. var depthngnm = "";
  6385. var deptengabbr = "";
  6386. var rgstno = "";
  6387. var sa = "";
  6388. var disporddd = "";
  6389. var orddd = "";
  6390. var drid = "";
  6391. var roomcd = "";
  6392. var ordtype = "";
  6393. var chosflag = "";
  6394. var orddeptcd = "";
  6395. var signflag = "";
  6396. var imgflag = "";
  6397. var langflag = "";
  6398. //var tmptreatno = "";
  6399. //var tmpiformcd = "";
  6400. var signno = 0;
  6401. var formcd = "";
  6402. var srcformcd = "";
  6403. var formnm = "";
  6404. var formprogflag = "";
  6405. var recdt = "";
  6406. var wardheader = "";
  6407. var dateheader = "";
  6408. var doctorheader = "";
  6409. var printheader = "";
  6410. var pageheader = "";
  6411. var imgepath = "";
  6412. var formrecdt = "";
  6413. var fstrgstdt = "";
  6414. var lastupdtdt = "";
  6415. var staffconfirmdt = "";
  6416. var fstrgstrusrnm = "";
  6417. var lastupdtrusrnm = "";
  6418. var erdt = "";
  6419. var ervisittm = "";
  6420. var staffnmheader = "";
  6421. var staffnm = "";
  6422. var emrrecusrnmheader = "";
  6423. var emrrecusrnm = "";
  6424. var indd = "";
  6425. var dschdd = "";
  6426. var inorddepthngnm = "";
  6427. var dschorddepthngnm = "";
  6428. var sortno = "";
  6429. var incnt = "";
  6430. var prtnunm = getUserInfo("usernm");
  6431. var prtndeptnm = "";
  6432. //var getuseren = getUserInfo("userengnm");
  6433. var getdate = getCurrentDate();
  6434. var gettime = getCurrentTime();
  6435. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  6436. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  6437. var prtdt = dateprnt + " " + timeprnt;
  6438. /*var item = grdObj.item(grdObj.selectedIndex);
  6439. if(item == null){return;}
  6440. var rowpos = item.index + 1;
  6441. var condflag = model.getValue(ref + "[" + rowpos + "]/condflag");*/
  6442. var sDutplcecd = getUserInfo("dutplcecd");
  6443. srchorgcnt = certnodeList.length;
  6444. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  6445. //if (srchorgcnt < 15 || sDutplcecd == "3230000000")
  6446. if(srchorgcnt < 15 || (model.getValue("/root/temp/hardcd/hardcd[hardcd='" + sDutplcecd + "']/hardcd") != ""))
  6447. {
  6448. // KNUH_20101124_박성호_end
  6449. srchcnt = srchorgcnt;
  6450. }
  6451. else
  6452. {
  6453. srchcnt = 15;
  6454. }
  6455. //openLoadingBar("기록정보");
  6456. fExistFolder(foldernm);
  6457. for(var i = 1; i <= srchcnt; i++)
  6458. {
  6459. signno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signno");
  6460. formcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formcd");
  6461. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/srcformcd");
  6462. formnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formnm");
  6463. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formprogflag");
  6464. recdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdt");
  6465. // 2009.10.27 이경희
  6466. // 사본발행에서 간호경과기록의 기록일자가 보이지 않는 문제점 수정
  6467. recdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdd");
  6468. trans = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/trans");
  6469. pid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid");
  6470. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm");
  6471. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/depthngnm");
  6472. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/deptengabbr");
  6473. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno");
  6474. sa = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sa");
  6475. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/disporddd");
  6476. orddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddd");
  6477. drid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/drid");
  6478. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/roomcd");
  6479. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ordtype");
  6480. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/chosflag");
  6481. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddeptcd");
  6482. signflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signflag");
  6483. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/imgflag");
  6484. langflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/langflag");
  6485. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formrecdt");
  6486. formrecdt = formrecdt.toDate().getDateFormat("YYYY/MM/DD");
  6487. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstdt");
  6488. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtdt");
  6489. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffconfirmdt");
  6490. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  6491. if(fstrgstrusrnm != "")
  6492. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  6493. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  6494. if(lastupdtrusrnm != "")
  6495. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  6496. erdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/erdt");
  6497. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ervisittm");
  6498. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffnm");
  6499. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/emrrecusrnm");
  6500. indd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/indd");
  6501. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschdd");
  6502. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/inorddepthngnm");
  6503. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschorddepthngnm");
  6504. sortno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sortno");
  6505. incnt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/incnt");
  6506. if(incnt != "")
  6507. incnt += " 회차";
  6508. var ininfo = indd + " / " + inorddepthngnm;
  6509. if(erdt != "")
  6510. ininfo += " (응급실 내원일 : " + erdt + ")";
  6511. var dschinfo = dschdd + " / " + dschorddepthngnm;
  6512. var formnmarr = formnm.split("\n");
  6513. var topformnm = "";
  6514. var botformnm = "";
  6515. if (formnmarr.length == 1)
  6516. {
  6517. topformnm = formnmarr[0];
  6518. }
  6519. else if (formnmarr.length == 2)
  6520. {
  6521. topformnm = formnmarr[0];
  6522. botformnm = formnmarr[1];
  6523. }
  6524. else
  6525. {
  6526. topformnm = formnm;
  6527. }
  6528. for(var k = pid.length; k <= 8; k++)
  6529. {
  6530. if(k < 8){
  6531. pid = "0"+pid;
  6532. }
  6533. }
  6534. var str1 = pid.substr(0, 3);
  6535. var str2 = pid.substr(3, 2);
  6536. var str3 = pid.substr(5, 2);
  6537. var str4 = pid.substr(7, 1);
  6538. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  6539. if (chosflag == "O" || chosflag == "S")
  6540. {
  6541. wardheader = "진료과 : ";
  6542. }
  6543. else
  6544. {
  6545. wardheader = "병실 : ";
  6546. }
  6547. if (langflag == "KO")
  6548. {
  6549. if (chosflag == "O" || chosflag == "S")
  6550. {
  6551. wardheader = "진료과 : ";
  6552. }
  6553. else
  6554. {
  6555. wardheader = "병실 : ";
  6556. }
  6557. dateheader = "진료기간 : ";
  6558. doctorheader = "주치의 : ";
  6559. printheader = "출력 : ";
  6560. prtndeptnm = getUserInfo("dutplcenm");
  6561. imgepath = fGetImgPath("KO");
  6562. //imgepath = "com/commonweb/images/biglogo012.jpg"
  6563. pageheader = "페이지 : ";
  6564. }
  6565. else
  6566. {
  6567. if (chosflag == "O" || chosflag == "S")
  6568. {
  6569. wardheader = "Dept : ";
  6570. }
  6571. else
  6572. {
  6573. wardheader = "Room : ";
  6574. }
  6575. dateheader = "Date : ";
  6576. doctorheader = "Doctor : ";
  6577. printheader = "Print date : ";
  6578. prtndeptnm = getUserInfo("deptengnm");
  6579. imgepath = fGetImgPath("EN");
  6580. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  6581. if (prtndeptnm == "" || prtndeptnm == null)
  6582. {
  6583. prtndeptnm = getUserInfo("dutplcenm");
  6584. }
  6585. pageheader = "Page : ";
  6586. }
  6587. ds_datagrid1.setColumn(i, "pid", pid);
  6588. ds_datagrid1.setColumn(i, "signno", signno);
  6589. ds_datagrid1.setColumn(i, "reckind", "01");
  6590. ds_datagrid1.setColumn(i, "readprtflag", "E");
  6591. ds_datagrid1.setColumn(i, "formcd", formcd);
  6592. ds_datagrid1.setColumn(i, "signflag", signflag);
  6593. ds_datagrid1.setColumn(i, "orddd", orddd);
  6594. ds_datagrid1.setColumn(i, "chosflag", chosflag);
  6595. ds_datagrid1.setColumn(i, "refusge", "");
  6596. ds_datagrid1.setColumn(i, "refremark", "");
  6597. if(trans == "")
  6598. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  6599. var ininm = "cmc";
  6600. switch(srcformcd)
  6601. {
  6602. case "0000000001"://외래초진
  6603. case "0000000002"://외래재진
  6604. /* case "0000000003"://입원초진 */
  6605. case "0000000004"://입원경과
  6606. case "0000003325"://DSC기록
  6607. ininm += "_0000000001.ini";
  6608. break;
  6609. case "0000000003"://입원초진 분리 -20100311-kys
  6610. /* 20100309-kys-입원초진 Staff사인 추가-사본 버젼 맞춘후 반영하기로 함-20100310 */
  6611. if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){
  6612. staffnmheader = "◈ Staff작성 및 확인 :";
  6613. if(staffnm != "")
  6614. staffnm += "(" + staffconfirmdt + ")";
  6615. emrrecusrnmheader = "";
  6616. ininm += "_1000000003.ini";
  6617. }else{
  6618. ininm += "_0000000003.ini";
  6619. }
  6620. break;
  6621. case "0000000676"://수술기록
  6622. staffnmheader = "◈ Surgeon :";
  6623. if(staffnm != "")
  6624. staffnm += "(" + staffconfirmdt + ")";
  6625. emrrecusrnmheader = "";
  6626. ininm += "_0000000676.ini";
  6627. break;
  6628. case "0000003169"://Brief OP Note
  6629. staffnmheader = "";
  6630. ininm += "_0000000676.ini";
  6631. break;
  6632. case "0000000680"://입퇴원요약
  6633. staffnmheader = "◈ Staff작성 및 확인 :";
  6634. if(staffnm != "")
  6635. staffnm += "(" + staffconfirmdt + ")";
  6636. emrrecusrnmheader = "◈ 의무기록사 :";
  6637. ininm += "_0000000680.ini";
  6638. break;
  6639. case "0000000679"://응급실기록
  6640. ininm += "_0000000679.ini";
  6641. break;
  6642. default:
  6643. //ininm += "_0000000001.ini";
  6644. if(formprogflag == "-" || formprogflag == "MAIN")
  6645. ininm += "_0000000001.ini";
  6646. else
  6647. ininm += ".ini";
  6648. break;
  6649. }
  6650. //출력메세지 미정의로 임시 막음(2009-06-30 박종훈)
  6651. trans = "<!--% \n %BASE " + getDomain() + "/himed/webapps/ \n %INCLUDE emr/recmngtweb/xrw/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_INORDDEPTHNGNM = " + inorddepthngnm + "\n %-->\n" + trans;
  6652. //trans = "<!--% \n %BASE " + getDomain() + "/himed/webapps/ \n %INCLUDE emr/recmngtweb/xrw/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_PRINT_COPY = " + "이 서식은 사본입니다(원본대조필)" + "\n %-->\n" + trans;
  6653. var fso = new ActiveXObject("Scripting.FileSystemObject");
  6654. if(signno != 0) {
  6655. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML", true, true);
  6656. }else if(signno == 0) {
  6657. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML", true, true);
  6658. }
  6659. a.WriteLine(trans);
  6660. a.Close();
  6661. if(signno != 0) {
  6662. emrpath += foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML|";
  6663. }else if(signno == 0) {
  6664. emrpath += foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML|";
  6665. }
  6666. //emrorddate += orddd + "|";
  6667. emrorddate += recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  6668. emrformnm += formnm + "|";
  6669. emrformcd += formcd + "|";
  6670. emrdeptnm += deptengabbr + "|";
  6671. emrdeptcd += orddeptcd + "|";
  6672. emrpage += "1|";
  6673. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  6674. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  6675. emrchosflag += chosflag + "|";
  6676. emrsortno += emrsortno + "|";
  6677. }
  6678. model.removeNodeset("/root/temp/inisend");
  6679. //이미지경로
  6680. model.makeValue("/root/temp/inisend/emrpath", emrpath.substring(0, emrpath.length - 1));
  6681. //진료일
  6682. model.makeValue("/root/temp/inisend/emrorddate", emrorddate.substring(0, emrorddate.length - 1));
  6683. //서식명
  6684. model.makeValue("/root/temp/inisend/emrformnm", emrformnm.substring(0, emrformnm.length - 1));
  6685. //서식코드
  6686. model.makeValue("/root/temp/inisend/emrformcd", emrformcd.substring(0, emrformcd.length - 1));
  6687. //진료과
  6688. model.makeValue("/root/temp/inisend/emrdeptnm", emrdeptnm.substring(0, emrdeptnm.length - 1));
  6689. //진료과코드
  6690. model.makeValue("/root/temp/inisend/emrdeptcd", emrdeptcd.substring(0, emrdeptcd.length - 1));
  6691. //페이지
  6692. model.makeValue("/root/temp/inisend/emrpage", emrpage.substring(0, emrpage.length - 1));
  6693. model.makeValue("/root/temp/inisend/emrhiddenmsg", emrhiddenmsg.substring(0, emrhiddenmsg.length - 1));
  6694. model.makeValue("/root/temp/inisend/emrchosflag", emrchosflag.substring(0, emrchosflag.length - 1));
  6695. model.makeValue("/root/temp/inisend/emrsortno", emrsortno.substring(0, emrsortno.length - 1));
  6696. }
  6697. model.refresh();
  6698. //chartview에 넘길 노드값 재구성(영상+EMR)
  6699. var treatvar = "";
  6700. var tsignno = "";
  6701. var temrpath = "";
  6702. var temrorddate = "";
  6703. var temrformnm = "";
  6704. var temrformcd = "";
  6705. var temrdeptnm = "";
  6706. var temrdeptcd = "";
  6707. var temrpage = "";
  6708. var temrhiddenmsg = "";
  6709. var outtestArr = outtestinfo.split("▩"); // 검사결과서식
  6710. var intestArr = intestinfo.split("▩"); // 검사결과서식
  6711. if(certArr.length > 1 ) { //EMR 서식이 있는 경우
  6712. for(var i = 0; i < (certArr.length - 1); i++)
  6713. {
  6714. ieflag = certArr[i].split("▦")[0];
  6715. if (ieflag == "I")
  6716. {
  6717. treatvar = "*" + certArr[i].split("▦")[1] + "-" + certArr[i].split("▦")[2];
  6718. temrpath += treatvar + "|";
  6719. temrorddate += treatvar + "|";
  6720. temrformnm += treatvar + "|";
  6721. temrformcd += treatvar + "|";
  6722. temrdeptnm += treatvar + "|";
  6723. temrdeptcd += treatvar + "|";
  6724. temrpage += treatvar + "|";
  6725. temrhiddenmsg += treatvar + "|";
  6726. }
  6727. else
  6728. {
  6729. tsignno = certArr[i].split("▦")[1];
  6730. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  6731. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  6732. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  6733. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  6734. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  6735. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  6736. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  6737. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  6738. var filepathnm = "";
  6739. var orddatenm = "";
  6740. var formnmnm = "";
  6741. var formcdnm = "";
  6742. var deptnmnm = "";
  6743. var deptcdnm = "";
  6744. var pagenm = "";
  6745. var hiddnm = "";
  6746. var chosflagnm = "";
  6747. for (var j = 0; j < filepathnmArr.length; j++)
  6748. {
  6749. filepathnm = filepathnmArr[j];
  6750. orddatenm = orddateArr[j];
  6751. formnmnm = formnmArr[j];
  6752. formcdnm = formcdArr[j];
  6753. deptnmnm = deptnmArr[j];
  6754. deptcdnm = deptcdArr[j];
  6755. pagenm = pageArr[j];
  6756. hiddnm = hiddArr[j];
  6757. if(isSearchString(filepathnm, tsignno))
  6758. {
  6759. temrpath += filepathnm + "|";
  6760. temrorddate += orddatenm + "|";
  6761. temrformnm += formnmnm + "|";
  6762. temrformcd += formcdnm + "|";
  6763. temrdeptnm += deptnmnm + "|";
  6764. temrdeptcd += deptcdnm + "|";
  6765. temrpage += pagenm + "|";
  6766. temrhiddenmsg += hiddnm + "|";
  6767. }
  6768. }
  6769. }
  6770. }
  6771. if(outtestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  6772. for(var i = 0; i < (outtestArr.length - 1); i++)
  6773. {
  6774. tformno = outtestArr[i].split("▦")[5] +"_" + outtestArr[i].split("▦")[4] +"_" + outtestArr[i].split("▦")[2];
  6775. //torddd = outtestArr[i].split("▦")[4];
  6776. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  6777. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  6778. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  6779. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  6780. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  6781. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  6782. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  6783. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  6784. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  6785. for (var j = 0; j < filepathnmArr.length; j++)
  6786. {
  6787. filepathnm = filepathnmArr[j];
  6788. orddatenm = orddateArr[j];
  6789. formnmnm = formnmArr[j];
  6790. formcdnm = formcdArr[j];
  6791. deptnmnm = deptnmArr[j];
  6792. deptcdnm = deptcdArr[j];
  6793. pagenm = pageArr[j];
  6794. hiddnm = hiddArr[j];
  6795. chosflagnm = chosflagArr[j];
  6796. if(chosflagnm == "O") {
  6797. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  6798. {
  6799. temrpath += filepathnm + "|";
  6800. temrorddate += orddatenm + "|";
  6801. temrformnm += formnmnm + "|";
  6802. temrformcd += formcdnm + "|";
  6803. temrdeptnm += deptnmnm + "|";
  6804. temrdeptcd += deptcdnm + "|";
  6805. temrpage += pagenm + "|";
  6806. temrhiddenmsg += hiddnm + "|";
  6807. }
  6808. }
  6809. }
  6810. }
  6811. }
  6812. if(intestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  6813. for(var i = 0; i < (intestArr.length - 1); i++)
  6814. {
  6815. tformno = intestArr[i].split("▦")[5] + "_" + intestArr[i].split("▦")[4] + "_" + intestArr[i].split("▦")[2];
  6816. //torddd = intestArr[i].split("▦")[4];
  6817. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  6818. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  6819. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  6820. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  6821. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  6822. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  6823. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  6824. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  6825. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  6826. for (var j = 0; j < filepathnmArr.length; j++)
  6827. {
  6828. filepathnm = filepathnmArr[j];
  6829. orddatenm = orddateArr[j];
  6830. formnmnm = formnmArr[j];
  6831. formcdnm = formcdArr[j];
  6832. deptnmnm = deptnmArr[j];
  6833. deptcdnm = deptcdArr[j];
  6834. pagenm = pageArr[j];
  6835. hiddnm = hiddArr[j];
  6836. chosflagnm = chosflagArr[j];
  6837. if(chosflagnm == "I") {
  6838. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  6839. {
  6840. temrpath += filepathnm + "|";
  6841. temrorddate += orddatenm + "|";
  6842. temrformnm += formnmnm + "|";
  6843. temrformcd += formcdnm + "|";
  6844. temrdeptnm += deptnmnm + "|";
  6845. temrdeptcd += deptcdnm + "|";
  6846. temrpage += pagenm + "|";
  6847. temrhiddenmsg += hiddnm + "|";
  6848. }
  6849. }
  6850. }
  6851. }
  6852. }
  6853. //sortNodeList("/root/main/grid01/row", "a", "asc");
  6854. } else { // 검사결과서식만 있는 경우
  6855. if(outtestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  6856. for(var i = 0; i < (outtestArr.length - 1); i++)
  6857. {
  6858. tformno = outtestArr[i].split("▦")[5] +"_" + outtestArr[i].split("▦")[4] +"_" + outtestArr[i].split("▦")[2];
  6859. //tformno = outtestArr[i].split("▦")[2];
  6860. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  6861. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  6862. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  6863. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  6864. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  6865. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  6866. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  6867. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  6868. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  6869. for (var j = 0; j < filepathnmArr.length; j++)
  6870. {
  6871. filepathnm = filepathnmArr[j];
  6872. orddatenm = orddateArr[j];
  6873. formnmnm = formnmArr[j];
  6874. formcdnm = formcdArr[j];
  6875. deptnmnm = deptnmArr[j];
  6876. deptcdnm = deptcdArr[j];
  6877. pagenm = pageArr[j];
  6878. hiddnm = hiddArr[j];
  6879. chosflagnm = chosflagArr[j];
  6880. if(chosflagnm == "O") {
  6881. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  6882. {
  6883. temrpath += filepathnm + "|";
  6884. temrorddate += orddatenm + "|";
  6885. temrformnm += formnmnm + "|";
  6886. temrformcd += formcdnm + "|";
  6887. temrdeptnm += deptnmnm + "|";
  6888. temrdeptcd += deptcdnm + "|";
  6889. temrpage += pagenm + "|";
  6890. temrhiddenmsg += hiddnm + "|";
  6891. }
  6892. }
  6893. }
  6894. }
  6895. }
  6896. if(intestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  6897. for(var i = 0; i < (intestArr.length - 1); i++)
  6898. {
  6899. //tformno = intestArr[i].split("▦")[2];
  6900. tformno = intestArr[i].split("▦")[5] + "_" + intestArr[i].split("▦")[4] + "_" + intestArr[i].split("▦")[2];
  6901. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  6902. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  6903. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  6904. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  6905. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  6906. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  6907. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  6908. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  6909. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  6910. for (var j = 0; j < filepathnmArr.length; j++)
  6911. {
  6912. filepathnm = filepathnmArr[j];
  6913. orddatenm = orddateArr[j];
  6914. formnmnm = formnmArr[j];
  6915. formcdnm = formcdArr[j];
  6916. deptnmnm = deptnmArr[j];
  6917. deptcdnm = deptcdArr[j];
  6918. pagenm = pageArr[j];
  6919. hiddnm = hiddArr[j];
  6920. chosflagnm = chosflagArr[j];
  6921. if(chosflagnm == "I") {
  6922. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  6923. {
  6924. temrpath += filepathnm + "|";
  6925. temrorddate += orddatenm + "|";
  6926. temrformnm += formnmnm + "|";
  6927. temrformcd += formcdnm + "|";
  6928. temrdeptnm += deptnmnm + "|";
  6929. temrdeptcd += deptcdnm + "|";
  6930. temrpage += pagenm + "|";
  6931. temrhiddenmsg += hiddnm + "|";
  6932. }
  6933. }
  6934. }
  6935. }
  6936. }
  6937. }
  6938. model.resetInstanceNode("/root/send/iemr");
  6939. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  6940. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  6941. //이미지경로
  6942. model.makeValue("/root/inisend/emrpath", temrpath.substring(0, temrpath.length - 1));
  6943. iviewerIemr.model.setValue("/root/main/emrpath", model.getValue("/root/inisend/emrpath"));
  6944. //진료일
  6945. model.makeValue("/root/inisend/emrorddate", temrorddate.substring(0, temrorddate.length - 1));
  6946. iviewerIemr.model.setValue("/root/main/emrorddate", model.getValue("/root/inisend/emrorddate"));
  6947. //서식명
  6948. model.makeValue("/root/inisend/emrformnm", temrformnm.substring(0, temrformnm.length - 1));
  6949. iviewerIemr.model.setValue("/root/main/emrformnm", model.getValue("/root/inisend/emrformnm"));
  6950. //서식코드
  6951. model.makeValue("/root/inisend/emrformcd", temrformcd.substring(0, temrformcd.length - 1));
  6952. iviewerIemr.model.setValue("/root/main/emrformcd", model.getValue("/root/inisend/emrformcd"));
  6953. //진료과
  6954. model.makeValue("/root/inisend/emrdeptnm", temrdeptnm.substring(0, temrdeptnm.length - 1));
  6955. iviewerIemr.model.setValue("/root/main/emrdeptnm", model.getValue("/root/inisend/emrdeptnm"));
  6956. //진료과코드
  6957. model.makeValue("/root/inisend/emrdeptcd", temrdeptcd.substring(0, temrdeptcd.length - 1));
  6958. iviewerIemr.model.setValue("/root/main/emrdeptcd", model.getValue("/root/inisend/emrdeptcd"));
  6959. //페이지
  6960. model.makeValue("/root/inisend/emrpage", temrpage.substring(0, temrpage.length - 1));
  6961. iviewerIemr.model.setValue("/root/main/emrpage", model.getValue("/root/inisend/emrpage"));
  6962. //히든 메세지
  6963. model.makeValue("/root/inisend/emrhiddenmsg", temrhiddenmsg.substring(0, temrhiddenmsg.length - 1));
  6964. iviewerIemr.model.setValue("/root/main/emrhiddenmsg", model.getValue("/root/inisend/emrhiddenmsg"));
  6965. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  6966. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  6967. if (iviewerIemr.window.javascript.downloadChart() == true)
  6968. {
  6969. // 뷰어 모드 유지 기능 추가 - 20080417
  6970. var ViewMode;
  6971. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  6972. if (ViewMode == null || ViewMode == "")
  6973. {
  6974. iviewerIemr.window.javascript.setupChart("ChartView");
  6975. }
  6976. else
  6977. {
  6978. iviewerIemr.window.javascript.setupChart(ViewMode);
  6979. }
  6980. }
  6981. }
  6982. }
  6983. }
  6984. // 신청된 사본 발급시 이미지 draw
  6985. function fViewer()
  6986. {
  6987. if (grd_apphist.rows<= 1) return;
  6988. if (grd_apphist.row < 1) return;
  6989. var iRow = grd_emrapplist.row;
  6990. if((grd_emrapplist.findRow("E", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1 && grd_emrapplist.findRow("I", 1, grd_emrapplist.colRef("chrtflag"), false, false) == -1)
  6991. && (grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1)
  6992. ){
  6993. //messageBox("출력할 EMR 서식이 ","I004");
  6994. return;
  6995. }
  6996. /*if(grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1){
  6997. messageBox("출력할 EMR 서식이 ","I004");
  6998. return;
  6999. }*/
  7000. var pid = model.getValue("/root/main/cond/pid");
  7001. var certinfo = "";
  7002. var intestinfo = "";
  7003. var outtestinfo = "";
  7004. var sChrtFlag = "";
  7005. lf_getHardCDList("N", 3801, null, ds_init_pidynhcd);
  7006. //mmbfGetHardCodeInfo("/root/send/reqdata", "/root/init/pidynhcd", 3801); // 환자 등록번호에 '0' 처리여부
  7007. var pidynhcd = model.getValue("/root/init/pidynhcd/hardcd/hardcd");
  7008. // 영상 or EMR : 입원
  7009. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  7010. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  7011. sReckeyNo = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno");
  7012. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  7013. if(sReckeyNo != 0) {
  7014. if(sChrtFlag == "E"){
  7015. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag") + "▩";
  7016. }else if(sChrtFlag == "I"){
  7017. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag") + "▩";
  7018. }
  7019. }
  7020. else if(testflag != "-") {
  7021. if(sChrtFlag == "E"){
  7022. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/orddd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag")+ "▩";
  7023. }
  7024. }
  7025. }
  7026. // 영상 or EMR : 외래
  7027. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  7028. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  7029. sReckeyNo = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno");
  7030. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  7031. if(sReckeyNo != 0) {
  7032. if(sChrtFlag == "E" && testflag != "T"){
  7033. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag") + "▩";
  7034. }else if(sChrtFlag == "I"){
  7035. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag") + "▩";
  7036. }
  7037. }
  7038. else if(testflag != "-" && testflag != "T") {
  7039. if(sChrtFlag == "E"){
  7040. certinfo = certinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/orddd")+ "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag")+"▩";
  7041. }
  7042. }
  7043. }
  7044. //alert(certinfo);
  7045. // 영상 or EMR : 입원
  7046. /* for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  7047. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  7048. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  7049. if(testflag != "-") {
  7050. if(sChrtFlag == "E"){
  7051. intestinfo = intestinfo + sChrtFlag + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/formcd") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/orddd") + "▦" + model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/ioflag")+ "▩";
  7052. }
  7053. }
  7054. }*/
  7055. // 영상 or EMR : 외래
  7056. /*for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  7057. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  7058. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  7059. if(testflag != "-") {
  7060. if(sChrtFlag == "E"){
  7061. outtestinfo = outtestinfo + sChrtFlag + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/formcd") + "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag") +"▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/orddd")+ "▦" + model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/ioflag")+"▩";
  7062. }
  7063. }
  7064. }*/
  7065. //alert(certinfo);
  7066. if (certinfo != "")
  7067. {
  7068. var certArr = certinfo.split("▩");
  7069. var tmpsignno = ""; //EMR기록 인증번호
  7070. var tmptreatno = ""; //영상차트 키값
  7071. var tmpeformcd = ""; //EMR기록 서식코드
  7072. var tmpiformcd = ""; //영상차트 서식코드
  7073. var ieflag = "";
  7074. var tmpotestflag = "";
  7075. var tmpotestorddd = "";
  7076. var tmpotestcretno = "";
  7077. var tmpotestorddeptcd = "";
  7078. var tmpotestioflag = "";
  7079. var tmptestlist = "";
  7080. var tmpitestflag = "";
  7081. var tmpitestorddd = "";
  7082. var tmpitestcretno = "";
  7083. var tmpitestorddeptcd = "";
  7084. var tmpitestioflag = "";
  7085. var otestorddd = "";
  7086. var otestcretno = "";
  7087. var otestioflag = "";
  7088. var itestorddd = "";
  7089. var itestcretno = "";
  7090. var itestioflag = "";
  7091. var emrpath = "";
  7092. var emrorddate = "";
  7093. var emrformnm = "";
  7094. var emrformcd = "";
  7095. var emrdeptnm = "";
  7096. var emrdeptcd = "";
  7097. var emrpage = "";
  7098. var emrhiddenmsg = "";
  7099. var emrchosflag = "";
  7100. var emrsortno = "";
  7101. for(var i = 0; i < (certArr.length - 1); i++)
  7102. {
  7103. ieflag = certArr[i].split("▦")[0];
  7104. if (ieflag == "I")
  7105. {
  7106. tmptreatno += certArr[i].split("▦")[1]+ ",";
  7107. tmpiformcd += certArr[i].split("▦")[2]+ ",";
  7108. }
  7109. else
  7110. {
  7111. tmpsignno += certArr[i].split("▦")[1]+ ",";
  7112. tmpeformcd += certArr[i].split("▦")[2]+ ",";
  7113. }
  7114. }
  7115. if (tmpsignno != "") //EMR기록 + 검사결과
  7116. {
  7117. model.removeNodeset("/root/inisend");
  7118. model.removeNodeset("/root/prthist");
  7119. model.makeValue("/root/inisend/signno", tmpsignno.substring(0, tmpsignno.length - 1));
  7120. model.makeValue("/root/inisend/dispall", "Y");
  7121. model.makeValue("/root/inisend/pid", model.getValue("/root/main/cond/pid"));
  7122. var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist[reckeyno = '0' and chrtflag = 'E' and testflag != 'T']");
  7123. var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist[reckeyno = '0' and chrtflag = 'E']");
  7124. model.makeValue("/root/inisend/outinfo" ,getNodeListCSV(outinfo));
  7125. model.makeValue("/root/inisend/ininfo" ,getNodeListCSV(ininfo));
  7126. //if(submit("TRMRI02401"))
  7127. if(submit("TRMRC03020"))
  7128. {
  7129. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  7130. //--20130418 김동준 start(본원과 칠곡 분기)
  7131. var foldernm = "C:/CertrecPrnt" + getUserInfo("dutplceinstcd");
  7132. //var foldernm = "C:/CertrecPrnt";
  7133. //--20130418 김동준 end
  7134. if (certnodeList.length <= 0)
  7135. {
  7136. return;
  7137. }
  7138. //fExistFolder(foldernm);
  7139. var k = "";
  7140. var pid = "";
  7141. var ptnm = "";
  7142. var depthngnm = "";
  7143. var deptengabbr = "";
  7144. var rgstno = "";
  7145. var sa = "";
  7146. var disporddd = "";
  7147. var orddd = "";
  7148. var drid = "";
  7149. var roomcd = "";
  7150. var ordtype = "";
  7151. var chosflag = "";
  7152. var orddeptcd = "";
  7153. var signflag = "";
  7154. var imgflag = "";
  7155. var langflag = "";
  7156. //var tmptreatno = "";
  7157. //var tmpiformcd = "";
  7158. var signno = 0;
  7159. var formcd = "";
  7160. var srcformcd = "";
  7161. var formnm = "";
  7162. var formprogflag = "";
  7163. var recdt = "";
  7164. var wardheader = "";
  7165. var dateheader = "";
  7166. var doctorheader = "";
  7167. var printheader = "";
  7168. var pageheader = "";
  7169. var imgepath = "";
  7170. var formrecdt = "";
  7171. var fstrgstdt = "";
  7172. var lastupdtdt = "";
  7173. var staffconfirmdt = "";
  7174. var fstrgstrusrnm = "";
  7175. var lastupdtrusrnm = "";
  7176. var erdt = "";
  7177. var ervisittm = "";
  7178. var staffnmheader = "";
  7179. var staffnm = "";
  7180. var emrrecusrnmheader = "";
  7181. var emrrecusrnm = "";
  7182. var indd = "";
  7183. var dschdd = "";
  7184. var inorddepthngnm = "";
  7185. var dschorddepthngnm = "";
  7186. var sortno = "";
  7187. var incnt = "";
  7188. var prtnunm = getUserInfo("usernm");
  7189. var prtndeptnm = "";
  7190. //var getuseren = getUserInfo("userengnm");
  7191. var getdate = getCurrentDate();
  7192. var gettime = getCurrentTime();
  7193. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  7194. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  7195. var prtdt = dateprnt + " " + timeprnt;
  7196. /*var item = grdObj.item(grdObj.selectedIndex);
  7197. if(item == null){return;}
  7198. var rowpos = item.index + 1;
  7199. var condflag = model.getValue(ref + "[" + rowpos + "]/condflag");*/
  7200. var sDutplcecd = getUserInfo("dutplcecd");
  7201. srchorgcnt = certnodeList.length;
  7202. srchcnt = srchorgcnt;
  7203. /*if (srchorgcnt < 15 || sDutplcecd == "3230000000")
  7204. srchcnt = srchorgcnt;
  7205. else
  7206. srchcnt = 15;*/
  7207. //openLoadingBar("기록정보");
  7208. fExistFolder(foldernm);
  7209. for(var i = 1; i <= srchcnt; i++)
  7210. {
  7211. signno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signno");
  7212. formcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formcd");
  7213. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/srcformcd");
  7214. formnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formnm");
  7215. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formprogflag");
  7216. recdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdt");
  7217. // 2009.10.27 이경희
  7218. // 사본발행에서 간호경과기록의 기록일자가 보이지 않는 문제점 수정
  7219. recdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdd");
  7220. trans = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/trans");
  7221. pid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid");
  7222. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm");
  7223. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/depthngnm");
  7224. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/deptengabbr");
  7225. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno");
  7226. sa = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sa");
  7227. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/disporddd");
  7228. orddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddd");
  7229. drid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/drid");
  7230. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/roomcd");
  7231. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ordtype");
  7232. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/chosflag");
  7233. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddeptcd");
  7234. signflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signflag");
  7235. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/imgflag");
  7236. langflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/langflag");
  7237. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formrecdt");
  7238. formrecdt = formrecdt.toDate().getDateFormat("YYYY/MM/DD");
  7239. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstdt");
  7240. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtdt");
  7241. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffconfirmdt");
  7242. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  7243. /* 20100407-kys-작성자일시 주석처리.
  7244. if(fstrgstrusrnm != "")
  7245. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  7246. */
  7247. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  7248. /* 20100407-kys-작성자일시 주석처리.
  7249. if(lastupdtrusrnm != "")
  7250. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  7251. */
  7252. erdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/erdt");
  7253. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ervisittm");
  7254. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffnm");
  7255. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/emrrecusrnm");
  7256. indd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/indd");
  7257. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschdd");
  7258. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/inorddepthngnm");
  7259. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschorddepthngnm");
  7260. sortno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sortno");
  7261. incnt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/incnt");
  7262. if(incnt != "")
  7263. incnt += " 회차";
  7264. var ininfo = indd + " / " + inorddepthngnm;
  7265. if(erdt != "")
  7266. ininfo += " (응급실 내원일 : " + erdt + ")";
  7267. var dschinfo = dschdd + " / " + dschorddepthngnm;
  7268. var formnmarr = formnm.split("\n");
  7269. var topformnm = "";
  7270. var botformnm = "";
  7271. if (formnmarr.length == 1)
  7272. {
  7273. topformnm = formnmarr[0];
  7274. }
  7275. else if (formnmarr.length == 2)
  7276. {
  7277. topformnm = formnmarr[0];
  7278. botformnm = formnmarr[1];
  7279. }
  7280. else
  7281. {
  7282. topformnm = formnm;
  7283. }
  7284. if (pidynhcd == "Y")
  7285. {
  7286. for(var k = pid.length; k <= 8; k++)
  7287. {
  7288. if(k < 8){
  7289. pid = "0"+pid;
  7290. }
  7291. }
  7292. var str1 = pid.substr(0, 3);
  7293. var str2 = pid.substr(3, 2);
  7294. var str3 = pid.substr(5, 2);
  7295. var str4 = pid.substr(7, 1);
  7296. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  7297. }
  7298. else
  7299. {
  7300. tmppid = pid;
  7301. }
  7302. /*
  7303. for(var k = pid.length; k <= 8; k++)
  7304. {
  7305. if(k < 8){
  7306. pid = "0"+pid;
  7307. }
  7308. }
  7309. var str1 = pid.substr(0, 3);
  7310. var str2 = pid.substr(3, 2);
  7311. var str3 = pid.substr(5, 2);
  7312. var str4 = pid.substr(7, 1);
  7313. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  7314. */
  7315. if (chosflag == "O" || chosflag == "S")
  7316. {
  7317. wardheader = "진료과 : ";
  7318. }
  7319. else
  7320. {
  7321. wardheader = "병실 : ";
  7322. }
  7323. if (langflag == "KO")
  7324. {
  7325. if (chosflag == "O" || chosflag == "S")
  7326. {
  7327. wardheader = "진료과 : ";
  7328. }
  7329. else
  7330. {
  7331. wardheader = "병실 : ";
  7332. }
  7333. dateheader = "진료기간 : ";
  7334. doctorheader = "주치의 : ";
  7335. printheader = "출력 : ";
  7336. prtndeptnm = getUserInfo("dutplcenm");
  7337. imgepath = fGetImgPath("KO");
  7338. //imgepath = "com/commonweb/images/biglogo012.jpg"
  7339. pageheader = "페이지 : ";
  7340. }
  7341. else
  7342. {
  7343. if (chosflag == "O" || chosflag == "S")
  7344. {
  7345. wardheader = "Dept : ";
  7346. }
  7347. else
  7348. {
  7349. wardheader = "Room : ";
  7350. }
  7351. dateheader = "Date : ";
  7352. doctorheader = "Doctor : ";
  7353. printheader = "Print date : ";
  7354. prtndeptnm = getUserInfo("deptengnm");
  7355. imgepath = fGetImgPath("EN");
  7356. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  7357. if (prtndeptnm == "" || prtndeptnm == null)
  7358. {
  7359. prtndeptnm = getUserInfo("dutplcenm");
  7360. }
  7361. pageheader = "Page : ";
  7362. }
  7363. ds_datagrid1.setColumn(i, "pid", pid);
  7364. ds_datagrid1.setColumn(i, "signno", signno);
  7365. ds_datagrid1.setColumn(i, "reckind", "01");
  7366. ds_datagrid1.setColumn(i, "readprtflag", "E");
  7367. ds_datagrid1.setColumn(i, "formcd", formcd);
  7368. ds_datagrid1.setColumn(i, "signflag", signflag);
  7369. ds_datagrid1.setColumn(i, "orddd", orddd);
  7370. ds_datagrid1.setColumn(i, "chosflag", chosflag);
  7371. ds_datagrid1.setColumn(i, "refusge", "");
  7372. ds_datagrid1.setColumn(i, "refremark", "");
  7373. if(trans == "")
  7374. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  7375. var ininm = "cmc";
  7376. switch(srcformcd)
  7377. {
  7378. case "0000000001"://외래초진
  7379. case "0000000002"://외래재진
  7380. /* case "0000000003"://입원초진 */
  7381. case "0000000004"://입원경과
  7382. case "0000003325"://DSC기록
  7383. ininm += "_0000000001.ini";
  7384. break;
  7385. case "0000000003"://입원초진 분리 -20100311-kys
  7386. /* 20100309-kys-입원초진 Staff사인 추가-사본 버젼 맞춘후 반영하기로 함-20100310 */
  7387. if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){
  7388. staffnmheader = "◈ Staff작성 및 확인 :";
  7389. /* 20100407-kys-작성자일시 주석처리.
  7390. if(staffnm != "")
  7391. staffnm += "(" + staffconfirmdt + ")";
  7392. */
  7393. emrrecusrnmheader = "";
  7394. ininm += "_1000000003.ini";
  7395. }else{
  7396. ininm += "_0000000003.ini";
  7397. }
  7398. break;
  7399. case "0000000676"://수술기록
  7400. staffnmheader = "◈ Surgeon :";
  7401. /*
  7402. if(staffnm != "")
  7403. staffnm += "(" + staffconfirmdt + ")";
  7404. */
  7405. emrrecusrnmheader = "";
  7406. ininm += "_0000000676.ini";
  7407. break;
  7408. case "0000003169"://Brief OP Note
  7409. staffnmheader = "";
  7410. ininm += "_0000000676.ini";
  7411. break;
  7412. case "0000000680"://입퇴원요약
  7413. staffnmheader = "◈ Staff작성 및 확인 :";
  7414. /*
  7415. if(staffnm != "")
  7416. staffnm += "(" + staffconfirmdt + ")";
  7417. */
  7418. emrrecusrnmheader = "◈ 의무기록사 :";
  7419. ininm += "_0000000680.ini";
  7420. break;
  7421. case "0000000679"://응급실기록
  7422. ininm += "_0000000679.ini";
  7423. break;
  7424. default:
  7425. //ininm += "_0000000001.ini";
  7426. if(formprogflag == "-" || formprogflag == "MAIN")
  7427. ininm += "_0000000001.ini";
  7428. else
  7429. ininm += ".ini";
  7430. break;
  7431. }
  7432. //출력메세지 미정의로 임시 막음(2009-06-30 박종훈)
  7433. trans = "<!--% \n %BASE " + getDomain() + "/himed/webapps/ \n %INCLUDE emr/recmngtweb/xrw/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_INORDDEPTHNGNM = " + inorddepthngnm + "\n %-->\n" + trans;
  7434. //trans = "<!--% \n %BASE " + getDomain() + "/himed/webapps/ \n %INCLUDE emr/recmngtweb/xrw/" + ininm + " \n VAR_PAT_NUM = " + tmppid + " \n VAR_CLASS = " + ordtype + " \n VAR_CHART_NAME_TOP = " + topformnm + " \n VAR_CHART_NAME_BOTTOM = " + botformnm + " \n VAR_CHART_NAME_LINE = " + formnm + " \n VAR_PAT_AGE_SEX = " + sa + " \n VAR_TREAT_DEPT = " + deptengabbr + " \n VAR_PAT_JUMIN_NO = " + rgstno + " \n VAR_PAT_NAME = " + ptnm + " \n VAR_PRINT_NAME = " + prtnunm + " \n VAR_PRINT_DEPT = " + prtndeptnm + " \n VAR_WARD_HEAD = " + wardheader + roomcd + " \n VAR_DATE_HEADER = " + dateheader + disporddd + " \n VAR_DOCTOR_HEADER = " + doctorheader + drid + " \n VAR_PRINT_HEADER = " + printheader + prtdt + " \n SYS_PAGE_HEADER = " + pageheader + " \n VAR_HOSP_IMG = " + imgepath + " \n VAR_ORDDATE = " + formrecdt + " \n VAR_ORDDEPT = " + depthngnm + " \n VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm + " \n VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm + " \n VAR_ERDT = " + erdt + " \n VAR_ERVISITTM = " + ervisittm + " \n VAR_STAFFNM_HEADER = " + staffnmheader + " \n VAR_STAFFNM = " + staffnm + " \n VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader + " \n VAR_EMRRECUSRNM = " + emrrecusrnm + " \n VAR_ININFO = " + ininfo + " \n VAR_DSCHINFO = " + dschinfo + " \n VAR_INCNT = " + incnt + " \n VAR_PRINT_COPY = " + "이 서식은 사본입니다(원본대조필)" + "\n %-->\n" + trans;
  7435. var fso = new ActiveXObject("Scripting.FileSystemObject");
  7436. if(signno != 0) {
  7437. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML", true, true);
  7438. }else if(signno == 0) {
  7439. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML", true, true);
  7440. }
  7441. a.WriteLine(trans);
  7442. a.Close();
  7443. if(signno != 0) {
  7444. emrpath += foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML|";
  7445. }else if(signno == 0) {
  7446. emrpath += foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML|";
  7447. }
  7448. //emrorddate += orddd + "|";
  7449. emrorddate += recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  7450. emrformnm += formnm + "|";
  7451. emrformcd += formcd + "|";
  7452. emrdeptnm += deptengabbr + "|";
  7453. emrdeptcd += orddeptcd + "|";
  7454. emrpage += "1|";
  7455. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  7456. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  7457. emrchosflag += chosflag + "|";
  7458. }
  7459. model.removeNodeset("/root/temp/inisend");
  7460. //이미지경로
  7461. model.makeValue("/root/temp/inisend/emrpath", emrpath.substring(0, emrpath.length - 1));
  7462. //진료일
  7463. model.makeValue("/root/temp/inisend/emrorddate", emrorddate.substring(0, emrorddate.length - 1));
  7464. //서식명
  7465. model.makeValue("/root/temp/inisend/emrformnm", emrformnm.substring(0, emrformnm.length - 1));
  7466. //서식코드
  7467. model.makeValue("/root/temp/inisend/emrformcd", emrformcd.substring(0, emrformcd.length - 1));
  7468. //진료과
  7469. model.makeValue("/root/temp/inisend/emrdeptnm", emrdeptnm.substring(0, emrdeptnm.length - 1));
  7470. //진료과코드
  7471. model.makeValue("/root/temp/inisend/emrdeptcd", emrdeptcd.substring(0, emrdeptcd.length - 1));
  7472. //페이지
  7473. model.makeValue("/root/temp/inisend/emrpage", emrpage.substring(0, emrpage.length - 1));
  7474. model.makeValue("/root/temp/inisend/emrhiddenmsg", emrhiddenmsg.substring(0, emrhiddenmsg.length - 1));
  7475. model.makeValue("/root/temp/inisend/emrchosflag", emrchosflag.substring(0, emrchosflag.length - 1));
  7476. }
  7477. model.refresh();
  7478. //chartview에 넘길 노드값 재구성(영상+EMR)
  7479. var treatvar = "";
  7480. var tsignno = "";
  7481. var temrpath = "";
  7482. var temrorddate = "";
  7483. var temrformnm = "";
  7484. var temrformcd = "";
  7485. var temrdeptnm = "";
  7486. var temrdeptcd = "";
  7487. var temrpage = "";
  7488. var temrhiddenmsg = "";
  7489. //var outtestArr = outtestinfo.split("▩"); // 검사결과서식
  7490. //var intestArr = intestinfo.split("▩"); // 검사결과서식
  7491. if(certArr.length > 1 ) { //EMR 서식이 있는 경우
  7492. for(var i = 0; i < (certArr.length - 1); i++)
  7493. {
  7494. ieflag = certArr[i].split("▦")[0];
  7495. if (ieflag == "I")
  7496. {
  7497. treatvar = "*" + certArr[i].split("▦")[1] + "-" + certArr[i].split("▦")[2];
  7498. temrpath += treatvar + "|";
  7499. temrorddate += treatvar + "|";
  7500. temrformnm += treatvar + "|";
  7501. temrformcd += treatvar + "|";
  7502. temrdeptnm += treatvar + "|";
  7503. temrdeptcd += treatvar + "|";
  7504. temrpage += treatvar + "|";
  7505. temrhiddenmsg += treatvar + "|";
  7506. }
  7507. else
  7508. {
  7509. tsignno = certArr[i].split("▦")[3] +"_" + certArr[i].split("▦")[1] +"_" + certArr[i].split("▦")[2];
  7510. tformno = certArr[i].split("▦")[5] +"_" + certArr[i].split("▦")[4] +"_" + certArr[i].split("▦")[2];
  7511. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7512. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7513. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7514. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7515. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7516. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7517. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7518. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7519. var filepathnm = "";
  7520. var orddatenm = "";
  7521. var formnmnm = "";
  7522. var formcdnm = "";
  7523. var deptnmnm = "";
  7524. var deptcdnm = "";
  7525. var pagenm = "";
  7526. var hiddnm = "";
  7527. var chosflagnm = "";
  7528. for (var j = 0; j < filepathnmArr.length; j++)
  7529. {
  7530. filepathnm = filepathnmArr[j];
  7531. orddatenm = orddateArr[j];
  7532. formnmnm = formnmArr[j];
  7533. formcdnm = formcdArr[j];
  7534. deptnmnm = deptnmArr[j];
  7535. deptcdnm = deptcdArr[j];
  7536. pagenm = pageArr[j];
  7537. hiddnm = hiddArr[j];
  7538. if(isSearchString(filepathnm, tsignno))
  7539. {
  7540. temrpath += filepathnm + "|";
  7541. temrorddate += orddatenm + "|";
  7542. temrformnm += formnmnm + "|";
  7543. temrformcd += formcdnm + "|";
  7544. temrdeptnm += deptnmnm + "|";
  7545. temrdeptcd += deptcdnm + "|";
  7546. temrpage += pagenm + "|";
  7547. temrhiddenmsg += hiddnm + "|";
  7548. } else if(isSearchString(filepathnm, tformno)) {
  7549. temrpath += filepathnm + "|";
  7550. temrorddate += orddatenm + "|";
  7551. temrformnm += formnmnm + "|";
  7552. temrformcd += formcdnm + "|";
  7553. temrdeptnm += deptnmnm + "|";
  7554. temrdeptcd += deptcdnm + "|";
  7555. temrpage += pagenm + "|";
  7556. temrhiddenmsg += hiddnm + "|";
  7557. }
  7558. }
  7559. }
  7560. }
  7561. }
  7562. model.resetInstanceNode("/root/send/iemr");
  7563. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  7564. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  7565. //이미지경로
  7566. model.makeValue("/root/inisend/emrpath", temrpath.substring(0, temrpath.length - 1));
  7567. iviewerIemr.model.setValue("/root/main/emrpath", model.getValue("/root/inisend/emrpath"));
  7568. //진료일
  7569. model.makeValue("/root/inisend/emrorddate", temrorddate.substring(0, temrorddate.length - 1));
  7570. iviewerIemr.model.setValue("/root/main/emrorddate", model.getValue("/root/inisend/emrorddate"));
  7571. //서식명
  7572. model.makeValue("/root/inisend/emrformnm", temrformnm.substring(0, temrformnm.length - 1));
  7573. iviewerIemr.model.setValue("/root/main/emrformnm", model.getValue("/root/inisend/emrformnm"));
  7574. //서식코드
  7575. model.makeValue("/root/inisend/emrformcd", temrformcd.substring(0, temrformcd.length - 1));
  7576. iviewerIemr.model.setValue("/root/main/emrformcd", model.getValue("/root/inisend/emrformcd"));
  7577. //진료과
  7578. model.makeValue("/root/inisend/emrdeptnm", temrdeptnm.substring(0, temrdeptnm.length - 1));
  7579. iviewerIemr.model.setValue("/root/main/emrdeptnm", model.getValue("/root/inisend/emrdeptnm"));
  7580. //진료과코드
  7581. model.makeValue("/root/inisend/emrdeptcd", temrdeptcd.substring(0, temrdeptcd.length - 1));
  7582. iviewerIemr.model.setValue("/root/main/emrdeptcd", model.getValue("/root/inisend/emrdeptcd"));
  7583. //페이지
  7584. model.makeValue("/root/inisend/emrpage", temrpage.substring(0, temrpage.length - 1));
  7585. iviewerIemr.model.setValue("/root/main/emrpage", model.getValue("/root/inisend/emrpage"));
  7586. //히든 메세지
  7587. model.makeValue("/root/inisend/emrhiddenmsg", temrhiddenmsg.substring(0, temrhiddenmsg.length - 1));
  7588. iviewerIemr.model.setValue("/root/main/emrhiddenmsg", model.getValue("/root/inisend/emrhiddenmsg"));
  7589. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  7590. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  7591. if (iviewerIemr.window.javascript.downloadChart() == true)
  7592. {
  7593. // 뷰어 모드 유지 기능 추가 - 20080417
  7594. var ViewMode;
  7595. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  7596. if (ViewMode == null || ViewMode == "")
  7597. {
  7598. iviewerIemr.window.javascript.setupChart("ChartView");
  7599. }
  7600. else
  7601. {
  7602. iviewerIemr.window.javascript.setupChart(ViewMode);
  7603. }
  7604. }
  7605. } else
  7606. {
  7607. model.removeNodeset("/root/inisend");
  7608. model.resetInstanceNode("/root/send/iemr");
  7609. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  7610. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  7611. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  7612. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  7613. if (iviewerIemr.window.javascript.downloadChart() == true)
  7614. {
  7615. // 뷰어 모드 유지 기능 추가 - 20080417
  7616. var ViewMode;
  7617. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  7618. if (ViewMode == null || ViewMode == "")
  7619. {
  7620. iviewerIemr.window.javascript.setupChart("ChartView");
  7621. }
  7622. else
  7623. {
  7624. iviewerIemr.window.javascript.setupChart(ViewMode);
  7625. }
  7626. }
  7627. }
  7628. }
  7629. }
  7630. function fGetImgPath(langflag)
  7631. {
  7632. var dutplceinstcd = sysf_getUserInfo("dutplceinstcd");
  7633. if(langflag != "EN")
  7634. {
  7635. //imgepath = "com/commonweb/images/biglogo" + dutplceinstcd + ".jpg";
  7636. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + ".jpg"
  7637. }
  7638. else
  7639. {
  7640. //imgepath = "com/commonweb/images/biglogo" + dutplceinstcd + "e.jpg";
  7641. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + "e.jpg"
  7642. }
  7643. return imgepath;
  7644. }
  7645. // 의무기록 부서코드 찾기
  7646. function fIsEmrDept()
  7647. {
  7648. var dutplcecd = sysf_getUserInfo("dutplcecd");
  7649. var hardcdno = "1001";
  7650. if( ds_send_reqdata.rowcount == 0 ) ds_send_reqdata.addRow();
  7651. ds_send_reqdata.setColumn(0, "hardcdno", hardcdno);
  7652. //sysf_trace(ds_send_reqdata.saveXML());
  7653. var oParam = {};
  7654. oParam.id = "TRMRF03104";
  7655. oParam.service = "formmngtapp.SetIndxMngt";
  7656. oParam.method = "reqGetEmrInfoTeamCd";
  7657. oParam.inds = "req=ds_send_reqdata";
  7658. oParam.outds = "ds_main_hardcdlist=hardcdlist";
  7659. oParam.async = false;
  7660. oParam.callback = "cf_TRMRF03104";
  7661. tranf_submit(oParam);
  7662. //sysf_trace(ds_main_hardcdlist.saveXML());
  7663. for(var idx = 0; idx < ds_main_hardcdlist.rowcount; idx++)
  7664. {
  7665. if(dutplcecd == ds_main_hardcdlist.getColumn(idx, "trgtcd"))
  7666. {
  7667. return 1;
  7668. }
  7669. }
  7670. return 0;
  7671. }
  7672. function fGetTotalCopies()
  7673. {
  7674. sysf_trace("***** fGetTotalCopies() *****");
  7675. var tmpTotalCopies = 0;
  7676. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  7677. {
  7678. var shtno = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  7679. var copies = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  7680. tmpTotalCopies = shtno * copies;
  7681. }
  7682. else // 서울성모
  7683. {
  7684. // 가져온 그리드가 여러줄인경우를 대비해 전체 매수를 구한다.
  7685. for(var idx = 0; idx < ds_grd_rcptlist.rowcount; idx++)
  7686. {
  7687. tmpTotalCopies += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  7688. }
  7689. }
  7690. sysf_trace("***** tmpTotalCopies : " + tmpTotalCopies );
  7691. return tmpTotalCopies;
  7692. }
  7693. function fAddCalcorcdColumn(prnShtno)
  7694. {
  7695. var RecPrcpCd = model.getValue("/root/hidden/calcscorcd/hardcd/hardcd"); //의무기록 사본발행 수가코드
  7696. var shtno = 0;
  7697. var iFindRow =0;
  7698. var RowCnt = 0;
  7699. var lrow = 0;
  7700. var currentdate = "";
  7701. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  7702. var PrevTotalCopies = fGetTotalCopies();
  7703. var AddCopies = prnShtno;
  7704. var Total = eval(PrevTotalCopies) + eval(AddCopies);
  7705. if(eval(grd_rcptlist.rows-grd_rcptlist.fixedrows) == 1) // 그리드에 한줄만 있을 경우
  7706. {
  7707. var iRow = grd_rcptlist.fixedrows;
  7708. if(Total == g_DefCnt)
  7709. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  7710. if(Total > g_DefCnt)
  7711. {
  7712. var rcptNodelist = findNodeset(model, "/root/main/rcptlist/rcptlist[" + iRow + "]");
  7713. if(rcptNodelist.length >= 1)
  7714. {
  7715. var rcptNode = rcptNodelist.item(0);
  7716. // 기본 수가로 설정
  7717. if(g_DefCnt != 0)
  7718. {
  7719. rcptNode.parentNode.appendChild(rcptNode);
  7720. if(iRow == 1)
  7721. {
  7722. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  7723. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  7724. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  7725. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  7726. // 추가 수가를 설정
  7727. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  7728. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  7729. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  7730. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", eval(PrevTotalCopies) - eval(g_DefCnt) + eval(AddCopies));
  7731. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  7732. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", eval(PrevTotalCopies) - eval(g_DefCnt) + eval(AddCopies));
  7733. grd_rcptlist.refresh();
  7734. for(var idx = grd_rcptlist.fixedrows; idx <= eval(grd_rcptlist.rows-grd_rcptlist.fixedrows); idx++)
  7735. grd_rcptlist.rowStatus(idx) = 1;
  7736. }
  7737. }
  7738. else // g_DefCnt == 0 인 경우 추가 수가에만 변경한다.
  7739. {
  7740. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd", g_AddCalcscorcd);
  7741. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  7742. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpcd", g_AddCalcscorcd);
  7743. //model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", eval(PrevTotalCopies) + eval(AddCopies));
  7744. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", eval(AddCopies));
  7745. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "ADD");
  7746. //model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", eval(PrevTotalCopies) + eval(AddCopies));
  7747. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", eval(AddCopies));
  7748. }
  7749. /*
  7750. if(iRow == 1)
  7751. {
  7752. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  7753. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  7754. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  7755. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", "1");
  7756. // 추가 수가를 설정
  7757. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  7758. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  7759. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  7760. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", (tmpTotalCopies-g_DefCnt));
  7761. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  7762. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", (tmpTotalCopies-g_DefCnt));
  7763. }
  7764. */
  7765. //if(model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd") == g_DefCalcscorcd && model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn") == "")
  7766. //{}
  7767. }
  7768. }
  7769. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims"))
  7770. {
  7771. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  7772. grd_rcptlist.rowStatus(iRow) = 2;
  7773. }
  7774. }
  7775. else
  7776. {
  7777. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++)
  7778. {
  7779. // 첫번째 매수 확인
  7780. if(model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd") == g_DefCalcscorcd && model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn") == "")
  7781. {
  7782. var fstshtno = model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno");
  7783. if(fstshtno == g_DefCnt)
  7784. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  7785. if(fstshtno > g_DefCnt)
  7786. if(g_DefCnt == 0)
  7787. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", fstshtno);
  7788. else
  7789. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  7790. }
  7791. // 기본 수가로 설정
  7792. if(iRow == 1)
  7793. {
  7794. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  7795. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  7796. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  7797. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", "1");
  7798. // 추가 수가를 설정
  7799. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  7800. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  7801. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  7802. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  7803. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  7804. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  7805. }
  7806. //{}
  7807. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims"))
  7808. {
  7809. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  7810. grd_rcptlist.rowStatus(iRow) = 2;
  7811. }
  7812. }
  7813. }
  7814. grd_rcptlist.refresh();
  7815. /*
  7816. for(var idx = grd_rcptlist.fixedrows; idx <= eval(grd_rcptlist.rows-grd_rcptlist.fixedrows); idx++)
  7817. grd_rcptlist.rowStatus(idx) = 1;
  7818. // 직할병원
  7819. if(issgoalcd == "06" && g_FreeCalcscorcd != "") {
  7820. iFindRow = grd_rcptlist.findRow("HCDD001",0,2);
  7821. if(iFindRow < 1){
  7822. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  7823. grd_rcptlist.rowStatus(iRow) = 4;
  7824. grd_rcptlist.isReadOnly(iRow,4) = true;
  7825. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  7826. }
  7827. RowCnt = 1;
  7828. }
  7829. }else{// 그외 목적
  7830. //iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  7831. //iFindRow = grd_rcptlist.findRow(g_AddCalcscorcd, 2, 2);
  7832. iFindRow = grd_rcptlist.findRow("ADD", 0, 22);
  7833. if(iFindRow < 1){
  7834. for(var iRow = grd_rcptlist.fixedrows; iRow<= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  7835. grd_rcptlist.rowStatus(iRow) = 4;
  7836. grd_rcptlist.isReadOnly(iRow,4) = true;
  7837. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  7838. }
  7839. if(shtno > 10){
  7840. RowCnt = 2;
  7841. }else{
  7842. RowCnt = 1;
  7843. }
  7844. }
  7845. }
  7846. if(iFindRow < 1)
  7847. {
  7848. for(var iRow = 1; iRow <= RowCnt; iRow++)
  7849. {
  7850. grd_rcptlist.additem();
  7851. currentdate = getCurrentDate();
  7852. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  7853. if(issgoalcd == "06")
  7854. {
  7855. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  7856. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  7857. // 처방코드(임시로 수가코드로 함)
  7858. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  7859. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  7860. }
  7861. else
  7862. {
  7863. if(iRow == 1){
  7864. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_DefCalcscorcd);
  7865. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  7866. // 처방코드(임시로 수가코드로 함)
  7867. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_DefCalcscorcd);
  7868. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  7869. }else if(iRow == 2){
  7870. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_AddCalcscorcd);
  7871. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  7872. // 처방코드(임시로 수가코드로 함)
  7873. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_AddCalcscorcd);
  7874. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", "");
  7875. }
  7876. }
  7877. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  7878. {
  7879. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  7880. }
  7881. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  7882. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  7883. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  7884. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  7885. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  7886. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  7887. if(RowCnt == 1){
  7888. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", shtno);
  7889. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", shtno);
  7890. if(issgoalcd == "06"){
  7891. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", shtno);
  7892. }else{
  7893. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  7894. }
  7895. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  7896. if(iRow == 1){ // 수가코드 (HCDD027) 처리
  7897. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "10");
  7898. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "10");
  7899. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  7900. }else if(iRow == 2){ // 수가코드(HCDD030) 처리
  7901. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", (shtno-10));
  7902. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", (shtno-10));
  7903. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", (shtno-10));
  7904. }
  7905. }
  7906. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  7907. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  7908. grd_rcptlist.addStatus(lrow, "insert");
  7909. }
  7910. }
  7911. */
  7912. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  7913. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  7914. model.setValue("/root/main/appinfo/copyinfo/emrappcopies",1);
  7915. //ipt_emrappcopies.refresh();
  7916. fChangedAppCopies();
  7917. }
  7918. //btn_delete.disabled = true;
  7919. //btn_delete.refresh();
  7920. }
  7921. /**
  7922. * @desc : 서식로드시 LoadingBar표시, 닫기
  7923. * @id :
  7924. * @event :
  7925. * @return :
  7926. * @authur : 박종훈
  7927. */
  7928. // function fShowProgress(flag, msg)
  7929. // {
  7930. // /*
  7931. // if (gPrestIvw != null)
  7932. // {
  7933. // gPrestIvw.visible = !flag;
  7934. // }
  7935. // */
  7936. // if (flag)
  7937. // {
  7938. // openLoadingBar(msg);
  7939. // }
  7940. // else
  7941. // {
  7942. // closeLoadingBar();
  7943. // }
  7944. // }
  7945. // 신청부수가 변경될 경우
  7946. function fChangedAppCopies2()
  7947. {
  7948. sysf_trace("***** fChangedAppCopies2() *****");
  7949. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  7950. {
  7951. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  7952. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  7953. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  7954. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "prcptims"), "edittype", "none");
  7955. // 그리드 복사(이미 발행된 사본의 경우 백업을 해둠)
  7956. var lrow = ds_grd_apphist.rowposition;
  7957. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  7958. if(!utlf_isNull(issno))
  7959. {
  7960. ds_grd_rcptlist.enableevent = false;
  7961. ds_grd_rcptlist.clearData();
  7962. ds_grd_rcptlist.copyData(ds_grd_tmprcptlist);
  7963. // model.removenode("/root/main/rcptlist");
  7964. // model.makeNode("/root/main/rcptlist");
  7965. // model.copyNode("/root/main/rcptlist", "/root/temp2/rcptlist");
  7966. ds_grd_rcptlist.rowposition = 1;
  7967. ds_grd_rcptlist.enableevent = true;
  7968. }
  7969. }
  7970. if (ds_grd_apphist.rowcount < 1) return;
  7971. if (ds_grd_apphist.rowposition < 0) return;
  7972. var totalshrtno = ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno");
  7973. var totalcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  7974. //alert(totalcopies);
  7975. //alert(totalshrtno);
  7976. if(utlf_isNull(totalshrtno) || parseInt(totalshrtno) < 0)
  7977. return false;
  7978. if(utlf_isNull(totalcopies) || parseInt(totalcopies) < 0)
  7979. return false;
  7980. var totalpapers = parseInt(totalshrtno) * parseInt(totalcopies);
  7981. ds_temp2_appinfo_copyinfo.setColumn(0, "totalpapers", totalpapers);
  7982. return true;
  7983. }
  7984. function fChangedGridRow2()
  7985. {
  7986. var tmpTotalCopies = fGetTotalCopies(); // 수가 그리드의 매수 합만 계산
  7987. //var tmpTotalCopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalpapers");
  7988. var iRow = grd_rcptlist.row;
  7989. if(iRow < 0)
  7990. return;
  7991. var sShtNo= eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  7992. var sValue = 0;
  7993. var sCalcScorCd = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd");
  7994. var sExtraPrcpTims = 0;
  7995. var currentdate = getCurrentDate();
  7996. var iStatus = grd_rcptlist.rowStatus(iRow);
  7997. if(iStatus == 2){
  7998. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno") == model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno")){
  7999. grd_rcptlist.rowStatus(iRow) = 0;
  8000. }
  8001. }
  8002. // 선택한 그리드 행의 매수를 구함.
  8003. var sShtNo = eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8004. /* 매수 부수 입력창이 있는 경우 매수, 부수를 수정하지 못하도록 수정하였기 때문에 필요가 없는 로직임.
  8005. // 2009.06.07 이경희
  8006. if(grd_rcptlist.rows > 2)
  8007. {
  8008. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "DEF" && eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno")) != 1)
  8009. {
  8010. messageBox("기본 수가부분은 변경할 수 없습니다. 하단의 추가수가부분을", "I008");
  8011. //model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", "1");
  8012. if(g_DefCnt != 0)
  8013. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", g_DefCnt);
  8014. else
  8015. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", g_AddCnt);
  8016. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", "1");
  8017. model.refresh();
  8018. return;
  8019. }
  8020. }
  8021. */
  8022. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "DEF" && eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno")) > 1)
  8023. {
  8024. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd") == g_DefCalcscorcd)
  8025. {
  8026. sShtNo = eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8027. if(parseInt(sShtNo) < 1)
  8028. {
  8029. messageBox("매수는","I003");
  8030. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  8031. if(iStatus == 2){
  8032. grd_rcptlist.rowStatus(iRow) = 0;
  8033. }
  8034. }
  8035. //else if(sShtNo > 10)
  8036. //else if(sShtNo > g_DefCnt)
  8037. else if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8038. {
  8039. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  8040. {
  8041. var currentdate = getCurrentDate();
  8042. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8043. // 기존 그리드가 2줄인 경우
  8044. if((grd_rcptlist.rows - grd_rcptlist.fixedrows) == 2)
  8045. {
  8046. }
  8047. else
  8048. {
  8049. grd_rcptlist.additem();
  8050. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8051. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8052. // 06: 직할병원 - 수가코드(HCDD001)
  8053. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8054. {
  8055. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8056. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8057. // 처방코드(임시로 수가코드로 함)
  8058. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8059. }
  8060. else
  8061. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8062. /*
  8063. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  8064. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8065. // 처방코드(임시로 수가코드로 함)
  8066. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  8067. */
  8068. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_AddCalcscorcd);
  8069. if(g_AddCalcscorcd == "HCDD030")
  8070. {
  8071. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  8072. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_AddCalcscorcdnm);
  8073. }
  8074. else
  8075. {
  8076. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8077. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_AddCalcscorcdnm);
  8078. }
  8079. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_AddCalcscorcd);
  8080. model.makeValue("/root/main/rcptlist/rcptlist[" + lrow + "]/defyn", "ADD");
  8081. }
  8082. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  8083. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  8084. {
  8085. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8086. }
  8087. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  8088. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  8089. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  8090. }
  8091. //var currentdate = getCurrentDate();
  8092. //var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8093. // 기본 매수 등록
  8094. model.setValue("/root/main/rcptlist/rcptlist[" + (lrow-1) + "]/shtno", g_DefCnt);
  8095. model.setValue("/root/main/rcptlist/rcptlist[" + (lrow-1) + "]/prcpqty", "1");
  8096. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8097. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8098. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8099. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8100. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  8101. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8102. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8103. {
  8104. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", 1);
  8105. }
  8106. else
  8107. {
  8108. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8109. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", Tmpappcopies);
  8110. }
  8111. if(g_DefCalcscorcd != "HCDD027")
  8112. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8113. else
  8114. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", "1");
  8115. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8116. grd_rcptlist.addStatus(lrow, "insert");
  8117. }
  8118. else
  8119. {
  8120. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  8121. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  8122. if(sExtraStatus != 1 && sExtraStatus != 3) grd_rcptlist.rowStatus(sExtraRow) = 2;
  8123. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/shtno", sValue);
  8124. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/prcpqty", sValue);
  8125. }
  8126. }
  8127. else // 총 매수가 10장 미만인 경우
  8128. {
  8129. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  8130. {
  8131. var currentdate = getCurrentDate();
  8132. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8133. // 10장 미만이므로 전체 매수를 기입한다.
  8134. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", tmpTotalCopies);
  8135. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8136. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8137. // 06: 직할병원 - 수가코드(HCDD001)
  8138. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8139. {
  8140. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8141. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8142. // 처방코드(임시로 수가코드로 함)
  8143. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8144. }
  8145. }
  8146. }
  8147. }
  8148. }
  8149. else
  8150. {
  8151. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8152. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8153. // 06: 직할병원 - 수가코드(HCDD001)
  8154. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8155. {
  8156. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8157. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8158. // 처방코드(임시로 수가코드로 함)
  8159. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8160. }
  8161. else
  8162. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8163. /*
  8164. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  8165. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8166. // 처방코드(임시로 수가코드로 함)
  8167. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  8168. */
  8169. for(var i = 1; i < lrow; i++)
  8170. {
  8171. if(model.getValue("/root/main/rcptlist/rcptlist[" + i + "]/calcscorcd") == g_AddCalcscorcd)
  8172. {
  8173. lrow = i;
  8174. break;
  8175. }
  8176. }
  8177. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8178. {
  8179. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8180. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8181. }
  8182. else
  8183. {
  8184. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies));
  8185. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8186. }
  8187. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  8188. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8189. }
  8190. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8191. {
  8192. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", 1);
  8193. }
  8194. else
  8195. {
  8196. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8197. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", Tmpappcopies);
  8198. }
  8199. if(g_DefCalcscorcd != "HCDD027")
  8200. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8201. else
  8202. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", "1");
  8203. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8204. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8205. grd_rcptlist.addStatus(lrow, "insert");
  8206. }
  8207. //if(sCalcScorCd == "HCDD001")
  8208. if(sCalcScorCd == g_FreeCalcscorcd)
  8209. {
  8210. if(sShtNo < 1){
  8211. messageBox("매수는","I003");
  8212. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno"));
  8213. if(iStatus == 2){
  8214. grd_rcptlist.rowStatus(iRow) = 0;
  8215. }
  8216. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  8217. }
  8218. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  8219. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  8220. }
  8221. }
  8222. else
  8223. { // 추가
  8224. if(sShtNo < 1)
  8225. {
  8226. var iStatus = grd_rcptlist.rowStatus(iRow);
  8227. if(iStatus == 1 || iStatus == 3)
  8228. grd_rcptlist.deleteRow(iRow, true);
  8229. else
  8230. grd_rcptlist.rowStatus(iRow) = 4;
  8231. }
  8232. else
  8233. {
  8234. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "ADD" && (tmpTotalCopies - g_DefCnt) != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  8235. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", (tmpTotalCopies - g_DefCnt));
  8236. }
  8237. }
  8238. }
  8239. }
  8240. // 추가(20090610)
  8241. // 수가 그리드 처리
  8242. function fChangedSugaGridRow()
  8243. {
  8244. sysf_trace("***** fChangedSugaGridRow() *****");
  8245. var tmpTotalCopies = fGetTotalCopies(); // 수가 그리드의 매수 합만 계산
  8246. var iRow = ds_grd_rcptlist.rowposition;
  8247. if(iRow < 0)
  8248. {
  8249. return;
  8250. }
  8251. //Event Off
  8252. ds_grd_rcptlist.enableevent = false;
  8253. // 매수
  8254. var sShtNo= eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  8255. var sValue = 0;
  8256. var sCalcScorCd = ds_grd_rcptlist.getColumn(iRow, "calcscorcd");
  8257. var sExtraPrcpTims = 0;
  8258. var currentdate = utlf_getCurrentDate();
  8259. // 선택한 그리드 행의 매수를 구함.
  8260. var sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  8261. ds_grd_rcptlist.clearData();
  8262. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8263. // 06: 직할병원 - 수가코드(HCDD001)
  8264. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  8265. {
  8266. var currentdate = utlf_getCurrentDate();
  8267. var lrow = ds_grd_rcptlist.addRow;
  8268. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  8269. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  8270. ds_grd_rcptlist.setColumn(lrow, "prcpqty", tmpTotalCopies);
  8271. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8272. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8273. // 처방코드(임시로 수가코드로 함)
  8274. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8275. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  8276. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8277. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8278. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8279. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8280. ds_grd_rcptlist.setColumn(lrow, "shtno", tmpTotalCopies);
  8281. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8282. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8283. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8284. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8285. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8286. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8287. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8288. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8289. // 부수
  8290. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8291. {
  8292. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  8293. }
  8294. var arrPostion = new Array();
  8295. arrPostion[0] = lrow;
  8296. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8297. //grd_rcptlist.addStatus(lrow, "insert");
  8298. }
  8299. else
  8300. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8301. // 총매수가 기본수가(10장)을 넘길 경우 첫번째 Row는 기본 수가로 2번째 Row는 추가수가로 셋팅
  8302. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8303. {
  8304. ds_grd_rcptlist.addRow();
  8305. ds_grd_rcptlist.addRow();
  8306. for(var i = 0; i < 2; i++)
  8307. //for(var i = 0; i < 2; i++)
  8308. {
  8309. var currentdate = utlf_getCurrentDate();
  8310. var lrow = i; //grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8311. if (i == 0)
  8312. {
  8313. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8314. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  8315. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  8316. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  8317. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8318. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8319. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8320. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  8321. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8322. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8323. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8324. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8325. ds_grd_rcptlist.setColumn(lrow, "shtno", g_DefCnt);
  8326. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8327. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8328. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8329. // 기본일때는 수량을 1로
  8330. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  8331. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8332. // 처방코드(임시로 수가코드로 함)
  8333. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8334. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8335. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8336. var arrPostion = new Array();
  8337. arrPostion[0] = lrow;
  8338. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8339. //grd_rcptlist.addStatus(lrow, "insert");
  8340. }
  8341. else
  8342. {
  8343. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8344. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  8345. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  8346. ds_grd_rcptlist.setColumn(lrow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8347. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8348. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8349. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8350. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  8351. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8352. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8353. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8354. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8355. ds_grd_rcptlist.setColumn(lrow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8356. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8357. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8358. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8359. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8360. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8361. // 처방코드(임시로 수가코드로 함)
  8362. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  8363. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8364. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8365. var arrPostion = new Array();
  8366. arrPostion[0] = lrow;
  8367. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8368. //grd_rcptlist.addStatus(lrow, "insert");
  8369. }
  8370. }
  8371. }
  8372. else
  8373. {
  8374. if (tmpTotalCopies > 0)
  8375. {
  8376. var currentdate = utlf_getCurrentDate();
  8377. var lrow = ds_grd_rcptlist.addRow();
  8378. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8379. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  8380. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  8381. ds_grd_rcptlist.setColumn(lrow, "prcpqty", 1);
  8382. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8383. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8384. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8385. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  8386. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8387. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8388. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8389. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8390. ds_grd_rcptlist.setColumn(lrow, "shtno", tmpTotalCopies);
  8391. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8392. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8393. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8394. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8395. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8396. // 처방코드(임시로 수가코드로 함)
  8397. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8398. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8399. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8400. var arrPostion = new Array();
  8401. arrPostion[0] = lrow;
  8402. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8403. //grd_rcptlist.addStatus(lrow, "insert");
  8404. }
  8405. }
  8406. }
  8407. //Event On
  8408. ds_grd_rcptlist.enableevent = true;
  8409. }
  8410. function fSugaCalc()
  8411. {
  8412. sysf_trace("***** fSugaCalc() *****");
  8413. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  8414. {
  8415. var lrow = ds_grd_apphist.rowposition;
  8416. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  8417. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  8418. sysf_trace("fSugaCalc issno : " + issno );
  8419. if(ds_grd_rcptlist.rowcount > 0 && utlf_isNull(issno))
  8420. {
  8421. //Event Off
  8422. ds_grd_rcptlist.enableevent = false;
  8423. // 매수 * 부수 입력창
  8424. var shtno1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  8425. var copies1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  8426. var total1 = shtno1 * copies1;
  8427. var shtno2 = 0;
  8428. var copies2 = 1;
  8429. var total2 = 0;
  8430. for(var idx = 0; idx < ds_grd_rcptlist.rowcount; idx++)
  8431. {
  8432. shtno2 += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  8433. }
  8434. total2 = shtno2 * copies2;
  8435. if(total1 < total2) // 그리드의 총 장수에 비해 입력한 매수*부수의 결과가 작은경우
  8436. {
  8437. // 그리드가 2줄인 경우 한줄을 삭제하고 기본으로 미리 세팅한다.
  8438. if(ds_grd_rcptlist.rowcount > 1)
  8439. {
  8440. //model.removeNodeset("/root/main/rcptlist/rcptlist[" + (grd_rcptlist.rows-grd_rcptlist.fixedrows) + "]");
  8441. ds_grd_rcptlist.deleteRow(ds_grd_rcptlist.rowcount - 1);
  8442. }
  8443. // 기본 수가로 설정
  8444. var iRow = ds_grd_rcptlist.rowcount - 1;
  8445. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  8446. //ds_grd_rcptlist.setColumn(iRow, "shtno", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  8447. ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  8448. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  8449. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  8450. ds_grd_rcptlist.rowposition = 0;
  8451. var arrPostion = new Array();
  8452. arrPostion[0] = 0;
  8453. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8454. //grd_rcptlist.rowStatus(1) = 1;
  8455. }
  8456. //Event Off
  8457. ds_grd_rcptlist.enableevent = true;
  8458. return 1;
  8459. }
  8460. }
  8461. }
  8462. function fChangeStatus()
  8463. {
  8464. sysf_trace("***** fChangeStatus() *****");
  8465. //Event Off
  8466. ds_grd_rcptlist.enableevent = false;
  8467. var lrow = ds_grd_apphist.rowposition;
  8468. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  8469. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  8470. sysf_trace("***** fChangeStatus() issno : " + issno + "*****");
  8471. // 발행번호가 있는 경우 --> 수정으로 들어갈때
  8472. if(!utlf_isNull(issno))
  8473. {
  8474. // 매수 * 부수 입력창
  8475. var shtno1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  8476. var copies1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  8477. var NewTotal = shtno1 * copies1;
  8478. var shtno2 = 0;
  8479. var copies2 = 1;
  8480. var OldTotal = 0;
  8481. for(var idx = 0; idx < ds_grd_tmprcptlist.rowcount; idx++)
  8482. {
  8483. shtno2 += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  8484. }
  8485. OldTotal = shtno2 * copies2;
  8486. // 1) 이미 발행된 사본의 총 장수가 10장 미만인 경우 그리드는 1줄
  8487. if(parseInt(OldTotal) <= parseInt(g_DefCnt))
  8488. {
  8489. var iRow = ds_grd_rcptlist.rowcount - 1;
  8490. // 새로 입력받은 사본의 총 장수가 10장 미만(처방 그리드는 1줄이며, 매수를 기본으로 변경해주고 그리드 상태값을 변경)
  8491. if(parseInt(NewTotal) <= parseInt(g_DefCnt))
  8492. {
  8493. ds_grd_rcptlist.setColumn(iRow, "shtno", NewTotal);
  8494. ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  8495. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  8496. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  8497. ds_grd_rcptlist.rowposition = 0;
  8498. var arrPostion = new Array();
  8499. arrPostion[0] = 0;
  8500. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8501. //grd_rcptlist.rowStatus(1) = 2; // UPDATE
  8502. }
  8503. else // 새로 입력받은 사본의 총 장수가 10장 이상이 되서 처방 그리드가 2줄이 되는 경우
  8504. {
  8505. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8506. // 06: 직할병원 - 수가코드(HCDD001)
  8507. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  8508. {
  8509. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  8510. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  8511. // 처방코드(임시로 수가코드로 함)
  8512. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  8513. }
  8514. else
  8515. {
  8516. var lrow = ds_grd_rcptlist.rowcount - 1;
  8517. sysf_trace(" parseInt(NewTotal) <= parseInt(g_DefCnt) else : issgoalcd == 06 && !utlf_isNull(g_FreeCalcscorcd else : " + lrow);
  8518. var arrPostion = new Array();
  8519. arrPostion[0] = lrow-1;
  8520. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8521. arrPostion[0] = lrow;
  8522. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8523. // ds_grd_rcptlist.addStatus(lrow-1, "update");
  8524. // ds_grd_rcptlist.addStatus(lrow, "insert");
  8525. }
  8526. }
  8527. }
  8528. else // 2) 이미 발행된 사본의 총 장수가 10장 이상이 되는 경우
  8529. {
  8530. var iRow = ds_grd_rcptlist.rowcount - 1;
  8531. // 새로 입력받은 사본의 총 장수가 10장 미만(처방 그리드는 2줄인 상태에서 상태값을 변경)
  8532. if(parseInt(NewTotal) <= parseInt(g_DefCnt))
  8533. {
  8534. // 첫번째 그리드는 매수 수정
  8535. ds_grd_rcptlist.rowposition = 0;
  8536. var lrow = ds_grd_rcptlist.rowposition;
  8537. var arrPostion = new Array();
  8538. arrPostion[0] = lrow;
  8539. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8540. //grd_rcptlist.rowStatus(lrow) = 2; // UPDATE
  8541. ds_grd_rcptlist.setColumn(lrow, "shtno", NewTotal);
  8542. ds_grd_rcptlist.setColumn(lrow, "calcscornm", "의무기록사본발행");
  8543. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8544. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  8545. // 2번째 그리드는 삭제 상태로 변경
  8546. var arrPostion = new Array();
  8547. arrPostion[0] = (parseInt(lrow)+1);
  8548. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  8549. //grd_rcptlist.rowStatus( (parseInt(lrow)+1) ) = 4; // DELETE
  8550. }
  8551. else // 새로 입력받은 사본의 총 장수가 10장 이상(처방 그리드는 이미 2줄이므로 HCDD030 수가의 prcpqty를 변경)
  8552. {
  8553. // 첫번째 그리드는 그대로 둔 상태에서 추가 수가 부분만 매수를 변경하고 그리드 상태를 업데이트로 변경
  8554. ds_grd_rcptlist.rowposition = 1;
  8555. var lrow = ds_grd_rcptlist.rowposition;
  8556. ds_grd_rcptlist.setColumn(lrow, "shtno", parseInt(NewTotal) - parseInt(g_DefCnt));
  8557. ds_grd_rcptlist.setColumn(lrow, "prcpqty", parseInt(NewTotal) - parseInt(g_DefCnt));
  8558. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  8559. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0){
  8560. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  8561. }else{
  8562. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8563. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", Tmpappcopies);
  8564. }
  8565. if(g_DefCalcscorcd != "HCDD027")
  8566. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8567. else
  8568. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  8569. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8570. // 기존에 발행된 내역이 1줄(10매 미안)이었다가 10매 이상이 되어 변경한 후 다시 10매 이상으로 변경하는 경우)
  8571. // 2번째 row의 상태를 insert로 두기 위함.
  8572. var arrPostion = new Array();
  8573. arrPostion[0] = lrow;
  8574. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8575. //grd_rcptlist.rowStatus(lrow) = 2; // UPDATE
  8576. }
  8577. }
  8578. }
  8579. //Event On
  8580. ds_grd_rcptlist.enableevent = true;
  8581. }
  8582. function fSetSugaCode()
  8583. {
  8584. sysf_trace("***** fSetSugaCode() *****");
  8585. lf_getHardCDList("N", 77, null, ds_hidden_calcscorcd); //의무기록사본발행수가코드
  8586. lf_getHardCDList("N", 1004, null, ds_hidden_tmpcalcscorcd); //의무기록사본발행수가코드
  8587. // 2009.05.11 이경희
  8588. // 기본수가, 추가수가로 변경
  8589. for(var idx = 0; idx < ds_hidden_tmpcalcscorcd.rowcount; idx++)
  8590. {
  8591. var arrCalcscorcd = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcd").split("|");
  8592. if(arrCalcscorcd[0] == "DEF") // 기본 수가코드
  8593. {
  8594. g_DefCalcscorcd = arrCalcscorcd[1];
  8595. g_DefCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  8596. ds_hidden.setColumn(0, "defcalcscorcd", g_DefCalcscorcd);
  8597. ds_hidden.setColumn(0, "defcalcscorcdnm", g_DefCalcscorcdnm);
  8598. g_DefCnt = arrCalcscorcd[2];
  8599. }
  8600. if(arrCalcscorcd[0] == "ADD") // 추가 수가코드
  8601. {
  8602. g_AddCalcscorcd = arrCalcscorcd[1];
  8603. g_AddCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  8604. ds_hidden.setColumn(0, "addcalcscorcd", g_AddCalcscorcd);
  8605. ds_hidden.setColumn(0, "addcalcscorcdnm", g_AddCalcscorcdnm);
  8606. g_AddCnt = arrCalcscorcd[2];
  8607. }
  8608. if(arrCalcscorcd[0] == "FREE") // 무료 수가코드
  8609. {
  8610. g_FreeCalcscorcd = arrCalcscorcd[1];
  8611. g_FreeCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  8612. ds_hidden.setColumn(0, "freecalcscorcd", g_FreeCalcscorcd);
  8613. ds_hidden.setColumn(0, "freecalcscorcdnm", g_FreeCalcscorcdnm);
  8614. g_FreeCnt = g_FreeCalcscorcd[2];
  8615. }
  8616. }
  8617. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  8618. lf_getHardCDList("N", 1201, null, ds_hidden_colorcalcscoryn); //1201 : 의무기록 사본발행 진료기록 컬러복사 수가코드 사용여부
  8619. lf_getHardCDList("N", 1202, null, ds_hidden_colorcalcscorcd); //1202 : 의무기록 사본발행 진료기록 컬러복사 수가코드
  8620. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  8621. var colorcalcscorcd = ds_hidden_colorcalcscorcd.getColumn(0, "hardcd");
  8622. if (colorcalcscoryn == "Y")
  8623. {
  8624. btn_colorcalcscoryn.visible = true;
  8625. }
  8626. }
  8627. function fDispMidForm(idx)
  8628. {
  8629. sysf_trace("***** fDispMidForm *****");
  8630. var supitemindxseq = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  8631. var midindxseq = ds_grd_inpat.getColumn(idx, "midindxseq");
  8632. var emrflag = ds_grd_inpat.getColumn(idx, "emrflag");
  8633. if(emrflag == "I") { // 구영상
  8634. ds_imgrec_iemr.clearData();
  8635. ds_imgrec_iemr.addRow();
  8636. iviewerIemr.resetInstance_EMR();
  8637. ds_imgrec_iemr.setColumn(0, "treatno", ds_grd_inpat.getColumn(idx, "midindxseq"));
  8638. ds_imgrec_iemr.setColumn(0, "docucd", ds_grd_inpat.getColumn(idx, "supitemindxseq"));
  8639. var iemrNode = ds_imgrec_iemr;
  8640. iviewerIemr.searchChart(iemrNode);
  8641. if (iviewerIemr.downloadChart() == true)
  8642. {
  8643. // 뷰어 모드 유지 기능 추가 - 20080417
  8644. var ViewMode;
  8645. ViewMode = iviewerIemr.hidden_currentViewMode;
  8646. if (utlf_isNull(ViewMode))
  8647. {
  8648. iviewerIemr.setupChartCopy("ChartView");
  8649. }
  8650. else
  8651. {
  8652. iviewerIemr.setupChartCopy(ViewMode);
  8653. }
  8654. }
  8655. }
  8656. else
  8657. {
  8658. ds_send.clearData();
  8659. ds_send.addRow();
  8660. ds_send.setColumn(0, "pid" , ds_grd_inpat.getColumn(idx, "pid"));
  8661. ds_send.setColumn(0, "orddd" , ds_grd_inpat.getColumn(idx, "orddd"));
  8662. ds_send.setColumn(0, "cretno" , ds_grd_inpat.getColumn(idx, "cretno"));
  8663. ds_send.setColumn(0, "chosflag" , "I" );
  8664. ds_send.setColumn(0, "tabflag" , "ALL" );
  8665. ds_send.setColumn(0, "recall" , "Y" );
  8666. ds_send.setColumn(0, "orddeptcd" , ds_grd_inpat.getColumn(idx, "orddeptcd"));
  8667. ds_send.setColumn(0, "reckind" , ds_grd_inpat.getColumn(idx, "reckind"));
  8668. ds_send.setColumn(0, "itemindxseq" , ds_grd_inpat.getColumn(idx, "midindxseq"));
  8669. ds_send.setColumn(0, "lisflag" , ds_grd_inpat.getColumn(idx, "lisflag"));
  8670. //2009-11-04 오후 1:29:15 강지훈 수정 : 오픈전 미시행검사처방 처리 관련 수정
  8671. ds_send.setColumn(0, "midbftest" , ds_grd_inpat.getColumn(idx, "midbftest"));
  8672. ds_send.setColumn(0, "scrnid" , "SMMRC03000" );
  8673. ds_send.setColumn(0, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  8674. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:'',pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N");
  8675. //xp code add : col id change!!!execprcpuniqno
  8676. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  8677. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  8678. var oParam = {};
  8679. oParam.id = "TRMRI03004";
  8680. oParam.service = "recmngtapp.IntegrityRec";
  8681. oParam.method = "reqGetRecDetailInfoByCondFlag";
  8682. oParam.inds = "req=ds_send";
  8683. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  8684. oParam.async = false;
  8685. oParam.callback = "cf_TRMRI03004";
  8686. tranf_submit(oParam);
  8687. if(arErrorCode.pop("TRMRI03004") > -1){
  8688. if( ds_main_otherinfo.getColumn(0, "addimageyn") != "Y" ){
  8689. iviewerIemr.cleanViewer();
  8690. ds_tmpinicert2_iniinfo.clearData();
  8691. var noimg = "";
  8692. var imgarray = "";
  8693. var certcnt = ds_tmpinicert_iniinfo.rowcount;
  8694. for(var a = 0; a < certcnt ; a++ ){
  8695. var add_imgflag = ds_tmpinicert_iniinfo.getColumn(a, "imgflag");
  8696. var add_formcd = ds_tmpinicert_iniinfo.getColumn(a, "formcd");
  8697. var add_formprogflag = ds_tmpinicert_iniinfo.getColumn(a, "formprogflag");
  8698. if( !utlf_isNull(add_imgflag) ){
  8699. if( add_imgflag != "N" && add_formcd != "Z001" && add_formprogflag != "IMG" ){
  8700. if( a == 0 ){
  8701. noimg = ds_tmpinicert_iniinfo.getColumn(a, "signno");
  8702. }else{
  8703. noimg = noimg + "*" + ds_tmpinicert_iniinfo.getColumn(a, "signno");
  8704. }
  8705. }
  8706. }
  8707. }
  8708. imgarray = noimg.split("*");
  8709. for(var i = 0; i < imgarray.length ; i++ ){
  8710. for(var j = 0; j < certcnt ; j++ ){
  8711. if( imgarray[i] == ds_tmpinicert_iniinfo.getColumn(j, "signno") ){
  8712. ds_tmpinicert_iniinfo.deleteRow(j);
  8713. }
  8714. }
  8715. }
  8716. }
  8717. ds_tmpinicert2_iniinfo.copyData(ds_tmpinicert_iniinfo);
  8718. fEmrImgRec();
  8719. }
  8720. }
  8721. }
  8722. function fDispAllForm(){
  8723. sysf_trace("***** fDispAllForm() *****");
  8724. var supitemindxseq = "";
  8725. var midindxseq = "";
  8726. var emrflag = "";
  8727. var imgtret = "";
  8728. var imgformcd = "";
  8729. for(var idx = 0; idx < ds_grd_inpat.rowcount; idx++)
  8730. {
  8731. supitemindxseq = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  8732. midindxseq = ds_grd_inpat.getColumn(idx, "midindxseq");
  8733. emrflag = ds_grd_inpat.getColumn(idx, "emrflag");
  8734. if(emrflag == "I")
  8735. { // 구영상
  8736. iviewerIemr.resetInstance_EMR();
  8737. imgtret = ds_grd_inpat.getColumn(idx, "midindxseq");
  8738. imgformcd = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  8739. var objColInfo = new Array();
  8740. objColInfo.push({col: "signno", type:"string", size:256, val:imgtret});
  8741. objColInfo.push({col: "formcd", type:"string", size:256, val:imgformcd});
  8742. objColInfo.push({col: "imgflag", type:"string", size:256, val:"Y"});
  8743. dsf_createDsRow("ds_initmp_iniinfo", objColInfo);
  8744. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_initmp_iniinfo, "after");
  8745. ds_tmpinicert2_iniinfo.appendData(ds_initmp_iniinfo);
  8746. //copyNodeset("/root/tmpinicert2/iniinfo", "/root/initmp/iniinfo", "append");
  8747. dsf_deleteDs("ds_initmp_iniinfo");
  8748. }
  8749. else
  8750. {
  8751. ds_send.clearData();
  8752. ds_send.addRow();
  8753. ds_send.setColumn(0, "pid", ds_grd_inpat.getColumn(idx, "pid"));
  8754. ds_send.setColumn(0, "orddd", ds_grd_inpat.getColumn(idx, "orddd"));
  8755. ds_send.setColumn(0, "cretno", ds_grd_inpat.getColumn(idx, "cretno"));
  8756. ds_send.setColumn(0, "chosflag", "I");
  8757. ds_send.setColumn(0, "tabflag", "ALL");
  8758. ds_send.setColumn(0, "recall", "Y");
  8759. ds_send_reqdata.setColumn(0, "scrnid" , "SMMRC03000" );
  8760. ds_send.setColumn(0, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  8761. ds_send.setColumn(0, "orddeptcd", ds_grd_inpat.getColumn(idx, "orddeptcd"));
  8762. ds_send.setColumn(0, "reckind", ds_grd_inpat.getColumn(idx, "reckind"));
  8763. ds_send.setColumn(0, "itemindxseq", ds_grd_inpat.getColumn(idx, "midindxseq"));
  8764. ds_send.setColumn(0, "lisflag", ds_grd_inpat.getColumn(idx, "lisflag"));
  8765. ds_send.setColumn(0, "midbftest", ds_grd_inpat.getColumn(idx, "midbftest"));
  8766. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:'',pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N");
  8767. //xp code add : col id change!!!execprcpuniqno
  8768. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  8769. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  8770. var oParam = {};
  8771. oParam.id = "TRMRI03004";
  8772. oParam.service = "recmngtapp.IntegrityRec";
  8773. oParam.method = "reqGetRecDetailInfoByCondFlag";
  8774. oParam.inds = "req=ds_send";
  8775. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  8776. oParam.async = false;
  8777. oParam.callback = "cf_TRMRI03004";
  8778. tranf_submit(oParam);
  8779. //one transaction으로 변경해야함.
  8780. if(arErrorCode.pop("TRMRI03004") > -1){
  8781. if( ds_main_otherinfo.getColumn(0, "addimageyn") != "Y" ){
  8782. var noimg = "";
  8783. var imgarray = "";
  8784. var certcnt = ds_tmpinicert_iniinfo.rowcount;
  8785. for(var a = 0; a < certcnt ; a++ ){
  8786. var add_imgflag = ds_tmpinicert_iniinfo.getColumn(a, "imgflag");
  8787. var add_formcd = ds_tmpinicert_iniinfo.getColumn(a, "formcd");
  8788. var add_formprogflag = ds_tmpinicert_iniinfo.getColumn(a, "formprogflag");
  8789. if( !utlf_isNull(add_imgflag) ){
  8790. if( add_imgflag != "N" && add_formcd != "Z001" && add_formprogflag != "IMG" ){
  8791. if( a == 0 ){
  8792. noimg = ds_tmpinicert_iniinfo.getColumn(a, "signno");
  8793. }else{
  8794. noimg = noimg + "*" + ds_tmpinicert_iniinfo.getColumn(a, "signno");
  8795. }
  8796. }
  8797. }
  8798. }
  8799. imgarray = noimg.split("*");
  8800. for(var i = 0; i < imgarray.length ; i++ ){
  8801. for(var j = 0; j < certcnt ; j++ ){
  8802. if( imgarray[i] == ds_tmpinicert_iniinfo.getColumn(j, "signno") ){
  8803. ds_tmpinicert_iniinfo.deleteRow(j);
  8804. }
  8805. }
  8806. }
  8807. }
  8808. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo, "after");
  8809. ds_tmpinicert2_iniinfo.appendData(ds_tmpinicert_iniinfo);
  8810. }
  8811. }
  8812. }
  8813. fEmrImgRec();
  8814. }
  8815. function fMidIndxSet(val)
  8816. {
  8817. sysf_trace("***** fMidIndxSet("+val+") *****");
  8818. var curs = ds_grd_inapplist.rowposition;
  8819. var pid = ds_grd_inapplist.getColumn(curs, "pid");
  8820. var indd = ds_grd_inapplist.getColumn(curs, "indd");
  8821. var cretno = ds_grd_inapplist.getColumn(curs, "cretno");
  8822. var orddeptcd = ds_grd_inapplist.getColumn(curs, "orddeptcd");
  8823. var subNode = "";
  8824. //var midNodes = instance1.selectNodes("/root/main/midissinfo/emrapplist");
  8825. for(var i = 0; i < ds_grd_inpat.rowcount; i++)
  8826. {
  8827. if(ds_grd_inpat.getColumn(i, "pid") == pid
  8828. && ds_grd_inpat.getColumn(i, "orddd") == indd
  8829. && ds_grd_inpat.getColumn(i, "cretno") == cretno
  8830. && ds_grd_inpat.getColumn(i, "orddeptcd") == orddeptcd)
  8831. {
  8832. ds_grd_inpat.setColumn(i, "chk", val);
  8833. }
  8834. }
  8835. }
  8836. function fAddDetailContents()
  8837. {
  8838. sysf_trace("***** fAddDetailContents() *****");
  8839. try
  8840. {
  8841. var OldDeliverect = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  8842. var NewDeliverect = "";
  8843. if(!utlf_isNull(OldDeliverect))
  8844. {
  8845. NewDeliverect += OldDeliverect;
  8846. }
  8847. var tmpStr = iviewerIemr.fGetSelectChrtName(OldDeliverect);
  8848. if(!utlf_isNull(tmpStr))
  8849. {
  8850. NewDeliverect += tmpStr;
  8851. ds_main_appinfo_copyinfo.setColumn(0, "delivefact", NewDeliverect);
  8852. }
  8853. }
  8854. catch(e)
  8855. {
  8856. }
  8857. }
  8858. function fPrntDetailContents(category)
  8859. {
  8860. sysf_trace("***** fPrntDetailContents("+category+") *****");
  8861. try
  8862. {
  8863. var finalformnm = category;
  8864. //2012/03/13 Start
  8865. for(var i=0; i=ds_temp_hardcd2.rowcount; i++){
  8866. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  8867. var contents = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  8868. }else if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  8869. if(!utlf_isNull(after_delivefact)){
  8870. var contents=after_delivefact;
  8871. }else{
  8872. var contents = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  8873. }
  8874. }
  8875. }
  8876. //2012/03/13 End
  8877. var contentsArr = "";
  8878. if(!utlf_isNull(contents))
  8879. {
  8880. contentsArr = contents.split("\n");
  8881. for(var idx = 0; idx < contentsArr.length; idx++)
  8882. {
  8883. if(!utlf_isNull(contentsArr[idx]))
  8884. {
  8885. finalformnm += contentsArr[idx];
  8886. //2012/08/23 Start
  8887. if(idx==8){
  8888. finalformnm += "\n" + "~이하생략~";
  8889. break;
  8890. }
  8891. //2012/08/23 End
  8892. if((idx + 1) != contentsArr.length)
  8893. finalformnm += ", ";
  8894. }
  8895. }
  8896. }
  8897. if(finalformnm.substring( (finalformnm.length - 2), finalformnm.length ) == ", ")
  8898. {
  8899. finalformnm = finalformnm.substring( 0, (finalformnm.length - 2) );
  8900. }
  8901. return finalformnm;
  8902. }
  8903. catch(e)
  8904. {
  8905. }
  8906. }
  8907. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  8908. function fAddColorCalcScor() {
  8909. sysf_trace("***** fAddColorCalcScor() *****");
  8910. var colorcalcscorcd = ds_hidden_colorcalcscorcd.getColumn(0, "hardcd");
  8911. var colorcalcscornm = ds_hidden_colorcalcscorcd.getColumn(0, "hardcdnm");
  8912. for (var i=0; i < ds_grd_rcptlist.rowcount ; i++)
  8913. {
  8914. var calcscorcd = ds_grd_rcptlist.getColumn(i, "calcscorcd");
  8915. if (calcscorcd == colorcalcscorcd) {
  8916. var Msg = sysf_messageBox("수가코드 추가가 불", "I006");
  8917. return;
  8918. }
  8919. }
  8920. if (i == ds_grd_rcptlist.rowcount) {
  8921. //Event Off
  8922. ds_grd_rcptlist.enableevent = false;
  8923. var currentdate = utlf_getCurrentDate();
  8924. var lrow = ds_grd_rcptlist.addRow();
  8925. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", colorcalcscorcd);
  8926. ds_grd_rcptlist.setColumn(lrow, "calcscornm", colorcalcscornm);
  8927. // 처방코드(임시로 수가코드로 함)
  8928. ds_grd_rcptlist.setColumn(lrow, "prcpcd", colorcalcscorcd);
  8929. ds_grd_rcptlist.setColumn(lrow, "unitcost", "");
  8930. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  8931. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  8932. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  8933. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8934. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8935. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8936. ds_grd_rcptlist.setColumn(lrow, "shtno", "1");
  8937. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  8938. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  8939. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  8940. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", "1");
  8941. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8942. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8943. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8944. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  8945. var arrPostion = new Array();
  8946. arrPostion[0] = lrow;
  8947. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8948. //grd_rcptlist.addStatus(lrow, "insert");
  8949. //Event On
  8950. ds_grd_rcptlist.enableevent = true;
  8951. }
  8952. }
  8953. /**
  8954. * @desc : 마우스 오른쪽 버튼 팝업창
  8955. * @
  8956. * @param : 기본수가추가 (fAddCalcScor), 컬러수가추가 (fAddColorCalcScor), 수가삭제 (fDelCalcScor)
  8957. * @return :
  8958. * @authur : 이은영 2010.04.26
  8959. * @---------------------------------------------------
  8960. */
  8961. function fMouseRghtBtnPopup(gridObj, e)
  8962. {
  8963. sysf_trace("fMouseRghtBtnPopup(gridObj, e)");
  8964. var oDs = this.objects[gridObj.binddataset];
  8965. if( oDs.rowcount < 1 ) return;
  8966. if( e.row < 0 || e.col < 0 ) return;
  8967. popupmenu00.trackPopup(e.screenX,e.screenY);
  8968. }
  8969. /**
  8970. * @desc : 마우스 오른쪽 버튼 팝업창
  8971. * @
  8972. * @param : 기본수가추가 (fAddCalcScor)
  8973. * @return :
  8974. * @authur : 이은영 2010.04.26
  8975. * @---------------------------------------------------
  8976. */
  8977. function fAddCalcScor() {
  8978. sysf_trace("***** fAddCalcScor() *****");
  8979. var RecPrcpCd = ds_hidden_calcscorcd.getColumn(0, "hardcd"); // 의무기록 사본발행 기본수가코드
  8980. for (var i=0; i < ds_grd_rcptlist.rowcount ; i++)
  8981. {
  8982. var calcscorcd = ds_grd_rcptlist.getColumn(i, "calcscorcd");
  8983. if (calcscorcd == RecPrcpCd) {
  8984. var Msg = sysf_messageBox("수가코드 추가가 불", "I006");
  8985. return;
  8986. }
  8987. }
  8988. if (i == ds_grd_rcptlist.rowcount) {
  8989. fIssSearch();
  8990. }
  8991. }
  8992. /**
  8993. * @desc : 마우스 오른쪽 버튼 팝업창
  8994. * @
  8995. * @param : 수가삭제 (fDelCalcScor)
  8996. * @return :
  8997. * @authur : 이은영 2010.04.26
  8998. * @---------------------------------------------------
  8999. */
  9000. function fDelCalcScor() {
  9001. sysf_trace("***** fDelCalcScor() *****");
  9002. var row = ds_grd_rcptlist.rowposition;
  9003. if (row > -1) {
  9004. var rowstatus = ds_grd_rcptlist.rowstatus(row);
  9005. // rowstatus => 0 :empty 1 : normal 2 : insert 4 : update 8 : delete 16 : group
  9006. if (rowstatus == "2") {
  9007. var Msg = sysf_messageBox("선택하신 수가코드를", "Q001");
  9008. if(Msg=="6"){
  9009. ds_grd_rcptlist.deleteRow(row);
  9010. }
  9011. } else {
  9012. var Msg = sysf_messageBox("수가코드 삭제가 불", "I006");
  9013. return;
  9014. }
  9015. }
  9016. }
  9017. /**
  9018. * 이전사본발행내역에서 발행내역 삭제
  9019. */
  9020. function fdeletecopy(){
  9021. sysf_trace("***** fdeletecopy() *****");
  9022. var issno = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "issno");
  9023. if(!utlf_isNull(issno)){
  9024. alert("이미 발행된 사본내역은 삭제 불가능합니다");
  9025. return;
  9026. }else if(utlf_isNull(issno)){
  9027. var chk=sysf_messageBox("신청 내역을 삭제하시겠습니까? ", "S001", ""); //예:6 아니오:7 취소:2
  9028. if(chk=="6"){
  9029. ds_send_reqdata.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "copyseqno"));
  9030. ds_send_reqdata.setColumn(nRow, "lastupdtrid", sysf_getUserInfo("userid"));
  9031. var oParam = {};
  9032. oParam.id = "TXMRC01310";
  9033. oParam.service = "chrtmngtapp.ChrtRendMngt";
  9034. oParam.method = "setUpdateCopyState";
  9035. oParam.inds = "req=ds_send_reqdata";
  9036. //oParam.outds = "null";
  9037. oParam.async = false;
  9038. oParam.callback = "cf_TXMRC01310";
  9039. tranf_submit(oParam);
  9040. fAppCopyInfoClear();
  9041. //사본발행 수가입력쪽 삭제
  9042. ds_grd_rcptlist.clearData();
  9043. ds_grd_rcptlist.applyChange();
  9044. ds_temp2_appinfo_copyinfo.clearData();
  9045. ds_temp2_appinfo_copyinfo.addRow();
  9046. ds_main.clearData();
  9047. ds_main.addRow();
  9048. // model.resetInstanceNode("/root/main/rcptlist");
  9049. // model.resetInstanceNode("/root/temp2/appinfo/copyinfo");
  9050. // model.resetInstanceNode("/root/main/delivefactcnt");
  9051. // 이전사본발행내역에서 내역을 삭제한 후 reload
  9052. fReqGetBfCopyIssHistList(ipt_pid.text);
  9053. alert("삭제되었습니다");
  9054. }
  9055. }
  9056. }
  9057. /**
  9058. * 서 식 Header & Footer 정의 2013.08.26 CYW
  9059. * @param srcformcd
  9060. * @returns
  9061. */
  9062. function MakerHeaderNFooter( srcformcd , formprogflag , mainyn ){
  9063. sysf_trace("***** MakerHeaderNFooter( "+srcformcd+" , "+formprogflag+" , "+mainyn+" ) *****")
  9064. var instcd = sysf_getUserInfo("dutplceinstcd");
  9065. var formcd = srcformcd; // 서식코드
  9066. var cover_header = "";
  9067. var cover_header_start = "";
  9068. var cover_header_txt = "";
  9069. var cover_header_end = "";
  9070. var cover_footer = "";
  9071. var cover_footer_start = "";
  9072. var cover_footer_txt = "";
  9073. var cover_footer_end = "";
  9074. var body_header = "";
  9075. var body_footer = "";
  9076. //var logo = "com/commonweb/images/logo_lctech.png";
  9077. var logo = "IMAGES/emr/MN/logo_lctech.png";
  9078. // Cover Header 부분 ---------------------------------------------------------------------------------------------------
  9079. cover_header_start ="<HTML> " +
  9080. "\n<BODY style='margin: 0;'> " +
  9081. "\n<TABLE cellspacing='0' width='100%'> " +
  9082. "\n<TR> " +
  9083. "\n <TD width='65%'> " +
  9084. "\n <TABLE style='width=100%; font-family: 맑은 고딕;'> " +
  9085. "\n <TR> " +
  9086. "\n <TD> " +
  9087. "\n <IMG SRC='" + logo + "' /> " +
  9088. "\n </TD> " +
  9089. "\n </TR> " +
  9090. "\n <TR> " +
  9091. "\n <TD style='font-size: 18pt; text-align: center;'><!--?VAR_CHART_NAME_TOP?--></TD>" +
  9092. "\n </TR> " +
  9093. "\n <TR> " +
  9094. "\n <TD style='font-size: 14pt; text-align: center;'><!--?VAR_CHART_NAME_BOTTOM?--></TD>" +
  9095. "\n </TR> " +
  9096. "\n </TABLE> " +
  9097. "\n </TD> " +
  9098. "\n <TD width='35%' style='padding-right: 20px; padding-bottom: 5px'> " +
  9099. "\n <DIV style='border-style: solid; border-width: 1px; padding: 5px;'> " +
  9100. "\n <TABLE cellspacing='0' width='100%' style='font-family: 맑은 고딕;'> " +
  9101. "\n <TR> " +
  9102. "\n <TD style='font-size: 18pt' colspan='2'><!--?VAR_PAT_NUM?--></TD>" +
  9103. "\n </TR> " +
  9104. "\n <TR> " +
  9105. "\n <TD style='font-size: 18pt'><!--?VAR_PAT_NAME?--></TD> " +
  9106. "\n <TD style='font-size: 14pt'><!--?VAR_TREAT_DEPT?--></TD> " +
  9107. "\n </TR> " +
  9108. "\n <TR> " +
  9109. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_JUMIN_NO?--></TD> " +
  9110. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_AGE_SEX?--></TD> " +
  9111. "\n </TR> " +
  9112. "\n </TABLE> " +
  9113. "\n </DIV> " +
  9114. "\n </TD> " +
  9115. "\n</TR> " +
  9116. "\n</TABLE> " +
  9117. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'> " +
  9118. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9119. "\n <TR> " +
  9120. "\n <TD style='width: 50%; text-align: left'><!--?VAR_DATE_HEADER?--></TD> " +
  9121. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_DOCTOR_HEADER?--></TD> " +
  9122. "\n <TD style='width: 25%; text-align: center;'><!--?VAR_WARD_HEAD?--></TD> " +
  9123. "\n <TD style='width: 10%; text-align: right;'><!--?VAR_CLASS?--></TD> " +
  9124. "\n </TR> " +
  9125. "\n </TABLE> " +
  9126. "\n</DIV>";
  9127. cover_header_end = "\n</BODY>"+
  9128. "\n</HTML>";
  9129. // Cover Footer 부분 ---------------------------------------------------------------------------------------------------
  9130. cover_footer_start = "<HTML>"+
  9131. "\n<BODY style='margin: 0;'>"+
  9132. "\n"+
  9133. "\n<DIV>"+
  9134. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>"+
  9135. "\n <TR>";
  9136. cover_footer_end = "\n<DIV style='border-top-style: solid; border-width: 2px;'>"+
  9137. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  9138. "\n <TR>"+
  9139. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD>"+
  9140. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD>"+
  9141. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD>"+
  9142. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD>"+
  9143. "\n </TR>"+
  9144. "\n </TABLE>"+
  9145. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  9146. "\n <TR>"+
  9147. "\n <TD style='width: 20%; text-align: left; '></TD>"+
  9148. "\n </TR>"+
  9149. "\n </TABLE>"+
  9150. "\n</DIV>"+
  9151. "\n"+
  9152. "\n</BODY>"+
  9153. "\n</HTML>";
  9154. //Body Header 부분 ---------------------------------------------------------------------------------------------------
  9155. body_header = "<HTML>"+
  9156. "\n<BODY style='margin-top: 0; margin-left: 0; margin-right; 0;'> "+
  9157. "\n "+
  9158. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'>"+
  9159. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  9160. "\n <TR> "+
  9161. "\n <TD style='width: 10%; text-align: left; '><!--?VAR_PAT_NUM?--></TD> "+
  9162. "\n <TD style='width: 10%; text-align: center;'><!--?VAR_PAT_NAME?--></TD> "+
  9163. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_PAT_AGE_SEX?--></TD> "+
  9164. "\n <TD style='width: 55%; text-align: center;'><!--?VAR_DATE_HEADER?--></TD> "+
  9165. "\n <TD style='width: 10%; text-align: right; '><!--?VAR_CLASS?--></TD> "+
  9166. "\n </TR> "+
  9167. "\n </TABLE> "+
  9168. "\n</DIV> "+
  9169. "\n "+
  9170. "\n</BODY> "+
  9171. "\n</HTML>";
  9172. // Body Footer 부분 ---------------------------------------------------------------------------------------------------
  9173. body_footer = "<HTML>"+
  9174. "\n<BODY style='margin: 0;'> "+
  9175. "\n "+
  9176. "\n<DIV> "+
  9177. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  9178. "\n <TR> "+
  9179. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD> "+
  9180. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> "+
  9181. "\n </TR> "+
  9182. "\n </TABLE> "+
  9183. "\n</DIV> "+
  9184. "\n<DIV style='border-top-style: solid; border-width: 2px;'> "+
  9185. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  9186. "\n <TR> "+
  9187. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD> "+
  9188. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD> "+
  9189. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD> "+
  9190. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD> "+
  9191. "\n </TR> "+
  9192. "\n </TABLE> "+
  9193. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  9194. "\n <TR> "+
  9195. "\n <TD style='width: 20%; text-align: left; '></TD> "+
  9196. "\n </TR> "+
  9197. "\n </TABLE> "+
  9198. "\n</DIV> "+
  9199. "\n "+
  9200. "\n</BODY> "+
  9201. "\n</HTML>";
  9202. // ----------------------------------------------------------------------------------------------------------------------
  9203. if( srcformcd == "0000000003"){ //입원초진
  9204. cover_header_txt = "\n <DIV>" +
  9205. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9206. "\n <TR><TD style='text-align: left; font-weight: bold;'>입원일자 : <!--?VAR_ORDDATE?--></TD></TR> " +
  9207. "\n <TR><TD style='text-align: left; font-weight: bold;'>입 원 과 : <!--?VAR_INORDDEPTHNGNM?--></TD></TR> " +
  9208. "\n </TABLE>" +
  9209. "\n </DIV>";
  9210. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9211. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9212. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9213. "\n </TR>" +
  9214. "\n </TABLE>" +
  9215. "\n </DIV>";
  9216. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9217. }else if( srcformcd == "0000000676"){ //수술기록
  9218. cover_header = cover_header_start + cover_header_end;
  9219. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9220. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Surgeon : <!--?VAR_SURGEON?--></TD>"+
  9221. "\n </TR>"+
  9222. "\n <TR>"+
  9223. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  9224. "\n </TR>"+
  9225. "\n </TABLE>"+
  9226. "\n</DIV>";
  9227. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9228. }else if( srcformcd == "0000000679"){ //응급실기록
  9229. cover_header_txt = "\n<DIV>" +
  9230. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9231. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR>" +
  9232. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR>" +
  9233. "\n <TR><TD style='text-align: left; font-weight: bold;'></TD></TR>" +
  9234. "\n <TR><TD style='text-align: left; font-weight: bold;'>[환자 내원시간] : <!--?VAR_ERDT?--></TD></TR>" +
  9235. "\n </TABLE>" +
  9236. "\n</DIV>";
  9237. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9238. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9239. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9240. "\n </TR>" +
  9241. "\n </TABLE>" +
  9242. "\n </DIV>";
  9243. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9244. }else if( srcformcd == "0000000680"){ //입퇴원요약
  9245. cover_header_txt = "\n<DIV>" +
  9246. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>" +
  9247. "\n <TR><TD style='text-align: left; font-weight: bold;'>[입퇴원정보] </TD></TR>" +
  9248. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;입원일/입원과 : <!--?VAR_ININFO?--></TD></TR>" +
  9249. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;퇴원일/퇴원과 : <!--?VAR_DSCHINFO?--></TD></TR>" +
  9250. "\n </TABLE>" +
  9251. "\n</DIV>";
  9252. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9253. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9254. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Staff작성 및 확인 : <!--?VAR_STAFFNM?--></TD>"+
  9255. "\n </TR>"+
  9256. "\n <TR>"+
  9257. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  9258. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 의무기록사 : <!--?VAR_EMRRECUSRNM?--></TD>"+
  9259. "\n </TR>"+
  9260. "\n </TABLE>"+
  9261. "\n</DIV>";
  9262. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9263. }else if( srcformcd == "0000002022"){ //마취기록지
  9264. cover_header = cover_header_start + cover_header_end;
  9265. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9266. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9267. "\n </TR>" +
  9268. "\n </TABLE>" +
  9269. "\n </DIV>";
  9270. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9271. // }else if( srcformcd == "0000003325"){ //DSC기록
  9272. }else if( srcformcd == "0000003169"){ //Brief OP Note
  9273. cover_header = cover_header_start + cover_header_end;
  9274. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9275. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9276. "\n </TR>" +
  9277. "\n </TABLE>" +
  9278. "\n </DIV>";
  9279. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9280. }else{
  9281. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  9282. cover_header_txt = "\n<DIV>" +
  9283. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9284. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR>" +
  9285. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR>" +
  9286. "\n </TABLE>" +
  9287. "\n</DIV>";
  9288. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9289. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9290. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9291. "\n </TR>" +
  9292. "\n </TABLE>" +
  9293. "\n </DIV>";
  9294. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9295. }else{
  9296. cover_header = cover_header_start + cover_header_end;
  9297. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9298. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9299. "\n </TR>" +
  9300. "\n </TABLE>" +
  9301. "\n </DIV>";
  9302. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9303. }
  9304. }
  9305. var txt = cover_header + "♥" + cover_footer + "♥" + body_header + "♥" + body_footer;
  9306. return txt;
  9307. }
  9308. function MakeRecFile( hfflag, txt, htmltxt ){
  9309. sysf_trace("***** MakeRecFile( "+hfflag+", "+txt+", "+htmltxt+" ) *****");
  9310. var foldernm = "C:/CertrecPrnt" + sysf_getUserInfo("dutplceinstcd");
  9311. var local_path ="";
  9312. local_path = foldernm + "\\";
  9313. if( hfflag == "h" ){
  9314. //var headso = new ActiveXObject("Scripting.FileSystemObject");
  9315. if(fso.FileExists(local_path +txt + "_cover_header.html") == true)
  9316. {
  9317. fso.DeleteFile(local_path + txt + "_cover_header.html", true)
  9318. }
  9319. var h = fso.CreateTextFile( local_path + txt + "_cover_header.html" , true, true);
  9320. h.WriteLine(htmltxt);
  9321. h.Close();
  9322. }
  9323. if( hfflag == "f" ){
  9324. //var footso = new ActiveXObject("Scripting.FileSystemObject");
  9325. if(fso.FileExists(local_path + txt + "_cover_footer.html") == true)
  9326. {
  9327. fso.DeleteFile(local_path + txt + "_cover_footer.html", true)
  9328. }
  9329. var f = fso.CreateTextFile( local_path + txt + "_cover_footer.html" , true, true);
  9330. f.WriteLine(htmltxt);
  9331. f.Close();
  9332. }
  9333. }
  9334. ]]></Script>