% Dies ist eine Umsetzung der Datei TheAnswerII.DOK in Amiga-TeX
% geschrieben von Torsten Drees am 25.12.91.  Verbesserungen und
% Vereinfachungen  des  Skriptes  sind   jederzeit   willkommen.
% Ich bin zu erreichen via Z-Netz : RUDE-BOY@WB.ZER.

\documentstyle[german]{article}
\input{amiga}
\setlength{\textwidth}{16.5cm}
\setlength{\oddsidemargin}{0.0cm}
\setlength{\evensidemargin}{0.0cm}
\setlength{\topmargin}{0.0cm}
\setlength{\footskip}{1.0cm}
\setlength{\textheight}{23.0cm}
\pagestyle{headings}       

\def\ta{{\bf TheAnswer }}

\begin{document}

\title{THE ANSWER -- Eine neue Point--Generation\\
       \medskip
       Deutsche Dokumentation zu THE ANSWER-II
       \thanks{The Answer ist \copyright 1990, 1991, 1992 von Toni
                             Günzel Peltner}\\
       \medskip
       Externer Abschnitt Statistik\\
       \medskip
       Version 2.03 vom 20.06.1992}

\author{von\\
       Toni Günzel--Peltner\\
       WEGAR@AMC.ZER}

\date{}

\maketitle

\tableofcontents

\newpage
\noindent
{\bf HINWEIS:}\\
Die  Statistik  zum  Netcall  befindet  sich in der Haupt--Dokumentation im
Kapitel Log-Files


\section[Allgemeines]{Allgemeines}

\ta  ist  in  der  Lage  die allgmeine Nachrichtenverwaltung statistisch zu
speichern.\ta  kann  diese  Statistik NICHT auswerten.  Die Auswertung soll
externen  Programmen  überlassen werden.  Ich selbst habe bislang noch kein
Auswertungsprogramm geschrieben.\\

\noindent
Im  Abschnitt  2  finden sich alle Daten, die man benötigt, um ein Programm
zur Auswertung selbst zu schreiben.\\

\noindent
In  der  Konfiguration kann auf der NetCall--Seite die Statistik ein-- oder
ausgeschalten   werden.    Der   Schalter   ist   der   vierte   der  Log--
File--Schalter.   Die  Statistik  wird  im  festgelegten Pfad für die Log--
Dateien gespeichert und hat den Namen STATISTIK.DAT.\\

\noindent
Die Statistik speichert folgende Daten:

\subsection[Kopf und Fuß]{Kopf und Fuß}

Jeder  Statistikeintrag  besitzt  einen  Header,  der  die Art des Eintrags
angibt  und  das  Datum  dieses Eintrags enthält.  Am Ende findet sich eine
Ende-Markierung.   Jeder  Format-Eintrag  beginnt  mit ``**'' und endet mit
einem ``:''(z.B:  ``**HEAD:'').  Das genaue Format und gütlige Eintragungen
nach einem Feld sind Kapitel 2 beschrieben.\\

\begin{tabular}{llcp{11.0cm}}
Typ   : & Header (Kopf) &   & \\
Format: & TYPE          & : & Eintragskennung\\
        & DATE          & : & Datum und Uhrzeit\\
        &               &   & Tag|Monat|Jahr|Stunde|Minute|Sekunde\\
        &               &   & (TTMMJJJJhhmmss)\\
Typ   : & Ende  (Fuß);  &   & \\
Format: & ENDE          & : & Endemarkierung. Danach kann ein beliebiger Text
                              stehen. Gültige Einträge kommen erst wieder mit
                              einem neuen Header.\\
\end{tabular}

\subsubsection[FileHeader]{FileHeader}

Dieser  steht  nur  am Anfang des Statistikfiles und enthält
nur  Datum  und  Uhrzeit des Tages, an dem das Statistikfile
erzeugt wurde.\\

\begin{tabular}{ll}
Typ   : & HEADER\\
Format: & Header\\
        & Ende\\
\end{tabular}

\subsection[Bretter]{Bretter}

In  der  Statistik wird gespeichert, wenn ein Brett erzeugt,  gelöscht 
oder  verändert  (nur  Namensänderung)  wird.   Im Programm  Converter 
gibt  es  zusätzlich  die Funktion, die  aktuelle  Brettliste  in  die
Statistik einzu-- \linebreak lesen. Der  Anlaß  wird  unter CAUS gespeichert.  Unter
Name steht der aktuelle  Name  des  Brettes.   In DESC findet sich bei
einer   Namensänderung   der   Name  des Brettes VOR  der Umbenennung. 
Wenn  die  Brettliste per Converter in die Statistik eingelesen wurde, 
findet sich unter CAUS die  Anzahl  der  Nachrichten  oder  die  Werte
NOTHING bei einem leeren Brett bzw.  ERROR, wenn ein Fehler auftrat.\\

\begin{tabular}{llll}
Typ   : & BRETT  &   & \\
Format: & Header &   & \\
        & CAUS   & : & Grund der Eintragung\\
        & NAME   & : & Name des Brettes\\
        & DESC   & : & ggf. Zusatzbeschreibung\\
        & Ende   &   & \\
\end{tabular}

\subsection[Nachrichten]{Nachrichten}

In  der  Statistik  wird gespeichert,  wenn eine Nachricht einsortiert
wurde oder wenn Nachricht abgesendet wurde. Beim  Einsortieren erfolgt
der Eintrag sofort, beim Absenden erst, wenn die  Nachricht  mit einem
erfolgreichen Netcall versandt wurde.\\

\noindent
Unter  CAUS  wird festgelegt, ob die Nachricht gesendet oder empfangen 
wurde.   EMPF  hält  dem  Empfänger der Nachricht  (Brett/User),  FROM 
den  Absender  der  Nachricht, BETR den Betreff der Nachricht CREA das
Absendedatum der Nachricht im Netcallformat fest.   MSID  enthält  die 
Message--ID der Nachricht. Unter SIZE  wird  die  Länge  der  Nachricht
gespeichert.\\

\begin{tabular}{llll}
Typ   : & BRETT  &   & \\
Format: & Header &   & \\
        & CAUS   & : & gesendet oder empfangen\\
        & EMPF   & : & Empfänger der Nachricht\\
        & FROM   & : & Absender der Nachricht\\
        & BETR   & : & Betreff der Nachricht\\
        & CREA   & : & Datum der Nachrichtenerzeugung\\
        & MSID   & : & Message--ID der Nachricht\\
        & SIZE   & : & Länge der Nachricht\\
        & Ende   &   & \\
\end{tabular}

\section[Dokumentation für Programierer]{Dokumemtation für Programmierer}

Um das Statistikfile auszuwerten muß man folgendes beachten:\\
\begin{enumerate}
\item Das File ist 100\% ASCII.
\item Jeder neue Header beginnt mit ``**'' und endet mit ``:''.
\item Normalerweise ist ein Feld mit einem LineFeed angeschlossen. Es ist
      allerdings (theoretisch) möglich,  daß  der  Eintrag  selbst  einen
      LineFeed besitzt.
\item Zwischen dem Typ ENDE und TYPE kann beliebiger Freitext stehen.  Um
      den nächsten gültigen Eintrag zu finden muß man also nach ``**ENDE:''
      das nächste ``**TYPE:'' suchen.
\item Nach einem Feld muß NICHT unbedingt ein Eintrag folgen.  Es können
      auch leere Felder exestieren. Allerdings  müssen zu jedem TYPE alle
      Schlüsselwörter vorkommen,  die beschrieben sind, bevor ENDE kommt.
      Die Reihenfolge der Felder  ist  zwar  fix,  bei  einer  Auswertung
      sollte man aber auch gemischte Felder  erkennen  können. Nur Anfang
      und Ende sind 100\%ig.
\item Die ``~'' in diesem Text  markieren  nur  immer  Anfang und Ende eines
      Wertes. In der Statistik sind sie natürlich nicht drin.
\end{enumerate}

\noindent
Die Formate wurden oben bereits einleitend erklärt.\\

\newpage
\noindent
Hier die genauen ASCII-Codes von Einträgen:\\

\begin{tabular}{ll}
``**TYPE:'' & TYPE kann folgende Daten erhalten:\\
          & ``HEADER''  Der Header eines Statistikfiles\\
          & ``BRETT''   Ein Eintrag für ein Brett\\
          & ``MSG''     Ein Eintrag für eine Nachricht\\
          & \\
``**DATE:'' & DATE hat ein fixes Format:\\
          & TTMMJJJJhhmmss\\
          & TT Tag dezimal    (1-31)\\
          & MM Monat dezimal  (1-12)\\
          & JJJJ Jahr dezimal (0000-9999, z.B: 1991)\\
          & \\
\end{tabular}

\begin{tabular}{lp{13.4cm}}
``**CAUS:'' & CAUS  liefert  den  Grund,  warum  dieser   Statistikeintrag
              gemacht wurde. Die Typen BRETT und MSG haben ein  CAUS-Feld.\\
            & Bei BRETT sind folgende Einträge in CAUS möglich:\\
            & ``NEW''     : Das Brett wurde neu erzeugt\\
            & ``DEL''     : Das Brett wurde gelöscht\\
            & ``RENAME''  : Der Brettname hat sich geändert\\
            & ``CONVERT'' : List-Funktion  im  Programm  Converter  lieferte diesen
                        Eintrag.\\
            & Bei Msg sind folgende Einträge in CAUS möglich:\\
            & ``SEND''    : Die Nachricht wurde gesendet\\
            & ``RECEIVE'' : Die Nachricht wurde empfangen/einsortiert\\
``**NAME:'' & NAME  ist  ein  Feld  von  BRETT  und enthält den Namen  des
              betroffenen Brettes.\\
            & \\
``**DESC:'' & DESC  ist  ein  Feld  von  BRETT. Es kann drei Einträge
            enthalten:\\
            & Im Falle von NEW und DEL:\\
            & ``NOTHING''\\
            & Im Falle von RENAME:\\
            & Enthält es den alten Brettnamen vor der Umbenennung\\
            & Im Falle von CONVERT:\\
            & ``NUM:''[Anzahl|``NOTHING''|``ERROR'']\\
            & Nach Num folgt also entweder eine Zahl, die die  Anzahl  der
              Nachrichten in diesem Brett wiedergibt  ODER  NOTHING,  wenn
              keine Nachrichten im Brett waren. Bei  ERROR  ging  bei  der
              Zahlenkonvertierung in einen String etwas daneben.\\
            & \\
``**EMPF:'' & EMPF ist ein Feld von MSG. - Empfänger der Nachricht\\
``**FROM:'' & FROM ist ein Feld von MSG. - Absender der Nachricht\\
``**BETR:'' & BETR ist ein Feld von MSG. - Betreff der Nachricht\\
``**CREA:'' & CREA ist ein Feld von MSG. - Absendedatum der Nachricht\\
``**MSID:'' & MSID ist ein Feld von MSG. - Msg--ID der Nachricht\\
``**SIZE:'' & SIZE ist ein Feld von MSG. - Länge der Nachricht\\
            & Alle diese Felder enthalten einen String, der eine Kopie
              des Nachrichtenkopfes dieser Nachricht ist.\\
            & \\
``**ENDE:'' & Nach ENDE ist jeder Eintrag zu  Ende.  Der  nächste  gültige
              Eintrag beginnt erst wieder mit  einem  **TYPE:   Dazwischen
              kann ein beliebiger Freitext stehen. \ta  nutzt  diese
              Möglichkeit bisher NUR bei HEADER, um einen  Titelstring  zu
              erzeugen.\\
\end{tabular}
\medskip

\noindent
Ein Auswertungsprogramm sollte für zukünftige Erweiterungen kompatibel
sein.  Dazu gehört, daß neue Feldtypen  dazukommen  können, oder  neue
Werte in bekannten Feldtypen stehen. In keinem der beiden Fälle sollte
ein Auswertungsprogramm eine Fehlermeldung bringen.   Grantiert  wird, 
daß alle hier aufgeführten Feldtypen bestehen bleiben.  Es  kann  also
durchaus eine Fehlermeldung ausgegeben werden, wenn ein kompletter TYP
fehlt.\\

\noindent
Die Auswertungsmöglichkeiten ggf. auch kombiniert mit den Netcall-Log-
Files  sind  sehr vielfältig.  Man bekommt durch die  Auswertung  eine 
komplette  Übersicht, wann wo wieviel  Nachrichten  gesendet/empfangen 
wurden.   Ändert  sich  der  Brettname,  kann  man  über  DESC dennoch
verschiedene Bretter  verknüpfen.   Möglich  ist alles.  Von einfachen
Programmen, die  nur   die   Nachrichten   zählen  bis  zu  grafischen
Meisterstücke,  die  die  Brettauslastung,  Tagespensum usw.
usw.  berechnen können.\\

\noindent
Für Verbesserungsvorschäge bin ich jederzeit zu haben.\\

\noindent
-- Der Autor

\end{document}
