Untuk menurunkan offset UTC, kurangi tanggal dan waktu UTC dari tanggal dan waktu lokal yang cocok, dengan tetap memperhitungkan perubahan tanggal. Di Numbers pada Mac, Anda dapat menghitungnya dalam menit tanpa memilih zona waktu bernama.

Panduan ini ditujukan bagi seseorang yang memeriksa timestamp publikasi terhadap padanan UTC-nya. Semua tanggal publikasi di bawah ini bersifat sintetis. Tugasnya adalah mendapatkan offset untuk saat publikasi tersebut dan mencatat apa yang didukung oleh bukti.

Informasi apa yang Anda perlukan sebelum menghitung?

Anda memerlukan dua representasi dari momen publikasi yang sama: tanggal dan waktu lokal yang lengkap, serta tanggal dan waktu UTC yang lengkap. Pastikan keduanya menunjukkan waktu publikasi, bukan yang satu menunjukkan publikasi dan yang lainnya menunjukkan penyuntingan setelahnya. Hubungan keduanya adalah prasyarat; selisih angka yang tampak masuk akal tidak dapat membuktikan bahwa keduanya berpasangan.

Pisahkan keempat konsep ini:

Konsep Contoh sintetis Informasi yang diberikan
Tanggal sipil 2026-07-01 Hari kalender, tanpa waktu jam atau hubungan dengan UTC
Tanggal dan waktu lokal 2026-07-01 05:25:00 Kolom tanggal kalender dan jam yang masih memerlukan offset atau zona untuk menentukan suatu momen
Momen 2026-06-30T23:40:00Z Momen tertentu yang dinyatakan dalam UTC
Offset UTC +05:45 Selisih jam lokal dari UTC pada momen tersebut
Zona waktu bernama Pengenal zona IANA yang diberikan Serangkaian aturan untuk menentukan offset pada momen yang berbeda

Apple membuat pembedaan serupa di Foundation: Date mewakili suatu titik waktu yang tidak bergantung pada kalender atau zona, sedangkan DateComponents mewakili kolom kalender yang dievaluasi menggunakan kalender dan zona waktu. Jadi, string tanggal yang ditampilkan dan suatu momen adalah jenis masukan yang berbeda. Apple: Dates and Times

Untuk lembar kerja ini, gunakan tanggal Gregorian yang valid dan detik bulat dari 00 sampai 59. Simpan string timestamp asli bersama perhitungan Anda. Jika salah satu sumber hanya memberikan tanggal, atau memberikan waktu tanpa tanggalnya, dapatkan informasi yang belum ada sebelum menghitung offset yang tepat.

Bagaimana cara kerja perhitungan offset?

RFC 3339 menetapkan konvensi tanda sebagai waktu lokal dikurangi UTC. Hasil positif berarti jam lokal lebih maju; hasil negatif berarti jam lokal tertinggal. Dapatkan UTC dengan mengurangi offset dari tanggal dan waktu lokal. RFC 3339, section 4.2

Untuk publikasi sintetis pertama, nilai pasangannya adalah:

  • UTC: 2026-06-30T23:40:00Z
  • Lokal: 2026-07-01 05:25:00
  • Selisih: positif 5 jam 45 menit
  • Offset turunan: +05:45

Tanggal lokalnya satu hari lebih kemudian. Menghitung jamnya saja akan menghasilkan selisih negatif yang menyesatkan. Perhitungan eksplisit dalam menit menunjukkan mengapa tanggal penting:

offset_minutes = 1440 × calendar_day_difference
                 + local_clock_minutes
                 - UTC_clock_minutes

calendar_day_difference = +1
local_clock_minutes = 5 × 60 + 25 = 325
UTC_clock_minutes = 23 × 60 + 40 = 1420

offset_minutes = 1440 + 325 - 1420 = 345
345 minutes = 5 hours 45 minutes

Di sini, selisih hari kalender berarti selisih antara tanggal lengkap. Jangan mengurangkan angka hari dalam bulan: 1 Juli dikurangi 30 Juni adalah satu hari, meskipun 1 - 30 bernilai negatif. Lembar kerja di bawah ini membiarkan aritmetika tanggal menangani pergantian bulan.

Bagaimana cara menghitungnya di Numbers pada Mac?

Anda memerlukan Numbers yang terpasang dan spreadsheet berisi satu tabel. Contoh menggunakan nama fungsi bahasa Inggris dan pemisah koma. Jika editor formula Anda mengharapkan pemisah lain, masukkan fungsi melalui Browser Fungsi dan isi kolom argumennya.

1. Buat kolom dengan label yang jelas

Gunakan baris 1 untuk label berikut: UTC fields di A1, Local fields di B1, Offset minutes di C1, dan Reconstructed UTC di D1. Label ini menjelaskan masukan Anda; memasukkan tanggal ke kolom A tidak dengan sendirinya melakukan konversi zona waktu.

Pilih kolom A dan B, lalu gunakan sidebar Format, tab Cell, dan menu Data Format untuk memilih Date & Time. Pilih format tampilan yang menunjukkan tanggal dan waktu lengkap, termasuk detik. Apple menjelaskan kontrol ini dalam panduan pemformatan sel Numbers.

2. Buat kedua nilai secara eksplisit

Klik A2 dan masukkan formula berikut. Tekan Return untuk menerapkannya:

=DATE(2026,6,30)+DURATION(0,0,23,40,0,0)

Di B2, masukkan:

=DATE(2026,7,1)+DURATION(0,0,5,25,0,0)

DATE menerima tahun, bulan, dan hari sebagai angka terpisah, sehingga menghindari string tanggal yang ambigu. DURATION menerima minggu, hari, jam, menit, detik, dan milidetik secara berurutan. Di sini, menambahkan durasi ke setiap tanggal memberikan waktu jamnya. Apple: DATE, Apple: DURATION

Pastikan A2 menampilkan 30 Juni pukul 23:40:00 dan B2 menampilkan 1 Juli pukul 05:25:00. Anda sedang merepresentasikan dua rangkaian kolom kalender untuk dikurangkan. Simpan sufiks UTC asli dalam catatan sumber Anda, alih-alih mengandalkan tampilan sel spreadsheet untuk mengidentifikasi UTC.

3. Kurangi lokal dikurangi UTC

Di C2, masukkan:

=DUR2MINUTES(B2-A2)

Hasil yang diharapkan adalah 345. Pengurangan nilai tanggal/waktu menghasilkan durasi, dan DUR2MINUTES menyatakan durasi itu sebagai jumlah menit. Jika perlu, atur Data Format C2 menjadi Number. Apple: DUR2MINUTES

Untuk memasukkan atau memeriksa formula, pilih selnya lalu ketik =; Numbers akan membuka Formula Editor. Jika formula menampilkan kesalahan, klik indikator kesalahan untuk membaca penjelasannya sebelum melanjutkan. Apple: Menghitung nilai menggunakan data di sel tabel di Numbers pada Mac

4. Tuliskan offset bertanda dan periksa hasilnya

Ubah jumlah menit menjadi jam bulat dan sisa menit. Untuk 345, hasilnya adalah 5 jam dan 45 menit. Karena hasilnya positif, catat +05:45. Hasil -210 akan menjadi -03:30; tanda tersebut berlaku untuk seluruh offset.

Di D2, masukkan perhitungan kebalikannya:

=B2-DURATION(0,0,0,C2,0,0)

Format D2 sebagai Date & Time, dengan kedua komponen ditampilkan. Nilainya seharusnya menunjukkan tanggal dan waktu yang sama dengan A2. Ini memeriksa arah perhitungan dan rekonstruksinya. Namun, ini tidak membuktikan secara mandiri bahwa masukan asli menggambarkan publikasi yang sama.

Contoh mana yang dapat mendeteksi kesalahan tanggal dan tanda?

Gunakan pasangan sintetis ini untuk memeriksa interpretasi Anda. Untuk setiap baris tambahan, buat A dan B dengan DATE ditambah DURATION, lalu gunakan referensi sel baris tersebut dalam pengurangan.

Timestamp publikasi UTC Kolom lokal yang cocok Menit offset Offset
2026-06-30T23:40:00Z 2026-07-01 05:25:00 345 +05:45
2026-07-01T02:15:00Z 2026-06-30 22:45:00 -210 -03:30
2026-08-31T23:30:00Z 2026-09-01 01:30:00 120 +02:00

Pasangan kedua melintasi tanggal sebelumnya. Pasangan ketiga melintasi pergantian bulan dengan offset satu jam penuh. Bersama-sama, contoh ini membantu mengungkap pengurangan yang terbalik, tanggal yang terlewat, dan asumsi bahwa offset harus berupa jam bulat.

Tampilkan cukup banyak angka desimal agar hasil berupa pecahan menit terlihat. Untuk masukan dengan detik bulat ini, pecahan yang tidak terduga perlu diselidiki: periksa detik, presisi masukan, dan apakah catatannya benar-benar cocok. Jangan membulatkannya begitu saja demi mendapatkan offset yang lazim. Offset numerik RFC 3339 memiliki presisi menit, sehingga selisih yang mencakup detik tidak dapat direpresentasikan dengan tepat hanya dengan menambahkan offset HH:MM. RFC 3339, section 4.2

Mengapa Anda tidak dapat menyimpulkan satu zona waktu bernama yang unik?

Offset menjelaskan hubungan pada satu momen. Zona waktu bernama menyediakan aturan untuk menentukan hubungan tersebut pada momen lainnya. RFC 9557 secara eksplisit membedakan konsep-konsep ini dan menjelaskan mengapa offset saja tidak cukup untuk operasi kalender lokal, seperti mencari waktu lokal yang sama satu hari kemudian. Karena itu, offset yang cocok tidak membuktikan satu zona bernama yang unik. RFC 9557: Definisi Zona Waktu

Catat hasilnya sebagai “Offset publikasi turunan: +05:45; zona waktu bernama: tidak diketahui.” Jika nanti Anda memperoleh pengenal zona dari sumbernya, simpan secara terpisah. Publikasi berpasangan tambahan dapat mengungkap offset tambahan, tetapi memilih zona memerlukan bukti di luar sekadar memilih entri yang cocok.

API Apple mengikuti arah perhitungan ini. TimeZone.secondsFromGMT(for:) menerima zona waktu yang sudah ada dan sebuah tanggal untuk menghitung offsetnya. Argumen tanggalnya secara default menggunakan tanggal saat ini, jadi untuk memeriksa publikasi, Anda perlu memberikan momen publikasi. Metode tersebut tidak menerima offset lalu mengembalikan zona bernama asalnya. Apple: secondsFromGMT(for:)

Kapan Anda sebaiknya berhenti dan mendapatkan masukan yang lebih baik?

Ikuti urutan keputusan ini sebelum menerima hasilnya:

  1. Hanya tanggal sipil yang tersedia: dapatkan waktu jam dan acuan UTC. Tanggal saja tidak menentukan suatu momen.
  2. Acuannya memiliki offset numerik yang tidak nol: konversikan ke UTC menggunakan offset yang tercantum sebelum menggunakan lembar kerja ini.
  3. Kedua masukan sudah dikonversi menjadi momen: simpan atau ambil kembali kolom lokal aslinya. Mengurangkan dua representasi dari momen yang sama setelah normalisasi akan menghasilkan nol.
  4. Selisih berubah ketika tanggal ditampilkan: periksa nilai lengkap yang tersimpan. Tanggal yang tersembunyi tetap menjadi bagian perhitungan.
  5. Perhitungan berhasil tetapi pasangannya belum pasti: simpan sebagai selisih kandidat sampai hubungan publikasinya dikonfirmasi.

Numbers dapat diam-diam mengisi komponen yang hilang: Apple menyatakan bahwa memasukkan waktu saja akan menambahkan tanggal hari ini. Menyembunyikan tanggal atau waktu mengubah tampilannya, sedangkan nilainya tetap tersedia untuk perhitungan. Periksa Smart Cell View jika ada hal yang tidak jelas dari tampilan sel. Apple: Memformat tanggal, mata uang, dan lainnya di Numbers pada Mac

Selain itu, timestamp UTC yang berakhir dengan Z menetapkan momen UTC tanpa menetapkan zona lokal asalnya. RFC 9557 memperbarui perlakuan RFC 3339 terhadap Z agar dapat mencakup offset lokal yang tidak diketahui. Karena itu, representasi lokal terpisah penting untuk penurunan ini. RFC 9557, bagian 2.2

Untuk pemeriksaan publikasi yang tuntas, simpan pasangan asli, offset bertanda, dan alasan kedua nilai tersebut mewakili momen yang sama. Dengan begitu, hasilnya dapat direproduksi dan zona bernama tetap tidak diketahui jika bukti tidak mengidentifikasikannya.

Sumber