Microsoft Dynamics CRM Async Temizlik İşlemleri

Microsoft Dynamics Crm kullanıcıya daha iyi bir kullanım sunabilmek için bir çok işlemi async olarak arkaplanda yapmaktadır. Yapılan bu işlemler AsyncOperation tablosunda tutulmaktadır. Tamamlanan işlemlerin bu tabloda tutumasına pek gerek bulunmamaktadr. Uzun vadeli loglamalara ihtiyacınız varsa silmenize gerek yoktur. Ancak gereksiz yere bu dataları biriktirmeniz size performans konusunda sorunlar doğurabilir. Bu sebepten dolayı Microsoft Dynamics CRM Async Temizlik işlemleri belli aralıklarla gerçekleştirmeniz gerekmektedir.

Microsoft Dynamics CRM aync işlemlerin listesi hakkındaki yazıda paylaşmış olduğum sorguyu çalıştırdığınızda Başarılı, Başarısız Oldu ve İptal Edildi statüsündeki işlemler olumlu ya da olumsuz olarak tamamlanan işlemlerdir. Bu işlemleri veritabanından kaldırmak performans anlamında size olumlu yönde yansıyacaktır.

Microsoft Dynamics CRM Async Temizlik İşlemleri Sorgusu

Bu işlemleri temizlemek için Microsoft tarafından paylaşılan aşağıdaki sorguyu çalıştırmanızı öneririm:

IF EXISTS (SELECT name from sys.indexes
WHERE name = N'CRM_AsyncOperation_CleanupCompleted')
      DROP Index AsyncOperationBase.CRM_AsyncOperation_CleanupCompleted
GO
CREATE NONCLUSTERED INDEX CRM_AsyncOperation_CleanupCompleted
ON [dbo].[AsyncOperationBase] ([StatusCode],[StateCode],[OperationType])
GO

while(1=1)
begin
declare @DeleteRowCount int = 10000
declare @rowsAffected int
declare @DeletedAsyncRowsTable table (AsyncOperationId uniqueidentifier not null primary key)
insert into @DeletedAsyncRowsTable(AsyncOperationId)
Select top (@DeleteRowCount) AsyncOperationId from AsyncOperationBase
where 
  OperationType in (1, 9, 12, 25, 27, 10) 
  AND StateCode = 3 
  AND StatusCode in (30, 32)

 select @rowsAffected = @@rowcount 
 delete poa from PrincipalObjectAccess poa 
   join WorkflowLogBase wlb on
    poa.ObjectId = wlb.WorkflowLogId
   join @DeletedAsyncRowsTable dart on
    wlb.AsyncOperationId = dart.AsyncOperationId
delete WorkflowLogBase from WorkflowLogBase W, @DeletedAsyncRowsTable d
where 
  W.AsyncOperationId = d.AsyncOperationId             
 delete BulkDeleteFailureBase From BulkDeleteFailureBase B, @DeletedAsyncRowsTable d
where 
  B.AsyncOperationId = d.AsyncOperationId
delete BulkDeleteOperationBase From BulkDeleteOperationBase O, @DeletedAsyncRowsTable d
where 
  O.AsyncOperationId = d.AsyncOperationId
delete WorkflowWaitSubscriptionBase from WorkflowWaitSubscriptionBase WS, @DeletedAsyncRowsTable d
where 
  WS.AsyncOperationId = d.AsyncOperationID 
 delete AsyncOperationBase From AsyncOperationBase A, @DeletedAsyncRowsTable d
where 
  A.AsyncOperationId = d.AsyncOperationId
/*If not calling from a SQL job, use the WAITFOR DELAY*/if(@DeleteRowCount > @rowsAffected)
  return
else
  WAITFOR DELAY '00:00:02.000'
end

Bu sorguyu belli aralıklarla çalıştırabileceğiniz bir SQL job oluşturabilirsiniz. Oluşturacağınız jobı aylık olarak çalıştırabilirsiniz. Bu jobı oluştururken sorgu üzerinde belli alanları da güncelleyip kendi durumunuza daha uygun hale getirebilirsiniz.

İş akışları ayarlarında bulunan işlem tamamlanınca bu akışı sil seçeneği doğrudan bu kısımla alakalıdır ve tamamlanan iş akışlarını temizlemek performans anlamında kullanıcıya olumlu yönde yansımaktadır.

Microsoft tarafından paylaşılan bu SQL scripti ile temizlenen async işlemler Crm‘den silinmezler. Sadece çalışmasına ait logları SQL veritabanından silinir. Böylece eskiye dönük elinizde kalan çalıştırma kayıtlarınız gereksiz yere cihazınızda hafıza kaplamazlar. Tıpkı işlemi biten dosyaları çalıştırma loglarınızı bilgisayarınızdan temizlediğinizi düşünün.

Son Yazılar

Sakın Bu iPhone Uygulamlarını Yüklemeyin !

iPhone piyasadaki akıllı cep telefonlarına uygulama mağazası kültürünü katan akıllı cep telefonu oldu. App Store… Daha fazla oku

2 saat önce

2023 Sony Walkman Modelleri Tanıtıldı – Efsane Yenilendi

Zamanının efsane cihazları Walkmanler'i hatırlar mısınız? Mobil müzik keyfinin vaz geçilmezleri artık akıllı cep telefonu… Daha fazla oku

16 saat önce

iPhone Pil Sağlığı Nasıl Korunur Yapılması Gerekenler

İnsan o kadar para verip de yeni bir iPhone alınca cihazını ilk günkü gibi korumak… Daha fazla oku

1 hafta önce

iPhone Virüs Bulaşır mı? iPhone Ele Geçirildi ve Virüs Bulaştı

Apple iPhone piyasada bulunan Android cihazlardan çok daha güvenli diyoruz. Ancak bu iPhone'u yenilmez yapmıyor.… Daha fazla oku

2 hafta önce

Apple Tarafından Beklenen Tablet 2023 iPad Ultra Geliyor mu?

2022 yılı içerisinde Apple yenilenen iPad modellerini karşımıza çıkarttı. Ancak hepimizin beklediği iPad modeli 2022… Daha fazla oku

3 hafta önce

2 Yeni Dolandırıcılık Sistemi ve iCloud Kilidi Nedir ?

Günümüz şartlarında neredeyse her Apple ürünü iCloud Etkinleştirme kilidi özelliğine sahiptir. Bu kilit bir çok… Daha fazla oku

3 hafta önce

Bu web site kullanıcı deneyimini arttırmak amacı ile çerezleri kullanmaktadır