ในการเพิ่มความยืดหยุ่นของการใช้งานที่มาข้อมูล คุณสามารถใช้พารามิเตอร์รันไทม์ในการสืบค้นเพื่อกำหนดให้ที่มาข้อมูลสามารถใช้ตัวแปรต่างๆ ได้
ตัวแปรเหล่านี้อาจเป็นตัวแปรแทนที่กำหนดไว้ใน Essbase, พารามิเตอร์รันไทม์ที่กำหนดตามคอนเท็กซ์กริด เมื่อผู้ใช้ Smart View ดริลล์ผ่านไปยังข้อมูลภายนอก หรือฟังก์ชันที่ผู้กำหนดที่เขียนบันทึกในระบบที่มาภายนอก
เมื่อใดก็ตามที่คุณวางแผนใช้ตัวแปรในที่มาข้อมูลของ Essbase คุณจำเป็นต้อง
รวมรูปแบบคำสั่งตัวแปรในการสืบค้นที่มาข้อมูล ตัวอย่างเช่น การสืบค้นที่มาข้อมูลต้องมี ?
อยู่ในรูปแบบคำสั่งของการสืบค้น โดยที่ ?
เป็นตัวจองพื้นที่สำหรับตัวแปรบางรายการที่จะได้รับการกำหนดขณะรันไทม์
ดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้:
ตั้งค่า พารามิเตอร์ดีฟอลต์ แบบคงที่ในที่มาข้อมูลสำหรับ Essbase เพื่อใช้เป็นการเรียกกลับ ในกรณีที่ตัวแปรมีคอนเท็กซ์ที่ไม่ถูกต้องขณะรันไทม์ หรือ
ส่งฟังก์ชันที่ผู้ใช้กำหนดจากภายนอก (หรือโปรซีเจอร์ที่จัดเก็บไว้) เป็นพารามิเตอร์
ในการกำหนดที่มาข้อมูล และใช้พารามิเตอร์กับที่มาข้อมูลดังกล่าว คุณต้องเป็นผู้จัดการแอปพลิเคชันขึ้นไป
การใช้งานตัวแปรในที่มาข้อมูลของ Essbase จะช่วยให้คุณเพิ่มความคล่องตัวในการทำงานได้ โดยการกำหนดให้มีการจัดการที่มาข้อมูลที่น้อยลง การใช้งานตัวแปรกับที่มาข้อมูลจะช่วยให้คุณสามารถระบุคอนเท็กซ์การสืบค้นแบบรันไทม์ที่จะใช้ เมื่อใดก็ตามที่ผู้ใช้เข้าใช้ที่มาข้อมูลที่เชื่อมโยงกับลูกบาศก์ Essbase
ตัวอย่างเช่น สมมติว่าเป็นกรณีการใช้ต่อไปนี้
ผู้จัดการฐานข้อมูลจะตรวจสอบงานการโหลดข้อมูลที่เกิดซ้ำ ซึ่งจะโหลดข้อมูลไปยังลูกบาศก์แบบรายเดือน ผู้จัดการฐานข้อมูลจะสามารถใช้ตัวแปรแทนในการโหลดข้อมูลสำหรับเดือนปัจจุบัน แทนการจัดการกฎการโหลดในแต่ละเดือนได้ทันที
ผู้จัดการแอปพลิเคชันจัดการการกำหนดรายงานการดริลล์ผ่านสำหรับกรณีการใช้ทางธุรกิจอื่น ผู้จัดการแอปพลิเคชันจะใช้ตัวแปรต่างๆ ในที่มาข้อมูลที่ใช้งานอยู่ ซึ่งผู้ใช้ Smart View ดึงมาในการดริลล์ผ่าน ผลลัพธ์ที่ได้คือ ผู้จัดการแอปพลิเคชันมีการกำหนดรายงานการดริลล์ผ่านที่จะจัดการและดีบักที่น้อยลง
ตั้งค่าพารามิเตอร์ดีฟอลต์ในที่มาข้อมูล หากคุณต้องการใช้งานการใช้ตัวแปรในการสืบค้น Essbase จะสร้างเมื่อทำงานกับข้อมูลที่จัดเก็บไว้ภายนอกลูกบาศก์
ในการตั้งค่าพารามิเตอร์ดีฟอลต์
รับหรือสร้างการเชื่อมต่อกับที่มาของข้อมูลภายนอก (ตัวอย่างเช่น สร้างการเชื่อมต่อกับ Oracle Database)
คุณสามารถใช้การเชื่อมต่อร่วมได้ หากมีการเชื่อมต่ออยู่ในเพจที่มาของเว็บอินเตอร์เฟซ Essbase หรือคุณสามารถสร้างการเชื่อมต่อระดับแอปพลิเคชันก็ได้
สร้างที่มาข้อมูลผ่านการเชื่อมต่อที่คุณจะใช้เพื่อเข้าใช้ Oracle Database
คุณสามารถกำหนดที่มาข้อมูลโดยทั่วไปได้หากที่มาข้อมูลต้องใช้ได้กับแอปพลิเคชันทั้งหมด หรือคุณสามารถกำหนดในระดับแอปพลิเคชันก็ได้
ในการสร้างที่มาข้อมูลร่วม คุณต้องเป็น ผู้ดูแลบริการ คลิก ที่มา คลิกแท็บ ที่มาข้อมูล ภายใต้ชื่อผู้ใช้ของคุณ แล้วคลิก สร้างที่มาข้อมูล
หรือหากต้องการสร้างที่มาข้อมูลระดับแอปพลิเคชัน คุณต้องเป็น ผู้จัดการแอปพลิเคชัน หรือ ผู้ใช้ระดับสูง ที่มีสิทธิ์การจัดการแอปพลิเคชันในแอปพลิเคชันที่ระบุ ในแท็บ แอปพลิเคชัน ให้คลิกชื่อแอปพลิเคชัน จากนั้นคลิก ที่มา คลิกแท็บ ที่มาข้อมูล ภายใต้ชื่อผู้ใช้ของคุณ แล้วคลิก สร้างที่มาข้อมูล
ในขั้นตอนทั่วไป สำหรับ การเชื่อมต่อ ให้เลือกการเชื่อมต่อ Oracle Database ที่คุณสร้าง
สำหรับ ชื่อ ให้ระบุชื่อให้กับที่มาข้อมูล
สำหรับ การสืบค้น ให้ระบุการสืบค้น (ตัวอย่างนี้ใช้ SQL) ในการกำหนดให้การสืบค้นเป็นการสืบค้นที่มีการกำหนดพารามิเตอร์ คุณต้องรวมเงื่อนไขของฟิลเตอร์ (คำสั่ง WHERE) ที่แมปคอลัมน์เชิงสัมพันธ์ในที่มาของคุณกับตัวจองพื้นที่ คุณระบุตำแหน่งของตัวแปรโดยการใช้ตัวจองพื้นที่ ? ในรูปแบบคำสั่งการสืบค้น ตัวจองพื้นที่มีไว้สำหรับพารามิเตอร์ที่คุณจะใช้ระบุในขั้นตอนหลังจากนี้
select * from SB_DT where DIMENSION_YEAR=?
ตัวอย่าง สมมติว่าฐานข้อมูลเชิงสัมพันธ์ของคุณมีตารางต่อไปนี้ ชื่อ SB_DT ตารางมีคอลัมน์ DIMENSION_YEAR ที่มีเดือนเป็นค่า:
ในการใช้ตัวแปรสำหรับการเลือกค่าเดือนจากคอลัมน์ DIMENSION_YEAR ให้ใช้รูปแบบคำสั่งฟิลเตอร์ต่อไปนี้ในการสืบค้น: where DIMENSION_YEAR=?
คลิก ถัดไป
ในขั้นตอน คอลัมน์ ให้ใช้ประเภทข้อมูลที่เหมาะสมที่ Essbase ต้องเชื่อมโยงกับแต่ละคอลัมน์จากข้อมูลที่มาเชิงสัมพันธ์ของคุณ
ตัวอย่างเช่น ตั้งค่าคอลัมน์ที่เป็นตัวเลขเป็นประเภท Double และปล่อยคอลัมน์ตัวอักษรและตัวเลขเป็นประเภท String
คลิก ถัดไป
ในขั้นตอนพารามิเตอร์ ระบบจะสร้าง Param1 – มีพารามิเตอร์นี้อยู่เนื่องจากคุณใช้ ? ในการสืบค้นในขั้นตอนทั่วไป
เว้นช่องทำเครื่องหมาย ใช้ตัวแปร ให้ว่างไว้ ดับเบิลคลิกที่ฟิลด์ข้อความภายใต้ ค่า แล้วพิมพ์ค่าดีฟอลต์สำหรับพารามิเตอร์รันไทม์ วัตถุประสงค์ของค่าดีฟอลต์นี้มีไว้เพื่อให้ Essbase ใช้เป็นการเรียกกลับ ในกรณีที่พารามิเตอร์มีคอนเท็กซ์ที่ไม่ถูกต้องขณะรันไทม์ ขั้นตอนนี้เป็นขั้นตอนที่สำคัญ หากคุณต้องการใช้พารามิเตอร์รันไทม์เป็นส่วนของการกำหนดรายงานการดริลล์ผ่าน
นอกจากนี้ คุณยังสามารถเปลี่ยนชื่อ Param1 เป็นชื่อที่มีความหมายสำหรับกรณีการใช้งานของคุณได้ ตัวอย่างเช่น คุณสามารถเปลี่ยนชื่อเป็น param_G_month เพื่อแสดงว่าพารามิเตอร์ใช้ตัวแปรร่วมสำหรับเดือนปัจจุบัน หรือคุณสามารถเปลี่ยนชื่อเป็น param_<appName>_month เพื่อแสดงว่าพารามิเตอร์ใช้ตัวแปรระดับแอปพลิเคชันสำหรับเดือนปัจจุบัน การปรับแต่งชื่อพารามิเตอร์จะเป็นประโยชน์เมื่อดีบักพารามิเตอร์โดยใช้ล็อกไฟล์ของเซิร์ฟเวอร์ Essbase
หากคุณต้องการปรับแต่งพารามิเตอร์ให้อ้างอิงตัวแปรแทน คุณไม่จำเป็นต้องระบุค่าดีฟอลต์ โปรดดูที่ ใช้ตัวแปรแทนในที่มาข้อมูล แทนหัวข้อนี้
คลิก ถัดไป
ใน แสดงตัวอย่าง ให้สังเกตว่ามีการใช้พารามิเตอร์ดีฟอลต์กับการสืบค้นของคุณแล้ว ซึ่งทำให้การแสดงตัวอย่างป็อปปูเลทด้วยเรคคอร์ดที่มาภายนอกที่มีค่าของคอลัมน์ DIMENSION_YEAR เป็น Jan เท่านั้น
แม้ว่าการแสดงตัวอย่างจะแสดงเฉพาะค่าที่มีการใช้พารามิเตอร์ดีฟอลต์ แต่หลังจากนั้นเมื่อคุณใช้พารามิเตอร์รันไทม์สำหรับการกำหนดรายงานการดริลล์ผ่าน คุณจะสามารถเข้าใช้ข้อมูลภายนอกได้มากกว่าข้อมูลที่ปรากฏในการแสดงตัวอย่าง
คลิก สร้าง เพื่อสร้างที่มาข้อมูลตามการสืบค้นข้อมูลที่มาภายนอกนี้ มีการใช้งานที่มาข้อมูลสำหรับการใช้งานพารามิเตอร์รันไทม์
เวิร์กโฟลว์ต่อไปนี้แสดงวิธีการสร้างที่มาข้อมูล Essbase จากการสืบค้นข้อมูลที่มาภายนอก โดยใช้ตัวแปรแทนที่กำหนดไว้ใน Essbase ตัวแปรแทนจะช่วยเพิ่มความยืดหยุ่นในการออกแบบการสืบค้นที่ดึงมาจากข้อมูลที่มาของคุณ
จากตัวอย่างนี้ คุณจะใช้ตัวแปรแทนใน Essbase เพื่อประกาศเดือนปัจจุบัน คุณสามารถปล่อยที่มาข้อมูลไว้ และอัปเดตเฉพาะตัวแปรแทนที่คุณกำหนดไว้ได้ แทนการอัปเดตที่มาข้อมูลแบบรายเดือนเพื่อดึงข้อมูลเข้าสำหรับเดือนปัจจุบัน
สร้างระดับร่วมหรือระดับแอปพลิเคชัน ตัวแปรแทน
รับหรือสร้างการเชื่อมต่อกับที่มาของข้อมูลภายนอก (ตัวอย่างเช่น สร้างการเชื่อมต่อกับ Oracle Database)
คุณสามารถใช้การเชื่อมต่อร่วมได้ หากมีการเชื่อมต่ออยู่ในเพจที่มาของเว็บอินเตอร์เฟซ Essbase หรือคุณสามารถสร้างการเชื่อมต่อระดับแอปพลิเคชันก็ได้
สร้างที่มาข้อมูลผ่านการเชื่อมต่อที่คุณจะใช้เพื่อเข้าใช้ Oracle Database
คุณสามารถกำหนดที่มาข้อมูลโดยทั่วไปได้หากที่มาข้อมูลต้องใช้ได้กับแอปพลิเคชันทั้งหมด หรือคุณสามารถกำหนดในระดับแอปพลิเคชันก็ได้
ในขั้นตอนทั่วไป สำหรับ การเชื่อมต่อ ให้เลือกการเชื่อมต่อ Oracle Database ที่คุณสร้าง
สำหรับ ชื่อ ให้ระบุชื่อให้กับที่มาข้อมูล
สำหรับ การสืบค้น ให้ระบุการสืบค้น (ตัวอย่างนี้ใช้ SQL) ในการกำหนดให้การสืบค้นเป็นการสืบค้นที่มีการกำหนดพารามิเตอร์ คุณต้องรวมเงื่อนไขของฟิลเตอร์ (คำสั่ง WHERE) ที่แมปคอลัมน์เชิงสัมพันธ์ในที่มาของคุณกับตัวจองพื้นที่ คุณระบุตำแหน่งของตัวแปรโดยการใช้ตัวจองพื้นที่ ?
ในรูปแบบคำสั่งการสืบค้น ตัวจองพื้นที่มีไว้สำหรับพารามิเตอร์ที่คุณจะใช้ระบุในขั้นตอนหลังจากนี้
select * from SB_DT where DIMENSION_YEAR=?
ตัวอย่าง สมมติว่าฐานข้อมูลเชิงสัมพันธ์ของคุณมีตารางต่อไปนี้ ชื่อ SB_DT ตารางมีคอลัมน์ DIMENSION_YEAR ที่มีเดือนเป็นค่า:
ในการใช้ตัวแปรสำหรับการเลือกค่าเดือนจากคอลัมน์ DIMENSION_YEAR ให้ใช้รูปแบบคำสั่งฟิลเตอร์ต่อไปนี้ในการสืบค้น: where DIMENSION_YEAR=?
คลิก ถัดไป
ในขั้นตอน คอลัมน์ ให้ใช้ประเภทข้อมูลที่เหมาะสมที่ Essbase ต้องเชื่อมโยงกับแต่ละคอลัมน์จากข้อมูลที่มาเชิงสัมพันธ์ของคุณ
ตัวอย่างเช่น ตั้งค่าคอลัมน์ที่เป็นตัวเลขเป็นประเภท Double และปล่อยคอลัมน์ตัวอักษรและตัวเลขเป็นประเภท String
คลิก ถัดไป
ในขั้นตอนพารามิเตอร์ ระบบจะสร้าง Param1 – มีพารามิเตอร์นี้อยู่เนื่องจากคุณใช้ ?
ในการสืบค้นในขั้นตอนทั่วไป ในการปรับแต่ง Param1 เพื่ออ้างอิงตัวแปรแทน ให้คลิก ใช้ตัวแปร แล้วเลือกตัวแปรแทนจากลิสต์แบบดรอปดาวน์ ค่า
หากคุณกำลังสร้างที่มาข้อมูลภายในแอปพลิเคชัน จะมีตัวแปรแทนร่วมและระดับแอปพลิเคชันที่สามารถเลือกได้ ตัวแปรระดับแอปพลิเคชันถูกนำหน้าด้วยชื่อแอปพลิเคชัน หากคุณกำลังสร้างที่มาข้อมูลร่วม จะมีตัวแปรแทนร่วมที่สามารถเลือกได้เท่านั้น
คุณสามารถเปลี่ยนชื่อ Param1 เป็นชื่อที่มีความหมายสำหรับกรณีการใช้งานของคุณได้ ตัวอย่างเช่น คุณสามารถเปลี่ยนชื่อเป็น param_G_month เพื่อแสดงว่าพารามิเตอร์ใช้ตัวแปรร่วมสำหรับเดือนปัจจุบัน หรือคุณสามารถเปลี่ยนชื่อเป็น param_<appName>_month เพื่อแสดงว่าพารามิเตอร์ใช้ตัวแปรระดับแอปพลิเคชันสำหรับเดือนปัจจุบัน การปรับแต่งชื่อพารามิเตอร์จะเป็นประโยชน์เมื่อดีบักพารามิเตอร์โดยใช้ล็อกไฟล์ของเซิร์ฟเวอร์ Essbase
คลิก ถัดไป
ใน แสดงตัวอย่าง ให้สังเกตว่ามีการใช้ตัวแปรแทนกับการสืบค้นของคุณแล้ว ซึ่งทำให้การแสดงตัวอย่างป็อปปูเลทด้วยเรคคอร์ดที่มาภายนอกที่มีค่าของคอลัมน์ DIMENSION_YEAR เป็น Aug เท่านั้น
คลิก สร้าง เพื่อสร้างที่มาข้อมูลตามการสืบค้นข้อมูลที่มาภายนอกนี้