Bug Tracker 
| ID | 18🔗 |
|---|---|
| Date: | 2013-01-16 14:37:58 |
| Status | Closed (Migrated) |
| Category | datatool |
| Version | 2.11 |
| Summary | xkeyval incompatibility |
| Cross Ref | 20 |
Sign in to subscribe to notifications about this report.
Description
Hi,
a file which used to compile doesn't compile anymore, due to an "! Paragraph ended before \@dtl@checknumericalstart was complete." error.
Thanks!
MWE
Download (526B)
\listfiles{}
\documentclass{article}
\usepackage{datatool}
\DTLnewdb{mydata}
\makeatletter
\define@cmdkeys{family}{firstname}[none]
\setkeys{family}{firstname=}%
\newcommand{\populatemydata}[2][]{%
\dtlexpandnewvalue
\setkeys{family}{#1}%
\DTLnewrow{mydata}%
\DTLnewdbentry{mydata}{Surname}{#2}%
\DTLnewdbentry{mydata}{FirstName}{\cmdKV@family@firstname}
\setkeys{family}{firstname=}%
}
\makeatother
\begin{document}
\populatemydata{Doe}
\populatemydata[firstname=John]{Doe}
\DTLdisplaydb{mydata}
\end{document}
Evaluation
Migrated to Error if \DTLnewdbentry's third argument is an empty macro
Comments
2 comments.
Replying to Comment #8:
🔗Comment from Denis Bitouzé
Date: 2013-01-18 16:56:32
is OK as long as
Date: 2013-01-18 16:56:32
Hi,
in fact, the bug has nothing to do with xkeyval (sorry), but if \DTLnewdbentry's third argument (value of the identifier key) is an empty macro.
The following MCE shows the problem:
\DTLnewdbentry{mydata}{Surname}{\test}%
is OK as long as
\test is a non-empty macro (uncomment penultimate line to bring out the error).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass{article}
\usepackage{datatool}
%
\newcommand{\test}{}
%
\begin{document}
%
\DTLnewdb{mydata}%
%
\renewcommand{\test}{Doe}
\DTLnewrow{mydata}%
\DTLnewdbentry{mydata}{Surname}{\test}%
%
\renewcommand{\test}{}
\DTLnewrow{mydata}%
% \DTLnewdbentry{mydata}{Surname}{\test}%
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Replying to Comment #9:
Add Comment
Page permalink: https://www.dickimaw-books.com/bugtracker.php?key=18

Date: 2013-01-16 20:49:53
Same trouble with version 2.13