SMMRC03100.xjs 477 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690
  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){
  78. ds_grd_apphist.enableevent = true;
  79. return;
  80. }
  81. //sysf_trace("***** cf_TRMRC03003 *****");
  82. ds_grd_apphist.rowposition = -1;
  83. ds_grd_apphist.enableevent = true;
  84. }
  85. function cf_TRMRC03016(sSvcId, nErrorCode, sErrorMsg) {
  86. arErrorCode.push(sSvcId, nErrorCode);
  87. if(nErrorCode < 0) return;
  88. //sysf_trace("***** cf_TRMRC03016 *****");
  89. var oDs = this.objects["ds_tmpinicert_iniinfo"];
  90. //xp code add : col id change!!!execprcpuniqno
  91. if( !utlf_isNull(oDs.getColumnInfo("execprcpuniqno")))
  92. oDs.updateColID("execprcpuniqno", "cmc_orderseqno");
  93. dsf_setDefaultVal(oDs, "all");
  94. }
  95. function cf_TRMRC03021(sSvcId, nErrorCode, sErrorMsg) {
  96. arErrorCode.push(sSvcId, nErrorCode);
  97. if(nErrorCode < 0) return;
  98. //sysf_trace("***** cf_TRMRC03021 *****");
  99. }
  100. function cf_TRMRI03004(sSvcId, nErrorCode, sErrorMsg) {
  101. arErrorCode.push(sSvcId, nErrorCode);
  102. if(nErrorCode < 0) return;
  103. //sysf_trace("***** cf_TRMRI03004 *****");
  104. var oDs = this.objects["ds_tmpinicert_iniinfo"];
  105. //xp code add : col id change!!!execprcpuniqno
  106. if( !utlf_isNull(oDs.getColumnInfo("execprcpuniqno")))
  107. oDs.updateColID("execprcpuniqno", "cmc_orderseqno");
  108. dsf_setDefaultVal(oDs, "all");
  109. }
  110. function cf_TRMRC03012(sSvcId, nErrorCode, sErrorMsg) {
  111. arErrorCode.push(sSvcId, nErrorCode);
  112. if(nErrorCode < 0) return;
  113. //sysf_trace("***** cf_TRMRC03012 *****");
  114. }
  115. function cf_TRMRC03023(sSvcId, nErrorCode, sErrorMsg) {
  116. arErrorCode.push(sSvcId, nErrorCode);
  117. if(nErrorCode < 0) return;
  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. // 조회기간 설정 기능 추가 (20190902 금정화)
  305. var defaultgap = "3%M" // 기본값 3개월
  306. swc_prof.out.roundrect6.cmb_searchprd.index = ds_cmb_searchprd.getColumn(ds_cmb_searchprd.findRow("code", defaultgap), "index");
  307. var tempgap = defaultgap.split("%");
  308. var initfromdd = (utlf_getCurrentDate().toDate()).getAddDate(Number("-" + tempgap[0]),tempgap[1]).getDateFormat();
  309. var inittodd = utlf_getCurrentDate();
  310. ds_searchprd.clearData();
  311. ds_searchprd.addRow();
  312. ds_searchprd.setColumn(0, "fromdd", initfromdd);
  313. ds_searchprd.setColumn(0, "todd", inittodd);
  314. // 의무기록 부서코드
  315. lf_getHardCDList("N", 5501, null, ds_temp_hardcd);
  316. //수가입력 버튼 제어
  317. // btn_crtfct(증명서) 버튼에서 기능사용.
  318. lf_getHardCDList("N", 5567, null, ds_temp_hardcd2);
  319. //사본발급 디테일 입력건수 보일지 여부
  320. lf_getHardCDList("N", 5630, null, ds_temp_hardcd3);
  321. //사본발행시 Split구분값 설정
  322. lf_getHardCDList("N", 5623, null, ds_temp_hardcd4);
  323. splittxt = ds_temp_hardcd4.getColumn(0, "hardcd");
  324. //사본발행 이미지포함 기능사용여부
  325. lf_getHardCDList("N", 5636, null, ds_temp_hardcd5);
  326. //사본발행시 자동반납 INSTCD별 설정.
  327. lf_getHardCDList("N", 9950, null, ds_temp_hardcd7);
  328. // 수가입력 후 화면 종료 대상자
  329. lf_getHardCDList("N", 9993, null, ds_temp_hardcd8);
  330. // [요청번호:20180521005] 사본신청 상세건수가 특정량 이상이면 메시지 띄우고 진행불가기능 개발
  331. lf_getHardCDList("N", 9994, null, ds_temp_hardcd9);
  332. var btnInstcd = sysf_getUserInfo("dutplceinstcd");
  333. if(btnInstcd == "031"){
  334. button14.visible = true; //위임장
  335. button15.visible = true; //동의서
  336. }else{
  337. button14.visible = false;//위임장
  338. button15.visible = false;//동의서
  339. }
  340. OcrImgUseFlag = ds_temp_hardcd5.getColumn(0, "hardcd");
  341. if( OcrImgUseFlag == "Y"){
  342. chk_addimageyn.visible = true;
  343. }else{
  344. chk_addimageyn.visible = false;
  345. }
  346. //2014.04.29 End
  347. //2012/02/29 Start 칠곡에서 사본발행시 병동위임장 버튼 안보이게 함
  348. //2015/03/16 병동위임장 버튼을 본원, 칠곡 모두 사용하지 않아 기능 주석처리.
  349. /*
  350. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  351. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  352. button4.visible=true;
  353. break;
  354. }
  355. }
  356. */
  357. //2012/02/29 End
  358. //2013/01/15 Start 하드코드 번호 5630번에 등록된 유저라면 신청내역 건수가 보이도록 수정
  359. for(var i=0; i<ds_temp_hardcd3.rowcount; i++){
  360. if(ds_temp_hardcd3.getColumn(i, "hardcd")==sysf_getUserInfo("userid")){
  361. caption18.visible=true;
  362. output1.visible=true;
  363. break;
  364. }
  365. }
  366. ds_main.setColumn(0, "delivefactcnt", "");
  367. //2013/01/15 End
  368. //20140820 이윤주수정
  369. // jw.choe 같은 경로에 다른 코드 조회, 결과는 최종 코드만...
  370. //lf_getHardCDList("N", 5976, null, ds_temp_hardcd6); //최초작성일자 보이는 기록지
  371. lf_getHardCDList("N", 5977, null, ds_temp_hardcd6); //헤더정보를 기록시점의 icdr를 읽어서 표시
  372. var paminfo = sysf_getGlobalVariable("paminfo");
  373. if(!utlf_isNull(paminfo)){
  374. ds_main_paminfo.clearData();
  375. dsf_setCSVToDs("ds_main_paminfo", paminfo);
  376. var ioflag = ds_main_paminfo.getColumn(0, "ioflag");
  377. if(!utlf_isNull(opener.frmf_getParameter("SMMRC03000_pid"))) { // 통합기록조회
  378. if(opener.frmf_getParameter("SMMRC03000_pid") != ds_main_paminfo.getColumn(0, "pid")) {
  379. sysf_messageBox("사본신청은 진료중인 환자에 대해서만 신청이 가능합니다.\n등록번호를 상단 환자등록번호와 일치시켜서","C003");
  380. return;
  381. }
  382. }
  383. ds_main_cond.setColumn(0, "pid", ds_main_paminfo.getColumn(0, "pid"));
  384. ds_main_cond.setColumn(0, "hngnm", ds_main_paminfo.getColumn(0, "hngnm"));
  385. ds_main_cond.setColumn(0, "ioflag", ds_main_paminfo.getColumn(0, "ioflag"));
  386. if ((ioflag == "I") || (ioflag == "E") || (ioflag == "D"))
  387. {
  388. ds_main_cond.setColumn(0, "orddd", ds_main_paminfo.getColumn(0, "indd"));
  389. ds_main_cond.setColumn(0, "orddeptnm", ds_main_paminfo.getColumn(0, "orddeptnm"));
  390. ds_main_cond.setColumn(0, "orddeptcd", ds_main_paminfo.getColumn(0, "orddeptcd"));
  391. ds_main_cond.setColumn(0, "roomcd", ds_main_paminfo.getColumn(0, "roomcd"));
  392. ds_main_cond.setColumn(0, "dschdd", ds_main_paminfo.getColumn(0, "dschdd"));
  393. //fClikInTab();
  394. var e = new ClickEventInfo;
  395. frmf_inputEnterKey("btn_in", "onclick", e);
  396. //btn_in.dispatch("onclick");
  397. }
  398. else
  399. {
  400. ds_main_cond.setColumn(0, "orddd", ds_main_paminfo.getColumn(0, "orddd"));
  401. var e = new ClickEventInfo;
  402. frmf_inputEnterKey("btn_out", "onclick", e);
  403. //btn_out.dispatch("onclick");
  404. //fClikOutTab();
  405. }
  406. ds_main_cond.setColumn(0, "cretno", ds_main_paminfo.getColumn(0, "cretno"));
  407. //ds_main_cond.setColumn(0, "ioflag", ds_main_paminfo.getColumn(0, "ordtype"));
  408. ds_main_cond.setColumn(0, "rrgstno1", ds_main_paminfo.getColumn(0, "rrgstno1"));
  409. ds_main_cond.setColumn(0, "rrgstno2" , "*******");
  410. sex = ds_main_paminfo.getColumn(0, "sex");
  411. age = ds_main_paminfo.getColumn(0, "age");
  412. ds_main_cond.setColumn(0, "sa", sex.concat("/").concat(age));
  413. ds_main_cond.setColumn(0, "age", age);
  414. }
  415. var userinfo = sysf_getUserInfo("dutplcecd");
  416. var userid = sysf_getUserId();
  417. var jobkindcd = sysf_getUserInfo("jobkindcd");
  418. lf_getHardCDList("N", 1200, null, ds_tmphdcd); //저장 후 창닫힘 여부
  419. userid = userid.getTrim();
  420. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  421. //if(userinfo == "3230000000"){ // 의료정보
  422. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  423. {
  424. // KNUH_20101124_박성호_end
  425. parent.position.height = "967";
  426. // right
  427. caption14.position.y = "785";
  428. caption20.position.y = "785";
  429. btn_cnfm.position.y = "782";
  430. rdo_lang.position.y = "782";
  431. btn_crtfct.position.y = "782";
  432. //btn_crtfct.position.top = "783";
  433. textarea2.position.y = "802";
  434. grd_rcptlist.position.y = "802";
  435. button6.position.y = "884";
  436. button7.position.y = "884";
  437. button5.position.y = "884";
  438. button8.position.y = "884";
  439. btn_recepinfo.position.y = "782"; // 141118 - AYS 추가
  440. chk_recepinfo.position.y = "782";
  441. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  442. btn_colorcalcscoryn.position.y = "782";
  443. //mmbfGetHardCodeInfo("/root/send/reqdata","/root/hidden/inputbox", 1111); //의무기록 사본발행수가코드
  444. //g_inputbox = model.getValue("/root/hidden/inputbox/hardcd/hardcd");//의무기록 사본발행 수가코드
  445. g_inputbox = lf_getHardCDList("Y", 1111, 3, null);
  446. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  447. {
  448. // 부수 입력칸 추가..
  449. caption28.position.y = "884";
  450. caption29.position.y = "884";
  451. caption16.position.y = "884";
  452. ipt_emrappcopies.position.y = "884";
  453. button10.position.y = "782";
  454. input1.position.y = "884";
  455. caption11.position.y = "882";
  456. ipt_cost.position.y = "884";
  457. caption30.position.y = "884";
  458. caption31.position.y = "882";
  459. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  460. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  461. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  462. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "prcptims"), "edittype", "none");
  463. ds_grd_rcptlist.applyChange();
  464. }else{ // 수가가 추가 수가코드로 이루어진 경우
  465. }
  466. // left
  467. swc_prof.position.height = "363";//343
  468. swc_prof.out.grd_outpat.position.height = "320";//330
  469. group1.position.y = "680";
  470. caption24.position.y = "785";
  471. caption18.position.y = "785";
  472. output1.position.y = "782";
  473. txt_delivefact.position.y = "802";
  474. txt_delivefact.position.height = "75";
  475. btn_reappinfo.position.y = "884";
  476. button3.position.y = "884";
  477. btn_update.position.y = "884";
  478. btn_save.position.y = "884";
  479. // 상세내역추가
  480. button12.position.y = "778";
  481. // switch
  482. if(btn_in.getSelectStatus()) {
  483. group1.visible = false;
  484. swc_prof.position.height = "450";
  485. swc_prof.in.grd_inapplist.position.height = "200";
  486. swc_prof.in.caption10.position.y = "197";
  487. //line7.position.top = "218px";
  488. //grd_emrapplist.position.top = "212px";
  489. //grd_emrapplist.attribute("height") = "140px";
  490. swc_prof.in.grd_inpat.position.y = "212";
  491. swc_prof.in.grd_inpat.position.height = "140";
  492. }
  493. if(btn_out.getSelectStatus()) {
  494. swc_prof.tabindex = 0;
  495. //model.toggle("out" );
  496. group1.visible = true;
  497. swc_prof.position.height = "343";
  498. swc_prof.out.grd_outpat.position.height = "310";
  499. group1.position.y = "680";
  500. caption24.position.y = "785";
  501. caption18.position.y = "785";
  502. output1.position.y = "782";
  503. txt_delivefact.position.y = "802";
  504. txt_delivefact.position.height = "75";
  505. btn_reappinfo.position.y = "884";
  506. button3.position.y = "884";
  507. btn_update.position.y = "884";
  508. btn_save.position.y = "884";
  509. }
  510. iviewerIemr.position.height = "710";
  511. /*
  512. var e = new SizeEventInfo;
  513. frmf_inputEnterKey("iviewerIemr", "onsize", e);
  514. */
  515. cmb_emrorddeptcd.enable = true;
  516. cmb_orddrid.enable = true;
  517. fSetSugaCode();
  518. fSetData();
  519. }else{
  520. if(jobkindcd == "0330" || jobkindcd == "0332") { // 의사일 경우
  521. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", null, null, "ds_init_cmb_emrorddeptcd", false, null); //전체 진료과
  522. /*frmf_addComboItem("cmb_emrorddeptcd","전체","-", "above");*/
  523. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", sysf_getUserInfo("dutplcecd")); // 신청과
  524. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  525. ds_main_appinfo_copyinfo.setColumn(0, "appdrid",userid); //신청의
  526. iviewerIemr.position.height = "710";
  527. /*
  528. var e = new SizeEventInfo;
  529. frmf_inputEnterKey("iviewerIemr", "onsize", e);
  530. */
  531. cmb_emrorddeptcd.enable = false;
  532. cmb_orddrid.enable = false;
  533. // 접근제한 환자인지 확인
  534. ds_send_cond.clearData();
  535. ds_send_cond.addRow();
  536. ds_send_cond.setColumn(0, "pid", ds_main_paminfo.getColumn(0, "pid"));
  537. var objColInfo = new Array();
  538. objColInfo.push({col: "pid", type:"string", size:256});
  539. objColInfo.push({col: "prntlim", type:"string", size:256});
  540. objColInfo.push({col: "limrem", type:"string", size:256});
  541. dsf_createDs("ds_tmppatinfo_accessiblepatinfo", objColInfo, true);
  542. var oParam = {};
  543. oParam.id = "TRMRC03103";
  544. oParam.service = "chrtmngtapp.CopyIssMngt";
  545. oParam.method = "reqGetAccessiblePatInfo";
  546. oParam.inds = "req=ds_send_cond";
  547. oParam.outds = "ds_tmppatinfo_accessiblepatinfo=accessiblepatinfo";
  548. oParam.async = false;
  549. oParam.callback = "cf_TRMRC03103";
  550. tranf_submit(oParam);
  551. if(ds_tmppatinfo_accessiblepatinfo.getColumn(0, "prntlim") == "Y") {
  552. if(!utlf_isNull(ds_tmppatinfo_accessiblepatinfo.getColumn(0, "limrem"))) {
  553. var limrem = ds_tmppatinfo_accessiblepatinfo.getColumn(0, "limrem");
  554. var pid = ds_main_cond.getColumn(0, "pid");
  555. var name = ds_main_cond.getColumn(0, "hngnm");
  556. if (!lf_secretpid(pid)) {
  557. return;
  558. }
  559. //sysf_messageBox(" " + pid + "(" + name + ") : " + limrem +" " + "\n 유의환자", "I009");
  560. }
  561. }
  562. } else{ // 의사가 아닐경우
  563. //iviewerIemr.attribute("height") = "590px";
  564. }
  565. this.titletext = "사본발행신청";
  566. caption22.visible = true;
  567. caption6.visible = false;
  568. }
  569. iviewerIemr.enableevent = true;
  570. iviewerIemr.enableredraw = true;
  571. if (jobkindcd == "1140" || jobkindcd == "1110")
  572. {
  573. fSetData();
  574. fSetDisabled();
  575. }
  576. iviewerIemr.setupChart("ThumbView"); // 여러페이지 보기 default
  577. ipt_pid.setFocus();
  578. //model.removeNodeset("/root/temp/issinfo/emrlist");
  579. ds_grd_outapplist.clearData(); //model.removeNodeset("/root/temp/issinfo/emrlist");
  580. ds_grd_inapplist.clearData(); //model.removeNodeset("/root/main/inpathistlist/inpathistlist");
  581. ds_grd_emrapplist.clearData(); //model.removeNodeset("/root/main/issinfo/emrapplist");
  582. ds_grd_outpat.clearData(); //model.removeNodeset("/root/main/outpathistlist/outpathistlist");
  583. ds_grd_inpat.clearData(); //model.removeNodeset("/root/main/midissinfo/emrapplist");
  584. ds_grd_apphist.clearData(); //model.removeNodeset("/root/main/apphist/applist");
  585. ds_grd_rcptlist.clearData(); //model.removeNodeset("/root/main/rcptlist/rcptlist");
  586. appf_getCodeList([{dsNm: "ds_init_ioflaglist_P0001", cdGrpId: "P0001"}, {dsNm: "ds_init_issgoalcd_M0332", cdGrpId: "M0332"}, {dsNm: "ds_init_prcpstatcd_M0011", cdGrpId: "M0011"}], true);
  587. //zbcfGetCodeList(new Array("P0001","M0332", "M0011"),new Array("/root/init/ioflaglist","/root/init/issgoalcd", "/root/init/prcpstatcd"));
  588. lf_mmbfGetDeptCodeComboList(ds_init_orddept, "A", utlf_getCurrentDate()); //부서코드 콤보
  589. var fromdd = ((utlf_getCurrentDate()).toDate()).getAddDate(-1, "Y");
  590. //시작일자, 종료일자 설정
  591. ds_main_cond.setColumn(0, "fromdd", fromdd.getDateFormat());
  592. ds_main_cond.setColumn(0, "todd" , utlf_getCurrentDate());
  593. ds_main_out.setColumn(0, "fromdd" , fromdd.getDateFormat());
  594. ds_main_out.setColumn(0, "todd" , utlf_getCurrentDate());
  595. ds_main_in.setColumn(0, "fromdd" , fromdd.getDateFormat());
  596. ds_main_in.setColumn(0, "todd" , utlf_getCurrentDate());
  597. //ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  598. grdf_initGrid(swc_prof.in.grd_inpat);
  599. grdf_initGrid(swc_prof.out.grd_outpat);
  600. // swc_prof.in.grd_inpat.setCellProperty("Head", swc_prof.in.grd_inpat.getBindCellIndex("body", "chk"),"text","expr:0");
  601. // swc_prof.out.grd_outpat.setCellProperty("Head", swc_prof.out.grd_outpat.getBindCellIndex("body", "chk"),"text","expr:0");
  602. // '14.11.05 - AYS 추가
  603. dsf_createDs("ds_envinfo");
  604. ds_envinfo.copyData(emr_getOrderBaseInfo("envinfo"));
  605. //fGetUserEnvOcsOrdAnsw("/root/send/reqdata", "/root/envinit/ocrflagyn", "062");
  606. var ocrflagyn = ds_envinfo.lookup("qestcd", "062", "answcnt");
  607. switch(ocrflagyn)
  608. {
  609. case "001" : // OCR 포함 체크 Y
  610. ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  611. break;
  612. case "002" : // OCR 포함 체크 N
  613. ds_main_otherinfo.setColumn(0, "addimageyn", "N");
  614. break;
  615. default:
  616. ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  617. break;
  618. }
  619. if(!utlf_isNull(ipt_pid.text))
  620. {
  621. fReqGetBfCopyIssHistList(ipt_pid.text); // 사본발행내역
  622. // 병리, 영상 발행정보 조회
  623. lf_getIssInfo(ipt_pid.text, utlf_getCurrentDate());
  624. }
  625. //iviewerIemr.refresh();
  626. if( !utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")) || jobkindcd == "1140" || jobkindcd == "1110") {
  627. var mainObj = opener;
  628. if( frmf_checkOpener() == false ){
  629. mainObj = frmf_getMainViewer();
  630. }
  631. if( mainObj.frmf_getParameter("SMMRC03000_param_ioflagnm") == "덤프" ){
  632. var nFindRow = ds_grd_apphist.findRow("copyseqno", mainObj.frmf_getParameter("SMMRC03000_param_copyseqno"));
  633. if( nFindRow > -1 ){
  634. ds_grd_apphist.rowposition = nFindRow;
  635. }
  636. sysf_messageBox("덤프된 내역이 존재합니다. 재신청 하시기 바랍니다.", "I");
  637. }
  638. }
  639. if(jobkindcd == "0330" || jobkindcd == "0332") { // 의사일 경우
  640. fReqGetOutPatHistList(); // 외래진료내역
  641. fReqGetInPatHistList(); // 입원진료내역
  642. fReqGetPaperYN(); // 종이차트유무
  643. }
  644. if ((ioflag == "I") || (ioflag == "E") || (ioflag == "D"))
  645. {
  646. fClikInTab();
  647. }
  648. else
  649. {
  650. fClikOutTab();
  651. }
  652. //ds_main_otherinfo.setColumn(0, "addimageyn", "Y");
  653. //임시 테스트용(이윤주)
  654. if (sysf_getUserInfo("dutplcecd") == "3230000000" || sysf_getUserInfo("userid") == "EMR" || sysf_getUserInfo("userid") == "ENR" ) {
  655. cmb_histprntyn.visible = true;
  656. chx_pagingyn.visible = true;
  657. }
  658. }
  659. /**
  660. * @desc : 세션값을 읽어 해당환자의 사본신청 이력 조회
  661. * @
  662. * @param :
  663. * @return :
  664. * @---------------------------------------------------
  665. */
  666. function fSetData()
  667. {
  668. utlf_addLog("**** fSetData() *****");
  669. appf_getInOutOrdDeptList(sysf_getUserInfo("dutplceinstcd"), "depthngnm", "asc", null, null, "ds_init_cmb_emrorddeptcd", false, null); //전체 진료과
  670. frmf_addComboItem("cmb_emrorddeptcd","전체","-", "above");
  671. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd","-"); // 신청과
  672. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");
  673. this.titletext = "사본신청/발급";
  674. caption22.visible = false;
  675. caption6.visible = true;
  676. var mainObj = opener;
  677. if( frmf_checkOpener() == false ){
  678. mainObj = frmf_getMainViewer();
  679. }
  680. if(!utlf_isNull(mainObj.frmf_getParameter("SMMRC03000_param_pid"))) {
  681. ds_main_cond.setColumn(0, "pid", mainObj.frmf_getParameter("SMMRC03000_param_pid"));
  682. //ds_main_cond.setColumn(0, "hngnm", opener.frmf_getParameter("SMMRC03000_param_hngnm"));
  683. //ds_main_cond.setColumn(0, "rrgstno1", opener.frmf_getParameter("SMMRC03000_param_rrgstno1"));
  684. //ds_main_cond.setColumn(0, "rrgstno2", opener.frmf_getParameter("SMMRC03000_param_rrgstno2"));
  685. ds_main_cond.setColumn(0, "copyseqno", mainObj.frmf_getParameter("SMMRC03000_param_copyseqno"));
  686. fReqGetComnPatOrdInfo(mainObj.frmf_getParameter("SMMRC03000_param_pid"));
  687. fReqGetPaperYN(); // 종이차트 유무여부
  688. if(mainObj.frmf_getParameter("SMMRC03000_param_prntlim") == "Y") {
  689. if(!utlf_isNull(ds_main_paper.getColumn(0, "limrem"))) {
  690. var limrem = ds_main_paper.getColumn(0, "limrem");
  691. var pid = ds_main_cond.getColumn(0, "pid");
  692. var name = ds_main_cond.getColumn(0, "hngnm");
  693. //sysf_messageBox(" " + pid + "(" + name + ") : " + limrem +" " + "\n 유의환자", "I009");
  694. if (!lf_secretpid(pid)) {
  695. this.reload();
  696. }
  697. }
  698. }
  699. }
  700. frmf_clearParameter("SMMRC03000_param_pid");
  701. //frmf_clearParameter("SMMRC03000_param_hngnm");
  702. //frmf_clearParameter("SMMRC03000_param_rrgstno1");
  703. //frmf_clearParameter("SMMRC03000_param_rrgstno2");
  704. frmf_clearParameter("SMMRC03000_param_copyseqno");
  705. frmf_clearParameter("SMMRC03000_param_prntlim");
  706. }
  707. /**
  708. * @desc : 사본 신청/발급 관련된 실행 버튼 disable 설정
  709. * @
  710. * @param :
  711. * @return :
  712. * @---------------------------------------------------
  713. */
  714. function fSetDisabled()
  715. {
  716. button12.enable = false; //상세내역추가
  717. btn_reappinfo.enable = false; //재신청
  718. button3.enable = false; //초기화
  719. btn_update.enable = false; //신청내역수정
  720. btn_save.enable = false; //신청내역저장
  721. button6.enable = false; //메모저장
  722. button7.enable = false; //사본출력
  723. button5.enable = false; //처방이력
  724. button8.enable = false; //수가입력
  725. swc_prof.out.button9.enable = false; //기록조회
  726. }
  727. /**
  728. * @desc : 환자진료정보 조회 및 설정
  729. * @
  730. * @param : pid : 등록번호
  731. * @return :
  732. * @---------------------------------------------------
  733. */
  734. function fReqGetComnPatOrdInfo(pid){
  735. //fMersPatChk("EMR", pid); // 메르스 안내 메세지 팝업
  736. fIsolatePatChk(); // KIMS DUR 격리환자 조회
  737. ds_send_reqdata.clearData();
  738. var nRow = ds_send_reqdata.addRow();
  739. ds_send_reqdata.setColumn(nRow, "pid" , pid);
  740. ds_send_reqdata.setColumn(nRow, "orddeptcd", "-");
  741. ds_send_reqdata.setColumn(nRow, "orddrid", "-");
  742. ds_send_reqdata.setColumn(nRow, "srchmode" , "F");
  743. dsf_setDefaultVal(ds_send_reqdata, "orddeptcd:-,orddrid:-");
  744. var oParam = {};
  745. oParam.id = "TRMMR05501";
  746. oParam.service = "medirecapp.ExtnMediRec";
  747. oParam.method = "reqGetPatHistList";
  748. oParam.inds = "req=ds_send_reqdata";
  749. oParam.outds = "ds_main_result_pathistlist=pathistlist";
  750. oParam.async = false;
  751. oParam.callback = "cf_TRMMR05501";
  752. tranf_submit(oParam);
  753. if(arErrorCode.pop("TRMMR05501") > -1 ){
  754. dsf_setDefaultVal(ds_main_result_pathistlist, "all");
  755. if(ds_main_result_pathistlist.rowcount > 0){
  756. var pid = ds_main_result_pathistlist.getColumn(0, "pid");
  757. var orddd = ds_main_result_pathistlist.getColumn(0, "orddd");
  758. var cretno = ds_main_result_pathistlist.getColumn(0, "cretno");
  759. var hngnm = ds_main_result_pathistlist.getColumn(0, "hngnm");
  760. var sex = ds_main_result_pathistlist.getColumn(0, "sex");
  761. var age = ds_main_result_pathistlist.getColumn(0, "age");
  762. var brthdd = ds_main_result_pathistlist.getColumn(0, "brthdd");
  763. var rrgstno1 = ds_main_result_pathistlist.getColumn(0, "rrgstno1");
  764. var rrgstno2 = ds_main_result_pathistlist.getColumn(0, "rrgstno2");
  765. var addr = ds_main_result_pathistlist.getColumn(0, "addr");
  766. var hometel = ds_main_result_pathistlist.getColumn(0, "hometel");
  767. var ioflag = ds_main_result_pathistlist.getColumn(0, "ordtype");
  768. var orddeptcd= ds_main_result_pathistlist.getColumn(0, "orddeptcd");
  769. var orddeptnm= ds_main_result_pathistlist.getColumn(0, "orddeptnm");
  770. }else{
  771. sysf_messageBox("환자 정보를 찾을 수", "I004");
  772. return;
  773. }
  774. ds_main_cond.setColumn(0, "pid" , pid);
  775. //ds_main_cond.setColumn(0, "orddd" , orddd);
  776. //ds_main_cond.setColumn(0, "cretno" , cretno);
  777. ds_main_cond.setColumn(0, "hngnm" , hngnm);
  778. ds_main_cond.setColumn(0, "rrgstno1" , rrgstno1);
  779. //ds_main_cond.setColumn(0, "rrgstno2" , rrgstno2.substring(0, 1) + "******");
  780. ds_main_cond.setColumn(0, "rrgstno2" , rrgstno2);
  781. ds_main_cond.setColumn(0, "age" , age);
  782. ds_main_cond.setColumn(0, "sa" , sex.concat("/").concat(age));
  783. if(age < parseInt(14)) {
  784. ds_main_appinfo_copyinfo.setColumn(0, "appmanflag", "2");
  785. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "Y");
  786. }
  787. fSetRcptpossynmsg(ds_main_cond.getColumn(0, "pid")); //무인수납 가능 여부 조회, 2010.03.08 주희경
  788. }
  789. }
  790. /**
  791. * @desc 이전사본발행 내역조회
  792. * @param pid : 등록번호
  793. */
  794. function fReqGetBfCopyIssHistList(pid){
  795. ds_grd_emrapplist.clearData(); //model.removeNodeset("/root/main/issinfo/emrapplist");
  796. ds_tmpinicert2_iniinfo.clearData(); //model.removeNodeset("/root/tmpinicert2/iniinfo");
  797. ds_send_reqdata.clearData();
  798. ds_send_reqdata.addRow();
  799. ds_send_reqdata.setColumn(0, "pid", pid);
  800. ds_grd_apphist.enableevent = false;
  801. var oParam = {};
  802. oParam.id = "TRMRC03003";
  803. oParam.service = "chrtmngtapp.CopyIssMngt";
  804. oParam.method = "reqGetCopyIssHist";
  805. oParam.inds = "req=ds_send_reqdata";
  806. oParam.outds = "ds_grd_apphist=applist";
  807. oParam.async = false;
  808. oParam.callback = "cf_TRMRC03003";
  809. tranf_submit(oParam);
  810. }
  811. /**
  812. * @desc : EMR부서콤보 조회
  813. * @
  814. * @param : ref - reference path
  815. * rsltref - result reference path
  816. * orddeptflag- 진료과구분
  817. * @return :
  818. * @author : 오지훈
  819. * @---------------------------------------------------
  820. */
  821. /*
  822. function mmbfGetDeptCodeComboList(ref, rsltref, orddeptflag, stnddd){
  823. var mmb_rsltref = "/root/hidden/mmb/orddept";
  824. model.removeNode(mmb_rsltref);
  825. model.makeNode(mmb_rsltref);
  826. model.removeNode(ref);
  827. model.makeValue(ref + "/orddeptflag", orddeptflag);
  828. if(stnddd != ""){
  829. model.makeValue(ref + "/stnddd", stnddd);
  830. }
  831. if(submit("TRMMB04101", "false", ref, mmb_rsltref)==true){
  832. model.copyNode(rsltref, mmb_rsltref);
  833. model.removeNode(mmb_rsltref);
  834. }
  835. model.refresh();
  836. }
  837. */
  838. /**
  839. * @desc : 하드코드 조회
  840. * @
  841. * @param : ref - reference path
  842. * rsltref - result reference path
  843. * hardcd - 하드코드
  844. * @return :
  845. * @author : 오지훈
  846. * @---------------------------------------------------
  847. */
  848. /*
  849. function mmbfGetHardCodeInfo(ref, rsltref, hardcd){
  850. var mmb_rsltref = "/root/hidden/mmb/hardcd";
  851. model.removeNode(mmb_rsltref);
  852. model.makeNode(mmb_rsltref);
  853. model.removeNode(ref);
  854. model.makeValue(ref + "/hardcd", hardcd);
  855. if(submit("TRMMB04103", "false", ref, mmb_rsltref)==true){
  856. model.copyNode(rsltref, mmb_rsltref);
  857. model.removeNode(mmb_rsltref);
  858. }
  859. model.refresh();
  860. }
  861. */
  862. /**
  863. * @desc : 하드코드 조회 (하드코드, 하드코드명)
  864. * @
  865. * @param : ref - reference path
  866. * rsltref - result reference path
  867. * hardcd - 하드코드
  868. * @return :
  869. * @author : 오지훈
  870. * @---------------------------------------------------
  871. */
  872. /*
  873. function mmbfGetHardCodeInfoNm(ref, rsltref, hardcd){
  874. var mmb_rsltref = "/root/hidden/mmb/hardcd";
  875. model.removeNode(mmb_rsltref);
  876. model.makeNode(mmb_rsltref);
  877. model.removeNode(ref);
  878. model.makeValue(ref + "/hardcd", hardcd);
  879. if(submit("TRMMB04105", "false", ref, mmb_rsltref)==true){
  880. model.copyNode(rsltref, mmb_rsltref);
  881. model.removeNode(mmb_rsltref);
  882. }
  883. model.refresh();
  884. }
  885. */
  886. /**
  887. * @desc : 외래환자 이력조회
  888. *
  889. * @param :
  890. * @return:
  891. */
  892. function fReqGetOutPatHistList(param){
  893. utlf_addLog("***** fReqGetOutPatHistList("+param+") *****");
  894. ds_send_reqdata.clearData();
  895. var nRow = ds_send_reqdata.addRow();
  896. if(param == "Y") {
  897. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_out.getColumn(0, "fromdd"));
  898. ds_send_reqdata.setColumn(nRow, "todd", ds_main_out.getColumn(0, "todd"));
  899. if(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd") != "-")
  900. ds_send_reqdata.setColumn(nRow, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  901. }
  902. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  903. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  904. if(param == "T") {
  905. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_out.getColumn(0, "fromdd"));
  906. ds_send_reqdata.setColumn(nRow, "todd", ds_main_out.getColumn(0, "todd"));
  907. ds_send_reqdata.setColumn(nRow, "anoinfo", "Y");
  908. }
  909. var userinfo = sysf_getUserInfo("dutplcecd");
  910. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  911. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  912. {
  913. // KNUH_20101124_박성호_end
  914. ds_send_reqdata.setColumn(nRow, "orddeptcd", userinfo);
  915. }
  916. ds_grd_outpat.clearData();
  917. var oParam = {};
  918. oParam.id = "TRMRC03004";
  919. oParam.service = "chrtmngtapp.CopyIssMngt";
  920. oParam.method = "reqGetOutPatHistList";
  921. oParam.inds = "req=ds_send_reqdata";
  922. oParam.outds = "ds_grd_outpat=outpathistlist";
  923. oParam.async = false;
  924. oParam.callback = "cf_TRMRC03004";
  925. tranf_submit(oParam);
  926. }
  927. /**
  928. * @desc : 입원환자 이력조회
  929. *
  930. * @param :
  931. * @return:
  932. */
  933. function fReqGetInPatHistList(param){
  934. utlf_addLog("***** fReqGetInPatHistList " + param + " *****");
  935. ds_grd_inpat.clearData(); //model.removeNodeset("/root/main/midissinfo/emrapplist");
  936. ds_send_reqdata.clearData();
  937. var nRow = ds_send_reqdata.addRow();
  938. if(param == "Y") {
  939. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_in.getColumn(0, "fromdd"));
  940. ds_send_reqdata.setColumn(nRow, "todd", ds_main_in.getColumn(0, "todd"));
  941. if(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd") != "-")
  942. ds_send_reqdata.setColumn(nRow, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  943. }
  944. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  945. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  946. if(param == "T") {
  947. ds_send_reqdata.setColumn(nRow, "anoinfo", "Y");
  948. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_in.getColumn(0, "fromdd"));
  949. ds_send_reqdata.setColumn(nRow, "todd", ds_main_in.getColumn(0, "todd"));
  950. }
  951. var userinfo = sysf_getUserInfo("dutplcecd");
  952. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  953. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  954. {
  955. // KNUH_20101124_박성호_end
  956. ds_send_reqdata.setColumn(nRow, "orddeptcd", userinfo);
  957. }
  958. ds_grd_inapplist.clearData();
  959. var oParam = {};
  960. oParam.id = "TRMRC03005";
  961. oParam.service = "chrtmngtapp.CopyIssMngt";
  962. oParam.method = "reqGetInPatHistList";
  963. oParam.inds = "req=ds_send_reqdata";
  964. oParam.outds = "ds_grd_inapplist=inpathistlist";
  965. oParam.async = false;
  966. oParam.callback = "cf_TRMRC03005";
  967. tranf_submit(oParam);
  968. if(arErrorCode.pop("TRMRC03005") > -1){
  969. swc_prof.in.grd_inapplist.setCellProperty("body", 0, "edittype", "none");
  970. // for(var i = 0; i < ds_grd_inapplist.rowcount; i++) {
  971. // //var chk = grd_inapplist.valueMatrix(i, grd_inapplist.colRef("chk"));
  972. // grd_inapplist.isReadOnly(i, 0) = true;
  973. // }
  974. }
  975. }
  976. function fReqGetPaperYN(param){
  977. utlf_addLog("***** fReqGetPaperYN("+param+") *****");
  978. ds_send_reqdata.clearData();
  979. var nRow = ds_send_reqdata.addRow();
  980. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  981. if( !utlf_isNull(ds_main_cond.getColumn(0, "orddeptcd")) )
  982. ds_send_reqdata.setColumn(nRow, "orddeptcd", ds_main_cond.getColumn(0, "orddeptcd"));
  983. //종이차트 유무 체크 용 신청과 코드 전달 노드 셋팅
  984. if( !utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")) )
  985. ds_send_reqdata.setColumn(nRow, "orddeptcd2", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  986. var userinfo = sysf_getUserInfo("dutplcecd");
  987. var age = ds_main_cond.getColumn(0, "age");
  988. // 사본발행 증명서 병원별 주소 가져오기
  989. var hardcdno = "1006"; // 사본발행 병원별 주소
  990. ds_send_reqdata.setColumn(nRow, "hardcdno", hardcdno);
  991. var oParam = {};
  992. oParam.id = "TRMRF03104";
  993. oParam.service = "formmngtapp.SetIndxMngt";
  994. oParam.method = "reqGetEmrInfoTeamCd";
  995. oParam.inds = "req=ds_send_reqdata";
  996. oParam.outds = "ds_main_hardcdlist=hardcdlist";
  997. oParam.async = false;
  998. oParam.callback = "cf_TRMRF03104";
  999. tranf_submit(oParam);
  1000. //var hardcdlistNode = findNodeset(model, "/root/main/hardcdlist");
  1001. var HospAddr = "";
  1002. for(var idx = 0; idx < ds_main_hardcdlist.rowcount; idx++)
  1003. {
  1004. if(ds_main_hardcdlist.getColumn(idx, "trgtcd") == "ADDR")
  1005. HospAddr = ds_main_hardcdlist.getColumn(idx, "trgtcdnm");
  1006. }
  1007. var oParam = {};
  1008. oParam.id = "TRMRC03019";
  1009. oParam.service = "chrtmngtapp.CopyIssMngt";
  1010. oParam.method = "reqGetPaperChrtYN";
  1011. oParam.inds = "req=ds_send_reqdata";
  1012. oParam.outds = "ds_main_paper=paper";
  1013. oParam.async = false;
  1014. oParam.callback = "cf_TRMRC03019";
  1015. tranf_submit(oParam);
  1016. if(arErrorCode.pop("TRMRC03019") > -1){
  1017. //default null
  1018. dsf_setDefaultVal(ds_main_paper, "all");
  1019. ds_main_paper.setColumn(0, "addr", HospAddr);
  1020. var paperyn = ds_main_paper.getColumn(0, "paperyn");
  1021. if(paperyn == "무") {
  1022. swc_prof.out.rdo_outchrtflag.enable = false;
  1023. } else if(paperyn == "유") {
  1024. swc_prof.out.rdo_outchrtflag.enable = true;
  1025. }
  1026. if( param != "HIST") {
  1027. var deathyn = ds_main_paper.getColumn(0, "deathyn");
  1028. if(deathyn == "Y") {
  1029. rdo_appmanflag.value = "";
  1030. } else if(deathyn == "N") {
  1031. if(parseInt(age) < parseInt(14)) {
  1032. rdo_appmanflag.value = "2";
  1033. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "Y");
  1034. } else {
  1035. rdo_appmanflag.value = "1";
  1036. }
  1037. }
  1038. }
  1039. var userinfo = sysf_getUserInfo("dutplcecd");
  1040. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1041. //if(userinfo == "3230000000"){
  1042. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1043. {
  1044. // KNUH_20101124_박성호_end
  1045. ds_main_cond.setColumn(0, "roomcd", ds_main_paper.getColumn(0, "roomcd"));
  1046. ds_main_cond.setColumn(0, "dschdd", ds_main_paper.getColumn(0, "dschdd"));
  1047. ds_main_cond.setColumn(0, "orddeptnm", ds_main_paper.getColumn(0, "deptnm"));
  1048. ds_main_cond.setColumn(0, "wardhospnm", ds_main_paper.getColumn(0, "wardhospnm"));
  1049. }
  1050. }
  1051. }
  1052. /**
  1053. * @group :
  1054. * @ver :
  1055. * @by : 이창록 2008-08-29
  1056. * @---------------------------------------------------
  1057. * @type : function
  1058. * @access : public
  1059. * @desc : 이전사본발행 내역 조회
  1060. * @param :
  1061. * @return :
  1062. * @---------------------------------------------------
  1063. */
  1064. /*
  1065. function fHistSearch()
  1066. {
  1067. model.makeValue("/root/send/cond/pid",model.getValue("/root/temp/appinfo/patinfo/pid"));
  1068. if(submit("TRMRC01201")){
  1069. }
  1070. model.removeNodeset("/root/send/cond");
  1071. }
  1072. */
  1073. /**
  1074. * @group :
  1075. * @ver :
  1076. * @by : 이창록 2008-08-29
  1077. * @---------------------------------------------------
  1078. * @type : function
  1079. * @access : public
  1080. * @desc : 환자 회차별 정보 조회(입원)
  1081. * @param :
  1082. * @return :
  1083. * @---------------------------------------------------
  1084. */
  1085. /*
  1086. function fCopyPatInfoList()
  1087. {
  1088. model.makeValue("/root/send/patinfo/pid",model.getValue("/root/temp/appinfo/patinfo/pid"));
  1089. if(submit("TRMRC03202")){
  1090. }
  1091. model.removeNodeset("/root/send/patinfo");
  1092. }
  1093. */
  1094. /**
  1095. * @group :
  1096. * @ver :
  1097. * @by : 이창록 2008-08-29
  1098. * @---------------------------------------------------
  1099. * @type : function
  1100. * @access : public
  1101. * @desc : 사본발행 목적 팝업 호출(사본발행신청 화면과 동일)
  1102. * @param :
  1103. * @return :
  1104. * @---------------------------------------------------
  1105. */
  1106. function fIssGoalPopUp(){
  1107. var sIssUsge = "";
  1108. var sIssUsgeCnt = 0;
  1109. var sIssGoalEtcYN = false;
  1110. var sIssGoalEtc = "";
  1111. var sIssGoalEtcCd = "";
  1112. var sIssGoalCd = "";
  1113. var sStndRow = 0;
  1114. var sIssno = "";
  1115. var sIssissgoalcd = "";
  1116. var selrow = ds_grd_apphist.rowposition;
  1117. //if (selrow < 0) return;
  1118. var issgoalcd = ds_grd_apphist.getColumn(selrow,"issgoalcd");
  1119. var issno = ds_grd_apphist.getColumn(selrow,"issno");
  1120. if (!utlf_isNull(issno)) {
  1121. if ( issgoalcd == "18" || issgoalcd == "19") {
  1122. sysf_messageBox("변경할 수 없는 용도입니다 신청껀 삭제 후 진행하시기 바랍니다","I");
  1123. return;
  1124. }
  1125. }
  1126. frmf_setParameter("SPMMR02200_multichkyn", "N");
  1127. var rtObj = frmf_modal("SPMMR02200", "SPMMR02200", null, null, null, null, null, null, null, null, null, null, "M");
  1128. var issusge = ds_main.getColumn(0,"issusge");
  1129. if (!utlf_isNull(issno)) {
  1130. if ( issusge.indexOf("18") > 0 || issusge.indexOf("19") > 0 ) {
  1131. sysf_messageBox("변경할 수 없는 용도입니다 신청껀 삭제 후 진행하시기 바랍니다","I");
  1132. return;
  1133. }
  1134. // [요청번호:20181031005] 직활병원용(06), 진단서발급용(13), 면허용(15) M0385
  1135. if ( issusge.indexOf("06") > 0 || issusge.indexOf("13") > 0 || issusge.indexOf("15") > 0) {
  1136. sysf_messageBox("사용할 수 없는 용도입니다.","I");
  1137. return;
  1138. }
  1139. }
  1140. /*
  1141. //이윤주 시작
  1142. var sIssno = ds_main_appinfo_copyinfo.getColumn(0, "issno");
  1143. var sIssissgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  1144. //발행했을때
  1145. if (!utlf_isNull(sIssno)) {
  1146. utlf_addLog("***** sIssUsge *****"+sIssUsge);
  1147. if (sIssissgoalcd != "18" && sIssUsge.indexOf("18") > -1 ) {
  1148. sysf_messageBox("수가 발생용도을 수가 미발생 용도로 변경할 수 없습니다","I");
  1149. return;
  1150. }
  1151. if (sIssissgoalcd == "18" && sIssUsge.indexOf("18") == 0 ) {
  1152. sysf_messageBox("수가 미발생용도을 수가 발생 용도로 변경할 수 없습니다","I");
  1153. return;
  1154. }
  1155. }
  1156. //이윤주 종료
  1157. */
  1158. if( !utlf_isNull(rtObj.copyInfoDs) ){
  1159. var nRow = rtObj.copyInfoDs.rowposition;
  1160. var issusge = utlf_transNullToEmpty(rtObj.copyInfoDs.getColumn(nRow, "reqdata"));
  1161. sIssUsge = issusge;
  1162. sIssUsgeCnt = issusge.split("▩").length;
  1163. if(sIssUsgeCnt > 0){
  1164. for(var i=1; i<sIssUsgeCnt; i++){
  1165. if(i != sIssUsgeCnt-1){
  1166. if(!utlf_isNull(sIssGoalEtc)) sIssGoalEtc += ",";
  1167. if(!utlf_isNull(sIssGoalEtcCd)) sIssGoalEtcCd += ",";
  1168. }
  1169. sIssGoalEtc += getArrayData(sIssUsge, i, 1);
  1170. sIssGoalCd = getArrayData(sIssUsge, i, 0);
  1171. if(sIssGoalCd == "99"){
  1172. sIssGoalEtcYN = true;
  1173. }
  1174. sIssGoalEtcCd += sIssGoalCd;
  1175. }
  1176. if(sIssGoalEtcYN == true){
  1177. ipt_issgoaletc.enable = true;
  1178. }else{
  1179. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd","");
  1180. ipt_issgoaletc.enable = false;
  1181. }
  1182. if(sIssGoalEtcCd.indexOf("06") > -1){
  1183. sysf_messageBox("직할병원용 : 주치의가 8개 직할 병원으로 이동하여 환자도 함께 전원 가기를 희망하는 경우 선택","E008");
  1184. }
  1185. ds_main_appinfo_copyinfo.setColumn(0, "issgoaletc", sIssGoalEtc);
  1186. ds_main_appinfo_copyinfo.setColumn(0, "issgoaletccd", sIssGoalEtcCd);
  1187. }
  1188. }
  1189. }
  1190. /**
  1191. * @group :
  1192. * @ver :
  1193. * @by : 이창록 2008-08-29
  1194. * @---------------------------------------------------
  1195. * @type : function
  1196. * @access : public
  1197. * @desc : 사본발행 기본정보 조회
  1198. * @param :
  1199. * @return :
  1200. * @---------------------------------------------------
  1201. */
  1202. function fAppInfoSearch(){
  1203. utlf_addLog("***** fAppInfoSearch() *****");
  1204. //var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  1205. try
  1206. {
  1207. var vdept = "";
  1208. var hRow = ds_grd_apphist.rowposition;
  1209. ds_send_search.clearData();
  1210. var nRow = ds_send_search.addRow();
  1211. if(hRow > -1){
  1212. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1213. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1214. }
  1215. var oParam = {};
  1216. oParam.id = "TRMRC03010";
  1217. oParam.service = "chrtmngtapp.CopyIssMngt";
  1218. oParam.method = "reqGetCopyIssInfo2";
  1219. oParam.inds = "req=ds_send_search";
  1220. oParam.outds = "ds_main_appinfo_copyinfo=copyinfo";
  1221. oParam.async = false;
  1222. oParam.callback = "cf_TRMRC03010";
  1223. tranf_submit(oParam);
  1224. if (arErrorCode.pop("TRMRC03010") > -1){ // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/copyinfo
  1225. trace("rowcount >> " + ds_main_appinfo_copyinfo.rowcount);
  1226. trace("emrorddeptcd >> " + ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  1227. trace("emrorddeptcd combo >> " + ds_init_cmb_emrorddeptcd.getColumn(k, "deptcd"));
  1228. for(var k = 0; k < ds_init_cmb_emrorddeptcd.rowcount; k++) {
  1229. if(ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd") == ds_init_cmb_emrorddeptcd.getColumn(k, "deptcd")){
  1230. vdept = "Y";
  1231. }
  1232. }
  1233. if(vdept == "Y") {
  1234. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  1235. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  1236. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  1237. }else {
  1238. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", "");
  1239. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", "");
  1240. }
  1241. }
  1242. btn_reappinfo.enable = true;
  1243. }
  1244. catch(e){ sysf_catchTrace(e); }
  1245. }
  1246. function fOutAppInfoSearch(){
  1247. utlf_addLog("***** fOutAppInfoSearch() *****");
  1248. var hRow = ds_grd_apphist.rowposition;
  1249. ds_grd_outpat.clearData();
  1250. ds_send_search.clearData();
  1251. var nRow = ds_send_search.addRow();
  1252. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1253. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1254. var oParam = {};
  1255. oParam.id = "TRMRC03011";
  1256. oParam.service = "chrtmngtapp.CopyIssMngt";
  1257. oParam.method = "reqGetCopyEmrOutAppList";
  1258. oParam.inds = "req=ds_send_search";
  1259. oParam.outds = "ds_grd_outpat=outpathistlist";
  1260. oParam.async = false;
  1261. oParam.callback = "cf_TRMRC03011";
  1262. tranf_submit(oParam);
  1263. if (arErrorCode.pop("TRMRC03011") > -1) // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/applist
  1264. {
  1265. for(var k = 0; k < ds_grd_outpat.rowcount; k++){
  1266. ds_grd_outpat.setColumn(k, "chk", "Y");
  1267. //utlf_addLog(" k : "+ k);
  1268. }
  1269. }
  1270. btn_reappinfo.enable = true;
  1271. }
  1272. function fInAppInfoSearch(){
  1273. utlf_addLog("***** fInAppInfoSearch() *****");
  1274. var hRow = ds_grd_apphist.rowposition;
  1275. ds_grd_inapplist.clearData();
  1276. ds_send_search.clearData();
  1277. var nRow =ds_send_search.addRow();
  1278. ds_send_search.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  1279. ds_send_search.setColumn(nRow, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  1280. var oParam = {};
  1281. oParam.id = "TRMRC03012";
  1282. oParam.service = "chrtmngtapp.CopyIssMngt";
  1283. oParam.method = "reqGetCopyEmrInAppList";
  1284. oParam.inds = "req=ds_send_search";
  1285. oParam.outds = "ds_grd_inapplist=inpathistlist";
  1286. oParam.async = false;
  1287. oParam.callback = "cf_TRMRC03012";
  1288. tranf_submit(oParam);
  1289. if (arErrorCode.pop("TRMRC03012") > -1) // 사본발행기본정보, 저장된 서식정보조회 /root/main/appinfo/applist
  1290. {
  1291. for(var k = 0; k < ds_grd_inapplist.rowcount; k++) {
  1292. ds_grd_inapplist.enableevent = false;
  1293. ds_grd_inapplist.setColumn(k, "chk", "Y");
  1294. ds_grd_inapplist.enableevent = true;
  1295. }
  1296. }
  1297. //2012/02/29 Start
  1298. //btn_save.disabled = true;
  1299. //btn_update.disabled = false;
  1300. //2012/02/29 End
  1301. btn_reappinfo.enable = true;
  1302. }
  1303. /**
  1304. * @group :
  1305. * @ver :
  1306. * @by : 이창록 2008-08-29
  1307. * @---------------------------------------------------
  1308. * @type : function
  1309. * @access : public
  1310. * @desc : 통합기록조회에서 받아오는 정보 함수
  1311. * @param :
  1312. * @return :
  1313. * @---------------------------------------------------
  1314. */
  1315. function fGetCopyInfo(copyparam)
  1316. {
  1317. model.removeNodeset(" ");
  1318. var copyArr = copyparam.split("▩");
  1319. var duplFlag = false;
  1320. for(var i = 0; i <(copyArr.length-1); i++){
  1321. var reckeyno = copyArr[i].split("▦")[15];
  1322. var sFormcd = copyArr[i].split("▦")[16];
  1323. var sFormnm = copyArr[i].split("▦")[8];
  1324. var orddd = copyArr[i].split("▦")[11];
  1325. var ioflag = copyArr[i].split("▦")[6];
  1326. for(var rowcnt = 0; rowcnt < grd_outapplist.rows; rowcnt++){
  1327. if((model.getValue("/root/temp/issinfo/emrapplist["+ rowcnt + "]/reckeyno") == reckeyno) && (model.getValue("/root/temp/issinfo/emrapplist["+ rowcnt + "]/formcd") == sFormcd)){
  1328. duplFlag = true;
  1329. break;
  1330. } else {
  1331. duplFlag = false;
  1332. }
  1333. }
  1334. if(!(duplFlag)){
  1335. grd_outapplist.addRow(false);
  1336. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/shtno" ,copyArr[i].split("▦")[4]);
  1337. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/chrtflag" ,copyArr[i].split("▦")[5]);
  1338. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/ioflag" ,copyArr[i].split("▦")[6]);
  1339. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/dschdd" ,copyArr[i].split("▦")[12]);
  1340. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formnm" ,copyArr[i].split("▦")[8]);
  1341. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddeptnm" ,copyArr[i].split("▦")[9]);
  1342. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddeptcd" ,copyArr[i].split("▦")[10]);
  1343. if((ioflag=="O")||(ioflag=="E")){
  1344. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/orddd" ,orddd);
  1345. }else{
  1346. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/indd" ,orddd);
  1347. }
  1348. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formrecdt" ,copyArr[i].split("▦")[7]);
  1349. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/atdoctnm" ,copyArr[i].split("▦")[13]);
  1350. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/atdoctid" ,copyArr[i].split("▦")[14]);
  1351. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/reckeyno" ,copyArr[i].split("▦")[15]);
  1352. model.makeValue("/root/temp/issinfo/emrapplist["+grd_outapplist.row+"]/formcd" ,copyArr[i].split("▦")[16]);
  1353. duplFlag = false;
  1354. }
  1355. }
  1356. grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  1357. grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  1358. grd_outapplist.refresh();
  1359. }
  1360. // 외래 tab
  1361. function fClikOutTab() {
  1362. var userinfo = sysf_getUserInfo("dutplcecd");
  1363. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1364. //if(userinfo != "3230000000"){
  1365. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1366. {
  1367. swc_prof.tabindex = 0;
  1368. group1.visible = true;
  1369. swc_prof.position.height = "285";//270
  1370. }
  1371. //else if(userinfo == "3230000000"){
  1372. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1373. {
  1374. // KNUH_20101124_박성호_end
  1375. swc_prof.tabindex = 0;
  1376. group1.visible = true;
  1377. swc_prof.position.height = "363";//343
  1378. swc_prof.out.grd_outpat.position.height = "320";//310
  1379. group1.position.y = "680";
  1380. caption24.position.y = "785";
  1381. caption18.position.y = "785";
  1382. output1.position.y = "782";
  1383. txt_delivefact.position.y = "802";
  1384. txt_delivefact.position.height = "75";
  1385. btn_reappinfo.position.y = "884";
  1386. button3.position.y = "884";
  1387. btn_update.position.y = "884";
  1388. btn_save.position.y = "884";
  1389. }
  1390. }
  1391. // 입원 tab
  1392. function fClikInTab() {
  1393. var userinfo = sysf_getUserInfo("dutplcecd");
  1394. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1395. //if(userinfo != "3230000000"){
  1396. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1397. {
  1398. swc_prof.tabindex = 1;
  1399. group1.visible = false;
  1400. swc_prof.position.height = "379";//364
  1401. swc_prof.in.grd_inapplist.position.height = "161";
  1402. swc_prof.in.caption10.position.y = "184";
  1403. swc_prof.in.grd_inpat.position.y = "202";//200
  1404. swc_prof.in.grd_inpat.position.height = "160";
  1405. }
  1406. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  1407. {
  1408. //else if(userinfo == "3230000000"){
  1409. // KNUH_20101124_박성호_end
  1410. swc_prof.tabindex = 1;
  1411. group1.visible = false;
  1412. swc_prof.position.height = "457";//445
  1413. swc_prof.in.grd_inapplist.position.height = "200";
  1414. swc_prof.in.caption10.position.y = "225";
  1415. swc_prof.in.grd_inpat.position.y = "242";//240
  1416. swc_prof.in.grd_inpat.position.height = "200";
  1417. }
  1418. }
  1419. // 사본발행 신청내역 저장
  1420. function fBefCopySave(param)
  1421. {
  1422. utlf_addLog("***** fBefCopySave("+param+") *****");
  1423. ds_send_savedata_copyinfo.clearData();
  1424. ds_send_savedata_copyinfo.addRow();
  1425. ds_send_savedata_emrapplist.clearData();
  1426. //ds_send_savedata_emrapplist.addRow();
  1427. ds_send_savedata_otptinfo.clearData();
  1428. //ds_send_savedata_otptinfo.addRow();
  1429. //2012/10/15 Start
  1430. if(param=="UDT" && ds_grd_apphist.rowposition < 0){
  1431. sysf_messageBox("수정할 사본발행 내역을 먼저 선택","I008");
  1432. return;
  1433. }
  1434. //2012/10/15 End
  1435. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  1436. sysf_messageBox("진료과를 먼저 선택","I008");
  1437. return;
  1438. }
  1439. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  1440. sysf_messageBox("신청의사를 선택","I008");
  1441. return;
  1442. }
  1443. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  1444. rdo_appmanflag.setFocus();
  1445. sysf_messageBox("사본발행 신청인을", "C001");
  1446. return;
  1447. }
  1448. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  1449. rdo_trustyn.setFocus();
  1450. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  1451. return;
  1452. }
  1453. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  1454. ipt_issgoalnm.setFocus();
  1455. sysf_messageBox("사본발행목적을", "C001");
  1456. return;
  1457. }
  1458. if(ds_grd_outpat.getCaseCount("chk == 'Y'") < 1) {
  1459. if(group1.chk_onlytest.value == "Y" || group1.chk_prcpinfo.value == "Y" || group1.chk_testinfo2.value == "Y"
  1460. || group1.chk_testinfo3.value == "Y" || group1.chk_testinfo4.value == "Y" || group1.chk_testinfo5.value == "Y"
  1461. || group1.chk_testinfo6.value == "Y" || group1.chk_testinfo7.value == "Y" || group1.chk_testinfo8.value == "Y") {
  1462. sysf_messageBox("외래 진료일을", "C002");
  1463. return;
  1464. }
  1465. }
  1466. //alert(333); return;
  1467. // 외래 서식
  1468. if(SAVE_COPY == 1)
  1469. {
  1470. ds_grd_outapplist.clearData();
  1471. // 외래 수진이력 체크된 노드를 가져옴.
  1472. var rsrvinfoCnt = ds_grd_outpat.getCaseCount("chk == 'Y'");
  1473. //alert("rsrvinfoCnt:"+rsrvinfoCnt);
  1474. if ( rsrvinfoCnt == 0 ) {
  1475. if (6 != sysf_messageBox("선택된 외래 수진이력이 없습니다 계속 진행하시겠습니까?","Q") ) {
  1476. return;
  1477. }
  1478. }
  1479. if(rsrvinfoCnt > 0) // 수진으로 신청
  1480. {
  1481. ds_send_search.clearData();
  1482. ds_send_search.addRow();
  1483. ds_send_search_rsrvinfo.clearData();
  1484. //ds_grd_outpat.filter("chk=='Y'");
  1485. set_filter_with_period("chk=='Y'");
  1486. ds_send_search_rsrvinfo.copyData(ds_grd_outpat, true);
  1487. utlf_addLog("ds_send_search_rsrvinfo"+ds_grd_outpat.saveXML());
  1488. //ds_grd_outpat.filter("");
  1489. set_filter_with_period();
  1490. ds_send_search_rsrvinfo.addColumn("chosflag", "string");
  1491. ds_send_search_rsrvinfo.addColumn("chrtflag", "string");
  1492. ds_send_search_rsrvinfo.addColumn("medirecno", "BIGDECIMAL");
  1493. ds_send_search_rsrvinfo.addColumn("midindxseq", "BIGDECIMAL");
  1494. ds_send_search_rsrvinfo.addColumn("supitemindxseq", "string");
  1495. dsf_setDefaultVal(ds_send_search_rsrvinfo, "all");
  1496. for(var i=0; i<ds_send_search_rsrvinfo.rowcount; i++)
  1497. ds_send_search_rsrvinfo.setColumn(i, "chosflag", ds_send_search_rsrvinfo.getColumn(i, "ordtype"));
  1498. OUTCOPY_FLAG = "Y"; // 외래기록 신청여부
  1499. var onlytest = group1.chk_onlytest.value; // 검사결과만
  1500. if(onlytest == "Y") {
  1501. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1502. ds_send_search.setColumn(0, "onlytest", "Y");
  1503. var midseq = "";
  1504. if(group1.chk_testinfo2.value == "Y") { // 진단검사
  1505. midseq += 11137 + ",";
  1506. }
  1507. if(group1.chk_testinfo3.value == "Y") { // 임상병리
  1508. midseq += 11132 + ",";
  1509. }
  1510. if(group1.chk_testinfo4.value == "Y") { // 기능검사
  1511. midseq += 11135 + ",";
  1512. ds_send_search.setColumn(0, "testinfo4", "Y");
  1513. }
  1514. if(group1.chk_testinfo5.value == "Y") { // 영상의학
  1515. midseq += 11136 + ",";
  1516. ds_send_search.setColumn(0, "testinfo5", "Y");
  1517. }
  1518. if(group1.chk_testinfo6.value == "Y") { // 핵체외
  1519. midseq += 18788 + ",";
  1520. }
  1521. if(group1.chk_testinfo7.value == "Y") { // 내시경
  1522. midseq += 11133 + ",";
  1523. ds_send_search.setColumn(0, "testinfo7", "Y");
  1524. }
  1525. if(group1.chk_testinfo8.value == "Y") { // 미생물
  1526. midseq += 19697 + ",";
  1527. }
  1528. ds_send_search.setColumn(0, "midseq", midseq.substring(0, midseq.length - 1));
  1529. } else {
  1530. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1531. ds_send_search.setColumn(0, "onlytest", "N");
  1532. }
  1533. var oParam = {};
  1534. oParam.id = "TRMRC03024";
  1535. oParam.service = "chrtmngtapp.CopyIssMngt";
  1536. oParam.method = "reqGetAllCopyEmrInfo";
  1537. oParam.inds = "rsrvinfo=ds_send_search_rsrvinfo req=ds_send_search";
  1538. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  1539. oParam.async = false;
  1540. oParam.callback = "cf_TRMRC03024";
  1541. tranf_submit(oParam);
  1542. //alert("ds_main_emrinfo_emrlist 건수:"+ds_main_emrinfo_emrlist.rowcount);
  1543. if(arErrorCode.pop("TRMRC03024") > -1) {
  1544. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  1545. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  1546. ds_grd_outapplist.copyData(ds_main_emrinfo_emrlist);
  1547. //setCSVToNode("/root/temp/issinfo", getNodeListCSV(NodeList), "emrlist");
  1548. }
  1549. }
  1550. //}
  1551. //return;
  1552. // 외래 검사
  1553. if(group1.chk_testinfo.value == "Y") { // "전체" 체크박스가 선택되어 있는지 확인
  1554. fAddTestList("0000000000");
  1555. if(group1.chk_onlytest.value == "Y") { // 검사결과만 신청
  1556. fAddTestList("T");
  1557. }
  1558. } else {
  1559. if(group1.chk_prcpinfo.value == "Y") { // 처방기록
  1560. fAddTestList("0800000636");
  1561. } else {
  1562. fDelTestList("0800000636");
  1563. }
  1564. if(group1.chk_testinfo2.value == "Y") { // 진단검사
  1565. fAddTestList("0800004096");
  1566. } else {
  1567. fDelTestList("0800004096");
  1568. }
  1569. if(group1.chk_testinfo3.value == "Y") { // 임상병리
  1570. fAddTestList("E");
  1571. } else {
  1572. fDelTestList("E");
  1573. }
  1574. if(group1.chk_testinfo4.value == "Y") { // 기능검사
  1575. fAddTestList("F");
  1576. } else {
  1577. fDelTestList("F");
  1578. }
  1579. if(group1.chk_testinfo5.value == "Y") { // 영상의학
  1580. fAddTestList("0800004099");
  1581. } else {
  1582. fDelTestList("0800004099");
  1583. }
  1584. if(group1.chk_testinfo6.value == "Y") { // 핵체외
  1585. fAddTestList("0800004098");
  1586. } else {
  1587. fDelTestList("0800004098");
  1588. }
  1589. if(group1.chk_testinfo7.value == "Y") { // 내시경
  1590. fAddTestList("I");
  1591. } else {
  1592. fDelTestList("I");
  1593. }
  1594. if(group1.chk_testinfo8.value == "Y") { // 미생물
  1595. fAddTestList("0800004097");
  1596. } else {
  1597. fDelTestList("0800004097");
  1598. }
  1599. if(group1.chk_onlytest.value == "Y") { // 검사결과만 신청
  1600. fAddTestList("T");
  1601. } else {
  1602. fDelTestList("T");
  1603. }
  1604. }
  1605. ds_main_cond.setColumn(0, "emrordflag", "O");
  1606. }
  1607. //return;
  1608. // 종이차트
  1609. fPaperList();
  1610. } // end of 외래서식
  1611. //debugger;
  1612. //alert(457384); return;
  1613. // 입원 서식 copy + 검사결과
  1614. //fInEMRChrtListSelect();
  1615. var inrsrvinfoCnt = ds_grd_inpat.getCaseCount("chk == 'Y'");
  1616. if ( inrsrvinfoCnt == 0 ) {
  1617. if (6 != sysf_messageBox("선택된 입원 수진이력이 없습니다 계속 진행하시겠습니까?","Q") ) {
  1618. return;
  1619. }
  1620. }
  1621. if(inrsrvinfoCnt > 0) { // 수진으로 신청
  1622. INCOPY_FLAG = "Y";
  1623. ds_send_search.clearData();
  1624. ds_send_search.addRow();
  1625. ds_send_search_rsrvinfo.clearData();
  1626. ds_grd_inpat.filter("chk=='Y'");
  1627. ds_send_search_rsrvinfo.copyData(ds_grd_inpat, true);
  1628. ds_grd_inpat.filter("");
  1629. ds_send_search_rsrvinfo.addColumn("chosflag", "string");
  1630. ds_send_search_rsrvinfo.addColumn("chrtflag", "string");
  1631. ds_send_search_rsrvinfo.addColumn("medirecno", "BIGDECIMAL");
  1632. ds_send_search_rsrvinfo.addColumn("midindxseq", "BIGDECIMAL");
  1633. ds_send_search_rsrvinfo.addColumn("supitemindxseq", "string");
  1634. dsf_setDefaultVal(ds_send_search_rsrvinfo, "all");
  1635. for(var i=0; i<ds_send_search_rsrvinfo.rowcount; i++)
  1636. ds_send_search_rsrvinfo.setColumn(i, "chosflag", ds_send_search_rsrvinfo.getColumn(i, "ordtype"));
  1637. ds_send_search.setColumn(0, "onlytest", "N");
  1638. var inmidseq = "";
  1639. var inimgseq = "";
  1640. for(var x = 0; x < ds_grd_inpat.rowcount; x++){
  1641. if(ds_grd_inpat.getColumn(x, "chk") == "Y") {
  1642. if(!utlf_isNull(ds_grd_inpat.getColumn(x, "midindxseq"))) {
  1643. inmidseq += ds_grd_inpat.getColumn(x, "midindxseq") + ",";
  1644. }
  1645. if(!utlf_isNull(ds_grd_inpat.getColumn(x, "formcd"))) {
  1646. inimgseq += "'" + ds_grd_inpat.getColumn(x, "formcd") + "'" + ",";
  1647. }
  1648. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11135") { // 기능
  1649. ds_send_search.setColumn(0, "testinfo4", "Y");
  1650. }
  1651. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11136") { // 영상
  1652. ds_send_search.setColumn(0, "testinfo5", "Y");
  1653. }
  1654. if(ds_grd_inpat.getColumn(x, "midindxseq") == "11133") { // 내시경
  1655. ds_send_search.setColumn(0, "testinfo7", "Y");
  1656. }
  1657. }
  1658. }
  1659. ds_send_search.setColumn(0, "pid", ds_main_cond.getColumn(0, "pid"));
  1660. ds_send_search.setColumn(0, "midseq", inmidseq.substring(0, inmidseq.length - 1));
  1661. ds_send_search.setColumn(0, "imgseq", inimgseq.substring(0, inimgseq.length - 1));
  1662. //utlf_addLog(ds_send_search_rsrvinfo.saveXML());
  1663. //utlf_addLog(ds_send_search.saveXML());
  1664. var oParam = {};
  1665. oParam.id = "TRMRC03024";
  1666. oParam.service = "chrtmngtapp.CopyIssMngt";
  1667. oParam.method = "reqGetAllCopyEmrInfo";
  1668. oParam.inds = "rsrvinfo=ds_send_search_rsrvinfo req=ds_send_search";
  1669. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  1670. oParam.async = false;
  1671. oParam.callback = "cf_TRMRC03024";
  1672. tranf_submit(oParam);
  1673. utlf_addLog("테스트:"+ds_main_emrinfo_emrlist.saveXML());
  1674. if(arErrorCode.pop("TRMRC03024") > -1) {
  1675. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  1676. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  1677. if( ds_grd_outapplist.getColumnInfo("chk") == null || ds_grd_outapplist.getColumnInfo("formrecuserid") == null ||
  1678. ds_grd_outapplist.getColumnInfo("formrecdeptnm") == null || ds_grd_outapplist.getColumnInfo("formrecusernm") == null ||
  1679. ds_grd_outapplist.getColumnInfo("formrecdeptcd") == null || ds_grd_outapplist.getColumnInfo("indg") == null ){
  1680. ds_grd_outapplist.addColumn("chk", "string"); ds_grd_outapplist.addColumn("formrecuserid", "string");
  1681. ds_grd_outapplist.addColumn("formrecdeptnm", "string"); ds_grd_outapplist.addColumn("formrecusernm", "string");
  1682. ds_grd_outapplist.addColumn("formrecdeptcd", "string"); ds_grd_outapplist.addColumn("indg", "string");
  1683. }
  1684. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  1685. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  1686. //var tmpNodeList = instance1.selectNodes("/root/temp/issinfo/emrlist");
  1687. for(var a = 0; a < ds_grd_outapplist.rowcount; a++)
  1688. {
  1689. if (ds_grd_outapplist.getColumn(a, "status") == "i")
  1690. {
  1691. var arrPostion = new Array();
  1692. arrPostion[0] = a;
  1693. grdf_setStatus(grd_outapplist, "I", arrPostion);
  1694. //grd_outapplist.addStatus(a + 1, "insert");
  1695. }
  1696. }
  1697. }
  1698. }
  1699. if(!utlf_isNull(ds_main_cond.getColumn(0, "emrordflag"))) {
  1700. ds_main_cond.setColumn(0, "emrordflag", "OI");
  1701. } else {
  1702. ds_main_cond.setColumn(0, "emrordflag", "I");
  1703. }
  1704. }
  1705. //alert(4953); return;
  1706. // var outList = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist"); // 입원회차
  1707. // var totalList = model.instance1.selectNodes("/root/main/inpathistlist/inpathistlist"); // 입원회차
  1708. // var chkList = model.instance1.selectNodes("/root/main/inpathistlist/inpathistlist[chk = 'Y']"); // 저장된 입원회차
  1709. // var midList = model.instance1.selectNodes("/root/main/midissinfo/emrapplist[chk = 'Y']"); // 중분류서식
  1710. // ds_grd_outpat
  1711. // ds_grd_inapplist
  1712. var chkListCnt = ds_grd_inapplist.getCaseCount("chk=='Y'");
  1713. var midListCnt = ds_grd_inpat.getCaseCount("chk=='Y'");
  1714. if(param != "UDT")
  1715. {
  1716. if(midListCnt > 0 && ds_grd_inapplist.rowcount != 1 && (ds_grd_inapplist.rowcount -1 != chkListCnt)) {
  1717. SAVE_ORDDD = ds_grd_inpat.getColumn(0, "orddd");
  1718. ////////////////////////////////////////////////////////////////////////////////////////////////////////
  1719. var midformcd = "";
  1720. var midreckeyno = "";
  1721. var comporddd = "";
  1722. var compcretno = "";
  1723. var compioflag = "";
  1724. var comporddeptcd = "";
  1725. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  1726. for(var j = 0; j < ds_grd_inpat.rowcount; j++ )
  1727. {
  1728. var chk = ds_grd_inpat.getColumn(j, "chk");
  1729. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  1730. if (emrflag == "E")
  1731. {
  1732. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  1733. utlf_addLog("확인"+ds_grd_inpat.saveXML());
  1734. if(chk =="Y")
  1735. {
  1736. var subNode = "";
  1737. if(!utlf_isNull(ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq")))
  1738. {
  1739. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  1740. if(midindxseq == compmidindxseq){
  1741. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  1742. //subNode = compNodeSet.item(i);
  1743. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "midindxseq") == midindxseq)
  1744. || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  1745. {
  1746. ds_grd_outapplist.setColumn(i, "status", "i");
  1747. }
  1748. }
  1749. }
  1750. }
  1751. }
  1752. }
  1753. else
  1754. {
  1755. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  1756. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  1757. if(chk =="Y"){
  1758. utlf_addLog("ds_grd_outapplist"+ds_grd_outapplist.saveXML());
  1759. //alert("ds_grd_outapplist 건수" + ds_grd_outapplist.rowcount);
  1760. var subNode = "";
  1761. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  1762. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  1763. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  1764. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  1765. //subNode = compNodeSet.item(i);
  1766. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P")
  1767. || (ds_grd_outapplist.getColumn(i, "formcd") == compformcd && ds_grd_outapplist.getColumn(i, "reckeyno") == compreckeyno)
  1768. || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  1769. {
  1770. ds_grd_outapplist.setColumn(i, "status", "i");
  1771. }
  1772. }
  1773. }
  1774. }
  1775. }
  1776. }
  1777. ///////////////////////////////////////////////////////////////////////////////////////////////////////
  1778. ret =sysf_messageBox("신청서식이 저장되었습니다. 다른 회차도 신청", "Q014");
  1779. if(ret == "6") {
  1780. if(!utlf_isNull(SAVE_ORDDD)) {
  1781. ds_grd_inapplist.enableevent = false;
  1782. var nidx = ds_grd_inapplist.findRow("indd", SAVE_ORDDD);
  1783. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1784. ds_grd_inapplist.enableevent = true;
  1785. }
  1786. SAVE_COPY ++;
  1787. ds_grd_emrapplist.clearData();
  1788. } else {
  1789. if(!utlf_isNull(SAVE_ORDDD)) {
  1790. ds_grd_inapplist.enableevent = false;
  1791. var nidx = ds_grd_inapplist.findRow("indd", SAVE_ORDDD);
  1792. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1793. ds_grd_inapplist.enableevent = true;
  1794. }
  1795. //alert(3333); return;
  1796. fCopySave();
  1797. ////////////////////////////////////////////
  1798. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1799. ////////////////////////////////////////////
  1800. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn");// model.getValue("/root/send/aftcert/aftcertdryn"); // 후인증 대상 의사 여부
  1801. if (aftcertdryn == "Y") {
  1802. return;
  1803. }
  1804. ////////////////////////////////////////////
  1805. sysf_messageBox("사본발행 신청이", "I002");
  1806. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1807. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1808. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1809. {
  1810. // KNUH_20101124_박성호_end
  1811. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  1812. var oprnerId = opener.frmf_getScreenID();
  1813. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  1814. frmf_clearParameter("SMMRC03000_appYN");
  1815. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1816. if (utlf_isNull(closeyn))
  1817. {
  1818. closeyn = "N";
  1819. }
  1820. if (closeyn == "Y")
  1821. {
  1822. //20111017
  1823. fReqGetBfCopyIssHistList(ipt_pid.text);
  1824. //20111017
  1825. }
  1826. else
  1827. {
  1828. fReqGetBfCopyIssHistList(ipt_pid.text);
  1829. }
  1830. } else {
  1831. this.close();
  1832. }
  1833. }
  1834. }
  1835. else
  1836. {
  1837. if(ds_grd_inapplist.rowcount > 0) { // 입원
  1838. if(!utlf_isNull(SAVE_ORDDD)){
  1839. ds_grd_inapplist.enableevent = false;
  1840. var nidx = ds_grd_inapplist.findRow("indd", SAVE_ORDDD);
  1841. ds_grd_inapplist.setColumn(nidx, "chk", "Y");
  1842. ds_grd_inapplist.enableevent = true;
  1843. }
  1844. fCopySave();
  1845. ////////////////////////////////////////////
  1846. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1847. ////////////////////////////////////////////
  1848. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn"); // 후인증 대상 의사 여부
  1849. if (aftcertdryn == "Y") {
  1850. return;
  1851. }
  1852. ////////////////////////////////////////////
  1853. sysf_messageBox("사본발행 신청이", "I002");
  1854. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1855. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1856. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1857. {
  1858. // KNUH_20101124_박성호_end
  1859. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  1860. var oprnerId = opener.frmf_getScreenID();
  1861. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  1862. frmf_clearParameter("SMMRC03000_appYN");
  1863. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1864. if (utlf_isNull(closeyn))
  1865. {
  1866. closeyn = "N";
  1867. }
  1868. if (closeyn == "Y")
  1869. {
  1870. //20111017
  1871. fReqGetBfCopyIssHistList(ipt_pid.text);
  1872. //20111017
  1873. }
  1874. else
  1875. {
  1876. fReqGetBfCopyIssHistList(ipt_pid.text);
  1877. }
  1878. } else {
  1879. this.close();
  1880. }
  1881. }
  1882. else {
  1883. fCopySave();
  1884. ////////////////////////////////////////////
  1885. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1886. ////////////////////////////////////////////
  1887. var aftcertdryn = ds_send_aftcert.getColumn(0, "aftcertdryn"); // 후인증 대상 의사 여부
  1888. if (aftcertdryn == "Y") {
  1889. return;
  1890. }
  1891. ////////////////////////////////////////////
  1892. sysf_messageBox("사본발행 신청이", "I002");
  1893. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  1894. var dutplcecd = sysf_getUserInfo("dutplcecd");
  1895. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  1896. {
  1897. // KNUH_20101124_박성호_end
  1898. var closeyn = ds_tmphdcd.getColumn(0, "hardcd");
  1899. if (utlf_isNull(closeyn))
  1900. {
  1901. closeyn = "N";
  1902. }
  1903. if (closeyn == "Y")
  1904. {
  1905. //20111017
  1906. fReqGetBfCopyIssHistList(ipt_pid.text);
  1907. //20111017
  1908. }
  1909. else
  1910. {
  1911. fReqGetBfCopyIssHistList(ipt_pid.text);
  1912. }
  1913. }
  1914. else
  1915. {
  1916. this.close();
  1917. }
  1918. }
  1919. }
  1920. } //return;
  1921. else
  1922. {
  1923. fCopySave("UPT");
  1924. }
  1925. //2012/03/12 Start 이전 사본발행 목적을 새로 클릭 하지 않더라도 증명서 및 승낙서가 발급될수 있도록 수정
  1926. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  1927. if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  1928. var goal1_cd=ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd"); // 사본신청내역 수정 전 발급목적 코드
  1929. var goal1_nm=ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm"); // 사본신청내역 수정 전 발급목적 이름
  1930. var goal2_cd=ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"); // 사본신청내역 수정 후 발급목적 코드
  1931. var goal2_nm=ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"); // 사본신청내역 수정 후 발급목적 이름
  1932. if(goal1_cd!=goal2_cd && goal1_nm!=goal2_nm){ // 수정전과 수정후가 동일하지 않을 경우
  1933. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd", goal2_cd);
  1934. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", goal2_nm);
  1935. }
  1936. }
  1937. }
  1938. //2012/03/12 End
  1939. }
  1940. // 사본 저장
  1941. function fCopySave(param) {
  1942. utlf_addLog("***** fCopySave("+param+") *****");
  1943. ////////////////////////////////////////////
  1944. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  1945. ////////////////////////////////////////////
  1946. ds_send_aftcert.setColumn(0, "aftcertdryn", "N"); // 후인증 대상 의사 여부
  1947. // 외래 - 처방기록 포함 체크인 경우
  1948. var prcpInfoYN = ds_main_otherinfo.getColumn(0, "prcpinfo");
  1949. if (utlf_isNull(prcpInfoYN)) { prcpInfoYN = "N"; }
  1950. // 입원 - 중분류서식 (의사지시기록) 체크인 경우
  1951. var cntMidPrcp = 0;
  1952. var cntMidList = ds_grd_inpat.rowcount;
  1953. for (var i=0; i < cntMidList ; i++) {
  1954. var chk = ds_grd_inpat.getColumn(i, "chk");
  1955. var midindxseq = ds_grd_inpat.getColumn(i, "midindxseq");
  1956. if (midindxseq == '20337' && chk == "Y") {
  1957. cntMidPrcp = cntMidPrcp + 1;
  1958. }
  1959. }
  1960. if (prcpInfoYN == "Y" || cntMidPrcp > 0) {
  1961. //alert("외래 처방기록 포함 여부 => " + prcpInfoYN + " , 입원 중분류서식(의사지시기록) 선택 건수 => " + cntMidPrcp);
  1962. var userkind = "E"; // 의사 : "D" , 그외 : "E"
  1963. var jobkindcd = utlf_transNullToEmpty(sysf_getUserInfo("jobkindcd"));
  1964. if(jobkindcd.substring(0, 2) == "03") { // 의사일 경우 블락킹 (2010.06.14 변경)
  1965. userkind = "D";
  1966. }
  1967. var pid = "";
  1968. var orddd = "";
  1969. var cretno = "";
  1970. if (param == "UPT") { // 수정모드
  1971. pid = ds_main_appinfo_copyinfo.getColumn(0, "pid");
  1972. orddd = ds_main_appinfo_copyinfo.getColumn(0, "orddd");
  1973. cretno = ds_main_appinfo_copyinfo.getColumn(0, "cretno");
  1974. } else {
  1975. pid = ds_main_cond.getColumn(0, "pid");
  1976. orddd = ds_main_cond.getColumn(0, "orddd");
  1977. cretno = ds_main_cond.getColumn(0, "cretno");
  1978. }
  1979. if (utlf_isNull(cretno)) { // 수진정보가 없으면..
  1980. pid = ds_main_result_pathistlist.getColumn(0, "pid");
  1981. orddd = ds_main_result_pathistlist.getColumn(0, "orddd");
  1982. cretno = ds_main_result_pathistlist.getColumn(0, "cretno");
  1983. }
  1984. ds_send_aftcert.setColumn(0, "pid" , pid);
  1985. ds_send_aftcert.setColumn(0, "orddd" , orddd);
  1986. ds_send_aftcert.setColumn(0, "cretno" , cretno);
  1987. ds_send_aftcert.setColumn(0, "userdeptcd" , sysf_getUserInfo("dutplcecd")); // 사용자 소속과
  1988. ds_send_aftcert.setColumn(0, "userkind" , userkind); // 의사 : "D" , 그외 : "E"
  1989. ds_send_aftcert.setColumn(0, "jobkindcd" , jobkindcd); // 직종코드
  1990. var oParam = {};
  1991. oParam.id = "TRMMO02705";
  1992. oParam.service = "prcpmngtapp.PrcpMngt";
  1993. oParam.method = "reqGetPatAftPrcpChk";
  1994. oParam.inds = "req=ds_send_aftcert";
  1995. oParam.outds = "ds_hidden_aftcert=aftcert";
  1996. oParam.async = false;
  1997. oParam.callback = "cf_TRMMO02705";
  1998. tranf_submit(oParam);
  1999. if (parseInt(ds_hidden_aftcert.getColumn(0, "aftcertcnt")) > 0 ) {
  2000. if (userkind == "E") {
  2001. frmf_setParameter("aftcert_pid", pid);
  2002. }
  2003. sysf_messageBox("후인증 미비 내역이 존재합니다. 인증 후 진행하시기 바랍니다.", "C");
  2004. frmf_modal("SMMMO02700", "SMMMO02700", null, null, null, null, null, null, null, null, null, null, "M");
  2005. if(userkind == "D") { // 의사일 경우 블락킹 (2010.06.14 변경)
  2006. ds_send_aftcert.setColumn(0, "aftcertdryn", "Y"); // 후인증 대상 의사 여부
  2007. return;
  2008. }
  2009. }
  2010. }
  2011. ////////////////////////////////////////////
  2012. // 2010.06.08. 후인증관련 사본발행 블러킹 //
  2013. ////////////////////////////////////////////
  2014. if(param == "UPT") { // 수정모드
  2015. ds_send_savedata_copyinfo.clearData();
  2016. ds_send_savedata_copyinfo.addRow();
  2017. ds_send_savedata_emrapplist.clearData();
  2018. // ds_send_savedata_emrapplist.addRow();
  2019. ds_send_savedata_otptinfo.clearData();
  2020. // ds_send_savedata_otptinfo.addRow();
  2021. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  2022. sysf_messageBox("진료과를 먼저 선택","I008");
  2023. return;
  2024. }
  2025. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  2026. sysf_messageBox("신청의사를 선택","I008");
  2027. return;
  2028. }
  2029. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  2030. rdo_appmanflag.setFocus();
  2031. sysf_messageBox("사본발행 신청인을", "C001");
  2032. return;
  2033. }
  2034. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  2035. rdo_trustyn.setFocus();
  2036. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  2037. return;
  2038. }
  2039. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  2040. ipt_issgoalnm.setFocus();
  2041. sysf_messageBox("사본발행목적을", "C001");
  2042. return;
  2043. }
  2044. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2045. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2046. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2047. {
  2048. // KNUH_20101124_박성호_end
  2049. if(!utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issno"))) { // 발행번호가 있으면
  2050. sysf_messageBox("사본이 발행되어 수정할 수 없습니다. 재신청", "I008");
  2051. return;
  2052. }
  2053. }
  2054. }
  2055. // 신청부서 1부 default
  2056. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0"|| utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  2057. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2058. }
  2059. else
  2060. {
  2061. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2062. }
  2063. // 신규일 때
  2064. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "status")))
  2065. {
  2066. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno")))
  2067. {
  2068. ds_send_savedata_otptinfo.clearData();
  2069. ds_send_savedata_otptinfo.addRow();
  2070. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag" , "I"); // 구분자
  2071. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid" , ds_main_cond.getColumn(0, "pid")); // 등록번호
  2072. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd" , utlf_getCurrentDate()); // 진료일자
  2073. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd" , ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2074. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid" , ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2075. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm" , utlf_getCurrentTime()); // 진료시간
  2076. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag" , "4"); // 예약구분
  2077. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd" , sysf_getUserInfo("dutplceinstcd")); // 기관코드
  2078. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact" , ""); // 참고사항
  2079. ds_send_savedata_otptinfo.setColumn(0, "sess_userid" , sysf_getUserInfo("userid")); // 사용자ID
  2080. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn", "N"); // 진찰료산정여부
  2081. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn", "Y"); // 진찰료후불여부
  2082. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  2083. }
  2084. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  2085. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2086. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  2087. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9")
  2088. {
  2089. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2090. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2091. }
  2092. else
  2093. {
  2094. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2095. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2096. }
  2097. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2098. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99") // 사본발행목적이 기타일 경우
  2099. {
  2100. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2101. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2102. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2103. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2104. }
  2105. else
  2106. {
  2107. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  2108. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2109. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2110. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2111. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2112. }
  2113. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  2114. if((ds_main_cond.getColumn(0, "ioflag")=="O")||(ds_main_cond.getColumn(0, "ioflag")=="S"))
  2115. {
  2116. ds_send_savedata_copyinfo.setColumn(0, "orddd", ds_main_cond.getColumn(0, "orddd"));
  2117. }
  2118. else
  2119. {
  2120. ds_send_savedata_copyinfo.setColumn(0, "orddd", ds_main_cond.getColumn(0, "orddd"));
  2121. }
  2122. ds_send_savedata_copyinfo.setColumn(0, "cretno", ds_main_cond.getColumn(0, "cretno"));
  2123. var userinfo = sysf_getUserInfo("dutplcecd");
  2124. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  2125. {
  2126. ds_send_savedata_copyinfo.setColumn(0, "emrordflag", ds_main_cond.getColumn(0, "emrordflag"));
  2127. }else{
  2128. ds_send_savedata_copyinfo.setColumn(0, "emrordflag", ds_main_cond.getColumn(0, "emrordflag"));
  2129. }
  2130. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2131. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  2132. ds_send_savedata_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2133. var midformcd = "";
  2134. var midreckeyno = "";
  2135. var comporddd = "";
  2136. var compcretno = "";
  2137. var compioflag = "";
  2138. var comporddeptcd = "";
  2139. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  2140. var histlength = ds_grd_inpat.rowcount;
  2141. //alert("histlength:"+histlength);
  2142. if (histlength <= 0)
  2143. {
  2144. for(var j = 0; j < ds_grd_outpat.rowcount; j++ ){
  2145. var chk = ds_grd_outpat.getColumn(j, "chk");
  2146. var orddd = ds_grd_outpat.getColumn(j, "orddd");
  2147. var cretno = ds_grd_outpat.getColumn(j, "cretno");
  2148. var ordtype = ds_grd_outpat.getColumn(j, "ordtype");
  2149. var orddeptcd = ds_grd_outpat.getColumn(j, "orddeptcd");
  2150. utlf_addLog(chk + " || " + orddd + " || " + cretno + " || " + ordtype + " || " + orddeptcd );
  2151. if(chk =="Y"){
  2152. var subNode = "";
  2153. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2154. //subNode = compNodeSet.item(i);
  2155. utlf_addLog(chk + " || "
  2156. + ds_grd_outapplist.getColumn(i, "orddd") + " || "
  2157. + ds_grd_outapplist.getColumn(i, "cretno") + " || "
  2158. + ds_grd_outapplist.getColumn(i, "ioflag") + " || "
  2159. + ds_grd_outapplist.getColumn(i, "orddeptcd") + " || "
  2160. + ds_grd_outapplist.getColumn(i, "chrtflag"));
  2161. if ((ds_grd_outapplist.getColumn(i, "orddd") == orddd &&
  2162. ds_grd_outapplist.getColumn(i, "cretno") == cretno &&
  2163. ds_grd_outapplist.getColumn(i, "ioflag") == ordtype &&
  2164. ds_grd_outapplist.getColumn(i, "orddeptcd") == orddeptcd)
  2165. || (ds_grd_outapplist.getColumn(i, "chrtflag") == "P"))
  2166. {
  2167. var arrPostion = new Array();
  2168. arrPostion[0] = i;
  2169. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2170. //grd_outapplist.addStatus(i + 1, "insert");
  2171. }
  2172. }
  2173. }
  2174. }
  2175. }
  2176. else
  2177. {
  2178. for(var j = 0; j < ds_grd_inpat.rowcount; j++ ){
  2179. var chk = ds_grd_inpat.getColumn(j, "chk");
  2180. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  2181. if (emrflag == "E")
  2182. {
  2183. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  2184. if(chk =="Y")
  2185. {
  2186. var subNode = "";
  2187. if(!utlf_isNull(ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq")))
  2188. {
  2189. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  2190. if(midindxseq == compmidindxseq){
  2191. for(var i = 0; i < ds_grd_outapplist.rowcount; i++)
  2192. {
  2193. //subNode = compNodeSet.item(i);
  2194. 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"))
  2195. {
  2196. var arrPostion = new Array();
  2197. arrPostion[0] = i;
  2198. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2199. //grd_outapplist.addStatus(i + 1, "insert");
  2200. }
  2201. }
  2202. }
  2203. }
  2204. }
  2205. }
  2206. else
  2207. {
  2208. utlf_addLog("ds_grd_inpat"+ds_grd_inpat.saveXML());
  2209. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  2210. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  2211. if(chk =="Y"){
  2212. var subNode = "";
  2213. utlf_addLog("ds_grd_outapplist"+ds_grd_outapplist.saveXML());
  2214. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  2215. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  2216. //alert(compformcd+"@"+compformcd);
  2217. //alert(compreckeyno+"@"+compreckeyno);
  2218. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  2219. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2220. //subNode = compNodeSet.item(i);
  2221. 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")) {
  2222. //alert("inside");
  2223. var arrPostion = new Array();
  2224. arrPostion[0] = i;
  2225. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2226. //grd_outapplist.addStatus(i + 1, "insert");
  2227. }
  2228. }
  2229. }
  2230. }
  2231. }
  2232. }
  2233. }
  2234. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2235. utlf_addLog("***** grdf_getGridUpdateData(grd_outapplist) : " + oDsUpdate.saveXML());
  2236. if( utlf_isNull(oDsUpdate) ) {
  2237. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2238. }
  2239. grdf_setStatusColumn(oDsUpdate, "status");
  2240. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2241. }
  2242. else if(ds_main_appinfo_copyinfo.getColumn(0, "status") == "u")
  2243. {
  2244. fInReCopyEMRChrtListSelect();
  2245. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0" || utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) )
  2246. {
  2247. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2248. }
  2249. else
  2250. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2251. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99") // 사본발행목적이 기타일 경우
  2252. {
  2253. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2254. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2255. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2256. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2257. }
  2258. else
  2259. {
  2260. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"));
  2261. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2262. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2263. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2264. }
  2265. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9")
  2266. {
  2267. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2268. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2269. }
  2270. else
  2271. {
  2272. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2273. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2274. }
  2275. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  2276. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2277. ds_send_savedata_copyinfo.setColumn(0, "copyseqno" ,ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  2278. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_appinfo_copyinfo.getColumn(0, "emrordflag"));
  2279. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  2280. ds_send_savedata_copyinfo.setColumn(0, "status" ,ds_main_appinfo_copyinfo.getColumn(0, "status"));
  2281. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2282. // KNUH_20101124_박성호_start_수정시 신청일자, 신청시간 기존꺼 가져오기
  2283. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdd"));
  2284. ds_send_savedata_copyinfo.setColumn(0, "apptm" ,ds_main_appinfo_copyinfo.getColumn(0, "apptm"));
  2285. // KNUH_20101124_박성호_end
  2286. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  2287. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  2288. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  2289. ds_send_savedata_copyinfo.setColumn(0, "appdrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  2290. ds_send_savedata_copyinfo.setColumn(0, "copyseqno" ,ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  2291. //grd_outapplist.clearStatus();
  2292. ds_grd_outapplist.applyChange();
  2293. var midformcd = "";
  2294. var midreckeyno = "";
  2295. var compformcd = "";
  2296. var compreckeyno = "";
  2297. //var compNodeSet = instance1.selectNodes("/root/temp/issinfo/emrlist");//ds_grd_outapplist
  2298. var histlength = ds_grd_inpat.rowcount;
  2299. if (histlength <= 0)
  2300. {
  2301. for(var j = 0; j < ds_grd_outpat.rowcount; j++ ){
  2302. var chk = ds_grd_outpat.getColumn(j, "chk");
  2303. var orddd = ds_grd_outpat.getColumn(j, "orddd");
  2304. var cretno = ds_grd_outpat.getColumn(j, "cretno");
  2305. var ordtype = ds_grd_outpat.getColumn(j, "ordtype");
  2306. var orddeptcd = ds_grd_outpat.getColumn(j, "orddeptcd");
  2307. if(chk =="Y"){
  2308. var subNode = "";
  2309. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2310. //subNode = compNodeSet.item(i);
  2311. if ((ds_grd_outapplist.getColumn(i, "orddd") == orddd &&
  2312. ds_grd_outapplist.getColumn(i, "cretno") == cretno &&
  2313. ds_grd_outapplist.getColumn(i, "ioflag") == ordtype &&
  2314. ds_grd_outapplist.getColumn(i, "orddeptcd") == orddeptcd) || (ds_grd_outapplist.getColumn(i, "chrtflag") == "P"))
  2315. {
  2316. var arrPostion = new Array();
  2317. arrPostion[0] = i;
  2318. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2319. //grd_outapplist.addStatus(i + 1, "update");
  2320. }
  2321. }
  2322. }
  2323. }
  2324. }
  2325. else
  2326. {
  2327. for(var j = 0; j < ds_grd_inpat.rowcount; j++ ){
  2328. var chk = ds_grd_inpat.getColumn(j, "chk");
  2329. var emrflag = ds_grd_inpat.getColumn(j, "emrflag");
  2330. if (emrflag == "E")
  2331. {
  2332. var midindxseq = ds_grd_inpat.getColumn(j, "midindxseq");
  2333. if(chk =="Y"){
  2334. var subNode = "";
  2335. compmidindxseq = ds_grd_outapplist.lookup("midindxseq", midindxseq, "midindxseq");
  2336. if(midindxseq == compmidindxseq){
  2337. for(var i = 0; i < ds_grd_outapplist.rowcount ; i++){
  2338. //subNode = compNodeSet.item(i);
  2339. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P") || (ds_grd_outapplist.getColumn(i, "midindxseq") == midindxseq)
  2340. || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  2341. {
  2342. var arrPostion = new Array();
  2343. arrPostion[0] = i;
  2344. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2345. //grd_outapplist.addStatus(i + 1, "update");
  2346. }
  2347. }
  2348. }
  2349. }
  2350. }
  2351. else
  2352. {
  2353. var formcd = ds_grd_inpat.getColumn(j, "supitemindxseq");
  2354. var reckeyno = ds_grd_inpat.getColumn(j, "midindxseq");
  2355. if(chk =="Y")
  2356. {
  2357. var subNode = "";
  2358. compformcd = ds_grd_outapplist.lookup("formcd", formcd, "formcd");
  2359. compreckeyno = ds_grd_outapplist.lookup("reckeyno", reckeyno, "reckeyno");
  2360. if((formcd == compformcd)&&(reckeyno == compreckeyno)){
  2361. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  2362. //subNode = compNodeSet.item(i);
  2363. if ((ds_grd_outapplist.getColumn(i, "chrtflag") == "P")
  2364. || (ds_grd_outapplist.getColumn(i, "formcd") == compformcd && ds_grd_outapplist.getColumn(i, "reckeyno") == compreckeyno)
  2365. || (ds_grd_outapplist.getColumn(i, "ioflag") =="O" || ds_grd_outapplist.getColumn(i, "ioflag") =="S"))
  2366. {
  2367. var arrPostion = new Array();
  2368. arrPostion[0] = i;
  2369. grdf_setStatus(grd_outapplist, "U", arrPostion);
  2370. //grd_outapplist.addStatus(i + 1, "update");
  2371. }
  2372. }
  2373. }
  2374. }
  2375. }
  2376. }
  2377. }
  2378. //model.makeValue("/root/send/savedata/emrapplist" ,grd_outapplist.getUpdateData());
  2379. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2380. if( utlf_isNull(oDsUpdate) ) {
  2381. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2382. }
  2383. grdf_setStatusColumn(oDsUpdate, "status");
  2384. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2385. }
  2386. //BMT사본신청여부 20100322
  2387. ds_send_savedata_copyinfo.setColumn(0, "bmtappyn" ,ds_main_otherinfo.getColumn(0, "bmtappyn"));
  2388. ds_return.clearData();
  2389. ds_send_savedata_copyinfo.setColumn(0, "memo" ,ds_main_appinfo_copyinfo.getColumn(0, "memo"));
  2390. var temp_delivefact = utlf_transNullToEmpty(ds_main_appinfo_copyinfo.getColumn(0, "delivefact")).split("\n");
  2391. var temp="";
  2392. for(var i=0; i <temp_delivefact.length; i++){
  2393. if(!utlf_isNull(temp_delivefact[i])){
  2394. temp+=temp_delivefact[i]+"\n";
  2395. }
  2396. }
  2397. ds_main_appinfo_copyinfo.setColumn(0, "delivefact", temp);
  2398. ds_send_savedata_copyinfo.setColumn(0, "delivefact", temp);
  2399. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  2400. dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  2401. var oParam = {};
  2402. oParam.id = "TXMRC03005";
  2403. oParam.service = "chrtmngtapp.CopyIssMngt";
  2404. oParam.method = "reqExeCopyIssInfo2";
  2405. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  2406. oParam.outds = "ds_return=return";
  2407. oParam.async = false;
  2408. oParam.callback = "cf_TXMRC03005";
  2409. tranf_submit(oParam);
  2410. if(arErrorCode.pop("TXMRC03005") > -1)
  2411. {
  2412. if(param == "UPT") { // 수정모드
  2413. sysf_messageBox("수정이", "I002");
  2414. //// KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2415. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2416. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2417. // KNUH_20101124_박성호_end
  2418. {
  2419. fReqGetBfCopyIssHistList(ipt_pid.text);
  2420. }
  2421. else
  2422. {
  2423. this.close();
  2424. }
  2425. return;
  2426. }
  2427. }
  2428. else
  2429. {
  2430. sysf_messageBox("저장을","E009");
  2431. return false;
  2432. }
  2433. }
  2434. // 사본발행 수가입력시 부수만큼 신청내역 insert
  2435. function fCopyReSave()
  2436. {
  2437. utlf_addLog("***** fCopyReSave() *****");
  2438. // 입원 서식
  2439. for(var i = 0; i < ds_grd_inpat.rowcount; i++){
  2440. var nRow = ds_grd_outapplist.addRow();
  2441. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_grd_emrapplist.getColumn(i, "formcd"));
  2442. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_grd_emrapplist.getColumn(i, "chrtflag"));
  2443. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_grd_emrapplist.getColumn(i, "reckeyno"));
  2444. ds_grd_outapplist.setColumn(nRow, "ioflag" , "I");
  2445. ds_grd_outapplist.setColumn(nRow, "indd" ,ds_grd_emrapplist.getColumn(i, "orddd"));
  2446. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_emrapplist.getColumn(i, "orddd"));
  2447. ds_grd_outapplist.setColumn(nRow, "pid" ,ds_grd_emrapplist.getColumn(i, "pid"));
  2448. ds_grd_outapplist.setColumn(nRow, "cretno" ,ds_grd_emrapplist.getColumn(i, "cretno"));
  2449. ds_grd_outapplist.setColumn(nRow, "orddeptcd",ds_grd_emrapplist.getColumn(i, "orddeptcd"));
  2450. ds_grd_outapplist.setColumn(nRow, "testflag" ,ds_grd_emrapplist.getColumn(i, "testflag"));
  2451. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_grd_inpat.getColumn(i, "formrecuserid"));
  2452. }
  2453. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2454. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2455. // 신청부서 1부 default
  2456. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0"|| utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  2457. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  2458. }
  2459. else
  2460. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  2461. // 신규일 때
  2462. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno"))){
  2463. ds_send_savedata_otptinfo.clearData();
  2464. ds_send_savedata_otptinfo.addRow();
  2465. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag" ,"I"); // 구분자
  2466. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid" ,ds_main_cond.getColumn(0, "pid")); // 등록번호
  2467. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd" ,utlf_getCurrentDate()); // 진료일자
  2468. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2469. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2470. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm" ,utlf_getCurrentTime()); // 진료시간
  2471. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag" ,"4"); // 예약구분
  2472. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd" ,sysf_getUserInfo("dutplceinstcd")); // 기관코드
  2473. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact" , ""); // 참고사항
  2474. ds_send_savedata_otptinfo.setColumn(0, "sess_userid" ,sysf_getUserInfo("userid")); // 사용자ID
  2475. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn" , "N"); // 진찰료산정여부
  2476. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn" , "Y"); // 진찰료후불여부
  2477. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  2478. }
  2479. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  2480. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2481. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  2482. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9"){
  2483. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2484. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  2485. }else{
  2486. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  2487. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  2488. }
  2489. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  2490. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){ // 사본발행목적이 기타일 경우
  2491. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2492. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2493. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2494. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2495. }else{
  2496. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  2497. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2498. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  2499. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  2500. }
  2501. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  2502. if((ds_main_cond.getColumn(0, "ioflag")=="O")||(ds_main_cond.getColumn(0, "ioflag")=="S")){
  2503. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_cond.getColumn(0, "orddd"));
  2504. }else{
  2505. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_cond.getColumn(0, "orddd"));
  2506. }
  2507. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_cond.getColumn(0, "cretno"));
  2508. var userinfo = sysf_getUserInfo("dutplcecd");
  2509. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2510. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinf, "hardcd")))
  2511. {
  2512. // KNUH_20101124_박성호_end
  2513. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,"O");
  2514. }else{
  2515. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_cond.getColumn(0, "ioflag"));
  2516. }
  2517. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  2518. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  2519. var dutplcecd = sysf_getUserInfo("dutplcecd");
  2520. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2521. {
  2522. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  2523. }
  2524. else if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  2525. {
  2526. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd", dutplcecd);
  2527. // KNUH_20101124_박성호_end
  2528. }
  2529. ds_send_savedata_copyinfo.setColumn(0, "appdrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  2530. ds_grd_outapplist.applyChange();
  2531. //grd_outapplist.clearStatus();
  2532. for(var i = 0; i < ds_grd_outapplist.rowcount; i++)
  2533. {
  2534. var arrPostion = new Array();
  2535. arrPostion[0] = i;
  2536. grdf_setStatus(grd_outapplist, "I", arrPostion);
  2537. //grd_outapplist.addStatus(i, "insert");
  2538. }
  2539. //ds_send_savedamodel.makeValue("/root/send/savedata/emrapplist" ,grd_outapplist.getUpdateData());
  2540. var oDsUpdate = grdf_getGridUpdateData(grd_outapplist);
  2541. if( utlf_isNull(oDsUpdate) ) {
  2542. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  2543. }
  2544. grdf_setStatusColumn(oDsUpdate, "status");
  2545. ds_send_savedata_emrapplist.copyData(oDsUpdate, true);
  2546. //utlf_addLog(ds_send_savedata_emrapplist.saveXML());
  2547. }
  2548. // 종이차트 신청
  2549. function fPaperList()
  2550. {
  2551. utlf_addLog("***** fPaperList() *****");
  2552. ds_main_emrinfo_emrlist.clearData();
  2553. //var j = 0;
  2554. if(swc_prof.out.rdo_outchrtflag.value == "01" || swc_prof.out.rdo_outchrtflag.value == "02") {
  2555. var nodeListCnt = ds_grd_outpat.rowcount;
  2556. if(nodeListCnt > 0)
  2557. {
  2558. lf_fMakeColumn_main_emrinfo();
  2559. for(var i = 0 ; i < nodeListCnt; i++ )
  2560. {
  2561. if("Y" == ds_grd_outpat.getColumn(i, "chk"))
  2562. {
  2563. //ds_main_emrinfo_emrlist.insertRow(j);
  2564. var j = ds_main_emrinfo_emrlist.addRow();
  2565. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" , "P");
  2566. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" , "O");
  2567. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd" , cmb_emrorddeptcd.value);
  2568. ds_main_emrinfo_emrlist.setColumn(j, "atdoctid" , cmb_orddrid.value);
  2569. ds_main_emrinfo_emrlist.setColumn(j, "formcd" , swc_prof.out.rdo_outchrtflag.value);
  2570. ds_main_emrinfo_emrlist.setColumn(j, "testflag" , "-");
  2571. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" , "0");
  2572. ds_main_emrinfo_emrlist.setColumn(j, "pid" , ds_grd_outpat.getColumn(i, "pid"));
  2573. ds_main_emrinfo_emrlist.setColumn(j, "orddd" , ds_grd_outpat.getColumn(i, "orddd"));
  2574. ds_main_emrinfo_emrlist.setColumn(j, "cretno" , ds_grd_outpat.getColumn(i, "cretno"));
  2575. ds_main_emrinfo_emrlist.setColumn(j, "status" , "");
  2576. //j++;
  2577. }
  2578. }
  2579. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2580. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2581. }
  2582. }
  2583. if( !utlf_isNull(ds_main_cond.getColumn(0, "emrordflag")))
  2584. ds_main_cond.setColumn(0, "emrordflag", "O");
  2585. }
  2586. // 검사결과 신청
  2587. function fAddTestList(formcd)
  2588. {
  2589. utlf_addLog("***** fAddTestList("+formcd+") *****");
  2590. var vsformcd = formcd;
  2591. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  2592. sysf_messageBox("진료과를 먼저 선택","I008");
  2593. fChkTestList(vsformcd);
  2594. return;
  2595. }
  2596. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  2597. sysf_messageBox("주치의를 선택","I008");
  2598. fChkTestList(vsformcd);
  2599. return;
  2600. }
  2601. if(vsformcd == "0000000000")
  2602. {
  2603. if(group1.chk_prcpinfo.value == "Y")
  2604. fCopyTestList("0800000636");
  2605. fCopyTestList("0800004096");
  2606. fCopyTestList("0800004099");
  2607. fCopyTestList("0800004098");
  2608. fCopyTestList("0800004097");
  2609. fCopyTestList("E");
  2610. fCopyTestList("F");
  2611. fCopyTestList("I");
  2612. fCopyTestList("O");
  2613. }
  2614. else
  2615. {
  2616. fCopyTestList(vsformcd);
  2617. }
  2618. }
  2619. // 검사 copy
  2620. function fCopyTestList(formcd)
  2621. {
  2622. utlf_addLog("***** fCopyTestList("+formcd+") *****");
  2623. var vsformcd = formcd;
  2624. var testflg = "";
  2625. var chrtflag = "";
  2626. var formnm = "";
  2627. var recdt = "";
  2628. var supitemindxseq = "";
  2629. var midindxseq = "";
  2630. var sortno = "";
  2631. if(vsformcd == "0800004096") {testflg = "D"; chrtflag = "E"; formnm = "진단검사"; supitemindxseq = "5162"; midindxseq = "11137"; sortno = "17";}// 진단검사
  2632. if(vsformcd == "0800004099") {testflg = "G"; chrtflag = "E"; formnm = "영상의학"; supitemindxseq = "5162"; midindxseq = "11136"; sortno = "20";}// 영상의학
  2633. if(vsformcd == "0800004098") {testflg = "H"; chrtflag = "E"; formnm = "핵체외"; supitemindxseq = "5162"; midindxseq = "18788"; sortno = "21";}// 핵체외
  2634. if(vsformcd == "0800004097") {testflg = "J"; chrtflag = "E"; formnm = "미생물"; supitemindxseq = "5162"; midindxseq = "20339"; sortno = "23";}// 미생물
  2635. if(vsformcd == "0800000636") {testflg = "A"; chrtflag = "E"; formnm = "처방기록"; supitemindxseq = "19338"; midindxseq = "20337"; sortno = "25";}// 처방기록
  2636. if(vsformcd == "C") {testflg = "C"; chrtflag = "-"} // 초진
  2637. if(vsformcd == "E") {testflg = "E"; chrtflag = "E"}// 임상병리
  2638. if(vsformcd == "F") {testflg = "F"; chrtflag = "E"}// 기능검사
  2639. if(vsformcd == "I") {testflg = "I"; chrtflag = "E"}// 내시경
  2640. if(vsformcd == "T") {testflg = "T"; chrtflag = "E"}// 검사결과만 신청
  2641. if(vsformcd == "O") {testflg = "O"; chrtflag = "E"}// 전체
  2642. //var j = 0;
  2643. ds_main_emrinfo_emrlist.clearData();
  2644. lf_fMakeColumn_main_emrinfo();
  2645. var nodeListCnt = ds_grd_outpat.getCaseCount("chk == 'Y'");
  2646. if(nodeListCnt > 0){
  2647. for(var i = 0 ; i < ds_grd_outpat.rowcount; i++ ) {
  2648. if("Y" == ds_grd_outpat.getColumn(i, "chk")) {
  2649. //ds_main_emrinfo_emrlist.insertRow(j);
  2650. var j = ds_main_emrinfo_emrlist.addRow();
  2651. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" ,chrtflag);
  2652. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd" ,ds_grd_outpat.getColumn(i, "orddeptcd"));
  2653. ds_main_emrinfo_emrlist.setColumn(j, "atdoctid" ,cmb_orddrid.value);
  2654. ds_main_emrinfo_emrlist.setColumn(j, "formcd" ,vsformcd);
  2655. ds_main_emrinfo_emrlist.setColumn(j, "orddd" ,ds_grd_outpat.getColumn(i, "orddd"));
  2656. ds_main_emrinfo_emrlist.setColumn(j, "cretno" ,ds_grd_outpat.getColumn(i, "cretno"));
  2657. ds_main_emrinfo_emrlist.setColumn(j, "pid" ,ds_grd_outpat.getColumn(i, "pid"));
  2658. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" ,ds_grd_outpat.getColumn(i, "ordtype"));
  2659. ds_main_emrinfo_emrlist.setColumn(j, "testflag" ,testflg);
  2660. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" ,"0");
  2661. ds_main_emrinfo_emrlist.setColumn(j, "formnm" ,formnm);
  2662. ds_main_emrinfo_emrlist.setColumn(j, "supitemindxseq" ,supitemindxseq);
  2663. ds_main_emrinfo_emrlist.setColumn(j, "midindxseq" ,midindxseq);
  2664. ds_main_emrinfo_emrlist.setColumn(j, "sortno" ,sortno);
  2665. ds_main_emrinfo_emrlist.setColumn(j, "status" ,"");
  2666. //j ++;
  2667. }
  2668. }
  2669. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2670. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2671. }
  2672. }
  2673. // 검사 rest
  2674. function fChkTestList(fromcd)
  2675. {
  2676. utlf_addLog("***** fChkTestList("+fromcd+") *****");
  2677. // testinfo value "" -> "N" 로 변경
  2678. var vsformcd = fromcd;
  2679. switch(vsformcd){
  2680. case "0800004096": // 진검
  2681. ds_main_otherinfo.setColumn(0, "testinfo2", "N");
  2682. break;
  2683. case "0800004099": // 영상
  2684. ds_main_otherinfo.setColumn(0, "testinfo5", "N");
  2685. break;
  2686. case "0800004098": // 핵의학
  2687. ds_main_otherinfo.setColumn(0, "testinfo6", "N");
  2688. break;
  2689. case "0800004097": //미생물
  2690. ds_main_otherinfo.setColumn(0, "testinfo8", "N");
  2691. break;
  2692. case "0800000636": //처방
  2693. ds_main_otherinfo.setColumn(0, "prcpinfo", "N");
  2694. break;
  2695. case "0000000000": // 검사 전체
  2696. ds_main_otherinfo.setColumn(0, "testinfo", "N");
  2697. ds_main_otherinfo.setColumn(0, "testinfo2", "N");
  2698. ds_main_otherinfo.setColumn(0, "testinfo3", "N");
  2699. ds_main_otherinfo.setColumn(0, "testinfo4", "N");
  2700. ds_main_otherinfo.setColumn(0, "testinfo5", "N");
  2701. ds_main_otherinfo.setColumn(0, "testinfo6", "N");
  2702. ds_main_otherinfo.setColumn(0, "testinfo7", "N");
  2703. ds_main_otherinfo.setColumn(0, "testinfo8", "N");
  2704. break;
  2705. }
  2706. }
  2707. // 검사결과 신청
  2708. function fDelTestList(formcd)
  2709. {
  2710. //utlf_addLog("***** fDelTestList("+formcd+") *****");
  2711. var vsformcd = formcd;
  2712. if(vsformcd == "0000000000") {
  2713. //var test2Row = grd_outapplist.findRow("0800004096", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2714. var test2Row = ds_grd_outapplist.findRow("formcd", "0800004096");
  2715. //utlf_addLog(" test2Row : " + test2Row);
  2716. ds_grd_outapplist.deleteRow(test2Row);
  2717. //var test5Row = grd_outapplist.findRow("0800004099", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2718. var test5Row = ds_grd_outapplist.findRow("formcd", "0800004099");
  2719. //utlf_addLog(" test5Row : " + test5Row);
  2720. ds_grd_outapplist.deleteRow(test5Row);
  2721. //var test6Row = grd_outapplist.findRow("0800004098", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2722. var test6Row = ds_grd_outapplist.findRow("formcd", "0800004098");
  2723. //utlf_addLog(" test6Row : " + test6Row);
  2724. ds_grd_outapplist.deleteRow(test6Row);
  2725. //var test8Row = grd_outapplist.findRow("0800004097", 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2726. var test8Row = ds_grd_outapplist.findRow("formcd", "0800004097");
  2727. //utlf_addLog(" test8Row : " + test8Row);
  2728. ds_grd_outapplist.deleteRow(test8Row);
  2729. } else {
  2730. var iFndRow2 = ds_grd_outapplist.findRow("formcd", vsformcd);
  2731. //utlf_addLog(" iFndRow2 : " + iFndRow2 + " vsformcd : " + vsformcd);
  2732. //var iFndRow2 = grd_outapplist.findRow(vsformcd, 0, parseInt(grd_outapplist.colRef("formcd")), "true", "true");//중복 서식 check
  2733. ds_grd_outapplist.deleteRow(iFndRow2);
  2734. }
  2735. }
  2736. //회차별 입원 차트 조회
  2737. function fEMRChrtList(param)
  2738. {
  2739. utlf_addLog("***** fEMRChrtList("+param+") *****");
  2740. ds_send_search.clearData();
  2741. ds_send_search_rsrvinfo.clearData();
  2742. var nRow = ds_send_search.addRow();
  2743. var i = 1;
  2744. if(param != "F") {
  2745. if(btn_out.getSelectStatus() == true) {
  2746. cur = ds_grd_outpat.rowposition;
  2747. ds_send_search.setColumn(nRow, "pid" ,ds_grd_outpat.getColumn(cur, "pid"));
  2748. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_outpat.getColumn(cur, "orddd"));
  2749. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_outpat.getColumn(cur, "cretno"));
  2750. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_outpat.getColumn(cur, "orddeptcd"));
  2751. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2752. } else if(btn_in.getSelectStatus() == true) {
  2753. cur = ds_grd_inapplist.rowposition;
  2754. ds_send_search.setColumn(nRow, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2755. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2756. ds_send_search.setColumn(nRow, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2757. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2758. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2759. ds_send_search.setColumn(nRow, "ordtype" ,"I");
  2760. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2761. }
  2762. } else if(param == "F") {
  2763. cur = 1;
  2764. ds_send_search.setColumn(nRow, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2765. ds_send_search.setColumn(nRow, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2766. ds_send_search.setColumn(nRow, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2767. ds_send_search.setColumn(nRow, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2768. ds_send_search.setColumn(nRow, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2769. ds_send_search.setColumn(nRow, "ordtype" ,"I");
  2770. ds_send_search.setColumn(nRow, "chrtflag" ,"A");
  2771. }
  2772. ds_grd_emrapplist.clearData();
  2773. var oParam = {};
  2774. oParam.id = "TRMRC03007";
  2775. oParam.service = "chrtmngtapp.CopyIssMngt";
  2776. oParam.method = "reqGetCopyEmrTestInfo";
  2777. oParam.inds = "req=ds_send_search";
  2778. oParam.outds = "ds_main_emrinfo_emrlist=emrlist";
  2779. oParam.async = false;
  2780. oParam.callback = "cf_TRMRC03007";
  2781. tranf_submit(oParam);
  2782. if (arErrorCode.pop("TRMRC03007") > -1)
  2783. {
  2784. //var NodeList = instance1.selectNodes("/root/main/emrinfo/emrlist");
  2785. if(ds_main_emrinfo_emrlist.rowcount > 0) {
  2786. if(btn_out.getSelectStatus() == true) {
  2787. fOutEMRChrtListSelect();
  2788. } else if(btn_in.getSelectStatus() == true) {
  2789. ds_grd_outapplist.copyData(ds_main_emrinfo_emrlist);
  2790. //setCSVToNode("/root/main/issinfo", getNodeListCSV(NodeList), "emrapplist");
  2791. }
  2792. }
  2793. else{
  2794. return;
  2795. }
  2796. }
  2797. ds_send_search.clearData();
  2798. ds_send_search.addRow();
  2799. ds_send_search_rsrvinfo.clearData();
  2800. return;
  2801. }
  2802. // 입원 중분류 chart
  2803. function fGetINChrtList()
  2804. {
  2805. utlf_addLog("***** fGetINChrtList() *****");
  2806. if(ds_grd_inapplist.rowposition > -1)
  2807. {
  2808. iviewerIemr.cleanViewer();
  2809. ds_tmpinicert2_iniinfo.clearData();
  2810. //fShowProgress(true, "기록을 조회하고 있습니다");
  2811. cur = ds_grd_inapplist.rowposition;
  2812. ds_send_search.clearData();
  2813. ds_send_search.addRow();
  2814. ds_send_search.setColumn(0, "pid" ,ds_grd_inapplist.getColumn(cur, "pid"));
  2815. ds_send_search.setColumn(0, "orddd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2816. ds_send_search.setColumn(0, "indd" ,ds_grd_inapplist.getColumn(cur, "indd"));
  2817. ds_send_search.setColumn(0, "dschdd" ,ds_grd_inapplist.getColumn(cur, "dschdd"));
  2818. ds_send_search.setColumn(0, "cretno" ,ds_grd_inapplist.getColumn(cur, "cretno"));
  2819. ds_send_search.setColumn(0, "deptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2820. //ds_send_search.setColumn(0, "ordtype" ,ds_grd_inapplist.getColumn(cur, "ioflag"));
  2821. ds_send_search.setColumn(0, "ordtype" ,ds_grd_inapplist.getColumn(cur, "ioflag"));
  2822. ds_send_search.setColumn(0, "emrflag" ,ds_grd_inapplist.getColumn(cur, "emrflag"));
  2823. //2009-11-02 오후 11:36:28 강지훈 추가
  2824. ds_send_search.setColumn(0, "bfopentest" ,ds_grd_inapplist.getColumn(cur, "bfopentest"));
  2825. ds_send_search.setColumn(0, "chrtflag" ,"A");
  2826. ds_send_search.setColumn(0, "noview" ,"Y"); //이윤주추가(20151230)
  2827. //ds_send_search.setColumn(0, "orddeptcd" ,ds_grd_inapplist.getColumn(cur, "orddeptcd"));
  2828. //ds_send_search.setColumn(0, "tabflag" , "ALL");
  2829. ds_grd_inpat.clearData();
  2830. var oParam = {};
  2831. oParam.id = "TRMRC03021";
  2832. oParam.service = "chrtmngtapp.CopyIssMngt";
  2833. oParam.method = "reqGetInChrtList";
  2834. oParam.inds = "req=ds_send_search";
  2835. oParam.outds = "ds_grd_inpat=emrapplist";
  2836. oParam.async = false;
  2837. oParam.callback = "cf_TRMRC03021";
  2838. tranf_submit(oParam);
  2839. // fShowProgress(false);
  2840. }
  2841. }
  2842. /**
  2843. * @type : function
  2844. * @access : public
  2845. * @desc : 진료일자별 외래 차트 사본 신청
  2846. * @param :
  2847. * @return :
  2848. * @---------------------------------------------------
  2849. */
  2850. function fOutEMRChrtListSelect()
  2851. {
  2852. utlf_addLog("***** fOutEMRChrtListSelect() *****");
  2853. var formcd = "";
  2854. var reckeyno = "";
  2855. var duplFlag = false;
  2856. if(ds_main_emrinfo_emrlist.rowcount > 0){
  2857. for(var i = 0; i < ds_main_emrinfo_emrlist.rowcount; i++){
  2858. reckeyno = ds_main_emrinfo_emrlist.getColumn(i, "reckeyno");
  2859. formcd = ds_main_emrinfo_emrlist.getColumn(i, "formcd");
  2860. for(var rowcnt = 0; rowcnt < ds_grd_outapplist.rowcount; rowcnt++){
  2861. if((ds_grd_outapplist.getColumn(rowcnt, "reckeyno") == reckeyno) && (ds_grd_outapplist.getColumn(rowcnt, "formcd") == formcd)){
  2862. duplFlag = true;
  2863. break;
  2864. } else {
  2865. duplFlag = false;
  2866. }
  2867. }
  2868. if((duplFlag)){
  2869. //sysf_messageBox(sFormnm+"은(는) 이미 신청하신 서식지","I009");
  2870. }else{
  2871. var nRow = ds_grd_outapplist.addRow();
  2872. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_main_emrinfo_emrlist.getColumn(i, "formcd"));
  2873. ds_grd_outapplist.setColumn(nRow, "formnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formnm"));
  2874. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_main_emrinfo_emrlist.getColumn(i, "chrtflag"));
  2875. ds_grd_outapplist.setColumn(nRow, "formrecdt" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdt"));
  2876. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_main_emrinfo_emrlist.getColumn(i, "reckeyno"));
  2877. ds_grd_outapplist.setColumn(nRow, "ioflag" ,"O");
  2878. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_outpat.getColumn(ds_grd_outpat.rowposition, "orddd"));
  2879. ds_grd_outapplist.setColumn(nRow, "orddeptcd" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdeptcd"));
  2880. ds_grd_outapplist.setColumn(nRow, "orddeptnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecdeptnm"));
  2881. ds_grd_outapplist.setColumn(nRow, "atdoctnm" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecusernm"));
  2882. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_main_emrinfo_emrlist.getColumn(i, "formrecuserid"));
  2883. duplFlag = false;
  2884. }
  2885. }
  2886. }else{
  2887. //sysf_messageBox("신청할 서식이","I004");
  2888. if(ds_grd_outpat.getColumn(ds_grd_outpat.rowposition, "chk") == "Y") {
  2889. ds_grd_outpat.setColumn(ds_grd_outpat.rowposition, "chk", "N");
  2890. }
  2891. return;
  2892. }
  2893. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2894. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2895. }
  2896. /**
  2897. * @type : function
  2898. * @access : public
  2899. * @desc : 진료일자별 입원 차트 사본 신청
  2900. * @param :
  2901. * @return :
  2902. * @---------------------------------------------------
  2903. */
  2904. function fInEMRChrtListSelect()
  2905. {
  2906. utlf_addLog("***** fInEMRChrtListSelect() *****");
  2907. var nodeListCnt = ds_grd_inpat.getCaseCount("chk == 'Y'");
  2908. if(nodeListCnt > 0){
  2909. // 서식
  2910. for(var i = 0; i < ds_grd_inpat.rowcount; i++){
  2911. var chk = ds_grd_inpat.getColumn(i, "chk");
  2912. if( chk == "Y") {
  2913. var leftindx = ds_grd_inpat.getColumn(i, "midindxseq");
  2914. for( var j = 0; j < ds_grd_emrapplist.rowcount; j++) {
  2915. var rightindx = ds_grd_emrapplist.getColumn(j, "midindxseq");
  2916. if(leftindx == rightindx) {
  2917. grd_outapplist.additem();
  2918. ds_grd_outapplist.setColumn(nRow, "formcd" ,ds_grd_emrapplist.getColumn(j, "formcd"));
  2919. ds_grd_outapplist.setColumn(nRow, "chrtflag" ,ds_grd_emrapplist.getColumn(j, "chrtflag"));
  2920. ds_grd_outapplist.setColumn(nRow, "reckeyno" ,ds_grd_emrapplist.getColumn(j, "reckeyno"));
  2921. ds_grd_outapplist.setColumn(nRow, "ioflag" , "I");
  2922. ds_grd_outapplist.setColumn(nRow, "indd" ,ds_grd_emrapplist.getColumn(j, "orddd"));
  2923. ds_grd_outapplist.setColumn(nRow, "orddd" ,ds_grd_emrapplist.getColumn(j, "orddd"));
  2924. ds_grd_outapplist.setColumn(nRow, "pid" ,ds_grd_emrapplist.getColumn(j, "pid"));
  2925. ds_grd_outapplist.setColumn(nRow, "cretno" ,ds_grd_emrapplist.getColumn(j, "cretno"));
  2926. ds_grd_outapplist.setColumn(nRow, "orddeptcd" ,ds_grd_emrapplist.getColumn(j, "orddeptcd"));
  2927. ds_grd_outapplist.setColumn(nRow, "testflag" ,ds_grd_emrapplist.getColumn(j, "testflag"));
  2928. ds_grd_outapplist.setColumn(nRow, "atdoctid" ,ds_grd_inpat.getColumn(i, "formrecuserid"));
  2929. }
  2930. }
  2931. }
  2932. }
  2933. }else{
  2934. //sysf_messageBox("신청할 서식이","I004");
  2935. if(ds_grd_inpat.getColumn(ds_grd_inpat.rowposition, "chk") == "Y") {
  2936. ds_grd_inpat.setColumn(ds_grd_inpat.rowposition, "chk", "N");
  2937. }
  2938. return;
  2939. }
  2940. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2941. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2942. }
  2943. // 신청된 사본 재신청시.
  2944. function fInReCopyEMRChrtListSelect()
  2945. {
  2946. utlf_addLog("***** fInReCopyEMRChrtListSelect() *****");
  2947. // 서식
  2948. //var j = 0;
  2949. ds_main_emrinfo_emrlist.clearData();
  2950. lf_fMakeColumn_main_emrinfo();
  2951. for(var i = 0; i < ds_grd_emrapplist.rowcount; i++){
  2952. //ds_main_emrinfo_emrlist.insertRow(j);
  2953. var j = ds_main_emrinfo_emrlist.addRow();
  2954. ds_main_emrinfo_emrlist.setColumn(j, "formcd" ,ds_grd_emrapplist.getColumn(i, "formcd"));
  2955. ds_main_emrinfo_emrlist.setColumn(j, "chrtflag" ,ds_grd_emrapplist.getColumn(i, "chrtflag"));
  2956. ds_main_emrinfo_emrlist.setColumn(j, "reckeyno" ,ds_grd_emrapplist.getColumn(i, "reckeyno"));
  2957. ds_main_emrinfo_emrlist.setColumn(j, "ioflag" , "I");
  2958. ds_main_emrinfo_emrlist.setColumn(j, "indd" ,ds_grd_emrapplist.getColumn(i, "testorddd"));
  2959. ds_main_emrinfo_emrlist.setColumn(j, "orddd" ,ds_grd_emrapplist.getColumn(i, "testorddd"));
  2960. ds_main_emrinfo_emrlist.setColumn(j, "pid" ,ds_main_cond.getColumn(0, "pid"));
  2961. ds_main_emrinfo_emrlist.setColumn(j, "cretno" ,ds_grd_emrapplist.getColumn(i, "testcretno"));
  2962. ds_main_emrinfo_emrlist.setColumn(j, "orddeptcd",ds_grd_emrapplist.getColumn(i, "testorddeptcd"));
  2963. ds_main_emrinfo_emrlist.setColumn(j, "testflag" ,ds_grd_emrapplist.getColumn(i, "testflag"));
  2964. j ++;
  2965. }
  2966. ds_grd_outapplist.appendData(ds_main_emrinfo_emrlist, true, false);
  2967. //copyNodeListType("/root/temp/issinfo", "/root/main/emrinfo/emrlist", "after", model, model);
  2968. // grd_outapplist.colDisabled(grd_outapplist.colRef("chrtflag"))=true;
  2969. // grd_outapplist.colDisabled(grd_outapplist.colRef("ioflag"))=true;
  2970. }
  2971. /**
  2972. * @group :
  2973. * @ver :
  2974. * @by : 이창록 2008-08-29
  2975. * @---------------------------------------------------
  2976. * @type : function
  2977. * @access : public
  2978. * @desc : 초기화 버튼
  2979. * @param :
  2980. * @return :
  2981. * @---------------------------------------------------
  2982. */
  2983. function fAppCopyInfoClear(){
  2984. utlf_addLog("***** fAppCopyInfoClear() *****");
  2985. PRIN_COPY = ""; // 출력매수
  2986. PRIN_QUNT = ""; // 부수
  2987. SAVE_COPY = 1;
  2988. RESAVE_COPY = 1;
  2989. SAVE_ORDDD = "";
  2990. OUTCOPY_FLAG = "";
  2991. INCOPY_FLAG = "";
  2992. ds_send.clearData();
  2993. ds_send_cond.clearData();
  2994. ds_send_reqdata.clearData();
  2995. ds_send_search.clearData();
  2996. ds_send_search_rsrvinfo.clearData();
  2997. ds_main_appinfo_copyinfo.clearData();
  2998. ds_main_appinfo_copyinfo.addRow();
  2999. dsf_setDefaultVal(ds_main_appinfo_copyinfo, "all");
  3000. fSet_enableevent(false);
  3001. ds_main_otherinfo.clearData();
  3002. ds_main_otherinfo.addRow();
  3003. fSet_enableevent(true);
  3004. ds_grd_outapplist.clearData();
  3005. ds_grd_outpat.clearData();
  3006. ds_grd_inapplist.clearData();
  3007. ds_grd_emrapplist.clearData();
  3008. ds_grd_inpat.clearData();
  3009. ds_main_emrinfo_emrlist.clearData();
  3010. //model.resetInstanceNode("/root/result");
  3011. //model.removeNodeset("/root/main/ordinfo/ordlist");
  3012. /*
  3013. model.resetInstanceNode("/root/send");
  3014. model.resetInstanceNode("/root/main/appinfo");
  3015. model.resetInstanceNode("/root/main/otherinfo");
  3016. model.removeNodeset("/root/temp/issinfo/emrlist");
  3017. model.removeNodeset("/root/main/outpathistlist/outpathistlist");
  3018. model.removeNodeset("/root/main/inpathistlist/inpathistlist");
  3019. model.removeNodeset("/root/main/issinfo/emrapplist");
  3020. model.removeNodeset("/root/main/midissinfo/emrapplist");
  3021. model.removeNodeset("/root/main/emrinfo/emrlist");
  3022. */
  3023. rdo_appmanflag.enable = true;
  3024. rdo_trustyn.enable = true;
  3025. btn_save.enable = true;
  3026. btn_issgoal.enable = true;
  3027. btn_update.enable = false;
  3028. ds_main_appinfo_copyinfo.setColumn(0, "status","");
  3029. ds_main_appinfo_copyinfo.setColumn(0, "appmanflag", "1");
  3030. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "N");
  3031. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  3032. var dutplcecd = sysf_getUserInfo("dutplcecd");
  3033. if(utlf_isNull(ds_temp_hardcd.lookup("hardcd", dutplcecd, "hardcd")))
  3034. {
  3035. ds_main_appinfo_copyinfo.setColumn(0, "appdeptcd", sysf_getUserInfo("dutplcecd")); // 신청과
  3036. appf_getOrdDeptDoctorList("none", sysf_getUserInfo("dutplceinstcd"), cmb_emrorddeptcd.value, "usernm", "asc", utlf_getCurrentDate(), "ds_init_cmb_orddrid");//해당 주치의
  3037. ds_main_appinfo_copyinfo.setColumn(0, "appdrid", sysf_getUserId().getTrim()); //신청의
  3038. }
  3039. // KNUH_20101124_박성호_end
  3040. iviewerIemr.cleanViewer();
  3041. /*
  3042. iviewerIemr.enableevent = false;
  3043. // var e = new SizeEventInfo;
  3044. // frmf_inputEnterKey("iviewerIemr", "onsize", e);
  3045. var strWidth = parseInt(iviewerIemr.position.width);
  3046. var strHeight = parseInt(iviewerIemr.position.height);
  3047. iviewerIemr.setChartViewerSize(strWidth, strHeight);//687
  3048. iviewerIemr.enableevent = true;
  3049. */
  3050. }
  3051. /**
  3052. * @group :
  3053. * @ver :
  3054. * @by : 이창록 2008-08-29
  3055. * @---------------------------------------------------
  3056. * @type : function
  3057. * @access : public
  3058. * @desc : 신청인에 따른 위임장유뮤 변경
  3059. * @param :
  3060. * @return :
  3061. * @---------------------------------------------------
  3062. */
  3063. function fAppManNmSetting()
  3064. {
  3065. utlf_addLog("***** fAppManNmSetting() *****");
  3066. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")!="9"){
  3067. ipt_appmannm.enable = false;
  3068. ipt_appmannm.value = "";
  3069. var appmanflag = ds_main_appinfo_copyinfo.getColumn(0, "appmanflag");
  3070. if(appmanflag=="1"){
  3071. rdo_trustyn.value = "N";
  3072. }else{
  3073. rdo_trustyn.value = "Y";
  3074. }
  3075. }else{
  3076. ipt_appmannm.enable = true;
  3077. rdo_trustyn.value = "Y";
  3078. }
  3079. }
  3080. // 사본발행 재신청
  3081. function fReCopyAppInfoSave()
  3082. {
  3083. sysf_trace("***** fReCopyAppInfoSave() *****");
  3084. ds_send_savedata_copyinfo.clearData();
  3085. ds_send_savedata_copyinfo.addRow();
  3086. ds_send_savedata_otptinfo.clearData();
  3087. ds_send_savedata_otptinfo.addRow();
  3088. ds_send_savedata_emrapplist.clearData();
  3089. ds_send_savedata_emrapplist.addRow();
  3090. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"))){
  3091. sysf_messageBox("진료과를 먼저 선택","I008");
  3092. return;
  3093. }
  3094. if(utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appdrid"))){
  3095. sysf_messageBox("신청의사를 선택","I008");
  3096. return;
  3097. }
  3098. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"))){
  3099. rdo_appmanflag.setFocus();
  3100. sysf_messageBox("사본발행 신청인을", "C001");
  3101. return;
  3102. }
  3103. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "trustyn"))){
  3104. rdo_trustyn.setFocus();
  3105. sysf_messageBox("위임장/인감증명서 유무를", "C001");
  3106. return;
  3107. }
  3108. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))){
  3109. ipt_issgoalnm.setFocus();
  3110. sysf_messageBox("사본발행목적을", "C001");
  3111. return;
  3112. }
  3113. var iCopyseqno = ds_main_cond.getColumn(0, "copyseqno");
  3114. if (utlf_isNull(iCopyseqno))
  3115. {
  3116. sysf_messageBox("사본발행 내역을","C002");
  3117. return;
  3118. }
  3119. ds_send_savedata_copyinfo.setColumn(0, "copyseqno", iCopyseqno);
  3120. ds_send_savedata_copyinfo.setColumn(0, "reappyn", "Y");
  3121. // 저장된 입원 서식 copy
  3122. if(RESAVE_COPY == 1) {
  3123. }
  3124. var userinfo = sysf_getUserInfo("dutplcecd");
  3125. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  3126. //if(userinfo == "3230000000"){
  3127. if(!utlf_isNull(ds_temp_hardcd.lookup("hardcd", userinfo, "hardcd")))
  3128. {
  3129. // KNUH_20101124_박성호_end
  3130. ds_main_appinfo_copyinfo.setColumn(0, "status","");
  3131. ds_main_appinfo_copyinfo.setColumn(0, "cretno","");
  3132. ds_main_cond.setColumn(0, "cretno","");
  3133. }else{
  3134. ds_main_appinfo_copyinfo.setColumn(0, "status","I");
  3135. }
  3136. ds_grd_outapplist.applyChange();
  3137. // 신청부서 1부 default
  3138. if (ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == "0" || utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")) ){
  3139. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", "1" );
  3140. }
  3141. else
  3142. ds_send_savedata_copyinfo.setColumn(0, "emrappcopies", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") );
  3143. // 신규일 때
  3144. if (utlf_isNull(ds_main_appinfo_copyinfo.getColumn(0, "status")) || ds_main_appinfo_copyinfo.getColumn(0, "status") == "I")
  3145. {
  3146. if(utlf_isNull(ds_main_cond.getColumn(0, "cretno"))) {
  3147. //model.removeNodeset("/root/send/savedata/otptinfo");
  3148. ds_send_savedata_otptinfo.setColumn(0, "otpt_flag","I"); // 구분자
  3149. ds_send_savedata_otptinfo.setColumn(0, "otpt_pid",ds_main_cond.getColumn(0, "pid")); // 등록번호
  3150. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddd",utlf_getCurrentDate()); // 진료일자
  3151. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddeptcd", ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd")); // 진료과
  3152. ds_send_savedata_otptinfo.setColumn(0, "otpt_orddrid", ds_main_appinfo_copyinfo.getColumn(0, "appdrid")); // 진료의사
  3153. ds_send_savedata_otptinfo.setColumn(0, "otpt_ordtm",utlf_getCurrentTime()); // 진료시간
  3154. ds_send_savedata_otptinfo.setColumn(0, "otpt_rsrvflag","4"); // 예약구분
  3155. ds_send_savedata_otptinfo.setColumn(0, "otpt_instcd",sysf_getUserInfo("dutplceinstcd")); // 기관코드
  3156. ds_send_savedata_otptinfo.setColumn(0, "otpt_remfact", ""); // 참고사항
  3157. ds_send_savedata_otptinfo.setColumn(0, "sess_userid",sysf_getUserInfo("userid")); // 사용자ID
  3158. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtestmyn", "N"); // 진찰료산정여부
  3159. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtpostyn", "Y"); // 진찰료후불여부
  3160. ds_send_savedata_otptinfo.setColumn(0, "otpt_medamtfreeresn", "10"); // 진찰료미산정사유
  3161. }
  3162. ds_send_savedata_copyinfo.setColumn(0, "status", "i");
  3163. ds_send_savedata_copyinfo.setColumn(0, "pid" ,ds_main_cond.getColumn(0, "pid"));
  3164. ds_send_savedata_copyinfo.setColumn(0, "appdd" ,utlf_getCurrentDate());
  3165. if(ds_main_appinfo_copyinfo.getColumn(0, "appmanflag")=="9"){
  3166. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  3167. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,ipt_appmannm.text);
  3168. //ds_send_savedata_copyinfo.setColumn(0, "appmanetc" ,ipt_appmannm.text);
  3169. }else{
  3170. ds_send_savedata_copyinfo.setColumn(0, "appmanflag" ,ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  3171. ds_send_savedata_copyinfo.setColumn(0, "appmannm" ,rdo_appmanflag.text);
  3172. }
  3173. ds_send_savedata_copyinfo.setColumn(0, "trustyn" ,ds_main_appinfo_copyinfo.getColumn(0, "trustyn"));
  3174. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){ // 사본발행목적이 기타일 경우
  3175. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" , ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3176. ds_send_savedata_copyinfo.setColumn(0, "issgoaletcnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  3177. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3178. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  3179. }else{
  3180. ds_send_savedata_copyinfo.setColumn(0, "issgoaletc" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"))
  3181. ds_send_savedata_copyinfo.setColumn(0, "issgoaletccd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3182. ds_send_savedata_copyinfo.setColumn(0, "issgoalcd" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  3183. ds_send_savedata_copyinfo.setColumn(0, "issgoalnm" ,ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  3184. }
  3185. ds_send_savedata_copyinfo.setColumn(0, "delivefact" ,ds_main_appinfo_copyinfo.getColumn(0, "delivefact"));
  3186. if((ds_main_appinfo_copyinfo.getColumn(0, "ioflag")=="O")||(ds_main_appinfo_copyinfo.getColumn(0, "ioflag")=="S")){
  3187. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3188. }else{
  3189. ds_send_savedata_copyinfo.setColumn(0, "orddd" ,ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3190. }
  3191. ds_send_savedata_copyinfo.setColumn(0, "cretno" ,ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3192. ds_send_savedata_copyinfo.setColumn(0, "emrordflag" ,ds_main_appinfo_copyinfo.getColumn(0, "emrordflag"));
  3193. ds_send_savedata_copyinfo.setColumn(0, "emrorddeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "emrorddeptcd"));
  3194. ds_send_savedata_copyinfo.setColumn(0, "appdeptcd" ,ds_main_appinfo_copyinfo.getColumn(0, "appdeptcd"));
  3195. ds_send_savedata_copyinfo.setColumn(0, "appdrid" ,ds_main_appinfo_copyinfo.getColumn(0, "appdrid"));
  3196. }
  3197. //alert(54268); return;
  3198. var hRow = ds_grd_apphist.rowposition;
  3199. var IssNo = ds_grd_apphist.getColumn(hRow, "issno");
  3200. //BMT사본신청여부 20100322
  3201. ds_send_savedata_copyinfo.setColumn(0, "bmtappyn", ds_main_otherinfo.getColumn(0, "bmtappyn"));
  3202. if(!utlf_isNull(IssNo)){
  3203. var Msg= sysf_messageBox("한번 발행한 사본입니다.그래도 재신청을","Q004");
  3204. if(Msg=="6"){
  3205. // default value setting
  3206. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  3207. //dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  3208. var oParam = {};
  3209. oParam.id = "TXMRC03005";
  3210. oParam.service = "chrtmngtapp.CopyIssMngt";
  3211. oParam.method = "reqExeCopyIssInfo2";
  3212. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  3213. oParam.outds = "ds_return=return";
  3214. oParam.async = false;
  3215. oParam.callback = "cf_TXMRC03005";
  3216. tranf_submit(oParam);
  3217. if(arErrorCode.pop("TXMRC03005") > -1){
  3218. sysf_messageBox("재신청이","I002");
  3219. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  3220. var oprnerId = opener.frmf_getScreenID();
  3221. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  3222. frmf_clearParameter("SMMRC03000_appYN");
  3223. }else{
  3224. sysf_mssageBox("재신청이","E009");
  3225. }
  3226. //this.close();
  3227. lf_setPid();
  3228. }else if(Msg=="7"){
  3229. RESAVE_COPY ++;
  3230. ds_send_savedata_copyinfo.clearData();
  3231. ds_send_savedata_emrapplist.clearData();
  3232. ds_send_savedata_otptinfo.clearData();
  3233. return;
  3234. }
  3235. }else{
  3236. var Msg= sysf_messageBox("신청된 사본입니다 그래도 재신청을","Q004");
  3237. if(Msg=="6"){
  3238. // default value setting
  3239. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0,reappyn:N");
  3240. //dsf_setDefaultVal(ds_send_savedata_emrapplist, "reckeyno:0,chrtseqno:0");
  3241. var oParam = {};
  3242. oParam.id = "TXMRC03005";
  3243. oParam.service = "chrtmngtapp.CopyIssMngt";
  3244. oParam.method = "reqExeCopyIssInfo2";
  3245. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo reqemrapplist=ds_send_savedata_emrapplist reqotptinfo=ds_send_savedata_otptinfo";
  3246. oParam.outds = "ds_return=return";
  3247. oParam.async = false;
  3248. oParam.callback = "cf_TXMRC03005";
  3249. tranf_submit(oParam);
  3250. if(arErrorCode.pop("TXMRC03005") > -1){
  3251. sysf_messageBox("재신청이","I002");
  3252. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  3253. var oprnerId = opener.frmf_getScreenID();
  3254. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  3255. frmf_clearParameter("SMMRC03000_appYN");
  3256. }else{
  3257. sysf_mssageBox("재신청이","E009");
  3258. }
  3259. //this.close();
  3260. lf_setPid();
  3261. }else if(Msg=="7"){
  3262. RESAVE_COPY ++;
  3263. ds_send_savedata_copyinfo.clearData();
  3264. ds_send_savedata_emrapplist.clearData();
  3265. ds_send_savedata_otptinfo.clearData();
  3266. return;
  3267. }
  3268. }
  3269. }
  3270. /**
  3271. * @group :
  3272. * @ver :
  3273. * @by : 이창록 2008-08-29
  3274. * @---------------------------------------------------
  3275. * @type : function
  3276. * @access : public
  3277. * @desc : 통합뷰어 창 close 시 사본신청 창 close
  3278. * @param :
  3279. * @return :
  3280. * @---------------------------------------------------
  3281. */
  3282. function fCopyInfoClose()
  3283. {
  3284. utlf_addLog("***** fCopyInfoClose() *****");
  3285. this.close();
  3286. }
  3287. /**
  3288. * @group :
  3289. * @ver :
  3290. * @by : 이창록 2008-08-29
  3291. * @---------------------------------------------------
  3292. * @type : function
  3293. * @access : public
  3294. * @desc : 서식신청이 없을 시 메세지
  3295. * @param :
  3296. * @return :
  3297. * @---------------------------------------------------
  3298. */
  3299. function fSaveExcp()
  3300. {
  3301. utlf_addLog("***** fSaveExcp() *****");
  3302. var msg = sysf_messageBox("사본 신청된 내역이 없습니다\n"+"검사 결과에 대해서만 사본신청을","Q004"
  3303. ,"\n(검사결과 신청내용은 텍스트로 전달사항에 기재해주세요)");
  3304. if(msg=="6"){
  3305. fCopySave();
  3306. }else if(msg=="7"){
  3307. sysf_messageBox("사본신청 취소가","I001");
  3308. return;
  3309. }
  3310. }
  3311. function fBfAppformInfo()
  3312. {
  3313. utlf_addLog("***** fBfAppformInfo() *****");
  3314. ds_send_search.setColumn(0, "pid" , ds_main_cond.getColumn(0, "pid"));
  3315. ds_send_search.setColumn(0, "copyseqno" , ds_grd_inapplist.getColumn(ds_grd_inapplist.rowposition, "copyseqno"));
  3316. ds_send_search.setColumn(0, "srchflag" , "Y");
  3317. dsf_createDs("ds_temp_issinfo_copyinfo");
  3318. dsf_createDs("ds_temp_issinfo_rcptlist");
  3319. var oParam = {};
  3320. oParam.id = "TRMRC03008";
  3321. oParam.service = "chrtmngtapp.CopyIssMngt";
  3322. oParam.method = "reqGetCopyIssDetailInfo";
  3323. oParam.inds = "req=ds_send_search";
  3324. oParam.outds = "ds_temp_issinfo_copyinfo=copyinfo ds_temp_issinfo_emrapplist=emrapplist ds_temp_issinfo_rcptlist=rcptlist";
  3325. oParam.async = false;
  3326. oParam.callback = "cf_TRMRC03008";
  3327. tranf_submit(oParam);
  3328. if (arErrorCode.pop("TRMRC03008") > -1) { } // 서식 /root/temp/issinfo/emrlist grd_outapplist
  3329. ds_send_search.clearData();
  3330. ds_send_search.addRow();
  3331. }
  3332. // 신청정보 상세조회
  3333. function fIssSearch()
  3334. {
  3335. utlf_addLog("***** fIssSearch() *****");
  3336. //debugger;
  3337. if (ds_grd_apphist.rowcount < 1) return;
  3338. if (ds_grd_apphist.rowposition < 0) return;
  3339. //Event Off
  3340. ds_grd_rcptlist.enableevent = false;
  3341. var lrow = ds_grd_apphist.rowposition;
  3342. var RecPrcpCd = ds_hidden_calcscorcd.getColumn(0, "hardcd");//의무기록 사본발행 수가코드
  3343. // ds_send_search.clearData();
  3344. // ds_send_search.addRow();
  3345. ds_send_search.setColumn(0, "pid", ds_grd_apphist.getColumn(lrow, "pid"));
  3346. ds_send_search.setColumn(0, "copyseqno", ds_grd_apphist.getColumn(lrow, "copyseqno"));
  3347. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  3348. var totalcopies = ds_grd_apphist.getColumn(lrow, "totalcopies");
  3349. // reqGetCopyIssDetailInfo
  3350. // getCopyIssInfo : 발행정보
  3351. // getPaperScopCd : 종이서식범위
  3352. // getCopyEmrAppList : emr서식
  3353. // getCopyRcptList : 수가
  3354. /*if(model.getValue("/root/main/isshist/isslist[" + lrow + "]/unprepyn") == "Y"){
  3355. messageBox("환자의 기록이 미완결","I009");
  3356. }*/
  3357. ds_grd_rcptlist.applyChange();// grd_rcptlist.clearStatus();
  3358. var oParam = {};
  3359. oParam.id = "TRMRC03023";
  3360. oParam.service = "chrtmngtapp.CopyIssMngt";
  3361. oParam.method = "reqGetCopyRcptList";
  3362. oParam.inds = "req=ds_send_search";
  3363. oParam.outds = "ds_grd_rcptlist=rcptlist";
  3364. oParam.async = false;
  3365. oParam.callback = "cf_TRMRC03023";
  3366. tranf_submit(oParam);
  3367. //utlf_addLog(ds_grd_rcptlist.saveXML());
  3368. //fDisabled(false);
  3369. // fAppManNmSetting("S");
  3370. // fIssGoalNmSetting();
  3371. ds_main_appinfo_copyinfo.setColumn(0, "status", "u");
  3372. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  3373. if(ds_grd_rcptlist.rowcount <= 0) // 그리드가 빈줄인 경우
  3374. {
  3375. var currentdate = utlf_getCurrentDate();
  3376. var lrow = ds_grd_rcptlist.addRow();
  3377. sysf_trace("g_DefCalcscorcd:"+g_DefCalcscorcd);
  3378. // 06: 직할병원 - 수가코드(HCDD001-서울성모)
  3379. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd)) // 무료 수가 코드 적용
  3380. {
  3381. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  3382. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  3383. // 처방코드(임시로 수가코드로 함)
  3384. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  3385. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  3386. }
  3387. else
  3388. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  3389. sysf_trace("g_DefCalcscorcd2:"+g_DefCalcscorcd);
  3390. if(g_DefCnt != 0) // 기본수가코드의 기본매수가 0 이 아닌 경우( ex) 의정부성모..등
  3391. {
  3392. utlf_addLog("g_DefCalcscorcd:"+g_DefCalcscorcd);
  3393. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  3394. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  3395. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  3396. }
  3397. else
  3398. {
  3399. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  3400. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  3401. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  3402. }
  3403. // 수가 명칭 설정
  3404. if(ds_grd_rcptlist.getColumn(lrow, "defyn") == "ADD")
  3405. {
  3406. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  3407. }
  3408. else
  3409. {
  3410. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  3411. }
  3412. }
  3413. if(g_DefCnt != 0)
  3414. {
  3415. if(utlf_isNull(totalcopies)){
  3416. ds_grd_rcptlist.setColumn(lrow, "shtno", g_DefCnt);
  3417. //ds_grd_rcptlist.setColumn(lrow, "shtno", "1");
  3418. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", g_DefCnt);
  3419. }else{
  3420. ds_grd_rcptlist.setColumn(lrow, "shtno", totalcopies);
  3421. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", totalcopies);
  3422. }
  3423. }
  3424. else
  3425. {
  3426. ds_grd_rcptlist.setColumn(lrow, "shtno", g_AddCnt);
  3427. ds_temp2_appinfo_copyinfo.setColumn(0, "totalshrtno", g_AddCnt);
  3428. }
  3429. //model.getValue("/root/temp/picmmech/picmmech_unitcost") 어디서나옴??
  3430. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3431. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3432. {
  3433. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3434. }
  3435. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  3436. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  3437. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  3438. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3439. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3440. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3441. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  3442. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3443. ds_temp2_appinfo_copyinfo.setColumn(0, "totalcopies", "1");
  3444. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  3445. {
  3446. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  3447. }
  3448. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3449. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3450. var arrPostion = new Array();
  3451. arrPostion[0] = lrow;
  3452. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  3453. }
  3454. else // 발행된 내역을 조회하는 경우
  3455. {
  3456. var shtno = 0;
  3457. var iFindRow = 0;
  3458. var RowCnt = 0;
  3459. var lrow = 0;
  3460. var currentdate = "";
  3461. var tmpTotalCopies = 0;
  3462. tmpTotalCopies = fGetTotalCopies();
  3463. if(ds_grd_rcptlist.rowcount == 1)
  3464. {
  3465. var iRow = ds_grd_rcptlist.rowcount - 1;
  3466. utlf_addLog("***** iRow : " + iRow + " *****");
  3467. if(parseInt(tmpTotalCopies) == parseInt(g_DefCnt))
  3468. {
  3469. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3470. }
  3471. if(g_DefCnt > 0 && ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd)
  3472. {
  3473. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3474. }
  3475. utlf_addLog("***** tmpTotalCopies : " + parseInt(tmpTotalCopies)+ " g_DefCnt : " + parseInt(g_DefCnt) +" *****");
  3476. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt)) // 기본 매수보다 새로 입력한 장수가 10장 미만인경우
  3477. {
  3478. //var rcptNodelist = findNodeset(model, "/root/main/rcptlist/rcptlist[" + iRow + "]");
  3479. sysf_trace("tmpTotalCopies:"+parseInt(tmpTotalCopies));
  3480. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3481. {
  3482. }
  3483. else
  3484. {
  3485. // if(rcptNodelist.length >= 1)
  3486. // {
  3487. //var rcptNode = rcptNodelist.item(0);
  3488. // 기본 수가로 설정
  3489. if(g_DefCnt != 0)
  3490. {
  3491. //rcptNode.parentNode.appendChild(rcptNode);
  3492. var nRow = ds_grd_rcptlist.addRow();
  3493. ds_grd_rcptlist.copyRow(nRow, ds_grd_rcptlist, iRow);
  3494. sysf_trace("iRow:"+iRow);
  3495. sysf_trace("nRow:"+nRow);
  3496. if(iRow == 0)
  3497. {
  3498. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3499. //ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  3500. ds_grd_rcptlist.setColumn(iRow, "calcscornm", g_DefCalcscorcdnm);
  3501. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3502. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  3503. // 추가 수가를 설정-1
  3504. ds_grd_rcptlist.setColumn(nRow, "calcscorcd", g_AddCalcscorcd);
  3505. ds_grd_rcptlist.setColumn(nRow, "calcscornm", g_AddCalcscorcdnm);
  3506. ds_grd_rcptlist.setColumn(nRow, "prcpcd", g_AddCalcscorcd);
  3507. ds_grd_rcptlist.setColumn(nRow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3508. ds_grd_rcptlist.setColumn(nRow, "defyn", "ADD");
  3509. ds_grd_rcptlist.setColumn(nRow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3510. }
  3511. }
  3512. else
  3513. {
  3514. ds_grd_rcptlist.setColumn(iRow, "calcscorcd", g_AddCalcscorcd);
  3515. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  3516. ds_grd_rcptlist.setColumn(iRow, "prcpcd", g_AddCalcscorcd);
  3517. if(g_DefCnt == 0)
  3518. {
  3519. ds_grd_rcptlist.setColumn(iRow, "shtno", tmpTotalCopies);
  3520. ds_grd_rcptlist.setColumn(iRow, "prcpqty", tmpTotalCopies);
  3521. }
  3522. else
  3523. {
  3524. ds_grd_rcptlist.setColumn(iRow, "shtno", (tmpTotalCopies-g_AddCnt));
  3525. ds_grd_rcptlist.setColumn(iRow, "prcpqty", (tmpTotalCopies-g_AddCnt));
  3526. }
  3527. ds_grd_rcptlist.setColumn(iRow, "defyn", "ADD");
  3528. }
  3529. //}
  3530. }
  3531. }
  3532. else // 기존 그리드가 1줄이고 이미 발행된 내역보다 새로 입력한 장수가 10장 이상인경우(그리드가 2줄이 되어야 함.
  3533. {
  3534. ds_grd_rcptlist.setColumn(iRow, "shtno", tmpTotalCopies);
  3535. }
  3536. utlf_addLog("***** g_inputbox : " + g_inputbox + " *****");
  3537. if(g_inputbox != "Y")
  3538. {
  3539. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != ds_grd_rcptlist.getColumn(iRow, "prcptims"))
  3540. {
  3541. ds_grd_rcptlist.setColumn(iRow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3542. var arrPostion = new Array();
  3543. arrPostion[0] = iRow;
  3544. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  3545. }
  3546. }
  3547. }
  3548. else // 수가가 여러줄인 경우
  3549. {
  3550. if(g_DefCalcscorcd != "HCDD030")
  3551. {
  3552. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3553. {
  3554. // 첫번째 매수 확인
  3555. if(ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd && utlf_isNull(ds_grd_rcptlist.getColumn(iRow, "defyn")))
  3556. {
  3557. var fstshtno = ds_grd_rcptlist.getColumn(iRow, "shtno");
  3558. if(fstshtno == g_DefCnt)
  3559. {
  3560. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3561. }
  3562. if(fstshtno > g_DefCnt)
  3563. {
  3564. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3565. }
  3566. }
  3567. // 기본 수가로 설정
  3568. if(g_DefCnt != 0)
  3569. {
  3570. if(iRow == 0)
  3571. {
  3572. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  3573. //ds_grd_rcptlist.setColumn(iRow, "shtno", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  3574. //ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  3575. ds_grd_rcptlist.setColumn(iRow, "calcscornm", g_DefCalcscorcdnm);
  3576. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  3577. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  3578. // 추가 수가를 설정
  3579. ds_grd_rcptlist.setColumn((iRow+1), "calcscorcd", g_AddCalcscorcd);
  3580. //ds_grd_rcptlist.setColumn((iRow+1), "calcscornm", "의무기록복사(추가한매당)");
  3581. ds_grd_rcptlist.setColumn((iRow+1), "calcscornm", g_AddCalcscorcdnm);
  3582. ds_grd_rcptlist.setColumn((iRow+1), "prcpcd", g_AddCalcscorcd);
  3583. ds_grd_rcptlist.setColumn((iRow+1), "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3584. ds_grd_rcptlist.setColumn((iRow+1), "defyn", "ADD");
  3585. ds_grd_rcptlist.setColumn((iRow+1), "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  3586. }
  3587. }
  3588. else
  3589. {
  3590. ds_grd_rcptlist.setColumn(iRow, "calcscorcd", g_AddCalcscorcd);
  3591. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  3592. ds_grd_rcptlist.setColumn(iRow, "prcpcd", g_AddCalcscorcd);
  3593. ds_grd_rcptlist.setColumn(iRow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_AddCnt));
  3594. ds_grd_rcptlist.setColumn(iRow, "defyn", "ADD");
  3595. ds_grd_rcptlist.setColumn(iRow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_AddCnt));
  3596. // 의정부, 성가는 부수를 1로 고정
  3597. if(g_inputbox == "Y")
  3598. {
  3599. ds_grd_rcptlist.setColumn(iRow, "prcptims", "1");
  3600. }
  3601. }
  3602. }
  3603. }
  3604. }
  3605. // 직할병원
  3606. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3607. {
  3608. //iFindRow = grd_rcptlist.findRow(g_FreeCalcscorcd,0,2);
  3609. iFindRow = ds_grd_rcptlist.findRow("calcscorcd", g_FreeCalcscorcd);
  3610. if(iFindRow < 0){
  3611. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3612. {
  3613. var arrPostion = new Array();
  3614. arrPostion[0] = iRow;
  3615. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  3616. ds_grd_rcptlist.setColumn(iRow, "readonly", "Y");
  3617. // grd_rcptlist.rowStatus(iRow) = 4;
  3618. // grd_rcptlist.isReadOnly(iRow,4) = true;
  3619. shtno += eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  3620. }
  3621. RowCnt = 1;
  3622. }
  3623. }
  3624. else
  3625. {// 그외 목적
  3626. //iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  3627. iFindRow = ds_grd_rcptlist.findRow("calcscorcd", RecPrcpCd);
  3628. // utlf_addLog("*****#1 iFindRow : " + iFindRow +" *****");
  3629. // utlf_addLog("*****#1 RecPrcpCd : " + RecPrcpCd +" *****");
  3630. if(iFindRow < 0)
  3631. {
  3632. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  3633. {
  3634. var arrPostion = new Array();
  3635. arrPostion[0] = iRow;
  3636. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  3637. ds_grd_rcptlist.setColumn(iRow, "readonly", "Y");
  3638. // grd_rcptlist.rowStatus(iRow) = 4;
  3639. // grd_rcptlist.isReadOnly(iRow,4) = true;
  3640. shtno += eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  3641. }
  3642. if(shtno > 10){
  3643. RowCnt = 2;
  3644. }else{
  3645. RowCnt = 1;
  3646. }
  3647. }
  3648. }
  3649. //utlf_addLog("*****#2 iFindRow : " + iFindRow +" *****");
  3650. if(iFindRow < 0)
  3651. {
  3652. for(var iRow = 0; iRow < RowCnt; iRow++)
  3653. {
  3654. currentdate = utlf_getCurrentDate();
  3655. lrow = ds_grd_rcptlist.addRow();
  3656. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  3657. {
  3658. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  3659. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  3660. // 처방코드(임시로 수가코드로 함)
  3661. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  3662. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3663. }
  3664. else
  3665. {
  3666. if(iRow == 0)
  3667. {
  3668. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", RecPrcpCd);
  3669. //ds_grd_rcptlist.setColumn(lrow, "calcscornm", "의무기록사본발행");
  3670. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  3671. // 처방코드(임시로 수가코드로 함)
  3672. ds_grd_rcptlist.setColumn(lrow, "prcpcd", RecPrcpCd);
  3673. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  3674. }
  3675. else if(iRow == 1)
  3676. {
  3677. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  3678. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  3679. // 처방코드(임시로 수가코드로 함)
  3680. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  3681. ds_grd_rcptlist.setColumn(lrow, "unitcost", "");
  3682. }
  3683. }
  3684. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3685. {
  3686. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3687. }
  3688. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  3689. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  3690. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  3691. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3692. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3693. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3694. if(RowCnt == 1){
  3695. ds_grd_rcptlist.setColumn(lrow, "shtno", shtno);
  3696. ds_grd_rcptlist.setColumn(lrow, "oldshtno", shtno);
  3697. if(issgoalcd == "06"){
  3698. ds_grd_rcptlist.setColumn(lrow, "prcpqty", shtno);
  3699. }else{
  3700. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3701. }
  3702. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  3703. if(iRow == 0){ // 수가코드 (HCDD027) 처리
  3704. ds_grd_rcptlist.setColumn(lrow, "shtno", "10");
  3705. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "10");
  3706. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  3707. }else if(iRow == 1){ // 수가코드(HCDD030) 처리
  3708. ds_grd_rcptlist.setColumn(lrow, "shtno", (shtno-10));
  3709. ds_grd_rcptlist.setColumn(lrow, "oldshtno", (shtno-10));
  3710. ds_grd_rcptlist.setColumn(lrow, "prcpqty", (shtno-10));
  3711. }
  3712. }
  3713. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3714. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3715. var arrPostion = new Array();
  3716. arrPostion[0] = lrow;
  3717. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  3718. //grd_rcptlist.addStatus(lrow, "insert");
  3719. }
  3720. }
  3721. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  3722. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  3723. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies",1);
  3724. fChangedAppCopies();
  3725. }
  3726. var totalcopiesNew = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "totalcopies");
  3727. var emrappcopiesNew = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "emrappcopies");
  3728. g_GrdTotalCnt = totalcopiesNew * emrappcopiesNew;
  3729. }
  3730. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  3731. {
  3732. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  3733. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "prcptims", "none");
  3734. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  3735. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  3736. ds_grd_rcptlist.applyChange();
  3737. // 그리드 복사
  3738. ds_grd_tmprcptlist.copyData(ds_grd_rcptlist);
  3739. ds_grd_tmprcptlist.applyChange();
  3740. //model.copyNode("/root/temp2/rcptlist", "/root/main/rcptlist");
  3741. }
  3742. // event On
  3743. ds_grd_rcptlist.enableevent = true;
  3744. }
  3745. function fIssSearch_old()
  3746. {
  3747. if (grd_apphist.rows<= 1) return;
  3748. if (grd_apphist.row < 1) return;
  3749. var lrow = grd_apphist.row;
  3750. var RecPrcpCd = model.getValue("/root/hidden/calcscorcd/hardcd/hardcd");//의무기록 사본발행 수가코드
  3751. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + lrow + "]/pid"));
  3752. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + lrow + "]/copyseqno"));
  3753. //model.removeNodeset("/root/main/issinfo/emrapplist");
  3754. // reqGetCopyIssDetailInfo
  3755. // getCopyIssInfo : 발행정보
  3756. // getPaperScopCd : 종이서식범위
  3757. // getCopyEmrAppList : emr서식
  3758. // getCopyRcptList : 수가
  3759. /*if(model.getValue("/root/main/isshist/isslist[" + lrow + "]/unprepyn") == "Y"){
  3760. messageBox("환자의 기록이 미완결","I009");
  3761. }*/
  3762. grd_rcptlist.clearStatus();
  3763. if (submit("TRMRC03023", false) == true)
  3764. //{
  3765. //fDisabled(false);
  3766. // fAppManNmSetting("S");
  3767. // fIssGoalNmSetting();
  3768. model.setValue("/root/main/appinfo/copyinfo/status", "u");
  3769. model.refresh();
  3770. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  3771. if(grd_rcptlist.rows == grd_rcptlist.fixedrows){
  3772. grd_rcptlist.additem();
  3773. var currentdate = getCurrentDate();
  3774. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  3775. // 06: 직할병원 - 수가코드(HCDD001)
  3776. if(issgoalcd == "06" && g_FreeCalcscorcd != "") {
  3777. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  3778. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  3779. // 처방코드(임시로 수가코드로 함)
  3780. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  3781. }else{ // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  3782. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  3783. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  3784. // 처방코드(임시로 수가코드로 함)
  3785. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  3786. }
  3787. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3788. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3789. {
  3790. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3791. }
  3792. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  3793. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  3794. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  3795. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3796. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3797. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3798. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "1");
  3799. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  3800. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3801. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3802. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3803. grd_rcptlist.addStatus(lrow, "insert");
  3804. //btn_delete.disabled = false;
  3805. //btn_delete.refresh();
  3806. }else{
  3807. var shtno = 0;
  3808. var iFindRow =0;
  3809. var RowCnt = 0;
  3810. var lrow = 0;
  3811. var currentdate = "";
  3812. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3813. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims")){
  3814. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3815. grd_rcptlist.rowStatus(iRow) = 2;
  3816. }
  3817. }
  3818. // 직할병원
  3819. if(issgoalcd == "06" && g_FreeCalcscorcd != ""){
  3820. iFindRow = grd_rcptlist.findRow("HCDD001",0,2);
  3821. if(iFindRow < 1){
  3822. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3823. grd_rcptlist.rowStatus(iRow) = 4;
  3824. grd_rcptlist.isReadOnly(iRow,4) = true;
  3825. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  3826. }
  3827. RowCnt = 1;
  3828. }
  3829. }else{// 그외 목적
  3830. iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  3831. if(iFindRow < 1){
  3832. for(var iRow = grd_rcptlist.fixedrows; iRow<= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  3833. grd_rcptlist.rowStatus(iRow) = 4;
  3834. grd_rcptlist.isReadOnly(iRow,4) = true;
  3835. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  3836. }
  3837. if(shtno > 10){
  3838. RowCnt = 2;
  3839. }else{
  3840. RowCnt = 1;
  3841. }
  3842. }
  3843. }
  3844. if(iFindRow < 1){
  3845. for(var iRow = 1; iRow <= RowCnt; iRow++){
  3846. grd_rcptlist.additem();
  3847. currentdate = getCurrentDate();
  3848. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  3849. if(issgoalcd == "06"){
  3850. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  3851. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  3852. // 처방코드(임시로 수가코드로 함)
  3853. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  3854. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3855. }else{
  3856. if(iRow == 1){
  3857. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  3858. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  3859. // 처방코드(임시로 수가코드로 함)
  3860. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  3861. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  3862. }else if(iRow == 2){
  3863. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  3864. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  3865. // 처방코드(임시로 수가코드로 함)
  3866. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  3867. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", "");
  3868. }
  3869. }
  3870. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  3871. {
  3872. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3873. }
  3874. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  3875. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  3876. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  3877. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  3878. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  3879. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  3880. if(RowCnt == 1){
  3881. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", shtno);
  3882. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", shtno);
  3883. if(issgoalcd == "06"){
  3884. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", shtno);
  3885. }else{
  3886. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3887. }
  3888. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  3889. if(iRow == 1){ // 수가코드 (HCDD027) 처리
  3890. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "10");
  3891. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "10");
  3892. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  3893. }else if(iRow == 2){ // 수가코드(HCDD030) 처리
  3894. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", (shtno-10));
  3895. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", (shtno-10));
  3896. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", (shtno-10));
  3897. }
  3898. }
  3899. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  3900. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  3901. grd_rcptlist.addStatus(lrow, "insert");
  3902. }
  3903. }
  3904. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  3905. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  3906. model.setValue("/root/main/appinfo/copyinfo/emrappcopies",1);
  3907. //ipt_emrappcopies.refresh();
  3908. fChangedAppCopies();
  3909. }
  3910. //btn_delete.disabled = true;
  3911. //btn_delete.refresh();
  3912. }
  3913. /* }
  3914. else
  3915. {
  3916. messageBox("조회를", "E009");
  3917. }*/
  3918. //model.refresh();
  3919. }
  3920. // 신청부수가 변경될 경우
  3921. function fChangedAppCopies(){
  3922. utlf_addLog(" ***** fChangedAppCopies() *****");
  3923. var sEMRAppCopies = ds_grd_rcptlist.getColumn(ds_grd_rcptlist.rowposition, "prcptims");
  3924. var iPrcpTims = 0;
  3925. var sShtNo = 0;
  3926. var sOldShtNo = 0;
  3927. var iStatus = 0;
  3928. iRow = ds_grd_rcptlist.rowposition;
  3929. iPrcpTims = ds_grd_rcptlist.getColumn(iRow, "oldprcptims");
  3930. iStatus = ds_grd_rcptlist.getRowType(iRow);
  3931. ds_grd_rcptlist.enableevent = false;
  3932. if(sEMRAppCopies != iPrcpTims){
  3933. ds_grd_rcptlist.setColumn(iRow, "prcptims",sEMRAppCopies);
  3934. // TF status 0 : new , 2 : update XP 1 : nomal, 4 : update
  3935. if(iStatus == 1){
  3936. var arrPostion = new Array();
  3937. arrPostion[0] = iRow;
  3938. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  3939. }
  3940. //grd_rcptlist.rowstatus(iRow) = 2;
  3941. }else{
  3942. sShtNo = ds_grd_rcptlist.getColumn(iRow, "shtno");
  3943. sOldShtNo = ds_grd_rcptlist.getColumn(iRow, "oldshtno");
  3944. if(sShtNo == sOldShtNo && iStatus == 4){
  3945. //grd_rcptlist.rowstatus(iRow) = 0;
  3946. var arrPostion = new Array();
  3947. arrPostion[0] = iRow;
  3948. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  3949. }
  3950. }
  3951. ds_grd_rcptlist.enableevent = true;
  3952. }
  3953. function fChangedAppCopies_old(){
  3954. //var sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  3955. var sEMRAppCopies = model.getValue("/root/main/rcptlist/rcptlist["+ grd_rcptlist.row +"]/prcptims");
  3956. var iPrcpTims = 0;
  3957. var sShtNo = 0;
  3958. var sOldShtNo = 0;
  3959. var iStatus = 0;
  3960. //for(var iRow = grd_rcptlist.fixedrows; iRow <= grd_rcptlist.rows - grd_rcptlist.fixedrows; iRow++){
  3961. iRow = grd_rcptlist.row;
  3962. iPrcpTims = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldprcptims");
  3963. iStatus = grd_rcptlist.rowstatus(iRow);
  3964. if(sEMRAppCopies != iPrcpTims){
  3965. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcptims",sEMRAppCopies);
  3966. if(iStatus == 0) grd_rcptlist.rowstatus(iRow) = 2;
  3967. }else{
  3968. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno");
  3969. sOldShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  3970. if(sShtNo == sOldShtNo && iStatus == 2){
  3971. grd_rcptlist.rowstatus(iRow) = 0;
  3972. }
  3973. }
  3974. //}
  3975. }
  3976. function fGetInEmrFormList() {
  3977. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  3978. model.removeNodeset("/root/main/issinfo/emrapplist");
  3979. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  3980. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + hRow + "]/pid"));
  3981. if (submit("TRMRC03015",false)) // 서식지분류 조회 list /root/main/issinfo/emrapplist
  3982. {
  3983. }
  3984. btn_save.disabled = true;
  3985. btn_update.disabled = false;
  3986. btn_reappinfo.disabled = false;
  3987. grd_emrapplist.refresh();
  3988. }
  3989. function fGetEMRDrawList() {
  3990. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  3991. model.removeNodeset("/root/main/issinfo/emrapplist");
  3992. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  3993. model.makeValue("/root/send/search/pid", model.getValue("/root/main/apphist/applist[" + hRow + "]/pid"));
  3994. if (submit("TRMRC03031",false))
  3995. {
  3996. }
  3997. btn_save.disabled = true;
  3998. btn_update.disabled = false;
  3999. btn_reappinfo.disabled = false;
  4000. grd_emrapplist.refresh();
  4001. }
  4002. // 신청된 사본 호출
  4003. function fGetMidFormList() {
  4004. utlf_addLog("***** fGetMidFormList() *****");
  4005. ds_grd_inpat.clearData();//model.removeNodeset("/root/main/midissinfo");
  4006. ds_main_midissinfo_totemrapplist.clearData();
  4007. dsf_createDs("ds_isstemp_emrapplist");
  4008. dsf_createDs("ds_totisstemp_totemrapplist");
  4009. dsf_copyColInfo(ds_isstemp_emrapplist, ds_grd_inpat);
  4010. dsf_copyColInfo(ds_totisstemp_totemrapplist, ds_main_midissinfo_totemrapplist);
  4011. var hRow = ds_grd_apphist.rowposition;
  4012. var copyseqno = ds_grd_apphist.getColumn(hRow, "copyseqno");
  4013. //var inpathistNodes = instance1.selectNodes("/root/main/inpathistlist/inpathistlist");
  4014. for(var i = 0; i < ds_grd_inapplist.rowcount; i++)
  4015. {
  4016. ds_send_search.clearData();
  4017. var nRow = ds_send_search.addRow();
  4018. ds_send_search.setColumn(nRow, "copyseqno", copyseqno);
  4019. ds_send_search.setColumn(nRow, "pid", ds_grd_inapplist.getColumn(i, "pid"));
  4020. ds_send_search.setColumn(nRow, "orddd", ds_grd_inapplist.getColumn(i, "indd"));
  4021. ds_send_search.setColumn(nRow, "cretno", ds_grd_inapplist.getColumn(i, "cretno"));
  4022. ds_send_search.setColumn(nRow, "orddeptcd", ds_grd_inapplist.getColumn(i, "orddeptcd"));
  4023. ds_send_search.setColumn(nRow, "ordtype", ds_grd_inapplist.getColumn(i, "ioflag"));
  4024. //2009-11-03 오전 2:06:12 강지훈 추가
  4025. ds_send_search.setColumn(nRow, "bfopentest", ds_grd_inapplist.getColumn(i, "bfopentest"));
  4026. if (!utlf_isNull(ds_grd_inapplist.getColumn(i, "pid")))
  4027. {
  4028. // 중분류 단위조회
  4029. var oParam = {};
  4030. oParam.id = "TRMRC03022";
  4031. oParam.service = "chrtmngtapp.CopyIssMngt";
  4032. oParam.method = "reqGetInMidEmrFormList";
  4033. oParam.inds = "req=ds_send_search";
  4034. oParam.outds = "ds_grd_inpat=emrapplist ds_main_midissinfo_totemrapplist=totemrapplist";
  4035. oParam.async = false;
  4036. oParam.callback = "cf_TRMRC03022";
  4037. tranf_submit(oParam);
  4038. if(arErrorCode.pop("TRMRC03022") > -1){
  4039. ds_isstemp_emrapplist.appendData(ds_grd_inpat);
  4040. ds_totisstemp_totemrapplist.appendData(ds_main_midissinfo_totemrapplist);
  4041. // copyNodeset("/root/isstemp/emrapplist", "/root/midtemp/midissinfo/emrapplist", "append");
  4042. // copyNodeset("/root/totisstemp/totemrapplist", "/root/midtemp/midissinfo/totemrapplist", "append");
  4043. ds_grd_inpat.clearData();//model.removeNodeset("/root/main/midissinfo");
  4044. ds_main_midissinfo_totemrapplist.clearData();
  4045. }
  4046. }
  4047. }
  4048. ds_grd_inpat.copyData(ds_isstemp_emrapplist);
  4049. ds_main_midissinfo_totemrapplist.copyData(ds_totisstemp_totemrapplist);
  4050. dsf_deleteDs("ds_isstemp_emrapplist");
  4051. dsf_deleteDs("ds_totisstemp_totemrapplist");
  4052. // copyNodeset("/root/main/midissinfo/emrapplist", "/root/isstemp/emrapplist", "append");
  4053. // copyNodeset("/root/main/midissinfo/totemrapplist", "/root/totisstemp/totemrapplist", "append");
  4054. // model.removeNodeset("/root/isstemp");
  4055. // model.removeNodeset("/root/totisstemp");
  4056. }
  4057. // 신청된 사본 호출
  4058. function fGetMidFormList_old() {
  4059. var hRow = grd_apphist.row - grd_apphist.fixedRows +1;
  4060. model.removeNodeset("/root/main/midissinfo/emrapplist");
  4061. model.makeValue("/root/send/search/copyseqno", model.getValue("/root/main/apphist/applist[" + hRow + "]/copyseqno"));
  4062. model.makeValue("/root/send/search/pid", model.getValue("/root/main/inpathistlist/inpathistlist/pid"));
  4063. model.makeValue("/root/send/search/orddd", model.getValue("/root/main/inpathistlist/inpathistlist/indd"));
  4064. model.makeValue("/root/send/search/cretno", model.getValue("/root/main/inpathistlist/inpathistlist/cretno"));
  4065. model.makeValue("/root/send/search/orddeptcd", model.getValue("/root/main/inpathistlist/inpathistlist/orddeptcd"));
  4066. model.makeValue("/root/send/search/ordtype", model.getValue("/root/main/inpathistlist/inpathistlist/ioflag"));
  4067. if (model.getValue("/root/main/inpathistlist/inpathistlist/pid") != "")
  4068. {
  4069. // 중분류 단위조회
  4070. if(submit("TRMRC03022")){
  4071. //for(var k = 1; k < grd_inpat.rows; k++)
  4072. // model.setValue("/root/main/midissinfo/emrapplist["+ k +"]/chk", "Y");
  4073. }
  4074. }
  4075. }
  4076. function fGetOutEmrFormList() {
  4077. utlf_addLog("***** fGetOutEmrFormList() *****");
  4078. var hRow = ds_grd_apphist.rowposition;
  4079. dsf_createDs("ds_grd_outapplist", [
  4080. {col:"chrtflag", type:"STRING", size:256}
  4081. , {col:"ioflag", type:"STRING", size:256}
  4082. , {col:"orddd", type:"STRING", size:256}
  4083. , {col:"dschdd", type:"STRING", size:256}
  4084. , {col:"orddeptnm", type:"STRING", size:256}
  4085. , {col:"atdoctnm", type:"STRING", size:256}
  4086. , {col:"formrecdt", type:"STRING", size:256}
  4087. , {col:"formnm", type:"STRING", size:256}
  4088. , {col:"sortno", type:"STRING", size:256}
  4089. , {col:"formcd", type:"STRING", size:256}
  4090. , {col:"formrecextnnm", type:"STRING", size:256}
  4091. , {col:"formrecseq", type:"BIGDECIMAL", size:256}
  4092. , {col:"reckeyno", type:"BIGDECIMAL", size:256}
  4093. , {col:"orddeptcd", type:"STRING", size:256}
  4094. , {col:"atdoctid", type:"STRING", size:256}
  4095. , {col:"atdoctid", type:"STRING", size:256}
  4096. , {col:"testflag", type:"STRING", size:256}
  4097. , {col:"pid", type:"STRING", size:256}
  4098. , {col:"cretno", type:"STRING", size:256}
  4099. , {col:"instcd", type:"STRING", size:256}
  4100. , {col:"appdd", type:"STRING", size:256}
  4101. , {col:"apptm", type:"STRING", size:256}
  4102. , {col:"appseq", type:"INT", size:256}
  4103. , {col:"medirecno", type:"BIGDECIMAL", size:256}
  4104. , {col:"status", type:"STRING", size:256}
  4105. , {col:"testorddd", type:"STRING", size:256}
  4106. , {col:"testcretno", type:"INT", size:256}
  4107. , {col:"testorddeptcd", type:"STRING", size:256}
  4108. , {col:"testioflag", type:"STRING", size:256}
  4109. , {col:"indd", type:"STRING", size:256}
  4110. , {col:"supitemindxseq", type:"STRING", size:256}
  4111. , {col:"midindxseq", type:"STRING", size:256}
  4112. , {col:"chrtseqno", type:"BIGDECIMAL", size:256}
  4113. , {col:"copyseqno", type:"BIGDECIMAL", size:256}
  4114. ], true);
  4115. // ds_send_search.clearData();
  4116. // var nRow = ds_send_search.addRow();
  4117. ds_send_search.setColumn(0, "copyseqno", ds_grd_apphist.getColumn(hRow, "copyseqno"));
  4118. ds_send_search.setColumn(0, "pid", ds_grd_apphist.getColumn(hRow, "pid"));
  4119. //xp code add : col id change!!!execprcpuniqno
  4120. if( !utlf_isNull(ds_grd_outapplist.getColumnInfo("orddeptcd")))
  4121. ds_grd_outapplist.updateColID("orddeptcd", "orddeptdcd");
  4122. var oParam = {};
  4123. oParam.id = "TRMRC03017";
  4124. oParam.service = "chrtmngtapp.CopyIssMngt";
  4125. oParam.method = "reqGetOutEmrFormList";
  4126. oParam.inds = "req=ds_send_search";
  4127. oParam.outds = "ds_grd_outapplist=emrlist";
  4128. oParam.async = false;
  4129. oParam.callback = "cf_TRMRC03017";
  4130. tranf_submit(oParam);
  4131. if (arErrorCode.pop("TRMRC03017") > -1) // 사본신청 list /root/temp/issinfo/emrlist
  4132. {
  4133. fSet_enableevent(false);
  4134. ds_main_otherinfo.clearData();
  4135. ds_main_otherinfo.addRow();
  4136. fSet_enableevent(true);
  4137. if(ds_grd_outapplist.rowcount > 0) {
  4138. for(var rowcnt = 0; rowcnt < ds_grd_outapplist.rowcount; rowcnt++){
  4139. if(ds_grd_outapplist.getColumn(rowcnt, "chrtflag") == "P") { // 종이차트
  4140. ds_main_otherinfo.setColumn(0, "outchrtflag", ds_grd_outapplist.getColumn(rowcnt, "formcd"));
  4141. }
  4142. var testflag = ds_grd_outapplist.getColumn(rowcnt, "testflag");
  4143. //utlf_addLog("testflag : " + testflag );
  4144. switch(testflag) {
  4145. case "A" : ds_main_otherinfo.setColumn(0, "prcpinfo", "Y"); break;
  4146. case "C" : ds_main_otherinfo.setColumn(0, "testinfo1", "Y"); break;
  4147. case "D" : ds_main_otherinfo.setColumn(0, "testinfo2", "Y"); break;
  4148. case "E" : ds_main_otherinfo.setColumn(0, "testinfo3", "Y"); break;
  4149. case "F" : ds_main_otherinfo.setColumn(0, "testinfo4", "Y"); break;
  4150. case "G" : ds_main_otherinfo.setColumn(0, "testinfo5", "Y"); break;
  4151. case "H" : ds_main_otherinfo.setColumn(0, "testinfo6", "Y"); break;
  4152. case "I" : ds_main_otherinfo.setColumn(0, "testinfo7", "Y"); break;
  4153. case "J" : ds_main_otherinfo.setColumn(0, "testinfo8", "Y"); break;
  4154. case "T" : ds_main_otherinfo.setColumn(0, "onlytest", "Y"); break;
  4155. case "O" : ds_main_otherinfo.setColumn(0, "testinfo", "Y"); break;
  4156. }
  4157. }
  4158. }
  4159. ds_main_otherinfo.setColumn(0, "lang", "K");
  4160. }
  4161. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  4162. ds_grd_outapplist.setColumn(i, "indd" ,ds_grd_outapplist.getColumn(i, "testorddd"));
  4163. ds_grd_outapplist.setColumn(i, "orddd" ,ds_grd_outapplist.getColumn(i, "testorddd"));
  4164. ds_grd_outapplist.setColumn(i, "cretno" ,ds_grd_outapplist.getColumn(i, "testcretno"));
  4165. ds_grd_outapplist.setColumn(i, "orddeptcd",ds_grd_outapplist.getColumn(i, "testorddeptcd"));
  4166. }
  4167. btn_reappinfo.enable = true;
  4168. //model.removeNodeset("/root/send/deptcond");
  4169. }
  4170. // 처방이력 팝업 호출
  4171. function fPopUpPrcpHist(){
  4172. utlf_addLog("***** fPopUpPrcpHist() *****");
  4173. if(ds_grd_apphist.rowposition < 0){
  4174. sysf_messageBox("환자를 먼저", "C002");
  4175. return;
  4176. }
  4177. var copyseqno = ds_main_appinfo_copyinfo.getColumn(0, "copyseqno");
  4178. frmf_setParameter("SPMRC02400_Param", copyseqno);
  4179. frmf_modal("SPMRC02400", "SPMRC02400", null, null, null, null, null, null, null, null, null, null, "M");
  4180. }
  4181. // 승락서/증명서 출력
  4182. var lgv_bCheckPrnt = false;
  4183. var lgv_crtfctCnt = 0;
  4184. var lgv_cnfmCnt = 0;
  4185. var lgv_recepinfoCnt = 0;
  4186. var lgv_bSaveOcr = null;
  4187. function fPrnt(pFlag)
  4188. {
  4189. utlf_addLog("***** fPrnt("+pFlag+") *****");
  4190. sysf_trace("fPrnt Start");
  4191. var iRow = ds_grd_apphist.rowposition;
  4192. var recepinfochk = ds_main_cond.getColumn(0, "recepinfochk");
  4193. if(ds_grd_apphist.rowcount == 1) {iRow = 0;}
  4194. else {
  4195. var sCopySeqNo = ds_main_cond.getColumn(0, "copyseqno");
  4196. // 2009.05.29 이경희
  4197. // 이전 사본발행 내역에서 컬럼을 하나 추가함에 따라 검색 범위를 변경
  4198. //var iRow = grd_apphist.findRow(sCopySeqNo,1,24);
  4199. var iRow = ds_grd_apphist.findRow("copyseqno", sCopySeqNo);
  4200. ds_grd_apphist.rowposition = iRow;
  4201. }
  4202. var pid = ds_main_cond.getColumn(0, "pid");
  4203. if(utlf_isNull(pid)){
  4204. sysf_messageBox("환자를 먼저","C002");
  4205. return;
  4206. }
  4207. var issno = ds_grd_apphist.getColumn(iRow, "issno");
  4208. if (utlf_isNull(pFlag)) {
  4209. sysf_trace("**pFlag is null *****");
  4210. // 수가입력 버튼 출력물 갯수 체크
  4211. // step0 초기화
  4212. lgv_bCheckPrnt = true;
  4213. lgv_crtfctCnt = 0;
  4214. lgv_cnfmCnt = 0;
  4215. lgv_recepinfoCnt = 0;
  4216. // step1 증명서
  4217. if(issnoYN != "Y") {
  4218. lgv_crtfctCnt++;
  4219. } else if(issnoYN == "Y") {
  4220. var tmpissno1 = "";
  4221. var tmpissno2 = "";
  4222. for(var i = 0; i < ds_return.rowcount; i++) {
  4223. tmpissno1 = ds_return.getColumn(i, "issno");
  4224. if (tmpissno1 != tmpissno2)
  4225. {
  4226. lgv_crtfctCnt++;
  4227. }
  4228. tmpissno2 = ds_return.getColumn(i, "issno");
  4229. }
  4230. }
  4231. // step2 승락서
  4232. lgv_cnfmCnt++;
  4233. lgv_bSaveOcr = null;
  4234. // step3 안내장
  4235. if( pFlag == null && recepinfochk == "Y" ){
  4236. lgv_recepinfoCnt++;
  4237. }
  4238. sysf_trace("Set lgv_crtfctCnt : " + lgv_crtfctCnt + " || lgv_cnfmCnt : " + lgv_cnfmCnt + " || lgv_recepinfoCnt : " + lgv_recepinfoCnt + " || lgv_bSaveOcr : " + lgv_bSaveOcr);
  4239. }
  4240. // 증명서
  4241. if(pFlag == "crtfct" || utlf_isNull(pFlag)){
  4242. utlf_addLog("**abc fPrnt("+pFlag+") *****");
  4243. ds_temp_crtfctinfo.clearData();
  4244. ds_temp_crtfctinfo.addRow();
  4245. var sIssGoalCd = "";
  4246. var sIssGoalNm = "";
  4247. ds_temp_crtfctinfo.setColumn(0, "pid", pid);
  4248. ds_temp_crtfctinfo.setColumn(0, "hngnm", ds_main_appinfo_copyinfo.getColumn(0, "hngnm"));
  4249. ds_temp_crtfctinfo.setColumn(0, "engnm", ds_main_appinfo_copyinfo.getColumn(0, "engnm"));
  4250. ds_temp_crtfctinfo.setColumn(0, "usernm", sysf_getUserInfo("usernm"));
  4251. sIssGoalCd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  4252. if(rdo_lang.value == "E"){
  4253. switch(sIssGoalCd){
  4254. case "01":
  4255. sIssGoalNm = "Hospital Referral";
  4256. break;
  4257. case "02":
  4258. sIssGoalNm = "Insurance company Submission";
  4259. break;
  4260. case "03":
  4261. sIssGoalNm = "Military Submission";
  4262. break;
  4263. case "04":
  4264. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4265. break;
  4266. case "05":
  4267. sIssGoalNm = "Personal Record";
  4268. break;
  4269. case "06":
  4270. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4271. break;
  4272. case "07":
  4273. sIssGoalNm = "Government Submission";
  4274. break;
  4275. case "08":
  4276. sIssGoalNm = "Police Submission";
  4277. break;
  4278. case "09":
  4279. sIssGoalNm = "Court Submission";
  4280. break;
  4281. case "10":
  4282. sIssGoalNm = "Public corporation Submission";
  4283. break;
  4284. case "11":
  4285. sIssGoalNm = "Company submission";
  4286. break;
  4287. case "12":
  4288. sIssGoalNm = "School Submission";
  4289. break;
  4290. case "13":
  4291. sIssGoalNm = "Medical certificate issuance";
  4292. break;
  4293. case "99":
  4294. sIssGoalNm = "Other";
  4295. sIssGoalNm += "("+ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm")+")";
  4296. break;
  4297. }
  4298. ds_temp_crtfctinfo.setColumn(0, "issgoalnm", sIssGoalNm);
  4299. ds_temp_crtfctinfo.setColumn(0, "enghospnm", ds_main_paper.getColumn(0, "enghospnm"));
  4300. } else {
  4301. sIssGoalNm = ds_main_appinfo_copyinfo.getColumn(0, "issgoalnm");
  4302. ds_temp_crtfctinfo.setColumn(0, "hospnm", ds_main_paper.getColumn(0, "hospnm"));
  4303. if(sIssGoalCd == "99"){ // 기타
  4304. sIssGoalNm += "("+ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm")+")";
  4305. }
  4306. }
  4307. ds_temp_crtfctinfo.setColumn(0, "issgoalnm", sIssGoalNm);
  4308. ds_temp_crtfctinfo.setColumn(0, "addr", ds_main_paper.getColumn(0, "addr"));
  4309. if(ds_temp2_appinfo_copyinfo.getColumn(0, "newcopy") == "Y") // 추가로 사본등록을 신청한 경우
  4310. {
  4311. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4312. }
  4313. else
  4314. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_main_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4315. ds_temp_crtfctinfo.setColumn(0, "issdd", ds_main_appinfo_copyinfo.getColumn(0, "issdt").substr(0,8));
  4316. 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));
  4317. //2008-09-20 이창록 추가 (신청 부수만큼 증명서 출력)
  4318. if(g_inputbox == "Y")
  4319. {
  4320. sEMRAppCopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  4321. ds_temp_crtfctinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4322. }
  4323. else
  4324. {
  4325. sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  4326. }
  4327. ds_temp_crtfctinfo.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  4328. //사용자 signimage 출력(20151117 이윤주)
  4329. dsf_createDsRow("ds_cond_docinfo", [{col: "userid" , val: sysf_getUserInfo("userid")}]);
  4330. var oParam = {};
  4331. oParam.id = "TRMRF01205";
  4332. oParam.service = "formmngtapp.FormIfMngt";
  4333. oParam.method = "reqGetUsrSignImge";
  4334. oParam.inds = "req=ds_cond_docinfo";
  4335. oParam.outds = "ds_data_docinfo=docinfo";
  4336. oParam.async = false;
  4337. //oParam.callback = "cf_TRMRF01205";
  4338. tranf_submit(oParam);
  4339. var objCxtCommon = new ExtCommon();
  4340. var objImgeData = objCxtCommon.encodeBase64(ds_data_docinfo.getColumn(0, "signdata"));
  4341. ds_temp_crtfctinfo.setColumn(0, "signimge", objImgeData);
  4342. var tmpissno = "";
  4343. utlf_addLog("**issnoYN fPrnt("+issnoYN+") *****");
  4344. if(issnoYN != "Y") {
  4345. ds_temp_crtfctinfo.setColumn(0, "issno", issno);
  4346. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4347. rptf_setNodeListToDOM(objDOM, "/root/temp/crtfctinfo", ds_temp_crtfctinfo); // 데이터셋 1
  4348. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4349. var objParam = new Object();
  4350. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4351. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;async=0;callback=lf_CheckPrnt_crtfct;";
  4352. var sPrnopt = "copies="+sEMRAppCopies+";";
  4353. //sysf_trace(objDOM.documentElement.source);
  4354. // 2013.09.05 CYW 증명서 출력시 느린현상 수정
  4355. if(rdo_lang.value == "K") {
  4356. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option, sPrnopt);
  4357. } else if(rdo_lang.value == "E"){
  4358. //exeReportPreview("RPMRC01103", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4359. rptf_exeReportPreview30(["RPMRC01103"],[objParam], option, sPrnopt);
  4360. } else {
  4361. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4362. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option, sPrnopt);
  4363. }
  4364. } else if(issnoYN == "Y") {
  4365. //var issnolist = instance1.selectNodes("/root/return/return/issno");
  4366. //model.makeNode("/root/temp/crtfctinfo/issno");
  4367. var issnos = ds_return.rowcount;
  4368. var tmpissno1 = "";
  4369. var tmpissno2 = "";
  4370. for(var i = 0; i < ds_return.rowcount; i++) {
  4371. ds_temp_crtfctinfo.setColumn(0, "issno", ds_return.getColumn(i, "issno"));
  4372. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4373. rptf_setNodeListToDOM(objDOM, "/root/temp/crtfctinfo", ds_temp_crtfctinfo); // 데이터셋 1
  4374. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4375. var objParam = new Object();
  4376. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4377. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;async=0;callback=lf_CheckPrnt_crtfct;";
  4378. var sPrnopt = "copies="+sEMRAppCopies+";";
  4379. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트) 하면서 증명서 출력매수 오류 수정...
  4380. tmpissno1 = ds_return.getColumn(i, "issno");
  4381. utlf_addLog("**tmpissno1 fPrnt("+tmpissno1+") *****");
  4382. utlf_addLog("**tmpissno2 fPrnt("+tmpissno2+") *****");
  4383. if (tmpissno1 != tmpissno2)
  4384. {
  4385. utlf_addLog("**g_addstatus fPrnt("+g_addstatus+") *****");
  4386. if(g_addstatus == "Y")
  4387. tmpissno = ds_temp_crtfctinfo.getColumn(0, "issno");
  4388. // 2013.09.05 CYW 증명서 출력시 느린현상 수정
  4389. utlf_addLog("**rdo_lang.value fPrnt("+rdo_lang.value+") *****");
  4390. if(rdo_lang.value == "K") {
  4391. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4392. utlf_addLog("**option fPrnt("+option+") *****");
  4393. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option, sPrnopt);
  4394. } else if(rdo_lang.value == "E"){
  4395. //exeReportPreview("RPMRC01103", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4396. rptf_exeReportPreview30(["RPMRC01103"],[objParam], option, sPrnopt);
  4397. } else {
  4398. //exeReportPreview("RPMRC01100", "XMLSTR", "/root/temp/crtfctinfo", "", "true", "", "", "", "", "true", "","","","","", sEMRAppCopies,"","", "/root/temp/crtfctinfo");
  4399. rptf_exeReportPreview30(["RPMRC01100"],[objParam], option, sPrnopt);
  4400. }
  4401. }
  4402. tmpissno2 = ds_return.getColumn(i, "issno");
  4403. }
  4404. }
  4405. }
  4406. if(pFlag == "cnfm" || utlf_isNull(pFlag)){ // 승락서
  4407. utlf_addLog("******"+pFlag+"^^^^^^^^");
  4408. ds_temp_cnfminfo_issinfo.clearData();
  4409. ds_temp_cnfminfo_issinfo.addRow();
  4410. ds_send_reqdata.clearData();
  4411. var nRow = ds_send_reqdata.addRow();
  4412. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(iRow, "pid"));
  4413. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(iRow, "orddd"));
  4414. ds_send_reqdata.setColumn(nRow, "cretno", ds_grd_apphist.getColumn(iRow, "cretno"));
  4415. ds_send_reqdata.addColumn("formcd","string");
  4416. ds_send_reqdata.setColumn(nRow, "formcd", "0000001127");
  4417. //sysf_trace(ds_send_reqdata.saveXML());
  4418. var oParam = {};
  4419. oParam.id = "TRMRC03027";
  4420. oParam.service = "chrtmngtapp.CopyIssMngt";
  4421. oParam.method = "reqGetOCRInfo";
  4422. oParam.inds = "req=ds_send_reqdata";
  4423. oParam.outds = "ds_main_cnfmlist=cnfmlist";
  4424. oParam.async = false;
  4425. oParam.callback = "cf_TRMRC03027";
  4426. tranf_submit(oParam);
  4427. ds_temp_cnfminfo_issinfo.setColumn(0, "seq", ds_main_cnfmlist.getColumn(0, "seq"));
  4428. var formnm = "";
  4429. //model.resetInstanceNode("/root/temp/cnfminfo/issinfo");
  4430. ds_temp_cnfminfo_issinfo.setColumn(0, "pid", pid);
  4431. utlf_addLog("**g_addstatus fPrnt("+g_addstatus+") *****");
  4432. if(g_addstatus == "Y")
  4433. ds_temp_cnfminfo_issinfo.setColumn(0, "issno", tmpissno);
  4434. else
  4435. ds_temp_cnfminfo_issinfo.setColumn(0, "issno", issno);
  4436. ds_temp_cnfminfo_issinfo.setColumn(0, "orddeptnm", ds_main_appinfo_copyinfo.getColumn(0, "orddeptnm"));
  4437. ds_temp_cnfminfo_issinfo.setColumn(0, "atdoctnm", ds_main_appinfo_copyinfo.getColumn(0, "atdoctnm"));
  4438. ds_temp_cnfminfo_issinfo.setColumn(0, "hngnm", ds_main_appinfo_copyinfo.getColumn(0, "hngnm"));
  4439. ds_temp_cnfminfo_issinfo.setColumn(0, "rrgstno1", ds_main_appinfo_copyinfo.getColumn(0, "rrgstno1"));
  4440. var rrgstno2 = ds_main_appinfo_copyinfo.getColumn(0, "rrgstno2");
  4441. rrgstno2 = rrgstno2.substr(0,1) + "******";
  4442. ds_temp_cnfminfo_issinfo.setColumn(0, "rrgstno2", rrgstno2);
  4443. if(ds_temp2_appinfo_copyinfo.getColumn(0, "newcopy") == "Y") // 추가로 사본등록을 신청한 경우
  4444. {
  4445. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4446. //model.removeNodeset("/root/temp2");
  4447. }
  4448. else
  4449. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_main_appinfo_copyinfo.getColumn(0, "totalcopies"));
  4450. if(g_inputbox == "Y")
  4451. {
  4452. ds_temp_cnfminfo_issinfo.setColumn(0, "totalcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  4453. }
  4454. // 2017.06.15 추가 수가입력 시 총 매수 누락 문제로 노드제거 분리
  4455. if(ds_temp2_appinfo_copyinfo.getColumn(0, "newcopy") == "Y"){
  4456. ds_temp2_appinfo_copyinfo.clearData();
  4457. ds_temp2_appinfo_copyinfo.addRow();
  4458. ds_grd_rcptlist.clearData();
  4459. }
  4460. ds_temp_cnfminfo_issinfo.setColumn(0, "issgoalcd", ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd"));
  4461. ds_temp_cnfminfo_issinfo.setColumn(0, "issgoaletcnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  4462. ds_temp_cnfminfo_issinfo.setColumn(0, "hospnm", ds_main_paper.getColumn(0, "hospnm"));
  4463. var emrordflag = ds_main_appinfo_copyinfo.getColumn(0, "emrordflag");
  4464. var inemrordinfo = ds_grd_inpat.getCaseCount("chk=='Y'");
  4465. if (emrordflag == "O" && inemrordinfo > 0)
  4466. {
  4467. ds_main_appinfo_copyinfo.setColumn(0, "emrordflag", "OI");
  4468. var emrordflag = ds_main_appinfo_copyinfo.getColumn(0, "emrordflag");
  4469. }
  4470. if (emrordflag.indexOf("O") >= 0 || emrordflag.indexOf("A") >= 0){
  4471. ds_temp_cnfminfo_issinfo.setColumn(0, "outflag", "O"); // 에러
  4472. }
  4473. if (emrordflag.indexOf("I") >= 0 || emrordflag.indexOf("A") >= 0){
  4474. ds_temp_cnfminfo_issinfo.setColumn(0, "inflag", "I");
  4475. }
  4476. if (emrordflag.indexOf("E") >= 0 || emrordflag.indexOf("A") >= 0){
  4477. ds_temp_cnfminfo_issinfo.setColumn(0, "erflag", "E");
  4478. }
  4479. ds_temp_cnfminfo_issinfo.setColumn(0, "appdd", ds_main_appinfo_copyinfo.getColumn(0, "appdt").substr(0,8));
  4480. ds_temp_cnfminfo_issinfo.setColumn(0, "issdd", ds_main_appinfo_copyinfo.getColumn(0, "issdt").substr(0,8));
  4481. for(var i = 0; i < ds_grd_outapplist.rowcount; i++){
  4482. if(ds_grd_outapplist.getColumn(i, "chrtflag") == "P"){
  4483. formnm += "종이차트("+ds_grd_outapplist.getColumn(i, "formnm")+")" + ",";
  4484. }else{
  4485. }
  4486. }
  4487. // [요청번호:20181031005] 4) 신청인: 없음 → 추가(사본발급창에서 지정해주는 값 연동)
  4488. ds_temp_cnfminfo_issinfo.setColumn(0, "appmanflag", ds_main_appinfo_copyinfo.getColumn(0, "appmanflag"));
  4489. ds_temp_cnfminfo_issinfo.setColumn(0, "appmanetc", ds_main_appinfo_copyinfo.getColumn(0, "appmanetc"));
  4490. utlf_addLog("ds_main_midissinfo_totemrapplist"+ds_main_midissinfo_totemrapplist.saveXML());
  4491. for(var i = 0; i < ds_main_midissinfo_totemrapplist.rowcount; i++){
  4492. //formnm += ds_main_midissinfo_totemrapplist.getColCount(i, "formnm");
  4493. formnm += ds_main_midissinfo_totemrapplist.getColumn(i, "formnm");
  4494. if(!utlf_isNull(formnm)) formnm += ",";
  4495. }
  4496. if(formnm.length > 0)
  4497. formnm = formnm.substring(0, formnm.length - 1)
  4498. // 승낙서 발행 시 상세내역 추가
  4499. formnm = fPrntDetailContents(formnm);
  4500. ds_temp_cnfminfo_issinfo.setColumn(0, "formnm", formnm);
  4501. // 승낙서 출력 셋팅 변경 ( 매수가 많을 경우 Instance양으로 인해 느려지는 현상 처리 ) - 2013.08.19 CYW
  4502. var instcd = "";
  4503. instcd = sysf_getUserInfo("dutplceinstcd");
  4504. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4505. rptf_setNodeListToDOM(objDOM, "/root/temp/cnfminfo/issinfo", ds_temp_cnfminfo_issinfo); // 데이터셋 1
  4506. //sysf_trace(objDOM.documentElement.source); // XML 내용출력
  4507. //sysf_trace(ds_temp_cnfminfo_issinfo.saveXML());
  4508. var objParam = new Object();
  4509. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4510. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;async=0;callback=lf_CheckPrnt_cnfm;";
  4511. if( instcd == "031"){
  4512. //exeReportPreview("RPMRC01101", "XMLSTR", "/root/temp/cnfminfo/issinfo", "", "true","","","","","true","","", "","","","", "", "", "/root/temp/cnfminfo/issinfo");
  4513. rptf_exeReportPreview30(["RPMRC01101"],[objParam], option);
  4514. }else{
  4515. //exeReportPreview("RPMRC01102", "XMLSTR", "/root/temp/cnfminfo/issinfo", "", "true","","","","","true","","", "","","","", "", "", "/root/temp/cnfminfo/issinfo");
  4516. rptf_exeReportPreview30(["RPMRC01102"],[objParam], option);
  4517. }
  4518. var seq = ds_main_cnfmlist.getColumn(0, "seq");
  4519. var pid = ds_main_cnfmlist.getColumn(0, "pid");
  4520. var orddd = ds_main_cnfmlist.getColumn(0, "orddd");
  4521. var cretno = ds_main_cnfmlist.getColumn(0, "cretno");
  4522. var ordtype = ds_main_cnfmlist.getColumn(0, "ordtype");
  4523. var orddeptcd = ds_main_cnfmlist.getColumn(0, "orddeptcd");
  4524. var orddrid = ds_main_cnfmlist.getColumn(0, "orddrid");
  4525. var formcd = "0000001127";
  4526. var formfromdt = ds_main_cnfmlist.getColumn(0, "formfromdt");
  4527. var pagecnt = "1"; //출력장수
  4528. var rtnyn = ds_temp_hardcd7.getColumn(0, "hardcd"); //hardcdno : 9950
  4529. if(!fSaveOCRIF(seq, pid, orddd, cretno, ordtype, orddeptcd, orddrid, formcd, formfromdt, "", "", pagecnt, rtnyn)){
  4530. utlf_addLog("******************SaveOCRIF******************");
  4531. sysf_messageBox("승낙서 OCR 정보 저장시 오류발생", "I");
  4532. sysf_trace("저장 승낙서 OCR IF seq : " + seq + " || pid : " + pid + " || orddd : " + orddd + " || cretno : " + cretno );
  4533. lgv_bSaveOcr = false;
  4534. return;
  4535. }else{
  4536. lgv_bSaveOcr = true;
  4537. }
  4538. }
  4539. if((pFlag == "recepinfo" && recepinfochk == "Y") || (pFlag == null && recepinfochk == "Y")){ // 진료기록사본발급
  4540. var appdt = ds_main_appinfo_copyinfo.getColumn(0, "appdt").substr(0,8);
  4541. var apptm = ds_main_appinfo_copyinfo.getColumn(0, "apptm").substr(0,8);
  4542. var appdttm = appdt + apptm;
  4543. var sorirrgstno1 = ds_main_cond.getColumn(0, "rrgstno1");
  4544. var srrgstno1 = "'" + sorirrgstno1.substr(0,2) + "." + sorirrgstno1.substr(2,2) + "." + sorirrgstno1.substr(4,2) + ".";
  4545. var rrgstno2 = ds_main_appinfo_copyinfo.getColumn(0, "rrgstno2");
  4546. rrgstno2 = rrgstno2.substr(0,1) + "******";
  4547. dsf_createDsRow("ds_temp3_receptinfo", [{col:"pid", type:"string", size:256, val:ds_grd_apphist.getColumn(iRow, "pid")} // 등록번호
  4548. , {col:"orddd", type:"string", size:256, val:ds_grd_apphist.getColumn(iRow, "orddd")} // 진료일자
  4549. , {col:"appdt", type:"string", size:256, val:appdt} // 사본신청일자
  4550. , {col:"apptm", type:"string", size:256, val:apptm} // 사본신청일자
  4551. , {col:"appdttm", type:"string", size:256, val:appdttm} // 사본신청일자
  4552. , {col:"hngnm", type:"string", size:256, val:ds_main_appinfo_copyinfo.getColumn(0, "hngnm")} // 환자이름
  4553. , {col:"rrgstno1", type:"string", size:256, val:srrgstno1} // 생년월일
  4554. , {col:"sex", type:"string", size:256, val:ds_main_result_pathistlist.getColumn(0, "sex")} // 환자성별
  4555. , {col:"age", type:"string", size:256, val:ds_main_result_pathistlist.getColumn(0, "age")} // 환자나이
  4556. , {col:"rrgstno2", type:"string", size:256, val:rrgstno2}
  4557. , {col:"orddeptnm", type:"string", size:256, val:ds_main_appinfo_copyinfo.getColumn(0, "orddeptnm")} // 진료과명
  4558. , {col:"atdoctnm", type:"string", size:256, val:ds_main_appinfo_copyinfo.getColumn(0, "atdoctnm")} // 진료의사이름
  4559. , {col:"instcd", type:"string", size:256, val:sysf_getUserInfo("dutplceinstcd")}
  4560. , {col:"rcptpossynmsg", type:"string", size:256, val:ds_main.getColumn(0, "rcptpossynmsg")} // 무인수납가능여부
  4561. , {col:"paylater", type:"string", size:256, val:ds_grd_apphist.getColumn(iRow, "paylater")} // 후불 수납여부
  4562. ]);
  4563. //exeReportPreview("RPMRC01104", "XMLSTR", "/root/temp3/recepinfo", "", "true", "", "", "", "", "true", "","","","","", "", "", "", "");
  4564. var objDOM = rptf_createDOM(); // DOM 객체 설정
  4565. rptf_setNodeListToDOM(objDOM, "/root/temp3/recepinfo", ds_temp3_receptinfo); // 데이터셋 1
  4566. var objParam = new Object();
  4567. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  4568. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;async=0;callback=lf_CheckPrnt_receptinfo;";
  4569. rptf_exeReportPreview30(["RPMRC01104"],[objParam], option);
  4570. }
  4571. sysf_trace("fPrnt End");
  4572. }
  4573. function lf_CheckPrnt_crtfct(){
  4574. if( lgv_bCheckPrnt == false ) return;
  4575. lgv_crtfctCnt--;
  4576. lf_CheckPrnt_close();
  4577. }
  4578. function lf_CheckPrnt_cnfm(){
  4579. if( lgv_bCheckPrnt == false ) return;
  4580. lgv_cnfmCnt--;
  4581. lf_CheckPrnt_close();
  4582. }
  4583. function lf_CheckPrnt_receptinfo(){
  4584. if( lgv_bCheckPrnt == false ) return;
  4585. lgv_recepinfoCnt--;
  4586. lf_CheckPrnt_close();
  4587. }
  4588. function lf_CheckPrnt_close(){
  4589. sysf_trace("close lgv_crtfctCnt : " + lgv_crtfctCnt + " || lgv_cnfmCnt : " + lgv_cnfmCnt + " || lgv_recepinfoCnt : " + lgv_recepinfoCnt + " || lgv_bSaveOcr : " + lgv_bSaveOcr);
  4590. if( lgv_crtfctCnt == 0 && lgv_cnfmCnt == 0 ){
  4591. if( lgv_bSaveOcr == null ){
  4592. //setTimer
  4593. this.setTimer(2, gIntervalTime);
  4594. }else{
  4595. // OCR 저장에 실패하였을 경우 receptinfo 로직 수행하지 않음
  4596. if( lgv_bSaveOcr == false || lgv_recepinfoCnt == 0 ){
  4597. if( ds_temp_hardcd8.findRow("hardcd", sysf_getUserInfo("userid")) > -1 ){
  4598. this.close();
  4599. }
  4600. }
  4601. }
  4602. }
  4603. }
  4604. // 그리드 열 변경
  4605. function fChangedGridRow()
  4606. {
  4607. utlf_addLog("***** fChangedGridRow() *****");
  4608. var iRow = ds_grd_rcptlist.rowposition;
  4609. var totalshrtno = ds_grd_rcptlist.getColumn(iRow, "shtno");
  4610. var totalcopies = ds_grd_rcptlist.getColumn(iRow, "prcptims");
  4611. if(utlf_isNull(totalshrtno) || parseInt(totalshrtno) < 0)
  4612. return false;
  4613. if(utlf_isNull(totalcopies) || parseInt(totalcopies) < 0)
  4614. return false;
  4615. //Event Off
  4616. ds_grd_rcptlist.enableevent = false;
  4617. var totalpapers = parseInt(totalshrtno) * parseInt(totalcopies);
  4618. ds_temp2_appinfo_copyinfo.setColumn(0, "totalpapers", totalpapers);
  4619. var sShtNo= eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4620. var sValue = 0;
  4621. var sCalcScorCd = ds_grd_rcptlist.getColumn(iRow, "calcscorcd");
  4622. var sExtraPrcpTims = 0;
  4623. var currentdate = utlf_getCurrentDate();
  4624. var iStatus = ds_grd_rcptlist.getRowType(iRow);
  4625. if(iStatus == 4){// TF 2 -> XP 4
  4626. if(ds_grd_rcptlist.getColumn(iRow, "shtno") == ds_grd_rcptlist.getColumn(iRow, "oldshtno")){
  4627. //grd_rcptlist.rowStatus(iRow) = 0;
  4628. var arrPostion = new Array();
  4629. arrPostion[0] = iRow;
  4630. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4631. }
  4632. }
  4633. // 전체 매수
  4634. var tmpTotalCopies = fGetTotalCopies();
  4635. var sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4636. if(ds_grd_rcptlist.rowcount > 1)
  4637. {
  4638. if(ds_grd_rcptlist.getColumn(iRow, "defyn") == "DEF" && eval(ds_grd_rcptlist.getColumn(iRow, "shtno")) != 1)
  4639. {
  4640. sysf_messageBox("기본 수가부분은 변경할 수 없습니다. 하단의 추가수가부분을", "I008");
  4641. //model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", "1");
  4642. if(g_DefCnt != 0)
  4643. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  4644. else
  4645. ds_grd_rcptlist.setColumn(iRow, "shtno", g_AddCnt);
  4646. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  4647. ds_grd_rcptlist.enableevent = true;
  4648. return;
  4649. }
  4650. }
  4651. if(ds_grd_rcptlist.getColumn(iRow, "defyn") == "DEF" && eval(ds_grd_rcptlist.getColumn(iRow, "shtno")) > 1)
  4652. {
  4653. if(ds_grd_rcptlist.getColumn(iRow, "calcscorcd") == g_DefCalcscorcd)
  4654. {
  4655. sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  4656. if(sShtNo < 1)
  4657. {
  4658. sysf_messageBox("매수는","I003");
  4659. //model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  4660. ds_grd_rcptlist.setColumn(iRow, "shtno", ds_grd_rcptlist.getColumn(iRow, "oldshtno"));
  4661. if(iStatus == 4){
  4662. //grd_rcptlist.rowStatus(iRow) = 0;
  4663. var arrPostion = new Array();
  4664. arrPostion[0] = iRow;
  4665. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4666. }
  4667. }
  4668. //else if(sShtNo > 10) - 기본수가 보다 클때
  4669. else if(sShtNo > g_DefCnt)
  4670. {
  4671. // if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  4672. if( utlf_isNull(ds_grd_rcptlist.lookup("calcscorcd", "HCDD030", "calcscorcd")) )
  4673. {
  4674. var currentdate = utlf_getCurrentDate();
  4675. var lrow = ds_grd_rcptlist.addRow();
  4676. // 기본 매수 등록
  4677. ds_grd_rcptlist.setColumn((lrow-1), "shtno", g_DefCnt);
  4678. ds_grd_rcptlist.setColumn((lrow-1), "prcpqty", "1");
  4679. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  4680. // 06: 직할병원 - 수가코드(HCDD001)
  4681. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  4682. {
  4683. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  4684. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  4685. // 처방코드(임시로 수가코드로 함)
  4686. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  4687. }
  4688. else
  4689. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  4690. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  4691. if(g_AddCalcscorcd == "HCDD030")
  4692. {
  4693. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  4694. }
  4695. else
  4696. {
  4697. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  4698. }
  4699. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  4700. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  4701. }
  4702. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  4703. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  4704. {
  4705. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  4706. }
  4707. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  4708. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  4709. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  4710. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  4711. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  4712. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  4713. ds_grd_rcptlist.setColumn(lrow, "shtno", (tmpTotalCopies - g_DefCnt));
  4714. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  4715. ds_grd_rcptlist.setColumn(lrow, "prcpqty", (tmpTotalCopies - g_DefCnt));
  4716. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  4717. {
  4718. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  4719. }
  4720. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  4721. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  4722. //grd_rcptlist.addStatus(lrow, "insert");
  4723. var arrPostion = new Array();
  4724. arrPostion[0] = lrow;
  4725. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  4726. }
  4727. else
  4728. {
  4729. var sExtraRow = ds_grd_rcptlist.findRow("calcscorcd", "HCDD030");
  4730. //grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4731. var sExtraStatus = ds_grd_rcptlist.getRowType(sExtraRow);
  4732. if(sExtraStatus != 2 ){
  4733. var arrPostion = new Array();
  4734. arrPostion[0] = sExtraRow;
  4735. grdf_setStatus(grd_rcptlist, "U", arrPostion);//grd_rcptlist.rowStatus(sExtraRow) = 2;
  4736. }
  4737. ds_grd_rcptlist.setColumn(sExtraRow, "shtno", sValue);
  4738. ds_grd_rcptlist.setColumn(sExtraRow, "prcpqty", sValue);
  4739. }
  4740. }
  4741. else
  4742. {
  4743. }
  4744. }
  4745. }
  4746. if(sCalcScorCd == g_FreeCalcscorcd)
  4747. {
  4748. if(sShtNo < 1){
  4749. sysf_messageBox("매수는","I003");
  4750. ds_grd_rcptlist.setColumn(iRow, "shtno",ds_grd_rcptlist.getColumn(iRow, "oldshtno"));
  4751. if(iStatus == 4){
  4752. //grd_rcptlist.rowStatus(iRow) = 0;
  4753. var arrPostion = new Array();
  4754. arrPostion[0] = iRow;
  4755. grdf_setStatus(grd_rcptlist, Dataset.ROWTYPE_NORMAL, arrPostion);
  4756. }
  4757. sShtNo = ds_grd_rcptlist.getColumn(iRow, "oldshtno");
  4758. }
  4759. if(sShtNo != ds_grd_rcptlist.getColumn(iRow, "prcpqty")){
  4760. ds_grd_rcptlist.setColumn(iRow, "prcpqty", sShtNo);
  4761. }
  4762. }
  4763. else
  4764. { // 추가
  4765. if(sShtNo < 1)
  4766. {
  4767. var iStatus = ds_grd_rcptlist.getRowType(iRow);
  4768. if(iStatus == 2)
  4769. {
  4770. ds_grd_rcptlist.deleteRow(iRow);
  4771. }
  4772. else
  4773. {
  4774. //grd_rcptlist.rowStatus(iRow) = 4;
  4775. var arrPostion = new Array();
  4776. arrPostion[0] = iRow;
  4777. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  4778. }
  4779. }
  4780. else
  4781. {
  4782. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  4783. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  4784. if (colorcalcscoryn == "Y") {
  4785. if (ds_grd_rcptlist.getColumn(iRow, "pdefyn") == "ADD"){
  4786. ds_grd_rcptlist.setColumn(iRow, "pprcpqty", sShtNo);
  4787. }
  4788. } else {
  4789. if (ds_grd_rcptlist.getColumn(iRow, "pdefyn") == "ADD" && (tmpTotalCopies - g_DefCnt) != ds_grd_rcptlist.getColumn(iRow, "pprcpqty")){
  4790. ds_grd_rcptlist.setColumn(iRow, "pprcpqty", (tmpTotalCopies - g_DefCnt));
  4791. }
  4792. }
  4793. }
  4794. }
  4795. //Event On
  4796. ds_grd_rcptlist.enableevent = true;
  4797. }
  4798. function fChangedGridRow_old(){
  4799. var iRow = grd_rcptlist.row;
  4800. var sShtNo= eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  4801. var sValue = 0;
  4802. var sCalcScorCd = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd");
  4803. var sExtraPrcpTims = 0;
  4804. var currentdate = getCurrentDate();
  4805. var iStatus = grd_rcptlist.rowStatus(iRow);
  4806. if(iStatus == 2){
  4807. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno") == model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno")){
  4808. grd_rcptlist.rowStatus(iRow) = 0;
  4809. }
  4810. }
  4811. /*if(sCalcScorCd == "HCDD027"){
  4812. if(sShtNo < 1){
  4813. messageBox("매수는","I003");
  4814. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  4815. if(iStatus == 2){
  4816. grd_rcptlist.rowStatus(iRow) = 0;
  4817. }
  4818. }else if(sShtNo > 10){
  4819. sValue = sShtNo - 10;
  4820. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno","10");
  4821. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == ""){
  4822. grd_rcptlist.additem();
  4823. var lrow = grd_rcptlist.rows - 1;
  4824. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscorcd", "HCDD030");
  4825. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  4826. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/unitcost", "");
  4827. if (model.getValue("/root/main/issinfo/copyinfo/ioflag") == "O")
  4828. {
  4829. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  4830. }
  4831. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpdd", currentdate);
  4832. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpno", "0");
  4833. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcphistno", "0");
  4834. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/pid", model.getValue("/root/main/issinfo/copyinfo/pid"));
  4835. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/orddd", model.getValue("/root/main/issinfo/copyinfo/orddd"));
  4836. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/cretno", model.getValue("/root/main/issinfo/copyinfo/cretno"));
  4837. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/shtno", sValue);
  4838. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/oldshtno", sValue);
  4839. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpqty", sValue);
  4840. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcptims", model.getValue("/root/main/issinfo/copyinfo/emrappcopies"));
  4841. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/copyseqno", model.getValue("/root/main/issinfo/copyinfo/copyseqno"));
  4842. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/issno", model.getValue("/root/main/issinfo/rcptlist[" + iRow + "]/issno"));
  4843. // 처방코드(임시로 수가코드로 함)
  4844. model.setValue("/root/main/issinfo/rcptlist[" + lrow + "]/prcpcd", "HCDD030");
  4845. grd_rcptlist.addStatus(lrow, "insert");
  4846. }else{
  4847. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4848. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  4849. if(sExtraStatus != 1 && sExtraStatus != 3) grd_rcptlist.rowStatus(sExtraRow) = 2;
  4850. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/shtno", sValue);
  4851. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/prcpqty", sValue);
  4852. }
  4853. }else{
  4854. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  4855. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  4856. if(sExtraStatus == 1 || sExtraStatus == 3){
  4857. grd_rcptlist.deleteRow(sExtraRow, true);
  4858. }else{
  4859. grd_rcptlist.rowStatus(sExtraRow) = 4;
  4860. }
  4861. }
  4862. }*/if(sCalcScorCd == "HCDD001"){
  4863. if(sShtNo < 1){
  4864. messageBox("매수는","I003");
  4865. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno"));
  4866. if(iStatus == 2){
  4867. grd_rcptlist.rowStatus(iRow) = 0;
  4868. }
  4869. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  4870. }
  4871. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  4872. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  4873. }
  4874. }else{ // 추가
  4875. if(sShtNo < 1){
  4876. var iStatus = grd_rcptlist.rowStatus(iRow);
  4877. if(iStatus == 1 || iStatus == 3)
  4878. grd_rcptlist.deleteRow(iRow, true);
  4879. else
  4880. grd_rcptlist.rowStatus(iRow) = 4;
  4881. }else{
  4882. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  4883. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  4884. }
  4885. }
  4886. }
  4887. }
  4888. // 검사결과조회 호출
  4889. function fExamRultListCall(){
  4890. utlf_addLog("***** fExamRultListCall() *****");
  4891. var pid = ds_main_cond.getColumn(0, "pid");
  4892. if(utlf_isNull(pid)){
  4893. sysf_messageBox("검사결과조회 할 환자를", "C002");
  4894. return;
  4895. }
  4896. var objArgs = new Object();
  4897. //objArgs.ds_main_cond = ds_main_cond;
  4898. /////////////////////////////////
  4899. if( !isValidObject("ds_temp_cond")) dsf_createDs("ds_temp_cond");
  4900. if(ds_temp_cond.rowcount==0) ds_temp_cond.addRow();
  4901. dsf_makeValue(ds_temp_cond, "srchpid", "string", ds_main_cond.getColumn(0,"pid"), 0);
  4902. objArgs.arg_ds_send_singdata = ds_temp_cond;
  4903. ////////////////////////////////
  4904. frmf_open("SMAER00800", "SMAER00800", objArgs, null, null, null, null, null, null, null, null, null, "M");
  4905. //open("SMAER00800","","","","SMAER00800", "/root/main/cond/pid", "/root/send/data/singdata/srchpid");
  4906. }
  4907. // 통합기록조회 호출
  4908. function fMedirecListCall(){
  4909. utlf_addLog("***** fMedirecListCall() *****");
  4910. var pid = ds_main_cond.getColumn(0, "pid");
  4911. if(utlf_isNull(pid)){
  4912. sysf_messageBox("통합기록조회를 검색할 환자를", "C002");
  4913. return;
  4914. }
  4915. var wndobj = frmf_findPopup("SMMRI00400");
  4916. if(wndobj != null){
  4917. frmf_setParameter("SMMRI00400_param_pid", pid);
  4918. wndobj.fInitalize();
  4919. }else{
  4920. frmf_setParameter("SMMRI00400_param_pid", pid);
  4921. frmf_open("SMMRI00400", "SMMRI00400", null, null, null, null, null, null, null, null, null, null, "M");
  4922. }
  4923. }
  4924. // 차트대출 호출
  4925. function fChrtRultListCall(){
  4926. utlf_addLog("***** fChrtRultListCall() *****");
  4927. var pid = ds_main_cond.getColumn(0, "pid");
  4928. if(utlf_isNull(pid)){
  4929. sysf_messageBox("차트대출조회를 검색할 환자를", "C002");
  4930. return;
  4931. }
  4932. frmf_setParameter("pid", pid);
  4933. frmf_modal("SMMRC00100", "SMMRC00100", null, null, 1, 10, 10, null, null, null, null, null, "M");
  4934. }
  4935. // 차트대출이력 호출
  4936. function fChrtHistRultListCall(){
  4937. utlf_addLog("***** fChrtHistRultListCall() *****");
  4938. var pid = ds_main_cond.getColumn(0, "pid");
  4939. if(utlf_isNull(pid)){
  4940. sysf_messageBox("차트대출이력조회를 검색할 환자를", "C002");
  4941. return;
  4942. }
  4943. var wndobj = frmf_findPopup("SMMRC01400");
  4944. if(wndobj != null){
  4945. frmf_setParameter("pid", pid);
  4946. wndobj.fInitalize();
  4947. }else{
  4948. frmf_setParameter("pid", pid);
  4949. frmf_open("SMMRC01400", "SMMRC01400", null, null, 1, 10, 10, null, null, null, null, null, "M");
  4950. }
  4951. }
  4952. // 환자찾기 Popup
  4953. function fPatPopUp(pFlag)
  4954. {
  4955. utlf_addLog("***** fPatPopUp("+pFlag+") *****");
  4956. var objColInfo = new Array();
  4957. objColInfo.push({col: "pid", type:"string", size:256});
  4958. objColInfo.push({col: "hngnm", type:"string", size:256});
  4959. objColInfo.push({col: "srchcond", type:"string", size:256});
  4960. objColInfo.push({col: "autoflag", type:"string", size:256});
  4961. objColInfo.push({col: "rrgstno1", type:"string", size:256});
  4962. objColInfo.push({col: "rrgstno2", type:"string", size:256});
  4963. dsf_createDs("ds_temp_patcond", objColInfo);
  4964. ds_temp_patcond.addRow();
  4965. ds_temp_patcond.setColumn(0, "srchcond", pFlag);
  4966. if(pFlag == "1"){
  4967. ds_temp_patcond.setColumn(0, "pid", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "pid")));
  4968. }else{
  4969. ds_temp_patcond.setColumn(0, "pid", "");
  4970. }
  4971. if(pFlag == "2"){
  4972. ds_temp_patcond.setColumn(0, "hngnm", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "hngnm")));
  4973. }else{
  4974. ds_temp_patcond.setColumn(0, "hngnm", "");
  4975. }
  4976. if(pFlag == "3"){
  4977. ds_temp_patcond.setColumn(0, "rrgstno1", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno1")));
  4978. ds_temp_patcond.setColumn(0, "rrgstno2", utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno2")));
  4979. //alert("주민번호:"+utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno1"))+"#"+utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno2")));
  4980. }else{
  4981. ds_temp_patcond.setColumn(0, "rrgstno1", "");
  4982. ds_temp_patcond.setColumn(0, "rrgstno2", "");
  4983. }
  4984. ds_temp_patcond.setColumn(0, "autoflag", "Y");
  4985. var objArgs = new Object();
  4986. //objArgs.ds_SPPMC02500 = ds_temp_patcond; //2015.04.10 주석
  4987. objArgs.arg_ds_send = ds_temp_patcond;
  4988. ds_main_cond.clearData();
  4989. ds_main_cond.addRow();
  4990. frmf_modal("SPPMC02500", "SPPMC02500", objArgs, null, "1", "10", "10", null, null, null, null, null, "M");
  4991. // if(fIsEmrDept() == false){
  4992. // if(pFlag == "2"){
  4993. // var globalPid = appf_getPatientInfo("pid");
  4994. // var newPid = ds_patinfolist.getColumn(0, "pid");//model.getValue("/root/main/patinfo/patinfolist/pid");
  4995. // if(globalPid != newPid) {
  4996. // sysf_messageBox("사본신청은 진료중인 환자에 대해서만 신청이 가능합니다.\n등록번호를 상단 환자등록번호와 일치시켜서","C003");
  4997. // fInitialize();
  4998. // return;
  4999. // }
  5000. // }
  5001. // }
  5002. var spid = ds_patinfolist.getColumn(0, "pid");
  5003. ds_main_cond.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  5004. ds_main_cond.setColumn(0, "hngnm", ds_patinfolist.getColumn(0, "hngnm"));
  5005. ds_main_cond.setColumn(0, "rrgstno1", ds_patinfolist.getColumn(0, "rrgstno1"));
  5006. ds_main_cond.setColumn(0, "rrgstno2", ds_patinfolist.getColumn(0, "rrgstno2"));
  5007. //alert("주민번호2:"+utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno1"))+"#"+utlf_transNullToEmpty(ds_main_cond.getColumn(0, "rrgstno2")));
  5008. ds_main_cond.setColumn(0, "sa", ds_patinfolist.getColumn(0, "sex") + "/" + ds_patinfolist.getColumn(0, "age"));
  5009. ds_main_cond.setColumn(0, "recepinfochk", "Y");
  5010. lf_setPid();
  5011. /*
  5012. //환자기본 및 원무정보 조회
  5013. fReqGetComnPatOrdInfo(spid);
  5014. //환자 이전사본발행내역 조회
  5015. //fReqGetBfCopyIssHistList(ipt_pid.text);
  5016. fReqGetBfCopyIssHistList(spid);
  5017. // 진료내역 조회
  5018. fReqGetOutPatHistList(); // 외래진료내역
  5019. fReqGetInPatHistList(); // 입원진료내역
  5020. fReqGetPaperYN();
  5021. ds_main_appinfo_copyinfo.clearData();
  5022. ds_main_appinfo_copyinfo.addRow();
  5023. dsf_setDefaultVal(ds_main_appinfo_copyinfo, "all");
  5024. fSet_enableevent(false);
  5025. ds_main_otherinfo.clearData();
  5026. ds_main_otherinfo.addRow();
  5027. fSet_enableevent(true);
  5028. ds_grd_outapplist.clearData();
  5029. ds_grd_rcptlist.clearData();
  5030. ds_main_appinfo_copyinfo.setColumn(0, "trustyn", "N");
  5031. */
  5032. }
  5033. /**
  5034. * @group :
  5035. * @ver :
  5036. * @by : 이창록 2008-09-19 추가
  5037. * @---------------------------------------------------
  5038. * @type : function
  5039. * @access : public
  5040. * @desc : 발급제한 환자 제한
  5041. * @param :
  5042. * @return :
  5043. * @---------------------------------------------------
  5044. */
  5045. function fSaveRcpt()
  5046. {
  5047. var iIssHistRow = grd_isshist.row;
  5048. var msg = messageBox("사본 발급 제한 사유 : "+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/limrem")
  5049. +"\n"+ model.getValue("/root/main/isshist/isslist["+iIssHistRow+"]/hngnm")+"환자는 사본발급 제한 환자입니다\n","Q002");
  5050. if(msg=="6"){
  5051. fSave();
  5052. }else if(msg=="7"){
  5053. return;
  5054. }
  5055. }
  5056. // 수가입력저장
  5057. function fSave()
  5058. {
  5059. sysf_trace("***** fSave() *****");
  5060. if(ds_grd_apphist.rowposition < 0){
  5061. sysf_messageBox("환자를 먼저", "C002");
  5062. return;
  5063. }
  5064. ds_send_reqdata.clearData();
  5065. var nRow = ds_send_reqdata.addRow();
  5066. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "pid"));
  5067. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "orddd"));
  5068. // KNUH_20101124_박성호_start_사본용도 체크(멀티인 경우 수가입력 안되게)
  5069. var IssUsgeCnt = ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd").split(",").length;
  5070. if (IssUsgeCnt > 1){
  5071. sysf_messageBox("하나의 사본발행목적일 때만 수가입력이 가능합니다. 여러목적으로 할 경우에는 신청내역을 저장하신 후", "I008");
  5072. return;
  5073. }
  5074. ds_send_savedata_copyinfo.clearData();
  5075. //ds_send_savedata_copyinfo.addRow();
  5076. ds_send_savedata_outinfo.clearData();
  5077. ds_send_savedata_ininfo.clearData();
  5078. ds_send_savedata_rcptlist.clearData();
  5079. ds_send_savedata_newinput.clearData();
  5080. ds_send_savedata_newinput.addRow();
  5081. if(g_inputbox == "Y")
  5082. {
  5083. ds_send_savedata_newinput.setColumn(0, "newinput", g_inputbox);
  5084. //ds_send_savedata_newinput.setColumn(0, "shtno", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  5085. ds_send_savedata_newinput.setColumn(0, "shtno", ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  5086. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  5087. // KNUH_20101001_박성호_start 오류 수정
  5088. // if (tmp = 0)
  5089. if (tmp == 0)
  5090. {
  5091. ds_send_savedata_newinput.setColumn(0, "emrappcopies", 1);
  5092. var delyn = 'Y';
  5093. }
  5094. else
  5095. {
  5096. ds_send_savedata_newinput.setColumn(0, "emrappcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  5097. }
  5098. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  5099. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  5100. }
  5101. else
  5102. {
  5103. var slow = ds_grd_rcptlist.rowcount - 1;
  5104. ds_send_savedata_newinput.setColumn(0, "newinput", "N");
  5105. ds_send_savedata_newinput.setColumn(0, "shtno", ds_grd_rcptlist.getColumn(slow, "shtno"));
  5106. ds_send_savedata_newinput.setColumn(0, "emrappcopies", ds_grd_rcptlist.getColumn(slow, "prcptims"));
  5107. var tmp = parseInt(ds_grd_rcptlist.getColumn(slow, "shtno")) * parseInt(ds_grd_rcptlist.getColumn(slow, "prcptims"));
  5108. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  5109. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  5110. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  5111. if (colorcalcscoryn == "Y") {
  5112. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  5113. ds_send_savedata_newinput.setColumn(0, "totalcopies", tmp);
  5114. }
  5115. }
  5116. ds_main_appinfo_copyinfo.setColumn(0, "addstatus", "N");
  5117. ds_send_savedata_newinput.setColumn(0, "prcpflag", "N");
  5118. var iIssHistRow = ds_grd_apphist.rowposition;
  5119. var sIssNo = ds_grd_apphist.getColumn(iIssHistRow, "issno");
  5120. if(!utlf_isNull(sIssNo)) {
  5121. if (delyn == "Y"){// 반환이면 승락서, 증명서 출력안되도록.
  5122. pntflag = "N";
  5123. }
  5124. else{
  5125. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  5126. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  5127. var ret = sysf_messageBox("추가 사본발행 수가를", "Q014");
  5128. }else if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  5129. var ret = sysf_messageBox("새로운 발행 번호로 수가를", "Q014");
  5130. break;
  5131. }
  5132. }
  5133. if(ret == 6) { // 신규로 등록
  5134. ds_send_savedata_newinput.setColumn(0, "prcpflag", "Y");
  5135. PRCP_REISS = "Y";
  5136. ds_grd_rcptlist.rowposition = 0;
  5137. for(var iRow = ds_grd_rcptlist.rowcount -1; iRow >= 0; iRow--)
  5138. {
  5139. if(ds_grd_rcptlist.getRowType(iRow) == 8)// TF 4 : delete -> XP 8
  5140. {
  5141. ds_grd_rcptlist.deleteRow(iRow);
  5142. }
  5143. }
  5144. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  5145. {
  5146. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  5147. var arrPostion = new Array();
  5148. arrPostion[0] = iRow;
  5149. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  5150. }
  5151. var Tmptotalcopies = ds_main_appinfo_copyinfo.getColumn(0, "totalcopies");
  5152. ds_temp2_appinfo_copyinfo.setColumn(0, "newcopy", "Y");
  5153. ds_main_appinfo_copyinfo.setColumn(0, "addstatus", "Y");
  5154. g_addstatus = "Y";
  5155. if(g_inputbox != "Y") // 서울성모인 경우
  5156. {
  5157. ds_temp2_appinfo_copyinfo.setColumn(0, "totalcopies", ds_grd_rcptlist.getColumn((iRow-1), "shtno"));
  5158. }
  5159. }
  5160. else
  5161. {
  5162. // 반환이면 승락서, 증명서 출력안되도록.
  5163. iRow = ds_grd_rcptlist.rowposition;
  5164. if(ds_grd_rcptlist.getRowType(iRow) == 8) var pntflag = "N";
  5165. // 수가처방
  5166. var iRow = ds_grd_rcptlist.rowposition;
  5167. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  5168. {
  5169. if (ds_grd_rcptlist.getRowType(iRow) == 1) // 상태값이 new일시에 TF 0 : new , XP 1 : nomal
  5170. {
  5171. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  5172. var arrPostion = new Array();
  5173. arrPostion[0] = iRow;
  5174. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  5175. }
  5176. }
  5177. }
  5178. }
  5179. }
  5180. else
  5181. {
  5182. ds_send_savedata_newinput.setColumn(0, "prcpflag", "Y");
  5183. for(var iRow = 0; iRow < ds_grd_rcptlist.rowcount; iRow++)
  5184. {
  5185. if (ds_grd_rcptlist.getRowType(iRow) == 1)
  5186. {
  5187. //grd_rcptlist.rowstatus(iRow) = 1; // insert 상태로 변경
  5188. var arrPostion = new Array();
  5189. arrPostion[0] = iRow;
  5190. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  5191. }
  5192. }
  5193. }
  5194. // 의정부인경우 출력 안되게..
  5195. if(g_inputbox == "Y")
  5196. {
  5197. var tmp = parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno")) * parseInt(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  5198. if (tmp == 0)
  5199. {
  5200. var pntflag = "N";
  5201. }
  5202. }
  5203. //fCopyReSave(); // 부수만큼 신청내역 insert
  5204. // 신청정보
  5205. if (ds_main_appinfo_copyinfo.getColumn(0, "appmanflag") == "9") // 사본발행 신청인이 기타일 경우
  5206. {
  5207. ds_main_appinfo_copyinfo.setColumn(0, "appmannm", ipt_appmannm.text);
  5208. }
  5209. // 사본목적
  5210. if(ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "99"){
  5211. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletcnm"));
  5212. }else{
  5213. ds_main_appinfo_copyinfo.setColumn(0, "issgoalnm", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletc"));
  5214. }
  5215. ds_main_appinfo_copyinfo.setColumn(0, "issgoalcd", ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd"));
  5216. /*getUserStateMsg : 사용자 일반의, 퇴직의 조회*/
  5217. var deptcd = ds_main_appinfo_copyinfo.getColumn(0, "orddeptcd");
  5218. var objColInfo = new Array();
  5219. objColInfo.push({col: "userid", type:"string", size:256, val:ds_main_appinfo_copyinfo.getColumn(0, "orddrid")});
  5220. objColInfo.push({col: "deptcd", type:"string", size:256, val:deptcd});
  5221. dsf_createDsRow("ds_send_msg", objColInfo);
  5222. objColInfo = new Array();
  5223. objColInfo.push({col: "chk_msg", type:"string", size:256});
  5224. dsf_createDs("ds_main_msg", objColInfo);
  5225. var oParam = {};
  5226. oParam.id = "TRMMR00001";
  5227. oParam.service = "medirecapp.ComnMediRec";
  5228. oParam.method = "reqGetUserStateMsg";
  5229. oParam.inds = "req=ds_send_msg";
  5230. oParam.outds = "ds_main_msg=msg";
  5231. oParam.async = false;
  5232. oParam.callback = "cf_TRMMR00001";
  5233. tranf_submit(oParam);
  5234. var chk_msg = ds_main_msg.getColumn(0, "chk_msg");
  5235. var nodecnt = ds_main_msg.rowcount;
  5236. if( nodecnt > 0 ){
  5237. sysf_messageBox(chk_msg, "E");
  5238. frmf_setParameter("SPMMR06503_pid", ds_main_appinfo_copyinfo.getColumn(0, "pid") );
  5239. frmf_setParameter("SPMMR06503_orddeptcd", deptcd );
  5240. frmf_setParameter("SPMMR06503_vieworddeptcd", deptcd );
  5241. frmf_setParameter("SPMMR06503_switflag" , "orddrid" );
  5242. var rtn = frmf_modal("SPMMR06503", "SPMMR06503", null, null, null, null, null, null, null, null, null, null, "M");
  5243. //ds_send_chngissinfo dataset return
  5244. if( utlf_isNull(rtn) ){
  5245. sysf_trace(" SPMMR06503 return value Null ");
  5246. }
  5247. if( utlf_isNull(ds_send_chngissinfo.getColumn(0, "orddoctid")) ){
  5248. sysf_messageBox("발행의사를 선택하신 후 진행해주십시오.", "C999");
  5249. return;
  5250. }else{
  5251. ds_main_appinfo_copyinfo.setColumn(0, "orddrid", ds_send_chngissinfo.getColumn(0, "orddoctid"));
  5252. }
  5253. }
  5254. ds_send_savedata_copyinfo.copyData(ds_main_appinfo_copyinfo);
  5255. if( ds_send_savedata_copyinfo.getColumnInfo("bmtappyn") == null
  5256. || ds_send_savedata_copyinfo.getColumnInfo("reappyn") == null ){
  5257. ds_send_savedata_copyinfo.addColumn("bmtappyn", "string");
  5258. ds_send_savedata_copyinfo.addColumn("reappyn", "string");
  5259. }
  5260. //model.copyNode("/root/send/savedata/copyinfo", "/root/main/appinfo/copyinfo");
  5261. // emr서식정보
  5262. ds_grd_outapplist.applyChange();
  5263. ds_grd_emrapplist.applyChange();
  5264. // var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist");
  5265. // var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist");
  5266. if(ds_grd_outapplist.rowcount > 0) {
  5267. //model.setValue("/root/send/savedata/outinfo", getNodeListCSV(outinfo));
  5268. ds_send_savedata_outinfo.copyData(ds_grd_outapplist);
  5269. //xp code add : col id change!!!orddeptcd
  5270. if( !utlf_isNull(ds_send_savedata_outinfo.getColumnInfo("orddeptcd")))
  5271. ds_send_savedata_outinfo.updateColID("orddeptcd", "orddeptdcd");
  5272. }
  5273. if(ds_grd_emrapplist.rowcount > 0) {
  5274. //model.setValue("/root/send/savedata/ininfo", getNodeListCSV(ininfo));
  5275. ds_send_savedata_ininfo.copyData(ds_grd_emrapplist);
  5276. //xp code add : col id change!!!orddeptcd
  5277. if( !utlf_isNull(ds_send_savedata_ininfo.getColumnInfo("orddeptcd")))
  5278. ds_send_savedata_ininfo.updateColID("orddeptcd", "orddeptdcd");
  5279. }
  5280. //model.setValue("/root/send/savedata/rcptlist", grd_rcptlist.getUpdateData());
  5281. var oDsUpdate = grdf_getGridUpdateData(grd_rcptlist);
  5282. if( utlf_isNull(oDsUpdate) ) {
  5283. sysf_trace("***** grdf_getGridUpdateData(grd_outapplist) data is NULL *****");
  5284. }
  5285. grdf_setStatusColumn(oDsUpdate, "status");
  5286. ds_send_savedata_rcptlist.copyData(oDsUpdate, true);
  5287. //sysf_trace(ds_send_savedata_rcptlist.saveXML());
  5288. var sCopySeqNo = ds_main_appinfo_copyinfo.getColumn(0, "copyseqno");
  5289. var sEMRAppCopies = ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies");
  5290. if(g_inputbox == "Y")
  5291. {
  5292. // 출력매수 =
  5293. PRIN_COPY = ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno");
  5294. // 출력부수 =
  5295. PRIN_QUNT = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  5296. }
  5297. else
  5298. {
  5299. // 출력매수 =
  5300. PRIN_COPY = ds_grd_rcptlist.getColumn(0, "shtno");
  5301. // 출력부수 =
  5302. PRIN_QUNT = ds_grd_rcptlist.getColumn(0, "prcptims");
  5303. }
  5304. //2012/03/13 Start
  5305. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  5306. if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  5307. if(before_delivefact!=ds_main_appinfo_copyinfo.getColumn(0, "delivefact")){
  5308. after_delivefact=ds_main_appinfo_copyinfo.getColumn(0, "delivefact")
  5309. var chk_result = sysf_messageBox("기타 상세신청내역이 변경되었습니다. 변경된 내역으로 저장 ","S001");
  5310. if(chk_result=="6"){ //변경된 내역으로 저장
  5311. }else if(chk_result=="7"){ //변경되기 전 내역으로 저장
  5312. ds_send_savedata_copyinfo.setColumn(0, "delivefact", before_delivefact);
  5313. }else if(chk_result=="2"){// 수가 입력을 취소
  5314. return;
  5315. }
  5316. }
  5317. }
  5318. break;
  5319. }
  5320. //2012/03/13 End
  5321. var oParam = {};
  5322. oParam.id = "TRMRC03033";
  5323. oParam.service = "chrtmngtapp.CopyIssMngt";
  5324. oParam.method = "reqGetTrnsYN";
  5325. oParam.inds = "req=ds_main_appinfo_copyinfo";
  5326. oParam.outds = "ds_temp5=trns";
  5327. oParam.async = false;
  5328. //oParam.callback = "cf_TRMRC03033";
  5329. tranf_submit(oParam);
  5330. var trnsyn = ds_temp5.getColumn(0,"trnsyn");
  5331. if (trnsyn == "Y") {
  5332. if ("6" != sysf_messageBox("포털전송 무료발급 대상 환자입니다 계속 진행하시겠습니까?","Q")) {
  5333. return;
  5334. }
  5335. //용도가 맞지 않으면
  5336. if ( ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") != "19" ) {
  5337. if ("6" != sysf_messageBox("포털전송에 맞지 않는 용도가 선택되었습니다. 유료발급됩니다. 계속 진행하시겠습니까?","Q")) {
  5338. return;
  5339. }
  5340. }
  5341. }
  5342. else {
  5343. //용도가 맞지 않으면
  5344. if ( ds_main_appinfo_copyinfo.getColumn(0, "issgoaletccd") == "19" ) {
  5345. sysf_messageBox("용도를 잘못 선택하였습니다 변경 후 진행하시기 바랍니다","E")
  5346. return;
  5347. }
  5348. }
  5349. dsf_setDefaultVal(ds_send_savedata_copyinfo, "emrappcopies:0,cretno:0");
  5350. dsf_setDefaultVal(ds_send_savedata_emrapplist, "formrecseq:0,appseq:0,medirecno:0");
  5351. dsf_setDefaultVal(ds_send_savedata_outinfo, "appseq:0,medirecno:0");
  5352. dsf_setDefaultVal(ds_send_savedata_rcptlist, "prcpno:0,prcphistno:0");
  5353. var oParam = {};
  5354. oParam.id = "TXMRC03006";
  5355. oParam.service = "chrtmngtapp.CopyIssMngt";
  5356. oParam.method = "reqExeCopyIssMngt2";
  5357. oParam.inds = "reqcopyinfo=ds_send_savedata_copyinfo "
  5358. + "reqemrapplist=ds_send_savedata_emrapplist "
  5359. + "reqoutinfo=ds_send_savedata_outinfo "
  5360. + "reqininfo=ds_send_savedata_ininfo "
  5361. + "reqrcptlist=ds_send_savedata_rcptlist "
  5362. + "reqnewinput=ds_send_savedata_newinput";
  5363. oParam.outds = "ds_return=return";
  5364. oParam.async = false;
  5365. oParam.callback = "cf_TXMRC03006";
  5366. tranf_submit(oParam);
  5367. if (arErrorCode.pop("TXMRC03006") > -1)
  5368. {
  5369. sysf_trace("cf_TXMRC03006 Start");
  5370. ds_main_appinfo_copyinfo.setColumn(0, "totalcopies", PRIN_COPY);
  5371. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", PRIN_QUNT);
  5372. ds_grd_rcptlist.applyChange();
  5373. if (lf_ContainsHardCD("10029", "Y")) {
  5374. fGetCost();
  5375. }
  5376. fReqGetBfCopyIssHistList(ipt_pid.text);
  5377. fSetRcptpossynmsg(ds_main_cond.getColumn(0, "pid")); //무인수납 가능 여부 조회 15.02.05 - AYS
  5378. // 2009.05.29 이경희
  5379. // 이전 사본발행 내역에서 컬럼을 하나 추가함에 따라 검색 범위를 변경
  5380. var iRow = ds_grd_apphist.findRow("copyseqno", sCopySeqNo);
  5381. //grd_apphist.findRow(sCopySeqNo,1,25);
  5382. ds_grd_apphist.rowposition = iRow;
  5383. fIssSearch();
  5384. fAppInfoSearch();
  5385. // 신규로 발행번호 발생시 출력.
  5386. if(pntflag != "N") { // 반환된것은 출력되지 않도록
  5387. if(utlf_isNull(sIssNo)){
  5388. //var isslist = instance1.selectNodes("/root/return/return/issno");
  5389. if(ds_return.rowcount > 0) {
  5390. //2012/03/12 칠곡에서는 사본발행 목적을 바꾸더라도 증명서 및 승낙서가 발급되도록
  5391. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  5392. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  5393. issnoYN = "Y";
  5394. }else if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  5395. issnoYN = "";
  5396. }
  5397. }
  5398. }
  5399. //2012/03/12 End
  5400. fPrnt();
  5401. }else if((!utlf_isNull(sIssNo))&&(sEMRAppCopies!=0)){// 사본 반환후 다시 입력시출력 가능
  5402. //var isslist = instance1.selectNodes("/root/return/return/issno");
  5403. if(ds_return.rowcount > 0) {
  5404. issnoYN = "Y";
  5405. }
  5406. fPrnt();
  5407. }
  5408. }
  5409. opener.frmf_setParameter("SMMRC03000_appYN", "Y");
  5410. var oprnerId = opener.frmf_getScreenID();
  5411. if(oprnerId == "SMMRC02200") opener.fGetCopyInfoHistSearch();
  5412. frmf_clearParameter("SMMRC03000_appYN");
  5413. // 2017.06.05 전역변수 초기화
  5414. PRIN_COPY = ""; // 출력매수
  5415. PRIN_QUNT = ""; // 부수
  5416. SAVE_COPY = 1;
  5417. RESAVE_COPY = 1;
  5418. SAVE_ORDDD = "";
  5419. OUTCOPY_FLAG = "";
  5420. INCOPY_FLAG = "";
  5421. g_addstatus = "";
  5422. return;
  5423. }
  5424. else
  5425. {
  5426. sysf_messageBox("저장에", "E009");
  5427. }
  5428. }
  5429. // 이전내역조회
  5430. // jw.choe grd_isshist 화면에 미존재 호출부분 없음.
  5431. function fHistDetilSearch()
  5432. {
  5433. // reqGetCopyIssHist
  5434. // getCopyIssHist
  5435. //model.resetInstanceNode("/root/main/issinfo/copyinfo");
  5436. //model.removeNodeset("/root/main/issinfo/emrapplist");
  5437. //model.removenode("/root/main/issinfo/rcptlist");
  5438. //model.removeNodeset("/root/main/issinfo/rcptlist");
  5439. if (submit("TRMRC01101",false) == true)
  5440. {
  5441. grd_isshist.rebuild();
  5442. grd_isshist.rebuildStyle();
  5443. setRowStyle("grd_isshist","0","입원","ioflagnm");
  5444. }
  5445. else
  5446. {
  5447. messageBox("조회를", "E009");
  5448. }
  5449. grd_isshist.rebuild();
  5450. }
  5451. /**
  5452. * @group :
  5453. * @ver :
  5454. * @by : 이창록 2008-08-29
  5455. * @---------------------------------------------------
  5456. * @type : function
  5457. * @access : public
  5458. * @desc : 체크박스 선택시 전달사항에 전달
  5459. * @param :
  5460. * @return :
  5461. * @---------------------------------------------------
  5462. */
  5463. function fSendChkLabelText(label)
  5464. {
  5465. label += "\n";
  5466. ds_main_appinfo_copyinfo.setColumn(0, "delivefact",txt_delivefact.text+label);
  5467. }
  5468. /**
  5469. * @desc : 화면표시 대상이 EMR + IMG 기록인경우 처리
  5470. * @id :
  5471. * @event : onclick
  5472. * @return : void
  5473. * @authur : 박종훈
  5474. */
  5475. function fEmrImgRec()
  5476. {
  5477. utlf_addLog("***** fEmrImgRec() *****");
  5478. //var certnodeList = instance1.selectNodes("/root/tmpinicert2/iniinfo");
  5479. //--20130418 김동준 start(본원과 칠곡 분기)
  5480. var foldernm = "C:/CertrecPrnt" + sysf_getUserInfo("dutplceinstcd");
  5481. var local_path ="";
  5482. local_path = foldernm + "\\";
  5483. //var foldernm = "C:/CertrecPrnt";
  5484. //--20130418 김동준 end
  5485. //alert("ds_tmpinicert2_iniinfo.rowcount 건수" + ds_tmpinicert2_iniinfo.rowcount);
  5486. if (ds_tmpinicert2_iniinfo.rowcount <= 0)
  5487. return;
  5488. var instcd = sysf_getUserInfo("dutplceinstcd");
  5489. var logoimgpath = "IMAGES/emr/MN/logo_lctech_"+instcd+".png";
  5490. var emrpath = "";
  5491. var emrorddate = "";
  5492. var emrformnm = "";
  5493. var emrformcd = "";
  5494. var emrdeptnm = "";
  5495. var emrdeptcd = "";
  5496. //2013/01/15 Start
  5497. var signemrdeptnm = "";
  5498. var signemrdeptcd = "";
  5499. var signorddeptcd = "";
  5500. var signdeptengabbr = "";
  5501. //2013/01/15 End
  5502. var emrpage = "";
  5503. var emrhiddenmsg = "";
  5504. var k = "";
  5505. var pid = "";
  5506. var ptnm = "";
  5507. var depthngnm = "";
  5508. var deptengabbr = "";
  5509. var icdrdeptengabbr = "";
  5510. var rgstno = "";
  5511. var sa = "";
  5512. var disporddd = "";
  5513. var orddd = "";
  5514. var drid = "";
  5515. var icdrdrid = "";
  5516. var roomcd = "";
  5517. var icdrroomcd = "";
  5518. var ordtype = "";
  5519. var chosflag = "";
  5520. var orddeptcd = "";
  5521. var signflag = "";
  5522. var imgflag = "";
  5523. var langflag = "";
  5524. var tmptreatno = "";
  5525. var tmpiformcd = "";
  5526. var signno = 0;
  5527. var formcd = "";
  5528. var srcformcd = "";
  5529. var formnm = "";
  5530. var formprogflag = "";
  5531. var recdt = "";
  5532. var wardheader = "";
  5533. var dateheader = "";
  5534. var doctorheader = "";
  5535. var printheader = "";
  5536. var pageheader = "";
  5537. var imgepath = "";
  5538. var formrecdt = "";
  5539. var fstrgstdt = "";
  5540. var lastupdtdt = "";
  5541. var staffconfirmdt = "";
  5542. var fstrgstrusrnm = "";
  5543. var lastupdtrusrnm = "";
  5544. var erdt = "";
  5545. var ervisittm = "";
  5546. var staffnmheader = "";
  5547. var staffnm = "";
  5548. var emrrecusrnmheader = "";
  5549. var emrrecusrnm = "";
  5550. var indd = "";
  5551. var dschdd = "";
  5552. var inorddepthngnm = "";
  5553. var dschorddepthngnm = "";
  5554. var incnt = "";
  5555. var mainyn = "";
  5556. var rowno = "";
  5557. //2013/02/15 소스머지 시작(추가)
  5558. var surgeon = "";
  5559. var cover_header = "";
  5560. var cover_footer = "";
  5561. var makebodyfilecnt =0;
  5562. var default_cover_header = "";
  5563. var default_cover_footer = "";
  5564. var cover_header1 = "";
  5565. var cover_header2 = "";
  5566. var cover_header3 = "";
  5567. var cover_header4 = "";
  5568. var cover_header10 = "";
  5569. var cover_footer1 = "";
  5570. var cover_footer2 = "";
  5571. var fstrgstrid = "";
  5572. var lastupdtrid = "";
  5573. var staffid = "";
  5574. var surgeonid = "";
  5575. var cover_header_filenm = "";
  5576. var cover_footer_filenm = "";
  5577. //2013/02/15 소스머지 끝
  5578. //2013/02/18 추가
  5579. var trans="";
  5580. var signgenrflag = "";
  5581. //2013/02/18 추가
  5582. //2013/08/20 Start CDIS 해당하는 이미지만 나오도록 수정
  5583. var orderseqno = "";
  5584. var temporderseqno="";
  5585. //2013/08/20 End
  5586. var prtnunm = sysf_getUserInfo("usernm");
  5587. var prtndeptnm = "";
  5588. //var getuseren = getUserInfo("userengnm");
  5589. var getdate = utlf_getCurrentDate();
  5590. var gettime = utlf_getCurrentTime();
  5591. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  5592. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  5593. var prtdt = dateprnt + " " + timeprnt;
  5594. var sDutplcecd = sysf_getUserInfo("dutplcecd");
  5595. var history = "";
  5596. var history2 = "";
  5597. var output_width = "21.0";
  5598. var output_height = "29.7";
  5599. fExistFolder(foldernm);
  5600. ds_datagrid1.enableevent = false;
  5601. ds_tmpinicert2_iniinfo.enableevent = false;
  5602. var sidx = 0;
  5603. var eidx = ds_tmpinicert2_iniinfo.rowcount;
  5604. var tCnt = ds_tmpinicert2_iniinfo.rowcount;
  5605. if( ds_main_cond.getColumn(0, "pagingyn") == "Y" ){
  5606. sidx = (parseInt(page_number)-1)*parseInt(pagingCnt)
  5607. eidx = ((parseInt(page_number)-1)*parseInt(pagingCnt)) + parseInt(pagingCnt);
  5608. if( eidx > tCnt ){
  5609. eidx = tCnt;
  5610. }
  5611. }
  5612. for(var i=sidx; i<eidx; i++)
  5613. {
  5614. orderseqno = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "cmc_orderseqno"));
  5615. signno = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "signno"));
  5616. formcd = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "formcd"));
  5617. srcformcd = ds_tmpinicert2_iniinfo.getColumn(i, "srcformcd");
  5618. formnm = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "formnm"));
  5619. formprogflag = ds_tmpinicert2_iniinfo.getColumn(i, "formprogflag");
  5620. recdt = ds_tmpinicert2_iniinfo.getColumn(i, "recdt");
  5621. recdd = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "recdd"));
  5622. if(utlf_isNull(recdd)){ //의사지시기록
  5623. recdd = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "recdt"));
  5624. }
  5625. if(utlf_isNull(recdd)){//진단검사결과지, 영상의학판독, 핵의학검사지, 미생물검사결과지
  5626. recdd = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "orddd"));
  5627. }
  5628. trans = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "trans"));
  5629. pid = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "pid"));
  5630. ptnm = ds_tmpinicert2_iniinfo.getColumn(i, "ptnm");
  5631. depthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "depthngnm");
  5632. deptengabbr = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "deptengabbr"));
  5633. icdrdeptengabbr = ds_tmpinicert2_iniinfo.getColumn(i, "icdrdeptengabbr");
  5634. signorddeptcd = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "signorddeptcd"));
  5635. signdeptengabbr = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "signdeptengabbr"));
  5636. rgstno = ds_tmpinicert2_iniinfo.getColumn(i, "rgstno");
  5637. sa = ds_tmpinicert2_iniinfo.getColumn(i, "sa");
  5638. disporddd = ds_tmpinicert2_iniinfo.getColumn(i, "disporddd");
  5639. orddd = ds_tmpinicert2_iniinfo.getColumn(i, "orddd");
  5640. drid = ds_tmpinicert2_iniinfo.getColumn(i, "drid");
  5641. icdrdrid = ds_tmpinicert2_iniinfo.getColumn(i, "icdrdrid");
  5642. roomcd = ds_tmpinicert2_iniinfo.getColumn(i, "roomcd");
  5643. icdrroomcd = ds_tmpinicert2_iniinfo.getColumn(i, "icdrroomcd");
  5644. ordtype = ds_tmpinicert2_iniinfo.getColumn(i, "ordtype");
  5645. signgenrflag = ordtype;
  5646. chosflag = ds_tmpinicert2_iniinfo.getColumn(i, "chosflag");
  5647. orddeptcd = ds_tmpinicert2_iniinfo.getColumn(i, "orddeptcd");
  5648. signflag = ds_tmpinicert2_iniinfo.getColumn(i, "signflag");
  5649. imgflag = ds_tmpinicert2_iniinfo.getColumn(i, "imgflag");
  5650. langflag = ds_tmpinicert2_iniinfo.getColumn(i, "langflag");
  5651. formrecdt = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "formrecdt"));
  5652. formrecdt = formrecdt.toString().toDate().getDateFormat("YYYY/MM/DD");
  5653. fstrgstdt = ds_tmpinicert2_iniinfo.getColumn(i, "fstrgstdt");
  5654. lastupdtdt = ds_tmpinicert2_iniinfo.getColumn(i, "lastupdtdt");
  5655. fstrgstrid = ds_tmpinicert2_iniinfo.getColumn(i, "fstrgstrid");
  5656. lastupdtrid = ds_tmpinicert2_iniinfo.getColumn(i, "lastupdtrid");
  5657. staffconfirmdt = ds_tmpinicert2_iniinfo.getColumn(i, "staffconfirmdt");
  5658. fstrgstrusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "fstrgstrusrnm");
  5659. lastupdtrusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "lastupdtrusrnm");
  5660. erdt = ds_tmpinicert2_iniinfo.getColumn(i, "erdt");
  5661. ervisittm = ds_tmpinicert2_iniinfo.getColumn(i, "ervisittm");
  5662. staffnm = ds_tmpinicert2_iniinfo.getColumn(i, "staffnm");
  5663. surgeon = staffnm;
  5664. staffid = ds_tmpinicert2_iniinfo.getColumn(i, "staffid");
  5665. surgeonid = staffid;
  5666. emrrecusrnm = ds_tmpinicert2_iniinfo.getColumn(i, "emrrecusrnm");
  5667. indd = ds_tmpinicert2_iniinfo.getColumn(i, "indd");
  5668. dschdd = ds_tmpinicert2_iniinfo.getColumn(i, "dschdd");
  5669. inorddepthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "inorddepthngnm");
  5670. dschorddepthngnm = ds_tmpinicert2_iniinfo.getColumn(i, "dschorddepthngnm");
  5671. mainyn = ds_tmpinicert2_iniinfo.getColumn(i, "mainyn");
  5672. rowno = ds_tmpinicert2_iniinfo.getColumn(i, "rowno");
  5673. incnt = ds_tmpinicert2_iniinfo.getColumn(i, "incnt");
  5674. if(!utlf_isNull(incnt))
  5675. incnt += " 회차";
  5676. var ininfo = indd + " / " + inorddepthngnm;
  5677. if(!utlf_isNull(erdt))
  5678. ininfo += " (응급실 내원일 : " + erdt + ")";
  5679. var dschinfo = dschdd + " / " + dschorddepthngnm;
  5680. history = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "history"));
  5681. history2 = utlf_transNullToEmpty(ds_tmpinicert2_iniinfo.getColumn(i, "history2"));
  5682. var formnmarr = formnm.split("\n");
  5683. var topformnm = "";
  5684. var botformnm = "";
  5685. if (formnmarr.length == 1)
  5686. {
  5687. topformnm = formnmarr[0];
  5688. }
  5689. else if (formnmarr.length == 2)
  5690. {
  5691. topformnm = formnmarr[0];
  5692. botformnm = formnmarr[1];
  5693. }
  5694. else
  5695. {
  5696. topformnm = formnm;
  5697. }
  5698. //2009-06-02 등록번호 "-" 병원별 제거
  5699. var pidynhcd = ds_init_pidynhcd.getColumn(0, "hardcd");
  5700. if (pidynhcd == "Y")
  5701. {
  5702. for(var k = pid.length; k <= 8; k++)
  5703. {
  5704. if(k < 8){
  5705. pid = "0"+pid;
  5706. }
  5707. }
  5708. var str1 = pid.substr(0, 3);
  5709. var str2 = pid.substr(3, 2);
  5710. var str3 = pid.substr(5, 2);
  5711. var str4 = pid.substr(7, 1);
  5712. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  5713. }
  5714. else
  5715. {
  5716. tmppid = pid;
  5717. }
  5718. if (chosflag == "O" || chosflag == "S")
  5719. {
  5720. wardheader = "진료과 : ";
  5721. }
  5722. else
  5723. {
  5724. wardheader = "병실 : ";
  5725. }
  5726. if (langflag == "KO")
  5727. {
  5728. if (chosflag == "O" || chosflag == "S")
  5729. {
  5730. wardheader = "진료과 : ";
  5731. }
  5732. else
  5733. {
  5734. wardheader = "병실 : ";
  5735. }
  5736. dateheader = "진료기간 : ";
  5737. doctorheader = "주치의 : ";
  5738. printheader = "출력 : ";
  5739. prtndeptnm = sysf_getUserInfo("dutplcenm");
  5740. imgepath = fGetImgPath("KO");
  5741. //imgepath = "com/commonweb/images/biglogo012.jpg"
  5742. pageheader = "페이지 : ";
  5743. }
  5744. else
  5745. {
  5746. if (chosflag == "O" || chosflag == "S")
  5747. {
  5748. wardheader = "Dept : ";
  5749. }
  5750. else
  5751. {
  5752. wardheader = "Room : ";
  5753. }
  5754. dateheader = "Date : ";
  5755. doctorheader = "Doctor : ";
  5756. printheader = "Print date : ";
  5757. prtndeptnm = sysf_getUserInfo("deptengnm");
  5758. imgepath = fGetImgPath("EN");
  5759. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  5760. if (utlf_isNull(prtndeptnm))
  5761. {
  5762. prtndeptnm = sysf_getUserInfo("dutplcenm");
  5763. }
  5764. pageheader = "Page : ";
  5765. }
  5766. if (imgflag == "N")
  5767. {
  5768. //ds_datagrid1.insertRow(i);
  5769. var prtRow = ds_datagrid1.addRow();
  5770. ds_datagrid1.setColumn(prtRow, "pid", pid);
  5771. ds_datagrid1.setColumn(prtRow, "signno", signno);
  5772. ds_datagrid1.setColumn(prtRow, "reckind", "01");
  5773. ds_datagrid1.setColumn(prtRow, "readprtflag", "E");
  5774. ds_datagrid1.setColumn(prtRow, "formcd", formcd);
  5775. ds_datagrid1.setColumn(prtRow, "signflag", signflag);
  5776. ds_datagrid1.setColumn(prtRow, "orddd", orddd);
  5777. ds_datagrid1.setColumn(prtRow, "chosflag", chosflag);
  5778. ds_datagrid1.setColumn(prtRow, "refusge", "");
  5779. ds_datagrid1.setColumn(prtRow, "refremark", "");
  5780. if(utlf_isNull(trans))
  5781. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  5782. //가로모드로 출력해야 하는 서식인 경우(20181011 이윤주)
  5783. if(lf_ContainsHardCD("6904", formcd)) {
  5784. output_width = "29.7";
  5785. output_height = "21.0";
  5786. }
  5787. //이윤주 수정(20140819:최초작성시각 보이는 서식)
  5788. // var fstsrcformcdcnt = ds_temp_hardcd6.getCaseCount("hardcd == '" + srcformcd + "'");
  5789. // if (fstsrcformcdcnt > 0) {
  5790. // if(!utlf_isNull(fstrgstrusrnm)) {
  5791. // fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  5792. // }
  5793. // }
  5794. //옵션 D(날짜최종) 선택시 최초 및 최종 작성일자
  5795. if (ds_main_cond.getColumn(0,"histprntyn") == "D" ) {
  5796. if(!utlf_isNull(fstrgstrusrnm)) {
  5797. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  5798. }
  5799. if(!utlf_isNull(lastupdtrusrnm)) {
  5800. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  5801. }
  5802. }
  5803. //이윤주 추가(20140819:기록시점에 헤더정보 표현)
  5804. var icdrsrcformcdcnt = ds_temp_hardcd6.getCaseCount("hardcd == '" + srcformcd + "'");
  5805. if (icdrsrcformcdcnt > 0) {
  5806. deptengabbr = icdrdeptengabbr;
  5807. roomcd = icdrroomcd;
  5808. drid = icdrdrid;
  5809. }
  5810. switch(srcformcd){
  5811. case "0000000003"://입원초진
  5812. cover_header = "emr/recmngtxp/html/cover_header2.html";
  5813. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  5814. break;
  5815. case "0000000676"://수술기록
  5816. cover_header = "emr/recmngtxp/html/cover_header.html";
  5817. cover_footer = "emr/recmngtxp/html/cover_footer2.html";
  5818. break;
  5819. case "0000000679"://응급실기록
  5820. cover_header = "emr/recmngtxp/html/cover_header3.html";
  5821. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  5822. break;
  5823. case "0000000680"://입퇴원요약
  5824. cover_header = "emr/recmngtxp/html/cover_header1.html";
  5825. cover_footer = "emr/recmngtxp/html/cover_footer1.html";
  5826. break;
  5827. case "0000002022"://마취기록지
  5828. cover_header = "emr/recmngtxp/html/cover_header4.html";
  5829. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  5830. break;
  5831. case "0000003169"://Brief OP Note
  5832. cover_header = "emr/recmngtxp/html/cover_header.html";
  5833. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  5834. break;
  5835. default:
  5836. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  5837. cover_header = "emr/recmngtxp/html/cover_header10.html";
  5838. }else{
  5839. cover_header = "emr/recmngtxp/html/cover_header.html";
  5840. }
  5841. cover_footer = "emr/recmngtxp/html/cover_footer.html";
  5842. break;
  5843. }
  5844. body_header = "emr/recmngtxp/html/body_header.html";
  5845. body_footer = "emr/recmngtxp/html/body_footer.html";
  5846. //병리 조직 검사 관련 ==> 데이터 정렬 문제 해소( 요청번호:20190822008 )
  5847. if (srcformcd == "0000002726" ) {
  5848. var DEFAULT_FONT = "굴림체";
  5849. }
  5850. else {
  5851. var DEFAULT_FONT = "굴림";
  5852. }
  5853. trans = "utf16://<!--@\n @DOCUMENT_HOME = " + sysf_getURLprefix() + "/xpapps/ " +
  5854. "\n @COVER_HEADER = " + cover_header +
  5855. "\n @COVER_FOOTER = " + cover_footer +
  5856. "\n @BODY_HEADER = " + body_header +
  5857. "\n @BODY_FOOTER = " + body_footer +
  5858. "\n @DEFAULT_FONT = " + DEFAULT_FONT + " " +
  5859. "\n @DEFAULT_PRE_FONT = 굴림 " +
  5860. "\n @DEFAULT_FONT_SIZE = 9pt " +
  5861. "\n @DEFAULT_PRE_FONT_SIZE = 10pt " +
  5862. "\n @FONT_SIZE_OFFSET = 3px " +
  5863. "\n @USE_NU_SIZE_ADJUST = TRUE " +
  5864. "\n @HIDE_TAG = DIV:MTX_*, DIV:STX_* " +
  5865. "\n @VAR_PAT_NUM = " + tmppid +
  5866. "\n @VAR_CLASS = " + ordtype +
  5867. "\n @VAR_CHART_NAME_TOP = " + topformnm +
  5868. "\n @VAR_HISTORY = " + history +
  5869. "\n @VAR_HISTORY2 = " + history2 +
  5870. "\n @VAR_CHART_NAME_BOTTOM = " + botformnm +
  5871. "\n @VAR_CHART_NAME_LINE = " + formnm +
  5872. "\n @VAR_PAT_AGE_SEX = " + sa +
  5873. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  5874. "\n @VAR_PAT_JUMIN_NO = " + rgstno +
  5875. "\n @VAR_PAT_NAME = " + ptnm +
  5876. "\n @VAR_PRINT_NAME = " + prtnunm +
  5877. "\n @VAR_PRINT_DEPT = " + prtndeptnm +
  5878. "\n @VAR_WARD_HEAD = " + wardheader + roomcd +
  5879. "\n @VAR_DATE_HEADER = " + dateheader + disporddd +
  5880. "\n @VAR_DOCTOR_HEADER = " + doctorheader + drid +
  5881. "\n @VAR_PRINT_HEADER = " + printheader + prtdt +
  5882. "\n @SYS_PAGE_HEADER = " + pageheader +
  5883. "\n @VAR_HOSP_IMG = " + imgepath +
  5884. "\n @VAR_LOGOIMG = " + logoimgpath +
  5885. "\n @VAR_ORDDATE = " + formrecdt +
  5886. "\n @VAR_ORDDEPT = " + depthngnm +
  5887. "\n @VAR_FSTRGSTRUSRNM = " + fstrgstrusrnm +
  5888. "\n @VAR_LASTUPDTRUSRNM = " + lastupdtrusrnm +
  5889. "\n @VAR_FSTRGSTRIDIMG = /himed/webapps/cmc/web/xrw/.live?submit_id=TRMRF01223&business_id=emr&macaddr=00143815924&userid="+fstrgstrid+"&srcformcd="+srcformcd +
  5890. "\n @VAR_LASTUPDTRIDIMG = /himed/webapps/cmc/web/xrw/.live?submit_id=TRMRF01223&business_id=emr&macaddr=00143815924&userid="+lastupdtrid+"&srcformcd="+srcformcd +
  5891. "\n @VAR_SURGEONIDIMG = /himed/webapps/cmc/web/xrw/.live?submit_id=TRMRF01223&business_id=emr&macaddr=00143815924&srcformcd="+srcformcd+"&userid="+surgeonid +
  5892. "\n @VAR_STAFFIDIMG = /himed/webapps/cmc/web/xrw/.live?submit_id=TRMRF01223&business_id=emr&macaddr=00143815924&srcformcd="+srcformcd+"&userid="+staffid +
  5893. "\n @VAR_ERDT = " + erdt +
  5894. "\n @VAR_ERVISITTM = " + ervisittm +
  5895. "\n @VAR_STAFFNM_HEADER = " + staffnmheader +
  5896. "\n @VAR_STAFFNM = " + staffnm +
  5897. "\n @VAR_EMRRECUSRNM_HEADER = " + emrrecusrnmheader +
  5898. "\n @VAR_EMRRECUSRNM = " + emrrecusrnm +
  5899. "\n @VAR_ININFO = " + ininfo +
  5900. "\n @VAR_DSCHINFO = " + dschinfo +
  5901. "\n @VAR_INCNT = " + incnt +
  5902. "\n @VAR_INORDDEPTHNGNM = " + inorddepthngnm +
  5903. "\n @VAR_RECUSERID = " + fstrgstrusrnm +
  5904. "\n @VAR_REALRECDT = " + erdt +
  5905. "\n @VAR_TREAT_DEPT = " + deptengabbr +
  5906. "\n @VAR_DSCHINFO = " + dschinfo +
  5907. "\n @VAR_SURGEON = " + surgeon +
  5908. "\n @OUTPUT_WIDTH = " + output_width +
  5909. "\n @OUTPUT_HEIGHT = " + output_height +
  5910. "\n @OUTPUT_MAGNIFICATION = 1 " +
  5911. /* 2.0디자인서식 깨짐 해결하기 위한 추가 옵션 begin */
  5912. "\n @USE_KEEP_DESIGN = TRUE" + //box 계단 문제 해결
  5913. "\n @USE_NU_TD_ADJUST = FALSE" + //데이터없는 TD 높이유지
  5914. "\n @USE_SCH_HR_ADJUST = TRUE" + //수직선을 그리기 위한 옵션 추가
  5915. "\n @LINE_BREAK_METHOD = SCH" + //wordwrap 속성 (word+literal)
  5916. "\n @TEXT_LINE_HEIGHT = MTX_* 130, GRD_* 130, LBL_* 120, CCN_* 130, OPN_* 130, DGN_* 130" + //줄간격
  5917. "\n @VERTICAL_COMPACTION = 10" + //여백제거
  5918. /* end 2.0디자인서식 깨짐 해결하기 위한 추가 옵션 */
  5919. "\n@-->\n" + trans + "\n";
  5920. if( trans.indexOf("&amp;instcd=&amp;") > -1 ){
  5921. trans = trans.replace("&amp;instcd=&amp;", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;");
  5922. }else if( trans.indexOf("&amp;business_id=") > -1 && !(trans.indexOf("&amp;instcd=03") > -1) ){
  5923. trans = trans.replace("&amp;business_id=", "&amp;instcd="+sysf_getUserInfo("dutplceinstcd")+"&amp;business_id=");
  5924. }
  5925. // trans 크기에 따른 속도저하로 임시 제외
  5926. // if( trans.length < 150000 )
  5927. // emrpath = emrpath + trans.replace(/"/g, "'") + splittxt;
  5928. // else
  5929. emrpath = emrpath + trans + splittxt;
  5930. //emrorddate += orddd + "|";
  5931. emrorddate += recdd + splittxt; //기록일을 보여달라는 의료정보팀 요청
  5932. if( !utlf_isNull(history) ){
  5933. emrformnm += formnm +" "+ history + " " + history2 + splittxt;
  5934. }else{
  5935. emrformnm += formnm + splittxt;
  5936. }
  5937. emrformcd += formcd + splittxt;
  5938. emrdeptnm += deptengabbr + splittxt;
  5939. emrdeptcd += orddeptcd + splittxt;
  5940. //2013/01/15 Start
  5941. signemrdeptnm += signdeptengabbr + splittxt;
  5942. signemrdeptcd += signorddeptcd + splittxt;
  5943. //2013/01/15 End
  5944. emrpage += "1"+ splittxt;
  5945. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  5946. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E" + splittxt;
  5947. }
  5948. else {
  5949. tmptreatno += signno + ",";
  5950. tmpiformcd += formcd + ",";
  5951. emrpath += "*" + splittxt;
  5952. emrorddate += "*" + splittxt;
  5953. emrformnm += "*" + splittxt;
  5954. emrformcd += "*" + splittxt;
  5955. emrdeptnm += "*" + splittxt;
  5956. emrdeptcd += "*" + splittxt;
  5957. signemrdeptnm += "*" + splittxt;
  5958. signemrdeptcd += "*" + splittxt;
  5959. emrpage += "*" + splittxt;
  5960. emrhiddenmsg += "*" + splittxt;
  5961. temporderseqno += orderseqno +",";
  5962. }
  5963. }
  5964. ds_datagrid1.enableevent = true;
  5965. ds_tmpinicert2_iniinfo.enableevent = true;
  5966. dsf_createDsRow("ds_imgrec_iemr", [{col: "treatno", type:"string", size:256, val:tmptreatno.substring(0, tmptreatno.length - 1)}
  5967. , {col: "pid", type:"string", size:256, val:""}
  5968. , {col: "orddeptcd", type:"string", size:256, val:""}
  5969. , {col: "indd", type:"string", size:256, val:""}
  5970. , {col: "docucd", type:"string", size:256, val:tmpiformcd.substring(0, tmpiformcd.length - 1)}
  5971. , {col: "ioflag", type:"string", size:256, val:""}
  5972. , {col: "cmc_cretno", type:"string", size:256, val:""}
  5973. , {col: "cmc_spcid", type:"string", size:256, val:""}
  5974. , {col: "cmc_orddate", type:"string", size:256, val:""}
  5975. , {col: "cmc_orderseqno", type:"string", size:256, val:temporderseqno.substring(0, temporderseqno.length - 1)}]);
  5976. dsf_createDsRow("ds_temp_inisend", [{col: "emrpath", type:"string", size:256, val:emrpath.substring(0, emrpath.length - 1)}
  5977. , {col: "emrorddate", type:"string", size:256, val:emrorddate.substring(0, emrorddate.length - 1)}
  5978. , {col: "emrformnm", type:"string", size:256, val:emrformnm.substring(0, emrformnm.length - 1)}
  5979. , {col: "emrformcd", type:"string", size:256, val:emrformcd.substring(0, emrformcd.length - 1)}
  5980. , {col: "emrdeptnm", type:"string", size:256, val:emrdeptnm.substring(0, emrdeptnm.length - 1)}
  5981. , {col: "emrdeptcd", type:"string", size:256, val:emrdeptcd.substring(0, emrdeptcd.length - 1)}
  5982. , {col: "signemrdeptcd", type:"string", size:256, val:signemrdeptcd.substring(0, signemrdeptcd.length - 1)}
  5983. , {col: "signemrdeptnm", type:"string", size:256, val:signemrdeptnm.substring(0, signemrdeptnm.length - 1)}
  5984. , {col: "emrpage", type:"string", size:256, val:emrpage.substring(0, emrpage.length - 1)}
  5985. , {col: "emrhiddenmsg", type:"string", size:256, val:emrhiddenmsg.substring(0, emrhiddenmsg.length - 1)}]);
  5986. //이미지경로
  5987. iviewerIemr.main_emrpath = ds_temp_inisend.getColumn(0, "emrpath");
  5988. //진료일
  5989. iviewerIemr.main_emrorddate = ds_temp_inisend.getColumn(0, "emrorddate");
  5990. //서식명
  5991. iviewerIemr.main_emrformnm = ds_temp_inisend.getColumn(0, "emrformnm");
  5992. //서식코드
  5993. iviewerIemr.main_emrformcd = ds_temp_inisend.getColumn(0, "emrformcd");
  5994. //진료과
  5995. iviewerIemr.main_emrdeptnm = ds_temp_inisend.getColumn(0, "emrdeptnm");
  5996. //진료과코드
  5997. iviewerIemr.main_emrdeptcd = ds_temp_inisend.getColumn(0, "emrdeptcd");
  5998. //2013/01/15 Start
  5999. //기록과코드
  6000. iviewerIemr.main_signemrdeptcd = ds_temp_inisend.getColumn(0, "signemrdeptcd");
  6001. //기록과
  6002. iviewerIemr.main_signemrdeptnm = ds_temp_inisend.getColumn(0, "signemrdeptnm");
  6003. //2013/01/15 End
  6004. //페이지
  6005. iviewerIemr.main_emrpage = ds_temp_inisend.getColumn(0, "emrpage");
  6006. iviewerIemr.main_emrhiddenmsg = ds_temp_inisend.getColumn(0, "emrhiddenmsg");
  6007. gtmptreatno = tmptreatno;
  6008. gtmpiformcd = tmpiformcd;
  6009. gemrpath = emrpath;
  6010. gemrorddate = emrorddate;
  6011. gemrformnm = emrformnm;
  6012. gemrformcd = emrformcd;
  6013. gemrdeptnm = emrdeptnm;
  6014. gemrdeptcd = emrdeptcd;
  6015. gemrpage = emrpage;
  6016. gemrhiddenmsg = emrhiddenmsg;
  6017. var nMode = ds_main_cond.getColumn(0, "pagingyn") == "Y" && page_number > 1 ? "Y" : null;
  6018. iviewerIemr.searchChart_EMR(ds_imgrec_iemr, nMode); // CDIS 및 스캔 이미지 세팅
  6019. if (iviewerIemr.downloadChart() == true)
  6020. {
  6021. // 뷰어 모드 유지 기능 추가 - 20080417
  6022. var ViewMode;
  6023. ViewMode = iviewerIemr.hidden_currentViewMode;
  6024. if (utlf_isNull(ViewMode)) {
  6025. iviewerIemr.setupChartCopy("ChartView");
  6026. }
  6027. else {
  6028. iviewerIemr.setupChartCopy(ViewMode);
  6029. }
  6030. }
  6031. }
  6032. /* @group : 폴더 존재여부 파악
  6033. * @ver : 2007.01.06
  6034. * @by : 박종훈
  6035. * @-----------------------------------
  6036. * @type : function
  6037. * @access : public
  6038. * @desc :
  6039. */
  6040. function fExistFolder(foldernm)
  6041. {
  6042. var objExtCommon = new ExtCommon();
  6043. var usernm = objExtCommon.getUserName();
  6044. if(utlf_isNull(foldernm)){
  6045. return;
  6046. }
  6047. var folderDept = foldernm.split("\\");
  6048. var currentPos = folderDept[0];
  6049. for(var i =1; i<folderDept.length ; i++){
  6050. if(utlf_isNull(folderDept[i])){
  6051. break;
  6052. }
  6053. currentPos += ("\\" + folderDept[i]);
  6054. objExtCommon.checkDirectory(currentPos, 1);
  6055. }
  6056. /*
  6057. //var fso,
  6058. var folder, s;
  6059. //fso = new ActiveXObject("Scripting.FileSystemObject");
  6060. try
  6061. {
  6062. folder = fso.GetFolder(foldernm);
  6063. s = folder.DateCreated;
  6064. if (!utlf_isNull(s))
  6065. {
  6066. fDelFolder(foldernm);
  6067. fMakeFolder(foldernm);
  6068. }
  6069. }
  6070. catch (e)
  6071. {
  6072. fMakeFolder(foldernm);
  6073. }
  6074. */
  6075. }
  6076. /* @group : 폴더 삭제
  6077. * @ver : 2007.01.06
  6078. * @by : 박종훈
  6079. * @-----------------------------------
  6080. * @type : function
  6081. * @access : public
  6082. * @desc :
  6083. */
  6084. function fDelFolder(foldernm)
  6085. {
  6086. // var fso;
  6087. // fso = new ActiveXObject("Scripting.FileSystemObject");
  6088. //20130418 김동준 start try Catch 추가
  6089. try {
  6090. fso.DeleteFolder(foldernm);
  6091. }
  6092. catch(e){
  6093. }
  6094. //20130418 김동준 end
  6095. }
  6096. /* @group : 폴더 생성
  6097. * @ver : 2007.01.06
  6098. * @by : 박종훈
  6099. * @-----------------------------------
  6100. * @type : function
  6101. * @access : public
  6102. * @desc :
  6103. */
  6104. function fMakeFolder(foldernm)
  6105. {
  6106. // var fso = new ActiveXObject("Scripting.FileSystemObject");
  6107. var check = true;
  6108. while(check){
  6109. try
  6110. {
  6111. var a = fso.CreateFolder(foldernm);
  6112. check = false;
  6113. }
  6114. catch (e)
  6115. {
  6116. check = true;
  6117. }
  6118. }
  6119. }
  6120. function fMakeFolder_20130328(foldernm)
  6121. {
  6122. // var fso = new ActiveXObject("Scripting.FileSystemObject");
  6123. var a = fso.CreateFolder(foldernm);
  6124. }
  6125. /**
  6126. * @desc : 사본발행 신청
  6127. * @id :
  6128. * @event : xforms-ready
  6129. * @return : void
  6130. * @authur : 박종훈
  6131. */
  6132. function fAppcopy()
  6133. {
  6134. utlf_addLog("***** fAppcopy() *****");
  6135. var appcopykey = iviewerIemr.setCopy(true); //영상뷰어에서의 리턴값
  6136. utlf_addLog("***** appcopykey : "+ appcopykey );
  6137. if (!utlf_isNull(appcopykey))
  6138. {
  6139. var copykey = appcopykey.split("|");
  6140. var appkeyArr = copykey[0].split("▦");
  6141. var reckind = ""; //기록, 영상구분(E/I)
  6142. //var chosflag = model.getValue(ref + "[" + rowpos + "]/chosflag");
  6143. if(btn_out.getSelectStatus() == true) {
  6144. var chosflag = "O";
  6145. } else if(btn_in.getSelectStatus() == true) {
  6146. var chosflag = "I";
  6147. }
  6148. var sendval = "";
  6149. var sendformcd = "";
  6150. var tmpval = "";
  6151. var tmpformcd = "";
  6152. var tmptotpage = "";
  6153. appkeyArr = "";
  6154. var copyparam = "";
  6155. var compsignno = "";
  6156. for(var i = 0; i < copykey.length; i++)
  6157. {
  6158. appkeyArr = copykey[i].split("▦");
  6159. reckind = appkeyArr[0];
  6160. if (reckind == "I")
  6161. {
  6162. tmpval = appkeyArr[1];
  6163. tmpformcd = appkeyArr[2];
  6164. tmptotpage = appkeyArr[3];
  6165. }
  6166. else
  6167. {
  6168. tmpval = appkeyArr[2];
  6169. tmpformcd = appkeyArr[1];
  6170. tmptotpage = appkeyArr[20];
  6171. if (compsignno != tmpval)
  6172. {
  6173. compsignno = tmpval;
  6174. }
  6175. else
  6176. {
  6177. continue;
  6178. }
  6179. }
  6180. var objColInfo = new Array();
  6181. objColInfo.push({col: "val", type:"string", size:256, val:tmpval});
  6182. objColInfo.push({col: "formcd", type:"string", size:256, val:tmpformcd});
  6183. objColInfo.push({col: "reckind", type:"string", size:256, val:reckind});
  6184. objColInfo.push({col: "chosflag", type:"string", size:256, val:chosflag});
  6185. objColInfo.push({col: "instcd", type:"string", size:256});
  6186. dsf_createDsRow("ds_copysend", objColInfo);
  6187. objColInfo = new Array();
  6188. objColInfo.push({col: "patnm", type:"string", size:256});
  6189. objColInfo.push({col: "ioflag", type:"string", size:256});
  6190. objColInfo.push({col: "recdd", type:"string", size:256});
  6191. objColInfo.push({col: "formnm", type:"string", size:256});
  6192. objColInfo.push({col: "deptnm", type:"string", size:256});
  6193. objColInfo.push({col: "deptcd", type:"string", size:256});
  6194. objColInfo.push({col: "orddd", type:"string", size:256});
  6195. objColInfo.push({col: "dschdd", type:"string", size:256});
  6196. objColInfo.push({col: "atdoctnm", type:"string", size:256});
  6197. objColInfo.push({col: "atdoctcd", type:"string", size:256});
  6198. objColInfo.push({col: "keyno", type:"string", size:256});
  6199. objColInfo.push({col: "formcd", type:"string", size:256});
  6200. objColInfo.push({col: "cretno", type:"string", size:256});
  6201. dsf_createDsRow("ds_tmpcopyinfo_copyinfo", objColInfo);
  6202. var oParam = {};
  6203. oParam.id = "TRMRI00407";
  6204. oParam.service = "recmngtapp.SystView";
  6205. oParam.method = "reqGetReqCopyInfo";
  6206. oParam.inds = "req=ds_copysend";
  6207. oParam.outds = "ds_tmpcopyinfo_copyinfo=copyinfo";
  6208. oParam.async = false;
  6209. oParam.callback = "cf_TRMRI00407";
  6210. tranf_submit(oParam);
  6211. if (arErrorCode.pop("TRMRI00407") > -1)
  6212. {
  6213. var patid = ds_patinfolist.getColumn(0, "pid");
  6214. var patnm = ds_patinfolist.getColumn(0, "hngnm");
  6215. var ioflag = ds_tmpcopyinfo_copyinfo.getColumn(0, "ioflag");
  6216. var recdd = ds_tmpcopyinfo_copyinfo.getColumn(0, "recdd");
  6217. var formnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "formnm");
  6218. var deptnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "deptnm");
  6219. var deptcd = ds_tmpcopyinfo_copyinfo.getColumn(0, "deptcd");
  6220. var orddd = ds_tmpcopyinfo_copyinfo.getColumn(0, "orddd");
  6221. var dschdd = ds_tmpcopyinfo_copyinfo.getColumn(0, "dschdd");
  6222. var atdoctnm = ds_tmpcopyinfo_copyinfo.getColumn(0, "atdoctnm");
  6223. var atdoctcd = ds_tmpcopyinfo_copyinfo.getColumn(0, "atdoctcd");
  6224. var sex = ds_patinfolist.getColumn(0, "sex");
  6225. var age = ds_patinfolist.getColumn(0, "age");
  6226. }
  6227. copyparam += patid + "▦" + patnm + "▦" + age + "▦" + sex + "▦" + tmptotpage + "▦" + reckind + "▦" + chosflag + "▦" + recdd + "▦" + formnm + "▦"
  6228. + deptnm + "▦" + deptcd + "▦" + orddd + "▦" + dschdd + "▦" + atdoctnm + "▦" + atdoctcd + "▦" + tmpval + "▦" + tmpformcd + "▩";
  6229. }
  6230. this.close();
  6231. return copyparam;
  6232. }
  6233. return "";
  6234. }
  6235. function fCheckAppList() {
  6236. var userinfo = getUserInfo("dutplcecd");
  6237. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  6238. //if(userinfo == "3230000000"){
  6239. if(model.getValue("/root/temp/hardcd/hardcd[hardcd='" + userinfo + "']/hardcd") != "")
  6240. {
  6241. // KNUH_20101124_박성호_end
  6242. var grdoRow = 0;
  6243. var grdcRow = 0;
  6244. var hist_orddd = 0;
  6245. var hist_cretno = 0;
  6246. var hist_indd = 0;
  6247. var copyseqno = 0;
  6248. var issno = 0;
  6249. for( var i = 1 ; i < grd_apphist.rows; i++) {
  6250. hist_orddd = model.getValue("/root/main/apphist/applist["+ i +"]/orddd");
  6251. hist_indd = model.getValue("/root/main/apphist/applist["+ i +"]/orddd");
  6252. hist_cretno = model.getValue("/root/main/apphist/applist["+ i +"]/cretno");
  6253. copyseqno = model.getValue("/root/main/apphist/applist["+ i +"]/copyseqno");
  6254. issno = model.getValue("/root/main/apphist/applist["+ i +"]/copyseqno");
  6255. // 외래 신청내역 check되도록
  6256. for(var j = 1; j < grd_outpat.rows; j++) {
  6257. grdoRow = grd_outpat.findRow(hist_orddd, j, 3);
  6258. grdcRow = grd_outpat.findRow(hist_cretno, j, 2);
  6259. if(grdoRow > 0 && (grdoRow == grdcRow)) model.setValue("/root/main/outpathistlist/outpathistlist["+ j +"]/chk", "Y");
  6260. }
  6261. // 입원 신청내역 check 되도록
  6262. for(var k = 1; k < grd_inapplist.rows; k++) {
  6263. grdoRow = grd_inapplist.findRow(hist_indd, k, 1);
  6264. grdcRow = grd_inapplist.findRow(hist_cretno, k, 6);
  6265. if(grdoRow > 0 && (grdoRow == grdcRow)) {
  6266. model.setValue("/root/main/inpathistlist/inpathistlist["+ k +"]/chk", "Y");
  6267. model.makeValue("/root/main/inpathistlist/inpathistlist["+ k +"]/copyseqno", copyseqno);
  6268. model.makeValue("/root/main/inpathistlist/inpathistlist["+ k +"]/issno", issno);
  6269. }
  6270. }
  6271. }
  6272. }
  6273. }
  6274. // 서식만
  6275. /*function fGetEMRList() {
  6276. model.removeNodeset("/root/send/reqdata");
  6277. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6278. ds_send_reqdata.setColumn(nRow, "label", "-");
  6279. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6280. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6281. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6282. ds_send_reqdata.setColumn(nRow, "testflag", "N");
  6283. if(btn_out.selected) {
  6284. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/outpathistlist/outpathistlist[" + grd_outpat.row + "]/orddd"));
  6285. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6286. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6287. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/pid"));
  6288. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/cretno"));
  6289. ds_send_reqdata.setColumn(nRow, "chosflag", "O");
  6290. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  6291. ds_send_reqdata.setColumn(nRow, "ordtype", "O");
  6292. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddeptcd"));
  6293. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6294. } else if(btn_in.selected) {
  6295. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/inpathistlist/inpathistlist[" + grd_inapplist.row + "]/indd"));
  6296. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6297. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6298. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/pid"));
  6299. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/cretno"));
  6300. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6301. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  6302. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  6303. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/orddeptcd"));
  6304. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6305. }
  6306. if (submit("TRMRC03026",false))
  6307. {
  6308. }
  6309. btn_save.disabled = false;
  6310. btn_update.disabled = true;
  6311. btn_reappinfo.disabled = true;
  6312. }*/
  6313. // 외래 : 기록조회
  6314. function fGetEMROutTestList() {
  6315. utlf_addLog("***** fGetEMROutTestList() *****");
  6316. ds_send_reqdata.clearData();
  6317. var nRow = ds_send_reqdata.addRow();
  6318. ds_send_reqdata.setColumn(nRow, "testflag", "Y");
  6319. //ds_grd_outpat.filter("chk=='Y'");
  6320. set_filter_with_period("chk=='Y'");
  6321. //var rsrvinfo = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist[chk = 'Y']");
  6322. if(ds_grd_outpat.rowcount < 1) {
  6323. //ds_grd_outpat.filter("");
  6324. set_filter_with_period();
  6325. ds_tmpinicert2_iniinfo.clearData();
  6326. iviewerIemr.resetInstance_EMR();
  6327. iviewerIemr.cleanViewer();
  6328. sysf_messageBox("외래 진료일을 check", "I008");
  6329. return;
  6330. } else{
  6331. ds_tmpinicert2_iniinfo.clearData();
  6332. iviewerIemr.resetInstance_EMR();
  6333. iviewerIemr.cleanViewer();
  6334. dsf_createDs("ds_grd_outpat_rsrvinfo_filter");
  6335. ds_grd_outpat_rsrvinfo_filter.copyData(ds_grd_outpat, true);
  6336. //ds_grd_outpat.filter("");
  6337. set_filter_with_period();
  6338. ds_grd_outpat_rsrvinfo_filter.addColumn("chosflag", "string");
  6339. dsf_setDefaultVal(ds_grd_outpat_rsrvinfo_filter, "all");
  6340. for(var i=0; i<ds_grd_outpat_rsrvinfo_filter.rowcount; i++)
  6341. ds_grd_outpat_rsrvinfo_filter.setColumn(i, "chosflag", ds_grd_outpat_rsrvinfo_filter.getColumn(i, "ordtype"));
  6342. //ds_send_reqdata.setColumn(nRow, "rsrvinfo",getNodeListCSV(rsrvinfo));
  6343. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6344. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6345. ds_send_reqdata.setColumn(nRow, "label", "-");
  6346. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6347. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6348. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6349. }
  6350. ds_send_reqdata.setColumn(nRow, "scrnid" , "SMMRC03000" );
  6351. ds_send_reqdata.setColumn(nRow, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  6352. ds_send_reqdata.setColumn(nRow, "histprntyn" , ds_main_cond.getColumn(0, "histprntyn"));
  6353. if (ds_main_cond.getColumn(0, "histprntyn") == "Y" || ds_main_cond.getColumn(0, "histprntyn") == "T" ) {
  6354. ds_send_reqdata.setColumn(0, "histyn", "Y"); //이력구분(20190321)
  6355. }
  6356. if(group1.chk_testinfo.value == "Y") {
  6357. if( ds_send_reqdata.getColumnInfo("testinfo") == null )
  6358. ds_send_reqdata.addColumn("testinfo", "string");
  6359. ds_send_reqdata.setColumn(nRow, "testinfo", "Y");
  6360. for( var i = 2; i < 9 ; i++) {
  6361. ds_main_otherinfo.setColumn(0, "testinfo" + i +"", "Y");
  6362. ds_send_reqdata.setColumn(nRow, "testinfo" + i +"", "Y");
  6363. }
  6364. } else {
  6365. if(group1.chk_testinfo2.value == "Y") {
  6366. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6367. }
  6368. if(group1.chk_testinfo3.value == "Y") {
  6369. ds_send_reqdata.setColumn(nRow, "testinfo3", "Y");
  6370. }
  6371. if(group1.chk_testinfo4.value == "Y") {
  6372. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  6373. }
  6374. if(group1.chk_testinfo5.value == "Y") {
  6375. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6376. }
  6377. if(group1.chk_testinfo6.value == "Y") {
  6378. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6379. }
  6380. if(group1.chk_testinfo7.value == "Y") {
  6381. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  6382. }
  6383. if(group1.chk_testinfo8.value == "Y") {
  6384. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6385. }
  6386. }
  6387. if(group1.chk_prcpinfo.value == "Y") {
  6388. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6389. }
  6390. // 검사결과만
  6391. if(group1.chk_onlytest.value == "Y") {
  6392. ds_send_reqdata.setColumn(nRow, "onlytest", "Y");
  6393. }
  6394. ds_tmpinicert2_iniinfo.clearData();
  6395. // utlf_addLog(ds_grd_outpat_rsrvinfo_filter.saveXML());
  6396. // utlf_addLog(ds_send_reqdata.saveXML());
  6397. //xp code add : col id change!!!execprcpuniqno
  6398. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  6399. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  6400. var oParam = {};
  6401. oParam.id = "TRMRC03016";
  6402. oParam.service = "chrtmngtapp.CopyIssMngt";
  6403. oParam.method = "reqGetEMROutTestList";
  6404. oParam.inds = "rsrvinfo=ds_grd_outpat_rsrvinfo_filter req=ds_send_reqdata";
  6405. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  6406. oParam.async = false;
  6407. oParam.callback = "cf_TRMRC03016";
  6408. tranf_submit(oParam);
  6409. if (arErrorCode.pop("TRMRC03016") > -1)
  6410. {
  6411. /* 이윤주(2015/11/03)
  6412. if( ds_main_otherinfo.getColumn(0, "addimageyn") != "Y" ){
  6413. iviewerIemr.cleanViewer();
  6414. var noimg = "";
  6415. var imgarray = "";
  6416. var certcnt = ds_tmpinicert_iniinfo.rowcount;
  6417. for(var a = 0; a < certcnt ; a++ ){
  6418. var add_imgflag = ds_tmpinicert_iniinfo.getColumn(a, "imgflag");
  6419. var add_formcd = ds_tmpinicert_iniinfo.getColumn(a, "formcd");
  6420. var add_formprogflag = ds_tmpinicert_iniinfo.getColumn(a, "formprogflag");
  6421. if( !utlf_isNull(add_imgflag) ){
  6422. if( add_imgflag != "N" && add_formcd != "Z001" && add_formprogflag != "IMG" ){
  6423. if( a == 0 ){
  6424. noimg = ds_tmpinicert_iniinfo.getColumn(a, "signno");
  6425. }else{
  6426. noimg = noimg + "*" + ds_tmpinicert_iniinfo.getColumn(a, "signno");
  6427. }
  6428. }
  6429. }
  6430. }
  6431. if( !utlf_isNull(noimg) )
  6432. imgarray = noimg.toString().split("*");
  6433. for(var i = 0; i < imgarray.length ; i++ ){
  6434. for(var j = 0; j < certcnt ; j++ ){
  6435. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumn(j, "signno")) && ( imgarray[i] == ds_tmpinicert_iniinfo.getColumn(j, "signno").toString() )){
  6436. var bSucc = ds_tmpinicert_iniinfo.deleteRow(j);
  6437. //ds_tmpinicert_iniinfo.applyChange();
  6438. }
  6439. }
  6440. }
  6441. }
  6442. */
  6443. dsf_copyColInfo(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo);
  6444. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo, "after");
  6445. ds_tmpinicert2_iniinfo.appendData(ds_tmpinicert_iniinfo);
  6446. dsf_setDefaultVal(ds_tmpinicert2_iniinfo, "all");
  6447. }
  6448. btn_reappinfo.enable = false;
  6449. }
  6450. // 입원 : 기록조회
  6451. function fGetEMRInTestList() {
  6452. var supitemindxseq = "";
  6453. var midindxseq = "";
  6454. for(var i = 0; i < grd_inpat.rows; i++ ) {
  6455. if("Y" == ds_grd_inpat.getColumn(i, "chk")) {
  6456. supitemindxseq += ds_grd_inpat.getColumn(i, "supitemindxseq") + ",";
  6457. midindxseq = ds_grd_inpat.getColumn(i, "midindxseq") + ",";
  6458. }
  6459. }
  6460. model.removeNodeset("/root/send/reqdata");
  6461. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/orddd"));
  6462. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/orddd"));
  6463. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/midindxseq"));
  6464. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/pid"));
  6465. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/cretno"));
  6466. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/midissinfo/emrapplist["+ grd_inpat.row +"]/orddeptcd"));
  6467. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6468. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  6469. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  6470. if(isSearchString(supitemindxseq, "19338") || isSearchString(supitemindxseq, "5162")) {
  6471. if(isSearchString(midindxseq, "19698")) { // 처방(운영)
  6472. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6473. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6474. } else if(isSearchString(midindxseq, "18788")) { // 핵의학
  6475. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6476. } else if(isSearchString(midindxseq, "19697")) { // 미생물
  6477. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6478. } else { // 통합검사결과에 포함되는 검사결과
  6479. if(isSearchString(midindxseq, "11137")) { // 진검
  6480. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6481. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6482. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6483. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6484. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6485. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6486. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6487. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6488. } else if(isSearchString(midindxseq, "11136")) { // 영상
  6489. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6490. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6491. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6492. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6493. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6494. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6495. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6496. } else if(isSearchString(midindxseq, "11133")) { // 내시경
  6497. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6498. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6499. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6500. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6501. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6502. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6503. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  6504. } else if(isSearchString(midindxseq, "11135")) { // 기능
  6505. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"))
  6506. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6507. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6508. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6509. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6510. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6511. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  6512. } else {
  6513. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6514. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"));
  6515. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6516. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6517. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6518. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6519. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6520. }
  6521. }
  6522. } else{
  6523. ds_send_reqdata.setColumn(nRow, "depth", "5");
  6524. ds_send_reqdata.setColumn(nRow, "label", model.getValue("/root/main/midissinfo/emrapplist[" + grd_inpat.row + "]/formnm"));
  6525. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6526. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6527. ds_send_reqdata.setColumn(nRow, "condflag", "MID");
  6528. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6529. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6530. }
  6531. if(submit("TRMRC03025")) {
  6532. copyNodeset("/root/tmpinicert2/iniinfo", "/root/tmpinicert/iniinfo");
  6533. fEmrImgRec(); // html
  6534. }
  6535. btn_save.disabled = false;
  6536. btn_update.disabled = true;
  6537. btn_reappinfo.disabled = true;
  6538. }
  6539. // 수진이력
  6540. function fGetPatHist() {
  6541. frmf_setParameter("SPMMR05500_orddeptcd", ds_main_cond.getColumn(0, "orddeptcd"));
  6542. frmf_setParameter("SPMMR05500_pid", ds_main_cond.getColumn(0, "pid"));
  6543. frmf_modal("SPMMR05500", "SPMMR05500", null, null, 1, 10, 10, null, null, null, null, null, "M");
  6544. }
  6545. // 입원결과만
  6546. function fGetEMRTestList() {
  6547. model.removeNodeset("/root/send/reqdata");
  6548. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6549. ds_send_reqdata.setColumn(nRow, "label", "-");
  6550. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6551. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6552. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6553. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6554. if(btn_out.selected) {
  6555. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/outpathistlist/outpathistlist[" + grd_outpat.row + "]/orddd"));
  6556. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6557. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddd"));
  6558. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/pid"));
  6559. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/cretno"));
  6560. ds_send_reqdata.setColumn(nRow, "chosflag", "O");
  6561. ds_send_reqdata.setColumn(nRow, "ioflag", "O");
  6562. ds_send_reqdata.setColumn(nRow, "ordtype", "O");
  6563. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/outpathistlist/outpathistlist["+ grd_outpat.row +"]/orddeptcd"));
  6564. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6565. var rsrvinfo = model.instance1.selectNodes("/root/main/outpathistlist/outpathistlist[chk = 'Y']");
  6566. model.makeValue("/root/send/search/rsrvinfo",getNodeListCSV(rsrvinfo));
  6567. } else if(btn_in.selected) {
  6568. ds_send_reqdata.setColumn(nRow, "orddd", model.getValue("/root/main/inpathistlist/inpathistlist[" + grd_inapplist.row + "]/indd"));
  6569. ds_send_reqdata.setColumn(nRow, "indd", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6570. ds_send_reqdata.setColumn(nRow, "val", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/indd"));
  6571. ds_send_reqdata.setColumn(nRow, "pid", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/pid"));
  6572. ds_send_reqdata.setColumn(nRow, "cretno", model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/cretno"));
  6573. ds_send_reqdata.setColumn(nRow, "chosflag", "I");
  6574. ds_send_reqdata.setColumn(nRow, "ioflag", "I");
  6575. ds_send_reqdata.setColumn(nRow, "ordtype", "I");
  6576. ds_send_reqdata.setColumn(nRow, "orddeptcd",model.getValue("/root/main/inpathistlist/inpathistlist["+ grd_inapplist.row +"]/orddeptcd"));
  6577. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6578. /*ds_main_otherinfo.setColumn(0, "testinfo2", "Y");
  6579. ds_main_otherinfo.setColumn(0, "testinfo6", "Y");
  6580. ds_main_otherinfo.setColumn(0, "testinfo8", "Y");
  6581. ds_main_otherinfo.setColumn(0, "testinfo5", "Y");
  6582. ds_main_otherinfo.setColumn(0, "prcpinfo", "Y");*/
  6583. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6584. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6585. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6586. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6587. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6588. }
  6589. if(chk_testinfo.value == "Y") {
  6590. ds_send_reqdata.setColumn(nRow, "testinfo", "Y");
  6591. for( var i = 2; i < 9 ; i++) {
  6592. ds_main_otherinfo.setColumn(0, "testinfo" + i +"", "Y");
  6593. ds_send_reqdata.setColumn(nRow, "testinfo" + i +"", "Y");
  6594. }
  6595. } else {
  6596. if(chk_testinfo2.value == "Y") {
  6597. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6598. }
  6599. if(chk_testinfo3.value == "Y") {
  6600. ds_send_reqdata.setColumn(nRow, "testinfo3", "Y");
  6601. }
  6602. if(chk_testinfo4.value == "Y") {
  6603. ds_send_reqdata.setColumn(nRow, "testinfo4", "Y");
  6604. }
  6605. if(chk_testinfo5.value == "Y") {
  6606. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6607. }
  6608. if(chk_testinfo6.value == "Y") {
  6609. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6610. }
  6611. if(chk_testinfo7.value == "Y") {
  6612. ds_send_reqdata.setColumn(nRow, "testinfo7", "Y");
  6613. }
  6614. if(chk_testinfo8.value == "Y") {
  6615. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6616. }
  6617. }
  6618. if(chk_prcpinfo.value == "Y") {
  6619. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6620. }
  6621. /*if(param == "PRCP") {
  6622. ds_send_reqdata.setColumn(nRow, "fromdd", model.getValue("/root/main/cond/fromdd"));
  6623. ds_send_reqdata.setColumn(nRow, "todd", model.getValue("/root/main/cond/todd"));
  6624. model.makeValue("")
  6625. }*/
  6626. if (submit("TRMRC03025"))
  6627. {
  6628. }
  6629. btn_save.disabled = false;
  6630. btn_update.disabled = true;
  6631. btn_reappinfo.disabled = true;
  6632. }
  6633. // 처방일만
  6634. function fGetEMRPrcpList() {
  6635. utlf_addLog("***** fGetEMRPrcpList() *****");
  6636. ds_send_reqdata.clearData();
  6637. var nRow = ds_send_reqdata.addRow();
  6638. ds_send_reqdata.setColumn(nRow, "depth", "3");
  6639. ds_send_reqdata.setColumn(nRow, "label", "-");
  6640. ds_send_reqdata.setColumn(nRow, "tabflag", "ALL");
  6641. ds_send_reqdata.setColumn(nRow, "viewflag", "DEPT");
  6642. ds_send_reqdata.setColumn(nRow, "condflag", "ORDDD");
  6643. ds_send_reqdata.setColumn(nRow, "recinfo", "Y");
  6644. ds_send_reqdata.setColumn(nRow, "scrnflag", "prcp");
  6645. ds_send_reqdata.setColumn(nRow, "testinfo2", "Y");
  6646. ds_send_reqdata.setColumn(nRow, "testinfo6", "Y");
  6647. ds_send_reqdata.setColumn(nRow, "testinfo8", "Y");
  6648. ds_send_reqdata.setColumn(nRow, "testinfo5", "Y");
  6649. ds_send_reqdata.setColumn(nRow, "prcpinfo", "Y");
  6650. ds_send_reqdata.setColumn(nRow, "pid", ds_main_cond.getColumn(0, "pid"));
  6651. ds_send_reqdata.setColumn(nRow, "fromdd", ds_main_cond.getColumn(0, "fromdd"));
  6652. ds_send_reqdata.setColumn(nRow, "todd", ds_main_cond.getColumn(0, "todd"));
  6653. ds_send_reqdata.setColumn(nRow, "prcpflag", "Y");
  6654. //xp code add : col id change!!!execprcpuniqno
  6655. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  6656. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  6657. var oParam = {};
  6658. oParam.id = "TRMRC03029";
  6659. oParam.service = "chrtmngtapp.CopyIssMngt";
  6660. oParam.method = "reqGetEMRPrcpList";
  6661. oParam.inds = "req=ds_send_reqdata";
  6662. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  6663. oParam.async = false;
  6664. oParam.callback = "cf_TRMRC03029";
  6665. tranf_submit(oParam);
  6666. }
  6667. // 병동위임장
  6668. function fGetInptRoomInfo() {
  6669. ds_send_reqdata.clearData();
  6670. var nRow = ds_send_reqdata.addRow();
  6671. var iRow = ds_grd_apphist.rowposition;
  6672. ds_send_reqdata.setColumn(nRow, "pid", ds_grd_apphist.getColumn(iRow, "pid"));
  6673. ds_send_reqdata.setColumn(nRow, "orddd", ds_grd_apphist.getColumn(iRow, "orddd"));
  6674. ds_send_reqdata.setColumn(nRow, "cretno", ds_grd_apphist.getColumn(iRow, "cretno"));
  6675. ds_send_reqdata.setColumn(nRow, "formcd", "0000001127");
  6676. var oParam = {};
  6677. oParam.id = "TRMRC03027";
  6678. oParam.service = "chrtmngtapp.CopyIssMngt";
  6679. oParam.method = "reqGetOCRInfo";
  6680. oParam.inds = "req=ds_send_reqdata";
  6681. oParam.outds = "ds_main_cnfmlist=cnfmlist";
  6682. oParam.async = false;
  6683. oParam.callback = "cf_TRMRC03027";
  6684. tranf_submit(oParam);
  6685. if(arErrorCode.pop("TRMRC03027") > -1) {
  6686. ds_main_cond.setColumn(0, "dschdd", ds_main_cnfmlist.getColumn(0, "dschdd"));
  6687. ds_main_cond.setColumn(0, "roomcd", ds_main_cnfmlist.getColumn(0, "roomcd"));
  6688. }
  6689. }
  6690. // 신청된 사본 발급시 이미지 draw
  6691. function fViewer_back()
  6692. {
  6693. if (grd_apphist.rows<= 1) return;
  6694. if (grd_apphist.row < 1) return;
  6695. var iRow = grd_emrapplist.row;
  6696. 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)
  6697. && (grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1)
  6698. ){
  6699. //messageBox("출력할 EMR 서식이 ","I004");
  6700. return;
  6701. }
  6702. /*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){
  6703. messageBox("출력할 EMR 서식이 ","I004");
  6704. return;
  6705. }*/
  6706. var pid = model.getValue("/root/main/cond/pid");
  6707. var certinfo = "";
  6708. var intestinfo = "";
  6709. var outtestinfo = "";
  6710. var sChrtFlag = "";
  6711. // 영상 or EMR : 입원
  6712. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  6713. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  6714. sReckeyNo = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno");
  6715. if(sReckeyNo != 0) {
  6716. if(sChrtFlag == "E"){
  6717. 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") + "▩";
  6718. }else if(sChrtFlag == "I"){
  6719. 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") + "▩";
  6720. }
  6721. }
  6722. }
  6723. // 영상 or EMR : 외래
  6724. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  6725. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  6726. sReckeyNo = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno");
  6727. if(sReckeyNo != 0) {
  6728. if(sChrtFlag == "E"){
  6729. 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") + "▩";
  6730. }else if(sChrtFlag == "I"){
  6731. 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") + "▩";
  6732. }
  6733. }
  6734. }
  6735. // 영상 or EMR : 입원
  6736. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  6737. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  6738. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  6739. if(testflag != "-") {
  6740. if(sChrtFlag == "E"){
  6741. 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")+ "▩";
  6742. }
  6743. }
  6744. }
  6745. // 영상 or EMR : 외래
  6746. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  6747. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  6748. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  6749. if(testflag != "-") {
  6750. if(sChrtFlag == "E"){
  6751. 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")+"▩";
  6752. }
  6753. }
  6754. }
  6755. if (certinfo != "" || intestinfo != "" || outtestinfo != "")
  6756. {
  6757. var certArr = certinfo.split("▩");
  6758. var tmpsignno = ""; //EMR기록 인증번호
  6759. var tmptreatno = ""; //영상차트 키값
  6760. var tmpeformcd = ""; //EMR기록 서식코드
  6761. var tmpiformcd = ""; //영상차트 서식코드
  6762. var ieflag = "";
  6763. var tmpotestflag = "";
  6764. var tmpotestorddd = "";
  6765. var tmpotestcretno = "";
  6766. var tmpotestorddeptcd = "";
  6767. var tmpotestioflag = "";
  6768. var tmptestlist = "";
  6769. var tmpitestflag = "";
  6770. var tmpitestorddd = "";
  6771. var tmpitestcretno = "";
  6772. var tmpitestorddeptcd = "";
  6773. var tmpitestioflag = "";
  6774. var otestorddd = "";
  6775. var otestcretno = "";
  6776. var otestioflag = "";
  6777. var itestorddd = "";
  6778. var itestcretno = "";
  6779. var itestioflag = "";
  6780. var emrpath = "";
  6781. var emrorddate = "";
  6782. var emrformnm = "";
  6783. var emrformcd = "";
  6784. var emrdeptnm = "";
  6785. var emrdeptcd = "";
  6786. var emrpage = "";
  6787. var emrhiddenmsg = "";
  6788. var emrchosflag = "";
  6789. var emrsortno = "";
  6790. for(var i = 0; i < (certArr.length - 1); i++)
  6791. {
  6792. ieflag = certArr[i].split("▦")[0];
  6793. if (ieflag == "I")
  6794. {
  6795. tmptreatno += certArr[i].split("▦")[1]+ ",";
  6796. tmpiformcd += certArr[i].split("▦")[2]+ ",";
  6797. }
  6798. else
  6799. {
  6800. tmpsignno += certArr[i].split("▦")[1]+ ",";
  6801. tmpeformcd += certArr[i].split("▦")[2]+ ",";
  6802. }
  6803. }
  6804. if (tmpsignno != "" || intestinfo != "" || outtestinfo != "") //EMR기록 + 검사결과
  6805. {
  6806. model.removeNodeset("/root/inisend");
  6807. model.removeNodeset("/root/prthist");
  6808. model.makeValue("/root/inisend/signno", tmpsignno.substring(0, tmpsignno.length - 1));
  6809. model.makeValue("/root/inisend/dispall", "Y");
  6810. model.makeValue("/root/inisend/pid", model.getValue("/root/main/cond/pid"));
  6811. var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist[reckeyno = '0' and chrtflag = 'E']");
  6812. var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist[reckeyno = '0' and chrtflag = 'E']");
  6813. model.makeValue("/root/inisend/outinfo" ,getNodeListCSV(outinfo));
  6814. model.makeValue("/root/inisend/ininfo" ,getNodeListCSV(ininfo));
  6815. //if(submit("TRMRI02401"))
  6816. if(submit("TRMRC03020"))
  6817. {
  6818. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  6819. //--20130418 김동준 start(본원과 칠곡 분기)
  6820. var foldernm = "C:/CertrecPrnt" + getUserInfo("dutplceinstcd");
  6821. //var foldernm = "C:/CertrecPrnt";
  6822. //--20130418 김동준 end
  6823. if (certnodeList.length <= 0)
  6824. {
  6825. return;
  6826. }
  6827. //fExistFolder(foldernm);
  6828. var k = "";
  6829. var pid = "";
  6830. var ptnm = "";
  6831. var depthngnm = "";
  6832. var deptengabbr = "";
  6833. var rgstno = "";
  6834. var sa = "";
  6835. var disporddd = "";
  6836. var orddd = "";
  6837. var drid = "";
  6838. var roomcd = "";
  6839. var ordtype = "";
  6840. var chosflag = "";
  6841. var orddeptcd = "";
  6842. var signflag = "";
  6843. var imgflag = "";
  6844. var langflag = "";
  6845. //var tmptreatno = "";
  6846. //var tmpiformcd = "";
  6847. var signno = 0;
  6848. var formcd = "";
  6849. var srcformcd = "";
  6850. var formnm = "";
  6851. var formprogflag = "";
  6852. var recdt = "";
  6853. var wardheader = "";
  6854. var dateheader = "";
  6855. var doctorheader = "";
  6856. var printheader = "";
  6857. var pageheader = "";
  6858. var imgepath = "";
  6859. var formrecdt = "";
  6860. var fstrgstdt = "";
  6861. var lastupdtdt = "";
  6862. var staffconfirmdt = "";
  6863. var fstrgstrusrnm = "";
  6864. var lastupdtrusrnm = "";
  6865. var erdt = "";
  6866. var ervisittm = "";
  6867. var staffnmheader = "";
  6868. var staffnm = "";
  6869. var emrrecusrnmheader = "";
  6870. var emrrecusrnm = "";
  6871. var indd = "";
  6872. var dschdd = "";
  6873. var inorddepthngnm = "";
  6874. var dschorddepthngnm = "";
  6875. var sortno = "";
  6876. var incnt = "";
  6877. var prtnunm = getUserInfo("usernm");
  6878. var prtndeptnm = "";
  6879. //var getuseren = getUserInfo("userengnm");
  6880. var getdate = getCurrentDate();
  6881. var gettime = getCurrentTime();
  6882. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  6883. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  6884. var prtdt = dateprnt + " " + timeprnt;
  6885. /*var item = grdObj.item(grdObj.selectedIndex);
  6886. if(item == null){return;}
  6887. var rowpos = item.index + 1;
  6888. var condflag = model.getValue(ref + "[" + rowpos + "]/condflag");*/
  6889. var sDutplcecd = getUserInfo("dutplcecd");
  6890. srchorgcnt = certnodeList.length;
  6891. // KNUH_20101124_박성호_start_의무기록 부서코드 가져오기
  6892. //if (srchorgcnt < 15 || sDutplcecd == "3230000000")
  6893. if(srchorgcnt < 15 || (model.getValue("/root/temp/hardcd/hardcd[hardcd='" + sDutplcecd + "']/hardcd") != ""))
  6894. {
  6895. // KNUH_20101124_박성호_end
  6896. srchcnt = srchorgcnt;
  6897. }
  6898. else
  6899. {
  6900. srchcnt = 15;
  6901. }
  6902. //openLoadingBar("기록정보");
  6903. fExistFolder(foldernm);
  6904. for(var i = 1; i <= srchcnt; i++)
  6905. {
  6906. signno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signno");
  6907. formcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formcd");
  6908. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/srcformcd");
  6909. formnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formnm");
  6910. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formprogflag");
  6911. recdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdt");
  6912. // 2009.10.27 이경희
  6913. // 사본발행에서 간호경과기록의 기록일자가 보이지 않는 문제점 수정
  6914. recdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdd");
  6915. trans = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/trans");
  6916. pid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid");
  6917. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm");
  6918. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/depthngnm");
  6919. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/deptengabbr");
  6920. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno");
  6921. sa = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sa");
  6922. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/disporddd");
  6923. orddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddd");
  6924. drid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/drid");
  6925. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/roomcd");
  6926. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ordtype");
  6927. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/chosflag");
  6928. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddeptcd");
  6929. signflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signflag");
  6930. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/imgflag");
  6931. langflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/langflag");
  6932. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formrecdt");
  6933. formrecdt = formrecdt.toDate().getDateFormat("YYYY/MM/DD");
  6934. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstdt");
  6935. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtdt");
  6936. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffconfirmdt");
  6937. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  6938. if(fstrgstrusrnm != "")
  6939. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  6940. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  6941. if(lastupdtrusrnm != "")
  6942. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  6943. erdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/erdt");
  6944. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ervisittm");
  6945. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffnm");
  6946. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/emrrecusrnm");
  6947. indd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/indd");
  6948. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschdd");
  6949. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/inorddepthngnm");
  6950. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschorddepthngnm");
  6951. sortno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sortno");
  6952. incnt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/incnt");
  6953. if(incnt != "")
  6954. incnt += " 회차";
  6955. var ininfo = indd + " / " + inorddepthngnm;
  6956. if(erdt != "")
  6957. ininfo += " (응급실 내원일 : " + erdt + ")";
  6958. var dschinfo = dschdd + " / " + dschorddepthngnm;
  6959. var formnmarr = formnm.split("\n");
  6960. var topformnm = "";
  6961. var botformnm = "";
  6962. if (formnmarr.length == 1)
  6963. {
  6964. topformnm = formnmarr[0];
  6965. }
  6966. else if (formnmarr.length == 2)
  6967. {
  6968. topformnm = formnmarr[0];
  6969. botformnm = formnmarr[1];
  6970. }
  6971. else
  6972. {
  6973. topformnm = formnm;
  6974. }
  6975. for(var k = pid.length; k <= 8; k++)
  6976. {
  6977. if(k < 8){
  6978. pid = "0"+pid;
  6979. }
  6980. }
  6981. var str1 = pid.substr(0, 3);
  6982. var str2 = pid.substr(3, 2);
  6983. var str3 = pid.substr(5, 2);
  6984. var str4 = pid.substr(7, 1);
  6985. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  6986. if (chosflag == "O" || chosflag == "S")
  6987. {
  6988. wardheader = "진료과 : ";
  6989. }
  6990. else
  6991. {
  6992. wardheader = "병실 : ";
  6993. }
  6994. if (langflag == "KO")
  6995. {
  6996. if (chosflag == "O" || chosflag == "S")
  6997. {
  6998. wardheader = "진료과 : ";
  6999. }
  7000. else
  7001. {
  7002. wardheader = "병실 : ";
  7003. }
  7004. dateheader = "진료기간 : ";
  7005. doctorheader = "주치의 : ";
  7006. printheader = "출력 : ";
  7007. prtndeptnm = getUserInfo("dutplcenm");
  7008. imgepath = fGetImgPath("KO");
  7009. //imgepath = "com/commonweb/images/biglogo012.jpg"
  7010. pageheader = "페이지 : ";
  7011. }
  7012. else
  7013. {
  7014. if (chosflag == "O" || chosflag == "S")
  7015. {
  7016. wardheader = "Dept : ";
  7017. }
  7018. else
  7019. {
  7020. wardheader = "Room : ";
  7021. }
  7022. dateheader = "Date : ";
  7023. doctorheader = "Doctor : ";
  7024. printheader = "Print date : ";
  7025. prtndeptnm = getUserInfo("deptengnm");
  7026. imgepath = fGetImgPath("EN");
  7027. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  7028. if (prtndeptnm == "" || prtndeptnm == null)
  7029. {
  7030. prtndeptnm = getUserInfo("dutplcenm");
  7031. }
  7032. pageheader = "Page : ";
  7033. }
  7034. ds_datagrid1.setColumn(i, "pid", pid);
  7035. ds_datagrid1.setColumn(i, "signno", signno);
  7036. ds_datagrid1.setColumn(i, "reckind", "01");
  7037. ds_datagrid1.setColumn(i, "readprtflag", "E");
  7038. ds_datagrid1.setColumn(i, "formcd", formcd);
  7039. ds_datagrid1.setColumn(i, "signflag", signflag);
  7040. ds_datagrid1.setColumn(i, "orddd", orddd);
  7041. ds_datagrid1.setColumn(i, "chosflag", chosflag);
  7042. ds_datagrid1.setColumn(i, "refusge", "");
  7043. ds_datagrid1.setColumn(i, "refremark", "");
  7044. if(trans == "")
  7045. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  7046. var ininm = "cmc";
  7047. switch(srcformcd)
  7048. {
  7049. case "0000000001"://외래초진
  7050. case "0000000002"://외래재진
  7051. /* case "0000000003"://입원초진 */
  7052. case "0000000004"://입원경과
  7053. case "0000003325"://DSC기록
  7054. ininm += "_0000000001.ini";
  7055. break;
  7056. case "0000000003"://입원초진 분리 -20100311-kys
  7057. /* 20100309-kys-입원초진 Staff사인 추가-사본 버젼 맞춘후 반영하기로 함-20100310 */
  7058. if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){
  7059. staffnmheader = "◈ Staff작성 및 확인 :";
  7060. if(staffnm != "")
  7061. staffnm += "(" + staffconfirmdt + ")";
  7062. emrrecusrnmheader = "";
  7063. ininm += "_1000000003.ini";
  7064. }else{
  7065. ininm += "_0000000003.ini";
  7066. }
  7067. break;
  7068. case "0000000676"://수술기록
  7069. staffnmheader = "◈ Surgeon :";
  7070. if(staffnm != "")
  7071. staffnm += "(" + staffconfirmdt + ")";
  7072. emrrecusrnmheader = "";
  7073. ininm += "_0000000676.ini";
  7074. break;
  7075. case "0000003169"://Brief OP Note
  7076. staffnmheader = "";
  7077. ininm += "_0000000676.ini";
  7078. break;
  7079. case "0000000680"://입퇴원요약
  7080. staffnmheader = "◈ Staff작성 및 확인 :";
  7081. if(staffnm != "")
  7082. staffnm += "(" + staffconfirmdt + ")";
  7083. emrrecusrnmheader = "◈ 의무기록사 :";
  7084. ininm += "_0000000680.ini";
  7085. break;
  7086. case "0000000679"://응급실기록
  7087. ininm += "_0000000679.ini";
  7088. break;
  7089. default:
  7090. //ininm += "_0000000001.ini";
  7091. if(formprogflag == "-" || formprogflag == "MAIN")
  7092. ininm += "_0000000001.ini";
  7093. else
  7094. ininm += ".ini";
  7095. break;
  7096. }
  7097. //출력메세지 미정의로 임시 막음(2009-06-30 박종훈)
  7098. 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;
  7099. //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;
  7100. var fso = new ActiveXObject("Scripting.FileSystemObject");
  7101. if(signno != 0) {
  7102. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML", true, true);
  7103. }else if(signno == 0) {
  7104. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML", true, true);
  7105. }
  7106. a.WriteLine(trans);
  7107. a.Close();
  7108. if(signno != 0) {
  7109. emrpath += foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML|";
  7110. }else if(signno == 0) {
  7111. emrpath += foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML|";
  7112. }
  7113. //emrorddate += orddd + "|";
  7114. emrorddate += recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  7115. emrformnm += formnm + "|";
  7116. emrformcd += formcd + "|";
  7117. emrdeptnm += deptengabbr + "|";
  7118. emrdeptcd += orddeptcd + "|";
  7119. emrpage += "1|";
  7120. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  7121. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  7122. emrchosflag += chosflag + "|";
  7123. emrsortno += emrsortno + "|";
  7124. }
  7125. model.removeNodeset("/root/temp/inisend");
  7126. //이미지경로
  7127. model.makeValue("/root/temp/inisend/emrpath", emrpath.substring(0, emrpath.length - 1));
  7128. //진료일
  7129. model.makeValue("/root/temp/inisend/emrorddate", emrorddate.substring(0, emrorddate.length - 1));
  7130. //서식명
  7131. model.makeValue("/root/temp/inisend/emrformnm", emrformnm.substring(0, emrformnm.length - 1));
  7132. //서식코드
  7133. model.makeValue("/root/temp/inisend/emrformcd", emrformcd.substring(0, emrformcd.length - 1));
  7134. //진료과
  7135. model.makeValue("/root/temp/inisend/emrdeptnm", emrdeptnm.substring(0, emrdeptnm.length - 1));
  7136. //진료과코드
  7137. model.makeValue("/root/temp/inisend/emrdeptcd", emrdeptcd.substring(0, emrdeptcd.length - 1));
  7138. //페이지
  7139. model.makeValue("/root/temp/inisend/emrpage", emrpage.substring(0, emrpage.length - 1));
  7140. model.makeValue("/root/temp/inisend/emrhiddenmsg", emrhiddenmsg.substring(0, emrhiddenmsg.length - 1));
  7141. model.makeValue("/root/temp/inisend/emrchosflag", emrchosflag.substring(0, emrchosflag.length - 1));
  7142. model.makeValue("/root/temp/inisend/emrsortno", emrsortno.substring(0, emrsortno.length - 1));
  7143. }
  7144. model.refresh();
  7145. //chartview에 넘길 노드값 재구성(영상+EMR)
  7146. var treatvar = "";
  7147. var tsignno = "";
  7148. var temrpath = "";
  7149. var temrorddate = "";
  7150. var temrformnm = "";
  7151. var temrformcd = "";
  7152. var temrdeptnm = "";
  7153. var temrdeptcd = "";
  7154. var temrpage = "";
  7155. var temrhiddenmsg = "";
  7156. var outtestArr = outtestinfo.split("▩"); // 검사결과서식
  7157. var intestArr = intestinfo.split("▩"); // 검사결과서식
  7158. if(certArr.length > 1 ) { //EMR 서식이 있는 경우
  7159. for(var i = 0; i < (certArr.length - 1); i++)
  7160. {
  7161. ieflag = certArr[i].split("▦")[0];
  7162. if (ieflag == "I")
  7163. {
  7164. treatvar = "*" + certArr[i].split("▦")[1] + "-" + certArr[i].split("▦")[2];
  7165. temrpath += treatvar + "|";
  7166. temrorddate += treatvar + "|";
  7167. temrformnm += treatvar + "|";
  7168. temrformcd += treatvar + "|";
  7169. temrdeptnm += treatvar + "|";
  7170. temrdeptcd += treatvar + "|";
  7171. temrpage += treatvar + "|";
  7172. temrhiddenmsg += treatvar + "|";
  7173. }
  7174. else
  7175. {
  7176. tsignno = certArr[i].split("▦")[1];
  7177. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7178. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7179. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7180. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7181. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7182. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7183. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7184. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7185. var filepathnm = "";
  7186. var orddatenm = "";
  7187. var formnmnm = "";
  7188. var formcdnm = "";
  7189. var deptnmnm = "";
  7190. var deptcdnm = "";
  7191. var pagenm = "";
  7192. var hiddnm = "";
  7193. var chosflagnm = "";
  7194. for (var j = 0; j < filepathnmArr.length; j++)
  7195. {
  7196. filepathnm = filepathnmArr[j];
  7197. orddatenm = orddateArr[j];
  7198. formnmnm = formnmArr[j];
  7199. formcdnm = formcdArr[j];
  7200. deptnmnm = deptnmArr[j];
  7201. deptcdnm = deptcdArr[j];
  7202. pagenm = pageArr[j];
  7203. hiddnm = hiddArr[j];
  7204. if(isSearchString(filepathnm, tsignno))
  7205. {
  7206. temrpath += filepathnm + "|";
  7207. temrorddate += orddatenm + "|";
  7208. temrformnm += formnmnm + "|";
  7209. temrformcd += formcdnm + "|";
  7210. temrdeptnm += deptnmnm + "|";
  7211. temrdeptcd += deptcdnm + "|";
  7212. temrpage += pagenm + "|";
  7213. temrhiddenmsg += hiddnm + "|";
  7214. }
  7215. }
  7216. }
  7217. }
  7218. if(outtestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  7219. for(var i = 0; i < (outtestArr.length - 1); i++)
  7220. {
  7221. tformno = outtestArr[i].split("▦")[5] +"_" + outtestArr[i].split("▦")[4] +"_" + outtestArr[i].split("▦")[2];
  7222. //torddd = outtestArr[i].split("▦")[4];
  7223. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7224. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7225. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7226. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7227. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7228. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7229. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7230. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7231. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  7232. for (var j = 0; j < filepathnmArr.length; j++)
  7233. {
  7234. filepathnm = filepathnmArr[j];
  7235. orddatenm = orddateArr[j];
  7236. formnmnm = formnmArr[j];
  7237. formcdnm = formcdArr[j];
  7238. deptnmnm = deptnmArr[j];
  7239. deptcdnm = deptcdArr[j];
  7240. pagenm = pageArr[j];
  7241. hiddnm = hiddArr[j];
  7242. chosflagnm = chosflagArr[j];
  7243. if(chosflagnm == "O") {
  7244. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  7245. {
  7246. temrpath += filepathnm + "|";
  7247. temrorddate += orddatenm + "|";
  7248. temrformnm += formnmnm + "|";
  7249. temrformcd += formcdnm + "|";
  7250. temrdeptnm += deptnmnm + "|";
  7251. temrdeptcd += deptcdnm + "|";
  7252. temrpage += pagenm + "|";
  7253. temrhiddenmsg += hiddnm + "|";
  7254. }
  7255. }
  7256. }
  7257. }
  7258. }
  7259. if(intestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  7260. for(var i = 0; i < (intestArr.length - 1); i++)
  7261. {
  7262. tformno = intestArr[i].split("▦")[5] + "_" + intestArr[i].split("▦")[4] + "_" + intestArr[i].split("▦")[2];
  7263. //torddd = intestArr[i].split("▦")[4];
  7264. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7265. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7266. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7267. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7268. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7269. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7270. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7271. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7272. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  7273. for (var j = 0; j < filepathnmArr.length; j++)
  7274. {
  7275. filepathnm = filepathnmArr[j];
  7276. orddatenm = orddateArr[j];
  7277. formnmnm = formnmArr[j];
  7278. formcdnm = formcdArr[j];
  7279. deptnmnm = deptnmArr[j];
  7280. deptcdnm = deptcdArr[j];
  7281. pagenm = pageArr[j];
  7282. hiddnm = hiddArr[j];
  7283. chosflagnm = chosflagArr[j];
  7284. if(chosflagnm == "I") {
  7285. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  7286. {
  7287. temrpath += filepathnm + "|";
  7288. temrorddate += orddatenm + "|";
  7289. temrformnm += formnmnm + "|";
  7290. temrformcd += formcdnm + "|";
  7291. temrdeptnm += deptnmnm + "|";
  7292. temrdeptcd += deptcdnm + "|";
  7293. temrpage += pagenm + "|";
  7294. temrhiddenmsg += hiddnm + "|";
  7295. }
  7296. }
  7297. }
  7298. }
  7299. }
  7300. //sortNodeList("/root/main/grid01/row", "a", "asc");
  7301. } else { // 검사결과서식만 있는 경우
  7302. if(outtestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  7303. for(var i = 0; i < (outtestArr.length - 1); i++)
  7304. {
  7305. tformno = outtestArr[i].split("▦")[5] +"_" + outtestArr[i].split("▦")[4] +"_" + outtestArr[i].split("▦")[2];
  7306. //tformno = outtestArr[i].split("▦")[2];
  7307. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7308. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7309. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7310. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7311. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7312. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7313. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7314. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7315. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  7316. for (var j = 0; j < filepathnmArr.length; j++)
  7317. {
  7318. filepathnm = filepathnmArr[j];
  7319. orddatenm = orddateArr[j];
  7320. formnmnm = formnmArr[j];
  7321. formcdnm = formcdArr[j];
  7322. deptnmnm = deptnmArr[j];
  7323. deptcdnm = deptcdArr[j];
  7324. pagenm = pageArr[j];
  7325. hiddnm = hiddArr[j];
  7326. chosflagnm = chosflagArr[j];
  7327. if(chosflagnm == "O") {
  7328. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  7329. {
  7330. temrpath += filepathnm + "|";
  7331. temrorddate += orddatenm + "|";
  7332. temrformnm += formnmnm + "|";
  7333. temrformcd += formcdnm + "|";
  7334. temrdeptnm += deptnmnm + "|";
  7335. temrdeptcd += deptcdnm + "|";
  7336. temrpage += pagenm + "|";
  7337. temrhiddenmsg += hiddnm + "|";
  7338. }
  7339. }
  7340. }
  7341. }
  7342. }
  7343. if(intestArr.length > 1) { // reckeyno 가 없는 서식이 있음
  7344. for(var i = 0; i < (intestArr.length - 1); i++)
  7345. {
  7346. //tformno = intestArr[i].split("▦")[2];
  7347. tformno = intestArr[i].split("▦")[5] + "_" + intestArr[i].split("▦")[4] + "_" + intestArr[i].split("▦")[2];
  7348. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7349. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7350. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7351. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7352. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7353. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7354. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7355. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7356. var chosflagArr = model.getValue("/root/temp/inisend/emrchosflag").split("|");
  7357. for (var j = 0; j < filepathnmArr.length; j++)
  7358. {
  7359. filepathnm = filepathnmArr[j];
  7360. orddatenm = orddateArr[j];
  7361. formnmnm = formnmArr[j];
  7362. formcdnm = formcdArr[j];
  7363. deptnmnm = deptnmArr[j];
  7364. deptcdnm = deptcdArr[j];
  7365. pagenm = pageArr[j];
  7366. hiddnm = hiddArr[j];
  7367. chosflagnm = chosflagArr[j];
  7368. if(chosflagnm == "I") {
  7369. if(isSearchString(filepathnm, tformno)) // formcd 만 있는 경우
  7370. {
  7371. temrpath += filepathnm + "|";
  7372. temrorddate += orddatenm + "|";
  7373. temrformnm += formnmnm + "|";
  7374. temrformcd += formcdnm + "|";
  7375. temrdeptnm += deptnmnm + "|";
  7376. temrdeptcd += deptcdnm + "|";
  7377. temrpage += pagenm + "|";
  7378. temrhiddenmsg += hiddnm + "|";
  7379. }
  7380. }
  7381. }
  7382. }
  7383. }
  7384. }
  7385. model.resetInstanceNode("/root/send/iemr");
  7386. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  7387. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  7388. //이미지경로
  7389. model.makeValue("/root/inisend/emrpath", temrpath.substring(0, temrpath.length - 1));
  7390. iviewerIemr.model.setValue("/root/main/emrpath", model.getValue("/root/inisend/emrpath"));
  7391. //진료일
  7392. model.makeValue("/root/inisend/emrorddate", temrorddate.substring(0, temrorddate.length - 1));
  7393. iviewerIemr.model.setValue("/root/main/emrorddate", model.getValue("/root/inisend/emrorddate"));
  7394. //서식명
  7395. model.makeValue("/root/inisend/emrformnm", temrformnm.substring(0, temrformnm.length - 1));
  7396. iviewerIemr.model.setValue("/root/main/emrformnm", model.getValue("/root/inisend/emrformnm"));
  7397. //서식코드
  7398. model.makeValue("/root/inisend/emrformcd", temrformcd.substring(0, temrformcd.length - 1));
  7399. iviewerIemr.model.setValue("/root/main/emrformcd", model.getValue("/root/inisend/emrformcd"));
  7400. //진료과
  7401. model.makeValue("/root/inisend/emrdeptnm", temrdeptnm.substring(0, temrdeptnm.length - 1));
  7402. iviewerIemr.model.setValue("/root/main/emrdeptnm", model.getValue("/root/inisend/emrdeptnm"));
  7403. //진료과코드
  7404. model.makeValue("/root/inisend/emrdeptcd", temrdeptcd.substring(0, temrdeptcd.length - 1));
  7405. iviewerIemr.model.setValue("/root/main/emrdeptcd", model.getValue("/root/inisend/emrdeptcd"));
  7406. //페이지
  7407. model.makeValue("/root/inisend/emrpage", temrpage.substring(0, temrpage.length - 1));
  7408. iviewerIemr.model.setValue("/root/main/emrpage", model.getValue("/root/inisend/emrpage"));
  7409. //히든 메세지
  7410. model.makeValue("/root/inisend/emrhiddenmsg", temrhiddenmsg.substring(0, temrhiddenmsg.length - 1));
  7411. iviewerIemr.model.setValue("/root/main/emrhiddenmsg", model.getValue("/root/inisend/emrhiddenmsg"));
  7412. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  7413. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  7414. if (iviewerIemr.window.javascript.downloadChart() == true)
  7415. {
  7416. // 뷰어 모드 유지 기능 추가 - 20080417
  7417. var ViewMode;
  7418. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  7419. if (ViewMode == null || ViewMode == "")
  7420. {
  7421. iviewerIemr.window.javascript.setupChart("ChartView");
  7422. }
  7423. else
  7424. {
  7425. iviewerIemr.window.javascript.setupChart(ViewMode);
  7426. }
  7427. }
  7428. }
  7429. }
  7430. }
  7431. // 신청된 사본 발급시 이미지 draw
  7432. function fViewer()
  7433. {
  7434. if (grd_apphist.rows<= 1) return;
  7435. if (grd_apphist.row < 1) return;
  7436. var iRow = grd_emrapplist.row;
  7437. 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)
  7438. && (grd_outapplist.findRow("E", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1 && grd_outapplist.findRow("I", 1, grd_outapplist.colRef("chrtflag"), false, false) == -1)
  7439. ){
  7440. //messageBox("출력할 EMR 서식이 ","I004");
  7441. return;
  7442. }
  7443. /*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){
  7444. messageBox("출력할 EMR 서식이 ","I004");
  7445. return;
  7446. }*/
  7447. var pid = model.getValue("/root/main/cond/pid");
  7448. var certinfo = "";
  7449. var intestinfo = "";
  7450. var outtestinfo = "";
  7451. var sChrtFlag = "";
  7452. lf_getHardCDList("N", 3801, null, ds_init_pidynhcd);
  7453. //mmbfGetHardCodeInfo("/root/send/reqdata", "/root/init/pidynhcd", 3801); // 환자 등록번호에 '0' 처리여부
  7454. var pidynhcd = model.getValue("/root/init/pidynhcd/hardcd/hardcd");
  7455. // 영상 or EMR : 입원
  7456. for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  7457. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  7458. sReckeyNo = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/reckeyno");
  7459. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  7460. if(sReckeyNo != 0) {
  7461. if(sChrtFlag == "E"){
  7462. 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") + "▩";
  7463. }else if(sChrtFlag == "I"){
  7464. 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") + "▩";
  7465. }
  7466. }
  7467. else if(testflag != "-") {
  7468. if(sChrtFlag == "E"){
  7469. 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")+ "▩";
  7470. }
  7471. }
  7472. }
  7473. // 영상 or EMR : 외래
  7474. for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  7475. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  7476. sReckeyNo = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/reckeyno");
  7477. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  7478. if(sReckeyNo != 0) {
  7479. if(sChrtFlag == "E" && testflag != "T"){
  7480. 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") + "▩";
  7481. }else if(sChrtFlag == "I"){
  7482. 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") + "▩";
  7483. }
  7484. }
  7485. else if(testflag != "-" && testflag != "T") {
  7486. if(sChrtFlag == "E"){
  7487. 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")+"▩";
  7488. }
  7489. }
  7490. }
  7491. //alert(certinfo);
  7492. // 영상 or EMR : 입원
  7493. /* for(var rowCnt = 1; rowCnt <= grd_emrapplist.rows; rowCnt++){
  7494. sChrtFlag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/chrtflag");
  7495. testflag = model.getValue("/root/main/issinfo/emrapplist["+rowCnt+"]/testflag");
  7496. if(testflag != "-") {
  7497. if(sChrtFlag == "E"){
  7498. 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")+ "▩";
  7499. }
  7500. }
  7501. }*/
  7502. // 영상 or EMR : 외래
  7503. /*for(var rowCnt = 1; rowCnt <= grd_outapplist.rows; rowCnt++){
  7504. sChrtFlag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/chrtflag");
  7505. testflag = model.getValue("/root/temp/issinfo/emrlist["+rowCnt+"]/testflag");
  7506. if(testflag != "-") {
  7507. if(sChrtFlag == "E"){
  7508. 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")+"▩";
  7509. }
  7510. }
  7511. }*/
  7512. //alert(certinfo);
  7513. if (certinfo != "")
  7514. {
  7515. var certArr = certinfo.split("▩");
  7516. var tmpsignno = ""; //EMR기록 인증번호
  7517. var tmptreatno = ""; //영상차트 키값
  7518. var tmpeformcd = ""; //EMR기록 서식코드
  7519. var tmpiformcd = ""; //영상차트 서식코드
  7520. var ieflag = "";
  7521. var tmpotestflag = "";
  7522. var tmpotestorddd = "";
  7523. var tmpotestcretno = "";
  7524. var tmpotestorddeptcd = "";
  7525. var tmpotestioflag = "";
  7526. var tmptestlist = "";
  7527. var tmpitestflag = "";
  7528. var tmpitestorddd = "";
  7529. var tmpitestcretno = "";
  7530. var tmpitestorddeptcd = "";
  7531. var tmpitestioflag = "";
  7532. var otestorddd = "";
  7533. var otestcretno = "";
  7534. var otestioflag = "";
  7535. var itestorddd = "";
  7536. var itestcretno = "";
  7537. var itestioflag = "";
  7538. var emrpath = "";
  7539. var emrorddate = "";
  7540. var emrformnm = "";
  7541. var emrformcd = "";
  7542. var emrdeptnm = "";
  7543. var emrdeptcd = "";
  7544. var emrpage = "";
  7545. var emrhiddenmsg = "";
  7546. var emrchosflag = "";
  7547. var emrsortno = "";
  7548. for(var i = 0; i < (certArr.length - 1); i++)
  7549. {
  7550. ieflag = certArr[i].split("▦")[0];
  7551. if (ieflag == "I")
  7552. {
  7553. tmptreatno += certArr[i].split("▦")[1]+ ",";
  7554. tmpiformcd += certArr[i].split("▦")[2]+ ",";
  7555. }
  7556. else
  7557. {
  7558. tmpsignno += certArr[i].split("▦")[1]+ ",";
  7559. tmpeformcd += certArr[i].split("▦")[2]+ ",";
  7560. }
  7561. }
  7562. if (tmpsignno != "") //EMR기록 + 검사결과
  7563. {
  7564. model.removeNodeset("/root/inisend");
  7565. model.removeNodeset("/root/prthist");
  7566. model.makeValue("/root/inisend/signno", tmpsignno.substring(0, tmpsignno.length - 1));
  7567. model.makeValue("/root/inisend/dispall", "Y");
  7568. model.makeValue("/root/inisend/pid", model.getValue("/root/main/cond/pid"));
  7569. var outinfo = model.instance1.selectNodes("/root/temp/issinfo/emrlist[reckeyno = '0' and chrtflag = 'E' and testflag != 'T']");
  7570. var ininfo = model.instance1.selectNodes("/root/main/issinfo/emrapplist[reckeyno = '0' and chrtflag = 'E']");
  7571. model.makeValue("/root/inisend/outinfo" ,getNodeListCSV(outinfo));
  7572. model.makeValue("/root/inisend/ininfo" ,getNodeListCSV(ininfo));
  7573. //if(submit("TRMRI02401"))
  7574. if(submit("TRMRC03020"))
  7575. {
  7576. var certnodeList = instance1.selectNodes("/root/tmpinicert/iniinfo");
  7577. //--20130418 김동준 start(본원과 칠곡 분기)
  7578. var foldernm = "C:/CertrecPrnt" + getUserInfo("dutplceinstcd");
  7579. //var foldernm = "C:/CertrecPrnt";
  7580. //--20130418 김동준 end
  7581. if (certnodeList.length <= 0)
  7582. {
  7583. return;
  7584. }
  7585. //fExistFolder(foldernm);
  7586. var k = "";
  7587. var pid = "";
  7588. var ptnm = "";
  7589. var depthngnm = "";
  7590. var deptengabbr = "";
  7591. var rgstno = "";
  7592. var sa = "";
  7593. var disporddd = "";
  7594. var orddd = "";
  7595. var drid = "";
  7596. var roomcd = "";
  7597. var ordtype = "";
  7598. var chosflag = "";
  7599. var orddeptcd = "";
  7600. var signflag = "";
  7601. var imgflag = "";
  7602. var langflag = "";
  7603. //var tmptreatno = "";
  7604. //var tmpiformcd = "";
  7605. var signno = 0;
  7606. var formcd = "";
  7607. var srcformcd = "";
  7608. var formnm = "";
  7609. var formprogflag = "";
  7610. var recdt = "";
  7611. var wardheader = "";
  7612. var dateheader = "";
  7613. var doctorheader = "";
  7614. var printheader = "";
  7615. var pageheader = "";
  7616. var imgepath = "";
  7617. var formrecdt = "";
  7618. var fstrgstdt = "";
  7619. var lastupdtdt = "";
  7620. var staffconfirmdt = "";
  7621. var fstrgstrusrnm = "";
  7622. var lastupdtrusrnm = "";
  7623. var erdt = "";
  7624. var ervisittm = "";
  7625. var staffnmheader = "";
  7626. var staffnm = "";
  7627. var emrrecusrnmheader = "";
  7628. var emrrecusrnm = "";
  7629. var indd = "";
  7630. var dschdd = "";
  7631. var inorddepthngnm = "";
  7632. var dschorddepthngnm = "";
  7633. var sortno = "";
  7634. var incnt = "";
  7635. var prtnunm = getUserInfo("usernm");
  7636. var prtndeptnm = "";
  7637. //var getuseren = getUserInfo("userengnm");
  7638. var getdate = getCurrentDate();
  7639. var gettime = getCurrentTime();
  7640. var dateprnt = getdate.substr(0, 4) + "/" + getdate.substr(4, 2) + "/" + getdate.substr(6, 2);
  7641. var timeprnt = gettime.substr(0, 2) + ":" + gettime.substr(2, 2) + ":" + gettime.substr(4, 2);
  7642. var prtdt = dateprnt + " " + timeprnt;
  7643. /*var item = grdObj.item(grdObj.selectedIndex);
  7644. if(item == null){return;}
  7645. var rowpos = item.index + 1;
  7646. var condflag = model.getValue(ref + "[" + rowpos + "]/condflag");*/
  7647. var sDutplcecd = getUserInfo("dutplcecd");
  7648. srchorgcnt = certnodeList.length;
  7649. srchcnt = srchorgcnt;
  7650. /*if (srchorgcnt < 15 || sDutplcecd == "3230000000")
  7651. srchcnt = srchorgcnt;
  7652. else
  7653. srchcnt = 15;*/
  7654. //openLoadingBar("기록정보");
  7655. fExistFolder(foldernm);
  7656. for(var i = 1; i <= srchcnt; i++)
  7657. {
  7658. signno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signno");
  7659. formcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formcd");
  7660. srcformcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/srcformcd");
  7661. formnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formnm");
  7662. formprogflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formprogflag");
  7663. recdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdt");
  7664. // 2009.10.27 이경희
  7665. // 사본발행에서 간호경과기록의 기록일자가 보이지 않는 문제점 수정
  7666. recdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/recdd");
  7667. trans = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/trans");
  7668. pid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/pid");
  7669. ptnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ptnm");
  7670. depthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/depthngnm");
  7671. deptengabbr = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/deptengabbr");
  7672. rgstno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/rgstno");
  7673. sa = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sa");
  7674. disporddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/disporddd");
  7675. orddd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddd");
  7676. drid = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/drid");
  7677. roomcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/roomcd");
  7678. ordtype = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ordtype");
  7679. chosflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/chosflag");
  7680. orddeptcd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/orddeptcd");
  7681. signflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/signflag");
  7682. imgflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/imgflag");
  7683. langflag = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/langflag");
  7684. formrecdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/formrecdt");
  7685. formrecdt = formrecdt.toDate().getDateFormat("YYYY/MM/DD");
  7686. fstrgstdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstdt");
  7687. lastupdtdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtdt");
  7688. staffconfirmdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffconfirmdt");
  7689. fstrgstrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/fstrgstrusrnm");
  7690. /* 20100407-kys-작성자일시 주석처리.
  7691. if(fstrgstrusrnm != "")
  7692. fstrgstrusrnm = fstrgstrusrnm + " (" + fstrgstdt + ")";
  7693. */
  7694. lastupdtrusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/lastupdtrusrnm");
  7695. /* 20100407-kys-작성자일시 주석처리.
  7696. if(lastupdtrusrnm != "")
  7697. lastupdtrusrnm = lastupdtrusrnm + " (" + lastupdtdt + ")";
  7698. */
  7699. erdt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/erdt");
  7700. ervisittm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/ervisittm");
  7701. staffnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/staffnm");
  7702. emrrecusrnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/emrrecusrnm");
  7703. indd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/indd");
  7704. dschdd = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschdd");
  7705. inorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/inorddepthngnm");
  7706. dschorddepthngnm = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/dschorddepthngnm");
  7707. sortno = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/sortno");
  7708. incnt = model.getValue("/root/tmpinicert/iniinfo[" + i + "]/incnt");
  7709. if(incnt != "")
  7710. incnt += " 회차";
  7711. var ininfo = indd + " / " + inorddepthngnm;
  7712. if(erdt != "")
  7713. ininfo += " (응급실 내원일 : " + erdt + ")";
  7714. var dschinfo = dschdd + " / " + dschorddepthngnm;
  7715. var formnmarr = formnm.split("\n");
  7716. var topformnm = "";
  7717. var botformnm = "";
  7718. if (formnmarr.length == 1)
  7719. {
  7720. topformnm = formnmarr[0];
  7721. }
  7722. else if (formnmarr.length == 2)
  7723. {
  7724. topformnm = formnmarr[0];
  7725. botformnm = formnmarr[1];
  7726. }
  7727. else
  7728. {
  7729. topformnm = formnm;
  7730. }
  7731. if (pidynhcd == "Y")
  7732. {
  7733. for(var k = pid.length; k <= 8; k++)
  7734. {
  7735. if(k < 8){
  7736. pid = "0"+pid;
  7737. }
  7738. }
  7739. var str1 = pid.substr(0, 3);
  7740. var str2 = pid.substr(3, 2);
  7741. var str3 = pid.substr(5, 2);
  7742. var str4 = pid.substr(7, 1);
  7743. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  7744. }
  7745. else
  7746. {
  7747. tmppid = pid;
  7748. }
  7749. /*
  7750. for(var k = pid.length; k <= 8; k++)
  7751. {
  7752. if(k < 8){
  7753. pid = "0"+pid;
  7754. }
  7755. }
  7756. var str1 = pid.substr(0, 3);
  7757. var str2 = pid.substr(3, 2);
  7758. var str3 = pid.substr(5, 2);
  7759. var str4 = pid.substr(7, 1);
  7760. var tmppid = str1 + " " + str2 + " " + str3 + "-" + str4;
  7761. */
  7762. if (chosflag == "O" || chosflag == "S")
  7763. {
  7764. wardheader = "진료과 : ";
  7765. }
  7766. else
  7767. {
  7768. wardheader = "병실 : ";
  7769. }
  7770. if (langflag == "KO")
  7771. {
  7772. if (chosflag == "O" || chosflag == "S")
  7773. {
  7774. wardheader = "진료과 : ";
  7775. }
  7776. else
  7777. {
  7778. wardheader = "병실 : ";
  7779. }
  7780. dateheader = "진료기간 : ";
  7781. doctorheader = "주치의 : ";
  7782. printheader = "출력 : ";
  7783. prtndeptnm = getUserInfo("dutplcenm");
  7784. imgepath = fGetImgPath("KO");
  7785. //imgepath = "com/commonweb/images/biglogo012.jpg"
  7786. pageheader = "페이지 : ";
  7787. }
  7788. else
  7789. {
  7790. if (chosflag == "O" || chosflag == "S")
  7791. {
  7792. wardheader = "Dept : ";
  7793. }
  7794. else
  7795. {
  7796. wardheader = "Room : ";
  7797. }
  7798. dateheader = "Date : ";
  7799. doctorheader = "Doctor : ";
  7800. printheader = "Print date : ";
  7801. prtndeptnm = getUserInfo("deptengnm");
  7802. imgepath = fGetImgPath("EN");
  7803. //imgepath = "com/commonweb/images/biglogo012e.jpg"
  7804. if (prtndeptnm == "" || prtndeptnm == null)
  7805. {
  7806. prtndeptnm = getUserInfo("dutplcenm");
  7807. }
  7808. pageheader = "Page : ";
  7809. }
  7810. ds_datagrid1.setColumn(i, "pid", pid);
  7811. ds_datagrid1.setColumn(i, "signno", signno);
  7812. ds_datagrid1.setColumn(i, "reckind", "01");
  7813. ds_datagrid1.setColumn(i, "readprtflag", "E");
  7814. ds_datagrid1.setColumn(i, "formcd", formcd);
  7815. ds_datagrid1.setColumn(i, "signflag", signflag);
  7816. ds_datagrid1.setColumn(i, "orddd", orddd);
  7817. ds_datagrid1.setColumn(i, "chosflag", chosflag);
  7818. ds_datagrid1.setColumn(i, "refusge", "");
  7819. ds_datagrid1.setColumn(i, "refremark", "");
  7820. if(trans == "")
  7821. trans = "<html><head><title>출력화면 구현중입니다.</title></head><body>출력화면 구현중입니다.</body></html>";
  7822. var ininm = "cmc";
  7823. switch(srcformcd)
  7824. {
  7825. case "0000000001"://외래초진
  7826. case "0000000002"://외래재진
  7827. /* case "0000000003"://입원초진 */
  7828. case "0000000004"://입원경과
  7829. case "0000003325"://DSC기록
  7830. ininm += "_0000000001.ini";
  7831. break;
  7832. case "0000000003"://입원초진 분리 -20100311-kys
  7833. /* 20100309-kys-입원초진 Staff사인 추가-사본 버젼 맞춘후 반영하기로 함-20100310 */
  7834. if(getUserInfo("dutplceinstcd") == "012" && orddd >= "20100316"){
  7835. staffnmheader = "◈ Staff작성 및 확인 :";
  7836. /* 20100407-kys-작성자일시 주석처리.
  7837. if(staffnm != "")
  7838. staffnm += "(" + staffconfirmdt + ")";
  7839. */
  7840. emrrecusrnmheader = "";
  7841. ininm += "_1000000003.ini";
  7842. }else{
  7843. ininm += "_0000000003.ini";
  7844. }
  7845. break;
  7846. case "0000000676"://수술기록
  7847. staffnmheader = "◈ Surgeon :";
  7848. /*
  7849. if(staffnm != "")
  7850. staffnm += "(" + staffconfirmdt + ")";
  7851. */
  7852. emrrecusrnmheader = "";
  7853. ininm += "_0000000676.ini";
  7854. break;
  7855. case "0000003169"://Brief OP Note
  7856. staffnmheader = "";
  7857. ininm += "_0000000676.ini";
  7858. break;
  7859. case "0000000680"://입퇴원요약
  7860. staffnmheader = "◈ Staff작성 및 확인 :";
  7861. /*
  7862. if(staffnm != "")
  7863. staffnm += "(" + staffconfirmdt + ")";
  7864. */
  7865. emrrecusrnmheader = "◈ 의무기록사 :";
  7866. ininm += "_0000000680.ini";
  7867. break;
  7868. case "0000000679"://응급실기록
  7869. ininm += "_0000000679.ini";
  7870. break;
  7871. default:
  7872. //ininm += "_0000000001.ini";
  7873. if(formprogflag == "-" || formprogflag == "MAIN")
  7874. ininm += "_0000000001.ini";
  7875. else
  7876. ininm += ".ini";
  7877. break;
  7878. }
  7879. //출력메세지 미정의로 임시 막음(2009-06-30 박종훈)
  7880. 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;
  7881. //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;
  7882. var fso = new ActiveXObject("Scripting.FileSystemObject");
  7883. if(signno != 0) {
  7884. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML", true, true);
  7885. }else if(signno == 0) {
  7886. var a = fso.CreateTextFile(foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML", true, true);
  7887. }
  7888. a.WriteLine(trans);
  7889. a.Close();
  7890. if(signno != 0) {
  7891. emrpath += foldernm + "\\" + chosflag + "_" + signno + "_" + formcd + ".HTML|";
  7892. }else if(signno == 0) {
  7893. emrpath += foldernm + "\\" + chosflag + "_" + orddd + "_" + formcd + ".HTML|";
  7894. }
  7895. //emrorddate += orddd + "|";
  7896. emrorddate += recdd + "|"; //기록일을 보여달라는 의료정보팀 요청
  7897. emrformnm += formnm + "|";
  7898. emrformcd += formcd + "|";
  7899. emrdeptnm += deptengabbr + "|";
  7900. emrdeptcd += orddeptcd + "|";
  7901. emrpage += "1|";
  7902. emrhiddenmsg += formcd + "▦" + signno + "▦" + formnm + "▦" + chosflag + "▦" +pid + "▦" + ptnm + "▦" + deptengabbr
  7903. + "▦" + sa + "▦" + rgstno + "▦" + disporddd + "▦" + drid + "▦" + roomcd + "▦" + disporddd + "▦" + ordtype + "▦" + "E|";
  7904. emrchosflag += chosflag + "|";
  7905. }
  7906. model.removeNodeset("/root/temp/inisend");
  7907. //이미지경로
  7908. model.makeValue("/root/temp/inisend/emrpath", emrpath.substring(0, emrpath.length - 1));
  7909. //진료일
  7910. model.makeValue("/root/temp/inisend/emrorddate", emrorddate.substring(0, emrorddate.length - 1));
  7911. //서식명
  7912. model.makeValue("/root/temp/inisend/emrformnm", emrformnm.substring(0, emrformnm.length - 1));
  7913. //서식코드
  7914. model.makeValue("/root/temp/inisend/emrformcd", emrformcd.substring(0, emrformcd.length - 1));
  7915. //진료과
  7916. model.makeValue("/root/temp/inisend/emrdeptnm", emrdeptnm.substring(0, emrdeptnm.length - 1));
  7917. //진료과코드
  7918. model.makeValue("/root/temp/inisend/emrdeptcd", emrdeptcd.substring(0, emrdeptcd.length - 1));
  7919. //페이지
  7920. model.makeValue("/root/temp/inisend/emrpage", emrpage.substring(0, emrpage.length - 1));
  7921. model.makeValue("/root/temp/inisend/emrhiddenmsg", emrhiddenmsg.substring(0, emrhiddenmsg.length - 1));
  7922. model.makeValue("/root/temp/inisend/emrchosflag", emrchosflag.substring(0, emrchosflag.length - 1));
  7923. }
  7924. model.refresh();
  7925. //chartview에 넘길 노드값 재구성(영상+EMR)
  7926. var treatvar = "";
  7927. var tsignno = "";
  7928. var temrpath = "";
  7929. var temrorddate = "";
  7930. var temrformnm = "";
  7931. var temrformcd = "";
  7932. var temrdeptnm = "";
  7933. var temrdeptcd = "";
  7934. var temrpage = "";
  7935. var temrhiddenmsg = "";
  7936. //var outtestArr = outtestinfo.split("▩"); // 검사결과서식
  7937. //var intestArr = intestinfo.split("▩"); // 검사결과서식
  7938. if(certArr.length > 1 ) { //EMR 서식이 있는 경우
  7939. for(var i = 0; i < (certArr.length - 1); i++)
  7940. {
  7941. ieflag = certArr[i].split("▦")[0];
  7942. if (ieflag == "I")
  7943. {
  7944. treatvar = "*" + certArr[i].split("▦")[1] + "-" + certArr[i].split("▦")[2];
  7945. temrpath += treatvar + "|";
  7946. temrorddate += treatvar + "|";
  7947. temrformnm += treatvar + "|";
  7948. temrformcd += treatvar + "|";
  7949. temrdeptnm += treatvar + "|";
  7950. temrdeptcd += treatvar + "|";
  7951. temrpage += treatvar + "|";
  7952. temrhiddenmsg += treatvar + "|";
  7953. }
  7954. else
  7955. {
  7956. tsignno = certArr[i].split("▦")[3] +"_" + certArr[i].split("▦")[1] +"_" + certArr[i].split("▦")[2];
  7957. tformno = certArr[i].split("▦")[5] +"_" + certArr[i].split("▦")[4] +"_" + certArr[i].split("▦")[2];
  7958. var filepathnmArr = model.getValue("/root/temp/inisend/emrpath").split("|");
  7959. var orddateArr = model.getValue("/root/temp/inisend/emrorddate").split("|");
  7960. var formnmArr = model.getValue("/root/temp/inisend/emrformnm").split("|");
  7961. var formcdArr = model.getValue("/root/temp/inisend/emrformcd").split("|");
  7962. var deptnmArr = model.getValue("/root/temp/inisend/emrdeptnm").split("|");
  7963. var deptcdArr = model.getValue("/root/temp/inisend/emrdeptcd").split("|");
  7964. var pageArr = model.getValue("/root/temp/inisend/emrpage").split("|");
  7965. var hiddArr = model.getValue("/root/temp/inisend/emrhiddenmsg").split("|");
  7966. var filepathnm = "";
  7967. var orddatenm = "";
  7968. var formnmnm = "";
  7969. var formcdnm = "";
  7970. var deptnmnm = "";
  7971. var deptcdnm = "";
  7972. var pagenm = "";
  7973. var hiddnm = "";
  7974. var chosflagnm = "";
  7975. for (var j = 0; j < filepathnmArr.length; j++)
  7976. {
  7977. filepathnm = filepathnmArr[j];
  7978. orddatenm = orddateArr[j];
  7979. formnmnm = formnmArr[j];
  7980. formcdnm = formcdArr[j];
  7981. deptnmnm = deptnmArr[j];
  7982. deptcdnm = deptcdArr[j];
  7983. pagenm = pageArr[j];
  7984. hiddnm = hiddArr[j];
  7985. if(isSearchString(filepathnm, tsignno))
  7986. {
  7987. temrpath += filepathnm + "|";
  7988. temrorddate += orddatenm + "|";
  7989. temrformnm += formnmnm + "|";
  7990. temrformcd += formcdnm + "|";
  7991. temrdeptnm += deptnmnm + "|";
  7992. temrdeptcd += deptcdnm + "|";
  7993. temrpage += pagenm + "|";
  7994. temrhiddenmsg += hiddnm + "|";
  7995. } else if(isSearchString(filepathnm, tformno)) {
  7996. temrpath += filepathnm + "|";
  7997. temrorddate += orddatenm + "|";
  7998. temrformnm += formnmnm + "|";
  7999. temrformcd += formcdnm + "|";
  8000. temrdeptnm += deptnmnm + "|";
  8001. temrdeptcd += deptcdnm + "|";
  8002. temrpage += pagenm + "|";
  8003. temrhiddenmsg += hiddnm + "|";
  8004. }
  8005. }
  8006. }
  8007. }
  8008. }
  8009. model.resetInstanceNode("/root/send/iemr");
  8010. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  8011. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  8012. //이미지경로
  8013. model.makeValue("/root/inisend/emrpath", temrpath.substring(0, temrpath.length - 1));
  8014. iviewerIemr.model.setValue("/root/main/emrpath", model.getValue("/root/inisend/emrpath"));
  8015. //진료일
  8016. model.makeValue("/root/inisend/emrorddate", temrorddate.substring(0, temrorddate.length - 1));
  8017. iviewerIemr.model.setValue("/root/main/emrorddate", model.getValue("/root/inisend/emrorddate"));
  8018. //서식명
  8019. model.makeValue("/root/inisend/emrformnm", temrformnm.substring(0, temrformnm.length - 1));
  8020. iviewerIemr.model.setValue("/root/main/emrformnm", model.getValue("/root/inisend/emrformnm"));
  8021. //서식코드
  8022. model.makeValue("/root/inisend/emrformcd", temrformcd.substring(0, temrformcd.length - 1));
  8023. iviewerIemr.model.setValue("/root/main/emrformcd", model.getValue("/root/inisend/emrformcd"));
  8024. //진료과
  8025. model.makeValue("/root/inisend/emrdeptnm", temrdeptnm.substring(0, temrdeptnm.length - 1));
  8026. iviewerIemr.model.setValue("/root/main/emrdeptnm", model.getValue("/root/inisend/emrdeptnm"));
  8027. //진료과코드
  8028. model.makeValue("/root/inisend/emrdeptcd", temrdeptcd.substring(0, temrdeptcd.length - 1));
  8029. iviewerIemr.model.setValue("/root/main/emrdeptcd", model.getValue("/root/inisend/emrdeptcd"));
  8030. //페이지
  8031. model.makeValue("/root/inisend/emrpage", temrpage.substring(0, temrpage.length - 1));
  8032. iviewerIemr.model.setValue("/root/main/emrpage", model.getValue("/root/inisend/emrpage"));
  8033. //히든 메세지
  8034. model.makeValue("/root/inisend/emrhiddenmsg", temrhiddenmsg.substring(0, temrhiddenmsg.length - 1));
  8035. iviewerIemr.model.setValue("/root/main/emrhiddenmsg", model.getValue("/root/inisend/emrhiddenmsg"));
  8036. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  8037. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  8038. if (iviewerIemr.window.javascript.downloadChart() == true)
  8039. {
  8040. // 뷰어 모드 유지 기능 추가 - 20080417
  8041. var ViewMode;
  8042. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  8043. if (ViewMode == null || ViewMode == "")
  8044. {
  8045. iviewerIemr.window.javascript.setupChart("ChartView");
  8046. }
  8047. else
  8048. {
  8049. iviewerIemr.window.javascript.setupChart(ViewMode);
  8050. }
  8051. }
  8052. } else
  8053. {
  8054. model.removeNodeset("/root/inisend");
  8055. model.resetInstanceNode("/root/send/iemr");
  8056. model.setValue("/root/send/iemr/treatno", tmptreatno.substring(0, tmptreatno.length - 1));
  8057. model.setValue("/root/send/iemr/docucd", tmpiformcd.substring(0, tmpiformcd.length - 1));
  8058. var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  8059. iviewerIemr.window.javascript.searchChart_EMR(iemrNode);
  8060. if (iviewerIemr.window.javascript.downloadChart() == true)
  8061. {
  8062. // 뷰어 모드 유지 기능 추가 - 20080417
  8063. var ViewMode;
  8064. ViewMode = iviewerIemr.model.getValue("/root/hidden/currentViewMode");
  8065. if (ViewMode == null || ViewMode == "")
  8066. {
  8067. iviewerIemr.window.javascript.setupChart("ChartView");
  8068. }
  8069. else
  8070. {
  8071. iviewerIemr.window.javascript.setupChart(ViewMode);
  8072. }
  8073. }
  8074. }
  8075. }
  8076. }
  8077. function fGetImgPath(langflag)
  8078. {
  8079. var dutplceinstcd = sysf_getUserInfo("dutplceinstcd");
  8080. if(langflag != "EN")
  8081. {
  8082. //imgepath = "com/commonweb/images/biglogo" + dutplceinstcd + ".jpg";
  8083. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + ".jpg"
  8084. }
  8085. else
  8086. {
  8087. //imgepath = "com/commonweb/images/biglogo" + dutplceinstcd + "e.jpg";
  8088. imgepath = "IMAGES/emr/MN/biglogo" + sysf_getUserInfo("dutplceinstcd") + "e.jpg"
  8089. }
  8090. return imgepath;
  8091. }
  8092. // 의무기록 부서코드 찾기
  8093. function fIsEmrDept()
  8094. {
  8095. var dutplcecd = sysf_getUserInfo("dutplcecd");
  8096. var hardcdno = "1001";
  8097. if( ds_send_reqdata.rowcount == 0 ) ds_send_reqdata.addRow();
  8098. ds_send_reqdata.setColumn(0, "hardcdno", hardcdno);
  8099. //utlf_addLog(ds_send_reqdata.saveXML());
  8100. var oParam = {};
  8101. oParam.id = "TRMRF03104";
  8102. oParam.service = "formmngtapp.SetIndxMngt";
  8103. oParam.method = "reqGetEmrInfoTeamCd";
  8104. oParam.inds = "req=ds_send_reqdata";
  8105. oParam.outds = "ds_main_hardcdlist=hardcdlist";
  8106. oParam.async = false;
  8107. oParam.callback = "cf_TRMRF03104";
  8108. tranf_submit(oParam);
  8109. //utlf_addLog(ds_main_hardcdlist.saveXML());
  8110. for(var idx = 0; idx < ds_main_hardcdlist.rowcount; idx++)
  8111. {
  8112. if(dutplcecd == ds_main_hardcdlist.getColumn(idx, "trgtcd"))
  8113. {
  8114. return 1;
  8115. }
  8116. }
  8117. if(lf_ContainsHardCD("6943", sysf_getUserInfo("userid"))) {
  8118. return 1;
  8119. }
  8120. return 0;
  8121. }
  8122. function fGetTotalCopies()
  8123. {
  8124. utlf_addLog("***** fGetTotalCopies() *****");
  8125. var tmpTotalCopies = 0;
  8126. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  8127. {
  8128. var shtno = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  8129. var copies = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  8130. tmpTotalCopies = shtno * copies;
  8131. }
  8132. else // 서울성모
  8133. {
  8134. // 가져온 그리드가 여러줄인경우를 대비해 전체 매수를 구한다.
  8135. for(var idx = 0; idx < ds_grd_rcptlist.rowcount; idx++)
  8136. {
  8137. tmpTotalCopies += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  8138. }
  8139. }
  8140. trace("***** tmpTotalCopies : " + tmpTotalCopies );
  8141. return tmpTotalCopies;
  8142. }
  8143. function fAddCalcorcdColumn(prnShtno)
  8144. {
  8145. var RecPrcpCd = model.getValue("/root/hidden/calcscorcd/hardcd/hardcd"); //의무기록 사본발행 수가코드
  8146. var shtno = 0;
  8147. var iFindRow =0;
  8148. var RowCnt = 0;
  8149. var lrow = 0;
  8150. var currentdate = "";
  8151. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8152. var PrevTotalCopies = fGetTotalCopies();
  8153. var AddCopies = prnShtno;
  8154. var Total = eval(PrevTotalCopies) + eval(AddCopies);
  8155. if(eval(grd_rcptlist.rows-grd_rcptlist.fixedrows) == 1) // 그리드에 한줄만 있을 경우
  8156. {
  8157. var iRow = grd_rcptlist.fixedrows;
  8158. if(Total == g_DefCnt)
  8159. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  8160. if(Total > g_DefCnt)
  8161. {
  8162. var rcptNodelist = findNodeset(model, "/root/main/rcptlist/rcptlist[" + iRow + "]");
  8163. if(rcptNodelist.length >= 1)
  8164. {
  8165. var rcptNode = rcptNodelist.item(0);
  8166. // 기본 수가로 설정
  8167. if(g_DefCnt != 0)
  8168. {
  8169. rcptNode.parentNode.appendChild(rcptNode);
  8170. if(iRow == 1)
  8171. {
  8172. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  8173. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  8174. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  8175. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  8176. // 추가 수가를 설정
  8177. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  8178. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  8179. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  8180. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", eval(PrevTotalCopies) - eval(g_DefCnt) + eval(AddCopies));
  8181. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  8182. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", eval(PrevTotalCopies) - eval(g_DefCnt) + eval(AddCopies));
  8183. grd_rcptlist.refresh();
  8184. for(var idx = grd_rcptlist.fixedrows; idx <= eval(grd_rcptlist.rows-grd_rcptlist.fixedrows); idx++)
  8185. grd_rcptlist.rowStatus(idx) = 1;
  8186. }
  8187. }
  8188. else // g_DefCnt == 0 인 경우 추가 수가에만 변경한다.
  8189. {
  8190. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd", g_AddCalcscorcd);
  8191. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  8192. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpcd", g_AddCalcscorcd);
  8193. //model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", eval(PrevTotalCopies) + eval(AddCopies));
  8194. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", eval(AddCopies));
  8195. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "ADD");
  8196. //model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", eval(PrevTotalCopies) + eval(AddCopies));
  8197. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", eval(AddCopies));
  8198. }
  8199. /*
  8200. if(iRow == 1)
  8201. {
  8202. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  8203. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  8204. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  8205. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcpqty", "1");
  8206. // 추가 수가를 설정
  8207. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  8208. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  8209. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  8210. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", (tmpTotalCopies-g_DefCnt));
  8211. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  8212. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", (tmpTotalCopies-g_DefCnt));
  8213. }
  8214. */
  8215. //if(model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd") == g_DefCalcscorcd && model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn") == "")
  8216. //{}
  8217. }
  8218. }
  8219. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims"))
  8220. {
  8221. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8222. grd_rcptlist.rowStatus(iRow) = 2;
  8223. }
  8224. }
  8225. else
  8226. {
  8227. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++)
  8228. {
  8229. // 첫번째 매수 확인
  8230. if(model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscorcd") == g_DefCalcscorcd && model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn") == "")
  8231. {
  8232. var fstshtno = model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno");
  8233. if(fstshtno == g_DefCnt)
  8234. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  8235. if(fstshtno > g_DefCnt)
  8236. if(g_DefCnt == 0)
  8237. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", fstshtno);
  8238. else
  8239. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  8240. }
  8241. // 기본 수가로 설정
  8242. if(iRow == 1)
  8243. {
  8244. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/shtno", g_DefCnt);
  8245. //model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/calcscornm", "의무기록사본발행");
  8246. model.makeValue("/root/main/rcptlist/rcptlist[" + iRow + "]/defyn", "DEF");
  8247. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", "1");
  8248. // 추가 수가를 설정
  8249. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscorcd", g_AddCalcscorcd);
  8250. //model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/calcscornm", "의무기록복사(추가한매당)");
  8251. model.setValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpcd", g_AddCalcscorcd);
  8252. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8253. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/defyn", "ADD");
  8254. model.makeValue("/root/main/rcptlist/rcptlist[" + (iRow+1) + "]/prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8255. }
  8256. //{}
  8257. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") != model.getValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims"))
  8258. {
  8259. model.setValue("/root/main/rcptlist/rcptlist[" + iRow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8260. grd_rcptlist.rowStatus(iRow) = 2;
  8261. }
  8262. }
  8263. }
  8264. grd_rcptlist.refresh();
  8265. /*
  8266. for(var idx = grd_rcptlist.fixedrows; idx <= eval(grd_rcptlist.rows-grd_rcptlist.fixedrows); idx++)
  8267. grd_rcptlist.rowStatus(idx) = 1;
  8268. // 직할병원
  8269. if(issgoalcd == "06" && g_FreeCalcscorcd != "") {
  8270. iFindRow = grd_rcptlist.findRow("HCDD001",0,2);
  8271. if(iFindRow < 1){
  8272. for(var iRow = grd_rcptlist.fixedrows; iRow <= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  8273. grd_rcptlist.rowStatus(iRow) = 4;
  8274. grd_rcptlist.isReadOnly(iRow,4) = true;
  8275. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8276. }
  8277. RowCnt = 1;
  8278. }
  8279. }else{// 그외 목적
  8280. //iFindRow = grd_rcptlist.findRow(RecPrcpCd,0,2);
  8281. //iFindRow = grd_rcptlist.findRow(g_AddCalcscorcd, 2, 2);
  8282. iFindRow = grd_rcptlist.findRow("ADD", 0, 22);
  8283. if(iFindRow < 1){
  8284. for(var iRow = grd_rcptlist.fixedrows; iRow<= (grd_rcptlist.rows-grd_rcptlist.fixedrows); iRow++){
  8285. grd_rcptlist.rowStatus(iRow) = 4;
  8286. grd_rcptlist.isReadOnly(iRow,4) = true;
  8287. shtno += eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8288. }
  8289. if(shtno > 10){
  8290. RowCnt = 2;
  8291. }else{
  8292. RowCnt = 1;
  8293. }
  8294. }
  8295. }
  8296. if(iFindRow < 1)
  8297. {
  8298. for(var iRow = 1; iRow <= RowCnt; iRow++)
  8299. {
  8300. grd_rcptlist.additem();
  8301. currentdate = getCurrentDate();
  8302. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8303. if(issgoalcd == "06")
  8304. {
  8305. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", "HCDD001");
  8306. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행(CMC 의사)");
  8307. // 처방코드(임시로 수가코드로 함)
  8308. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", "HCDD001");
  8309. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  8310. }
  8311. else
  8312. {
  8313. if(iRow == 1){
  8314. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_DefCalcscorcd);
  8315. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8316. // 처방코드(임시로 수가코드로 함)
  8317. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_DefCalcscorcd);
  8318. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  8319. }else if(iRow == 2){
  8320. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_AddCalcscorcd);
  8321. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  8322. // 처방코드(임시로 수가코드로 함)
  8323. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_AddCalcscorcd);
  8324. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", "");
  8325. }
  8326. }
  8327. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  8328. {
  8329. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8330. }
  8331. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  8332. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  8333. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  8334. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8335. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8336. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8337. if(RowCnt == 1){
  8338. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", shtno);
  8339. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", shtno);
  8340. if(issgoalcd == "06"){
  8341. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", shtno);
  8342. }else{
  8343. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8344. }
  8345. }else{ // 직할병원을 제외한 목적의 경우로 매수가 10매 이상인 경우
  8346. if(iRow == 1){ // 수가코드 (HCDD027) 처리
  8347. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", "10");
  8348. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "10");
  8349. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8350. }else if(iRow == 2){ // 수가코드(HCDD030) 처리
  8351. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", (shtno-10));
  8352. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", (shtno-10));
  8353. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", (shtno-10));
  8354. }
  8355. }
  8356. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8357. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8358. grd_rcptlist.addStatus(lrow, "insert");
  8359. }
  8360. }
  8361. */
  8362. //2008-10-24 이창록 수정 부수가 0이면 defalut 으로 1로 셋팅
  8363. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies")==0){
  8364. model.setValue("/root/main/appinfo/copyinfo/emrappcopies",1);
  8365. //ipt_emrappcopies.refresh();
  8366. fChangedAppCopies();
  8367. }
  8368. //btn_delete.disabled = true;
  8369. //btn_delete.refresh();
  8370. }
  8371. /**
  8372. * @desc : 서식로드시 LoadingBar표시, 닫기
  8373. * @id :
  8374. * @event :
  8375. * @return :
  8376. * @authur : 박종훈
  8377. */
  8378. // function fShowProgress(flag, msg)
  8379. // {
  8380. // /*
  8381. // if (gPrestIvw != null)
  8382. // {
  8383. // gPrestIvw.visible = !flag;
  8384. // }
  8385. // */
  8386. // if (flag)
  8387. // {
  8388. // openLoadingBar(msg);
  8389. // }
  8390. // else
  8391. // {
  8392. // closeLoadingBar();
  8393. // }
  8394. // }
  8395. // 신청부수가 변경될 경우
  8396. function fChangedAppCopies2()
  8397. {
  8398. trace("***** fChangedAppCopies2() *****");
  8399. utlf_addLog("***** "+g_inputbox+"*****");
  8400. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  8401. {
  8402. // grd_rcptlist.colAttribute (4, "disabled" ) = "true";
  8403. // grd_rcptlist.colAttribute (19, "disabled" ) = "true";
  8404. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "shtno"), "edittype", "none");
  8405. grd_rcptlist.setCellProperty("body", grd_rcptlist.getBindCellIndex("body", "prcptims"), "edittype", "none");
  8406. // 그리드 복사(이미 발행된 사본의 경우 백업을 해둠)
  8407. var lrow = ds_grd_apphist.rowposition;
  8408. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  8409. if(!utlf_isNull(issno))
  8410. {
  8411. ds_grd_rcptlist.enableevent = false;
  8412. ds_grd_rcptlist.clearData();
  8413. ds_grd_rcptlist.copyData(ds_grd_tmprcptlist);
  8414. // model.removenode("/root/main/rcptlist");
  8415. // model.makeNode("/root/main/rcptlist");
  8416. // model.copyNode("/root/main/rcptlist", "/root/temp2/rcptlist");
  8417. ds_grd_rcptlist.rowposition = 0;
  8418. ds_grd_rcptlist.enableevent = true;
  8419. }
  8420. }
  8421. if (ds_grd_apphist.rowcount < 1) return;
  8422. if (ds_grd_apphist.rowposition < 0) return;
  8423. var totalshrtno = ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno");
  8424. var totalcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8425. //alert(totalcopies);
  8426. //alert(totalshrtno);
  8427. if(utlf_isNull(totalshrtno) || parseInt(totalshrtno) < 0)
  8428. return false;
  8429. if(utlf_isNull(totalcopies) || parseInt(totalcopies) < 0)
  8430. return false;
  8431. var totalpapers = parseInt(totalshrtno) * parseInt(totalcopies);
  8432. ds_temp2_appinfo_copyinfo.setColumn(0, "totalpapers", totalpapers);
  8433. return true;
  8434. }
  8435. function fChangedGridRow2()
  8436. {
  8437. var tmpTotalCopies = fGetTotalCopies(); // 수가 그리드의 매수 합만 계산
  8438. //var tmpTotalCopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalpapers");
  8439. var iRow = grd_rcptlist.row;
  8440. if(iRow < 0)
  8441. return;
  8442. var sShtNo= eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8443. var sValue = 0;
  8444. var sCalcScorCd = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd");
  8445. var sExtraPrcpTims = 0;
  8446. var currentdate = getCurrentDate();
  8447. var iStatus = grd_rcptlist.rowStatus(iRow);
  8448. if(iStatus == 2){
  8449. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno") == model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno")){
  8450. grd_rcptlist.rowStatus(iRow) = 0;
  8451. }
  8452. }
  8453. // 선택한 그리드 행의 매수를 구함.
  8454. var sShtNo = eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8455. /* 매수 부수 입력창이 있는 경우 매수, 부수를 수정하지 못하도록 수정하였기 때문에 필요가 없는 로직임.
  8456. // 2009.06.07 이경희
  8457. if(grd_rcptlist.rows > 2)
  8458. {
  8459. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "DEF" && eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno")) != 1)
  8460. {
  8461. messageBox("기본 수가부분은 변경할 수 없습니다. 하단의 추가수가부분을", "I008");
  8462. //model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", "1");
  8463. if(g_DefCnt != 0)
  8464. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", g_DefCnt);
  8465. else
  8466. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno", g_AddCnt);
  8467. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", "1");
  8468. model.refresh();
  8469. return;
  8470. }
  8471. }
  8472. */
  8473. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "DEF" && eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno")) > 1)
  8474. {
  8475. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/calcscorcd") == g_DefCalcscorcd)
  8476. {
  8477. sShtNo = eval(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno"));
  8478. if(parseInt(sShtNo) < 1)
  8479. {
  8480. messageBox("매수는","I003");
  8481. model.setValue("/root/main/issinfo/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/issinfo/rcptlist["+iRow+"]/oldshtno"));
  8482. if(iStatus == 2){
  8483. grd_rcptlist.rowStatus(iRow) = 0;
  8484. }
  8485. }
  8486. //else if(sShtNo > 10)
  8487. //else if(sShtNo > g_DefCnt)
  8488. else if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8489. {
  8490. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  8491. {
  8492. var currentdate = getCurrentDate();
  8493. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8494. // 기존 그리드가 2줄인 경우
  8495. if((grd_rcptlist.rows - grd_rcptlist.fixedrows) == 2)
  8496. {
  8497. }
  8498. else
  8499. {
  8500. grd_rcptlist.additem();
  8501. lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8502. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8503. // 06: 직할병원 - 수가코드(HCDD001)
  8504. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8505. {
  8506. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8507. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8508. // 처방코드(임시로 수가코드로 함)
  8509. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8510. }
  8511. else
  8512. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8513. /*
  8514. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  8515. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8516. // 처방코드(임시로 수가코드로 함)
  8517. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  8518. */
  8519. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_AddCalcscorcd);
  8520. if(g_AddCalcscorcd == "HCDD030")
  8521. {
  8522. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록복사(추가한매당)");
  8523. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_AddCalcscorcdnm);
  8524. }
  8525. else
  8526. {
  8527. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8528. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_AddCalcscorcdnm);
  8529. }
  8530. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_AddCalcscorcd);
  8531. model.makeValue("/root/main/rcptlist/rcptlist[" + lrow + "]/defyn", "ADD");
  8532. }
  8533. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/unitcost", model.getValue("/root/temp/picmmech/picmmech_unitcost"));
  8534. if (ds_main_appinfo_copyinfo.getColumn(0, "ioflag") == "O")
  8535. {
  8536. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8537. }
  8538. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpdd", currentdate);
  8539. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpno", "0");
  8540. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcphistno", "0");
  8541. }
  8542. //var currentdate = getCurrentDate();
  8543. //var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8544. // 기본 매수 등록
  8545. model.setValue("/root/main/rcptlist/rcptlist[" + (lrow-1) + "]/shtno", g_DefCnt);
  8546. model.setValue("/root/main/rcptlist/rcptlist[" + (lrow-1) + "]/prcpqty", "1");
  8547. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8548. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8549. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8550. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8551. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  8552. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8553. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8554. {
  8555. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", 1);
  8556. }
  8557. else
  8558. {
  8559. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8560. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", Tmpappcopies);
  8561. }
  8562. if(g_DefCalcscorcd != "HCDD027")
  8563. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8564. else
  8565. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", "1");
  8566. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8567. grd_rcptlist.addStatus(lrow, "insert");
  8568. }
  8569. else
  8570. {
  8571. var sExtraRow = grd_rcptlist.findRow("HCDD030", grd_rcptlist.fixedrows+1,2);
  8572. var sExtraStatus = grd_rcptlist.rowStatus(sExtraRow);
  8573. if(sExtraStatus != 1 && sExtraStatus != 3) grd_rcptlist.rowStatus(sExtraRow) = 2;
  8574. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/shtno", sValue);
  8575. model.setValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/prcpqty", sValue);
  8576. }
  8577. }
  8578. else // 총 매수가 10장 미만인 경우
  8579. {
  8580. if(model.getValue("/root/main/issinfo/rcptlist[calcscorcd ='HCDD030']/calcscorcd") == "")
  8581. {
  8582. var currentdate = getCurrentDate();
  8583. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8584. // 10장 미만이므로 전체 매수를 기입한다.
  8585. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", tmpTotalCopies);
  8586. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8587. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8588. // 06: 직할병원 - 수가코드(HCDD001)
  8589. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8590. {
  8591. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8592. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8593. // 처방코드(임시로 수가코드로 함)
  8594. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8595. }
  8596. }
  8597. }
  8598. }
  8599. }
  8600. else
  8601. {
  8602. var lrow = grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8603. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8604. // 06: 직할병원 - 수가코드(HCDD001)
  8605. if(issgoalcd == "06" && g_FreeCalcscorcd != "")
  8606. {
  8607. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", g_FreeCalcscorcd);
  8608. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", g_FreeCalcscorcdnm);
  8609. // 처방코드(임시로 수가코드로 함)
  8610. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", g_FreeCalcscorcd);
  8611. }
  8612. else
  8613. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8614. /*
  8615. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscorcd", RecPrcpCd);
  8616. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/calcscornm", "의무기록사본발행");
  8617. // 처방코드(임시로 수가코드로 함)
  8618. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpcd", RecPrcpCd);
  8619. */
  8620. for(var i = 1; i < lrow; i++)
  8621. {
  8622. if(model.getValue("/root/main/rcptlist/rcptlist[" + i + "]/calcscorcd") == g_AddCalcscorcd)
  8623. {
  8624. lrow = i;
  8625. break;
  8626. }
  8627. }
  8628. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8629. {
  8630. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8631. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8632. }
  8633. else
  8634. {
  8635. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/shtno", parseInt(tmpTotalCopies));
  8636. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", "1");
  8637. }
  8638. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/oldshtno", "1");
  8639. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcpqty", parseInt(tmpTotalCopies) - parseInt(g_DefCnt));
  8640. }
  8641. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8642. {
  8643. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", 1);
  8644. }
  8645. else
  8646. {
  8647. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  8648. model.setValue("/root/main/appinfo/copyinfo/emrappcopies", Tmpappcopies);
  8649. }
  8650. if(g_DefCalcscorcd != "HCDD027")
  8651. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8652. else
  8653. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", "1");
  8654. //model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  8655. model.setValue("/root/main/rcptlist/rcptlist[" + lrow + "]/copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8656. grd_rcptlist.addStatus(lrow, "insert");
  8657. }
  8658. //if(sCalcScorCd == "HCDD001")
  8659. if(sCalcScorCd == g_FreeCalcscorcd)
  8660. {
  8661. if(sShtNo < 1){
  8662. messageBox("매수는","I003");
  8663. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/shtno",model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno"));
  8664. if(iStatus == 2){
  8665. grd_rcptlist.rowStatus(iRow) = 0;
  8666. }
  8667. sShtNo = model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/oldshtno");
  8668. }
  8669. if(sShtNo != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  8670. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", sShtNo);
  8671. }
  8672. }
  8673. else
  8674. { // 추가
  8675. if(sShtNo < 1)
  8676. {
  8677. var iStatus = grd_rcptlist.rowStatus(iRow);
  8678. if(iStatus == 1 || iStatus == 3)
  8679. grd_rcptlist.deleteRow(iRow, true);
  8680. else
  8681. grd_rcptlist.rowStatus(iRow) = 4;
  8682. }
  8683. else
  8684. {
  8685. if(model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/defyn") == "ADD" && (tmpTotalCopies - g_DefCnt) != model.getValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty")){
  8686. model.setValue("/root/main/rcptlist/rcptlist["+iRow+"]/prcpqty", (tmpTotalCopies - g_DefCnt));
  8687. }
  8688. }
  8689. }
  8690. }
  8691. // 추가(20090610)
  8692. // 수가 그리드 처리
  8693. function fChangedSugaGridRow()
  8694. {
  8695. trace("***** fChangedSugaGridRow() *****");
  8696. var tmpTotalCopies = fGetTotalCopies(); // 수가 그리드의 매수 합만 계산
  8697. var iRow = ds_grd_rcptlist.rowposition;
  8698. utlf_addLog("***** fChangedSugaGridRow()"+iRow+"*****");
  8699. if(iRow < 0)
  8700. {
  8701. return;
  8702. }
  8703. //Event Off
  8704. ds_grd_rcptlist.enableevent = false;
  8705. // 매수
  8706. var sShtNo= eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  8707. var sValue = 0;
  8708. var sCalcScorCd = ds_grd_rcptlist.getColumn(iRow, "calcscorcd");
  8709. var sExtraPrcpTims = 0;
  8710. var currentdate = utlf_getCurrentDate();
  8711. // 선택한 그리드 행의 매수를 구함.
  8712. var sShtNo = eval(ds_grd_rcptlist.getColumn(iRow, "shtno"));
  8713. ds_grd_rcptlist.clearData();
  8714. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8715. // 06: 직할병원 - 수가코드(HCDD001)
  8716. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  8717. {
  8718. var currentdate = utlf_getCurrentDate();
  8719. var lrow = ds_grd_rcptlist.addRow;
  8720. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  8721. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  8722. ds_grd_rcptlist.setColumn(lrow, "prcpqty", tmpTotalCopies);
  8723. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8724. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8725. // 처방코드(임시로 수가코드로 함)
  8726. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8727. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  8728. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8729. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8730. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8731. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8732. ds_grd_rcptlist.setColumn(lrow, "shtno", tmpTotalCopies);
  8733. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8734. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8735. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8736. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8737. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8738. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8739. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8740. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8741. // 부수
  8742. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0)
  8743. {
  8744. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  8745. }
  8746. var arrPostion = new Array();
  8747. arrPostion[0] = lrow;
  8748. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8749. //grd_rcptlist.addStatus(lrow, "insert");
  8750. }
  8751. else
  8752. { // 다른 목적 : 수가코드(HCDD027) ->200원짜리 수가코드로 (HCDD030) 변경 이창록
  8753. // 총매수가 기본수가(10장)을 넘길 경우 첫번째 Row는 기본 수가로 2번째 Row는 추가수가로 셋팅
  8754. utlf_addLog("******"+tmpTotalCopies+"******");
  8755. utlf_addLog("******"+g_DefCnt+"******");
  8756. if(parseInt(tmpTotalCopies) > parseInt(g_DefCnt))
  8757. {
  8758. ds_grd_rcptlist.addRow();
  8759. ds_grd_rcptlist.addRow();
  8760. for(var i = 0; i < 2; i++)
  8761. //for(var i = 0; i < 2; i++)
  8762. {
  8763. var currentdate = utlf_getCurrentDate();
  8764. var lrow = i; //grd_rcptlist.rows - grd_rcptlist.fixedrows;
  8765. if (i == 0)
  8766. {
  8767. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8768. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  8769. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  8770. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  8771. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8772. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8773. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8774. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  8775. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8776. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8777. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8778. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8779. ds_grd_rcptlist.setColumn(lrow, "shtno", g_DefCnt);
  8780. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8781. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8782. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8783. // 기본일때는 수량을 1로
  8784. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  8785. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8786. // 처방코드(임시로 수가코드로 함)
  8787. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8788. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8789. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8790. var arrPostion = new Array();
  8791. arrPostion[0] = lrow;
  8792. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8793. //grd_rcptlist.addStatus(lrow, "insert");
  8794. }
  8795. else
  8796. {
  8797. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8798. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_AddCalcscorcd);
  8799. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_AddCalcscorcdnm);
  8800. ds_grd_rcptlist.setColumn(lrow, "prcpqty", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8801. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8802. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8803. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8804. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_AddCalcscorcd);
  8805. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8806. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8807. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8808. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8809. ds_grd_rcptlist.setColumn(lrow, "shtno", parseInt(tmpTotalCopies)-parseInt(g_DefCnt));
  8810. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8811. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8812. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8813. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8814. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8815. // 처방코드(임시로 수가코드로 함)
  8816. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  8817. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8818. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8819. var arrPostion = new Array();
  8820. arrPostion[0] = lrow;
  8821. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8822. //grd_rcptlist.addStatus(lrow, "insert");
  8823. }
  8824. }
  8825. }
  8826. else
  8827. {
  8828. if (tmpTotalCopies > 0)
  8829. {
  8830. var currentdate = utlf_getCurrentDate();
  8831. var lrow = ds_grd_rcptlist.addRow();
  8832. ds_grd_rcptlist.setColumn(lrow, "prcpstatcd", ds_grd_tmprcptlist.getColumn(0, "prcpstatcd"));
  8833. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_DefCalcscorcd);
  8834. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_DefCalcscorcdnm);
  8835. ds_grd_rcptlist.setColumn(lrow, "prcpqty", 1);
  8836. ds_grd_rcptlist.setColumn(lrow, "unitcost", ds_temp_picmmech.getColumn(0, "picmmech_unitcost"));
  8837. ds_grd_rcptlist.setColumn(lrow, "rcptyn", ds_grd_tmprcptlist.getColumn(0, "rcptyn"));
  8838. ds_grd_rcptlist.setColumn(lrow, "prcpno", ds_grd_tmprcptlist.getColumn(0, "prcpno"));
  8839. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_DefCalcscorcd);
  8840. ds_grd_rcptlist.setColumn(lrow, "prcphistno", ds_grd_tmprcptlist.getColumn(0, "prcphistno"));
  8841. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  8842. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  8843. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  8844. ds_grd_rcptlist.setColumn(lrow, "shtno", tmpTotalCopies);
  8845. ds_grd_rcptlist.setColumn(lrow, "oldshtno", ds_grd_tmprcptlist.getColumn(0, "oldshtno"));
  8846. ds_grd_rcptlist.setColumn(lrow, "prcpdd", ds_grd_tmprcptlist.getColumn(0, "prcpdd"));
  8847. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  8848. ds_grd_rcptlist.setColumn(lrow, "prcptims", 1);
  8849. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", ds_grd_tmprcptlist.getColumn(0, "oldprcptims"));
  8850. // 처방코드(임시로 수가코드로 함)
  8851. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8852. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  8853. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  8854. var arrPostion = new Array();
  8855. arrPostion[0] = lrow;
  8856. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8857. //grd_rcptlist.addStatus(lrow, "insert");
  8858. }
  8859. }
  8860. }
  8861. //Event On
  8862. ds_grd_rcptlist.enableevent = true;
  8863. }
  8864. function fSugaCalc()
  8865. {
  8866. trace("***** fSugaCalc() *****");
  8867. if(g_inputbox == "Y") // 수가가 기본, 추가 수가코드로 이루어진 경우
  8868. {
  8869. var lrow = ds_grd_apphist.rowposition;
  8870. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  8871. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  8872. utlf_addLog("fSugaCalc issno : " + issno );
  8873. if(ds_grd_rcptlist.rowcount > 0 && utlf_isNull(issno))
  8874. {
  8875. //Event Off
  8876. ds_grd_rcptlist.enableevent = false;
  8877. // 매수 * 부수 입력창
  8878. var shtno1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  8879. var copies1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  8880. var total1 = shtno1 * copies1;
  8881. var shtno2 = 0;
  8882. var copies2 = 1;
  8883. var total2 = 0;
  8884. for(var idx = 0; idx < ds_grd_rcptlist.rowcount; idx++)
  8885. {
  8886. shtno2 += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  8887. }
  8888. total2 = shtno2 * copies2;
  8889. if(total1 < total2) // 그리드의 총 장수에 비해 입력한 매수*부수의 결과가 작은경우
  8890. {
  8891. // 그리드가 2줄인 경우 한줄을 삭제하고 기본으로 미리 세팅한다.
  8892. if(ds_grd_rcptlist.rowcount > 1)
  8893. {
  8894. //model.removeNodeset("/root/main/rcptlist/rcptlist[" + (grd_rcptlist.rows-grd_rcptlist.fixedrows) + "]");
  8895. ds_grd_rcptlist.deleteRow(ds_grd_rcptlist.rowcount - 1);
  8896. }
  8897. // 기본 수가로 설정
  8898. var iRow = ds_grd_rcptlist.rowcount - 1;
  8899. ds_grd_rcptlist.setColumn(iRow, "shtno", g_DefCnt);
  8900. //ds_grd_rcptlist.setColumn(iRow, "shtno", "1"); // HCDD027 의 경우 매수를 10으로 하면 30000원이 계산됨.
  8901. ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  8902. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  8903. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  8904. var arrPostion = new Array();
  8905. arrPostion[0] = 0;
  8906. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8907. //grd_rcptlist.rowStatus(1) = 1;
  8908. ds_grd_rcptlist.rowposition = 0;
  8909. }
  8910. //Event Off
  8911. ds_grd_rcptlist.enableevent = true;
  8912. return 1;
  8913. }
  8914. }
  8915. }
  8916. function fChangeStatus()
  8917. {
  8918. utlf_addLog("***** fChangeStatus() *****");
  8919. //Event Off
  8920. ds_grd_rcptlist.enableevent = false;
  8921. var lrow = ds_grd_apphist.rowposition;
  8922. ds_send_search.setColumn(0, "issno", ds_grd_apphist.getColumn(lrow, "issno"));
  8923. var issno = ds_grd_apphist.getColumn(lrow, "issno");
  8924. utlf_addLog("***** fChangeStatus() issno : " + issno + "*****");
  8925. // 발행번호가 있는 경우 --> 수정으로 들어갈때
  8926. if(!utlf_isNull(issno))
  8927. {
  8928. // 매수 * 부수 입력창
  8929. var shtno1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalshrtno"));
  8930. var copies1 = eval(ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies"));
  8931. var NewTotal = shtno1 * copies1;
  8932. var shtno2 = 0;
  8933. var copies2 = 1;
  8934. var OldTotal = 0;
  8935. for(var idx = 0; idx < ds_grd_tmprcptlist.rowcount; idx++)
  8936. {
  8937. shtno2 += eval(ds_grd_rcptlist.getColumn(idx, "shtno"));
  8938. }
  8939. OldTotal = shtno2 * copies2;
  8940. // 1) 이미 발행된 사본의 총 장수가 10장 미만인 경우 그리드는 1줄
  8941. if(parseInt(OldTotal) <= parseInt(g_DefCnt))
  8942. {
  8943. var iRow = ds_grd_rcptlist.rowcount - 1;
  8944. // 새로 입력받은 사본의 총 장수가 10장 미만(처방 그리드는 1줄이며, 매수를 기본으로 변경해주고 그리드 상태값을 변경)
  8945. if(parseInt(NewTotal) <= parseInt(g_DefCnt))
  8946. {
  8947. ds_grd_rcptlist.setColumn(iRow, "shtno", NewTotal);
  8948. ds_grd_rcptlist.setColumn(iRow, "calcscornm", "의무기록사본발행");
  8949. ds_grd_rcptlist.setColumn(iRow, "defyn", "DEF");
  8950. ds_grd_rcptlist.setColumn(iRow, "prcpqty", "1");
  8951. ds_grd_rcptlist.rowposition = 0;
  8952. var arrPostion = new Array();
  8953. arrPostion[0] = 0;
  8954. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8955. //grd_rcptlist.rowStatus(1) = 2; // UPDATE
  8956. }
  8957. else // 새로 입력받은 사본의 총 장수가 10장 이상이 되서 처방 그리드가 2줄이 되는 경우
  8958. {
  8959. var issgoalcd = ds_main_appinfo_copyinfo.getColumn(0, "issgoalcd");
  8960. // 06: 직할병원 - 수가코드(HCDD001)
  8961. if(issgoalcd == "06" && !utlf_isNull(g_FreeCalcscorcd))
  8962. {
  8963. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", g_FreeCalcscorcd);
  8964. ds_grd_rcptlist.setColumn(lrow, "calcscornm", g_FreeCalcscorcdnm);
  8965. // 처방코드(임시로 수가코드로 함)
  8966. ds_grd_rcptlist.setColumn(lrow, "prcpcd", g_FreeCalcscorcd);
  8967. }
  8968. else
  8969. {
  8970. var lrow = ds_grd_rcptlist.rowcount - 1;
  8971. utlf_addLog(" parseInt(NewTotal) <= parseInt(g_DefCnt) else : issgoalcd == 06 && !utlf_isNull(g_FreeCalcscorcd else : " + lrow);
  8972. var arrPostion = new Array();
  8973. arrPostion[0] = lrow-1;
  8974. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8975. arrPostion[0] = lrow;
  8976. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  8977. // ds_grd_rcptlist.addStatus(lrow-1, "update");
  8978. // ds_grd_rcptlist.addStatus(lrow, "insert");
  8979. }
  8980. }
  8981. }
  8982. else // 2) 이미 발행된 사본의 총 장수가 10장 이상이 되는 경우
  8983. {
  8984. var iRow = ds_grd_rcptlist.rowcount - 1;
  8985. // 새로 입력받은 사본의 총 장수가 10장 미만(처방 그리드는 2줄인 상태에서 상태값을 변경)
  8986. if(parseInt(NewTotal) <= parseInt(g_DefCnt))
  8987. {
  8988. // 첫번째 그리드는 매수 수정
  8989. ds_grd_rcptlist.rowposition = 0;
  8990. var lrow = ds_grd_rcptlist.rowposition;
  8991. var arrPostion = new Array();
  8992. arrPostion[0] = lrow;
  8993. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  8994. //grd_rcptlist.rowStatus(lrow) = 2; // UPDATE
  8995. ds_grd_rcptlist.setColumn(lrow, "shtno", NewTotal);
  8996. ds_grd_rcptlist.setColumn(lrow, "calcscornm", "의무기록사본발행");
  8997. ds_grd_rcptlist.setColumn(lrow, "defyn", "DEF");
  8998. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  8999. // 2번째 그리드는 삭제 상태로 변경
  9000. var arrPostion = new Array();
  9001. arrPostion[0] = (parseInt(lrow)+1);
  9002. grdf_setStatus(grd_rcptlist, "D", arrPostion);
  9003. //grd_rcptlist.rowStatus( (parseInt(lrow)+1) ) = 4; // DELETE
  9004. }
  9005. else // 새로 입력받은 사본의 총 장수가 10장 이상(처방 그리드는 이미 2줄이므로 HCDD030 수가의 prcpqty를 변경)
  9006. {
  9007. // 첫번째 그리드는 그대로 둔 상태에서 추가 수가 부분만 매수를 변경하고 그리드 상태를 업데이트로 변경
  9008. ds_grd_rcptlist.rowposition = 1;
  9009. var lrow = ds_grd_rcptlist.rowposition;
  9010. ds_grd_rcptlist.setColumn(lrow, "shtno", parseInt(NewTotal) - parseInt(g_DefCnt));
  9011. ds_grd_rcptlist.setColumn(lrow, "prcpqty", parseInt(NewTotal) - parseInt(g_DefCnt));
  9012. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  9013. if(ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies") == 0){
  9014. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", 1);
  9015. }else{
  9016. var Tmpappcopies = ds_temp2_appinfo_copyinfo.getColumn(0, "totalcopies");
  9017. ds_main_appinfo_copyinfo.setColumn(0, "emrappcopies", Tmpappcopies);
  9018. }
  9019. if(g_DefCalcscorcd != "HCDD027")
  9020. ds_grd_rcptlist.setColumn(lrow, "prcptims", ds_main_appinfo_copyinfo.getColumn(0, "emrappcopies"));
  9021. else
  9022. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  9023. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  9024. // 기존에 발행된 내역이 1줄(10매 미안)이었다가 10매 이상이 되어 변경한 후 다시 10매 이상으로 변경하는 경우)
  9025. // 2번째 row의 상태를 insert로 두기 위함.
  9026. var arrPostion = new Array();
  9027. arrPostion[0] = lrow;
  9028. grdf_setStatus(grd_rcptlist, "U", arrPostion);
  9029. //grd_rcptlist.rowStatus(lrow) = 2; // UPDATE
  9030. }
  9031. }
  9032. }
  9033. //Event On
  9034. ds_grd_rcptlist.enableevent = true;
  9035. }
  9036. function fSetSugaCode()
  9037. {
  9038. utlf_addLog("***** fSetSugaCode() *****");
  9039. lf_getHardCDList("N", 77, null, ds_hidden_calcscorcd); //의무기록사본발행수가코드
  9040. //이윤주 수정(20190824)
  9041. lf_getHardCDList("N", 1004, null, ds_hidden_tmpcalcscorcd); //의무기록사본발행수가코드
  9042. //lf_getHardCDList("N", 1014, null, ds_hidden_tmpcalcscorcd); //(산재수가)의무기록사본발행수가코드
  9043. // 2009.05.11 이경희
  9044. // 기본수가, 추가수가로 변경
  9045. for(var idx = 0; idx < ds_hidden_tmpcalcscorcd.rowcount; idx++)
  9046. {
  9047. var arrCalcscorcd = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcd").split("|");
  9048. if(arrCalcscorcd[0] == "DEF") // 기본 수가코드
  9049. {
  9050. g_DefCalcscorcd = arrCalcscorcd[1];
  9051. g_DefCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  9052. ds_hidden.setColumn(0, "defcalcscorcd", g_DefCalcscorcd);
  9053. ds_hidden.setColumn(0, "defcalcscorcdnm", g_DefCalcscorcdnm);
  9054. g_DefCnt = arrCalcscorcd[2];
  9055. }
  9056. if(arrCalcscorcd[0] == "ADD") // 추가 수가코드
  9057. {
  9058. g_AddCalcscorcd = arrCalcscorcd[1];
  9059. g_AddCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  9060. ds_hidden.setColumn(0, "addcalcscorcd", g_AddCalcscorcd);
  9061. ds_hidden.setColumn(0, "addcalcscorcdnm", g_AddCalcscorcdnm);
  9062. g_AddCnt = arrCalcscorcd[2];
  9063. }
  9064. if(arrCalcscorcd[0] == "FREE") // 무료 수가코드
  9065. {
  9066. g_FreeCalcscorcd = arrCalcscorcd[1];
  9067. g_FreeCalcscorcdnm = ds_hidden_tmpcalcscorcd.getColumn(idx, "hardcdnm");
  9068. ds_hidden.setColumn(0, "freecalcscorcd", g_FreeCalcscorcd);
  9069. ds_hidden.setColumn(0, "freecalcscorcdnm", g_FreeCalcscorcdnm);
  9070. g_FreeCnt = g_FreeCalcscorcd[2];
  9071. }
  9072. }
  9073. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  9074. lf_getHardCDList("N", 1201, null, ds_hidden_colorcalcscoryn); //1201 : 의무기록 사본발행 진료기록 컬러복사 수가코드 사용여부
  9075. lf_getHardCDList("N", 1202, null, ds_hidden_colorcalcscorcd); //1202 : 의무기록 사본발행 진료기록 컬러복사 수가코드
  9076. var colorcalcscoryn = ds_hidden_colorcalcscoryn.getColumn(0, "hardcd");
  9077. var colorcalcscorcd = ds_hidden_colorcalcscorcd.getColumn(0, "hardcd");
  9078. if (colorcalcscoryn == "Y")
  9079. {
  9080. btn_colorcalcscoryn.visible = true;
  9081. }
  9082. }
  9083. function fDispMidForm(idx)
  9084. {
  9085. utlf_addLog("***** fDispMidForm *****");
  9086. var supitemindxseq = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  9087. var midindxseq = ds_grd_inpat.getColumn(idx, "midindxseq");
  9088. var emrflag = ds_grd_inpat.getColumn(idx, "emrflag");
  9089. if(emrflag == "I") { // 구영상
  9090. ds_imgrec_iemr.clearData();
  9091. ds_imgrec_iemr.addRow();
  9092. iviewerIemr.resetInstance_EMR();
  9093. ds_imgrec_iemr.setColumn(0, "treatno", ds_grd_inpat.getColumn(idx, "midindxseq"));
  9094. ds_imgrec_iemr.setColumn(0, "docucd", ds_grd_inpat.getColumn(idx, "supitemindxseq"));
  9095. var iemrNode = ds_imgrec_iemr;
  9096. iviewerIemr.searchChart(iemrNode);
  9097. if (iviewerIemr.downloadChart() == true)
  9098. {
  9099. // 뷰어 모드 유지 기능 추가 - 20080417
  9100. var ViewMode;
  9101. ViewMode = iviewerIemr.hidden_currentViewMode;
  9102. if (utlf_isNull(ViewMode))
  9103. {
  9104. iviewerIemr.setupChartCopy("ChartView");
  9105. }
  9106. else
  9107. {
  9108. iviewerIemr.setupChartCopy(ViewMode);
  9109. }
  9110. }
  9111. }
  9112. else
  9113. {
  9114. ds_send.clearData();
  9115. ds_send.addRow();
  9116. ds_send.setColumn(0, "pid" , ds_grd_inpat.getColumn(idx, "pid"));
  9117. ds_send.setColumn(0, "orddd" , ds_grd_inpat.getColumn(idx, "orddd"));
  9118. ds_send.setColumn(0, "cretno" , ds_grd_inpat.getColumn(idx, "cretno"));
  9119. ds_send.setColumn(0, "chosflag" , "I" );
  9120. ds_send.setColumn(0, "tabflag" , "ALL" );
  9121. ds_send.setColumn(0, "recall" , "Y" );
  9122. ds_send.setColumn(0, "orddeptcd" , ds_grd_inpat.getColumn(idx, "orddeptcd"));
  9123. ds_send.setColumn(0, "reckind" , ds_grd_inpat.getColumn(idx, "reckind"));
  9124. ds_send.setColumn(0, "itemindxseq" , ds_grd_inpat.getColumn(idx, "midindxseq"));
  9125. ds_send.setColumn(0, "lisflag" , ds_grd_inpat.getColumn(idx, "lisflag"));
  9126. //2009-11-04 오후 1:29:15 강지훈 수정 : 오픈전 미시행검사처방 처리 관련 수정
  9127. ds_send.setColumn(0, "midbftest" , ds_grd_inpat.getColumn(idx, "midbftest"));
  9128. ds_send.setColumn(0, "scrnid" , "SMMRC03000" );
  9129. ds_send.setColumn(0, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  9130. ds_send.setColumn(0, "noview" , "Y" ); //이윤주 추가(20151230)
  9131. ds_send.setColumn(0, "histprntyn" , ds_main_cond.getColumn(0, "histprntyn"));
  9132. if (ds_main_cond.getColumn(0, "histprntyn") == "Y" || ds_main_cond.getColumn(0, "histprntyn") == "T" ) {
  9133. ds_send.setColumn(0, "histyn", "Y"); //이력구분(20190321)
  9134. }
  9135. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:'',pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N");
  9136. //xp code add : col id change!!!execprcpuniqno
  9137. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  9138. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  9139. var oParam = {};
  9140. oParam.id = "TRMRI03004";
  9141. oParam.service = "recmngtapp.IntegrityRec";
  9142. oParam.method = "reqGetRecDetailInfoByCondFlag";
  9143. oParam.inds = "req=ds_send";
  9144. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  9145. oParam.async = false;
  9146. oParam.callback = "cf_TRMRI03004";
  9147. tranf_submit(oParam);
  9148. if(arErrorCode.pop("TRMRI03004") > -1){
  9149. ds_tmpinicert2_iniinfo.copyData(ds_tmpinicert_iniinfo);
  9150. if( ds_main_cond.getColumn(0, "pagingyn") == "Y" ){
  9151. lf_Paging();
  9152. }else{
  9153. fPagebtnCtl();
  9154. fEmrImgRec();
  9155. }
  9156. }
  9157. }
  9158. }
  9159. function fDispAllForm(){
  9160. utlf_addLog("***** fDispAllForm() *****");
  9161. utlf_addLog("***** fDispAllForm() " + utlf_getCurrentDate() + " *****");
  9162. var supitemindxseq = "";
  9163. var midindxseq = "";
  9164. var emrflag = "";
  9165. var imgtret = "";
  9166. var imgformcd = "";
  9167. //alert("ds_grd_inpat.rowcount : " + ds_grd_inpat.rowcount);
  9168. for(var idx = 0; idx < ds_grd_inpat.rowcount; idx++)
  9169. {
  9170. supitemindxseq = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  9171. midindxseq = ds_grd_inpat.getColumn(idx, "midindxseq");
  9172. emrflag = ds_grd_inpat.getColumn(idx, "emrflag");
  9173. //alert("idx 건수 : " + idx);
  9174. if(emrflag == "I")
  9175. { // 구영상
  9176. iviewerIemr.resetInstance_EMR();
  9177. imgtret = ds_grd_inpat.getColumn(idx, "midindxseq");
  9178. imgformcd = ds_grd_inpat.getColumn(idx, "supitemindxseq");
  9179. var objColInfo = new Array();
  9180. objColInfo.push({col: "signno", type:"string", size:256, val:imgtret});
  9181. objColInfo.push({col: "formcd", type:"string", size:256, val:imgformcd});
  9182. objColInfo.push({col: "imgflag", type:"string", size:256, val:"Y"});
  9183. dsf_createDsRow("ds_initmp_iniinfo", objColInfo);
  9184. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_initmp_iniinfo, "after");
  9185. ds_tmpinicert2_iniinfo.appendData(ds_initmp_iniinfo, true, false);
  9186. //copyNodeset("/root/tmpinicert2/iniinfo", "/root/initmp/iniinfo", "append");
  9187. dsf_deleteDs("ds_initmp_iniinfo");
  9188. }
  9189. else
  9190. {
  9191. ds_send.clearData();
  9192. ds_send.addRow();
  9193. ds_send.setColumn(0, "pid", ds_grd_inpat.getColumn(idx, "pid"));
  9194. ds_send.setColumn(0, "orddd", ds_grd_inpat.getColumn(idx, "orddd"));
  9195. ds_send.setColumn(0, "cretno", ds_grd_inpat.getColumn(idx, "cretno"));
  9196. ds_send.setColumn(0, "chosflag", "I");
  9197. ds_send.setColumn(0, "tabflag", "ALL");
  9198. ds_send.setColumn(0, "recall", "Y");
  9199. ds_send_reqdata.setColumn(0, "scrnid" , "SMMRC03000" );
  9200. ds_send.setColumn(0, "addimageyn" , ds_main_otherinfo.getColumn(0, "addimageyn"));
  9201. ds_send.setColumn(0, "orddeptcd", ds_grd_inpat.getColumn(idx, "orddeptcd"));
  9202. ds_send.setColumn(0, "reckind", ds_grd_inpat.getColumn(idx, "reckind"));
  9203. ds_send.setColumn(0, "itemindxseq", ds_grd_inpat.getColumn(idx, "midindxseq"));
  9204. ds_send.setColumn(0, "lisflag", ds_grd_inpat.getColumn(idx, "lisflag"));
  9205. ds_send.setColumn(0, "midbftest", ds_grd_inpat.getColumn(idx, "midbftest"));
  9206. ds_send.setColumn(0, "histprntyn" , ds_main_cond.getColumn(0, "histprntyn"));
  9207. //특정서식은 보여주지 않는다(hardcdno = 5572)
  9208. ds_send.setColumn(0, "noview", "Y");
  9209. dsf_setDefaultVal(ds_send, "recall:N,reckind:EMR,fromprcpdd:'',toprcpdd:'',pagingyn:N,pagingfromdd:'',pagingtodd:'',privateyn:N");
  9210. //xp code add : col id change!!!execprcpuniqno
  9211. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumnInfo("cmc_orderseqno")))
  9212. ds_tmpinicert_iniinfo.updateColID("cmc_orderseqno", "execprcpuniqno");
  9213. var oParam = {};
  9214. oParam.id = "TRMRI03004";
  9215. oParam.service = "recmngtapp.IntegrityRec";
  9216. oParam.method = "reqGetRecDetailInfoByCondFlag";
  9217. oParam.inds = "req=ds_send";
  9218. oParam.outds = "ds_tmpinicert_iniinfo=iniinfo";
  9219. oParam.async = false;
  9220. oParam.callback = "cf_TRMRI03004";
  9221. tranf_submit(oParam);
  9222. //one transaction으로 변경해야함.
  9223. if(arErrorCode.pop("TRMRI03004") > -1){
  9224. /*이윤주(2015/11/03)
  9225. if( ds_main_otherinfo.getColumn(0, "addimageyn") != "Y" ){
  9226. var noimg = "";
  9227. var imgarray = "";
  9228. var certcnt = ds_tmpinicert_iniinfo.rowcount;
  9229. for(var a = 0; a < certcnt ; a++ ){
  9230. var add_imgflag = ds_tmpinicert_iniinfo.getColumn(a, "imgflag");
  9231. var add_formcd = ds_tmpinicert_iniinfo.getColumn(a, "formcd");
  9232. var add_formprogflag = ds_tmpinicert_iniinfo.getColumn(a, "formprogflag");
  9233. if( !utlf_isNull(add_imgflag) ){
  9234. if( add_imgflag != "N" && add_formcd != "Z001" && add_formprogflag != "IMG" ){
  9235. if( a == 0 ){
  9236. noimg = utlf_transNullToEmpty(ds_tmpinicert_iniinfo.getColumn(a, "signno"));
  9237. }else{
  9238. noimg = noimg + "*" + utlf_transNullToEmpty(ds_tmpinicert_iniinfo.getColumn(a, "signno"));
  9239. }
  9240. }
  9241. }
  9242. }
  9243. if( !utlf_isNull(noimg) )
  9244. imgarray = noimg.toString().split("*");
  9245. for(var i = 0; i < imgarray.length ; i++ ){
  9246. for(var j = 0; j < certcnt ; j++ ){
  9247. if( !utlf_isNull(ds_tmpinicert_iniinfo.getColumn(j, "signno")) && ( imgarray[i] == ds_tmpinicert_iniinfo.getColumn(j, "signno").toString() )){
  9248. ds_tmpinicert_iniinfo.deleteRow(j);
  9249. }
  9250. }
  9251. }
  9252. }
  9253. */
  9254. //utlf_addLog("ds_tmpinicert_iniinfo.rowcount : " + ds_tmpinicert_iniinfo.rowcount);
  9255. //dsf_copyDs(ds_tmpinicert2_iniinfo, ds_tmpinicert_iniinfo, "after");
  9256. ds_tmpinicert2_iniinfo.appendData(ds_tmpinicert_iniinfo, true, false);
  9257. }
  9258. }
  9259. }
  9260. //alert("fEmrImgRec 시행 ");
  9261. if( ds_main_cond.getColumn(0, "pagingyn") == "Y" ){
  9262. lf_Paging();
  9263. }else{
  9264. fPagebtnCtl();
  9265. fEmrImgRec();
  9266. }
  9267. }
  9268. var page_number = "";
  9269. var pagetotcnt="";
  9270. var allyn = "";
  9271. var pagingCnt = 100;
  9272. function lf_Paging(pageno){
  9273. utlf_addLog("***** lf_Paging(pageno) : " + pageno + " *****");
  9274. if(utlf_isNull(pageno)){
  9275. page_number="1";
  9276. allyn="";
  9277. }else if(pageno!="ALL"){
  9278. page_number=pageno;
  9279. }else if(pageno=="ALL"){
  9280. page_number="1";
  9281. allyn="ALL";
  9282. }
  9283. var cnt = ds_tmpinicert2_iniinfo.rowcount;
  9284. if( page_number == "1"){
  9285. pagetotcnt = Math.ceil(cnt/parseInt(pagingCnt));
  9286. }
  9287. if(parseInt(page_number) <= parseInt(pagetotcnt)){
  9288. fEmrImgRec();
  9289. }
  9290. if( !utlf_isNull(pagetotcnt) && (parseInt(page_number) < parseInt(pagetotcnt))){
  9291. fPagebtnCtl("false");
  9292. }else{
  9293. fPagebtnCtl("true");
  9294. }
  9295. }
  9296. function fPagebtnCtl(chk){
  9297. if(chk=="true"){
  9298. iviewerIemr.group1.case1.tv_pagebtn.enable = false;
  9299. iviewerIemr.group1.case2.cv_pagebtn.enable = false;
  9300. iviewerIemr.group1.case3.pv_pagebtn.enable = false;
  9301. iviewerIemr.group1.case1.tv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  9302. iviewerIemr.group1.case2.cv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  9303. iviewerIemr.group1.case3.pv_pagebtn.tooltiptext = "[기록이 더 이상 없습니다.]";
  9304. iviewerIemr.group1.cap_msg.text = "[기록이 더 이상 없습니다.]";
  9305. }else if(chk=="false"){
  9306. iviewerIemr.group1.case1.tv_pagebtn.enable = true;
  9307. iviewerIemr.group1.case2.cv_pagebtn.enable = true;
  9308. iviewerIemr.group1.case3.pv_pagebtn.enable = true;
  9309. iviewerIemr.group1.case1.tv_pagebtn.tooltiptext = "[기록 더보기]";
  9310. iviewerIemr.group1.case2.cv_pagebtn.tooltiptext = "[기록 더보기]";
  9311. iviewerIemr.group1.case3.pv_pagebtn.tooltiptext = "[기록 더보기]";
  9312. iviewerIemr.group1.cap_msg.text = "[기록이 더 존재합니다. 더보기 버튼을 클릭해주세요.]";
  9313. }else{
  9314. iviewerIemr.group1.case1.tv_pagebtn.enable = false;
  9315. iviewerIemr.group1.case2.cv_pagebtn.enable = false;
  9316. iviewerIemr.group1.case3.pv_pagebtn.enable = false;
  9317. iviewerIemr.group1.case1.tv_pagebtn.tooltiptext = "";
  9318. iviewerIemr.group1.case2.cv_pagebtn.tooltiptext = "";
  9319. iviewerIemr.group1.case3.pv_pagebtn.tooltiptext = "";
  9320. iviewerIemr.group1.cap_msg.text = "";
  9321. }
  9322. }
  9323. function fMidIndxSet(val)
  9324. {
  9325. utlf_addLog("***** fMidIndxSet("+val+") *****");
  9326. var curs = ds_grd_inapplist.rowposition;
  9327. var pid = ds_grd_inapplist.getColumn(curs, "pid");
  9328. var indd = ds_grd_inapplist.getColumn(curs, "indd");
  9329. var cretno = ds_grd_inapplist.getColumn(curs, "cretno");
  9330. var orddeptcd = ds_grd_inapplist.getColumn(curs, "orddeptcd");
  9331. var subNode = "";
  9332. //var midNodes = instance1.selectNodes("/root/main/midissinfo/emrapplist");
  9333. for(var i = 0; i < ds_grd_inpat.rowcount; i++)
  9334. {
  9335. if(ds_grd_inpat.getColumn(i, "pid") == pid
  9336. && ds_grd_inpat.getColumn(i, "orddd") == indd
  9337. && ds_grd_inpat.getColumn(i, "cretno") == cretno
  9338. && ds_grd_inpat.getColumn(i, "orddeptcd") == orddeptcd)
  9339. {
  9340. ds_grd_inpat.setColumn(i, "chk", val);
  9341. }
  9342. }
  9343. }
  9344. function fAddDetailContents()
  9345. {
  9346. utlf_addLog("***** fAddDetailContents() *****");
  9347. try
  9348. {
  9349. var OldDeliverect = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  9350. var NewDeliverect = "";
  9351. if(!utlf_isNull(OldDeliverect))
  9352. {
  9353. NewDeliverect += OldDeliverect;
  9354. }
  9355. var tmpStr = iviewerIemr.fGetSelectChrtName(OldDeliverect);
  9356. if(!utlf_isNull(tmpStr))
  9357. {
  9358. NewDeliverect += tmpStr;
  9359. //ds_main_appinfo_copyinfo.setColumn(0, "delivefact", NewDeliverect);
  9360. txt_delivefact.value = NewDeliverect;
  9361. txt_delivefact.vscrollbar.pos = txt_delivefact.vscrollbar.max;
  9362. }
  9363. }
  9364. catch(e)
  9365. {
  9366. sysf_catchTrace(e);
  9367. }
  9368. }
  9369. function fPrntDetailContents(category)
  9370. {
  9371. utlf_addLog("***** fPrntDetailContents("+category+") *****");
  9372. try
  9373. {
  9374. var finalformnm = category;
  9375. for(var i=0; i<ds_temp_hardcd2.rowcount; i++){
  9376. if(ds_temp_hardcd2.getColumn(i, "hardcd")==sysf_getUserInfo("dutplceinstcd")){
  9377. var contents = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  9378. }else if(ds_temp_hardcd2.getColumn(i, "hardcd")!=sysf_getUserInfo("dutplceinstcd")){
  9379. if(!utlf_isNull(after_delivefact)){
  9380. var contents=after_delivefact;
  9381. }else{
  9382. var contents = ds_main_appinfo_copyinfo.getColumn(0, "delivefact");
  9383. }
  9384. }
  9385. }
  9386. var contentsArr = "";
  9387. if(!utlf_isNull(contents))
  9388. {
  9389. contentsArr = contents.split("\n");
  9390. for(var idx = 0; idx < contentsArr.length; idx++)
  9391. {
  9392. if(!utlf_isNull(contentsArr[idx]))
  9393. {
  9394. finalformnm += contentsArr[idx].replace("\r","");
  9395. if(idx==8){
  9396. finalformnm += "\n" + "~이하생략~";
  9397. break;
  9398. }
  9399. if((idx + 1) != contentsArr.length)
  9400. finalformnm += ", ";
  9401. }
  9402. }
  9403. }
  9404. if(finalformnm.substring( (finalformnm.length - 2), finalformnm.length ) == ", ")
  9405. {
  9406. finalformnm = finalformnm.substring( 0, (finalformnm.length - 2) );
  9407. }
  9408. return finalformnm;
  9409. }
  9410. catch(e)
  9411. {
  9412. }
  9413. }
  9414. // 2010.04.26. 이은영 -> 컬러복사 수가 적용 (017:빈센트)
  9415. function fAddColorCalcScor() {
  9416. utlf_addLog("***** fAddColorCalcScor() *****");
  9417. var colorcalcscorcd = ds_hidden_colorcalcscorcd.getColumn(0, "hardcd");
  9418. var colorcalcscornm = ds_hidden_colorcalcscorcd.getColumn(0, "hardcdnm");
  9419. for (var i=0; i < ds_grd_rcptlist.rowcount ; i++)
  9420. {
  9421. var calcscorcd = ds_grd_rcptlist.getColumn(i, "calcscorcd");
  9422. if (calcscorcd == colorcalcscorcd) {
  9423. var Msg = sysf_messageBox("수가코드 추가가 불", "I006");
  9424. return;
  9425. }
  9426. }
  9427. if (i == ds_grd_rcptlist.rowcount) {
  9428. //Event Off
  9429. ds_grd_rcptlist.enableevent = false;
  9430. var currentdate = utlf_getCurrentDate();
  9431. var lrow = ds_grd_rcptlist.addRow();
  9432. ds_grd_rcptlist.setColumn(lrow, "calcscorcd", colorcalcscorcd);
  9433. ds_grd_rcptlist.setColumn(lrow, "calcscornm", colorcalcscornm);
  9434. // 처방코드(임시로 수가코드로 함)
  9435. ds_grd_rcptlist.setColumn(lrow, "prcpcd", colorcalcscorcd);
  9436. ds_grd_rcptlist.setColumn(lrow, "unitcost", "");
  9437. ds_grd_rcptlist.setColumn(lrow, "prcpdd", currentdate);
  9438. ds_grd_rcptlist.setColumn(lrow, "prcpno", "0");
  9439. ds_grd_rcptlist.setColumn(lrow, "prcphistno", "0");
  9440. ds_grd_rcptlist.setColumn(lrow, "pid", ds_main_appinfo_copyinfo.getColumn(0, "pid"));
  9441. ds_grd_rcptlist.setColumn(lrow, "orddd", ds_main_appinfo_copyinfo.getColumn(0, "orddd"));
  9442. ds_grd_rcptlist.setColumn(lrow, "cretno", ds_main_appinfo_copyinfo.getColumn(0, "cretno"));
  9443. ds_grd_rcptlist.setColumn(lrow, "shtno", "1");
  9444. ds_grd_rcptlist.setColumn(lrow, "oldshtno", "1");
  9445. ds_grd_rcptlist.setColumn(lrow, "prcpqty", "1");
  9446. ds_grd_rcptlist.setColumn(lrow, "prcptims", "1");
  9447. ds_grd_rcptlist.setColumn(lrow, "oldprcptims", "1");
  9448. ds_grd_rcptlist.setColumn(lrow, "copyseqno", ds_main_appinfo_copyinfo.getColumn(0, "copyseqno"));
  9449. ds_grd_rcptlist.setColumn(lrow, "issseqno", ds_main_appinfo_copyinfo.getColumn(0, "issseqno"));
  9450. ds_grd_rcptlist.setColumn(lrow, "issno", ds_main_appinfo_copyinfo.getColumn(0, "issno"));
  9451. ds_grd_rcptlist.setColumn(lrow, "defyn", "ADD");
  9452. var arrPostion = new Array();
  9453. arrPostion[0] = lrow;
  9454. grdf_setStatus(grd_rcptlist, "I", arrPostion);
  9455. //grd_rcptlist.addStatus(lrow, "insert");
  9456. //Event On
  9457. ds_grd_rcptlist.enableevent = true;
  9458. }
  9459. }
  9460. /**
  9461. * @desc : 마우스 오른쪽 버튼 팝업창
  9462. * @
  9463. * @param : 기본수가추가 (fAddCalcScor), 컬러수가추가 (fAddColorCalcScor), 수가삭제 (fDelCalcScor)
  9464. * @return :
  9465. * @authur : 이은영 2010.04.26
  9466. * @---------------------------------------------------
  9467. */
  9468. function fMouseRghtBtnPopup(gridObj, e)
  9469. {
  9470. utlf_addLog("fMouseRghtBtnPopup(gridObj, e)");
  9471. var oDs = this.objects[gridObj.binddataset];
  9472. if( oDs.rowcount < 1 ) return;
  9473. if( e.row < 0 || e.col < 0 ) return;
  9474. popupmenu00.trackPopup(e.screenX,e.screenY);
  9475. }
  9476. /**
  9477. * @desc : 마우스 오른쪽 버튼 팝업창
  9478. * @
  9479. * @param : 기본수가추가 (fAddCalcScor)
  9480. * @return :
  9481. * @authur : 이은영 2010.04.26
  9482. * @---------------------------------------------------
  9483. */
  9484. function fAddCalcScor() {
  9485. utlf_addLog("***** fAddCalcScor() *****");
  9486. var RecPrcpCd = ds_hidden_calcscorcd.getColumn(0, "hardcd"); // 의무기록 사본발행 기본수가코드
  9487. for (var i=0; i < ds_grd_rcptlist.rowcount ; i++)
  9488. {
  9489. var calcscorcd = ds_grd_rcptlist.getColumn(i, "calcscorcd");
  9490. if (calcscorcd == RecPrcpCd) {
  9491. var Msg = sysf_messageBox("수가코드 추가가 불", "I006");
  9492. return;
  9493. }
  9494. }
  9495. if (i == ds_grd_rcptlist.rowcount) {
  9496. fIssSearch();
  9497. }
  9498. }
  9499. /**
  9500. * @desc : 마우스 오른쪽 버튼 팝업창
  9501. * @
  9502. * @param : 수가삭제 (fDelCalcScor)
  9503. * @return :
  9504. * @authur : 이은영 2010.04.26
  9505. * @---------------------------------------------------
  9506. */
  9507. function fDelCalcScor() {
  9508. utlf_addLog("***** fDelCalcScor() *****");
  9509. var row = ds_grd_rcptlist.rowposition;
  9510. if (row > -1) {
  9511. var rowstatus = ds_grd_rcptlist.rowstatus(row);
  9512. // rowstatus => 0 :empty 1 : normal 2 : insert 4 : update 8 : delete 16 : group
  9513. if (rowstatus == "2") {
  9514. var Msg = sysf_messageBox("선택하신 수가코드를", "Q001");
  9515. if(Msg=="6"){
  9516. ds_grd_rcptlist.deleteRow(row);
  9517. }
  9518. } else {
  9519. var Msg = sysf_messageBox("수가코드 삭제가 불", "I006");
  9520. return;
  9521. }
  9522. }
  9523. }
  9524. /**
  9525. * 이전사본발행내역에서 발행내역 삭제
  9526. */
  9527. function fdeletecopy(){
  9528. utlf_addLog("***** fdeletecopy() *****");
  9529. var issno = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "issno");
  9530. var issgoalcd = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "issgoalcd");
  9531. //발행번호가 있고 && 발행목적이 무료가 아닌 건은 삭제 불가(20180508 이윤주)
  9532. if(!utlf_isNull(issno) && issgoalcd != "18" && issgoalcd != "19"){
  9533. sysf_messageBox("삭제 불가능한 상태입니다","I");
  9534. return;
  9535. }else {
  9536. var chk=sysf_messageBox("신청 내역을 삭제하시겠습니까? ", "S001", ""); //예:6 아니오:7 취소:2
  9537. if(chk=="6"){
  9538. ds_send_reqdata.clearData();
  9539. var nRow = ds_send_reqdata.addRow();
  9540. ds_send_reqdata.setColumn(nRow, "copyseqno", ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "copyseqno"));
  9541. ds_send_reqdata.setColumn(nRow, "lastupdtrid", sysf_getUserInfo("userid"));
  9542. var oParam = {};
  9543. oParam.id = "TXMRC01310";
  9544. oParam.service = "chrtmngtapp.ChrtRendMngt";
  9545. oParam.method = "setUpdateCopyState";
  9546. oParam.inds = "req=ds_send_reqdata";
  9547. //oParam.outds = "null";
  9548. oParam.async = false;
  9549. oParam.callback = "cf_TXMRC01310";
  9550. tranf_submit(oParam);
  9551. fAppCopyInfoClear();
  9552. //사본발행 수가입력쪽 삭제
  9553. ds_grd_rcptlist.clearData();
  9554. ds_grd_rcptlist.applyChange();
  9555. ds_temp2_appinfo_copyinfo.clearData();
  9556. ds_temp2_appinfo_copyinfo.addRow();
  9557. ds_main.clearData();
  9558. ds_main.addRow();
  9559. // model.resetInstanceNode("/root/main/rcptlist");
  9560. // model.resetInstanceNode("/root/temp2/appinfo/copyinfo");
  9561. // model.resetInstanceNode("/root/main/delivefactcnt");
  9562. // 이전사본발행내역에서 내역을 삭제한 후 reload
  9563. fReqGetBfCopyIssHistList(ipt_pid.text);
  9564. //sysf_messageBox("삭제되었습니다", "I");
  9565. }
  9566. }
  9567. }
  9568. /**
  9569. * 이전사본발행내역에서 선택 내용 삭제
  9570. */
  9571. function fDeleteRecord(){
  9572. utlf_addLog("***** fDeleteRecord() *****");
  9573. var issno = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "issno");
  9574. //var issgoalcd = ds_grd_apphist.getColumn(ds_grd_apphist.rowposition, "issgoalcd");
  9575. //발행번호가 있으면 삭제 불가
  9576. if(!utlf_isNull(issno)){
  9577. sysf_messageBox("이미 발행되어 선택내용을 삭제할 수 없습니다.","I");
  9578. return;
  9579. }else{
  9580. var chk=sysf_messageBox("해당 내역의 선택내용을 삭제하시겠습니까? ", "S001", ""); //예:6 아니오:7 취소:2
  9581. if(chk=="6"){
  9582. var idx = ds_grd_apphist.rowposition;
  9583. dsf_createDsRow("ds_send_deldetail", [{col:"pid", type:"string", size:256, val:ds_grd_apphist.getColumn(idx, "pid")}
  9584. , {col:"copyseqno", type:"string", size:256, val:ds_grd_apphist.getColumn(idx, "copyseqno")}
  9585. , {col:"userid", type:"string", size:256, val:sysf_getUserInfo("userid")}]);
  9586. var oParam = {};
  9587. oParam.id = "reqUpdateAppDetail";
  9588. oParam.service = "chrtmngtapp.ChrtRendMngt";
  9589. oParam.method = "setUpdateCopyAppDetail";
  9590. oParam.inds = "req=ds_send_deldetail";
  9591. oParam.async = false;
  9592. tranf_submit(oParam);
  9593. //sysf_messageBox("삭제되었습니다", "I");
  9594. fAppCopyInfoClear();
  9595. /*
  9596. var e = new GridClickEventInfo();
  9597. grd_apphist.oncellclick.fireEvent(grd_apphist, );
  9598. */
  9599. }
  9600. }
  9601. }
  9602. /**
  9603. * 서 식 Header & Footer 정의 2013.08.26 CYW
  9604. * @param srcformcd
  9605. * @returns
  9606. */
  9607. function MakerHeaderNFooter( srcformcd , formprogflag , mainyn ){
  9608. utlf_addLog("***** MakerHeaderNFooter( "+srcformcd+" , "+formprogflag+" , "+mainyn+" ) *****")
  9609. var instcd = sysf_getUserInfo("dutplceinstcd");
  9610. var formcd = srcformcd; // 서식코드
  9611. var cover_header = "";
  9612. var cover_header_start = "";
  9613. var cover_header_txt = "";
  9614. var cover_header_end = "";
  9615. var cover_footer = "";
  9616. var cover_footer_start = "";
  9617. var cover_footer_txt = "";
  9618. var cover_footer_end = "";
  9619. var body_header = "";
  9620. var body_footer = "";
  9621. //var logo = "com/commonweb/images/logo_lctech.png";
  9622. var logo = "IMAGES/emr/MN/logo_lctech.png";
  9623. // Cover Header 부분 ---------------------------------------------------------------------------------------------------
  9624. cover_header_start ="<HTML> " +
  9625. "\n<BODY style='margin: 0;'> " +
  9626. "\n<TABLE cellspacing='0' width='100%'> " +
  9627. "\n<TR> " +
  9628. "\n <TD width='65%'> " +
  9629. "\n <TABLE style='width=100%; font-family: 맑은 고딕;'> " +
  9630. "\n <TR> " +
  9631. "\n <TD> " +
  9632. "\n <IMG SRC='" + logo + "' /> " +
  9633. "\n </TD> " +
  9634. "\n </TR> " +
  9635. "\n <TR> " +
  9636. "\n <TD style='font-size: 18pt; text-align: center;'><!--?VAR_CHART_NAME_TOP?--></TD>" +
  9637. "\n </TR> " +
  9638. "\n <TR> " +
  9639. "\n <TD style='font-size: 14pt; text-align: center;'><!--?VAR_CHART_NAME_BOTTOM?--></TD>" +
  9640. "\n </TR> " +
  9641. "\n </TABLE> " +
  9642. "\n </TD> " +
  9643. "\n <TD width='35%' style='padding-right: 20px; padding-bottom: 5px'> " +
  9644. "\n <DIV style='border-style: solid; border-width: 1px; padding: 5px;'> " +
  9645. "\n <TABLE cellspacing='0' width='100%' style='font-family: 맑은 고딕;'> " +
  9646. "\n <TR> " +
  9647. "\n <TD style='font-size: 18pt' colspan='2'><!--?VAR_PAT_NUM?--></TD>" +
  9648. "\n </TR> " +
  9649. "\n <TR> " +
  9650. "\n <TD style='font-size: 18pt'><!--?VAR_PAT_NAME?--></TD> " +
  9651. "\n <TD style='font-size: 14pt'><!--?VAR_TREAT_DEPT?--></TD> " +
  9652. "\n </TR> " +
  9653. "\n <TR> " +
  9654. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_JUMIN_NO?--></TD> " +
  9655. "\n <TD style='font-size: 12pt'><!--?VAR_PAT_AGE_SEX?--></TD> " +
  9656. "\n </TR> " +
  9657. "\n </TABLE> " +
  9658. "\n </DIV> " +
  9659. "\n </TD> " +
  9660. "\n</TR> " +
  9661. "\n</TABLE> " +
  9662. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'> " +
  9663. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9664. "\n <TR> " +
  9665. "\n <TD style='width: 50%; text-align: left'><!--?VAR_DATE_HEADER?--></TD> " +
  9666. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_DOCTOR_HEADER?--></TD> " +
  9667. "\n <TD style='width: 25%; text-align: center;'><!--?VAR_WARD_HEAD?--></TD> " +
  9668. "\n <TD style='width: 10%; text-align: right;'><!--?VAR_CLASS?--></TD> " +
  9669. "\n </TR> " +
  9670. "\n </TABLE> " +
  9671. "\n</DIV>";
  9672. cover_header_end = "\n</BODY>"+
  9673. "\n</HTML>";
  9674. // Cover Footer 부분 ---------------------------------------------------------------------------------------------------
  9675. cover_footer_start = "<HTML>"+
  9676. "\n<BODY style='margin: 0;'>"+
  9677. "\n"+
  9678. "\n<DIV>"+
  9679. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>"+
  9680. "\n <TR>";
  9681. cover_footer_end = "\n<DIV style='border-top-style: solid; border-width: 2px;'>"+
  9682. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  9683. "\n <TR>"+
  9684. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD>"+
  9685. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD>"+
  9686. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD>"+
  9687. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD>"+
  9688. "\n </TR>"+
  9689. "\n </TABLE>"+
  9690. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'>"+
  9691. "\n <TR>"+
  9692. "\n <TD style='width: 20%; text-align: left; '></TD>"+
  9693. "\n </TR>"+
  9694. "\n </TABLE>"+
  9695. "\n</DIV>"+
  9696. "\n"+
  9697. "\n</BODY>"+
  9698. "\n</HTML>";
  9699. //Body Header 부분 ---------------------------------------------------------------------------------------------------
  9700. body_header = "<HTML>"+
  9701. "\n<BODY style='margin-top: 0; margin-left: 0; margin-right; 0;'> "+
  9702. "\n "+
  9703. "\n<DIV style='border-top-style: solid; border-bottom-style: solid; border-width: 2px;'>"+
  9704. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  9705. "\n <TR> "+
  9706. "\n <TD style='width: 10%; text-align: left; '><!--?VAR_PAT_NUM?--></TD> "+
  9707. "\n <TD style='width: 10%; text-align: center;'><!--?VAR_PAT_NAME?--></TD> "+
  9708. "\n <TD style='width: 15%; text-align: center;'><!--?VAR_PAT_AGE_SEX?--></TD> "+
  9709. "\n <TD style='width: 55%; text-align: center;'><!--?VAR_DATE_HEADER?--></TD> "+
  9710. "\n <TD style='width: 10%; text-align: right; '><!--?VAR_CLASS?--></TD> "+
  9711. "\n </TR> "+
  9712. "\n </TABLE> "+
  9713. "\n</DIV> "+
  9714. "\n "+
  9715. "\n</BODY> "+
  9716. "\n</HTML>";
  9717. // Body Footer 부분 ---------------------------------------------------------------------------------------------------
  9718. body_footer = "<HTML>"+
  9719. "\n<BODY style='margin: 0;'> "+
  9720. "\n "+
  9721. "\n<DIV> "+
  9722. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> "+
  9723. "\n <TR> "+
  9724. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD> "+
  9725. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> "+
  9726. "\n </TR> "+
  9727. "\n </TABLE> "+
  9728. "\n</DIV> "+
  9729. "\n<DIV style='border-top-style: solid; border-width: 2px;'> "+
  9730. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  9731. "\n <TR> "+
  9732. "\n <TD style='width: 20%; text-align: left; '>페이지:<!--?SYS_PAGE_CURRENT?-->/<!--?SYS_PAGE_TOTAL?--></TD> "+
  9733. "\n <TD style='width: 40%; text-align: center;'><!--?VAR_PRINT_HEADER?--></TD> "+
  9734. "\n <TD style='width: 20%; text-align: center;'><!--?VAR_PRINT_NAME?--></TD> "+
  9735. "\n <TD style='width: 20%; text-align: right; '><!--?VAR_PRINT_DEPT?--></TD> "+
  9736. "\n </TR> "+
  9737. "\n </TABLE> "+
  9738. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 11pt; font-weight: bold;'> "+
  9739. "\n <TR> "+
  9740. "\n <TD style='width: 20%; text-align: left; '></TD> "+
  9741. "\n </TR> "+
  9742. "\n </TABLE> "+
  9743. "\n</DIV> "+
  9744. "\n "+
  9745. "\n</BODY> "+
  9746. "\n</HTML>";
  9747. // ----------------------------------------------------------------------------------------------------------------------
  9748. if( srcformcd == "0000000003"){ //입원초진
  9749. cover_header_txt = "\n <DIV>" +
  9750. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9751. "\n <TR><TD style='text-align: left; font-weight: bold;'>입원일자 : <!--?VAR_ORDDATE?--></TD></TR> " +
  9752. "\n <TR><TD style='text-align: left; font-weight: bold;'>입 원 과 : <!--?VAR_INORDDEPTHNGNM?--></TD></TR> " +
  9753. "\n </TABLE>" +
  9754. "\n </DIV>";
  9755. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9756. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9757. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9758. "\n </TR>" +
  9759. "\n </TABLE>" +
  9760. "\n </DIV>";
  9761. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9762. }else if( srcformcd == "0000000676"){ //수술기록
  9763. cover_header = cover_header_start + cover_header_end;
  9764. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9765. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Surgeon : <!--?VAR_SURGEON?--></TD>"+
  9766. "\n </TR>"+
  9767. "\n <TR>"+
  9768. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  9769. "\n </TR>"+
  9770. "\n </TABLE>"+
  9771. "\n</DIV>";
  9772. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9773. }else if( srcformcd == "0000000679"){ //응급실기록
  9774. cover_header_txt = "\n<DIV>" +
  9775. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9776. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR>" +
  9777. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR>" +
  9778. "\n <TR><TD style='text-align: left; font-weight: bold;'></TD></TR>" +
  9779. "\n <TR><TD style='text-align: left; font-weight: bold;'>[환자 내원시간] : <!--?VAR_ERDT?--></TD></TR>" +
  9780. "\n </TABLE>" +
  9781. "\n</DIV>";
  9782. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9783. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9784. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9785. "\n </TR>" +
  9786. "\n </TABLE>" +
  9787. "\n </DIV>";
  9788. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9789. }else if( srcformcd == "0000000680"){ //입퇴원요약
  9790. cover_header_txt = "\n<DIV>" +
  9791. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'>" +
  9792. "\n <TR><TD style='text-align: left; font-weight: bold;'>[입퇴원정보] </TD></TR>" +
  9793. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;입원일/입원과 : <!--?VAR_ININFO?--></TD></TR>" +
  9794. "\n <TR><TD style='text-align: left; font-weight: bold;'>&nbsp;&nbsp;퇴원일/퇴원과 : <!--?VAR_DSCHINFO?--></TD></TR>" +
  9795. "\n </TABLE>" +
  9796. "\n</DIV>";
  9797. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9798. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9799. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ Staff작성 및 확인 : <!--?VAR_STAFFNM?--></TD>"+
  9800. "\n </TR>"+
  9801. "\n <TR>"+
  9802. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD>"+
  9803. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 의무기록사 : <!--?VAR_EMRRECUSRNM?--></TD>"+
  9804. "\n </TR>"+
  9805. "\n </TABLE>"+
  9806. "\n</DIV>";
  9807. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9808. }else if( srcformcd == "0000002022"){ //마취기록지
  9809. cover_header = cover_header_start + cover_header_end;
  9810. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9811. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9812. "\n </TR>" +
  9813. "\n </TABLE>" +
  9814. "\n </DIV>";
  9815. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9816. // }else if( srcformcd == "0000003325"){ //DSC기록
  9817. }else if( srcformcd == "0000003169"){ //Brief OP Note
  9818. cover_header = cover_header_start + cover_header_end;
  9819. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9820. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9821. "\n </TR>" +
  9822. "\n </TABLE>" +
  9823. "\n </DIV>";
  9824. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9825. }else{
  9826. if(formprogflag == "-" || formprogflag == "MAIN" || mainyn == "Y"){
  9827. cover_header_txt = "\n<DIV>" +
  9828. "\n <TABLE width='100%' style='font-family: 맑은 고딕; font-size: 10pt;'> " +
  9829. "\n <TR><TD style='text-align: left; font-weight: bold;'>진료일자 : <!--?VAR_ORDDATE?--></TD></TR>" +
  9830. "\n <TR><TD style='text-align: left; font-weight: bold;'>진 료 과 : <!--?VAR_ORDDEPT?--></TD></TR>" +
  9831. "\n </TABLE>" +
  9832. "\n</DIV>";
  9833. cover_header = cover_header_start + cover_header_txt + cover_header_end;
  9834. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9835. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9836. "\n </TR>" +
  9837. "\n </TABLE>" +
  9838. "\n </DIV>";
  9839. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9840. }else{
  9841. cover_header = cover_header_start + cover_header_end;
  9842. cover_footer_txt = "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최초작성자 : <!--?VAR_FSTRGSTRUSRNM?--></TD>" +
  9843. "\n <TD style='width: 50%; text-align: left; font-weight: bold;'>◈ 최종작성자 : <!--?VAR_LASTUPDTRUSRNM?--></TD> " +
  9844. "\n </TR>" +
  9845. "\n </TABLE>" +
  9846. "\n </DIV>";
  9847. cover_footer = cover_footer_start + cover_footer_txt + cover_footer_end;
  9848. }
  9849. }
  9850. var txt = cover_header + "♥" + cover_footer + "♥" + body_header + "♥" + body_footer;
  9851. return txt;
  9852. }
  9853. function MakeRecFile( hfflag, txt, htmltxt ){
  9854. utlf_addLog("***** MakeRecFile( "+hfflag+", "+txt+", "+htmltxt+" ) *****");
  9855. var foldernm = "C:/CertrecPrnt" + sysf_getUserInfo("dutplceinstcd");
  9856. var local_path ="";
  9857. local_path = foldernm + "\\";
  9858. if( hfflag == "h" ){
  9859. //var headso = new ActiveXObject("Scripting.FileSystemObject");
  9860. if(fso.FileExists(local_path +txt + "_cover_header.html") == true)
  9861. {
  9862. fso.DeleteFile(local_path + txt + "_cover_header.html", true)
  9863. }
  9864. var h = fso.CreateTextFile( local_path + txt + "_cover_header.html" , true, true);
  9865. h.WriteLine(htmltxt);
  9866. h.Close();
  9867. }
  9868. if( hfflag == "f" ){
  9869. //var footso = new ActiveXObject("Scripting.FileSystemObject");
  9870. if(fso.FileExists(local_path + txt + "_cover_footer.html") == true)
  9871. {
  9872. fso.DeleteFile(local_path + txt + "_cover_footer.html", true)
  9873. }
  9874. var f = fso.CreateTextFile( local_path + txt + "_cover_footer.html" , true, true);
  9875. f.WriteLine(htmltxt);
  9876. f.Close();
  9877. }
  9878. }
  9879. // 20190904 금정화 추가; 조회기간 설정기능 추가함에 따라, ds_grd_outpat 데이터셋 필터 시 아래 함수사용
  9880. function set_filter_with_period(addStr)
  9881. {
  9882. var filterStr = "orddd >= '" + ds_searchprd.getColumn(0, "fromdd") + "' && orddd <= '" + ds_searchprd.getColumn(0, "todd") + "'";
  9883. if(swc_prof.out.roundrect6.chk_searchprd.value){
  9884. if(addStr != null) {
  9885. filterStr += " && " + addStr;
  9886. }
  9887. }else{
  9888. if(addStr != null) {
  9889. filterStr = addStr;
  9890. } else {
  9891. filterStr = "";
  9892. }
  9893. }
  9894. ds_grd_outpat.filter(filterStr);
  9895. }
  9896. function fGetCost()
  9897. {
  9898. // 수가발행에 따른 비용 계산
  9899. var calcscorcdStr = "";
  9900. var tempStr = "";
  9901. for(var i = 0; i < ds_grd_rcptlist.rowcount; i++){
  9902. tempStr = utlf_transNullToEmpty(ds_grd_rcptlist.getColumn(i, "calcscorcd"));
  9903. if(tempStr != ""){
  9904. calcscorcdStr = calcscorcdStr + tempStr + "','";
  9905. }
  9906. }
  9907. if(calcscorcdStr != ""){
  9908. calcscorcdStr = "'" + calcscorcdStr;
  9909. calcscorcdStr = calcscorcdStr.substr(0, calcscorcdStr.length - 2);
  9910. }
  9911. dsf_createDsRow("ds_cond_cost", [{col: "calcscorcdstr" , val: calcscorcdStr}]);
  9912. dsf_createDs("ds_cost");
  9913. var oParam = {};
  9914. oParam.id = "GetCostInfo";
  9915. oParam.service = "chrtmngtapp.CopyIssMngt";
  9916. oParam.method = "reqGetCostInfo";
  9917. oParam.inds = "req=ds_cond_cost";
  9918. oParam.outds = "ds_cost=cost";
  9919. oParam.async = false;
  9920. oParam.callback = "cf_GetCostInfo";
  9921. tranf_submit(oParam);
  9922. var cost = 0;
  9923. var totalcost = 0;
  9924. var rowcnt = ds_cost.rowcount;
  9925. trace("rowcnt >> " + rowcnt);
  9926. if(rowcnt > 0){
  9927. for(var j = 0; j < rowcnt; j++){
  9928. ds_cost.filter("calcscorcd=='" + ds_grd_rcptlist.getColumn(j, "calcscorcd") + "'");
  9929. if(ds_cost.rowcount > 0){
  9930. cost = ds_cost.getColumn(0, "insurbpnt");
  9931. }else{
  9932. cost = 0;
  9933. }
  9934. totalcost += parseInt(cost) * parseInt(ds_grd_rcptlist.getColumn(j, "shtno")) * parseInt(ds_grd_rcptlist.getColumn(j, "prcptims"));
  9935. /*
  9936. trace(j + ") cost >> " + parseInt(cost));
  9937. trace(j + ") shtno >> " + parseInt(ds_grd_rcptlist.getColumn(j, "shtno")));
  9938. trace(j + ") totalcost >> " + totalcost);
  9939. */
  9940. ds_cost.filter("");
  9941. }
  9942. }
  9943. //trace("+++) totalcost >> " + totalcost);
  9944. ipt_cost.value = totalcost;
  9945. }
  9946. function cf_GetCostInfo(sSvcId, nErrorCode, sErrorMsg) {
  9947. arErrorCode.push(sSvcId, nErrorCode);
  9948. if(nErrorCode < 0) return;
  9949. //sysf_trace("***** cf_GetCostInfo *****");
  9950. }
  9951. ]]></Script>