1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Proj #001 キャンバスアプリで支払申請のフォームを作成するゾ~第4回 Requiredプロパティを使わずに必須項目の制御をしよう~

Last updated at Posted at 2024-11-26

DataCardではなくテキスト入力フィールドの必須入力を設定する方法を残しておく。
めっちゃ手こずったので消えたら泣いちゃうから残しておく。

取引先コードが99999999の場合、取引先情報を新規で入力してもらう必要があるとする。

その場合、フォームのValid関数では事足りないので、新規入力フィールドについて必須の確認をしたい。

条件としては以下の条件で登録ボタンのDisplayModeを切り替えたい。

  • Form2 が有効(Valid)であり、かつ以下のいずれかの条件が満たされている場合にボタンを有効化する
  • dc_client_code_value が '10999999' に選択されていて、すべてのテキストフィールドが空でない
  • dc_client_code_value が '10999999' 以外に選択されている

ValidがTrueになっている事は前提として、DataCardで選択した取引先コードによって
特定のフィールドの入力チェックをしたい。

dc_client_code_value が '10999999'の場合は、取引先情報すべて必須にする
dc_client_code_value が '10999999'じゃない場合は、取引先情報が入っていなくてもよい

で、最終的に登録ボタンのDisplayModeプロパティに設定したのは以下のコード

If(
    And(
        Form2.Valid, 
        Or(
            And(
                dc_client_code_value.Selected.Value = "10999999", 
                !IsBlank(txt_client_name_spot.Text),
                !IsBlank(txt_kouza_name_spot.Text),
                !IsBlank(txt_bank_code_spot.Text),
                !IsBlank(txt_bank_name_spot.Text),
                !IsBlank(txt_branch_code_spot.Text),
                !IsBlank(txt_branch_name_spot.Text),
                !IsBlank(txt_kouza_kbn_spot.Text),
                !IsBlank(txt_kouza_number_spot.Text)
            ), 
            dc_client_code_value.Selected.Value <> "10999999"
        )
    ), 
    DisplayMode.Edit, 
    DisplayMode.Disabled
)

インデントつけてると見やすいけど、Microsoftさんのプロパティ設定欄、狭すぎネ!

順を追ってQiitaに残そうと思ってたけど納期が近いので先に実装終わらせてから書きます。

今回は上記コードが消えたら泣いちゃうので残しておいた。
(もちろん、社内の環境にも残してあります)

キャンバスアプリ、楽しいネ!
時間がどんどん溶けていくヨ!
朝から体調悪かったのになんだかんだもうこんな時間ネ!
ワタシ着替えも洗顔もしてないネ!

でも微熱あるのでぼちぼち退勤するネ!
この記事がどこかで誰かの役に立つとウレシーね!

質問あればコメント残してくれれば暇な時見るヨ!

ニホンのミンナPower Apps覚えるとセーサンセー上がるネ!

それではまたアルヨ!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?