% Kódování iso-8859-2
\documentclass[10pt]{article}
\usepackage{czech,a4wide,landscape}
\pagestyle{empty}
% Konstanty
\def\mz{\kern1pt}
\def\oddelovnik{,}
% Parametry
\def\jmeno{Petr Kovář}
\def\cislo{kov16}
% Datum
\newcount\prichodhod
\newcount\prichodmin
\newcount\odchodhod
\newcount\odchodmin
\newcount\datum
\newcount\denhod
\newcount\denmin
\newcount\mesichod
\newcount\mesicmin
% Nic
\def\nic{%
\noalign{\hrule}
\global\advance\datum by 1
\the\datum. & & & & & \cr
}
% Nemoc
\def\nemoc{%
\noalign{\hrule}
\global\advance\datum by 1
\global\advance\mesichod by 8
\the\datum. & nemoc & & & & 8\oddelovnik00\cr
% \the\datum. & nemoc & & & & \cr
}
% Dovolená
\def\dovolena{%
\noalign{\hrule}
\global\advance\datum by 1
\global\advance\mesichod by 8
\the\datum. & dovolená & & & & 8\oddelovnik00\cr
}
% Seminář
\def\seminar{%
\noalign{\hrule}
\global\advance\datum by 1
\global\advance\mesichod by 8
\the\datum. & seminář & & & & 8\oddelovnik00\cr
}
% Sobota, neděle
\def\volno{%
\noalign{\hrule}
\global\advance\datum by 1
\the\datum. & & & & & \cr
}
% Svátek
\def\svatek{%
\noalign{\hrule}
\global\advance\datum by 1
\the\datum. & svátek & & & & \cr
}
% Jeden den
\def\den #1:#2 #3:#4 {%
\noalign{\hrule}
\global\prichodhod#1%
\global\prichodmin#2%
\global\odchodhod#3%
\global\odchodmin#4%
% kolik hodin za den?
\global\denhod\odchodhod%
\global\advance\denhod by -\prichodhod%
\global\denmin\odchodmin%
% od odchodu odečti příchod
\ifnum\odchodmin<\prichodmin
\global\advance\denmin by 60%
\global\advance\denhod by -1%
\global\advance\denmin by -\prichodmin%
\else
\global\advance\denmin by -\prichodmin%
\fi
% zákonná přestávka 4:30 hod
% vice než 5 hod
\ifnum\denhod<5%
\relax% nic
\else
\ifnum\denmin<30
\global\advance\denmin by 60%
\global\advance\denhod by -1%
\global\advance\denmin by -30%
\else
\global\advance\denmin by -30%
\fi
\fi
% více než 9 hod
\ifnum\denhod<9%
\relax% nic
\else
\ifnum\denmin<30
\global\advance\denmin by 60%
\global\advance\denhod by -1%
\global\advance\denmin by -30%
\else
\global\advance\denmin by -30%
\fi
\fi
% Hodiny měsíčně
\global\advance\mesichod by \denhod%
\global\advance\mesicmin by \denmin%
\ifnum\mesicmin<60
\relax% nic
\else
\global\advance\mesicmin by -60%
\global\advance\mesichod by 1%
\fi
% Datum
\global\advance\datum by 1
\the\datum. & \hss\the\prichodhod\oddelovnik\ifnum\prichodmin<10 0\fi\the\prichodmin\hss & \hss\the\odchodhod\oddelovnik\ifnum\odchodmin<10 0\fi\the\odchodmin\hss & & & \the\denhod\oddelovnik\ifnum\denmin<10 0\fi\the\denmin\cr
}
% Tabulka měsíce
\def\tabulka#1#2{%
\datum=0% nuluj čítač měsíce
\mesichod=0% nuluj čítače hodin
\mesicmin=0% nuluj čítače minut
\bgroup\offinterlineskip
\def\strut{\vrule height 7.1pt depth 2pt width 0pt}
\vbox{\hbox{\hss měsíc:\hbox to 5cm{ #1\hss}\hss}\vskip2mm%
\halign{\vrule\ ##\vrule&\ ##\vrule&\ ##\vrule&\ ##\vrule&\ ##\vrule&\hss##\hss\vrule\strut\cr
% hlavička
\noalign{\hrule}
& \hss 1\hss & \hss 2\hss & \hss 3\hss & \hss 4\hss & \hss 5\hss \cr
Dat.\mz & Zahájení & Ukončení & \multispan2\ Přerušení práce \vrule& Prac. \crcr
\omit\vrule\hss\vrule & & & \multispan2\hrulefill\vrule\cr
& práce\hss & práce\hss & & & \ \cr
& (příchod)\hss & (odchod)\hss & začátek & konec & *) \cr
% tělo
#2
% patička
\noalign{\hrule}
\multispan5\vrule \hskip 0pt plus 5fil Celkem\hfil\vrule & \the\mesichod\oddelovnik\the\mesicmin \cr
\noalign{\hrule}%
}}
\egroup}
% Zkratky
\let\dn\den
\let\vo\volno
\let\sm\seminar
\let\nc\nic
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\begin{centerline}
{\large\bf EVIDENČNÍ LIST PRACOVNÍ DOBY}
\end{centerline}
\vskip2.5mm
\centerline{\hss Jméno a příjmení:\hbox to 3cm{ \jmeno\hss}\hss útvar: 714\hss rok: 2001\hss základní pracovní doba: 8,00~--~13,30\hss č.:\hbox to 1cm{ \cislo\hss}\hss}
\vskip2.5mm
% Malým písmem
\noindent\small
% Centruj tři tabulky
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \dn = \den hod:min hod:min
% \vo = \volno
% \sm = \seminar
% \nc = \nic
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\hfill
\tabulka{říjen}{% jméno měsíce
% 1 - 7
\den 7:00 18:00
\den 8:00 16:00
\den 8:00 15:00
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
% 8 - 14
\den 8:00 18:00
\dovolena
%\den 8:00 16:00
\den 8:00 15:00
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
% 15 - 21
\den 8:00 18:00
\den 8:00 15:00
\den 8:00 16:00
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
% 22 - 28
\den 8:00 18:00
\dovolena
\den 8:00 15:00
\den 7:00 20:00
\den 8:00 16:30
\volno\volno
% 29 - 31
\den 8:00 18:00
\den 8:00 16:00
\den 8:00 15:00
}%
\hfill
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\tabulka{listopad}{% jméno měsíce
% 1 - 7
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
\den 8:00 18:00
\den 8:00 18:00
\den 8:00 16:00
% 8 - 14
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
\den 8:00 18:00
\den 8:00 18:00
\den 8:00 16:30
% 15 - 21
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
\den 8:00 18:00
\den 8:00 15:00
\den 8:00 16:00
% 22 - 28
\den 7:00 18:00
\den 8:00 16:30
\volno\volno
\den 8:00 16:30
\den 8:00 16:30
% 29 - 31
\den 8:00 18:00
\den 7:00 20:00
\den 8:00 16:30
\nic
}%
\hfill
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\tabulka{prosinec}{%
% 1 - 7
\volno
\volno
\den 8:00 18:00
\den 8:00 16:30
\den 8:00 16:30
\den 7:00 16:00
\den 8:00 16:00
% 8 - 14
\volno\volno
\den 8:00 18:00
\den 8:00 16:30
\den 8:00 18:00
\den 7:00 15:00
\den 8:00 16:00
% 15 - 21
\volno\volno
\den 8:00 18:00
\den 8:00 16:30
\den 8:00 18:00
\den 7:00 15:00
\den 8:00 20:00
% 22 - 28
\volno\volno
\svatek
\svatek
\svatek
\dovolena
\dovolena
% 29 - 31
\volno\volno
\dovolena
}%
\hfill
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\vskip3mm
\noindent
\centerline{\parbox[t]{.3\textwidth}{*) Pracovní doba se vypočítá následovně:\\
\hbox{}\hskip5mm 5 = (2 - 1) - (4 - 3) - 30~min.}%
\hss Podpis zaměstnance: \hbox to 3cm{\hss}\hss Podpis vedoucího katedry:\hbox to 3cm{\hss}\hss }
\end{document}