Ana içeriğe atla
Twenty henüz yerel formül alanlarını desteklemiyor (2026’da geliyor), ancak aynı sonuca iş akışlarını kullanarak ulaşabilirsiniz. Bu geçici çözüm, basit birleştirmelerden karmaşık iş mantığına kadar alan değerlerini otomatik olarak hesaplayıp doldurmanızı sağlar.

Ortak Kullanım Durumları

Kullanım SenaryosuFormül Örneği
Ad SoyadFirst Name + ” ” + Last Name
Beklenen tutarAmount × Probability
Son tarihe kalan günDue Date - Today
Aşamadaki gün sayısıToday - Stage Entry Date
Lead skoruBirden çok kritere dayalı puanlar
Boru hattı aşamalarında zamanı izlemeye dair eksiksiz bir örnek için bkz. Fırsatların Her Aşamada Ne Kadar Kaldığını İzleme.

Temel Formül: Birleştirme

Örnek: Ad Soyad’ı Otomatik Doldur

Amaç: Ad ve soyadı otomatik olarak bir Ad Soyad alanında birleştirmek.

Kurulum

  1. Tetikleyici: Kayıt Güncellenir veya Oluşturulur (Kişiler)
  2. Filtre: Adın veya soyadın değişip değişmediğini kontrol edin
  3. Kod eylemi:
export const main = async (params) => {
  const { firstName, lastName } = params;

  const fullName = [firstName, lastName]
    .filter(Boolean)
    .join(' ');

  return { fullName };
};
  1. Kaydı Güncelle: Ad Soyad’ı {{code.fullName}} olarak ayarla

Sayısal Formül: Beklenen Tutar

Örnek: Beklenen Geliri Hesapla

Amaç: Beklenen tutarı elde etmek için fırsat tutarını olasılıkla çarpın. Tam iş akışı için Boru Hattında Beklenen Tutar Nasıl Gösterilir bölümüne bakın.

Hızlı Kurulum

  1. Tetikleyici: Kayıt Güncellenir (Fırsatlar, Tutar VEYA Olasılık alanı)
  2. Kod eylemi:
export const main = async (params) => {
  const { amount, probability } = params;

  const expectedAmount = (amount || 0) * (probability || 0) / 100;

  return { expectedAmount };
};
  1. Kaydı Güncelle: Beklenen Tutar’ı {{code.expectedAmount}} olarak ayarla

Tarih Formülü: Gün Hesaplaması

Örnek: Görevin Son Tarihine Kalan Gün Sayısı

Amaç: Bir görevin son tarihine kaç gün kaldığını hesaplamak.

Kurulum

  1. Tetikleyici: Kayıt Güncellenir veya Oluşturulur (Görevler, Son Tarih alanı)
  2. Kod eylemi:
export const main = async (params) => {
  const { dueDate } = params;

  if (!dueDate) {
    return { daysUntilDue: null };
  }

  const due = new Date(dueDate);
  const today = new Date();
  const diffTime = due - today;
  const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));

  return { daysUntilDue: diffDays };
};
  1. Kaydı Güncelle: Son Tarihe Kalan Gün’ü {{code.daysUntilDue}} olarak ayarla
Negatif değerler, vadesi geçmiş görevleri belirtir. Bu alanı, görevleri aciliyetine göre filtrelemek veya sıralamak için kullanabilirsiniz.

Koşullu Formül: Lead Skoru

Örnek: Kriterlere Göre Lead Skoru Hesapla

Amaç: Şirket büyüklüğü, sektör ve etkileşime göre lead’leri puanlamak.

Kurulum

  1. Tetikleyici: Kayıt Güncellenir (Kişiler veya Şirketler)
  2. Kod eylemi:
export const main = async (params) => {
  const { companySize, industry, hasEmail, hasPhone, source } = params;

  let score = 0;

  // Company size scoring
  if (companySize === 'Enterprise') score += 30;
  else if (companySize === 'Mid-Market') score += 20;
  else if (companySize === 'SMB') score += 10;

  // Industry scoring
  const targetIndustries = ['Technology', 'Finance', 'Healthcare'];
  if (targetIndustries.includes(industry)) score += 25;

  // Contact info scoring
  if (hasEmail) score += 10;
  if (hasPhone) score += 15;

  // Source scoring
  if (source === 'Referral') score += 20;
  else if (source === 'Website') score += 10;

  return { leadScore: score };
};
  1. Kaydı Güncelle: Lead Skorunu {{code.leadScore}} olarak ayarla

Metin Formülü: Alan Adı Çıkarma

Örnek: E-postadan Alan Adı Çıkar

Amaç: E-posta alan adını otomatik olarak çıkarmak ve saklamak.

Kurulum

  1. Tetikleyici: Kayıt Güncellenir (Kişiler, E-posta alanı)
  2. Kod eylemi:
export const main = async (params) => {
  const { email } = params;

  if (!email) return { domain: null };

  const domain = email.split('@')[1]?.toLowerCase();

  return { domain };
};
  1. Kaydı Güncelle: Alan Adı alanını {{code.domain}} olarak ayarla

En İyi Uygulamalar

Performans

  • Yalnızca ilgili alan değişikliklerinde tetikleyin
  • Hesaplama gerektirmeyen kayıtları atlamak için filtreler kullanın
  • Yüksek hacimli iş akışlarında karmaşık hesaplamalardan kaçının

Hata Yönetimi

  • Hesaplamalardan önce null/undefined değerleri kontrol edin
  • Veri eksikse varsayılan değerleri kullanın
  • Hesaplamalar başarısız olduğunda açık hata mesajları döndürün

Test

  • Sınır durumlarıyla test edin (boş alanlar, sıfır değerler)
  • Etkinleştirmeden önce hesaplamaları manuel olarak doğrulayın
  • Beklenmeyen sonuçlar için iş akışı çalıştırmalarını izleyin

İlgili