tfm いつも大変お世話になっております。 テキストフィールドで案件名などを設定しております。入力する人間は複数人おります。おそらくなのですが、入力者がどこかからコピーなどをしてくる場合や、もしくは普通に手入力をした場合に、せっかちな人やおそらく手癖なのかとおもいますが、改行をしてしまう場合があります。 この改行を禁止したいのですが、一番シンプルな方法で行いたいのですが、何かございますでしょうか? バージョンは20.3.2.201になります。 何卒よろしくお願いいたします。
tfm tipoさん ありがとうございます、 「はい」「いいえ」を確認してきますが、設定はわかりました。これでやってみようと思います。 himagineさん Char(10)の処理というのはどうやるのでしょうか・・・? ご教授いただけますと幸いです。
tipo ヘルプ https://help.claris.com/ja/pro-help/content/code.html ここ制御キーのコード一覧があります、 Char ( 10 ) Char ( 13 ) が理解できると思いますよ。 PatternCount関数の 検索テキストのところに、Char関数で指定することもできます。
tfm tipoさん ありがとうございます。 フィールドオプションの計算式で制限のところに not PatternCount ( self ; Char ( 10 ) ) or not PatternCount ( self ; Char ( 13 ) ) こちらの計算式をいれても改行ができてしまうのですが、何か私が余計なことをしている可能性はありますでしょうか? 設定を見直してもわからずでして・・・ご教授よろしくお願いいたします。
tipo tfm not PatternCount ( self ; Char ( 10 ) ) or not PatternCount ( self ; Char ( 13 ) ) フィールドに改行があれば制限が働きます。 もし効かないのでしたら、もう一度設定を見直してみてください。 この制限は、レコード確定時点で働きます。 フィールドを抜けただけでは働きません。 自動入力にしたいのなら、 こちらをできるようにしてからにしたらいかがでしょうか。
Shin 入力値の制限でアラートを出した後、どのように処理させるのでしょうか。改行を自分で見つけて削除してね、という動きにするのでしょうか。わざわざ自分で処理させる意味は重要ですか。 改行などが見つかれば、自動的に削除してしまってもいいのでは。(アラートは出してもいいとは思いますが)
tfm Shin Shinさん 返信ありがとうございます。 理想は、入力者に処理はさせたくありません。 システム側で強制的に改行不可にしたいです。 アラートは出ても出なくてもどちらでも・・・・と入った感じです。自動的に削除でも問題ございません。
Shin tfm 理想は、入力者に処理はさせたくありません。 システム側で強制的に改行不可にしたいです。 OnObjectKeystroke でキー入力を拾って、改行などを入力させないようにもできるのですが、動作がチロチロして鬱陶しくなり、あまり好きではありません。 フィールドが確定する前に、OnObjectValidate で¶などを消去するように処理するか、フィールドの自動入力で削除しておくのがいいでしょうね。
tfm Shinさん ありがとうございます。 not PatternCount ( Self ; ¶ ) こちらをフィールドの計算値にしたり、OnObjectValidateのスクリプトトリガでフィールド設定not PatternCount ( self ; ¶ ) などにしても数字の0にフィールドの値がなってしまい、うまくいきません。 こちらどの様に設定すればよろしいでしょうか? 何卒よろしくお願いいたします。
himagine 自動入力(フィールドに入れたい値を計算)と計算式で制限(適否の論理値を計算)は全く別ものです。 自動的に除去するなら Substitute ( Self ; [ Char(10) ; "" ] ; [ Char(13) ; "" ] ) とかでは。
tfm みなさまありがとうございます。 フィールドの計算値にSubstitute ( Self ; [ Char(10) ; "" ] ; [ Char(13) ; "" ] )こちらを入れて問題なくできそうです。 ただ、これまでフォントを修正するためにTextFormatRemove ( Self )こちらの計算式をいれていたのですが、こちらは両立できるのでしょうか?単純に Substitute ( Self ; [ Char(10) ; "" ] ; [ Char(13) ; "" ] ) and TextFormatRemove ( Self ) と入った感じで設定すればよろしいでしょうか? 何度も申し訳ありませんがよろしくお願いいたします。
Shin 入れ子にすえrばいいです。例えば、 Substitute ( TextFormatRemove ( Self ) ; [ Char(10) ; "" ] ; [ Char(13) ; "" ] )
tfm みなさま ありがとうございます。 Substitute ( TextFormatRemove ( Self ) ; [ Char(10) ; "" ] ; [ Char(13) ; "" ] ) こちらで問題なさそうですのでしばらく様子を見てみます