diff options
author | deva <deva> | 2007-09-27 10:28:13 +0000 |
---|---|---|
committer | deva <deva> | 2007-09-27 10:28:13 +0000 |
commit | a4c00da2a97a942bbeaac25c7300a1e9dfe13fe1 (patch) | |
tree | 615573749ee3a458357ff6be32c3765dfab80d87 | |
parent | cc4784e21be549fed648ce8473c0aea18b010453 (diff) |
Added radiobuttons, listbox and combobox to the xml spec.
-rw-r--r-- | design/database.tex | 71 | ||||
-rw-r--r-- | design/xmlformat.tex | 110 |
2 files changed, 153 insertions, 28 deletions
diff --git a/design/database.tex b/design/database.tex index 0375202..2caa20e 100644 --- a/design/database.tex +++ b/design/database.tex @@ -22,4 +22,75 @@ Estimat af datastørrelser: Hvis en entry i gennemsnit består af 200 tegn er det 2200 * 200 = 440000 bytes/dag. eller 153.16Mbytes/år + +// som root +// # createuser -P -h localhost -U postgres +// # createdb -U postgres -h localhost pracro + + +CREATE DATABASE pracro + WITH OWNER = pracro + ENCODING = 'UNICODE' + TABLESPACE = pg_default; + +CREATE TABLE transactions +( + "cpr" varchar(255), + "transaction" varchar(255), + "makro" varchar(255), + "version" varchar(255), + "timestamp" varchar(255), + "user" varchar(255) +) +WITH OIDS; +ALTER TABLE transactions OWNER TO pracro; + +CREATE TABLE fields +( + "transaction" varchar(255), + "name" varchar(255), + "value" varchar(255) +) +WITH OIDS; +ALTER TABLE fields OWNER TO pracro; + +// Get all matching fields +SELECT transactions.timestamp, transactions.transaction, fields.name, fields.value + FROM transactions, fields + WHERE transactions.cpr='2003791613' + AND transactions.transaction=fields.transaction + AND fields.name='fisk'; + +transactionid skal bygges af +unixtime-pid-commit_idx +inkl. "-"erne. + \end{verbatim} +%// Get latest matching field +%SELECT fields.value, MAX(transactions.timestamp) +% FROM fields, transactions +% WHERE transactions.cpr='2003791613' +% AND transactions.transaction=fields.transaction +% AND fields.name='fisk' +% GROUP BY fields.value; +% +%SELECT fields.name, fields.value, transactions.timestamp FROM transactions, fields +% WHERE transactions.transaction=(SELECT MAX(transactions.timestamp) as ts +% FROM fields, transactions +% WHERE transactions.cpr='2003791613' +% AND transactions.transaction=fields.transaction +% AND fields.name='fisk') +% AND fields.name='fisk'; +% +%SELECT name, value, timestamp FROM transactions, fields, +%(SELECT transactions.transaction, MAX(transactions.timestamp) +% FROM fields, transactions +% WHERE transactions.cpr='2003791613' +% AND transactions.transaction=fields.transaction +% AND fields.name='fisk' +% GROUP BY transactions.transaction) max +% WHERE transactions.timestamp=max.max +% AND transactions.transaction=max.transaction +% AND fields.name='fisk'; +% +%AAAAAAAAAARGH diff --git a/design/xmlformat.tex b/design/xmlformat.tex index 17a80d2..98f26fa 100644 --- a/design/xmlformat.tex +++ b/design/xmlformat.tex @@ -38,7 +38,7 @@ Hvis klienten modtager en request sektion skal den blot ignorere den. \begin{verbatim} <?xml version="1.0" encoding="UTF-8"?> <pracro version="1.0" cpr="1505050505"> - <request makro="visus"/> + <request macro="visus"/> </pracro> \end{verbatim} @@ -253,28 +253,67 @@ En togglebutton har flg. attributter: ``false''. \end{itemize} -\subsubsection{\texttt{radiobutton} elementet} -En radiobutton bruges til at vælge et element ud af en gruppe.\\ -En radiobutton har flg. attributter: +\subsubsection{\texttt{radiobuttons} elementet} +En radiobuttons gruppe bruges til at vælge et element ud af en gruppe +via radiobuttons.\\ +Radiobuttons gruppen har flg. attributter: \begin{itemize} -\item \textit{caption} - Den tekst som skal vises i knappen. Hvis +\item \textit{value} - Inidikerer hvilken radiobutton i gruppen som skal være + valgt initielt. Hvis udeladt eller ikke-matchende vil ingen radiobutton være + valgt, hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er + opfyldt. +\end{itemize} +Radiobuttons indeholder \texttt{item} tags som beskriver hvilke valgmuligheder +den givne gruppe har.\\ +Et radiobutton item har flg. attributter: +\begin{itemize} +\item \textit{caption} - Den tekst som skal vises i radiobuttonen. Hvis udeladt vises radiobuttonen uden tekst. -\item \textit{value} - Den værdi som radiobuttonen har intielt. Kan - ``true'' eller ``false''. Hvis udeladt vil checkboxen få værdien - ``false''. -\item \textit{group} - Et id som beskriver hvilken gruppe - radiobuttonen er en del af. Gruppe id'et kan have værdier i - \verb|[a-z0-9_]+|.\\ - Hvis udeladt tilhører den automatisk den samme gruppe som resten af - de radiobuttons som befinder sig i samme widget (f.eks frame eller - window).\\ +\item \textit{value} - Den værdi som radiobuttonen har og som sendes som værdi + af gruppen hvis denne radiobutton er valgt ved commit. \end{itemize} +Ved commit returneres radiobutton gruppens navn med den valgte radiobuttons value. \subsubsection{\texttt{combobox} elementet} -Kommer snart... +En combobox gruppe bruges til at vælge et element ud af en gruppe.\\ +En combobox har flg. attributter: +\begin{itemize} +\item \textit{value} - Inidikerer hvilket element i gruppen som skal være + valgt initielt. Hvis udeladt eller ikke-matchende vil comboboxen være tom, + hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er + opfyldt. +\end{itemize} +Comboboxen indeholder \texttt{item} tags som beskriver hvilke valgmuligheder +den givne gruppe har.\\ +Et combobox item har flg. attributter: +\begin{itemize} +\item \textit{caption} - Den tekst som skal vises for denne valgmulighed. Hvis + udeladt vises den uden tekst. +\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi + af gruppen hvis den er valgt ved commit. +\end{itemize} +Ved commit returneres comboboxens navn med det valgte items value. \subsubsection{\texttt{listbox} elementet} -Kommer snart... +En listbox bruges til at vælge præcis et element ud af en gruppe via en liste.\\ +En listbox har flg. attributter: +\begin{itemize} +\item \textit{value} - Inidikerer hvilket element på listen som skal være + valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, + hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er + opfyldt. +\end{itemize} +Listboxen indeholder \texttt{item} tags som beskriver hvilke linier der skal +være i listen.\\ +Et listbox item har flg. attributter: +\begin{itemize} +\item \textit{caption} - Den tekst som skal vises for denne valgmulighed. Hvis + udeladt vises den uden tekst. +\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi + af gruppen hvis den er valgt ved commit. +\end{itemize} +Ved commit returneres listboxens navn med det valgte items value. + \subsection{Commit} En commit sektion sendt til serveren skal bevirke at serveren lagrer de @@ -284,21 +323,36 @@ Hvis klienten modtager en commit sektion skal den blot ignorere den. \begin{verbatim} <?xml version="1.0" encoding="UTF-8"?> <pracro version="1.0" cpr="1505050505"> - <commit macro="visus" version="1.0"> + <commit user="johndoe" macro="visus" version="1.0"> <field name="visus_objektiv" value="42"/> <field name="visus_subjektiv" value="42"/> </commit> </pracro> \end{verbatim} -\subsection{Resumé} -En resumé sektion sendt til klienten skal bevirke at klienten appender den -sendte tekst til PC-Praxis journalfilen.\\ -Hvis serveren modtager en resumé sektion skal den blot ignorere den. -\begin{verbatim} -<?xml version="1.0" encoding="UTF-8"?> -<pracro version="1.0" cpr="1505050505"> - <resume macro="visus" version="1.0">Det objektive synsmål var -42 dioptri, og det subjektive synsmål var 42 dioptri.</resume> -</pracro> -\end{verbatim} +\subsubsection{\texttt{commit} elementet} +Commit elementet har flg. attributter: +\begin{itemize} +\item \textit{user} - Brugernavnet på den bruger som har udfyldt makroen. +\item \textit{macro} - Navnet på den makro som dataene er indtastet i. +\item \textit{version} - Versionsnummeret på den makro som er blevet udfyldt. +\end{itemize} + +\subsubsection{\texttt{field} elementet} +Field elementet har flg. attributter: +\begin{itemize} +\item \textit{name} - Navnet på feltet. +\item \textit{value} - Værdien af feltet. +\end{itemize} + +%\subsection{Resumé} +%En resumé sektion sendt til klienten skal bevirke at klienten appender den +%sendte tekst til PC-Praxis journalfilen.\\ +%Hvis serveren modtager en resumé sektion skal den blot ignorere den. +%\begin{verbatim} +%<?xml version="1.0" encoding="UTF-8"?> +%<pracro version="1.0" cpr="1505050505"> +% <resume macro="visus" version="1.0">Det objektive synsmål var +%42 dioptri, og det subjektive synsmål var 42 dioptri.</resume> +%</pracro> +%\end{verbatim} |