BravoBindingMember
Phạm vi áp dụng
✅ Bravo 8 · ✅ Bravo 10
Ý nghĩa
Tự động lấy các thông tin giống như binding trong lookup — nhưng có thể đặt điều kiện và gọi từ bất kỳ sự kiện nào.
Khi nào dùng Evaluator thay vì binding trên control?
Việc binding thông tin khi chọn giá trị từ lookup vẫn được khai báo như bản 7 ở các control. Chỉ khi việc binding dữ liệu cần có điều kiện để thực thi thì mới dùng Evaluator.
Cú pháp
<Ten_Eval>
<ClassName>BravoBindingMember</ClassName>
<DataMember>Ten_Cot</DataMember>
<LookupKey>Ten_Lookupkey</LookupKey>
<FilterKey>Bieu_thuc</FilterKey>
<bindingMembers>
<Ten_Cot_Nguon>Ten_Cot_Dich</Ten_Cot_Nguon>
</bindingMembers>
</Ten_Eval>Thuộc tính
| Thẻ | Nội dung |
|---|---|
| DataMember | Cột lookup để làm key lấy thông tin |
| LookupKey | Giá trị cột LookupKey trong B00Lookup, xác định bảng/view sẽ được truy vấn |
| FilterKey | Điều kiện dữ liệu. Lookup chỉ hiển thị và tích chọn được các bản ghi thỏa mãn (tương đương zLoadFilterExpr ở B7) |
| SelectKey | Cho hiển thị hết bản ghi nhưng chỉ tích chọn được bản ghi thỏa mãn (tương đương zPostFilterExpr ở B7) |
bindingMembers | Khai báo các thông tin được lấy ra |
| Expr | Điều kiện để thực thi Evaluator |
| zLookupSource | Khai báo thẳng tên bảng/view sẽ được truy vấn |
| zCustomConnectionName | Kết nối đến Server khác |
Cách đọc bindingMembers
<bindingMembers>
<Person>Person_Customer</Person>
</bindingMembers>| Vế | Ý nghĩa |
|---|---|
Person (tên thẻ) | Cột nguồn trong bảng khai báo ở B00Lookup |
Person_Customer (giá trị) | Cột đích nhận giá trị (có thể là danh sách cột) |
Khác Bravo 7
Ở Bravo 8, giá trị luôn luôn được điền vào bảng đích mà không cần dấu ngoặc
()như bản 7.
Hai cách khai báo lookup
| Cách | Khai báo | Ghi chú |
|---|---|---|
| C1 | LookupKey — trỏ tới 1 dòng trong B00Lookup | Quản trị tập trung |
| C2 | zLookupSource — khai báo trực tiếp bảng/view | Không cần bản ghi hệ thống |
Warning
Khai báo đồng thời cả
LookupKeyvàzLookupSource→ chương trình luôn hiểu theoLookupKey.
Ví dụ
Khi Ctrl+F2 chứng từ, lấy tên/địa chỉ/mã số thuế từ danh mục đối tượng — khai báo trong ServerLoaded của bảng mẹ:
<Eval_CustomerCode_BindingMembers>
<ClassName>BravoBindingMember</ClassName>
<DataMember>CustomerCode</DataMember>
<LookupKey>Customer</LookupKey>
<FilterKey>IsGroup=0</FilterKey>
<bindingMembers>
<CustomerType>CustomerType</CustomerType>
<Person>Person_Customer</Person>
<Name>CustomerName</Name>
<Address>Address_Customer</Address>
<TaxRegNo>TaxRegNo_Customer</TaxRegNo>
</bindingMembers>
</Eval_CustomerCode_BindingMembers>Ghi chú
- Các binding trong Evaluator được gọi sau khi thực hiện các sự kiện do sự thay đổi của Evaluator (giá trị cột thay đổi và các ColumnChanging, ColumnChanged liên quan)
- Nếu không khai báo
zCustomConnectionNameở Eval, chương trình lấy thông tin cộtConnectionNametrongB00Lookup
Liên quan
BravoLookupBox · LookupKey · FilterKey · SelectKey · bSuppressLookupEvents · B00 - Bảng hệ thống