* 고객시스템명 : CJ푸드빌
* GAUCE 버전 : Gauce 4.0
* WAS 종류(WebLogic 등등) : Tomcat 5.0
* DB 종류 : Oracle 10g
* 문의 유형(질문/요청/참조) :
* 내용 : jsp 소스 상에서 CrossTabSum() 과 같은 가우스 함수 등을 이용해서 통계를 화면에 보여주었는데요...
현재 구현하려는 기능은 조회조건 중에 구분(수량,금액) select 박스에서
[금액] 을 선택하고 조회 버튼을 누르면 [수 량] 항목은
그리드에서 사라지고 [금 액] 항목만 보여지도록 하는 것입니다.
조회 버튼 클릭시 실행되는 함수인 btn_Search() 안에 아래 소스를 넣어도 적용이 안되더군요...
if(sDivision2 == "3") { //[금 액] 인 경우
GR_List.ColumnProp("CNT_$$", "Show") = "false";
}
아래는 소스 코드 입니다.
<!-------------------- 크로스탭을 위한 가공된 Data를 지닌다.------------->
<object classid="<%=Util.CLSID_DATASET%>" id=tb_CDataSet>
<param name="Logical" value="true">
<param name="DataID" value="DS_List">
<param name="GroupExpr" value="MENU_CD:MENU_NM,TM,CNT:SALE_TOT">
</object>
...
<tr>
<td>
<comment id="_NSID_">
<object id="GR_List" height=500 width=100% classid=<%=Util.CLSID_GRID%>>
<param name="DataID" value="tb_CDataSet">
...
<param name="Format" value='
<F> id=MENU_CD name="제품코드" width=120 sort=true align=left HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT </F>
<F> id=MENU_NM name="제품명" width=150 sort=true align=left HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT </F>
<R>
<G>name=$xkeyname_$$ headfontstyle=BOLD
<C>ID=CNT_$$ name="수 량" align=right width=80 sort=true HEADALIGN=center HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT </C>
<C>ID=SALE_TOT_$$ name="금 액" align=right width=80 sort=true HEADALIGN=center HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT </C>
</G>
</R>
<F>ID=Id=Sum name="합계 수량" width=80 sort=true align=left HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT Value={CrossTabSum(CNT)} </F>
<F>ID=Id=Sum name="합계 총액" width=80 sort=true align=left HeadBgColor=#ECE4D7 headfontstyle=BOLD NOEDIT Value={CrossTabSum(SALE_TOT)} </F>
'>
</object>
</comment><script> _ws_(_NSID_);</script>
</td>
</tr>
...
/**
* btn_Search()
* 개 요 : 조회시 호출
* return값 : void
*/
function btn_Search() {
//조회조건 check
var sSDate = removeChar(SH_DATE_FROM.value, "-"); //조회기간 START
var sEDate = removeChar(SH_DATE_TO.value, "-"); //조회기간 End
var sFcSaupbu = CB_FcSaupbu.ValueOfIndex("CODE", CB_FcSaupbu.Index); //사업부
var sSalesDept = CB_SalesTeam.ValueOfIndex("CODE", CB_SalesTeam.Index); //부서
var sChargeEmpCd = CB_ChargeEmpCd.ValueOfIndex("CODE", CB_ChargeEmpCd.Index); //담당자
var sStoreCd = SH_STORE_CD.value; //가맹점포명
var sBrandCd = CB_Brand.ValueOfIndex("CODE",CB_Brand.Index);//브랜드코드
var sDivision = CB_Division.ValueOfIndex("CODE", CB_Division.Index); //구분(통계방식)
var sDivision2 = CB_Division2.ValueOfIndex("CODE", CB_Division2.Index); //구분(수량,금액)
//필수 입력 체크
if (sBrandCd=="" ){
showMessage(STOPSIGN, OK, "US-1001", "브랜드 코드 ");
CB_Brand.focus();
return;
}
if (sEDate == "") {
showMessage(Information, Ok, "US-1000", "조회일자는 필수조회 조건입니다");
setTimeout("SH_EDT.focus()");
return;
}
if (! isYYYYMMDD(sEDate)) {
showMessage(Information, Ok, "US-1000", "날짜 형식이 맞지 않습니다. 다시 입력해 주십시오.");
SH_EDT.focus() ;
return;
}
//필수 입력 체크
if (sDivision=="" ){
showMessage(STOPSIGN, OK, "US-1001", "구분(통계방식) ");
CB_Division.focus();
return;
}
DS_List.ClearAll();
searchSetWait("S");
DS_DualItem.UseChangeInfo = "false";
var goTo = "search";
var action = "O";
var parameters = "&sSDate="+sSDate+"&sEDate="+sEDate+"&sFcSaupbu="+sFcSaupbu+"&sSalesDept="+sSalesDept+"&sChargeEmpCd="+sChargeEmpCd
+"&sStoreCd="+sStoreCd+"&sBrandCd="+sBrandCd+"&sDivision="+sDivision;
TR_Search.Action="/foodville/sto0u80.sto0u?goTo="+goTo+parameters;
//TR_Search.KeyValue="SERVLET("+action+":DSPOST=DS_List)"; //조회는 O
if(f.SH_MENU_YN.checked == false ) {
TR_Search.KeyValue = "SERVLET("+"O"+":DSPOST=DS_List," + "O" + ":DSPOST2=DS_DualItem)"; //조회는 O
}
else{
TR_Search.KeyValue = "SERVLET("+"O"+":DSPOST=DS_List," + "I" + ":DSPOST2=DS_DualItem)"; //조회는 O
}
TR_Search.Post();
}