Vòng lặp và thao tác dữ liệu

Nhập môn Power Automate

Anushika Agarwal

Cloud Data Engineer

Apply to each

Sơ đồ Apply to each lặp tuần tự: hộp Array of items ở trên chứa ba viên màu mã hóa item a (vàng), item b (xanh), item c (hồng), với mũi tên chảy vào khung Apply to each viền tím nhạt có gạch đứt, nhãn sequential by default, bên trong có ba thẻ vòng lặp xếp dọc nối bằng mũi tên xuống, mỗi thẻ hiển thị Iteration N với Current item bằng viên màu tương ứng (a, rồi b, rồi c) và dòng Process this item bên dưới

 

  • Xử lý một array từng phần tử một
  • Chạy một lần cho mỗi phần tử, truy cập Current item
  • Mặc định tuần tự; chạy song song qua Concurrency control
Nhập môn Power Automate

Current item

 

  • Current item = giá trị của vòng lặp hiện tại
  • Thay đổi theo mỗi lượt lặp
  • Truy cập từ bảng Dynamic content

$$

Lưu ý: lỗi hay gặp là dùng toàn bộ array thay vì Current item

Bảng Dynamic content thật của Power Automate mở từ trường Inputs của hành động Compose, liệt kê các nhóm token Compose, Manually trigger a flow với See more 19, Date, Full address, Country/Region, City, State, Street, rồi một mục Apply to each ở cuối với Current item được đóng khung đỏ

Nhập môn Power Automate

Lọc trước khi lặp

  • Hãy dùng Filter Array trước

Sơ đồ pipeline ngang đơn giản trên nền trắng: cột Full list gồm 8 thẻ ticket xếp chồng bên trái (3 thẻ cam Urgent, 5 thẻ xám), mũi tên dẫn vào thẻ tím nhạt Filter Array với biểu thức item Status is equal to Urgent dạng monospace, rồi mũi tên dẫn đến cột ngắn bên phải chỉ còn 3 thẻ cam urgent

Nhập môn Power Automate

Ít việc hơn mỗi lượt

 

Không dùng Filter Array Có dùng Filter Array
Số lần lặp 500 lần 12 lần
Số điều kiện kiểm tra mỗi lần 500 (mỗi phần tử 1 lần) 0 (lọc đã làm)
Số cuộc gọi API mỗi lần 500 12

 

  • Filter Array chạy một lần. Condition bên trong Apply to each chạy ở mọi lượt lặp
Nhập môn Power Automate

Hành động Filter array

 

Thẻ hành động Filter array thật của Power Automate, cắt tới phần tham số: trường From với placeholder Array to filter và Filter Query với ba ô con Choose a value, is equal to, Choose a value, kèm liên kết Edit in advanced mode

 

  • From: array cần lọc
  • Filter Query: một hàng điều kiện, Left, Operator, Right
  • Dùng item()?['Field'] ở Left để đọc trường của từng phần tử
  • Filter array xuất ra Body, là array đã lọc. Chọn Body khi lặp qua nó
Nhập môn Power Automate

Chọn Body, không phải Body Item

 

Bộ chọn dynamic-content của Power Automate mở dưới thẻ Apply to each, với phần Filter array liệt kê hai đầu ra: Body được đóng khung xanh lá và Body Item được đóng khung đỏ bên dưới

 

  • Khi Apply to each dùng đầu ra của Filter array, hãy chọn Body
  • Body là toàn bộ array đã lọc. Body Item là một bản ghi, và vòng lặp sẽ chỉ chạy một lần
Nhập môn Power Automate

Do Until

 

  • Lặp lại hành động đến khi điều kiện đúng
  • Không dành cho array, cái đó là Apply to Each
  • Dùng cho mẫu polling hoặc retry

$$

Luôn đặt giới hạn số lượt để tránh vòng lặp vô hạn

Sơ đồ vòng lặp Do Until: khung vòng lặp viền tím nhạt có gạch đứt, nhãn Do Until, với huy hiệu an toàn màu vàng Count limit 60 ở góc trên phải; bên trong có hộp Run action(s) phía trên với chú thích ví dụ e.g. poll job status, mũi tên xuống dẫn vào hình thoi Condition met? trung tính, nhánh False uốn cong lên trái để lặp lại vào Run action(s) với nhãn repeat, và nhánh True đi xuống qua nhãn xanh True label exit-loop rồi ra khỏi khung vào hộp xanh Continue flow phía dưới

Nhập môn Power Automate

Data operations

 

Operation Chức năng Hữu ích cho
Select Định hình lại từng phần tử, chọn trường Tỉa array còn các cột cần dùng
Join Items → một chuỗi, có phân tách Danh sách phân tách bằng dấu phẩy trong tiêu đề email
Create HTML table Array → HTML cho email Tóm tắt có định dạng trong nội dung email
Create CSV table Array → CSV để xuất Đính kèm dữ liệu cho Excel hoặc công cụ hạ nguồn

 

Select + Create HTML table là bộ đôi chủ lực cho nội dung email.

Nhập môn Power Automate

Cùng luyện tập nào!

Nhập môn Power Automate

Preparing Video For Download...