2

I'm trying to display a table on three pages. What's the best way to display captions on these three pages and how to do that, please?

\documentclass{report}
\usepackage{longtable}
\begin{document}
\listoftables

\section{section}
\begingroup
\setlength{\LTleft}{-20cm plus -1fill}
\setlength{\LTright}{\LTleft}
\begin{longtable}{|p{1.5cm}|p{7cm}|p{7cm}|}
\hline
\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline \vspace{-\baselineskip}
\textbf{\#1} & L'utilisateur s'identifie en introduisant
son matricule et son mot-de-passe. & Le système autorise l'accès. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#2} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un système d'exploitation.
\item[-] Demande de consultation des détails
d'un système d'exploitation ou de la
liste des systèmes d'exploitation.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un système d'exploitation ou la liste
des systèmes d'exploitation.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#3} & \begin{itemize}
\item[-] Demande d'ajout, de modification, de
suppression ou de consultation d'un
poste de travail.
\item[-] Demande de consultation des détails
d'un poste de travail ou de la liste des
postes de travail.
\item[-] Demande de transfert d'une ressource.
\item[-] Demande de traçage de l'activité d'un
poste de travail.
\item[-] Demande de télé-assistance d'un poste
de travail.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un poste de travail ou de la liste des postes de travail.
\item[-] Le système transmet la ressource en
question et enregistre l'opération.
\item[-] Le système affiche la traçabilité de l'activité du poste et enregistre l'opération.
\item[-] L'utilisateur final télé-assiste le poste souhaité et enregistre l'opération.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#4} & Demande d'afficher des statistiques sur le
nombre d'heures d'exécution des applications
métier. & Le système affiche les données correspondantes.\tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#5} & \begin{itemize}
\item[-] Demande de consultation des détails
d'une alerte ou de la liste des alertes.
\item[-] Demande de réparation d'une alerte.
\end{itemize} & \begin{itemize}
\item[-] Le système affiche les détails d'une
alerte ou la liste des alertes.
\item[-] Le système enregistre les détails de la
réparation ainsi que l'opération.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#6} & Demande d'effectuer une recherche. & Le système renvoie le résultat de la recherche. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#7} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'une application métier.
\item[-] Demande de consultation des détails
d'une application métier ou de la liste
des applications métier.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'une l'application métier ou la liste
des applications métier.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#8} & Demande de consultation des détails d'une opération ou de la liste des opérations. & Le système affiche les détails d'une opération ou la liste des opérations. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#9} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un compte.
\item[-] Demande de consultation des détails
d'un compte ou de la liste des comptes.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les détails d'un
compte ou la liste des comptes.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#10} & Enregistrer les détails d'une application
métier en cours d'exécution ou mise-àjour
de la date fermeture d'un processus. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#11} & Enregistrer une alerte. & Le système sauvegarde l'alerte. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#12} & À la demande d'un utilisateur via l'application Web, le système transmet la ressource au poste de travail cible. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#13} & Réception d'une ressource. & Le poste de travail enregistre l'opération
au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#14} & Envoyer un journal des touches et des fenêtres
à un serveur Web cible. & Journal envoyé. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#15} & Réception d'un journal des touches et des
fenêtres. & Le serveur Web enregistre le journal reçu au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#16} & Envoyer des flux images à un serveur Web
cible. & Flux images envoyés. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#17} & Réception des flux images. & Le serveur Web enregistre l'image reçue au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#18} & Le système demande de télé-assister un
poste cible. & L'image est affichée à l'écran du demandeur. \tabularnewline
\hline
\multicolumn{3}{l}{} \\[-7pt]  
\caption{Description du diagramme de contexte dynamique}
\label{tbl:contextedyn}
\end{longtable}
\endgroup
\end{document}
4
  • Please make sure that your code compiles without errors before posting. (Unless the fact that it won't is the point of the question.) Yours does not.
    – cfr
    May 31, 2014 at 0:07
  • @cfr, I've updated my posted code.
    – dgs
    May 31, 2014 at 1:27
  • I'd use the supertabular package
    – user30471
    May 31, 2014 at 1:28
  • @Andrew, but in its documentation. it's written that it's a predecessor package of longtable...
    – dgs
    May 31, 2014 at 1:35

2 Answers 2

2

You have to add these:

\begin{longtable}{|p{1.5cm}|p{7cm}|p{7cm}|}

%% put caption at the top of table
\caption{Description du diagramme de contexte dynamique}
\label{tbl:contextedyn}\\
\hline

%% The following is the header that comes at the very beginning of table
\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline 
\endfirsthead

%% Following is the header that is repeated at every page
\multicolumn{3}{c}%
{{\bfseries \tablename\ \thetable{} -- continued from previous page}} \\
\hline
\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline 
\endhead

%% Following is the footer (last row) that is repeated at every page end
\multicolumn{3}{|r|}{{Continued on next page}} \\\hline
\endfoot

%% Following is the last row at the end of table
\multicolumn{3}{|r|}{{My table concluded}} \\ \hline
\endlastfoot

Full code:

\documentclass{report}
\usepackage{longtable}
\begin{document}
\listoftables

\section{section}
\begingroup
\setlength{\LTleft}{-20cm plus -1fill}
\setlength{\LTright}{\LTleft}
\begin{longtable}{|p{1.5cm}|p{7cm}|p{7cm}|}

\caption{Description du diagramme de contexte dynamique}
\label{tbl:contextedyn}\\
\hline

\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline 
\endfirsthead

\multicolumn{3}{c}%
{{\bfseries \tablename\ \thetable{} -- continued from previous page}} \\
\hline
\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline 
\endhead

\multicolumn{3}{|r|}{{Continued on next page}} \\\hline
\endfoot

\multicolumn{3}{|r|}{{My table concluded}} \\ \hline
\endlastfoot

\textbf{\#1} & L'utilisateur s'identifie en introduisant
son matricule et son mot-de-passe. & Le système autorise l'accès. \tabularnewline
\hline 
\textbf{\#2} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un système d'exploitation.
\item[-] Demande de consultation des détails
d'un système d'exploitation ou de la
liste des systèmes d'exploitation.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un système d'exploitation ou la liste
des systèmes d'exploitation.
\end{itemize} \tabularnewline
\hline 
\textbf{\#3} & \begin{itemize}
\item[-] Demande d'ajout, de modification, de
suppression ou de consultation d'un
poste de travail.
\item[-] Demande de consultation des détails
d'un poste de travail ou de la liste des
postes de travail.
\item[-] Demande de transfert d'une ressource.
\item[-] Demande de traçage de l'activité d'un
poste de travail.
\item[-] Demande de télé-assistance d'un poste
de travail.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un poste de travail ou de la liste des postes de travail.
\item[-] Le système transmet la ressource en
question et enregistre l'opération.
\item[-] Le système affiche la traçabilité de l'activité du poste et enregistre l'opération.
\item[-] L'utilisateur final télé-assiste le poste souhaité et enregistre l'opération.
\end{itemize} \tabularnewline
\hline 
\textbf{\#4} & Demande d'afficher des statistiques sur le
nombre d'heures d'exécution des applications
métier. & Le système affiche les données correspondantes.\tabularnewline
\hline 
\textbf{\#5} & \begin{itemize}
\item[-] Demande de consultation des détails
d'une alerte ou de la liste des alertes.
\item[-] Demande de réparation d'une alerte.
\end{itemize} & \begin{itemize}
\item[-] Le système affiche les détails d'une
alerte ou la liste des alertes.
\item[-] Le système enregistre les détails de la
réparation ainsi que l'opération.
\end{itemize} \tabularnewline
\hline 
\textbf{\#6} & Demande d'effectuer une recherche. & Le système renvoie le résultat de la recherche. \tabularnewline
\hline 
\textbf{\#7} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'une application métier.
\item[-] Demande de consultation des détails
d'une application métier ou de la liste
des applications métier.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'une l'application métier ou la liste
des applications métier.
\end{itemize} \tabularnewline
\hline 
\textbf{\#8} & Demande de consultation des détails d'une opération ou de la liste des opérations. & Le système affiche les détails d'une opération ou la liste des opérations. \tabularnewline
\hline 
\textbf{\#9} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un compte.
\item[-] Demande de consultation des détails
d'un compte ou de la liste des comptes.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les détails d'un
compte ou la liste des comptes.
\end{itemize} \tabularnewline
\hline 
\textbf{\#10} & Enregistrer les détails d'une application
métier en cours d'exécution ou mise-àjour
de la date fermeture d'un processus. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#11} & Enregistrer une alerte. & Le système sauvegarde l'alerte. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#12} & À la demande d'un utilisateur via l'application Web, le système transmet la ressource au poste de travail cible. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline 
\textbf{\#13} & Réception d'une ressource. & Le poste de travail enregistre l'opération
au bon emplacement. \tabularnewline
\hline
\textbf{\#14} & Envoyer un journal des touches et des fenêtres
à un serveur Web cible. & Journal envoyé. \tabularnewline
\hline 
\textbf{\#15} & Réception d'un journal des touches et des
fenêtres. & Le serveur Web enregistre le journal reçu au bon emplacement. \tabularnewline
\hline 
\textbf{\#16} & Envoyer des flux images à un serveur Web
cible. & Flux images envoyés. \tabularnewline
\hline 
\textbf{\#17} & Réception des flux images. & Le serveur Web enregistre l'image reçue au bon emplacement. \tabularnewline
\hline 
\textbf{\#18} & Le système demande de télé-assister un
poste cible. & L'image est affichée à l'écran du demandeur. \tabularnewline
\hline
\end{longtable}
\endgroup
\end{document}

I have removed all \vspace{-\baselineskip}s as they are redundant (IMO).

8
  • In normal cases, does the title of a table in a thesis must be under or on its top, please?
    – dgs
    May 31, 2014 at 2:24
  • @dgs Normally for tables, it is better at the top and for figures, better at the bottom.
    – user11232
    May 31, 2014 at 2:25
  • I've really appreciated your detailled answer. Thank you very much!
    – dgs
    May 31, 2014 at 2:26
  • One more question please : What's the need of My table concluded ?
    – dgs
    May 31, 2014 at 2:35
  • 1
    @dgs Sorry! My fault. Remove only \multicolumn{3}{|r|}{{My table concluded}} \\ \hline. Leave \endlastfoot as such.
    – user11232
    May 31, 2014 at 2:48
1

Sorry, I only scanned your question and didn't realise that you were aleady using longtable. Apparently there is a caption package that is compatible with longtable and which gives more control over these things.

Anyway, I believe that this is one way of dong what you want. I have just moved your caption to the top of the table and said that it lives in the common page footer by adding \endfoot.

\documentclass{report}
\usepackage{longtable}
\begin{document}
\listoftables

\section{section}
\begingroup
\setlength{\LTleft}{-20cm plus -1fill}
\setlength{\LTright}{\LTleft}
\begin{longtable}{|p{1.5cm}|p{7cm}|p{7cm}|}
\caption{Description du diagramme de contexte dynamique}
\endfoot
\hline
\textbf{Message} & \textbf{Entrée(s)} & \textbf{Sortie(s)} \\
\hline \vspace{-\baselineskip}
\textbf{\#1} & L'utilisateur s'identifie en introduisant
son matricule et son mot-de-passe. & Le système autorise l'accès. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#2} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un système d'exploitation.
\item[-] Demande de consultation des détails
d'un système d'exploitation ou de la
liste des systèmes d'exploitation.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un système d'exploitation ou la liste
des systèmes d'exploitation.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#3} & \begin{itemize}
\item[-] Demande d'ajout, de modification, de
suppression ou de consultation d'un
poste de travail.
\item[-] Demande de consultation des détails
d'un poste de travail ou de la liste des
postes de travail.
\item[-] Demande de transfert d'une ressource.
\item[-] Demande de traçage de l'activité d'un
poste de travail.
\item[-] Demande de télé-assistance d'un poste
de travail.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'un poste de travail ou de la liste des postes de travail.
\item[-] Le système transmet la ressource en
question et enregistre l'opération.
\item[-] Le système affiche la traçabilité de l'activité du poste et enregistre l'opération.
\item[-] L'utilisateur final télé-assiste le poste souhaité et enregistre l'opération.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#4} & Demande d'afficher des statistiques sur le
nombre d'heures d'exécution des applications
métier. & Le système affiche les données correspondantes.\tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#5} & \begin{itemize}
\item[-] Demande de consultation des détails
d'une alerte ou de la liste des alertes.
\item[-] Demande de réparation d'une alerte.
\end{itemize} & \begin{itemize}
\item[-] Le système affiche les détails d'une
alerte ou la liste des alertes.
\item[-] Le système enregistre les détails de la
réparation ainsi que l'opération.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#6} & Demande d'effectuer une recherche. & Le système renvoie le résultat de la recherche. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#7} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'une application métier.
\item[-] Demande de consultation des détails
d'une application métier ou de la liste
des applications métier.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les caractéristiques
d'une l'application métier ou la liste
des applications métier.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#8} & Demande de consultation des détails d'une opération ou de la liste des opérations. & Le système affiche les détails d'une opération ou la liste des opérations. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#9} & \begin{itemize}
\item[-] Demande d'ajout, de modification ou
de suppression d'un compte.
\item[-] Demande de consultation des détails
d'un compte ou de la liste des comptes.
\end{itemize} & \begin{itemize}
\item[-] Le système enregistre les mises-à-jour
effectuées ainsi que l'opération.
\item[-] Le système affiche les détails d'un
compte ou la liste des comptes.
\end{itemize} \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#10} & Enregistrer les détails d'une application
métier en cours d'exécution ou mise-àjour
de la date fermeture d'un processus. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#11} & Enregistrer une alerte. & Le système sauvegarde l'alerte. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#12} & À la demande d'un utilisateur via l'application Web, le système transmet la ressource au poste de travail cible. & Le système sauvegarde le nouveau enregistrement
ou la mise-à-jour apportée. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#13} & Réception d'une ressource. & Le poste de travail enregistre l'opération
au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#14} & Envoyer un journal des touches et des fenêtres
à un serveur Web cible. & Journal envoyé. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#15} & Réception d'un journal des touches et des
fenêtres. & Le serveur Web enregistre le journal reçu au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#16} & Envoyer des flux images à un serveur Web
cible. & Flux images envoyés. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#17} & Réception des flux images. & Le serveur Web enregistre l'image reçue au bon emplacement. \tabularnewline
\hline \vspace{-\baselineskip}
\textbf{\#18} & Le système demande de télé-assister un
poste cible. & L'image est affichée à l'écran du demandeur. \tabularnewline
\hline
\multicolumn{3}{l}{} \\[-7pt]
\label{tbl:contextedyn}
\end{longtable}
\endgroup
\end{document}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .