eq式の条件に文字列が含まれている場合の処理

54 views
Skip to first unread message

鈴木昇悟

unread,
Apr 20, 2022, 7:34:46 PM4/20/22
to RapidReportサポート QAフォーラム
お世話になっております。

帳票作成でRapidReportを利用しており、以前までは、(eq .フィールド名1 "A") フィールド名1にAが返ってきた場合のみ、テキスト表示をさせるということをしていましたが、おそらく更新のタイミングで式に反応しなくなってしまったので教えていただきたいです。
プロパティ:text
背景:チェック入り
表示条件:(eq .フィールド名1 "A")


よろしくお願いいたします。

RapidReport

unread,
Apr 21, 2022, 1:03:36 AM4/21/22
to RapidReportサポート QAフォーラム
式の中で文字列を指定する場合は、ダブルクォートではなくシングルクォートで囲んでください。
(eq .フィールド名1 "A")
ではなく
(eq .フィールド名1 'A')
と、書く必要があります。

「文字列はシングルクォートで囲む」という仕様は最初のバージョンから変わっていませんので、
これが原因ではなさそうな気もしますが、まずはこれをご確認ください。

2022年4月21日木曜日 8:34:46 UTC+9 鈴木昇悟:

鈴木昇悟

unread,
Apr 21, 2022, 7:16:24 PM4/21/22
to RapidReportサポート QAフォーラム
返信ありがとうございます。
教えていただいた通り、シングルクォートで囲ってみました。
フィールド名1にAが返ってきてはいますが、テキスト表示がされないようです。
Aの箇所は実際に返ってきた文字列をコピーし、条件式の方にペーストしているので、
式はtrueになると思うのですが

似たような事例等あれば教えていただきたいです。


2022年4月21日木曜日 14:03:36 UTC+9 RapidReport:

RapidReport

unread,
Apr 21, 2022, 8:35:13 PM4/21/22
to RapidReportサポート QAフォーラム
最新バージョン(5.12)で同様の現象が発生しないか試してみましたが、
再現できませんでした。

問題が発生している環境について、情報を頂ければと思います。
・RapidReportのバージョン
・使用言語 (C#/VB or Java)
・出力形式(プレビュー/直接印刷 or PDF or XLS or XLSX)

また、すでに試されているかもしれませんが、
問題の要素でいったん「表示条件」を外して実行し、
想定通りの値が出力されるかを確認いただけますでしょうか。

2022年4月22日金曜日 8:16:24 UTC+9 鈴木昇悟:

鈴木昇悟

unread,
Apr 21, 2022, 10:09:43 PM4/21/22
to RapidReportサポート QAフォーラム
RapidReport 4.36.0.0
使用言語 VB.net
出力形式 プレビュー

datatableを使用してフィールドに値を入れています。
表示条件を外した場合には、テキストは表示されます。
レポートデザイナの時点で試しに(neq .フィールド名1 'A')にしたところテキストは表示されました。

条件式をeqのままコンパイルし、フィールド名1に'A'を返しても表示されず、
neqにしてコンパイルし、フィールド名1に'A'を返しても表示されませんでした。

VB.netから表示させるrrptファイルを指定していますが、変更したものを指定していることは確認済みです。


2022年4月22日金曜日 9:35:13 UTC+9 RapidReport:

RapidReport

unread,
Apr 22, 2022, 2:24:17 AM4/22/22
to RapidReportサポート QAフォーラム
情報提示ありがとうございます。
ただ、提示いただいた環境でも再現はできませんでした。

お手数ですが、いくつか確認をさせて下さい。

・問題のデータが数値で渡されている、ということはないでしょうか。
 例えば、データは100という数値で渡され、式には (eq .フィールド名1 '100') と書かれていた場合は、
 数値と文字列との比較となり、イコールではないという判断になります。

・「更新のタイミングで式に反応しなくなった」とのことですが、過去のバージョンでは動作していたということでしょうか。
 そのバージョンがもしわかれば教えていただければと思います。

2022年4月22日金曜日 11:09:43 UTC+9 鈴木昇悟:

RapidReport

unread,
Apr 22, 2022, 2:37:33 AM4/22/22
to RapidReportサポート QAフォーラム
すみません。追加でもうひとつ確認をさせて下さい。

・渡しているデータに CR や LF などの制御文字(非印字文字)は含まれていないでしょうか。

2022年4月22日金曜日 15:24:17 UTC+9 RapidReport:

鈴木昇悟

unread,
Apr 22, 2022, 2:59:13 AM4/22/22
to RapidReportサポート QAフォーラム
該当のデータは’設備’などが来るため、数値が渡されることはないです。
渡されるデータを確認したところ、制御文字はありませんでした。

更新のことですが、おそらくライセンス更新なのでバージョンアップではなかったようです。
紛らわしい書き方をしてしまい申し訳ありません。

使用者からは以前には動作していたとの報告が入っているので、今一度入力した文字などに誤りがないか
確認して動かせるようにしようと思います。

対応ありがとうございました。

2022年4月22日金曜日 15:37:33 UTC+9 RapidReport:
Reply all
Reply to author
Forward
0 new messages