# The GNUmed Manual

## User Guide | Administrator Guide | Developer Guide

## User Guide

### Before you start

- Principles of the GNUmed System
  - never endanger or render invalid any patient data (eg. when retiring forms) - Caveat: error reports
  - never change user configuration data w/o asking for confirmation (eg. doc types)

- Using the GNUmed Client User Interface
- Understanding the GNUmed EMR

### First Steps

- Starting Gnumed
- Getting to know Gnumed
- Basic Patient Handling
- Basic Usage Tips
- Structuring the EMR

### Record Keeping

- Concepts
- Keeping textual Progress Notes
- Keeping visual Progress Notes
- Managing Allergies and Intolerances
- Managing Hospital Stays
- Managing Procedures

### Medication / Substance Use Management

- Concepts

### Test Results Management

- Concepts
- Adding test results
- Viewing test results

### Vaccinations Management

- Concepts

### Document Management

- Concepts
- Writing letters and using forms
- Adding documents to the archive
- Viewing archived documents
- Patient photograph handling

### Workflow Management

- Using the waiting list
- Handling appointments

### Module Descriptions

- Lab Module
- Implanted Cardiac Device Module

### Menu Reference

- Menu Reference

### Advanced Topics

- the concept of time
- the Report Generator
- adding Forms
- managing Users
- planning your paper to EMR transition
- planning Fax Integration

## Administrator Guide

### Server Maintenance

- Account/Access Management
- Client/Access Management
- Database Installation
- Going into production
- Database Upgrade
- Database Backup, Restore and Migration
- Managing Reference data (including data packs)

### Client Maintenance

- Installation and Upgrade (several methods are available)
- Client Configuration
  - Configuration Files
  - Customizing client startup
  - Customizing backend login
  - Hooking into the client workflow
  - Configuring client behaviour (options)
  - Managing master data (reference data sets)
  - Customizing document management
  - Customizing patient search
  - External patient interface
    - 3rd party applications
    - German Krankenversichertenkarte
  - XML-RPC based remote control of the client
- Routine Maintenance

### Tested/Suggested Hardware

- Image Scanner
- Digital Cameras
- Mobile Phones

## Developer Guide

### Introduction

- some development guidelines to keep in mind

### Concepts

- the address concept
- the organisation concept
- dealing with concurrent database modifications

### The Backend

- database revision handling
- the database structure - a conceptual view
- the full database schema
  - generated daily from a cron job
  - gnumed/client/doc/make-schemadocs.sh -> pg_autodoc
- i18n/l10n issues

### The Frontend

- Design Decisions
- the APIDocumentation
  - epydoc run over the CVS source tree
- Internationalization

### The Middleware

- please ask

### The Source Code Repository

- browse the Git tree on the web

### 3rd party projects used with GNUmed

- libchipcard
- the TWAIN Python binding: GPLv2
- the Python Imaging Library (PIL): BSD license (Original)
- the XSane scanning frontend
- the Ginkgo CADx DICOM viewer
- the Aeskulap DICOM viewer
- the XMedCon DICOM viewer
- the psycopg2 DB-API module
- gmMimeMagic (magic.py): license ?
- the FreeDiams drug reference
- the ARRIBA CV risk calculator (free use)
- the Gelbe Liste/MMI German drug database (commercial)

### Licensing status of 3rd party data

- read about those licenses here

Archives: draft Developer manuals