0

Doppelte Datensätze in Verknüpfungstabelle löschen

Hallo,

ich komme bei einer Tabelle für eine Wochenplanung gerade nicht weiter.

Wir haben eine Tabelle LISTEN, wo kommende Aufträge/Arbeiten eingetragen werden.
Da wir den genauen Tag der Ausführung nicht  immer genau vorhersehen können, wird immer die KW, in der die Arbeiten stattfinden sollen, in die Tabelle eingetragen.

In einer weiteren Tabelle WOCHENPLANUNG planen wir die Arbeiten je Kalenderwoche ein. 
Beide Tabellen sind über eine M:N Verknüpfungstabelle LISTEN<->WOCHENPLANUNG miteinander verbunden.
Über einen Button in der Tab WOCHENPLANUNG kann ich alle Datensätze der aktuellen und den zurückliegenden KW mit einem Klick importieren, die alle den Status "Nicht erledigt" haben.

Einzelne Datensätze kann ich auch über eine zusätzliche Verknüpfung importieren.

Da manchmal vorab schon einzelne Datensätze mit der aktuellen KW eingeplant sind, werden bei dem Klick auf dem Button diese Datensätze dann nochmal eingelesen. Diese dann per Hand wieder raus zu suchen und zu löschen ist sehr aufwendig, dieses müsste doch auch über ein Script lösbar sein.

Hier der Code auf dem Button:

let NN := Nr;
let myKW := Kalenderwoche;
"/Auswahl der Datensätze/";
let myList := (select Listen where 'Erledigt am' = null and number('KW geplant') > 0 and number('KW geplant') <= myKW);
"/Schleife mit Erstellung der Datensätze ab hier/";
for i in myList do
    let MT := (create 'Listen<=>Wochenplanung');
    MT.(Wochenplanung := NN);
    MT.(Listen := i)
end

Wie müsste ich den erweitern, oder muss ich die Prüfung auf Duplikate ganz woanders durch führen?

Vielen Dank für einen Tip, 

Gruß Mirko

2 Antworten

null
    • + Maßanzug statt Massenware +
    • RonaldP
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Moin Mirko ,

    als Tipp auf die schnelle:

    versuchs mal mit dieser Ergänzung der where Anweisung in myList:

    not 'Listen<=>Wochenplanung'

    Damit prüfst du ob es schon eine Verknüpfung gibt.

    VG Ronald

      • Mirko_E
      • vor 1 Jahr
      • Gemeldet - anzeigen

      DIGITOOL Moin,

      hat jetzt mit 'Listen<->Wochenplanung' = 0 funktioniert, hab nicht gedacht das es so einfach ist!

      Gruß Mirko