เมื่อผู้ใช้ Smart View ต้องการข้อมูลที่มากกว่าสิ่งที่สามารถใช้ได้ในลูกบาศก์ รายงานการดริลล์ผ่านจะสามารถระบุการเข้าใช้ข้อมูลที่มาภายนอกแบบปรับแต่งได้
โดยทั่วไป จะระบุความละเอียดของข้อมูลที่เก็บไว้ในคลังข้อมูลและระบบข้อมูลที่มาอื่น ปริมาณของข้อมูลภายนอกอาจมีมากเกินความจำเป็นสำหรับการวิเคราะห์ ในการป็อปปูเลทลูกบาศก์ Essbase ที่มีจำนวนข้อมูลที่เหมาะสมที่สุดสำหรับการวิเคราะห์ แนวทางปฏิบัติทั่วไปคือ การสรุปรวมข้อมูลที่มา (เช่น การสรุปรวมค่าการทำรายการรายวันเป็นยอดรวมรายสัปดาห์หรือรายเดือน) และโหลดข้อมูลที่สรุปรวมนี้ไปยังลูกบาศก์ Essbase
ระหว่างการวิเคราะห์ข้อมูลใน Essbase ในภายหลัง หากผู้ใช้ Smart View พบความผิดปกติที่ควรต้องมีการตรวจสอบ การดริลล์ผ่านจะแสดงวิธีให้ผู้ใช้สามารถดูข้อมูลที่มาที่ใช้งานอยู่เพื่อค้นหาสาเหตุได้อย่างรวดเร็ว ตัวอย่างเช่น หากข้อมูลเดือนสิงหาคมแตกต่างจากเดือนกรกฎาคมโดยไม่ได้คาดหมาย ผู้ใช้สามารถดริลล์ผ่านไปยังระบบที่มา เพื่อค้นหาเรคคอร์ดที่เกี่ยวข้อง
ในการแสดงข้อมูลเพิ่มเติมให้กับผู้ใช้ Smart View เชิงวิเคราะห์เกี่ยวกับสิ่งที่ประกอบขึ้นเป็นค่าข้อมูลตั้งแต่หนึ่งค่าขึ้นไปในลูกบาศก์ ผู้จัดการฐานข้อมูลสามารถใช้รายงานการดริลล์ผ่าน เพื่อให้ข้อมูลที่มาในเชิงลึกที่มากกว่า ก่อนที่จะมีการทบและโหลดไปยัง Essbase
รายงานการดริลล์ผ่านเป็นวิธีหนึ่งที่คุณสามารถสร้างอินเตอร์เฟซการแลกเปลี่ยนข้อมูลระหว่าง Essbase และระบุที่มาภายนอก
พิจารณาตารางเชิงสัมพันธ์ SB_DT ที่มีการเลือกเรคคอร์ดทั้งหมด การสืบค้น SQL คือ
SELECT * FROM SB_DT
มีการตัดความยาวของผลลัพธ์การสืบค้น (ใน SQL Developer) ในภาพประกอบนี้ออก เนื่องจากมีเรคคอร์ดนับพันรายการในตารางดังนี้
พิจารณาตารางเดียวกันที่มีการเลือกเรคคอร์ดน้อยลง ตัวอย่างเช่น หากการเลือก SQL มีขอบเขตที่แคบลงที่คอลัมน์ที่มีชื่อ, มีการสรุปรวมข้อมูลการวัด และมีการใช้ฟิลเตอร์ (คำสั่ง WHERE)
select DIMENSION_PRODUCT, DIMENSION_MARKET, YEAR_PARENT, DIMENSION_SCENARIO, sum(SALES) as SALES, sum(COGS) as COGS from SB_DT where DIMENSION_SCENARIO ='Actual' AND DIMENSION_MARKET ='California' AND YEAR_PARENT ='Qtr4' group by DIMENSION_PRODUCT, DIMENSION_MARKET, YEAR_PARENT, DIMENSION_SCENARIO
จากนั้น ผลลัพธ์การสืบค้นจะได้รับการสรุปรวมและฟิลเตอร์ ดังนี้
คุณสามารถใช้ประโยชน์ของการสืบค้น RDBMS ใน Essbase โดยใช้ที่มาข้อมูล การโหลดข้อมูล และรายงานการดริลล์ผ่านต่างๆ ได้ รายงานการดริลล์ผ่านแสดงการเข้าใช้ที่ฟิลเตอร์ไปยังที่มาของข้อมูลภายนอกโดยตรงจากการสืบค้น Essbase ในเวิร์กชีท Smart View
หัวข้อนี้อธิบายความหมายของคำศัพท์ต่างๆ ที่เกี่ยวข้องกับการดริลล์ผ่าน Essbase
ดริลล์ผ่าน (คำกริยา)
ดริลล์ผ่าน คือ การเข้าเข้าใช้ข้อมูลภายนอกจากจุดตัดกันของเซลล์ Essbase ตั้งแต่หนึ่งจุดขึ้นไปในเวิร์กชีท Smart View การดริลล์ผ่านจะแสดงข้อมูลเพิ่มเติมที่ไม่ได้อยู่ในลูกบาศก์ Essbase ความต้องการดริลล์ผ่านจะเกิดขึ้น เมื่อ Essbase มีค่าแบบสรุปรวม (“ทบ”) และระบบที่มาภายนอกมีข้อมูลแบบละเอียดเพิ่มเติมซึ่งสามารถกำหนดให้ใช้ได้
หากมีการสืบค้นดำเนินการในขณะที่มีการดริลล์ผ่าน ผลลัพธ์จะปรากฏในเวิร์กชีทใหม่ที่เปิดขึ้น ซึ่งก็คือรายงานการดริลล์ผ่าน รายงานมีข้อมูลที่ดึงมาจากข้อมูลที่มาภายนอก
หากมีการเริ่มต้น URL ในขณะที่มีการดริลล์ผ่าน URL จะเปิดขึ้นในเว็บเบราเซอร์ โดยสามารถส่งผ่านพารามิเตอร์ไปยัง URL เพื่อรันการค้นหาที่ปรับแต่งบนเว็บไซต์
รายงานการดริลล์ผ่าน
รายงานการดริลล์ผ่าน คือ ผลลัพธ์ของการดริลล์ผ่านที่ดำเนินการจากกริด Smart View ไปยังข้อมูลเพิ่มเติมจากระบบที่มาภายนอกของ Essbase
การกำหนดรายงานการดริลล์ผ่าน
การกำหนดรายงานการดริลล์ดาวน์เป็นวิธีการกำหนดการเข้าใช้ข้อมูลภายนอกที่ผู้ใช้ของคุณต้องมี หากคุณเป็นผู้จัดการฐานข้อมูลหรือสูงกว่า คุณสามารถสร้างการกำหนดรายงานการดริลล์ผ่านใน เว็บอินเตอร์เฟซ Essbase หรือ REST API ซึ่งจะเชื่อมโยงกับลูกบาศก์ของคุณ เนื่องจากเป็นส่วนหนึ่งของการกำหนด คุณต้องระบุค่าต่อไปนี้
การแมปคอลัมน์ การดำเนินการนี้ระบุคอลัมน์ภายนอกที่คุณต้องการให้แสดงในรายงาน และความลึกของลำดับชั้น (รุ่น) ของการเข้าใช้ที่คุณต้องการระบุ (เช่น คุณต้องการแสดงข้อมูลรายวัน รายเดือน หรือรายไตรมาสจากที่มาภายนอกหรือไม่)
พื้นที่ที่ดริลล์ได้ พื้นที่นี้จะระบุว่าจุดตัดกันของเซลล์ใดของลูกบาศก์ที่สามารถเข้าใช้รายงานการดริลล์ผ่าน (หรือ URL) ที่มีข้อมูลภายนอกเพิ่มเติม ในตัวอย่างต่อไปนี้ พื้นที่ที่ดริลล์ได้ใน POV ของเวิร์กชีท Smart View ได้รับการกำหนดรหัสสีเป็นน้ำเงิน โดยใช้สไตล์ของเซลล์ คุณสามารถระบุพื้นที่ที่ดริลล์ได้โดยใช้ ฟังก์ชันชุดสมาชิก ใดก็ได้ที่มีอยู่ใน Essbase ในตัวอย่างต่อไปนี้ พื้นที่ที่ดริลล์ได้ คือ @DESCENDANTS("Measures") บน Sample Basic
การแมปสำหรับพารามิเตอร์รันไทม์ หากมีการใช้การสืบค้นที่กำหนดพารามิเตอร์ในการสืบค้นที่มาข้อมูลที่ใช้งานอยู่ (เลือกระบุได้)
โดยปกติ การกำหนดรายงานการดริลล์ผ่านจะขึ้นอยู่กับการเชื่อมต่อที่กำหนดไว้ล่วงหน้าและที่มาข้อมูลใน Essbase (นอกจากคุณกำหนดการเข้าใช้ไฟล์ที่อัปโหลดไปยัง Essbase) การเชื่อมต่อจัดเก็บรายละเอียดการตรวจสอบสิทธิ์ไปยังที่มาภายนอก ที่มาข้อมูลอย่างน้อยหนึ่งรายการที่คุณกำหนดในการเชื่อมต่อจะช่วยให้คุณสามารถระบุการสืบค้นเริ่มต้น เพื่อดึงข้อมูลจากที่มาภายนอก (เช่น การเลือกทั้งหมดจากตารางใดตารางหนึ่ง) การสืบค้นที่คุณระบุไว้ในที่มาข้อมูลสามารถดึงชุดย่อยของข้อมูล ที่มีขนาดใหญ่หรือเล็กได้เท่าที่คุณต้องการเริ่มต้น หลังจากนั้น คุณสามารถจำกัดขอบเขตจำนวนการเข้าใช้ข้อมูลให้น้อยลงได้ เมื่อคุณสร้างหรือแก้ไขการกำหนดรายงานการดริลล์ผ่าน
ในฐานะผู้จัดการฐานข้อมูล ให้ใช้เวิร์กโฟลว์ต่อไปนี้ในการออกแบบและทดสอบการดริลล์ผ่านสำหรับลูกบาศก์ของคุณ
เตรียมการเข้าใช้ข้อมูล
สร้าง การกำหนดรายงานการดริลล์ผ่าน บนลูกบาศก์
เตรียม Smart View
การดริลล์ผ่านจากจุดตัดกันของเซลล์ที่ต่างกันใน Smart View
ตรวจสอบเอาต์พุตรายงานการดริลล์ผ่านและล็อกแพลตฟอร์ม
เวิร์กโฟลว์นี้และบทนำส่วนที่เหลือจะมุ่งเน้นสิ่งที่คุณจำเป็นต้องทราบ เพื่อออกแบบและทดสอบการเข้าใช้แบบดริลล์ผ่านไปยังข้อมูลที่มาภายนอกใน RDBMS หากคุณต้องการใช้งาน URL การดริลลืผ่านเพิ่มเติม โปรดดูที่ การดริลล์ผ่านไปยัง URL
โปรดดู เข้าใช้รายงานการดริลล์ผ่าน เพื่อทำความเข้าใจเกี่ยวกับข้อกำหนดการเข้าใช้ที่ต่างกันสำหรับการออกแบบและการใช้การดริลล์ผ่าน
ในตัวอย่างนี้ สมมติว่าลูกบาศก์ Sample Basic ใน Essbase มี Qtr1-Qtr4 เป็นระดับต่ำสุดของไดเมนชันเวลา
ไม่มีเดือนในลำดับชั้นเอาต์ไลน์ แต่ข้อมูลรายเดือนสามารถใช้ได้ในระบบที่มาภายนอก ในคอลัมน์ตารางที่ชื่อ DIMENSION_YEAR ดังนี้
เมื่อผู้ใช้ Smart View ดริลล์ผ่านบนจุดตัดกันของเซลล์ของค่าการขายสำหรับ Qtr1:
รายงานการดริลล์ผ่านที่ Essbase สร้างขึ้น คือ
รายงานการดริลล์ผ่านแสดงข้อมูลเพิ่มเติม จากฐานข้อมูลที่มา เกี่ยวกับการขายสำหรับ Qtr1 โปรดสังเกตว่าค่า Jan, Feb และ Mar จะเพิ่มขึ้นจนถึงค่าสำหรับ Qtr1: 678+645+675=1998
การสืบค้นที่ Essbase ใช้ภายในเพื่อสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "DIMENSION_YEAR", "DIMENSION_SCENARIO", "SALES", "COGS", "YEAR_PARENT" FROM <Query defined in Datasource> WHERE "YEAR_PARENT" = 'Qtr1' AND "DIMENSION_PRODUCT" = '100-10' AND "DIMENSION_MARKET" = 'New York' AND "DIMENSION_SCENARIO" = 'Actual'
จากล็อกแพลตฟอร์ม ผู้ดูแลระบบสามารถเข้าช้การสืบค้นที่ต้องการหลังรายงานการดริลล์ผ่านแต่ละรายการได้
การกำหนดรายงานการดริลล์ดาวน์เป็นวิธีการกำหนดการเข้าใช้ข้อมูลภายนอกที่ผู้ใช้ของคุณต้องมี หากคุณเป็นผู้จัดการฐานข้อมูลหรือสูงกว่า
หมายเหตุ:
อย่าเปลี่ยนชื่อการกำหนดรายงานการดริลล์ผ่าน การกำหนดรายงานการดริลล์ผ่านที่เปลี่ยนชื่ออาจแก้ไขไม่ได้และไม่ทำงานตามที่คาดหวังในการใช้งานรายงานการดริลล์ผ่านที่สร้างขึ้นใน วิธีการทำงานของการดริลล์ผ่าน ผู้จัดการฐานข้อมูลต้องสร้างการกำหนดรายงานการดริลล์ผ่านที่เชื่อมโยงกับ Sample Basic รายงานการดริลล์ผ่านอ้างอิงที่มาข้อมูลที่กำหนดไว้ล่วงหน้า ซึ่งใช้การสืบค้นเพื่อดึงข้อมูลภายนอกจาก SB_DT (ตารางระบบที่มาสมมติฐานที่กล่าวถึงใน บทนำเกี่ยวกับการดริลล์ผ่านของ Essbase)
ในการกำหนดรายงานการดริลล์ผ่าน ผู้จัดการฐานข้อมูลต้องระบุการแมปคอลัมน์ต่อไปนี้
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
DIMENSION_PRODUCT | Y | ผลิตภัณฑ์ | SKU ของผลิตภัณฑ์ [Generation] |
DIMENSION_MARKET | Y | ตลาด | รัฐ [Generation] |
DIMENSION_YEAR | Y | ปี | ไม่มี |
DIMENSION_SCENARIO | Y | สถานการณ์ | ระดับ 0 [Level] |
SALES | Y | ไม่มี | -- |
COGS | Y | ไม่มี | -- |
YEAR_PARENT | Y | ปี | ไตรมาส [Generation] |
การแมปคอลัมน์จะกำหนดคอลัมน์ที่มาภายนอกที่สามารถรวมไว้ในรายงาน, ไดเมนชัน Essbase ที่คอลัมน์ดังกล่าวแมปเข้าด้วยกัน และ (เลือกระบุได้) เงื่อนไขของฟิลเตอร์การสร้าง/ระดับที่แสดงความลึกของการเข้าใช้ที่จะระบุให้
ในเทมเพลทการแมปที่แสดงข้างต้น ผู้จัดการฐานข้อมูลสามารถทำดังนี้
แมปคอลัมน์ DIMENSION_PRODUCT ภายนอกกับรุ่นที่ชื่อ SKU ของผลิตภัณฑ์ในไดเมนชันผลิตภัณฑ์ของ Essbase แล้ว การแมปคอลัมน์ประเภทนี้เรียกว่าการแมปรุ่น
แมปคอลัมน์ DIMENSION_MARKET ภายนอกกับรุ่นที่ชื่อรัฐในกดเมนชันตลาดของ Essbase แล้ว (นี่คืออีกตัวอย่างของการแมปรุ่น)
แมปคอลัมน์ DIMENSION_YEAR ภายนอกกับไดเมนชันปีแล้ว โดยไม่มีฟิลเตอร์เพิ่มเติม การแมปคอลัมน์ประเภทนี้เรียกว่าการแมปไดเมนชัน
แมปคอลัมน์ DIMENSION_SCENARIO ภายนอกกับระดับต่ำสุด (ระดับ 0) ของไดเมนชันสถานการณ์ของ Essbase แล้ว การแมปคอลัมน์ประเภทนี้เรียกว่าการแมประดับ 0
ไม่ได้แมปคอลัมน์ SALES และ COGS กับรายการใด แต่เลือกเพื่อรวมคอลัมน์เหล่านี้ในรายงานแล้ว โดยทั่วไปแล้ว ไม่จำเป็นแมปคอลัมน์ต่างๆ กับไดเมนชันแอคเคาท์ของ Essbase
แมปคอลัมน์ YEAR_PARENT ภายนอกกับรุ่นที่ชื่อไตรมาสในไดเมนชันปีแล้ว
ตัวเลือกการแมปคอลัมน์
เนื่องจากการสืบค้นที่ Essbase สร้างขึ้นเพื่อดึงข้อมูลจากที่มาข้อมูลของคุณจะขึ้นอยู่กับการแมปคอลัมน์ที่คุณกำหนดไว้เป็นอย่างมาก ดังนั้น คุณจึงควรทำความเข้าใจเกี่ยวกับวิธีต่างๆ ในการแมปคอลัมน์และวิธีการที่เหมาะกับกรณีต่างๆ ประเภทของการแมปคอลัมน์ได้แก่
การแมปไดเมนชัน
การแมปรุ่น
การแมประดับ 0
การแมปไดเมนชัน
ด้วยการแมปไดเมนชัน คุณสามารถแมปคอลัมน์ข้อมูลที่มากับชื่อไดเมนชันในลูกบาศก์ Essbase ได้โดยตรง การแมปประเภทนี้มีประโยชน์มากที่สุด เมื่อคอลัมน์ข้อมูลที่มามีเลเยอร์ข้อมูลทั้งหมดที่ปรากฏในไดเมนชันที่เกี่ยวข้องของลูกบาศก์ของคุณ
ตัวอย่างเช่น หากคอลัมน์ข้อมูลที่มา MONTH มีการผสมผสานของรุ่น/ระดับเดียวกันทั้งหมดที่ไดเมนชันมี ตามที่แสดง
จากนั้น แนะนำให้แมปคอลัมน์ MONTH กับไดเมนชันปีของ Essbase โดยไม่มีฟิลเตอร์เพิ่มเติม ดังนี้
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
MONTH | Y | ปี | ไม่มี |
เมื่อคุณใช้การแมปไดเมนชันสำหรับ MONTH ตามที่แสดงข้างต้น เงื่อนไขของฟิลเตอร์ (คำสั่ง WHERE ของการสืบค้น SQL) จะไม่ได้รับการกำหนดไว้ล่วงหน้าสำหรับคอลัมน์ MONTH ดังนี้
SELECT "MONTH" FROM <Query defined in Datasource> WHERE "MONTH" = '<Grid context>'
และผลลัพธ์ของการดริลล์ผ่านสำหรับ MONTH จะแสดงจุดตัดกันของเซลล์ Smart View ปัจจุบัน
เรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทำงานของการแมปไดเมนชันใน ตัวอย่างกรณีการใช้งานการดริลล์ผ่าน
การแมปรุ่น
ด้วยการแมปรุ่น คุณสามารถแมปคอลัมน์ข้อมูลที่มากับรุ่นที่มีชื่อในไดเมนชันของ Essbase ได้ การแมปประเภทนี้มีประโยชน์ เมื่อคอลัมน์ข้อมูลที่มามีเลเยอร์ข้อมูลทั้งหมดที่ปรากฏในรุ่นเฉพาะของไดเมนชันในลูกบาศก์ของคุณเท่านั้น ตัวอย่างเช่น หากคอลัมน์ข้อมูลที่มา MONTH มีเพียงเดือนต่างๆ เท่านั้น และไดเมนชันปีมีเดือนต่างๆ ที่รุ่น 3
จากนั้น ทางเลือกที่ดีที่สุดคือ การแมปคอลัมน์ที่มากับรุ่น 3 (เดือน) ของไดเมนชันปี ดังนี้
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
MONTH | Y | ปี | เดือน [Generation] |
เมื่อคุณใช้การแมปรุ่นสำหรับ MONTH ตามที่แสดงข้างต้น เงื่อนไขของฟิลเตอร์การสืบค้นจะได้รับการกำหนดไว้ล่วงหน้าสำหรับคอลัมน์ MONTH ดังนี้
SELECT "MONTH" FROM <Query defined in Datasource> WHERE "MONTH" = '<Generation filter>'
และผลลัพธ์ของการดริลล์ผ่านสำหรับ MONTH จะแสดงค่าต่างๆ ไล่ลงไปยังรุ่นเดือนของไดเมนชันปี ระบบจะไม่แสดงข้อมูล (หากมีอยู่) สำหรับระดับที่ต่ำกว่าเดือน
การแมปรุ่นไม่เหมาะกับ ลำดับชั้นแบบอสมมาตร (ส่วนเกิน) การแมปรุ่นไม่มีผลกระทบกับการสืบค้นการดริลล์ผ่านในไดเมนชันที่มีลำดับชั้นส่วนเกิน นอกจากมีการดำเนินการดริลล์ผ่านบนสมาชิกในบรรทัดระดับบนโดยตรง จนถึงรุ่นที่มีการกำหนดการแมปคอลัมน์ไว้ ในการหลีกเลี่ยงผลลัพธ์ที่ไม่ได้คาดหมาย Oracle ขอแนะนำให้ใช้การแมประดับ 0 แทนการแมปรุ่นสำหรับการดริลล์ผ่านบนลำดับชั้นแบบอะซิมเมตริก
เรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทำงานของการแมปรุ่นใน ตัวอย่างกรณีการใช้งานการดริลล์ผ่าน
การแมประดับ 0
ด้วยการแมประดับ 0 Essbase จะเพิ่มสมาชิกระดับต่ำสุดทั้งหมดจากลำดับชั้นที่อยู่ภายใต้จุดตัดกันของเซลล์ไว้ในเงื่อนไขของฟิลเตอร์ (โดยไม่คำนึงถึงสมาชิกที่เลือกในคอนเท็กซ์ของกริด Smart View ปัจจุบันขณะรันไทม์)
การแมประดับ 0 มีประโยชน์เมื่อทำงานกับ ลำดับชั้นแบบอสมมาตร (ส่วนเกิน) ในลำดับชั้นแบบอะซิมเมตริก สมาชิกในระดับเดียวกัน (L) ไม่ได้ใช้ความลึกของรุ่นเดียวกัน (G) ครบทั้งหมดในเอาต์ไลน์
ตัวอย่างทั่วไปของลำดับชั้นส่วนเกินคือ โครงสร้างหน่วยงานของพนักงาน
ไดเมนชันผลิตภัณฑ์ของเอาต์ไลน์ลูกบาศก์ Essbase สำหรับ Sample Basic ต้องเป็นลำดับชั้นส่วนเกิน หากมีการเพิ่มผลิตภัณฑ์ระดับล่างบางรายการที่ต่ำกว่า 100-10 (Cola) ดังนี้
หากผู้จัดการฐานข้อมูลแมปคอลัมน์ที่มา PRODUCT กับระดับ 0 ของไดเมนชันผลิตภัณฑ์ ตามที่แสดงดังนี้
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
PRODUCT | Y | ผลิตภัณฑ์ | ระดับ 0 [Level] |
จากนั้น เงื่อนไขของฟิลเตอร์การสืบค้นจะได้รับการกำหนดไว้ล่วงหน้าสำหรับคอลัมน์ PRODUCT ดังนี้
SELECT "PRODUCT" FROM <Query defined in Datasource> WHERE "PRODUCT" = <Level0> below <Grid context>
และผลลัพธ์ของการดริลล์ผ่านสำหรับ PRODUCT จะแสดงสมาชิกของระดับ 0 ทั้งหมดที่อยู่ภายใต้สมาชิกของผลิตภัณฑ์ที่เลือกไว้ในจุดตัดกันของเซลล์ Smart View ปัจจุบัน
เรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทำงานของการแมประดับ 0 ใน ตัวอย่างกรณีการใช้งานการดริลล์ผ่าน
สำหรับกรณีการใช้งานตัวอย่างนี้ เราจะตรวจสอบปัจจัยต่างๆ ที่คุณต้องคำนึงถึง เมื่อออกแบบการเข้าใช้รายงานการดริลล์ผ่านสำหรับผู้ใช้ Smart View ต่อไปนี้
ลูกบาศก์ Essbase สำหรับการวิเคราะห์
ระบบที่มาภายนอกสำหรับการดริลล์ผ่าน
การกำหนดรายงานการดริลล์ผ่านที่มีการแมปคอลัมน์ที่กำหนดโดยผู้จัดการฐานข้อมูล
ผลลัพธ์รายงานการดริลล์ผ่านจาก Smart View
ลูกบาศก์ Essbase
ในตัวอย่างนี้ เกณฑ์คือ ลูกบาศก์ที่คล้ายคลึงกับลูกบาศก์สาธิต Essbase ได้แก่ Sample Basic แต่มีเพียงข้อมูลระดับไตรมาสสำหรับไดเมนชันเวลาที่แสดงในลูกบาศก์เท่านั้น (ย้ายเดือนออกแล้ว) สมมติว่าไดเมนชันปีมี Qtr1-Qtr4 เป็นสมาชิกระดับต่ำที่สุด (ระดับ 0):
แม้ว่าจะไม่มีเดือนในลำดับชั้นของเอาต์ไลน์นี้ แต่ยังสามารถใช้ข้อมูลรายเดือนได้จากภายนอกโดยการดริลล์ผ่านไปยังระบบที่มา (สมมติว่าเป็น Oracle Database) รวมถึงการเข้าใช้ข้อมูลจากคอลัมน์ที่ชื่อ DIMENSION_YEAR ดังนี้
สำหรับไดเมนชันที่เหลือ สมมติว่าเป็นไดเมนชันที่เหมือนกันในลูกบาศก์สาธิต Essbase ซึ่งได้แก่ Sample Basic ที่สามารถใช้ได้ในส่วนแกลเลอรี่ของแคตตาล็อกไฟล์ การตรวจสอบไดเมนชันแบบด่วนจะเป็นไปตามลำดับ ดังนี้
ไดเมนชันการวัดจะติดตามตัวบ่งชี้ประสิทธิภาพหลักสำหรับแอคเคาท์ โดยใช้การคำนวณแบบไดนามิคด้วยสูตรการคำนวณ Essbase
ไดเมนชันผลิตภัณฑ์จะติดตามสินค้าคงคลังที่ใช้งาน จากมากไปน้อยของทั้งสองรุ่น ไปยังรุ่น 2 ที่ชื่อชนิด (ป็อปปูเลทตาม 100 [ชื่อแทน Colas], 200, 300, 400 และ Diet) และรุ่น 3/ระดับ 0 ที่ชื่อ SKU ของผลิตภัณฑ์ (ป็อปปูเลทตาม 100-10 [ชื่อแทน Cola], 100-20 เป็นต้น)
ไดเมนชันตลาดแสดงการแบ่งทางภูมิศาสตร์โดยมีรุ่นเพิ่มเติมสองรุ่นภายใต้ชื่อไดเมนชัน รุ่น 2 คือ พื้นที่ (ตะวันออก, ตะวันตก เป็นต้น) และรุ่น 3 คือ รัฐ
ไดเมนชันสถานการณ์จะเพิ่มการวิเคราะห์การรายงานทางการเงินในลูกบาศก์ โดยมีสมาชิกที่จัดเก็บไว้สองรายการและสมาชิกการคำนวณแบบไดนามิคสองรายการ ดังนี้
ระบบที่มาภายนอก
สำหรับระบบที่มาในตัวอย่างนี้ สมมติให้เป็น Oracle Database ที่มาข้อมูลที่กำหนดล่วงหน้าใน Essbase ประกอบด้วยการสืบค้น SQL ที่ดึงข้อมูลจากตารางใน Oracle Database
ในฐานะผู้จัดการฐานข้อมูล งานของเราคือ การออกแบบการกำหนดรายงานการดริลล์ผ่านตามที่มาข้อมูลนี้ ซึ่งแสดงการเข้าใช้ข้อมูลระบบที่มาที่ดึงผ่านที่มาข้อมูลให้กับผู้ใช้อย่างถูกต้อง
การสืบค้นในที่มาข้อมูลสามารถทำได้ง่ายๆ
SELECT * FROM TABLENAME
หรือสามารถปรับแก้เพื่อดึงการสรุปรวมหรือการแบ่งประเภทข้อมูลภายนอกที่คุณต้องการใช้เป็นเกณฑ์
การเลือกจากตารางสมมติฐานของเราใน Oracle Database ประกอบด้วยคอลัมน์ภายนอก ดังที่แสดงภาพใน บทนำ ของเรา เราจะแมปคอลัมน์ภายนอกเหล่านี้บางรายการกับไดเมนชัน Essbase เมื่อเราออกแบบการกำหนดรายงานการดริลล์ผ่าน
การกำหนดการแมปคอลัมน์
การแมปคอลัมน์ในตัวอย่างนี้จะใช้การแมปไดเมนชันสำหรับผลิตภัณฑ์, การแมปรุ่นสำหรับปีและสถานการณ์ และการแมประดับ 0 สำหรับตลาด
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
DIMENSION_PRODUCT | Y | ผลิตภัณฑ์ | ไม่มี |
DIMENSION_MARKET | Y | ตลาด | ระดับ 0 [Level] |
YEAR_PARENT | Y | ปี | ไตรมาส [Generation] |
DIMENSION_SCENARIO | Y | สถานการณ์ | สถานการณ์ [Generation] |
SALES | Y | ไม่มี | -- |
COGS | Y | ไม่มี | -- |
MARKETING | Y | ไม่มี | -- |
PAYROLL | Y | ไม่มี | -- |
MISC | Y | ไม่มี | -- |
ตัวอย่างรายงานการดริลล์ผ่านตามประเภทการแมปคอลัมน์
ตัวอย่างรายงานการดริลล์ผ่านต่อไปนี้แสดงภาพผลลัพธ์การสืบค้นสำหรับการแมปคอลัมน์แต่ละประเภท ซึ่งผู้จัดการฐานข้อมูลระบุเป็นส่วนของการกำหนดรายงานการดริลล์ผ่าน
ตัวอย่างการแมปไดเมนชัน 1
การใช้ การแมปไดเมนชัน สำหรับผลิตภัณฑ์โดยไม่มีฟิลเตอร์ลำดับชั้น
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
DIMENSION_PRODUCT | Y | ผลิตภัณฑ์ | ไม่มี |
ระบบจะยกเลิกการเชื่อมโยงการดริลล์ผ่านที่ดำเนินการจากจุดตัดกันของเซลล์กับรุ่นหรือระดับที่ระบุ
ดังนั้น การดริลล์ผ่านจาก (Year, Sales, West, Actual, Cola):
แสดงรายงานการดริลล์ผ่านที่ฟิลเตอร์ตามคอนเท็กซ์ของกริดปัจจุบันสำหรับผลิตภัณฑ์ ซึ่งเท่ากับ 100-10 (100-10 คือ SKU ของผลิตภัณฑ์ที่เชื่อมโยงกับชื่อแทน Cola) ค่าทั้งหมดที่ดึงจากคอลัมน์ DIMENSION_PRODUCT ในระบบที่มาจะได้รับการบันทึกไว้ โดยที่ DIMENSION_PRODUCT = 100-10
ในการตรวจสอบรายงานการดริลล์ผ่านขณะที่คุณทดสอบรายงาน ให้ตรวจสอบว่าผลรวมสำหรับการวัดในรายงานตรงกับจุดตัดกันของเซลล์ที่มีการดำเนินการดริลล์ผ่าน จากตัวอย่างข้างต้น รายงานการดริลล์ผ่านได้รับการตรวจสอบแล้ว เนื่องจากเซลล์ที่ดริลล์ตรงกับค่า (14862) ของผลรวมของคอลัมน์ที่แมปในรายงานการดริลล์ผ่าน
การสืบค้นที่ Essbase ใช้ในการสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'
ตัวอย่างการแมปไดเมนชัน 2
ต่อจากตัวอย่างก่อนหน้านี้ ส่วนนี้แสดงสิ่งที่เกิดขึ้นเมื่อดริลล์ผ่านบนผลิตภัณฑ์ในระดับที่สูงขึ้น
การดริลล์ผ่านจาก (Year, Sales, West, Actual, Colas):
แสดงรายงานการดริลล์ผ่านที่ฟิลเตอร์ตามคอนเท็กซ์ของกริดปัจจุบันสำหรับผลิตภัณฑ์ ซึ่งตอนนี้เท่ากับ 100 (100 คือ ชนิดผลิตภัณฑ์ที่เชื่อมโยงกับชื่อแทน Colas) ค่าทั้งหมดที่ดึงจากคอลัมน์ DIMENSION_PRODUCT ในระบบที่มาจะได้รับการบันทึกไว้ โดยที่ DIMENSION_PRODUCT = 100
รายงานการดริลล์ผ่านได้รับการตรวจสอบแล้ว เนื่องจากเซลล์ที่ดริลล์ตรงกับค่า (28306) ของผลรวมของคอลัมน์ที่แมปในรายงานการดริลล์ผ่าน
การสืบค้นที่ Essbase ใช้ในการสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'
ตัวอย่างการแมปรุ่น 1
การใช้การแมปรุ่นสำหรับปีที่มีฟิลเตอร์ในรุ่นที่ชื่อไตรมาส
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
YEAR_PARENT | Y | ปี | ไตรมาส [Generation] |
ระบบจะเชื่อมโยงการดริลล์ผ่านที่ดำเนินการจากจุดตัดกันของเซลล์กับรุ่นที่ระบุของปี
การดริลล์ผ่านจาก (Qtr2, Sales, Market, Actual, Cola):
แสดงรายงานการดริลล์ผ่านที่ฟิลเตอร์ตามคอนเท็กซ์ของรุ่นที่แมปสำหรับปี ซึ่งได้แก่ ไตรมาส เนื่องจาก Qtr2 อยู่ในคอนเท็กซ์กริดที่เลือกไว้ ค่าทั้งหมดที่ดึงจากคอลัมน์ YEAR_PARENT ในระบบที่มาจะได้รับการบันทึกไว้ โดยที่ YEAR_PARENT = Qtr2
รายงานการดริลล์ผ่านได้รับการตรวจสอบแล้ว เนื่องจากเซลล์ที่ดริลล์ตรงกับค่า (16048) ของผลรวมของคอลัมน์ที่แมปในรายงานการดริลล์ผ่าน
การสืบค้นที่ Essbase ใช้ในการสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE
"YEAR_PARENT" = 'Qtr2'
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'New York' OR
"DIMENSION_MARKET" = 'Oklahoma' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Florida' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Iowa' OR
"DIMENSION_MARKET" = 'New Mexico' OR
"DIMENSION_MARKET" = 'Massachusetts' OR
"DIMENSION_MARKET" = 'Texas' OR
"DIMENSION_MARKET" = 'Illinois' OR
"DIMENSION_MARKET" = 'Colorado' OR
"DIMENSION_MARKET" = 'Connecticut' OR
"DIMENSION_MARKET" = 'New Hampshire' OR
"DIMENSION_MARKET" = 'Missouri' OR
"DIMENSION_MARKET" = 'Louisiana' OR
"DIMENSION_MARKET" = 'Ohio' OR
"DIMENSION_MARKET" = 'Wisconsin' OR
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'
ตัวอย่างการแมปรุ่น 2
ต่อจากตัวอย่างก่อนหน้านี้ ส่วนนี้แสดงสิ่งที่เกิดขึ้นเมื่อดริลล์ผ่านบนไดเมนชันปีในระดับที่สูงขึ้น
การดริลล์ผ่านจาก (Year, Sales, Market, Actual, Cola):
แสดงรายงานการดริลล์ผ่านที่ฟิลเตอร์ตามรุ่นไตรมาสที่แมปของปี ค่าที่ดึงจากคอลัมน์ YEAR_PARENT ในระบบที่มาจะเป็น Qtr1, Qtr2, Qtr3 และ Qtr4
รายงานการดริลล์ผ่านได้รับการตรวจสอบแล้ว เนื่องจากเซลล์ที่ดริลล์ตรงกับค่า (62824) ของผลรวมของคอลัมน์ที่แมปในรายงานการดริลล์ผ่าน
การสืบค้นที่ Essbase ใช้ในการสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'New York' OR
"DIMENSION_MARKET" = 'Oklahoma' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Florida' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Iowa' OR
"DIMENSION_MARKET" = 'New Mexico' OR
"DIMENSION_MARKET" = 'Massachusetts' OR
"DIMENSION_MARKET" = 'Texas' OR
"DIMENSION_MARKET" = 'Illinois' OR
"DIMENSION_MARKET" = 'Colorado' OR
"DIMENSION_MARKET" = 'Connecticut' OR
"DIMENSION_MARKET" = 'New Hampshire' OR
"DIMENSION_MARKET" = 'Missouri' OR
"DIMENSION_MARKET" = 'Louisiana' OR
"DIMENSION_MARKET" = 'Ohio' OR
"DIMENSION_MARKET" = 'Wisconsin' OR
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'
ตัวอย่างการแมประดับ 0
การใช้การแมประดับ 0 สำหรับตลาดที่มีฟิลเตอร์ในสมาชิกระดับ 0 (ต่ำสุด) ทั้งหมด
คอลัมน์ภายนอก | รวมในรายงาน | ไดเมนชัน Essbase | ฟิลเตอร์รุ่น/ระดับ |
---|---|---|---|
DIMENSION_MARKET | Y | ตลาด | ระดับ 0 [Level] |
การดริลล์ผ่านที่ดำเนินการจากจุดตัดกันของเซลล์จะแสดงสมาชิกขั้นต่ำสุดทั้งหมดสำหรับตลาด
การดริลล์ผ่านจาก (Year, Sales, Market, Actual, Cola):
แสดงรายงานการดริลล์ผ่านที่รวมสมาชิกระดับต่ำสุดของไดเมนชันตลาด ซึ่งได้แก่ รัฐ ค่าทั้งหมดที่ดึงจากคอลัมน์ DIMENSION_MARKET ในระบบที่มาจะได้รับการบันทึกไว้ ซึ่งประกอบด้วยรัฐ
รายงานการดริลล์ผ่านได้รับการตรวจสอบแล้ว เนื่องจากเซลล์ที่ดริลล์ตรงกับค่า (62824) ของผลรวมของคอลัมน์ที่แมปในรายงานการดริลล์ผ่าน
การสืบค้นที่ Essbase ใช้ในการสร้างรายงานการดริลล์ผ่านข้างต้น คือ
SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'New York' OR
"DIMENSION_MARKET" = 'Oklahoma' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Florida' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Iowa' OR
"DIMENSION_MARKET" = 'New Mexico' OR
"DIMENSION_MARKET" = 'Massachusetts' OR
"DIMENSION_MARKET" = 'Texas' OR
"DIMENSION_MARKET" = 'Illinois' OR
"DIMENSION_MARKET" = 'Colorado' OR
"DIMENSION_MARKET" = 'Connecticut' OR
"DIMENSION_MARKET" = 'New Hampshire' OR
"DIMENSION_MARKET" = 'Missouri' OR
"DIMENSION_MARKET" = 'Louisiana' OR
"DIMENSION_MARKET" = 'Ohio' OR
"DIMENSION_MARKET" = 'Wisconsin' OR
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'