<pre> .__ ____ _____| |__ _____ _______ ____ _/ __ \ ______ / ___/ | \\__ \\_ __ \_/ __ \ \ ___/ /_____/ \___ \| Y \/ __ \| | \/\ ___/ \___ > /____ >___| (____ /__| \___ > \/ \/ \/ \/ \/ </pre> ## e-share Das Designdokument __e-share__ implementiert Client-Grundbedürfnisse wie: * Infrastruktur zur Auswahl * Duplizieren oder * liefern einer Vorlage eines [Kalibrierdokuments (KD)](http://a73434.berlin.ptb.de/mediawiki/index.php/Glossar#Kalibrierdokument). ### Duplizieren Ein KD auf Basis eines Früheren wurde im Design _share_ über eine url der Art: .../_design/share/_list/up/calib?standard=xxx&type=yyy&sign=zzz&give=dup erstellt. In __e-share__ sind keine url-Parameter wie _sign_ oder _give_ mehr nötig; die Angabe der KD-_id_ des zu duplizierendn Dokumentes reicht aus: .../_design/e-share/_show/dup/id Bsp.: <pre> http://a73434.berlin.ptb.de:5984/vaclab_db/_design/e-share/_show/dup/73eda2bf9694bb4f78edaecba90cdc49 </pre> Die Parameter __type__ und __standard__ können benutzt werden; in diesem Fall werden sie gleich in das KD eingearbeitet. ### Neu Ein neues KD erstellt man in __e-share__ über den Aufruf: .../_design/e-share/_show/new Auch hier funktionieren die url-params __standard__, __type__ und __sign__; zusätzlich __maintainer__. Die angegebenen Parameter werden dann eingearbeitet. Bsp.: <pre> http://a73434.berlin.ptb.de:5984/vaclab_db/_design/e-share/_show/new?standard=CE3&sign=75038_0002&type=KK </pre> lieferte am 24. Mai 2013 um 16:48 Uhr: <pre> { "Calibration": { "Sign": "75038_0002", "Type": "KK", "Year": "2013", "Standard": "CE3", "Presettings": { "Date": [ { "Value": "2013-05-24 16:48", "Type": "generated" } ] }, "Measurement": { "CalibrationObject": [ { } ] } } } </pre> ### Datenbankabfragen (_views) Hier die von __e-share__ bereitgestellten _views_ mit je einer kurzen Erläuterung: .../vaclab_db/_design/e-share/_view/allCalObj .../vaclab_db/_design/e-share/_view/allCustomers .../vaclab_db/_design/e-share/_view/allToDo werden von _diwan_ und _mmp_ benutzt um die in der Datenbank abgelegten _CalibrationObjects_, _Customers_ und _ToDo_ Dokumente zu finden. .../vaclab_db/_design/e-share/_view/calib Wird für den _Updateprozess (UP)_ benutzt. .../vaclab_db/_design/e-share/_view/constants Zum Erzeugen von Tabellen, die Konstanten oder Unsicherheiten auflisten .../vaclab_db/_design/e-share/_view/reduceStandard .../vaclab_db/_design/e-share/_view/reduceType .../vaclab_db/_design/e-share/_view/reduceYear Ermöglichen das Füllen von entsprechenden Auswahlboxen (z.B. in __diwan__ zum Wählen eines KD) .../vaclab_db/_design/e-share/_view/servers spielt bei der autom. Replikation eine Rolle .../vaclab_db/_design/e-share/_view/type-sign .../vaclab_db/_design/e-share/_view/year-sign .../vaclab_db/_design/e-share/_view/sign-sign .../vaclab_db/_design/e-share/_view/standard-sign .../vaclab_db/_design/e-share/_view/standard_type-sign .../vaclab_db/_design/e-share/_view/standard-year .../vaclab_db/_design/e-share/_view/standard_year-sign .../vaclab_db/_design/e-share/_view/standard_year-type .../vaclab_db/_design/e-share/_view/standard_year_type_sign .../vaclab_db/_design/e-share/_view/standard_year_type-sign .../vaclab_db/_design/e-share/_view/standard_year_type_sign-doc Auswahl eines KD erfolgt in _diwan_ durch Kombination von Abfrageresultaten wie [hier](http://a73434.berlin.ptb.de/mediawiki/index.php/Abfragen_%28views%29) beschrieben. .../vaclab_db/_design/e-share/_view/translations _diwan_ soll Deutsch sprechen Die in den __Kalibrierdokumenten__ benutzten __Einheiten__ (und ihre Häufigkeit) erhält man über die url: .../vaclab_db/_design/e-share/_view/reduceUnit?group=true Die view __schedule__ ...vaclab_db/_design/e-share/_view/schedule erzeugt auf der Value-Seite Objecte der Form: <pre> {"id":"910fd907311a80c24cee9ad18a07bf58", "title":"<b>Kunde@Standard:</b> Sign", "start":"2013-08-29 02:00", "end":"2013-09-05 02:00"} </pre> aus den Angaben unter Presettings.Date (Type:"schedule") in den Kalibrierdokumenten. Auf der Key-Seite wird ein Array bestehend aus [ Standard, Date] emited. Die Auswahl kann z.B. über .../schedule?startkey=["CE3","2013-08-29 02:00"]&endkey=["CE3","2013-10-01 02:00"] eingeschränkt werden.