แชร์ผ่าน


ร้องขอข้อมูลผลรวมย่อยที่รวม

API ผลรวม และผลรวมย่อยอนุญาตให้วิชวลแบบกําหนดเองมีมุมมองข้อมูลเมทริกซ์เพื่อร้องขอข้อมูลผลรวมย่อยที่รวมจากโฮสต์ Power BI ผลรวมย่อยจะถูกคํานวณสําหรับแบบจําลองความหมายเมทริกซ์ทั้งหมดหรือระบุสําหรับแต่ละระดับของลําดับชั้นข้อมูลเมทริกซ์ ดู รายงานตัวอย่างของ สําหรับตัวอย่างของ API ผลรวมและผลรวมย่อย ในวิชวล Power BI

โน้ต

การขอข้อมูลผลรวมย่อยได้รับการสนับสนุนในเวอร์ชัน 2.6.0 และใหม่กว่า คุณสมบัติ rowSubtotalType จะพร้อมใช้งานในเวอร์ชัน 5.1.0 และใหม่กว่า เมื่อต้องการตรวจสอบเวอร์ชันที่คุณกําลังใช้ ตรวจสอบ apiVersion ในไฟล์ pbiviz.json

ทุกครั้งที่วิชวลรีเฟรชข้อมูล วิชวลจะออกคําขอดึงข้อมูล ไปยัง Backend ของ Power BI คําขอข้อมูลเหล่านี้มักจะเป็นค่าของเขตข้อมูลที่ผู้ใช้ลากลงในพื้นที่เขตข้อมูลของวิชวล บางครั้งวิชวลต้องการการรวมหรือผลรวมย่อยอื่น ๆ (ตัวอย่างเช่น ผลรวมหรือจํานวน) ที่นําไปใช้กับพื้นที่เขตข้อมูล API ผลรวมและผลรวมย่อย ช่วยให้คุณกําหนดค่าคิวรีข้อมูลขาออกเพื่อร้องขอการรวมหรือผลรวมย่อยเพิ่มเติม

สกรีนช็อตของวิชวลที่มีแถวและคอลัมน์ผลรวมย่อยที่เน้น

API ผลรวมย่อย

API มีการกําหนดเองต่อไปนี้สําหรับแต่ละชนิดมุมมองข้อมูล (ในขณะนี้ มีเพียงมุมมองข้อมูลเมทริกซ์)

  • rowSubtotals: (บูลีน) ระบุว่าควรร้องขอข้อมูลผลรวมย่อยสําหรับเขตข้อมูลทั้งหมดในแถวเขตข้อมูลหรือไม่
  • rowSubtotalsPerLevel: (บูลีน) บ่งชี้ว่าสามารถสลับข้อมูลผลรวมย่อยสําหรับแต่ละเขตข้อมูลในเขตข้อมูลของแถวได้หรือไม่
  • : (บูลีน) ระบุว่าควรร้องขอข้อมูล ผลรวมย่อย สําหรับเขตข้อมูลทั้งหมดในคอลัมน์ได้ดีหรือไม่
  • columnSubtotalsPerLevel: (บูลีน) บ่งชี้ว่า ผลรวมย่อย ข้อมูลสามารถสลับสําหรับแต่ละเขตข้อมูลในเขตข้อมูลคอลัมน์ได้ดีหรือไม่
  • levelSubtotalEnabled: (บูลีน) ระบุว่ามีการร้องขอผลรวมย่อยสําหรับแถวหรือคอลัมน์หรือไม่ ซึ่งแตกต่างจากคุณสมบัติอื่น ๆ ทั้งหมด คุณสมบัตินี้จะนําไปใช้กับแต่ละแถวหรือคอลัมน์
  • : ("ด้านบน" หรือ "ล่าง") ระบุว่าแถวที่มีข้อมูล ทั้งหมด ควรถูกเรียกใช้ก่อน () หรือหลังจากนั้น () ส่วนที่เหลือของข้อมูล ถ้าคุณสมบัตินี้ถูกตั้งค่าเป็น bottomจะสามารถแสดงผลรวมได้เฉพาะหลังจากที่ข้อมูลทั้งหมดได้รับการดึงข้อมูลแล้วเท่านั้น ค่าเริ่มต้นคือ bottom

แต่ละสวิตช์เหล่านี้จะได้รับการกําหนดค่าตามคุณสมบัติที่เกี่ยวข้องในบานหน้าต่างคุณสมบัติและค่าเริ่มต้น

วิธีการใช้ API ผลรวมย่อย

ไฟล์ capabilities.json ของวิชวลจะต้อง:

  • ระบุคุณสมบัติที่แต่ละ สลับ แมปไปเป็น
  • ระบุค่าเริ่มต้นที่จะใช้ถ้าไม่ได้กําหนดคุณสมบัติไว้

สวิตช์จะใช้รูปแบบดังตัวอย่างต่อไปนี้:

    "rowSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "rowSubtotals" 
                }, 
                "defaultValue": true 
            },

รหัสก่อนหน้านี้บ่งชี้ว่าผลรวมย่อยของแถวจะเปิดใช้งานโดยคุณสมบัติ rowSubtotals ในวัตถุ subTotals คุณสมบัติ มีค่าเริ่มต้นของ true

API จะเปิดใช้งานโดยอัตโนมัติสําหรับวิชวลเมื่อใดก็ตามที่โครงสร้างผลรวมย่อยและการแมปสวิตช์ทั้งหมดถูกกําหนดไว้ในไฟล์ capabilities.json

โค้ดต่อไปนี้เป็นตัวอย่างของการกําหนดค่า API ที่สมบูรณ์ในไฟล์ capabilities.json (คัดลอกมาจากวิชวลตัวอย่าง API):

"subtotals": { 
        "matrix": { 
            "rowSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "rowSubtotals" 
                }, 
                "defaultValue": true 
            }, 
            "rowSubtotalsPerLevel": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "perRowLevel" 
                }, 
                "defaultValue": false 
            }, 
            "columnSubtotals": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "columnSubtotals" 
                }, 
                "defaultValue": true 
            }, 
            "columnSubtotalsPerLevel": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "perColumnLevel" 
                }, 
                "defaultValue": false 
            }, 
            "levelSubtotalEnabled": { 
                "propertyIdentifier": { 
                    "objectName": "subTotals", 
                    "propertyName": "levelSubtotalEnabled" 
                }, 
                "defaultValue": true 
            },
            "rowSubtotalsType": {
                "propertyIdentifier": {
                    "objectName": "subtotals",
                    "propertyName": "rowSubtotalsType"
                },
                "defaultValue": "Bottom"
            }
        } 
    }

สิ่งสําคัญคือฟังก์ชัน enumerateProperties() ของวิชวลจะสอดคล้องกับค่าเริ่มต้นที่ระบุไว้ในไฟล์ capabilities.json ตรรกะการกําหนดเองจะทํางานตามค่าเริ่มต้นที่ระบุ ถ้าฟังก์ชัน enumerateProperties() และค่าเริ่มต้นไม่ถูกจัดแนว การกําหนดค่าผลรวมย่อยที่แท้จริงอาจแตกต่างจากความคาดหวังของผู้ใช้

enum RowSubtotalType {
        Top = "Top",
        Bottom = "Bottom",
   }

เมื่อต้องการตรวจทานการกําหนดค่าที่พร้อมใช้งาน ขยาย ผลรวมย่อย เมนูดรอปดาวน์ในบานหน้าต่างคุณสมบัติรูปแบบ ปรับเปลี่ยนการตั้งค่าผลรวมย่อย และติดตามการเปลี่ยนแปลงไปยังงานนําเสนอผลรวมย่อย (ชื่อ ผลรวม) ในบานหน้าต่างการจัดรูปแบบการแสดงข้อมูล

สกรีนช็อตของบานหน้าต่างการแสดงภาพ Power BI ซึ่งแสดงพื้นที่เขตข้อมูลผลรวมย่อยของคอลัมน์และแถว

ข้อควรพิจารณาและข้อจํากัด

  • คุณสมบัติ rowSubtotalsType จะพร้อมใช้งานสําหรับแถวเท่านั้น คุณไม่สามารถตั้งค่าผลรวมย่อยของคอลัมน์ไปเป็นจุดเริ่มต้นของคอลัมน์ได้

  • คุณลักษณะขยายและยุบ จะแทนที่ ผลรวมย่อยจะแสดงเมื่อขยายแถว แม้ว่า rowSubtotals ถูกตั้งค่าเป็น false

เพิ่มการโต้ตอบกับวิชวลโดยใช้การเลือกวิชวล Power BI