/build/static/layout/Breadcrumb_cap_w.png

SMS 2003 Need help building a collection

I have an issue where some of my client PCs have several different versions of Adobe Reader installed at the same time. I have a script I can deploy to a client to remove specific versions of Adobe Reader from the client, which I would like to deploy to any system that has Adobe Reader 8.1.1 AND any earlier version of Adobe Reader.

I tried the following query to get started, because I know I have at least 1 system that this applies to, based off of it's latest hardware inventory through Resource Explorer, but I get zero results in the collection. Any information as to what I'm doing wrong would be greately appeciated.


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_ADD_REMOVE_PROGRAMS on
SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where
SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName = "Adobe Reader 7.0.5" AND
SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName = "Adobe Reader 8.1.1" order by
SMS_R_System.Name

0 Comments   [ + ] Show comments

Answers (3)

Posted by: yarborg 16 years ago
Blue Belt
0
You might want to look for the Adobe Reader exe vs the Add remove programs version. Exe's info should be collected by default in SMS and better yet if you are collecting dll info look for that. Otherwise it looks fine.
Posted by: brenthunter2005 16 years ago
Fifth Degree Brown Belt
0
I believe you need to create a "subselect" query. The following SQL code queries for all computers that have "Adobe Reader 7.0.5" installed, and then only includes the computers that also have "Adobe Reader 8.1.1" also installed:

Select v_r_system.resourceid
from v_R_System left join v_GS_ADD_REMOVE_PROGRAMS ARP on ARP.ResourceID = v_R_System.ResourceId
where ARP.DisplayName0 = 'Adobe Reader 7.0.5' and v_r_system.resourceid in
(select v_r_system.resourceid from v_R_System left join v_GS_ADD_REMOVE_PROGRAMS ARP on ARP.ResourceID = v_R_System.ResourceId where ARP.DisplayName0 = 'Adobe Reader 8.1.1')


So, translating this into a SMS Collection query, you would get the following:

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 left join SMS_G_System_ADD_REMOVE_PROGRAMS ARP on ARP.ResourceID = SMS_R_System.ResourceId
where ARP.DisplayName = "Adobe Reader 7.0.5" and SMS_r_system.resourceid in
(select SMS_r_system.resourceid from SMS_R_System left join SMS_G_System_ADD_REMOVE_PROGRAMS ARP on ARP.ResourceID = SMS_R_System.ResourceId where ARP.DisplayName = "Adobe Reader 8.1.1")


Test that and let me know how you get on.
Posted by: pletcgm 16 years ago
Purple Belt
0
Why don't you just put the removal codes in the IPF file? That's how I upgrades the various versions of readers to 8.1.1. I had SMS run the uninstall first and then it ran the install.

Here is my IPF of the uninstall

item: Check Disk Space
end
item: Get Registry Key Value
Variable=VER7INST
Key=SOFTWARE\Adobe\Acrobat Reader\7.0\Installer
Default=0
Value Name=ENU_GUID
Flags=00000100
end
item: Get Registry Key Value
Variable=VER8INST
Key=SOFTWARE\Adobe\Acrobat Reader\8.0\Installer
Default=0
Value Name=ENU_GUID
Flags=00000100
end
item: If/While Statement
Variable=VER8INST
Value={AC76BA86-7AD7-1033-7B44-A81100000003}
Flags=00000001
end
item: If/While Statement
Variable=VER8INST
Value=0
end
item: If/While Statement
Variable=VER7INST
Value={AC76BA86-7AD7-1033-7B44-A70000000000}
end
item: Execute Program
Pathname=msiexec.exe
Command Line=/x {AC76BA86-7AD7-1033-7B44-A70000000000} /qb- REBOOT=Force
Flags=00000010
end
item: Else Statement
end
item: If/While Statement
Variable=VER7INST
Value={AC76BA86-7AD7-1033-7B44-A70700000002}
end
item: Execute Program
Pathname=msiexec.exe
Command Line=/x {AC76BA86-7AD7-1033-7B44-A70700000002} /qb- REBOOT=Force
Flags=00000010
end
item: Else Statement
end
item: If/While Statement
Variable=VER7INST
Value={AC76BA86-7AD7-1033-7B44-A70800000002}
end
item: Execute Program
Pathname=msiexec.exe
Command Line=/x {AC76BA86-7AD7-1033-7B44-A70800000002} /qb- REBOOT=Force
Flags=00000010
end
item: End Block
end
item: End Block
end
item: End Block
end
item: Else Statement
end
item: If/While Statement
Variable=VER8INST
Value={AC76BA86-7AD7-1033-7B44-A80000000002}
end
item: Execute Program
Pathname=msiexec.exe
Command Line=/x {AC76BA86-7AD7-1033-7B44-A80000000002} /qb- REBOOT=Force
Flags=00000010
end
item: Else Statement
end
item: If/While Statement
Variable=VER8INST
Value={AC76BA86-7AD7-1033-7B44-A81000000003}
end
item: Execute Program
Pathname=msiexec.exe
Command Line=/x {AC76BA86-7AD7-1033-7B44-A81000000003} /qb- REBOOT=Force
Flags=00000010
end
item: End Block
end
item: End Block
end
item: End Block
end
item: End Block
end


Here is my install IPF File:
item: Check Disk Space
end
item: Get Registry Key Value
Variable=VER8INST
Key=SOFTWARE\Adobe\Acrobat Reader\8.0\Installer
Default=0
Value Name=ENU_GUID
Flags=00000100
end
item: If/While Statement
Variable=VER8INST
Value={AC76BA86-7AD7-1033-7B44-A81100000003}
Flags=00000001
end
item: Execute Program
Pathname=msiexec.exe Command Line=/I AcroRead.msi TRANSFORMS=AcroRead.mst /qb-
Flags=00001010
end
item: End Block
end
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Don't be a Stranger!

Sign up today to participate, stay informed, earn points and establish a reputation for yourself!

Sign up! or login

Share

 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ