Giới Thiệu
Chào các bạn! Gần đây, mình được biết rằng nơi làm việc của người anh mình có các nghiệp vụ cần xử lý bộ hồ sơ đơn hàng cho kế toán. Đặc biệt, các bộ hồ sơ này được lưu trữ trên SharePoint để thuận tiện cho việc xử lý online của kế toán.
Mô Tả Vấn Đề
Các đơn hàng được scan thành file PDF và cần đặt tên theo cú pháp nhất định trước khi tiến hành tải lên SharePoint. Nhiệm vụ chính là phải đọc mã hóa đơn trong nội dung file PDF để đổi tên file cho đúng với yêu cầu.
Bước Xây Dựng Quy Trình Đổi Tên File
Dưới đây là hướng dẫn chi tiết từng bước để xây dựng một flow trong Power Automate giúp đổi tên file PDF tự động dựa trên dữ liệu được đọc từ file.
Bước 1: Tạo Automate Cloud Flow
Trước tiên, sau khi scan file PDF vào máy tính, bạn cần upload file này lên OneDrive để kích hoạt trigger cho flow. Trong tab "My flows", bạn chọn "New flow" -> "Automated cloud flow". Chọn trigger là "When a file is created" trong OneDrive và thiết lập đường dẫn folder là /File Input
.
Bước 2: Tạo Biến Để Hỗ Trợ Đặt Tên File
Bạn cần tạo ra các biến hỗ trợ cho việc đặt tên file sau này. Vào phần "Add an action", tìm kiếm từ khóa "variable" để tạo biến. Một biến cần thiết là varHeader
để lưu giữ đầu chuỗi tên file. Ngoài ra, bạn có thể tạo thêm các biến khác nếu cần.
Lưu ý: Đối với AI Builder, bạn cần có license riêng để sử dụng và cần tiêu tốn credit cho mỗi trang tài liệu khi đọc dữ liệu.
Bước 3: Lấy Nội Dung File PDF
Tạo action "Get file content using path" để thu thập dữ liệu từ file PDF đã tải lên.
Bước 4: Nhận Diện Dữ Liệu Trong File PDF
Sử dụng action "Recognize text in an image or a PDF document" và truyền nội dung file vào thuộc tính "Image". Dữ liệu sẽ được trả về dưới dạng json, từ đó bạn có thể truy xuất các trang và nội dung của chúng.
Bước 5: Xử Lý Dữ Liệu Đọc Được
Sử dụng action "Apply to each" với đầu vào là biến varIndex
mà bạn đã tạo. Thiết lập điều kiện để kiểm tra giá trị đọc được từ file. Nếu ký tự không chính xác, hãy so sánh với các khả năng khác nhau của dữ liệu. Sử dụng hàm expression để truy xuất dữ liệu theo từng trường hợp.
- Cập nhập biến
varReceptionNo
với giá trị mã hóa đơn đọc được. - Tạo action "Increment variable" để tăng giá trị biến index sau mỗi lần lặp.
Bước 6: Kiểm Tra Kết Quả Đọc Dữ Liệu
Tạo action "Condition" để kiểm tra xem liệu bạn có nhận được mã Reception no
hay không. Nếu không, hãy sử dụng hàm utcNow()
để tạo tên file mặc định. Ngược lại, kết hợp varHeader
và varReceptionNo
để đặt tên file chính xác hơn.
Bước 7: Tạo File Mới
Cuối cùng, sử dụng action "Create file" để tạo file mới và truyền vào tên file varFileName
cùng với nội dung file được lấy.
Kết Quả
Vậy là bạn đã có thể tự động đổi tên file PDF dựa trên thông tin mã hóa đơn. Đơn cử, mã Reception no
của file là 19876527
và được kết hợp với chuỗi prefix là 103_M1
để tạo thành tên file cuối cùng.
source: viblo