[Gelöst]Ansprechpartner löschen

13. Dezember 2006 15:19

Hallo!

Bevor ich meinen schönen CRONUS zerschiesse, ich möchte alle Ansprechpartner löschen die keine Aktivitäten haben.

Wie weit stimmt dann dieser Code:
lweg ist eine lokale Variable in der Tabelle Ansprechpartner mit einem Link auf Aktivitäten.

lweg.reset;
lweg.setrange("No.", Name)
if lweg.find ('-') then
error (' Achtung! Aktivitäten am laufen!');
else
lweg.deleteall(true);
Zuletzt geändert von Eowyn am 14. Dezember 2006 09:44, insgesamt 1-mal geändert.

13. Dezember 2006 17:18

Hi,
das mit dem ERROR darfst du nicht so machen, sonst bricht er den Job ab, sobald er einen Eintrag gefunden hat. Fuer eine Ausgabe kannst du MESSAGE verwenden. Diese Fenster werden allerdings erst am Ende ausgegeben und muessen auch alle einzeln weggeklickt werden -> ist lustig bei 1000en von Durchlaeufen :mrgreen: .

lweg ist die Tabelle Aktivitaet? Ich habe jetzt keine Cronus DB in der Naehe, daher kann ich nicht nachschauen :oops: .
Jedenfalls loescht du hier die Aktivitaet und nicht die Ansprechpartner, ausser im OnDelete Trigger der Tabelle Aktivitaet wird noch der Ansprechpartner geloescht.

Gruesse
feri

13. Dezember 2006 17:46

Eowyn hat geschrieben:Bevor ich meinen schönen CRONUS zerschiesse,


Ich würde dir Empfehlen eine Sicherheitskopie der DB zu erstellen
Gruß Mikka

13. Dezember 2006 18:18

Es gibt auf der Tabelle 5050 ein FlowField. Das heisst 'No. of Interactions' (Anzahl Aktivitäten). Damit kannst du schnell und einfach ermitteln, ob auf einem Kontakt Aktivitäten vorhanden sind. Du kannst das nutzen, um deine Löschaktion durchzuführen. Der Code könnte so aussehen (ungetestet)

Code:
IF Contact.FIND('-') THEN REPEAT
  Contact.CALCFIFELDS(No. of Interactions);
  IF Contact."No. of Interactions" = 0 THEN BEGIN
    zu löschende Aktivitäten filtern
    Löschung ausführen
  END;
UNTIL Contact.NEXT = 0;