การสร้างแถวผลรวมในแพลตฟอร์ม Agile

ฉันเพิ่งทำงานกับ OutSystems Agile Platform ซึ่งลูกค้าต้องการให้ตารางมีแถว "รวม" นี่เป็นคำขอทั่วไป แต่ไม่ชัดเจนว่าจะทำอย่างไร วิดเจ็ต TableRecords รองรับแถวส่วนหัว แต่ไม่ใช่แถวส่วนท้ายและวัตถุ RecordList ที่ทำงานด้วยไม่เข้าใจแนวคิดของข้อมูลรวม แต่น่าเสียดาย ข่าวดีก็คือการรวมแถวส่วนท้ายและใช้ในตารางของคุณไม่ใช่เรื่องยาก

ในความพยายามครั้งแรกของฉันฉันพยายามทำเช่นนี้ด้วยวิดเจ็ต ListRecords ก่อนหน้าหลังจากวิดเจ็ต ListRecords ฉันใส่นิพจน์โดยที่ "Escape Content" ถูกตั้งค่าเป็น "ไม่" และพวกเขามี HTML เพื่อเริ่มและจบตารางและแทรกแถวส่วนหัว จากนั้นในวิดเจ็ต ListRecords ฉันใช้นิพจน์ที่ไม่ใช้ค่า Escape เพื่อเพิ่มในแท็ก tr และ td รอบ ๆ นิพจน์เพื่อแสดงข้อมูล ดูเหมือนว่าวิธีนี้จะเป็นไปได้ แต่ก็ไม่ได้ผล เมื่อ ListRecords ได้รับการประมวลผลแล้วมันก็จะขยายแท็กสแปนออกเป็นจำนวนมากซึ่งทำให้โต๊ะแตกหัก

วิธีการต่อไปของฉันประสบความสำเร็จมากกว่า ฉันสร้างโครงสร้างใหม่ที่มีแอททริบิวต์ประเภทบูลีนชื่อ "IsTotalRow" และแอททริบิวต์ประเภทบันทึกอีกประเภทหนึ่งพร้อมกับประเภทของเอนทิตีที่ฉันพยายามแสดง ในกรณีนี้ฉันยังเพิ่มแอททริบิวอื่นที่เรียกว่า "RowTotal" สำหรับค่าทั้งหมดของแถว

ต่อไปในการเตรียมหน้าจอของฉันฉันทำแบบสอบถามตามปกติ ฉันยังเพิ่มค่าชั่วคราวของชนิดโครงสร้างใหม่ตัวแปร "TotalRow" ชนิดเดียวกันและตัวแปรอื่นเป็น RecordList ของชนิดโครงสร้างใหม่ หลังจากการสืบค้นฉันใช้ ForEach เพื่อทำซ้ำผลลัพธ์ ในการวนซ้ำแต่ละครั้งฉันจะตั้งค่าระเบียนข้อมูลของตัวแปรชั่วคราวเป็นค่าปัจจุบันจากแบบสอบถามและตั้งค่า "IsTotalRow" เป็น "False" ฉันยังเพิ่มค่าปัจจุบันให้กับตัวแปร TotalRow และให้ค่าที่เหมาะสม "RowTotal" ของตัวแปรชั่วคราว หลังจากทำซ้ำฉันเพิ่ม RowTotal สำหรับวัตถุ TotalRow ตั้งค่า IsTotalRow เป็น "True" และผนวกเข้ากับ RecordList

ด้าน UI ของสิ่งต่าง ๆ ฉันผูกวิดเจ็ต TableRecords กับ RecordList ที่ฉันสร้างและเพิ่มคอลัมน์ของฉัน เคล็ดลับที่แท้จริงเท่านั้นคือสไตล์ เพื่อให้แถวผลรวมโดดเด่นจริงๆฉันต้องการให้มันเป็นสีที่แตกต่าง - พื้นหลังสีเทาเข้มพร้อมตัวหนาสีขาว เพื่อให้สิ่งนี้เกิดขึ้นฉันเลือก แถว และในคุณสมบัติเพิ่มเติมฉันสร้างหนึ่งชื่อ "สไตล์" และตั้งค่าเป็นถ้าตรวจสอบว่าค่า IsTotalRow ของแถวปัจจุบันเป็นจริงหรือไม่ ถ้าเป็นเช่นนั้นมันจะเอาท์พุท CSS เพื่อจัดเรียงแถวตามที่ฉันต้องการ มิฉะนั้นจะส่งออกสตริงว่างเปล่า

Voila! ฉันมีแถวรวม ในโครงการนี้ใช้เวลาค่อนข้างมากในการสร้างผลรวมแถวเนื่องจากมีตารางที่มีคอลัมน์ zillion อยู่และมีการคำนวณด้วยตนเองจำนวนมากที่เกิดขึ้นภายใต้ประทุน สำหรับโครงการใหม่ที่มีความต้องการข้อมูลพื้นฐานงานนี้ควรใช้เวลาสองสามนาที

J.Ja

ปรับปรุงทักษะด้านวิศวกรรมของคุณให้ทันสมัยโดยลงทะเบียนเพื่อรับจดหมายข่าว Software Engineer ฟรีของ TechRepublic จัดส่งทุกวันอังคาร

อ่านโพสต์ TechRepublic อื่น ๆ ของฉันเกี่ยวกับ Agile Platform

  • การสร้างเลย์เอาต์ของเหลวสำหรับธีม Agile Platform
  • การสร้างระบบเข้าสู่ระบบสำหรับแพลตฟอร์ม OutSystems Agile
  • การสร้างสตริงที่ไม่ซ้ำกันในแพลตฟอร์ม Agile
  • วงจรชีวิตแอปพลิเคชันของฉันในแพลตฟอร์ม Agile
  • เขียนการนำเข้าข้อมูล Excel ขั้นสูงด้วยแพลตฟอร์ม Agile
  • การสร้างส่วนขยายใน Integration Studio ของ Agile Platform
  • การนำเข้าสกีมาฐานข้อมูลที่มีอยู่เป็นเอนทิตีแพลตฟอร์ม Agile

© Copyright 2021 | mobilegn.com