Module
Contents
Index 🔎︎

# Xác định Điều kiện

Điều kiện là biểu thức lôgic mà bạn có thể sử dụng để điều khiển cách hiển thị các trường và phần trong tài liệu. Mặc dù những mẫu thí dụ sau áp dụng cho trường, chúng cũng có thể áp dụng cho phần.

Bạn có khả năng xác định điều kiện cho những kiểu trường này:

1. Văn bản điều kiện: điều kiện là đúng thì hiển thị văn A; không thì hiển thị văn bản B.

2. Văn bản ẩn: điều kiện đúng thì ẩn nội dung của trường.

3. Đoạn văn ẩn: ẩn đoạn văn nếu điều kiện là đúng.

4. Bản ghi bất kỳ và Bản ghi kế: điều khiển truy cập đến các bản ghi cơ sở dữ liệu.

Phương pháp đơn giản nhất để xác định một điều kiện là gõ biểu thức lôgic một cách trực tiếp vào một hộp Điều kiện, dùng những giá trị này:

TRUE | Điều kiện lúc nào cũng được thỏa. Bạn cũng có thể nhập bất cứ giá trị nào không bằng với 0 làm văn bản điều kiện.
SAI | Điều kiện không được thỏa. Bạn cũng có thể nhập giá trị 0.

Bỏ trống hộp Điều kiện thì điều kiện được giải thích như là không thỏa.

Khi bạn xác định một điều kiện, hãy dùng cùng những phần tử dùng để xác định một công thức: toán tử so sánh, hàm toán học, hàm thống kê, định dạng số, biến và hằng số.

Khi xác định một điều kiện, bạn có thể sử dụng những kiểu biến này:

1. Biến LibreOffice đã định sẵn mà dùng thống kê về các thuộc tính của tài liệu

2. Biến riêng, được tạo với trường « Đặt biến ».

3. Biến dựa vào dữ liệu người dùng

4. Biến dựa vào nội dung của trường cơ sở dữ liệu.

Không thể sử dụng biến nội bộ, như số thứ tự chương/trang, trong một biểu thức điều kiện.

## Điều kiện và Biến

Các mẫu thí dụ sau dùng một biến tên « x »:

x == 1 or x EQ 1 | Điều kiện là Đúng nếu (x=1).
x != 1 or x NEQ 1 | Điều kiện là Đúng nếu "x" không bằng 1.
sinx == 0 | Điều kiện là Đúng nếu « x » là bội số cho PI (π).

Để sử dụng toán tử so sánh với chuỗi, mỗi toán hạng phải nằm \"giữa dấu nháy kép\".

x == "ABC" or x EQ "ABC" | Kiểm tra biến x chứa (đúng) chuỗi « ABC » hay không (sai).
x == "" or x EQ "" hoặc !x or NOT x | Kiểm tra nếu biến x chứa một chuỗi rỗng hay không.

Toán tử so sánh « bằng » (equal) phải được đại diện bởi hai dấu bằng (==) trong một điều kiện. Chẳng hạn, nếu bạn xác định một biến x có giá trị 1, bạn có thể nhập điều kiện dưới dạng « x==1 ».

## Dữ liệu Người dùng

You can include user data when you define conditions. To change your user data, choose LibreOffice - PreferencesTools - Options - LibreOffice - User data. User data must be entered in the form of strings. You can query the user data with "==" (EQ), "!=" (NEQ), or "!"(NOT).

Bảng sau diễn tả các biến dữ liệu người dùng:

Biến | Nghĩa
user_firstname | Tên
user_lastname | Họ
user_initials | Tên viết tắt
user_company | Công ty
user_street | Phố
user_country | Quốc gia
user_zipcode | Mã vùng
user_city | Thành phố
user_title | Tựa đề
user_position | Vị trí
user_tel_work | Số điện thoại ở chỗ làm
user_tel_home | Số điện thoại ở nhà
user_fax | Số Fax
user_email | Địa chỉ thư điện tử
user_state | Tình trạng (không phải trong tất cả các phiên bản LibreOffice)

Chẳng hạn, để ẩn một đoạn văn, chuỗi văn bản hoặc phần khỏi người dùng có tên viết tắt riêng (v.d. « LM »), nhập điều kiện: user_initials=="LM".

## Điều kiện và Trường Cơ sở Dữ liệu

Bạn có khả năng xác định điều kiện để truy cập đến cơ sở dữ liệu hoặc trường của cơ sở dữ liệu. Chẳng hạn, bạn có thể kiểm tra nội dung của một trường cơ sở dữ liệu từ một điều kiện, hoặc sử dụng trường cơ sở dữ liệu trong biểu thức lôgic. Bảng sau liệt kê vài mẫu thí dụ khi dùng cơ sở dữ liệu trong điều kiện:

Ví dụ | Nghĩa
Database.Table.Company Database.Table.Company NEQ "" Database.Table.Company != "" | Điều kiện là Đúng nếu trường Công ty (COMPANY) không phải rỗng. (Trong mẫu thí dụ thứ nhất, không cần toán tử.)
!Database.Table.Company NOT Database.Table.Company Database.Table.Company EQ "" Database.Table.Company =="" | Returns TRUE if the COMPANY field is empty.
Database.Table.Company =="" Database.Table.Company NEQ "" | Returns TRUE if the current entry in the COMPANY field is not "Sun". (Exclamation sign represents a logical NOT.)
Database.Table.Firstname AND Database.Table.Name | Trả về Đúng (TRUE) nếu bản ghi chứa họ và tên.

Ghi chú về sự khác giữa toán tử không phải (NOT) "!" và toán tử so sánh không bằng "!=" (NEQ).

Khi tham chiếu đến một trường cơ sở dữ liệu trong một điều kiện, bạn nên dùng dạng "Tên_cơ_sở_dữ_liệu.Tên_bảng.Tên_trường". Nếu một trong những tên này chứa một ký tự cũng là toán tử, ví dụ dấu trừ (-) thì nên bao gồm nó trong dấu ngoặc vuông, v.d. "Tên_cơ_sở_dữ_liệu.[Tên-bảng].Tên_trường". Không được đặt dấu cách bên trong tên trường.

### Ví dụ : ẩn một trường cơ sở dữ liệu rỗng

Có lẽ bạn muốn tạo điều kiện làm ẩn một trường rỗng, chẳng hạn, nếu trường Công ty (COMPANY) còn rỗng đối với một số bản ghi dữ liệu nào đó.

Chọn hộp Đoạn văn ẩn, sau đó gõ điều kiện này: Addressbook.Addresses.Company EQ ""

hoặc gõ chuỗi sau

NOT Addressbook.Addresses.Company

Nếu trường cơ sở dữ liệu "Công ty" (COMPANY) là rỗng thì điều kiện là đúng và đoạn văn bị ẩn.

To display hidden paragraphs on the screen, you can choose LibreOffice - PreferencesTools - Options - LibreOffice Writer - Formatting Aids, and clear the Fields: Hidden paragraphs check box.

## Các ví dụ về điều kiện trong trường

Các ví dụ sau dùng trường văn bản Điều Kiện, dù chúng có thể được áp dụng cho bất kỳ trường nào có khả năng liên kết đến một điều kiện. Cú pháp dùng cho điều kiện cũng được dùng cho các trường kiểu Văn bản ẩn, Đoạn văn ẩn, Bản ghi bất kỳ hoặc Bản ghi kế.

## Để hiển thị văn bản điều kiện dựa vào số trang:

1. Chọn lệnh Chèn > Trường > Khác, sau đó nhấn vào thẻ Hàm.

2. Trong danh sách các Kiểu, nhấn vào « Văn bản điều kiện ».

3. Trong hộp Điều kiện, gõ « trang == 1 ».

4. Trong hộp Thì, gõ « Chỉ có một trang ».

5. Trong hộp Hoặc, gõ « Có vài trang ».

6. Nhấn vào Chèn, sau đó nhấn vào nút Đóng.

## Để hiển thị văn bản điều kiện dựa vào một biến tự xác định

1. Chọn lệnh Chèn > Trường > Khác, sau đó nhấn vào thẻ Biến.

2. Trong danh sách các Kiểu, nhấn vào mục « Đặt biến ».

3. Trong hộp Tên, gõ « Lợi nhuận » (Profit).

4. Trong hộp Giá trị, gõ « 5000 ».

5. Nhấn vào nút Chèn.

6. Nhấn vào thẻ Hàm, và nhấn vào mục « Văn bản điều kiện » trong danh sách Kiểu.

7. Trong hộp Điều kiện, gõ « Lợi nhuận < 5000 ».

8. Trong hộp Thì, gõ « Đích không phải được đạt ».

9. Trong hộp Hoặc, gõ « Đích được đạt. »

10. Nhấn vào nút Chèn.

Để chỉnh sửa nội dung của biến « Lợi nhuận » (Profit), nhấn đôi vào trường biến đó.

## Để hiển thị văn bản điều kiện dựa vào nội dung của một trường cơ sở dữ liệu nào đó :

Phần thứ nhất của mẫu thí dụ này chèn một dấu cách vào giữa hai trường « Họ » và « Tên » trong một tài liệu, và phần thứ hai chèn văn bản dựa vào nội dung của một trường. Mẫu thí dụ này cần thiết có một nguồn dữ liệu địa chỉ được đăng ký với LibreOffice.

1. Chọn lệnh Chèn > Trường > Khác, sau đó nhấn vào thẻ Cơ sở dữ liệu.

2. Trong danh sách các Kiểu, nhấn vào mục « Trường trộn thư ».

3. Trong hộp Chọn cơ sở dữ liệu, nhấn đôi vào một sổ địa chỉ, nhấn vào « Tên », sau đó nhấn vào nút Chèn. Lặp lại cho « Họ ».

4. Trong tài liệu, đặt con trỏ vào giữa hai trường, bấm phím dài, sau đó trở về hộp thoại Trường.

5. Nhấn vào thẻ Hàm, sau đó nhấn vào mục « Văn bản điều kiện » trong danh sách Kiểu.

6. Trong hộp Điều kiện, gõ: "Addressbook.addresses.firstname".

7. Trong hộp Thì, gõ một dấu cách, và bỏ trống hộp Hoặc.

Giờ thì bạn có thể sử dụng một điều kiện để chèn văn bản dựa vào nội dung của trường « Tên ».

1. Trong hộp thoại Trường, nhấn vào thẻ Hàm .

2. Trong hộp Kiểu, nhấn vào mục « Văn bản điều kiện ».

3. Trong hộp Điều kiện, gõ : Addressbook.addresses.firstname == "Michael"

4. Trong hộp Thì, gõ « Dear ».

5. Trong hộp Hoặc, gõ « Chào ».

6. Nhấn vào nút Chèn.