Problem mit FPeval und datatool
Hallo,
ich würde gerne das Ergebnis einer Rechnung mit FPeval in meinem Dokument habe.
Verwende ich es folgendermaßen, dann funktioniert es einwandfrei:
Code:
\FPeval{\result}{round(1+1/2,2)
Ich möchte aber nun Zahlen aus einer csv-Datei mit datatool einlesen.
Diese sind folgendermaßen definiert:
Code:
\newcommand{\D}[2]{\FPadd{\erg}{1}{#2}\FPround{\erg}{\erg}{0} \DTLgetvalue{\A}{Komm}{\erg}{\dtlcolumnindex{Komm}{D#1}} \A}
Leider bekomme ich, wenn ich mit einer solchen Zahl rechnen will, immer eine Fehlermeldung:
Code:
\FPeval{\result}{round(\D{xA}{43}/2,2)
Fehlermeldung ist folgende:
Zitat:
! Argument of \next has an extra }.<inserted text>\par \FPdiv \result
Ich kann die Zahlen aber mit folgendem Code problemlos einfügen:
Code:
$\frac{\D{xA}{43}}{2}$
Hat jemand eine Idee?
Danke!
Liste der Anhänge anzeigen (Anzahl: 1)
Hier noch ein vollständiger Code, es funktioniert alles, bis auf die letzten beiden Zeilen, da bräuchte ich bitte Hilfe:
Code:
\documentclass[12pt,a4paper]{article}
\usepackage{amsfonts, amsmath, amssymb, latexsym, amscd}
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage{datatool}
\usepackage{fp}
\begin{document}
\DTLsetseparator{;}
\DTLloaddb{Komm}{Komm_2005R_2010-12_0_5.csv}
\DTLsetseparator{,}
\newcommand{\D}[2]{\FPadd{\erg}{1}{#2}\FPround{\erg}{\erg}{0} \DTLgetvalue{\A}{Komm}{\erg}{\dtlcolumnindex{Komm}{D#1}} \A}
$\frac{1}{\D{xA}{43}}$
\FPeval{\result}{round(1+1/2,2)}
\result
\FPeval{\resultt}{round(1/\D{xA}{43},2)}
\resultt
\end{document}
Die csv-Datei habe ich hier als txt-Datei hochgeladen, vor dem Durchlaufen bitte wieder umbenennen:
Anhang 6299
Wenn es mit einem anderen Rechen-Package geht, wäre ich auch dafür offen. Wichtig wäre, dass ich mit den eingelesenen Zahlen rechnen kann.
Danke!