12.08.2015, 18:39
Zitat:- Logik zum automatisierten Löschen nicht mehr benötigter Assets (da sind schon Versuche gescheitert)
Mareta, ein mögliches Löschsystem wäre folgender Ablauf.
Man packt in die Asset-DB noch ein Zählerfeld für Verlinkung. Dieses belegt man mit einem Flag-Wert vor, zB -1 was heißt dieses Objekt wurde noch nicht angepackt. Anschließend bekommen alle Systemobjekte einen anderen Flag Wert -2, heißt, werden auch nie angepackt.
Dann muss jedesmal wenn ein Objekt neu angelegt wird ,dieses Feld eine 1 bekommen, für die erste Verlinkung zum Ersteller Inventar. Jedesmal wenn ein Objekt neu verlinkt wird und das Zählfeld einen positiven Ausgangswert hat, wird 1 dazu addiert. Wenn es irgendwo aus dem Inventar rausfliegt und das Feld einen positiven Wert hat, wird wieder einer abgezogen. Steht das Feld dann auf 0, ist das Objekt nirgendwo mehr im Einsatz und wird aus der DB gelöscht.
Das würde auf laufenden Grids schonmal eine Löschfunktion für alle neuen Objekte bedeuten. Die älteren bleiben davon unberührt.
Für diese müsste man ein Hilfsprogramm ähnlich dem Löschprogramm in SL bauen. Nur das dieses einmalig durchläuft.
Es greift sich sequentiell alle Objekte mit -1 raus und untersucht die ganze DB nach Verlinkungen. Ist die Anzahl am Ende >0 wird der Wert eingetragen, andernfalls das Objekt gelöscht.
Bei TB großen Datenbeständen ist das sicher eine längere Geschichte, aber wie gesagt nur einmalig nötig...
Degolburg:
24h online und ca. 10 % fertig
Taxi: 85.214.150.139:9000:Degolburg
24h online und ca. 10 % fertig
Taxi: 85.214.150.139:9000:Degolburg