123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMMP01500" position="absolute 0 0 350 677" titletext="CPG 색인관리" oninit="SPMMP01500_oninit" onload="SPMMP01500_onload">
- <Layouts>
- <Layout>
- <Grid position="absolute 0 0 350 677" treeusecheckbox="false" autofit="col" id="treeview1" binddataset="ds_main_indxlist" selecttype="treecell" autosizingtype="col" oncelldblclick="treeview1_oncelldblclick" onrbuttondown="treeview1_onrbuttondown" anchor="all" ondrag="treeview1_ondrag" ondragleave="treeview1_ondragleave" ondragmove="treeview1_ondragmove" ondrop="treeview1_ondrop">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="350"/>
- </Columns>
- <Rows>
- <Row size="18"/>
- </Rows>
- <Band id="body">
- <Cell displaytype="tree" edittype="tree" style="line:0 none #808080ff ;background:EXPR((currow == g_prevmouserow) ? "#ccffff" : "#ffffff");background2:EXPR((currow == g_prevmouserow) ? "#ccffff" : "#ffffff");color:expr:(utlf_isNull(cpgno) || cpgno == "0") ? "#0000FFFF" : "";color2:expr:(utlf_isNull(cpgno) || cpgno == "0") ? "#0000FFFF" : "";" text="bind:indxnm" treestartlevel="1" treelevel="bind:depth" autosizecol="limitmin"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Div position="absolute 95 72 316 128" id="group2" visible="false" class="div_SA2">
- <Layouts>
- <Layout>
- <Edit position="absolute 67 6 214 26" id="input1" anchor="default" imemode="hangul" autoselect="true"/>
- <Edit position="absolute 67 30 124 50" id="input2" visible="false" anchor="default" autoselect="true"/>
- <Edit position="absolute 8 30 63 50" id="input3" class="input_default" visible="false" anchor="default" autoselect="true"/>
- <Button position="absolute 127 30 169 50" id="btn_ok" class="btn2" text="확인" anchor="default" onclick="group2_btn_ok_onclick"/>
- <Button position="absolute 127 30 169 50" id="btn_modify" class="btn2" text="확인" anchor="default" onclick="group2_btn_modify_onclick"/>
- <Button position="absolute 127 30 169 50" id="btn_copyfolder" class="btn2" text="확인" anchor="default" onclick="group2_btn_copyfolder_onclick"/>
- <Static text="색인명" position="absolute 8 6 63 26" align="align:center middle;" id="cap_menu" anchor="default" class="cell_1"/>
- <Button position="absolute 172 30 214 50" id="btn_cancle" class="btn2" text="취소" anchor="default" onclick="group2_btn_cancle_onclick"/>
- </Layout>
- </Layouts>
- </Div>
- <Grid position="absolute 0 594 345 671" id="grd_getindxlist" visible="false" binddataset="ds_main_indexinfo">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="45"/>
- <Column size="51"/>
- <Column size="50"/>
- <Column size="66"/>
- <Column size="73"/>
- <Column size="49"/>
- <Column size="72"/>
- <Column size="41"/>
- <Column size="39"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="indxNO"/>
- <Cell col="1" text="indxSeq"/>
- <Cell col="2" text="indxNM"/>
- <Cell col="3" text="supIndxNO"/>
- <Cell col="4" text="indxRefSeq"/>
- <Cell col="5" text="cpgNo"/>
- <Cell col="6" text="cpgHistSeq"/>
- <Cell col="7" text="depth"/>
- <Cell col="8" text="status"/>
- </Band>
- <Band id="body">
- <Cell text="bind:indxno"/>
- <Cell col="1" text="bind:indxseq"/>
- <Cell col="2" text="bind:indxnm"/>
- <Cell col="3" text="bind:supindxno"/>
- <Cell col="4" text="bind:indxrefseq"/>
- <Cell col="5" text="bind:cpgno"/>
- <Cell col="6" text="bind:cpghistseq"/>
- <Cell col="7" text="bind:depth"/>
- <Cell col="8" text="bind:status"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Div position="absolute 60 175 331 245" id="group1" visible="false" class="div_SA2">
- <Layouts>
- <Layout>
- <Edit position="absolute 80 43 97 63" id="input5" class="input_default" visible="false" anchor="default"/>
- <Edit position="absolute 70 43 85 63" id="input6" visible="false" anchor="default"/>
- <ImageViewer position="absolute 6 15 18 30" id="img1" image="URL('theme://images\icon_n.png')" anchor="default"/>
- <Edit position="absolute 60 43 77 63" id="input7" visible="false" anchor="default"/>
- <Static text="선택하신 CP의 적용일이 존재하지 않습니다. 적용일을 등록하시겠습니까?" position="absolute 23 10 269 38" id="cap_question" anchor="default"/>
- <Calendar position="absolute 70 43 167 63" id="ipt_appdd" dateformat="yyyy-MM-dd" value="null" autoselect="true" anchor="default"/>
- <Button position="absolute 219 43 261 63" id="btn_msgcncl" class="btn2" text="취소" onclick="group1_btn_msgcncl_onclick" anchor="default"/>
- <Button position="absolute 174 43 216 63" id="btn_msgcnfm" class="btn2" text="확인" onclick="group1_btn_msgcnfm_onclick" anchor="default"/>
- <Static text="적용일" position="absolute 8 44 74 64" id="cap_appdd" class="tit_2" anchor="default"/>
- </Layout>
- </Layouts>
- </Div>
- <PopupMenu id="pmn_menu_sup" innerdataset="@ds_supmenu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 240 252 340 298"/>
- <PopupMenu id="pmn_menu_sub" innerdataset="ds_submenu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 240 308 340 394"/>
- <PopupMenu id="pmn_menu_indx" innerdataset="ds_indxmenu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 240 404 340 469"/>
- <PopupMenu id="pmn_menu_tmpindx" innerdataset="ds_tmpindxmenu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 240 480 340 545"/>
- <PopupMenu id="pmn_menu_endindx" innerdataset="@ds_endindxmenu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 240 556 340 601"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="openeruid" type="STRING" size="256"/>
- <Column id="indxdelyn" type="STRING" size="256"/>
- <Column id="skiptopcheck" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="indxdelyn">N</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_temp_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cpgno" type="STRING" size="256"/>
- <Column id="cpghistseq" type="STRING" size="256"/>
- <Column id="cpgflagcd" type="STRING" size="256"/>
- <Column id="cpgnm" type="STRING" size="256"/>
- <Column id="selectindxcd" type="STRING" size="256"/>
- <Column id="selectindxnm" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_main_indxlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태"/>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="depth" type="STRING" size="256" sumtext="깊이(레벨)"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="cpgno" type="STRING" size="256" sumtext="cp/cpg번호"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="image" type="STRING" size="256" sumtext="이미지"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- <Column id="times" type="STRING" size="256" sumtext="회차"/>
- <Column id="orgindxnm" type="STRING" size="256" sumtext="한글명"/>
- </ColumnInfo>
- </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_main_indexinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태"/>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="depth" type="STRING" size="256" sumtext="깊이(레벨)"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="cpgno" type="STRING" size="256" sumtext="cp/cpg번호"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="image" type="STRING" size="256" sumtext="이미지"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- <Column id="times" type="STRING" size="256" sumtext="회차"/>
- <Column id="orgindxnm" type="STRING" size="256" sumtext="한글명"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_formdata_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256"/>
- <Column id="indxno" type="INT" size="256"/>
- <Column id="indxnm" type="STRING" size="256"/>
- <Column id="supindxno" type="INT" size="256"/>
- <Column id="indxrefseq" type="INT" size="256"/>
- <Column id="depth" type="STRING" size="256"/>
- <Column id="indxseq" type="INT" size="256"/>
- <Column id="cpgno" type="STRING" size="256"/>
- <Column id="cpghistseq" type="STRING" size="256"/>
- <Column id="image" type="STRING" size="256"/>
- <Column id="cpgflagcd" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_supmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="label" type="STRING" size="256"/>
- <Column id="func" type="STRING" size="256"/>
- <Column id="level" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="label">새폴더</Col>
- <Col id="func">fFolderAdd</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">-</Col>
- <Col id="func"/>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">폴더붙여넣기</Col>
- <Col id="func">fPasteFolder</Col>
- <Col id="level">0</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_submenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="label" type="STRING" size="256"/>
- <Column id="func" type="STRING" size="256"/>
- <Column id="level" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="label">새폴더</Col>
- <Col id="func">fFolderAdd</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">이름바꾸기</Col>
- <Col id="func">fFolderSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">삭제</Col>
- <Col id="func">fFolderDel</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">-</Col>
- <Col id="func"/>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">폴더복사</Col>
- <Col id="func">fCopyFolder</Col>
- <Col id="level">0</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_indxmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="label" type="STRING" size="256"/>
- <Column id="func" type="STRING" size="256"/>
- <Column id="level" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="label">미등록변경</Col>
- <Col id="func">fIndxSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">종료변경</Col>
- <Col id="func">fToEndIndxSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">-</Col>
- <Col id="func"/>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">삭제</Col>
- <Col id="func">fIndxDel</Col>
- <Col id="level">0</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_tmpindxmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="label" type="STRING" size="256"/>
- <Column id="func" type="STRING" size="256"/>
- <Column id="level" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="label">등록변경</Col>
- <Col id="func">fTmpIndxSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">종료변경</Col>
- <Col id="func">fToEndIndxSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">-</Col>
- <Col id="func"/>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">삭제</Col>
- <Col id="func">fIndxDel</Col>
- <Col id="level">0</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_endindxmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="label" type="STRING" size="256"/>
- <Column id="func" type="STRING" size="256"/>
- <Column id="level" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="label">종료취소</Col>
- <Col id="func">fFromEndIndxSet</Col>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">-</Col>
- <Col id="func"/>
- <Col id="level">0</Col>
- </Row>
- <Row>
- <Col id="label">삭제</Col>
- <Col id="func">fIndxDel</Col>
- <Col id="level">0</Col>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_temp_selecedkind" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="kind" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_TXMMP01501" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="indxnm" type="STRING" size="256" sumtext="색인명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위색인번호"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="색인조회순서"/>
- <Column id="indxno" type="INT" size="256" sumtext="CP/CPG번호"/>
- <Column id="status" type="STRING" size="256" sumtext="저장구분"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="indxseq" type="INT" size="256" sumtext="색인순번"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_temp_savedfolder" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_main_formdata_cpinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="appdd" type="STRING" size="256"/>
- <Column id="cpgno" type="STRING" size="256"/>
- <Column id="cpghistseq" type="STRING" size="256"/>
- <Column id="purpose" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_temp_copysset_copyfolderinfo_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태"/>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="depth" type="STRING" size="256" sumtext="깊이(레벨)"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="cpgno" type="STRING" size="256" sumtext="cp/cpg번호"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="image" type="STRING" size="256" sumtext="이미지"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- <Column id="times" type="STRING" size="256" sumtext="회차"/>
- <Column id="orgindxnm" type="STRING" size="256" sumtext="한글명"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_send_reqdata_srcindx" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="srcindxno" type="STRING" size="256" sumtext="source폴더번호"/>
- <Column id="srcsupindxno" type="STRING" size="256" sumtext="source폴더상위번호"/>
- <Column id="trgindxno" type="STRING" size="256" sumtext="target폴더번호"/>
- <Column id="trgsupindxno" type="STRING" size="256" sumtext="target폴더상위번호"/>
- <Column id="trgindxnm" type="STRING" size="256" sumtext="target폴더명"/>
- <Column id="lastindxrefseq" type="STRING" size="256" sumtext="마지막색인순번"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_send_masterinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cpgnm" type="STRING" size="256" sumtext="cp명"/>
- <Column id="cpgorddeptcd" type="STRING" size="256" sumtext="cp진료과"/>
- <Column id="cpaprvno" type="STRING" size="256" sumtext="cp승인번호"/>
- <Column id="swimlineno" type="STRING" size="256" sumtext="스윔라인수"/>
- <Column id="fcstinhospdayno" type="STRING" size="256" sumtext="예상재원일수"/>
- <Column id="appdd" type="STRING" size="256" sumtext="적용일"/>
- <Column id="todd" type="STRING" size="256" sumtext="종료일"/>
- <Column id="cretdd" type="STRING" size="256" sumtext="생성일"/>
- <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종수정일"/>
- <Column id="cpgmemo" type="STRING" size="256" sumtext="메모"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분(01,02)"/>
- <Column id="cpgno" type="INT" size="256" sumtext="CPG번호"/>
- <Column id="cpghistseq" type="INT" size="256" sumtext="CPG이력순번"/>
- <Column id="rgstrid" type="STRING" size="256" sumtext="등록자ID"/>
- <Column id="status" type="STRING" size="256" sumtext="저장 flag"/>
- <Column id="oldcpgno" type="STRING" size="256" sumtext="이전CP번호"/>
- <Column id="oldcpghistseq" type="STRING" size="256" sumtext="이전CP이력번호"/>
- <Column id="oldtmpyn" type="STRING" size="256" sumtext="이전버전 임시여부"/>
- <Column id="saveflag" type="STRING" size="256" sumtext="저장구분"/>
- <Column id="cpglasthistyn" type="STRING" size="256" sumtext="최종이력여부"/>
- <Column id="tmpyn" type="STRING" size="256" sumtext="임시여부"/>
- <Column id="ocssaveyn" type="STRING" size="256" sumtext="OCS저장여부"/>
- <Column id="ioflagcd" type="STRING" size="256" sumtext="입원/외래구분"/>
- <Column id="cpgtypecd" type="STRING" size="256" sumtext="CPG 종류(과내공유/병원공유)"/>
- <Column id="valusgeyn" type="STRING" size="256" sumtext="평가용CPG여부"/>
- <Column id="valunm" type="STRING" size="256" sumtext="평가명"/>
- <Column id="nm" type="STRING" size="256"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_send_saveinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="purpose" type="STRING" size="256" sumtext="저장목적(경로) 1:생성기, 2:미등록, 3:등록, 4:종료취소, 5:종료"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_send_indxlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태"/>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="depth" type="STRING" size="256" sumtext="깊이(레벨)"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="cpgno" type="STRING" size="256" sumtext="cp/cpg번호"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="image" type="STRING" size="256" sumtext="이미지"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_send_delmasterinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_reqrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_termlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_exclusionlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_droplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_steplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_decisionlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_master" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_checkcpgnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_deptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_scrninfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_mntrinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_inqrinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_limtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_indxlist_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태"/>
- <Column id="indxno" type="INT" size="256" sumtext="코드"/>
- <Column id="indxnm" type="STRING" size="256" sumtext="한글명"/>
- <Column id="supindxno" type="INT" size="256" sumtext="상위코드"/>
- <Column id="indxrefseq" type="INT" size="256" sumtext="조회순서"/>
- <Column id="depth" type="STRING" size="256" sumtext="깊이(레벨)"/>
- <Column id="indxseq" type="INT" size="256" sumtext="인덱스순번"/>
- <Column id="cpgno" type="STRING" size="256" sumtext="cp/cpg번호"/>
- <Column id="cpghistseq" type="STRING" size="256" sumtext="cp/cpg이력번호"/>
- <Column id="image" type="STRING" size="256" sumtext="이미지"/>
- <Column id="cpgflagcd" type="STRING" size="256" sumtext="CPG구분"/>
- </ColumnInfo>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item0" compid="group2.input1" propid="value" datasetid="ds_main_formdata_item" columnid="indxnm"/>
- <BindItem id="item1" compid="group2.input3" propid="value" datasetid="ds_main_formdata_item" columnid="supindxno"/>
- <BindItem id="item2" compid="group2.input2" propid="value" datasetid="ds_main_formdata_item" columnid="indxrefseq"/>
- <BindItem id="item3" compid="group1.ipt_appdd" propid="value" datasetid="ds_main_formdata_cpinfo" columnid="appdd"/>
- <BindItem id="item4" compid="group1.input7" propid="value" datasetid="ds_main_formdata_cpinfo" columnid="purpose"/>
- <BindItem id="item5" compid="group1.input6" propid="value" datasetid="ds_main_formdata_cpinfo" columnid="cpgno"/>
- <BindItem id="item6" compid="group1.input5" propid="value" datasetid="ds_main_formdata_cpinfo" columnid="cpghistseq"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2015-01-12
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2015-01-12 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- include "com_commonxp::comm_main.xjs";
- var folderImg = "../../../com/commonweb/images/icon_folder_close.gif";
- var fileImg = "../../../com/commonweb/images/icon_list.gif";
- var iFocusIndx;
- var sIndxNo = "";
- var tIndxNo = "";
- var g_prevmouserow = -1;
- var arErrorCode = new HashArray();
-
- var oOpener;
- function SPMMP01500_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj);
-
- oOpener = this.getOwnerFrame().form;
- }
- function SPMMP01500_onload(obj:Form, e:LoadEventInfo)
- {
-
- }
- function treeview1_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- var i = ds_main_indxlist.rowposition;
- var row = treeview1.getTreeRow(i);
- if (row > -1) {
- if(obj.getTreeStatus(row) == 0)
- obj.setTreeStatus(row, true);
- else if(obj.getTreeStatus(row) == 1)
- obj.setTreeStatus(row, false);
- }
- // opener 의 uid 로 비교..
- if(!utlf_isNull(ds_temp.getColumn(0, "openeruid"))){
- if( !utlf_isNull(ds_main_indxlist.getColumn(i, "cpgno")) && ds_main_indxlist.getColumn(i, "cpgno") != "0"){
- oOpener.ds_search_cond.setColumn(0, "getflag", "C"); //CP직접 선택
- oOpener.ds_search_cond.setColumn(0, "no", ds_main_indxlist.getColumn(i, "cpgno"));
- oOpener.ds_search_cond.setColumn(0, "seq", ds_main_indxlist.getColumn(i, "cpghistseq"));
- }else{
- oOpener.ds_search_cond.setColumn(0, "getflag", "F"); //진료과 폴더 선택
- oOpener.ds_search_cond.setColumn(0, "no", ds_main_indxlist.getColumn(i, "indxno"));
- oOpener.ds_search_cond.setColumn(0, "seq", ds_main_indxlist.getColumn(i, "indxseq"));
- }
-
- // indxno 혹은 supindxno가 1 이면, tmpyn = 'Y'로 셋팅하여 reqdata에 포함
- if( ds_main_indxlist.getColumn(i, "indxno") == "1" || ds_main_indxlist.getColumn(i, "supfolderno") == "1"){
- oOpener.ds_search_cond.setColumn(0, "tmpyn", "Y");
- }else{
- oOpener.ds_search_cond.setColumn(0, "tmpyn", "N");
- }
- // indxno 혹은 supindxno가 2 이면, delyn = 'Y'로 셋팅하여 reqdata에 포함
- if( ds_main_indxlist.getColumn(i, "indxno") == "2" || ds_main_indxlist.getColumn(i, "supfolderno") == "2"){
- oOpener.ds_search_cond.setColumn(0, "delyn", "Y");
- }else{
- oOpener.ds_search_cond.setColumn(0, "delyn", "N");
- }
-
- //opener.model.setValue("/root/main/search_cond/cpgnm", model.getValue(itemRef + "[" + i + "]/indxnm"));
- ds_temp_reqdata.setColumn(0, "cpgflagcd", ds_main_indxlist.getColumn(i, "cpgflagcd"));
- oOpener.fGetCPGInfo();
-
- oOpener.ds_search_cond.setColumn(0, "delyn", "N");
- } else {
- return;
- }
- }
- function treeview1_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
- {
- if(e.row < 0 || e.col < 0) return;
-
- obj.setFocus();
- grdf_setSelectedCell(obj, e);
-
- obj.oncellclick.fireEvent(obj, new GridClickEventInfo());
-
- iFocusIndx = e.row;
-
- // 20200311 김현석, 권한이 없는 사용자는 팝업 메뉴 안 뜨도록 하기
- //if(oOpener.frmf_checkAuth("X")) {
- if(oOpener.frmf_checkAuth("X") && btn_newver.visible ) {
- if( !utlf_isNull(ds_main_indxlist.getColumn(e.row, "cpgno")) && ds_main_indxlist.getColumn(e.row, "cpgno") != "0"){
- ds_main_formdata_item.clearData();
- ds_main_formdata_item.addRow();
-
- if(ds_main_indxlist.getColumn(e.row, "supfolderno") == "1") { // 미등록 색인은 등록변경만 가능하도록! tmpindxmenu
- pmn_menu_tmpindx.trackPopup(e.screenX,e.screenY);
- }else if(ds_main_indxlist.getColumn(e.row, "supfolderno") == "2") { // 미등록 색인은 등록변경만 가능하도록! tmpindxmenu
- pmn_menu_endindx.trackPopup(e.screenX,e.screenY);
- }else{
- pmn_menu_indx.trackPopup(e.screenX,e.screenY);
- }
- } else {
- var selIndxNo = ds_main_indxlist.getColumn(e.row, "indxno");
- if( selIndxNo == "1" || selIndxNo == "2" ) {
- return;
- }
- if( ds_main_indxlist.getColumn(e.row, "supindxno") == "0" ) {
- pmn_menu_sup.trackPopup(e.screenX,e.screenY);
- } else {
- pmn_menu_sub.trackPopup(e.screenX,e.screenY);
- }
- }
-
- var itemNodeDepth = ds_main_indxlist.getColumn(e.row, "depth");
-
- ds_main_formdata_item.clearData();
- ds_main_formdata_item.addRow();
-
- ds_main_formdata_item.setColumn(0, "depth", parseInt(itemNodeDepth) + 1);
- }
- }
- function pmn_menu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
- {
- eval(e.id + "()");
- }
- function group2_btn_copyfolder_onclick(obj:Button, e:ClickEventInfo)
- {
- //확인버튼3 : 폴더 복사/붙여넣기 시, copy 폴더명 입력 후 저장
- if( utlf_isNull(sIndxNo) ){
- sIndxNo = iFocusIndx;
- }
-
- if( sysf_messageBox("선택한 폴더를 붙여넣기", "Q004") != "6" ){
- group2.visible = false;
- return false;
- }
- if( ds_temp_copysset_copyfolderinfo_item.rowcount == 0 ){
- group2.visible = false;
- sysf_messageBox("복사한 폴더가", "E001");
- return;
- }
- if( utlf_isNull(ds_main_formdata_item.getColumn(0, "indxnm")) ){
- sysf_messageBox("새로운 폴더명을", "C001");
- return;
- }
- // /root/main/indxlist/itemlist/item <- /root/temp/copysset/copyfolderinfo/item
- var selIndxno = ds_temp_copysset_copyfolderinfo_item.getColumn(0, "indxno");
- var selSupindxno = ds_temp_copysset_copyfolderinfo_item.getColumn(0, "supindxno");
- var trgindxno = ds_main_indxlist.getColumn(sIndxNo, "indxno");
-
- // model.removeNodeset("/root/send");
- // model.makeNode("/root/send/masterinfo");
- // model.makeNode("/root/send/reqdata");
- // model.makeNode("/root/send/itemlist");
-
- //색인 정보 구성
- ds_temp_savedfolder.clearData();
-
- ds_send_reqdata_srcindx.setColumn(0, "srcindxno" , selIndxno);
- ds_send_reqdata_srcindx.setColumn(0, "srcsupindxno", selSupindxno);
- ds_send_reqdata_srcindx.setColumn(0, "trgindxno" , trgindxno);
- ds_send_reqdata_srcindx.setColumn(0, "trgsupindxno", ds_main_indxlist.getColumn(sIndxNo, "supindxno"));
- ds_send_reqdata_srcindx.setColumn(0, "trgindxnm" , ds_main_formdata_item.getColumn(0, "indxnm")); //입력한폴더명
-
- var trgLastChildItemIndex = getLastChildItemIndex(sIndxNo, treeview1); // 드롭 아이템이 속한 아이템셋의 마지막 인덱스
- ds_send_reqdata_srcindx.setColumn(0, "lastindxrefseq" , ds_main_indxlist.getColumn(trgLastChildItemIndex, "indxrefseq")); //마지막 색인순번
-
- var oParam = {};
- oParam.id = "TXMMP01502";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqExeSaveAsFolder";
- oParam.inds = "req=ds_send_reqdata_srcindx";
- oParam.async = false;
- oParam.callback = "cf_TXMMP01502";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMMP01502") > -1) {
- group2.visible = false;
- var flag = oOpener.ds_search_cond.getColumn(0, "cpgflagcd");
- fGetIndxList(flag);
-
- //trgindxno와 동일한 색인번호를 갖는 indx를 펼친다
- var cnt = fSrchItemIndxNo( trgindxno );
- grdf_expandTree(treeview1, cnt, true);
-
- //복사 원본폴더 정보 노드 리셋
- ds_temp_copysset_copyfolderinfo_item.clearData();
- }
- }
- function cf_TXMMP01502(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function group2_btn_modify_onclick(obj:Button, e:ClickEventInfo)
- {
- //확인버튼2 : 폴더 추가.
- var iRow = iFocusIndx;
- ds_main_indxlist.setColumn(iRow, "indxnm", ds_main_formdata_item.getColumn(0, "indxnm"));
- group2.visible = false;
-
- fSaveFolderIndx ( parseInt(iRow), "u" );
- }
- function group2_btn_ok_onclick(obj:Button, e:ClickEventInfo)
- {
- //확인버튼1 : 색인저장, 폴더명 수정...
- var iRow = iFocusIndx;
-
- ds_main_formdata_item.setColumn(0, "status", "i");
-
- var srcLastChildItemIndex = getLastChildItemIndex( iFocusIndx , treeview1 );
- var roc = parseInt(srcLastChildItemIndex) + 1;
- //새로운 아이템을 추가한다
- var nRow = ds_main_indxlist.insertRow(parseInt(roc));
- ds_main_indxlist.copyRow(nRow, ds_main_formdata_item, 0);
-
- group2.visible = false;
- if(ds_temp_selecedkind.getColumn(0, "kind") == "F"){
- //만일 추가한 아이템이 폴더라면 IndxNo를 얻어오기 위해 저장을 선행한다.
- fSaveFolderIndx( parseInt(roc), "i" );
-
- ds_main_indxlist.rowposition = parseInt(roc);
-
- var falg = oOpener.ds_search_cond.getColumn(0, "cpgflagcd");
- fGetIndxList(falg);
- } else {
- //추가한 아이템이 인덱스일 경우는 상태만 바꿔놓고 나중에 일괄 저장한다.
- //새로 생성된 아이템을 선택하고 체크한다.
- ds_main_indxlist.rowposition = parseInt(roc);
-
- //드롭 후 변경 내용을 바로 저장한다
- var flag = oOpener.ds_search_cond.getColumn(0, "cpgflagcd");
- fSaveCpgIndxList();
- fGetIndxList(flag);
- }
- }
- function group2_btn_cancle_onclick(obj:Button, e:ClickEventInfo)
- {
- group2.visible = false;
- }
- function treeview1_ondrag(obj:Grid, e:GridDragEventInfo)
- {
- if(e.row < 0 || e.col < 0) return false;
-
- if(!oOpener.frmf_checkAuth("X")) return false;
-
- iFocusIndx = e.row;
-
- return true;
- }
- function treeview1_ondragleave(obj:Grid, e:DragEventInfo)
- {
- g_prevmouserow = -1;
- }
- function treeview1_ondragmove(obj:Grid, e:GridDragEventInfo)
- {
- if(e.row != g_prevmouserow)
- g_prevmouserow = e.row;
- }
- function treeview1_ondrop(obj:Grid, e:GridDragEventInfo)
- {
- if(g_prevmouserow == -1) return false;
-
- if(oOpener.frmf_checkAuth("X")) {
- if( !fOnDropEvnt(e.row) ){
- }
-
- g_prevmouserow = -1;
- }
- }
- //초기화 및 색인을 조회한다.
- function fInitialize() {
- // model.removeNodeset("/root/temp/setdata/item");
- // model.removeNodeset("/root/temp/poollist/pool/item");
- // treeview1.refresh();
- //
- // model.removeNodeset("/root/temp/reqdata");
- // copyNodeListType("/root/temp", "/root/temp/reqdata", "after", model, opener.model);
-
- ds_temp_reqdata.clearData();
- ds_temp_reqdata.addRow();
-
- selectIndxCd = ds_main_indxlist.rowposition;
- flagcd = ds_temp_reqdata.getColumn(0, "cpgflagcd");
-
- // if( instance1.selectSingleNode("/root/temp/reqdata/reqdata") != null ){
- //
- // if( !isNull("/root/temp/reqdata/reqdata/cpgno") ){
- // model.resetInstanceNode("/root/send/reqdata");
- // model.copyNode("/root/send/reqdata", "/root/temp/reqdata/reqdata");
- // ds_main_indxlist.rowposition = selectIndxCd;
- //
- // submit("TXMMP01501", false);
- // }
- // }
-
- fGetIndxList("A");
-
- ds_main_indxlist.rowposition = selectIndxCd;
- }
- //CP/CPG 색인을 조회한다.
- function fGetIndxList(flag) {
- //opener 에서 받아온 cpgflagcd 를 input 으로 한다.
- //model.resetInstanceNode("/root/send/reqdata");
- ds_main_indxlist.clearData();
- ds_send_reqdata.copyData(ds_temp_reqdata);
-
- dsf_makeValue(ds_send_reqdata, "authflag", "string", oOpener.ds_search_cond.getColumn(0, "authflag"));
-
- if( oOpener.ds_search_cond.getColumn(0, "authflag") != "M" && !utlf_isNull(oOpener.ds_search_cond.getColumn(0, "cpgorddeptcd")) ){
- dsf_makeValue(ds_send_reqdata, "cpgorddeptcd", "string", oOpener.ds_search_cond.getColumn(0, "cpgorddeptcd"));
- dsf_makeValue(ds_send_reqdata, "cpgorddeptnm", "string", oOpener.Div00.cmb_cpgorddeptcd.text);
- }else{
- dsf_makeValue(ds_send_reqdata, "cpgorddeptcd", "string", "");
- }
-
- /*if(flag == "F"){
- model.makeValue("/root/send/reqdata/cpgflagcd", opener.model.getValue("/root/main/search_cond/cpgflagcd"));
- }else if(flag == "A" || flag == "ALL" || isNull(flag) ){
- model.makeValue("/root/send/reqdata/cpgflagcd", "ALL");
- //model.makeValue("/root/send/reqdata/authdept", opener.window.javascript.dutPlceCd );
- }*/
- dsf_makeValue(ds_send_reqdata, "cpgflagcd", "string", oOpener.ds_search_cond.getColumn(0, "cpgflagcd")); //flag에 상관없이 조건에 맞는 리스트를 조회하도록 2010.04.07
-
- dsf_makeValue(ds_send_reqdata, "mode", "string", "A"); //all index list
-
- //[요청번호: 11937] 권한 설정을 병원별로 달리 설정하여 부여하도록 변경함에 따라 미등록CP도 함께 조회 (2010.03.26 JJE)
- if(oOpener.frmf_checkAuth("X") ){
- //model.makeValue("/root/send/reqdata/tmpyn", opener.model.getValue("/root/main/search_cond/tmpyn") );
- //model.makeValue("/root/send/reqdata/delyn", opener.model.getValue("/root/main/search_cond/delyn") );
- dsf_makeValue(ds_send_reqdata, "tmpyn", "string", "Y");
- dsf_makeValue(ds_send_reqdata, "delyn", "string", "Y");
- }
-
- var oParam = {};
- oParam.id = "TRMMP01501";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqGetCPGIndxList";
- oParam.inds = "req=ds_send_reqdata";
- oParam.outds = "ds_main_indexinfo=item";
- oParam.async = false;
- oParam.callback = "cf_TRMMP01501";
- tranf_submit(oParam);
-
- ds_temp.setColumn(0, "indxdelyn", "N");
- }
- function cf_TRMMP01501(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
-
- // 조회 결과를 /root/main/indxlist/itemlist 로 복사
- // model.copyNode("/root/main/indxlist/itemlist", "/root/main/srcindxinfo/itemlist");
- // treeview1.rebuild();
- ds_main_indexinfo.addColumn("status", "string");
-
- ds_main_indxlist.copyData(ds_main_indexinfo);
- fImageMapping();
- ds_temp_reqdata.setColumn(0, "cpgflagcd", flagcd);
- if( oOpener.ds_search_cond.getColumn(0, "authflag") == "M" ){
- //2008.12.13 색인 삭제 후 삭제된 색인의 진료과 폴더로 focus 이동
- if( ds_temp.getColumn(0, "indxdelyn") == "Y" ){
- var selSupIndxNo = ds_main_indexinfo.getColumn(0, "supfolderno");
- }else{
- var selSupIndxNo = "1";
- }
-
-
- //관리자 모드일 경우, 모든 폴더를 닫고, 미등록 폴더만 펼친다
- for( var i = ds_main_indxlist.rowcount - 1; i >= 0; i--){
- if( ds_main_indxlist.getColumn(i, "indxno") == selSupIndxNo ){
- grdf_expandTree(treeview1, i, true);
- return;
- }
- }
- }else{
- //조회 모드일 경우, 해당과 폴더만 펼친다
- grdf_expandDepth(treeview1, 1);
-
- //사용자(진료의)가 마스터 권한을 갖을 때, 미등록, 종료 폴더는 닫힌 상태에서 초기화 (2010.03.30 JJE)
- if( oOpener.frmf_checkAuth("X") == true ){
- var tmp_IndxNo = fSrchItemIndxNo("1");
- var del_IndxNo = fSrchItemIndxNo("2");
-
- if( tmp_IndxNo > -1 ) {
- var row = treeview1.getTreeRow(tmp_IndxNo)
- if(row > -1 && !treeview1.isTreeLeafRow(row, false))
- treeview1.setTreeStatus(row, false);
- }
-
- if( del_IndxNo > -1 ) {
- var row = treeview1.getTreeRow(del_IndxNo)
- if(row > -1 && !treeview1.isTreeLeafRow(row, false))
- treeview1.setTreeStatus(row, false);
- }
- }
- }
- }
- //아이템에 이미지를 매핑시킨다.
- function fImageMapping() {
- var indxCnt = ds_main_indxlist.rowcount;
-
- for(var i = 0; i < indxCnt; i++){
- //depth가 2이상인 폴더 존재시, 상위색인번호가 일치하지 않기 때문에, 최상위폴더 번호로 통일
- if( ds_main_indxlist.getColumn(i, "supindxno") == "0" && ds_main_indxlist.getColumn(i, "cpgno") == "0" ){
- dsf_makeValue(ds_main_indxlist, "supfolderno", "string", ds_main_indxlist.getColumn(i, "indxno"), i);
- }else{
- //var supno = model.getValue(itemRef + "[" + i + "]/supindxno");
- dsf_makeValue(ds_main_indxlist, "supfolderno", "string", ds_main_indxlist.getColumn((i - 1), "supfolderno"), i);
- }
- }
- }
- //폴더를 삭제한다.
- function fFolderDel() {
- var focusIndex = iFocusIndx;
- var iRow = parseInt(focusIndex); //선택한 인스턴스의 인덱스
- //바로 데이터를 삭제하는 서브밋을 실행한다.
- if( fSaveFolderIndx( iRow , "d" ) == false ){
- return;
- }
-
- //직접 노드를 삭제
- ds_main_indxlist.deleteRow(iRow);
- }
- /**
- * @group :
- * @ver : 2007.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : item의 값(indxno)으로 아이템의 tree index 위치를 찾아낸다
- * @param : itemVal : 찾으려는 값
- * @return : cnt : 위치
- * @---------------------------------------------------
- */
- function fSrchItemIndxNo( itemVal ){
- if( utlf_isNull(itemVal) ) return -1;
-
- return ds_main_indxlist.findRow("indxno", itemVal);
- }
- /**
- * @group :
- * @ver : 2008.06
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 폴더를 복사한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCopyFolder(){
- ds_temp_copysset_copyfolderinfo_item.clearData();
- ds_temp_copysset_copyfolderinfo_item.addRow();
- ds_temp_copysset_copyfolderinfo_item.copyRow(0, ds_main_indxlist, iFocusIndx);
- }
- /**
- * @group :
- * @ver : 2008.06
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 폴더를 붙여넣는다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPasteFolder(){
- if( ds_temp_copysset_copyfolderinfo_item.rowcount == 0){
- sysf_messageBox("복사하려는 원본 폴더를", "C002");
- return;
- }
-
- group2.cap_menu.text = "폴더명";
-
- group2.btn_copyfolder.visible = true;
- group2.btn_modify.visible = false;
- group2.btn_ok.visible = false;
-
- fShowWndIptBox();
-
- /*
- if( isNull(sIndxNo) ){
- sIndxNo = iFocusIndx; //sIndxNo = treeview1.focusIndex;
- }
-
- var selIndxno = model.getValue(itemRef + "[" + (sIndxNo + 1) + "]/indxno");
- var selSupindxno = model.getValue(itemRef + "[" + (sIndxNo + 1) + "]/supindxno");
-
- var srcNodeList = instance1.selectNodes(itemRef + "[supindxno='"+ selIndxno +"']");
- for( var i=0; i<srcNodeList.length; i++ ){
- var node = srcNodeList.item(i);
- var
- }
- */
- }
- /**
- * @group :
- * @ver : 2007.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CP/CPG의 변경 이력을 조회한다.
- * @param :
- * @return : true/false
- * @---------------------------------------------------
- */
- function fSaveCpgIndxList( getData ){
- var amountIndxCnt = ds_main_indxlist.rowcount;
- var iStatus; //트리의 i번째 인덱스의 상태값
- var getindxlistRowCnt = 0; //데스티네이션 인덱스의 컬럼 포인트
- var saveIndxlist = "";
- var saveIndxHeader;
-
- ds_send_saveinfo.clearData();
-
- ds_send_indxlist.clearData();
- ds_send_indxlist_temp.clearData();
-
- ds_send_masterinfo.clearData();
- ds_send_masterinfo.addRow();
-
-
- //색인 노드셋을 리퀘스트데이터에 함께 보낸다.
- if( utlf_isNull(getData) ){
- ds_main_indexinfo.clearData();
-
- //ivw_indxmngt 의 색인트리에서 변경 데이터만 copy 해온다.
- for(var i = 0; i < amountIndxCnt; i++){
- iStatus = ds_main_indxlist.getColumn(i, "status");
-
- if(iStatus == "i" || iStatus == "u" || iStatus == "d") {
- getindxlistRowCnt = ds_main_indexinfo.addRow();
- ds_main_indexinfo.copyRow(getindxlistRowCnt, ds_main_indxlist, i);
-
- ds_temp_reqdata.setColumn(0, "cpgno", ds_main_formdata_cpinfo.getColumn(0, "cpgno"));
- ds_temp_reqdata.setColumn(0, "cpghistseq", ds_main_formdata_cpinfo.getColumn(0, "cpghistseq"));
-
- var nRow = ds_send_indxlist_temp.addRow();
- ds_send_indxlist_temp.copyRow(nRow, ds_main_indexinfo, getindxlistRowCnt);
- var nodelist = dsf_getDsCSV(ds_send_indxlist_temp, nRow);
- saveIndxlist = saveIndxlist + "▩" + nodelist.split("▩")[1];
- saveIndxHeader = nodelist.split("▩")[0];
- }
- }
- amountRows = ds_main_indexinfo.rowcount;
- }else{
-
- var src_supindxno = ds_main_indxlist.getColumn(sIndxNo, "supindxno");
- var trg_supindxno = ds_main_indxlist.getColumn(tIndxNo, "supindxno");
-
- //임시 폴더에 보이는 cp를 동일부서가 아닌 타부서로 이동할 경우, 색인을 save as(release 를 증가)
- ds_send_masterinfo.setColumn(0, "appdd", ds_main_formdata_cpinfo.getColumn(0, "appdd"));
- ds_send_masterinfo.setColumn(0, "cpgno", ds_main_formdata_cpinfo.getColumn(0, "cpgno"));
- ds_send_masterinfo.setColumn(0, "cpghistseq", ds_main_formdata_cpinfo.getColumn(0, "cpghistseq"));
- ds_send_masterinfo.setColumn(0, "nm", ""); //필요없는 값...
-
- saveIndxlist = getData;
- amountRows = 1;
- }
-
- ds_send_saveinfo.addRow();
- ds_send_saveinfo.setColumn(0, "purpose", ds_main_formdata_cpinfo.getColumn(0, "purpose")); //2008.06.19 추가
-
- var header = "m▦indxno▦indxnm▦supindxno▦indxrefseq▦depth▦indxseq▦cpgno▦cpghistseq▦image▦cpgflagcd";
- if(amountRows > 0 ) {
- dsf_setCSVToDs("ds_send_indxlist", header + saveIndxlist + "▩");
- ds_send_indxlist_temp.clearData();
- ds_send_masterinfo.setColumn(0, "status", "");
-
- if( !(utlf_isNull(getData)) ){
- ds_send_masterinfo.setColumn(0, "status", "u");
- }
- //2줄 주석
- //model.makeValue("/root/send/masterinfo/cpgno", model.getValue("/root/temp/reqdata/cpgno"));
- //model.makeValue("/root/send/masterinfo/cpghistseq", model.getValue("/root/temp/reqdata/cpghistseq"));
-
- dsf_setDefaultVal(ds_send_saveinfo, "purpose:1");
- dsf_setDefaultVal(ds_send_masterinfo, "cpgtypecd:D,valusgeyn:N");
-
- var oParam = {};
- oParam.id = "TXMQP00601";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqExeCPGInfo";
- oParam.inds = "saveinfo=ds_send_saveinfo masterinfo=ds_send_masterinfo delmasterinfo=ds_send_delmasterinfo reqrlist=ds_send_reqrlist termlist=ds_send_termlist exclusionlist=ds_send_exclusionlist droplist=ds_send_droplist indxlist=ds_send_indxlist steplist=ds_send_steplist decisionlist=ds_send_decisionlist master=ds_send_master checkcpgnm=ds_send_checkcpgnm deptlist=ds_send_deptlist scrninfo=ds_send_scrninfo mntrinfo=ds_send_mntrinfo inqrinfo=ds_send_inqrinfo limtinfo=ds_send_limtinfo";
- oParam.async = false;
- oParam.callback = "cf_TXMQP00601";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMQP00601") > -1) {
- return true;
- } else {
- return false;
- }
- }
- }
- function cf_TXMQP00601(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- //폴더를 추가하는 메뉴그룹을 연다. ( '확인' 이벤트를 실행하면 DB에 저장한다.)
- function fFolderAdd() {
- //추가되는 색인의 조회순서는 Default로 선택한 아이템의 가장 마지막 차일드 아이템 조회순서(indxrefseq) + 1 이다.
- var prtIndx = iFocusIndx;
- var srcLastChildItemIndex = getLastChildItemIndex( prtIndx , treeview1 );
- var lastNodeSeq = ds_main_indxlist.getColumn(srcLastChildItemIndex, "indxrefseq");
-
- ds_main_formdata_item.setColumn(0, "indxrefseq", (parseInt(lastNodeSeq) + 1) ); //마지막 노드의 조회순서+1
-
- ds_main_formdata_item.setColumn(0, "supindxno", ds_main_indxlist.getColumn(prtIndx, "indxno"));
- ds_main_formdata_item.setColumn(0, "indxnm", "");
- ds_main_formdata_item.setColumn(0, "image", folderImg);
-
- iFocusIndx = prtIndx; //전역변수 iFocusIndx에 포커스인덱스를 넣는다.
-
- group2.cap_menu.text = "폴더명";
-
- group2.btn_ok.visible = true;
- group2.btn_modify.visible = false;
- group2.btn_copyfolder.visible = false;
-
- group2.input1.enable = true;
-
- fShowWndIptBox();
-
- ds_temp_selecedkind.setColumn(0, "kind", "F");
- }
- //폴더를 수정하는 동시에, DB에 저장한다.
- function fFolderSet(){
-
- if( ds_main_indxlist.getColumn(iFocusIndx, "supindxno") == "0" ){
- sysf_messageBox("최상위 폴더명은 수정", "E001");
- return;
- }
-
- ds_main_formdata_item.setColumn(0, "indxnm", ds_main_indxlist.getColumn(iFocusIndx, "indxnm"));
-
- group2.cap_menu.text = "폴더명";
- group2.btn_ok.visible = false;
- group2.btn_modify.visible = true;
- group2.btn_copyfolder.visible = false;
- group2.input1.enable = true;
-
- fShowWndIptBox();
-
- ds_temp_selecedkind.setColumn(0, "kind", "F");
- }
- //물어보는 팝업을 재구성
- function fRefreshMsgBox( purpose ){
- ds_main_formdata_cpinfo.setColumn(0, "purpose", purpose);
-
- switch ( purpose ){
- case "2" :
- group1.cap_question.text = "선택하신 CP의 등록을 취소하시겠습니까?"; //등록->미등록
- group1.cap_appdd.visible = false;
- group1.ipt_appdd.visible = false;
- break;
- case "3" :
- group1.cap_question.text = "선택하신 CP의 적용일이 존재하지 않습니다.\n적용일을 등록하시겠습니까?"; //미등록->등록
- group1.cap_appdd.visible = true;
- group1.ipt_appdd.visible = true;
- break;
- case "4" :
- group1.cap_question.text = "선택하신 CP의 종료를 취소하시겠습니까?"; //종료->정상
- group1.cap_appdd.visible = false;
- group1.ipt_appdd.visible = false;
- break;
- case "5" :
- group1.cap_question.text = "선택하신 CP를 종료하시겠습니까?"; //정상->종료
- group1.cap_appdd.visible = false;
- group1.ipt_appdd.visible = false;
- break;
- }
-
- group1.visible = true;
- }
- //등록 -> 미등록 변경
- function fIndxSet(){
- /*
- //COPY SET을 뒤져서 해당 노드가 있다면 COPY SET 인스턴스 데이터 바로 수정, 없다면 Y일때는 'U'라는 플래그로 등록, 'N'이라면 트리에서만 수정
- //상태가 'I / U' 이면 COPY SET의 해당 인스턴스 데이터를 수정, 상태가 ' Y'이면 'U'라는 status로 COPY 셋에 등록
- if(parseInt(event.clientY) > 590 ){
- group2.attribute("top") = "590px";
- } else{
- group2.attribute("top") = event.clientY;
- }
- group2.attribute("left") = 100;
- group2.attribute("height") = 55;
- model.setValue("/root/main/formdata/item/indxnm", model.getValue(itemRef + "[" + (iFocusIndx + 1) + "]/indxnm"));
- input1.refresh();
- cap_menu.attribute("text") = "색인명";
- btn_ok.attribute("visibility") = "hidden";
- btn_modify.attribute("visibility") = "visible";
- input1.disabled = false;
- model.setFocus("input1");
- model.setValue("/root/temp/selecedkind/kind", "i");
- */
- ds_temp.setColumn(0, "skiptopcheck", "Y");
- fRefreshMsgBox("2");
- }
- //미등록 -> 등록 변경
- function fTmpIndxSet(){
- ds_temp.setColumn(0, "skiptopcheck", "Y");
- fRefreshMsgBox("3");
- }
- //종료 -> 종료취소
- function fFromEndIndxSet(){
- ds_temp.setColumn(0, "skiptopcheck", "Y");
- fRefreshMsgBox("4");
- }
- //일반 -> 종료
- function fToEndIndxSet(){
- ds_temp.setColumn(0, "skiptopcheck", "Y");
- fRefreshMsgBox("5");
-
- }
- //현재 아이템 인덱스의 부모 아이템 인덱스를 반환 한다
- function getParentItemIndex(itemIndex, obj:Grid) {
- //
- // var curDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 1) + "]/depth");
- // var parentDepthValue = curDepthValue - 1;
- //
- // do {
- // itemIndex--;
- // curDepthValue = model.getValue(treeItemNodeSet + "[" + (itemIndex + 1) + "]/depth");
- // } while(curDepthValue != parentDepthValue)
- //
- return obj.getTreeParentRow(itemIndex, true);
- }
- //현재 아이템 인덱스의 자식 아이템중 마지막 아이템 인덱스를 반환 한다
- function getLastChildItemIndex(itemIndex, obj:Grid) {
- if(!obj.isTreeLeafRow(itemIndex)) {
- var oDataset = eval(obj.binddataset);
-
- var curDepthValue = oDataset.getColumn(itemIndex + 1, "depth");
- var childDepthValue = oDataset.getColumn(itemIndex + 2, "depth");
-
- itemIndex++;
-
- while(curDepthValue <= childDepthValue) {
- childDepthValue = oDataset.getColumn(itemIndex + 2, "depth");
- itemIndex++;
- }
- }
- return itemIndex;
- }
- //폴더 색인을 추가/수정/삭제한 경우 바로 저장한다
- function fSaveFolderIndx( indx, status ){
- var curIndxNo = ds_main_indxlist.getColumn(indx, "indxno");
- var iSupIndxNo = ds_main_indxlist.getColumn(indx, "supindxno");
-
- if( status == "d" ){
- //var curIndxNo = indx+1;
- //하위 CP를 모두 종료CP로 업데이트 하기로 함. 삭제 확인 msg 뜨움. (2008.10.07)
- // ===========> 아직 CP 및 CP색인 update 처리 미개발 (10/10 개발 예정)
- if( ds_main_indxlist.getCaseCount("supindxno == '" + curIndxNo + "'") > 0 ){
- if( sysf_messageBox ("폴더를 삭제하면 하위 항목이 모두 삭제됩니다.\n\n정말로 폴더를", "Q001") == 7 ){
- group1.visible = false;
- tIndxNo = iFocusIndx;
- return false;
- }
- if( ds_main_indxlist.getCaseCount("supindxno == '" + curIndxNo + "' && cpgno == '0'") > 0 ){
- sysf_messageBox ("하위 폴더가 존재합니다.\n\n하위 폴더를 먼저 삭제", "I008");
- group1.visible = false;
- tIndxNo = iFocusIndx;
- return false;
- }
- }
- }
-
- ds_temp_savedfolder.clearData(); //조회해온 데이터 받아올 인스턴스
-
- ds_TXMMP01501.clearData();
- ds_TXMMP01501.addRow();
- ds_TXMMP01501.copyRow(0, ds_main_indxlist, parseInt(indx));
-
- dsf_makeValue(ds_TXMMP01501, "status", "string", status );
-
- var oParam = {};
- oParam.id = "TXMMP01501";
- oParam.service = "prcpbaseapp.CpMngt";
- oParam.method = "reqExeIndxInfo";
- oParam.inds = "req=ds_TXMMP01501";
- oParam.outds = "ds_temp_savedfolder=item";
- oParam.async = false;
- oParam.callback = "cf_TXMMP01501";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMMP01501") > -1) {
- if( status == "d" ){
- //삭제시에는 tree 전체 재조회
- fGetIndxList("A");
-
- //focus 진료과 폴더로 지정
- var findRow = ds_main_indxlist.findRow("indxno", iSupIndxNo);
- if(findRow > -1) {
- grdf_expandTree(treeview1, findRow, true);
- return false;
- }
- }else{
- if( !utlf_isNull(ds_temp_savedfolder.getColumn(0, "indxno")) ){
- ds_main_indxlist.setColumn(parseInt(indx), "indxno", ds_temp_savedfolder.getColumn(0, "indxno"));
- // ds_main_indxlist.setColumn(parseInt(indx), "indxnm", ds_temp_savedfolder.getColumn(0, "indxnm")); // 비지니스 단에서 'indxno' 만 넘기고 있음
- if( status == "u" || status == "i" ){
- ds_main_indxlist.setColumn(parseInt(indx), "status", "");
- }
- ds_main_indxlist.applyChange();
- }
- }
- }
- }
- function cf_TXMMP01501(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- //Drop 이벤트 시 처리
- function fOnDropEvnt(trgIndex) {
- if( oOpener.ds_search_cond.getColumn(0, "authflag") == "S" ){
- return false;
- }
-
- // 드래그 시점의 아이템
- var srcIndex = ds_main_indxlist.rowposition;
- var org_srcIndex = srcIndex;
- var org_srcDepth = ds_main_indxlist.getColumn(srcIndex, "depth");
- var org_srcIndxNo = ds_main_indxlist.getColumn(srcIndex, "indxno"); //색인 no
- var org_srcSupIndxNo = ds_main_indxlist.getColumn(srcIndex, "supindxno"); //상위 indx no
- var org_srcSupFolderNo = ds_main_indxlist.getColumn(srcIndex, "supfolderno"); //최상위 폴더 no
- var srcValue = org_srcIndxNo;
- sIndxNo = srcIndex;
- if( ds_main_indxlist.getColumn(srcIndex, "cpgflagcd") == "01" )
- var org_cpgFlag = "CP";
- else if( ds_main_indxlist.getColumn(srcIndex, "cpgflagcd") == "02" )
- var org_cpgFlag = "CPG";
- else var org_cpgFlag = "폴더";
-
- ds_main_formdata_cpinfo.setColumn(0, "cpgno", ds_main_indxlist.getColumn(srcIndex, "cpgno"));
- ds_main_formdata_cpinfo.setColumn(0, "cpghistseq", ds_main_indxlist.getColumn(srcIndex, "cpghistseq"));
- ds_main_formdata_cpinfo.setColumn(0, "purpose", "6"); //이동
-
- // 드롭 시점의 아이템
- var org_trgIndex = trgIndex;
- tIndxNo = trgIndex;
- var org_trgIndxNo = ds_main_indxlist.getColumn(trgIndex, "indxno"); //색인 no
- var org_trgSupIndxNo = ds_main_indxlist.getColumn(trgIndex, "supindxno"); //상위 indx no
- var org_trgSupFolderNo = ds_main_indxlist.getColumn(trgIndex, "supfolderno"); //최상위 폴더 no
-
- if(org_srcIndex == org_trgIndex){
- //더블클릭 시, 약간의 이동이 있어 드롭 이벤트를 실행했지만, 같은 index 라면, 더블클릭으로 간주한다
- treeview1.oncelldblclick.fireEvent(treeview1, new GridClickEventInfo());
- return false;
- }
-
- if( org_srcDepth == "1"){
- sysf_messageBox("최상위 폴더는 하위로 이동할 수", "I004");
- return false;
- }
-
- //purpose 처리
- if( org_srcSupFolderNo == "1" ){ //미등록->등록
- /*
- messageBox("임시 파일은 이동할 수", "I004");
- preItem = treeview1.item(trgIndex);
- preItem.attribute("background-color") = "#ffffff";
- return false;
- */
- if( org_srcSupIndxNo == org_trgIndxNo || org_srcSupIndxNo == org_trgSupFolderNo ){
- //model.setValue("/root/main/formdata/cpinfo/purpose", "3");
- //group1.visible = true;
-
- fTmpIndxSet();
- return false;
- }else{
- sysf_messageBox("미등록 파일은 다른과로 이동할 수", "I004");
- return false;
- }
-
- }else if( org_trgIndxNo == "1" || org_trgSupFolderNo == "1" ){ //등록->미등록
- fIndxSet();
- /*
- messageBox("미등록 폴더로 이동할 수", "I004");
- preItem = treeview1.item(trgIndex);
- preItem.attribute("background-color") = "#ffffff";
- */
- return false;
-
- }else if( org_srcSupFolderNo == "2" ){ //종료->종료취소
- if( org_srcSupIndxNo == org_trgIndxNo || org_srcSupIndxNo == org_trgSupFolderNo ){
- fFromEndIndxSet();
- return false;
- }else{
- sysf_messageBox("종료 파일은 다른과로 이동할 수", "I004");
- return false;
- }
-
- }else if( org_trgIndxNo == "2" || org_trgSupFolderNo == "2" ){ //일반->종료
- fToEndIndxSet();
- return false;
-
- }
-
- if( org_srcSupFolderNo != org_trgSupFolderNo ){
- if( sysf_messageBox("선택한 " + org_cpgFlag + "의 진료과 변경을", "Q004") != 6 ){
- return false;
- }
- }else{
- if( sysf_messageBox("선택한 " + org_cpgFlag + "의 순서 변경을", "Q004") != 6 ){
- return false;
- }
- }
-
- // if(utlf_isNull(ds_main_indxlist.getColumn(srcIndex, "cpgno")) || ds_main_indxlist.getColumn(srcIndex, "cpgno") == "0") {
- // var flag = "";
- // var nextIndx = srcIndex + 1;
- // var org_nextSrcDepth = ds_main_indxlist.getColumn(nextIndx, "depth");
- // var nextValue;
- // var moveItemArray = new Array();
- // var num = 0;
- //
- // while( utlf_isNull(flag) ){
- // if( parseInt(org_srcDepth) < parseInt(org_nextSrcDepth) ){
- // nextValue = ds_main_indxlist.getColumn(nextIndx - 1, "indxno");
- // moveItemArray[num] = new Array();
- // moveItemArray[num][0] = nextIndx - 1;
- // moveItemArray[num][1] = nextValue;
- // num = num + 1;
- // nextIndx = nextIndx + 1;
- // org_nextSrcDepth = ds_main_indxlist.getColumn(nextIndx, "depth");
- // } else{
- // flag = "end";
- // }
- // }
- // }
-
- var val = fMoveItem(srcIndex, srcValue, trgIndex);
- var no_1, no_2;
- //return;
- /* 2008.06.16 DBMS변경->sql변경과 함께, fMoveItem() 변경으로 인해 사용 안함.
- //이동하려는 원본이 폴더인 경우, 이동된 후, 순서를 뒤바꿔 주어야함(3,2,1 순으로 복사되므로, 1,2,3 순으로 재조정 해야함)
- if(srcIndex != trgIndex){
- for(var i=0; i<num-1; i++){
- no_1 = 1;
- no_2 = 1;
- //src(child[])를 다시 찾는다.
- while(moveItemArray[i][1] != model.getValue(itemRef + "[" + no_1 + "]/indxno")){
- no_1++;
- }
- //trg를 다시 찾는다.
- while(org_srcIndxNo != model.getValue(itemRef + "[" + no_2 + "]/indxno")){
- no_2++;
- }
- srcIndex = no_1 - 1;
- srcValue = treeview1.item(srcIndex).text;
- trgIndex = no_2 - 1;
- trgValue = treeview1.item(trgIndex).text;
- fMoveItem(srcIndex, srcValue, trgIndex, trValue);
- if(org_srcIndex < org_trgIndex){
- no_3 = 1;
- while(org_trgIndxNo != model.getValue(itemRef + "[" + no_3 + "]/indxno")){
- no_3++;
- }
- no_3--;
- fChangedRefSeq( parseInt(no_3) );
- }
- }
- }
- */
-
- //드롭 후 변경 내용을 바로 저장한다
- var flag = oOpener.ds_search_cond.getColumn(0, "cpgflagcd");
- fSaveCpgIndxList();
- fGetIndxList(flag);
- }
- //드래그&드롭 시 타겟 인덱스의 PARENTS에 속한 이에템들의 조회순서를 정렬한다.
- function fChangedRefSeq( trgIndx ) {
- /* //2008.06.16 트리 sroting 및 이동에 의한 로직 변경
- var supFolderNo = instance1.selectSingleNode(itemRef+"[indxno = '" + trgIndx + "']/indxno").text;
- var treeItemNodeSet = instance1.selectNodes(itemRef+"[supfolderno = '" + treeItemNodeSet + "']"); // itemRef+ = root/main/indxlist/itemlist/item
- var srcLastChildItemIndex = getLastChildItemIndex(trgIndx, treeItemNodeSet);
- var from = trgIndx + 1; //차일드 아이템 중 첫번째
- var to = srcLastChildItemIndex; //차일드 아이템 중 마지막
- var iStatus = "";
- var newRefSeq = 0;
- for(var i = 0; i< treeItemNodeSet.length; i++) {
- iStatus = model.getValue(itemRef + "["+ ( i + 1 ) + "]/status");
- if( iStatus == "N" || iStatus == "") {
- model.setValue(itemRef + "["+ ( i + 1 ) + "]/status", "u");
- }
- newRefSeq = newRefSeq + 1;
- model.setValue(itemRef + "["+ ( i + 1 ) + "]/indxrefseq", newRefSeq);
- }
- */
-
- //아래폴더 첫번째 색인->바로위폴더 타겟으로 이동시 전체 순번 매겨지는 문제
- var trgLastChildItemIndex = getLastChildItemIndex(trgIndx, treeview1); //getLastChildItemIndex 의심
- var from = trgIndx;// + 1; //차일드 아이템 중 첫번째
- var to = trgLastChildItemIndex; //차일드 아이템 중 마지막
- //alert( "시작 노드= " + model.getValue(itemRef+"[" + (trgIndx+1) + "]/indxnm") );
- //alert( "마지막 노드= " + model.getValue(itemRef+"[" + (to+1) + "]/indxnm") );
- var iStatus = "";
- var newRefSeq = 0;
- var supIndxNo = ds_main_indxlist.getColumn(from, "supindxno");
- var iNo = ds_main_indxlist.getColumn(from, "indxnm");
- if( supIndxNo == "0" ){
- var supIndxRefSeq = 0;
- }else{
- var supIndxRefSeq = parseInt( ds_main_indxlist.getColumn(from, "indxrefseq") );
- }
-
- for(var i = from + 1; i <= to; i++) {
- iStatus = ds_main_indxlist.getColumn(i, "status");
- if( iStatus == "N" || utlf_isNull(iStatus) ) {
- ds_main_indxlist.setColumn(i, "status", "u");
- }
- supIndxRefSeq = supIndxRefSeq + 1;
- ds_main_indxlist.setColumn(i, "indxrefseq", supIndxRefSeq);
- }
- }
- // 드래그 & 드롭 시 아이템의 순서를 바꾼다.
- function fMoveItem(srcIndex, srcValue, trgIndex){
- var newSupIndxNo = ds_main_indxlist.getColumn(trgIndex, "supindxno"); //타겟의 상위색인번호
- var newSupFolderNo = ds_main_indxlist.getColumn(trgIndex, "supfolderno"); //타겟의 최상위색인번호
- var newIndxNo = ds_main_indxlist.getColumn(trgIndex, "indxno"); //타겟의 색인번호
- var org_srcSupIndxNo = ds_main_indxlist.getColumn(srcIndex, "supindxno"); //원본의 상위색인번호
- var org_srcSupFolderNo = ds_main_indxlist.getColumn(srcIndex, "supfolderno"); //원본의 최상위색인번호
- //소스와 타겟 아이템의 상위인덱스번호를 교환한다.
- var srcNodeDepth = ds_main_indxlist.getColumn(srcIndex, "depth") //원본의 depth
- var trgNodeDepth = ds_main_indxlist.getColumn(trgIndex, "depth") //타겟의 depth
- var subIndxCnt = 0;
- var fYN = "N";
-
- /*-----------------------srcParentIndex, trgParentIndex, srcLastChildItemIndex, trgLastChildItemIndex 구하기 ----------------------*/
-
- //1. 선택한 원본의 부모 폴더 색인
- var srcParentIndex = getParentItemIndex(srcIndex, treeview1);
- //2. 타겟의 부모 폴더 색인
- var trgParentIndex2 = -1;
- if( ds_main_indxlist.getColumn(trgIndex, "supindxno") == "0" ){
- var trgParentIndex = trgIndex; //타겟이 최상위 폴더일 경우, 엄마 노드를 찾을 필요가 없음
- }else if( ds_main_indxlist.getColumn(srcIndex, "supindxno") != ds_main_indxlist.getColumn(trgIndex, "supindxno")
- && ds_main_indxlist.getColumn(srcIndex, "supfolderno") == ds_main_indxlist.getColumn(trgIndex, "supfolderno")){
- var cmp_IndxNo = parseInt(ds_main_indxlist.getColumn(trgIndex, "supfolderno"));
- var trgParentIndex = fSrchItemIndxNo( cmp_IndxNo ); //타겟이 중간 단계의 폴더일 경우, 상위폴더를 찾으면 안되고, 최상위를 찾아야 함
- }else{
- var trgParentIndex = getParentItemIndex(trgIndex, treeview1);
- }
-
- if(ds_main_indxlist.getColumn(srcIndex, "supfolderno") != ds_main_indxlist.getColumn(trgIndex, "supfolderno")) {
- cmp_IndxNo = parseInt(ds_main_indxlist.getColumn(srcIndex, "supfolderno"));
- trgParentIndex2 = fSrchItemIndxNo( cmp_IndxNo ); // 원본과 타겟의 최상위 폴더가 다르다면 최상위 폴더 둘다를 찾아서 순번 바꿔줘야 함
- }
-
- if(utlf_isNull(ds_main_indxlist.getColumn(srcIndex, "cpgno")) || ds_main_indxlist.getColumn(srcIndex, "cpgno") == "0") {
- fYN = "Y";
- }else{
- fYN = "N";
- }
-
- if(utlf_isNull(ds_main_indxlist.getColumn(trgIndex, "cpgno")) || ds_main_indxlist.getColumn(trgIndex, "cpgno") == "0") {
- var depthGapCnt = parseInt(srcNodeDepth) - parseInt(trgNodeDepth) - 1;
- } else {
- var depthGapCnt = parseInt(srcNodeDepth) - parseInt(trgNodeDepth);
- }
-
- var srcLastChildItemIndex = getLastChildItemIndex(srcIndex, treeview1); // 드래그 아이템이 속한 아이템셋의 마지막 엔덱스
- var trgLastChildItemIndex = getLastChildItemIndex(trgIndex, treeview1); // 드롭 아이템이 속한 아이템셋의 마지막 인덱스
- /*------------------------------------------------------------------------------------------------------------------------------*/
-
- //소스아이템이 타겟아이템보다 작으면, 소스아이템을 타겟+1에 위치
- if(srcIndex < trgLastChildItemIndex) { // 위에서 아래로 이동
- if(utlf_isNull(ds_main_indxlist.getColumn(trgIndex, "cpgno")) || ds_main_indxlist.getColumn(trgIndex, "cpgno") == "0") {
- // target 이 폴더면,
- ds_main_indxlist.setColumn(srcIndex, "supindxno", newIndxNo);
- ds_main_indxlist.setColumn(srcIndex, "supfolderno", newSupFolderNo);
- trgLastChildItemIndex = parseInt(trgLastChildItemIndex);
- subIndxCnt = srcIndex - srcLastChildItemIndex;
- }else{
- // target 이 파일이면,
- ds_main_indxlist.setColumn(srcIndex, "supindxno", newSupIndxNo);
- ds_main_indxlist.setColumn(srcIndex, "supfolderno", newSupFolderNo);
- trgLastChildItemIndex = parseInt(trgIndex);
- }
-
- // 아이템을 타겟 위치에 복제, 소스 아이템은 삭제한다.
- var srcChildCount = srcIndex - srcLastChildItemIndex;
- var trgChildCount = trgIndex - trgLastChildItemIndex;
- if(srcChildCount < 0) srcChildCount *= -1;
- if(trgChildCount < 0) trgChildCount *= -1;
-
- ds_main_indxlist.enableevent = false;
-
- var finalSrcIndex = srcIndex;
- var finalTrgtIndex = trgIndex + trgChildCount;
- var lastIndex = finalTrgtIndex;
-
- var count = srcChildCount + 1;
-
- for(var i = 0; i < count; i++) {
- var val = parseInt(ds_main_indxlist.getColumn(finalSrcIndex, "depth")) - depthGapCnt;
- ds_main_indxlist.setColumn(finalSrcIndex, "depth", val);
-
- ds_main_indxlist.moveRow(finalSrcIndex, finalTrgtIndex);
- }
-
- ds_main_indxlist.applyChange();
- ds_main_indxlist.enableevent = true;
-
- grdf_expandTree(treeview1, lastIndex, true);
-
- if(trgParentIndex2 != -1) { // 원본과 타겟 폴더가 다른 경우
- fChangedRefSeq( trgParentIndex - count ); // 이동한 갯수 만큼 최상위 부모의 위치가 변경됨
- fChangedRefSeq( trgParentIndex2 );
- } else {
- fChangedRefSeq( trgParentIndex );
- }
-
- return val;
- }
-
- //소스인덱스가 타겟인덱스보다 크면, 소스아이템을 타겟-1에 위치
- else if(srcIndex > trgLastChildItemIndex) { // 아래에서 위로 이동
- if(utlf_isNull(ds_main_indxlist.getColumn(trgIndex, "cpgno")) || ds_main_indxlist.getColumn(trgIndex, "cpgno") == "0") {
- ds_main_indxlist.setColumn(srcIndex, "supindxno", newIndxNo);
- ds_main_indxlist.setColumn(srcIndex, "supfolderno", newSupFolderNo);
-
- if(newIndxNo == org_srcSupIndxNo)
- trgLastChildItemIndex = parseInt(trgLastChildItemIndex)
- else
- trgLastChildItemIndex = parseInt(trgLastChildItemIndex) + 1;
- }else{
- ds_main_indxlist.setColumn(srcIndex, "supindxno", newSupIndxNo);
- ds_main_indxlist.setColumn(srcIndex, "supfolderno", newSupFolderNo);
- trgLastChildItemIndex = parseInt(trgIndex);
- }
-
- var srcChildCount = srcIndex - srcLastChildItemIndex;
- var trgChildCount = trgIndex - trgLastChildItemIndex;
- if(srcChildCount < 0) srcChildCount *= -1;
- if(trgChildCount < 0) trgChildCount *= -1;
-
- var finalSrcIndex;
- var finalTrgtIndex;
- var lastIndex;
- ds_main_indxlist.enableevent = false;
-
- var finalSrcIndex = srcIndex + srcChildCount;
- var finalTrgtIndex = trgLastChildItemIndex;
- var lastIndex = finalTrgtIndex + trgChildCount;
-
- var count = srcChildCount + 1;
-
- for(var i = 0; i < count; i++) {
- var val = parseInt(ds_main_indxlist.getColumn(finalSrcIndex, "depth")) - depthGapCnt;
- ds_main_indxlist.setColumn(finalSrcIndex, "depth", val);
-
- ds_main_indxlist.moveRow(finalSrcIndex, finalTrgtIndex);
- }
-
- ds_main_indxlist.applyChange();
- ds_main_indxlist.enableevent = true;
-
- grdf_expandTree(treeview1, lastIndex, true);
-
- fChangedRefSeq( trgParentIndex );
- if(trgParentIndex2 != -1) fChangedRefSeq( trgParentIndex2 + count ); // 이동한 갯수 만큼 최상위 부모의 위치가 변경됨
- return val;
-
- } else {
- return true;
- }
- }
- function fShowWndIptBox() {
- var arrCellRect = treeview1.getCellRect(treeview1.getTreeRow(ds_main_indxlist.rowposition), treeview1.getCellPos());
-
- var clientY = arrCellRect.bottom + 6;
-
- if(clientY + treeview1.position.top >= 610) {
- group2.position.y = clientY - group2.position.height - 30;
- } else{
- group2.position.y = clientY;
- }
-
- group2.visible = true;
- group2.input1.setFocus();
- }
- function group1_btn_msgcnfm_onclick(obj:Button, e:ClickEventInfo)
- {
- //if( isNull(sIndxNo) ){
- sIndxNo = iFocusIndx; //sIndxNo = treeview1.focusIndex;
- //}
- //if( isNull(tIndxNo) ){
- var srchVal = ds_main_indxlist.getColumn(sIndxNo, "supindxno");
- tIndxNo = fSrchItemIndxNo( srchVal );
- //}
- var appDD = ds_main_formdata_cpinfo.getColumn(0, "appdd");
- if( group1.ipt_appdd.visible == true && utlf_isNull(appDD) ){
- sysf_messageBox("적용일을 ", "C001");
- return;
- }else if( group1.ipt_appdd.visible == true && (utlf_getStringLength(appDD) < 8 || utlf_getStringLength(appDD) > 8 ) ){
- sysf_messageBox("적용일은 8자리", "I009");
- return;
- }else {
- var m = "";
- var indxno = ds_main_indxlist.getColumn(sIndxNo, "indxno");
- var indxnm = ds_main_indxlist.getColumn(sIndxNo, "indxnm");
- var indxrefseq = ds_main_indxlist.getColumn(sIndxNo, "indxrefseq");
- var indxseq = parseInt( ds_main_indxlist.getColumn(sIndxNo, "indxseq") ) + 1;
- var no = ds_main_indxlist.getColumn(sIndxNo, "cpgno");
- var ver = ds_main_indxlist.getColumn(sIndxNo, "cpghistseq");
- var flag = ds_main_indxlist.getColumn(sIndxNo, "cpgflagcd");
- var src_supindxno = ds_main_indxlist.getColumn(sIndxNo, "supindxno");
- var src_supflderno = ds_main_indxlist.getColumn(sIndxNo, "supfolderno");
-
- var supindxno = ds_main_indxlist.getColumn(tIndxNo, "supindxno");
- var supfolderno = ds_main_indxlist.getColumn(tIndxNo, "supfolderno");
- //최상위이면, supindxno는 자신의 indxno
- if( (utlf_isNull(ds_main_indxlist.getColumn(tIndxNo, "cpgno")) || ds_main_indxlist.getColumn(tIndxNo, "cpgno") == "0")
- && ds_main_indxlist.getColumn(tIndxNo, "supindxno") == "0" ){
- trg_supindxno = ds_main_indxlist.getColumn(tIndxNo, "indxno");
- supindxno = trg_supindxno;
- }
-
- // 선택한 CP의 진료과와 타겟의 진료과가 다르면, 등록변경 안됨 (2008.06.18 변경됨... 원래 처리 : 색인도 새로 생성)
- // 삭제 종료 미등록 변경은 상위노드의 인덱스 번호와 상관없이 진행될 수 있도록 flag 추가 (2008. 09.18)
- var skipcheck = ds_temp.getColumn(0, "skiptopcheck");
- if (skipcheck != "Y" ) {
- if(src_supindxno != supindxno){
- //m = "i"; //색인을 save as한다.
- sysf_messageBox("다른 진료과로 옮길 수", "E001");
- return;
- }
- }
-
- ds_temp.getColumn(0, "skiptopcheck", "");
- //var header = "m▦indxno▦indxnm▦supindxno▦indxrefseq▦depth▦indxseq▦cpgno▦cpghistseq▦image▦cpgflagcd";
- var saveIndxlist = "▩"+m+"▦"+indxno+"▦"+indxnm+"▦"+supindxno+"▦"+indxrefseq+"▦▦"+indxseq+"▦"+no+"▦"+ver+"▦▦"+flag;
-
- ds_main_formdata_cpinfo.setColumn(0, "cpgno", no);
- ds_main_formdata_cpinfo.setColumn(0, "cpghistseq", ver);
-
- if( fSaveCpgIndxList( saveIndxlist ) ){
- fGetIndxList("F");
- }
-
- group1.visible = false;
- }
- }
- function group1_btn_msgcncl_onclick(obj:Button, e:ClickEventInfo)
- {
- group1.visible = false;
- tIndxNo = iFocusIndx;
- }]]></Script>
- </Form>
- </FDL>
|