123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SMRPD31700" position="absolute 0 0 1200 790" titletext="전문의 평가 - 평가결과조회" oninit="SMRPD31700_oninit" onload="SMRPD31700_onload">
- <Layouts>
- <Layout>
- <Div position="absolute 0 0 1195 23" id="group1">
- <Layouts>
- <Layout>
- <Static text="전문의 평가 - 평가결과조회" position="absolute 0 0 198 24" id="caption6" class="tit_1" anchor="default"/>
- <Static id="caption4" class="patient_text_black" anchor="default" position="absolute 0 0 0 0"/>
- </Layout>
- </Layouts>
- </Div>
- <Div position="absolute 0 40 1195 784" id="group3" scrollbars="autoboth">
- <Layouts>
- <Layout>
- <Div position="absolute 0 10 1194 45" align="align:center top;" id="grp_sea" class="div_SA">
- <Layouts>
- <Layout>
- <Shape position="absolute 676 6 682 28" linetype="vertical" id="line5" class="line_4"/>
- <Button position="absolute 695 7 751 29" align="align:left middle;" id="btn_search" class="btn1" taborder="2" text="조회" onclick="group3_grp_sea_btn_search_onclick"/>
- <Combo position="absolute 120 8 262 27" id="cmb_instcd" class="combo_s_default" enable="false" onitemchanged="group3_grp_sea_cmb_instcd_onitemchanged"/>
- <Static text="기관코드" position="absolute 49 9 125 26" id="caption1" class="search_name"/>
- <Static text="연도" position="absolute 290 9 345 26" id="caption7" class="search_name"/>
- <MaskEdit position="absolute 335 8 385 27" align="align:center middle;" id="ipt_year" taborder="1" mask="####" autoselect="true" style="align:center middle;" autoskip="true"/>
- <Edit position="absolute 530 8 649 27" id="ipt_emplnm" class="input_default" autoselect="true" onkeyup="group3_grp_sea_ipt_emplnm_onkeyup"/>
- <Button position="absolute 512 9 528 25" id="btn_emplno" class="icon_search" text="" onclick="group3_grp_sea_btn_emplno_onclick"/>
- <Edit position="absolute 468 8 510 27" id="ipt_emplno" class="input_default" autoselect="true" onkeyup="group3_grp_sea_ipt_emplno_onkeyup"/>
- <Static text="대상자" position="absolute 410 9 473 26" id="caption10" class="search_name"/>
- <Static position="absolute 790 8 1180 28" id="cp_evalperiod" style="color:#993300ff;font:Dotum,9,bold;"/>
- </Layout>
- </Layouts>
- </Div>
- <Shape position="absolute 0 75 585 81" linetype="horizontal" id="line3" class="line_10"/>
- <Shape position="absolute 592 75 1193 81" linetype="horizontal" id="line1" class="line_10"/>
- <Static text="평가 대상자" position="absolute 0 59 131 75" id="caption21" class="tit_2"/>
- <Static text="평가표" position="absolute 593 59 799 75" id="caption20" class="tit_2"/>
- <Grid position="absolute 0 80 585 735" id="grd_psnlist" binddataset="ds_main_psnlist" oncellclick="group3_grd_psnlist_oncellclick">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="19" band="left"/>
- <Column size="43"/>
- <Column size="56"/>
- <Column size="53"/>
- <Column size="130"/>
- <Column size="114"/>
- <Column size="57"/>
- <Column size="44"/>
- <Column size="53"/>
- <Column size="0"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="사번"/>
- <Cell col="2" text="생년월일"/>
- <Cell col="3" text="성명"/>
- <Cell col="4" text="부서명"/>
- <Cell col="5" text="직종"/>
- <Cell col="6" text="평가년도"/>
- <Cell col="7" text="총평점"/>
- <Cell col="8" text="평가자"/>
- <Cell col="9" text="instcd"/>
- </Band>
- <Band id="body">
- <Cell celltype="head"/>
- <Cell col="1" text="bind:emplno"/>
- <Cell col="2" text="bind:rregno"/>
- <Cell col="3" style="align:left;" text="bind:emplnm"/>
- <Cell col="4" style="align:left top;padding:5 2 1 2;" text="bind:deptnm" wordwrap="word"/>
- <Cell col="5" style="align:left top;padding:5 2 1 2;" text="bind:jobkindnm" wordwrap="word"/>
- <Cell col="6" text="bind:year"/>
- <Cell col="7" displaytype="number" text="bind:totscore" mask="#,###"/>
- <Cell col="8" text="bind:evalemplnm"/>
- <Cell col="9" text="bind:instcd"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Static text="총 평" position="absolute 590 679 725 735" align="align:center middle;" id="caption27" class="cell_1"/>
- <TextArea position="absolute 725 679 1193 735" id="txt_cmt" wordwrap="word"/>
- <Grid position="absolute 590 111 1193 655" id="grd_scorelist" enable="false" binddataset="ds_main_psninfo_scorelist" autosizingtype="row" extendsizetype="row" cellsizingtype="both">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="133"/>
- <Column size="240"/>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24" band="head"/>
- <Row size="24" band="head"/>
- <Row size="22"/>
- </Rows>
- <Band id="head">
- <Cell rowspan="3" text="평가항목" taborder="undefined"/>
- <Cell col="1" rowspan="3" text="세부항목" taborder="undefined"/>
- <Cell col="2" colspan="6" text="평정등급 및 점수" taborder="undefined"/>
- <Cell col="8" text="instcd"/>
- <Cell col="9" text="year"/>
- <Cell col="10" text="emplno"/>
- <Cell col="11" text="dtlitemcd"/>
- <Cell row="1" col="2" rowspan="2" text="수 (5.0)" taborder="undefined"/>
- <Cell row="1" col="3" rowspan="2" text="우 (4.0)" taborder="undefined"/>
- <Cell row="1" col="4" rowspan="2" text="미 (3.0)" taborder="undefined"/>
- <Cell row="1" col="5" rowspan="2" text="양 (2.0)" taborder="undefined"/>
- <Cell row="1" col="6" rowspan="2" text="가 (1.0)" taborder="undefined"/>
- <Cell row="1" col="7" rowspan="2" text="평점" taborder="undefined"/>
- <Cell row="1" col="8" text="instcd"/>
- <Cell row="1" col="9" text="year"/>
- <Cell row="1" col="10" text="emplno"/>
- <Cell row="1" col="11" text="dtlitemcd"/>
- <Cell row="2" col="8" text="instcd"/>
- <Cell row="2" col="9" text="year"/>
- <Cell row="2" col="10" text="emplno"/>
- <Cell row="2" col="11" text="dtlitemcd"/>
- </Band>
- <Band id="body">
- <Cell text="bind:itemnm" suppress="1" suppressalign="middle,over"/>
- <Cell col="1" style="align:left middle;padding:1 2 1 2;" text="bind:dtlitemnm" wordwrap="word" autosizerow="limitmin"/>
- <Cell col="2" displaytype="checkbox" edittype="checkbox" text="bind:pos1" expr="expr:pos1 == '1' || pos1 == 'Y' ? '1' : '0'"/>
- <Cell col="3" displaytype="checkbox" edittype="checkbox" text="bind:pos2" expr="expr:pos2 == '1' || pos2 == 'Y' ? '1' : '0'"/>
- <Cell col="4" displaytype="checkbox" edittype="checkbox" text="bind:pos3" expr="expr:pos3 == '1' || pos3 == 'Y' ? '1' : '0'"/>
- <Cell col="5" displaytype="checkbox" edittype="checkbox" text="bind:pos4" expr="expr:pos4 == '1' || pos4 == 'Y' ? '1' : '0'"/>
- <Cell col="6" displaytype="checkbox" edittype="checkbox" text="bind:pos5" expr="expr:pos5 == '1' || pos5 == 'Y' ? '1' : '0'"/>
- <Cell col="7" text="bind:score"/>
- <Cell col="8" text="bind:instcd"/>
- <Cell col="9" text="bind:year"/>
- <Cell col="10" text="bind:emplno"/>
- <Cell col="11" text="bind:dtlitemcd"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Static text="사번" position="absolute 672 80 712 103" align="align:center middle;" id="cap_matrnm" class="cell_1"/>
- <Edit readonly="true" position="absolute 710 82 755 101" align="align:center middle;" id="opt_emplno" class="output" style="align:center middle;"/>
- <Edit readonly="true" position="absolute 795 82 850 101" id="opt_emplnm" class="output"/>
- <Static text="성명" position="absolute 755 80 795 103" align="align:center middle;" id="caption2" class="cell_1"/>
- <Static text="부서명" position="absolute 850 80 900 103" align="align:center middle;" id="caption3" class="cell_1"/>
- <Edit readonly="true" position="absolute 899 82 1044 101" id="opt_deptnm" class="output"/>
- <Static text="직종" position="absolute 1044 80 1084 103" align="align:center middle;" id="caption5" class="cell_1"/>
- <Edit readonly="true" position="absolute 1083 82 1193 101" id="opt_jobkindnm" class="output"/>
- <Shape position="absolute 592 104 1193 108" linetype="horizontal" id="line4" class="line_10"/>
- <Static text="총평점" position="absolute 1030 655 1105 678" align="align:center middle;" id="caption8" class="cell_1"/>
- <Edit readonly="true" position="absolute 1105 657 1193 676" align="align:center middle;" id="opt_totscore" class="output" style="align:center middle;"/>
- <Static text="연도" position="absolute 592 80 632 103" align="align:center middle;" id="caption9" class="cell_1"/>
- <Edit readonly="true" position="absolute 632 82 672 101" align="align:center middle;" id="output1" class="output" style="align:center middle;"/>
- <Button position="absolute 521 55 585 74" id="btn_download" class="btn2" taborder="6" text="엑셀저장" onclick="group3_btn_download_onclick"/>
- <Button position="absolute 1086 55 1194 74" id="btn_print" class="btn2" taborder="6" text="출력 및 파일저장" onclick="group3_btn_print_onclick"/>
- </Layout>
- </Layouts>
- </Div>
- <Div position="absolute 0 13 1195 41" id="group4" scrollbars="autoboth">
- <Layouts>
- <Layout>
- <Shape position="absolute 0 22 1194 28" linetype="horizontal" id="line2" class="line_6" anchor="default"/>
- </Layout>
- </Layouts>
- </Div>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="emplno" type="STRING" size="256" sumtext="평가자"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_main_psnlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
- <Column id="rregno" type="STRING" size="256" sumtext="생년월일"/>
- <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
- <Column id="jobkindnm" type="STRING" size="256" sumtext="직종명"/>
- <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="totscore" type="STRING" size="256" sumtext="평점(계)"/>
- <Column id="evalemplnm" type="STRING" size="256" sumtext="평가자"/>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_init_evalperiodinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="evalfromdd" type="STRING" size="256" sumtext="평가 등록 from일자"/>
- <Column id="evaltodd" type="STRING" size="256" sumtext="평가 등록 to일자"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_psninfo_cmtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cmt" type="STRING" size="256" sumtext="총평"/>
- <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
- <Column id="jobkindnm" type="STRING" size="256" sumtext="직종명"/>
- <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
- <Column id="totscore" type="STRING" size="256" sumtext="평점(계)"/>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
- <Column id="strtdd" type="STRING" size="256" sumtext="평정기간(시작일자)"/>
- <Column id="enddd" type="STRING" size="256" sumtext="평정기간(끝일자)"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_main_psninfo_scorelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_psninfo_scorelist_oncolumnchanged">
- <ColumnInfo>
- <Column id="itemnm" type="STRING" size="256" sumtext="코드명"/>
- <Column id="dtlitemnm" type="STRING" size="256" sumtext="종료일자"/>
- <Column id="score" type="STRING" size="256" sumtext="점수"/>
- <Column id="pos1" type="STRING" size="256" sumtext="위치1"/>
- <Column id="pos2" type="STRING" size="256" sumtext="위치2"/>
- <Column id="pos3" type="STRING" size="256" sumtext="위치3"/>
- <Column id="pos4" type="STRING" size="256" sumtext="위치4"/>
- <Column id="pos5" type="STRING" size="256" sumtext="위치5"/>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
- <Column id="dtlitemcd" type="STRING" size="256" sumtext="시작일자"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_condition" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_condition_oncolumnchanged">
- <ColumnInfo>
- <Column id="instcd" type="STRING" size="256"/>
- <Column id="year" type="STRING" size="256"/>
- <Column id="emplno" type="STRING" size="256"/>
- <Column id="emplnm" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_hidden_psninfo_scorelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_psninfo_scorelist_oncolumnchanged">
- <ColumnInfo>
- <Column id="itemnm" type="STRING" size="256" sumtext="코드명"/>
- <Column id="dtlitemnm" type="STRING" size="256" sumtext="종료일자"/>
- <Column id="score" type="STRING" size="256" sumtext="점수"/>
- <Column id="pos1" type="STRING" size="256" sumtext="위치1"/>
- <Column id="pos2" type="STRING" size="256" sumtext="위치2"/>
- <Column id="pos3" type="STRING" size="256" sumtext="위치3"/>
- <Column id="pos4" type="STRING" size="256" sumtext="위치4"/>
- <Column id="pos5" type="STRING" size="256" sumtext="위치5"/>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
- <Column id="dtlitemcd" type="STRING" size="256" sumtext="시작일자"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_hidden_psninfo_cmtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cmt" type="STRING" size="256" sumtext="총평"/>
- <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
- <Column id="jobkindnm" type="STRING" size="256" sumtext="직종명"/>
- <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
- <Column id="totscore" type="STRING" size="256" sumtext="평점(계)"/>
- <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
- <Column id="year" type="STRING" size="256" sumtext="연도"/>
- <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
- <Column id="strtdd" type="STRING" size="256" sumtext="평정기간(시작일자)"/>
- <Column id="enddd" type="STRING" size="256" sumtext="평정기간(끝일자)"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item0" compid="group3.grp_sea.cmb_instcd" propid="value" datasetid="ds_main_condition" columnid="instcd"/>
- <BindItem id="item1" compid="group3.grp_sea.ipt_year" propid="value" datasetid="ds_main_condition" columnid="year"/>
- <BindItem id="item2" compid="group3.grp_sea.ipt_emplno" propid="value" datasetid="ds_main_condition" columnid="emplno"/>
- <BindItem id="item3" compid="group3.grp_sea.ipt_emplnm" propid="value" datasetid="ds_main_condition" columnid="emplnm"/>
- <BindItem id="item4" compid="group3.output1" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="year"/>
- <BindItem id="item5" compid="group3.opt_emplno" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="emplno"/>
- <BindItem id="item6" compid="group3.opt_emplnm" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="emplnm"/>
- <BindItem id="item7" compid="group3.opt_deptnm" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="deptnm"/>
- <BindItem id="item8" compid="group3.opt_jobkindnm" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="jobkindnm"/>
- <BindItem id="item9" compid="group3.opt_totscore" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="totscore"/>
- <BindItem id="item10" compid="group3.txt_cmt" propid="value" datasetid="ds_main_psninfo_cmtinfo" columnid="cmt"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name : 경대 의료정보시스템
- * Job Name : mis_dligclaznsmngtxp -> SMRPD31700
- * Creator : yjh
- * Make Date : 2018-01-05
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2018-01-05 yjh TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- //=======================================================================================
- // Lib Include
- //---------------------------------------------------------------------------------------
- include "com_commonxp::comm_main.xjs";
- include "mis_miscommonxp::MIS.xjs";
- include "mis_humtrafactmngtxp::RPB001.xjs";
- //=======================================================================================
- // Global Form Variable
- //---------------------------------------------------------------------------------------
- var arErrorCode = new HashArray();
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- //========================================================================================
- //화면 로드시 초기화 함수
- //========================================================================================
- function fOpenForm() {
- /*
- //전문의평가 관리권한 확인용 : 관리권한이 있는 자만 사용 가능
- if (submit("TRRPD31102")) {
-
- //alert(model.getValue("/root/init/prvg/cnt"));
-
- if(model.getValue("/root/init/prvg/cnt") != "1") {
- messageBox("프로그램 사용권한이 없습니다. 관리자에게 문의바랍니다.", "E999", "");
- return;
- }
- }
- */
- //model.removenode("/root/main/psnlist");
- //model.removenode("/root/main/scorelist");
- //model.refresh();
- misfComboInstCdListMulti("group3.grp_sea.cmb_instcd", utlf_getCurrentDate(),"","N");
- group3.grp_sea.cmb_instcd.value = sysf_getUserInfo("dutplceinstcd");
- group3.grp_sea.ipt_year.value = utlf_getCurrentDate().substr(0,4) - 1;
-
- misfGridInit(group3.grd_scorelist);
- fGetPsnList(); //평가대상자 목록 조회
- // if(model.getValue("/root/main/psnlist[1]/matrcd") != "") {
- // grd_psnlist.isSelected(1) = true;
- // fGetPsnInfo(1);
- // }else {
- // fCopyInstance();
- // }
- }
- //========================================================================================
- //인스턴스 Copy 함수
- //========================================================================================
- function fCopyInstance() {
- //----model.copyNode("/root/hidden/psninfo/cmtinfo", "/root/main/psninfo/cmtinfo");
- ds_hidden_psninfo_cmtinfo.copyData(ds_main_psninfo_cmtinfo);
- ds_hidden_psninfo_scorelist.copyData(ds_main_psninfo_scorelist);
- }
- //========================================================================================
- //평가 대상자 목록 조회 함수
- //========================================================================================
- function fGetPsnList() {
- //model.removenode("/root/main/psnlist");//조회시 기존 데이터 삭제
- misfGridInit(group3.grd_psnlist);
-
- ds_send.copyRow(0, ds_main_condition, 0);
-
- var oParam = {};
- oParam.id = "TRRPD31602";
- oParam.service = "dligclaznsmngtapp.DutScheMngt";
- oParam.method = "reqGetSpcEvalPsnPeriodList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_init_evalperiodinfo=evalperiodinfo";
- oParam.async = false;
- oParam.callback = "cf_TRRPD31602";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TRRPD31602") > -1) { //평가 등록기간 조회
- var fromdd = utlf_transNullToEmpty(ds_init_evalperiodinfo.getColumn(0, "evalfromdd"));
- if(fromdd.length > 0) {
- var todd = utlf_transNullToEmpty(ds_init_evalperiodinfo.getColumn(0, "evaltodd"));
- group3.grp_sea.cp_evalperiod.text = "※ 평가 등록기간 : "
- + fromdd.substr(0,4) + "-" + fromdd.substr(4,2) + "-" + fromdd.substr(6,2) + " ~ "
- + todd.substr(0,4) + "-" + todd.substr(4,2) + "-" + todd.substr(6,2) ;
- } else {
- group3.grp_sea.cp_evalperiod.text = "";
- }
- }
-
- var oParam = {};
- oParam.id = "TRRPD31701";
- oParam.service = "dligclaznsmngtapp.DutScheMngt";
- oParam.method = "reqGetSpcEvalPsnFnshRsltList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_psnlist=psnlist";
- oParam.async = false;
- //oParam.callback = "cf_TRRPD31701";
- tranf_submit(oParam); //평가대상자 목록 조회
-
- ds_main_psnlist.rowposition = -1;
- }
- function cf_TRRPD31602(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- //========================================================================================
- //평가 점수 및 총평 조회
- //========================================================================================
- function fGetPsnInfo(pRow) {
- if ( pRow > -1 ) {
- ds_send.copyRow(0, ds_main_psnlist, pRow);
-
- var oParam = {};
- oParam.id = "TRRPD31603";
- oParam.service = "dligclaznsmngtapp.DutScheMngt";
- oParam.method = "reqGetSpcEvalPsnScoreList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_psninfo_scorelist=scorelist ds_main_psninfo_cmtinfo=cmtinfo";
- oParam.async = false;
- //oParam.callback = "cf_TRRPD31603";
- tranf_submit(oParam);
-
- fCopyInstance();
- fCalScore();
- }
- }
- //========================================================================================
- //신규 버턴 클릭시 인스턴스 초기화
- //========================================================================================
- function fSetMatrInfo() {
- ipt_matrcd.disabled = false;
- // 아래 두줄로 변경
- //model.resetInstanceNode("/root/main/psninfo");
- model.resetInstanceNode("/root/main/psninfo/cmtinfo");
- //model.resetInstanceNode("/root/main/psninfo/scorelist");
- misfGridInit(grd_scorelist);
-
- //return;
-
- model.setFocus("ipt_matrcd");
- model.setValue("/root/main/psninfo/cmtinfo/status", "i");
- model.setValue("/root/main/psninfo/cmtinfo/msdsflag", "Y");
- // 서식에서 징수의무자 상호(법인명)으로 쓰임. 기본값으로 경북대학교병원장 셋팅.
- //model.setValue("/root/main/psninfo/prntnm1" , "경북대학교병원장");
- fCopyInstance();
- }
- //========================================================================================
- // 저장버튼 클릭시 저장 수행 함수
- //========================================================================================
- function fClickSaveBtn() {
- /*
- if(!fIsValidForSave())//저장전 유효성 검사
- return;
- */
-
- for(var i = grd_scorelist.fixedRows; i < grd_scorelist.rows; i++) {
- if(grd_scorelist.valueMatrix(i, grd_scorelist.colRef("score")) == "") {
- messageBox("미평가 항목이 존재합니다. 확인 후 저장하시기 바랍니다. ", "E999", "");
- return;
- }
- }
-
- model.resetInstanceNode("/root/send");
-
- //model.makeNode("root/send/cmtinfo");
- model.copyNode("/root/send", "/root/main/psninfo/cmtinfo");
-
- model.makeValue("/root/send/scorelist", grd_scorelist.getUpdateData());
-
- //return;
-
- if(submit("TXRPD31601")) {
- fGetPsnList();//평가대상자 목록 재조회
-
- model.copyNode("/root/send", "/root/main/psninfo/cmtinfo");
- submit("TRRPD31603"); //상세내역 및 조사표 재조회
- fCalScore();
- //model.setValue("/root/main/psninfo/cmtinfo/status", "-");
- //grd_scorelist.clearStatus();
- //--model.makeNode("/root/hidden/psninfo/cmtinfo");
- model.makeNode("/root/hidden/psninfo");
- fCopyInstance();
-
-
- }
- }
- //========================================================================================
- //저장전 유효성 검사
- //========================================================================================
- function fIsValidForSave() {
-
- //필수 입력 항목 체크(공통 ftHelper.js)
- if(!isRequiredControls("ipt_matrcd","ipt_matrnm")) { //,"ipt_prodcmpycd"
- return false;
- }
-
- var tretopendd = "";
- var tretclosdd = "";
- for(var i = grd_scorelist.fixedRows; i < grd_scorelist.rows; i++) {
- if(grd_scorelist.rowStatus(i) < 4) { //행삭제가 아닌 Record만 check한다.
- if(grd_scorelist.valueMatrix(i, grd_scorelist.colRef("deptcd")) == "") {
- messageBox("부서코드가 입력되지 않았습니다. \n조사표의 부서코드를 확인하십시요. ", "E999", "");
- return false;
- }
-
- tretopendd = grd_scorelist.valueMatrix(i, grd_scorelist.colRef("tretopendd"));
- if( tretopendd.length != 8 ) {
- messageBox("취급개시일이 정확하게 입력되지 않았습니다. \n취급개시일을 확인하십시요. ", "E999", "");
- return false;
- }
-
- tretclosdd = grd_scorelist.valueMatrix(i, grd_scorelist.colRef("tretclosdd"));
- if( tretclosdd.length != 8 ) {
- messageBox("취급종료일이 정확하게 입력되지 않았습니다. \n취급종료일을 확인하십시요. ", "E999", "");
- return false;
- }
-
- if( tretopendd > tretclosdd ) {
- messageBox("취급개시일이 취급종료일보다 큽니다. 취급일을 확인하십시요. ", "E999", "");
- return false;
- }
-
- }
- }
-
- var sStatus = model.getValue("/root/main/psninfo/cmtinfo/status");
- var sNewData = fGetNodeText("/root/main/psninfo/cmtinfo");
- var sOldData = fGetNodeText("/root/hidden/psninfo/cmtinfo");
-
- //상세내역에 변경된 정보가 있는지 확인
- if(sNewData != sOldData && sStatus == "-") { // 데이터 수정일 경우
- model.setValue("/root/main/psninfo/cmtinfo/status","u");
- return true;
- } else if(sNewData == sOldData && sStatus == "-" ) { //변경된 값이 없을경우
- //messageBox("변경된 정보가 ", "I004");
- //return false;
- return true;
- }else if(sStatus == "i") { //데이터 입력일 경우
- return true;
- }else if(sStatus = "d") { //데이터 삭제일 경우
- return true;
- }
- }
-
- //========================================================================================
- //엑셀입력(excel file을 그리드에 입력)
- //========================================================================================
- function fInputExcel(pGrid) {
- var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
- if(fileName != "") {
- pGrid.loadExcel(fileName, 1, true);
- pGrid.deleteRow(1);
- pGrid.refresh();
- }
- }
- //========================================================================================
- //동일한 Depth의 인스턴스의 값을 스트링형으로 변환
- //========================================================================================
- function fGetNodeText(pNode) {
- var trgNdoe = instance1.selectSingleNode(pNode);
- var trgNdoeList = trgNdoe.childNodes;
- var childNode;
- var allText = "";
- while( childNode = trgNdoeList.nextNode() ) {
-
- allText += childNode.text;
- }
- return allText;
- }
- function fOpenPopupDeptHelp(pControl, pInstance)
- {
- misfOpenPopUpList("02", pControl, "", pInstance);
- model.refresh();
- }
- //========================================================================================
- //평점을 계산하여 display합니다.
- //========================================================================================
- function fCalScore() {
- var vTotal = 0;
- var vScore = "";
- for(var i = 0; i < ds_main_psninfo_scorelist.rowcount; i++) {
- vScore = ds_main_psninfo_scorelist.getColumn(i, "score");
- if(utlf_isNull(vScore)) continue;
-
- vTotal = vTotal + parseFloat(ds_main_psninfo_scorelist.getColumn(i, "score"));
- }
-
- group3.opt_totscore.value = vTotal;
- }
- //=======================================================================================
- // Event
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Components : Form
- * Components ID : SMRPD31700
- * Event : oninit
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면 처음 초기화시
- ****************************************************************************************/
- function SMRPD31700_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj); //폼 초기화
- }
- /****************************************************************************************
- * Components : Form
- * Components ID : SMRPD31700
- * Event : onload
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면 로딩 완료시
- ****************************************************************************************/
- function SMRPD31700_onload(obj:Form, e:LoadEventInfo)
- {
- grdf_setRowTypeIcon(group3.grd_psnlist, 0);
- grdf_setGridSort(group3.grd_psnlist);
-
- fOpenForm();
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_search
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 조회버튼 클릭시
- ****************************************************************************************/
- function group3_grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
- {
- fGetPsnList();
- }
- /****************************************************************************************
- * Components : Combo
- * Components ID : cmb_instcd
- * Event : onitemchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 콤보 값 변경시
- ****************************************************************************************/
- function group3_grp_sea_cmb_instcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
- {
- //misfGridInit(datagrid1);
- }
- function ds_main_condition_oncolumnchanged(obj, e)
- {
- switch( e.columnid ){
- case "year" :
- fGetPsnList();
- break;
-
- case "emplnm" :
- group3.grp_sea.ipt_emplnm.value = e.newvalue;
- group3.grp_sea.ipt_emplnm.setFocus();
- var recv_list = "emplno,emplnm" ;
- rpbfValidationCheck("EMPLNM", recv_list);
- fGetPsnList();
- break;
-
- case "emplno" :
- group3.grp_sea.ipt_emplno.value = e.newvalue;
- group3.grp_sea.ipt_emplno.setFocus();
- var recv_list = "emplno,emplnm" ;
- rpbfValidationCheck("EMPLNO", recv_list);
- fGetPsnList();
- break;
-
- default :
- break;
- }
- }
- /****************************************************************************************
- * Components : Edit
- * Components ID : ipt_emplnm
- * Event : onkeyup
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 에디터 키 입력시
- ****************************************************************************************/
- function group3_grp_sea_ipt_emplnm_onkeyup(obj:Edit, e:KeyEventInfo)
- {
- if (e.keycode == 13 && !utlf_isNull(group3.grp_sea.ipt_emplnm.value)) {
- obj.updateToDataset();
- var eventObj = new EventInfo(); // 이벤트생성
- eventObj.columnid = "emplnm"; //이벤트객체에 값 셋팅
- eventObj.newvalue = ds_main_condition.getColumn(0, "emplnm");
- ds_main_condition_oncolumnchanged(ds_main_condition, eventObj);
- //inputEnterKey("btn_search", "DOMActivate");
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_emplno
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 돋보기버튼 클릭시
- ****************************************************************************************/
- function group3_grp_sea_btn_emplno_onclick(obj:Button, e:ClickEventInfo)
- {
- var recv_list = "emplno,emplnm" ;
- rpbfOpenPopUpList("SPRPB00101", group3.grp_sea.ipt_emplno, recv_list,"1","N");
- fGetPsnList();
- }
- /****************************************************************************************
- * Components : Edit
- * Components ID : ipt_emplno
- * Event : onkeyup
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 에디터 키 입력시
- ****************************************************************************************/
- function group3_grp_sea_ipt_emplno_onkeyup(obj:Edit, e:KeyEventInfo)
- {
- if (e.keycode == 13 && !utlf_isNull(group3.grp_sea.ipt_emplno.value)) {
- obj.updateToDataset();
- var eventObj = new EventInfo(); // 이벤트생성
- eventObj.columnid = "emplno"; //이벤트객체에 값 셋팅
- eventObj.newvalue = ds_main_condition.getColumn(0, "emplno");
- ds_main_condition_oncolumnchanged(ds_main_condition, eventObj);
- //inputEnterKey("btn_search", "DOMActivate");
- }
- }
- /****************************************************************************************
- * Components : Grid
- * Components ID : grd_psnlist
- * Event : oncellclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 그리드 셀 클릭시
- ****************************************************************************************/
- function group3_grd_psnlist_oncellclick(obj:Grid, e:GridClickEventInfo)
- {
- var cur_row = ds_main_psnlist.rowposition;
- fGetPsnInfo(cur_row);
- group3.opt_emplno.setFocus();
- }
- /****************************************************************************************
- * Components : Dataset
- * Components ID : ds_main_psninfo_scorelist
- * Event : oncolumnchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 데이터셋 값 변경시
- ****************************************************************************************/
- function ds_main_psninfo_scorelist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
- {
- switch( e.columnid ){
- case "pos1" :
- case "pos2" :
- case "pos3" :
- case "pos4" :
- case "pos5" :
- if( e.newvalue == "1" || e.newvalue == "Y" ){
- obj.setColumn(e.row, e.columnid, "Y");
- }else{
- obj.setColumn(e.row, e.columnid, "N");
- }
-
- var icol = group3.grd_scorelist.currentcell;
- var irow = e.row;
- var offset = 0;
- var MaxScore = 5; //최고 점수
-
- if( obj.getColumn(irow, e.columnid) == "Y" ) {
- for( var i = group3.grd_scorelist.getBindCellIndex("body", "pos1") ; i <= group3.grd_scorelist.getBindCellIndex("body", "pos5"); i++ ) {
- if( i == icol ) {
- obj.setColumn(irow, "score", MaxScore - offset);
- } else {
- obj.setColumn(irow, "score", MaxScore - offset);
- grd_scorelist.valueMatrix(irow, "pos"+(i-1), "N");
- }
- offset++;
- }
- } else {
- obj.setColumn(irow, "score", "");
- }
-
- //평점계를 계산하여 display
- fCalScore();
-
- break;
-
- default :
- break;
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_download
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 엑셀저장버튼 클릭시
- ****************************************************************************************/
- function group3_btn_download_onclick(obj:Button, e:ClickEventInfo)
- {
- //조회된 자료가 없으면 먼저 조회하라고 message
- if(group3.grd_psnlist.rowcount < 1) {
- sysf_messageBox("조회된 결과가 존재하지 않습니다. \n\n먼저 조회 후 Download 하십시요. ", "E999", "");
- return;
- }
-
- //misfSaveExcel(datagrid1, "평가항목");
-
- grdf_exportExcel(group3.grd_psnlist, "excel", "savetype", false, "", "user", false);
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_print
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 출력 및 파일저장버튼 클릭시
- ****************************************************************************************/
- function group3_btn_print_onclick(obj:Button, e:ClickEventInfo)
- {
- //출력
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/psninfo/scorelist", ds_main_psninfo_scorelist); // 데이터셋 1
- rptf_setNodeListToDOM(objDOM, "/root/main/psninfo/cmtinfo", ds_main_psninfo_cmtinfo); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
-
- rptf_exeReportPreview30(["RPRPD31701"],[objParam], option);
- }
- ]]></Script>
- </Form>
- </FDL>
|