|
Hallo Karsten, Thank you for your detailed answer. I tried the bootstrapping process again and it worked a little better, but at last I was unable to install gnumed. Perhaps I should try it on a linux machine, but at the moment don't have Linux on any computer any more. I downloaded the schema and tryed to install it via psql. With this there were (at least) the following problems: First A pg_dump does not dump any groups and users. Thus , if a db schema needs any users and groups to be installed, it should come with a sql-script which will install those users and groups. Second PLpgsql could not be installed with gnumeds schema-dump, which resulted in many errormessages. The reason seems to be that the pg_dump of gnumed contains the following statement: CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler AS '/usr/lib/postgresql/plpgsql.so', 'plpgsql_call_handler' LANGUAGE c; This will not work on any windows machine, at least if a nativ PostgreSQL 8.01 is running. I don't know wether this was/is a bug. The question is which version of PostgreSQL was used to dump the gnumed-schema. A dump done with PostgreSQL 8.01 on Windows XP works around the problem with the librarypath by using a variable $libdir instead of a Unix-like path: CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler AS '$libdir/plpgsql', 'plpgsql_call_handler' LANGUAGE c; By the way, Dezign for Databases reports that, Gnumed has 184 Tables with 1024 Columns. This obvious complexity, together with the difficutly to get the backend running (on Windows) may be a bit deterrent for anybody who realy wants to develop a GUI. Because of at least three bugs in the Dezign for Database Schema-import, I can not produce a correct database schema at the moment. At least two of this bugs can be worked arround with a filter, which is just a question of time. I am a bit interested in Gnumed, since I have to write an appoint gui (and backend) too in the next month's. But at the moment I have big enough problems with the new German denture regulations. The RoteListe Windows CD is distributed free at least German dentists. It has an active-x-interface which should be usable from within wxPython and it has the possibility to export data for prescriptions into a file, which can be read by other applications. I do have LATEX forms for the German Kassenrezept and the Arbeitsunfähigkeistbescheinigung. I attatch the texfiles. The worked with an Epson LQ630 Matrixprinter, but should work on almost any printer after adjusting the 0 point. I used the Latex picture envirement and set the lower left corner of the KVK-Data-Frame as zero point. I should be clear, that the variable names within the stars ** should be replaced via a python script. May be you can use them for Gnumed. I too have a form for private invoices, using the DIN-letter and the long-table envirement. By this one can write multi-page invoices. Notice that latex has to be called more than once to get nice tables with longtable. My invoiceform may be usefull for GPs too after some modification. As far as I can see, a search for *.tex in gnu med does not show anything like this. I attach some more tex-files. elab_beleg.tex is used to write dental laboratory invoices for in office laboratory work. kvkdaten.tex and kzvstempel.tex are modules used by several forms like the Arbeistunfaehigkeisbescheiniugng und the and the prescription. Regards Christoph Becker Karsten Hilbert schrieb: Christoph, |
% au.tex
% Tex-Datei zum Drucken der Arbeitsunf�higkeitsbescheinigung auf
% dem gelb/roten Kassenformular
% Author Christoph Becker, Dauner Str. 21, 53539 Kelberg, Germany
% email: [EMAIL PROTECTED]
% 4. Febr. 2005
% Prinziep:
% Das gesamte Document besteht nur aus EINEM Bild bzw. 'picture'
% Als Ursprungskoordinate wird die rechte untere Ecke
% des Rahmens mit den Versichertenkartenleistungen verwendet.
% Die Ursprungskoordinate kann nicht an einem Papierrand liegen, weil
% LATEX einen Seitenrand von 0 ignoriert. Von daher ist es besser bei
% Formularen einen leicht erkennbaren Ursprungspunkt im Formular zu
% benutzen. Der Ursprungspunkt wird als Schnittpunkt von oberem und
% linkem Rand eingestellt. Die Bildgroesse kann (0,0) sein.
% Alle Felder des Formulars werden als Bildelemente (vom Typ Text) plaziert
% (Siehe Helmut Kopka, Latex - Eine Einfuehrung, Bd 1, Kap. 6, Bilder
% Alle Felder des Forumlars werden im Bezug auf die Ursprungskoordinate
% des Bildes plaziert.
% Der KZV- bzw. KV-Stempel wird mit einem Offset eingestellt, hier:
% \newcount\stempeloffsetx \stempeloffsetx=20
% \newcount\stempeloffsety \stempeloffsety=-10
% Dadurck kann der 'Stempel' durch einfaches Kopieren auch in andere
% Kassenformulare uebernommen werden (AU, HKP usw.). Es muss dann lediglich
% der Offset geaendert werden.
%
% Das Formular wurde auf einem EPSON 630 LQ-Nadeldrucker unter WindowsXP
% mit TeXnicCenter (auf der Miktex-Cd, sehr zu empfehlen) entwickelt.
% wenn sich auf einem anderen Drucker oder unter Linux zeigt, dass die
% Ursprungskoordinate nicht stimmt, so kann diese ueber
% \oddsidemargin und \topmargin angepasst werden.
% Das Einsetzen der realen Daten erfolgt z.B. ueber ein Pythonskript
% welches die *Schluesselwoerter* sucht und gegen die jeweiligen Daten
austauscht.
% EMACS-coding: iso-latin-9-with-esc
\documentclass[10pt,a5paper]{letter}
% a6paper gibt es nicht
\pagestyle{empty}
\oddsidemargin61mm
\topmargin28mm
\headheight0mm
\headsep0mm
\topskip0mm
\textwidth146mm
\textheight104mm
\footskip0mm
\paperwidth148mm
\paperheight105mm
\newcount\rechterrand
\newcount\stempeloffsetx
\newcount\stempeloffsety
\begin{document}
\setlength{\unitlength}{1mm}
\begin{picture}(0,0)%(80,27) % x-Koordinate tut nichts zur Sache
% y-Koordinate schiebt d. 'Bild' nach unten
%\put(0,0){.+} %Ursprungskoordinate (Unterkante KVK-DatenBlock
\rechterrand=-77 %beliebig dicht am re Papierrand!
\stempeloffsetx=17
\stempeloffsety=-10
% KVK-Daten und ZA-Stempel einfuegen
\input{kvkdaten.tex}
\input{kzvstempel.tex}
\put(\rechterrand,-11){*Erstbescheinigung*}
\put(-34,-11){*Folgebescheinigung*}
\put(\rechterrand,-20){*Arbeitsunfall*}
\put(-34,-20){*Durchgangsarzt*}
\put(-23,-29){*au-seit*}
\put(-23,-37){*au-bis*}
\put(-23,-45){*festgestelltam*}
\put(8,-62){*sonstUnfall*}
\put(8,-70){*Versorgungsleiden*}
% Diagnosefeld
\put(\rechterrand,-69){\parbox[t][50mm]{80mm}{*Diagnose*}}
% Erforderliche Massnahmen
\put(\rechterrand,-119){\parbox[t][20mm]{80mm}{*erforderlMassnahmen*}}
\end{picture}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: rezept.tex
%%% End:
% Tex-Datei zum drucken des deuschen Kassenrezeptes
% Author Christoph Becker, Dauner Str. 21, 53539 Kelberg, Germany
% email: [EMAIL PROTECTED]
% 4. Febr. 2005
% Prinziep:
% Das gesamte Document besteht nur aus EINEM Bild bzw. 'picture'
% Als Ursprungskoordinate wird die rechte untere Ecke
% des Rahmens mit den Versichertenkartenleistungen verwendet.
% Die Ursprungskoordinate kann nicht an einem Papierrand liegen, weil
% LATEX einen Seitenrand von 0 ignoriert. Von daher ist es besser bei
% Formularen einen leicht erkennbaren Ursprungspunkt im Formular zu
% benutzen. Der Ursprungspunkt wird als Schnittpunkt von oberem und
% linkem Rand eingestellt. Die Bildgroesse kann (0,0) sein.
% Alle Felder des Formulars werden als Bildelemente (vom Typ Text) plaziert
% (Siehe Helmut Kopka, Latex - Eine Einfuehrung, Bd 1, Kap. 6, Bilder
% Alle Felder des Forumlars werden im Bezug auf die Ursprungskoordinate
% des Bildes plaziert.
% Der KZV- bzw. KV-Stempel wird mit einem Offset eingestellt, hier:
% \newcount\stempeloffsetx \stempeloffsetx=20
% \newcount\stempeloffsety \stempeloffsety=-10
% Dadurck kann der 'Stempel' durch einfaches Kopieren auch in andere
% Kassenformulare uebernommen werden (AU, HKP usw.). Es muss dann lediglich
% der Offset geaendert werden.
%
% Das Formular wurde auf einem EPSON 630 LQ-Nadeldrucker unter WindowsXP
% mit TeXnicCenter (auf der Miktex-Cd, sehr zu empfehlen) entwickelt.
% wenn sich auf einem anderen Drucker oder unter Linux zeigt, dass die
% Ursprungskoordinate nicht stimmt, so kann diese ueber
% \oddsidemargin und \topmargin angepasst werden.
% Das Einsetzen der realen Daten erfolgt z.B. ueber ein Pythonskript
% welches die *Schluesselwoerter* sucht und gegen die jeweiligen Daten
austauscht.
% EMACS-coding: iso-latin-9-with-esc
\documentclass[10pt,a5paper]{letter}
% a6paper gibt es nicht
\pagestyle{empty}
\oddsidemargin61mm
\topmargin27mm
\headheight0mm
\headsep0mm
\topskip0mm
\textwidth146mm
\textheight104mm
\footskip0mm
\paperwidth148mm
\paperheight105mm
\newcount\rechterrand
\newcount\stempeloffsetx
\newcount\stempeloffsety
\begin{document}
\setlength{\unitlength}{1mm}
\begin{picture}(0,0)%(80,27) % x-Koordinate tut nichts zur Sache
% y-Koordinate schiebt d. 'Bild' nach unten
%\put(0,0){.+} %Ursprungskoordinate (Unterkante KVK-DatenBlock
\rechterrand=-77 %beliebig dicht am re Papierrand!
\stempeloffsetx=17
\stempeloffsety=-10
% KVK-Daten und ZA-Stempel einfuegen
\input{kvkdaten.tex}
\input{kzvstempel.tex}
\put(\rechterrand,-10){*rp1*}
\put(\rechterrand,-16){*rp2*}
\put(\rechterrand,-22){*rp3*}
\put(\rechterrand,-28){*rp4*}
\end{picture}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: rezept.tex
%%% End:
\NeedsTeXFormat{LaTeX2e} \ProvidesClass{praxisbrief}
\RequirePackage{ifthen}
[EMAIL PROTECTED] [EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{dinbrief}}
\ExecuteOptions{german} \ProcessOptions
\LoadClass[a4paper,11pt]{dinbrief}
\addresshigh
\setlength{\textheight}{250mm}
\setlength{\topmargin}{2mm}
\setbottomtexttop{265mm}
%\setbottomtexttop{278mm}
%\setaddressoffset{0mm}
\setaddressheight{40mm}
\newcommand{\lettergerman}{}
\newcommand{\letterenglish}{}
[EMAIL PROTECTED]
{\RequirePackage{german}\lettergerman}{\letterenglish}
\pagestyle{headings}
\usepackage [latin1]{inputenc}
\usepackage {latexsym}
\address{\parbox[t]{9cm}{\huge \textbf{Christoph Becker}\\ \small Zahnarzt}
\hfill
\parbox[t]{6cm}{Dauner Str. 21\\
53539 Kelberg\\
Tel.: 02692-930023\\
Fax: 02692-930025\\
\small e-Mail: [EMAIL PROTECTED]
\\ \\
\textbf{Termine nach Vereinbarung\\}
\small Kernarbeitszeit: \\
Mo., Mi., Fr. 8 - 12 Uhr\\
Di., Do. 14 - 19 Uhr\\
}}
\backaddress{Christoph Becker $\cdot$ Dauner Str. 21 $\cdot$ 53539 Kelberg}
%\bottomtext{\parbox[t]{16cm}{\rule [0,3ex]{16cm}{1pt} \small
\bottomtext{\parbox[t]{16cm}{\rule [0,3ex]{16cm}{0,1mm} \small
\textbf{Bankverbindung:}\\
Dt. Apotheker u. �rztebank, Koblenz \hfill
Bankleitzahl: 570 606 12 \hfill
Konto: 020 2797003} \\
\small StNr.: 13/222/0379/8}
\place{Kelberg}
%\signature{Christoph Becker}
\phone{02692}{-930023}
\centeraddress
%\enabledraftstandard
\nowindowrules
\windowtics
\date{\today}% input-file kvkdaten.tex
% dient zur Darstellung des KVK-Datenblocks auf
% Kassenformularen
\put(\rechterrand,38){*KVKKrankenkasse*}
\put(\rechterrand,30){*KVKNameVorname*}
\put(-20,25){*KVKGebDatum*}
\put(\rechterrand,25){*KVKStrasse*}
\put(\rechterrand,20){*KVKPLZ-Ort*}
\put(\rechterrand,10){*KVKKassenNr*}
\put(-56,10){*KVKVersichertenNr*}
\put(-22,10){*KVKStatus*}
\put(\rechterrand,2){*KVKZa-KZVNr*}
\put(-49,2){*KVKVKgueltigbis*}
\put(-24,2){*KVKLeseDatum*}
%%%%%Ende KVK-Feldblock %%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%Begin KZV-Stempel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% KZV-Stempel setzen
% da dieser in verschiedenen Forumularen an verschiedenen Stellen
% gesetzt wird, wird hier mit einem Offset gearbeitet:
% -> nur der Offset ist anzupassen
\put(\stempeloffsetx,\stempeloffsety){\Large*KZVNr*}
\advance\stempeloffsetx by 22 \advance\stempeloffsety by 3
\put(\stempeloffsetx,\stempeloffsety){\scriptsize KZV}
\advance\stempeloffsety by -3
\put(\stempeloffsetx,\stempeloffsety){\small*Kobl-Tr*}
\advance\stempeloffsetx by -22 \advance\stempeloffsety by -5
\put(\stempeloffsetx,\stempeloffsety){\normalsize*Zahnarzt*}
\advance\stempeloffsety by -5
\put(\stempeloffsetx,\stempeloffsety){\normalsize*Zahnarztname*}
\advance\stempeloffsety by -5
\put(\stempeloffsetx,\stempeloffsety){\normalsize*ZahnarztStrasse*}
\advance\stempeloffsety by -5
\put(\stempeloffsetx,\stempeloffsety){\normalsize*ZahnarztPlZOrt*}
%%%%%%Ende KZV-Stempel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\documentclass{praxisbrief2005}
\usepackage {longtable}
\LTchunksize=100
% EMACS-coding: iso-latin-1
%\pagestyle{headings}
%\pagenumbering {arabic}
%\markright{\leftline{*MitglTitel* *MitglVName* *MitglNamenzus* *MitglNName*
% \hfill \date
%\hfill Seite \thepage}}}
\begin{document}
\date{*Rechnungsdatum*}
%*MitglAdressAnrede*\\
\begin{letter}{ *MitglAdressAnrede* *MitglTitel* *MitglVName*
*MitglNamenzus* *MitglNName*\\
*RechnungStr*\\\textbf{*RechnungPLZOrt*}}
%\sign{*Rechnungsnr*}
\subject{Rechnung �ber zahn�rztliche/zahntechnische Leistungen\\
\textbf{*Rechnungsnr*}}
\opening{*MitglBriefAnrede*,}
F�r meine zahn�rztlichen Bem�hungen erlaube ich mir, gem�� GOZ vom 22.10.1987
und GO� vom 1.1.1996, folgende Leistungen in Rechnung zu stellen:
(Material- und Laborkosten werden nach � 3 bzw. � 9 GOZ berechnet)
\textbf{Patient: *PatVName* *PatNName*}, *PatGebDat*
Abrechnungszeitraum: *Behandlungsbeginn* bis *Behandlungsende* \\
\textbf{Rechnungsbetrag: *Rechnungsbetrag* Euro}
\begin{small}
*Privatrechnung*
\end{small}
%\pagebreak[1]
Ich bitte Sie, den f�lligen Betrag von \textbf{*Rechnungsbetrag* Euro bis zum
*Zahlungsziel* } auf mein \\
\textbf{Konto *Bankkonto*, bei der *Bank*, BLZ: *BankLZ*}\\
zu �berweisen.
%Wenn Sie bar zahlen m�chten, bitte ich den Betrag passend abgez�hlt, zusammen
%mit dieser Rechnung mit zu bringen.
\closing{Ich danke f�r Ihr Vertrauen}
\end{letter}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: rechn_pv.tex
%%% End:
\documentclass{praxisbrief2005}
\usepackage {longtable}
\LTchunksize=100
% EMACS-coding: iso-latin-9-with-esc
%\pagestyle{headings}
%\pagenumbering {arabic}
%\markright{\leftline{*MitglTitel* *MitglVName* *MitglNamenzus* *MitglNName*
% \hfill \date
%\hfill Seite \thepage}}}
\begin{document}
%\date{*Rechnungsdatum*}
\begin{letter}{*MitglAnrede* *MitglTitel* *MitglVName*
*MitglNamenzus* *MitglNName*\\
*RechnungStr*\\ *RechnungPLZOrt*}
%\sign{*Rechnungsnr*}
%\subject{Eigenlaborbeleg}
\opening{}
\centerline {\underline {\Large Eigenlaborbeleg}}
Patient: *PatVName* *PatNName*, *PatGebDat* \\
Eingliederungsdatum: *Rechnungsdatum*\\
{*ELabBelNr*}
\begin{small}
*Eigenlaborbeleg*
\end{small}
%\closing{Ich danke f�r Ihr Vertrauen}
\end{letter}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: rechn_pv.tex
%%% End:
_______________________________________________ Gnumed-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnumed-devel
