Nutzungsgrad eines Betriebsmittels nach Monaten

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

 

Berichtsname

MDNGEM

Voraussetzungen

Maschinendatenerfassung

Tabelle(n)

MDZLOG (Betriebsmittel-Zeitkonto)

Prozedur

MDE_NutzungsgradBetriebsmittelMonat

Parameter

Firmennummer

Betriebsmittelnummer

Von Datum

Bis Datum

Ergebnistabelle

Betriebsmittelnummer

Bezeichnung des Betriebsmittels

Jahr/Monat

'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

Liniendiagramm

 

 

CREATE    PROCEDURE MDE_NutzungsgradBetriebsmittelMonat ( @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

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

,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

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

,MDZLOG.ZSISON

,PAUART.BGBEZ1

ORDER BY

 MDZLOG.ZSAGRP

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