You are on page 1of 10

แนวทางการแก้ไขปั ญหาการดึงข้อมูลจาก Data Source ทีเ่ ป็ น Web

สามารถเลือกวิธีแก้ไขได้จาก 3 วิธีดงั นี ้
1. ใช้การ Refresh ข้อมูลแบบ Manual ผ่าน Program Power BI Desktop
1.1. เนื่องจากการตัง้ Schedule Job เพื่ออัพเดทข้อมูลอัตโนมัตทิ าไม่ได้ แต่การเชื่อมต่อข้อมูลผ่าน
ทางโปรแกรม Power BI Desktop ยังทางานได้ตามปกติ
1.1.1. เปิ ดโปรแกรม Power BI Desktop > Refresh ข้อมูล

1.1.2. เมื่อ Refresh ข้อมูลเรียบร้อยแล้วให้ Save ไฟล์


1.2. Replace ไฟล์ Power BI ที่อพั เดทข้อมูลแล้ว ขึน้ บน Power BI Report Server
1.2.1. เลือก Manage ไฟล์ Power BI บน Server ที่ตอ้ งการ Replace

1.2.2. เลือก Replace และเลือกไฟล์ Power BI ที่ตอ้ งการ Replace จาก Path ที่ Save ไฟล์ไว้
2. แก้ไขวิธีดงึ ข้อมูลจากหน้าเว็บไซต์ โดยใช้ Advance Query ทีส่ ร้างเอง
2.1. Concept คือเราจะดึงข้อมูลใหม่ โดยวิธีคลิกผ่านหน้าโปรแกรม และจะ Copy Code ใน
Advance Query ที่โปรแกรมสร้างขึน้ ไปทับ Code ใน Advance Query ของข้อมูลเดิม เพื่อให้เรา
ไม่ตอ้ งแก้ Dashboard
2.2. การดึงข้อมูลใหม่ ให้เลือก New Source > Web ตามปกติ

2.3. ใส่ URL ที่ตอ้ งการ > กด OK

2.4. เข้าที่เมนู Edit Queries (Transform Data)


2.5. เลือกตารางข้อมูลที่พ่งึ Import เข้ามาใหม่
2.6. เลือก Advanced Editor

2.7. จะพบกับ Code ลักษณะดังกล่าว

2.8. แก้ไขบรรทัดแรก จากคาสั่ง Web.BrowserContents ให้เป็ น Web.Contents

2.9. จากนัน้ Copy Code ทัง้ หมดในกล่องข้อความเก็บไว้


2.10. เลือกตารางข้อมูลที่ตอ้ งการแก้วิธีดงึ ข้อมูล จากนัน้ เปิ ด Advanced Editor
2.11. วาง Code ที่ได้ Copy จากข้อก่อนหน้าลงทับ Code เดิมได้เลย
3. แก้ไขหน้าเว็บไซต์ให้ส่งข้อมูลในรู ปแบบ JSON, CSV แทน และแก้ไข Power BI Report ให้ดึง
ข้อมูลในรู ปแบบทีส่ อดคล้องกัน
3.1. การแก้ไขหน้าเว็บไซต์ขนึ ้ กับ รูปแบบเว็บไซต์ เช่น Data Source ที่เป็ น Google Spreadsheet
สามารถทาได้ดงั นี ้
3.1.1. ไปยังไฟล์ > เผยแพร่ไปยังเว็บ
3.1.2. เลือกรูปแบบเป็ น .csv

3.2. แก้ไข Power BI Report ที่เดิมดึงข้อมูลแบบ HTML ให้ดงึ ข้อมูลในรูปแบบอื่นที่สอดคล้องกับการ


ส่งข้อมูลของหน้าเว็บไซต์ (หากทาตามวิธี 2.2 แล้วไม่มีเมนูเลือกรูปแบบข้อมูล ให้ทาตามข้อ 2.3)
3.2.1. เปิ ด Report ที่ตอ้ งการแก้ไข > ไปที่เมนู Edit Queries
3.2.2. เลือกข้อมูลที่ตอ้ งการแก้ไข Data Source ที่แถบ Queries ด้านซ้าย

3.2.3. เลือกเครื่องหมายเฟื อง ที่ Step Source ในแถบ Query Settings

3.2.4. เลือกรูปแบบของข้อมูลให้สอดคล้องกับการส่งข้อมูลของหน้าเว็บไซต์

3.3. แก้ไข Power BI Report ที่ดงึ ข้อมูลแบบ Web.BrowserContents (ถ้าดึงข้อมูลแบบนีไ้ ว้จะไม่


สามารถแก้ผ่านหน้า UI ได้แบบข้อ 2.2 ต้องแก้ท่ี Advanced Editor เพิ่มเติม)
3.3.1. เปิ ด Report ที่ตอ้ งการแก้ไข > ไปที่เมนู Edit Queries
3.3.2. เลือกข้อมูลที่ตอ้ งการแก้ไข Data Source ที่แถบ Queries ด้านซ้าย

3.3.3. เลือก Advanced Editor

3.3.4. แก้ไข Query ใน Advance Editor โดยแก้ท่ี Source ให้เป็ น


Csv.Document(Web.Contents("ระบุเว็บที่เป็ น CSV Source"),[Delimiter=","]) หรือ
Json.Document(Web.Contents("ระบุเว็บที่เป็ น JSON Source "))
4. แก้ไขวิธีดงึ ข้อมูลจากหน้าเว็บไซต์ทพ ี่ ัฒนาด้วย Power BI Desktop สาหรับ Report Server
Version September 2021 ขึน้ ไป โดยใช้ Advance Query ทีส่ ร้างเอง
4.1. ปัจจุบนั Microsoft ไม่ Support การตัง้ Schedule Refresh ของการดึงข้อมูลจากเว็บ ดังนัน้
Concept คือเราจะดึงข้อมูลใหม่จาก Power BI Desktop for Cloud Server หรือจะใช้ Power BI
Desktop for Report Server Version May 2021 ลงมา โดยวิธีคลิกผ่านหน้าโปรแกรม และจะ
Copy Code ใน Advance Query ที่โปรแกรมสร้างขึน้ ไปทับ Code ใน Advance Query ของ
ข้อมูลเดิม เพื่อให้เราไม่ตอ้ งแก้ Dashboard
4.2. เปิ ดโปรแกรม Power BI Desktop สาหรับ Cloud Server ให้เลือก New Source > Web
ตามปกติ

4.3. ใส่ URL ที่ตอ้ งการ > กด OK

4.4. เข้าที่เมนู Edit Queries (Transform Data)


4.5. เลือกตารางข้อมูลที่พ่งึ Import เข้ามาใหม่
4.6. เลือก Advanced Editor
4.7. จะพบกับ Code ลักษณะดังกล่าว ให้ทาการ Copy Code จากบรรทัด Source จนถึงบรรทัดของ
ขัน้ ตอน #”Changed Type” ไว้

4.8. เปิ ดโปรแกรม Power BI Desktop for Report Server และเข้าที่เมนู Edit Queries (Transform
Data)
4.9. ด้านซ้ายเลือก Query ที่จะทาการแก้ Code

4.10. เลือก Advanced Editor


4.11. วาง Code ที่ได้ทาการ Copy ไว้ทบั แทน Code เดิม (ใส่เครื่องหมายลูกนา้ , ด้านหลัง
บรรทัดสุดท้ายที่ Copy มาด้วย
4.12. แก้ไขบรรทัดแรก จากคาสั่ง Web.BrowserContents ให้เป็ น Web.Contents แล้วกด OK

4.13. หากข้อมูลในเว็บมีบรรทัดแรกเป็ น Header ของตาราง ให้เลือกที่ Step “Changed Type”


แล้วไปเลือกเมนู Use First Row as Headers

4.14. จะมีกล่องข้อความขึน้ มาว่าให้แทรกลาดับอยู่ดา้ นล่างหรือเปล่า ให้กด Insert


4.15. ตอนนีจ้ ะได้ Code ที่สามารถตัง้ โหลด Schedule Refresh บน Power BI Report Server
ได้แล้ว ให้กดปุ่ ม Close & Apply เพื่อแก้ไข Dashboard ต่อไปได้เลยครับ

You might also like