12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.4">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMQP04000" position="absolute 0 0 1256 805" titletext="Untitle" oninit="SPMQP04000_oninit" onload="SPMQP04000_onload">
- <Layouts>
- <Layout>
- <Shape position="absolute 0 226 725 232" linetype="horizontal" id="line1" class="line_2"/>
- <Shape position="absolute 0 176 725 182" linetype="horizontal" id="line2" class="line_2"/>
- <Shape position="absolute 0 201 725 207" linetype="horizontal" id="line5" class="line_2"/>
- <Button position="absolute 346 231 410 250" id="btn_addqest" class="btn2" text="질문추가" onclick="btn_addqest_onclick" style="color:#057777ff;"/>
- <Grid position="absolute 0 23 725 129" id="grd_poplist" binddataset="ds_main_inqrinfo_inqrlist" onrbuttondown="grd_poplist_onrbuttondown" selecttype="multirow" oncelldblclick="grd_poplist_oncelldblclick">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="296"/>
- <Column size="425"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="제목"/>
- <Cell col="1" text="Guideline"/>
- </Band>
- <Band id="body">
- <Cell text="bind:title"/>
- <Cell col="1" text="bind:guide"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Shape position="absolute 0 151 725 157" linetype="horizontal" id="line10" class="line_1" style="strokepen:3 solid #33bbbbff;"/>
- <Combo position="absolute 517 208 725 227" id="cmb_inqrstepno" taborder="1" innerdataset="@ds_init_stepinfo" datacolumn="stepnm" codecolumn="stepno"/>
- <Static text="제목" position="absolute 0 156 85 179" id="caption1" class="cell_1"/>
- <Button position="absolute 683 231 725 250" id="btn_delansw" class="btn2" text="삭제" onclick="btn_delansw_onclick"/>
- <Static text="선택 STEP" position="absolute 430 206 515 229" id="caption11" class="cell_1"/>
- <Static text="팝업리스트" position="absolute 2 5 144 21" id="caption2" class="tit_2"/>
- <Static text="팝업시점" position="absolute 0 206 85 229" id="caption3" class="cell_1"/>
- <Static text="팝업작성" position="absolute 0 134 142 150" id="caption13" class="tit_2"/>
- <Static text="용도" position="absolute 0 181 85 204" id="caption4" class="cell_1"/>
- <Radio position="absolute 87 208 425 228" id="rdo_popstart" taborder="4" columncount="3" innerdataset="ds_init_M0515" datacolumn="cdnm" codecolumn="cdid" onitemchanged="rdo_popstart_onitemchanged"/>
- <Button position="absolute 616 231 680 250" id="btn_addansw" class="btn2" text="답안추가" onclick="btn_addansw_onclick"/>
- <Grid position="absolute 0 252 455 460" id="grd_inqrlist" taborder="5" binddataset="ds_main_inqrdetlist_inqr" autofittype="col">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="25"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="40"/>
- <Column size="296"/>
- <Column size="80"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="status"/>
- <Cell col="2" text="inqrno"/>
- <Cell col="3" text="inqrhistno"/>
- <Cell col="4" text="번호"/>
- <Cell col="5" text="질문"/>
- <Cell col="6" text="답안속성"/>
- <Cell col="7" text="answessyn"/>
- <Cell col="8" text="limno"/>
- <Cell col="9" text="limhistno"/>
- <Cell col="10" text="limcdno"/>
- <Cell col="11" text="setattrno"/>
- <Cell col="12" text="setattrhistno"/>
- </Band>
- <Band id="body">
- <Cell style="background:URL('theme://images/bg_gridHead.png') stretch 3,3;background2:URL('theme://images/bg_gridHead.png') stretch 3,3;selectbackground:URL('theme://images/bg_gridHead.png') stretch 3,3;" text="expr:currow+1"/>
- <Cell col="1" text="bind:inqrstatus"/>
- <Cell col="2" text="bind:inqrinqrno"/>
- <Cell col="3" text="bind:inqrinqrhistno"/>
- <Cell col="4" displaytype="none" edittype="none" text="bind:inqrqestno"/>
- <Cell col="5" displaytype="text" edittype="text" text="bind:inqrqestcnts"/>
- <Cell col="6" displaytype="combo" edittype="combo" text="bind:inqranswflag" combodataset="ds_init_M0518" combocodecol="cdid" combodatacol="cdnm"/>
- <Cell col="7" text="bind:inqranswessyn"/>
- <Cell col="8" text="bind:inqrlimno"/>
- <Cell col="9" text="bind:inqrlimhistno"/>
- <Cell col="10" text="bind:inqrlimcdno"/>
- <Cell col="11" text="bind:inqrsetattrno"/>
- <Cell col="12" text="bind:inqrsetattrhistno"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Edit position="absolute 87 158 724 177" id="ipt_title" class="input_essential" taborder="2"/>
- <Grid position="absolute 460 252 725 460" id="grd_answlist" taborder="5" binddataset="ds_main_inqrdetlist_answ" autofittype="col" onrbuttondown="grd_answlist_onrbuttondown">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="25"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="226"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="status"/>
- <Cell col="2" text="inqrno"/>
- <Cell col="3" text="inqrhistno"/>
- <Cell col="4" text="질문번호"/>
- <Cell col="5" text="번호"/>
- <Cell col="6" text="답안"/>
- </Band>
- <Band id="body">
- <Cell style="background:URL('theme://images/bg_gridHead.png') stretch 3,3;background2:URL('theme://images/bg_gridHead.png') stretch 3,3;selectbackground:URL('theme://images/bg_gridHead.png') stretch 3,3;" text="expr:currow+1"/>
- <Cell col="1" text="bind:answstatus"/>
- <Cell col="2" text="bind:answinqrno"/>
- <Cell col="3" text="bind:answinqrhistno"/>
- <Cell col="4" displaytype="none" edittype="none" text="bind:answqestno"/>
- <Cell col="5" text="bind:answanswno"/>
- <Cell col="6" displaytype="text" edittype="text" style="color:EXPR(getColumn(currow,'answanswno') == '99999' ? "#FF0000" : "");color2:EXPR(getColumn(currow,'answanswno') == '99999' ? "#FF0000" : "");" text="bind:answanswcnts"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button position="absolute 413 231 455 250" id="btn_delqest" class="btn2" text="삭제" onclick="btn_delqest_onclick"/>
- <Button position="absolute 683 132 725 151" id="button3" class="btn2" text="신규" onclick="button3_onclick"/>
- <Grid position="absolute 460 365 725 460" id="grd_allanswlist" visible="false" taborder="5" binddataset="ds_temp_answlist" autofittype="col">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="25"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="58"/>
- <Column size="0"/>
- <Column size="167"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="status"/>
- <Cell col="2" text="inqrno"/>
- <Cell col="3" text="inqrhistno"/>
- <Cell col="4" text="질문번호"/>
- <Cell col="5" text="번호"/>
- <Cell col="6" text="답안"/>
- </Band>
- <Band id="body">
- <Cell style="background:URL('theme://images/bg_gridHead.png') stretch 3,3;background2:URL('theme://images/bg_gridHead.png') stretch 3,3;selectbackground:URL('theme://images/bg_gridHead.png') stretch 3,3;" text="expr:currow+1"/>
- <Cell col="1" text="bind:answstatus"/>
- <Cell col="2" text="bind:answinqrno"/>
- <Cell col="3" text="bind:answinqrhistno"/>
- <Cell col="4" displaytype="none" edittype="none" text="bind:answqestno"/>
- <Cell col="5" text="bind:answanswno"/>
- <Cell col="6" displaytype="none" edittype="none" text="bind:answanswcnts"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Static text="일반" position="absolute 87 181 127 204" id="caption5" class="cell_1"/>
- <Static text="미발행 사유" position="absolute 349 181 426 204" id="caption6" class="cell_1" tooltiptext="평가용 CPG에서, 퇴원예고시 미발행 사유를 입력받아야 할 경우 제목과 용도를 등록하셔야 합니다." style="padding:0 0 0 5;"/>
- <Static text="평가용 CPG에서, 퇴원예고시 미발행 사유를 입력받아야 할 경우 제목과 용도를 등록합니다. 질문과 답은 따로 작성하지 않습니다. 퇴원예고 시 문진 팝업에 각 스텝의 프로토콜에 입력된 필수처방과, 구간에 등록된 선택필수 처방이 자동으로 질문/답 형식으로 구성됩니다." position="absolute 0 435 445 460" id="cap_detl_inqrflag" visible="false" style="align:left top;"/>
- <cp_radioList id="rdo_mthd2" taborder="6" scrollbars="none" position="absolute 428 182 723 202" style="background:transparent; " col="1" row="1"/>
- <cp_radioList id="rdo_mthd" titletext="Radio List" taborder="7" scrollbars="none" position="absolute 128 182 346 202" style="background:transparent; " col="1" row="1"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_main_inqrinfo_inqrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="title" type="STRING"/>
- <Column id="guide" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_inqrdetlist_inqr" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" onrowposchanged="ds_main_inqrdetlist_inqr_onrowposchanged" oncolumnchanged="ds_main_inqrdetlist_inqr_oncolumnchanged">
- <ColumnInfo>
- <Column id="inqrstatus" type="STRING"/>
- <Column id="inqrinqrno" type="STRING"/>
- <Column id="inqrinqrhistno" type="STRING"/>
- <Column id="inqrqestno" type="STRING"/>
- <Column id="inqrqestcnts" type="STRING"/>
- <Column id="inqranswflag" type="STRING"/>
- <Column id="inqranswessyn" type="STRING"/>
- <Column id="inqrlimno" type="STRING"/>
- <Column id="inqrlimhistno" type="STRING"/>
- <Column id="inqrlimcdno" type="STRING"/>
- <Column id="inqrsetattrno" type="STRING"/>
- <Column id="inqrsetattrhistno" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_inqrdetlist_answ" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_inqrdetlist_answ_oncolumnchanged">
- <ColumnInfo>
- <Column id="answstatus" type="STRING"/>
- <Column id="answinqrno" type="STRING"/>
- <Column id="answinqrhistno" type="STRING"/>
- <Column id="answqestno" type="STRING"/>
- <Column id="answanswno" type="STRING"/>
- <Column id="answanswcnts" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_temp_answlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="answstatus" type="STRING"/>
- <Column id="answinqrno" type="STRING"/>
- <Column id="answinqrhistno" type="STRING"/>
- <Column id="answqestno" type="STRING"/>
- <Column id="answanswno" type="STRING"/>
- <Column id="answanswcnts" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_inqrdetlist_inqrheader" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="inqrno" type="STRING" size="256"/>
- <Column id="inqrhistno" type="STRING" size="256"/>
- <Column id="cpgno" type="STRING" size="256"/>
- <Column id="cpghistseq" type="STRING" size="256"/>
- <Column id="inqrnm" type="STRING" size="256"/>
- <Column id="pntmflag" type="STRING" size="256"/>
- <Column id="inqrflag" type="STRING" size="256"/>
- <Column id="stepno" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_savedata_inqrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_temp_inqrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_main_inqrinfo_inqrheader" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_main_inqrform_inqrheader" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="inqrno" type="STRING" size="256"/>
- <Column id="inqrhistno" type="STRING" size="256"/>
- <Column id="cpgno" type="STRING" size="256"/>
- <Column id="cpghistseq" type="STRING" size="256"/>
- <Column id="inqrnm" type="STRING" size="256"/>
- <Column id="pntmflag" type="STRING" size="256"/>
- <Column id="inqrflag" type="STRING" size="256"/>
- <Column id="stepno" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="inqrno"/>
- <Col id="inqrhistno"/>
- <Col id="cpgno"/>
- <Col id="cpghistseq"/>
- <Col id="inqrnm"/>
- <Col id="pntmflag"/>
- <Col id="inqrflag"/>
- <Col id="stepno"/>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_main_inqrform_answlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="answstatus" type="STRING" size="256"/>
- <Column id="asnwinqrno" type="STRING" size="256"/>
- <Column id="answinqrhistno" type="STRING" size="256"/>
- <Column id="answqestno" type="STRING" size="256"/>
- <Column id="answanswno" type="STRING" size="256"/>
- <Column id="answanswcnts" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="answstatus"/>
- <Col id="asnwinqrno"/>
- <Col id="answinqrhistno"/>
- <Col id="answqestno"/>
- <Col id="answanswno"/>
- <Col id="answanswcnts"/>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_main_inqrform_inqrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="inqrstatus" type="STRING" size="256"/>
- <Column id="inqrinqrno" type="STRING" size="256"/>
- <Column id="inqrinqrhistno" type="STRING" size="256"/>
- <Column id="inqrqestno" type="STRING" size="256"/>
- <Column id="inqrqestcnts" type="STRING" size="256"/>
- <Column id="inqranswflag" type="STRING" size="256"/>
- <Column id="inqranswessyn" type="STRING" size="256"/>
- <Column id="inqrlimno" type="STRING" size="256"/>
- <Column id="inqrlimhistno" type="STRING" size="256"/>
- <Column id="inqrlimcdno" type="STRING" size="256"/>
- <Column id="inqrsetattrno" type="STRING" size="256"/>
- <Column id="inqrsetattrhistno" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="inqrstatus"/>
- <Col id="inqrinqrno"/>
- <Col id="inqrinqrhistno"/>
- <Col id="inqrqestno"/>
- <Col id="inqrqestcnts"/>
- <Col id="inqranswflag"/>
- <Col id="inqranswessyn"/>
- <Col id="inqrlimno"/>
- <Col id="inqrlimhistno"/>
- <Col id="inqrlimcdno"/>
- <Col id="inqrsetattrno"/>
- <Col id="inqrsetattrhistno"/>
- </Row>
- </Rows>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item0" compid="ipt_title" propid="value" datasetid="ds_main_inqrdetlist_inqrheader" columnid="inqrnm"/>
- <BindItem id="item3" compid="rdo_popstart" propid="value" datasetid="ds_main_inqrdetlist_inqrheader" columnid="pntmflag"/>
- <BindItem id="item4" compid="cmb_inqrstepno" propid="value" datasetid="ds_main_inqrdetlist_inqrheader" columnid="stepno"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2015-03-19
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2015-03-19 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- //=======================================================================================
- // Lib Include
- //---------------------------------------------------------------------------------------
- include "com_commonxp::comm_main.xjs"
- //## 핸들링하고 있는 문진 리스트 번호 2010.04.20 KHJ
- var grdpoplistRow = 1;
- var Answ_Path = ds_main_inqrdetlist_answ; //"/root/main/inqrdetlist/answ";
- var Inqr_Path = ds_main_inqrdetlist_inqr; //"/root/main/inqrdetlist/inqr";
- var maxqestno = 0;
- var oldQestNo = 0;
- var arErrorCode = new HashArray();
- //=======================================================================================
- // Event
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Components : Form
- * Components ID : SPMQP04000
- * Event : oninit
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면 처음 초기화시 폼초기화
- ****************************************************************************************/
- function SPMQP04000_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj); // 폼 초기화
- frmf_createPopupMenu("PopupMenu1"
- ,"fPopupMenu1"
- ,[{id: "D", level: "0", title: "삭제"}] //항목추가
- );
- frmf_createPopupMenu("PopupMenu2"
- ,"fPopupMenu2"
- ,[{id: "E", level: "0", title: "기타속성 지정"}
- ,{id: "A", level: "0", title: "답안추가"}] //항목추가
- );
- }
- /****************************************************************************************
- * Components : Form
- * Components ID : SPMQP04000
- * Event : onload
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면오픈시 폼load이후 실행
- ****************************************************************************************/
- function SPMQP04000_onload(obj:Form, e:LoadEventInfo)
- {
- fInqrInit();
- rdo_mthd.setInitComp("col=3,row=1,cellspacing=4", ds_init_M0516,"cdid","cdnm","fn_rdoEvent_mthd");
- rdo_mthd2.setInitComp("col=2,row=1,cellspacing=4", ds_init_M0516_2,"cdid","cdnm","fn_rdoEvent_mthd2");
- // rdo_mthd.setData("D");
- // rdo_mthd2.setData("D");
- }
- /****************************************************************************************
- * Components : Grid
- * Components ID : grd_poplist
- * Event : onrbuttondown
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 팝업리스트 마우스 우클릭으로 팝업메뉴 띄우기
- ****************************************************************************************/
- function grd_poplist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
- {
- if(e.row > -1) PopupMenu1.trackPopup(e.screenX,e.screenY);
- }
- /****************************************************************************************
- * Components : Grid
- * Components ID : grd_poplist
- * Event : oncelldblclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 팝업리스트 더블클릭
- ****************************************************************************************/
- function grd_poplist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- grdpoplistRow = e.row;
- if (grdpoplistRow > -1) {
- ds_main_inqrdetlist_inqrheader.clearData();
- ds_main_inqrdetlist_inqr.clearData();
- ds_main_inqrdetlist_answ.clearData();
- var iRow = e.row;
- var inqrno = ds_main_inqrinfo_inqrlist.getColumn(iRow,"inqrno");
- var inqrhistno = ds_main_inqrinfo_inqrlist.getColumn(iRow,"inqrhistno");
-
- ds_main_inqrdetlist_inqrheader.addRow();
- ds_main_inqrdetlist_inqrheader.copyRow(0,ds_main_inqrinfo_inqrlist,iRow);
- var oParam = {};
- oParam.id = "TRMQP04002";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqGetInqrList";
- oParam.inds = "req=ds_main_inqrdetlist_inqrheader";
- oParam.outds = "ds_temp_inqrlist=inqrlist ds_temp_answlist=answlist";
- oParam.async = false;
- oParam.callback = "cf_TRMQP04002";
- tranf_submit(oParam);
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_addqest
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 질문추가 버튼 클릭
- ****************************************************************************************/
- function btn_addqest_onclick(obj:Button, e:ClickEventInfo)
- {
- var qestno = grd_inqrlist.rowcount-1;
- var inqrno = ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno");
- var inqrhistno = ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrhistno");
- // model.makeNode("/root/main/inqrdetlist/inqr");
- ds_main_inqrdetlist_inqr.clearData();
- // copyNodeListType("/root/main/inqrdetlist/inqr", "/root/main/inqrform/inqrlist", "after");
- dsf_copyDs(ds_main_inqrdetlist_inqr,ds_main_inqrform_inqrlist,"after");
- qestno++;
- Inqr_Path.setColumn(qestno,"inqrstatus" , "I"); //입력시 상태값 추가(JJE)
- Inqr_Path.setColumn(qestno,"inqrqestno" , "0"); //화면단에서 키를 지정해주는것이 명확하지 않아 저장 전 순차적으로 생성해줌(2009.05.19 JJE)
- Inqr_Path.setColumn(qestno,"inqrinqrno" , inqrno);
- Inqr_Path.setColumn(qestno,"inqrinqrhistno" , inqrhistno);
- fSetQestNo(); //질문 상태 변경에 따른, 답안 상태 동시 변경 처리 (2010.04.12)
- fSetGrdRowStatus("grd_inqrlist");
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_delqest
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : (질문)삭제 버튼 클릭
- ****************************************************************************************/
- function btn_delqest_onclick(obj:Button, e:ClickEventInfo)
- {
- //선택여부 체크 추가(JJE)
- var dsObj = objects[grd_inqrlist.binddataset];
- var iRow = dsObj.rowposition;
- if ( iRow < 0 ) {
- sysf_messageBox("삭제할 항목을", "C002");
- return;
- }
- //저장하지 않은 항목까지 'D' 처리하므로 직접삭제하도록 변경(JJE)
- var selectedRows = grdf_getSelectedRows(grd_inqrlist);
- for (var i = selectedRows.length-1 ; i >= 0 ; i--) {
- var iStatus = Inqr_Path.getColumn(selectedRows[i],"inqrstatus");
- var iQestNo = Inqr_Path.getColumn(selectedRows[i],"inqrqestno");
-
- if( ds_main_inqrdetlist_inqr.getColumn(selectedRows[i],"inqrstatus") == "I" ){
- //답안도 함께 물리적 삭제
- // model.removeNodeset("/root/temp/answlist[answqestno='"+iQestNo+"']");
- for(var j = 0; j < ds_temp_answlist.rowcount; j++) {
- if(ds_temp_answlist.getColumn(j,"answqestno") == iQestNo) ds_temp_answlist.deleteRow(j);
- }
- for(var j = 0; j < ds_main_inqrdetlist_answ.rowcount; j++) {
- if(ds_main_inqrdetlist_answ.getColumn(j,"answqestno") == iQestNo) ds_main_inqrdetlist_answ.deleteRow(j);
- }
- //질문 삭제
- // model.removeNodeset("/root/main/iqrdetlist/inqr/inqrlist[" + grd_inqrlist.selectedRow(i) + "]");
- ds_main_inqrdetlist_inqr.deleteRow(selectedRows[i]);
- }else if( ds_main_inqrdetlist_inqr.getColumn(selectedRows[i],"inqrstatus") == "D" ){
- ds_main_inqrdetlist_inqr.setColumn(selectedRows[i],"inqrstatus","");
- }else{
- ds_main_inqrdetlist_inqr.setColumn(selectedRows[i],"inqrstatus","D");
- }
- }
- fSetQestNo(); //질문 상태 변경에 따른, 답안 상태 동시 변경 처리 (2010.04.12)
- fSetGrdRowStatus("grd_inqrlist");
- fSetGrdRowStatus("grd_answlist");
- }
- /****************************************************************************************
- * Components : Dataset
- * Components ID : ds_main_inqrdetlist_inqr
- * Event : onrowposchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description :
- ****************************************************************************************/
- function ds_main_inqrdetlist_inqr_onrowposchanged(obj:Dataset, e:DSRowPosChangeEventInfo)
- {
- //선택 질문에 대한 답리스트만 가져오도록 추가(JJE)
- ds_main_inqrdetlist_answ.filter("answstatus!=''");
- if( oldQestNo > 0 && ds_main_inqrdetlist_answ.rowcount > 0 ){
- // model.removeNodeset("/root/temp/answlist[answqestno='"+oldQestNo+"']");
- for(var i = 0 ; i < ds_temp_answlist.rowcount ; i++) {
- if(ds_temp_answlist.getColumn(i,"answqestno") == oldQestNo) ds_temp_answlist.deleteRow(i);
- }
- var etcAnswCntsNode = ds_main_inqrdetlist_answ.getColumn(ds_main_inqrdetlist_answ.findRow("answanswno","99999"),"answanswcnts");
- if( !utlf_isNull(etcAnswCntsNode) ) ds_main_inqrdetlist_answ.setColumn(ds_main_inqrdetlist_answ.findRow("answanswno","99999"),"");
- copyNodeListType("/root/temp", "/root/main/inqrdetlist/answ/answlist[answqestno='"+oldQestNo+"']", "after");
- ds_main_inqrdetlist_answ.filter("answqestno=='"+oldQestNo+"'");
- dsf_createDs("ds_temp_main_inqrdetlist_answ");
- ds_temp_main_inqrdetlist_answ.copyData(ds_main_inqrdetlist_answ,true);
- dsf_copyDs(ds_temp,ds_temp_main_inqrdetlist_answ,"after");
- dsf_deleteDs("ds_temp_main_inqrdetlist_answ");
- }
- ds_main_inqrdetlist_answ.filter("");
- // model.removeNodeset("/root/main/inqrdetlist/answ/answlist");
- ds_main_inqrdetlist_answ.clearData();
- var dsObj = objects[grd_inqrlist.binddataset];
- if( dsObj.rowposition > -1 ){
- var qestNo = dsObj.getColumn(dsObj.rowposition,"inqrqestno");
- oldQestNo = qestNo;
- // copyNodeListType("/root/main/inqrdetlist/answ", "/root/temp/answlist[answqestno='"+qestNo+"']", "after");
- ds_temp_answlist.filter("answqestno=='"+qestNo+"'");
- dsf_createDs("ds_temp_temp_answlist");
- ds_temp_temp_answlist.copyData(ds_temp_answlist,true);
- dsf_copyDs(ds_main_inqrdetlist_answ,ds_temp_temp_answlist,"after");
- dsf_deleteDs("ds_temp_temp_answlist");
- ds_temp_answlist.filter("");
- fSetGrdRowStatus("grd_answlist");
- }
- }
- /****************************************************************************************
- * Components : Dataset
- * Components ID : ds_main_inqrdetlist_inqr
- * Event : oncolumnchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description :
- ****************************************************************************************/
- function ds_main_inqrdetlist_inqr_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
- {
- var iRow = e.row;
- if( e.columnid == "inqranswflag" ) {
- var answflag = obj.getColumn(iRow,"inqranswflag");
- var answNodes = ds_main_inqrdetlist_answ; // instance1.selectNodes("/root/main/inqrdetlist/answ/answlist");
- if(answflag == "3" ){
- if( answNodes.rowcount <= 0 ){
- // model.removeNodeset("/root/main/inqrdetlist/answ/answlist");
- answNodes.clearData();
- fAddAnswList("B");
- }
- }
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_addansw
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 답안추가 버튼클릭
- ****************************************************************************************/
- function btn_addansw_onclick(obj:Button, e:ClickEventInfo)
- {
- fAddAnswList("B");
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_delansw
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : (답안)삭제 버튼클릭
- ****************************************************************************************/
- function btn_delansw_onclick(obj:Button, e:ClickEventInfo)
- {
- //선택여부 체크 추가(JJE)
- var iRow = objects[grd_answlist.binddataset].rowposition;
- if ( iRow < 0 ) {
- sysf_messageBox("삭제할 항목을", "C002");
- return;
- }
- //저장하지 않은 항목까지 'D' 처리하므로 직접삭제하도록 변경(JJE)
- var selectedRows = grdf_getSelectedRows(grd_answlist);
- for (var i = selectedRows.length-1 ; i >= 0 ; i--) {
- if( ds_main_inqrdetlist_answ.getColumn(selectedRows[i],"answstatus") == "I" ){
- // model.removeNodeset("/root/main/inqrdetlist/answ/answlist[" + grd_answlist.selectedRow(i) + "]");
- ds_main_inqrdetlist_answ.deleteRow(selectedRows[i]);
- }else if( model.getValue("/root/main/inqrdetlist/answ/answlist[" + iRow + "]/answstatus") == "D" ){
- // model.setValue("/root/main/inqrdetlist/answ/answlist[" + grd_answlist.selectedRow(i) + "]/answstatus", "");
- ds_main_inqrdetlist_answ.setColumn(selectedRows[i],"answstatus", "");
- }else{
- // model.setValue("/root/main/inqrdetlist/answ/answlist[" + grd_answlist.selectedRow(i) + "]/answstatus", "D");
- ds_main_inqrdetlist_answ.setColumn(selectedRows[i],"answstatus", "D");
- }
- }
- fSetGrdRowStatus("grd_answlist");
- }
- /****************************************************************************************
- * Components : Dataset
- * Components ID : grd_answlist
- * Event : onrbuttondown
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description :
- ****************************************************************************************/
- function grd_answlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
- {
- if(e.row > -1) PopupMenu2.trackPopup(e.screenX,e.screenY);
- }
- /****************************************************************************************
- * Components : Dataset
- * Components ID : ds_main_inqrdetlist_answ
- * Event : oncolumnchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description :
- ****************************************************************************************/
- function ds_main_inqrdetlist_answ_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
- {
- var iRow = objects[grd_inqrlist.binddataset].rowposition;
- if( e.columnid == "inqranswflag" ){
- var answflag = ds_main_inqrdetlist_inqr.getColumn(iRow,"inqranswflag");
- var answNodes = ds_main_inqrdetlist_answ;
- if(answflag == "3" ){
- if( answNodes.rowcount == 0 ){
- ds_main_inqrdetlist_answ.clearData();
- fAddAnswList("B");
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Function : fInqrInit
- * Description : 초기화
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fInqrInit() {
- fStepSetup() ;
- var oParam = {};
- oParam.id = "TRMQP04001";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqGetInqrHeaderList";
- oParam.inds = "req=ds_send_reqdata";
- oParam.outds = "ds_main_inqrinfo_inqrlist=inqrlist ds_main_inqrinfo_inqrheader=inqrheader";
- oParam.async = false;
- oParam.callback = "cf_TRMQP04001";
- tranf_submit(oParam);
- // submit("TRMQP04001");
- ds_main_inqrdetlist_inqr.clearData();
- ds_main_inqrdetlist_answ.clearData();
- }
- /****************************************************************************************
- * Function : cf_TRMQP04001
- * Description : TRMQP04001 콜백함수
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function cf_TRMQP04001(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- for(var i = 0 ; i < ds_main_inqrinfo_inqrlist.rowcount ; i++) {
- dsf_makeValue(ds_main_inqrinfo_inqrlist,"inqrnm","string",ds_main_inqrinfo_inqrlist.getColumn(i,"title"),i);
- }
- for(var i = 0 ; i < ds_main_inqrinfo_inqrheader.rowcount ; i++) {
- dsf_makeValue(ds_main_inqrinfo_inqrheader,"inqrnm","string",ds_main_inqrinfo_inqrheader.getColumn(i,"title"),i);
- }
- }
- /****************************************************************************************
- * Function : fStepSetup
- * Description : 팝업시점의 변화에 따른 step 활성화
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fStepSetup() {
- var pntmflag = ds_main_inqrdetlist_inqrheader.getColumn(0,"pntmflag");
- if (pntmflag =="3") {
- cmb_inqrstepno.enable = true;
- cmb_inqrstepno.index = 0;
- } else {
- cmb_inqrstepno.enable = false;
- ds_main_inqrdetlist_inqrheader.setColumn(0,"stepno", "0");
- }
- }
- /****************************************************************************************
- * Function : fPopupMenu1
- * Description : 우클릭 메뉴 선택시 함수 실행
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fPopupMenu1(obj:PopupMenu, e:MenuClickEventInfo) {
- if(e.id == "D") {
- fDelInqrList();
- }
- }
- /****************************************************************************************
- * Function : fPopupMenu2
- * Description : 우클릭 메뉴 선택시 함수 실행
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fPopupMenu2(obj:PopupMenu, e:MenuClickEventInfo) {
- if(e.id == "E") {
- fInputFreetextAttr();
- } else if(e.id == "A") {
- fAddAnswList();
- }
- }
- /****************************************************************************************
- * Function : fDelInqrList
- * Description : 문진 삭제
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fDelInqrList() {
- ds_send_savedata_inqrlist.clearData();
-
- var tmpstrTitle = "inqrno▦inqrhistno▦cpgno▦cpghistseq▩";
- var tmpstrCnts = "";
- // var rows = grd_poplist.rowcount;
- var selectedRows = grdf_getSelectedRows(grd_poplist);
- // for (var row = 0; row < rows; row++ ) {
- for (var i= 0; i < selectedRows.length; i++){
- // if(grd_poplist.isSelected(row)) {
- var inqrno = ds_main_inqrinfo_inqrlist.getColumn(selectedRows[i],"inqrno");
- var inqrhistno = ds_main_inqrinfo_inqrlist.getColumn(selectedRows[i],"inqrhistno");
- var cpgno = ds_main_inqrinfo_inqrlist.getColumn(selectedRows[i],"cpgno");
- var cpghistseq = ds_main_inqrinfo_inqrlist.getColumn(selectedRows[i],"cpghistseq");
-
- tmpstrCnts = tmpstrCnts + inqrno + "▦" + inqrhistno + "▦" + cpgno + "▦" + cpghistseq + "▩";
- // }
- }
-
- if( !utlf_isNull(tmpstrCnts) ){
- dsf_makeValue(ds_send_savedata_inqrlist,"dellist","string",tmpstrTitle + tmpstrCnts);
-
- var oParam = {};
- oParam.id = "TXMQP04001";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqDelInqrList";
- oParam.inds = "req=ds_send_savedata_inqrlist";
- oParam.outds = "ds_main_inqrinfo_inqrlist=inqrlist";
- oParam.async = false;
- oParam.callback = "cf_TXMQP04001";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMQP04001") < 0) return false;
-
- this.getOwnerFrame().form.opener.fInitAttList();
- fInqrInit();
- fCheckStepAttr(); //저장 후 스텝의 속성 정보 변경 시 체크하여 변경사항을 outline에 반영한다 --JJE
- //fCheckStepAttr() - SPMQP00300
- }
- }
- /****************************************************************************************
- * Function : cf_TXMQP04001
- * Description : TXMQP04001 콜백함수
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function cf_TXMQP04001(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /****************************************************************************************
- * Function : cf_TRMQP04002
- * Description : TRMQP04002 콜백함수
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function cf_TRMQP04002(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- /* copyNodeListType("/root/main/inqrdetlist/inqr", "/root/temp/inqrlist", "after");*/
- ds_temp_inqrlist.updateColID("status" ,"inqrstatus" );
- ds_temp_inqrlist.updateColID("inqrno" ,"inqrinqrno" );
- ds_temp_inqrlist.updateColID("inqrhistno" ,"inqrinqrhistno" );
- ds_temp_inqrlist.updateColID("qestno" ,"inqrqestno" );
- ds_temp_inqrlist.updateColID("qestcnts" ,"inqrqestcnts" );
- ds_temp_inqrlist.updateColID("answflag" ,"inqranswflag" );
- ds_temp_inqrlist.updateColID("answessyn" ,"inqranswessyn" );
- ds_temp_inqrlist.updateColID("limno" ,"inqrlimno" );
- ds_temp_inqrlist.updateColID("limhistno" ,"inqrlimhistno" );
- ds_temp_inqrlist.updateColID("limcdno" ,"inqrlimcdno" );
- ds_temp_inqrlist.updateColID("setattrno" ,"inqrsetattrno" );
- ds_temp_inqrlist.updateColID("setattrhistno","inqrsetattrhistno");
-
- ds_temp_answlist.updateColID("status" ,"answstatus" );
- ds_temp_answlist.updateColID("inqrno" ,"answinqrno" );
- ds_temp_answlist.updateColID("inqrhistno","answinqrhistno");
- ds_temp_answlist.updateColID("qestno" ,"answqestno" );
- ds_temp_answlist.updateColID("answno" ,"answanswno" );
- ds_temp_answlist.updateColID("answcnts" ,"answanswcnts" );
-
- dsf_copyDs(ds_main_inqrdetlist_inqr,ds_temp_inqrlist,"after");
- }
- function button3_onclick(obj:Button, e:ClickEventInfo)
- {
- grdpoplistRow = objects[grd_poplist.binddataset].rowposition;
- // model.removenode("/root/main/inqrdetlist");
- // model.removenode("/root/temp");
- ds_main_inqrdetlist_inqrheader.clearData();
- ds_main_inqrdetlist_inqr.clearData();
- ds_main_inqrdetlist_answ.clearData();
- // model.copyNode("/root/main/inqrdetlist/inqrheader", "/root/main/inqrform/inqrheader");
- ds_main_inqrdetlist_inqrheader.copyData(ds_main_inqrform_inqrheader);
- // model.makeNode("/root/temp");
- ds_temp_inqrlist.clearData();
- ds_temp_answlist.clearData();
- rdo_popstart.enable = true;
- btn_addqest.enable = true;
- btn_delqest.enable = true;
- btn_addansw.enable = true;
- btn_delansw.enable = true;
- }
- function rdo_popstart_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
- {
- fStepSetup() ;
- }
- /****************************************************************************************
- * Function : fStepSetup
- * Description : 팝업시점의 변화에 따른 step 활성화
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fStepSetup() {
- var pntmflag = ds_main_inqrdetlist_inqrheader.getColumn(0,"pntmflag");
- if (pntmflag =="3") {
- cmb_inqrstepno.enable = true;
- cmb_inqrstepno.index = 0;
- } else {
- cmb_inqrstepno.enable = false;
- ds_main_inqrdetlist_inqrheader.setColumn(0,"stepno","0");
- }
- }
- /****************************************************************************************
- * Function : fSetQestNo
- * Description :
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fSetQestNo(){
- var NodeList = Inqr_Path; // instance1.selectNodes(Inqr_Path + "/inqrlist");
- dsf_createDs("ds_AnswList");
- // var AnswList = null;
-
- if( NodeList.rowcount > 0 ){
- var qestCnt = 0;
- var iQestCnt = 0;
- for (var i = 0 ; i < NodeList.rowcount ; i++ ) {
- var iStatus = Inqr_Path.getColumn(i,"inqrstatus");
- var iQestNo = Inqr_Path.getColumn(i,"inqrqestno");
- if( iStatus == "D" ){
- iQestCnt = 0;
- //답안데이터의 질문번호 변경
- // AnswList = instance1.selectNodes("/root/temp/answlist[answqestno='" + iQestNo + "']");
- ds_temp_answlist.filter("answqestno == '"+iQestNo+"'");
- ds_AnswList.copyData(ds_temp_answlist,true);
- if( ds_AnswList.rowcount > 0 ){
- for (var j = 0 ; j < ds_AnswList.rowcount ; j++ ) {
- // var node = AnswList.item(j);
- ds_AnswList.setColumn(j,"answqestno", 0);
- ds_AnswList.setColumn(j,"answstatus", "D");
- }
- }
- }else{
- qestCnt++;
- iQestCnt = qestCnt;
- //답안데이터의 질문번호 변경
- // AnswList = instance1.selectNodes("/root/temp/answlist[answqestno='" + iQestNo + "']");
- ds_temp_answlist.filter("answqestno == '"+iQestNo+"'");
- ds_AnswList.copyData(ds_temp_answlist,true);
- if( ds_AnswList.rowcount > 0 ){
- for (var j = 0 ; j < ds_AnswList.rowcount ; j++ ) {
- // var node = AnswList.item(j);
- ds_AnswList.setColumn(j,"answqestno", iQestCnt);
- if( ds_AnswList.getColumn(j,"answstatus") != "I" )
- ds_AnswList.setColumn(j,"answstatus", "");
- }
- }
- }
- //질문데이터의 질문번호 변경
- Inqr_Path.setColumn(i,"inqrqestno", iQestCnt);
- } //end for
- } //end check
- dsf_deleteDs("ds_AnswList");
- }
- /****************************************************************************************
- * Function : fSetGrdRowStatus
- * Description : 그리드 refresh 후 rowstatus 초기화되는 현상에 대한 처리
- * Argument : grd - 목적그리드 name
- * return type :
- * Creator :
- ****************************************************************************************/
- function fSetGrdRowStatus(grd) {
- var grdCtrl = components[grd];
- var dsObj = objects[grdCtrl.binddataset];
-
- if( grd == "grd_inqrlist" ){
- var ref1 = ds_main_inqrdetlist_inqr; //"/root/main/inqrdetlist/inqr/inqrlist";
- var ref2 = "inqrstatus";
- }else if( grd == "grd_answlist" ){
- var ref1 = ds_main_inqrdetlist_answ; //"/root/main/inqrdetlist/answ/answlist";
- var ref2 = "answstatus";
- }
-
- for( var i=0 ; i < dsObj.rowcount; i++){
- if( ref1.getColumn(i,ref2) == "I" ){
- dsObj.setRowType(i,Dataset.ROWTYPE_INSERT);
- }else if( ref1.getColumn(i,ref2) == "U" ){
- dsObj.setRowType(i,Dataset.ROWTYPE_UPDATE);
- }else if( ref1.getColumn(i,ref2) == "D" ){
- dsObj.setRowType(i,Dataset.ROWTYPE_DELETE);
- }else{
- dsObj.setRowType(i,Dataset.ROWTYPE_NORMAL);
- }
-
- if( grd == "grd_answlist" ){
- if( ref1.getColumn(i,"answanswno") == "99999" ){
- ref1.setColumn(i,"answanswcnts", "(기타)");
- // grd_answlist.rowstyle(i, "data", "color") = "#FF0000"; //grd_answlist 그리드에 expr설정
- }
- }
- }
- }
- /****************************************************************************************
- * Function : fAddAnswList
- * Description : 그리드 refresh 후 rowstatus 초기화되는 현상에 대한 처리
- * Argument : pos - 구분값
- * return type :
- * Creator :
- ****************************************************************************************/
- function fAddAnswList(pos){
- if( utlf_isNull(pos) ) pos = "S"; //B:bottom에 추가, S:Select Line에 추가
-
- if ( ds_main_inqrdetlist_inqr.rowcount == 0 ) {
- sysf_messageBox("질문이", "I004");
- return;
- }
-
- if ( ds_main_inqrdetlist_inqr.rowposition < 0 ) {
- sysf_messageBox("질문을", "C002");
- return;
- }
-
- var qestno = Inqr_Path.getColumn(objects[grd_inqrlist.binddataset].rowposition,"inqrqestno");
- var answno = objects[grd_inqrlist.binddataset].rowcount-1;
- var answflag = ds_main_inqrdetlist_inqr.getColumn(objects[grd_inqrlist.binddataset].rowposition,"inqranswflag");
-
- if ( utlf_isNull(answflag) ) {
- sysf_messageBox("답안속성을", "C002");
- return;
- }else if( answflag == "3" ){
- if( objects[grd_inqrlist.binddataset].rowcount > 1 ){
- sysf_messageBox("입력답안의 수는 하나만", "I006");
- return;
- }
- }
-
- var inqrno = ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno");
- var inqrhistno = ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrhistno");
-
- // model.makeNode("/root/main/inqrdetlist/answ");
- ds_main_inqrdetlist_answ.clearData();
-
- if( pos == "B" ){
- // copyNodeListType("/root/main/inqrdetlist/answ", "/root/main/inqrform/answlist", "after");
- dsf_copyDs(ds_main_inqrdetlist_answ,ds_main_inqrform_answlist,"after");
- answno++;
-
- Answ_Path.setColumn(answno,"answstatus" , "I"); //상태값 셋팅 추가(JJE)
- Answ_Path.setColumn(answno,"answqestno" , qestno);
- Answ_Path.setColumn(answno,"asnwinqrno" , inqrno);
- Answ_Path.setColumn(answno,"answinqrhistno" , inqrhistno);
- Answ_Path.setColumn(answno,"answanswno" , "0"); //화면단에서 키를 지정해주는것이 명확하지 않아 저장 전 순차적으로 생성해줌(2009.05.19 JJE)
- }else if( pos == "S" ){
- // /root/main/tempanswlist
- }
- // model.refresh();
- fSetGrdRowStatus("grd_answlist");
- }
- /****************************************************************************************
- * Function : fInputFreetextAttr
- * Description : 답안 중 기타속성으로 지정한다
- * Argument :
- * return type :
- * Creator :
- ****************************************************************************************/
- function fInputFreetextAttr(){
- var iRow = objects[grd_answlist.binddataset].rowposition;
- var answNo = Answ_Path.getColumn(iRow,"answanswno");
-
- if( answNo == "99999" )
- Answ_Path.setColumn(iRow, "answanswno", "0");
- else{
- // var ftNode = instance1.selectSingleNode("/root/main/inqrdetlist/answ/answlist[answanswno!='"+answNo.text+"' and answanswno=99999]");
- ds_main_inqrdetlist_answ.filter("answanswno!='"+answNo+"' && answanswno==9999");
- if( ds_main_inqrdetlist_answ.rowcount > 0 ){
- sysf_messageBox("이미 기타 답안이 존재합니다.\n기타 답안은 1건만 입력", "I006");
- return;
- }
- Answ_Path.setColumn(iRow, "answanswno", "99999");
- }
-
- if( Answ_Path.getColumn(iRow, "answstatus") != "I" ){
- Answ_Path.setColumn(iRow, "answstatus", "U");
- }
- fSetGrdRowStatus("grd_answlist");
- }
- /***************************************************************************************************
- * Function : fn_rdoEvent_mthd
- * Description :
- * Argument :
- * return type :
- * Creator :
- ***************************************************************************************************/
- function fn_rdoEvent_mthd() {
- ds_main_inqrdetlist_inqrheader.setColumn(0,"inqrflag",rdo_mthd.getData());
- }
- /***************************************************************************************************
- * Function : fn_rdoEvent_mthd2
- * Description :
- * Argument :
- * return type :
- * Creator :
- ***************************************************************************************************/
- function fn_rdoEvent_mthd2() {
- ds_main_inqrdetlist_inqrheader.setColumn(0,"inqrflag",rdo_mthd2.getData());
- }
- /***************************************************************************************************
- * Function : fAddInqrList
- * Description : 속성리스트에서 항목 복사시 질문번호와 답안 번호를 순서에 맞게 재배열
- * Argument :
- * return type :
- * Creator :
- ***************************************************************************************************/
- function fAddInqrList() {
- var inqrnm = ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrnm");
- if (utlf_isNull(inqrnm)) { // 문진을 새로 작성하는 경우
- ds_main_inqrdetlist_inqrheader.copyData(ds_temp_inqrheader);
- ds_main_inqrdetlist_inqrheader.setColumn(0,"inqrno" , ""); // 복사된 질문의 문진번호와 이력번호를 널값 처리 해준다.
- ds_main_inqrdetlist_inqrheader.setColumn(0,"inqrhistno", "");
- var stepno = ds_main_inqrdetlist_inqrheader.getColumn(0,"stepno");
- fStepSetup();
- ds_main_inqrdetlist_inqrheader.setColumn(0,"stepno", stepno);
- }
- ds_main_inqrdetlist_inqr.clearData();
- ds_main_inqrdetlist_answ.clearData();
- var inqrList = ds_temp_inqrlist;
- if (inqrList.rowcount > 0) {
- for(var i = 0; i < inqrList.rowcount ; i++ ) {
- maxqestno = parseInt(maxqestno) + 1;
- // inqrNode = inqrList.item(i);
- var inqrqestno = inqrList.getColumn(i,"inqrqestno");
- var qestno = inqrqestno;
- for(var j = 0; j < objects[grd_inqrlist.binddataset].rowcount ; j++) {
- inqrqestno = ds_main_inqrdetlist_inqr.getColumn(j,"inqrqestno");
- if(maxqestno > inqrqestno) {
- maxqestno = maxqestno;
- } else {
- maxqestno = parseInt(inqrqestno) + 1;
- }
- }
- // model.setValue(inqrNode.selectSingleNode("inqrstatus"), "i");
- inqrList.setColumn(i,"inqrstatus","i");
- var inqrinqrqestno = ds_main_inqrdetlist_inqr.getColumn(ds_main_inqrdetlist_inqr.findRow("inqrqestno",inqrqestno),"inqrqestno");
- if( !utlf_isNull(inqrinqrqestno) ) {
- // model.setValue(inqrNode.selectSingleNode("inqrqestno"),maxqestno);
- inqrList.setColumn(i,"inqrqestno",maxqestno);
- var anwList = ds_temp_answlist;
- for(var k = 0 ; k < anwList.rowcount; k++ ) {
- // answNode = anwList.item(k);
- var answqestno = anwList.getColumn(k,"answqestno");
- var anqestno = answqestno;
- var tempanswqestno = anwList.getColumn(k,"tempanswqestno");
- var tempqestno = tempanswqestno;
-
- if (anqestno == qestno) {
- if (anqestno == tempqestno) {
- // model.setValue(answNode.selectSingleNode("answqestno"), maxqestno);
- anwList.setColumn(k,"answqestno",maxqestno);
- }
- }
- }
- }
- }
- }
- var anwList = ds_temp_answlist;
- for (k = 0 ; k < anwList.rowcount; k++ ) {
- // answNode = anwList.item(k);
- // model.setValue(answNode.selectSingleNode("answstatus"), "I");
- anwList.setColumn(k,"answstatus","I");
- }
- dsf_copyDs(ds_main_inqrdetlist_inqr,ds_temp_inqrlist,"after");
- dsf_copyDs(ds_main_inqrdetlist_answ,ds_temp_answlist,"after");
-
- ds_main_inqrdetlist_inqrheader.setColumn(0,"cpgno" ,ds_main_cond.getColumn(0,"cpgno"));
- ds_main_inqrdetlist_inqrheader.setColumn(0,"cpghistseq" ,ds_main_cond.getColumn(0,"cpghistseq"));
-
- // 추가된 값들은 insert 상태로 보이도록 하고 질문호와 이력번호는 header값과 같도록 셋팅해준다.
- for(var i = 0; i < objects[grd_inqrlist.binddataset].rowcount ; i++) {
- var inqrstatus = ds_main_inqrdetlist_inqr.getColumn(i,"inqrstatus");
- if (inqrstatus == "i") {
- ds_main_inqrdetlist_inqr.setColumn(i,"inqrinqrno" ,ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno"));
- ds_main_inqrdetlist_inqr.setColumn(i,"inqrinqrhistno",ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno"));
- // grd_inqrlist.rowStatus(i) = 1;
- objects[grd_inqrlist.binddataset].setRowType(i,Dataset.ROWTYPE_INSERT);
- }
- }
- for(var i = 0; i < objects[grd_answlist.binddataset].rowcount ; i++) {
- var answstatus = ds_main_inqrdetlist_answ.getColumn(i,"answstatus");
- if (answstatus == "I") {
- ds_main_inqrdetlist_answ.setColumn(i,"answinqrno" ,ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno"));
- ds_main_inqrdetlist_answ.setColumn(i,"answinqrhistno",ds_main_inqrdetlist_inqrheader.getColumn(0,"inqrno"));
- // grd_answlist.rowStatus(i) = 1;
- objects[grd_answlist.binddataset].setRowType(i,Dataset.ROWTYPE_INSERT);
- }
- }
-
- //설정된 스텝번호를 파라메터로 셋팅해서 outline의 아이콘 불이 들어오도록 (2009.04.14)
- frmf_setParameter("SPMQP00300_before_stepno", "0");
- frmf_setParameter("SPMQP00300_after_stepno" , ds_main_inqrdetlist_inqrheader.getColumn(0,"stepno"));
- }]]></Script>
- </Form>
- </FDL>
|