123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <!--
- * @(#)SPPID21700_원외처방조회.xrw
- * 수정이력
- * - 2007.10.30 / 최초작성 / 정주미
- *
- * - opener 에서 전달받는 조건 경로
- /root/init/clamym
- /root/init/clamdg
- /root/init/pid
- /root/init/pidsn
- /root/init/clamkey
- /root/init/workflag
- /root/init/ioflag
- -->
- <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
- <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
- <xhtml:head>
- <xhtml:title>원외처방 조회</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <list7>
- <clop>
- </clop>
- </list7>
- <item1>
- <clso>
- <edicd/>
- <edilnno/>
- <spclcd/>
- <spclcdnm/>
- <spclformat/>
- <detldesc/>
- <spclspec/>
- <JT010cd/>
- </clso>
- </item1>
- </main>
- <send>
- <delclso>
- <delclamym/>
- <delclamdg/>
- <delpid/>
- <delpidsn/>
- <delworkflag/>
- </delclso>
- <clso>
- <clsoclamym/>
- <clsoclamdg/>
- <clsopid/>
- <clsopidsn/>
- <spclcd/>
- <mpsno/>
- <calcscorcd/>
- <edilnno/>
- <spclspec/>
- </clso>
- <list7>
- <clop/>
- </list7>
- <clbs/>
- </send>
- <init>
- <clamym/>
- <clamdg/>
- <pid/>
- <pidsn/>
- <clamkey/>
- <workflag/>
- <ioflag/>
- <maxclopseqno/>
- <maxseqno/>
- <ordfromdd/>
- <indd/>
- <insukindcd/>
- <suppkindcd/>
- <orddeptcd/>
- <orddrid/>
- <undersixageyn/>
- <mechage/>
- <payflag/>
- <clamflagcd/>
- <clamkey/>
- <patnm/>
- <gender/>
- <stsioflag/>
- <ordtodd/>
- <instcd/>
- <clamtypecd/>
- <fixrateyn/>
- </init>
- <hidden>
- <selectedRdoPay/>
- <oldclopdd/>
- <oldclopno/>
- <sppiz00700>
- <cond>
- <judgrid/>
- <memoflag/>
- <memocls/>
- <ediitem1/>
- </cond>
- <rslt>
- <memocd/>
- <memo/>
- </rslt>
- </sppiz00700>
- <popupmenu>
- <gridclop>
- <inititem>
- <name>원외처방 추가</name>
- <func>fOutOrderGridInsertRow</func>
- </inititem>
- <item>
- <name>-</name>
- <func/>
- </item>
- <item>
- <name>행 추가</name>
- <func>fOutOrderGridInsertRow</func>
- </item>
- <item>
- <name>행 복사</name>
- <func>fOutOrderGridCopyRow</func>
- </item>
- <item>
- <name>-</name>
- <func/>
- </item>
- <item>
- <name>행 삭제</name>
- <func>fClopGridDeleteRow</func>
- </item>
- <item>
- <name>교부번호 전체삭제</name>
- <func>fClopGridAllDeleteRow</func>
- </item>
- <item>
- <name>-</name>
- <func/>
- </item>
- <item>
- <name>수가조회</name>
- <func>fOrderCalcScorSrch_clop</func>
- </item>
- <item>
- <name>약품편람</name>
- <func>fOrderDrugHBook_clop</func>
- </item>
- </gridclop>
- </popupmenu>
- <smpic00200>
- <judgsrch>
- <con1_dd/>
- <con2_gsflag/>
- <con3_search1/>
- <con4_search2/>
- <con5_insu/>
- <con6_calcscorcd/>
- <con7_todd/>
- <con8_instcd/>
- <con9_lastupdtdt/>
- <con10_preord_chk/>
- <con11_edicd/>
- <con_ordinptflag/>
- </judgsrch>
- <rslt>
- <ediitem1/>
- <ediitem2/>
- <grupcalcscorcd/>
- <snglcalcscorcd/>
- <basecd/>
- <hngnm/>
- <edicdflag/>
- <ediunitcost/>
- <ordnm/>
- </rslt>
- </smpic00200>
- <sppid22100>
- <cond>
- <pid/>
- <instcd/>
- <clamkey/>
- <clamcretdd/>
- <patnm/>
- <gender/>
- <ioflag/>
- <stsioflag/>
- <choicdsrch/>
- <calcscorcd/>
- <hngnm/>
- <scrhdate/>
- <fromdd/>
- <todd/>
- <insukind/>
- <suppkind/>
- <clopyn/>
- </cond>
- </sppid22100>
- <sppiz01000>
- <cond>
- <cdcls/>
- <cdid/>
- </cond>
- </sppiz01000>
- <list7>
- <clop>
- <selectedRdoPay/>
- <oldclopdd/>
- <oldclopno/>
- <oldrowstatus/>
- <oldedicd/>
- <oldsnglcalcscorcd/>
- <oldedidrugqty/>
- <olddrugtims/>
- <oldedidrugdayno/>
- </clop>
- </list7>
- </hidden>
- </root>
- </instance>
- <submission id="TRPID21701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/init" resultref="/root/main/list7"/>
- <submission id="TXPID21701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list7"/>
- <submission id="TXPID21702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list7"/>
- <submission id="TRPID20303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/item5" resultref="/root/main/item5"/>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- fInitialize(); // 화면을 초기화한다.
- fCheckAuth(); // 화면 권한을 설정한다.
- ]]>
- </script>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript">
- <![CDATA[
- // 화면 권한을 설정한다.
- function fCheckAuth() {
- // 조회용 화면으로 권한을 설정하지 않음
- //var xAuth = !checkAuth("X");
- /*
- if (model.getValue("/root/init/workflag") != "12") {
- btn_save.disabled = true;
- }
- if (model.getValue("/root/init/ioflag") == "I") { // opener가 입원인 경우
- btn_save.attribute("text") = "저장";
- } else {
- btn_save.attribute("text") = "확인";
- }
- */
- }
- // 화면을 초기화한다.
- function fInitialize() {
- // 원외처방 Grid
- grd_oprcphist.mergecol(grd_oprcphist.colRef("edilnno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("snglcalcscorcd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("edicd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("hngnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("payflag")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugqty")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugtims")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugdayno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("spclspecyn")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("efcyclscd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("efcyclsnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("ordnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("edicdflag")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("mpsno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("newmpsno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("spclcd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("seqno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("spclspec")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("usermemoyn")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("spclcdnm")) = false;
- grd_oprcphist.mergecells = "bycol";
-
- // 원외처방 - 항목구분 (기본값 : 전체)
- model.setValue("/root/hidden/selectedRdoPay", "-"); // 전체
-
- // model.removeNodeset("/root/main/list7/clop");
- // model.refresh();
- if (model.getValue("/root/init/clamym")) {
- if (model.getValue("/root/init/ioflag") == "I") { // opener가 입원인 경우
- submit("TRPID21701");
- } else {
- // opener의 원외처방 그리드를 복사한다.
- model.copyNode("/root/main/list7", opener.root.main.list7); //desct, src
- grd_oprcphist.rebuild();
- }
- } else {
- model.removeNodeset("/root/main/list7/clop");
- model.refresh();
- }
- }
- // SPPIZ00700_심사Comment조회.xrw 호출
- function fGetJudgComment() {
- model.resetInstanceNode("/root/hidden/sppiz00700/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00700/cond");
- // memoflag - 메모구분(1:심사자메모, 2:EDI메모, 3:줄단위메모)
- var memoflag = "3";
- model.setValue("/root/hidden/sppiz00700/cond/memoflag", memoflag);
- // memocls - 메모분류(01:약, 02:주사, 03:처치, 04:검사, 99:기타)
- // [2007.12.16] ediitem1 = "03" 으로 보내면 약 분류가 조회되나 약과 기타 항목을 동시에 보기 위해 분류가 아닌 항을 조건으로 전달한다.
- var memocls = "";
- model.setValue("/root/hidden/sppiz00700/cond/memocls", memocls);
- var ediitem1 = "03"; // 투약
- model.setValue("/root/hidden/sppiz00700/cond/ediitem1", ediitem1);
- modal("SPPIZ00700", "1", "400", "10", "SPPIZ00700", "/root/hidden/sppiz00700", "/root/send/sppiz00700", "", "");
- }
- // 심사Comment 조회 Popup에서 선택한 줄단위메모를 설정한다.
- // SPPIZ00700_심사Comment조회.xrw 에서 opener.javascript.fSetLnUnitMemoRefresh(); 형태로 호출한다.
- function fSetLnUnitMemoRefresh(){
- var memo = model.getValue("/root/hidden/sppiz00700/rslt/memo");
- var spclspec = model.getValue("/root/main/item1/clso/spclspec");
- if (memo) {
- if (spclspec) { // 기존 줄단위메모가 공백이 아닌 경우 선택된 메모를 심사화면 메모 뒤에 덧붙인다.
- model.setValue("/root/main/item1/clso/spclspec", spclspec +" \n"+ memo);
- } else {
- model.setValue("/root/main/item1/clso/spclspec", memo);
- }
- model.refresh();
- }
- }
- // 선택한 처방의 줄단위 특정내역을 수정/입력한다.
- function fSetLnUnitSpclSpec() { // 'T' 필드 더블클릭시 호출한다.
- var row = grd_oprcphist.row;
- if (isDataCell()) { // (tfHelper.js) 현재 click target이 data 영역인지 check: Boolean true or false
- // if (grd_oprcphist.isC우ell(event.trget) && row > grd_oprcphist.fixedrows) {
- model.setValue("/root/main/item1/clso/edicd", model.getValue("/root/main/list7/clop["+ row +"]/edicd"));
- model.setValue("/root/main/item1/clso/edilnno", model.getValue("/root/main/list7/clop["+ row +"]/edilnno"));
-
- var spclcd = model.getValue("/root/main/list7/clop["+ row +"]/spclcd");
- var spclcdnm = model.getValue("/root/main/list7/clop["+ row +"]/spclcdnm");
- var spclspec = model.getValue("/root/main/list7/clop["+ row +"]/spclspec");
- var spclformat = "";
- var detldesc = "";
- var JT010cd = "";
- if (spclcd == "JT010") {
- if (spclcdnm == "") {
- spclcdnm = "JT010 저함량 의약품 배수 처방사유";
- }
- spclformat = "X(1)/X(200)";
- detldesc = "저함량 의약품 배수처방(조제)건의 경우는 해당 사유를 각각 기재 - 처방(조제) 사유코드가 'E'인 경우는 구체적인 사유를 함께 기재";
- // detldesc = "제조업자(수입자), 성분, 제형이 동일한 의약품 중 여러 함량으로 등재되어 있는 겨웅 고함량 의약품으로 처방(또는 원내조지)하지 않고 저함량 의약품으로 배수 처방하거나 원내조제하는 경우 해당 처방(원내조제) 사유를 기재";
- JT010cd = spclspec.substr(0, 1);
- if (JT010cd == "A" || JT010cd == "B" || JT010cd == "C" || JT010cd == "E") {
- if (spclspec.substr(1, 1) == "/") {
- spclspec = spclspec.substr(2, spclspec.length);
- } else {
- spclspec = spclspec.substr(1, spclspec.length);
- }
- }
- btn_memohistory.visible = false;
- // btn_memohistory_drug.visible = false;
- // btn_memohistory_injection.visible = false;
- // btn_memohistory_treat.visible = false;
- // btn_memohistory_exam.visible = false;
- // btn_memohistory_etc.visible = false;
- btn_alter.visible = false;
- // btn_delete.visible = true;
- if (model.getValue("/root/init/workflag") != "12") {
- btn_delete.visible = false;
- btn_clear.visible = false;
- } else {
- btn_delete.visible = true;
- }
- model.toggle("case_JT010"); // 해당 tab 으로 토글시킨다.
- } else {
- if (spclcd == "") {
- spclcd = "JX999";
- }
- if (spclcdnm =="") {
- spclcdnm = "JX999 기타내역";
- }
- spclformat = "X(700)";
- detldesc = "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재";
- if (model.getValue("/root/init/workflag") != "12") {
- btn_memohistory.visible = false;
- // btn_memohistory_drug.visible = false;
- // btn_memohistory_injection.visible = false;
- // btn_memohistory_treat.visible = false;
- // btn_memohistory_exam.visible = false;
- // btn_memohistory_etc.visible = false;
- btn_alter.visible = false;
- btn_delete.visible = false;
- btn_clear.visible = false;
- tar_spclspec_jx999.disabled = true;
- } else {
- btn_memohistory.visible = true;
- // btn_memohistory_drug.visible = true;
- // btn_memohistory_injection.visible = true;
- // btn_memohistory_treat.visible = true;
- // btn_memohistory_exam.visible = true;
- // btn_memohistory_etc.visible = true;
- btn_alter.visible = true;
- btn_delete.visible = true;
- tar_spclspec_jx999.disabled = false;
- }
- model.toggle("case_JX999"); // 해당 tab 으로 토글시킨다.
- }
- model.setValue("/root/main/item1/clso/spclcd", spclcd);
- model.setValue("/root/main/item1/clso/spclcdnm", spclcdnm);
- model.setValue("/root/main/item1/clso/spclformat", spclformat);
- model.setValue("/root/main/item1/clso/detldesc", detldesc);
- model.setValue("/root/main/item1/clso/spclspec", spclspec);
- model.setValue("/root/main/item1/clso/JT010cd", JT010cd);
- }
- // else {
- else if (row == 0) { // 타이틀 클릭한 경우
- grd_oprcphist.row = 0;
- btn_memohistory.visible = false;
- // btn_memohistory_drug.visible = false;
- // btn_memohistory_injection.visible = false;
- // btn_memohistory_treat.visible = false;
- // btn_memohistory_exam.visible = false;
- // btn_memohistory_etc.visible = false;
- btn_alter.visible = false;
- btn_delete.visible = false;
- tar_spclspec_jx999.disabled = true;
- model.resetInstanceNode("/root/main/item1/clso");
- }
- model.refresh();
- }
- // 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- function fSetSpclSpecJX999() {
- var iTotSpclCdCnt = 0; // DB에 저장될 JX999 코드 개수
- var clamym = model.getValue("/root/init/clamym");
- var clamdg = model.getValue("/root/init/clamdg");
- var pid = model.getValue("/root/init/pid");
- var pidsn = model.getValue("/root/init/pidsn");
- if (clamym == "") {
- return;
- } else {
- model.removeNodeset("/root/send");
- }
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var spclcd = model.getValue("/root/main/list7/clop["+ i +"]/spclcd");
- // var mpsno = model.getValue("/root/main/list7/clop["+ i +"]/mpsno");
- // 외래사후심사의 경우 교부일자, 교부번호가 수정된 경우 신규 mpsno로 변경되어야 하므로
- var mpsno = model.getValue("/root/main/list7/clop["+ i +"]/clopdd") + model.getValue("/root/main/list7/clop["+ i +"]/clopno");
- var edicd = model.getValue("/root/main/list7/clop["+ i +"]/edicd");
- var edilnno = model.getValue("/root/main/list7/clop["+ i +"]/edilnno");
-
- // 해당 청구키의 JX999는 모두 삭제하고 새로 추가하므로 "삭제" 상태가 아닌 모든 경우를 전송한다.
- if (spclcd != "") {
- var iSpclCdCnt = 0;
- var spclmemo = model.getValue("/root/main/list7/clop["+ i +"]/spclspec");
- var iSpclCdTotLength = getStringLength(spclmemo); // (stringHelper.js) 문자열의 길이를 구한다.
- var insCharTotCnt = 0; // 특정내역으로 잘라진 총 글자 수
- if (iSpclCdTotLength > 350) { // 새로 입력된 특정코드가 700byte를 넘는다.
- // 영문(700자), 한글(350자) 길이로 잘라서 n개의 특정코드를 만든다.
- var iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- var iStartInx = 0; // 특정내역 시작 index
- var iCharCnt = 0; // 몇글자로 구성되는지 계산
- for (var j = 0; j < spclmemo.length; j++) {
- var sBit = spclmemo.charAt(j);
- iCharCnt++;
- if (escape(sBit).length > 4) {
- iLen = iLen + 2;
- } else {
- iLen = iLen + 1;
- }
- if (iLen == 350 || iLen > 350) { // 영문(700자), 한글(350자)
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamym", clamym);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamdg", clamdg);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopid", pid);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopidsn", pidsn);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclcd", spclcd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclspec", spclmemo.substr(iStartInx, iCharCnt));
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/mpsno", mpsno);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/calcscorcd", edicd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/edilnno", edilnno);
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamkey", clamym);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamkey", clamdg);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamkey", pid);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamkey", pidsn);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclcd", spclcd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclspec", spclmemo.substr(iStartInx, iCharCnt - 1));
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/mpsno", mpsno);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/calcscorcd", edicd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/edilnno", edilnno);
- iStartInx += (iCharCnt - 1);
- j--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamkey", clamym);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamdg", clamdg);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopid", pid);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopidsn", pidsn);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclcd", spclcd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclspec", spclmemo.substring(iStartInx, spclmemo.length));
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/mpsno", mpsno);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/calcscorcd", edicd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/edilnno", edilnno);
- }
- }
- // else { // 새로 입력된 특정코드는 700byte를 넘지 않는다.
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamym", clamym);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsoclamdg", clamdg);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopid", pid);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/clsopidsn", pidsn);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclcd", spclcd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/spclspec", spclmemo);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/mpsno", mpsno);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/calcscorcd", edicd);
- model.makeValue("/root/send/clso["+ iTotSpclCdCnt +"]/edilnno", edilnno);
- }
- }// if (spclcd != "")
- }//for (var i = 1; i < grd_oprcphist.rows; i++)
- // alert(grd_oprcphist.rows);
- if (grd_oprcphist.rows > 1) {
- model.makeValue("/root/send/delclso/delclamym", model.getValue("/root/init/clamym"));
- model.makeValue("/root/send/delclso/delclamdg", model.getValue("/root/init/clamdg"));
- model.makeValue("/root/send/delclso/delpid", model.getValue("/root/init/pid"));
- model.makeValue("/root/send/delclso/delpidsn", model.getValue("/root/init/pidsn"));
- model.makeValue("/root/send/delclso/delworkflag", model.getValue("/root/init/workflag"));
- if (model.getValue("/root/init/ioflag") == "I") { // opener가 입원인 경우
- submit("TXPID21701");
- grd_oprcphist.row = 0;
- grd_oprcphist.dispatch("onclick");
- } else {
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- // 특정내역을 opener의 원외처방 Grid로 전달한다.
- opener.model.setValue("/root/main/list7/clop["+ i +"]/spclspecyn", model.getValue("/root/main/list7/clop["+ i +"]/spclspecyn"));
- opener.model.setValue("/root/main/list7/clop["+ i +"]/spclcd", model.getValue("/root/main/list7/clop["+ i +"]/spclcd"));
- opener.model.setValue("/root/main/list7/clop["+ i +"]/spclspec", model.getValue("/root/main/list7/clop["+ i +"]/spclspec"));
- opener.model.setValue("/root/main/list7/clop["+ i +"]/spclcdnm", model.getValue("/root/main/list7/clop["+ i +"]/spclcdnm"));
- }
- //model.makeNode(opener.root.send.item7);
- opener.model.makeNode("root/send/item7");
- model.copyNode(opener.root.send.item7, "/root/send"); //desct, src
- btn_close.dispatch("DOMActivate");
- }
- }
- }
-
- //신규추가시작
- // 약품편람_원외 20091217 추가
- function fOrderDrugHBook_clop() {
- model.removeNodeset("/root/hidden/smadb01900/cond");
- model.makeValue("/root/hidden/smadb01900/cond/calcscorcd", grd_oprcphist.valueMatrix(grd_oprcphist.row, grd_oprcphist.colRef("snglcalcscorcd")));
- modal("SMADB01900", 1,150, 150, "SMADB01900", "/root/hidden/smadb01900/cond/calcscorcd", "/root/hidden/receivedata/srchdrugcd", "", "");
- }
-
- // 수가조회_원외 20091217 추가
- function fOrderCalcScorSrch_clop(isAll) {
- // 수가조회창이 아닌 수가관리창으로 교체 (calcscorcd : 수가코드, judgflag : 수가관리에서 자보,일반,국제를 보여주도록 하기 위함)
- model.removeNodeset("/root/hidden/smpic00100/cond");
- model.makeValue("/root/hidden/smpic00100/cond/calcscorcd", grd_oprcphist.valueMatrix(grd_oprcphist.row, grd_oprcphist.colRef("snglcalcscorcd")));
- model.makeValue("/root/hidden/smpic00100/cond/judgflag", "Y");
- modal("SMPIC00100", "1", "10", "10", "SMPIC00100", "/root/hidden/smpic00100/cond", "/root/temp/item6", "", "");
-
- }
-
- //------------------------------------------------------------
- // 원외처방 "교부번호 전체삭제"
- //------------------------------------------------------------
- function fClopGridAllDeleteRow() {
-
- var cloprow = grd_oprcphist.row;
- if (cloprow < 1) {
- return;
- }
- // 삭제할 원외처방 교부번호
- if ( model.getValue("/root/main/list7/clop["+ cloprow +"]/newmpsno") == "" ) {
- var mpsno = model.getValue("/root/main/list7/clop["+ cloprow +"]/mpsno");
- } else {
- var mpsno = model.getValue("/root/main/list7/clop["+ cloprow +"]/newmpsno");
- }
- var oldclopdd = model.getValue("/root/main/list7/clop["+ cloprow +"]/oldclopdd");
- var oldclopno = model.getValue("/root/main/list7/clop["+ cloprow +"]/oldclopno");
- var clspdelcnt = 0;
-
- var ans = messageBox("[ 교부일자 : " + oldclopdd + ", 교부번호 : " + oldclopno + " ] 전체삭제하시려면", "S001"); /// 예(Yes)\n아니면 아니오(No)
-
- if (ans == 6) { // 6: yes
- // 삭제사유 입력
- var adjtresncd = model.getValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd");
- if (adjtresncd == "" || adjtresncd == "-") { // 심사(조정)사유가 입력되지 않은 경우
- var cmbAdjtresncd = model.getValue("/root/hidden/list2/clodstat/cmbAdjtresncd");
- if (cmbAdjtresncd == "" || cmbAdjtresncd == "-" ) {
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdcls", "aftout");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", adjtresncd);
-
- modal("SPPIZ01000", "1", "500", "450", "SPPIZ01000", "/root/hidden/sppiz01000/cond", "/root/hidden/sppiz01000/cond", "", ""); // SPPIZ01000_심사수정사유관리.xrw
- adjtresncd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- } else {
- adjtresncd = cmbAdjtresncd;
- }
- }
- if (adjtresncd == "" || adjtresncd == "-") {
- return;
- }
- var nodeList = instance1.selectNodes("/root/main/list7/clop");
- for (var row = 1; row <= nodeList.length; row++) {
- var clopseqno = model.getValue("/root/main/list7/clop["+ row +"]/clopseqno");
- if ( model.getValue("/root/main/list7/clop["+ row +"]/newmpsno") == "" ) {
- var nowmpsno = model.getValue("/root/main/list7/clop["+ row +"]/mpsno");
- } else {
- var nowmpsno = model.getValue("/root/main/list7/clop["+ row +"]/newmpsno");
- }
- if (mpsno == nowmpsno) {
- // 1. 줄단위 원외처방 특정내역을 삭제한다.
- if (model.getValue("/root/main/list7/clop["+ row +"]/spclspecyn")) {
- // 줄단위 특정내역이 입력된 경우
- for (var j = 1; j < opener.grd_clsphist.rows; j++) {
- var spclmpsno = model.getValue("/root/main/list3/clsp["+ j +"]/mpsno"); // mpsno
- var spclClodseqno = model.getValue("/root/main/list3/clsp["+ j +"]/clodseqno"); // seqno
- var clsoyn = model.getValue("/root/main/list3/clsp["+ j +"]/clsoyn"); // 원외처방 특정내역 여부
- if (spclmpsno == mpsno && spclClodseqno == clopseqno && clsoyn == "Y") {
- var clspstatus = opener.grd_clsphist.rowstatus(j);
- if (clspstatus != 1 && clspstatus != 3) {
- opener.grd_clsphist.rowstatus(j) = 4; // 4 : delete 상태로 stat를 변경한다.
- clspdelcnt++;
- } else {
- opener.grd_clsphist.deleteRow(j, false);
- }
- }
- }
- }
-
- // 2. 해당 원외처방을 삭제한다.
- var clopstatus = grd_oprcphist.rowstatus(row);
- if (clopstatus != 1 && clopstatus != 3) {
- model.setValue("/root/main/list7/clop["+ row +"]/adjtresncd", adjtresncd); // 삭제사유
- grd_oprcphist.rowstatus(row) = 4;
- grd_oprcphist.rowHidden(row) = true;
- } else {
- grd_oprcphist.deleteRow(row, false);
- }
-
- }
- }
- if (clspdelcnt > 0) {
- // 특정내역 줄번호/특정코드에 따라 sorting 작업
- fSortSpclNo();
- opener.grd_clsphist.refresh();
- }
- grd_oprcphist.refresh();
- }
- }
-
- //------------------------------------------------------------
- // 원외처방 "행 삭제"
- //------------------------------------------------------------
- function fClopGridDeleteRow() {
-
- var cloprow = grd_oprcphist.row;
- if (cloprow < 1) {
- return;
- }
- // 삭제할 원외처방 교부번호, 교부일자, 줄번호, 수가코드
- if ( grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("newmpsno")) == "" ) {
- var mpsno = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("mpsno"));
- } else {
- var mpsno = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("newmpsno"));
- }
- var clopdd = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("clopdd"));
- var clopno = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("clopno"));
- var edilnno = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("edilnno"));
- var snglcalcscorcd = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("snglcalcscorcd"));
- var seqno = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("seqno"));
- var spclspecyn = grd_oprcphist.valueMatrix(cloprow, grd_oprcphist.colRef("spclspecyn"));
- var clspdelcnt = 0;
-
- var ans = messageBox("[ 교부일자 : " + clopdd + ", 교부번호 : " + clopno + ", 줄번호 : " + edilnno + ", 수가코드 : " + snglcalcscorcd + " ] 삭제하시려면", "S001"); /// 예(Yes)\n아니면 아니오(No)
- if (ans == 6) { // 6: yes
- // 삭제사유 입력
- var adjtresncd = model.getValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd");
- if (adjtresncd == "" || adjtresncd == "-") { // 심사(조정)사유가 입력되지 않은 경우
- var cmbAdjtresncd = model.getValue("/root/hidden/list2/clodstat/cmbAdjtresncd");
- if (cmbAdjtresncd == "" || cmbAdjtresncd == "-" ) {
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdcls", "aftout");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", adjtresncd);
-
- modal("SPPIZ01000", "1", "500", "450", "SPPIZ01000", "/root/hidden/sppiz01000/cond", "/root/hidden/sppiz01000/cond", "", ""); // SPPIZ01000_심사수정사유관리.xrw
- adjtresncd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- } else {
- adjtresncd = cmbAdjtresncd;
- }
- }
- if (adjtresncd == "" || adjtresncd == "-") {
- return;
- } else {
- model.setValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd", adjtresncd);
- }
- // 1. 줄단위 원외처방 특정내역을 삭제한다.
- if (spclspecyn) {
- // 줄단위 특정내역이 입력된 경우
- var nodeList = instance1.selectNodes("/root/main/list3/clsp");
- for (var j = 1; j <= nodeList.length; j++) {
- var spclmpsno = model.getValue("/root/main/list3/clsp["+ j +"]/mpsno"); // mpsno
- var spclClodseqno = model.getValue("/root/main/list3/clsp["+ j +"]/clodseqno"); // seqno
- var clsoyn = model.getValue("/root/main/list3/clsp["+ j +"]/clsoyn"); // 원외처방 특정내역 여부
- if (spclmpsno == mpsno && spclClodseqno == seqno && clsoyn == "Y") {
- var clspstatus = opener.grd_clsphist.rowstatus(j);
- if (clspstatus != 1 && clspstatus != 3) {
- opener.grd_clsphist.rowstatus(j) = 4; // 4 : delete 상태로 stat를 변경한다.
- clspdelcnt++;
- } else {
- opener.grd_clsphist.deleteRow(j, false);
- }
- }
- }
- }
-
- // 2. 해당 원외처방을 삭제한다.
- var clopstatus = grd_oprcphist.rowstatus(cloprow);
- if (clopstatus != 1 && clopstatus != 3) {
- grd_oprcphist.rowstatus(cloprow) = 4;
- grd_oprcphist.rowHidden(cloprow) = true;
- } else {
- grd_oprcphist.deleteRow(cloprow, false);
- }
- if (clspdelcnt > 0) {
- // 3. 특정내역 줄번호/특정코드에 따라 sorting 작업
- fSortSpclNo();
- opener.grd_clsphist.refresh();
- }
- grd_oprcphist.refresh();
-
- }
-
- }
-
- // 원외처방 Grid 마우스 오른쪽 버튼 클릭시 팝업 메뉴 "행복사"
- function fOutOrderGridCopyRow() {
- var cloprow = grd_oprcphist.row;
-
- var adjtresncd = model.getValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd");
- if (adjtresncd == "" || adjtresncd == "-") { // 심사(조정)사유가 입력되지 않은 경우
- var cmbAdjtresncd = model.getValue("/root/hidden/list2/clodstat/cmbAdjtresncd");
- if (cmbAdjtresncd == "" || cmbAdjtresncd == "-" ) {
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdcls", "aftout");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", adjtresncd);
-
- modal("SPPIZ01000", "1", "500", "450", "SPPIZ01000", "/root/hidden/sppiz01000/cond", "/root/hidden/sppiz01000/cond", "", ""); // SPPIZ01000_심사수정사유관리.xrw
- adjtresncd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- } else {
- adjtresncd = cmbAdjtresncd;
- }
- }
- if (adjtresncd == "" || adjtresncd == "-") {
- return;
- }
-
-
- grd_oprcphist.insertRow(cloprow++, "below", true, true); // 처방 Grid에 행 삽입
-
- model.copyNode("/root/main/list7/clop["+ cloprow +"]", "/root/main/list7/clop["+ (cloprow - 1) +"]");
-
- model.resetInstanceNode("/root/main/list7/clop["+ cloprow +"]/spclspecyn");
- model.resetInstanceNode("/root/main/list7/clop["+ cloprow +"]/clopseqno");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd",adjtresncd);
-
- // seqno 셋팅
- model.setValue("/root/main/list7/clop["+ cloprow +"]/seqno", model.getValue("/root/init/maxclopseqno"));
- model.setValue("/root/init/maxseqno", parseInt(model.getValue("/root/init/maxclopseqno")) + 1);
- model.setValue("/root/main/list7/clop["+ cloprow +"]/edilnno", "0");
-
- grd_oprcphist.refresh();
- }
-
- // 원외처방 Grid 마우스 오른쪽 버튼 클릭시 팝업 메뉴 "행 추가"
- function fOutOrderGridInsertRow() {
- var cloprow = grd_oprcphist.row;
-
- grd_oprcphist.insertRow(cloprow++, "below", true, true); // 처방 Grid에 행 삽입
- grd_oprcphist.row = cloprow;
- //grd_oprcphist.mergerow(cloprow) = false;
- grd_oprcphist.mergecells = "never";
- // 기본값 입력
- model.setValue("/root/main/list7/clop["+ cloprow +"]/clopdd", model.getValue("/root/init/ordfromdd"));
- model.setValue("/root/main/list7/clop["+ cloprow +"]/clopno", "99999");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/oldclopdd", model.getValue("/root/init/ordfromdd"));
- model.setValue("/root/main/list7/clop["+ cloprow +"]/oldclopno", "99999");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/mpsno", model.getValue("/root/init/ordfromdd")+"99999");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/edilnno", "0");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/payflag", "0");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/drugqty", "1");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/edidrugqty", "1");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/drugtims", "1");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/drugdayno", "1");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/edidrugdayno", "1");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/workflag", "11");
- model.setValue("/root/main/list7/clop["+ cloprow +"]/spclspecyn", "");
-
- var adjtresncd = model.getValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd");
- if (adjtresncd == "" || adjtresncd == "-") { // 심사(조정)사유가 입력되지 않은 경우
- var cmbAdjtresncd = model.getValue("/root/hidden/list2/clodstat/cmbAdjtresncd");
- if (cmbAdjtresncd == "" || cmbAdjtresncd == "-" ) {
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdcls", "aftout");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", adjtresncd);
-
- modal("SPPIZ01000", "1", "500", "450", "SPPIZ01000", "/root/hidden/sppiz01000/cond", "/root/hidden/sppiz01000/cond", "", ""); // SPPIZ01000_심사수정사유관리.xrw
- adjtresncd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- } else {
- adjtresncd = cmbAdjtresncd;
- }
- }
- if (adjtresncd == "" || adjtresncd == "-") {
- grd_oprcphist.deleteRow(cloprow, true); // 처방 Grid에서 해당 라인을 삭제한다.
- } else {
- model.setValue("/root/main/list7/clop["+ cloprow +"]/adjtresncd", adjtresncd);
- }
-
- }
-
- // 20100405 원외처방 수정 이벤트 추가
- // xrw 에 있는것 옮긴후 작업
- function fClopOnEndEdit() {
- var row = grd_oprcphist.row;
- var col = grd_oprcphist.col;
- // 수정된내역 없으면 종료
- if ( model.getValue("/root/hidden/list7/clop/oldclopdd") == model.getValue("/root/main/list7/clop["+ row +"]/clopdd")
- && model.getValue("/root/hidden/list7/clop/oldclopno") == model.getValue("/root/main/list7/clop["+ row +"]/clopno")
- && model.getValue("/root/hidden/list7/clop/oldsnglcalcscorcd") == model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd")
- && model.getValue("/root/hidden/list7/clop/oldedicd") == model.getValue("/root/main/list7/clop["+ row +"]/edicd")
- && model.getValue("/root/hidden/list7/clop/oldedidrugqty") == model.getValue("/root/main/list7/clop["+ row +"]/edidrugqty")
- && model.getValue("/root/hidden/list7/clop/olddrugtims") == model.getValue("/root/main/list7/clop["+ row +"]/drugtims")
- && model.getValue("/root/hidden/list7/clop/oldedidrugdayno") == model.getValue("/root/main/list7/clop["+ row +"]/edidrugdayno")
- ) {
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus"); // 수정상태
- return;
- }
- var adjtresncd = model.getValue("/root/main/list7/clop["+ row +"]/adjtresncd");
- if (adjtresncd == "" || adjtresncd == "-") { // 심사(조정)사유가 입력되지 않은 경우
- var cmbAdjtresncd = model.getValue("/root/hidden/list2/clodstat/cmbAdjtresncd");
- if (cmbAdjtresncd == "" || cmbAdjtresncd == "-" ) {
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdcls", "aftout");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", adjtresncd);
-
- modal("SPPIZ01000", "1", "500", "450", "SPPIZ01000", "/root/hidden/sppiz01000/cond", "/root/hidden/sppiz01000/cond", "", ""); // SPPIZ01000_심사수정사유관리.xrw
- adjtresncd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- } else {
- adjtresncd = cmbAdjtresncd;
- }
- }
- if (adjtresncd == "" || adjtresncd == "-") {
- // 사유 없으면 원상복귀
- model.setValue("/root/main/list7/clop["+ row +"]/clopdd", model.getValue("/root/hidden/list7/clop/oldclopdd")); // 교부일자
- model.setValue("/root/main/list7/clop["+ row +"]/clopno", model.getValue("/root/hidden/list7/clop/oldclopno")); // 교부번호
- model.setValue("/root/main/list7/clop["+ row +"]/oldsnglcalcscorcd", model.getValue("/root/hidden/list7/clop/snglcalcscorcd")); // 수가코드
- model.setValue("/root/main/list7/clop["+ row +"]/oldedicd", model.getValue("/root/hidden/list7/clop/edicd")); // EDI코드
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugqty", model.getValue("/root/hidden/list7/clop/oldedidrugqty")); // edi수량
- model.setValue("/root/main/list7/clop["+ row +"]/drugtims", model.getValue("/root/hidden/list7/clop/olddrugtims")); // 횟수
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugdayno", model.getValue("/root/hidden/list7/clop/oldedidrugdayno")); // edi일수
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus"); // 수정상태
- return;
- }
-
-
- var newclopdd = model.getValue("/root/main/list7/clop["+ row +"]/clopdd");
- var newclopno = model.getValue("/root/main/list7/clop["+ row +"]/clopno");
- var curmpsno = model.getValue("/root/main/list7/clop["+ row +"]/mpsno");
- var newmpsno = newclopdd+newclopno;
-
-
- // 교부일자
- if (col == grd_oprcphist.colRef("clopdd")) {
-
- if ( !isValidDateTime(newclopdd) || curmpsno == newmpsno ) { // (dateHelper.) 유효한 날짜, 시간 인지 점검
- model.setValue("/root/main/list7/clop["+ row +"]/clopdd", model.getValue("/root/hidden/list7/clop/oldclopdd"));
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- } else {
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var mpsno = model.getValue("/root/main/list7/clop["+ i +"]/mpsno");
- if (curmpsno == mpsno) { // 수정된 row와 처방전 교부번호가 같은 경우
- model.setValue("/root/main/list7/clop["+ i +"]/clopdd", newclopdd);
- model.setValue("/root/main/list7/clop["+ i +"]/newmpsno", newmpsno);
- model.setValue("/root/main/list7/clop["+ i +"]/adjtresncd", adjtresncd); // 조정사유
-
- //if ( model.getValue("/root/hidden/list7/clop/oldrowstatus") == 0 ) {
- if ( grd_oprcphist.rowstatus(i) == 0 ) {
- grd_oprcphist.rowstatus(i) = 2;
- }
- }
- }
-
- // 원외처방 특정내역이 있는 경우
- var clsoList = instance1.selectNodes("/root/main/list3/clsp");
- for (var j = 1; j <= clsoList.length; j++) {
- var spclmpsno = model.getValue("/root/main/list3/clsp["+ j +"]/mpsno"); // mpsno
- var clsoyn = model.getValue("/root/main/list3/clsp["+ j +"]/clsoyn"); // 원외처방 특정내역 여부
- if (curmpsno == mpsno && clsoyn == "Y") {
- model.setValue("/root/main/list3/clsp["+ j +"]/mpsno",newmpsno);
- if ( opener.grd_clsphist.rowstatus(j) == 0 ) {
- opener.grd_clsphist.rowstatus(j) = 2;
- }
- }
- }
- }
- }
- // 교부번호
- else if (col == grd_oprcphist.colRef("clopno")) {
- if ( newclopno == "" || curmpsno == newmpsno ) {
- model.setValue("/root/main/list7/clop["+ row +"]/clopno", model.getValue("/root/hidden/list7/clop/oldclopno"));
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- } else {
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var mpsno = model.getValue("/root/main/list7/clop["+ i +"]/mpsno");
- if (curmpsno == mpsno) { // 수정된 row와 처방전 교부번호가 같은 경우
- model.setValue("/root/main/list7/clop["+ i +"]/clopno", newclopno);
- model.setValue("/root/main/list7/clop["+ i +"]/newmpsno", newmpsno);
- model.setValue("/root/main/list7/clop["+ i +"]/adjtresncd", adjtresncd); // 조정사유
-
- //if ( model.getValue("/root/hidden/list7/clop/oldrowstatus") == 0 ) {
- if ( grd_oprcphist.rowstatus(i) == 0 ) {
- grd_oprcphist.rowstatus(i) = 2;
- }
- }
- }
- // 원외처방 특정내역이 있는 경우
- var clsoList = instance1.selectNodes("/root/main/list3/clsp");
- for (var j = 1; j <= clsoList.length; j++) {
- var spclmpsno = model.getValue("/root/main/list3/clsp["+ j +"]/mpsno"); // mpsno
- var clsoyn = model.getValue("/root/main/list3/clsp["+ j +"]/clsoyn"); // 원외처방 특정내역 여부
- if (curmpsno == mpsno && clsoyn == "Y") {
- model.setValue("/root/main/list3/clsp["+ j +"]/mpsno",newmpsno);
- if ( opener.grd_clsphist.rowstatus(j) == 0 ) {
- opener.grd_clsphist.rowstatus(j) = 2;
- }
- }
- }
- }
- }
- // 수가코드, EDI코드
- else if (col == grd_oprcphist.colRef("snglcalcscorcd") || col == grd_oprcphist.colRef("edicd") ) {
- fSetSrchOutCalcScorCd(adjtresncd);
- }
- // edi수량
- else if (col == grd_oprcphist.colRef("edidrugqty")) {
- var oldedidrugqty = model.getValue("/root/hidden/list7/clop/oldedidrugqty");
- var edidrugqty = model.getValue("/root/main/list7/clop["+ row +"]/edidrugqty");
-
- if ( edidrugqty == "" || edidrugqty == "0" ) {
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugqty", oldedidrugqty);
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- } else {
- model.setValue("/root/main/list7/clop["+ row +"]/drugqty", edidrugqty); // 수량 같이 변경
- model.setValue("/root/main/list7/clop["+ row +"]/adjtresncd", adjtresncd); // 조정사유
- if ( model.getValue("/root/hidden/list7/clop/oldrowstatus") == 0 ) {
- grd_oprcphist.rowstatus(i) = 2;
- }
- }
- }
- // 횟수
- else if (col == grd_oprcphist.colRef("drugtims")) {
- var olddrugtims = model.getValue("/root/hidden/list7/clop/olddrugtims");
- var drugtims = model.getValue("/root/main/list7/clop["+ row +"]/drugtims");
-
- if ( drugtims == "" || drugtims == "0" ) {
- model.setValue("/root/main/list7/clop["+ row +"]/drugtims", olddrugtims);
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- } else {
- model.setValue("/root/main/list7/clop["+ row +"]/adjtresncd", adjtresncd); // 조정사유
- if ( model.getValue("/root/hidden/list7/clop/oldrowstatus") == 0 ) {
- grd_oprcphist.rowstatus(i) = 2;
- }
- }
- }
- // edi일수
- else if (col == grd_oprcphist.colRef("edidrugdayno")) {
- var oldedidrugdayno = model.getValue("/root/hidden/list7/clop/oldedidrugdayno");
- var edidrugdayno = model.getValue("/root/main/list7/clop["+ row +"]/edidrugdayno");
-
- if ( edidrugdayno == "" || edidrugdayno == "0" ) {
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugdayno", oldedidrugdayno);
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- } else {
- model.setValue("/root/main/list7/clop["+ row +"]/drugdayno", edidrugdayno); // 일수 같이 변경
- model.setValue("/root/main/list7/clop["+ row +"]/adjtresncd", adjtresncd); // 조정사유
- if ( model.getValue("/root/hidden/list7/clop/oldrowstatus") == 0 ) {
- grd_oprcphist.rowstatus(i) = 2;
- }
- }
- }
- grd_oprcphist.refresh();
- }
-
- // 수가코드, EDI코드를 조회한 후 원외처방으로 행 추가를 한다.
- function fSetSrchOutCalcScorCd(adjtresncd) {
- var col = grd_oprcphist.col;
- var row = grd_oprcphist.row;
- //grd_oprcphist.mergerow(row) = false;
-
- model.resetInstanceNode("/root/hidden/smpic00200/judgsrch"); // SMPIC00200_수가조회에 전달할 조건값
- model.resetInstanceNode("/root/send/item5/mech"); // submit("TRPID20303") 용
-
- model.makeValue("/root/send/item5/mech/unitcostupdateyn", "N"); // 단가변경여부
- model.makeValue("/root/send/item5/mech/ediupdateyn", "N"); // edi변경여부
-
- if (col == grd_oprcphist.colRef("snglcalcscorcd")) { // 수가코드
- var oldsnglcalcscorcd = model.getValue("/root/hidden/list7/clop/oldsnglcalcscorcd");
- var snglcalcscorcd = model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd");
- if (snglcalcscorcd == "") {
- model.setValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd", oldsnglcalcscorcd);
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- return;
- }
- model.setValue("/root/hidden/smpic00200/judgsrch/con4_search2", snglcalcscorcd); // SMPIC00200_수가조회 용
- model.makeValue("/root/send/item5/mech/snglcalcscorcd", snglcalcscorcd); // submit("TRPID20303") 용
- model.makeValue("/root/send/item5/mech/grupcalcscorcd", "");
- model.makeValue("/root/send/item5/mech/basecd", "");
- }
- else if (col == grd_oprcphist.colRef("edicd")) { // EDI코드
- var oldedicd = model.getValue("/root/hidden/list7/clop/oldedicd");
- var edicd = model.getValue("/root/main/list7/clop["+ row +"]/edicd");
- if (edicd == "") {
- model.setValue("/root/main/list7/clop["+ row +"]/edicd", oldedicd);
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- return;
- }
- model.setValue("/root/hidden/smpic00200/judgsrch/con4_search2", edicd); // SMPIC00200_수가조회 용
- model.makeValue("/root/send/item5/mech/basecd", edicd); // submit("TRPID20303") 용
- model.makeValue("/root/send/item5/mech/grupcalcscorcd", "");
- model.makeValue("/root/send/item5/mech/snglcalcscorcd", "");
- }
-
-
- var ordfromdd = model.getValue("/root/main/list7/clop["+ row +"]/clopdd");
-
- model.makeValue("/root/send/item5/mech/indd", model.getValue("/root/init/indd"));
- model.makeValue("/root/send/item5/mech/ordfromdd", ordfromdd);
- model.makeValue("/root/send/item5/mech/ordtodd", ordfromdd);
-
- model.makeValue("/root/send/item5/mech/insukind", model.getValue("/root/init/insukindcd"));
- model.makeValue("/root/send/item5/mech/suppkind", model.getValue("/root/init/suppkindcd"));
- model.makeValue("/root/send/item5/mech/orddeptcd", model.getValue("/root/init/orddeptcd"));
- model.makeValue("/root/send/item5/mech/orddrid", model.getValue("/root/init/orddrid"));
- var edidrugqty = model.getValue("/root/main/list7/clop["+ row +"]/edidrugqty");
- var drugtims = model.getValue("/root/main/list7/clop["+ row +"]/drugtims");
- var edidrugdayno = model.getValue("/root/main/list7/clop["+ row +"]/edidrugdayno");
- model.makeValue("/root/send/item5/mech/drugqty", edidrugqty);
- model.makeValue("/root/send/item5/mech/tims", drugtims);
- model.makeValue("/root/send/item5/mech/dayno", edidrugdayno);
-
- model.makeValue("/root/send/item5/mech/adjtresncd", adjtresncd);
- model.makeValue("/root/send/item5/mech/undersixageyn", model.getValue("/root/init/undersixageyn"));
- model.makeValue("/root/send/item5/mech/mechage", model.getValue("/root/init/mechage"));
- model.makeValue("/root/send/item5/mech/hosinresncd", "-");
- model.makeValue("/root/send/item5/mech/payflag", model.getValue("/root/main/list2/clop["+ row +"]/payflag"));
- model.makeValue("/root/send/item5/mech/clbsordfromdd", model.getValue("/root/init/ordfromdd"));
- model.makeValue("/root/send/item5/mech/ioflag", model.getValue("/root/init/ioflag"));
- model.makeValue("/root/send/item5/mech/clamflagcd", model.getValue("/root/init/clamflagcd"));
- model.makeValue("/root/send/item5/mech/mode", "n");
- model.makeValue("/root/send/item5/mech/pid", model.getValue("/root/init/pid"));
- var cloplength = 0;
- var clopSelect = "";
- var clop = "";
- if (submit("TRPID20303")) {
- clopSelect = instance1.selectSingleNode("/root/main/item5"); //root/main/item5
- clop = clopSelect.childNodes; //root/main/item5/mech
- cloplength = clop.length;
- }
-
- // 입력한 코드에 대해 조회된 결과가 없거나, 하나의 EDI코드에 여러 수가코드가 존재할 때
- if (cloplength == 0) {
- // 검색된 결과가 여러 수가코드인 경우 이를 초기화하고 수가조회 Popup 창에서 새로 결과를 얻는다.
- model.resetInstanceNode("/root/main/item5");
-
- // insukindcd를 SMPIC00200_수가조회 화면에서 사용하는 조건값으로 변경한다.
- var insukindcd = model.getValue("/root/init/insukindcd");
- if (insukindcd == "11") {
- model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "insu");
- }
- else if (insukindcd == "21" || insukindcd == "22") {
- model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "proc");
- }
- else if (insukindcd == "31") {
- model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "autm");
- }
- else if (insukindcd == "41") {
- model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "indus");
- } else {
- model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "insu");
- }
- // SMPIC00200_수가조회 화면의 그룹,싱글 combo 조건값 설정
- if (col == grd_oprcphist.colRef("snglcalcscorcd")) {
- model.setValue("/root/hidden/smpic00200/judgsrch/con2_gsflag", "S");
- }
- // SMPIC00200_수가조회 화면의 검색조건 combo 조건값 설정
- if (col == grd_oprcphist.colRef("edicd")) {
- model.setValue("/root/hidden/smpic00200/judgsrch/con3_search1", "edicd");
- }
- else {
- model.setValue("/root/hidden/smpic00200/judgsrch/con3_search1", "calcscorcd");
- }
- // 처방시작일을 수가조회 기준일자로 설정
- if (ordfromdd) {
- model.setValue("/root/hidden/smpic00200/judgsrch/con1_dd", ordfromdd);
- }
- model.setValue("/root/hidden/smpic00200/judgsrch/con_ordinptflag", "PAM"); // 20100113 처방입력구분이 입력가능으로 된 수가도 조회하기 위해서 추가
- model.removeNodeset("/root/hidden/smpic00200/rslt/mech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
- model.removeNodeset("/root/hidden/smpic00200/rslt/picmmech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
- modal("SMPIC00200", "1", "10", "10", "SMPIC00200", "root/hidden/smpic00200", "/root/temp", "", ""); // SMPIC00200_수가조회.xrw
-
- // SMPIC00200_수가조회 화면에서 보낸 결과 값에 대한 처리
- model.makeNode("/root/hidden/smpic00200/rslt/mech");
- model.makeNode("/root/hidden/smpic00200/rslt/picmmech");
- model.copyNode("/root/hidden/smpic00200/rslt/mech", "/root/temp/mech");
- model.copyNode("/root/hidden/smpic00200/rslt/picmmech", "/root/temp/picmmech");
- model.removeNodeset("/root/temp"); // SMPIC00200_수가조회 에서 선택된 결과가 직접 전달되는 경로임
-
- if ( model.getValue("/root/hidden/smpic00200/rslt/mech/ordinptflag") != "A"
- && model.getValue("/root/hidden/smpic00200/rslt/mech/ordinptflag") != "I" // 20100120 김용민 입력가능한 수가 제외
- ) { // 처방입력구분(코드군 P0141) A: 가능
- model.setValue("/root/main/list7/clop["+ row +"]/edicd", "");
- model.setValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd", "");
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- messageBox("처방이 불가한 코드", "E008"); ///처방이 불가한 코드입니다.
- return;
- }
-
- if (model.getValue("/root/hidden/smpic00200/rslt/mech/grupsnglflag") != "S") { // 그룹코드인 경우의 그룹코드에 속하는 싱글코드를 조회함.
- model.makeValue("/root/send/item5/mech/grupcalcscorcd", model.getValue("/root/hidden/smpic00200/rslt/mech/calcscorcd"));
- model.resetInstanceNode("/root/send/item5/mech/snglcalcscorcd");
- model.resetInstanceNode("/root/send/item5/mech/basecd");
- model.resetInstanceNode("/root/send/item5/mech/estmmncd");
- model.makeValue("/root/send/item5/mech/ioflag", model.getValue("/root/init/ioflag"));
- submit("TRPID20303");
- } else { // 싱글코드를 선택했을 때
- model.resetInstanceNode("/root/send/item5/mech/grupcalcscorcd");
- model.makeValue("/root/send/item5/mech/snglcalcscorcd", model.getValue("/root/hidden/smpic00200/rslt/picmmech/picmmech_calcscorcd"));
- model.resetInstanceNode("/root/send/item5/mech/basecd");
- model.resetInstanceNode("/root/send/item5/mech/estmmncd");
- model.makeValue("/root/send/item5/mech/ioflag", model.getValue("/root/init/ioflag"));
- submit("TRPID20303");
- }
-
- }
- clopSelect = instance1.selectSingleNode("/root/main/item5"); //root/main/item5
- if (clopSelect != null) {
- var clop = clopSelect.childNodes; //root/main/item5/mech
- if (clop.length == 0) {
- model.setValue("/root/main/list7/clop["+ row +"]/edicd", "");
- model.setValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd", "");
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- messageBox("처방이 불가한 코드입니다. 수가조회 화면에서 선택한 그룹코드에 대해 조회한 결과가", "I004"); ///처방이 불가한 코드입니다. 수가조회 화면에서 선택한 그룹코드에 대해 조회한 결과가 없습니다.
- return;
- }
- for (var i = 1; i <= clop.length; i++) { // 싱글 수가코드 개수 만큼
- model.setValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd", model.getValue("/root/main/item5/mech["+i+"]/snglcalcscorcd") );
- model.setValue("/root/main/list7/clop["+ row +"]/edicd", model.getValue("/root/main/item5/mech["+i+"]/edicd") );
- model.setValue("/root/main/list7/clop["+ row +"]/hngnm", model.getValue("/root/main/item5/mech["+i+"]/hngnm") );
- model.setValue("/root/main/list7/clop["+ row +"]/ordnm", model.getValue("/root/main/item5/mech["+i+"]/ordnm") );
- model.setValue("/root/main/list7/clop["+ row +"]/payflag", model.getValue("/root/main/item5/mech["+i+"]/payflag") );
- model.setValue("/root/main/list7/clop["+ row +"]/edicdflag", model.getValue("/root/main/item5/mech["+i+"]/edicdflag") );
- model.setValue("/root/main/list7/clop["+ row +"]/efcyclscd", model.getValue("/root/main/item5/mech["+i+"]/efcyclscd") );
- model.setValue("/root/main/list7/clop["+ row +"]/efcyclsnm", model.getValue("/root/main/item5/mech["+i+"]/efcyclsnm") );
- model.setValue("/root/main/list7/clop["+ row +"]/efcynm2", model.getValue("/root/main/item5/mech["+i+"]/efcynm2") );
- model.setValue("/root/main/list7/clop["+ row +"]/efcynm3", model.getValue("/root/main/item5/mech["+i+"]/efcynm3") );
- model.setValue("/root/main/list7/clop["+ row +"]/adjtresncd", adjtresncd );
-
- // 신규입력된 처방은 seqno는 최종번호를 셋팅하고 maxseqno에 최종값을 +1한다.
- if ( model.getValue("/root/main/list7/clop["+ row +"]/seqno") == "0"
- || model.getValue("/root/main/list7/clop["+ row +"]/seqno") == ""
- ) {
- model.setValue("/root/main/list7/clop["+ row +"]/seqno", model.getValue("/root/init/maxclopseqno"));
- model.setValue("/root/init/maxclopseqno", parseInt(model.getValue("/root/init/maxclopseqno")) + 1);
- }
- // 행 추가 후 싱글코드 조회 후에 다음 줄을 자동으로 한줄 추가함.
- if (i < clop.length) {
- grd_oprcphist.insertRow(row++, "below", false);
- var beforerow = row - 1 ;
- //grd_oprcphist.mergerow(row) = false;
- model.setValue("/root/main/list7/clop["+ row +"]/clopdd", model.getValue("/root/main/list7/clop["+ beforerow +"]/clopdd"));
- model.setValue("/root/main/list7/clop["+ row +"]/clopno", model.getValue("/root/main/list7/clop["+ beforerow +"]/clopno"));
- model.setValue("/root/main/list7/clop["+ row +"]/oldclopdd", model.getValue("/root/main/list7/clop["+ beforerow +"]/oldclopdd"));
- model.setValue("/root/main/list7/clop["+ row +"]/oldclopno", model.getValue("/root/main/list7/clop["+ beforerow +"]/oldclopno"));
- model.setValue("/root/main/list7/clop["+ row +"]/mpsno", model.getValue("/root/main/list7/clop["+ beforerow +"]/mpsno"));
- model.setValue("/root/main/list7/clop["+ row +"]/edilnno", model.getValue("/root/main/list7/clop["+ beforerow +"]/edilnno"));
- model.setValue("/root/main/list7/clop["+ row +"]/payflag", model.getValue("/root/main/list7/clop["+ beforerow +"]/payflag"));
- model.setValue("/root/main/list7/clop["+ row +"]/drugqty", model.getValue("/root/main/list7/clop["+ beforerow +"]/drugqty"));
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugqty", model.getValue("/root/main/list7/clop["+ beforerow +"]/edidrugqty"));
- model.setValue("/root/main/list7/clop["+ row +"]/drugtims", model.getValue("/root/main/list7/clop["+ beforerow +"]/drugtims"));
- model.setValue("/root/main/list7/clop["+ row +"]/drugdayno", model.getValue("/root/main/list7/clop["+ beforerow +"]/drugdayno"));
- model.setValue("/root/main/list7/clop["+ row +"]/edidrugdayno", model.getValue("/root/main/list7/clop["+ beforerow +"]/edidrugdayno"));
- model.setValue("/root/main/list7/clop["+ row +"]/workflag", "12");
- model.setValue("/root/main/list7/clop["+ row +"]/spclspecyn", "");
- }
- }
-
- } else {
- model.setValue("/root/main/list7/clop["+ row +"]/edicd", "");
- model.setValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd", "");
- grd_oprcphist.rowstatus(row) = model.getValue("/root/hidden/list7/clop/oldrowstatus");
- messageBox("처방이 불가한 코드입니다. 수가조회 화면에서 선택한 그룹코드에 대해 조회한 결과가", "I004"); ///처방이 불가한 코드입니다. 수가조회 화면에서 선택한 그룹코드에 대해 조회한 결과가 없습니다.
- return;
- }
-
- }
-
- // 줄단위 원외처방특정내역을 수정/입력한다3
- function fSetLnUnitClsoSpclSpec(sgrid) { // 'T' 필드 더블클릭 또는 특정내역 더블클릭
- model.removeNodeset("/root/hidden/sppiz01700/rslt"); // SPPIZ01700_원외처방특정내역상세관리 에서 선택된 결과가 copyNode되는 경로임
- model.removeNodeset("/root/hidden/sppiz01700/cond");
-
- // 1. 원외처방에서 "더블클릭"한 경우
- if (sgrid == "grd_oprcphist" ) {
- var row = grd_oprcphist.row;
-
- var seqno = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("seqno"));
- var edilnno = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("edilnno"));
- var snglcalcscorcd = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("snglcalcscorcd"));
- var clopdd = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("clopdd"));
- var clopno = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("clopno"));
- var mpsno = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("mpsno"));
- /*
- var seqno = model.getValue("/root/main/list7/clop["+ row +"]/clopseqno");
- var edilnno = model.getValue("/root/main/list7/clop["+ row +"]/edilnno");
- var snglcalcscorcd = model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd");
- var clopdd = model.getValue("/root/main/list7/clop["+ row +"]/clopdd");
- var clopno = model.getValue("/root/main/list7/clop["+ row +"]/clopno");
- var mpsno = model.getValue("/root/main/list7/clop["+ row +"]/mpsno");
- */
- // 2. 특정내역에서 "더블클릭"한 경우
- } else if (sgrid == "opener.grd_clsphist") {
- var row = opener.grd_clsphist.row;
- var seqno = opener.model.getValue("/root/main/list3/clsp["+ row +"]/clodseqno");
- var edilnno = opener.model.getValue("/root/main/list3/clsp["+ row +"]/edilnno");
- var snglcalcscorcd = opener.model.getValue("/root/main/list3/clsp["+ row +"]/snglcalcscorcd");
- var clopdd = opener.model.getValue("/root/main/list3/clsp["+ row +"]/mpsno").substr(0,8);
- var clopno = opener.model.getValue("/root/main/list3/clsp["+ row +"]/mpsno").substr(8,5);
- var mpsno = opener.model.getValue("/root/main/list3/clsp["+ row +"]/mpsno");
- }
-
- if (seqno != "0") {
- if (sgrid == "grd_oprcphist") {
- var lnunitspclspecyn = grd_oprcphist.valueMatrix(row, grd_oprcphist.colRef("spclspecyn"));
- } else if (sgrid == "opener.grd_clsphist") {
- var lnunitspclspecyn = "*";
- }
- if (lnunitspclspecyn == "") {
- model.makeValue("/root/hidden/sppiz01700/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz01700/cond/snglcalcscorcd", snglcalcscorcd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopno", clopno);
- model.makeValue("/root/hidden/sppiz01700/cond/edilnno", edilnno);
- model.makeValue("/root/hidden/sppiz01700/cond/clodseqno", seqno);
- model.makeValue("/root/hidden/sppiz01700/cond/spclcd", "JX999");
- model.makeValue("/root/hidden/sppiz01700/cond/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeValue("/root/hidden/sppiz01700/cond/spclspec", "");
- model.makeValue("/root/hidden/sppiz01700/cond/spclformat", "X(700)");
- model.makeValue("/root/hidden/sppiz01700/cond/rownum", "");
- model.makeValue("/root/hidden/sppiz01700/cond/cdnm", "기타내역");
- model.makeValue("/root/hidden/sppiz01700/cond/unitflag", "J");
- model.makeValue("/root/hidden/sppiz01700/cond/mpsno", mpsno);
- } else { // 기존에 입력된 줄단위 특정내역이 있는 경우
- var rowcnt = 1;
- var setrow = 0;
-
- for (var i = 1; i < opener.grd_clsphist.rows; i++) {
- var spcClodseqno = opener.model.getValue("/root/main/list3/clsp["+ i +"]/clodseqno");
- var spcClsoyn = opener.model.getValue("/root/main/list3/clsp["+ i +"]/clsoyn"); //원외특정여부
- if (spcClodseqno == seqno && spcClsoyn == "Y") {
- var spclcd = opener.model.getValue("/root/main/list3/clsp["+ i +"]/spclcd");
- if (spclcd != "" && spclcd != "JT001" && opener.grd_clsphist.rowstatus(i) != 4) { // 확인코드가 아닌 경우
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/flag", "");
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/rownum", i);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/snglcalcscorcd", opener.model.getValue("/root/main/list3/clsp["+ i +"]/snglcalcscorcd"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/clopdd", opener.model.getValue("/root/main/list3/clsp["+ i +"]/mpsno").substr(0,8));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/clopno", opener.model.getValue("/root/main/list3/clsp["+ i +"]/mpsno").substr(8,5));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/clodseqno", opener.model.getValue("/root/main/list3/clsp["+ i +"]/clodseqno"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/edilnno", opener.model.getValue("/root/main/list3/clsp["+ i +"]/edilnno"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclcd", spclcd);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclspec", opener.model.getValue("/root/main/list3/clsp["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclformat", opener.model.getValue("/root/main/list3/clsp["+ i +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/cdnm", opener.model.getValue("/root/main/list3/clsp["+ i +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/detldesc", opener.model.getValue("/root/main/list3/clsp["+ i +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/oldspclcd", spclcd);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/oldspclspec", opener.model.getValue("/root/main/list3/clsp["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/mpsno", opener.model.getValue("/root/main/list3/clsp["+ i +"]/mpsno"));
- // 특정내역 상세 화면에 보여줄 특정내역 선택
- if (spclcd == "JX999") {
- setrow = i; // 줄단위의 경우 가장 마지막 row로 설정한다.
- }
- rowcnt = rowcnt+1;
- }
- }
- }
- if (setrow > 0) {
- model.makeValue("/root/hidden/sppiz01700/cond/flag", "");
- model.makeValue("/root/hidden/sppiz01700/cond/snglcalcscorcd", snglcalcscorcd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopno", clopno);
- model.makeValue("/root/hidden/sppiz01700/cond/clodseqno", seqno);
- model.makeValue("/root/hidden/sppiz01700/cond/edilnno", edilnno);
- model.makeValue("/root/hidden/sppiz01700/cond/spclcd", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz01700/cond/detldesc", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz01700/cond/spclspec", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz01700/cond/spclformat", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz01700/cond/rownum", setrow);
- model.makeValue("/root/hidden/sppiz01700/cond/cdnm", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz01700/cond/unitflag", "J");
- model.makeValue("/root/hidden/sppiz01700/cond/mpsno", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/mpsno"));
- } else { // 기존에 입력된 JX999가 없는 경우
- model.makeValue("/root/hidden/sppiz01700/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz01700/cond/snglcalcscorcd", snglcalcscorcd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopno", clopno);
- model.makeValue("/root/hidden/sppiz01700/cond/clodseqno", seqno);
- model.makeValue("/root/hidden/sppiz01700/cond/edilnno", edilnno);
- model.makeValue("/root/hidden/sppiz01700/cond/spclcd", "JX999");
- model.makeValue("/root/hidden/sppiz01700/cond/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeValue("/root/hidden/sppiz01700/cond/spclspec", "");
- model.makeValue("/root/hidden/sppiz01700/cond/spclformat", "X(700)");
- model.makeValue("/root/hidden/sppiz01700/cond/rownum", "");
- model.makeValue("/root/hidden/sppiz01700/cond/cdnm", "기타내역");
- model.makeValue("/root/hidden/sppiz01700/cond/unitflag", "J");
- model.makeValue("/root/hidden/sppiz01700/cond/mpsno", opener.model.getValue("/root/main/list3/clsp["+ setrow +"]/mpsno"));
- }
- }
- modal("SPPIZ01700", "1", "10", "10", "SPPIZ01700", "/root/hidden/sppiz01700", "/root/hidden/clsp", "", ""); // sppiz01700_원외처방특정내역상세관리.xrw
- var rsltcnt = getNodesetCount("/root/hidden/sppiz01700/rslt/list");
- // 처리 건수
- if (rsltcnt > 0) {
- for (var i = rsltcnt; i > 0; i--) {
- var flag = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/flag");
- var rownum = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/rownum");
- var newspclcd = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclcd");
- var newcdnm = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/cdnm");
- var newspclspec = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclspec");
- var newspclformat = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclformat");
- var newdetldesc = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/detldesc");
- // 특정코드 추가인 경우
- if (flag == "I") {
- var clsprow = opener.grd_clsphist.rows - 1; // 특정내역 Grid 가장 마지막 줄에 추가한다.
- opener.grd_clsphist.insertRow(clsprow++, true);
- if( newspclcd == 'CT001' ){
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/unitflag", "C");
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/clodseqno", 0);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/edilnno", 0);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/snglcalcscorcd", '-');
- }else if( newspclcd == 'CT002' ){
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/unitflag", "C");
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/clodseqno", 0);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/edilnno", 0);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/snglcalcscorcd", '-');
- }else{
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/unitflag", "J");
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/clodseqno", seqno);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/edilnno", edilnno);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/snglcalcscorcd", snglcalcscorcd);
- }
-
- var snglcalcscorcdcnt = getNodesetCount("/root/main/list7/clop"); //원외청방수
- var clopdd = model.getValue("/root/main/list7/clop[1]/clopdd");
- var clopno = model.getValue("/root/main/list7/clop[1]/clopno");
- if (snglcalcscorcdcnt > 0) {
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/mpsno", clopdd +""+clopno);
- }
-
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/spclcd", newspclcd);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/cdnm", newcdnm);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/spclspec", newspclspec);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/spclformat", newspclformat);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/detldesc", newdetldesc);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/oldedilnno", edilnno);
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/oldspclcd", "");
-
- opener.model.setValue("/root/main/list3/clsp["+ clsprow +"]/clsoyn", "Y"); //원외처방여부
- opener.model.setValue("/root/hidden/list3/msgspclformat", "코드: "+ newspclcd +" / 명칭: "+ newcdnm +" / 내역: "+ newspclspec +" / 형식: "+ newspclformat);
- // 특정코드 변경인 경우
- } else if (flag == "U") {
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/snglcalcscorcd", snglcalcscorcd);
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/spclcd", newspclcd);
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/cdnm", newcdnm);
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/spclspec", newspclspec);
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/spclformat", newspclformat);
- opener.model.setValue("/root/main/list3/clsp["+ rownum +"]/detldesc", newdetldesc);
- opener.model.refresh();
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/oldspclcd");
- var oldspclspec = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/oldspclspec");
- var rowstatus = opener.grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) { // 1 : insert, 3 : insert & new
- } else {
- opener.grd_clsphist.rowstatus(rownum) = 2; // 2 : update 상태로 stat를 변경한다.
- }
- opener.model.setValue("/root/hidden/list3/msgspclformat", "코드: "+ newspclcd +" / 명칭: "+ newcdnm +" / 내역: "+ newspclspec +" / 형식: "+ newspclformat);
- // 특정코드 삭제인 경우
- } else if (flag == "D" && rownum != "" ) {
- // 특정내역 Grid에서 삭제
- var rowstatus = opener.grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) { // 1 : insert, 3 : insert & new
- opener.grd_clsphist.deleteRow(rownum, false); // 해당 라인을 Grid에서 삭제한다.
- } else { // 0 : new, 2 : update
- opener.grd_clsphist.rowstatus(rownum) = 4; // 4 : delete 상태로 stat를 변경한다.
- }
- opener.grd_clsphist.row = rownum;
- opener.model.setValue("/root/hidden/list3/msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- } // 특정 코드 상태 따른 if end
- } // for end
- var cnt = 0;
- for (var i = 1; i < opener.grd_clsphist.rows; i++) {
- if (opener.grd_clsphist.rowstatus(i) != 4) {
- var spcmpsno = opener.model.getValue("/root/main/list3/clsp["+ i +"]/mpsno");
- var spcClodseqno = opener.model.getValue("/root/main/list3/clsp["+ i +"]/clodseqno");
- var spcClsoyn = opener.model.getValue("/root/main/list3/clsp["+ i +"]/clsoyn");
-
- if (spcmpsno == mpsno && spcClodseqno == seqno && spcClsoyn == "Y") {
- cnt++;
- break;
- }
- }
- }
-
- if (cnt > 0) {
- var nodeList = instance1.selectNodes("/root/main/list7/clop");
- for (var i = 1; i <= nodeList.length; i++) {
- var mpsno = model.getValue("/root/main/list7/clop["+ i +"]/mpsno");
- var seqno = model.getValue("/root/main/list7/clop["+ i +"]/seqno");
- if (spcmpsno == mpsno && spcClodseqno == seqno && spcClsoyn == "Y") {
- model.setValue("/root/main/list7/clop["+ i +"]/spclspecyn", "*");
- break;
- }
- }
- }
-
- // 특정내역 줄번호/특정코드에 따라 sorting 작업
- opener.javascript.fSortSpclNo();
- grd_oprcphist.refresh();
- opener.grd_clsphist.refresh();
- opener.javascript.fSaveClspList();
- } // 처리 건수 if end
- } else {
- messageBox("처방번호가 부여되지 않았으며 해당 줄단위 특정내역이", "I004"); ///줄번호가 부여되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- /**
- * @group :
- * @ver : 2008.08.22
- * @by : 김상진
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 상세계산내역조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetOsclClamData(chkAll, grid){
- if (model.getValue("/root/init/mig") != "") {
- messageBox("전환데이터는 상세계산내역을 조회할 수", "I004"); //없습니다 !
- }
- else {
- var clamkey = model.getValue("/root/init/clamkey");
- var ctrlObj;
- var row;
- var col;
- var seqno;
- var hngnm;
- var grupcd;
- var calcscorcd;
- var edicd;
- var clopyn;
-
- if (chkAll != "ALL" && chkAll != "N") {
- chkAll = "N";
- }
-
-
- if (grid != "grd_clodhist" && grid != "grd_oprcphist") {
- grid = "grd_clodhist";
- }
-
-
- if (clamkey) {
-
- // 상세계산내역화면 call
- model.setValue("/root/hidden/sppid22100/cond/instcd", model.getValue("/root/init/instcd"));
- model.setValue("/root/hidden/sppid22100/cond/clamkey", model.getValue("/root/init/clamkey"));
- model.setValue("/root/hidden/sppid22100/cond/pid", model.getValue("/root/init/pid"));
- model.setValue("/root/hidden/sppid22100/cond/patnm", model.getValue("/root/init/patnm"));
- model.setValue("/root/hidden/sppid22100/cond/gender", model.getValue("/root/init/gender"));
- model.setValue("/root/hidden/sppid22100/cond/ioflag", model.getValue("/root/init/ioflag"));
- model.setValue("/root/hidden/sppid22100/cond/stsioflag", model.getValue("/root/init/stsioflag"));
- model.setValue("/root/hidden/sppid22100/cond/insukind", model.getValue("/root/init/insukindcd"));
- model.setValue("/root/hidden/sppid22100/cond/suppkind", model.getValue("/root/init/suppkindcd"));
- model.setValue("/root/hidden/sppid22100/cond/scrhdate", "execdd");
- model.setValue("/root/hidden/sppid22100/cond/fromdd", model.getValue("/root/init/ordfromdd"));
- model.setValue("/root/hidden/sppid22100/cond/todd", model.getValue("/root/init/ordtodd"));
- model.setValue("/root/hidden/sppid22100/cond/instcd", model.getValue("/root/init/instcd"));
-
- // 원외처방그리드이면...
- if (grid == "grd_oprcphist") {
- ctrlObj = document.controls.item(grid);
- row = ctrlObj.row;
- col = ctrlObj.col;
- seqno = model.getValue("/root/main/list7/clop["+ row +"]/clopseqno");
- hngnm = model.getValue("/root/main/list7/clop["+ row +"]/hngnm");
- grupcd = "";
- calcscorcd = model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd");
- edicd = model.getValue("/root/main/list7/clop["+ row +"]/edicd");
- clopyn = "Y"; //원외처방여부
- }
- model.setValue("/root/hidden/sppid22100/cond/clopyn", clopyn); //원외처방여부
-
-
- // 전체 상세내역이면...
- if (chkAll == "ALL") {
- model.setValue("/root/hidden/sppid22100/cond/clamcretdd", "0");
- model.setValue("/root/hidden/sppid22100/cond/hngnm", "");
- model.setValue("/root/hidden/sppid22100/cond/choicdsrch", "calcscorcd");
- model.setValue("/root/hidden/sppid22100/cond/calcscorcd", "");
- }
- // 각처방코드별 상세내역이면...
- else {
- model.setValue("/root/hidden/sppid22100/cond/clamcretdd", seqno);
- model.setValue("/root/hidden/sppid22100/cond/hngnm", hngnm);
-
- if (col == ctrlObj.colRef("grupcalcscorcd")) {
- model.setValue("/root/hidden/sppid22100/cond/choicdsrch", "grupcd");
- model.setValue("/root/hidden/sppid22100/cond/calcscorcd", grupcd);
- } else if (col == ctrlObj.colRef("snglcalcscorcd")) {
- model.setValue("/root/hidden/sppid22100/cond/choicdsrch", "calcscorcd");
- model.setValue("/root/hidden/sppid22100/cond/calcscorcd", calcscorcd);
- } else if (col == ctrlObj.colRef("basecd") || col == ctrlObj.colRef("edicd")) {
- model.setValue("/root/hidden/sppid22100/cond/choicdsrch", "edicd");
- model.setValue("/root/hidden/sppid22100/cond/calcscorcd", edicd);
- } else {
- model.setValue("/root/hidden/sppid22100/cond/choicdsrch", "calcscorcd");
- model.setValue("/root/hidden/sppid22100/cond/calcscorcd", calcscorcd);
- }
- }
-
- modal("SPPID22100", "1", "10", "10", "SPPID22100", "/root/hidden/sppid22100/cond", "/root/send/data1", "", ""); // SPPID22100_상세계산내역조회.xrw
- }
- }
- }
- //--------------------------------------
- // CLOP 저장전 점검
- //--------------------------------------
- function fCheckSaveOutAftJudgInfoCLOP() {
- // 저장할 정보를 체크한다.
- // 원외처방 Grid
- var clopList = instance1.selectSingleNode("/root/main/list7"); //root/main/list7
- if (clopList == null) {
- return true;
- }
- var clopNode = clopList.childNodes; //root/main/list7/clop
- for (var i = 1; i <= clopNode.length; i++) {
- if ( model.getValue("/root/main/list7/clop["+ i +"]/snglcalcscorcd") == "" ) {
- messageBox("원외처방 수가코드를", "C001"); ///원외처방 수가코드를 입력하십시오.
- return false;
- }
- }
- return true;
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="1116" pageheight="485" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
- <group id="grp_biz" scroll="auto" style="left:0px; top:0px; width:1100px; height:465px; ">
- <caption id="caption1" class="tit_2" style="left:5px; top:10px; width:69px; height:13px; ">원외처방</caption>
- <line id="line1" class="line_1" style="x1:0px; y1:25px; x2:1099px; y2:25px; "/>
- <select1 id="rdo_cloppayflag" ref="/root/hidden/selectedRdoPay" appearance="full" cellspacing="5" cols="3" overflow="visible" style="left:89px; top:8px; width:151px; height:15px; ">
- <choices>
- <item>
- <label>전체</label>
- <value>-</value>
- </item>
- <item>
- <label>급여</label>
- <value>0</value>
- </item>
- <item>
- <label>비급여</label>
- <value>1</value>
- </item>
- </choices>
- <script type="javascript" ev:event="xforms-select">
- <![CDATA[
- var selectedRdoPay = model.getValue("/root/hidden/selectedRdoPay");
- if (selectedRdoPay == "0" || selectedRdoPay == "1") {
- grd_oprcphist.attribute("nodeset") = "/root/main/list7/clop[payflag='"+ selectedRdoPay +"']"; // 급여구분1(P0104 -:해당사항없음, 0:급여, 1:전액본인부담, 2:일반)
- grd_oprcphist.rebuild();
- } else {
- grd_oprcphist.attribute("nodeset") = "/root/main/list7/clop";
- grd_oprcphist.rebuild();
- }
- ]]>
- </script>
- </select1>
- <datagrid id="grd_oprcphist" nodeset="/root/main/list7/clop" scroll="auto" caption="교부일자^교부번호^줄^처방코드^EDI 코드^한글명^급^EDI 단가^1회량^EDI1회량^회^일^EDI일^T^분류기호^분류명칭^처방명^효능중분류^효능소분류^사유^구분^mpsno^oldclopdd^oldclopno^newmpsno^seqno^workflag^clop seqno^spcljudgyn" colsep="^" colwidth="67, 54, 18, 83, 80, 200, 26, 60, 36, 56, 18, 30, 38, 14, 54, 100, 207, 120, 140,38, 27, 52, 43, 77, 20, 60, 60, 100, 100" ellipsis="true" extendlastcol="scroll" mergecells="byrestriccol" rowheader="update" rowheight="40" rowsep="|" tooltip="true" style="left:0px; top:30px; width:1100px; height:395px; ">
- <col ref="clopdd" type="input" format="yyyy-mm-dd" style="vertical-align:top; "/>
- <col ref="clopno" type="input" maxlength="5" style="vertical-align:top; "/>
- <col ref="edilnno"/>
- <col imemode="disabled" ref="snglcalcscorcd" type="input" _chartype="upper"/>
- <col imemode="disabled" ref="edicd" type="input" _chartype="upper"/>
- <col ref="hngnm"/>
- <col disabled="true" ref="payflag" type="combo" style="text-align:center; ">
- <choices>
- <item>
- <label>급</label>
- <value>0</value>
- </item>
- <item>
- <label>100</label>
- <value>1</value>
- </item>
- <item>
- <label>비</label>
- <value>2</value>
- </item>
- </choices>
- </col>
- <col ref="ediunitcost" format="(-)#,###" style="text-align:right; "/>
- <col ref="drugqty" format="#,###.00" maxlength="5.2" style="text-align:right; "/>
- <col ref="edidrugqty" type="input" format="#,###.00" maxlength="5.2" style="text-align:right; background-color:#e5d9ff; "/>
- <col ref="drugtims" type="input" format="##" maxlength="2" style="text-align:right; "/>
- <col ref="drugdayno" format="##" maxlength="4" style="text-align:right; "/>
- <col ref="edidrugdayno" type="input" format="##" maxlength="4" style="text-align:right; "/>
- <col ref="spclspecyn"/>
- <col ref="efcyclscd" style="left:1060px; top:23px; width:54px; height:23px; "/>
- <col ref="efcyclsnm"/>
- <col ref="ordnm"/>
- <col ref="efcynm2"/>
- <col ref="efcynm3" style="left:920px; top:23px; width:140px; height:23px; "/>
- <col ref="adjtresncd"/>
- <col ref="edicdflag"/>
- <col ref="mpsno" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="oldclopdd" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="oldclopno" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="newmpsno" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="seqno" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="workflag" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="clopseqno" visibility="hidden" style="background-color:#c0c0c0; "/>
- <col ref="spcljudgyn" visibility="hidden" style="background-color:#c0c0c0; "/>
- <script type="javascript" ev:event="onendedit">
- <![CDATA[
- fClopOnEndEdit(); // 20100405 function 대체
- ]]>
- </script>
- <script type="javascript" ev:event="onstartedit">
- <![CDATA[
- var row = grd_oprcphist.row;
- model.setValue("/root/hidden/list7/clop/oldclopdd", model.getValue("/root/main/list7/clop["+ row +"]/clopdd"));
- model.setValue("/root/hidden/list7/clop/oldclopno", model.getValue("/root/main/list7/clop["+ row +"]/clopno"));
- model.setValue("/root/hidden/list7/clop/oldrowstatus", grd_oprcphist.rowstatus(row));
- model.setValue("/root/hidden/list7/clop/oldsnglcalcscorcd", model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd"));
- model.setValue("/root/hidden/list7/clop/oldedicd", model.getValue("/root/main/list7/clop["+ row +"]/edicd"));
- model.setValue("/root/hidden/list7/clop/oldedidrugqty", model.getValue("/root/main/list7/clop["+ row +"]/edidrugqty"));
- model.setValue("/root/hidden/list7/clop/olddrugtims", model.getValue("/root/main/list7/clop["+ row +"]/drugtims"));
- model.setValue("/root/hidden/list7/clop/oldedidrugdayno", model.getValue("/root/main/list7/clop["+ row +"]/edidrugdayno"));
- ]]>
- </script>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if (isDataCell()) { // (tfHelper.js) 현재 click target이 data 영역인지 check: Boolean true or false
- var col = grd_oprcphist.col;
- if (col == grd_oprcphist.colRef("spclspecyn")) { // 'T' 필드
- fSetLnUnitClsoSpclSpec("grd_oprcphist");
- }
- else if (col == grd_oprcphist.colRef("snglcalcscorcd") || col == grd_oprcphist.colRef("edicd") || col == grd_oprcphist.colRef("hngnm")) {
- //else if ( col == grd_oprcphist.colRef("edicd") || col == grd_oprcphist.colRef("hngnm") ) {
- var row = grd_oprcphist.row;
- var rowstatus = grd_oprcphist.rowstatus(row);
- if (grd_oprcphist.valueMatrix(row, col) != "" && rowstatus != 1) {
- //상세계산내역조회
- fGetOsclClamData("N", "grd_oprcphist");
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmouseover">
- <![CDATA[
- if (grd_oprcphist.isCell(event.target) && grd_oprcphist.mouseRow >= grd_oprcphist.fixedrows) {
-
- // 수가코드, edi코드는 입력제한
- var clopstatus = grd_oprcphist.rowstatus(grd_oprcphist.mouseRow);
- if (clopstatus == 0 || clopstatus == 2) { // 0 : new, 2 : update
- grd_oprcphist.colDisabled(grd_oprcphist.colRef("snglcalcscorcd")) = true;
- grd_oprcphist.colDisabled(grd_oprcphist.colRef("edicd")) = true;
- } else {
- grd_oprcphist.colDisabled(grd_oprcphist.colRef("snglcalcscorcd")) = false;
- grd_oprcphist.colDisabled(grd_oprcphist.colRef("edicd")) = false;
- }
- var row = grd_oprcphist.mouseRow;
- var col = grd_oprcphist.mouseCol;
- if (col == grd_oprcphist.colRef("spclspecyn")) { // 'T' 필드
- var spclcd = model.getValue("/root/main/list7/clop["+ row +"]/spclcd");
- var spclcdnm = model.getValue("/root/main/list7/clop["+ row +"]/spclcdnm");
- var spclspec = model.getValue("/root/main/list7/clop["+ row +"]/spclspec");
- if (spclcd && spclcdnm && spclspec) {
- if (spclcd == "JT010") {
- spclformat = "X(1)/X(200)";
- } else {
- spclformat = "X(700)";
- }
- grd_oprcphist.tooltipText(row, col) = "특정내역코드: "+ spclcdnm +" / 기재내역: "+ spclspec +" / 기재형식: "+ spclformat;
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="oncopy">
- <![CDATA[
- // 그리드 내용 복사
- if (grd_oprcphist.selectedRows == 1) { // 한줄
- var row = grd_oprcphist.row;
- var col = grd_oprcphist.col;
- if (col == grd_oprcphist.colRef("snglcalcscorcd") || col == grd_oprcphist.colRef("edicd") || col == grd_oprcphist.colRef("hngnm") || col == grd_oprcphist.colRef("ordnm")) {
- // 처방코드/EDI 코드/한글명/처방명
- // var clip = grd_oprcphist.valueMatrix(row, col);
- var clip = grd_oprcphist.labelMatrix(row, col);
- // var clip = grd_oprcphist.labelMatrix(grd_oprcphist.mouseRow, grd_oprcphist.mouseCol);
- window.clipBoardData = clip;
- } else {
- grid_oncopy(); // (tfHelper.js) window.clipBoardData 복사 기능
- }
- }
- else if (grd_oprcphist.selectedRows > 1) { // 여러줄
- grid_oncopy(); // (tfHelper.js) window.clipBoardData 복사 기능
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- if (event.button == 3) { // 3 : 오른쪽 버튼
- if (grd_oprcphist.isCell(event.target) && grd_oprcphist.mouseRow >= grd_oprcphist.fixedrows) {
- setPopupMenu("grd_oprcphist", false, "/root/hidden/popupmenu/gridclop/item", "name", "func"); // (tfHelper.js) 컨트롤에서 사용자 팝업 설정 함수
- }
- if (model.getValue("/root/init/clamym")) { // 3 : 오른쪽 버튼 // 조회된 심사대상자가 있으면
- if (isDataCell() == false) { // (tfHelper.js) datagrid click or dbclick 시점에 현재 click target이 data 영역인지 check
- // 처방이 한줄도 없는 경우에도 "행 추가"를 하기 위해 사용함
- window.showPopupMenu(true);
- window.setPopupMenu(true, "/root/hidden/popupmenu/gridclop/inititem", "name", "func", false);
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmouseup">
- <![CDATA[
- var row = grd_oprcphist.mouseRow;
- var col = grd_oprcphist.mouseCol;
- if (grd_oprcphist.isCell(event.target) && grd_oprcphist.mouseRow >= grd_oprcphist.fixedRows) {
- if (col == grd_oprcphist.colRef("adjtresncd")) { // '심사사유' 필드
- var adjtresncd = model.getValue("/root/main/list7/clop["+ row +"]/adjtresncd");
- if ( adjtresncd != "" && adjtresncd != "-" ) {
- fSetAdjtResnCdClop();
- }
- }
- }
- ]]>
- </script>
- <script type="javascript" ev:event="DOMFocusOut">
- <![CDATA[
- initPopupMenu(); // (tfHelper.js) 사용자 팝업 설정 초기화
- ]]>
- </script>
- </datagrid>
- <button id="button5" class="btn2_letter2" style="left:1032px; top:4px; width:64px; height:19px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // CLOP 저장전 점검
- copyNodesetType("/root/send/clbs","/root/init","replace");
-
- if (fCheckSaveOutAftJudgInfoCLOP()) {
- // 처방
- var updtdata = getGridUpdateData(grd_oprcphist); // (tfHelper.js) 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
- if (updtdata) {
- model.makeValue("/root/send/list7/clop", updtdata);
- }
- if (updtdata != "" && grd_oprcphist.rows > 1) {
- // saveOkMsg += "[원외처방] ";
- model.makeValue("/root/send/clbs/reclopedilnnoyn", "Y"); // 저장 시에 줄번호생성 다시할지 여부를 설정함
- } else {
- // saveNoMsg += "[원외처방] ";
- }
-
- submit("TXPID21702");
- } else {
- }
- ]]>
- </script>
- </button>
- </group>
- <group id="grp_btn" scroll="auto" style="left:0px; top:430px; width:1100px; height:27px; ">
- <button id="btn_close" class="btn4_letter2" style="left:1043px; top:5px; width:56px; height:22px; ">
- <caption>닫기</caption>
- <close ev:event="DOMActivate"/>
- </button>
- <line id="line32" class="line_6" style="x1:0px; y1:0px; x2:1099px; y2:0px; "/>
- </group>
- </xhtml:body>
- </xhtml:html>
|