123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <!--
- * 제 목 : SMLPB00200_Cassette일괄발행.xrw
- * 설 명 : 슬라이드일괄출력 화면
- * 설 계 자 : (주)에이씨케이 - 유동철
- * 작 성 자 : (주)에이씨케이 - 유동철
- * 작 성 일 : 2007.04.23
- * 수정이력 :
- * 기 타 :
- -->
- <?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>Cassette일괄발행</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <acptptno>
- <acptptnolist>
- <choi/>
- <instcd/>
- <ptno/>
- <dispptno/>
- <spcacptdd/>
- <spcacptno/>
- <spcacptseqno/>
- <spcnm/>
- <maxcsteno/>
- <bfcstecnt/>
- <afcstecnt/>
- <delcstecnt/>
- <cstecharinpt/>
- <cstecharchoi/>
- <cstecharno/>
- <cstekindcd/>
- <hoppno/>
- <grosdrnm/>
- <testnmlist/>
- <spccd/>
- <spchistno/>
- <acptdd/>
- <acptno/>
- <maxcstecnts/>
- <cstecharuserinpt/>
- </acptptnolist>
- </acptptno>
- <isscste>
- <isscstelist>
- <choi/>
- <instcd/>
- <ptno/>
- <dispptno/>
- <spcacptdd/>
- <spcacptno/>
- <spcacptseqno/>
- <csteno/>
- <cstekindcd/>
- <cstecnts/>
- <tisscnt/>
- <hoppno/>
- <maxcsteno/>
- <bizflagcd/>
- <scrno/>
- <acptdd/>
- <acptno/>
- <testcd/>
- <acptitemno/>
- <slidno/>
- <spccd/>
- <spchistno/>
- <statsinclflagcd/>
- </isscstelist>
- </isscste>
- <cstestats>
- <cstestatslist>
- <instcd/>
- <cstekind/>
- <cstecnt/>
- <slidcnt/>
- </cstestatslist>
- </cstestats>
- <eqinfo>
- <caeqlist>
- <eqnm/>
- <eqip/>
- <eqport/>
- <eqflag/>
- <eqseqno/>
- <resncd/>
- <baseflagcd/>
- </caeqlist>
- <slideqlist>
- <eqnm/>
- <eqip/>
- <eqport/>
- <eqflag/>
- <eqseqno/>
- <resncd/>
- <baseflagcd/>
- </slideqlist>
- </eqinfo>
- <slideinfo>
- <slidelist>
- <instcd/>
- <ptno/>
- <spcacptdd/>
- <spcacptno/>
- <spcacptseqno/>
- <csteno/>
- <bloccnts/>
- <prntcsscnts/>
- <slidno/>
- <cstekindcd/>
- <cstecnts/>
- <workattr/>
- <prntcsscnts/>
- <cstecnts/>
- <ipttype/>
- <maxcsteno/>
- <bizflagcd/>
- <acptdd/>
- <acptno/>
- <testcd/>
- <acptitemno/>
- <scrno/>
- <spccd/>
- <spchistno/>
- <statsinclflagcd/>
- <relaptno/>
- <bloccnts/>
- <reladispptno/>
- <workflagcd/>
- <dispptno/>
- <prtnblocnm/>
- </slidelist>
- </slideinfo>
- </main>
- <send>
- <slideflag/>
- </send>
- <init>
- <ptnocode/>
- <fromyear/>
- <fromptno/>
- <toyear/>
- <toptno/>
- <acptfromdd/>
- <acpttodd/>
- <seameth/>
- <seaval/>
- <ptnofrom/>
- <ptnoto/>
- <sysdt>
- <sysdtinfo>
- <sysdd/>
- <systm/>
- </sysdtinfo>
- </sysdt>
- <userinfo>
- <userinfolist>
- <userid/>
- <usernm/>
- <jobkindcd/>
- </userinfolist>
- </userinfo>
- <hospenv>
- <hospenvinfo>
- <instcd/>
- <lendrtnterm/>
- <recvqualmthdcd/>
- <plgydeptcd/>
- <plgyteamcd/>
- <doctjobgradcd/>
- <teamjobgradcd/>
- <csteeqmtip/>
- <csteeqmtport/>
- <slideqmtip/>
- <slideqmtport/>
- </hospenvinfo>
- </hospenv>
- <resncd>
- <resncdlist>
- <instcd/>
- <baseflagcd/>
- <resncd/>
- <resncnts/>
- </resncdlist>
- </resncd>
- <ptnocd>
- <ptnocdlist>
- <instcd/>
- <ptnocd/>
- <ptnonm/>
- </ptnocdlist>
- </ptnocd>
- <cstechar>
- <cstecharlist>
- <no>1</no>
- <cnts>C</cnts>
- </cstecharlist>
- </cstechar>
- <cstecharno>
- <cstecharnolist>
- <no>1</no>
- <cnts>이중번호</cnts>
- </cstecharnolist>
- </cstecharno>
- <choicstechar/>
- <choicstekindcd/>
- <choichopperval/>
- <eqseqno/>
- <slideflag/>
- <slideeqseqno/>
- </init>
- <hidden>
- <userdeptcd/>
- </hidden>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- fExeInitialize();
- ]]>
- </script>
- <submission id="TRLPZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/hospenv/hospenvinfo"/>
- <submission id="TRLPZ00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/sysdt/sysdtinfo"/>
- <submission id="TRLPZ00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/resncd/resncdlist"/>
- <submission id="TRLPZ00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/userinfo/userinfolist"/>
- <submission id="TRLPB00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptptno/acptptnolist"/>
- <submission id="TRLPB00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/cstestats/cstestatslist"/>
- <submission id="TXLPB00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/slideinfo/slidelist"/>
- <submission id="TRLPZ00109" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/ptnocd/ptnocdlist"/>
- <submission id="TRLPC01802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/eqinfo"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
- <script type="javascript" src="../../../lis/commonweb/js/LPZ001.js"/>
- <script type="javascript">
- <![CDATA[
-
- //---------------
- // Socket연결상태
- var isConnected = false;
-
- //카세트, 슬라이드 출력 여부
- var sCasteSlideflag = "C";
-
- //장비 인터페이스출력완료 여부 표시
- var sEqFinish = "N";
-
- var interval_id = "";
-
- var bParentWindow = false;
-
- /* @group : Cassette일괄출력
- * @ver : 2007.02.12 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 초기화 Function
- */
- function fExeInitialize() {
-
- var iMaxNo = 0;
- var sCurDate = "";
-
- //---------------------
- // Instance Node 초기화
- model.removeNodeset("/root/main/acptptno/acptptnolist"); // 병리번호리스트 초기화
- model.removeNodeset("/root/main/isscste/isscstelist"); // 발행 및 삭제Cassette리스트 초기화
- model.removeNodeset("/root/init/ptnocd/ptnocdlist");
-
- //--------------------------------
- model.removeNodeset("/root/send");
- model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
- submit("TRLPZ00101", false);
- submit("TRLPZ00109", false);
-
- //---------------------------------------------------------
- // 병원환경정보를 취득하여 병리과와 병리팀 코드를 편집한다.
- lpzfUserDeptCd("/root/init/hospenv/hospenvinfo", "/root/hidden");
- //-------------------------------------------------------------------------------------
- model.makeValue("/root/send/userdeptcd", model.getValue("/root/hidden/userdeptcd"));
- model.makeValue("/root/send/doctjobgradcd", model.getValue("/root/init/hospenv/hospenvinfo/doctjobgradcd"));
- model.makeValue("/root/send/teamjobgradcd", model.getValue("/root/init/hospenv/hospenvinfo/teamjobgradcd"));
- submit("TRLPZ00105", false);
-
- //------------------------------------------
- // Cassette(블록) 및 Slide(슬라이드) 목록 조회
- model.makeValue("/root/send/baseflagcd", "'81'");
- submit("TRLPZ00103");
- model.removeNodeset("/root/init/resncd/resncdlist[resncd='ZZZZ']");
-
- //------------------
- // Cassette내용 분리
- lpzfExeCsteCntsSplit("/root/init/resncd/resncdlist");
-
- iMaxNo = getNodesetCount("/root/init/cstechar/cstecharlist");
- model.makeValue("/root/init/cstechar/cstecharlist["+(Number(iMaxNo)+1)+"]/no", "Z");
- model.makeValue("/root/init/cstechar/cstecharlist["+(Number(iMaxNo)+1)+"]/cnts", "");
-
- //블록 장비 조회
- model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); //instcd
- model.makeValue("/root/send/seaflagcd", "0"); //"0:전체, 1:카세트, 2:슬라이드"
- submit("TRLPC01802");
- cmb_slideqlist.select(0);
- cmb_slid.select(0);
-
- //---------------------
- // 시스템 현재일시를 조회
- fExeSysDtSet();
-
- //------------------------------------------------------------
- sCurDate = model.getValue("/root/init/sysdt/sysdtinfo/sysdd");
- model.makeValue("/root/init/ptnocode", "");
- model.makeValue("/root/init/fromyear", sCurDate.substr(2,2));
- model.makeValue("/root/init/toyear", sCurDate.substr(2,2));
- model.makeValue("/root/init/fromptno", "");
- model.makeValue("/root/init/toptno", "");
-
- //----------------------------------------
- model.setValue("/root/init/seameth", "1"); // 검색방법 초기화(0:병리번호, 1:등록번호)
- model.setValue("/root/init/seaval", ""); // 검색값 초기화
- model.setValue("/root/init/ptnocode", "-");
- cbo_ptnocd.visible = true;
-
- //-----------------------------------------
- grd_ptnolist.fixedcellcheckbox(0,0) = true;
-
- //-------------
- model.refresh();
-
-
- //---------------------------------------------
- // 일반검사결과등록 화면에서 호출했을 경우 처리
- // 2010-11-13 : YDC
- if (window.parent == null) {
- // Continue
- } else {
- if ( opener.javascript.getParameter("SMLPB00200_ptno") != "") {
-
- //--------------------
- bParentWindow = true;
-
- //------------------------------------------------------------
- var sPtNo = opener.javascript.getParameter("SMLPB00200_ptno");
- model.makeValue("/root/init/acptfromdd", opener.javascript.getParameter("SMLPB00200_acptdd"));
- model.makeValue("/root/init/acpttodd", opener.javascript.getParameter("SMLPB00200_acptdd"));
- model.makeValue("/root/init/pid", opener.javascript.getParameter("SMLPB00200_pid"));
- model.makeValue("/root/init/ptnocode", sPtNo.substr(0, sPtNo.length-8) );
- model.makeValue("/root/init/fromyear", sPtNo.substr(sPtNo.length-8, 2) )
- model.makeValue("/root/init/fromptno", sPtNo.substr(sPtNo.length-6, 6) );
- model.makeValue("/root/init/toyear", sPtNo.substr(sPtNo.length-8, 2) )
- model.makeValue("/root/init/toptno", sPtNo.substr(sPtNo.length-6, 6) );
-
- //----------------
- fGetAcptSpcList();
- }
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.02.12 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 시스템일시 설정 처리 Function
- */
- function fExeSysDtSet() {
- //-------------------
- submit("TRLPZ00102"); // 시스템 현재일시를 조회
-
- model.makeValue("/root/init/acptfromdd", model.getValue("/root/init/sysdt/sysdtinfo/sysdd"));
- model.makeValue("/root/init/acpttodd", model.getValue("/root/init/sysdt/sysdtinfo/sysdd"));
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.23 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 접수검체 목록 조회 처리 Function
- */
- function fGetAcptSpcList() {
-
- var sTemp = "";
- var sSysDD = model.getValue("/root/init/sysdt/sysdtinfo/sysdd");
- var sFromDD = model.getValue("/root/init/acptfromdd");
- var sToDD = model.getValue("/root/init/acpttodd");
-
-
- //--------------------------------
- model.removeNodeset("/root/send");
- model.removeNodeset("/root/main/acptptno/acptptnolist");
- //model.removeNodeset("/root/main/isscste/isscstelist");
- /*
- //-------------------------------------------------
- if (model.getValue("/root/init/ptnofrom") == "") {
- model.setValue("/root/init/ptnofrom", sSysDD.substr(2,2) + "000001");
- }
- //-------------------------------------------------
- if (model.getValue("/root/init/ptnoto") == "") {
- model.setValue("/root/init/ptnoto", sSysDD.substr(2,2) + "999999");
- }
- */
-
- //------------------------------------------------
- if (model.getValue("/root/init/ptnocode") != "") {
-
- //------------------------------------------------
- if (model.getValue("/root/init/fromyear") == "") {
- model.makeValue("/root/init/fromyear", sFromDD.substr(2,2));
- } else {
- sTemp = model.getValue("/root/init/fromyear");
- model.makeValue("/root/init/fromyear", sTemp.getLeftPad(2, "0"));
- }
-
- //----------------------------------------------
- if (model.getValue("/root/init/toyear") == "") {
- model.makeValue("/root/init/toyear", sToDD.substr(2,2));
- } else {
- sTemp = model.getValue("/root/init/toyear");
- model.makeValue("/root/init/toyear", sTemp.getLeftPad(2, "0"));
- }
-
- //------------------------------------------------
- if (model.getValue("/root/init/fromptno") == "") {
- model.makeValue("/root/init/fromptno", "000000");
- } else {
- sTemp = model.getValue("/root/init/fromptno");
- model.makeValue("/root/init/fromptno", sTemp.getLeftPad(6, "0"));
- }
-
- //----------------------------------------------
- if (model.getValue("/root/init/toptno") == "") {
- model.makeValue("/root/init/toptno", "999999");
- } else {
- sTemp = model.getValue("/root/init/toptno");
- model.makeValue("/root/init/toptno", sTemp.getLeftPad(6, "0"));
- }
- }
-
- //--------------------------------------------
- sTemp = model.getValue("/root/init/ptnocode");
-
- //---------------------------------------------------------------------
- model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
- model.makeValue("/root/send/acptfromdd", model.getValue("/root/init/acptfromdd"));
- model.makeValue("/root/send/acpttodd", model.getValue("/root/init/acpttodd"));
- model.makeValue("/root/send/seamthd", model.getValue("/root/init/seameth"));
- model.makeValue("/root/send/seaval", model.getValue("/root/init/seaval"));
- model.makeValue("/root/send/ptnocode", sTemp.replace("-", ""));
- model.makeValue("/root/send/fromyear", model.getValue("/root/init/fromyear"));
- model.makeValue("/root/send/fromptno", model.getValue("/root/init/fromptno"));
- model.makeValue("/root/send/toyear", model.getValue("/root/init/toyear"));
- model.makeValue("/root/send/toptno", model.getValue("/root/init/toptno"));
-
- //---------------------------
- submit("TRLPB00201", false);
-
- //-------------------
- if (bParentWindow) {
-
- var sNode = "/root/main/acptptno/acptptnolist";
-
- //-----------------------------------------------------------------
- for (var iRowNo = 1; iRowNo <= getNodesetCount(sNode); iRowNo++) {
- model.makeValue(sNode+"["+iRowNo+"]/choi", "true");
- model.makeValue(sNode+"["+iRowNo+"]/cstekindcd", "9999");
- }
- }
-
- //--------------
- model.refresh();
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.23 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 블럭 생성정보 전달 처리 Function
- */
- function fExeInfoSend() {
-
- var iCurCnt = -1;
- var iIssCnt = -1;
- var iDelCnt = -1;
- var iLastRowNo = -1;
- var iLastCsteNo = -1;
- var iLoopCnt = -1;
- var iSpcSeqNo = 0;
- var iCsteNo = 0;
- var sCsteNo = "0";
- var sCsteCnts = "";
-
- var sAfCsteCnt = "";
- var bCsteStat = false;
-
-
- //--------------------------------------------------
- var strSrcNode = "/root/main/acptptno/acptptnolist";
- var strDescNode = "/root/main/isscste/isscstelist";
-
- //-------------------------------------------------------------------
- for (var iRowNo=1; iRowNo <= getNodesetCount(strSrcNode); iRowNo++) {
- if (model.getValue(strSrcNode+"["+iRowNo+"]/choi") == "true") {
-
- //-------------------------------------------------------------------
- sAfCsteCnt = model.getValue(strSrcNode+"[" + iRowNo + "]/afcstecnt");
-
- //-----------------------
- // 숫자인지 문자인지 검사
- if ( sAfCsteCnt.isNumber() ) {
- iIssCnt = Number(sAfCsteCnt);
- } else {
- sAfCsteCnt = sAfCsteCnt.toUpperCase();
-
- iIssCnt = Number(sAfCsteCnt.charCodeAt(0)) - 64;
- }
-
- //--------------------------------------------------------------------------
- iDelCnt = Number(model.getValue(strSrcNode+"[" + iRowNo + "]/delcstecnt"));
- //------------------------------------------------------
- // 발행블록수 와 삭제 블록수가 동시에 입력되면 처리불가
- if (iIssCnt > 0 && iDelCnt > 0) {
- messageBox("발행 블록 수 와 삭제 블록 수 를 동시에 처리", "E001");
- return false;
- }
-
- //---------------------------------
- // 발행 블록 수 를 입력한 경우 처리
- if (iIssCnt > 0 || iDelCnt > 0) {
-
- //----------------------------------------
- iLastRowNo = getNodesetCount(strDescNode);
-
- //----------------------------------------------------------------
- if (model.getValue(strSrcNode+"[" + iRowNo + "]/maxcsteno") == "-" || model.getValue(strSrcNode+"[" + iRowNo + "]/maxcsteno") == "") {
- iLastCsteNo = 0;
- } else {
- iLastCsteNo = Number(model.getValue(strSrcNode+"[" + iRowNo + "]/maxcsteno"));
- //iLastCsteNo = 0;
- }
-
- //----------------------------------
- if (iIssCnt > 0) iLoopCnt = iIssCnt;
- if (iDelCnt > 0) iLoopCnt = iDelCnt;
-
- //--------------------------------------
- for (var iNo=1; iNo <= iLoopCnt; iNo++) {
- grd_isscstelist.addRow();
-
- //-------------------------------------------
- iCurCnt = Number(iLastRowNo)+Number(iNo);
-
- //--------------------------------------------------------------------
- model.makeValue(strDescNode+"[" + iCurCnt + "]/choi", "true");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/instcd", model.getValue(strSrcNode+"[" + iRowNo + "]/instcd"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/ptno", model.getValue(strSrcNode+"[" + iRowNo + "]/ptno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/dispptno", model.getValue(strSrcNode+"[" + iRowNo + "]/dispptno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/spcacptdd", model.getValue(strSrcNode+"[" + iRowNo + "]/spcacptdd"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/spcacptno", model.getValue(strSrcNode+"[" + iRowNo + "]/spcacptno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/spcacptseqno", model.getValue(strSrcNode+"[" + iRowNo + "]/spcacptseqno"));
-
- //----------------
- if (iIssCnt > 0) {
- iCsteNo = Number(iNo)+Number(iLastCsteNo);
-
- //----------------
- bCsteStat = false;
-
- //-----------------
- if (iIssCnt == 1) {
- if (iRowNo > 1) {
- if (Number(model.getValue(strSrcNode+"[" + Number(iRowNo-1) + "]/afcstecnt")) == 1) {
- bCsteStat = true;
- }
- }
- }
-
- //--------------------------------------------------------
- sCsteNo = (iNo+iLastCsteNo).toString().getLeftPad(3, "0");
-
- } else if (iDelCnt > 0) {
- iCsteNo = Number(iLastCsteNo);
- sCsteNo = (iLastCsteNo).toString().getLeftPad(3, "0");
- iLastCsteNo--;
- }
-
- //-------------------------------------------------------------------------------
- iSpcSeqNo = Number(model.getValue(strSrcNode+"[" + iRowNo + "]/spcacptseqno"));
- sCsteCnts = model.getValue("/root/init/resncd/resncdlist[resncd='" + model.getValue(strSrcNode+"[" + iRowNo + "]/cstekindcd") + "']/resncnts");
-
- //-------------------------------
- if ( sCsteCnts == "신규번호" ) {
- iCsteNo = iNo;
- }
-
- //---------------------------------------------
- // Cassette Type을 분석하여 Cassette내용을 표시
- if (bCsteStat) {
- //sCsteCnts = lpzfExeCsteCnt(sCsteCnts, iSpcSeqNo, iSpcSeqNo);
- sCsteCnts = lpzfExeCsteCnt(sCsteCnts, iSpcSeqNo, Number(iCsteNo));
- } else {
- sCsteCnts = lpzfExeCsteCnt(sCsteCnts, iSpcSeqNo, Number(iCsteNo));
- }
-
- if(model.getValue(strSrcNode+"[" + iRowNo + "]/cstecharuserinpt") != "") {
- sCsteCnts = model.getValue(strSrcNode+"[" + iRowNo + "]/cstecharuserinpt") + sCsteCnts;
- }
-
- model.makeValue(strDescNode+"[" + iCurCnt + "]/cstecnts", sCsteCnts);
- //-----------------------------------------------------------------
- /*
- switch (model.getValue(strSrcNode+"[" + iRowNo + "]/cstekindcd")) {
- case "1001" : // No
- model.makeValue(strDescNode+"[" + iCurCnt + "]/cstecnts", iSpcSeqNo + "-" + Number(iCsteNo));
- break;
-
- case "1002" : // FSP
- model.makeValue(strDescNode+"[" + iCurCnt + "]/cstecnts", sCsteCnts + " " + Number(iCsteNo));
- break;
-
- default :
- model.makeValue(strDescNode+"[" + iCurCnt + "]/cstecnts", sCsteCnts);
- }
- */
-
- model.makeValue(strDescNode+"[" + iCurCnt + "]/csteno", sCsteNo);
- model.makeValue(strDescNode+"[" + iCurCnt + "]/cstekindcd", model.getValue(strSrcNode+"[" + iRowNo + "]/cstekindcd"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/tisscnt", "1");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/hoppno", model.getValue(strSrcNode+"[" + iRowNo + "]/hoppno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/maxcsteno", model.getValue(strSrcNode+"[" + iRowNo + "]/maxcsteno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/scrno", "10");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/acptdd", model.getValue(strSrcNode+"[" + iRowNo + "]/acptdd"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/acptno", model.getValue(strSrcNode+"[" + iRowNo + "]/acptno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/testcd", "-");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/acptitemno", "0");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/slidno", "000");
- model.makeValue(strDescNode+"[" + iCurCnt + "]/spccd", model.getValue(strSrcNode+"[" + iRowNo + "]/spccd"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/spchistno", model.getValue(strSrcNode+"[" + iRowNo + "]/spchistno"));
- model.makeValue(strDescNode+"[" + iCurCnt + "]/statsinclflagcd", "0");
- }
- }
- }
- }
-
- //--------------
- model.refresh();
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.24 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 블럭 생성정보 전달 처리 Function
- */
- function fExeCsteIssDel(pBizFlagCd) {
-
- //--------------------------------
- model.removeNodeset("/root/send");
-
- //--------------------------------
- //카세트 삭제
- if(pBizFlagCd == "DELETE") {
- //----------------------------
- grd_ptnolist.clearStatus();
-
- //----------------------------------------------------------------------------------------
- for (var iRowNo=1; iRowNo <= getNodesetCount("/root/main/acptptno/acptptnolist"); iRowNo++) {
- if (model.getValue("/root/main/acptptno/acptptnolist[" + iRowNo + "]/choi") == "true") {
- model.makeValue("/root/main/acptptno/acptptnolist[" + iRowNo + "]/bizflagcd", pBizFlagCd);
- model.makeValue("/root/main/acptptno/acptptnolist[" + iRowNo + "]/scrno", "10");
- grd_ptnolist.addStatus(iRowNo, "insert");
- }
- }
-
- //-------------------------------------------------------------------------
- model.makeValue("/root/send/isscstelist", grd_ptnolist.getUpdateData());
-
- if (submit("TXLPB00201")) {
- messageBox("Cassette(블럭) 삭제가 ", "I002");
-
- //------------------------------------
- // Cassette(블럭) 생성 후 자료 초기화
- fGetAcptSpcList();
- }
-
- } else {
-
- if(getNodesetCount("/root/main/isscste/isscstelist") < 1) {
- messageBox("Cassette 발행 목록을 입력", "I008");
- return;
- }
-
- //----------------------------
- grd_isscstelist.clearStatus();
-
- //----------------------------------------------------------------------------------------
- for (var iRowNo=1; iRowNo <= getNodesetCount("/root/main/isscste/isscstelist"); iRowNo++) {
- if (model.getValue("/root/main/isscste/isscstelist[" + iRowNo + "]/choi") == "true") {
- model.makeValue("/root/main/isscste/isscstelist[" + iRowNo + "]/bizflagcd", pBizFlagCd);
- model.makeValue("/root/main/isscste/isscstelist[" + iRowNo + "]/scrno", "10");
- model.makeValue("/root/main/isscste/isscstelist[" + iRowNo + "]/statsinclflagcd", model.getValue("/root/main/isscste/isscstelist[" + iRowNo + "]/hoppno"));
- model.makeValue("/root/main/isscste/isscstelist[" + iRowNo + "]/slideflag", model.getValue("/root/init/slideflag")); //슬라이드 출력여부
- grd_isscstelist.addStatus(iRowNo, "insert");
- }
- }
-
- //-------------------------------------------------------------------------
- model.makeValue("/root/send/isscstelist", grd_isscstelist.getUpdateData());
- if (submit("TXLPB00201")) {
- messageBox("Cassette(블럭) 발행이 ", "I002");
-
- //--------------------------------
- // Cassette Labeler 장비 Interface
- if (pBizFlagCd == "C") {
-
- sEqFinish = "N";
-
- sCasteSlideflag = "C";
- fExeSocketSend();
-
- //슬라이드도 동시에 출력
- if(model.getValue("/root/init/slideflag") == "Y") {
- interval_id = window.setinterval("fPrtnSlide()", 1000);
- }
-
- }
-
- //------------------------------------
- // Cassette(블럭) 생성 후 자료 초기화
- //model.removeNodeset("/root/main/isscste/isscstelist");
- fGetAcptSpcList();
- }
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.24 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 발행 및 삭제Cassette목록 초기화 처리 Function
- */
- function fExeIssDelListInitialize() {
- model.removeNodeset("/root/main/isscste/isscstelist");
- grd_isscstelist.rebuild();
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.24 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 발행 Cassette목록을 장비로 전송 Function
- */
- function fExeSocketSend() {
-
- var sSendMsg = "";
-
- //-----------------------------------------------
- var sInfoNode = "/root/init/hospenv/hospenvinfo";
- var sCsteNode = "/root/main/isscste/isscstelist";
- //var sCsteIP = model.getValue(sInfoNode+"/csteeqmtip");
- //var sCstePort = model.getValue(sInfoNode+"/csteeqmtport");
- var sCsteIP = "";
- var sCstePort = "";
-
- //장비IP set
- if(sCasteSlideflag == "C") { //카세트
- for(var iRowNo = 1 ; iRowNo <= getNodesetCount("/root/main/eqinfo/caeqlist") ; iRowNo++){
- if(model.getValue("/root/init/eqseqno") == model.getValue("/root/main/eqinfo/caeqlist["+ iRowNo +"]/eqseqno")) {
- sCsteIP = model.getValue("/root/main/eqinfo/caeqlist["+ iRowNo +"]/eqip");
- sCstePort = model.getValue("/root/main/eqinfo/caeqlist["+ iRowNo +"]/eqport");
- }
- }
- } else { //슬라이드
- for(var iRowNo = 1 ; iRowNo <= getNodesetCount("/root/main/eqinfo/slideqlist") ; iRowNo++){
- if(model.getValue("/root/init/slideeqseqno") == model.getValue("/root/main/eqinfo/slideqlist["+ iRowNo +"]/eqseqno")) {
- sCsteIP = model.getValue("/root/main/eqinfo/slideqlist["+ iRowNo +"]/eqip");
- sCstePort = model.getValue("/root/main/eqinfo/slideqlist["+ iRowNo +"]/eqport");
- }
- }
- }
-
- //------------------------------------
- if (sCsteIP == "" || sCsteIP == "-") {
- messageBox("Cassette(블럭)장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
- return false;
- }
- //----------------------------------------
- if (sCstePort == "" || sCstePort == "-") {
- messageBox("Cassette(블럭)장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
- return false;
- }
-
- //---------------------------------
- socket.connect(sCsteIP, sCstePort);
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2007.05.24 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc :검색방법 선택 처리 Function
- */
- function fExeRefMthdChange() {
-
- switch (model.getValue("/root/init/seameth")) {
- case "0" : model.toggle("caseptno");
- cbo_ptnocd.visible = true;
- break;
- case "1" : model.toggle("casepid");
- cbo_ptnocd.visible = false;
- break;
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2008.01.03 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : Cassette 변경 처리 Function
- */
- function fExeCsteChange() {
-
- var iNo = grd_ptnolist.row;
- var sCsteCnts = "";
- var sResnCnts = "";
- var sCsteChar = "";
- var sCsteCharNo = "";
-
- var sNode = "/root/main/acptptno/acptptnolist";
- var sCharList = "/root/init/cstechar/cstecharlist";
- var sNoList = "/root/init/cstecharno/cstecharnolist";
-
- var re = /([!-~]*)*/g;
- var matchMatrix = "";
- var bState = false;
- //-------------------------
- switch (grd_ptnolist.col) {
- case grd_ptnolist.colRef("cstecharinpt") :
- case grd_ptnolist.colRef("cstecharchoi") :
- sCsteChar = model.getValue(sCharList+"[no='"+model.getValue(sNode+"["+iNo+"]/cstecharchoi")+"']/cnts");
- sCsteCharNo = model.getValue(sNoList+"[no='"+model.getValue(sNode+"["+iNo+"]/cstecharno")+"']/cnts");
-
- //----------------------------------
- matchMatrix = sCsteCharNo.match(re);
- //-------------
- bState = false;
- for(j = 0; j < (matchMatrix.length-1); j++) {
- tmpStr = matchMatrix[j] + "";
- tmpLen = tmpStr.length;
- //---------------------------
- if (tmpStr.getTrim() == "") {
- bState = true;
- break;
- }
- }
-
- //----------------------------------------------------------
- if (model.getValue(sNode+"["+iNo+"]/cstecharchoi") == "Z") {
- if (model.getValue(sNode+"["+iNo+"]/cstecharno") == "-") {
- model.setValue(sNode+"["+iNo+"]/cstekindcd", "-"); // 수정 2008.08.26
- return false;
- } else {
- sCsteCnts = sCsteCharNo;
- }
- } else {
- if (bState) {
- sCsteCnts = sCsteCharNo;
- } else {
- sCsteCnts = sCsteChar + "." + sCsteCharNo;
- }
- }
-
- //--------------------------------------------------------------------------------------
- for (var iRowNo=1; iRowNo < getNodesetCount("/root/init/resncd/resncdlist"); iRowNo++) {
-
- sResnCnts = model.getValue("/root/init/resncd/resncdlist["+iRowNo+"]/resncnts");
- sResnCnts = sResnCnts.getTrim().replace("\n", "");
-
- if (sCsteCnts == sResnCnts) {
- model.setValue(sNode+"["+iNo+"]/cstekindcd", model.getValue("/root/init/resncd/resncdlist["+iRowNo+"]/resncd"));
- break;
- }
- //-------- 수정 2008.08.26 ---------------
- //root/init/resncd/resncdlist에 일치하는 경우가 없는 경우 sNode+"["+iNo+"]/cstekindcd 초기값 set
- if((iRowNo+1) == getNodesetCount("/root/init/resncd/resncdlist")) {
- model.setValue(sNode+"["+iNo+"]/cstekindcd", "-");
- }
- //-----------------------------------------
- }
-
- break;
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2008.01.11 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 등록번호 입력 처리 Function
- */
- function fExeRefValKeyPress() {
-
- //-----------------------
- if(event.keyCode == 13) {
- model.makeValue("/root/init/refval", ipt_seaval.currentText);
- ipt_seaval.refresh();
-
- //----------------
- fGetAcptSpcList();
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2008.10.22 (CMCDEV-0001)
- * @by : 하만석(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : Hopper 변경 일괄 처리 Function
- */
- function fExeHopperKind() {
-
- var sNode = "/root/main/acptptno/acptptnolist"; // datagrid 설정
-
- //-----------------------------------------------------
- for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
-
- if (model.getValue(sNode+"["+iNo+"]/choi") == "true") { // grid 에서 선택된 항목만 hopper 값 변경
- model.setValue(sNode+"["+iNo+"]/hoppno", model.getValue("/root/init/choichopperval"));
- }
- }
-
- //---------------------
- grd_ptnolist.refresh();
-
- }
-
- function fExeCsteCharChoi() {
-
- var sNode = "/root/main/acptptno/acptptnolist";
-
- //-----------------------------------------------------
- for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
-
- if (model.getValue(sNode+"["+iNo+"]/choi") == "true") {
- model.setValue(sNode+"["+iNo+"]/cstecharchoi", model.getValue("/root/init/choicstechar"));
- }
- }
-
- //---------------------
- grd_ptnolist.refresh();
- }
-
- function fExeCsteCharKind() {
-
- var sNode = "/root/main/acptptno/acptptnolist";
-
- //-----------------------------------------------------
- for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
-
- if (model.getValue(sNode+"["+iNo+"]/choi") == "true") {
- model.setValue(sNode+"["+iNo+"]/cstekindcd", model.getValue("/root/init/choicstekindcd"));
- }
- }
-
- //---------------------
- grd_ptnolist.refresh();
- }
-
- function fExeToPtNoKeyPress() {
-
- //-----------------------
- if(event.keyCode == 13) {
- model.makeValue("/root/init/toptno", ipt_toptno.currentText);
- ipt_toptno.refresh();
-
- //----------------
- fGetAcptSpcList();
- }
- }
-
- /* @group : Cassette일괄출력
- * @ver : 2008.09.05 (CMCDEV-0001)
- * @by : 유동철(ACK)
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 블럭 및 슬라이드 건수 조회 처리 Function
- */
- function fGetCsteStats() {
-
- var sNode = "/root/main/cstestats/cstestatslist";
-
- //-----------------------
- grp_stats.visible = true;
-
- //--------------------------------
- model.removeNodeset("/root/send");
- model.removeNodeset(sNode);
-
- //-------------------
- model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
- model.makeValue("/root/send/fromdd", model.getValue("/root/init/acptfromdd"));
- model.makeValue("/root/send/todd", model.getValue("/root/init/acpttodd"));
- submit("TRLPB00202");
- }
-
-
- function fExeHeaderChoi(pBizFlagCd) {
-
- var sNode = "/root/main/acptptno/acptptnolist";
- //--------------
- // 전체선택 처리
- if (grd_ptnolist.row == 0 && grd_ptnolist.col == 0) {
- //-----------------------------------------------------
- for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
-
- if (pBizFlagCd == "S") {
- model.setValue(sNode+"["+iNo+"]/choi", "true");
- } else {
- model.setValue(sNode+"["+iNo+"]/choi", "false");
- }
- }
- }
-
- //---------------------
- grd_ptnolist.refresh();
- }
-
- function fPrtnSlide() {
-
- //카세트 출력이 완료 되었는지 확인 후 슬라이드 출력.
- if(sEqFinish == "Y") {
- sCasteSlideflag = "S";
- fExeSocketSend();
- sEqFinish = "N";
- window.clearinterval(interval_id);
- }
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body guideline="1,1195;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
- <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
- <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:150px; height:14px; ">Cassette일괄발행</caption>
- </group>
- <group id="grp_biz" scroll="auto" style="left:0px; top:40; width:1195px; height:744px; ">
- <group id="grp_sea" style="left:0px; top:10px; width:1194px; height:35px; vertical-align:top; ">
- <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
- <caption id="caption2" class="search_name" style="left:797; top:9px; width:86px; height:17px; ">접수일자 :</caption>
- <caption id="caption5" class="search_no_b" style="left:983; top:10px; width:12px; height:17px; ">~</caption>
- <line id="line13" class="line_4" style="x1:1107px; y1:7px; x2:1107px; y2:29px; "/>
- <input id="ipt_acptddfrom" ref="/root/init/acptfromdd" class="input_s_essential" navindex="7" inputtype="date" format="yyyy-mm-dd" mask="exclude" showmask="true" style="left:886; top:8px; width:94px; height:19px; ">
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- lpzfExeDateChange(ipt_fromyear, "/root/init/acptfromdd", "/root/init/fromyear");
- ]]>
- </script>
- </input>
- <input id="ipt_acptddto" ref="/root/init/acpttodd" class="input_s_essential" navindex="8" inputtype="date" format="yyyy-mm-dd" mask="exclude" showmask="true" style="left:998; top:8px; width:94px; height:19px; ">
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- lpzfExeDateChange(ipt_toyear, "/root/init/acpttodd", "/root/init/toyear");
- ]]>
- </script>
- </input>
- <caption id="caption1" class="search_name" style="left:535px; top:9px; width:86px; height:17px; ">등록번호 :</caption>
- <button id="btn_sea" accesskey="f4" class="btn1_letter2" navindex="9" style="left:1123px; top:7px; width:56px; height:22px; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fGetAcptSpcList();
- ]]>
- </script>
- </button>
- <select1 id="cbo_ptnocd" ref="/root/init/ptnocode" navindex="1" appearance="minimal" editmode="search" style="left:109px; top:8px; width:151px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/ptnocd/ptnocdlist">
- <label ref="ptnonm"/>
- <value ref="ptnocd"/>
- </itemset>
- </choices>
- </select1>
- <input id="ipt_fromptno" ref="/root/init/fromptno" class="text_center" navindex="3" maxlength="6" style="left:293px; top:8px; width:50px; height:19px; "/>
- <caption id="caption9" class="search_name" style="left:15px; top:9px; width:90px; height:17px; ">병리번호 :</caption>
- <caption id="caption10" class="search_no_b" style="left:346px; top:8px; width:12px; height:17px; ">~</caption>
- <input id="ipt_fromyear" ref="/root/init/fromyear" class="text_center" navindex="2" maxlength="2" style="left:263px; top:8px; width:27px; height:19px; "/>
- <input id="ipt_seaval" ref="/root/init/seaval" class="input_search" navindex="6" style="left:624px; top:8px; width:93px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- fExeRefValKeyPress();
- ]]>
- </script>
- </input>
- <input id="ipt_toyear" ref="/root/init/toyear" class="text_center" navindex="4" maxlength="2" style="left:361px; top:8px; width:27px; height:19px; "/>
- <input id="ipt_toptno" ref="/root/init/toptno" class="text_center" navindex="5" maxlength="6" style="left:391px; top:8px; width:50px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- fExeToPtNoKeyPress();
- ]]>
- </script>
- </input>
- </group>
- <line id="line1" class="line_1" style="x1:0px; y1:69px; x2:715px; y2:69px; "/>
- <caption id="caption3" class="tit_2" style="left:5px; top:54px; width:139px; height:14px; ">병리번호 목록</caption>
- <datagrid id="grd_ptnolist" nodeset="/root/main/acptptno/acptptnolist" class="datagrid2" caption="선
택^기관코드^ptno^병리번호^검체접수일자^검체접수번호^검체
번호^검 체 명^최종
번호^기존
블록수^최종내용^발행할
블록수^삭제
블록수^Cassette
문자(입력)^Cassette
문자^Cassette
문자1^Cassette
종류^Cassette
종류^Hopper^육 안
검사의사^검사명^spccd^spchistno^acptdd^acptno" colsep="^" colwidth="40, 0, 0, 80, 0, 0, 40, 0, 0, 0, 100, 50, 0, 0, 70, 70, 0, 70, 60, 0, 181, 0, 0, 0, 0" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheight="32" rowsep="|" selectionmode="free" navindex="10" style="left:0px; top:74px; width:715px; height:653; ">
- <col ref="choi" type="checkbox"/>
- <col ref="instcd"/>
- <col ref="ptno"/>
- <col class="text_center" ref="dispptno"/>
- <col ref="spcacptdd"/>
- <col ref="spcacptno"/>
- <col class="text_center" ref="spcacptseqno"/>
- <col ref="spcnm"/>
- <col class="text_center" ref="maxcsteno"/>
- <col class="text_center" ref="bfcstecnt"/>
- <col ref="maxcstecnts"/>
- <col class="text_center" ref="afcstecnt" type="input" maxlength="2"/>
- <col class="text_center" ref="delcstecnt" type="input" format="##" mask="exclude" maxlength="2" showmask="true"/>
- <col ref="cstecharinpt" type="input" maxlength="5"/>
- <col ref="cstecharuserinpt" type="input"/>
- <col ref="cstecharchoi" type="combo" visibility="hidden">
- <choices>
- <itemset nodeset="/root/init/cstechar/cstecharlist">
- <label ref="cnts"/>
- <value ref="no"/>
- </itemset>
- </choices>
- </col>
- <col ref="cstecharno" type="combo">
- <choices>
- <itemset nodeset="/root/init/cstecharno/cstecharnolist">
- <label ref="cnts"/>
- <value ref="no"/>
- </itemset>
- </choices>
- </col>
- <col ref="cstekindcd" type="combo">
- <choices>
- <itemset nodeset="/root/init/resncd/resncdlist">
- <label ref="resncnts"/>
- <value ref="resncd"/>
- </itemset>
- </choices>
- </col>
- <col ref="hoppno" type="combo">
- <choices>
- <item>
- <label>1</label>
- <value>1</value>
- </item>
- <item>
- <label>2</label>
- <value>2</value>
- </item>
- <item>
- <label>3</label>
- <value>3</value>
- </item>
- <item>
- <label>4</label>
- <value>4</value>
- </item>
- <item>
- <label>5</label>
- <value>5</value>
- </item>
- <item>
- <label>6</label>
- <value>6</value>
- </item>
- </choices>
- </col>
- <col class="text_center" ref="grosdrnm"/>
- <col ref="testnmlist"/>
- <col ref="spccd"/>
- <col ref="spchistno"/>
- <col ref="acptdd"/>
- <col ref="acptno"/>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fExeCsteChange();
- /*
- //포커스 이동. && (grd_ptnolist.isCell(event.target))
- if ( (grd_ptnolist.row >= grd_ptnolist.fixedRows) ) {
- //if(event.keyCode == 13) {
- if( grd_ptnolist.col == grd_ptnolist.colRef("cstekindcd")){
-
- grd_ptnolist.col = grd_ptnolist.colRef("hoppno");
- grd_ptnolist.editCell();
- }
- //}
- }
- */
- ]]>
- </script>
- <script type="javascript" ev:event="onaftersort">
- <![CDATA[
- grd_ptnolist.gridToInstance();
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-select">
- <![CDATA[
- fExeHeaderChoi("S");
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-deselect">
- <![CDATA[
- fExeHeaderChoi("D");
- ]]>
- </script>
- <script type="javascript" ev:event="onkeyup">
- <![CDATA[
- if ( (grd_ptnolist.row >= grd_ptnolist.fixedRows) && (grd_ptnolist.isCell(event.target))) {
- if(event.keyCode == 13) {
- if( grd_ptnolist.col == grd_ptnolist.colRef("afcstecnt")){
-
- grd_ptnolist.col = grd_ptnolist.colRef("cstecharuserinpt");
- grd_ptnolist.editCell();
-
- } else if(grd_ptnolist.col == grd_ptnolist.colRef("cstecharuserinpt")) {
-
- grd_ptnolist.col = grd_ptnolist.colRef("cstekindcd");
- grd_ptnolist.editCell();
- }
-
- }
- }
- ]]>
- </script>
- </datagrid>
- <caption id="caption7" class="tit_2" style="left:724px; top:54px; width:194px; height:14px; ">Cassette 발행 목록</caption>
- <line id="line2" class="line_1" style="x1:719px; y1:69px; x2:1194px; y2:69px; "/>
- <button id="btn_addcste" class="btn2_letter4" navindex="12" style="left:651px; top:49px; width:64px; height:19px; ">
- <caption>정보전달</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fExeInfoSend();
- ]]>
- </script>
- </button>
- <datagrid id="grd_isscstelist" nodeset="/root/main/isscste/isscstelist" class="datagrid2" caption="선
택^기관코드^병리번호^병리번호^검체접수일자^검체접수번호'^검체
번호^블럭
번호^블럭
종류^Cassette내용^조직
갯수^Hopper^maxcsteno^bizflagcd^scrno^acptdd^acptno^testcd^acptitemno^slidno^spccd^spchistno^statsinclflagcd^slideflag" colsep="^" colwidth="30, 0, 0, 100, 0, 0, 0, 0, 0, 242, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100" dataheight="23" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheight="32" rowsep="|" navindex="13" style="left:719px; top:74px; width:475px; height:653px; ">
- <col ref="choi" type="checkbox"/>
- <col ref="instcd"/>
- <col ref="ptno"/>
- <col class="text_center" ref="dispptno"/>
- <col ref="spcacptdd"/>
- <col ref="spcacptno"/>
- <col class="text_center" ref="spcacptseqno"/>
- <col class="text_center" ref="csteno"/>
- <col ref="cstekindcd" type="combo">
- <choices>
- <itemset nodeset="/root/init/resncd/resncdlist">
- <label ref="resncnts"/>
- <value ref="resncd"/>
- </itemset>
- </choices>
- </col>
- <col ref="cstecnts" type="input"/>
- <col class="text_center" ref="tisscnt" type="input"/>
- <col ref="hoppno" type="combo">
- <choices>
- <item>
- <label>1</label>
- <value>1</value>
- </item>
- <item>
- <label>2</label>
- <value>2</value>
- </item>
- <item>
- <label>3</label>
- <value>3</value>
- </item>
- <item>
- <label>4</label>
- <value>4</value>
- </item>
- <item>
- <label>5</label>
- <value>5</value>
- </item>
- <item>
- <label>6</label>
- <value>6</value>
- </item>
- </choices>
- </col>
- <col ref="maxcsteno"/>
- <col ref="bizflagcd"/>
- <col ref="scrno"/>
- <col ref="acptdd"/>
- <col ref="acptno"/>
- <col ref="testcd"/>
- <col ref="acptitemno"/>
- <col ref="slidno"/>
- <col ref="spccd"/>
- <col ref="spchistno"/>
- <col ref="statsinclflagcd"/>
- <col ref="slideflag" visibility="hidden"/>
- <script type="javascript" ev:event="onaftersort">
- <![CDATA[
- grd_isscstelist.gridToInstance();
- ]]>
- </script>
- <script type="javascript" ev:event="onkeyup">
- <![CDATA[
- //엔터 입력시 한줄아래 Cassette내용으로 포커스를 이동시켜준다.
- if ( (grd_isscstelist.row >= grd_isscstelist.fixedRows) && (grd_isscstelist.isCell(event.target)) && (grd_isscstelist.col == grd_isscstelist.colRef("cstecnts"))) {
- if(event.keyCode == 13) {
- if(grd_isscstelist.row < (Number(grd_isscstelist.rows) - 1)){
- grd_isscstelist.row = Number(grd_isscstelist.row) + 1;
- grd_isscstelist.editCell();
- }
- }
- }
- ]]>
- </script>
- </datagrid>
- <button id="btn_clear" class="btn2_letter3" navindex="14" style="left:1141px; top:49px; width:53px; height:19px; ">
- <caption>초기화</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fExeIssDelListInitialize();
- ]]>
- </script>
- </button>
- <object id="socket" clsid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visibility="hidden" style="left:600px; top:40px; width:35px; height:30px; ">
- <!-- 소켓 받은 메시지 이벤트 -->
- <script type="javascript" ev:event="OnReceive(nDataLength, szID)">
- <![CDATA[
- ]]>
- </script>
- <!-- 소켓 에러 이벤트 -->
- <script type="javascript" ev:event="OnError(lError, szMsg)">
- <![CDATA[
- alert("Error code = " + lError+"\nError Message : "+szMsg);
- socket.close(); // 소켓 닫기
- isConnected = false; // 접속 여부 false
- sEqFinish = "Y";
- ]]>
- </script>
- <!-- 소켓 연결 이벤트 -->
- <script type="javascript" ev:event="OnConnect(szID)">
- <![CDATA[
- isConnected = true; // 접속 여부 false
-
- if(sCasteSlideflag == "C") {
-
- //카세트 출력
-
- var sCsteNode = "/root/main/isscste/isscstelist";
-
- //------------------------------------------------------------------
- for (var iRowNo=1; iRowNo <= getNodesetCount(sCsteNode); iRowNo++) {
-
- if (model.getValue(sCsteNode+"["+iRowNo+"]/choi") == "true") {
- sSendMsg = "";
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/ptno") + "▦"; // 병리번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/dispptno") + "▦"; // 표시병리번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/spcacptseqno") + "▦"; // 검체일련번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/csteno") + "▦"; // 블럭번호
- sSendMsg += "000" + "▦"; // 슬라이드번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/cstecnts") + "▦"; // 블럭내용
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/hoppno") + "▦"; // Hopper번호
- sSendMsg += "C" + "▩";
-
- socket.sendString(sSendMsg); // 전송한다.
- }
- }
-
- //----------------------------------------------------
- model.removeNodeset(sCsteNode);
- grd_isscstelist.refresh();
-
- } else {
-
- var sCsteNode = "/root/main/slideinfo/slidelist";
- var iMaxRowCnt = getNodesetCount(sCsteNode);
-
- //------------------------------------------------------------------
- for (var iRowNo=1 ; iRowNo <= iMaxRowCnt ; iRowNo++) {
- sSendMsg = "";
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/ptno") + "▦"; // 병리번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/dispptno") + "▦"; // 표시병리번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/spcacptseqno") + "▦"; // 검체일련번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/csteno") + "▦"; // 블럭
- sSendMsg += "001" + "▦"; // 슬라이드번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/prtnblocnm") + "▦"; // 블럭내용
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/cstecnts") + "▦";
-
- //------------------
- // 전송종료여부 설정
- if (iRowNo == iMaxRowCnt) {
- sSendMsg += "Y" + "▦";
- } else {
- sSendMsg += "N" + "▦";
- }
-
- //--------------------------------------------------------------
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/pid") + "▦"; // 환자번호
- sSendMsg += model.getValue(sCsteNode+"["+iRowNo+"]/hngnm") + "▦"; // 환자명
- sSendMsg += "-" + "▩";
-
- socket.sendString(sSendMsg); // 전송한다.
- }
-
- //-----------------------------
- model.removeNodeset(sCsteNode);
-
- }
-
- //----------
- // 소켓 닫기
- socket.close();
- isConnected = false; // 접속 여부 false
- sEqFinish = "Y";
- ]]>
- </script>
- <!-- 소켓 close 이벤트 -->
- <script type="javascript" ev:event="OnClose(szID)">
- <![CDATA[
- isConnected = false; // 접속 여부 false
- sEqFinish = "Y";
- ]]>
- </script>
- </object>
- <select1 id="cmb_cstechar" ref="/root/init/choicstechar" navindex="11" visibility="hidden" appearance="minimal" style="left:310px; top:49px; width:70px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/cstechar/cstecharlist">
- <label ref="cnts"/>
- <value ref="no"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fExeCsteCharChoi();
- ]]>
- </script>
- </select1>
- <select1 id="cmb_hopkind" ref="/root/init/choichopperval" appearance="minimal" style="left:452px; top:49px; width:60px; height:19px; ">
- <choices>
- <item>
- <label>1</label>
- <value>1</value>
- </item>
- <item>
- <label>2</label>
- <value>2</value>
- </item>
- <item>
- <label>3</label>
- <value>3</value>
- </item>
- <item>
- <label>4</label>
- <value>4</value>
- </item>
- <item>
- <label>5</label>
- <value>5</value>
- </item>
- <item>
- <label>6</label>
- <value>6</value>
- </item>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fExeHopperKind();
- ]]>
- </script>
- </select1>
- <select1 id="cmb_cstekind" ref="/root/init/choicstekindcd" appearance="minimal" style="left:381px; top:49px; width:70px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/resncd/resncdlist">
- <label ref="resncnts"/>
- <value ref="resncd"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fExeCsteCharKind();
- ]]>
- </script>
- </select1>
- <group id="grp_stats" visibility="hidden" style="left:75; top:0; width:325px; height:296px; border-color:#ff00ff; border-width:2px; border-style:solid; ">
- <button id="btn_exit" class="btn4_letter2" style="left:262px; top:270px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
- <caption>닫기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- grp_stats.visible = false;
- ]]>
- </script>
- </button>
- <datagrid id="grd_stats" nodeset="/root/main/cstestats/cstestatslist" class="datagrid2" caption="기관코드^블럭종류^블럭수^슬라이드수" colsep="^" colwidth="0, 130, 80, 80" mergecellsfixedrows="bycolrec" rowsep="|" style="left:5px; top:5px; width:313px; height:262px; ">
- <col ref="instcd"/>
- <col ref="cstekind"/>
- <col class="text_right" ref="cstecnt" format="#,###" mask="exclude" showmask="true"/>
- <col class="text_right" ref="slidcnt" format="#,###" mask="exclude" showmask="true"/>
- </datagrid>
- </group>
- <caption id="caption4" class="cell_1" style="left:937px; top:49px; width:65px; height:19px; text-align:left; vertical-align:middle; padding-left:10px; ">출력장비</caption>
- <select1 id="cmb_slideqlist" ref="/root/init/eqseqno" appearance="minimal" style="left:1004px; top:49px; width:134px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/eqinfo/caeqlist">
- <label ref="eqnm"/>
- <value ref="eqseqno"/>
- </itemset>
- </choices>
- </select1>
- <datagrid id="datagrid1" nodeset="/root/main/slideinfo/slidelist" visibility="hidden" caption="instcd^ptno^spcacptdd^spcacptno^spcacptseqno^csteno^bloccnts^prntcsscnts^slidno^cstekindcd^cstecnts^workattr^prntcsscnts^cstecnts^ipttype^maxcsteno^bizflagcd^acptdd^acptno^testcd^acptitemno^scrno^spccd^spchistno^statsinclflagcd^relaptno^bloccnts^reladispptno^workflagcd^dispptno^prtnblocnm" colsep="^" colwidth="100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:200px; top:375px; width:890px; height:240px; ">
- <col ref="instcd"/>
- <col ref="ptno"/>
- <col ref="spcacptdd"/>
- <col ref="spcacptno"/>
- <col ref="spcacptseqno"/>
- <col ref="csteno"/>
- <col ref="bloccnts"/>
- <col ref="prntcsscnts"/>
- <col ref="slidno"/>
- <col ref="cstekindcd"/>
- <col ref="cstecnts"/>
- <col ref="workattr"/>
- <col ref="prntcsscnts"/>
- <col ref="cstecnts"/>
- <col ref="ipttype"/>
- <col ref="maxcsteno"/>
- <col ref="bizflagcd"/>
- <col ref="acptdd"/>
- <col ref="acptno"/>
- <col ref="testcd"/>
- <col ref="acptitemno"/>
- <col ref="scrno"/>
- <col ref="spccd"/>
- <col ref="spchistno"/>
- <col ref="statsinclflagcd"/>
- <col ref="relaptno"/>
- <col ref="bloccnts"/>
- <col ref="reladispptno"/>
- <col ref="workflagcd"/>
- <col ref="dispptno"/>
- <col ref="prtnblocnm"/>
- </datagrid>
- </group>
- <group id="grp_btn" style="left:0px; top:13; width:1195px; height:27px; ">
- <button id="btn_save" class="btn4_letter2" style="left:1138px; top:3; width:56px; height:22px; ">
- <caption>삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // 카세트 및 슬라이드 삭제여부 확인
- if ( messageBox("선택한 Cassette(블럭) 삭제를", "Q004") == 6 ) {
- fExeCsteIssDel("DELETE");
- }
- ]]>
- </script>
- </button>
- <line id="line17" class="line_6" style="x1:0px; y1:25; x2:1194px; y2:25; "/>
- <button id="btn_create" accesskey="f2" class="btn4_letter2" navindex="16" style="left:1079px; top:3; width:56px; height:22px; ">
- <caption>발행</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fExeCsteIssDel("C");
- ]]>
- </script>
- </button>
- <button id="btn_cstestats" class="btn4_letter4" navindex="15" style="left:0; top:3px; width:56px; height:22px; ">
- <caption>블럭통계</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fGetCsteStats();
- grp_stats.visible = true;
- ]]>
- </script>
- </button>
- <caption id="cap_slide" style="left:951px; top:6px; width:124px; height:15px; ">슬라이드동시발행여부</caption>
- <bool id="bol_slideflag" checkvalue="Y,N" ref="/root/init/slideflag" style="left:930px; top:4px; width:30px; height:20px; ">
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- if(model.getValue("/root/init/slideflag") == "Y") {
- cap_slid.visible = true;
- cmb_slid.visible = true;
- } else {
- cap_slid.visible = false;
- cmb_slid.visible = false;
- }
-
- cap_slid.refresh();
- cmb_slid.refresh();
- ]]>
- </script>
- </bool>
- <caption id="cap_slid" class="cell_1" visibility="hidden" style="left:723px; top:4px; width:65px; height:19px; text-align:left; vertical-align:middle; padding-left:10px; ">출력장비</caption>
- <select1 id="cmb_slid" ref="/root/init/slideeqseqno" visibility="hidden" appearance="minimal" style="left:790px; top:4px; width:134px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/eqinfo/slideqlist">
- <label ref="eqnm"/>
- <value ref="eqseqno"/>
- </itemset>
- </choices>
- </select1>
- </group>
- </xhtml:body>
- </xhtml:html>
|