MZPlatformユーザー会

作成した返信

10 件の投稿を閲覧中 - 181 ~ 190 件(全 756 件)
  • 著者
    投稿
  • 返信先: PDFもしくは画像ファイルの一覧化 #6759
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。

    [ファイル選択]を使わない場合は、ファイルやフォルダの操作ができる[ファイル]コンポーネントを使うと便利かと思います。フォルダ内のファイルのリストも取得可能です。
    また、[外部プログラム通信]のメソッド「標準のアプリケーションでファイルを開く(file)」を使うと、PDFも画像もWindows内で関連付けられているアプリケーションで簡単に開くことができます。

    動作確認のため、サンプルファイルを作成しましたので、ご参考になれば幸いです。
    リストをクリックするとファイルが開きます。
    画像のときは標準アプリケーションで開かず[イメージビューワー]に設定したい場合は、条件が少し複雑になるので2つのファイルにファイルに分けてあります。
    カレントディレクトリは「C:\MZPlatform\3.6_64\docs\tutorial」に設定しています。環境に合わせてご変更ください。

    ご検討いただき、ご不明な点、ご要望等ございましたら、再度ご連絡いただければ幸いです。
    どうぞよろしくお願い申し上げます。

    返信先: ドラッグアンドドロップについて #6755
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    (1)[テーブル]から発生するイベントのタイミングはコントロールすることができませんが、マウスプレスした時点でのセル位置は、マウスイベントに内包されるX座標、Y座標を使って知ることができます。[テーブル]のメソッド「getRowIndexByLocationY(int)」と「getRowIndexByLocationX(int)」でセル位置を指定し、指定セルの値を取得することができます。

    (2)しかし、MZPlatformの[テーブル]には現在のところドロップ機能がありません。
    また、マウスクリックが起こったテーブルAから外に出てマウスリリースすると、イベントが取得されないようです。したがって、テーブルBでマウスリリースした位置を知ることは、現在のところ難しいです。

    念のため(1)のみ処理を追加したファイルを添付いたします。
    テーブルAのセルをクリックした後、テーブルBのセルをクリックすると値がペーストされます。しかし、これはマウスイベントを使わなくても実現できるかと思います。

    他に良い方法があれば、再度ご連絡いたしますが、もしテーブルAの内容が多くなければ、テーブルBの列にテーブルAのデータを選択リストとして設定して、選択できるようにすることも考えられます。

    以上、ご要望、ご不明な点等ございましたら、再度ご連絡ください。
    ご不便をお掛けいたしますが、よろしくお願い申し上げます。

    返信先: 帳票のラベル描画属性設定について #6750
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    特定の帳票要素の属性をメソッドで設定するには、
    (1)まずメソッド「setEditPaperElement(int)」で編集対象の帳票要素を指定します。引数に設定するのは帳票要素の番号で、「帳票編集画面」で要素を選択すると左上に表示されるものです。左側ツリー図での並び順とも合致しています。
    (2)次にメソッド「setEditPaperElementBorderWidth(float)」で線幅を指定します。引数は固定値で設定可能です。

     以上お試しいただき、ご不明な点がございましたら、再度ご連絡いただければ幸いです。
    よろしくお願いいたします。

    返信先: エクセル連携導入(派遣管理)-2.mzax #6745
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    ご指摘の通り、このアプリケーションの中ではイベント番号を必要としない「SQL文を実行する(String)」でも正常に動作します。
    イベント番号を指定するメソッドを使用している理由としては、一つのアプリケーションの中で実行されるSQL文に区別をつけたい、今後改修、発展したときに必要になる場合があるなどが挙げられます。

    実行されるSQLはUpdate文とSelect文ですが、Update文は実行後、処理完了イベントが発生し、イベント内包データとして「更新された行数」が取得できます。
    Select文は実行後データ生成イベントが発生し、テーブルデータを取得できます。
    [サブルーチン(ID17)]が呼び出されると[データベースアクセス]のメソッドも呼び出されUpdate文もSelect文も両方実行されていますが、Update文ではデータ生成イベントは発生しません。

    仮に、SQLが両方Select文だった場合は、データ生成イベントに繋げてイベント番号1を設定した処理、イベント番号2を設定した処理、それぞれに呼び出されます。
    イベント番号を指定しない「SQL文を実行する(String)」の実行による発生イベントは「イベント番号0」という扱いになります。イベント番号を設定していない、または他のイベント番号に加えて番号0を設定している処理が起動されます。

    まとめますと、SQL文の種類により発生するイベントが違うことが、データ生成イベントの接続処理が呼び出されない大きな理由ですが、仮にデータ生成イベントが発生するSQL文がイベント番号2とともに実行されても、イベント番号1の処理は呼び出されません。イベント番号を指定しないSQL文が実行されても、イベント番号1の処理は呼び出されません。

    実は、メソッド「イベント番号を指定してSQL文を実行する(String,int)」を使用した場合でも、イベント番号を設定していない接続処理は起動されます。したがって、このアプリケーション内ではイベント番号は必須ではないのですが、実用のアプリケーションでは[データベースアクセス]で複数のSQL文を実行することが多く、チュートリアルという性質上、このような記載にしております。

    以上、ご不明な点がございましたら、どうぞ再度ご連絡ください。
    よろしくお願い申し上げます。

    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    メソッド「時間軸の表示期間を設定する(int,PFGanttChartTimeUnit)」の第2引数には、時間の単位を設定します。この単位オブジェクトは固定値では設定できませんが、[ガントチャート]から取得できるようになっています。
    第2引数の設定で例えば、『取得方法:メソッド戻り値、コンポーネント:ガントチャート、メソッド/値:単位(時)を取得する』とします。

    ご不明な点がございましたら、再度ご連絡ください。よろしくお願いいたします。

    返信先: 処理中メッセージの文字点滅の仕方について #6738
    MZPlatformユーザー会
    サイト管理者

    お問い合せありがとうございます。
    一定間隔で文字等が変化する処理には、[タイマー]を使うことになるかと思います。
    タイマーの実行間隔は属性情報のDelayとinitialDelay(起動後最初に実行されるまでの間隔)で設定します。既定の間隔は1000msになっています。

    タイマーが実行されるごとに[任意精度整数(BigInteger)格納変数]の値を1ずつ増やし、[剰余(%)]で2で除算した余りの値を取得すれば、0か1が交互に取得できます。
    [イベント生成]コンポーネントはイベント番号と共にイベントを発生させることができるので、上記の値をイベント番号として処理を行うことができます。

    動作確認のため、簡単なサンプルファイルを作りましたので、どうぞご覧ください。
    ラベルの背景色も設定していますが、取得方法:固定値でRGB値または13色の色名「white, lightGray, gray, darkGray, black, red, pink, orange, yellow, green, cyan, blue, magenta」で指定が可能です。

    ご不明な点がございましたら、再度ご連絡ください。よろしくお願い申し上げます。

    MZPlatformユーザー会
    サイト管理者

    接続可のOpenJDKから接続不可のOpenJDKにアップデートされたことで、TLS1.0と1.1が無効化され、デフォルトがTLS1.3になったことが原因のようです。なお、MySQL8.0.16以降では問題が起きない可能性がありますので、そちらのアップデートもご検討いただけますでしょうか。

    参考:リリースノート 8u292-b10 (GA), April 20th 2021
    https://mail.openjdk.org/pipermail/jdk8u-dev/2021-April/013680.html
    上記リンク先の「JDK-8256490: Disable TLS 1.0 and 1.1」

    MZアプリ側からMySQLサーバ側へのJDBC接続時のTLSバージョンの不整合が起きるようで、明示的にTLS1.2を使用した接続を指定することで回避したという事例をネット検索で発見しました。ただし、TLS1.2には脆弱性が含まれますので、ご使用の場合はご注意ください。

    回避方法は、JDBC接続で下記のように指定している部分を、
    jdbc:mysql://localhost/mzdb
    下記のように変更するとうまくいくと思います。
    jdbc:mysql://localhost/mzdb?enabledTLSProtocols=TLSv1.2

    スマート製造ツールキットのサンプルアプリであれば、mzapp.iniの下記の記述
    db.db=jdbc:mysql://localhost/mzdb
    を、下記のように変更すれば回避できます。
    db.db=jdbc:mysql://localhost/mzdb?enabledTLSProtocols=TLSv1.2

    返信先: 指定フォルダからの画像呼び出しについて #6729
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    画像の入力には[画像ファイル入力]コンポーネント、表示には[イメージビューワー]コンポーネントを使用します。
    チュートリアルでは[ファイル選択]コンポーネントをファイル名を選べるように使っていますが、[画像ファイル入力]の引数に直接ファイル名を設定することも可能です。

    例えば、[ボタン]を押したら特定の画像を入力、表示する場合には、以下の2つの処理で表示できます。
    ➀[ボタン]---アクションイベント---[画像ファイル入力]
    <メソッド>ファイル名を指定して画像を読み込む(String)
    <引数>取得方法:固定値 メソッド/値:ファイルまでのパス(例:C:\MZPlatform\3.6_64\AP_DATA\Tutorial.mZ_logo.gif)
    ➁[画像ファイル入力]---データ生成イベント---[イメージビューワー]
    <メソッド>イメージデータを設定する(image)
    <引数>取得方法:イベント内包 メソッド/値:イベント対象データ

    利用できる画像ファイルの形式は、 BMP,WBMP,GIF,JPEG,PNGとなっています。

    以上、ご不明な点がございましたら、どうぞ再度ご連絡ください。
    よろしくお願い申し上げます。

    返信先: システム情報の件 #6723
    MZPlatformユーザー会
    サイト管理者

    お問い合せありがとうございます。
    [システム情報]コンポーネントのメソッド「getSystemProperty(String)」をお試しいただいているかと思います。ユーザー名取得の引数は「user.name」で結構です。
    WindowsOSのローカルで作られるユーザー名は2種類あり「ローカルアカウントのユーザー名」と「ユーザーネームのフルネーム」のうち、上記メソッドでは「・・・ユーザー名」の方が取得されます。
    しかし、「ユーザーネームのフルネーム」を設定済みだった場合、コントロールパネルからの変更だけではフルネームのみ変更されるようです。
    外部のサイトになりますが、こちらが参考になるかと思います。
    https://jp.ext.hp.com/techdevice/windows10sc/26/  (日本HP Tech&DeviceTV 『Windows 10 のユーザー名を変更するには?アカウントの種類とそれぞれの変更方法を紹介』)

    [システム情報]の「ホスト名を取得する()」ですと、MZを実行しているマシーンのデバイス名が取得されます。

    以上ご検討いただき、解決されない場合は、お手数ですが再度ご連絡ください。
    どうぞよろしくお願い申し上げます。

    返信先: Farmata通信 #6720
    MZPlatformユーザー会
    サイト管理者

    お問い合わせありがとうございます。
    設定ファイルは、アプリケーション自体は変更せず設定ファイルの中身を書き換えることで動きの変更をすることができ、Javaプログラム以外でも広く使われていますが、決まった書式はあります。

    名前(キー)=値という書式になっていて、[セクション名]を指定する場合もあります。どんな「キー名」、「セクション名」を指定するかは決まりはなく、アプリケーションことに独自に決められています。

    IotEdgeApp.mzaxの[設定ファイル管理]複合コンポーネントが呼び出されている箇所では、キー名を指定して設定データを取得する処理を行っています。MZPlatformにはキーと値をペアにして格納できる[マップ格納変数]があり、キー名による値の取得・設定を行うことができます。

    以上、ご不明な点がございましたら、どうぞ再度ご連絡ください。よろしくお願いいたします。

10 件の投稿を閲覧中 - 181 ~ 190 件(全 756 件)