Nutzungsgrad eines Betriebsmittels nach Quartalen

Zeigt die Summe der Produktiven Stunden, Begründeten Unterbrechungen und Unbegründeten Unterbrechungen eines Betriebsmittels je Quartal.

 

Berichtsname

MDNGEQ

Voraussetzungen

Maschinendatenerfassung

Tabelle(n)

MDZLOG (Betriebsmittel-Zeitkonto)

Prozedur

MDE_NutzungsgradBetriebsmittelQuartal

Parameter

Firmennummer

Betriebsmittelnummer

Von Datum

Bis Datum

Ergebnistabelle

Betriebsmittelnummer

Bezeichnung des Betriebsmittels

Jahr/Quartal

'Produktiv' oder Unterbrechungsart oder 'Unbegründet'

Summe Stunden Produktiv

Summe Stunden Begründeter Unterbrechungen

Summe Stunden Unbegründeter Unterbrechungen

Aufbereitung

Tabelle wird gedreht

Crystal-Reports

--

Excel-Diagramme

Säulendiagramm 100% gestapelt

 

CREATE  PROCEDURE MDE_NutzungsgradBetriebsmittelQuartal ( @ZSFIRM AS VARCHAR(2), @ZSAGRP AS VARCHAR(6), @ZSVDAT AS DATETIME, @ZSBDAT AS DATETIME )

AS

 

-- Meldungen des SQL-Servers abschalten

--

SET NOCOUNT ON

 

-- SQL ausführen

--

SELECT

 MDZLOG.ZSAGRP

,PAMDEP.TPNAME

,JJJJQQ = LTRIM(STR(DATEPART(yyyy, ZSVDAT))) + '/' + LTRIM(STR(DATEPART(qq,ZSVDAT)))

,ZSTEXT = CASE WHEN MDZLOG.ZSISON = 1 THEN 'Produktiv' ELSE ISNULL(PAUART.BGBEZ1, 'Unbegründet') END

,ZS_STD = SUM(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 ))

FROM  GIPSY4MDE.dbo.MDZLOG MDZLOG

 INNER JOIN  GIPSY4MDE.dbo.PAMDEP PAMDEP ON

  MDZLOG.ZSAGRP = PAMDEP.TPAGRP AND MDZLOG.ZSIOCH = PAMDEP.TPCCNT

 LEFT OUTER JOIN PAUART ON

  MDZLOG.ZSUART = PAUART.BG_KEY

WHERE

 MDZLOG.ZSFIRM = @ZSFIRM

 AND MDZLOG.ZSAGRP = @ZSAGRP

 AND (( 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

 MDZLOG.ZSAGRP

,PAMDEP.TPNAME

,LTRIM(STR(DATEPART(yyyy, ZSVDAT))) + '/' + LTRIM(STR(DATEPART(qq,ZSVDAT)))

,MDZLOG.ZSISON

,PAUART.BGBEZ1

ORDER BY

 MDZLOG.ZSAGRP

,LTRIM(STR(DATEPART(yyyy, ZSVDAT))) + '/' + LTRIM(STR(DATEPART(qq,ZSVDAT)))