質問 > 管理機能 > 売上集計で何時何分まで検索したい |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kyil |
投稿日時: 2014/9/26 15:21
対応状況: −−−
|
半人前 登録日: 2014/9/16 居住地: 投稿: 14 |
売上集計で何時何分まで検索したい ECキューブバージョン:2.13.2
過去フォーラムにありませんでしたのでご質問させて頂きます。 売上集計の期間範囲は標準ですと「年月日」となっていますが、これを「年月日時分」まで拡大して検索したいのです。 データベースのタイムスタンプから取っているとは思うのですが、どこをどう変えたらいいのでしょうか。 ご教授下さい。 宜しくお願いします。 |
kuro_r |
投稿日時: 2014/9/26 18:32
対応状況: −−−
|
常連 登録日: 2014/8/7 居住地: 投稿: 32 |
Re: 売上集計で何時何分まで検索したい kyil 様
テンプレート側とPHP側の変更が必要かと思います。 PHP側は、 data/class/pages/admin/total/LC_Page_Admin_Total.php を参考に、 data/class/pages/admin/total/LC_Page_Admin_Total_EX.php にカスタマイズを実装すればよいかと思います。 データベースにはデータとして時分まで持っていますので、 取得する条件設定部分を考慮してあげればいいだけかなと思います。 |
kyil |
投稿日時: 2014/9/29 13:00
対応状況: −−−
|
半人前 登録日: 2014/9/16 居住地: 投稿: 14 |
Re: 売上集計で何時何分まで検索したい kuro_r 様
ありがとうございます。 どのように記述すればよいのか…知識不足で data/class/pages/admin/total/LC_Page_Admin_Total.php ↑に書き込むものと考えておりました。 $this->arrHour = $objDate->getHour(); $this->arrMinute = $objDate->getMinute(); のようにしてみたところ、エラーが出てしまいうまくいきませんでした。 よろしければ記述を教えて頂けないでしょうか? 宜しくお願い致します。 |
yuh |
投稿日時: 2014/9/29 18:00
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: 売上集計で何時何分まで検索したい エラーログの表記をお願いします。
|
kyil |
投稿日時: 2014/9/30 12:43
対応状況: −−−
|
半人前 登録日: 2014/9/16 居住地: 投稿: 14 |
Re: 売上集計で何時何分まで検索したい 返信ありがとうございます。
Fatal error(E_ERROR): Call to undefined method SC_Date_Ex::getMinute() on [/data/class/pages/admin/total/LC_Page_Admin_Total.php(63)] $this->arrMinute = $objDate->getMinute(); 上記は63行目です。 このように出ておりましたので、63行目をコメントアウトしたところ、エラーは出ないようになりました。 しかし、検索をかけた際に以下メッセージが出て検索できない状態です。 ※ 期間(開始日)が入力されていません。 ※ 期間(終了日)が入力されていません。 追加した項目は以下のとおりです。 public function init()内 // 登録・更新日検索用 $this->arrHour = $objDate->getHour(); //$this->arrMinute = $objDate->getMinute(); // 期間別集計のkey名 'search_starthour', 'search_startminute', 'search_endhour', 'search_endminute', public function lfGetDateDefault()内 $hour = date('h'); $minute = date('i'); $list['starthour'] = $hour; $list['startminute'] = $minute; $list['endhour'] = $hour; $list['endminute'] = $minute; public function lfInitParam(&$objFormParam)内 $objFormParam->addParam('期間(開始日)', 'search_starthour', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['starthour']); $objFormParam->addParam('期間(開始日)', 'search_startminute', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['startminute']); $objFormParam->addParam('期間(終了日)', 'search_endhour', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endhour']); $objFormParam->addParam('期間(終了日)', 'search_endminute', INT_LEN, 'n', array('MAX_LENGTH_CHECK', 'NUM_CHECK'), $arrList['endminute']); public function lfCheckError(&$objFormParam)内 // 期間集計 if ($objFormParam->getValue('search_form') == 2) { $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday', 'search_starthour', 'search_minute'), array('FULL_EXIST_CHECK')); $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday', 'search_hour', 'search_minute'), array('FULL_EXIST_CHECK')); $objErr->doFunc(array('期間(開始日)', 'search_startyear', 'search_startmonth', 'search_startday', 'search_starthour', 'search_startminute'), array('CHECK_DATE')); $objErr->doFunc(array('期間(終了日)', 'search_endyear', 'search_endmonth', 'search_endday', 'search_endhour', 'search_endminute'), array('CHECK_DATE')); $objErr->doFunc(array('期間(開始日)', '期間(終了日)', 'search_startyear', 'search_startmonth', 'search_startday', 'search_starthour', 'search_startminute', 'search_endyear', 'search_endmonth', 'search_endday', 'search_endhour', 'search_endminute'), array('CHECK_SET_TERM')); } /* 日付の初期値 */ public function lfGetDateInit()内 $search_starthour = $search_endhour = date('h'); $search_startminute = $search_endminute = date('i'); public function lfSetStartEndDate(&$objFormParam)内 // 期間集計 elseif ($arrRet['search_form'] == 2) { $sdate = $arrRet['search_startyear'] . '/' . $arrRet['search_startmonth'] . '/' . $arrRet['search_startday'] . ' ' . $arrRet['search_starthour'] . ':' . $arrRet['search_startminute']; $edate = $arrRet['search_endyear'] . '/' . $arrRet['search_endmonth'] . '/' . $arrRet['search_endday'] . ' ' . $arrRet['search_endhour'] . ':' . $arrRet['search_endminute']; } // グラフ用のPNGファイル名 public function lfGetGraphPng($keyname)内 if ($_POST['search_startyear_m'] != '') { $pngname = sprintf('%s_%02d%02d.png', $keyname, substr($_POST['search_startyear_m'],2), $_POST['search_startmonth_m']); } else { $pngname = sprintf('%s_%02d%02d%02d_%02d%02d%02d.png', $keyname, substr($_POST['search_startyear'], 2), $_POST['search_startmonth'], $_POST['search_startday'], $_POST['search_starthour'], $_POST['search_startminute'], substr($_POST['search_endyear'],2), $_POST['search_endmonth'], $_POST['search_endday'], $_POST['search_endhour'], $_POST['search_endminute']); } return $pngname; /** 期間別集計 **/ public function lfGetOrderTerm($type, $sdate, $edate) switch ($type) {内 $xtitle = '(日別)'; $ytitle = '(売上合計)'; $format = '%Y-%m-%d-%h-%i'; $xincline = true; break; public function lfDateTimeArray($type, $st, $ed)内 case 'hour': $format = 'H'; break; case 'minute': $format = 'I'; break; default: $format = 'Y-m-d h:i'; break; 以上です。 長くて見辛いですね、すみません。 |
yuh |
投稿日時: 2014/10/2 15:34
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: 売上集計で何時何分まで検索したい $this->arrMinute = $objDate->getMinute();
ではなく $this->arrMinute = $objDate->getMinutes(); ですね。 もしくは $this->arrMinute = $objDate->getMinutesInterval(); だと思います。 |
kyil |
投稿日時: 2014/10/6 16:48
対応状況: −−−
|
半人前 登録日: 2014/9/16 居住地: 投稿: 14 |
Re: 売上集計で何時何分まで検索したい ご返信ありがとうございます。
該当箇所を変更したところ、エラーは出ませんでしたが期間別の集計が全く機能しなくなりました。 期間を選択して検索しても検索結果0件となります。 月度集計は動いております。 |
yuh |
投稿日時: 2014/10/6 17:58
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1818 |
Re: 売上集計で何時何分まで検索したい ではおそらくどこかで追加した値が引き継がれずに変なパラメータで検索を行っているはずなので、順番にどこまで値が引き継がれているのか、どこから引き継がれていないのかをチェックしてください。
|
kyil |
投稿日時: 2014/10/8 19:56
対応状況: 保留
|
半人前 登録日: 2014/9/16 居住地: 投稿: 14 |
Re: 売上集計で何時何分まで検索したい ありがとうございます。
どうやらスタート時間の時間、分が取得出来ていないようでした。 他と同様の記述をしているので原因がよくわかりませんが… ひとつひとつ調べてみたいと思います。 ありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |