Jahresabschluss

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
  • Der Datenschutz fordert einen sensiblen Umgang mit Personenbezogenen Daten
  • Das Finanzamt fordert die Archivierung aller Belege für maximal 10 Jahre
  • Aus Gründen der Datensparsamkeit hilft der OrgaMon beim Aufräumen/Löschen der Daten

Vorgehensweise

  • Durch OLAP-Statements wird ein Löschumfang berechnet
  • Mit dem OLAP-Ergebnis.csv geht man dann in die Stapel-Transaktionen und nimmt Beleg- oder Personen-Löschungen vor

Person

  • Kunden-Verlorene.OLAP.txt
--
-- Verlorene Kunden haben vor dem STICHTAG
-- was gekauft, seit dem aber nicht mehr
--

$STICHTAG='01.02.2011'

--
-- Liste der Käufer NACH dem Stichtag 
--
select distinct
 BE.PERSON_R
from
 posten PO
join beleg BE ON 
 (BE.RID=PO.BELEG_R) and
 (BE.ANLAGE>=$STICHTAG) and
 (BE.PERSON_R is not null)
join PERSON on
 (BE.PERSON_R=PERSON.RID) and
 ((PERSON.A17 is null) or (PERSON.A17='N')) 
where
 (PO.PREIS>0)   

--
-- Liste der Käufer VOR dem Stichtag
--
select distinct
 BE.PERSON_R
from
 posten PO
join beleg BE ON 
 (BE.RID=PO.BELEG_R) and
 (BE.ANLAGE<$STICHTAG) and
 (BE.PERSON_R is not null)
join PERSON on
 (BE.PERSON_R=PERSON.RID) and
 ((PERSON.A17 is null) or (PERSON.A17='N')) 
where
 (PO.PREIS>0)  
 
subtract
-

complete
Anschrift(PERSON_R) Adressat1;Adressat2;Adressat3;Adressat4;Strasse;Ort  
-

excel
open
-
  • 🠖Pflege🠖Reiter Stapeltransaktionen🠖Haken bei Personen löschen🠖OLAP Ergebnis laden🠖Ausführen

Turnus Löschung

  • Aus Gründen der Datensparsamkeit sollte ab und an geprüft werden, ob Personen/Belege weiterhin gespeichert werden sollen
  • Endloses, unnötiges Speichern von personenbezogenen Daten sollte vermieden werden, das ist eine Forderung des Datenschutzes
  • Als Hilfe stehen Ihnen 3 OLAP-Scripts zur Verfügung die Kandidaten für die Löschung selektieren, danach können Sie noch manuell eingreifen

Kunden-Verlorene.OLAP.txt

--
-- Verlorene Kunden haben vor dem STICHTAG
-- was gekauft, seit dem aber nicht mehr
--

$STICHTAG='01.01.2011' 

select distinct
 BE.PERSON_R
from
 posten PO
join beleg BE ON 
 (BE.RID=PO.BELEG_R) and
 (BE.ANLAGE>=$STICHTAG) and
 (BE.PERSON_R is not null)
join PERSON on
 (BE.PERSON_R=PERSON.RID) and
 ((PERSON.A17 is null) or (PERSON.A17='N')) 
where
 (PO.PREIS>0) 

select distinct
 BE.PERSON_R
from
 posten PO
join beleg BE ON 
 (BE.RID=PO.BELEG_R) and
 (BE.ANLAGE<$STICHTAG) and
 (BE.PERSON_R is not null)
join PERSON on
 (BE.PERSON_R=PERSON.RID) and
 ((PERSON.A17 is null) or (PERSON.A17='N')) 
where
 (PO.PREIS>0) 

subtract
-

complete
Anschrift(PERSON_R) Adressat1;Adressat2;Adressat3;Adressat4;Strasse;Ort  
-

excel
open
-
  1. Führen Sie das Script aus, im LibreOffice- Calc werden die entsprechenden Löschkandidaten angezeigt
  2. Sind alle Vorschläge OK
    1. wählen Sie ->Pflege->Reiter Stapeltransaktionen
    2. Kreuzen Sie "Personen löschen" an
    3. Laden sie die OLAP-Ergebnis.csv
    4. Drücken Sie "Ausführen"
  3. Falls Sie die Löschung von einzelnen verhindern wollen
    1. Wählen Sie -> Person -> grüner OLAP-Würfel -> OLAP-Ergebnis.csv
    2. Kreuzen Sie A17 an um die Aufnahme in das OLAP-Ergebnis beim nächsten Aufruf zu verhindern
    3. Wenn Sie alle Kandidaten geprüft und ggf. angekreuzt haben muss das OLAP-Statement nochmals ausgeführt werden
    4. Obwohl Sie A17 ankreuzen darf nicht die "alte" Liste zur Löschvorlage verwendet werden!!

Belege-Vor-Stichtag.OLAP.txt

--
-- Belege die vor dem STICHTAG angelegt wurden
-- 

$STICHTAG='01.01.2011' 

select
 RID
from
 BELEG
where
 ANLAGE<$STICHTAG


Kunden-Passive.OLAP.txt

--
-- Personen ...
--  die keinen Beleg haben
--  die keinen Order-Beleg haben
--  die nicht in A17 als "unlöschbar" angegeben sind
--  die vor dem Stichtag schon im System waren
--  die nicht grün eingefärbt sind
--
 
$STICHTAG='01.01.2011'  
               
select first 30 
 RID as PERSON_R
from
 PERSON
where 
 ((select count(RID) from BELEG where BELEG.PERSON_R=PERSON.RID)<1) and
 ((select count(RID) from BBELEG where BBELEG.PERSON_R=PERSON.RID)<1) and
 ((A17 is null) or (A17='N')) and
 (EINTRAG<$STICHTAG) and
 ((PAPERCOLOR is null) or (PAPERCOLOR not in (1111111,2222222)))
order by
 RID    

complete
Anschrift(PERSON_R) Adressat1;Adressat2;Adressat3;Adressat4;Strasse;Ort  
-

excel
open
-


  1. Führen Sie das OLAP-Skript "Personen ohne Umsatz" aus
  • Die Personen werden alle gelöscht
  • Für jede einzelne Löschung wird eine Dokumentations-Datei erstellt die in der Diagnose abgelegt wird
  • Diese Lösch-Protokollierung landet langefristig in den "Ablage-" Zips der Datensicherung