Hi zusammen,
anbei ein SQL, das euch Attribute, eigene Felder und Merkmale des gewählten Artikels anzeigt:
anbei ein SQL, das euch Attribute, eigene Felder und Merkmale des gewählten Artikels anzeigt:
SQL:
-- Attribute / Eigene Felder
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 tartikel.kArtikel = @Key
--Merkmale
UNION
SELECT 'Merkmal' AS Typ,
tMerkmalSprache.cName AS 'Name',
tMerkmalWertSprache.cWert AS Wert
FROM tartikel
JOIN dbo.tSpracheUsed ON nStandard = 1
JOIN tArtikelMerkmal ON tArtikelMerkmal.kArtikel = tartikel.kArtikel
JOIN tMerkmal ON tMerkmal.kMerkmal = tArtikelMerkmal.kMerkmal
JOIN tMerkmalSprache ON tMerkmalSprache.kMerkmal = tMerkmal.kMerkmal
AND tMerkmalSprache.kSprache = tSpracheUsed.kSprache
JOIN tMerkmalWert ON tMerkmalWert.kMerkmalWert = tArtikelMerkmal.kMerkmalWert
JOIN tMerkmalWertSprache ON tMerkmalWertSprache.kMerkmalWert = tMerkmalWert.kMerkmalWert
AND tMerkmalWertSprache.kSprache = tSpracheUsed.kSprache
WHERE tartikel.kArtikel = @Key
ORDER BY Typ, 'Name'