Wiederbeschaffungszeit Schnelländerung

Nico1991

Mitglied
Hallo zusammen,

ist es möglich bei einer Wiederbeschaffungszeit gefilterter Artikel eine Schnelländerung zu machen? Wir haben ein paar "Atllasten" in denen eine Wiederbeschaffungszeit von 0 Tagen hinterlegt ist.

Ich würde gerne für einen eingeschränkten Artikelnummernbereich mit [Beschaffung = Ja] die Wiederbeschaffungszeit auf 3 setzen, überall da, wo sie exakt 0 ist. Via Schnelländerung bekomme ich die Daten gefiltert, aber ich kann das Feld [Beschaffung in Tagen] im Artikelstamm nicht als zu änderndes Feld auswählen.

Gerne auch auf Datenbankebene.

Zusatz: Geht das auch in dem Feld der eingetragenen Lieferanten für einen Artikel?

Danke und Gruß
Nico
 
Moin,

das wäre möglich: Etwa so:
SQL:
  UPDATE
    KHKArtikelLieferant SET Wiederbeschaffungszeit=3
  WHERE
    Wiederbeschaffungszeit=0 AND
    Artikelnummer Between '0000000' AND '9999999'

Das Between müsste man natürlich anpassen und vorher mit:
SQL:
SELECT *
 FROM KHKArtikelLieferant
 WHERE
    Wiederbeschaffungszeit=0 AND
    Artikelnummer Between '0000000' AND '9999999'
schauen, das man exakt die gewünschten Artikel trifft.
Den Zusatz habe ich so verstanden, das man die Lieferantennummer zu ändern wünscht, und das geht so einfach nicht, weil die Einkaufspreise in der davon abhängigen Tabelle: KHKArtikelLieferantPreise stehen.

Liebe Grüße aus Hannover
 
Perfekt, danke. So kann ich schonmal sehr gut filtern.

Wie komme ich an die Beschaffungszeit in Tagen des Hauptlieferanten? Das ist das Feld, bei dem Sage bei einem Wechsel des Hauptlieferanten fragt, ob man die eingetragene Beschaffungszeit des Lieferanten übernehmen möchte.

Die Daten in den Feldern sind nicht leer, ich habe sie nur entfernt.

2.PNG
 
Hauptlieferant steht in den Artikelvarianten. Dann sähe das so aus in SQL

SQL:
 UPDATE
    KHKArtikelLieferant SET Wiederbeschaffungszeit=3
 --SELECT *
 FROM
    KHKArtikelLieferant AL
        Inner Join KHKArtikelVarianten AV
            ON    AL.Mandant=AV.Mandant AND
                AL.Artikelnummer=AV.Artikelnummer AND
                AL.AuspraegungID=AV.AuspraegungID AND
                AL.Lieferant=AV.Hauptlieferant
 WHERE
    AL.Wiederbeschaffungszeit=0 AND
    AL.Artikelnummer Between '0000000' AND '9999999'
 
Guten Morgen,

das wäre ja das gleiche Feld. Es gibt bei mir im Artikelstamm neben den Lieferantendetails und Grundlagen Reiter BEschaffung nochmal das Feld Wiederbeschaffungszeit. Das wird in der Dispo zur Kalkulation genommen.

Wie komme ich konkret an das Feld. Das muss ja auch irgendwo in der DB stehen. Siehe oben.
 
Ich habs :)

SQL:
SELECT TABLE_NAME, TABLE_SCHEMA
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME = 'Wiederbeschaffungszeit';

Und das Feld was ich brauche, ist in KHKArtikelVarianten
 
SQL:
UPDATE
    KHKArtikelVarianten
SET
    Wiederbeschaffungszeit=AL.Wiederbeschaffungszeit
FROM
    KHKArtikelVarianten AV
        Inner Join KHKArtikelLieferant AL
            ON    AV.Mandant=AL.Mandant AND
                AV.Artikelnummer=AL.Artikelnummer AND
                AV.Hauptlieferant=AL.Lieferant
WHERE
    AV.Wiederbeschaffungszeit<>AL.Wiederbeschaffungszeit AND
    AV.Artikelnummer Between '0000000' AND '9999999'
 
Zurück
Oben