
ฟังก์ชันบล็อก TIMESWITCH_ADD สร้างหรือแก้ไขเหตุการณ์ในนาฬิกาเวลา
หมายเหตุ: นาฬิกาเวลาต้องเก็บไว้ในองค์ประกอบเดียวกัน
คำแนะนำ: เพื่อแก้ไขเหตุการณ์ คุณสามารถอ่านค่าทั้งหมดโดยใช้ฟังก์ชันบล็อก TIMESWITCH_GET
อินพุตนี้สร้างหรือแก้ไขเหตุการณ์ในปฏิทินเมื่อมีขอบเขตบวก ถ้าแน่ใจว่าอินพุตนี้จะเป็นจริงเสมอ แล้วเหตุการณ์จะถูกสร้างขึ้นใหม่เมื่อถูกลบ อินพุตนี้ไม่สามารถตรวจจับการเปลี่ยนแปลงของเหตุการณ์ได้
สำคัญ: ควรหลีกเลี่ยงการสร้างและลบในเวลาเดียวกัน เพราะอาจทำให้ SSD ถูกใช้งานมากเกินไป
นี่คือฐานข้อมูลของนาฬิกาเวลาที่ถูกเก็บไว้เป็นสตริงตัวอักษร นี้ต้องมีอยู่แล้วในฟังก์ชันบล็อก TIMESWITCH ดูขั้นตอนของโปรแกรมด้วย เพื่อให้แน่ใจว่าฟังก์ชันบล็อกนี้จะถูกเริ่มต้นอย่างถูกต้อง
กำหนด ID ของเหตุการณ์เป็นสตริงตัวอักษร นี่ทำให้สามารถระบุได้อย่างแน่นอนและป้องกันความขัดแย้งกับเหตุการณ์อื่นๆ ID ควรประกอบด้วยตัวอักษรและตัวเลขเท่านั้น การแปลงตัวใหญ่-ตัวเล็กจะถูกพิจารณา
หมายเหตุ: ID ควรกำหนดให้เป็นเอกลักษณ์สำหรับทุกปฏิทิน เหตุการณ์สามารถถูกคัดลอกโดยผู้ใช้ในการแสดงผลภาพไปยังปฏิทินอื่น
ชื่อของเหตุการณ์เป็นสตริงตัวอักษร นี่ไม่ควรมีการเปลี่ยนแถว ถ้า ADD เป็นจริง การเปลี่ยนแปลงจะถูกเขียนลงในปฏิทินทันที
เวลาเริ่มต้นของเหตุการณ์ในรูปแบบ DT# ถ้า ADD เป็นจริง การเปลี่ยนแปลงจะถูกเขียนลงในปฏิทินทันที
คำแนะนำ: เวลาเปิด-ปิดสามารถคำนวณได้โดยใช้ฟังก์ชันบล็อก MKTIME, STR2DT และ EASTER_DATE
เวลาสิ้นสุดของเหตุการณ์ในรูปแบบ DT# ถ้า ADD เป็นจริง การเปลี่ยนแปลงจะถูกเขียนลงในปฏิทินทันที ถ้าวันที่สิ้นสุดน้อยกว่า DT_START DT_END จะถูกกำหนดเป็นเวลาเริ่มต้น
ถ้าไม่ได้กำหนดอินพุตนี้ ค่าที่เท่ากับ DT_START จะถูกใช้ และเหตุการณ์จะสร้างปัลส์
อินพุตนี้ทำให้เหตุการณ์ในปฏิทินไม่สามารถใช้งานได้ ถ้า ADD เป็นจริง การเปลี่ยนแปลงจะถูกเขียนลงในปฏิทินทันที
คุณสามารถกำหนดการซ้ำเป็นสตริงตัวอักษรได้ที่อินพุตนี้ นี่สามารถสร้างขึ้นโดยใช้ฟังก์ชันช่วยเหลือ REPEAT_YEARLY, REPEAT_MONTHLY, REPEAT_WEEKLY, REPEAT_DAILY และ REPEAT_HOURLY หรือถูกประกาศตามที่อธิบายไว้
สตริงตัวอักษรนี้สามารถแบ่งด้วยเครื่องหมายสองจุดได้เช่นนี้:
w:2:4:135
ตัวเลขแรก (ตัวพิมพ์เล็ก) กำหนดช่วงเวลาของการซ้ำ:
| สัญลักษณ์ | ช่วงเวลา |
|---|---|
| h | ทุกชั่วโมง |
| d | ทุกวัน |
| w | ทุกสัปดาห์ |
| m | ทุกเดือน |
| y | ทุกปี |
ตัวเลขที่สองกำหนดช่วงเวลาของการซ้ำเป็นจำนวนเต็ม ตัวเลขน้อยที่สุดคือ 1
ตัวเลขที่สามกำหนดสิ้นสุดของการซ้ำ นี่สามารถกำหนดได้ในรูปแบบต่างๆ ดังนี้:
ตัวเลขที่สี่กำหนดวันในสัปดาห์ที่เกิดการซ้ำ นี่ใช้เฉพาะกับการซ้ำรายสัปดาห์หรือรายเดือน
ตรวจสอบว่าวันในสัปดาห์ปัจจุบันมีอยู่ในตัวเลขหรือไม่ วันหลายวันสามารถระบุได้โดยการใส่ต่อกัน เช่น 135 สำหรับวันจันทร์ วันพุธ และวันศุกร์ ถ้าไม่มีค่า (0 หรือสตริงตัวอักษรว่าง) การซ้ำจะไม่เกิดขึ้นในวันใดๆ
| จำนวน | วันในสัปดาห์ |
|---|---|
| 1 | วันจันทร์ |
| 2 | วันอังคาร |
| 3 | วันพุธ |
| 4 | วันพฤหัสบดี |
| 5 | วันศุกร์ |
| 6 | วันเสาร์ |
| 7 | วันอาทิตย์ |
กำหนดว่าวันในสัปดาห์ใดที่เหตุการณ์จะถูกซ้ำ สนับสนุนตัวเลขจาก -1 ถึง 4 0 หรือไม่มีการประกาศจะซ้ำทุกเดือนในวันเดียวกัน ไม่ขึ้นอยู่กับวันในสัปดาห์ วันในสัปดาห์จะถูกนำมาจากวันที่แรก
| ค่า | คำอธิบาย |
|---|---|
| -1 | ซ้ำในวันสุดท้ายของสัปดาห์ |
| 0 | ซ้ำในวันเดียวกัน (ค่าเริ่มต้น) |
| 1 | ซ้ำในวันแรกของสัปดาห์ |
| 2 | ซ้ำในวันที่สองของสัปดาห์ |
| 3 | ซ้ำในวันที่สามของสัปดาห์ |
| 4 | ซ้ำในวันที่สี่ของสัปดาห์ |
เมื่อเกิดข้อผิดพลาด เอาต์พุตนี้จะถูกตั้งเป็นจริง นี่อาจเกิดขึ้นเมื่อปฏิทินไม่มีอยู่หรือ ID ไม่ได้กำหนดหรือไม่ถูกต้อง