Power Automate SQL to Excel

Trong bài đăng này, tôi sẽ hướng dẫn bạn cách xuất dữ liệu từ Power Automate sang tệp Excel. Đây có vẻ là một yêu cầu đơn giản, nhưng cho đến gần đây đã yêu cầu sử dụng áp dụng cho từng vòng lặp chậm và có khả năng sử dụng nhiều hành động API

Mục lục

  • Tạo mẫu xuất Excel
  • Chuyển đổi Mẫu thành Base64
  • Tổng quan về dòng chảy
  • Sử dụng Select Action để Định hình lại Dữ liệu xuất của bạn
  • Xuất sang Excel Xong

Trình diễn video

Trong phần trình diễn này, tôi đang xuất 2.000 bản ghi từ danh sách SharePoint sang tài liệu Excel và quy trình chỉ mất 5 giây để thực thi

Tạo mẫu xuất Excel

Bước đầu tiên trong quy trình này là tạo một Excel có chứa bảng để chèn dữ liệu đã xuất của bạn vào. Định dạng các ô và thêm công thức theo yêu cầu của bạn rồi lưu tệp. Trong ví dụ của tôi, tập tin trông như thế này

Power Automate SQL to Excel

Như bạn có thể thấy từ ảnh chụp màn hình, bảng có tên là InvoiceExport và có bốn trường. Các trường chứa giá trị đã được áp dụng định dạng số và có một số công thức để tính tổng Số tiền Hóa đơn và đếm số lượng bản ghi

Ghi lại những gì bạn đã gọi là bảng, bạn sẽ cần nó cho quy trình của mình

Chuyển đổi Mẫu thành Base64

Khi bạn hài lòng với mẫu Excel của mình. Đi đến Base 64 Guru và tải lên tệp mẫu của bạn. Base64 Guru sẽ tạo một đại diện base64 cho tệp của bạn, như thế này

Power Automate SQL to Excel

Nhấp vào nút sao chép phía trên đại diện Base64 của tệp của bạn để sao chép tệp vào khay nhớ tạm của bạn

Tổng quan về dòng chảy

Để cung cấp cho bạn ý tưởng về cách xây dựng quy trình này đơn giản như thế nào, đây là ảnh chụp màn hình của toàn bộ nội dung, nó chỉ bao gồm 5 hành động

Power Automate SQL to Excel

Sử dụng Select Action để Định hình lại Dữ liệu xuất của bạn

Trong ví dụ của tôi, nguồn dữ liệu là SharePoint nhưng mọi nguồn dữ liệu có thể truy cập bằng Power Automate đều sẽ hoạt động. Nó có thể là SQL Server, Dataverse, SharePoint hoặc thậm chí là một tệp Excel khác. Mục đích của hành động chọn là định hình lại dữ liệu xuống chỉ các cột mà bạn muốn xuất

Trong hành động chọn, hãy tạo một mảng giá trị thô khớp với thứ tự của các cột trong mẫu Excel của bạn. Chúng tôi không muốn đặt tên cho các cột

Mã cho hành động chọn của tôi trông như thế này

[
  @{item()?['Title']},
  @{item()?['Customer']},
  @{item()?['Invoice_x0020_Amount']},
  @{item()?['Date']}
]

Chọn Chế độ văn bản hành động

Hành động Chọn của bạn có thể trông khác với hành động của tôi, vì chế độ mặc định là chế độ Khóa/Giá trị

Bạn có thể chuyển sang chế độ Văn bản bằng cách nhấp vào đây

Power Automate SQL to Excel

Tạo tệp Excel và điền vào dữ liệu của bạn

Bước tiếp theo là tạo tệp Excel của bạn và điền vào đó dữ liệu từ hành động Chọn của bạn

Trước tiên, hãy tạo một hành động Soạn thư có tên là ExcelDoc và dán vào biểu diễn Base64 của tệp mẫu của bạn

Tiếp theo, sử dụng tác vụ Tạo tệp, đặt tên tệp theo yêu cầu của bạn và đối với nội dung tệp, hãy sử dụng biểu thức

base64ToBinary(outputs('ExcelDoc'))

Cuối cùng, tạo thêm một hành động mới bằng cách tìm kiếm HTTP và bạn sẽ thấy hành động này

Power Automate SQL to Excel

Tại thời điểm viết bài này, đây là một hành động xem trước và nó không khả dụng trong tất cả Đối tượng thuê Office 365. Nếu bạn không thấy nó trong danh sách hành động của mình, chỉ cần sao chép mã bên dưới

{
  "id": "c78ee521-4c62-4f34-84b1-8ef7-98516f0f",
  "brandColor": "#EB3C00",
  "connectionReferences": {},
  "connectorDisplayName": "Office 365 Groups",
  "icon": "https://connectoricons-prod.azureedge.net/releases/v1.0.1504/1.0.1504.2515/office365groups/icon.png",
  "isTrigger": false,
  "operationName": "Send_a_HTTP_request",
  "operationDefinition": {
    "type": "OpenApiConnection",
    "inputs": {
      "host": {
        "connectionName": "shared_office365groups",
        "operationId": "HttpRequest",
        "apiId": "/providers/Microsoft.PowerApps/apis/shared_office365groups"
      },
      "parameters": {
        "Uri": "",
        "Method": "GET",
        "ContentType": "application/json"
      },
      "authentication": {
        "type": "Raw",
        "value": "@json(decodeBase64(triggerOutputs().headers['X-MS-APIM-Tokens']))['$ConnectionKey']"
      }
    },
    "runAfter": {
      "Create_file": [
        "Succeeded"
      ]
    }
  }
}

Và sau đó thêm một hành động mới vào luồng của bạn, đi tới Bảng tạm của tôi và nhấn CTRL-V. Sau đó, hành động mới sẽ xuất hiện trong khay nhớ tạm của bạn và bạn có thể thêm hành động đó vào quy trình của mình

Power Automate SQL to Excel

Khi đã có hành động mới, hãy định cấu hình nó như sau

URI

https://graph.microsoft.com/v1.0/me/drive/items/@{substring(outputs('Create_file')?['body/Id'], add(indexOf(outputs('Create_file')?['body/Id'], '.'),1))}/workbook/tables/InvoiceExport/rows/add

Lưu ý rằng tôi đã đặt tên của bảng vào URL

/workbook/tables/InvoiceExport/rows/add

Bạn sẽ cần cập nhật điều này để phản ánh tên bảng của bạn

Phương pháp. BƯU KIỆN

Thân thể

{
	"values": @{outputs('select')['body']}
}

Xuất sang Excel Xong

Với hành động mới này, có thể thêm nhiều hàng vào một tệp Excel rất nhanh chóng và chỉ sử dụng một hành động API duy nhất để làm như vậy. Tôi đã thử nghiệm điều này với 2.000 hàng và mất 5 giây để hoàn thành

Khi quá trình xuất hoàn tất, bạn có thể thực hiện bất kỳ hành động nào bạn muốn với tệp. Ví dụ: để gửi email, bạn có thể thực hiện Nhận nội dung tệp và một hành động gửi email

Power Automate SQL to Excel

Đây là một cách thực sự nhanh chóng và dễ dàng để xuất dữ liệu từ Power Automate sang Excel. Vui lòng cho tôi biết nếu trong các nhận xét nếu bạn gặp khó khăn hoặc thấy điều này hữu ích

Bạn có thể sử dụng SQL để tự động hóa Excel không?

Mặc dù nó yêu cầu một số hiểu biết cơ bản về các truy vấn SQL —tùy thuộc vào cách bạn muốn chạy các truy vấn đó — nó có thể giúp tự động hóa bảng tính Excel dễ dàng hơn nhiều. Specifically, automating the process of grabbing data.

Power có thể tự động chạy truy vấn SQL không?

Để chạy truy vấn trên cơ sở dữ liệu được kết nối, hãy sử dụng hành động Thực thi câu lệnh SQL. Power Automate hỗ trợ tất cả các truy vấn cần thiết, chẳng hạn như CHỌN, CHÈN VÀO và CẬP NHẬT .

Tự động hóa nguồn có thể ghi vào Excel không?

Power Automate – Luồng đám mây yêu cầu lưu trữ bảng tính excel trong thư mục SharePoint Online/One Drive . Ngoài ra, tệp sẽ được ghi vào phải có bảng dữ liệu hiển thị để trình kết nối Excel có thể suy luận lược đồ và cung cấp các trường tương ứng trong trải nghiệm trình kết nối.