# Dies ist das beruehmte Skript fuer Bruus Willes-in-Excel
# Aufruf mit Personalnummer und Monat in der Form mm.yyyy
# Status: Tested
PERSNR=$1
MONAT=01.$2
CSV_FILE=monatsabrechnung.csv
DB=ox_entw
if [ "$DEBUGSQL" = -e ]
then
DEBUGSQLFILE=/tmp/debug_monatsabrechnung_sql.out
else
DEBUGSQLFILE=/dev/null
DEBUGSQL=""
fi
DBMONEY=, export DBMONEY
DBDATE=DMY4. export DBDATE
dbaccess $DEBUGSQL $DB - <$DEBUGSQLFILE
-- Hier das SQL Statement, um die Stundendaten zu entladen
unload to $CSV_FILE delimiter ';'
select
projektnummer, bemerkungstext, datumstart,
EXTEND(zeitstart, hour to minute),
datumende, EXTEND(zeitende, hour to minute), aufwand_in_std,
EXTEND(datumende, year to minute) - EXTEND(datumstart, year to minute) +
EXTEND(zeitende, year to minute) - EXTEND(zeitstart, year to minute) dauer,
stundentyp
from
zeiterfassung
where
-- Monat + 1 Monat - 1 Tag ist 1. bis letzter des Monats
datumstart between '$MONAT' and TO_DATE('$MONAT', '%d.%m.%Y') + 1 UNITS MONTH
- 1 UNITS DAY and
personalnummer = $PERSNR
order by datumstart, zeitstart, zeitende, stundentyp;
EOF
MONAT=$2
# Jetzt noch ein netter Text fuer Bruus Willes
{ date; cat; } <<EOF >textfile
Sehr geehrter Herr Bruus
hier ist meine Stundenabrechnung für Monat $MONAT.
Mit freundlichen Grüßen
Ihre Personalnummer $PERSNR
EOF
# Verschicken ...
mpack -s "Stundenabrechnung fuer Personalnummer: $PERSNR" \
-d textfile $CSV_FILE chef@firma.de
# ... und aufraeumen (bloss keine Spuren hinterlassen ;-) )
rm -f textfile $CSV_FILE