Das folgende SQL Script löscht die JTL Internen Stücklisten, wenn dort Informationen im Attribute / Freifeld, welches in Zeile 1 angegeben ist vorhanden sind. Es wird dabei jedoch nicht geprüft, ob diese inhaltlich gleich der Stückliste sind.
declare @attribute VARCHAR(200) = 'Komponente1' delete from tStueckliste where kStueckliste IN ( select a.kStueckliste from tartikel a join dbo.tArtikelAttribut a1 on a1.kArtikel = a.kArtikel join dbo.tArtikelAttributSprache aas on aas.kArtikelAttribut = a1.kArtikelAttribut join dbo.tAttributSprache as1 on as1.kAttribut = a1.kAttribut and as1.kSprache = 0 where as1.cName = @attribute and ISNULL(aas.cWertVarchar,'') != '' and a.kStueckliste != 0 ) update a set a.kStueckliste = 0 from tartikel a join dbo.tArtikelAttribut a1 on a1.kArtikel = a.kArtikel join dbo.tArtikelAttributSprache aas on aas.kArtikelAttribut = a1.kArtikelAttribut join dbo.tAttributSprache as1 on as1.kAttribut = a1.kAttribut and as1.kSprache = 0 where as1.cName = @attribute and ISNULL(aas.cWertVarchar,'') != '' and a.kStueckliste != 0