123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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>
- <bizabbr/>
- <selectcond/>
- <list>
- <batlog>
- <prgmnm/>
- <prcsstat/>
- <fromdt/>
- <enddt/>
- <execrid/>
- <execnode/>
- <prcscnt/>
- <sucscnt/>
- <failcnt/>
- <modulenm/>
- <prgmid/>
- <paramcnts/>
- <prgmexecno/>
- </batlog>
- </list>
- <loginfo>
- <prgmnm/>
- <modulenm/>
- <prgmid/>
- <fromdt/>
- <enddt/>
- <prcsstat/>
- <prcscnt/>
- <sucscnt/>
- <failcnt/>
- <paramcnts/>
- <prgmexecno/>
- <curresultfile/>
- <logmsg/>
- <resultfile>
- <filepath/>
- </resultfile>
- <lines/>
- <pages>
- <label/>
- <value/>
- </pages>
- <currentpage/>
- </loginfo>
- </main>
- <send>
- <execrid/>
- <prgmnm/>
- <fromdt/>
- <offset/>
- <pagesize/>
- <prgmexecno/>
- <modulenm/>
- <prgmid/>
- <prgmuid/>
- </send>
- <batchsend>
- <prgmuid/>
- </batchsend>
- <init>
- <prgmlist>
- <prgmitem>
- <label>전체</label>
- <value></value>
- </prgmitem>
- <prgmitem>
- <label>테스트1</label>
- <value>test1</value>
- </prgmitem>
- <prgmitem>
- <label>테스트2</label>
- <value>test2</value>
- </prgmitem>
- <prgmitem>
- <label>재원환자 조회</label>
- <value>inpatlist</value>
- </prgmitem>
- </prgmlist>
- <statuslist>
- <status>
- <label>실행중</label>
- <value>S</value>
- </status>
- <status>
- <label>정상종료</label>
- <value>E</value>
- </status>
- <status>
- <label>에러발생</label>
- <value>F</value>
- </status>
- </statuslist>
- </init>
- <hidden>
- <list>
- <batprgm>
- <rowno/>
- <bizabbr/>
- <modulenm/>
- <prgmid/>
- <prgmnm/>
- <useyn/>
- <fstrgstrid/>
- <fstrgstdt/>
- <lastupdtrid/>
- <lastupdtdt/>
- <status/>
- </batprgm>
- </list>
- </hidden>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- fInitialize();
- model.refresh();
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-model-construct-done">
- <![CDATA[
- // submit("TRZSB00201");
- // model.refresh();
- ]]>
- </script>
- <submission id="TXSTC00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/batchsend"/>
- <submission id="TRZSB00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp" resultref="/root/init/prgmlist"/>
- <submission id="TRZSB00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
- <submission id="TRZSB00203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/loginfo"/>
- <submission id="TRZSB00204" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/loginfo/logmsg"/>
- <submission id="TRSTC00500" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
- <bind id="prcsstat" ref="/root/main/list/batlog/prcsstat" readonly="true()"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript">
- <![CDATA[
- // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
- function fInitialize() {
- model.removeNodeset("/root/main/list");
- model.resetInstanceNode("/root/main/loginfo");
- model.removeNodeset("/root/main/logdetail");
- model.resetInstanceNode("/root/send");
-
- model.makeValue("/root/send/pagesize","100");
-
- model.setValue("/root/send/execrid",getUserId());
- model.setValue("/root/send/fromdt",getCurrentDate());
- btn_reload.disabled = true;
- }
- // 배치 로그 상세 정보를 조회하여 화면 하단 항목으로 보여준다.
- function fGetLogInfo() {
- if (submit("TRZSB00203")) {
- model.makeValue("/root/main/loginfo/curresultfile",model.getValue("/root/main/loginfo/resultfile/filepath"));
- var lines = model.getValue("/root/main/loginfo/lines");
- var pagesize = model.getValue("/root/send/pagesize");
- // page combo 설정
- var pages = Math.floor((lines/pagesize)+1);
- if (lines%pagesize == 0) {
- pages = pages -1;
- }
- for(var i=0;i<pages;i++) {
- model.makeNode("/root/main/loginfo/pages["+(i+1)+"]");
- model.makeValue("/root/main/loginfo/pages["+(i+1)+"]/label",(i+1)+"/"+pages);
- model.makeValue("/root/main/loginfo/pages["+(i+1)+"]/value",i+1);
- }
- model.makeValue("/root/main/loginfo/currentpage",1);
- model.makeValue("/root/send/offset",0);
- }
- }
- // 배치 로그 메시지의 페이지 단위 조회를 수행한다.
- function fGetLogMessage() {
- var pagesize = model.getValue("/root/send/pagesize");
- var curpage = model.getValue("/root/main/loginfo/currentpage");
- model.makeValue("/root/send/offset",(curpage-1)*pagesize);
-
- submit("TRZSB00204");
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body guideline="1,1242;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
- <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
- <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">통합 배치작업</caption>
- </group>
- <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
- <line id="line32" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
- <button id="btn_init" class="btn4_letter3" style="left:1126px; top:3px; width:68px; height:22px; ">
- <caption>초기화</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fInitialize();
- model.refresh();
- ]]>
- </script>
- </button>
- </group>
- <group id="group5" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
- <line id="line15" class="line_2" style="x1:0px; y1:715px; x2:615px; y2:716px; "/>
- <line id="line16" class="line_2" style="x1:0px; y1:625px; x2:615px; y2:625px; "/>
- <line id="line17" class="line_2" style="x1:0px; y1:601px; x2:615px; y2:600px; "/>
- <group id="group6" style="left:0px; top:10px; width:1194px; height:35px; vertical-align:top; ">
- <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:35px; "/>
- <caption id="caption21" class="search_name" style="left:16px; top:8px; width:125px; height:17px; ">실행자 ID :</caption>
- <line id="line18" class="line_4" style="x1:1041px; y1:7px; x2:1041px; y2:29px; border-left-style:solid; "/>
- <caption id="caption59" class="search_name" style="left:255px; top:8px; width:100px; height:17px; ">프로그램명 :</caption>
- <button id="btn_select" class="btn1_letter2" style="left:1127px; top:7px; width:56px; height:22px; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var prgmuid = model.getValue("/root/send/prgmuid");
- if (prgmuid == "") {
- model.makeValue("/root/send/modulenm","");
- model.makeValue("/root/send/prgmid","");
- } else {
- var uidsplit = prgmuid.split(".");
- model.makeValue("/root/send/modulenm",uidsplit[0]);
- model.makeValue("/root/send/prgmid",uidsplit[1]);
- }
- submit("TRSTC00500");
- // submit("TRZSB00202");
- ]]>
- </script>
- </button>
- <input id="ipt_execrid" ref="/root/send/execrid" class="input_search" style="left:110px; top:8px; width:115px; height:19px; "/>
- <caption id="caption10" class="search_name" style="left:680px; top:8px; width:100px; height:17px; ">시작일자 :</caption>
- <input id="input1" ref="/root/send/fromdt" class="input_search" inputtype="date" style="left:770px; top:8px; width:140px; height:19px; "/>
- <select1 id="cmb_batprgm" ref="/root/send/prgmuid" class="combo_search" appearance="minimal" style="left:360px; top:8px; width:300px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/prgmlist/prgmitem">
- <label ref="label"/>
- <value ref="value"/>
- </itemset>
- </choices>
- </select1>
- <button id="button1" class="btn1_letter2" style="left:1060px; top:7px; width:56px; height:22px; ">
- <caption>실행</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.setValue("/root/batchsend/prgmuid",model.getValue("/root/send/prgmuid"));
- var rtn = messageBox("배치작업을 ", "Q004");
- if ( rtn == 6 )
- submit("TXSTC00100");
- ]]>
- </script>
- </button>
- </group>
- <caption id="caption22" class="tit_2" style="left:5px; top:559px; width:136px; height:13px; ">배치 로그 상세 정보</caption>
- <line id="line19" class="line_1" style="x1:0px; y1:574px; x2:1194px; y2:574px; "/>
- <caption id="caption34" class="cell_1" style="left:0px; top:603px; width:80px; height:23px; vertical-align:middle; ">모듈명</caption>
- <caption id="caption42" class="cell_1" style="left:0px; top:579px; width:80px; height:23px; vertical-align:middle; ">프로그램 명</caption>
- <caption id="caption47" class="cell_1" style="left:0px; top:677px; width:80px; height:38px; vertical-align:middle; ">매개변수</caption>
- <caption id="caption48" class="tit_2" style="left:5px; top:55px; width:131px; height:14px; ">배치 로그 목록</caption>
- <line id="line20" class="line_1" style="x1:0px; y1:70px; x2:1194px; y2:70px; "/>
- <line id="line23" class="line_2" style="x1:856px; y1:221px; x2:1194px; y2:221px; "/>
- <line id="line24" class="line_3" style="x1:0px; y1:740px; x2:1194px; y2:740px; "/>
- <caption id="caption35" class="cell_1" style="left:288px; top:603px; width:100px; height:23px; vertical-align:middle; ">프로그램 ID</caption>
- <datagrid id="grd_batlog" nodeset="/root/main/list/batlog" visibility="visible" caption="프로그램명^실행상태^시작시간^종료시간^실행자^노드명^처리건수^정상건수^오류건수^모듈명^프로그램ID^파라메터^배치실행번호" colsep="^" colwidth="239, 60, 127, 126, 76, 80, 80, 80, 80, 100, 100, 100, 100" dataheight="23" datatype="xml" defaultrows="0" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:75px; width:1194px; height:475px; ">
- <col ref="prgmnm"/>
- <col ref="prcsstat" type="combo">
- <choices>
- <itemset nodeset="/root/init/statuslist/status">
- <label ref="label"/>
- <value ref="value"/>
- </itemset>
- </choices>
- </col>
- <col ref="fromdt" format="yyyy-mm-dd hh:nn:ss"/>
- <col ref="enddt" format="yyyy-mm-dd hh:nn:ss" style="left:446px; top:23px; width:126px; height:23px; "/>
- <col ref="execrid" style="text-align:right; "/>
- <col ref="execnode" style="text-align:right; "/>
- <col ref="prcscnt" style="text-align:right; "/>
- <col ref="sucscnt" style="text-align:right; "/>
- <col ref="failcnt" style="text-align:right; "/>
- <col ref="modulenm"/>
- <col ref="prgmid"/>
- <col ref="paramcnts" visibility="hidden"/>
- <col ref="prgmexecno" visibility="hidden"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- var curRow = grd_batlog.row;
- if ( curRow > 0 ) {
- // 상제 정보 조회
- model.makeValue("/root/send/prgmexecno",model.getValue("/root/main/list/batlog["+curRow+"]/prgmexecno"));
-
- fGetLogInfo();
-
- btn_reload.disabled = false;
- model.refresh();
- }
- ]]>
- </script>
- </datagrid>
- <textarea id="tar_exeparamcnts" ref="/root/main/loginfo/paramcnts" style="left:83px; top:678px; width:529px; height:36px; "/>
- <caption id="caption1" class="cell_1" style="left:0px; top:627px; width:80px; height:23px; vertical-align:middle; ">시작시간</caption>
- <caption id="caption2" class="cell_1" style="left:205px; top:627px; width:80px; height:23px; vertical-align:middle; ">종료시간</caption>
- <caption id="caption3" class="cell_1" style="left:0px; top:652px; width:80px; height:23px; vertical-align:middle; ">총 처리건수</caption>
- <caption id="caption4" class="cell_1" style="left:205px; top:652px; width:80px; height:23px; vertical-align:middle; ">정상건수</caption>
- <caption id="caption5" class="cell_1" style="left:410px; top:652px; width:80px; height:23px; vertical-align:middle; ">오류건수</caption>
- <caption id="caption7" class="cell_1" style="left:410px; top:627px; width:80px; height:23px; vertical-align:middle; ">완료여부</caption>
- <caption id="caption8" class="cell_1" style="left:616px; top:579px; width:74px; height:161px; vertical-align:middle; ">로그 메시지</caption>
- <textarea id="textarea1" ref="/root/main/loginfo/logmsg" scroll="vertical" style="left:692px; top:580px; width:501px; height:136px; word-wrap:letter; "/>
- <caption id="caption9" class="cell_1" style="left:0px; top:717px; width:80px; height:23px; vertical-align:middle; ">결과 파일</caption>
- <line id="line1" class="line_2" style="x1:0px; y1:650px; x2:615px; y2:650px; "/>
- <line id="line2" class="line_2" style="x1:0px; y1:675px; x2:615px; y2:675px; "/>
- <button id="btn_download" class="btn2_letter4" style="left:549px; top:719px; width:64px; height:19px; ">
- <caption>내려받기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var filepath = model.getValue("/root/main/loginfo/curresultfile");
- if (filepath != "") {
- var filenm = filepath.split(/\/|\\/); // / 또는 \ 로 split 하여 마지막 항목을 default 파일 명으로 사용한다.
- var len = filenm.length;
- filenm = filenm[len-1];
- var localfile = window.fileDialog("save","|",false,filenm,"","All Files(*.*)|*.*");
- if (localfile != "") {
- model.download(getActionURL("TRZSB00205")+"&filepath="+filepath,localfile);
- var rtn = messageBox("파일을", "Q004");
- if( rtn == 6 ) {
- window.exec(localfile);
- }
- }
- }
- ]]>
- </script>
- </button>
- <output id="opt_prgmnm" ref="/root/main/loginfo/prgmnm" class="output_fix" appearance="input" style="left:82px; top:580px; width:530px; height:19px; "/>
- <output id="opt_modulenm" ref="/root/main/loginfo/modulenm" class="output_fix" appearance="input" style="left:82px; top:604px; width:203px; height:19px; "/>
- <output id="opt_prgmid" ref="/root/main/loginfo/prgmid" class="output_fix" appearance="input" style="left:390px; top:604px; width:222px; height:19px; "/>
- <output id="opt_fromdt" ref="/root/main/loginfo/fromdt" class="output_fix" format="yyyy-mm-dd hh:nn:ss" appearance="input" style="left:82px; top:629px; width:120px; height:19px; "/>
- <output id="opt_enddt" ref="/root/main/loginfo/enddt" class="output_fix" format="yyyy-mm-dd hh:nn:ss" appearance="input" style="left:287px; top:629px; width:120px; height:19px; "/>
- <output id="opt_prcscnt" ref="/root/main/loginfo/prcscnt" class="output_fix" appearance="input" style="left:82px; top:654px; width:120px; height:19px; "/>
- <output id="opt_sucscnt" ref="/root/main/loginfo/sucscnt" class="output_fix" appearance="input" style="left:287px; top:654px; width:120px; height:19px; "/>
- <output id="opt_failcnt" ref="/root/main/loginfo/failcnt" class="output_fix" appearance="input" style="left:492px; top:654px; width:120px; height:19px; "/>
- <select1 id="cmb_resultfile" ref="/root/main/loginfo/curresultfile" class="combo_search" appearance="minimal" style="left:83px; top:719px; width:462px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/loginfo/resultfile">
- <label ref="filepath"/>
- <value ref="filepath"/>
- </itemset>
- </choices>
- </select1>
- <button id="btn_reload" class="btn2_letter4" style="left:1126px; top:554px; width:64px; height:19px; ">
- <caption>새로고침</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fGetLogInfo();
- model.refresh();
- ]]>
- </script>
- </button>
- <caption id="caption11" style="left:695px; top:720px; width:65px; height:20px; ">총 라인수 :</caption>
- <caption id="cap_lines" ref="/root/main/loginfo/lines" style="left:760px; top:719px; width:100px; height:20px; "/>
- <select1 id="cmb_page" ref="/root/main/loginfo/currentpage" appearance="minimal" style="left:1060px; top:719px; width:100px; height:19px; ">
- <choices>
- <itemset nodeset="/root/main/loginfo/pages">
- <label ref="label"/>
- <value ref="value"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- fGetLogMessage();
- ]]>
- </script>
- </select1>
- <button id="btn_next" class="icon_right" style="left:1164px; top:719px; width:26px; height:19px; ">
- <caption/>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var pages = cmb_page.length;
- //alert(pages);
- //alert(cmb_page.value);
- if (cmb_page.value< pages) {
- model.makeValue("/root/main/loginfo/currentpage",1+parseInt(cmb_page.value));
- fGetLogMessage();
- cmb_page.refresh();
- }
- ]]>
- </script>
- </button>
- <button id="btn_prev" class="icon_left" style="left:1030px; top:719px; width:26px; height:19px; ">
- <caption/>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var pages = cmb_page.length;
- //alert(pages);
- //alert(cmb_page.value);
- if (cmb_page.value > 1) {
- model.makeValue("/root/main/loginfo/currentpage",parseInt(cmb_page.value)-1);
- fGetLogMessage();
- cmb_page.refresh();
- }
- ]]>
- </script>
- </button>
- <select1 id="cmb_prcsstat" ref="/root/main/loginfo/prcsstat" disabled="true" appearance="minimal" style="left:492px; top:629px; width:120px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/statuslist/status">
- <label ref="label"/>
- <value ref="value"/>
- </itemset>
- </choices>
- </select1>
- </group>
- </xhtml:body>
- </xhtml:html>
|