123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPZBP00202" position="absolute 0 0 970 755" titletext="도로명주소검색(최종)" oninit="SPZBP00202_oninit" onload="SPZBP00202_onload" onkeydown="SPZBP00202_onkeydown">
- <Layouts>
- <Layout>
- <Static text="도로명주소검색(최종)" position="absolute 0 0 180 25" id="caption6" class="tit_1" style="align:left middle;" wordwrap="both" onclick="caption6_onclick"/>
- <Div id="group2" taborder="0" text="Div00" position="absolute 0 25 970 95" class="div_SA" onkeydown="group2_onkeydown">
- <Layouts>
- <Layout>
- <Static id="caption1" text="시도" class="search_name" position="absolute 10 13 125 30" anchor="default"/>
- <Static id="caption3" text="검색어" class="search_name" position="absolute 10 41 125 58" anchor="default"/>
- <Edit id="ipt_searchdetterm" taborder="1" class="input_search" position="absolute 105 41 510 60" anchor="default" autoselect="true"/>
- <Radio id="radio1" taborder="2" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="group2_radio1_onitemchanged" position="absolute 105 15 350 35" anchor="default" columncount="-1" rowcount="-1" style="itempadding:0 0 0 3;">
- <Dataset id="innerdataset">
- <ColumnInfo>
- <Column id="codecolumn"/>
- <Column id="datacolumn"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="codecolumn">1</Col>
- <Col id="datacolumn">대구</Col>
- </Row>
- <Row>
- <Col id="codecolumn">2</Col>
- <Col id="datacolumn">경북</Col>
- </Row>
- <Row>
- <Col id="codecolumn">3</Col>
- <Col id="datacolumn">대구+경북</Col>
- </Row>
- <Row>
- <Col id="codecolumn">4</Col>
- <Col id="datacolumn">직접선택</Col>
- </Row>
- </Rows>
- </Dataset>
- </Radio>
- <Combo id="cmb_area" taborder="3" innerdataset="@ds_codeinfo" codecolumn="cdid" datacolumn="cdnm" visible="false" position="absolute 353 15 508 34" anchor="default"/>
- <Static id="caption4" text="(시도는 검색조건 제외)" position="absolute 515 41 643 61" anchor="default"/>
- <cp_radioList id="rdo_flag" taborder="4" visible="false" position="absolute 513 14 871 34" anchor="default"/>
- <Shape id="line13" linetype="vertical" position="absolute 875 14 881 56" anchor="default"/>
- <Button id="btn_search" taborder="5" text="조회" onclick="group2_btn_search_onclick" class="btn1" position="absolute 899 25 955 47" anchor="default"/>
- <CheckBox id="chk_auto" taborder="6" text="자동완성" position="absolute 760 41 860 61" truevalue="Y" value="Y" falsevalue="N"/>
- </Layout>
- </Layouts>
- </Div>
- <Grid position="absolute 0 100 970 660" id="grd_addr" binddataset="ds_addrinfo_addrlist" oncelldblclick="grd_addr_oncelldblclick" cellsizingtype="both" extendsizetype="row" autosizingtype="row" autofittype="col" selecttype="multirow">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="25" band="left"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="0"/>
- <Column size="450"/>
- <Column size="340"/>
- <Column size="70"/>
- <Column size="80"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell/>
- <Cell col="1" text="mgtno"/>
- <Cell col="2" text="zipcd1"/>
- <Cell col="3" text="zipcd2"/>
- <Cell col="4" text="zipcdseq"/>
- <Cell col="5" text="gubuilnm"/>
- <Cell col="6" text="도로명주소"/>
- <Cell col="7" text="지 번"/>
- <Cell col="8" text="우편번호"/>
- <Cell col="9" text="우편번호(신)"/>
- </Band>
- <Band id="body">
- <Cell celltype="head" text="expr:currow + 1"/>
- <Cell col="1" text="bind:mgtno"/>
- <Cell col="2" text="bind:zipcd1"/>
- <Cell col="3" text="bind:zipcd2"/>
- <Cell col="4" text="bind:zipcdseq"/>
- <Cell col="5" text="bind:gubuilnm"/>
- <Cell col="6" style="align:left;" text="bind:staddr"/>
- <Cell col="7" style="align:left;padding:2 2 2 2;" text="bind:jbaddr" wordwrap="word" autosizerow="limitmin"/>
- <Cell col="8" text="bind:zipcd"/>
- <Cell col="9" text="bind:bano"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button position="absolute 854 665 910 687" id="button1" class="btn4" text="확인" onclick="button1_onclick"/>
- <Button position="absolute 914 665 970 687" id="btn_cancel" class="btn4" text="취소" onclick="btn_cancel_onclick"/>
- <Static text="* 주의사항 1. 검색 시 띄워쓰기 검색이 가능합니다. (예1: 동덕로 경북대학교병원 50 예2: 삼덕동2가 44-2) 단, 검색 조건이 많아질수록 검색에 걸리는 시간이 증가합니다.(2개조건 검색 권장) 2. 검색조건으로는 구군, 동, 읍, 면, 리, 번지, 건물명이 가능합니다. 3. 검색조건이 구체적이지 않은 경우 시간이 오래 걸리며 최대검색개수는 1000개이므로 가능한 구체적인 검색을 권장합니다. 4. 도로명주소 안내시스템의 서버 상태에 따라 실시간검색이 되지 않는 경우도 있습니다." position="absolute 0 665 712 754" id="caption2" style="color:#0000ffff;"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_codeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cdnm" type="STRING"/>
- <Column id="cdid" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_addrinfo_addrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="mgtno" type="STRING"/>
- <Column id="zipcd1" type="STRING"/>
- <Column id="zipcd2" type="STRING"/>
- <Column id="zipcdseq" type="STRING"/>
- <Column id="gubuilnm" type="STRING"/>
- <Column id="staddr" type="STRING"/>
- <Column id="jbaddr" type="STRING"/>
- <Column id="zipcd" type="STRING"/>
- <Column id="bano" type="STRING"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="searchcityflag" type="STRING" size="256"/>
- <Column id="searchcitydetlcd" type="STRING" size="256"/>
- <Column id="searchflag" type="STRING" size="256"/>
- <Column id="searchterm" type="STRING" size="256"/>
- <Column id="searchcitydetl" type="STRING" size="256"/>
- <Column id="searchauto" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="searchflag"/>
- <Col id="searchcityflag">1</Col>
- <Col id="searchcitydetlcd"/>
- <Col id="searchterm"/>
- <Col id="searchcitydetl"/>
- </Row>
- </Rows>
- </Dataset>
- <Dataset id="ds_resultstatus" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="errorCode" type="STRING" size="256" sumtext="도로명주소"/>
- <Column id="errorMessage" type="STRING" size="256" sumtext="도로명주소"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_radio_flag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="codecolumn"/>
- <Column id="datacolumn"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="codecolumn">1</Col>
- <Col id="datacolumn">실시간검색</Col>
- </Row>
- <Row>
- <Col id="codecolumn">2</Col>
- <Col id="datacolumn">내부검색(실시간검색 안될 시 이용)</Col>
- </Row>
- </Rows>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item3" compid="group2.Div00.ipt_searchdetterm" propid="value" datasetid="ds_search" columnid="searchterm"/>
- <BindItem id="item0" compid="group2.Div00.radio1" propid="value" datasetid="ds_search" columnid="searchcityflag"/>
- <BindItem id="item1" compid="group2.Div00.cmb_area" propid="value" datasetid="ds_search" columnid="searchcitydetlcd"/>
- <BindItem id="item2" compid="group2.Div00.rdo_flag" propid="value" datasetid="ds_search" columnid="searchflag"/>
- <BindItem id="item4" compid="group2.ipt_searchdetterm" propid="value" datasetid="ds_search" columnid="searchterm"/>
- <BindItem id="item6" compid="group2.radio1" propid="value" datasetid="ds_search" columnid="searchcityflag"/>
- <BindItem id="item7" compid="group2.cmb_area" propid="value" datasetid="ds_search" columnid="searchcitydetlcd"/>
- <BindItem id="item5" compid="group2.chk_auto" propid="value" datasetid="ds_search" columnid="searchauto"/>
- <BindItem id="item8" compid="group2.chk_auto" propid="bindgestureset" datasetid="ds_search" columnid="searchauto"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2015-05-01
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2015-05-01 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- //=======================================================================================
- // Lib Include
- //---------------------------------------------------------------------------------------
- include "com_commonxp::comm_main.xjs";
- //=======================================================================================
- // Global Form Variable
- //---------------------------------------------------------------------------------------
- var clickCnt = 0;
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- function fSearch(){
- if( !utlf_isNull(group2.cmb_area.text)){
- ds_search.setColumn(0, "searchcitydetl", group2.cmb_area.text);
- }
-
- ds_addrinfo_addrlist.clearData();
- ds_resultstatus.clearData();
- var oParam = {};
- oParam.id = "TRZBP00209";
- oParam.service = "zipcodeapp.StreetAddress";
- oParam.method = "reqGetStreetAddressFinal";
- oParam.inds = "req=ds_search";
- oParam.outds = "ds_resultstatus=resultstatus ds_addrinfo_addrlist=addrlist";
- oParam.async = false;
- oParam.callback = "cf_TRZBP00209";
- tranf_submit(oParam);
- }
- function cf_TRZBP00209(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
-
-
- if( ds_resultstatus.rowcount > 0 ){
- var errorCode = ds_resultstatus.getColumn(0, "errorCode");
- var errorMessage = ds_resultstatus.getColumn(0, "errorMessage");
-
- if(!utlf_isNull(errorCode) && errorCode != "0"){
- if(errorCode == "E9999" || errorCode == "-999" || errorCode == "E0001" || errorCode == "E0002" || errorCode == "E0003"){
- sysf_messageBox("행정자치부 도로명주소 시스템에 접근되지 않습니다. 내부검색으로 검색합니다.","I999");
- //ds_search.setColumn(0, "searchflag", "2");
- group2.rdo_flag.setData("2");
- }else if(errorCode == "P0001"){
- sysf_messageBox("행정자치부 도로명주소 시스템으로는 검색 결과가 너무 많아 결과를 가져오지 못합니다. 내부검색으로 검색합니다.","I999");
- //ds_search.setColumn(0, "searchflag", "2");
- group2.rdo_flag.setData("2");
- }
- }
- }
- }
- function fSetReturnValue()
- {
- if(frmf_checkOpener())
- {
- var nRow = ds_addrinfo_addrlist.rowposition;
- var zipcdhead = ds_addrinfo_addrlist.getColumn(nRow, "zipcd1"); //우편번호
- var zipcdfoot = ds_addrinfo_addrlist.getColumn(nRow, "zipcd2"); // 우편번호
- var seqno = ds_addrinfo_addrlist.getColumn(nRow, "zipcdseq"); // 우편번호 일련번호
- var addressnew = ds_addrinfo_addrlist.getColumn(nRow, "staddr"); // 도로명주소
- var builno = ds_addrinfo_addrlist.getColumn(nRow, "mgtno"); // 관리번호
- var gubuilnm = ds_addrinfo_addrlist.getColumn(nRow, "gubuilnm"); // 건물명
- var bano = utlf_transNullToEmpty(ds_addrinfo_addrlist.getColumn(nRow, "bano")); // 건물명
- var banohead = bano.substr(0,3);
- var banofoot = bano.substr(3,2);
-
-
-
- // 신우편번호 주소로 대체함(150727. 손병은)
- var objParam = new Object();
- objParam.zipcdhead = banohead;
- objParam.zipcdfoot = banofoot;
- objParam.seqno = seqno;
- objParam.address = addressnew;
- objParam.builno = builno;
- objParam.gubuilnm = gubuilnm;
- objParam.bano = bano;
-
- this.close(objParam);
- }
- }
- //=======================================================================================
- // Event
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Components : Form
- * Components ID : SPZBP00202
- * Event : oninit
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면 초기화
- ****************************************************************************************/
- function SPZBP00202_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj);
- }
- /****************************************************************************************
- * Components : Form
- * Components ID : SPZBP00202
- * Event : onload
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 화면 초기화
- ****************************************************************************************/
- function SPZBP00202_onload(obj:Form, e:LoadEventInfo)
- {
- grdf_initGrid(this.grd_addr);
-
- appf_getCodeList([{dsNm: "ds_codeinfo", cdGrpId: "C0302"}], true);
-
- group2.rdo_flag.setInitComp("col=2,row=1", ds_radio_flag,"codecolumn","datacolumn","fn_rdoEvent");
- group2.rdo_flag.setData("2");
-
- group2.chk_auto.value = 'Y';
- }
- function fn_rdoEvent(){
- var rtn = group2.rdo_flag.getData();
- ds_search.setColumn(0, "searchflag", rtn);
- }
- /****************************************************************************************
- * Components : Static
- * Components ID : caption6
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : Caption Title Click
- ****************************************************************************************/
- function caption6_onclick(obj:Static, e:ClickEventInfo)
- {
- if(clickCnt++ > 4) {
- clickCnt = 0;
- group2.rdo_flag.visible = true;
- }
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : group2.btn_search
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 조회
- ****************************************************************************************/
- function group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
- {
- var searchterm = group2.ipt_searchdetterm.value;
- if( utlf_isNull(searchterm))
- {
- sysf_messageBox("검색어를 ","C001");
- return;
- }
-
- //20170403 이돈희 수정 : TF 구현사항 XP로 변환
- // 건물번호 붙여쓰기 자동완성 기능(행안부 권장 항목 - 170321.shon)
- if(group2.chk_auto.value == "Y")
- {
- var serchterm = ds_search.getColumn(0, "searchterm");
- var newsearchterm = "";
- var terms = searchterm.split(' ');
- var chars = "0123456789";
-
- for(var i=0;i<terms.length;i++)
- {
- var idx = terms[i].lastIndexOf("길");
- if(idx>0 && idx < terms[i].length-1 && chars.indexOf(terms[i].charAt(idx+1))>=0)
- {
- var temp1 = terms[i].substring(0,idx+1);
- var temp2 = terms[i].substring(idx+1, terms[i].length);
- newsearchterm += temp1 + " " + temp2 + " ";
- }
- else
- {
- newsearchterm += terms[i] + " ";
- }
- }
-
- if(newsearchterm.charAt(newsearchterm.length-1) == " ")
- {
- newsearchterm = newsearchterm.substring(0,newsearchterm.length-1);
- }
-
- ds_search.setColumn(0, "searchterm", newsearchterm);
- }
-
-
- fSearch();
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : group2.radio1
- * Event : onitemchanged
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 시도 구분
- ****************************************************************************************/
- function group2_radio1_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
- {
- var flag = e.postvalue;
- if(flag == "4"){ //직접선택시
- group2.cmb_area.visible = true;
- }else{
- group2.cmb_area.visible = false;
- }
- }
- /****************************************************************************************
- * Components : Grid
- * Components ID : grd_addr
- * Event : oncelldblclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 주소 선택
- ****************************************************************************************/
- function grd_addr_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- if( e.row < 0 && e.col < 0 )
- return;
- fSetReturnValue();
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : button1
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 확인
- ****************************************************************************************/
- function button1_onclick(obj:Button, e:ClickEventInfo)
- {
- fSetReturnValue();
- }
- /****************************************************************************************
- * Components : Button
- * Components ID : btn_cancel
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 취소
- ****************************************************************************************/
- function btn_cancel_onclick(obj:Button, e:ClickEventInfo)
- {
- this.close();
- }
- /****************************************************************************************
- * Components : Div
- * Components ID : group2
- * Event : onclick
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description :
- ****************************************************************************************/
- function group2_onkeydown(obj:Div, e:KeyEventInfo)
- {
- if(e.keycode == 13)
- {
- group2.ipt_searchdetterm.updateToDataset();
- group2.btn_search.click();
- group2.ipt_searchdetterm.setFocus();
- }
- }
- ]]></Script>
- </Form>
- </FDL>
|