Subselect Query en SCCM 2007

Por Matias Fernandez

Muchas veces nos vemos en la necesidad de crear en System Center Configuration Manager una collection que contenga los equipos que no tienen instalado determinado Software para así poder distinguirlos de los que si lo tienen y luego poder distribuir a esa lista el paquete necesario. Esta tarea puede resultar tediosa si estamos administrando una cantidad considerables de equipos.

Lo primero que necesitamos crear es un Query que selecciones los equipos clientes que tienen la aplicación instalada y luego de esto tendremos que crear un nuevo Query que contenga los equipos que NO pertenecen a la creada anteriormente.

Este tipo de queries son llamadas SUBSELECT QUERY.

También es importante que el ciclo de HARDWARE INVENTORY esté funcionando correctamente ya que este tipo de consulta está relacionada con dicho procedimiento.

En este ejemplo vamos a determinar las maquinas que no tienen la actualización de seguridad para Windows Xp KB950974.

Lo que tenemos que hacer para esto es crear dos queries por separado.

El primer query nos va a entregar los equipos que tienen instalada dicha KB y el segundo query nos va a mostrar los equipos que NO tienen instalada dicha actualización.

Primer Query

  1. Dentro de la consola de System Center Configuration Manager, click derecho en QUERIES -> NEW -> QUERY
  2. Aquí debemos asignar un nombre a la consulta que estamos creando, por ej. “Equipos con KB950974”
  3. Click en EDIT QUERY STATEMEN
  4. En la solapa GENERAL vamos al botón AGREGAR.
  5. En la ventana RESULT PROPERTIES hacemos click en el botón SELECT.
  6. La ventana a continuación es SELECT ATTRIBUTE elegimos en ATTRIBUTE CLASS el valor SYSTEM RESOURCE, y bajo ATTRIBUTE seleccionamos NAME.
  7. Click en OK, y luego CLICK en OK en la ventana RESULT PROPERTIES.
  8. Despues de terminar este paso vamos a la solapa CRITERIA y seleccionamos el botón ADD.
  9. En la ventana CRITERION PROPERTIES click en el botón SELECT.
  10. La ventana a continuación SELECT ATTRIBUTE, debemos elegir la opción “Add/Remove Programs” en ATTRIBUTE CLASS.
  11. En la opción ATTRIBUTE debemos elegir “Display Name”. Luego click en OK.
  12. De vuelta en CRITERION PROPERTIES seleccionar en OPERATOR el valor “Is equal to” y en la opción VALUE seleccionar (para este EJ.) “Actualizacion de seguridad para Windows XP (KB950974). Click en OK en esta ventana de dialogo.

Con estos pasos concluimos con la creación del primer QUERY, el cual nos va a seleccionar los equipos en los cuales este instalada la KB 950974.

Segundo Query

  1. Click derecho en QUERIES -> NEW -> QUERY.
  2. Aquí asignamos otro nombre al query, en este ejemplo, “Equipos sin KB 950974”
  3. Click en EDIT QUERY STATEMENT.
  4. En la solapa General hacemos click en el boton ADD.
  5. Luego en la ventana RESULT PROPERTIES hacer click en el botón SELECT.
  6. En SELECT ATTRIBUTE debemos elegir SYSTEM RESOURCE en ATTRIBUTE CLASS y NAME en la sección ATTRIBUTE.
  7. Click en OK y luego click en OK nuevamente.
  8. Ahora vamos a la solapa CRITERIA y hacemos click en el botón ADD.
  9. En la sección CRITERION TYPE debemos elegir en esta ocasión SUBSELECTED VALUES.
  10. Luego elegimos el botón SELECT y en la ventana SELECT ATTRIBUTE elegir SYSTEM en la sección ATTRIBUTE CLASS. En la sección ATTRIBUTE debemos seleccionar NAME.
  11. Click en OK.
  12. Una vez en la ventana CRITERION PROPERTIES debemos elegir en OPERATOR “Is not in”.
  13. Seleccionamos ahora el botón BROWSE debajo de la sección SUBSELECT y elegimos en la ventana BROWSE QUERY la denominada “Equipos con KB950974”.
  14. Click en OK.
  15. Click en OK nuevamente y luego una vez mas click en OK.

Podemos observar que cuando elegimos el query “Equipos con KB950974” el código de la primer es incluido en la segunda.

De esta manera estamos creando un query basada en los resultados de otro.

Ahora para crear la collection que incluya los resultados de este query debemos seguir los siguientes pasos:

Creación de Collection

  1. Click derecho en COLLECTION -> NEW COLLECTION
  2. Asignamos un nombre descriptivo a la collection en este caso “Equipos sin KB950974”. Luego hacemos click en NEXT.
  3. En esta pantalla seleccionamos el botón de QUERY.
  4. En la ventana QUERY RULE PROPERTIES click en IMPORT QUERY STATEMENT.
  5. Seleccionamos la query “Equipos sin KB 950974” y click en OK.
  6. Luego seguimos adelante con el WIZARD hasta finalizar la creación de la collection.

Con este paso concluimos la creación de la COLLECTION que va a contener el listado de los equipos que no tienen instalado la KB 950974.