[[ShowPath]]
[[TOC(heading=Inhoudsopgave)]]
= Beheershandleiding OpenAC: inrichting en systeembeheer =
U bent lokaal technisch aanspreekpunt voor OpenAC of op het secretariaat
verantwoordelijk voor de inrichting van OpenAC met betrekking tot
brieven, spreekuurcodes en roosters, dan vindt u hier beknopte
instructies. Wanneer de hier geboden informatie u niet voldoende verder
helpt, kunt u [wiki:ServiceLevels contact opnemen met Bureau AudCom].
== Maken van een testomgeving ==
In de installatiehandleiding van OpenAC wordt omschreven hoe u een database
'''openac''' aanmaakt in MySQL of SQL server en hoe u de starter kit installeert.
Vaak is het handig om te kunnen beschikken over één of twee ''testomgevingen''.
U richt deze als volgt in:
* Maak een tweede database, bijvoorbeeld ''openactest'' op dezelfde database
server, of eventueel op een lokale machine. Tip: zorg dat het woord 'test'
staat in de naam van de database; OpenAC herkent dit.
* Rename het OpenAC-icoon op het bureaublad naar '''OpenAC-Productie'''
* Pak een tweede starter kit uit, en zet deze op een andere locatie dan
de hoofd-OpenAC, dus bijvoorbeeld: '''C:\Program Files\OpenAC-Test\'''
* Rename het icoon van de nieuwe versie naar '''OpenAC-Test'''
* Open een CMD prompt en maak een mapje '.openac' aan in de install directory
van de tweede OpenAC, dus '''OpenAC-Test\.openac'''
* Dit mapje is een cue voor OpenAC dat de configuratie van OpenAC niet
in de gebruikers ''Application Data'' moet worden neergezet en uitgelezen,
maar direct onder de installatie van OpenAC.
* Start de nieuwe versie en vul de connectieparameters in naar de testomgeving.
Wanneer u één van de beide OpenAC's start, moet duidelijk in de titelbalk
zichtbaar zijn welke database u draait. U kunt nu bijvoorbeeld nieuwe versies
testen, of bijvoorbeeld nieuwe functionaliteit die nog niet beschikbaar is gemaakt
in een release-versie van OpenAC. Wat u ook doet in de testversie, dit heeft
geen betrekking op uw productie-omgeving.
== Gebruikers, codetabellen, versiebeheer (beheerschermen) ==
Wanneer u in OpenAC bent ingelogd als '''admin''' beschikt u onderin het startscherm over
diverse knoppen naar schermen voor beheersfuncties. We beschrijven hier
de belangrijkste.
=== Codetabellen ===
OpenAC valt uiteen in drie onderdelen:
* De programmatuur
* De adaptatie, waaronder '''codetabellen'''
* SQL-database.
De 'codetabellen' houden het midden tussen data en applicatie. In een codetabel worden doorgaans korte lijstjes
bijgehouden van codes, bijvoorbeeld verrichtingcodes, spreekuurcodes enzovoort. De codetabellen kunnen vanuit
OpenAC worden bewerkt. Wijzigingen in een codetabel dienen te worden ingeleverd en verspreid naar eindgebruikers
middels het '''versiebeheer'''.
In de adaptatie worden alleen ''toevoegingen'' en ''wijzigingen'' opgeslagen ten opzichte van de basisdefinities
in OpenAC. Dit gebeurt automatisch.
=== Datamodel en tabeldefinities ===
Vanuit OpenAC heeft u toegang tot de definities van de tabellen en codetabellen. U kunt dus vanuit OpenAC zelf tabellen en velden toevoegen. Om wijzigingen te effectueren dient OpenAC opnieuw te worden gestart. Wijzigingen worden pas definitief voor alle gebruikers, nadat ze zijn ingeleverd via '''versiebeheer'''.
=== Versiebeheer ===
In het versiebeheerscherm kunt u
* OpenAC bijwerken naar een nieuwe release (bijv. '''v1.208''')
* OpenAC bijwerken naar een nieuwe revisie (bijv. '''r10408''') binnen de bestaande release.
* Schakelen tussen release en de ontwikkelversie.
* Gemaakte wijzigingen inleveren.
* Gebruikers in uw instelling instructie geven naar welke versie dient te worden geschakeld.
=== SQL queries ===
In dit scherm kunt u één of meer SQL-queries definiëren en uitvoeren. Queries die u aanmerkt
als '''publiek''' zijn voor alle gebruikers van OpenAC toegankelijk die toegang hebben tot
managementrapportages.
=== Script (adaptatie-init) ===
Uw adaptatie van OpenAC wordt gestart vanuit een Python-bronbestand '''___init__.py'''. Onder deze
knop zit een scherm waarin u dit bestand kunt bewerken.
=== Instellingen ===
In dit scherm vindt u diverse instellingen voor OpenAC.
U geeft hier bovendien aan welke instellingen voor alle
gebruikers gelijk moeten zijn. Deze worden opgeslagen in de database. Alle overige
instellingen worden 'lokaal' opgeslagen. Dit betekent:
* Normaal gesproken in Application Data voor de Windows-gebruiker
* Optioneel kunt u in '''Program Files\OpenAC''' een mapje '''.openac''' aanmaken. Als deze map
bestaat, wordt de configuratie niet per gebruiker opgeslagen, maar per OpenAC-installatie.
Let op:
* Veel applicatie-instellingen zijn niet vanuit OpenAC zelf instelbaar, maar dienen in de '''__init__.py''' te worden
vastgelegd. Het gaat hier om instellingen waarvan het (1) het riskant is deze te wijzigen en/of (2) het van belang
is voor de ondersteuning dat de ontwikkelaars op de hoogte zijn van de gekozen instelling.
=== Switches ===
In dit scherm kunnen diverse 'debug switches' worden gezet. Normaal gesproken staan alle switches uit.
=== Medewerkers ===
In dit scherm worden de gegevens van uw medewerkers ingevoerd.
* Medewerkers zijn tevens de gebruikerscodes in OpenAC die nodig zijn voor het inloggen.
* Hier geeft u de '''rechten''' aan van de medewerkers voor onderdelen van OpenAC.
* U geeft aan of een medewerker in dienst is.
* U kunt de '''ondertekening''' en '''functie''' van een medewerker definiëren, voor gebruik
in brieven.
* U geeft hier ook de '''plangroep''' van een medewerker aan. De plangroep bepaalt de sortering
van de medewerkers in menu's en in de agenda. Het bepaalt ook de werking van het ''automatisch
inplannen'' (zie ook de [wiki:Documentatie/Beheershandleiding beheershandleiding]).
* U kunt hier de ''verrichtingcodes'' aangeve die de medewerker in de regel uitvoert. Dit
is facultatief en leidt tot verbetering van de managementrapportage ''Productie/Medewerker''
(zie ook de [wiki:Documentatie/Rapportages handleiding managementrapportages]).
==== Rechten ====
U kent als volgt rechten toe aan uw medewerkers:
* STAP 1. Deel uw medewerkers in in ''gebruikersgroepen''. Een aantal basisgroepen is al in OpenAC gedefinieerd.
Per groep geeft u aan welke rechten mensen uit elke gebruikersgroep standaard meekrijgen.
* STAP 2. Voeg eventueel individuele permissies per medewerker toe.
==== Nieuwe uitbreidingen ====
In de laatste maanden van 2008 zal het medewerkerscherm flink worden uitgebreid. Zo zal er de mogelijkheid komen documenten
aan het medewerkerdossier toe te voegen, adres, geboortedatum en dergelijk bij te houden. Het ligt voorts in de bedoeling
om ook capaciteitsgegevens zoals contractomvang te kunnen gaan vastleggen.
=== Aantekeningen, tarieven, normtijden ===
Verder vallen onder ''Beheer'' diverse schermen waarin lijsten zijn te bewerken die onderdeel uitmaken van de database. Dit zijn tenminste:
* '''Aantekeningen''' - aantekeningen komen op diverse plekken in dossiers, relaties e.d. voor. Dit zijn velden met een keuze-menu, waaraan tijdens de sessie nieuwe waarden zijn toe te voegen. Het voordeel ten opzichte van een vrij tekstveld voor notities, is dat eenvoudig op de ingevulde waarden kan worden gezocht en geselecteerd.
* '''Tarieven''' - tarieven voor de AP's en jaarkaarten. Er wordt een historie vastgelegd, m.a.w. oudere tarieven blijven staan. Het is niet mogelijk een tarief te wijzigen wanneer het al is toegepast.
* '''Normtijden''' - normtijden voor de FENAC-verrichtingen. Er wordt een historie vastgelegd. Het is niet mogelijk een normtijd te wijzigen wanneer deze al is toegepast, tenzij u werkt in een ''testomgeving'' (databasenaam bevat het woord '''test''').
== Beheer van de database (beheer-menu) ==
Wanneer u OpenAC inlogt als '''admin''' beschikt u over diverse database-beheersfuncties
onder het menu '''beheer''' naast '''bestand''', '''bewerken''' etc.
=== Codetabellen, datamodel ===
Verwijzingen naar de beheerschermen die hierboven al zijn beschreven.
=== Datastructuur bijwerken ===
Tijdens het opstarten controleert OpenAC of alle tabellen en velden in de database in overeenstemming zijn
met het datamodel. Wanneer er verschillen zijn, werkt OpenAC grotendeels automatisch bij, voor zover
dat veilig kan. Zijn er wijzigingen nodig die niet zomaar kunnen worden uitgevoerd, zoals aanpassen
of verwijderen van een veldje, dan vraagt OpenAC of de beheerder expliciet opdracht wil geven tot
aanpassen van het datamodel.
Het strekt tot aanbeveling dit altijd zo snel mogelijk te doen na het moment dat alle gebruikers op
de versie in kwestie zijn overgestapt.
=== Integriteitscheck ===
Door gebruik van OpenAC kunnen kleine inconsistenties optreden in de database. Deze kunnen worden
opgeruimd middels deze functie. Wanneer deze functie voor het eerst wordt uitgevoerd, schrikt men
soms van het aantal fouten dat wordt opgelost.
Hoewel het altijd aan te raden is eerst een backup te maken, is het gebruik van deze functie
een relatief veilige aangelegenheid. Hoe langer de fouten blijven bestaan, hoe meer nieuwe inconsistenties
erbij kunnen komen.
Bij recente versies van OpenAC moeten er niet meer dan enkele inconsistenties bijkomen. Heeft u er meer
dan 10 per maand (na een eerste keer), dan kan het goed zijn [wiki:ServiceLevels contact op te nemen met
het bureau].
=== Tabel doorrekenen ===
In een enkel geval is het nodig een hele tabel in de OpenAC-database opnieuw door te rekenen. Concreet:
* Het '''dossierscherm''' heeft zijn eigen doorrekenfunctie, die bovendien de mogelijkheid heeft om een selectie op te geven.
* Wanneer alle '''plangroepen''' worden gewijzigd, kan de sortering van de medewerkers veranderen. De tabel '''rooster_item''' dient dan opnieuw te worden doorgerekend, anders worden de rooster-items in het beheerscherm
voor het rooster niet consequent gesorteerd weergegeven.
=== Importeren uit... ===
Afhankelijk van de adaptatie van OpenAC kunnen onder deze menuregel één of meerdere importfuncties zitten.
=== Backup maken... ===
Er zijn twee mogelijkheden voor het maken van backups van de OpenAC-database.
* OpenAC-backups. De OpenAC-backups bieden meer flexibiliteit met
betrekking tot terugzetten. Maak eerst handmatig een backup: log in,
kies in het menu ''beheer'' de optie ''backup maken...'' en vul de map
in waar je backups wilt verzamelen. Breek eventueel het backup-proces
af, het gaat erom dat je de instellingen goed invoert. Stel het
volgende commando in als "taak" onder Windows (laat de taak uitvoeren
door dezelfde windows-gebruiker die al een keer handmatig een backup
heeft gemaakt):
{{{
Beginnen in : C:\Program Files\OpenAC
Uitvoeren: Python24\python.exe script.py backup
}}}
* Maak een backup met het programma 'mysqldump'. Deze worden sneller
gemaakt, waardoor je vaker een backup kunt draaien.
{{{
mysqldump --opt --user=gebruikersnaam --password=password naam_database > openac_backup.sql
}}}
* kopieer het bestand 'ibdata' in de MySQL-data-dir. Dit is alleen een
'last-resort' of extra veiligheid.
=== Backup terugzetten... ===
Met dit item kunt u een OpenAC-backup (directory met TSV-bestanden) terugzetten. U kiest in de regel
voor 'bestanden leegmaken voor terugzetten', tenzij u een gedeeltelijke backup wilt terugzetten (data
toevoegen aan een bestaande database).
=== Database wissen... ===
Deze optie wordt alleen gebruikt tijdens de uitrol van een nieuwe OpenAC en het testen van een importprocedure.
=== Tabel leegmaken... ===
Deze optie wordt alleen gebruikt tijdens de uitrol van een nieuwe OpenAC en het testen van een importprocedure.
=== Wachtwoord wijzigen ===
Hier kunt u uw gebruikerswachtwoord bewerken. Ook gebruiker 'admin' kan in recente versies van OpenAC een eigen wachtwoord ingeven (dit was lange tijd een landelijk vast wachtwoord).
== Sjablonen en correspondentie ==
Het maken van etiketten, brieven in OpenAC en de koppeling met
audiometrie-apparatuur gebeurt via zgn ''bestandskoppelingen''.
Elk bestand in OpenAC wordt ergens gekoppeld, dwz. is zichtbaar op een
punt in het dossier van een patiënt, relatie of medewerker. Er zijn
twee kanalen waarlangs een bestand in OpenAC terechtkomt:
* Handmatig toevoegen: op diverse plekken in dossiers, relatiescherm
of medewerkerscherm zitten menu's waarmee je een sjabloon kunt uitkiezen.
Er wordt dan automatisch een brief gegenereerd. Veelal krijgt u voor
het genereren van de brief nog een aantal vragen, zoals de printerkeuze,
eventuele vragen over ondertekening etc.
* Automatisch toevoegen: vanaf OpenAC v1.210 bestaat er in OpenAC de
'spoolfunctie'. Er zijn bestandslocaties waar bestanden kunnen worden
neergezet die zijn ingescand of afgedrukt op PDF. Aan de hand van de
bestandsnaam routeert OpenAC de bestanden automatisch naar de juiste
locatie.
Bestanden die handmatig worden aangemaakt, worden gemaakt op basis van
een '''sjabloon''', bijvoorbeeld een Word-sjabloon (DOT, DOTX) of een
Excel-sjabloon (XLT, XLTX). Bijzondere sjabloonkeuzes zijn '''Bijlage'''
(een willekeurig document in OpenAC hangen) en de keuzes voor
audiometrie-apparatuur (Eldege, DECOS, AC440).
=== Sjablonen toevoegen ===
Om een sjabloon aan OpenAC toe te voegen moeten er drie dingen gebeuren:
* Het sjabloonbestand kopiëren naar adaptaties/ac_bodegraven/sjablonen/
(vervang ''ac_bodegraven'' door uw eigen AC)
* Het sjabloon aanmelden in de codetabel '''sjabloon''', ofwel vanuit
OpenAC, ofwel direct in het bestand '''adaptaties/ac_bodegraven/codetabellen/sjabloon.tsv'''
* Na testen, de gemaakte wijzigingen inleveren via ''versiebeheer''
Moet u nog helemaal beginnen met sjablonen, dan verdient het aanbeveling eerst
eens te kijken hoe andere AC's de sjablonen hebben ingericht. Het bureau
kan hierbij natuurlijk ook adviseren.
=== Werking van Word-sjablonen ===
De OpenAC-sjablonen werken met '''bookmarks''' (bladwijzers) en
'''merge-fields''' (samenvoegvelden). De merge-fields worden alleen
toegepast in zogenaamde "meervoudige" sjablonen, zoals facturen of
brieven die aan diverse betrokkenen moeten worden geadresseerd. Veruit
de meeste sjablonen worden dan ook gemaakt met bookmarks.
=== Ik wil dezelfde sjabloon-variabele twee keer opnemen in een sjabloon ===
Word staat niet toe dat dezelfde bookmark twee keer in een document
voorkomt. Wanneer een variabele twee keer of vaker op een vel moet
worden afgedrukt (bijvoorbeeld 2x het adres van de patient op een
etikettenvel), dan is het toegestaan om één of meer keer "_"
(underscore) achter de naam van de bookmark te zetten.
=== Gebruik van promptvelden ===
Geef in OpenAC bij het sjabloon de promptvelden op in uitsluitend kleine
letters en uitsluitend gescheiden door een komma. Vervolgens zijn deze
in het feitelijk sjabloon op dezelfde wijze toe te voegen en gebruiken
als de andere bookmarks.
=== Wat zijn 'enkelvoudige' , 'meerbladige' en 'meerregelige' sjablonen? ===
Het meest voorkomende sjabloontype is 'enkelvoudig'. Hier is geen sprake
van informatie die moet worden herhaald. Het onderscheid
meerbladig/meerregelig speelt alleen een rol bij de koppeling naar
Microsoft Word, en alleen bij sjablonen waarbij informatie moet worden
herhaald. Deze functionaliteit is ontworpen om verzamelnota's te kunnen
maken, maar zou ook bij brieven kunnen worden gebruikt.
* Stel, je maakt een brief met daarop bookmarks voor de patientgegevens
(''adresregel1'' t/m ''adresregel4'') en dan '''binnen een tabel''' nog
een keer dezelfde variabelen (''adresregel1'' t/m ''adresregel4'').
* Bij 'meerbladig' krijg je voor elke betrokkene een aparte pagina met
daarop het adres van de patient, en het adres de betrokkene.
* Bij 'meerregelig' krijg je dan 1 pagina met daarop het adres van de
patient, en dan onder elkaar in de tabel de adressen van alle
betrokkenen (huisarts, verwijzer, verzekeraar). Dit werkt ''alleen''
als de merge-velden in een tabel zijn opgenomen, zodat de
word-koppeling weet welk gedeelte moet worden herhaald.
== Automatisch plannen, maken van een rooster ==
OpenAC ondersteunt handmatig plannen dmv een externe agenda (papieren
agenda of ander programma), maar biedt ook ondersteuning voor
automatisch plannen. Alleen echte patientcontacttijd kan automatisch
worden gepland: reistijd en schrijftijd dient vast te worden
ingeroosterd.
Het plannen gebeurt op basis van een rooster. Hieronder staan de
stappen die dienen te worden genomen om automatisch te plannen:
* Neem je medewerkertabel door (knop ''Medewerkers'' in het
startscherm). Ken aan elke medewerker een "plangroep" toe als volgt:
de plangroep bestaat uit een cijfer (de ''hoofdplangroep''), gevolgd
door 1 letter (de ''subplangroep'') en dan één of meer cijfers. We
adviseren: 1A voor de audiologen, 1B voor audiologie-assistenten, 2A
voor logopedist/linguist, 3A voor psycholoog, 4A voor maatschappelijk
werk, en 9A voor kamers. Vervolgens ken je binnen elke groep nummers
toe, dus 1B3 is audiologie-assistent nummer 3. Mensen in dezelfde
hoofdplangroep (eerste cijfer) doen in principe niet samen onderzoeken.
Bij een aaneenschakeling van meerdere onderzoeken mag uit dezelfde
subplangroep (bijv. 1A/audioloog of 1B/audiologie-assistent) steeds maar
1 iemand worden gekozen door OpenAC. Met andere woorden, er worden
nooit twee verschillende assistenten na elkaar ingeschakeld, maar de
patiënt kan wel worden gezien door een assistent, en daarna door de
audioloog.
* Voer eventueel kamers in (knop ''Kamers/apparatuur''). Als het lukt
om te werken zonder plannen van vertrekken dan heeft de omwille van de
eenvoud wel de voorkeur. Wanneer toch kamers moeten worden gepland, dan
draait het er meestal op uit dat niet alleen bijzondere vertrekken,
maar ook de gewone cabines moeten worden gepland. Elke kamer dient ook
een plangroep te krijgen. Wij adviseren om plangroep 9A te gebruiken
voor cabines en 9B voor een BERA of andere specifieke kamer.
* Ga naar ''Codetabellen'' en kies de tabel ''activiteit''. Hierin
staan de actitiviteiten die je kunt plannen. Ken aan deze activiteiten
een volgnummer toe. Volg hierbij de volgnummers die standaard in OpenAC
zitten (vanaf 100 voor clientgebonden activiteiten, vanaf 200 voor
teamoverleg e.d., vanaf 300 voor ziek, 400 en 500 voor vrij). Het
volgnummerbepaalt de volgorde waarin activiteiten worden gepresenteerd
in menu's, maar ook de volgorde waarin activiteiten elkaar opvolgen bij
het maken van een combinatie-afspraak.
* Maak eventueel in de codetabel ''actiegroep'' groepen aan van
activiteiten die je rooster-technisch kunt beschouwen als
"uitwisselbaar". Voorbeeld: als je twee activiteiten '''gehoor-kort
(GK)''' en '''gehoor-lang (GL)''' hebt, zul je deze vrijwel altijd op
dezelfde tijden inroosteren. Dan is het handig deze samen op te nemen
in een groep '''alle gehooronderzoeken (G)'''. Je kunt ze dan bij het
opstellen van een rooster in één keer invoeren, en ze worden in de
agenda ook verkort afgebeeld als "G" in plaats van "GK, GL".
* Kies de periodes waarmee je gaat plannen. Standaard zijn er twee
periodes actief: ''wekelijks'' en ''dagelijks''. Het is mogelijk hier
tweewekelijkse of vierwekelijkse periodes aan toe te voegen. Dit doe je
door in het scherm '''codetabellen''' te gaan naar de tabel
'''periode''' en hier de gewenste codes op ''in gebruik = ja'' te
zetten. Eventueel kun je ook het weekrooster uitzetten wanneer je
bijvoorbeeld alleen in even/oneven weken wilt plannen.
* Richt tenslotte het rooster in. Dit doe je vanuit het scherm
''Agenda'', knop ''Rooster''. Voer het rooster in per werkdag, per
medewerker. Loop zorgvuldig na wat je invoert; het roosterscherm is een
scherm "met een handleiding" dat je onder de knie moet krijgen.
* Alles behalve het dagrooster (uitzonderingen) noemen we het
''basisrooster''. Dit rooster bepaalt welke (plan)groepen medewerkers
betrokken zijn bij welke soorten onderzoeken.
* TIP: in de codetabel ''activiteit'' wordt per activiteit weergegeven
welke plangroepen bij de activiteit zijn betrokken volgens het
ingevoerde rooster (staat hier bijvoorbeeld '1, 3, 9' dan betekent dat
een spreekuur wordt ingepland met 1 iemand uit de groep audiologie, 1
uit de groep logopedisten en 1 uit de groep kamers/apparatuur.
* Test het automatisch plannen door een aantal testpatienten aan te
maken, en in het dossierscherm richtafspraken definitief te maken
middels het linkje ''automatisch inplannen''
* Lever, als het rooster af is, allereerst je lokale OpenAC-wijzigingen
in. De tabellen '''activiteit.tsv''' en '''actiegroep.tsv''' zouden
moeten worden ingeleverd. Maak daarna een OpenAC-backup. Als de backup
klaar is, maak je een nieuwe map. Hierin stop je de volgende bestanden
uit de backup: '''medewerker_*.tsv''', '''resource_*.tsv''' en
'''rooster_item_*.tsv'''.
* Na de definitieve import uit je lokale pakket naar OpenAC, kies je
voor ''backup terugzetten'' en selecteer je het mapje waarin je de
TSV-bestanden voor medewerkers, resources en rooster-items hebt gezet.
Vink aan "tabellen eerst leegmaken". Het rooster wordt nu ingekopieerd
in je zojuist geimporteerde dataset.
* Maak uitzonderingen aan in het roosterscherm en het scherm
''kantooragenda''. Een uitzondering op het rooster kun je maken door
rooster-items in te voeren die niet per week worden herhaald, maar
dagelijks. Deze hebben voorrang op het weekrooster. Voorts kun je
dagen blokkeren door niet-patientgebonden afspraken in te voeren in het
scherm ''kantooragenda''. ''Let op'': voer de uitzonderingen pas in
nadat je bent overgeschakeld op OpenAC. Het vergt nogal wat
data-nabewerking om de kantooragenda-items in te voegen in een bestaande
database.
* In de codetabel '''activiteit''' kun je de ''groepsgrootte'' invoeren.
Deze geeft aan hoeveel patiënten tegelijk worden gezien. Zo kan
bijvoorbeeld een molenspreekuur worden ingevoerd (bijv. 3 medewerkers, 3
patiënten. Door een groepsgrootte van '''1/2''' in te voeren, geef je
andersom aan, dat per patiënt 2 medewerkers uit dezelfde groep (bijv. 2
audiologie-assistenten) betrokken zijn.
== Koppelingen met webdiensten en apparatuur ==
=== VECOZO webservice activeren in OpenAC ===
Onderstaande instructies dienen eenmalig door een OpenAC-beheerder te
worden uitgevoerd. Zorg ervoor dat de optie "Verzekeringsrecht
controleren bij Vecozo" is aangemerkt als een instelling voor alle
gebruikers, zodat de optie niet op elk werkstation afzonderlijk aangezet
hoeft te worden.
* Vraag een X509 certificaat aan bij [http://www.vecozo.nl VECOZO].
* Installeer het certificaat in Internet Explorer volgens de instructies van VECOZO.
* Als u het certificaat installeert door een eigen backup te importeren
in Internet Explorer, let er dan op dat de persoonlijke sleutel
(private key) als exporteerbaar is aangemerkt. Dit is een optie in de
certificaat importeer wizard in Internet Explorer. Deze optie is
standaard niet aangevinkt.
* Activeer de VECOZO webservice door de optie "Verzekeringsrecht
controleren bij Vecozo" aan te vinken. Dit kan alleen als het
VECOZO-certificaat is geïnstalleerd in OpenAC, voor die tijd is de
optie grijs en kan niet worden aangevinkt.
{{{
#!html
}}}[[BR]]
* Installeer het certificaat in OpenAC door op de link "certificaat
installeren" te klikken.
* Selecteer het certificaat in het dialoogscherm dat volgt. Klik op de
knop "Certificaat weergeven" om de volledige identificatie te kunnen
zien.
{{{
#!html
}}}[[BR]]
* Als het installeren van het certificaat is gelukt, is de optie
"Verzekeringsrecht controleren bij Vecozo" actief geworden. Vink de
optie aan en sla de instellingen op.
* Het certificaat wordt geïnstalleerd in de ''map voor
OpenAC-documenten'' en staat daardoor meteen ter beschikking van ''alle
aangesloten werkstations'' mits de aangegeven map een network share is.
Je hoeft dus maar één certificaat voor het hele AC aan te vragen.
{{{
#!html
}}}
[[BR]]
* Vind je de instelling "Verzekeringsrecht controleren bij Vecozo" niet
in OpenAC, controleer dan dat de module e080_vecozo in OpenAC is
geactiveerd.
=== Decos-koppeling activeren in OpenAC ===
* Kopieer DecosOpenAC.dll en DecosOpenAC.ini van
OpenAC\kern\f080_decos\DecosOpenAC\DLL naar de HIS-map van Decos,
bijvoorbeeld C:\Program Files\Decos Audiology Workstation\HIS
* Wijzig DecosOpenAC.ini. mysql_openac moet worden vervangen door de
naam van de OpenAC ODBC-datasource.
* Registreer DecosOpenAC.dll in Decos. Start Decos Audiology
Workstation en kies Administratieve Tools -> Instellingen -> tabblad
ZIS. Vink Opvragen van patiënt gegevens vanuit het ZIS aan en vul
DecosOpenAC.Patient in achter ZIS component programma ID. De overige
opties leeg laten.
* In het instellingenscherm van OpenAC dient de Decos ODBC-datasource te worden geconfigureerd, kan worden opgegeven of
in Decos moet worden ingelogd als administrator of als de ingelogde OpenAC gebuiker, en kan de locatie van de DAW-tools worden opgegeven. Voorwaarde voor inloggen als OpenAC gebruiker is dat de OpenAC gebruikersnaam bekend is in Decos.
De Decos-koppeling is nu gereed voor gebruik. Als de locatie van de DAW-tools niet is opgegeven in het configuratiescherm,
dan zal daar de eerste keer dat vanuit OpenAC een Decos meting gedaan wordt om gevraagd worden. De locatie van de DAW-tools is de
map waar "Daw wizard.exe" te vinden is, bijvoorbeeld C:\Program Files\Decos Audiology Workstation.
=== Importeren MAC-AC uit MS Access ===
Voor het importeren van MAC-AC registraties moet OpenAC zijn bijgewerkt
naar versie 1.100 revisie 6636. Om de gegevens uit de Microsoft Access
database te importeren in OpenAC, moeten eerst de tabellen "Onderzoek"
en "Patient" te worden geëxporteerd als tabgescheiden tekstbestanden. De
procedure is als volgt (gebaseerd op Microsoft Access 2003, andere
versies kunnen enigszins afwijken):
* Open de MAC-AC database in Microsoft Access en klik op de knop
"Databasevenster" in het menuscherm om de tabellen zichtbaar te maken.
* Klik op de tabel "Onderzoek" en kies uit het menu optie Bestand ->
Exporteren...
* Selecteer eerst het bestandstype achter "Opslaan als:". Kies
Tekstbestanden (*.txt, *.csv, *.tab...
* Geef het bestand de naam onderzoek.tab, en klik op "Exporteren"
* De Wizard Tekst exporteren wordt gestart. Kies "Met scheidingstekens"
en klik op "Geavanceerd...". Zie onderstaande schermafdruk.
{{{
#!html
}}}[[BR]]
* Zorg dat de ingevulde waarden ingevuld worden als onderstaande
schermafdruk. Belangrijk zijn bestandsindeling: gescheiden,
scheidingsteken: {tab}, tekstscheidingsteken: {geen}, datumvolgorde:
JMD, jaar met vier cijfers, datumscheidingsteken -, voorloopnullen in
datums.
{{{
#!html
}}}[[BR]]
* Klik op "OK", en in het volgende scherm op "Volgende"
* Zorg dat "Ook veldnamen in eerste rij" is aangevinkt, en klik op
"Voltooien". Zie onderstaande schermafdruk.
{{{
#!html
}}}[[BR]]
* Herhaal de hele procedure voor de tabel "Patient". Geef het
exportbestand de naam patient.tab
* Hernoemen onderzoek.tab naar macac_onderzoek_export.tsv en patient.tab
naar macac_patient_export.tsv
* In OpenAC, kies in het menu voor Beheer -> Importeren uit... ->
MAC-AC...
* Blader naar de directory waar macac_onderzoek_export.tsv en
macac_patient_export.tsv staan en klik op "OK". De gegevens worden nu
geïmporteerd. Het importlog staat in Documents and
Settings\\Application Data\OpenAC\macac_import_.log
== Gedrag van OpenAC aanpassen: modules en module-parameters ==
Diverse modules van OpenAC hebben ''schakelaars'' die het gedrag
beïnvloeden. Mogelijk heeft u ook niet alle modules ingeschakeld die
voor uw locatie handig zijn.
=== Module-overzicht in de technische documentatie ===
De meeste actuele lijst modules vindt u in de [/openac/documentatie/html/index.html Technische documentatie] onder [/openac/documentatie/html/namespacekern.html Kern].
Met name de modules in de reeksen '''d040''', '''d045''', '''s040''' bevatten veel instellingen.
De modules '''e080''', '''f080''' en '''s080''' zijn met name interessant omdat deze optionele functionaliteit aanbieden.
De instelbare parameters van elke module vindt u door te klikken op de naam
van de module. De parameters staan beschreven direct onder het kopje
'gedetailleerde beschrijving'.
=== Module s080_paraferen ===
Met ingang van OpenAC v1.210 kan de module s080_paraferen worden ingeschakeld. Deze functionaliteit is al enige tijd operationeel bij Auris en is 1-op-1 overgenomen in een kernmodule.
Om de module te activeren moet deze vanuit __init__.py worden gestart. Daarbij moet je een parameter ingangdatum_parafering opgeven. Default staat deze op 2008-11-01. Vanaf deze datum verandert de betekenis van één van de lijsten in het scherm Werklijsten in OpenAC. Voorbeeld voor de integratie vind je in adaptaties/ac_auris/__init__.py, het gaat om 2 regels.
Wat doet deze module?
* in het dossier verschijnt onder het bezoek een aantal extra regels waarmee de medewerker zijn verrichtingen kan fiatteren
* de werklijst in OpenAC die normaal gesproken waarschuwt wanneer bij een bezoek nog nul (0) verrichtingen zijn ingevuld, waarschuwt vanaf de ingangsdatum wanneer er bij een bezoek nog één van de betrokken medewerkers dient te fiatteren.
Het fiatteren is in twee gevallen handig:
* Wanneer medewerkers zelf hun verrichtingen invullen (in tegenstelling tot via een verrichtingbriefje dat centraal door één iemand wordt verwerkt)
* Wanneer verrichtingen automatisch worden afgeleid uit metingen en afspraken. Van dit tweede is nog geen sprake, maar ons is bij de branche bekend dat men dit onder de rivieren een interessante optie vindt.
Aan jullie het besluit of en wanneer je deze functionaliteit in werking stelt. Ik verwacht op basis van mijn kennis dat Raymond er snel mee aan de slag gaat, en Roger er nog even mee zal wachten tot OpenAC in Hoensbroek een tijdje draait.
== Scripting ==
OpenAC kan worden gescript door gebruik te maken van script.py met als
argument het uit te voeren script. Eventuele verdere argumenten zijn
argumenten voor het uit te voeren script.
Zorg ervoor dat een script altijd wordt uitgevoerd vanuit de map waar
OpenAC is geïnstalleerd. Vanuit deze map is de opdrachtregel:
python25\python.exe script.py .
Scripts gebruiken dezelfde instellingen als de laatste OpenAC-sessie.
Het is dus zaak om OpenAC minimaal één keer op de reguliere manier te
starten en te controleren of alle instellingen correct zijn.
=== Een geplande taak aanmaken in Windows ===
* Open "Geplande taken" vanuit het configuratiescherm. De wizard "Taak
plannen" zal worden gestart.
* Blader naar python.exe in \python24.
* Geef de taak een naam.
* Geef aan wanneer de taak moet worden uitgevoerd.
* Voltooi de wizard. Vink op de laatste pagina moet de optie
"Geavanceerde eigenschappen voor deze taak openen wanneer ik op
Voltooien klik" aan. Dit is nodig om de argumenten en de werkdirectory
in te stellen.
* Vul de opdrachtregel achter "Uitvoeren" aan met script.py . Zie voor de naam en argumenten van
het script het lijstje scripts hieronder. De volledige opdrachtregel
wordt: \python24\python.exe script.py .
* Het is belangrijk dat achter "Beginnen in" de OpenAC map wordt
ingevuld. Dit is de werkdirectory.
=== Script backup ===
Aanroep vanaf de command line: "'''Python25\python.exe script.py backup'''".
Dit script schrijft een actuele backup naar de verzameldirectory.
=== Script svn_cleanup ===
Aanroep vanaf de command line: "'''Python25\python.exe script.py svn_cleanup'''".
Dit script kan problemen met het versiebeheer van OpenAC oplossen.
=== Script periodieke TOREN-import ===
Aanroep vanaf de command line: "'''Python25\python.exe script.py
periodiek_toren_import import'''".
Het script periodiek_toren_import doet het volgende:
* Alle bestanden uit de TOREN-importmap met een bepaalde
bestandsextensie worden ingelezen. De TOREN-importmap en de
bestandextensie kunnen worden ingesteld via '''Beheer->Instellingen'''
in OpenAC.
* Als er een structuurfout zit in het importbestand, of als de import
voortijdig wordt afgebroken, dan wordt het importbestand verplaatst
naar de map "'''mislukt'''". Het script "periodiek_toren_import"
garandeert dat elke verrichting uit een importbestand maar één keer
wordt verwerkt, dus een bestand kan zonder gevaar op dubbele
verrichtingen meerdere keren worden geïmporteerd.
* Verrichtingen die niet kunnen worden verwerkt worden weggeschreven
als een kommagescheiden bestand in de map "'''fouten'''".
* Nadat een TOREN-bestand is geïmporteerd wordt het verplaatst naar de
map "'''behandeld'''".
* Bestanden uit de map "mislukt" kunnen worden teruggezet naar de
TOREN-importmap met "'''script.py periodiek_toren_import herstel'''".
=== Script verstuur DBC's ===
Aanroep vanaf de command line: "'''Python25\python.exe script.py verstuur_dbcs'''".
Het script verstuur_dbcs voert de acties uit het scherm DBC's versturen automatisch uit.
== Versiebeheer: releases en revisies ==
=== Hoe werkt de SVN repository? ===
De SVN repository bevat twee directories: development met de actuele ontwikkelversie, en release met daarin stabiele releases van OpenAC.
De AC's kunnen zelf wijzigingen in hun adapataties inleveren. Ze doen dit in de regel in de nieuwste release. Wanneer een AC een wijziging heeft ingeleverd, is dit te zien in de timeline van TRAC. Die houden we als ontwikkelaars dus nauwlettend in de gaten. Wekelijks worden wijzigingen door centra ingeleverd overgenomen in de development-tak. Als centra een oudere release in gebruik hebben, worden wijzigingen ook in de nieuwere releases overgenomen. Wanneer een centrum een wijzing indient en er is al een nieuwe release, krijgt men een waarschuwing dat de ingeleverde zaken niet automatisch beschikbaar zijn in de nieuwe release.
Wijzigingen die in een release worden ingeleverd, moeten via een SVN merge worden opgenomen in de ontwikkeltak.
=== Maken van een OpenAC release ===
Je zit in een werkkopie van de tak 'development'. Doe nu de volgende stappen:
* Ga op de TRAC-website onder "Timeline" naar de vorige release, en loop zorgvuldig de changesets na die sindsdien zijn ingevoerd, draai eventueel een DIFF. Dit gebeurt elke week maar moet vlak voor een release nog een keer worden herhaald, zodat op het moment dat de release note uitkomt, alle wijzigingen zijn overgenomen. Wat men daarna inlevert, moet men zelf weten (versiebeheer waarschuwt dan ook).
* Controleer of alle wijzigingen in de loop van de vorige release zijn overgenomen: development/bin/adaptatie-diff v1.XXX development (vergelijk laatste versie met development). Loop de diff door op vergeten change sets.
* Draai de unit tests en fix zonodig
* Loop het [TestScript test script] door
* Merge door AC's gemaakte fixes op de vorige release in de development-tak
* Test de wijzigingen zonodig
* '''svn commit''' om de wijzigingen uit de merge in te leveren
* Werk '''VERSIES.txt''' bij door de releasedatum aan de laatste versie toe te voegen en de omschrijving af te maken
* Draai '''bin/clean''' en commit eventuele bestanden die nog geen eol-style LF hadden
* Draai nog 1x de unit tests
* '''svn commit'''
* Draai '''bin/release 1.XXX''' om development te kopiëren naar de nieuwe release in SVN
* Maak de adaptatiemap in de nieuwe release schrijfbaar voor centra door 3 regels te kopiëren in /usr/local/apache1/svn/etc/permissions
* Stuur een release-bericht naar openac@fenac.nl. Denk daarbij goed na welke migraties er allemaal gebeuren bij deze nieuwe versie.
=== Maken van een nieuwe starter kit ===
De starter kit is in essentie een self-extracting ZIP van een release branch van OpenAC. Dit zijn de stappen die je moet doorlopen om een starter kit te maken.
* Check de release uit waarvan de starterkit moet worden gemaakt.
* Zorg dat de volgende elementen in de directory aanwezig zijn: directory Python25, en de 4 DLLs msvcpp71.dll, python25.dll, pythoncom25.dll en pywintypes25.dll.
* Draai '''./bin/clean'''. Dit ruimt tempfiles op en zet permissies goed, maar kan ook wijzigingen maken in bestanden. Doe een svn status en als er wijzigingen zijn, deze eerst committen.
* Draai '''./bin/makezip'''. Dit maakt een complete ZIP die goed door windows kan worden uitgepakt.
* De zip is ongeveer 65MB.
* Gebruik EnZIP voor het maken van de EXE: rechtermuis op starterkit.zip -> open with Enzip -> Create self extractor
* Bij Message Box: nee, we willen geen message box.
* Bij Folder: '''"OpenAC"'''
* Title Caption: '''"OpenAC installatie"'''
* Command: '''icon.bat '''
* Selecteer het icon-bestand '''images/OpenAC-128x128.ico '''
* In het laatste scherm geen opties veranderen
* Upload het bestand naar '''Downloads''' op de TRAC site
* Pas de links aan op de wiki-homepage en in de installatiehandleiding, zodat deze wijzen naar de meest recente starter kit.
== Online documentatie genereren ==
=== Infrastructuur en werking ===
De benodigdheden voor het genereren van de online documentatie staan op de server in directory '''/usr/local/apache1/openac-documentatie'''. Deze directory bevat de volgende onderdelen:
||svn-checkout||een lokaal uitgecheckte versie van OpenAC||
||genereer||een symbolische link naar het script waarmee de documentatie gegenereerd kan worden||
||html||de html-output na het genereren van de documentatie||
Het script gebruikt de volgende onderdelen uit de sandbox map van de OpenAC repository:
||Doxyfile||het configuratiebestand van Doxygen||
||doxypy.py||een doxygen filter voor het verwerken van Python-bestanden||
||documentatie/custom||custom headers, footers, stylesheets e.d. die gebruikt worden door Doxygen tijdens het genereren van de documentatie||
Het script begint met het bijwerken van de lokaal uitgecheckte versie van OpenAC met svn update. Vervolgens wordt de documentatie gegenereerd met Doxygen. Daarna wordt de documentatie naar de uiteindelijke locaties gekopieerd, te weten:
||/usr/local/apache1/openac-site/documentatie/html||de documentatie||
||/usr/local/apache1/openac-site/documentatie/custom||stylesheets e.d.||
=== Genereren documentatie ===
De online documentatie kan worden gegenereerd met het commando '''genereer''', op de volgende manier:
{{{
cd /usr/local/apache1/openac-documentatie
./genereer
}}}
'''genereer''' is een symbolische link naar het script ''/usr/local/apache-1/openac-documentatie/svn_checkout/bin/documentatie'' en verandert dus automatisch als ''bin/documentatie'' wordt gewijzigd en gecommit. Na de wijziging is het natuurlijk wel noodzakelijk om een svn update te doen in de map svn_checkout.
=== Afhankelijkheden ===
Voor het genereren van de online documentatie moeten de volgende twee pakketten op de server zijn geinstalleerd:
* Graphviz, voor het dynamisch genereren van diagrammen door Doxygen;
* Doxygen, en wel de door ons zelf gewijzigde versie.
Beide pakketten staan in '''/usr/local/inst''', inclusief een ''myconfig.sh'' voor de lokale instellingen.