バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

プラグイン > バグ報告・利用に関する質問 > 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない

バグ報告・利用に関する質問

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
misato
投稿日時: 2021/4/1 15:30
対応状況: −−−
半人前
登録日: 2015/7/9
居住地:
投稿: 16
【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
▼テンプレート
[EC-CUBE]
3.0.17

[レンタルサーバ]
ヘテムル

[OS]
Windows10

[サーバーOS]
Linux users79.heteml.jp 4.14.33-300.1.1.hl6.x86_64 #1 SMP Mon Apr 9 03:08:03 JST 2018 x86_64

[PHP]
5.4.45 (Core, date, ereg, libxml, openssl, pcre, sqlite3, zlib, bcmath, bz2, calendar, ctype, curl, dom, hash, fileinfo, filter, ftp, gd, gettext, SPL, iconv, session, intl, json, mbstring, mcrypt, standard, mysqlnd, mysqli, pcntl, mysql, PDO, pdo_mysql, pdo_sqlite, Phar, posix, readline, Reflection, imap, shmop, SimpleXML, soap, sockets, exif, sysvsem, sysvshm, tidy, tokenizer, xml, xmlreader, xmlrpc, xmlwriter, xsl, zip, cgi-fcgi, htscanner, SQLite, mhash, ionCube Loader)

[データベース]
MySQL 5.6.13-log

[WEBサーバ]
Apache

[ブラウザ]
GoogleChrome、Microsoft Edge

[導入プラグインの有無]
(オーナーズストアプラグイン)OrderPdf/商品オプションプラグイン/商品並び替えプラグイン/ZeusPayment
(独自プラグイン)MailMagazine/EC-CUBEセキュリティチェックプラグイン(3.0系)

[カスタマイズの有無]

[現象]
OrderPdfを使用しています。
受注管理>受注マスター>から帳票PDFを出力したい注文を選択して、PDF出力したところ、購入者情報、お届け先電話番号ともに電話番号の先頭に 0 が含まれる場合に「0」が省略されてしまい表示されません。

具体的には下記のような感じです。

電話番号:080-0123-0001の場合、市外局番の箇所は先頭が0でも省略されることはありませんが、真ん中と下4桁似関しては先頭に0が含まれている場合、帳票PDFで出力すると下記のように表示されます。

帳票PDFでの出力:080-123-1

原因と解決方法を教えていただけないでしょうか?
お手数をおかけいたしますがよろしくお願いいたします。
468
投稿日時: 2021/4/1 17:30
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2922
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
注文データ自体には正常に値が入っていますでしょうか?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

misato
投稿日時: 2021/4/2 9:23
対応状況: −−−
半人前
登録日: 2015/7/9
居住地:
投稿: 16
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
>注文データ自体には正常に値が入っていますでしょうか?

注文情報を確認しましたが、注文者情報、お届け先情報どちらもデータは入っております。
また、注文が入った時に管理者に自動送信されるメールも記載はされております。

ちなみに郵便番号は0023でも頭2つの0は表示されております。

お手数をおかけいたしますが宜しくお願いいたします。
468
投稿日時: 2021/4/2 9:26
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2922
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
OrderPdfに対して何かカスタマイズを加えていたりしますか?
OrderPdfはよく利用しており、デフォルトで過去にそのような現象が起きた事がない為、
レイアウト変更等のカスタマイズを加えた際、TEL2, TEL3が数値として処理されるようなロジックを組み込んだ可能性が無いかどうかが気になります。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

misato
投稿日時: 2021/4/2 9:40
対応状況: −−−
半人前
登録日: 2015/7/9
居住地:
投稿: 16
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
ご返信ありがとうございます。

OrderPdfに関して過去に下記のような質問をさせていただいており実装済みです。
文章で記載するより過去スレットを見ていただいた方が分かりやすいかと思いますので下記に列挙いたします。


EC-CUBE3系|帳票出力プラグイン(OrderPdf)への支払い方法表示(2019/6/3 13:29:45)
https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=22116&forum=19&post_id=92608#forumpost92608

【EC-CUBE3系】帳票出力プラグイン(OrderPdf)に注文者の電話番号を表示したい(2019/6/10 17:16:52)
https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=22152&forum=19&post_id=92752#forumpost92752

【EC-CUBE3系】OrderPdfに受け取り希望日を表示したい (2019/6/11 10:16:56)
https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=22159&forum=10&post_id=92777#forumpost92777



参考になるか分かりませんが、OrderPdfService.phpに記載されている関係がありそうな箇所のソースを記載いたします。


// =========================================
// 購入者情報部
// =========================================
// 郵便番号
$text = '〒 '.$Order->getZip01().' - '.$Order->getZip02();
$this->lfText(23, 43, $text, 10);

// 購入者都道府県+住所1
$text = $Order->getPref().$Order->getAddr01();
$this->lfText(47, 43, $text, 10);
$this->lfText(27, 47, $Order->getAddr02(), 10); //購入者住所2

// 会社名
$text = $Order->getCompanyName();
$this->lfText(27, 55, $text, 10);

// 購入者氏名
$text = $Order->getName01().' '.$Order->getName02().' 様';
$this->lfText(27, 59, $text, 11);

// 注文者ヨミガナ
$text = '('.$Order->getKana01().' '.$Order->getKana02().')';
$this->lfText(62, 59, $text, 9);

// 注文者電話番号
$this->lfText(27, 64, $Order->getTel01().-$Order->getTel02().-$Order->getTel03(), 10);


// =========================================
// お買い上げ明細部
// =========================================
$this->SetFont(self::FONT_SJIS, '', 10);

//ご注文日
$orderDate = $Order->getCreateDate()->format('Y/m/d H:i');
if ($Order->getOrderDate()) {
$orderDate = $Order->getOrderDate()->format('Y/m/d H:i');
}
$this->lfText(23, 125, $orderDate , 10);

//注文番号
$this->lfText(73, 125, $Order->getId(), 10);

// お支払い方法
$this->lfText(23, 135, $Order->getpayment(), 10);
$Shipping = $Order->getShippings()[0];

// お届け希望日
if ($Shipping->getShippingDeliveryDate()) {
$text = $Shipping->getShippingDeliveryDate();
$text = $text->format('Y年m月d日');
$this->lfText(73, 135, $text, 10);
}

// お届け希望時間
if ($Shipping->getShippingDeliveryTime()) {
$text = $Shipping->getShippingDeliveryTime();
$this->lfText(73, 139, $text, 10);
}



// お届け先郵便番号
$text = '〒 '.$Shipping->getZip01().' - '.$Shipping->getZip02();
$this->lfText(114, 125, $text, 10);

// お届け先都道府県+住所1
$text = $Shipping->getPref().$Shipping->getAddr01();
$this->lfText(139, 125, $text, 10);
$this->lfText(114, 129, $Shipping->getAddr02(), 10); //お届け先住所2
// 会社名
$text = $Shipping->getCompanyName();
$this->lfText(114, 137, $text, 10);

// お届け先氏名
$text = $Shipping->getName01().' '.$Shipping->getName02().' 様';
$this->lfText(114, 141, $text, 10);

// お届け先ヨミガナ
$text = '('.$Shipping->getKana01().' '.$Shipping->getKana02().')';
$this->lfText(143, 141, $text, 9);

// お届け先電話番号
$this->lfText(114, 146, $Shipping->getTel01().-$Shipping->getTel02().-$Shipping->getTel03(), 10);


お手数をおかけいたしますが宜しくお願いいたします。
468
投稿日時: 2021/4/2 10:25
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 2922
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
原因は以下の記述かと思います。

-$Order->getTel02()
-$Order->getTel03()

こちらはPHP上では、-1 × $Order->getTel02()の数式が文字連結の前に実行され、TEL2とTEL3が数値に変換されていると思います。

正しくは
$Order->getTel01() . '-' . $Order->getTel02() . '-' . $Order->getTel03()
とハイフンが文字という事をきちんと書いておく必要があります。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

misato
投稿日時: 2021/4/2 11:16
対応状況: −−−
半人前
登録日: 2015/7/9
居住地:
投稿: 16
Re: 【EC-CUBE3系】OrderPdfで電話番号の一部が表示されない
ありがとうございます!
該当部分を下記のように書き換えたところ、0が省略されずに表示されるようになりました。

■注文者情報電話番号
// 注文者電話番号
$this->lfText(27, 64, $Order->getTel01() . '-' . $Order->getTel02() . '-' . $Order->getTel03(), 10);

■お届先情報の電話番号
// お届け先電話番号
$this->lfText(114, 146, $Shipping->getTel01() . '-' . $Shipping->getTel02() . '-' . $Shipping->getTel03(), 10);

この度はご丁寧に教えていただきましてありがとうございました!
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は70,564名です
総投稿数は100,702件です

投稿数ランキング

1
seasoft
7333
2
468
2922
3
AMUAMU
2712
4
nanasess
2127
5
umebius
1931
6
yuh
1612
7
red
1437
8
h_tanaka
1076
9
tsuji
926
10
fukap
907
11
shutta
835
12
tao_s
793
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

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

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