แชร์ผ่าน


แปลงโซนเวลา

บทความนี้แสดงขั้นตอนในการแปลงโซนเวลาเป็นโซนเวลาที่กำหนดไว้ในทริกเกอร์หรือการดำเนินการของ Power Automate

เมื่อส่งวันที่เวลาผ่านทริกเกอร์และการดำเนินการต่างๆ ใน Power Automate คุณอาจพบว่าโซนเวลาไม่เป็นไปตามที่คุณคาดหวัง หรือคุณอาจต้องการแปลงโซนเวลา (บ่อยครั้งเป็นเวลามาตรฐานสากล (UTC)) ไปเป็นเวลาท้องถิ่นของคุณ คุณสามารถทำได้โดยใช้การดำเนินการ แปลงโซนเวลา หรือนิพจน์ convertTimeZone

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

แปลงโซนเวลาโดยใช้การดำเนินการ

Power Automate มีการดำเนินงานภายในเรียกว่า แปลงโซนเวลา

  1. ลงชื่อเข้าใช้ Power Automate

  2. ค้นหาโฟลว์ของคุณ และเลือก แก้ไข เพื่อเพิ่มการดำเนินการ

  3. ในช่อง ค้นหา พิมพ์ แปลงโซนเวลา และเลือกการทำงาน แปลงโซนเวลา ที่อยู่ภายใน

    ภาพหน้าจอเพื่อค้นหาการดำเนินการแปลงโซนเวลาในโฟลว์

  4. เพิ่มอินพุตที่จำเป็นและเป็นทางเลือกสำหรับการดำเนินการ แปลงโซนเวลา

    • เวลาฐาน: วันที่เวลาที่คุณต้องการแปลง
    • โซนเวลาต้นทาง: โซนเวลาที่วันที่เวลาอยู่ในปัจจุบัน
    • โซนเวลาปลายทาง: โซนเวลาที่คุณต้องการแปลงวันที่ของคุณ
    • สตริงรูปแบบ(ไม่บังคับ): สตริงที่ระบุรูปแบบที่ต้องการของเวลาที่แปลง

    หากต้องการค้นหาโซนเวลาปัจจุบัน โปรดไปที่ส่วน สถานการณ์รูปแบบทั่วไป ในบทความนี้

แปลงโซนเวลาโดยใช้นิพจน์

Power Automate มีฟังก์ชันนิพจน์ convertTimeZone ที่แปลงการประทับเวลาจากโซนเวลาต้นทางไปเป็นโซนเวลาเป้าหมาย

ภาพหน้าจอแสดงให้เห็นว่า Power Automate มีฟังก์ชันนิพจน์สำหรับการแปลงโซนเวลา

นี่คือตัวอย่างของฟังก์ชันในคอนโซล:

convertTimeZone(timestamp: string, sourceTimeZone: string, destinationTimeZone: string, format?: string)

ฟังก์ชันนี้ใช้พารามิเตอร์ต่อไปนี้:

  • timestamp: วันที่เวลาที่คุณต้องการแปลง
  • sourceTimeZone: โซนเวลาที่วันที่เวลาอยู่ในปัจจุบัน
  • destinationTimeZone: โซนเวลาที่คุณต้องการแปลงวันที่ของคุณ
  • format (ไม่บังคับ): รูปแบบของโซนเวลาที่คุณต้องการแปลงวันที่ของคุณ

ตัวอย่าง: แปลงโซนเวลา

ตัวอย่างนี้แปลงโซนเวลาเป็นโซนเวลาและรูปแบบที่ระบุ

convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')

ส่งคืนผลลัพธ์: Monday, January 1, 2018

ตัวอย่าง: ใช้เนื้อหาแบบไดนามิก

นี่คือตัวอย่างการใช้เนื้อหาแบบไดนามิกในนิพจน์ ที่นี่ การประทับเวลา triggerBody()?['Date'] เป็นเนื้อหาแบบไดนามิกที่คุณต้องการจัดรูปแบบ โซนเวลาต้นทางคือ UTC โซนเวลาปลายทางคือ Eastern Standard Time รูปแบบคือสตริงรูปแบบที่กำหนดเอง HH:mm

convertTimeZone(triggerBody()?['Date'],'UTC','Eastern Standard Time','HH:mm')

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับฟังก์ชันนิพจน์นี้ ให้ไปที่ convertTimeZone

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับพารามิเตอร์สตริงรูปแบบ ให้ไปที่ สตริงรูปแบบวันที่และเวลามาตรฐาน และ สตริงรูปแบบวันที่และเวลาที่กำหนดเอง

สถานการณ์รูปแบบทั่วไป

ส่วนนี้ครอบคลุมถึงสถานการณ์ต่างๆ และวิธีการใช้รูปแบบที่เหมาะสม

ถอดรหัสวันที่เวลา

  • วันที่เวลาอาจมีรูปแบบที่แตกต่างกัน หากวันที่เวลาของคุณมี Z ต่อท้าย แสดงว่าเป็นเวลา UTC

    ตัวอย่าง: 2020-04-10T01:28:14.0406387Z

  • คุณอาจได้รับข้อผิดพลาดที่ระบุว่าสตริงวันที่เวลาของคุณอยู่ในรูปแบบที่ไม่ถูกต้อง

    ตัวอย่าง: 'สตริงวันที่เวลาต้องตรงกับรูปแบบ ISO8601'

    หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีจัดรูปแบบสตริงวันที่เวลาอย่างถูกต้อง โปรดไปที่ convertTimeZone

ตรวจสอบโซนเวลาของเอาต์พุต

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

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

ภาพหน้าจอแสดงตัวอย่างการตรวจสอบรูปแบบเอาต์พุตวันที่เวลา

วันที่เวลานี้ใช้รูปแบบวันที่เวลา ISO-8601 การดำเนินงานนี้จะส่งออกวันที่เวลาในโซนเวลา UTC

แปลงการประทับเวลาเป็นหรือจาก UTC

หากต้องการแปลงการประทับเวลาจากโซนเวลาต้นทางเป็น UTC หรือจาก UTC เป็นโซนเวลาเป้าหมาย ให้ใช้ฟังก์ชันนิพจน์ convertFromUtc และ convertToUtc

ข้อจำกัด

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