Các lỗi công thức phổ biến

Trong tài liệu trợ giúp này

Tìm hiểu về các lỗi phổ biến mà bạn có thể gặp phải với công thức trong Notion và cách bạn có thể khắc phục chúng 🔨


If you’re unsure how to fix the errors in your formula, Notion AI can help. Learn more here →

Nếu bạn không có quyền truy cập vào cơ sở dữ liệu được tham chiếu, các công thức sẽ không thể tính toán một cách đáng tin cậy. Điều này là do các công thức yêu cầu quyền truy cập vào cơ sở dữ liệu nguồn và các cấu hình thuộc tính của nó.

Cách khắc phục

Đảm bảo bạn có quyền truy cập vào tất cả các trang và cơ sở dữ liệu được tham chiếu trong công thức của bạn trong /nút hoặc tự động hóa cơ sở dữ liệu.

Không giống như các thuộc tính công thức trong cơ sở dữ liệu, các công thức trong tự động hóa yêu cầu một loại trả về cụ thể từ các công thức (ví dụ: ngày, văn bản, số, người). Nếu không, tự động hóa sẽ không thể lưu và thực thi đúng cách.

Cách khắc phục

Đảm bảo công thức trả về đúng loại giá trị. Ví dụ: nếu viết công thức để đặt giá trị của thuộc tính Người cho một trang, công thức phải trả về một người dùng hoặc danh sách người dùng, không phải ngày. Ngoài ra, nếu đánh giá một điều kiện cụ thể trên thuộc tính loại mảng (ví dụ: đa lựa chọn), hãy đảm bảo sử dụng .includes thay vì == trong câu lệnh if() của bạn.

Một nguyên nhân phổ biến gây ra lỗi này là sử dụng một loại khác để biểu thị giá trị trống. Ví dụ: trong một công thức như if(Date, Date.dateAdd(1, “day”), ""), loại trả về là không xác định vì nó có thể là ngày hoặc văn bản (do ""). Điều này có thể được khắc phục bằng cách sử dụng empty() để biểu thị các giá trị trống thay thế, vì vậy công thức đã sửa sẽ trông giống như if(Date, Date.dateAdd(1, "day"), empty()).

Công thức Notion chỉ có thể sâu 15 lớp. Mỗi khi một công thức tham chiếu đến một công thức hoặc rollup khác, nó sẽ thêm một lớp. Điều này áp dụng ngay cả khi công thức nằm trong một cơ sở dữ liệu khác.

Khi đạt đến giới hạn này, Notion sẽ hiển thị thông báo lỗi.

Cách khắc phục

Hãy đơn giản hóa thiết lập của bạn bằng cách kết hợp các công thức và rollup không cần thiết vào ít thuộc tính hơn. Hãy tìm những nơi có nhiều công thức thực hiện các việc tương tự và cố gắng hợp nhất chúng thành một.

Nếu các biến tùy chỉnh được xác định trong cùng một Hành động tự động hóa, chúng không thể tham chiếu lẫn nhau.

Ví dụ: nếu bạn xác định var1var2 trong cùng một Hành động, var2 sẽ không thể sử dụng var1 trong định nghĩa của nó.

Cách khắc phục

Hãy xác định từng biến trong Hành động riêng biệt của nó (tạo biến đầu tiên, thêm Hành động mới vào tự động hóa của bạn và xác định biến tiếp theo một cách riêng biệt). Điều này đảm bảo rằng mỗi biến được nhận dạng đúng cách.

Hôm nay, các biến được xác định trong tự động hóa có thể không được sử dụng để lọc các trang trong cơ sở dữ liệu mà bạn muốn tự động hóa tác động vào (ví dụ: “Chỉnh sửa các trang khớp với bộ lọc chứa biến”).

Cách khắc phục

  1. Xác định một biến tùy chỉnh là trang này bằng cách nhập trang kích hoạt vào hộp công thức.

  2. Thêm Hành động Chỉnh sửa các trang trong và chọn biến tùy chỉnh từ bước 1 làm mục tiêu của bạn.

Khi làm việc với các thuộc tính quan hệ, rollup và người trong công thức, các công thức sẽ trả về một danh sách các trang hoặc người. Để tham chiếu các thuộc tính trong quan hệ, bạn sẽ cần xác định phần tử đầu tiên, nếu không tự động hóa của bạn sẽ tạm dừng. Bạn cũng có thể gặp vấn đề này khi tạo một công thức sử dụng hàm map cho một thuộc tính quan hệ.

Cách khắc phục

Sử dụng các hàm như .first() hoặc .at(0) để lấy phần tử đầu tiên, hoặc lặp qua danh sách các trang với các hàm như .map() , .filter() , .every(), .some(), .find().

Nếu một công thức bất ngờ gặp phải giá trị trống (thường gặp nhất là giá trị ngày hoặc người), tự động hóa sẽ nhận được lỗi và tự động tạm dừng.

Cách khắc phục

Sử dụng if hoặc ifs để kiểm tra xem thuộc tính đang được thao tác có giá trị hay không. Ví dụ, thay vì Date.dateAdd(1, \"day\"), tốt hơn là sử dụng if(Date, Date.dateAdd(1, \"day\"), empty()). Điều này đảm bảo rằng dateAdd chỉ được thực hiện khi Date có giá trị, và chỉ định rõ cho tự động hóa xóa thuộc tính đang được cập nhật khi Date không có dữ liệu. Ngoài ra, hãy thiết lập một chế độ xem với bộ lọc đảm bảo giá trị của thuộc tính bạn đang thao tác tồn tại, và cấu hình tự động hóa chỉ chạy trên các trang trong chế độ xem đó.

Nếu công thức của bạn không hoạt động như mong đợi, có thể là do lỗi cú pháp như thiếu dấu ngoặc đơn, toán tử không chính xác hoặc các hàm không được hỗ trợ. Để biết chi tiết đầy đủ về cú pháp công thức, hãy đọc bài viết này →


Gửi phản hồi

Tài nguyên này có hữu ích không?


Powered by Fruition