Sie sind hier

longtable in verbindung mit scrlttr2 - nextfooter

Hi,

ich versuche gerade einen Brief mit scrlttr2 zu erstellen, was in Teilen auch geht. Allerdings bekomm ich Probleme wenn ich in meinem nextfooter eine Tabbingumgebung benutzen will. Sobald ich die Zeile:

oeirnoenird \= anoeidoei \kill

einfüge, schmeisst er mir die Fehlermeldung:

!Misplaced \crcr.
l\LT@echunk->\crcr
\LT@save@row \cr \egroup \global \setbox \@ne \lastbox \u..
l.128 \end{longtable}

Hier mein Minimalbeispiel (Der Text ist nur wegen der longtable so lang ;-)):

%document definition
\documentclass[brief,fromalign=center, subject=beforeopening,
 foldmarks=off]{scrlttr2}
 
 
%main language is german
\usepackage{ngerman}
 
%use package for long tables
\usepackage{longtable}
 
\pagestyle{headings}
 
%footer
\firstfoot{
  \hspace{0.2cm}
  \parbox{\useplength{firstfootwidth}}{
    \begin{tabbing}
      \hspace{3.5cm} \= \hspace{3.5cm} \= \hspace{4cm} \= \hspace{3cm} \=  \kill
      naoredi \> aonredi \> anoeird \> \\
    \end{tabbing}
   }
}
 
\nextfoot{%\hspace{-2.4cm}
    \parbox{\useplength{firstfootwidth}}{
    \begin{tabbing}
      oeirnoenird \= anoeidoei \kill
      aoreidoei \> aonerid aoi\\
    \end{tabbing}
  }
}
 
\begin{document}
 
\begin{letter}{Max Mustermann \\
Musterstraße 22 \\
01234 Musterhausen
}
 
 
%define opening
\opening{Sehr geehrte Damen und Herren,}
 
 
\begin{longtable}{c|c}
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
 aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
aoeinrd & naoedi \\
\end{longtable}
 
\end{letter}
\end{document}
Bild von Markus Kohm

Das ist kein Problem von KOMA-Script, sondern ein Problem im Zusammenspiel von longtable und der tabbing-Umgebung im Fuß während die longtable-Umgebung aktiv ist. folgendes Beispiel zeigt das:

\documentclass{minimal}
 
%use package for long tables
\usepackage{longtable}
 
\usepackage{lipsum}
 
\makeatletter
\def\@oddfoot{%
  \parbox{\textwidth}{%
    \begin{tabbing}
      oeirnoenird \= anoeidoei \kill
      aoreidoei \> aonerid aoi\\
    \end{tabbing}
  }%
}
\makeatother
 
\begin{document}
 
\iffalse
%\iftrue
\lipsum\lipsum\lipsum
\else
\begin{longtable}{c|c}
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
 aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
aoeinrd & naoedi \tabularnewline
\end{longtable}
\fi
 
\end{document}

Die einzige Lösung, die mir im Augenblick dafür einfällt, wäre den Fuß vorab in eine Box zu packen (hier die Codeänderung für den Brief):

\newsavebox\myfoot
\savebox\myfoot{%
  \parbox{\textwidth}{%
    \begin{tabbing}
      oeirnoenird \= anoeidoei \kill
      aoreidoei \> aonerid aoi\\
    \end{tabbing}
  }%
}
\nextfoot{\usebox\myfoot}

Das geht natürlich nur, wenn der Fuß statisch ist, also kein Material wie Seitenzahlen enthält, das während der Ausgabe expandiert werden soll. Anderenfalls muss man das ganze ohne tabbing beispielsweise mit Boxen konstruieren.

Probier statt "tabbing" das Paket "tabto". Es ist ohnehin erheblich angenehmer. Wie bei Donald A. üblich, findet man die Anleitung im Innern der Datei "tabto.sty".

...Rolf

Danke euch beiden. Ich hab mich erstmal für die tabto Umgebung entschieden, die scheint mir am einfachsten umsetzbar und benutzbar zu sein, zumindest von meinen ersten Versuchen her.

Comments for "longtable in verbindung mit scrlttr2 - nextfooter" abonnieren