Nedir?Salesforce

Salesforce Custom Object Nedir?

Kurumsal veri modelleri esnekliğe ihtiyaç duyduğunda Salesforce’un sunduğu özelleştirme olanakları belirleyici bir avantaj yaratır. Platform içinde süreçlerin gerçek iş mantığına uyarlanmasını sağlayan Salesforce Custom Object, standart nesnelerle sınırlı kalan yapıların ötesine geçerek benzersiz veri ilişkilerinin güvenli ve tutarlı biçimde modellenmesini mümkün kılar. Bu sayede organizasyonel akışlar daha okunabilir bir bütün haline gelir.

Salesforce Custom Object Neyi Temsil Eder?

Salesforce mimarisindeki Custom Object yapıları, CRM’in standart veri modellerini aşan, tamamen organizasyonun kendi süreçlerine hizmet eden nesnelerdir. Bu nesneler yalnızca veri saklayan basit tablolar değildir; layout, ilişki tipleri, paylaşım kuralları, arama davranışları ve API erişimi gibi daha geniş bir bileşen setinin tamamını içerir. Böylece Custom Object, platformda teknik ve operasyonel bir varlık haline gelir.

Veri modeli içindeki konumları, Standard Object’lerle uyumlu bir ilişkisel yapı kurmalarına imkan tanır. Bu durum, süreçlerin yalnızca kayıt tutma düzeyinde değil, aynı zamanda kullanıcı deneyimi, iş akışı tetikleme, raporlama ve entegrasyon katmanlarında da bütünleşik bir tasarım sunmasını mümkün kılar.

Veri Modeli İçindeki Konumu

Custom Object, Salesforce’un metadata-driven yaklaşımının merkezi bileşenlerinden biridir. Bu sayede nesnenin yapısı, davranışları ve ilişkileri metadata katmanında saklanır ve platformun tüm özellikleriyle uyumlu biçimde işlenir. Bu yöntem, veri modelinin yazılım kodundan bağımsız şekilde yönetilmesini sağlar.

Neden Her Organizasyonun Custom Object Kurgusu Benzersizdir?

Her şirketin iş akışı, onay mekanizmaları, veri akışı ve operasyonel öncelikleri farklı yönde gelişir. Bu nedenle Salesforce Custom Object kullanımı, her kurumun kendine özgü modelini yansıtır. Eğitim sektörü ilerleme kayıtlarını tanımlarken, üretim şirketleri bakım çizelgelerini, finans kuruluşları ise sözleşme döngülerini bu yapılarla modelleyebilir.

Salesforce’ta Custom Object Nasıl Oluşturulur?

Salesforce içinde Custom Object oluşturma süreci metadata tabanlı bir mimariye dayanır ve bu mimari kullanıcı arayüzü ve API katmanında tutarlı davranışlar üretir.

Kullanıcı Arayüzü Üzerinden Oluşturma Adımları

Setup (Kurulum) menüsündeki Object Manager (Nesne Yöneticisi) bölümünde yeni bir nesne tanımlandığında etiket, API Name, kayıt adı yapısı, izin mekanizmaları ve nesnenin kullanıcı arayüzünde nasıl görüneceği belirlenir. Bu aşamada seçilen her özellik metadata katmanına yazılır ve nesnenin tüm davranışları için temel referans haline gelir.

Bu yöntem, yöneticilerin teknik bilgi gerekmeden nesne oluşturmasına imkan tanır.

Metadata API ile Oluşturma

Kurumsal ortamlarda nesne oluşturma işlemi çoğunlukla Metadata API üzerinden gerçekleştirilir. Bu yöntem, Git gibi sürüm kontrol sistemleriyle birlikte kullanılarak değişikliklerin izlenebilir ve geri alınabilir şekilde yönetilmesini sağlar.

Tasarım Aşamasında Dikkat Gerektiren Noktalar:

  • Nesnenin yalnızca bugün için değil, gelecekteki veri bütünlüğü açısından da sürdürülebilir bir yapıda olması beklenir. 
  • İlişki tipi seçimi, alan yapısı, isimlendirme standartları ve olası raporlama ihtiyaçları tasarımın önemli bileşenleridir.

Salesforce Custom Object ve Standard Object Farkı

Salesforce platformu Account, Contact ve Opportunity gibi Standard Object’leri varsayılan olarak sunar. Custom Object ise organizasyonun kendine özgü veri mantığını sisteme entegre eder. Aralarındaki farklar yalnızca yapı düzeyinde değil, metadata kontrolü ve esneklik düzeyinde de belirginleşir.

  • Yapısal Farklar: Standard Object üzerinde sınırlı metadata değişikliği yapılabilirken Custom Object, alan yapısından ilişki türlerine kadar tamamen özelleştirilebilir.
  • İşlevsel Farklar: Arama indeksine dahil edilme davranışı, raporlama seçenekleri, layout yapılandırması ve paylaşım kuralları Custom Object’te tam kontrol sağlar.

Standard Object ve Custom Object aşağıdaki tabloda karşılaştırılmıştır:

Özellik Standard Object Salesforce Custom Object
Metadata kontrolü Sınırlı Tam esneklik
API Name Sabit Tanımlama aşamasında belirlenir
Relationship tipi Önceden tanımlı Esnek
Kullanım alanları CRM çekirdeği Sözleşme, eğitim, envanter süreçleri

Salesforce Custom Object Limit ve Ölçeklendirme Yapısı

Salesforce, her Edition için farklı Custom Object limitleri tanımlar ve bu limitler platformun metadata kapasitesinin güvenli şekilde korunmasına hizmet eder. Bu sınırlar, yalnızca saklanabilecek nesne sayısını değil, aynı zamanda alan (field) sayısı, ilişki türleri, API işleme hacmi ve veri yönetişim politikasının tamamını kapsayan bir ölçeklendirme çerçevesi oluşturur.

Platformun ölçeklendirme davranışı yalnızca Custom Object miktarıyla sınırlanmaz. Alan limitleri, index davranışları, relationship kurallarının kısıtları ve API çağrı kapasitesi de veri modelinin uzun vadeli sürdürülebilirliğini belirleyen kritik bileşenlerdir. 

Bu nedenle büyük org yapılarında veri tasarımı, yalnızca operasyonel ihtiyaçlara değil, aynı zamanda büyüme hızına ve org mimarisinin gelecekteki bakım maliyetlerine göre şekillendirilir.

Nesne Sayısı Limitleri

Güncel nesne limitleri, farklı Edition’ların ölçek gerekçelerine göre belirlenmiştir. Örneğin, Essentials ve Professional Edition daha düşük metadata kapasitesi sunarken, Enterprise ve Unlimited Edition daha geniş Custom Object sınırlarıyla kurumsal veri hacmini destekler.

Bu yapı, org büyüdükçe veri modelinin kontrolden çıkmasını engeller ve her org’un ölçeğine uygun, sürdürülebilir bir metadata yönetimi sağlar.

Custom Field Limitleri

Her Custom Object için izin verilen alan sayısı da yine Edition bazlı olarak sınırlandırılır. Bu sınırların amacı, org içinde gereksiz alan çoğalmasının önüne geçmek ve raporlama, indeksleme, arama ve sorgu performansını stabil tutmaktır. 

Büyük Organizasyonlarda Tipik Mimari Hatalar

Aşağıda, büyük ölçekli Salesforce org’larında sık karşılaşılan tasarım açıklarından bazıları yer alır. Bu hataların büyüyen veri hacmiyle birlikte daha görünür hale geldiğini belirtmek gerekir; verinin ilişkisel karmaşıklığı arttıkça yapılan küçük tasarım tercihleri bile uzun vadede önemli etkilere yol açabilir.

  • Birbirine bağlı süreçler için ayrı Custom Object’ler oluşturularak gereksiz metadata çoğaltılması 
  • Alan envanterinin sistemli şekilde yönetilmemesi nedeniyle arama, raporlama ve SOQL performansının düşmesi 
  • Lookup, Master-Detail veya Junction ilişki tiplerinin yanlış seçilmesi sonucunda sorgu derinliğinin yükselmesi ve veri tutarlılığının bozulması 

Bu hataların önüne geçmek için org büyüme hızının, veri hacminin ve gelecekteki entegrasyon stratejisinin tasarım sürecinde dikkate alınması beklenir. Metadata Mimarisi (Metadata Architecture) Salesforce’un ölçeklenebilirliğinde belirleyici bir rol oynar ve Custom Object tasarımı bu mimarinin merkezinde bulunur.

Salesforce Custom Object API Kullanımı ve Entegrasyon Kapasitesi

Custom Object, API katmanında da Standard Object’lerle aynı şekilde davranır. Bu yapı, entegrasyonların temiz ve tutarlı biçimde gerçekleştirilmesini sağlar.

API Name Mantığı

Her Custom Object, API katmanında “__c” uzantısıyla tanımlanan benzersiz bir API Name kullanır. Bu ad, SOQL sorgularında, REST API endpoint’lerinde, Apex sınıflarında ve entegrasyon konnektörlerinde esas referanstır. API Name’in metadata katmanında sabitlenmiş olması, farklı ortamlara yapılan dağıtımlarda tutarlı bir tanımlama yapısı sağlar.

CRUD İşlemleri ve SOQL/SOSL Davranışı

Custom Object kayıtları CRUD işlemleri açısından Standard Object’lerle aynı işleme modeline sahiptir. API üzerinden gerçekleştirilen create, update, delete ve upsert işlemleri transaction kurallarıyla uyumludur. 

SOQL sorgularında ilişkisel alanlara erişilebilir; Lookup ve Master-Detail ilişkilerinde hiyerarşik sorgulama yapılabilir. SOSL ise Custom Object’in global arama indeksi ayarlarına bağlı olarak çalışır; nesne aramaya dahil edilmişse kelime bazlı eşleşmeler üzerinden kayıt döndürür.

Entegrasyon Senaryoları

Harici sistemlerin veri modelini Salesforce üzerinde yeniden kurmak isteyen ekipler için kritik bir bileşen olduğunu belirtmek gerekir; API erişimi bu aktarımı sürdürülebilir hale getirir. Aşağıda Custom Object’in API katmanında desteklediği entegrasyon akışlarına dair kısa bir çerçeve yer alır: 

  • REST API ile iş uygulamalarından gelen kayıtların Salesforce Custom Object üzerinde saklanması
  • Bulk API üzerinden harici kaynaklardan büyük hacimli veri aktarımının yönetilmesi
  • Metadata API ile Custom Object şema güncellemelerinin versiyon kontrollü süreçlerde dağıtılması

Salesforce Custom Object Örnekler Üzerinden Veri Modeli Kurgusu

Gerçek süreçlerin Custom Object üzerinden modellenmesi, verinin hem operasyon ekipleri hem de raporlama katmanı için daha anlaşılır bir yapıya dönüşmesini sağlar. Her sektörün ihtiyaç seti farklı olduğundan, nesnenin nasıl tasarlandığı veri bütünlüğünü ve kullanıcı deneyimini doğrudan etkiler.

Hizmet Sözleşmesi Örneği

Hizmet sunan şirketlerde sözleşme döngülerinin düzenli takibi önemli olduğundan, Custom Object bu yapıyı kapsayacak şekilde yapılandırılabilir. 

Sözleşme başlangıç–bitiş tarihleri, hizmet türü, yenileme durumu ve SLA gibi bilgiler alanlarla temsil edilir. Lookup veya Master-Detail ilişkileri üzerinden müşteri, ürün veya faturalama süreçleriyle bağlantı kurulabilir. Bu sayede sözleşmeye bağlı kayıtlar tek bir yapı altında toplanarak süreç netliği sağlanır.

Kâr Marjı Takip Örneği

Satış modellerinin değişken olduğu organizasyonlarda kârlılık hesaplamalarının nesne düzeyinde tutulması verimlilik getirir. Custom Object alanları, satış fiyatı, maliyet kalemleri ve kanal bazlı değişkenlerden oluşabilir. 

Bu model, Opportunity verilerine bağlanarak farklı kanalların marj performansını karşılaştırmaya imkan tanır. Raporlama katmanında kârlılık trendleri daha kolay ortaya çıkar ve ekipler karar süreçlerinde daha tutarlı sonuçlar elde eder.

Eğitim Süreçleri Yönetimi Örneği

Eğitim kurumlarında modül bazlı ilerleme ve değerlendirmenin düzenli kayıt altına alınması gerekebilir. Custom Object yapısı; öğrenci, eğitmen ve ders modülleriyle ilişkili ilerleme bilgilerinin tek noktada toplanmasına imkan sağlar. 

Sınav notları, tamamlama durumu, oturum kayıtları gibi alanlar süreç haritasını netleştirir. Bu model, raporlama tarafında katılım analizi ve ilerleme ölçümü gibi çıktıları tutarlı şekilde üretir.

Salesforce Custom Object Tasarımında Deneyimden Gelen İlkeler

Custom Object tasarımının yönü, org içindeki veri akışının nasıl organize edileceğini belirler. Yalnızca alan oluşturmak değil; ilişkiler, kullanıcı arabirimi ve raporlama davranışları üzerinde doğru kararlar almak gerekir.

İlişki Mimarisi

Lookup, Master-Detail veya Junction yapılarını belirlerken veri sahipliği ve silme davranışının nasıl işleyeceği dikkate alınır. Örneğin, finansal kayıtlarda sahiplik kontrolü gerektiren modellerde Master-Detail yaygın bir yaklaşım olurken, daha gevşek bağlı süreçlerde Lookup ilişkisi tercih edilebilir. Junction Object yapıları ise çoktan çoğa senaryolarının düzenli yönetilmesini mümkün kılar.

UI/UX Etkisi

Sayfa düzeni, alan yoğunluğu ve mobil görünüm gibi unsurlar nesnenin günlük kullanımını etkiler. Bilginin doğru gruplara ayrılması ve kullanıcıya gereksiz alan yüklenmemesi, platformda daha akıcı bir deneyim yaratır. Bu yapı, özellikle sahada çalışan ekiplerin veriye hızlı ulaşması gerektiğinde önemli bir avantaj sağlar.

Raporlama ve Analitik Sonuçları

Nesnenin ilişki yapısı, oluşturulabilecek rapor tiplerini belirler. Doğru tasarlanmış bir Custom Object, hem ilişki derinliği hem de alan yapısı sayesinde daha net analitik sonuçlar üretir. Tersine, hatalı ilişki seçimleri raporlanabilirlik üzerinde kısıtlar oluşturabilir ve veri bütünlüğünü etkileyebilir.

Bu ilkeler birlikte ele alındığında Custom Object, Salesforce org’unun uzun vadeli mimarisini belirleyen temel bileşenlerden biri haline gelir.

Salesforce Custom Object Hakkında Sıkça Sorulan Sorular

Bir Custom Object ilişkisel yoğunluk arttığında nasıl davranır?

İlişki tipi, indeksleme stratejisi ve sorgu desenleri performans üzerinde belirleyici olur.

Arşivlenen Custom Object kayıtları raporlara nasıl yansır?

Arşivlenen kayıtlar varsayılan rapor tiplerine dahil edilmez; yönetişim süreci bu nedenle önemlidir.

Çok fazla Custom Object kullanmak org yapısını nasıl etkiler?

Aşırı nesne çoğaltımı bakım maliyetini artırır ve veri tutarlılığında risk oluşturur.

Custom Object yaşam döngüsü nasıl yönetilir?

Geliştirme, test ve üretim ortamları arasında metadata temelli geçişlerle sürümlü bir yapı korunur.

Önceki içeriğimize de göz atın: “Salesforce Process Builder Nedir? Destek Sonu Detayları

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu