Serienbrief mit scrartcl möglich?

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


thor
Forum-Anfänger
Forum-Anfänger
Beiträge: 48
Registriert: Do 25. Okt 2012, 14:43

Serienbrief mit scrartcl möglich?

Beitrag von thor »

Hallo,

ich arbeite als Lehrer für Deutsch und Wirtschaft an einer Berufsschule. Gerade im Fach Deutsch sind sehr umfangreiche Korrekturen der Arbeiten nötig. Dafür haben wir Bewertungsbögen, auf denen Punktzahlen, Fehler, Fehlerquotienten, usw eingetragen werden. Meine officegläubigen Kollegen machen sowas mit Word, ich gehe einen anderen Weg und habe mir einen Bewertungsbogen mit Latex erstellt. Ich verwende dafür die Klasse scrartcl und eqexam.sty von D. P. Story mit der dazugehörigen Datenbank @ease, die ich gekauft habe. Auf die Art kann ich alle meine Bewertungsbögen und Klassenarbeiten archivieren und wieder verwenden, im Gegensatz zu vielen meiner Kollegen, die das Rad jedesmal neu erfinden aber das ist eine andere Sache. Nun habe ich ein kleines Problemchen. Ich möchte gerne aus meinem Bewertungsbogen einen Serienbrief machen, der zwei/drei variable Felder enthält:

1. Vorname und Name
2. Klasse

Die Variablen könnten aus meinem Notenprogramm in eine Textdatei exportiert werden. Anschließend soll für jeden Schüler ein Bewertungsbogen erstellt werden und nach folgendem Muster abgespeichert werden:

Name_Vorname.pdf

Auf diese Art könnte ich mir einiges an Arbeit sparen. Sowas geht ja mit scrlettr2, ich muss aber leider scrartcl verwenden, weil ich eben keinen Brief schreibe, sondern einen Bewertungsbogen. Nun wüsste ich gerne, ob man mein Vorhaben auch mit scartcl realisieren kann. Ich habe mal ein kurzes Beispiel angehängt:
% Kopf des Bewertungsbogens
\documentclass[12pt,fleqn]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tabu}
\usepackage[paper=a4paper,left=25mm,right=25mm,top=25mm,bottom=25mm]{geometry}
%\usepackage[myconfigi,usecustomdesign,pdftex,pointsonright,
% noparttotals,forcolorpaper,links,usexkv,solutionsonly]{eqexam}
\newcolumntype{Y}{>{\sffamily\small}X}

\begin{document}
    \begin{tabu} to \linewidth {|Y [l -1] Y c |Y[r 1.4]|}
	\hline
	\rowfont[]{\sffamily\small}
	\textbf{Name:}    &   &  &  \\ \tabucline[]{2-2} % Name
	\textbf{Klasse:}  &   &  &  \\ \tabucline[]{2-2} % Klasse
	&&&\\
	\hline
    \end{tabu}
\end{document}
Geht sowas?

Vielen Dank und weiterhin frohe Weihnachten!! :D

Thorsten Grothe

fitzz
Forum-Anfänger
Forum-Anfänger
Beiträge: 30
Registriert: Mi 31. Aug 2011, 22:56

Beitrag von fitzz »

Hi Thorsten,

erstmal danke, da ich Biologie und Informatik auf Lehramt studiere, für den Hinweis auf "@ease", kannte ich noch nicht.

Nun zu deinem Prolem:

[qoute="thor"]
Die Variablen könnten aus meinem Notenprogramm in eine Textdatei exportiert werden.
[/quote]

Das ist schon mal gut, genauere Angaben zum Format wäre gut: cvs oder . . .?
thor hat geschrieben: Anschließend soll für jeden Schüler ein Bewertungsbogen erstellt werden und nach folgendem Muster abgespeichert werden:

Name_Vorname.pdf

Auf diese Art könnte ich mir einiges an Arbeit sparen. Sowas geht ja mit scrlettr2, . . .
Da haben wir das wirkliche Problem:

Wenn
thor hat geschrieben:Name_Vorname.pdf
Voraussetzung ist, was ich mir gut vorstellen kann um es in @ease zu speichern,
dann geht das innerhalb von TeX/LaTeX nicht (Wenn irgendjemad etawas anderes weiß, Informationen zu mir.)

[Hintergrund]
Der Augabename wird von dem aufgerufenen Program bestimmt. Als entweder pdeflatex, latex oder etc.Die Benennung erfolgt
nach folgendem Schema: Optionon --output <neme> -> Name der Inputdatei ohne ".tex" -> ansonsten out.[ext]. Das command
\jobname enthält nur die Namen für die zusätzlich von TeX/LaTex generierten Dateien.
[/Hintergrund]

Auch der Rest stimmt nicht. Die Serienbriefmöglichkeit von scrlettr2 erstellt nicht eine Pdf-Datei pro Brief sondern eine
Pdf-Datei für alle Briefe mit den einzelnen Briefen.

Wenn du damit leben kannst alles in einer Datei zu haben (was ich mir aber nicht vorstellen kann, s. o.), gibt es einigen
LaTeX-Packete die mit Daten-/csv-Dateien umgehen können.

Wenn nicht: Dann brauchts du eine externe Lösung, meint eine außerhalb von TeX/LaTeX, also Batch oder sowas wie Python.

lg
Gerald

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

fitzz hat geschrieben: Da haben wir das wirkliche Problem:

Wenn
thor hat geschrieben:Name_Vorname.pdf
Voraussetzung ist, was ich mir gut vorstellen kann um es in @ease zu speichern,
dann geht das innerhalb von TeX/LaTeX nicht (Wenn irgendjemad etawas anderes weiß, Informationen zu mir.)
Es ist möglich innerhalb eine pdflatex-Laufes pdflatex erneut aufzurufen und dabei auch \jobname zu setzen:
\documentclass{article}

\begin{filecontents}{input-doc.tex}
\documentclass{scrartcl}
 \begin{document}
 \name~\vorname
 \end{document}
\end{filecontents}


\begin{document}

\def\Name{Max}
\def\Vorname{Mustermann}

\edef\run{pdflatex --jobname="\Name-\Vorname"
   \unexpanded{\def\string\name{\Name}
   \def\string\vorname{\Vorname}
   \string\input{input-doc}}}

\immediate\write18{\run}


\end{document}

(Das Hauptdokument muss mit --shell-escape gestartet werden).

Allerdings sollten die für den Dateinamen verwendeten Namen besser keine Leerzeichen oder Sonderzeichen enthalten.
oder man sollte sie vorher mit \detokenize etc "sichern".

thor
Forum-Anfänger
Forum-Anfänger
Beiträge: 48
Registriert: Do 25. Okt 2012, 14:43

Beitrag von thor »

@alle,
zunächst einmal vielen Dank für die Antworten.

@ Gerald,

Zu @ease:
schau mal auf http://www.acrotex.net/, wenn du das noch nicht gemacht hast - das soll keine Schleichwerbung sein! Der Entwickler ist hilfsbereit und sehr freundlich. Dort gibt es wirklich tolle Sachen für die Schule - erwarte allerdings nicht, dass das viele deiner Kollegen so toll finden, nach meiner nun mehrjährigen Schulerfahrung, steht man in Lehrerkreisen doch sehr auf MS-Office, über die Sinnhaftigkeit dieser Tatsache werde ich hier mal kein Wort verlieren :D, sonst wird es zu sehr ot :lol:

Zu scrlettr2:
Dass die Dokumente bei scrlletr2 alle in einer *.pdf gespeichert werden, finde ich nach einiger Zeit des Nachdenkens nicht schlimm, damit könnte ich gut leben. Letztlich geht es darum, für jeden Schülernamen einen Bewertungsbogen zu haben, eigentlich wäre dafür ein *.pdf-Dokument sogar noch einfacher, weil ich dann dann alles in einem Rutsch ausdrucken kann.

Aber, bitte korrigiert mich , wenn ich etwas falsch mache, die scrlttr2-Klasse ist ja naturgemäß auf Briefe ausgelegt, was man schon allein an den Falzmarken sieht, die mitgedruckt werden, ich habe spaßeshalber mal ein Dokument, welches ich mit eqexam.sty und scrartcl erstellt hatte, auf scrlttr2 umgestellt und etliche Fehlermeldungen erhalten, es ging also nicht. Ich weiß jetzt nicht, inwieweit man scrlttr2 umbiegen kann, dass es mit eqexam.sty kompatibel ist aber das scheint mir auch keine sinnvolle Lösung zu sein.

In Bezug auf die Daten aus dem Notenprogramm bin ich flexibel, ich kann sie in eine Excel-Liste exportieren und damit auch in andere Formate. Alles in allem scheint mir eine externe Lösung schon sinnvoller zu sein aber leider habe ich keine Ahnung vom Programmieren mit python oder batch....

@ Ulrike
danke für den Tipp, klasse Idee, das wusste ich noch nicht!!!

Ich bin noch in der Findungsphase, wie ihr seht und melde mich sofort wieder, wenn ich weitergekommen bin!

Vielen Dank für die Antworten und eure Hilfe!

Viele Grüße

Thorsten

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Ich weiß ja nicht, warum du dich so auf scrlttr2 kaprizierst. Egal welche Eigenschaft dich da so anzieht: Man kann sie immer auch mit irgend einer anderen Klasse nachbilden. Mir wäre die \adrentry-Syntax sowieso viel zu unflexibel. Serienbriefe mache ich mit datatool oder mit selbstgeschriebenen Code.

thor
Forum-Anfänger
Forum-Anfänger
Beiträge: 48
Registriert: Do 25. Okt 2012, 14:43

Beitrag von thor »

u_fischer hat geschrieben:Ich weiß ja nicht, warum du dich so auf scrlttr2 kaprizierst.
(...)
das tue ich überhaupt nicht, im Gegenteil - ich will ja bei der anderen Klasse bleiben und eben nichts umbiegen, ich fand nur die Serienbrieffunktion bei scrlttr2 für mein Vorhaben sehr geeignet und wusste bislang nicht, wie man das mit scrartcl realisieren kann :)

Datatool kenne nicht noch nicht, ich werde mich mal einlesen :)

Viele Grüße

Thorsten

thor
Forum-Anfänger
Forum-Anfänger
Beiträge: 48
Registriert: Do 25. Okt 2012, 14:43

Beitrag von thor »

so, ich habe nun eine Lösung gefunden es gibt unter http://nasauber.de/opensource/serienbrief/index.php.de ein kleines Script, was genau das tut, was ich will. Es werden anhand einer Steuerdatei Strings in der *.tex Datei ersetzt. Klappt wunderbar, daher habe ich den Status jetzt mal auf beantwortet gesetzt!

VG

Thorsten

Antworten