SCCM 2007 üzerinde Service bazlı collection oluşturulması

SCCM üzerinde client yönetimini yapabilmek için collection adı verilen kümeleri kullanıyoruz.Bunları oluştururken birkaç kriterimiz var.Öncelikle networkte kaynakları discover ederken operating system bilgisinide alırsanız önceden tanımlı işletim sistemi collectionlarına bu bilgisayarlar otomatik yerleşecektir.Bunun dışında çok kullanılan başka bir yöntem query based collectionlar oluşturmak.Bunu gerçekleştirmek için SQL üzerinde çalışacak bir query oluşturuyorsunuz.Örnek vermek gerekirse , daha önceden hardware inventory agent ile tüm bilgisayarlardan donanım bilgisini topladığımızı varsayalım.Ardından bir query oluşturarak “œMemory toplamı 1gb’dan az olan pcler” şeklinde bir sorgu atabiliriz.Ardından bu query’i baz olarak oluşturduğumuz collectiona sadece bu kritere sahip pcler yerleşecektir.

Bunun dışında istenebilen başka bir collection kriteride servisler.Örneğin belirli servislerin çalıştığı pcleri yada belirli servislerin çalışmadığı pcleri sorgu ile çekip ardından bunlara ait collectionları oluşturmak isteyebilirsiniz.Örneğin varolan bir yazılım client pcye kurulduğunda aynı zamanda bir servis hesabınıda kullanıyor olabilir.O zaman siz bu servisin varolmadığı pcler için bir collection oluşturup bu program için dağıtımı sadece bu collectiona atayabilirsiniz.

Servis bazlı query oluşturmak için aşağıdaki sorguyu kullanabilirsiniz.

Belirli bir servise sahip olan pcleri getiren query:

select SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client from SMS_R_System inner join SMS_G_System_SERVICE on SMS_G_System_SERVICE.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SERVICE.Name = "SERVICEISMI" and SMS_R_System.Client = 1

Belirli bir servise sahip olmayan pcleri getiren query:

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,
SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,
SMS_R_SYSTEM.Client from SMS_R_System where Name not in (SELECT SMS_R_System.Name
FROM SMS_R_System INNER JOIN SMS_G_System_SERVICE ON SMS_G_System_SERVICE.ResourceID = SMS_R_System.ResourceID WHERE SMS_G_System_SERVICE.Name = "SERVICEISMI") and Client = 1