เมื่อใช้กริด Smart View และคำสั่ง FIX ของสคริปต์การคำนวณ คุณสามารถคำนวณลำดับค่าของสมาชิกที่เลือกตาม Point of View (POV) ของกริด หรือคุณสามารถพิมพ์ค่าผสมของลำดับค่าอย่างชัดเจนในคำสั่ง FIX ของคุณ โดยย้ายการอ้างอิงกับกริด Smart View หนึ่งออกเพื่อกำหนดขอบเขตการคำนวณ
การคำนวณลำดับค่าที่เลือกจะช่วยให้คุณทำงานกับพื้นที่แบบอะซิมเมตริกทั้งในสคริปต์การคำนวณและกริด Smart View
พิจารณาถึงตัวอย่างต่อไปนี้
ในการลองใช้ตัวอย่าง ให้ดาวน์โหลดเทมเพลทเวิร์กบุค CalcTuple_Tuple.xlsx
จากส่วนด้านเทคนิค > การคำนวณของโฟลเดอร์ แกลเลอรี่ ในพื้นที่ ไฟล์ ของเว็บอินเตอร์เฟซ Oracle Analytics Cloud – Essbase อ่านคำแนะนำจากเวิร์กชีท README ในเวิร์กบุค
กำลังสาธิตลักษณะการคำนวณดีฟอลต์ที่เกิดขึ้นเมื่อคุณไม่ได้เลือกลำดับค่า สคริปต์การคำนวณต่อไปนี้จะคำนวณผลิตภัณฑ์ทั้งหมดของสมาชิกไดเมนชันผลิตภัณฑ์และตลาดจากกริด Smart View
ด้วยความช่วยเหลือจากตัวแปรแทนแบบรันไทม์ (RTSV) สองตัวที่กำหนดไว้ในบล็อค SET RUNTIMESUBVARS การคำนวณจะถูกจำกัดอยู่ที่มุมมองผลิตภัณฑ์และตลาดใดๆ ก็ตามที่อยู่ในกริดเมื่อรันการคำนวณจาก Smart View
SET RUNTIMESUBVARS { ProductGridMembers = POV <RTSV_HINT><svLaunch> <description>All Product's members on the grid</description> <type>member</type> <dimension>Product</dimension><choice>multiple</choice> </svLaunch></RTSV_HINT>; MarketGridMembers = POV <RTSV_HINT><svLaunch> <description>All Market's members on the grid</description> <type>member</type> <dimension>Market</dimension><choice>multiple</choice> </svLaunch></RTSV_HINT>; }; FIX ( &ProductGridMembers, &MarketGridMembers ) Marketing( Marketing = Marketing +1; ); ENDFIX
เมื่อใช้ฟังก์ชัน @GRIDTUPLES เพื่อเลือกลำดับค่าของไดเมนชันผลิตภัณฑ์และตลาด สคริปต์การคำนวณนี้จะคำนวณลำดับค่าสำหรับไดเมนทั้งสองเท่านั้น โดยจำกัดขอบเขตเฉพาะสมาชิกที่แสดงอยู่ในกริด Smart View ณ เวลาที่รันการคำนวณจาก Smart View
FIX ( {@GRIDTUPLES(Product, Market)} ) Marketing( Marketing = Marketing + 1; ); ENDFIX
เมื่อแก้ไขเฉพาะไดเมนชันสปาร์ซที่กำหนดชื่อในลำดับค่า การคำนวณจะครอบคลุมจำนวนบล็อคน้อยกว่าการคำนวณดีฟอลต์มาก อย่างไรก็ตาม สมาชิกทั้งหมดจากไดเมนชันที่ไม่ได้กล่าวถึงในการแก้ไข (ปี, สถานการณ์) จะได้รับการคำนวณโดยสคริปต์การคำนวณนี้
เมื่อใช้ฟังก์ชัน @GRIDTUPLES และตัวแปรแทนแบบรันไทม์ สคริปต์การคำนวณนี้จะคำนวณเฉพาะลำดับค่าที่เลือกจากกริด ตามการเลือกไดเมนชันสปาร์ซในพรอมต์ RTSV
ตัวแปรแทนแบบรันไทม์ &DimSelections ซึ่งได้รับการกำหนดในบล็อค SET RUNTIMESUBVARS จะจำกัดขอบเขตการคำนวณเป็นเฉพาะไดเมนชันสปาร์ซของลูกบาศก์เท่านั้น ไม่รวมสถานการณ์ ฟังก์ชัน @GRIDTUPLES ที่ใช้ในคำสั่ง FIX จะเรียกตัวแปรนี้ โดยจำกัดจำนวนอินเตอร์เซกชันที่ถูกคำนวณ
SET RUNTIMESUBVARS { DimSelections = "Version", "Site", "Entity", "Product", "Market" <RTSV_HINT><svLaunch> <description>List two or more sparse dimensions used for forming calculation tuples:</description> <type>string</type> </svLaunch></RTSV_HINT>; }; FIX ( {@GRIDTUPLES(&DimSelections)} ) Marketing( Marketing = Marketing + 1; ); ENDFIX
การคำนวณมีจำนวนบล็อคที่น้อยกว่าตัวอย่างก่อนหน้า เนื่องจากในกรณีนี้ การกำหนดลำดับค่าขยายไปยังไดเมนชันสปาร์ซเพิ่มเติมนอกเหนือจาก Product->Market
ในการลองใช้ตัวอย่าง ให้ดาวน์โหลดเทมเพลทเวิร์กบุค CalcTuple_Tuple.xlsx
จากส่วนด้านเทคนิค > การคำนวณของโฟลเดอร์ แกลเลอรี่ ในพื้นที่ ไฟล์ ของเว็บอินเตอร์เฟซ Oracle Analytics Cloud – Essbase อ่านคำแนะนำจากเวิร์กชีท README ในเวิร์กบุค