バージョン選択

フォーラム

メニュー

オンライン状況

101 人のユーザが現在オンラインです。 (86 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 100
babylon もっと...

サイト内検索

質問 > 管理機能 > 納品書内容に追記をしたい

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
arts
投稿日時: 2010/1/16 22:13
対応状況: 確認中
長老
登録日: 2009/2/7
居住地:
投稿: 268
納品書内容に追記をしたい
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=5229&forum=11&post_id=25046#forumpost25046

上記を参考に意味を考えながらご注文者のTELを納品書に
表示させることができました。ありがとうございました。
これを応用して下記のようなことをしてみたのですが
考え方に行き詰ってしまい投稿いたしました。

ECCUBEのカスタマイブ編の本を参考に「のしの追加」の
カスタマイズをしました。
のしの有無の表示を納品書にしたいと思い、上記URLの応用と
思いチャレンジしました。
行き詰ったところとしましては、DBの「dtb_order」にadd_optionというフィールドを追加しています。
また、mtb_optionを追加し、
ID0 選択してください
ID1 のしを付ける
ID2 のしなし
このように追加しています。

SC_Fpdf.phpの任意の場所に
$this->lfText(144, 141, $this->arrDisp['add_option'], 10); //のしの有無

このように追記しますとidである1もしくは2が納品書に表示されます。

この追記だとIDの数字が納品書に表示されて当たり前だと思いますができればIDではなく「1」ならのしを付けるなどが納品書に
でて欲しいと思っています。
この場合はSC_fpdf.phpにif文を書くのでしょうか?
それとも他のやり方がありますでしょうか?

PHPなどの理解ができていない為説明もうまくできていないかも
知れませんが、どのような流れで作業するのかなど分かればと思います。
どうぞよろしくお願い致します。


----------------
EC-CUBEバージョン 2.4.4
PHPバージョン PHP 5.2.11
DBバージョン MySQL 4.1.22
サーバー wadax

seasoft
投稿日時: 2010/1/17 0:03
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7369
Re: 納品書内容に追記をしたい
> この場合はSC_fpdf.phpにif文を書くのでしょうか?

その方向で良いと思いますよ。

他にも色々と差分が多い場合はクラス自体を分ける検討も必要ですが、熨斗のみの違いでしたら、if 分岐がスマートだと思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

arts
投稿日時: 2010/1/17 14:39
対応状況: −−−
長老
登録日: 2009/2/7
居住地:
投稿: 268
Re: 納品書内容に追記をしたい
どうもありがとうございます。
以前.tplで使用したif文では動きませんでしたので
SC_Fpdf.phpの中に使われているif文を参考に自分なりに
置き換えてみました。
しかし、そんな簡単にはいかず構文がまちがっていて動きません
でした。
とりあえず、データーベースの内容を直接もってこれる
「支払方法」「配達指定日」「配達時間」を納品書に加えることが
できました。
template_nouhin01の内容も変更し見栄えも整えました。

if文については現在も調べながらやっていますが、基本的には
SC_Fpdf.phpなどに使われているif文を置き換えてやれば
「1」のときにのしを付けるが納品書にもってこれるということで
良いのですよね。

$this->lfText(27, 51, $this->arrDisp['order_addr02'], 10); //購入者住所2

上記のような文は分かりやすく理解が多少なりともできました。


if ( strlen($arrInfo['law_fax01']) > 0 && strlen($arrInfo['law_fax02']) > 0 && strlen($arrInfo['law_fax03']) > 0 ) {
$text .= " FAX: ".$arrInfo['law_fax01']."-".$arrInfo['law_fax02']."-".$arrInfo['law_fax03'];
}
$this->lfText(125, 80, $text, 8); //TEL・FAX

上記がifだと思い、これを見ながら考えていますが考え方は
合っていますでしょうか?

勉強不足で申し訳ありませんが、ご教授頂きたく思います。
よろしくお願い致します。


----------------
EC-CUBEバージョン 2.4.4
PHPバージョン PHP 5.2.11
DBバージョン MySQL 4.1.22
サーバー wadax

seasoft
投稿日時: 2010/1/17 15:24
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7369
Re: 納品書内容に追記をしたい
> 以前.tplで使用したif文では動きませんでしたので
> SC_Fpdf.phpの中に使われているif文を参考に自分なりに
> 置き換えてみました。

*.tpl は Smarty の構文です。
http://www.smarty.net/manual/ja/

*.php は PHP の構文です。
http://php.net/manual/ja/index.php

混同なされませぬよう・・・


> 上記がifだと思い、これを見ながら考えていますが考え方は
> 合っていますでしょうか?

概ね良いかと思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

arts
投稿日時: 2010/1/17 15:42
対応状況: −−−
長老
登録日: 2009/2/7
居住地:
投稿: 268
Re: 納品書内容に追記をしたい
どうもありがとうございます。
構文についてはほぼ同じように考えていました・・・・。

現在自分で使っているPHPの本を読みながらやっていますが
当たり前かも知れませんが、構文の使い方がなかなかECCUBEと似たようなものがなく頭の中で置き換えながら考えています。

先ほどのPHPのif文の各部分の意味を理解して変更していけば
おおよそいけると言う事ですので、もう少しがんばってみようと
思います。

ありがとうございます。


----------------
EC-CUBEバージョン 2.4.4
PHPバージョン PHP 5.2.11
DBバージョン MySQL 4.1.22
サーバー wadax

seasoft
投稿日時: 2010/1/17 16:07
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7369
Re: 納品書内容に追記をしたい
> 現在自分で使っているPHPの本を読みながらやっていますが
> 当たり前かも知れませんが、構文の使い方がなかなかECCUBEと似たようなものがなく頭の中で置き換えながら考えています。

確かに「構文の使い方」は、実装者の思想・思考が反映されるので、結果として、それぞれに癖があると思います。

しかし、PHPの「構文」自体は共通ですから、それぞれを分解して考えると理解できると思います。また、構文だけでなく、関数の意味も理解すると、実装者が何を考えて組んだロジックなのか見通せるようになると思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

arts
投稿日時: 2010/1/17 16:14
対応状況: −−−
長老
登録日: 2009/2/7
居住地:
投稿: 268
Re: 納品書内容に追記をしたい
すみません、ちょと気づいた部分でどのようにデータを
引っ張ってきているかがわかりませんでしたので質問させて
頂きます。

DBのdtb_orderの中にdeliv_dateというカラムがありますが
これはお客様が購入されるときにプルダウンで選びますよね。
その選んだ項目がDBに文字として反映しています。

今私のやりたいことに置き換えると「のしを付ける」をプルダウンで選べば「のしを付ける」が文字としてDBのadd_optionに反映されるということになります。
しかし、今の状態は数字の0や1もしくは2という数字が入っています。これはmtb_optionのIDの数字です。

この「のしを付ける」のカスタマイズのやり方の違いからでしょうか。
もし、プルダウンで選んだ項目が文字としてそのままadd_optionに
反映されれば納品書にも追記ができると思いました。

deliv_dateのようにプルダウンで選んだ項目が文字としてそのまま
DBに登録されるようにするには、どこを参照すると良いでしょうか?

どうぞよろしくお願い致します。


----------------
EC-CUBEバージョン 2.4.4
PHPバージョン PHP 5.2.11
DBバージョン MySQL 4.1.22
サーバー wadax

seasoft
投稿日時: 2010/1/17 18:31
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7369
Re: 納品書内容に追記をしたい
deliv_date の流れを参考にするのが良いのではないでしょうか?

# 2値しか無い項目でしたら、データは現状のままで、出力時に変換するのが個人的には好きですが。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

arts
投稿日時: 2010/1/17 19:30
対応状況: −−−
長老
登録日: 2009/2/7
居住地:
投稿: 268
Re: 納品書内容に追記をしたい
いつもありがとうございます。
出力時に変換ですね。
現在のところ、その術が正直わかりませんが
deliv_dateを参考にもっと考えてみます。
ECCUBEで出力時に変換されている箇所などはあるのでしょうかね。
とりあえず、もっと掘り下げてみて勉強します。


----------------
EC-CUBEバージョン 2.4.4
PHPバージョン PHP 5.2.11
DBバージョン MySQL 4.1.22
サーバー wadax

seasoft
投稿日時: 2010/1/17 22:28
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7369
Re: 納品書内容に追記をしたい
> ECCUBEで出力時に変換されている箇所などはあるのでしょうかね。

都道府県はそういった PHP ロジックだったと思います。

他にも、DB 問い合わせのときに変換(マスタ参照)して取得する手法もあります。(なんて、色々と言ったら、余計に混乱させてしまいますかね・・・^^;)


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

(1) 2 3 4 5 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は90,457名です
総投稿数は110,416件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1695
8
red
1571
9
mcontact
1378
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.