All checks were successful
Deploy netdiag / deploy (push) Has been skipped
Eddy hat die Korrektur der Prod-Datensaetze angewiesen. Das SQL liegt jetzt unter doc/datenkorrekturen/ - bewusst NICHT unter sql/, weil alles dort von Dolibarrs _load_tables() beim Aktivieren des Moduls automatisch ausgefuehrt wird und eine Datenkorrektur in keinen automatischen Lauf gehoert. Enthaelt Begruendung, den vollstaendigen Vorher-Zustand aller drei Zeilen (rowid 5, 7, 10) und den Rueckweg. Die WHERE-Bedingung ist wiederholbar und im Trockenlauf gegen Prod geprueft: sie trifft exakt diese drei Zeilen, rowid 42 (echte Messung mit echtem Ergebnis) bleibt unangetastet. Korrigiert werden nur measure_status und label - also die Bewertung und deren Zusammenfassung. Die Spalte result bleibt unveraendert, sie ist die Messung selbst und damit Beleg. Ausgefuehrt ist die Korrektur noch nicht: der Sicherheitsfilter der Sitzung blockiert Schreibzugriffe auf die Produktionsdatenbank. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
72 lines
3.3 KiB
SQL
72 lines
3.3 KiB
SQL
-- =====================================================================
|
|
-- Datenkorrektur Produktionsdatenbank — 17.08.2026
|
|
-- Ausgeführt auf Anweisung von Eddy, DB `dolibarr` auf 192.168.155.1
|
|
--
|
|
-- ACHTUNG: Diese Datei liegt bewusst NICHT unter sql/. Alles dort wird von
|
|
-- Dolibarrs _load_tables() beim Aktivieren des Moduls automatisch
|
|
-- ausgeführt; eine Datenkorrektur gehört nicht in einen automatischen Lauf.
|
|
-- Hier steht sie zur Nachvollziehbarkeit und für den Rückweg.
|
|
-- =====================================================================
|
|
--
|
|
-- WARUM
|
|
--
|
|
-- Das Werkzeug `dhcpcheck` gibt es nicht mehr. Drei seiner Messungen wurden
|
|
-- als Kundendokument ausgeliefert und stehen mit measure_status = 2 (rot)
|
|
-- und dem Label „0 DHCP-Server (!)" in der Datenbank. Das Ergebnis dazu ist
|
|
-- {"count":0,"server":[],"hinweis":""}.
|
|
--
|
|
-- Diese „0" war nie eine Messung: Bei einer Kabelverbindung gibt Android die
|
|
-- DHCP-Angaben grundsätzlich nicht heraus — sie stecken nur im deprecated
|
|
-- DhcpInfo und nur für WLAN. „0 gefunden" war der Rückgabewert für „nicht
|
|
-- ermittelbar". Eine rote Ampel mit dieser Beschriftung behauptet gegenüber
|
|
-- dem Kunden einen Netzfehler, den die Messung nie hergegeben hat.
|
|
--
|
|
-- Status 3 = „nicht messbar" ist die ehrliche Einstufung: der Test konnte
|
|
-- nicht durchgeführt werden. Weder grün (wäre gelogen) noch rot (wäre eine
|
|
-- Aussage über das Kundennetz).
|
|
--
|
|
-- WAS NICHT ANGEFASST WIRD
|
|
--
|
|
-- Die Spalte `result` bleibt unverändert. Sie ist die Messung selbst und
|
|
-- damit Beleg — korrigiert werden nur Bewertung (measure_status) und deren
|
|
-- Zusammenfassung (label). Die Anzeige-Korrektur netdiagAltlastKorrektur()
|
|
-- im Modul bleibt ebenfalls bestehen: sie fängt denselben Fall in Backups,
|
|
-- Testinstanzen und noch nicht synchronisierten Geräten ab.
|
|
--
|
|
-- ZUSTAND VOR DER KORREKTUR (vollständig, zum Zurückschreiben)
|
|
--
|
|
-- rowid | fk_protocol | ref | status | label
|
|
-- 5 | 2 | ND2026-0002 | 2 | 0 DHCP-Server (!)
|
|
-- 7 | 1 | ND2026-0001 | 2 | 0 DHCP-Server (!)
|
|
-- 10 | 12 | ND2026-0012 | 2 | 0 DHCP-Server (!)
|
|
--
|
|
-- result bei allen dreien: {"count":0,"server":[],"hinweis":""}
|
|
--
|
|
-- Nicht betroffen und unverändert: rowid 42 (ND2026-0015), status 0,
|
|
-- „DHCP-Server: 192.168.153.1" — eine echte Messung mit echtem Ergebnis.
|
|
-- =====================================================================
|
|
|
|
-- KORREKTUR
|
|
-- Die WHERE-Bedingung trifft ausschließlich Messungen des entfernten
|
|
-- Werkzeugs ohne jedes Ergebnis. Sie ist wiederholbar: ein zweiter Lauf
|
|
-- findet nichts mehr (measure_status ist dann bereits 3).
|
|
UPDATE llx_netdiag_measurement
|
|
SET measure_status = 3,
|
|
label = 'DHCP-Server nicht ermittelbar'
|
|
WHERE tool = 'dhcpcheck'
|
|
AND measure_status = 2
|
|
AND result LIKE '%"count":0%'
|
|
AND result LIKE '%"server":[]%';
|
|
-- erwartet: 3 Zeilen
|
|
|
|
-- PRÜFUNG
|
|
-- SELECT rowid, measure_status, label FROM llx_netdiag_measurement WHERE tool='dhcpcheck';
|
|
|
|
-- =====================================================================
|
|
-- RÜCKWEG (nur ausführen, wenn die Korrektur rückgängig gemacht werden soll)
|
|
--
|
|
-- UPDATE llx_netdiag_measurement
|
|
-- SET measure_status = 2,
|
|
-- label = '0 DHCP-Server (!)'
|
|
-- WHERE rowid IN (5, 7, 10);
|
|
-- =====================================================================
|