Tüm Ürünler
Search
Belge Merkezi

DataWorks:Zamanlama parametresi biçimleri

Son Güncelleme:Oct 05, 2026

Zamanlama parametreleri, yinelenen iş akışlarında tarihleri kodun içine sabit olarak yazma ihtiyacını ortadan kaldırarak çalışma zamanında koddaki zamana dayalı değerlerin dinamik olarak değiştirilmesini sağlar. Bu konuda parametre değerlerinin desteklenen biçimleri ve kullanımı açıklanmaktadır.

Önemli

Zamanlama parametrelerini nasıl yapılandıracağınızı bildiğinizden emin olun. Ayrıntılar için bkz. Zamanlama parametrelerini yapılandırma ve kullanma.

Temel kavramlar: Zaman temel çizgileri

Zaman parametreleri, çalışma zamanında zaman dizelerini dinamik olarak değiştirir. DataWorks'teki tüm zaman parametreleri aşağıdaki iki temel zaman çizgisine dayanır.

Kavram

Açıklama

Varsayılan

Özel biçim

Hassasiyet

İş tarihi

Bir görevin planlanan çalıştırma tarihinden önceki gün. T+1 çevrimdışı hesaplama senaryolarında, iş verilerinin oluşturulduğu tarihi temsil eder.

Örneğin, dünün satış gelirini hesaplamak için bugün bir görev çalıştırırsanız "dün", işlemlerin gerçekleştiği tarihi yani iş tarihini ifade eder.

${yyyymmdd}

${...}

Yıl-ay-gün

Planlanan zaman

Görevin zamanlama yapılandırmasında ayarlanan planlanan zaman. Çalışma zamanında sistem bunu geçerli güne çözümler. Görevin teorik çalıştırma zamanını temsil eder ve kaynak kuyruğa alma veya gecikmeler nedeniyle kaymaz.

$[yyyymmddhh24miss]

$[...]

Yıl-ay-gün-saat-dakika-saniye

Özet:

  • İş tarihi ≈ Dün (verinin tarihi)

  • Planlanan zaman ≈ Bugün (görevin çalıştığı zaman)

Tipik bir T+1 görevi, dünden (iş tarihi) gelen verileri işlemek üzere bugün (planlanan zaman) erken saatlerde başlar.

Parametre değeri ifadesi

Zamanlama parametreleri aşağıdaki türde değerleri destekler:

  • Özel zaman parametreleri: İki zaman temel çizgisine (iş tarihi ve zamanlama zamanı) dayalı olarak değerleri dönüştüren ${...} ve $[...] gibi ifadeler. Daha fazla bilgi için bkz. Özel zaman parametreleri.

  • Yerleşik sistem parametreleri: İş tarihi, iş ayı veya iş akışı kimliği gibi değerler döndüren $bizdate, $bizmonth ve $jobid gibi önceden tanımlanmış değişkenler. Bunlar yalnızca zamana dayalı değerlerle sınırlı değildir. Daha fazla bilgi için bkz. Yerleşik sistem parametreleri.

  • Sabitler: '123' ve 'abc' gibi değişmez değerler.

Önemli

Özel karakter kısıtlamaları: Parametre ifadeleri boşluk veya eşittir işaretini (=) içeremez.

Kullanım

image

Bir zamanlama parametresi için atama mantığını, Scheduling Parameter > scheduling configuration belirterek tanımlarsınız. Parametreyi tanımladıktan sonra kodunuzda ${parameter name} sözdizimini kullanarak buna başvurabilirsiniz. Ayrıntılı talimatlar için bkz. Zamanlama parametrelerini yapılandırma ve kullanma.

  • İş tarihini ve planlanan zamanı temsil etmek için sistem yerleşik parametrelerini $bizdate ve $cyctime kullanın. Bu parametreler aşağıdaki değerlere çözülür:

    • $bizdate=${yyyymmdd}

    • $cyctime=$[yyyymmddhh24miss]

      image

      image

      Yukarıdaki örnekler, $bizdate ( ${yyyymmdd} şeklinde çözümlenir) ve $cyctime ( $[yyyymmddhh24miss] şeklinde çözümlenir) parametre tanımlarını ve iş tarihinin 2025-10-16 olduğu durumdaki önizleme sonuçlarını göstermektedir.
  • Varsayılan temel zaman değerleri ihtiyaçlarınızı karşılamıyorsa, iki temel zamanı özel zaman parametrelerine dönüştürmek için ${...} ve $[...] sözdizimini kullanın.

Özel zaman parametreleri

DataWorks, sırasıyla ${...} ve $[...] biçimlerini kullanarak iş tarihini ve zamanlama zamanını almayı destekler. Bu biçimler, iş gereksinimlerini karşılamak için zaman değerlerini dönüştürmenize olanak tanır. Aşağıdaki örneklerde, bir düğümün her gün 02:30:45'te çalışacak şekilde planlandığı ve iş tarihinin 20251031 olduğu varsayılmaktadır. Temel zamanlar şunlardır:

  • İş tarihi: ${yyyymmdd} değeri 20251031'dir.

  • Zamanlama zamanı: $[yyyymmddhh24miss] değeri 20251101023045'tir.

${...} ve $[...] arasındaki temel farklar

${...} ve $[...] biçimleri, zaman temel çizgileri ve hesaplama yetenekleri açısından farklılık gösterir. Bunların karıştırılması veri hatalarına yol açabilir.


Karşılaştırma


${...} (İş tarihi)


$[...] (Zamanlama zamanı)


Zaman temel çizgisi


İş tarihi (T-1)


Zamanlama zamanı (T)


Zaman hassasiyeti


Gün (yıl, ay, gün)


Saniye (yıl, ay, gün, saat, dakika, saniye)


Desteklenen ofsetler


Yıl, ay, hafta ve gün için ofset hesaplamalarını destekler.


Gün, saat ve dakika için ofset hesaplamalarını destekler.


Temel sınırlamalar


Saat, dakika veya saniye gibi daha küçük zaman birimleri için biçimlendirme veya ofset hesaplamalarını desteklemez.

$[yyyy±N] veya $[mm±N] gibi sözdizimleri kullanarak doğrudan yıl veya ay ofsetleri desteklenmez. Bu ofsetler için add_months işlevini kullanmanız gerekir.


Eşdeğer sistem parametresi


${yyyymmdd} , $bizdate ile eşdeğerdir


$[yyyymmddhh24miss] , $cyctime ile eşdeğerdir

Zaman biçimlendirme

Zaman parametreleri oluşturmak için ${...} veya $[...] biçimlerini kullanın. İş tarihinden N yıl, ay veya gün önceki veya sonraki tarihleri oluşturmak için yyyy, yy, mm ve dd gibi biçim kodlarını birleştirin.

Kod

Açıklama

${...} (İş tarihi)

$[...] (Zamanlama zamanı)

Örnek

Sonuç

Örnek

Sonuç

yyyy

4 basamaklı yıl

${yyyy}

2025

$[yyyy]

2025

mm

2 basamaklı ay

${mm}

10

$[mm]

11

dd

2 basamaklı gün

${dd}

31

$[dd]

01

hh24

24 saatlik formatta saat

Desteklenmez (gün düzeyinde hassasiyet)

-

$[hh24]

02

hh / hh12

12 saatlik formatta saat

-

$[hh]

02

mi

Dakika

-

$[mi]

30

ss

Saniye

-

$[ss]

45

yyyymm

Yıl ve ay

${yyyymm}

202510

$[yyyymm]

202511

yyyy_mm

Alt çizgi ile biçimlendirilmiş yıl ve ay

${yyyy_mm}

2025_10

$[yyyy_mm]

2025_11

yyyy-mm-dd

Tire ile biçimlendirilmiş tarih

${yyyy-mm-dd}

2025-10-31

$[yyyy-mm-dd]

2025-11-01

yyyy-mm-dd hh24:mi:ss

Tire ve iki nokta üst üste ile biçimlendirilmiş tarih ve saat

Desteklenmez (gün düzeyinde hassasiyet)

-

Bu biçime dize birleştirme kullanılarak ulaşılabilir. Bkz. Dize birleştirme: Durum 2.

Ofset hesaplama

Ofset hesaplama, bir iş tarihine veya zamanlama zamanına zaman eklemenizi veya çıkarmanızı sağlar. Zaman temel çizgisine göre N yıl, ay, gün, saat veya dakika ofsetleri uygulayabilirsiniz. Saat ve dakika ofsetleri yalnızca zamanlama zamanı için desteklenir. ${...} ve $[...] farklı zaman hassasiyeti düzeylerini destekledikleri için ofset yetenekleri farklıdır.

  1. ${...} ofset hesaplama

    • Temel yetenek: Yıl, ay, hafta ve gün için tamsayı ofsetlerini destekler.

      Önemli

      Saat ve dakika ofsetleri desteklenmez. Örneğin, ${yyyy-mm-dd-1/24} geçersiz bir sözdizimidir.

    • Sözdizimi: ${<time_format><±N>}; burada N'nin birimi, biçimdeki en küçük birimdir (örneğin yyyymm veya yyyymmdd).


      Gereksinim


      Ofset birimi


      Sözdizimi


      Örnek


      N yıl önce/sonra


      Yıl


      ${yyyy±N} veya ${yy±N}


      Önceki yılı alın: ${yyyy-1}


      N ay önce/sonra


      Ay


      ${yyyymm±N}


      Önceki ayı alın: ${yyyymm-1}


      N hafta önce/sonra


      Hafta


      ${yyyymmdd±7*N}


      Önceki haftayı alın: ${yyyymmdd-7*1}


      N gün önce/sonra


      Gün


      ${yyyymmdd±N}


      Önceki günü alın: ${yyyymmdd-1}

  2. $[...] ofset hesaplama

    • Temel yetenek: Gün, saat ve dakika için kesirli ofsetleri destekler.

      Önemli

      $[...] biçimi, N yıl veya ay öncesine ait tarihleri almak için $[yyyy-N] veya $[mm-N] gibi ifadeleri kullanamaz. Yıl veya ay ofsetleri uygulamak için add_months işlevini kullanmanız gerekir.

    • Sözdizimi: $[<time_format><±N>] ; burada N bir günün kesrini temsil eder: N saatlik ofset için **N/24 ve N dakikalık ofset için N/24/60** kullanın.

      Gereksinim

      Ofset birimi

      Sözdizimi

      Örnek

      N yıl önce/sonra

      Yıl

      N yıl sonra: $[add_months(yyyymmdd,12N)]
      N yıl önce: $[add_months(yyyymmdd,-12N)]



      Önceki yılı alın: $[add_months(yyyymmdd,-12)]

      N ay önce/sonra

      Ay

      N ay sonra: $[add_months(yyyymmdd,N)]
      N ay önce: $[add_months(yyyymmdd,-N)]



      Önceki ayı alın: $[add_months(yyyymmdd,-1)]
      Sonraki ayı alın: $[add_months(yyyy_mm,1)]

      N hafta önce/sonra

      Hafta

      $[yyyymmdd±7*N]

      Önceki haftayı alın: $[yyyymmdd-7*1]

      N gün önce/sonra

      Gün

      $[yyyymmdd±N]

      Önceki günü (dünü) alın: $[yyyymmdd-1]

      N saat önce/sonra

      Saat

      Kullanılabilir biçimler:

      • $[hh24miss±N/24], $[hh24±N/24]

      • $[<custom_time_format>±N/24]

      Farklı biçimlerde önceki saati alın:

      • Ay: $[mm-1/24]

      • Yıl: $[yyyy-1/24]

      • Yıl ve ay: $[yyyymm-1/24]

      • Yıl, ay ve gün: $[yyyymmdd-1/24]

      • Önceki gün ve önceki saat: $[yyyymmdd-1-1/24]

      N dakika önce/sonra

      Dakika

      Kullanılabilir biçimler:

      • $[hh24miss±N/24/60]

      • $[yyyymmddhh24miss±N/24/60]

      • $[mi±N/24/60]

      • $[<custom_time_format>±N/24/60]

      Farklı biçimlerde zamanlama zamanından 15 dakika önceki zamanı alın:

      • $[yyyy-15/24/60]

      • $[yyyymm-15/24/60]

      • $[yyyymmdd-15/24/60]

      • $[hh24-15/24/60]

      • $[mi-15/24/60]

      Birleşik ofset

      Gün + Saat

      $[yyyymmdd±N±M/24]; burada N gün ofseti ve M saat ofsetidir.

      Örnek: Önceki gün ve önceki saat için zamanı alın → $[yyyymmdd-1-1/24]

      Not
      • Gün aşımı işlemesi: Saat ve dakika ofsetleri, gün sınırını aşan bir zamanla sonuçlanabilir. Bunun nasıl ele alınacağına ilişkin ayrıntılar için bkz. Bir saat ofsetlediğinde gün aşımı parametre değiştirmenin nasıl ele alınacağı.

      • Ay sonu kalibrasyonu: Bir ay sonu tarihine ay ofseti uyguladığınızda, hedef ay daha az güne sahipse sonuç otomatik olarak o ayın son gününe kalibre edilir. Örneğin, 2025-03-31 tarihinden bir ay çıkarmak Şubat ayında 31 gün olmadığı için 2025-02-28 sonucunu döndürür.

Motor işlevleri kullanılarak ikincil dönüşüm

Yerleşik biçimlendirme ve ofset yetenekleri tam olarak ihtiyacınız olan değeri üretemiyorsa (örneğin, önceki ayın son günü), düğümün motor işlevlerini veya bir atama düğümünü kullanarak ikincil bir dönüşüm uygulayın.

Bkz.: Zamanlama parametresi dönüş değerlerinin ikincil işlenmesi için tipik senaryolar .

Dize birleştirme

Yerleşik sözdizimi tarafından desteklenmeyen yapılandırılmış tarih dizeleri oluşturmak için dize birleştirmeyi kullanın. Bu yöntem, bir zamanlama parametresi tarafından oluşturulan bir tarih parçasını sabit bir dizeyle birleştirir.

Durum 1: Her ayın ilk gününü dinamik olarak alma

  • Senaryo: Görevin hangi günde çalıştığından bağımsız olarak, geçerli ayın ilk gününü yyyymm01 biçiminde temsil eden bir dizeye ihtiyacınız var.

  • Uygulama:

    1. Yıl ve ay kısmını çıkarın: Geçerli iş tarihinin yıl ve ayını almak için ${yyyymm} kullanın. Örneğin, iş tarihi 20231027 ise sonuç 202310 olur.

    2. Çıkarılan yıl ve ayı sabit dize '01' ile birleştirin.

    3. Parametre çağrısı: first_day_of_month=${yyyymm}01

  • Sonuç: Görev çalıştığında, ${first_day_of_month} yerine 20231001 gelir.

Durum 2: yyyy-mm-dd hh24:mi:ss biçiminde zaman damgası oluşturma

  • Senaryo: 2023-11-01 02:30:45 gibi yyyy-mm-dd hh24:mi:ss biçiminde bir zaman damgası oluşturmanız gerekir.

  • Uygulama:

    1. datetime1 ve datetime2 olmak üzere iki parametre tanımlayın. Bunları şu şekilde ayarlayın: datetime1=$[yyyy-mm-dd] ve datetime2=$[hh24:mi:ss].

    2. datetime1 ve datetime2 parametrelerini bir boşlukla ayırarak birleştirin.

    3. Parametre çağrısı: pt=${datetime1} ${datetime2}

  • Sonuç: Görev çalıştığında, ${datetime1} ${datetime2} yerine 2023-11-01 02:30:45 gelir.

Yerleşik sistem parametreleri

DataWorks aşağıdaki yerleşik sistem parametrelerini sağlar. Sabit zaman biçimlerine ve sınırlı esnekliğe sahip olduklarından, bunun yerine özel zaman parametreleri kullanılması önerilir.

Parametre

Açıklama

$bizdate

yyyymmdd biçiminde iş tarihi; ${yyyymmdd} özel parametresi ile tutarlıdır.

Genellikle görevin planlanan çalıştırma zamanından önceki güne varsayılan olarak ayarlanır.

$cyctime

yyyymmddhh24miss biçiminde planlanan zaman; $[yyyymmddhh24miss] özel parametresine eşdeğerdir.

$gmtdate

yyyymmdd biçiminde geçerli tarih.

Varsayılan olarak geçerli tarihtir. Bir veri geri doldurma için tarih iş tarihi + 1 şeklindedir.

$bizmonth

yyyymm biçiminde iş ayı.

  • İş tarihi geçerli ay içindeyse, $bizmonth = business_date_month - 1 olur.

  • İş tarihinin ayı geçerli ay ile aynı değilse, $bizmonth = iş tarihinin ayı olur.

$jobid

Görevi içeren iş akışının kimliği.

$nodeid

Düğümün kimliği.

$taskid

Düğümün oluşturduğu örneğin kimliği.

Parametre değiştirme örnekleri

Bir zamanlama parametresi için değiştirme değeri, bir örnek oluşturulduğunda belirlenir ve gerçek başlangıç zamanından etkilenmez.

image

Senaryo 1: normal zamanlama

Normal zamanlamada, parametre değiştirme iki zaman temel çizgisine dayanır: iş tarihi ve zamanlama zamanı.

  • ${...} (iş tarihi): Değer, örneğin iş tarihinden türetilir.

  • $[...] (zamanlama zamanı): Değer, örneğin zamanlama zamanından türetilir.

Örneğin, A adlı ve 00:00 saatinde çalışacak şekilde planlanan günlük bir görevi ve aşağıdaki parametreleri ele alalım:

  • yesterday=${yyyymmdd}

  • today=$[yyyymmddhh24miss]

Aşağıdaki tabloda, bu parametrelerin belirli bir örnek için nasıl değiştirildiği gösterilmektedir:


Zamanlama zamanı


İş tarihi


yesterday=${yyyymmdd}


today=$[yyyymmddhh24miss]


2025-3-15 00:00:00


2025-3-14


20250314


20250315000000

Senaryo 2: veri geri doldurma

Veri geri doldurma sırasında, parametre değiştirme mantığı seçilen iş tarihine göre değişir. Bu durum özellikle zamanlama zamanına bağlı parametreleri etkiler.

  • ${...} (iş tarihi): Temel çizgi, manuel olarak seçilen iş tarihidir.

  • $[...] (zamanlama zamanı): Temel çizgi, manuel olarak seçilen iş tarihi + 1 gündür.

Örneğin, A görevini iş tarihi olarak 2025-03-15 ile geri doldurursanız:


Seçilen iş tarihi


yesterday=${yyyymmdd}


today=$[yyyymmddhh24miss]


2025-03-15


20250315


20250316000000 (Temel çizgi 2025-03-15 + 1 gün'dür)

SSS

Zamanlama parametreleriyle ilgili sorular için bkz. Zamanlama Parametreleri SSS.

İlgili belgeler