-
Tổng quan tableau
-
Thao tác cơ bản
-
Thao tác nâng cao
-
Sử dụng hàm giúp phân tích bài toán thực tế
Xây dựng và kết nối api
- xây dựng file đọc dữ liệu trả về AP
tạo file data_api.php
<?php$conn = new mysqli(“localhost”, “giangtra_qlbh”, “Hocvien@123”, “giangtra_QLBH”);$result = $conn->query(“SELECT * FROM orders”);$data = [];while($row = $result->fetch_assoc()) {$data[] = $row;}header(‘Content-Type: application/json’);echo json_encode($data);?>
2. Tạp trang web giúp tableau lấy data từ link api ở bước 1 ( data này đang lấy đơn order, nếu lấy dl bảng khác phải viết lại). File: api_data.html
<!DOCTYPE html><html><head><meta charset=”utf-8″><title>GiangTran API Connector</title><script src=”https://connectors.tableau.com/libs/tableauwdc-2.3.latest.js”></script></head><body><h2>Kết nối API: GiangTranVN</h2><button id=”getDataBtn”>Kết nối tới Tableau</button><script>(function() {// Định nghĩa connectorvar myConnector = tableau.makeConnector();// 1. Định nghĩa schemamyConnector.getSchema = function(schemaCallback) {var cols = [{id: “orderNumber”, dataType: tableau.dataTypeEnum.string},{id: “orderDate”, dataType: tableau.dataTypeEnum.date},{id: “requiredDate”, dataType: tableau.dataTypeEnum.date},{id: “shippedDate”, dataType: tableau.dataTypeEnum.date},{id: “status”, dataType: tableau.dataTypeEnum.string},{id: “comments”, dataType: tableau.dataTypeEnum.string},{id: “customerNumber”, dataType: tableau.dataTypeEnum.string}];var tableSchema = {id: “orders”,alias: “Danh sách đơn hàng từ API”,columns: cols};schemaCallback([tableSchema]);};// 2. Lấy dữ liệu từ APImyConnector.getData = function(table, doneCallback) {fetch(“https://giangtranvn.com/api/data_api.php”).then(response => response.json()).then(data => {var tableData = [];data.forEach(function(item) {tableData.push({“orderNumber”: item.orderNumber,“orderDate”: item.orderDate,“requiredDate”: item.requiredDate,“shippedDate”: item.shippedDate,“status”: item.status,“comments”: item.comments,“customerNumber”: item.customerNumber});});table.appendRows(tableData);doneCallback();}).catch(error => {console.error(“Lỗi khi gọi API:”, error);});};tableau.registerConnector(myConnector);// 3. Xử lý khi bấm nút kết nốidocument.getElementById(“getDataBtn”).addEventListener(“click”, function() {tableau.connectionName = “GiangTran API Orders”;tableau.submit();});})();</script></body></html>
3. Vào tableau chọn Web data connector. Dán url bước 2 https://giangtranvn.com/api/api_data.html và kết nối