Tài liệu

Tài liệu RunMacro

Tạo robot đầu tiên, rồi tiến xa theo nhu cầu.

Hướng dẫn rõ ràng từng bước để tạo, chạy và cải thiện robot cho công việc máy tính lặp lại.

Tài liệu Luồng Vòng lặp While
🔄 Luồng

Vòng lặp theo điều kiện logic (While Loop) trong RunMacro

Vòng lặp While lặp lại khối lệnh bên trong chừng nào điều kiện so sánh biến còn thỏa mãn, bảo vệ an toàn bằng giới hạn số lần lặp tối đa.

Điều kiện cần#

  • Biến điều kiện đã được gán giá trị khởi tạo trước khi vào vòng lặp.
  • Xác định điều kiện dừng rõ ràng để tránh chạm giới hạn an toàn ngoài ý muốn.

Chế độ hỗ trợ#

  • Chế độ Desktop
  • Chế độ Browser
  • RunMacro Runner

Chức năng này làm gì#

Lệnh Vòng lặp While thực thi lặp lại các lệnh bên trong khối chừng nào biểu thức điều kiện (so sánh giữa biến và giá trị) vẫn còn đánh giá là ĐÚNG. Trước mỗi lượt lặp, RunMacro tự động kiểm tra lại điều kiện; ngay khi điều kiện trở thành SAI hoặc gặp lệnh Break, vòng lặp kết thúc và luồng chạy chuyển xuống sau lệnh End Loop. Lệnh tích hợp sẵn giới hạn số vòng lặp an toàn (Safety Cap) để ngăn ngừa treo máy do vòng lặp vô tận.

Hình ảnh & video#

Giao diện cấu hình các trường thông số của lệnh Vòng lặp While trong RunMacro
Khung cấu hình các trường thông số của lệnh Vòng lặp While trong RunMacro.

Khi nào nên dùng#

  • Chờ một quá trình xử lý hoàn tất mà không biết trước chính xác số giây (ví dụ: lặp chừng nào {trang_thai} != "Hoàn thành").
  • Duyệt xử lý danh sách cho tới khi con trỏ hoặc số dư chạm mức ngưỡng dừng.
  • Thử lại một chuỗi thao tác kèm kiểm tra điều kiện thành công sau mỗi lượt.

Khi nào không nên dùng#

  • Lặp qua danh sách phần tử hoặc tệp tin đã biết trước (dùng For Each tối ưu hơn).
  • Chỉ cần lặp số lần cố định N lần (dùng lệnh Vòng lặp Loop).

Các bước cấu hình#

  1. Thêm lệnh Điều khiển luồng › Vòng lặp While.
  2. Chọn biến nguồn cần theo dõi (ví dụ: {status}).
  3. Chọn toán tử so sánh (!=, ==, <, contains...) và nhập giá trị mục tiêu.
  4. Đặt Giới hạn an toàn (Max Iterations) (mặc định 100 lần) để phòng tránh lặp vô hạn.
  5. Chèn các lệnh cần thực thi bên trong khối. Đóng khối bằng End Loop. Lưu.

Giải thích từng tùy chọn#

Biến kiểm tra (Variable)#

Biến nguồn được đánh giá lại trước mỗi vòng lặp.

Toán tử so sánh (Operator)#

Toán tử điều kiện: =, !=, <, <=, >, >=, contains, not_contains, is_empty, is_not_empty.

Giá trị so sánh (Target Value)#

Giá trị đối chiếu cố định hoặc giá trị từ biến khác.

Giới hạn lặp an toàn (Max Iterations)#

Số lần lặp tối đa cho phép; vượt quá số này vòng lặp sẽ tự động ngắt để bảo vệ hệ thống.

Đóng khối (End Loop)#

Lệnh đánh dấu điểm kết thúc khối lặp While; khi lặp lại sẽ quay về đầu khối While.

Kết quả mong đợi#

Khối lệnh chạy liên tục từng chu kỳ cho đến khi điều kiện trở thành SAI, sau đó tiếp tục bước ngay sau End Loop.

Ví dụ thực tế#

Ví dụ: Chờ trạng thái tải dữ liệu chuyển sang "Ready"#

  1. Khởi tạo biến {trang_thai} = "Processing".
  2. Thêm While: {trang_thai} != "Ready", Max Iterations = 50.
  3. Bên trong: Đọc lại trạng thái từ màn hình, Delay 1000ms.
  4. Đóng bằng End Loop. Khi {trang_thai} = "Ready", kịch bản đi tiếp.

Giới hạn và trường hợp lỗi#

  • Nếu biến điều kiện không được cập nhật bên trong vòng lặp, vòng lặp sẽ chạy tới khi cạn giới hạn Max Iterations rồi dừng.
  • Thời gian chạy giữa các vòng lặp phụ thuộc vào độ trễ của các lệnh con bên trong.

Mẹo & lỗi thường gặp#

Luôn bảo đảm bên trong khối While có ít nhất một lệnh cập nhật lại giá trị của biến điều kiện (hoặc lệnh Delay hợp lý).
Không nên đặt Max Iterations = 0 hoặc quá lớn nếu kịch bản chạy trên máy chủ tự động không có người giám sát.

Thông tin kiểm chứng#

  • commands/control_flow.py
Robot biểu tượng của RunMacro

Công việc của robot. Thời gian của bạn.

Tạo robot trong vài phút, không cần lập trình. Chạy ổn định, quản lý từ xa, chi phí rõ ràng — và bạn luôn giữ quyền kiểm soát.