แชร์ผ่าน


แก้ไขเทมเพลตการจองของตารางกำหนดการใน Universal Resource Scheduling

เมื่อมีการกำหนดความต้องการให้กับทรัพยากร ระบบจะสร้างเรกคอร์ดการจอง ตารางกำหนดการจะแสดงการจองที่จัดกลุ่มตามทรัพยากร ฟิลด์ที่แสดงในการจองของตารางกำหนดการเรียกว่า เทมเพลตการจอง ซึ่งคุณสามารถปรับแต่งด้วยฟิลด์จากเอนทิตีของระบบได้

แก้ไขใบสั่งงานของเทมเพลตการจอง

เอนทิตีที่เปิดใช้งานการจัดกำหนดการแต่ละรายการสามารถมีเทมเพลตการจองที่แตกต่างกันได้ เมื่อมีการกำหนดความต้องการของใบสั่งงาน เทมเพลตการจองจะแสดงค่า การจองทรัพยากรที่สามารถจองได้ ของเรกคอร์ด ชื่อ และ ระยะเวลา

ค่าเริ่มต้นคือส่วนย่อยของโค้ดต่อไปนี้:

<div>{SchedulableEntityDisplayName} - {name}<br />Duration: <strong class="bold">{duration}</strong></div>

เมื่อต้องการแก้ไข HTML ที่ควบคุมเทมเพลตการจอง ให้ไปที่ส่วน ชนิดกำหนดการ ในการตั้งค่าตารางกำหนดการ เลือกเอนทิตีที่คุณต้องการเปลี่ยนเทมเพลตการจอง หากคุณเปิดการตั้งค่าจากแท็บของตารางกำหนดการ คุณจะเปลี่ยนการตั้งค่าสำหรับแท็บนั้นเท่านั้น หากต้องการเปลี่ยนแปลงแท็บทั้งหมด ให้เลือก แก้ไขค่าเริ่มต้น และใช้การเปลี่ยนแปลงของคุณที่นั่น ตั้งค่า เทมเพลตการจองแบบกำหนดเอง เป็น เปิด และเปลี่ยนรหัส HTML

ในฟิลด์ เทมเพลตการจอง ให้แทนที่เทมเพลตการจองโดยการป้อน HTML แบะ CSS ที่สามารถอ้างอิงฟิลด์จากเอนทิตี การจองทรัพยากรที่สามารถจองได้ และเชื่อมโยงเอนทิตี ตรวจสอบให้แน่ใจว่าได้ทดสอบเทมเพลตการจองที่กำหนดเองกับเบราว์เซอร์หลายตัว และพิจารณาวิธีปฏิบัติที่ดีที่สุดสำหรับการเข้าถึง ไม่รองรับ JavaScript ในเทมเพลตการจอง

เคล็ดลับ

ใช้เอนทิตีของระบบเท่านั้น ไม่สนับสนุนการดึงค่าจากเอนทิตีแบบกำหนดเอง

ฟิลด์จากเอนทิตี การจองทรัพยากรที่สามารถจองได้ สามารถอ้างอิงได้โดยตรงโดยใช้ชื่อฟิลด์ในวงเล็บปีกกา ตัวอย่าง: {duration}

หากต้องการแสดงฟิลด์จากเอนทิตีที่เชื่อมโยง ให้ค้นหาชื่อของความสัมพันธ์แบบ N:1 และเพิ่มจุด (.) ตามด้วยชื่อฟิลด์ของเอนทิตีเป้าหมาย ตัวอย่างเช่น เส้นทางความสัมพันธ์ของใบสั่งงานคือ msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder และฟิลด์ชนิดเหตุการณ์หลักคือ msdyn_primaryincidenttype ส่งผลให้มีการอ้างอิงฟิลด์ {msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype} เพิ่มการก้าวกระโดดความสัมพันธ์ให้มากขึ้นโดยเชื่อมต่อกับช่วงเวลาเพิ่มเติม

เทมเพลตแบบกำหนดเองใช้กับคำแนะนำเครื่องมือในมุมมองรายชั่วโมงของตารางกำหนดการเท่านั้น และจะไม่ส่งผลกระทบต่อมุมมองรายวัน รายสัปดาห์ หรือรายเดือน

ตัวอย่างเทมเพลตการจองแบบกำหนดเอง

สำหรับตัวอย่างนี้ เราสร้างเทมเพลตการจองแบบกำหนดเองสำหรับเอนทิตีใบสั่งงาน ส่วนย่อยของโค้ดต่อไปนี้ดึงค่าจากใบสั่งงานที่เกี่ยวข้องกับการจอง

<div style="line-height: 11px !important; width: 99%; overflow: hidden; display: block; text-overflow: ellipsis;">
    WO: 
    <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_name}</b><br/>
    Account: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.name}</b><br/>
    Incident: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype}</b><br/>
    Duration: <b>{duration} minutes</b><br/>
</div>

หมายเหตุ

ไม่รองรับการอ้างอิงแอตทริบิวต์การนัดหมายในเทมเพลตการจองของตารางกำหนดการ เนื่องจากข้อมูลเทมเพลตการนัดหมายขึ้นอยู่กับการจองที่เกี่ยวข้อง

หากต้องการอ้างอิงแอตทริบิวต์เหล่านี้ ตรวจสอบให้แน่ใจว่าการนัดหมายมีการจองที่เชื่อมโยงอยู่ จากนั้นปิดใช้งานการตั้งค่า รวมการนัดหมาย จาก พารามิเตอร์การจัดกำหนดการ การปิดใช้งานการตั้งค่านี้จะซ่อนการนัดหมายทั้งหมดที่ไม่มีการจองทรัพยากรที่สามารถจองได้ซึ่งเชื่อมโยงกับการนัดหมายบนตารางกำหนดการ

การกำหนดรูปแบบของเทมเพลตการจองขั้นสูงโดยใช้ CSS

คุณสามารถเพิ่มลักษณะให้กับเทมเพลตการจองที่กำหนดเองได้ด้วย CSS ไปที่ การจัดกำหนดการทรัพยากร > การจัดการ > พารามิเตอร์การจัดกำหนดการ และตั้งค่า ปิดใช้งานการตรวจแก้เทมเพลต HTML เป็น ใช่ เพื่อรวมคำสั่ง CSS ลงในเทมเพลตการจอง

ในตัวอย่างนี้ เราขยายตัวอย่างเทมเพลตการจองแบบกำหนดเองจากส่วนก่อนหน้า เราใช้ CSS เพื่อเพิ่มการให้คะแนนของลูกค้าและไอคอนบริการตามค่าเงื่อนไขในเรกคอร์ดบัญชีและใบสั่งงาน การเลือกกำหนดได้เพิ่มฟิลด์ new_customerrating ในเอนทิตีบัญชี บัญชี และเผยแพร่ฟิลด์นั้นไปยังเอนทิตีใบสั่งงานที่มีช่วงจำนวนเต็มตั้งแต่ 1 ถึง 10 เราต้องการให้เทมเพลตการจองแสดงภาพการให้คะแนนของลูกค้าด้วยดาวสีเทา ในการแสดงการให้คะแนนของลูกค้า เรายังเพิ่มดาวสีส้ม 5 ดวง แต่แสดงเฉพาะเปอร์เซ็นต์ของดาวเหล่านี้ ซึ่งสอดคล้องกับการให้คะแนนของลูกค้า 1-10

เรายังต้องการให้ผู้จัดส่งเห็นว่าใบสั่งงานเป็นการเรียกใช้บริการหรือเป็นงานชนิดอื่นหรือไม่ ฟิลด์ที่กำหนดเอง new_isservicecall บนเอนทิตี ใบสั่งงาน มีค่าที่เป็นไปได้คือ 0 หรือ 1 ใช้วิธีการเดียวกันกับก่อนหน้า ก่อนอื่นเราต้องวาดประแจสีเทาเป็นพื้นหลัง วางประแจสีส้มซ้อนทับ และจำกัดขนาดไว้ที่ 0% (new_isservicecall = 0) หรือ 100% (new_isservicecall = 1)

เพิ่ม HTML ต่อไปนี้ และข้อความ CSS ไปยังฟิลด์ เทมเพลตการจอง ใน การตั้งค่าแท็บตารางกำหนดการ

<div style="line-height: 11px !important; width: 99%; overflow: hidden; display: block; text-overflow: ellipsis;">
<div class="back-stars" style="color: #AAAAAA; position: relative; display:inline-block;">
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
<div class="customerrating" style="width:{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.new_customerrating}0%; color: #FFBC0B; position: absolute; top: 0; left:0; overflow: hidden; display:-webkit-box">
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
    <i class="fa fa-star" aria-hidden="true"></i>
</div>
</div>
<div class="repair-back" style="color: #AAAAAA; position: relative; display:inline-block; padding-left:10px; vertical-align:text-top;">
    <i class="fa fa-wrench" aria-hidden="true"></i>
<div class="repair" style="width:{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.new_isservicecall}00%; color: #FFBC0B; position: absolute; top: 0; left:0; padding-left:10px; overflow: hidden; display:-webkit-box">
    <i class="fa fa-wrench" aria-hidden="true"></i>
</div>
</div>
<br/>
WO:
<b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_name}</b><br/>
Account: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_account_msdyn_workorder_ServiceAccount.name}</b><br/>
Incident: <b>{msdyn_msdyn_workorder_bookableresourcebooking_WorkOrder.msdyn_primaryincidenttype}</b><br/>
Duration: <b>{duration} minutes</b><br/>
</div>

ขณะนี้ เทมเพลตการจองบนตารางกำหนดการประกอบด้วยการแสดงภาพของการให้คะแนนของลูกค้าและชนิดของงาน