Lưu ý
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử đăng nhập hoặc thay đổi thư mục.
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử thay đổi thư mục.
Cột công thức là cột hiển thị giá trị được tính toán trong một bảng Microsoft Dataverse. Công thức sử dụng Power Fx, một ngôn ngữ lập trình mạnh mẽ nhưng thân thiện với con người. Xây dựng một công thức trong một cột công thức Dataverse giống như cách bạn xây dựng công thức trong Microsoft Excel. Khi bạn nhập, Intellisense sẽ gợi ý các hàm và cú pháp, thậm chí còn giúp bạn sửa lỗi.
Thêm cột vào công thức
đăng nhập vào Power Apps tại https://make.powerapps.com.
Chọn Bảng, sau đó chọn bảng mà bạn muốn thêm cột công thức. Nếu mục không có trong ngăn bảng điều khiển bên, hãy chọn …Thêm rồi chọn mục bạn muốn.
Chọn vùng Cột , sau đó chọn Cột mới.
Nhập các thông tin sau:
- A Tên hiển thị cho cột.
- Tùy chọn, nhập Mô tả của cột.
Đối với Kiểu dữ liệu , hãy chọn fx Công thức.
Nhập công thức hoặc sử dụng gợi ý công thức:
Nhập công thức vào ô Công thức. Power Fx Thông tin thêm: Nhập công thức
- Chọn các thuộc tính bổ sung:
- Chọn Có thể tìm kiếm nếu bạn muốn cột này có sẵn trong chế độ xem, biểu đồ, bảng thông tin và Tìm kiếm nâng cao.
-
Tùy chọn nâng cao:
- Nếu công thức đánh giá thành giá trị thập phân, hãy mở rộng Tùy chọn nâng cao để thay đổi số điểm chính xác, từ 0 đến 10. Giá trị mặc định là 2.
- Chọn Lưu.
Nhập công thức
Ví dụ sau đây tạo một cột công thức có tên là Tổng giá. Cột Số đơn vị là kiểu dữ liệu số nguyên. Cột Giá là kiểu dữ liệu thập phân.
Cột công thức hiển thị kết quả của Giá nhân với Số lượng đơn vị.
Công thức bạn nhập xác định loại cột. Bạn không thể thay đổi loại cột sau khi tạo cột. Điều đó có nghĩa là bạn chỉ có thể thay đổi công thức sau khi tạo cột khi công thức không làm thay đổi loại cột.
Ví dụ, công thức giá * chiết khấu tạo ra một cột kiểu số. Bạn có thể thay đổi giá * chiết khấu thành giá * (chiết khấu + 10%) vì điều đó không làm thay đổi loại cột. Tuy nhiên, bạn không thể thay đổi giá * giảm giá thành Văn bản(giá * giảm giá) vì điều đó sẽ yêu cầu phải thay đổi kiểu cột thành chuỗi.
Nhận gợi ý công thức (xem trước)
[Chủ đề này là tài liệu hướng dẫn trước khi phát hành và có thể thay đổi.]
Mô tả những gì bạn muốn công thức thực hiện và nhận kết quả do AI tạo ra. Gợi ý công thức chấp nhận đầu vào ngôn ngữ tự nhiên của bạn để diễn giải và đề xuất một công thức bằng mô hình AI dựa trên GPT. Power Fx
Quan trọng
Đây là tính năng xem trước chỉ có ở khu vực Hoa Kỳ.
Các tính năng xem trước không được dùng cho sản xuất và có thể có chức năng bị hạn chế. Những tính năng này khả dụng trước khi có bản phát hành chính thức để khách hàng có thể truy cập sớm và cung cấp phản hồi.
Hiện tại, các gợi ý công thức tham chiếu đến một bảng duy nhất được hỗ trợ. Các đề xuất công thức tham chiếu đến một cột trên bảng liên quan không được hỗ trợ.
Điều kiện tiên quyết
Để bật tính năng này, bạn phải bật cài đặt môi trường Gợi ý AI cho cột công thức . Thông tin thêm: Đề xuất AI cho các cột công thức
Ví dụ về đầu vào ngôn ngữ tự nhiên
Hãy tưởng tượng có một cột Đánh giá của khách hàng hiển thị xếp hạng của họ theo tài khoản.
Trong hộp Nhận gợi ý công thức , hãy nhập công thức bằng ngôn ngữ tự nhiên, chẳng hạn như Nếu xếp hạng trên cột xếp hạng bằng hoặc lớn hơn 5 thì hãy chỉ định là Tốt và nếu nhỏ hơn 5 thì hãy chỉ định là Trung bình và nếu giá trị để trống hoặc bằng 0 thì hãy hiển thị là Kém, sau đó chọn nút mũi tên (enter).
Sau đó sao chép Công thức được đề xuất.
Và dán nó vào hộp Nhập công thức . Chọn Lưu.
Sau đây là cách công thức hiển thị khi được dán.
Switch(
ThisRecord.'Customer Rating',
Blank(), "Bad",
0, "Bad",
1, "Average",
2, "Average",
3, "Average",
4, "Average",
5, "Good",
6, "Good",
7, "Good",
8, "Good",
9, "Good",
10, "Good"
)
Kiểm tra cột công thức Mô tả xếp hạng đã tính toán, trông như thế này.
AI có trách nhiệm
Để biết thông tin về AI có trách nhiệm, hãy truy cập các tài nguyên sau:
- Câu hỏi thường gặp về xây dựng ứng dụng và bảng thông qua hội thoại
- Câu hỏi thường gặp về việc sử dụng AI một cách có trách nhiệm trong Power Apps
Toán tử
Bạn có thể sử dụng các toán tử sau trong cột công thức:
+, -, *, /, %, trong, chính xác, &
Để biết thêm thông tin, hãy truy cập Nhà điều hành trong Power Apps.
Loại dữ liệu
Bạn có thể hiển thị kiểu dữ liệu sau trong cột công thức:
- Văn bản
- Số thập phân
- Số nguyên
- Trôi nổi
- Lựa chọn Boolean (Có/Không)
- Lựa chọn (trước đây là tập hợp tùy chọn)
- Ngày giờ
Thông tin thêm: Tạo các cột công thức với các kiểu dữ liệu thập phân, số nguyên, số thực và lựa chọn\
Kiểu dữ liệu tiền tệ hiện không được hỗ trợ.
Các loại chức năng
Bạn có thể dùng các kiểu dữ liệu sau trong cột công thức:
- Dấu thập phân
- String
- Boolean
- Nhóm chọn
- Ngày giờ (TZI)
- DateTime (Cục bộ của người dùng) (giới hạn trong việc so sánh với các giá trị cục bộ khác của người dùng là hàm DateAdd và DateDiff)
- DateTime (Chỉ ngày) (giới hạn trong việc so sánh với các giá trị chỉ ngày khác, các hàm DateAdd và DateDiff)
- Tiền tệ
- Số nguyên
Hàm
Đối với các hàm vô hướng mà bạn có thể sử dụng trong cột công thức, hãy đi tới Tham chiếu công thức - Dataverse cột công thức.
* Các hàm Văn bản và Giá trị chỉ hoạt động với các số nguyên, không có dấu phân cách thập phân. Dấu phân tách thập phân khác nhau giữa các ngôn ngữ. Vì các cột công thức được đánh giá mà không có kiến thức về ngôn ngữ, nên không có cách nào để diễn giải hoặc tạo dấu phân tách thập phân một cách chính xác.
* Đối số StartOfWeek không được hỗ trợ cho các hàm WeekNum và Weekday trong các cột công thức.
Ví dụ về hàm
| Description | Ví dụ: |
|---|---|
| Lấy giá trị ngày tháng. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Hướng dẫn và hạn chế
Phần này mô tả các hướng dẫn và những hạn chế đã biết với các cột công thức trong Dataverse.
Xác thực sử dụng trường tiền tệ
- Các cột công thức không hỗ trợ sử dụng cột tiền tệ của bảng liên quan trong công thức, chẳng hạn như trong ví dụ này.
- Hiện tại, việc sử dụng trực tiếp các cột tiền tệ và tỷ giá hối đoái trong công thức không được hỗ trợ. Việc sử dụng các cột tiền tệ và tỷ giá hối đoái được thực hiện thông qua hàm
Decimal, chẳng hạn nhưDecimal(currency column)hoặcDecimal(exchange rate). Hàm này đảm bảo đầu ra nằm trong phạm vi được chấp nhận.DecimalNếu giá trị cột tiền tệ hoặc tỷ giá hối đoái vượt quá phạm vi được chấp nhận thì công thức trả về giá trị null. - Các cột tiền tệ cơ sở không được hỗ trợ trong biểu thức cột công thức vì chúng là các cột hệ thống được sử dụng cho mục đích báo cáo. Nếu bạn muốn có kết quả tương tự, bạn có thể sử dụng kiểu cột tiền tệ cùng với sự kết hợp cột tỷ giá hối đoái như
CurrencyField_Base = (CurrencyField / ExchangeRate).
Xác thực sử dụng cột ngày giờ
- Hành vi của các cột công thức ngày giờ chỉ có thể được cập nhật khi nó không được sử dụng trong cột công thức khác.
- Đối với các cột công thức ngày giờ, khi sử dụng hàm
DateDiff, hãy đảm bảo rằng:- Cột hành vi cục bộ của người dùng không thể được so sánh hoặc sử dụng với cột hành vi.
DateTime(TZI)/DateOnly - Cột hành vi cục bộ của người dùng chỉ có thể được so sánh hoặc sử dụng với cột hành vi cục bộ của người dùng khác.
-
DateTime(TZI)các cột hành vi có thể được so sánh hoặc sử dụng trongDateDiffcác hàm với mộtDateTime(TZI)/DateOnlycột hành vi khác. -
DateOnlycác cột hành vi có thể được so sánh hoặc sử dụng trong hàm DateDiff với một cột hành vi khác.DateTime(TZI)/DateOnly
- Cột hành vi cục bộ của người dùng không thể được so sánh hoặc sử dụng với cột hành vi.
- Các cột ngày giờ và hàm ngày giờ
UTCNow(),Now()không thể được truyền làm tham số cho các hàm chuỗi.
Sử dụng cột công thức trong các trường cuộn lên
- Cột công thức đơn giản là nơi công thức sử dụng các cột từ cùng một bản ghi hoặc sử dụng các giá trị được mã hóa cứng. Đối với các cột tổng hợp, các cột công thức phải là các cột công thức đơn giản, chẳng hạn như cột tổng hợp ví dụ này.
- Cột công thức phụ thuộc vào các hàm ràng buộc thời gian
UTCNow()vàUTCToday()không thể được sử dụng trong trường tổng hợp.
Power Fx khuyến nghị chức năng văn bản
Các cột công thức không hỗ trợ các hàm có một đối số duy nhất thuộc kiểu Số.
Text()Số có thể là số nguyên, số thập phân hoặc tiền tệ.
Các cột công thức không hỗ trợ sử dụng số trong các cấu hình sau:
- Trong các hàm chuỗi. Đây là các hàm chuỗi được đặt ở bất kỳ nơi nào mong đợi có đối số văn bản: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute và Replace.
- Trong các công thức ngầm định, chẳng hạn như
12 & "foo", hoặc12 & 34, hoặc"foo" & 12. - Không hỗ trợ chuyển đổi số thành văn bản nội bộ. Chúng tôi khuyên bạn nên sử dụng
Text(Number, Format)để chuyển đổi số thành văn bản. Trong trường hợp đối sốStringđược truyền vào hàmTextthì đối sốFormatđó không được hỗ trợ. - Sau đây là một ví dụ sử dụng hàm
Textđể chuyển đổi một số thành văn bản và thêm một chuỗi vào đó:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"Các mã định dạng dành riêng cho từng địa phương như "." và "," không được hỗ trợ trong các cột công thức.
Xác thực phạm vi trên các cột công thức
- Bạn không thể đặt thuộc tính Giá trị tối thiểu hoặc Giá trị tối đa của cột công thức.
- Tất cả các phép tính nội bộ phải nằm trong phạm vi Dataverse cho các cột công thức kiểu thập phân (-100000000000 đến 100000000000).
- Giá trị theo nghĩa đen được mã hóa cứng được nhập vào thanh công thức phải nằm trong phạm vi Dataverse .
- Nếu có một cột số là null thì nó được coi là 0 trong phép toán trung gian. Ví dụ,
a+b+c and If a = null, b=2, c=3thì cột công thức sẽ đưa ra0 + 2 + 3 = 5.- Hành vi này khác với các cột được tính toán trong trường hợp này vì các cột được tính toán đưa ra
null + 2 + 3 = null.
- Hành vi này khác với các cột được tính toán trong trường hợp này vì các cột được tính toán đưa ra
Xác thực chung trên các cột công thức
- Các cột công thức có thể tham chiếu đến các cột công thức khác, nhưng một cột công thức không thể tham chiếu đến chính nó.
- Các cột công thức không hỗ trợ chuỗi tuần hoàn, chẳng hạn như
F1 = F2 + 10, F2 = F1 * 2. - Độ dài biểu thức công thức tối đa trong các cột công thức là 1.000 ký tự.
- Độ sâu tối đa được phép trong các cột công thức là 10.
Độ sâu được định nghĩa là chuỗi các cột công thức tham chiếu đến các cột công thức hoặc cột tổng hợp khác.
- Ví dụ,
table E1, F1 = 1*2, table E2, F2 - E1*2. Trong ví dụ này, độ sâu của F2 là 1.
- Ví dụ,
- Trong các ứng dụng dựa trên mô hình, tính năng sắp xếp bị vô hiệu hóa trên:
- Một cột công thức chứa một cột của bảng có liên quan.
- Một cột công thức có chứa một cột logic (ví dụ: cột địa chỉ).
- Một cột công thức chứa một cột tính toán hoặc công thức khác.
- Cột công thức sử dụng hàm giới hạn thời gian
UTCNow().
- Các cột kiểu Số nguyên có định dạng Ngôn ngữ, Thời lượng, Múi giờ không được hỗ trợ trong các cột công thức.
- Các cột kiểu Chuỗi có định dạng Email, Vùng văn bản, Ký hiệu chứng khoán, URL không được hỗ trợ trong các cột công thức.
- Các cột công thức không hiển thị giá trị khi ứng dụng ở chế độ ngoại tuyến trên thiết bị di động.
- Bạn không thể kích hoạt quy trình làm việc hoặc plug-in trên các cột công thức.
- Chúng tôi không khuyến khích sử dụng các cột đã tính toán trong các cột công thức và ngược lại.
- Quy tắc phát hiện trùng lặp không được kích hoạt trên các cột công thức.
- Hàm
Nowcó thể được sử dụng với các cột công thức.Now()có hành vi cục bộ của người dùng và có hành vi độc lập với múi giờ.UTCNow() - Bạn có thể thiết lập thuộc tính độ chính xác cho các cột thập phân.
- Giá trị kiểu dữ liệu công thức mặc định được đặt thành Thập phân cho giá trị số trả về công thức.
- Không hỗ trợ cập nhật định dạng cột công thức số nguyên.
Các cột công thức của các kiểu dữ liệu không thể tạo được
- Tiền tệ