> フロント機能 > 「会社名」「部署名」の追加 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ukai |
投稿日時: 2010/4/2 15:36
対応状況: −−−
|
常連 登録日: 2009/5/29 居住地: 東京都 投稿: 54 |
Re: 「会社名」「部署名」の追加 こんにちは。
PCサイトのチェックならlfErrorCheckの変更で いいと思います。 lfErrorCheck1 lfErrorCheck2 lfErrorCheck3 この三つのエラーチェック関数は、携帯サイトの会員登録用の 項目チェックです。 |
tae01415 |
投稿日時: 2010/4/3 15:12
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 ukaiさん
どうもありがとうございます。 //---- 入力エラーチェック function lfErrorCheck($array) $objErr->doFunc(array("会社名", 'company_name', MTEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); $objErr->doFunc(array("部署名", 'section_name', MTEXT_LEN), array("NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 利用者が使用する機能に関しては、無事「会社名」「部署名」の追加ができました!! 管理者用機能では、まだ、「会社名」「部署名」の追加ができていません。 以下のファイルを変更する必要があるであろうことはわかりました。 data/class/pages/admin/contents/LC_Page_Admin_Contents_Inquiry.php data/class/pages/admin/customer/LC_Page_Admin_Customer.php data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.php data/class/pages/admin/customer/LC_Page_Admin_Customer_SearchCustomer.php data/class/pages/admin/order/LC_Page_Admin_Order.php data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php data/Smarty/templates/default/admin/customer/edit.tpl data/Smarty/templates/default/admin/customer/edit_confirm.tpl data/Smarty/templates/default/admin/customer/index.tpl data/Smarty/templates/default/admin/customer/search_customer.tpl data/Smarty/templates/default/admin/order/disp.tpl data/Smarty/templates/default/admin/order/edit.tpl 今、挑戦中です。 わからないところがあれば、また質問させていただきます。 どうかよろしくお願いいたします。 |
tae01415 |
投稿日時: 2010/4/3 17:16
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 顧客マスタの検索から始めました。
条件検索結果を編集・更新することはできるようになりました。 ●data/Smarty/templates/default/admin/customer/edit.tpl <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">フリガナ<span class="red"> *</span></td> <td bgcolor="#ffffff" width="527"><span class="red12"><!--{$arrErr.kana01}--><!--{$arrErr.kana02}--></span><input type="text" name="kana01" value="<!--{$list_data.kana01|escape}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" size="30" class="box30" <!--{if $arrErr.kana01 != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /> <input type="text" name="kana02" value="<!--{$list_data.kana02|escape}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" size="30" class="box30" <!--{if $arrErr.kana02 != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /></td> </tr> ○この下に、以下を追加 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">会社名<span class="red"> *</span></td> <td bgcolor="#ffffff" width="527"><span class="red12"><!--{$arrErr.company_name}--></span><input type="text" name="company_name" value="<!--{$list_data.company_name|escape}-->" maxlength="<!--{$smarty.const.MTEXT_LEN}-->" size="60" class="box60" <!--{if $arrErr.company_name != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /></td> </tr> <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">部署名</td> <td bgcolor="#ffffff" width="527"><span class="red12"><!--{$arrErr.section_name}--></span><input type="text" name="section_name" value="<!--{$list_data.section_name|escape}-->" maxlength="<!--{$smarty.const.MTEXT_LEN}-->" size="60" class="box60" <!--{if $arrErr.section_name != ""}--><!--{sfSetErrorStyle}--><!--{/if}--> /></td> </tr> ●data/Smarty/templates/default/admin/customer/edit_confirm.tpl <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">フリガナ<span class="red"> *</span></td> <td bgcolor="#ffffff" width="527"><!--{$arrForm.kana01|escape}--><!--{$arrForm.kana02|escape}--> 様</td> </tr> ○この下に、以下を追加 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">会社名<span class="red"> *</span></td> <td bgcolor="#ffffff" width="527"><!--{$arrForm.company_name|escape}--></td> </tr> <tr class="fs12n"> <td bgcolor="#f2f1ec" width="190">部署名</td> <td bgcolor="#ffffff" width="527"><!--{$arrForm.section_name|escape}--></td> </tr> その前段階の「検索条件設定」画面に、「会社名」「部署名」の欄を追加し、検索する方法がわかりません。 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&topic_id=3811&forum=2 を見てもわかりませんでした。 おそれいりますが、アドバイスをお願いいたします。 |
tae01415 |
投稿日時: 2010/4/3 18:19
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 すみません。自己解決しました。
●data/Smarty/templates/admin/customer/index.tpl の変更でできました。 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">顧客名</td> <td bgcolor="#ffffff" width="194"><!--{if $arrErr.name}--><span class="red12"><!--{$arrErr.name}--></span><br><!--{/if}--><input type="text" name="name" maxlength="<!--{$smarty.const.STEXT_LEN}-->" value="<!--{$arrForm.name|escape}-->" size="30" class="box30" <!--{if $arrErr.name}--><!--{sfSetErrorStyle}--><!--{/if}--> /></td> <td bgcolor="#f2f1ec" width="110">顧客名(カナ)</td> <td bgcolor="#ffffff" width="195"><!--{if $arrErr.kana}--><span class="red12"><!--{$arrErr.kana}--></span><br><!--{/if}--><input type="text" name="kana" maxlength="<!--{$smarty.const.STEXT_LEN}-->" value="<!--{$arrForm.kana|escape}-->" size="30" class="box30" <!--{if $arrErr.kana}--><!--{sfSetErrorStyle}--><!--{/if}--> /></td> </tr> ○この下に、以下を追加 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">会社名</td> <td bgcolor="#ffffff" width="499" colspan="3"><!--{if $arrErr.company_name}--><span class="red12"><!--{$arrErr.company_name}--></span><!--{/if}--><input type="text" name="company_name" maxlength="<!--{$smarty.const.STEXT_LEN}-->" value="<!--{$arrForm.company_name|escape}-->" size="60" class="box60" <!--{if $arrErr.company_name}--><!--{sfSetErrorStyle}--><!--{/if}-->/></td> </tr> <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">部署名</td> <td bgcolor="#ffffff" width="499" colspan="3"><!--{if $arrErr.section_name}--><span class="red12"><!--{$arrErr.section_name}--></span><!--{/if}--><input type="text" name="section_name" maxlength="<!--{$smarty.const.STEXT_LEN}-->" value="<!--{$arrForm.section_name|escape}-->" size="60" class="box60" <!--{if $arrErr.section_name}--><!--{sfSetErrorStyle}--><!--{/if}-->/></td> </tr> 今度は、もうちょっと調べてから質問します。 どうぞよろしくお願いします。 |
tae01415 |
投稿日時: 2010/4/3 21:51
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 受注管理の変更内容
●data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php /* パラメータ情報の初期化 */ function lfInitParam() { $this->objFormParam->addParam("顧客名カナ2", "order_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); ○この下に、下記を追加 $this->objFormParam->addParam("会社名", "order_company_name", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); $this->objFormParam->addParam("部署名", "order_section_name", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); ●data/class/pages/admin/order/LC_Page_Admin_Order.php case 'search_order_kana': if(DB_TYPE == "pgsql"){ $where .= " AND order_kana01||order_kana02 ILIKE ?"; }elseif(DB_TYPE == "mysql"){ $where .= " AND concat(order_kana01,order_kana02) ILIKE ?"; } $nonsp_val = mb_ereg_replace("[ ]+","",$val); $arrval[] = "%$nonsp_val%"; break; ○この下に下記を追加 case 'search_order_company_name': $where .= " AND order_company_name ILIKE ?"; $arrval[] = "%$val%"; break; case 'search_order_section_name': $where .= " AND order_section_name ILIKE ?"; $arrval[] = "%$val%"; break; /* パラメータ情報の初期化 */ function lfInitParam() 以下の追加 $this->objFormParam->addParam("会社名", "search_order_company_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK")); $this->objFormParam->addParam("部署名", "search_order_section_name", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK")); ●data/Smarty/templates/default/admin/order/index.tpl <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">顧客名</td> <td bgcolor="#ffffff" width="194"> <!--{assign var=key value="search_order_name"}--> <span class="red12"><!--{$arrErr[$key]}--></span> <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key].value|escape}-->" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" size="30" class="box30" /> </td> <td bgcolor="#f2f1ec" width="110">顧客名(カナ)</td> <td bgcolor="#ffffff" width="195"> <!--{assign var=key value="search_order_kana"}--> <span class="red12"><!--{$arrErr[$key]}--></span> <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key].value|escape}-->" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" size="30" class="box30" /> </td> </tr> ○この下に、下記を追加 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">会社名</td> <td bgcolor="#ffffff" width="194"> <!--{assign var=key value="search_order_company_name"}--> <span class="red12"><!--{$arrErr[$key]}--></span> <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key].value|escape}-->" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" size="30" class="box30" /> </td> <td bgcolor="#f2f1ec" width="110">部署名</td> <td bgcolor="#ffffff" width="195"> <!--{assign var=key value="search_order_section_name"}--> <span class="red12"><!--{$arrErr[$key]}--></span> <input type="text" name="<!--{$key}-->" value="<!--{$arrForm[$key].value|escape}-->" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key]|sfGetErrorColor}-->" size="30" class="box30" /> </td> </tr> ●data/Smarty/templates/default/admin/order/edit.tpl df.deliv_kana02.value = df.order_kana02.value; df.deliv_company_name.value = df.order_company_name.value; df.deliv_section_name.value = df.order_section_name.value; <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">顧客名</td> <td bgcolor="#ffffff" width="248"> <!--{assign var=key1 value="order_name01"}--> <!--{assign var=key2 value="order_name02"}--> <span class="red12"><!--{$arrErr[$key1]}--><!--{$arrErr[$key2]}--></span> <input type="text" name="<!--{$key1}-->" value="<!--{$arrForm[$key1].value|escape}-->" maxlength="<!--{$arrForm[$key1].length}-->" style="<!--{$arrErr[$key1]|sfGetErrorColor}-->" size="15" class="box15" /> <input type="text" name="<!--{$key2}-->" value="<!--{$arrForm[$key2].value|escape}-->" maxlength="<!--{$arrForm[$key2].length}-->" style="<!--{$arrErr[$key2]|sfGetErrorColor}-->" size="15" class="box15" /> </td> <td bgcolor="#f2f1ec" width="110">顧客名(カナ)</td> <td bgcolor="#ffffff" width="249"> <!--{assign var=key1 value="order_kana01"}--> <!--{assign var=key2 value="order_kana02"}--> <span class="red12"><!--{$arrErr[$key1]}--><!--{$arrErr[$key2]}--></span> <input type="text" name="<!--{$key1}-->" value="<!--{$arrForm[$key1].value|escape}-->" maxlength="<!--{$arrForm[$key1].length}-->" style="<!--{$arrErr[$key1]|sfGetErrorColor}-->" size="15" class="box15" /> <input type="text" name="<!--{$key2}-->" value="<!--{$arrForm[$key2].value|escape}-->" maxlength="<!--{$arrForm[$key2].length}-->" style="<!--{$arrErr[$key2]|sfGetErrorColor}-->" size="15" class="box15" /> </td> </tr> ○この下に、下記を追加 <tr class="fs12n"> <td bgcolor="#f2f1ec" width="110">会社名</td> <td bgcolor="#ffffff" width="248"> <!--{assign var=key1 value="order_company_name"}--> <span class="red12"><!--{$arrErr[$key1]}--></span> <input type="text" name="<!--{$key1}-->" value="<!--{$arrForm[$key1].value|escape}-->" maxlength="<!--{$arrForm[$key1].length}-->" style="<!--{$arrErr[$key1]|sfGetErrorColor}-->" size="15" class="box15" /> </td> <td bgcolor="#f2f1ec" width="110">部署名</td> <td bgcolor="#ffffff" width="249"> <!--{assign var=key1 value="order_section_name"}--> <span class="red12"><!--{$arrErr[$key1]}--></span> <input type="text" name="<!--{$key1}-->" value="<!--{$arrForm[$key1].value|escape}-->" maxlength="<!--{$arrForm[$key1].length}-->" style="<!--{$arrErr[$key1]|sfGetErrorColor}-->" size="15" class="box15" /> </td> </tr> ●data/Smarty/templates/default/admin/order/disp.tpl <tr class="fs12n"> <td bgcolor="#f0f0f0" >顧客名</td> <td bgcolor="#ffffff" ><!--{$arrForm.order_name01.value|escape}--> <!--{$arrForm.order_name02.value|escape}--></td> <td bgcolor="#f0f0f0" >顧客名(カナ)</td> <td bgcolor="#ffffff" ><!--{$arrForm.order_kana01.value|escape}--> <!--{$arrForm.order_kana02.value|escape}--></td> </tr> ○この下に、下記を追加 <tr class="fs12n"> <td bgcolor="#f0f0f0" >会社名</td> <td bgcolor="#ffffff" ><!--{$arrForm.order_company_name.value|escape}--></td> <td bgcolor="#f0f0f0" >部署名</td> <td bgcolor="#ffffff" ><!--{$arrForm.order_section_name.value|escape}--></td> </tr> 上記のように変更しました。 およそ正しいと思われるのですが、若干不安があります。 おそれいりますが、アドバイスをお願いいたします。 |
tae01415 |
投稿日時: 2010/4/4 9:56
対応状況: 開発中
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 この変更も必要なようです。
●/data/class/SC_CustomerList.php // 名前(カナ) if (!isset($this->arrSql['kana'])) $this->arrSql['kana'] = ""; if ( strlen($this->arrSql['kana']) > 0 ) { if(DB_TYPE == "pgsql"){ $this->setWhere("(kana01 || kana02 LIKE ?)"); }elseif(DB_TYPE == "mysql"){ $this->setWhere("concat(kana01,kana02) LIKE ?" ); } $searchKana = $this->addSearchStr($this->arrSql['kana']); $this->arrVal[] = mb_ereg_replace("[ ]+","",$searchKana); } ○この下に、下記を追加する。 // 会社名 if (!isset($this->arrSql['company_name'])) $this->arrSql['company_name'] = ""; if ( strlen($this->arrSql['company_name']) > 0 ) { $this->setWhere( "company_name Like ?" ); $this->arrVal[] = $this->arrSql['company_name']; } // 部署名 if (!isset($this->arrSql['section_name'])) $this->arrSql['section_name'] = ""; if ( strlen($this->arrSql['section_name']) > 0 ) { $this->setWhere( "section_name Like ?" ); $this->arrVal[] = $this->arrSql['section_name']; } ●data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.php //---- 入力エラーチェック function lfErrorCheck($array) { $objErr->doFunc(array("会社名", 'company_name', MSTEXT_LEN), array("EXIST_CHECK", "MAX_LENGTH_CHECK")); $objErr->doFunc(array("部署名", 'section_name', MSTEXT_LEN), array("MAX_LENGTH_CHECK")); |
ukai |
投稿日時: 2010/4/5 11:26
対応状況: −−−
|
常連 登録日: 2009/5/29 居住地: 東京都 投稿: 54 |
Re: 「会社名」「部署名」の追加 こんにちは。
自分のほうでも以前同じようなカスタマイズを したことがありました。 その時に顧客から要望があったのは ・サイト側・管理側の機能への会社名・部署名の項目追加 ・お問合せページへの会社名・項目名追加 ・別のお届け先への会社名・部署名の追加 ・注文確認メールへの会社名・部署名の追加 などの要望があがりました。 もうtae01415さんは対応されているようなんですが、 一応ご参考までに… |
tae01415 |
投稿日時: 2010/4/5 15:18
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 ukaiさん
ご助言、どうもありがとうございます。 >その時に顧客から要望があったのは >・サイト側・管理側の機能への会社名・部署名の項目追加 >・お問合せページへの会社名・項目名追加 >・別のお届け先への会社名・部署名の追加 >・注文確認メールへの会社名・部署名の追加 >などの要望があがりました。 私が目標としているカスタマイズもほぼ同内容です。 EC-CUBEのソースを見るのも、カスタマイズするのもはじめてのため、悪戦苦闘しています。 また、質問させていただきますので、どうぞアドバイスよろしくお願いいたします。 |
tae01415 |
投稿日時: 2010/4/5 15:40
対応状況: −−−
|
常連 登録日: 2010/3/31 居住地: 大阪 投稿: 32 |
Re: 「会社名」「部署名」の追加 いつもお世話になります。
●/data/class/SC_CustomerList.php // 名前(カナ) if (!isset($this->arrSql['kana'])) $this->arrSql['kana'] = ""; if ( strlen($this->arrSql['kana']) > 0 ) { if(DB_TYPE == "pgsql"){ $this->setWhere("(kana01 || kana02 LIKE ?)"); }elseif(DB_TYPE == "mysql"){ $this->setWhere("concat(kana01,kana02) LIKE ?" ); } $searchKana = $this->addSearchStr($this->arrSql['kana']); $this->arrVal[] = mb_ereg_replace("[ ]+","",$searchKana); } ○この下に、下記を追加する。 // 会社名 if (!isset($this->arrSql['company_name'])) $this->arrSql['company_name'] = ""; if ( strlen($this->arrSql['company_name']) > 0 ) { $this->setWhere( "company_name Like ?" ); $this->arrVal[] = $this->arrSql['company_name']; } // 部署名 if (!isset($this->arrSql['section_name'])) $this->arrSql['section_name'] = ""; if ( strlen($this->arrSql['section_name']) > 0 ) { $this->setWhere( "section_name Like ?" ); $this->arrVal[] = $this->arrSql['section_name']; } と変更しているのですが、 1.「会社名」であいまい検索ができません。 2.「部署名」に正しい値を入力しても、検索されません。 SQL文が間違っているようなのですが、解決できません。 どうか、アドバイスをお願いいたします。 |
ukai |
投稿日時: 2010/4/5 17:09
対応状況: −−−
|
常連 登録日: 2009/5/29 居住地: 東京都 投稿: 54 |
Re: 「会社名」「部署名」の追加 確証はないですが
引用:
と同じように、DB_TYPEがpgsqlの場合とmysqlの場合とで Where句を分けてあげることが必要かと思います。 自分のほうでも同じ箇所をカスタマイズしています。 その部分以外はほとんどコード一緒ですが、あいまい検索も できていますよ。 会社名は if (!isset($this->arrSql['company_name'])) $this->arrSql['company_name'] = ""; if ( strlen($this->arrSql['company_name']) > 0 ) { if(DB_TYPE == "pgsql"){ $this->setWhere("(company_name LIKE ?)" ); }elseif(DB_TYPE == "mysql"){ $this->setWhere("concat(company_name) LIKE ?" ); } $searchCompanyName = $this->addSearchStr($this->arrSql['company_name']); $this->arrVal[] = mb_ereg_replace("[ ]+","",$searchCompanyName); } こんな感じで書いています。 |
« 1 (2) 3 4 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |