作成した返信
-
著者投稿
-
MZPlatformユーザー会サイト管理者
[コンポーネント格納変数]のメソッド「起動メソッドに引数を追加する(String,Object)」の引数1(引数の型を示す文字列)には「jp.go.aist.dmrc.platform.util.PFObjectList」を設定してみてください。
クラス名(データ型名)はMZPlatformのJavadocで確認できます。
以上お試しいただき、改善されない場合には、またどうぞご返信ください。MZPlatformユーザー会サイト管理者作成された注文票のアプリケーションのうち一方は、画面編集時に単価欄が一番下に、合計欄が真ん中に配置されていました。そのため、単価欄だと思って合計欄に数値を入れることになってしまい、うまく動作していませんでした。数値入力フィールドを入れ替えてお試しください。
それから、帳票要素のデータ取得設定のところで、「数値を取得する()」と「表示されている文字列を取得する()」の2種類ある理由ですが、数値入力フィールドの表示形式>グループ>「あり」を選択すると桁区切りのカンマをが表示できます。例えば「1,000」と表示されている場合、「数値を取得する()」だと数値として1000が取得されますが、「表示されている文字列を取得する()」では「1,000」と表示通りになります。
MZPlatformユーザー会サイト管理者カシオEL-700での検証ありがとうございました。大変参考になり、感謝申し上げます。
カシオのプリンタードライバーをインストールして確認したところ、既定の用紙サイズのテープ長さ10㎜となっています。ご指摘の通り、原稿より大きな用紙の場合、左側に余白を残して印刷される可能性があります。カシオのドライバーではユーザー定義の用紙サイズを追加することができます。MZからも印刷時にユーザ定義の用紙サイズを取得することができました。
テプラの場合ユーザー定義の用紙サイズを追加する機能はなく、明示されていないが既定のテープ長さは420㎜であることが分かりました。したがって事前に原稿に合わせた設定をしておく必要があります。
1)Windowsのプリンターの管理から印刷設定を開き、用紙設定で、使用するテープの幅を選び(例:18mm)、「テープを末端で自動的にカットする(T)」のチェックを外し、任意のテープ長(E)を設定します。オプション>表示設定で、印刷プレビューを表示する(V)にチェックを入れます。適用ボタンを押して設定を保存してください。
※設定したテープ幅についてのみテープ長が変わっています。他のテープ幅には反映されていません。テープ幅を変える場合には、印刷設定をやり直してください。JAVA側の情報取得のタイミング上、MZプラットフォームを立ち上げる前に設定をしておく必要があります。2)帳票印刷で印刷プレービュー時に用紙サイズが設定したものになっているかご確認ください。用紙設定は幅が長辺、高さが短辺の横向きでOKです。
手元のテプラPRO SR970では原稿通り印刷することができました。お時間をいただき、ご不便をお掛けいたしました。以上お試しいただければ幸いです。
- この返信は、 MZPlatformユーザー会 により、 3 年, 4 ヶ月 前 に編集されました。
MZPlatformユーザー会サイト管理者現状で判っていることをお知らせいたします。
大変ご不便をおかけしますが、現在のところ帳票の[ラベル要素]の文字方向の指定機能や回転機能はございません。
長い余白ができてしまう現象についてですが、例えばパワーポイントの原稿でも検証してみたところ、テプラのプリンタードライバーの設定で「テープを末端で自動的にカットする」にチェックが入っていると、テープの長さ全体が用紙サイズとして指定されてしまい、左右に長い余白があり中央に原稿が配置された印刷結果となります。
MZの印刷されない部分でテープが無くなってしまったという現象も、同じ理由ではないかと推測しております。ただ、パワーポイントの場合「テープを末端で自動的にカットする」のチェックを外すと、手動でテープ長さを指定でき、イメージ通りの出力ができます。
しかし、MZの場合は手動でテープ長さを指定しても、やはり長い余白ができます。
JAVAの側の仕様で用紙サイズ取得や縦横の向きが限定されているためと思われます。引き続き、回避方法を検討いたしますが、長くお時間を頂く可能性があります。
ご不便をおかけしておりますが、よろしくお願い申し上げます。MZPlatformユーザー会サイト管理者定型サイズの場合と違って、帳票の用紙サイズがユーザー指定の場合、あくまで「幅」は水平方向、「高さ」は垂直方向の長さとなり、「縦」「横」のチェックマークを変更してもレイアウトは変更されません。
また、JAVAの仕様により、縦横の向きが限定されており、縦向き用紙の辺の長短に対して、帳票ページの辺の長短も一致する向きで印刷されます。
垂直方向を短辺とした帳票原稿を用意していただいても、期待した印刷結果とならない場合は、お手数ですがお知らせいただけないでしょうか。MZPlatformユーザー会サイト管理者過去にWebAPIにアクセスしてJSONデータを取得する方法についての投稿がありましたので、こちらをご参考になさってください。
疑問の点等ありましたら、返信いただければ幸いです。トピック『他ツールで公開されているAPIの用い方について』
https://ssl.monozukuri.org/mzplatform/forums/topic/%E4%BB%96%E3%83%84%E3%83%BC%E3%83%AB%E3%81%A7%E5%85%AC%E9%96%8B%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8Bapi%E3%81%AE%E7%94%A8%E3%81%84%E6%96%B9%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6/MZPlatformユーザー会サイト管理者外部参照機能を設定して開発を進めると、ご要望にあった画面構成部品の位置変更などは共通してできるので便利かと思います。
しかし、完成後に外部参照機能があるアプリケーションを各ユーザーに配布する場合には、参照元の複合コンポーネントも一緒に配布するか、または共有でアクセスできるフォルダに入れ、そこまでのパスを記述したPlatform.iniを配布しなければなりません。
そのため、開発終了後には外部参照無しに変更することも多く、お勧めいたしました。MZPlatformユーザー会サイト管理者複合コンポーネントには外部参照機能があります。Platform.iniで指定したフォルダに入れたファイルを参照し、参照元のファイルを変更を保存すれば、そのファイルを参照している複合コンポーネントにも反映されます。『アプリケーションビルダー操作説明書』のP118-120をご参照ください。
1.基本の複合コンポーネントの階層内に入って、「この階層」のみをフォルダに名前を付けて保存します。(Platform.iniでCombinativeComponentsFolderに既定で指定されている保存フォルダはMZPlatform\3.6_64\AP_DATA_COMBです。)
2.基本の複合コンポーネントをアプリケーションビルダー上でコピー&ペーストします。
または、アプリケーションビルダー上で右クリック>複合コンポーネント追加で追加します。
3.複製した複合コンポーネントの属性情報設定ウィンドウを表示し、Referenceの欄に参照元複合コンポーネントファイルの名前(例:test.mzcx)を設定します。
4.3のコンポーネントを必要数コピー&ペーストし、アプリケーションを保存します。
参照機能を設定している複合コンポーネントのコンポーネントキーは青色になります。複合コンポーネントは複数を画面上に配置してしおき、アプリケーション開発中は基本の複合コンポーネントの参照を行い、アプリケーション完成時に参照機能を「false」にするという方法をお勧めします。
各複合コンポーネントによって違う処理・設定を加える場合は、完成時に参照無しの状態にしてから行います。以上、ご検討ください。MZPlatformユーザー会サイト管理者引数のデータ型を示す文字列について、ご説明が足りず失礼しました。
数値,String,boolean,void型以外はクラス名を指定してください。Color型の場合には「java.awt.Color」となります。
それから、引数2に設定する値ですが、ここではColor型のオブジェクトを設定しなければならず、直接文字列によるRGB値で指定はできません。一旦[色格納変数]に設定して、そこからColorオブジェクトを取得するようにします。
お送りいただいたファイルを少し変更しましたので、ご覧ください。MZPlatformユーザー会サイト管理者[コンポーネント格納変数]に設定した[ラベル]のテキスト文字列を設定するメソッド名は「setText(String)」です。この英語のメソッド名は、起動メソッド情報ウィンドウで「全メソッド対象」にチェックを入れると確認できます。
1.「起動メソッド名を設定する(String)」で引数に固定値で「setText」を設定します。
2.次に「setText(String)」には引数が必要なので「起動メソッドに引数を追加する(String,Object)」の処理を設定します。引数1には固定値で「String」とします。この「引数の型を示す文字列」にはメソッド名の後ろの「()」の中に入っている文字列を指定します。
引数2には設定したい値を指定してください。
3.「起動メソッドを実行する()」の処理を設定します。ただ[コンポーネント格納変数]を使っても、処理の設定数はあまり変わらないかもしれません。MZPlatformで提供しているサンプルではコンポーネントの値の初期化の処理は[サブルーチン」や[ファンクション」を先頭に処理を纏めていることが多いです。どうぞご参考になさってください。
-
著者投稿