Bei folgendem Programm (das einen befehl enthält, der ein neues tex-dokument erstellt in das ein übergebenes bild geschrieben wird und auch nach diesem benannt wird) bekomme ich leider die fehlermeldung Error: can be used only in preamble.
weiß jemand warum?

zum ausprobieren müsst ihr natürlich selbst ein eigenes bild hernehmen....

Code:
\documentclass{article}
\usepackage{scrlfile}

\makeatletter
\newcommand*\bilderpreamble{
\documentclass[border=1mm]{standalone}^^J
\usepackage{graphicx}^^J
\usepackage{xcolor}^^J
}
\makeatother

\newcommand{\test}[1]
{
\newwrite\bilderfile
\AtBeginDocument{%
  \openout\bilderfile #1-Stahlbaukalender.tex
  \write\bilderfile{\expandafter\detokenize\expandafter{\bilderpreamble}}%
  \write\bilderfile{%
    \string\begin{document}^^J%
		\string\input{#1.pdf_tex}}%
\AfterReadingMainAux{%
  \immediate\write\bilderfile{\string\end{document}}%
  \immediate\closeout\bilderfile
}%
}
}

%\test{sd_023_DE}

\begin{document}
\test{sd_023_DE}
\end{document}
vielen lieben dank... max