SELECT
CASE
WHEN tAttribut.nAusgabeWeg = 0 THEN 'Attribut'
WHEN tAttribut.nAusgabeWeg > 0 THEN 'Eigenes Feld'
END AS Typ,
tAttributSprache.cName AS 'Name',
CASE
WHEN tFeldTyp.nDatenTyp = 0 THEN CONVERT(VARCHAR, tArtikelAttributSprache.nWertInt)
WHEN tFeldTyp.nDatenTyp = 1 THEN CONVERT(VARCHAR, tArtikelAttributSprache.fWertDecimal)
WHEN tFeldTyp.nDatenTyp = 2 THEN tArtikelAttributSprache.cWertVarchar
WHEN tFeldTyp.nDatenTyp = 3 THEN CONVERT(VARCHAR, tArtikelAttributSprache.dWertDateTime, 104)
END AS Wert
FROM tartikel
JOIN dbo.tSpracheUsed ON nStandard = 1
JOIN tArtikelAttribut ON tArtikelAttribut.kArtikel = tArtikel.kArtikel
JOIN tAttribut ON tAttribut.kAttribut = tArtikelAttribut.kAttribut
JOIN tFeldTyp ON tFeldTyp.kFeldTyp = tAttribut.kFeldTyp
JOIN tAttributSprache ON tAttributSprache.kAttribut = tArtikelAttribut.kAttribut
AND tAttributSprache.kSprache =
CASE
WHEN tAttribut.nIstMehrsprachig = 1 THEN tSpracheUsed.kSprache
ELSE 0
END
JOIN tArtikelAttributSprache ON tArtikelAttributSprache.kArtikelAttribut = tArtikelAttribut.kArtikelAttribut
AND tArtikelAttributSprache.kSprache =
CASE
WHEN tAttribut.nIstMehrsprachig = 1 THEN tSpracheUsed.kSprache
ELSE 0
END
WHERE [tArtikelAttribut].kArtikel = @key and
(tAttributSprache.cName like '%eigenes feld 1%' or tAttributSprache.cName in ('eigene feld 2','eigenes feld 3'))