Seite 1 von 1

Report erzeugen, der alle PCs mit einer bestimmten Software

Verfasst: Fr Sep 19, 2014 10:51 am
von klenke
Hallo,

ich würde mir gerne Reports erzeugen lassen, in denen alle Clients aufgelistet werden, die eine bestimmte Software installiert haben.
Als Beispiel nehme ich mal Visio.

Ich wähle die Felder aus:
Computer Name, ACMP Client Mac Address, MSI Software Name, MSI Software Version (Mit den Variablen aus dem bereich Setup hatte ich es auch schon versucht)

Ich lege den Filter fest:
UND MSI Software Name LIKE %Visio% (mit IN und den jeweiligen Visiopaketen hatte ich es auch schon versucht)

Reihenfolge bearbeiten "Clients" ist ausgewählt

Das Ergebnis des Reports ist dann Eine wüste Liste von installierter Software, nur leider nichts nach dem Schema
PC X Visio Y

Es werden mit Teile des Grafikkartentreibers angezeigt, andere uninteressante Software, nur leider kein Eintrag mit Visio, auch wenn Visio definitiv auf einem PC installiert ist.

Für Tipps wäre ich sehr dankbar. Das das mit dem Filter eigentlich funktionieren müsste, sehe ich an den von mir definierten Containern.

Re: Report erzeugen, der alle PCs mit einer bestimmten Softw

Verfasst: Mo Sep 22, 2014 8:20 am
von HDTewes
Der Sinn der Filter bei den Reports hat sich mir auch noch nicht ganz erschlossen, weil sie leider nicht bewirken, dass nur die betroffenen Clients im Ergebnis aufgenommen werden.

Man muss im Report davon ausgehen, dass alle Clients und alle Software aufgelistet werden. Daher muss man im Report entsprechenden Code einfügen, um die nicht erwünschten Ergebnisse auszublenden. Das kenne ich von anderen Reportgeneratoren anders.

Ich habe ihnen zwei meiner Reports ins Forum hochgeladen unter ACMP 4.0 / ACMP Downloads / Reports https://acc.aagon.com/viewforum.php?f=84. Dann können auch andere Anwender davon profitieren.

Ein Report enthält eine Liste der auf den Clients installierten Office-Versionen, hier stehen die zu suchenden Versionen im Quelltext.

Der andere Report fragt am Anfang nach dem Namen der zu suchenden Software. Geben sie z.B. "Mozilla Firefox" ein, werden alle Firefox Versionen auf den PC aufgelistet. Ich habe dort die Clients extra drin gelassen, die die zu suchende Software nicht enthalten, weil diese Information für mich wichtig ist.

Wenn sie noch Fragen zu den Beispielen haben können sie mich gerne kontaktieren.

Mit freundlichen Grüßen
Hans-Dieter Tewes

Re: Report erzeugen, der alle PCs mit einer bestimmten Softw

Verfasst: Mo Sep 22, 2014 1:22 pm
von klenke
Vielen Dank, ich werde mir das mal ansehen.

Re: Report erzeugen, der alle PCs mit einer bestimmten Softw

Verfasst: Mi Sep 24, 2014 4:34 pm
von Dennis Koch
Hallo,

die Filter arbeiten wie folgt.
Zeige mir alle Clients mit allen Daten wo die Filterbedingung xyz zutrifft.
Wenn man das ganze mit SQL abbilden würde, wäre die Syntax wie folgt.
Select * From Table1
Where Wert = 'xyz'

Hier würde man aber trotzdem alle Werte bekommen aber halt nur wo Wert mit xyz übereinstimmt.
Die Filterung der Ergebnisse muss dann im Report erfolgen. Hierfür wird in der Regel unter Ereignisse bei OnBeforePrint Code erzeugt welcher die Software herausfiltert.

Beispielcode:

procedure DetailData2OnBeforePrint(Sender: TfrxComponent);
begin
DetailData2.Visible := true;
if Pos('Hotfix',<SW Setup."Setup Software Name">) > 0 then
begin
DetailData2.Visible := false;
end;
if Pos('Sicherheitsupdate',<SW Setup."Setup Software Name">) > 0 then
begin
DetailData2.Visible := false;
end;
if Pos('Update',<SW Setup."Setup Software Name">) > 0 then
begin
DetailData2.Visible := false;
end;
end;
begin
end.

Hiermit werden dann SetupSoftwareName Einträge mit Hotfix, Sicherheitsupdate und Update ausgeblendet.