今回もサンプルには、架空のベイトップ書房の見積書を使用します。この見積書は、あるお客様の見積書のスプールやデザインを元に、サンプル用に変更を加えたものなので、基本的な考え方は共通です。これから条件付けのお話しをするために使用する消費税に関するコメントも、そのお客様では連続用紙にドット・プリンターで印刷していた時代に使用していたものと同じです。つまり、ドット・プリンターに印刷していた時のアプリケーションには変更を加えずに、Mapping を使って新しい表現方法に変わっているということです。
そのお客様では、見積り金額を表示するに当たって、消費税込みの金額を使用する場合と消費税抜きの金額を使用する場合があります。そこで、見積書の表紙の事前印刷部分に、予め "上記の御見積り金額には消費税が含まれていません。" という文言を印刷しておきます。そして、消費税込みの金額を表示する場合には、スプール・ファイルの中の該当する場所に "*" を続けて配置して、プリンターが印刷する "*" によって上からその文言を打ち消すという方法が採られていました。
Mapping を使って、見積書を PDF ファイル化するに当たっては折角なので、直接 "上記の御見積り金額には消費税が含まれています。"、若しくは、"上記の御見積り金額には消費税が含まれていません。" という文言を表示するようにしたいという、お客様のご要望がありました。
そこで、具体的には次のようなゾーンの設計を行って、ご要望を実現しました。
なお、"*" が存在する場合には、20 行目の 34 桁目から始まるものとします。
1. 先ず、消費税が含まれる場合のゾーンを設計します。その場合は、スプール・データの中に "*" が含まれています。"*" は表示しないようにするために、"*" の無い、必ずブランクとなっている、21 行目の 34 桁目から 1 桁をゾーンに対応する桁の場所として指定します。
消費税が含まれる金額の場合のゾーンのプロパティ |
3. ゾーンのプロパティ画面の "条件" タブ画面で条件設定を行います。条件の設定項目自体は、前回までにお話ししたフォーマットの場合と同じです。このサンプルでは、次のように設定しています。
- There isn't : もし、無かったら
- in line 20 : 20行目
- between columns 34 and 34 : 34桁目
- the value 1 桁のブランク : 1 桁のブランク
以上から、20 行目の 34 桁目にブランクが無ければ、つまり何かデータがあったら実行するという設定になります。
もちろん、データは "*" であることが分かっていますので、次の設定でも良いわけです。
- There is : もし、あったら
- the value * : *
ゾーンの条件設定画面 |
- ゾーン名 : 消費税なし
- ゾーンの後に追加する文字 : 上記の御見積り金額には消費税が含まれていません。
- There is : もし、あったら
あるいは、消費税ありと同じ条件のままとして、"論理ルール" 欄に "not 1" と設定します。
消費税が含まれない金額の場合のゾーンのプロパティ |
ゾーンの条件設定画面 |
4. MapDraw では、ゾーンを重ねて配置できますので、上記の方法で設計した 2 つのゾーンを、次のように重ねて配置すると、同じ場所に "消費税込み" か、"消費税抜き" かのどちらかの文言を表示することができます。
MapDraw の MapF 画面 |
MapDraw のプレビュー画面 |
0 件のコメント:
コメントを投稿