Heart-Profit ERP

Heart-Profit Boards => Advantage Database Server => Topic started by: Wouter Rijnbende on March 20, 2015, 09:53:15 am



Title: Let op: geen records verwijderen uit ADS tabel !
Post by: Wouter Rijnbende on March 20, 2015, 09:53:15 am
In een eerder topic (http://ha1.heartprofit.nl/profit/index.php?topic=24663.0) is het al wel eens beschreven, maar bij deze een herhaling.

Als gebruiker-/beheerder behoort u sowieso natuurlijk niet aan de Database van Heart-Profit te komen, maar, u zult de eerste niet zijn die meent voldoende kennis in huis te hebben om zelf wel even e.o.a. opschoonaktie in de database uit te voeren.

ADS claimt i.g.v. ADS_ADT geen deleted records te kennen, maar, in werkelijkheid zijn deze er wel degelijk. Het kan dan ook beter verwoord worden als 'bij ADS_ADT worden deleted records automatisch hergebruikt zodra er een nieuw record wordt toegevoegd'. Op zich reuze handig, immers de ruimte die in een tabel in gebruik wordt genomen, wordt automatisch hergebruikt voor een volgend record. Voegen we een Verkooporderregel toe, verwijderen we deze, en voegen we een nieuwe toe, dan hebben we slechts 1 record in de VO regel tabel. Op de wijze zoals Heart-Profit dit record verwijdert, hebben we er twee, en komt de 1e pas vrij zodra de tabel opnieuw gereorganiseerd wordt (inclusief PACK).

Binnen Profit worden er ook tabellen gebruikt (zoals SYTV - Transakties) welke op volgorde waarin de records zijn aangemaakt (op recordnummer) dienen te worden verwerkt. Indien nu via een DELETE FROM SYTV deze tabel wordt opgeschoond zonder de deleted records daadwerkelijk te verwijderen (PACK), dan zal een later toegevoegd record een kleiner recordnummer kunnen krijgen dan een reeds bestaand recordnummer, waardoor de funktionaliteit in Profit om zeep geholpen wordt. V.w.b. Transakties kan dit dan achteraf alleen hersteld worden door alle transakties te verwijderen, en alle tabellen opnieuw te repliceren naar een SQL database.