แชร์ผ่าน


นิพจน์ในตัวสร้างรายงานใน Power BI

นําไปใช้กับ: Power BI Report Builder Power BI Desktop

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

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

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

ในขณะที่คุณออกแบบรายงาน หลายนิพจน์สําหรับหน่วยข้อมูลของรายงานจะถูกตั้งค่าไว้สําหรับคุณ ตัวอย่างเช่น เมื่อคุณลากฟิลด์จากบานหน้าต่างข้อมูลไปยังเซลล์ตารางบนพื้นผิวการออกแบบรายงาน ค่ากล่องข้อความจะถูกตั้งค่าเป็นนิพจน์รูปแบบธรรมดาสําหรับฟิลด์ ในรูปภาพต่อไปนี้ บานหน้าต่าง ข้อมูลรายงาน จะแสดงเขตข้อมูลชุดข้อมูล ID, ชื่อ, พื้นที่ขาย, รหัส และ ยอดขาย มีการเพิ่มสามเขตข้อมูลลงในตาราง: [Name], [Code]และ[Sales] [Name]สัญลักษณ์บนพื้นผิวการออกแบบแสดงถึงนิพจน์=Fields!Name.Valueพื้นฐาน

ภาพหน้าจอของมุมมองการออกแบบตัวสร้างรายงาน

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

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

ทําความเข้าใจนิพจน์ธรรมดาและนิพจน์ที่ซับซ้อน

นิพจน์เริ่มต้นด้วยเครื่องหมายเท่ากับ (=) และถูกเขียนใน Microsoft Visual Basic นิพจน์สามารถรวมการรวมกันของค่าคงที่ ตัวดําเนินการ และการอ้างอิงไปยังค่าภายใน (เขตข้อมูล คอลเลกชัน และฟังก์ชัน) และไปยังภายนอกหรือรหัสที่กําหนดเอง

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

ตามค่าเริ่มต้น นิพจน์จะปรากฏบนพื้นผิวการออกแบบรายงานเป็นรูปแบบธรรมดาหรือรูปแบบที่ซับซ้อน

  • ง่าย: นิพจน์รูปแบบธรรมดามีการอ้างอิงไปยังรายการเดียวในการสะสมภายใน ตัวอย่างเช่น เขตข้อมูลชุดข้อมูล พารามิเตอร์ หรือเขตข้อมูลที่มีอยู่ภายใน นิพจน์รูปแบบธรรมดาจะปรากฏในวงเล็บบนพื้นผิวการออกแบบ ตัวอย่างเช่น [FieldName] สอดคล้องกับนิพจน์ =Fields!FieldName.Valueพื้นฐาน นิพจน์รูปแบบธรรมดาจะถูกสร้างขึ้นเพื่อคุณโดยอัตโนมัติเมื่อคุณสร้างเค้าโครงรายงานและลากรายการจาก บานหน้าต่างข้อมูล รายงานไปยังพื้นผิวการออกแบบ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับสัญลักษณ์ที่แสดงการสะสมภายในที่แตกต่างกัน โปรดดู ทําความเข้าใจสัญลักษณ์คํานําหน้าสําหรับนิพจน์รูปแบบธรรมดา

  • ซับซ้อน: นิพจน์ที่ซับซ้อนประกอบด้วยการอ้างอิงไปยังการอ้างอิง ตัวดําเนินการ และการเรียกฟังก์ชันที่มีอยู่ภายในหลายรายการ นิพจน์รูปแบบซับซ้อนจะปรากฏเหมือนกับ <<Expr>> เมื่อค่านิพจน์รวมมากกว่าแค่การอ้างอิงแบบธรรมดา เมื่อต้องการดูนิพจน์ ให้วางเมาส์เหนือนิพจน์นั้นและใช้คําแนะนําเครื่องมือ หากต้องการแก้ไขนิพจน์ ให้เปิดในกล่องโต้ตอบนิพจน์

รูปภาพต่อไปนี้แสดงรูปแบบปกติและนิพจน์ที่ซับซ้อนสําหรับทั้งกล่องข้อความและตัวแทนข้อความ

ภาพหน้าจอของรูปแบบค่าเริ่มต้นของนิพจน์

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

ภาพหน้าจอของค่าตัวอย่างนิพจน์

ทําความเข้าใจสัญลักษณ์คํานําหน้าในนิพจน์รูปแบบธรรมดา

นิพจน์รูปแบบธรรมดาใช้สัญลักษณ์เพื่อระบุว่าการอ้างอิงเป็นฟิลด์ พารามิเตอร์ การสะสมภายใน หรือ คอลเลกชัน ReportItems หรือไม่ ตารางต่อไปนี้แสดงตัวอย่างการแสดงผลและข้อความนิพจน์:

รายการ ตัวอย่างข้อความการแสดงผล ตัวอย่างข้อความนิพจน์
เขตข้อมูลชุดข้อมูล [Sales]

[SUM(Sales)]

[FIRST(Store)]
=Fields!Sales.Value

=Sum(Fields!Sales.Value)

=First(Fields!Store.Value)
พารามิเตอร์รายงาน [@Param]

[@Param.Label]
=Parameters!Param.Value

=Parameters!Param.Label
เขตข้อมูลที่มีอยู่ภายใน [&ReportName] =Globals!ReportName.Value
อักขระสัญพจน์ที่ใช้สําหรับการแสดงข้อความ \[Sales\] [Sales]

เขียนนิพจน์รูปแบบซับซ้อน

นิพจน์สามารถรวมการอ้างอิงไปยังฟังก์ชัน ตัวดําเนินการ ค่าคงที่ เขตข้อมูล พารามิเตอร์ รายการจากการสะสมภายใน และเพื่อฝังรหัสที่กําหนดเองหรือแอสเซมบลีแบบกําหนดเอง

ตารางต่อไปนี้แสดงรายการชนิดการอ้างอิงที่คุณสามารถรวมในนิพจน์ได้:

เอกสารอ้างอิง คำอธิบาย ตัวอย่างเช่น
ค่าคงที่ อธิบายค่าคงที่ที่คุณสามารถเข้าถึงแบบโต้ตอบสําหรับคุณสมบัติที่ต้องการค่าคงที่ เช่น สีตัวอักษร ="Blue"
ตัวดำเนินการ อธิบายตัวดําเนินการที่คุณสามารถใช้เพื่อรวมการอ้างอิงในนิพจน์ ตัวอย่างเช่น ตัว ดําเนินการ & ที่ใช้สําหรับสตริงที่ต่อกัน ="The report ran at: " & Globals!ExecutionTime & "."
คอลเลกชันภายใน อธิบายการสะสมภายในที่คุณสามารถรวมในนิพจน์ เช่น Fields, ParametersและVariables =Fields!Sales.Value

=Parameters!Store.Value

=Variables!MyCalculation.Value
รายงานที่มีอยู่ภายในและฟังก์ชันการรวม อธิบายฟังก์ชันที่มีอยู่ภายใน เช่น Sum หรือ Previousที่คุณสามารถเข้าถึงจากนิพจน์ได้ =Previous(Sum(Fields!Sales.Value))
รหัสที่กําหนดเองและการอ้างอิงแอสเซมบลีในนิพจน์ในตัวสร้างรายงาน อธิบายวิธีที่คุณสามารถเข้าถึงคลาส xref:System.Math CLR ภายในตัวและ xref:System.Convertคลาส CLR อื่น ฟังก์ชันรันไทม์ไลบรารีของ Visual Basic หรือวิธีการจากแอสเซมบลีภายนอก

อธิบายวิธีที่คุณสามารถเข้าถึงรหัสที่กําหนดเองที่ถูกฝังในรายงานของคุณ หรือที่คุณรวบรวมและติดตั้งเป็นแอสเซมบลีแบบกําหนดเองทั้งในรีพอร์ตไคลเอ็นต์และรีพอร์ตเซิร์ฟเวอร์
=Sum(Fields!Sales.Value)

=CDate(Fields!SalesDate.Value)

=DateAdd("d",3,Fields!BirthDate.Value)

=Code.ToUSD(Fields!StandardCost.Value)

ตรวจสอบความถูกต้องของนิพจน์

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

  • ตามค่าเริ่มต้น นิพจน์ [Sum] จะคํานวณผลรวมของข้อมูลที่อยู่ในขอบเขตในเวลาที่นิพจน์ได้รับการประเมิน สําหรับเซลล์ตาราง ขอบเขตจะขึ้นอยู่กับสมาชิกกลุ่มแถวและคอลัมน์

  • สําหรับค่าของ คุณสมบัติแบบอักษร ค่าต้องประเมินเป็นชื่อของฟอนต์

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

ขั้นตอนถัดไป