게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.
* 고객시스템명 :
* GAUCE 버전 :
* WAS 종류(WebLogic 등등) :
* DB 종류 :
* 문의 유형(질문/요청/참조) :
* 내용 :
게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.
* 고객시스템명 :
* GAUCE 버전 :
* WAS 종류(WebLogic 등등) :
* DB 종류 :
* 문의 유형(질문/요청/참조) :
* 내용 : 소계의 원가율과 수율에 subsumtext에서 계산한 값이 적용이 안돼는 군요 방법이 없는건가요?
연락처(010-7180-2068)
<%
/*******************************************************************************
* 시스템명 : 영업관리 > 원가분석 > 메뉴별 원가배분 현황
* 작 성 일 : 2009.12.09
* 작 성 자 : 김진규
* 수 정 자 :
* 파 일 명 : pnlG120a.jsp
* 버 전 : 1.0
* 개 요 :
* 이 력 :
*****************************************************************************/
%>
<%@ page language="java" contentType="text/html;charset=UTF-8" %>
<%@ page import="kr.fujitsu.ffw.util.*"%>
<%@ page import="com.util.*"%>
<%@ page import="java.io.*"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<%@ taglib uri="/WEB-INF/tld/gauce40.tld" prefix="gauce40"%>
<%@ taglib uri="/WEB-INF/tld/login.tld" prefix="loginChk"%>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="/feos/css/Fj.css" rel="stylesheet" type="text/css">
<script language="javascript" src="/feos/js/global.js"></script>
<script language="javascript" src="/feos/js/common.js"></script>
<script language="javascript" src="/feos/js/message.js"></script>
<script language="javascript" src="/feos/js/gauce.js"></script>
<script language="javascript" src="/feos/js/popup.js"></script>
<!----------------------------------------------------------------------------->
<!-- 로그인 유무 -->
<!----------------------------------------------------------------------------->
<loginChk:isloginChk />
<%String CurrDate = Date2.YYYYMMDD();%>
<script language="JavaScript">
/**
* onStart()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 해당 페이지 LOAD 시
* return값 : void
*/
function onStart(){
// 데이터셋 초기화
gridCreate();
initEmEdit(); //EMEDIT setting
initCombo();
EM_SALE_YYMM_R.focus();
}
/**
* initEmEdit()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : EMEDIT 초기화
* return값 : void
*/
function initEmEdit(){
initEmeditStyle(EM_SALE_YYMM_R, CENTER, PK, "YYYY-MM");
EM_SALE_YYMM_R.text = "<%=CurrDate%>".substring(0, 6);
initEmeditStyle(EM_MENU_CD_R, CENTER, NORMAL, "GEN");
EM_MENU_CD_R.maxLength = 6;
initEmeditStyle(EM_MENU_NM_R, LEFT, READ, "GEN");
}
/**
* gridCreate()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : GRID 생성 (목표/예산 조회)
* return값 : void
*/
function gridCreate(){
var hdrProperies = '<FG> name="메뉴 정보" '
+ '<F> id=MENU_CATNM name="메뉴분류" align=center width=110 subsumtext = "소계" </F>'
+ '<F> id=MENU_CD name="메뉴코드" align=center width=70 </F>'
+ '<F> id=MENU_NM name="메뉴 명" align=left width=150 SumText="합계"</F>'
+ '</FG>'
+ '<G> name="판매"'
+ '<C> id=DANGA name="단가" align=right width=70 subsumtext=""</C>'
+ '<C> id=SALE_QTY name="수량" align=right width=50 SumText=@sum </C>'
+ '<C> id=SALE_AMT name="금액" align=right width=115 SumText=@sum</C>'
+ '</G>'
+ '<F> id=COST_AMT name="표준원가" align=right width=110 subsumtext=""</F>'
+ '<G> name="이론"'
+ '<C> id=THEO_AMT name="원가" align=right width=120 SumText=@sum </C>'
+ '<C> id=THEO_RATE name="원가율" align=right width=90 Dec=2 SumText={ round( decode( sum(SALE_AMT),0,0,(sum(THEO_AMT)/sum(SALE_AMT)*100)),3)} subsumtext={ round( decode( sum(SALE_AMT),0,0,(sum(THEO_AMT)/sum(SALE_AMT)*100)),3)}</C>'
+ '<C> id=THEO_ADD name="이익" align=right width=110 SumText=@sum</C>'
+ '</G>'
+ '<G> name="실제"'
+ '<C> id=ACT_AMT name="원가" align=right width=120 SumText=@sum</C>'
+ '<C> id=ACT_RATE name="원가율" align=right width=90 Dec=2 SumText={ round( decode( sum(SALE_AMT),0,0,(sum(ACT_AMT)/sum(SALE_AMT)*100)),3)} subsumtext={ round( decode( sum(SALE_AMT),0,0,(sum(ACT_AMT)/sum(SALE_AMT)*100)),3)}</C>'
+ '<C> id=ACT_ADD name="이익" align=right width=110 SumText=@sum</C>'
+ '</G>'
+ '<F> id=SU_RATE name="수율" align=right width=70 SumText=@sum SumText={ round( decode( sum(ACT_AMT),0,0,(sum(THEO_AMT)/sum(ACT_AMT)*100)),3)} subsumtext={ round( decode( sum(ACT_AMT),0,0,(sum(THEO_AMT)/sum(ACT_AMT)*100)),3)}</F> '
;
gridInit(GR_Main, "DS_Main", hdrProperies);
DS_Main.SubsumExpr = '1:MENU_CATNM';//소계보이기
GR_Main.ViewSummary = "1"; //합계 보이기
}
/**
* initCombo()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 콤보 셋팅
* return값 : void
*/
function initCombo(){
initComboStyle(CB_BRAND_CD_R ,DS_BRD, "CODE^0^30,NAME^0^150", 1, PK); //브랜드
getBrandCombo(DS_BRD, "1", "N", "1");// 브랜드
initComboStyle(CB_MENU_DCD ,DS_DCD, "CODE^0^20,NAME^0^70", 1, NORMAL); //대분류 구분 콤보박스
getMenuBCombo(DS_DCD, "Y", "Y", "", "1"); //대분류
initComboStyle(CB_MENU_JCD ,DS_JCD, "CODE^0^30,NAME^0^230", 1, NORMAL);
getMenuBCombo(DS_JCD, "Y", "Y", "", "2");
}
/**
* btn_Search()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 조회
* return값 : void
*/
function btn_Search() {
//조회조건
var ArgModCd = "" ; //구분자
var strArg01 = EM_SALE_YYMM_R.text; //조회 년월
var strArg02 = SH_STORE_CD_R.value; //점포 코드
var strArg03 = CB_MENU_DCD.ValueOfIndex("CODE", CB_MENU_DCD.Index); //대분류
var strArg04 = CB_MENU_JCD.ValueOfIndex("CODE", CB_MENU_JCD.Index); //대분류
var strArg05 = EM_MENU_CD_R.text ;
var strArg06 = "" ;
var strArg07 = "" ;
var strArg08 = "" ;
var strArg09 = "" ;
var strArg10 = "" ;
var strArg11 = "" ;
var strArg12 = "" ;
var strArg13 = "" ;
var strArg14 = "" ;
var strArg15 = "" ;
var ArgFlag = "" ;
//년월 (입력형식이 올바르지 않습니다)
if (strArg01.trim().length != 6) {
showMessage("<%=Message.getMessage("US", "1004", "COM", "1104")%>");
EM_SALE_YYMM_R.focus();
return;
}
//점포입력 여부 확인
if( SH_STORE_CD_R.value=="" ) {
showMessage("<%=Message.getMessage("US", "1000","점포코드는 반드시 입력해야 합니다.")%>"); // 계정코드는 반드시 선택해야 합니다.
SH_STORE_CD_R.focus() ;
return;
}
var goTo = "Search" ;
var action = "O";
var parameters = "&ArgModCd="+ArgModCd
parameters += "&strArg01="+strArg01
parameters += "&strArg02="+strArg02
parameters += "&strArg03="+strArg03
parameters += "&strArg04="+strArg04
parameters += "&strArg05="+strArg05
parameters += "&strArg06="+strArg06
parameters += "&strArg07="+strArg07
parameters += "&strArg08="+strArg08
parameters += "&strArg09="+strArg09
parameters += "&strArg10="+strArg10
parameters += "&strArg11="+strArg11
parameters += "&strArg12="+strArg12
parameters += "&strArg13="+strArg13
parameters += "&strArg14="+strArg14
parameters += "&strArg15="+strArg15
parameters += "&ArgFlag="+ArgFlag;
searchSetWait("S");
//GET방식
DS_Main.DataID = "/feos/pnlG12.pnlG?goTo="+goTo+parameters;
DS_Main.Reset();
}
/**
* btn_StorePopup()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 점포검색 팝업 공통
* return값 : void
*/
function btn_StorePopup(){
var cdObj;
var nmObj;
var brObj;
cdObj = SH_STORE_CD_R;
nmObj = SH_STORE_NM;
brObj = CB_BRAND_CD_R;
var rtn = getStoreCodePopUp("", "", "", "", cdObj.value);
if (rtn != null){
cdObj.value = rtn[0];
nmObj.value = rtn[1];
brObj.value = rtn[2];
}
}
/**
* onStoreKeyDown()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 점포 onKeyDown 발생 (직접 입력 검색)
* return값 : void
*/
function onStoreKeyDown(code){
var nmObj;
var dsSet;
var brObj;
nmObj = SH_STORE_NM;
dsSet = DS_STORE;
brObj = CB_BRAND_CD_R;
nmObj.value = "";
brObj.value = "";
if (code != "" ){
getStoreName(code, dsSet);
}
}
/**
* OnKeyDownMenuCd()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 메뉴 onchange 발생 (직접 입력 검색)
* return값 : void
*/
function OnKeyDownMenuCd(code){
EM_MENU_NM_R.Text = "";
if (!isNull(code)){
if (isNull(CB_BRAND_CD_R.value)) {
showMessage("<%=Message.getMessage("US", "1000","점포코드는 반드시 입력해야 합니다.")%>"); // 점포코드는 반드시 선택해야 합니다
EM_MENU_CD_R.Text="";
SH_STORE_CD_R.focus();
return;
}
getMenuName(DS_MCD, code, CB_BRAND_CD_R.value);
}
}
/**
* btn_MenuPopup()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 메뉴 팝업 공통
* return값 : void
*/
function btn_MenuPopup(){
if (CB_BRAND_CD_R.value == "") {
showMessage("<%=Message.getMessage("US", "1000","점포코드는 반드시 입력해야 합니다.")%>"); // 점포코드는 반드시 선택해야 합니다
SH_STORE_CD_R.focus();;
return;
}
var rtn = showMenuPopup("Y", EM_MENU_CD_R.Text, CB_BRAND_CD_R.value, "", "Y");
if (rtn != null){
EM_MENU_CD_R.Text = rtn[0];
EM_MENU_NM_R.Text = rtn[1];
}
}
/**
* btn_Excel()
* 작 성 자 : 김진규
* 작 성 일 : 2009.12.09
* 개 요 : 엑셀로 다운로드
* return값 : void
*/
function btn_Excel() {
openExcel(GR_Main, "<%=request.getParameter("programNM")%>");
}
/**
* VIEW()
* 작 성 자 : 김진규
* 작 성 일 : 2009.11.20
* 개 요 : 상세정보
* return값 : void
*/
function VIEW(Row,Colid){
var A = new Array();
for(var i=1; i < 14; i++){
var coli = DS_Main.ColumnID(2+i);
A[i] = DS_Main.NameValue(Row,coli);
}
//alert(A[1]);
//[메뉴코드 , 메뉴명,] [단가, 수량,] [표준원가,] [원가, 원가율,] [원가, 원가율,] [수율(%)]
var storecd = SH_STORE_CD_R.value;
var yymm= EM_SALE_YYMM_R.text;
costPopup(A[1],A[2],A[3],A[4],A[6],A[7],A[8],A[10],A[11],A[13],yymm,storecd);
}
/**
* costPopup()
* 작 성 자 : 김진규
* 작 성 일 : 2008-12-10
* 개 요 : 상제정보
* param :
*/
function costPopup(strMENU_CD,strMENU_NM,strDANGA,strSALE_QTY,
strCOST_AMT,strTHEO_AMT,strTHEO_RATE,strACT_AMT,
strACT_RATE,strSU_RATE,strYYMM,strSTORECD){
var returnVal = new Array();
var parameters = "&MENU_CD="+strMENU_CD+"&MENU_NM="+encodeURIComponent(strMENU_NM)+"&DANGA="+strDANGA+"&SALE_QTY="+strSALE_QTY+ "&COST_AMT="+strCOST_AMT+"&THEO_AMT="+strTHEO_AMT+"&THEO_RATE="+strTHEO_RATE+"&ACT_AMT="+strACT_AMT+ "&ACT_RATE="+strACT_RATE+"&SU_RATE="+strSU_RATE+"&YYMM="+strYYMM+"&STORECD="+strSTORECD;
var sUrl = "/feos/pnlG12.pnlG?goTo=pnlG121"+parameters;
//alert(sUrl);
returnVal = showModal(sUrl, "popup", 1062,610);
return returnVal;
}
</script>
</head>
<!-------------------------------------------------------------->
<!---------------------가우스 이벤트 처리 -------------------------->
<!--------------------------------------------------------------->
<!--------------------- TR Success 메세지 처리 -------------------->
<script language=JavaScript for=DS_Main event=OnLoadError()>
if (DS_Main.ErrorCode == 0 ){
showMessage("<%=Message.getMessage("GA","1010")%>", DS_Main.ErrorMsg );
} else {
showMessage("<%=Message.getMessage("GA","1000")%>", DS_Main.ErrorMsg );
}
</script>
<script language=JavaScript for=DS_MCD event=OnLoadCompleted(rowcnt)>
if (rowcnt==1) {
EM_MENU_NM_R.Text = DS_MCD.nameValue(1, "MENU_NM");
}else{
showMessage("<%=Message.getMessage("US","1046")%>"); //존재하지 않는 코드입니다.
EM_MENU_CD_R.text="";
EM_MENU_NM_R.text="";
EM_MENU_CD_R.selectAll = "true";
EM_MENU_CD_R.focus();
}
</script>
<!-- 콤보를 OnDropDown 했을 경우 -->
<script language=JavaScript for=CB_MENU_DCD event=OnDropDown()>
if (CB_BRAND_CD_R.value == "") {
showMessage("<%=Message.getMessage("US", "1000","점포코드는 반드시 입력해야 합니다.")%>"); // 점포코드는 반드시 선택해야 합니다
SH_STORE_CD_R.focus();
return;
}
getMenuBCombo(DS_DCD, "Y", "Y", CB_BRAND_CD_R.value, "1");
</script>
<!--------------------- DataSet 처리 --------------------->
<script language="javascript" for=GR_Main event=OnDblClick(Row,Colid)>
VIEW(Row,Colid);
</script>
<script language=JavaScript for=TR_Search event=OnSuccess()>
trCompleted(TR_Search,true);
</script>
<!-- 콤보데이터 load 시 -->
<script language=JavaScript for=DS_DCD event=OnLoadCompleted(rowcnt)>
CB_MENU_DCD.index = 0;
</script>
<!-- 콤보데이터 load 시 -->
<script language=JavaScript for=DS_JCD event=OnLoadCompleted(rowcnt)>
CB_MENU_JCD.index = 0;
</script>
<script language=JavaScript for=DS_Main event=OnLoadCompleted(rowcnt)>
queryCompleted(rowcnt);
</script>
<!-- 점포코드데이타셋이 로드되었을때 -->
<script language=JavaScript for=DS_STORE event=OnLoadCompleted(rowcnt)>
if (rowcnt==1) {
var sBrandCd = DS_STORE.nameValue(1, "BRAND_CD");
CB_BRAND_CD_R.value = sBrandCd;
var sStoreNm = DS_STORE.nameValue(1, "NAME");
SH_STORE_NM.value = sStoreNm;
}else{
SH_STORE_CD_R.value="";
SH_STORE_CD_R.focus();
SH_STORE_CD_R.select();
showMessage("<%=Message.getMessage("US","1046")%>"); //존재하지 않는 코드입니다.
}
</script>
<script language=JavaScript for=DS_BRD event=OnLoadCompleted(rowcnt)>
CB_BRAND_CD_R.value = "";
</script>
<!-- 콤보를 OnCloseUp 했을 경우 (대분류 호출) -->
<script language=JavaScript for=CB_BRAND_CD_R event=OnCloseUp()()>
getMenuBCombo(DS_DCD, "Y", "Y", CB_BRAND_CD_R.value, "1");
CB_MENU_DCD.index = 0;
</script>
<!-- 콤보를 SelChang 했을 경우 (대분류 호출) -->
<script language=JavaScript for=CB_BRAND_CD_R event=OnKeyDown(kcode)>
//if(kcode != 37 && kcode != 38 && kcode != 39 && kcode != 40) return;
getMenuBCombo(DS_DCD, "Y", "Y", CB_BRAND_CD_R.value, "1");
CB_MENU_DCD.index = 0;
</script>
<!-- 콤보를 SelChang 했을 경우 (중분류 호출) -->
<script language=JavaScript for=CB_MENU_DCD event=OnCloseUp()()>
getMenuBCombo(DS_JCD, "Y", "Y", CB_BRAND_CD_R.value, "2", CB_MENU_DCD.BindColVal);
CB_MENU_JCD.index = 0;
</script>
<!-- 콤보를 SelChang 했을 경우 (중분류 호출) -->
<script language=JavaScript for=CB_MENU_DCD event=OnKeyDown(kcode)>
if(kcode != 37 && kcode != 38 && kcode != 39 && kcode != 40) return;
getMenuBCombo(DS_JCD, "Y", "Y", CB_BRAND_CD_R.value, "2", CB_MENU_DCD.BindColVal);
CB_MENU_JCD.index = 0;
</script>
<!-------------------- 가우스 이벤트 처리 끝----------------------->
<!--------------------------------------------------------------->
<!----------------가우스 DataSet & Transaction 정의---------------->
<!--------------------------------------------------------------->
<comment id="_NSID_"><object id="DS_MCD" classid="<%=Util.CLSID_DATASET%>"></object></comment> <script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_BRD" classid="<%=Util.CLSID_DATASET%>"></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_DCD" classid=<%=Util.CLSID_DATASET%>></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_JCD" classid=<%=Util.CLSID_DATASET%>></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_Main" classid="<%=Util.CLSID_DATASET%>"></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_STORE" classid="<%=Util.CLSID_DATASET%>"></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="TR_Search" classid="<%=Util.CLSID_TRANSACTION%>"><param name="KeyName" value="Toinb_dataid4"></object></comment><script> _ws_(_NSID_);</script>
<comment id="_NSID_"><object id="DS_CCD" classid="<%=Util.CLSID_DATASET%>"></object></comment><script> _ws_(_NSID_);</script>
<!-------------- 가우스 DataSet & Transaction 정의끝 -------------->
<!----------------------- 본 문 시 작 ------------------------------->
<body onload="onStart();" class="body_main" >
<%@ include file="/jsp/com/titleButton.jsp"%>
<div id="searchbox2">
<div class="sboxL">
<div class="SboxR">
<div class="sboxsize">
<table cellpadding="1" cellspacing="1" border="0">
<tr>
<td>
<table>
<td class="tdlabel" width="60">마감 년월</td>
<td width="100"><comment id="_NSID_"><object id=EM_SALE_YYMM_R classid=<%=Util.CLSID_EMEDIT%> width=60 class="ginputbox" ></object></comment><script> _ws_(_NSID_);</script>
<img id=imgExpsDt1 src='/feos/img/icon/icon_cal.gif' style="cursor:hand" onclick="showModalCalendarYM(EM_SALE_YYMM_R);" class="imgvTs">
</td>
<td class="tdlabel"><%=Dictionary.getDic("COM", "STORE_CD")%></td>
<td><input type="text" id="SH_STORE_CD_R" class="inputbox_n" maxlength="4" style="width:40" onBlur="javascript:onStoreKeyDown(this.value);" onKeyUp="onKeyUpTextBox(this,'NUMERIC');">
<img id=getshowStorePopup src='/feos/img/icon/icon_srh.gif' style="cursor:hand" onclick="javascript:btn_StorePopup()" class="imgvM">
<input type="text" id="SH_STORE_NM" class="inputbox_R" readOnly style="width:120" >
<input type="hidden" id="CB_BRAND_CD_R" class="inputbox_R" readOnly style="width:120" >
</td>
<!-- 메뉴코드 -->
<td class="label"><%=Dictionary.getDic("COM", "MENU_CD")%></td>
<td><comment id="_NSID_"><object id=EM_MENU_CD_R classid=<%=Util.CLSID_EMEDIT%> width="50" class="ginputbox" onBlur="javascript:OnKeyDownMenuCd(this.Text);"></object></comment><script> _ws_(_NSID_);</script>
<input type="text" class="inputbox_R" style="width:0" >
<img src="/feos/img/icon/icon_srh.gif" class="imgvM" onclick="javascript:btn_MenuPopup();" hspace="3">
<comment id="_NSID_"><object id=EM_MENU_NM_R classid=<%=Util.CLSID_EMEDIT%> width="170" class="ginputbox"> </object></comment><script> _ws_(_NSID_);</script>
</td>
</table>
</td>
</tr>
<tr>
<td>
<table>
<tr>
<td class="label">메뉴 대/중 분류</td>
<td><comment id="_NSID_"><object id=CB_MENU_DCD classid=<%=Util.CLSID_LUXECOMBO%> width=100></object></comment><script> _ws_(_NSID_);</script></td>
<td><comment id="_NSID_"><object id=CB_MENU_JCD classid=<%=Util.CLSID_LUXECOMBO%> width=230> </object></comment><script> _ws_(_NSID_);</script></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div id="divgrid" style="height:480px;">
<table cellpadding="0" cellspacing="0" border="0" width="100%" height="100%">
<tr>
<td height="79%">
<comment id="_NSID_"><object id="GR_Main" height=100% width=100% classid=<%=Util.CLSID_GRID%>></object></comment> <script> _ws_(_NSID_);</script>
</td>
</tr>
</table>
</div>
</body>
</html>