Nutzungsgrad aller Betriebsmittel nach Monaten

Zeigt die Summe der Produktiven Stunden, Begründeten Unterbrechungen und Unbegründeten Unterbrechungen aller Betriebsmittel pro Monat aus dem Betriebsmittel-Zeitkonto.

 

Berichtsname

MDNGAM

Voraussetzungen

Maschinendatenerfassung

Tabelle(n)

MDZLOG (Betriebsmittel-Zeitkonto)

Prozedur

MDE_NutzungsgradAllerBMitZeitraumMonat

Parameter

Von Datum

Bis Datum

Ergebnistabelle

Jahr/Monat

Summe Stunden Produktiv

Summe Stunden Begründeter Unterbrechungen

Summe Stunden Unbegründeter Unterbrechungen

Aufbereitung

Keine

Crystal-Reports

--

Excel-Diagramme

Zylindersäulen 100% Gestapelt

 

CREATE  PROCEDURE MDE_NutzungsgradAllerBMitZeitraumMonat (@ZSVDAT AS DATETIME, @ZSBDAT AS DATETIME)

AS

 

-- Meldungen des SQL-Servers abschalten

--

SET NOCOUNT ON

 

-- SQL ausführen

--

SELECT

 JJJJMM = LEFT(CONVERT(VARCHAR(6),ZSVDAT,112),4) + '/' + RIGHT(CONVERT(VARCHAR(6),ZSVDAT,112),2)

,PRDSTD = SUM(CASE WHEN ZSISON > 0                THEN DATEDIFF(hh, CASE WHEN ZSVDAT < @ZSVDAT THEN @ZSVDAT ELSE ZSVDAT END,CASE WHEN YEAR(ZSBDAT) <= 1900 THEN @ZSBDAT ELSE CASE WHEN ZSBDAT > @ZSBDAT THEN @ZSBDAT ELSE ZSBDAT END END ) ELSE 0 END)

,UBGSTD = SUM(CASE WHEN ZSISON = 0 AND ZSUART > 0 THEN DATEDIFF(hh, CASE WHEN ZSVDAT < @ZSVDAT THEN @ZSVDAT ELSE ZSVDAT END,CASE WHEN YEAR(ZSBDAT) <= 1900 THEN @ZSBDAT ELSE CASE WHEN ZSBDAT > @ZSBDAT THEN @ZSBDAT ELSE ZSBDAT END END ) ELSE 0 END)

,UUBSTD = SUM(CASE WHEN ZSISON = 0 AND ZSUART = 0 THEN DATEDIFF(hh, CASE WHEN ZSVDAT < @ZSVDAT THEN @ZSVDAT ELSE ZSVDAT END,CASE WHEN YEAR(ZSBDAT) <= 1900 THEN @ZSBDAT ELSE CASE WHEN ZSBDAT > @ZSBDAT THEN @ZSBDAT ELSE ZSBDAT END END ) ELSE 0 END)  

FROM GIPSY4MDE.dbo.MDZLOG AS MDZLOG

 INNER JOIN GIPSY4MDE.dbo.PAMDEP AS PAMDEP ON

  ZSAGRP = TPAGRP

WHERE

 ZSIOCH  = TPCCNT -- Nur Einspritzsignale

 AND ( -- innerhalb des gewünschten Zeitraums

     ( ZSBDAT BETWEEN @ZSVDAT AND @ZSBDAT )

  OR  ( ZSVDAT BETWEEN @ZSVDAT AND @ZSBDAT )

  OR  ( ZSVDAT <= @ZSVDAT AND YEAR(ZSBDAT) <= 1900 )

  OR  ( ZSVDAT <= @ZSVDAT AND @ZSBDAT < ZSBDAT )

             )

GROUP BY

 LEFT(CONVERT(VARCHAR(6),ZSVDAT,112),4) + '/' + RIGHT(CONVERT(VARCHAR(6),ZSVDAT,112),2)

ORDER BY

 LEFT(CONVERT(VARCHAR(6),ZSVDAT,112),4) + '/' + RIGHT(CONVERT(VARCHAR(6),ZSVDAT,112),2)