Hallo zusammen,
ich versuche krampfhaft meine Wawi zu aktualisieren, bekomme aber ständig eine Fehlermeldung. Hat villeicht jemand einen Rat für mich. Der letzte Satz macht mich etwas stutzig.
Eine neue Seite für die eazybusiness-Datenbank konnte nicht belegt werden, weil in der Dateigruppe "PRIMARY" nicht genügend Speicherplatz verfügbar ist. Speicherplatz kann durch Löschen von Objekten in der Dateigruppe, Hinzufügen von Dateien zur Dateigruppe oder Festlegen der automatischen Vergrößerung für vorhandene Dateien in der Dateigruppe gewonnen werden.
Speicherplatz ist noch mehr als genügen verfügbar. Weder die Festplatte ist voll, noch habe ich die 10 GB des SQL Servers erreicht.
Vielen Dank für eure Hilfe
Gruß
Marcel
09:59:47 Fehler in der Version 1.5.7.2 beim Befehl:
==============================================IF NOT EXISTS (SELECT * FROM dbo.tOptions WHERE cKey='PreischeckCallInit')
BEGIN
-- Vorgang 1 - Auftrag angelegt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT 1 AS kVorgang, tBestellung.tKunde_kKunde AS kKunde, tBestellung.kBestellung AS kAuftrag, tBestellung.kBestellung AS kKey,
tBestellung.cBestellNr AS cValue1, dbo.tPlattform.cName AS cValue2, ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tBestellung.tBenutzer_kBenutzer AS kBenutzer
FROM dbo.tBestellung
JOIN dbo.tPlattform ON tPlattform.nPlattform = tBestellung.nPlatform
WHERE tBestellung.cType = 'B';
--Vorgang 2 - Lieferschein Versendet
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tBestellung.tKunde_kKunde AS kKunde, tLieferschein.kBestellung AS kAuftrag, 2 AS kVorgang, tLieferschein.kLieferschein AS kKey,
tLieferschein.cLieferscheinNr AS cValue1, tBestellung.cBestellNr AS cValue2, ISNULL(tLieferschein.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tLieferschein.kBenutzer AS kBenutzer
FROM dbo.tLieferschein
JOIN dbo.tBestellung ON tBestellung.kBestellung = tLieferschein.kBestellung;
-- Vorgang 4 - Abonement angelegt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT tBestellung.tKunde_kKunde,
tBestellung.kBestellung,
4,
tintervall.kIntervall,
tintervall.kIntervall,
NULL,
tBestellung.cWaehrung,
tBestellungEckDaten.fWert,
ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00'),
NULL
FROM dbo.tintervall
JOIN dbo.tBestellung ON tBestellung.kBestellung = tintervall.kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung;
--Vorgang 6 - Retoure Angelegt
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, 6 as kVorgang, tRMRetoure.kRMRetoure AS kKey,
tRMRetoure.cRetoureNr AS cValue1, tBestellung.cBestellNr AS cValue2, ISNULL(tRMRetoure.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tRMRetoure.kBenutzer AS kBenutzer
FROM tRMRetoure
JOIN dbo.tBestellung ON tBestellung.kBestellung = tRMRetoure.kBestellung;
--Vorgang 7 - Retoure eingetroffen
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT 7 AS kVorgang, tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, tRMRetoure.kRMRetoure AS kKey, tRMRetoure.cRetoureNr AS cValue1, ISNULL(tBestellung.cBestellNr, '') as cValue2, ISNULL(MAX(tRMStatusVerlauf.dErstellt), '1970-01-01T00:00:00') AS dErstellt, MAX(tRMRetoure.kBenutzer) AS kBenutzer
from dbo.tRMRetoure
JOIN dbo.tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMRetourePos = tRMRetourePos.kRMRetourePos
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
LEFT JOIN dbo.tBestellung ON tBestellung.kBestellung = tRmRetoure.kBestellung
WHERE tRMStatus.nStatusTyp = 1
--es gibt keine Position mehr auf einem niedrigeren Status
AND NOT EXISTS
(SELECT *
FROM dbo.tRMRetourePos
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMStatusVerlauf = tRMRetourePos.kRMStatusVerlauf
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
WHERE tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
AND dbo.tRmStatus.nStatusTyp = 0)
--Wir brauchen den aeltesten Eintrag
AND NOT EXISTS
( SELECT *
FROM dbo.tRMStatusVerlauf NewerStatus
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = NewerStatus.kRMStatus
WHERE tRMStatus.nStatusTyp = 1
AND NewerStatus.kRMRetourePos = tRMRetourePos.kRMRetourePos
AND NewerStatus.dErstellt < tRMStatusVerlauf.dErstellt
)
GROUP BY tRMRetoure.kKunde, tRMRetoure.kBestellung ,tRMRetoure.kRMRetoure, tRMRetoure.cRetoureNr, ISNULL(tBestellung.cBestellNr, '');
--Vorgang 8 - Retoure Abgeschlossen
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, 8 AS kVorgang, tRMRetoure.kRMRetoure AS kKey,
tRMRetoure.cRetoureNr AS cValue1, ISNULL(tBestellung.cBestellNr, '') as cValue2, ISNULL(MAX(tRMStatusVerlauf.dErstellt), '1970-01-01T00:00:00') AS dErstellt, MAX(tRMRetoure.kBenutzer) AS kBenutzer
FROM dbo.tRMRetoure
JOIN dbo.tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMRetourePos = tRMRetourePos.kRMRetourePos
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
LEFT JOIN dbo.tBestellung ON tBestellung.kBestellung = tRmRetoure.kBestellung
WHERE tRMStatus.nStatusTyp = 2
--es gibt keine Position mehr auf einem niedrigeren Status
AND NOT EXISTS
(SELECT *
FROM dbo.tRMRetourePos
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMStatusVerlauf = tRMRetourePos.kRMStatusVerlauf
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
WHERE tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
AND dbo.tRmStatus.nStatusTyp = 1)
--Wir brauchen den aeltesten Eintrag
AND NOT EXISTS
( SELECT *
FROM dbo.tRMStatusVerlauf NewerStatus
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = NewerStatus.kRMStatus
WHERE tRMStatus.nStatusTyp = 2
AND NewerStatus.kRMRetourePos = tRMRetourePos.kRMRetourePos
AND NewerStatus.dErstellt < tRMStatusVerlauf.dErstellt
)
GROUP BY tRMRetoure.kKunde, tRMRetoure.kBestellung ,tRMRetoure.kRMRetoure, tRMRetoure.cRetoureNr, ISNULL(tBestellung.cBestellNr, '');
-- Vorgang 9 Rechnungskorrektur erstellt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT tgutschrift.kKunde,
trechnung.tBestellung_kBestellung,
9,
tgutschrift.kGutschrift,
tgutschrift.cGutschriftNr,
tRechnung.cRechnungsNr,
tgutschrift.cWaehrung,
Positionen.Wert,
ISNULL(tgutschrift.dErstellt, '1970-01-01T00:00:00'),
tgutschrift.kBenutzer
FROM dbo.tgutschrift
JOIN dbo.tRechnung ON trechnung.kRechnung = tgutschrift.kRechnung
JOIN (SELECT tGutschriftPos.tGutschrift_kGutschrift AS kGutschrift,
SUM(tGutschriftPos.fVKPreis * tGutschriftPos.nAnzahl) AS Wert
FROM dbo.tGutschriftPos
GROUP BY tGutschriftPos.tGutschrift_kGutschrift)
AS Positionen ON Positionen.kGutschrift = tgutschrift.kGutschrift
--Vorgang 11 - Auszahlung f�r Gutschrift erzeugt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue3, fValue1, fValue2, dErstellt, kBenutzer)
SELECT 11 AS kVorgang, tZahlungsabgleichAusgang.kKunde AS kKunde, tZahlung.kBestellung AS kAuftrag, tgutschrift.kGutschrift AS kKey,
tgutschrift.cGutschriftNr AS cValue1, tBestellungEckDaten.cWaehrung AS cValue3, dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1, tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2, ISNULL(tZahlung.dDatum, '1970-01-01T00:00:00') AS dErstellt, tZahlungsabgleichAusgang.kBuchungsbenutzer as kBenutzer
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung
--Vorgang 12 Mahnung erstellt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT trechnung.tKunde_kKunde,
trechnung.tBestellung_kBestellung,
12,
tZahlungsErinnerung.kZahlungsErinnerung,
trechnung.cRechnungsNr,
tZahlungsErinnerung.kMahnstufe,
tBestellung.cWaehrung,
tZahlungsErinnerung.fGebuehr + tZahlungsErinnerung.fBruttoBetrag,
ISNULL(tZahlungsErinnerung.dErstellt, '1970-01-01T00:00:00'),
tZahlungsErinnerung.kBenutzer
FROM dbo.tZahlungsErinnerung
JOIN dbo.tRechnung ON trechnung.kRechnung = tZahlungsErinnerung.kRechnung
JOIN dbo.tBestellung ON trechnung.tBestellung_kBestellung = tBestellung.kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung
WHERE trechnung.dDruckdatum IS NULL
AND trechnung.dEmailversandt IS NULL;
--Vorgang 15 - Nachricht an Kunde gesendet
UPDATE dbo.tMessages SET sSentMailDate = ISNULL(TRY_CONVERT(DATETIME, sSentMailDate), '1970-01-01T00:00:00');
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kKey, cValue1, dErstellt)
SELECT 15 AS kVorgang, tMessages.kKunde AS kKunde, tMessages.kMessages AS kKey,
CASE WHEN LEN(tMessages.sBereff) >= 255
THEN CONCAT(LEFT(tMessages.sBereff, 252), '...')
ELSE
tMessages.sBereff
END AS cValue1,
ISNULL(tMessages.sSentMailDate, '1970-01-01T00:00:00') AS dErstellt
FROM dbo.tMessages;
-- Vorgang 16 GuthabenVonShopErhalten
INSERT INTO Kunde.tHistorie (kKunde, kVorgang, kKey, cValue1, cValue3, fValue1, dErstellt)
SELECT dbo.tGutschein.kKunde AS kKunde, 16 AS kVorgang, dbo.tGutschein.kGutschein AS kKey, tShop.cName AS cValue1, tWaehrung.kWaehrung AS cValue3, dbo.tGutschein.fWert AS fValue1, ISNULL(dbo.tGutschein.dErstellt, '1970-01-01T00:00:00') as dErstellt
FROM dbo.tGutschein
JOIN dbo.tShop ON tShop.kShop = dbo.tGutschein.kShop
JOIN dbo.tWaehrung ON tWaehrung.nStandard = 1;
--Vorgang 18 Angebot Erstellt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, dErstellt, kBenutzer)
SELECT 18 AS kVorgang, tBestellung.tKunde_kKunde AS kKunde, tBestellung.kBestellung AS kAuftrag, tBestellung.kBestellung AS kKey,
tBestellung.cBestellNr AS cValue1, ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00') as dErstellt, tBestellung.tBenutzer_kBenutzer AS kBenutzer
FROM dbo.tBestellung
WHERE tBestellung.cType = 'A';
--Vorgang 20 und 21
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
fValue2,
dErstellt,
kBenutzer)
SELECT tBestellung.tKunde_kKunde,
tZahlung.kBestellung,
CASE WHEN (tBestellungEckDaten.fWert = (SELECT SUM (alle.fBetrag) FROM tZahlung AS alle WHERE alle.kZahlung <= tZahlung.kZahlung AND alle.kBestellung = tZahlung.kBestellung)) THEN 21 ELSE 20 END,
tZahlung.kZahlung,
trechnung.cRechnungsNr,
tZahlungsart.cName,
tBestellung.cWaehrung,
tZahlung.fBetrag,
ROUND( tBestellungEckDaten.fWert - (SELECT SUM (alle.fBetrag) FROM tZahlung AS alle WHERE alle.kZahlung <= tZahlung.kZahlung AND alle.kBestellung = tZahlung.kBestellung), 2),
ISNULL(tZahlung.dDatum, '1970-01-01T00:00:00'),
tZahlung.kBenutzer
FROM dbo.tZahlung
JOIN dbo.tBestellung ON tBestellung.kBestellung = tZahlung.kBestellung
LEFT JOIN dbo.trechnung ON tBestellung.kBestellung = trechnung.tBestellung_kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung
JOIN dbo.tZahlungsart ON tZahlungsart.kZahlungsart = tZahlung.kZahlungsart
WHERE tZahlung.fBetrag > 0.0;
--Vorgang 24 -Teilrueckzahlung gesendet
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue3,
fValue1,
fValue2,
dErstellt)
SELECT dbo.tZahlungsabgleichAusgang.kKunde AS kKunde,
tZahlung.kBestellung AS kAuftrag,
24 AS kVorgang,
dbo.tZahlungsabgleichAusgang.kZahlungsabgleichAusgang AS kKey,
tZahlung.cName AS cValue1,
tBestellungEckDaten.cWaehrung AS cValue3,
dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1,
tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2,
ISNULL(dbo.tZahlungsabgleichAusgang.dAnlagedatum, '1970-01-01T00:00:00')
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON dbo.tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
LEFT JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = dbo.tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung;
--Vorgang 25 -RueckzahlungGesendet gesendet
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue3,
fValue1,
fValue2,
dErstellt)
SELECT dbo.tZahlungsabgleichAusgang.kKunde AS kKunde,
tZahlung.kBestellung AS kAuftrag,
25 AS kVorgang,
dbo.tZahlungsabgleichAusgang.kZahlungsabgleichAusgang AS kKey,
tZahlung.cName AS cValue1,
tBestellungEckDaten.cWaehrung AS cValue3,
dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1,
tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2,
ISNULL(dbo.tZahlungsabgleichAusgang.dAnlagedatum, '1970-01-01T00:00:00')
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON dbo.tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
LEFT JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = dbo.tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung;
UPDATE tVersandschnittstellenKonfiguration SET cValue = 2 WHERE cKey = 'MinimumAgeType' AND cValue = 99;
UPDATE dbo.tliefartikel set tliefartikel.nStandard = 0 WHERE tliefartikel.nStandard IS NULL
-- Doppelte Standardlieferanten entfernen
UPDATE dbo.tliefartikel
SET nStandard = 0
WHERE kLiefArtikel IN
(
SELECT kLiefArtikel
FROM tliefartikel
WHERE tArtikel_kArtikel IN (
SELECT tArtikel_kArtikel
FROM dbo.tliefartikel
WHERE tliefartikel.nStandard = 1
GROUP BY tArtikel_kArtikel
HAVING COUNT(tArtikel_kArtikel) > 1
)
AND kLiefArtikel NOT IN (
SELECT MIN(kLiefArtikel)
FROM dbo.tliefartikel
WHERE tliefartikel.nStandard = 1
GROUP BY tArtikel_kArtikel
HAVING COUNT(tArtikel_kArtikel) > 1
)
)
AND nStandard <> 0
INSERT INTO
dbo.tOptions(cKey,cValue)
VALUES
('PreischeckCallInit', 'https://preischeck.api.jtl-software.com/init.php'),
('PreischeckCallExchangeProductIDs', 'https://preischeck.api.jtl-software.com/exchangeProductIDs.php'),
('PreischeckCallGetProductHistory', 'https://preischeck.api.jtl-software.com/getProductHistory.php'),
('PreischeckCallNotifyProductId', 'https://preischeck.api.jtl-software.com/notifyProductID.php');
END==============================================
FEHLER:
Eine neue Seite für die eazybusiness-Datenbank konnte nicht belegt werden, weil in der Dateigruppe "PRIMARY" nicht genügend Speicherplatz verfügbar ist. Speicherplatz kann durch Löschen von Objekten in der Dateigruppe, Hinzufügen von Dateien zur Dateigruppe oder Festlegen der automatischen Vergrößerung für vorhandene Dateien in der Dateigruppe gewonnen werden.
ich versuche krampfhaft meine Wawi zu aktualisieren, bekomme aber ständig eine Fehlermeldung. Hat villeicht jemand einen Rat für mich. Der letzte Satz macht mich etwas stutzig.
Eine neue Seite für die eazybusiness-Datenbank konnte nicht belegt werden, weil in der Dateigruppe "PRIMARY" nicht genügend Speicherplatz verfügbar ist. Speicherplatz kann durch Löschen von Objekten in der Dateigruppe, Hinzufügen von Dateien zur Dateigruppe oder Festlegen der automatischen Vergrößerung für vorhandene Dateien in der Dateigruppe gewonnen werden.
Speicherplatz ist noch mehr als genügen verfügbar. Weder die Festplatte ist voll, noch habe ich die 10 GB des SQL Servers erreicht.
Vielen Dank für eure Hilfe
Gruß
Marcel
09:59:47 Fehler in der Version 1.5.7.2 beim Befehl:
==============================================IF NOT EXISTS (SELECT * FROM dbo.tOptions WHERE cKey='PreischeckCallInit')
BEGIN
-- Vorgang 1 - Auftrag angelegt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT 1 AS kVorgang, tBestellung.tKunde_kKunde AS kKunde, tBestellung.kBestellung AS kAuftrag, tBestellung.kBestellung AS kKey,
tBestellung.cBestellNr AS cValue1, dbo.tPlattform.cName AS cValue2, ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tBestellung.tBenutzer_kBenutzer AS kBenutzer
FROM dbo.tBestellung
JOIN dbo.tPlattform ON tPlattform.nPlattform = tBestellung.nPlatform
WHERE tBestellung.cType = 'B';
--Vorgang 2 - Lieferschein Versendet
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tBestellung.tKunde_kKunde AS kKunde, tLieferschein.kBestellung AS kAuftrag, 2 AS kVorgang, tLieferschein.kLieferschein AS kKey,
tLieferschein.cLieferscheinNr AS cValue1, tBestellung.cBestellNr AS cValue2, ISNULL(tLieferschein.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tLieferschein.kBenutzer AS kBenutzer
FROM dbo.tLieferschein
JOIN dbo.tBestellung ON tBestellung.kBestellung = tLieferschein.kBestellung;
-- Vorgang 4 - Abonement angelegt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT tBestellung.tKunde_kKunde,
tBestellung.kBestellung,
4,
tintervall.kIntervall,
tintervall.kIntervall,
NULL,
tBestellung.cWaehrung,
tBestellungEckDaten.fWert,
ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00'),
NULL
FROM dbo.tintervall
JOIN dbo.tBestellung ON tBestellung.kBestellung = tintervall.kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung;
--Vorgang 6 - Retoure Angelegt
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, 6 as kVorgang, tRMRetoure.kRMRetoure AS kKey,
tRMRetoure.cRetoureNr AS cValue1, tBestellung.cBestellNr AS cValue2, ISNULL(tRMRetoure.dErstellt, '1970-01-01T00:00:00') AS dErstellt, tRMRetoure.kBenutzer AS kBenutzer
FROM tRMRetoure
JOIN dbo.tBestellung ON tBestellung.kBestellung = tRMRetoure.kBestellung;
--Vorgang 7 - Retoure eingetroffen
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT 7 AS kVorgang, tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, tRMRetoure.kRMRetoure AS kKey, tRMRetoure.cRetoureNr AS cValue1, ISNULL(tBestellung.cBestellNr, '') as cValue2, ISNULL(MAX(tRMStatusVerlauf.dErstellt), '1970-01-01T00:00:00') AS dErstellt, MAX(tRMRetoure.kBenutzer) AS kBenutzer
from dbo.tRMRetoure
JOIN dbo.tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMRetourePos = tRMRetourePos.kRMRetourePos
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
LEFT JOIN dbo.tBestellung ON tBestellung.kBestellung = tRmRetoure.kBestellung
WHERE tRMStatus.nStatusTyp = 1
--es gibt keine Position mehr auf einem niedrigeren Status
AND NOT EXISTS
(SELECT *
FROM dbo.tRMRetourePos
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMStatusVerlauf = tRMRetourePos.kRMStatusVerlauf
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
WHERE tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
AND dbo.tRmStatus.nStatusTyp = 0)
--Wir brauchen den aeltesten Eintrag
AND NOT EXISTS
( SELECT *
FROM dbo.tRMStatusVerlauf NewerStatus
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = NewerStatus.kRMStatus
WHERE tRMStatus.nStatusTyp = 1
AND NewerStatus.kRMRetourePos = tRMRetourePos.kRMRetourePos
AND NewerStatus.dErstellt < tRMStatusVerlauf.dErstellt
)
GROUP BY tRMRetoure.kKunde, tRMRetoure.kBestellung ,tRMRetoure.kRMRetoure, tRMRetoure.cRetoureNr, ISNULL(tBestellung.cBestellNr, '');
--Vorgang 8 - Retoure Abgeschlossen
INSERT INTO Kunde.tHistorie (kKunde, kAuftrag, kVorgang, kKey, cValue1, cValue2, dErstellt, kBenutzer)
SELECT tRMRetoure.kKunde AS kKunde, tRMRetoure.kBestellung AS kAuftrag, 8 AS kVorgang, tRMRetoure.kRMRetoure AS kKey,
tRMRetoure.cRetoureNr AS cValue1, ISNULL(tBestellung.cBestellNr, '') as cValue2, ISNULL(MAX(tRMStatusVerlauf.dErstellt), '1970-01-01T00:00:00') AS dErstellt, MAX(tRMRetoure.kBenutzer) AS kBenutzer
FROM dbo.tRMRetoure
JOIN dbo.tRMRetourePos ON tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMRetourePos = tRMRetourePos.kRMRetourePos
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
LEFT JOIN dbo.tBestellung ON tBestellung.kBestellung = tRmRetoure.kBestellung
WHERE tRMStatus.nStatusTyp = 2
--es gibt keine Position mehr auf einem niedrigeren Status
AND NOT EXISTS
(SELECT *
FROM dbo.tRMRetourePos
JOIN dbo.tRMStatusVerlauf ON tRMStatusVerlauf.kRMStatusVerlauf = tRMRetourePos.kRMStatusVerlauf
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = tRMStatusVerlauf.kRMStatus
WHERE tRMRetourePos.kRMRetoure = tRMRetoure.kRMRetoure
AND dbo.tRmStatus.nStatusTyp = 1)
--Wir brauchen den aeltesten Eintrag
AND NOT EXISTS
( SELECT *
FROM dbo.tRMStatusVerlauf NewerStatus
JOIN dbo.tRMStatus ON tRMStatus.kRMStatus = NewerStatus.kRMStatus
WHERE tRMStatus.nStatusTyp = 2
AND NewerStatus.kRMRetourePos = tRMRetourePos.kRMRetourePos
AND NewerStatus.dErstellt < tRMStatusVerlauf.dErstellt
)
GROUP BY tRMRetoure.kKunde, tRMRetoure.kBestellung ,tRMRetoure.kRMRetoure, tRMRetoure.cRetoureNr, ISNULL(tBestellung.cBestellNr, '');
-- Vorgang 9 Rechnungskorrektur erstellt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT tgutschrift.kKunde,
trechnung.tBestellung_kBestellung,
9,
tgutschrift.kGutschrift,
tgutschrift.cGutschriftNr,
tRechnung.cRechnungsNr,
tgutschrift.cWaehrung,
Positionen.Wert,
ISNULL(tgutschrift.dErstellt, '1970-01-01T00:00:00'),
tgutschrift.kBenutzer
FROM dbo.tgutschrift
JOIN dbo.tRechnung ON trechnung.kRechnung = tgutschrift.kRechnung
JOIN (SELECT tGutschriftPos.tGutschrift_kGutschrift AS kGutschrift,
SUM(tGutschriftPos.fVKPreis * tGutschriftPos.nAnzahl) AS Wert
FROM dbo.tGutschriftPos
GROUP BY tGutschriftPos.tGutschrift_kGutschrift)
AS Positionen ON Positionen.kGutschrift = tgutschrift.kGutschrift
--Vorgang 11 - Auszahlung f�r Gutschrift erzeugt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, cValue3, fValue1, fValue2, dErstellt, kBenutzer)
SELECT 11 AS kVorgang, tZahlungsabgleichAusgang.kKunde AS kKunde, tZahlung.kBestellung AS kAuftrag, tgutschrift.kGutschrift AS kKey,
tgutschrift.cGutschriftNr AS cValue1, tBestellungEckDaten.cWaehrung AS cValue3, dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1, tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2, ISNULL(tZahlung.dDatum, '1970-01-01T00:00:00') AS dErstellt, tZahlungsabgleichAusgang.kBuchungsbenutzer as kBenutzer
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung
--Vorgang 12 Mahnung erstellt
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
dErstellt,
kBenutzer)
SELECT trechnung.tKunde_kKunde,
trechnung.tBestellung_kBestellung,
12,
tZahlungsErinnerung.kZahlungsErinnerung,
trechnung.cRechnungsNr,
tZahlungsErinnerung.kMahnstufe,
tBestellung.cWaehrung,
tZahlungsErinnerung.fGebuehr + tZahlungsErinnerung.fBruttoBetrag,
ISNULL(tZahlungsErinnerung.dErstellt, '1970-01-01T00:00:00'),
tZahlungsErinnerung.kBenutzer
FROM dbo.tZahlungsErinnerung
JOIN dbo.tRechnung ON trechnung.kRechnung = tZahlungsErinnerung.kRechnung
JOIN dbo.tBestellung ON trechnung.tBestellung_kBestellung = tBestellung.kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung
WHERE trechnung.dDruckdatum IS NULL
AND trechnung.dEmailversandt IS NULL;
--Vorgang 15 - Nachricht an Kunde gesendet
UPDATE dbo.tMessages SET sSentMailDate = ISNULL(TRY_CONVERT(DATETIME, sSentMailDate), '1970-01-01T00:00:00');
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kKey, cValue1, dErstellt)
SELECT 15 AS kVorgang, tMessages.kKunde AS kKunde, tMessages.kMessages AS kKey,
CASE WHEN LEN(tMessages.sBereff) >= 255
THEN CONCAT(LEFT(tMessages.sBereff, 252), '...')
ELSE
tMessages.sBereff
END AS cValue1,
ISNULL(tMessages.sSentMailDate, '1970-01-01T00:00:00') AS dErstellt
FROM dbo.tMessages;
-- Vorgang 16 GuthabenVonShopErhalten
INSERT INTO Kunde.tHistorie (kKunde, kVorgang, kKey, cValue1, cValue3, fValue1, dErstellt)
SELECT dbo.tGutschein.kKunde AS kKunde, 16 AS kVorgang, dbo.tGutschein.kGutschein AS kKey, tShop.cName AS cValue1, tWaehrung.kWaehrung AS cValue3, dbo.tGutschein.fWert AS fValue1, ISNULL(dbo.tGutschein.dErstellt, '1970-01-01T00:00:00') as dErstellt
FROM dbo.tGutschein
JOIN dbo.tShop ON tShop.kShop = dbo.tGutschein.kShop
JOIN dbo.tWaehrung ON tWaehrung.nStandard = 1;
--Vorgang 18 Angebot Erstellt
INSERT INTO Kunde.tHistorie (kVorgang, kKunde, kAuftrag, kKey, cValue1, dErstellt, kBenutzer)
SELECT 18 AS kVorgang, tBestellung.tKunde_kKunde AS kKunde, tBestellung.kBestellung AS kAuftrag, tBestellung.kBestellung AS kKey,
tBestellung.cBestellNr AS cValue1, ISNULL(tBestellung.dErstellt, '1970-01-01T00:00:00') as dErstellt, tBestellung.tBenutzer_kBenutzer AS kBenutzer
FROM dbo.tBestellung
WHERE tBestellung.cType = 'A';
--Vorgang 20 und 21
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue2,
cValue3,
fValue1,
fValue2,
dErstellt,
kBenutzer)
SELECT tBestellung.tKunde_kKunde,
tZahlung.kBestellung,
CASE WHEN (tBestellungEckDaten.fWert = (SELECT SUM (alle.fBetrag) FROM tZahlung AS alle WHERE alle.kZahlung <= tZahlung.kZahlung AND alle.kBestellung = tZahlung.kBestellung)) THEN 21 ELSE 20 END,
tZahlung.kZahlung,
trechnung.cRechnungsNr,
tZahlungsart.cName,
tBestellung.cWaehrung,
tZahlung.fBetrag,
ROUND( tBestellungEckDaten.fWert - (SELECT SUM (alle.fBetrag) FROM tZahlung AS alle WHERE alle.kZahlung <= tZahlung.kZahlung AND alle.kBestellung = tZahlung.kBestellung), 2),
ISNULL(tZahlung.dDatum, '1970-01-01T00:00:00'),
tZahlung.kBenutzer
FROM dbo.tZahlung
JOIN dbo.tBestellung ON tBestellung.kBestellung = tZahlung.kBestellung
LEFT JOIN dbo.trechnung ON tBestellung.kBestellung = trechnung.tBestellung_kBestellung
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tBestellung.kBestellung
JOIN dbo.tZahlungsart ON tZahlungsart.kZahlungsart = tZahlung.kZahlungsart
WHERE tZahlung.fBetrag > 0.0;
--Vorgang 24 -Teilrueckzahlung gesendet
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue3,
fValue1,
fValue2,
dErstellt)
SELECT dbo.tZahlungsabgleichAusgang.kKunde AS kKunde,
tZahlung.kBestellung AS kAuftrag,
24 AS kVorgang,
dbo.tZahlungsabgleichAusgang.kZahlungsabgleichAusgang AS kKey,
tZahlung.cName AS cValue1,
tBestellungEckDaten.cWaehrung AS cValue3,
dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1,
tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2,
ISNULL(dbo.tZahlungsabgleichAusgang.dAnlagedatum, '1970-01-01T00:00:00')
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON dbo.tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
LEFT JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = dbo.tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung;
--Vorgang 25 -RueckzahlungGesendet gesendet
INSERT INTO Kunde.tHistorie (kKunde,
kAuftrag,
kVorgang,
kKey,
cValue1,
cValue3,
fValue1,
fValue2,
dErstellt)
SELECT dbo.tZahlungsabgleichAusgang.kKunde AS kKunde,
tZahlung.kBestellung AS kAuftrag,
25 AS kVorgang,
dbo.tZahlungsabgleichAusgang.kZahlungsabgleichAusgang AS kKey,
tZahlung.cName AS cValue1,
tBestellungEckDaten.cWaehrung AS cValue3,
dbo.tZahlungsabgleichAusgang.fBetrag AS fValue1,
tBestellungEckDaten.fWert - tBestellungEckDaten.fZahlung AS fValue2,
ISNULL(dbo.tZahlungsabgleichAusgang.dAnlagedatum, '1970-01-01T00:00:00')
FROM dbo.tZahlungsabgleichAusgang
JOIN dbo.tZahlung ON dbo.tZahlungsabgleichAusgang.kZahlungAusgang = tZahlung.kZahlung
LEFT JOIN dbo.tgutschrift ON tgutschrift.kGutschrift = dbo.tZahlungsabgleichAusgang.kGutschrift
JOIN dbo.tBestellungEckDaten ON tBestellungEckDaten.kBestellung = tZahlung.kBestellung;
UPDATE tVersandschnittstellenKonfiguration SET cValue = 2 WHERE cKey = 'MinimumAgeType' AND cValue = 99;
UPDATE dbo.tliefartikel set tliefartikel.nStandard = 0 WHERE tliefartikel.nStandard IS NULL
-- Doppelte Standardlieferanten entfernen
UPDATE dbo.tliefartikel
SET nStandard = 0
WHERE kLiefArtikel IN
(
SELECT kLiefArtikel
FROM tliefartikel
WHERE tArtikel_kArtikel IN (
SELECT tArtikel_kArtikel
FROM dbo.tliefartikel
WHERE tliefartikel.nStandard = 1
GROUP BY tArtikel_kArtikel
HAVING COUNT(tArtikel_kArtikel) > 1
)
AND kLiefArtikel NOT IN (
SELECT MIN(kLiefArtikel)
FROM dbo.tliefartikel
WHERE tliefartikel.nStandard = 1
GROUP BY tArtikel_kArtikel
HAVING COUNT(tArtikel_kArtikel) > 1
)
)
AND nStandard <> 0
INSERT INTO
dbo.tOptions(cKey,cValue)
VALUES
('PreischeckCallInit', 'https://preischeck.api.jtl-software.com/init.php'),
('PreischeckCallExchangeProductIDs', 'https://preischeck.api.jtl-software.com/exchangeProductIDs.php'),
('PreischeckCallGetProductHistory', 'https://preischeck.api.jtl-software.com/getProductHistory.php'),
('PreischeckCallNotifyProductId', 'https://preischeck.api.jtl-software.com/notifyProductID.php');
END==============================================
FEHLER:
Eine neue Seite für die eazybusiness-Datenbank konnte nicht belegt werden, weil in der Dateigruppe "PRIMARY" nicht genügend Speicherplatz verfügbar ist. Speicherplatz kann durch Löschen von Objekten in der Dateigruppe, Hinzufügen von Dateien zur Dateigruppe oder Festlegen der automatischen Vergrößerung für vorhandene Dateien in der Dateigruppe gewonnen werden.