ตามที่คุณกำหนดโมเดลในสถานการณ์ต่างๆ คุณจะต้องกำหนดว่าต้องการให้มีการคำนวณภายในแต่ละแซนด์บ็อกซ์หรือไม่
ส่งการเปลี่ยนแปลงข้อมูลไปยังแซนด์บ็อกซ์และคำนวณข้อมูลอื่นให้น้อยที่สุดเท่าที่จะเป็นไปได้ หรือเพียงแค่ข้อมูลที่ผู้ใช้สามารถตรวจสอบการทำงานของตนเองได้ วิธีนี้จะช่วยคงประสิทธิภาพของพื้นที่เก็บข้อมูลของการออกแบบแซนด์บ็อกซ์
ตัวอย่างเช่น เมื่อสมาชิกระดับบนทั้งหมดในลูกบาศก์เป็นการคำนวณแบบไดนามิค ก็ไม่จำเป็นต้องมีการสรุปรวมในรูปแบบของสคริปต์การคำนวณ
หากคุณจัดเก็บสมาชิกระดับบน ให้จำกัดขอบเขตการคำนวณแซนด์บ็อกซ์ไว้ที่ระดับต่ำสุดที่จำเป็นสำหรับการทำงานของผู้ใช้
ลำดับชั้นแบบไดนามิค (ทั้งแบบหนาแน่นและแบบพาร์ซ) จะสรุปรวมโดยอัตโนมัติ และผู้ใช้ที่ดำเนินการเปลี่ยนแปลงในแซนด์บ็อกซ์จะเห็นการเปลี่ยนแปลงดังกล่าวได้ทันที
โปรดดูที่ตัวอย่างจากแอปพลิเคชันสาธิตของพื้นที่เก็บข้อมูลบล็อค Sample_Scenario.Basic
สมมติว่าผลิตภัณฑ์และตลาดเป็นลำดับชั้นแบบไดนามิคที่มีข้อมูลที่จัดเก็บอยู่ในระบบศูนย์เท่านั้น และมีการสร้างสถานการณ์ขึ้นโดยใช้สมาชิกไดเมนชันของแซนด์บ็อกซ์ sb0
เมื่อมีการสร้างแซนด์บ็อกซ์ขึ้นใหม่ ค่าสำหรับ sb0 จะเหมือนกับค่าของพื้นฐาน เนื่องจากสมาชิกของแซนด์บ็อกซ์เป็นแบบเสมือน ซึ่งจะแสดงค่าพื้นฐานจนกว่าผู้ใช้จะส่งการเปลี่ยนแปลงค่าดังกล่าว
หลังจากแก้ไขข้อมูล ยอดขาย->งบประมาณ->ม.ค.->Cola ในสมาชิก sb0 แล้ว เราจะสามารถเห็นได้ทันทีว่าสมาชิกของแซนด์บ็อกซ์แบบไดนามิค "ตะวันตก" (ใน D10) จะสรุปรวมเป็นยอดรวมที่ถูกต้องโดยใช้ค่าผสมของสมาชิกที่จัดเก็บไว้จากพื้นฐานและ sb0
ระบบจะจัดเก็บค่าสำหรับ Oregon, Utah และ Nevada ในสมาชิกของแซนด์บ็อกซ์พื้นฐาน มีการส่งค่าสำหรับ California และ Washington โดยผู้เข้าร่วมสถานการณ์ และระบบจะจัดเก็บไว้ในสมาชิกของแซนด์บ็อกซ์ sb0 ยอดรวมทั้งหมดสำหรับ ตะวันตก->Cola->sb0 จะสรุปรวมแบบไดนามิคโดยใช้ค่าที่จัดเก็บไว้เหล่านี้
นอกจากนี้ คุณยังสามารถใช้สคริปต์การคำนวณในแซนด์บ็อกซ์ได้ สมมติว่า Oregon ได้รับการคาดหมายว่าจะได้รับงบประมาณ 80% ของ California สคริปต์การคำนวณต่อไปนี้สามารถดำเนินการดังนี้
FIX("Jan", "Budget", "Cola", "Sales") "Oregon"="California"*.8; ENDFIX
เมื่อผู้เข้าร่วมสถานการณ์เริ่มต้นเวิร์กชีท Excel จากเว็บอินเตอร์เฟซและรันการคำนวณนี้ ระบบจะใช้ sb0 เป็นสมาชิกของแซนด์บ็อกซ์ดีฟอลต์ที่มีการคำนวณ และมีการอัปเดตค่าสำหรับสมาชิก Oregon ดังนี้
วิวนี้ไม่ได้มาจากชีทที่เริ่มต้นสถานการณ์ แต่มาจากวิวส่วนบุคคลของ Smart View โดยที่สามารถแสดงทั้งพื้นฐานและ sb0 บนชีทได้
ในบางกรณี ลำดับชั้นแบบพาร์ซหรือแบบหนาแน่นอาจจัดเก็บสมาชิกระดับบนไว้ และต้องมีการสรุปรวมใน level- หรือการคำนวณตามรุ่น
การดำเนินการต่อจากกริดล่าสุดของตัวอย่างก่อนหน้า สมมติว่ามีการจัดเก็บสมาชิกระดับบนในไดเมนชันตลาด แทนไดนามิค
หากเราเปลี่ยนค่าสำหรับ Oregon เป็น 250 ดังนั้น สมาชิกของ West จะต้องได้รับการคำนวณอีกครั้ง ก่อนที่เราจะเห็นผลลัพธ์ที่ถูกต้อง ดังนี้
คุณสามารถใช้สคริปต์การคำนวณต่อไปนี้เพื่อสรุปรวมไดเมนชัน "ตลาด" ในแซนด์บ็อกซ์ เมื่อรันจากชีท Excel ที่เริ่มต้นสถานการณ์
AGG("Market");