Bỏ qua để đến nội dung

RaaS và WQL: mở dữ liệu Workday ra ngoài

Bài dành cho dân tích hợp: hai con đường chính thống đưa dữ liệu Workday ra hệ thống ngoài — RaaS (report thành web service) và WQL (truy vấn kiểu SQL). Cả hai đều chạy dưới security của người gọi.

Expose advanced/search report: related actions → Web Services > View URLs (nhập required prompts trước). URL pattern:

https://<host>/<tenant>/<owner-username>/<Report_Name>?<prompt>=<value>&format=json

6 format: CSV (thêm &bom=true cho Excel đọc UTF-8 đúng), JSON, Simple XML, Workday XML (kèm XSD + WSDL cho SOAP), GData, RSS. Điểm phải thuộc:

  • Namespace urn:com.workday.report/Tên_Report không đổi khi đổi tên report/owner — đó là lá chắn cho integration; tự sửa namespace thì Workday không kiểm tra trùng và mọi request cũ gãy.
  • Copy standard report ra custom trước khi enable web service — tránh Workday update bản chuẩn làm gãy tích hợp.
  • CSV: mất column grouping và thứ tự cột có thể không khớp report definition — đừng parse theo vị trí cột.

Truy vấn thẳng data source + field, không cần report definition. Cú pháp:

SELECT worker, hireDate, dependents{age} AS DependentsAge
FROM allWorkers (dataSourceFilter=activeFilter, effectiveAsOfDate="2026-01-01")
WHERE ON dependent age > 18
WHERE hireDate > "2020-01-01" AND location IN (wid1, wid2)
GROUP BY location HAVING count() > 100
ORDER BY hireDate DESC LIMIT 1000

Các luật riêng phải nhớ: không có SELECT *; related business object truy bằng {} trong SELECT và WHERE ON phải đứng TRƯỚC WHERE; ORDER BY sort alphabet chứ không logic; date không có Z là PST; GROUP BY không đi với RBO/currency/multi-instance. REST API: GET /data (query <2.048 ký tự) hoặc POST /data (≤16.000); khám phá metadata bằng GET /dataSources → /fields → /dataSourceFilters. Có report Convert Report to WQL dịch report có sẵn thành câu WQL — cách học nhanh nhất.

Giới hạn: kết quả ≤1 triệu dòng (quá mà không LIMIT là fail); phân trang ≤10.000 dòng/trang (limit/offset, cache 30 phút); timeout 30 phút (tenanted) / 5 phút (API Gateway); test trong tenant bằng View WQL Query Result (cắt 500 dòng). Business view data source không query được bằng WQL. Theo dõi mức dùng: WQL/RaaS Usage Metrics (90 ngày, chỉ Production).

flowchart TB
  Q{"Cần gì?"} -->|"GROUP BY/aggregate,<br/>phân trang, đổi query không<br/>cần vào Workday, đa môi trường"| W["WQL<br/>(JSON, REST)"]
  Q -->|"Định nghĩa extract LƯU trong<br/>Workday + audit, SOAP/WSDL,<br/>nhiều format, timeout dài 6h"| R["RaaS<br/>(6 format)"]
  Q -->|"Field từ Global BO,<br/>percentile"| R
  W & R --> S(["Cả hai: security<br/>theo người gọi, ≤1 triệu dòng"])

Nguyên tắc thực dụng: pipeline dữ liệu định kỳ có kiểm soát (đối soát, audit ai đổi extract) → RaaS; ứng dụng/BI cần truy vấn linh hoạt, phân trang, nhiều môi trường → WQL. Đây cũng chính là hai cánh cửa đưa dữ liệu Workday về nền tảng dữ liệu doanh nghiệp (Snowflake, Cloudera…) mà BSD tư vấn — cặp với chiều ngược lại là Prism nhận dữ liệu ngoài vào.


Chắt lọc từ Workday Reporting and Analytics Administrator Guide (mục Reports as a Service, Workday Query Language) — doc.workday.com.

Chia sẻ: