Expr

Phạm vi áp dụng

✅ Bravo 8 · ✅ Bravo 10

Ý nghĩa

Biểu thức điều kiện để chạy Evaluator / Validator. Nếu biểu thức trả về False thì đối tượng không được thực thi.

Cú pháp

<Eval_X>
  <Expr>Bieu_Thuc</Expr>
</Eval_X>

Cách gọi rút gọn

Khi gọi một Eval đã định nghĩa sẵn, có thể đặt điều kiện ngay trong thẻ gọi:

<ColumnChanged>
  <DocNo>
    <Eval_DocNo_DefaultValue>Empty(DocNo)</Eval_DocNo_DefaultValue>
  </DocNo>
</ColumnChanged>

→ Eval_DocNo_DefaultValue chỉ chạy khi Empty(DocNo) là đúng.

Expr ở các ngữ cảnh khác

Ngữ cảnhÝ nghĩa
EvaluatorĐiều kiện các dòng thỏa mãn để thực thi Eval
ValidatorBiểu thức kiểm tra — trả về False là lỗi
CommandValidatorsTrả về False → ngăn thực hiện lệnh Command
FilterCollection / SortCollection (B10)Điều kiện áp dụng filter / sort đó
Attribute Expr="True"Chỉ định giá trị của thẻ là biểu thức cần tính → Quy ước cú pháp XML

Đừng nhầm hai thứ

  • <Expr>...</Expr> — thẻ con, chứa điều kiện chạy
  • Expr="True" — attribute, bật chế độ đánh giá biểu thức cho giá trị thẻ

Thứ tự với zScopeExpr

zScopeExpr chạy trước để lọc tập dòng, sau đó Expr kiểm tra tiếp trên từng dòng.

Liên quan

zScopeExpr · scopeType · Bắt đầu với Expression · Quy ước cú pháp XML · zValidateExpr