Zum Inhalt springen

digga_mies

Mitglieder
  • Gesamte Inhalte

    46
  • Benutzer seit

  • Letzter Besuch

Beiträge von digga_mies

  1. Vielen Dank :uli

    Allerdings muss ich zu deinem Nachtrag sagen, das da etwas nich so ganz passt. Da fehlen mir einige Nodes und die Zahlen stimmen einfach nicht mehr überein. Mit deiner ersten Erklärung und der Gruppierung der ParentID in den Subquerys hat es wunderbar geklappt und geht ruckzuck.

    Beim Nachtrag müsste man ja auch theoretisch die Namen schon mal vertauschen, weil die Up2DateComputers ja die Rechner sind, deren DATVer >= @Variable1 sind. Und wenn man dann die TotalRechner zählen will, muss man ebenfalls ein CASE WHEN definieren, oder nicht?

    Deine Erklärung war aber echt super :uli ;)

  2. Hi Leute,

    ich habe mir eine TSQL Abfrage zusammengeschustert, die leider Gottes nicht mehr aufhören will zu laufen. Sie läuft knapp 40min ohne Ergebnis und das ist leicht bescheuert.

    Innerhalb soll gezählt werden wie viele Rechner das aktuelle Virenschutzupdate installiert haben und die Gesamtzahl der Rechner in dem Land stehen. Daraus kann man dann prozentuale Anteile errechnen usw, aber das gehört ja nicht zur Abfrage.

    Kann mir jemand sagen, was ich in diesem Zusammenhang falsch mache? Weil wenn ich jeweils nur einen Teil der Abfrage laufen lasse (up2date clients oder alle clients) dann läuft die abfrage in wenigen sekunden. Hat jemand eine Idee. Eigentlich dürfte es nur ein Logikfehler sein.

    Grüße digga_mies

    Hier die Abfrage:

    DECLARE @VARIABLE1 NUMERIC(9)
    
    SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties
    
    SET @VARIABLE1 = @VARIABLE1 - 3;
    
    
    SELECT	
    
    		EPOBranchNode.NodeName
    
    		,COUNT(DISTINCT Rechner_aktuell.NodeName) AS Up2DateComputers
    
    		,COUNT(DISTINCT Rechner_total.NodeName) AS TotalComputers
    
      FROM [ePO4_BBMAGA3].[dbo].[EPOBranchNode]
    
      		LEFT JOIN
    
    			(SELECT
    
    				[EPOLeafNode].[NodeName], [EPOBranchNode].[L1ParentID]
    
    
    			FROM [EPOLeafNode]
    
    				left join [EPOProductProperties] ON [EPOProductProperties].[ParentID] = [EPOLeafNode].[AutoID]
    
    				left join [EPOBranchNode] ON [EPOBranchNode].[AutoID] = [EPOLeafNode].[ParentID]
    
    
    			WHERE
    
    				[EPOLeafNode].[ParentID] = EPOBranchNode.AutoID
    
    				AND EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer >= CAST(@VARIABLE1 AS nvarchar(4))
    
    			) AS Rechner_aktuell ON Rechner_aktuell.L1ParentID = EPOBranchNode.L1ParentID
    
    		LEFT JOIN
    
    			(SELECT
    
    				[EPOLeafNode].[NodeName], [EPOBranchNode].[L1ParentID]
    
    
    			FROM [EPOLeafNode]
    
    				left join [EPOProductProperties] ON [EPOProductProperties].[ParentID] = [EPOLeafNode].[AutoID]
    
    				left join [EPOBranchNode] ON [EPOBranchNode].[AutoID] = [EPOLeafNode].[ParentID]
    
    
    			WHERE
    
    				[EPOLeafNode].[ParentID] = EPOBranchNode.AutoID
    
    			) AS Rechner_total ON Rechner_total.L1ParentID = EPOBranchNode.L1ParentID
    
    	WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BG01','BR00','CH00','CL01','CN00','CO01','CZ00_SK00','DE00','DK01','DO01','EC01','ES00','FI01','FR00','HR01','HU00','ID01','IE01','IN01','IT01','JP01','KH01','KR01','MX01','MY01','MY02','NL01','NO01','PE01','PH01','PK01','PL01','PT01','RO01','RU01','SE02','SG01','TH01','TR01','TW01','UK01','US00','VN01','ZA01')
    
    	GROUP BY EPOBranchNode.NodeName

  3. Hallo Leute,

    ich möchte auf einem MSSQL Server eine Tabelle erstellen, die sich täglich 1x alle Daten von ca 10 anderen Tabellen aus anderen Datenbanken von anderen Servern abholt. Die Tabellen sehen dabei auf allen Servern gleich aus.

    Einen View zu erstellen, und die Daten immer von Linked Servern aktuell abzurufen, ist leider für das Reporting, für das ich die Tabelle nutzen möchte, nicht performant genug.

    Das bedeutet, ich möchte eigentlich immer eine neue Version pro Tag haben, die sich die Daten von den anderen Servern abholt.

    Wie kann ich einen solchen Schritt realisieren?

    Grüße

    digga_mies :bimei

  4. Hi @all,

    ich operiere grade an einer ODBC Datenquelle mit 3 voneinander abhängigen Tabellen. Das Problem ist, das ich die Felder nun gerne alle in ein Formular packen würde und aus der einen Datenbank vorgegebene Werte über ein Kombinationsfeld auswählen würde, wenn ich einen neuen Datensatz anlege, ohne das gleich eine neue ID vergeben wird, allerdings soll bei den anderen die ID eine neue werden.

    Ich hoffe irgendwer versteht diese Erklärung. Ist irgendwie schwer mein Problem in Worte zu fassen ;)

    Grüße

    Rob

  5. Hey,

    um euch mal meine Erfahrungen mitzuteilen, dachte ich mir ich schreib euch auch mal was hier rein ;)

    Ich bin jetzt im 3.Lehrjahr in der Ausbildung zum Fachinformatiker für Systemintegration und finde bisher habe ich alles richtig gemacht. Habe mich nach dem Ende meiner Schulzeit dazu entschieden eine Ausbildung anzufangen, weil ich mir auch noch nicht sicher war, ob das Studium sofort etwas für mich ist.

    Jetzt, so kurz vor Ende der Ausbildung hat mich aber doch nochmal der Lerneifer gepackt und ich werde zum Wintersemeseter anfangen zu studieren. Informatik, was auch sonst. Allerdings hat es einen Vorteil, schon eine Ausbildung gemacht zu haben, nämlich den, dass ich auch, wenn ich das Studium nicht schaffe, eine abgeschlossene Berufsausbildung habe und anfangen kann zu arbeiten. Ich kann jedem nur empfehlen diesen Weg zu gehen.

    War nur mal so ein kleiner Erfahrungsbericht meinerseits, ich weiß nicht ob es bei einer Entscheidung helfen kann, aber es ist sicher gut, sich mal mehrere Meinungen anzuhören.

    Grüße

    digga_mies ;)

  6. Hi Leute,

    also der Name sagt nicht so viel, aber ich versuch's zu erklären.

    Ich habe 2 Views in 2 verschiedenen Datenbanken und möchte diese innerhalb einer Query untereinander ausgeben. Man kann sich das in etwa so vorstellen:

    View A

    ColumnA1 | ColumnA2 | ColumnA3

    View B

    ColumnB1 | ColumnB2 | ColumnB3

    Und daraus soll dann werden:

    Query-Ausgabe:

    IndexAusAB | ColumnAB1 | Column AB2 | ColumnAB3

    IndexAusAB := Datenbankname von View A oder View B

    Ich hoffe ihr könnt nachvollziehen was ich meine und mir unter die Arme greifen.

    Grüße

    digga_mies

    ;)

  7. Hallo Leute,

    hat sich schon mal jemand mit der WSUS DB auseinander gesetzt?

    Ich versuche gerade den letzten Status aus der Datenbank zu bekommen und finde da leider nur das LastSync Result, welches mich aber nich weiter bringt, weil es einfach mal die falschen Informationen anzeigt im Gegensatz zur WSUS Console auf dem Server.

    Hat sich schon mal jemand damit auseinander gesetzt? Wenn ja, bitte mal melden.

    Grüße

    Rob

  8. Also ich glaube des ist das Selbe wie bei uns IHK München

    "Angaben zur geplanten Projektdokumentation"

    habe da meine Gliederg der Dokumentation reingeschrieben wie diese ca.

    aussehen wird, also

    Inhaltsangabe:

    Deckblatt

    1. Inhaltsverzeichnis

    2. Einleitung

    3. Projektplanung

    - Istanalyse

    - Sollkonzept

    4. Projektausführung

    5. Projektabschluss

    Anlagen:

    etc etc

    also so in der Art hatte ich es und wurde angenommen ^^

    Hey,

    dankeschön. Das hilft mir schon mal weiter.

    Und wenn es so angenommen wurden ist, dann kann es ja auch nich falsch sein ;)

    bei mir wäre es die IHK Kassel, falls jemand aus der Nähe eine Ahnung hat, dann bitte melden, ansonsten mach ich morgen in der Schule mal ne Anfrage :P

    Grüße

    Rob

  9. Hallo,

    ich möchte mich nochmal recht herzlich bedanken.

    Es funktioniert jetzt alles, allerdings habe ich das Ganze doch ein bisschen anders gelöst.

    Der Code ist hier:

    DECLARE @VARIABLE1 NUMERIC(9)
    
    SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties
    
    SET @VARIABLE1 = @VARIABLE1 - 3;
    
    
    
    SELECT 	SUBSTRING(EPOBranchNode.NodeName,1,2)
    
    		,COUNT(DISTINCT Rechner_aktuell.ComputerName) AS Clients_wt_cur_DAT
    
    		,COUNT(DISTINCT Rechner_total.ComputerName) AS All_Clients
    
    FROM EPOBranchNode
    
    	LEFT JOIN (	SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName
    
    					FROM EPOLeafNode
    
    						INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID
    
    					WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer >= CAST(@VARIABLE1 AS nvarchar(4))
    
    				) AS Rechner_aktuell ON EPOBranchNode.AutoID = Rechner_aktuell.ParentID
    
    	LEFT JOIN (	SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName
    
    					FROM EPOLeafNode
    
    						INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID
    
    					WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%'
    
    				) AS Rechner_total ON EPOBranchNode.AutoID = Rechner_total.ParentID
    
    WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR01','BR02','BR03','BR04','BR05','BR06','BR07','BR-EXCEPTIONS','BROK','BR-SRV','BR-SRV-WEBSENSE','BG01','CL01','CN00','CN01','CN02','CN03','CN04','CN05','CN06','CN07','CN08','CN09''CO01','HR01','CZ','CZ_NOTEBOOKS','CZ_SERVERS','CZ00_SK00','DK01','DO01','EC01','FI01','FR_AD','FR00','FR01','FR02','FR03','FR04','FR07','FR09','FR16','DE00','DE01','DE03', 'DE05','DE06','DE08','DE08_Server','DE11','DE12','DE13','DE17','DE20','DE21','DEX1','DEX2','DEXX','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH01','CH03','CH05','CH07','TW01','TH01','TR01','UK01','US00','VN01','VN02','VN03')
    
    GROUP BY SUBSTRING(EPOBranchNode.NodeName,1,2)

    Grüße

    Rob

  10. Hallo Leute,

    ich hab mal eine allgemeine Frage zum Projektantrag.

    Was schreibt man denn bitte bei "Dokumentation zur Projektarbeit" rein??

    Ich meine, die Arbeitsschritte und so weiter sind ja klar, aber was soll ich denn da reinschreiben? Welche Dateien zu meiner Dokumentation gehören, oder was??

    Grüße

    Rob

  11. Hey Leute,

    mir ist da noch etwas eingefallen.

    Es ist ja Schwachsinn nur auf die neueste Version zu überprüfen. Ich würde nun gerne von dem MAX(DATVer) 3 abziehen. Dann hätte ich die 4 letzten Versionen.

    Wenn ich aber versuche VARIABLE1 als numerischen Wert zu initialisieren, gibt er mir immer den Fehler aus, das er NVARCHAR nicht in NUMERIC konvertieren kann. Gleicher Fehler bei CAST und CONVERT.

    Die Version wird im Format '1234.0000' angegeben. Da ja schon ein Punkt vorhanden ist, sollte sich das ganze doch ohne Problem als numerischer Wert behandeln lassen, oder?

    Ich hoffe ihr könnt mir hiermit nochmal helfen.

    Grüße

    Rob

  12. Also ich hab null Plan von Reporting - soviel vorweg.

    Aber eigentlich sollte diene Query so abgeändert das zeigen was du willst:

    aus

    mach mal

    SELECT substr(EPOBranchNode.NodeName,1,2)

    GROUP BY substr(EPOBranchNode.NodeName,1,2)

    Ich danke euch allen hier ;)

    Jetzt funktioniert es genau so, wie ich es mir vorgestellt habe :)

    Grüße

    Rob

  13. Also vielen Dank an deine allgemein gehaltene Zusammenfassung meines Problems streffin ;) Es funktioniert jetzt :)

    So sieht mein Code jetzt aus, die Prozentberechnung mache ich dann direkt im Report, das geht dort einfacher ;)

    
    DECLARE @VARIABLE1 VARCHAR(9)
    
    SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties
    
    
    SELECT 	EPOBranchNode.NodeName
    
    		,COUNT(DISTINCT Rechner_aktuell.ComputerName) AS Clients_wt_cur_DAT
    
    		,COUNT(DISTINCT Rechner_total.ComputerName) AS All_Clients
    
    FROM EPOBranchNode
    
    	LEFT JOIN (	SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName
    
    					FROM EPOLeafNode
    
    						INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID
    
    					WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%' AND EPOProductProperties.DATVer = @VARIABLE1
    
    				) AS Rechner_aktuell ON EPOBranchNode.AutoID = Rechner_aktuell.ParentID
    
    	LEFT JOIN (	SELECT EPOLeafNode.ParentID, EPOLeafNode.NodeName AS ComputerName
    
    					FROM EPOLeafNode
    
    						INNER JOIN EPOProductProperties ON EPOProductProperties.ParentID = EPOLeafNode.AutoID
    
    					WHERE EPOProductProperties.ProductCode LIKE 'VIRUS%'
    
    				) AS Rechner_total ON EPOBranchNode.AutoID = Rechner_total.ParentID
    
    WHERE EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR01','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH01','TW01','TH01','TR01','UK01','US00','VN01')
    
    GROUP BY EPOBranchNode.NodeName
    
    

    Nun habe ich aber noch eine Frage!

    Ich habe ja diese ganzen Sites angegeben in dem WHERE Statement. Kann man diese auch gruppieren? Ich habe nämlich gemerkt, das wir nicht nur eine Site von z.B.: BR haben, sondern 7, also BR01, BR02, BR03, ... , BR07. Also muss ich natürlich alle abfragen, wie es aussieht mit den aktuellen Rechnern und allen Rechnern und diese dann für BR zusammenfassen. Wenn jemand mir dazu noch einen Tip geben könnte, dann wäre ich euch sehr dankbar.

    In Kurzform: Aus BR01, [...] , BR07 mache BRges!

    Grüße

    Rob

  14. Also das mit dem EPO Reporting stimmt, es gibt da ein Web Frontend mit den man sich einige lustige Abfragen zusammenstellen kann und sich auch so einiges auswerten lassen kann. Das Radar was ich hier erstellen möchte, gibt es aber nicht in dem integrierten System. Ich benutze hier ausschleßlich den SQL Server 2008 Reporting Service falls dir das etwas sagt. Damit kann man die Reports in einer Visual Studio Umgebung designen, programmieren und anderen tollen Firlefanz mit anstellen. Die Reports werden dann auf einen eigenen Server exportiert und dort kann man sie dann wohlsortiert in einer virtuellen Architektur von Ordnern anzeigen lassen.

    Mein Kollege hat auch die Queries, die man mit dem EPO Frontend machen kann, genutzt um sich so ein Radar im Excel zusammenzuflicken, ABER es ist unschön so ein Excel in eine Internetseite einzubinden bzw. es jeden Tag händisch aktualisieren zu müssen. Somit wollen wir dieses Radar mit Hilfe des Reporting Services automatisieren und portierbarer machen. Denn mit dem Reporting Service hat man nicht nur die Möglichkeit die Reports bereitzustellen sondern auch das ganze mit den aktuellen Daten exportieren zu können und das ebenfalls automatisiert.

    Jetzt kennst du die Beweggründe dieser Arbeit ;)

    btw: Danke für die Info von Edith :P

  15. Hey,

    also es sind insgesamt 3 Tabellen auf die ich zugreife.

    EPOLeafNode [Die Tabelle mit den Computern]

    - NodeName := Computer Name, die dann der Site zuzuordnen sind

    EPOBranchNode [Die Tabelle mit den Sites]

    - NodeName := Site Name, wo die Computer dann eingeordnet werden müssen

    EPOProductProperties [Die installierten McAffee Applikationen mit Eigenschaften]

    - DATVer := Ist die Version der Virendefinitionen, die der Virenschutz verwendet

    Untereinander sind diese Tabellen mit Feldern verbunden, die sich AutoID und ParentID nennen, diese sind aber nicht einfach zu joinen und je nachdem wie man das macht, bekommt man immer ein anderes Ergebnis. Ich habe sie in meinem Code so gejoint, das immer die übergeordnete, die AutoID zu der ParentID der untergeordneten Tabelle bekommen hat. Demnach wäre meine Ordnung jetzt:

    EPOBranchNode > EPOLeafNode > EPOProductProperties

    Damit man die Virenschutzdefinitionsversion (Krasses Wort! :P) auch vom richtigen Programm bekommt, habe ich dann auf 'VIRUS%' gefiltert, was dann mein WHERE Statement erklärt.

    Ich hoffe das reicht insofern.

    Grüße

    Rob

  16. Hello again,

    Also ich habe mal einen Versuch gestartet...

    Das mit dem IN Statement klappt wunderbar und erspart vor allem Platz in dem kleinen SSRS Query Editor Fenster :P

    Was allerdings nicht funktioniert ist meine Subquery :( Leider bekomme ich dann die Summe aller angegeben Sites in jeder Zeile, was hier allerdings nichts nutzt, denn ich möchte ja die Gesamtzahl aller Rechner pro Site und dann den prozentualen Anteil der Site mit den aktuellen Virendefinitionen ausgeben.

    Gibt es eine Möglichkeit der Subquery ein Feld der aktuellen Zeile zu übergeben? Also in meinem Falle dann den Namen der Site, damit er eben immer nur die der Site zählt und als 3. Feld niederschreibt?

    So sieht meine Query jetzt nach der Bearbeitung aus, funktioniert aber nur so wie eben beschrieben:

    
    DECLARE @VARIABLE1 VARCHAR(9)
    
    SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties
    
    
    SELECT     EPOBranchNode.NodeName, COUNT(EPOProductProperties.DATVer) AS Part,
    
    						(SELECT    COUNT(EPOProductProperties.DATVer)
    
    							FROM         EPOLeafNode INNER JOIN
    
    									EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN
    
    									EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID
    
    							WHERE     (EPOProductProperties.ProductCode LIKE 'VIRUS%')
    
    								AND EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR00','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH00','TW01','TH01','TR01','UK01','US00','VN01')
    
    								) AS Total
    
    FROM         EPOLeafNode INNER JOIN
    
                          EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN
    
                          EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID
    
    WHERE     (EPOProductProperties.ProductCode LIKE 'VIRUS%')
    
    	AND EPOBranchNode.NodeName IN ('AR01','AT01','AU01','BE01','BR00','BG01','CA01','CL01','CN00','CO01','HR01','CZ00','DK01','DO01','EC01','FI01','FR00','DE00','HU00','IN01','ID01','IE01','IT01','JP01','KR01','MY01','MY02','MX01','NL01','NO01','PK01','PE01','PH01','PL01','PT01','RO01','RU01','SG01','ZA01','ES00','SE02','CH00','TW01','TH01','TR01','UK01','US00','VN01')
    
    GROUP BY EPOBranchNode.NodeName, EPOProductProperties.DATVer
    
    HAVING EPOProductProperties.DATVer = @VARIABLE1
    
    ORDER BY EPOBranchNode.NodeName
    
    

    P.S.: Sorry für den Doppelpost, entweder ich bin zu doof den Edit Button zu finden, oder es gibt keinen :P

    MfG

    digga_mies

  17. Bin jetzt soweit, das ich den Anteil rausbekomme...Jetzt fehlt nur noch die totale Anzahl der Clients, damit ich sie als Prozentzahl ausgeben kann...

    Das hier wäre jetzt mein Code:

    
    DECLARE @VARIABLE1 VARCHAR(9)
    
    SELECT @VARIABLE1 = MAX(DATVer) FROM EPOProductProperties
    
    
    SELECT     EPOBranchNode.NodeName, EPOProductProperties.DATVer, COUNT(EPOProductProperties.DATVer) AS Part                     
    
    FROM         EPOLeafNode INNER JOIN
    
                          EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN
    
                          EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID
    
    WHERE     (EPOProductProperties.ProductCode LIKE 'VIRUS%')
    
    	AND EPOBranchNode.NodeName = 'AR01'
    
    	OR EPOBranchNode.NodeName = 'AT01'
    
    	OR EPOBranchNode.NodeName = 'AU01'
    
    	OR EPOBranchNode.NodeName = 'BE01'
    
    	OR EPOBranchNode.NodeName = 'BR00'
    
    	OR EPOBranchNode.NodeName = 'BG01'
    
    	OR EPOBranchNode.NodeName = 'CA01'
    
    	OR EPOBranchNode.NodeName = 'CL01'
    
    	OR EPOBranchNode.NodeName = 'CN00'
    
    	OR EPOBranchNode.NodeName = 'CO01'
    
    	OR EPOBranchNode.NodeName = 'HR01'
    
    	OR EPOBranchNode.NodeName = 'CZ00'
    
    	OR EPOBranchNode.NodeName = 'DK01'
    
    	OR EPOBranchNode.NodeName = 'DO01'
    
    	OR EPOBranchNode.NodeName = 'EC01'
    
    	OR EPOBranchNode.NodeName = 'FI01'
    
    	OR EPOBranchNode.NodeName = 'FR00'
    
    	OR EPOBranchNode.NodeName = 'DE00'
    
    	OR EPOBranchNode.NodeName = 'HU00'
    
    	OR EPOBranchNode.NodeName = 'IN01'
    
    	OR EPOBranchNode.NodeName = 'ID01'
    
    	OR EPOBranchNode.NodeName = 'IE01'
    
    	OR EPOBranchNode.NodeName = 'IT01'
    
    	OR EPOBranchNode.NodeName = 'JP01'
    
    	OR EPOBranchNode.NodeName = 'KR01'
    
    	OR EPOBranchNode.NodeName = 'MY01'
    
    	OR EPOBranchNode.NodeName = 'MY02'
    
    	OR EPOBranchNode.NodeName = 'MX01'
    
    	OR EPOBranchNode.NodeName = 'NL01'
    
    	OR EPOBranchNode.NodeName = 'NO01'
    
    	OR EPOBranchNode.NodeName = 'PK01'
    
    	OR EPOBranchNode.NodeName = 'PE01'
    
    	OR EPOBranchNode.NodeName = 'PH01'
    
    	OR EPOBranchNode.NodeName = 'PL01'
    
    	OR EPOBranchNode.NodeName = 'PT01'
    
    	OR EPOBranchNode.NodeName = 'RO01'
    
    	OR EPOBranchNode.NodeName = 'RU01'
    
    	OR EPOBranchNode.NodeName = 'SG01'
    
    	OR EPOBranchNode.NodeName = 'ZA01'
    
    	OR EPOBranchNode.NodeName = 'ES00'
    
    	OR EPOBranchNode.NodeName = 'SE02'
    
    	OR EPOBranchNode.NodeName = 'CH00'
    
    	OR EPOBranchNode.NodeName = 'TW01'
    
    	OR EPOBranchNode.NodeName = 'TH01'
    
    	OR EPOBranchNode.NodeName = 'TR01'
    
    	OR EPOBranchNode.NodeName = 'UK01'
    
    	OR EPOBranchNode.NodeName = 'US00'
    
    	OR EPOBranchNode.NodeName = 'VN01'
    
    GROUP BY EPOBranchNode.NodeName, EPOProductProperties.DATVer
    
    HAVING EPOProductProperties.DATVer = @VARIABLE1
    
    ORDER BY EPOBranchNode.NodeName
    
    

  18. Holla,

    Ich bin langsam am verzweifeln mit diesen doofen SQL Abfragen :P

    Aber man muss ja tun, was man tun muss. Also im Endeffekt geht es hierbei um McAffee EPO Abfragen, man muss sich aber nicht damit auskennen um mir hier zu helfen denke ich.

    Probelm ist Folgendes: Ich möchte einen Report erstellen, der mir mit einem Netz- oder auch Radardiagramm eine Übersicht über die verteilten Virendefinitionen pro AD Site gibt.

    Das ganze soll aber Prozentual angezeigt werden, also wie viel Prozent der Clients pro Site haben einen Virendefinitionsstand der letzten 4 Versionen.

    Leider bekomme ich es momentan nicht hin, die Clients einer Site zu zählen. So das ich im Ergebnis immer die Site, dann die totale Anzahl und dann die Anzahl der Clients mit aktuellem Virendefinitionen bekomme. Ich weiß, das ich das voraussichtlich irgendwie mit Subselects machen muss. Aber irgendwie bekomme ich das ganze nicht hin. Hat jemand eine Idee?

    EPOBranchNode.NodeName ist hier der Name der Site,

    EPOProductProperties.DATVer ist die Version der Virendefinitionen.

    
    SELECT     EPOLeafNode.NodeName AS ComputerName, EPOBranchNode.NodeName, 
    
                          EPOProductProperties.DATVer,
    
                          (SELECT     MAX(DATVer)
    
                                FROM          EPOProductProperties
    
                                WHERE      (ProductCode = 'VIRUSCAN8700')
    
                                GROUP BY ProductCode) AS MaxDat
    
    FROM         EPOLeafNode INNER JOIN
    
                          EPOBranchNode ON EPOLeafNode.ParentID = EPOBranchNode.AutoID INNER JOIN
    
                          EPOProductProperties ON EPOLeafNode.AutoID = EPOProductProperties.ParentID
    
    WHERE     (EPOProductProperties.ProductCode LIKE 'VIRUS%')
    
    	AND EPOBranchNode.NodeName = 'AR01'
    
    	OR EPOBranchNode.NodeName = 'AT01'
    
    	OR EPOBranchNode.NodeName = 'AU01'
    
    	OR EPOBranchNode.NodeName = 'BE01'
    
    	OR EPOBranchNode.NodeName = 'BR00'
    
    	OR EPOBranchNode.NodeName = 'BG01'
    
    	OR EPOBranchNode.NodeName = 'CA01'
    
    	OR EPOBranchNode.NodeName = 'CL01'
    
    	OR EPOBranchNode.NodeName = 'CN00'
    
    	OR EPOBranchNode.NodeName = 'CO01'
    
    	OR EPOBranchNode.NodeName = 'HR01'
    
    	OR EPOBranchNode.NodeName = 'CZ00'
    
    	OR EPOBranchNode.NodeName = 'DK01'
    
    	OR EPOBranchNode.NodeName = 'DO01'
    
    	OR EPOBranchNode.NodeName = 'EC01'
    
    	OR EPOBranchNode.NodeName = 'FI01'
    
    	OR EPOBranchNode.NodeName = 'FR00'
    
    	OR EPOBranchNode.NodeName = 'DE00'
    
    	OR EPOBranchNode.NodeName = 'HU00'
    
    	OR EPOBranchNode.NodeName = 'IN01'
    
    	OR EPOBranchNode.NodeName = 'ID01'
    
    	OR EPOBranchNode.NodeName = 'IE01'
    
    	OR EPOBranchNode.NodeName = 'IT01'
    
    	OR EPOBranchNode.NodeName = 'JP01'
    
    	OR EPOBranchNode.NodeName = 'KR01'
    
    	OR EPOBranchNode.NodeName = 'MY01'
    
    	OR EPOBranchNode.NodeName = 'MY02'
    
    	OR EPOBranchNode.NodeName = 'MX01'
    
    	OR EPOBranchNode.NodeName = 'NL01'
    
    	OR EPOBranchNode.NodeName = 'NO01'
    
    	OR EPOBranchNode.NodeName = 'PK01'
    
    	OR EPOBranchNode.NodeName = 'PE01'
    
    	OR EPOBranchNode.NodeName = 'PH01'
    
    	OR EPOBranchNode.NodeName = 'PL01'
    
    	OR EPOBranchNode.NodeName = 'PT01'
    
    	OR EPOBranchNode.NodeName = 'RO01'
    
    	OR EPOBranchNode.NodeName = 'RU01'
    
    	OR EPOBranchNode.NodeName = 'SG01'
    
    	OR EPOBranchNode.NodeName = 'ZA01'
    
    	OR EPOBranchNode.NodeName = 'ES00'
    
    	OR EPOBranchNode.NodeName = 'SE02'
    
    	OR EPOBranchNode.NodeName = 'CH00'
    
    	OR EPOBranchNode.NodeName = 'TW01'
    
    	OR EPOBranchNode.NodeName = 'TH01'
    
    	OR EPOBranchNode.NodeName = 'TR01'
    
    	OR EPOBranchNode.NodeName = 'UK01'
    
    	OR EPOBranchNode.NodeName = 'US00'
    
    	OR EPOBranchNode.NodeName = 'VN01'
    
    GROUP BY EPOBranchNode.NodeName, EPOLeafNode.NodeName, EPOProductProperties.DATVer
    
    ORDER BY NodeName, ComputerName

    Ich hoffe jemand von euch hat eine Idee. Ich muss leider so eklig über die Sites filtern, schön ist das nicht, aber so geht es am Besten.

    Grüße,

    digga_mies :bimei

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...