Package Gnumed :: Package business :: Module gmXdtMappings |
[frames] | no frames]

# Source Code for Module Gnumed.business.gmXdtMappings

       1  # -*- coding: utf-8 -*-
       2  """GNUmed German xDT mapping data.
       3
       4  This maps xDT fields in various ways.
       5  """
       6  #==============================================================
       7  __author__ = "S.Hilbert, K.Hilbert"
       8  __license__ = "GPL v2 or later"
       9
      10  #==============================================================
      11  if __name__ == '__main__':
      12          _ = lambda x:x
      13
      14
      15  # FIXME: xBDT incorporated only up to (excluding) Satzart 0101 (Do 09 Aug 2007 11:10:16 CEST)
      16  xdt_id_map = {
      17
      18          '6295': '??',
      19          '6296': '??',
      20          '6297': '??',
      21          '6298': '??',
      22          '6299': '??',
      23
      24          '0101': 'KBV-Prüfnummer',
      25          '0102': 'Softwareverantwortlicher /// xBDT: Softwarelizenz',
      26          '0103': 'Softwarename',
      27          '0104': 'Hardware',
      28          '0105': 'KBV-Prüfnummer',
      29          '0111': 'Email-Adresse des Softwareverantwortlichen',
      30          '0121': 'Strasse des Softwareverantwortlichen',
      31          '0122': 'PLZ des Softwareverantwortlichen',
      32          '0123': 'Ort des Softwareverantwortlichen',
      33          '0124': 'Telefonnummer des Softwareverantwortlichen',
      34          '0125': 'Telefaxnummer des Softwareverantwortlichen',
      35          '0126': 'Regionaler Systembetreuer',
      36          '0127': 'Strasse des Systembetreuers',
      37          '0128': 'PLZ des Systembetreuers',
      38          '0129': 'Ort des Systembetreuers',
      39          '0130': 'Telfonnummer des Systembetreuers',
      40          '0131': 'Telefaxnummer des Systembetreuers',
      41          '0132': 'Release-Stand der Software',
      42
      43          '0201': 'Arztnummer',
      44          '0202': 'Praxistyp',
      45          '0203': 'Arztname',
      46          '0204': 'Fachgebiet',
      47          '0205': 'Strasse der Praxisadresse',
      48          '0206': 'PLZ Ort der Praxisadresse',
      49          '0207': 'Arzt mit Leistungskennzeichen',
      50          '0208': 'Telefonnummer der Praxis',
      51          '0209': 'Telefaxnummer der Praxis',
      52          '0210': 'Modemnummer der Praxis',
      53          '0211': 'Arztname für Leistungsdifferenzierung',
      54          '0213': 'Leistungskennzeichen',
      55          '0214': 'Erläuterung zum Leistungskennzeichen',
      56          '0215': 'PLZ der Praxisadresse',
      57          '0216': 'Ort der Praxisadresse',
      58          '0218': 'E-Mail der Praxis/des Arztes',
      59          '0225': 'Anzahl der Ärzte',
      60
      61          '0250': 'Name erste freie Kategorie',
      62          '0251': 'Inhalt erste freie Kategorie',
      63
      64          '0915': 'PZN Medikament auf Kassenrezept',
      65          '0917': 'Packungsgrösse Medikament auf Kassenrezept',
      66          '0918': 'Packungsgrösse Medikament auf Privatrezept',
      67          '0919': 'Hilfsmittelbezeichnung',
      68          '0920': 'Hilfsmittelnummer',
      69          '0922': 'PZN Hilfsmittel',
      70          '0923': 'Anzahl Hilfsmittel',
      71          '0925': 'Heilmittel',
      72          '0950': 'PZN Dauermedikament',
      73          '0951': 'PZN Medikament auf Privatrezept',
      74          '0952': 'PZN Ärztemuster',
      75          '0953': 'Packungsgrösse Ärztemuster',
      76          '0960': 'Kennzeichnung Gebührenpflichtig',
      77          '0961': 'Kennzeichnung aut idem',
      78          '0962': 'Kennzeichnung noctu',
      79          '0970': 'Anzahl (Packungen) Medikament auf Rezept',
      80          '0971': 'Anzahl (Packungen) Medikament auf Privatrezept',
      81
      82          '2002': 'KASSENNAME für Albis (Quelle: mediSYS)',
      83
      84          '2700': 'IK des Krankenhauses',
      85          '2701': 'Fachgebiet laut LKA',
      86          '2702': 'Arztnummer des Anästhesisten',
      87          '2706': 'Indikationsschlüssel',
      88          '2709': 'Lfd. OP-Nummer',
      89          '2710': 'Lfd. OP-Nummer',
      90          '2711': 'OP-Datum',
      91          '2720': 'Blutung',
      92          '2721': 'Narkosezwischenfall',
      93          '2722': 'Pneumonie',
      94          '2723': 'Wundinfektion',
      95          '2724': 'Gefäss- oder Nervenläsion',
      96          '2725': 'Lagerungsschäden',
      97          '2726': 'Venenthrombose',
      98          '2727': 'Komplikation',
      99          '2728': 'Erfolgsbeurteilung hinsichtlich Indikationsstellung',
     100          '2729': 'Erfolgsbeurteilung hinsichtlich Histologie',
     101          '2730': 'Revisionseingriff',
     102          '2731': 'Stationäre Aufnahme',
     103          '2732': 'Angaben zu implantierten Materialien',
     104          '2740': 'Art der Operation',
     105          '2741': 'Dauer der Operation',
     106          '2742': 'Operierte Seite',
     107          '2743': 'Art der Anästhesie',
     108          '2744': 'Art der Anästhesie gemäss Klassifikation Strukturvertrag',
     109          '2750': 'Operateur hat Facharztstatus',
     110          '2751': 'Anzahl ärztl. Assistenten bei OP',
     111          '2752': '(Ein) OP-Assistent hat Facharztstatus',
     112          '2753': 'Anzahl nichtärzticher Assistenten bei OP',
     113          '2760': 'Art der Anästhesie',
     114          '2761': 'Anästhesie erbracht',
     115          '2762': 'Dauer der Anästhesie',
     116          '2770': 'Blutung',
     117          '2771': 'Narkosezwischenfall',
     118          '2772': 'Pneumonie',
     119          '2773': 'Wundinfektion',
     120          '2774': 'Gefäss- oder Nervenläsion',
     121          '2775': 'Lagerungsschäden',
     122          '2776': 'Venenthrombose',
     123          '2780': 'Revisionseingriff erforderlich',
     124          '2781': 'Histologie',
     125          '2782': 'Stationäre Weiterbehandlung erforderlich',
     126
     127          '3000': 'Patientennummer/-kennung',
     128          '3050': 'Kürzel/lfd. Nummer',
     129          '3100': 'Namenszusatz/Vorsatzwort',
     130          '3101': 'Name des Patienten',
     131          '3102': 'Vorname des Patienten',
     132          '3103': 'Geburtsdatum des Patienten',
     133          '3104': 'Titel des Patienten',
     134          '3105': 'Versichertennummer des Patienten',
     135          '3106': 'PLZ/Wohnort des Patienten',
     136          '3107': 'Strasse/Hausnummer des Patienten',
     137          '3108': 'Versichertenart MFR',                          # 1=M,3=F,5=R
     138          '3110': 'Geschlecht des Patienten',                     # 1=M,2=W or M/W/U
     139          '3111': 'Geburtsjahr des Patienten',
     140          '3112': 'PLZ des Patienten',
     141          '3113': 'Wohnort des Patienten',
     142          '3114': 'Wohnsitzländercode',
     143          '3116': 'KV-Bereich',
     144          '3119': 'Versicherten-ID (eGK)',
     145          '3150': 'Arbeitgeber',                                          # nur bei header 0191
     146          '3152': 'Unfallversicherungsträger',           # nur bei header 0191
     147
     148          '3200': 'Namenszusatz/Vorsatzwort des Hauptversicherten',
     149          '3201': 'Name des Hauptversicherten',
     150          '3202': 'Vorname des Hauptversicherten',
     151          '3203': 'Geburtsdatum des Hauptversicherten',
     152          '3204': 'Wohnort des Hauptversicherten',
     153          '3205': 'Strasse des Hauptversicherten',
     154          '3206': 'Titel des Hauptversicherten oder Familienverhältnis',         # conflicting sources !
     155          '3207': 'PLZ des Hauptversicherten',
     156          '3208': 'Telefonnummer des Verletzten',         # nur bei header 0191
     157          '3209': 'Wohnort des Hauptversicherten',
     158          '3210': 'Geschlecht des Hauptversicherten',     # nur bei header 0191
     159
     160          # scheinbar alter BDT ? (Quelle: mediSYS GmbH)
     161          '3301': 'Name des Patienten',
     162          '3302': 'Vorname des Patienten',
     163          '3303': 'Geburtsdatum des Patienten (TTMMJJ)',
     164          '3306': 'PLZ/Wohnort des Patienten',
     165          '3307': 'Straße/Hausnummer des Patienten',
     166          '3308': '?? Status Patient',
     167
     168          '3600': 'Patientennummer (alter BDT ?, beobachtet bei Medistar)',
     169          '3601': 'Röntgennummer',
     170          '3602': 'Archivnummer',
     171          '3603': 'BG-Nummer',
     172          '3610': 'Datum Patient seit',                                                   # nur bei header 6100
     173          '3612': 'Datum Versichertenbeginn bei Kassenwechsel',   # nur bei header 6100
     174          '3620': 'Beruf des Patienten',                                                  # nur bei header 6100
     175          '3621': 'Geschlecht des Patienten (Hilfsfeld, gestrichen)',
     176          '3622': 'Grösse des Patienten',                                                        # nur bei header 6100
     177          '3623': 'Gewicht des Patienten',                                                # nur bei header 6100
     178          '3625': 'Arbeitgeber des Patienten',                                    # nur bei header 6100
     179          '3626': 'Telefonnummer des Patienten',                                  # nur bei header 6100
     180          '3627': 'Nationalität des Patienten',                                  # nur bei header 6100
     181          '3628': 'Muttersprache des Patienten',                                  # nur bei header 6100
     182          '3630': 'Arztnummer des Hausarztes',                                    # nur bei header 6100
     183          '3631': 'Entfernung Wohnung-Praxis',                                    # nur bei header 6100
     184          '3635': 'interne Zuordnung Arzt bei GP',                                # nur bei header 6100
     185          '3637': 'Rezeptkennung',                                                                # nur bei header 6100
     186          '3649': 'Dauerdiagnosen ab Datum',                                              # nur bei header 6100
     187          '3650': 'Dauerdiagnosen',                                                               # nur bei header 6100
     188          '3651': 'Dauermedikamente ab Datum',                                    # nur bei header 6100
     189          '3652': 'Dauermedikamente',                                                             # nur bei header 6100
     190          '3654': 'Risikofaktoren',                                                               # nur bei header 6100
     191          '3656': 'Allergien',                                                                    # nur bei header 6100
     192          '3658': 'Unfälle',                                                                             # nur bei header 6100
     193          '3660': 'Operationen',                                                                  # nur bei header 6100
     194          '3662': 'Anamnese',                                                                             # nur bei header 6100
     195          '3664': 'Anzahl Geburten',                                                              # nur bei header 6100
     196          '3666': 'Anzahl Kinder',                                                                # nur bei header 6100
     197          '3668': 'Anzahl Schwangerschaften',                                             # nur bei header 6100
     198          '3670': 'Dauertherapie',                                                                # nur bei header 6100
     199          '3672': 'Kontrolltermine',                                                              # nur bei header 6100
     200          '3673': 'Dauerdiagnose (ICD-Code)',
     201          '3674': 'Diagnosensicherheit Dauerdiagnose',
     202          '3675': 'Seitenlokalisation Dauerdiagnose',
     203
     204          '3700': 'Name erste freie Kategorie',                                   # nur bei header 6100
     205          '3701': 'Inhalt erste freie Kategorie',                                 # nur bei header 6100
     206          # 3704-3719 freie Kategorien
     207
     208          '4101': 'Abrechnungsquartal',
     209          '4102': 'Ausstellungsdatum',
     210          '4103': 'Gültigkeit',
     211          '4104': 'VKNR, Kassennummer',
     212          '4105': 'Geschäftsstelle der VK',
     213          '4106': 'Kostenträger-Untergruppe (KTAB)',
     214          '4107': 'Abrechnungsart',
     215          '4109': 'KVK: letzte Vorlage (TTMMJJ)',
     216          '4110': 'KVK: Gültigkeit bis',
     217          '4111': 'Krankenkassennummer (IK)',
     218          '4112': 'KVK: Versichertenstatus',
     219          '4113': 'KVK: Ost/West-Status/DMP-Kennzeichnung',
     220          '4121': 'Gebührenordnung',
     221          '4122': 'Abrechnungsgebiet',
     222          '4123': 'Personenkreis/Untersuchungskategorie',
     223          '4124': 'SKT-Zusatzangaben',
     224          '4125': 'Gültigkeitszeitraum von ... bis ...',
     225
     226          '4201': 'Ursache des Leidens',
     227          '4202': 'Unfall, Unfallfolgen',
     228          '4203': 'Früherkennung',
     229          '4205': 'MuVo-Datum',
     230          '4206': 'mutmasslicher Tag der Entbindung',
     231          '4207': 'Diagnose/Verdacht',
     232          '4209': 'erläuternder Text zur Überweisung',
     233          '4210': 'Ankreuzfeld LSR',
     234          '4211': 'Ankreuzfeld HAH',
     235          '4212': 'Ankreuzfeld ABO.RH',
     236          '4213': 'Ankreuzfeld AK',
     237          '4215': 'Konz. wegen (Text)',
     238          '4217': 'Vertragsarzt-Nr. des Erstveranlassers / Mit/Weiter (Text)',    # conflicting sources
     239          '4218': 'Überweisung von Arztnummer',
     240          '4219': 'Überweisung von anderen Ärzten / an Name',                                           # conflicting sources
     241          '4220': 'Überweisung an Fachgruppe',
     242          '4221': 'Kurativ // Präventiv / Sonstige Hilfen / bei belegärztlicher Behandlung',
     243          '4222': 'Kennziffer OI./O.II. // Prävention',                                                  # conflicting sources
     244          '4223': 'Kennziffer OIII. // Sonstige Hilfen',                                                  # conflicting sources
     245          '4224': 'AU bis',
     246          '4233': 'stationäre Behandlung von... bis...',
     247          '4234': 'anerkannte Psychotherapie',
     248          '4235': 'Datum des Anerkennungsbescheides',
     249          '4236': 'Klasse bei Behandlung',
     250          '4237': 'Krankenhausname',
     251          '4238': 'Krankenhausaufenthalt',
     252          '4239': 'Scheinuntergruppe',
     253          '4243': 'weiterbehandelnder Arzt',
     254          '4261': 'Kurart',
     255          '4262': 'Durchführung als Kompaktkur',
     256          '4263': 'genehmigte Kurdauer in Wochen',
     257          '4264': 'Anreisetag',
     258          '4265': 'Abreisetag',
     259          '4266': 'Kurabbruch am',
     260          '4267': 'Bewilligte Kurverlängerung in Wochen',
     261          '4268': 'Bewilligungsdatum Kurverlängerung',
     262          '4269': 'Verhaltenspräventive Massnahmen angeregt',
     263          '4270': 'Verhaltenspräventive Massnahmen durchgeführt',
     264          '4271': 'Kompaktkur nicht möglich',
     265
     266          '4500': 'Unfalltag',
     267          '4501': 'Uhrzeit des Unfalls',
     268          '4502': 'Eingetroffen in Praxis am',
     269          '4503': 'Uhrzeit des Eintreffens',
     270          '4504': 'Beginn der Arbeitszeit',
     271          '4505': 'Unfallort',
     272          '4506': 'Beschäftigung als',
     273          '4507': 'Beschäftigung seit',
     274          '4508': 'Staatsangehörigkeit',
     275          '4509': 'Unfallbetrieb',
     276          '4510': 'Unfallhergang',
     277          '4512': 'Verhalten des Verletzten nach dem Unfall',
     278          '4513': 'Erstmalige Behandlung',
     279          '4514': 'Behandlung durch',
     280          '4515': 'Art der ersten ärztlichen Behandlung',
     281          '4520': 'Alkoholeinfluß',
     282          '4521': 'Anzeichen eines Alkoholeinflusses',
     283          '4522': 'Blutentnahme zum c2h5oh-Nachweis',
     284          '4530': 'Befund',
     285          '4540': 'Röntgenergebniss',
     286          '4550': 'Art etwaiger Versorgung durch D-Arzt',
     287          '4551': 'krankhafte Verändrungen unabhängig vom Unfall',
     288          '4552': 'Bedenken gegen Angaben',
     289          '4553': 'Art der Bedenken gegen Angaben',
     290          '4554': 'Bedenken gegen Arbeistunfall',
     291          '4555': 'Art der Bedenken gegen Arbeitsunfall',
     292          '4560': 'arbeitsfähig',
     293          '4561': 'wieder arbeitsfähig ab',
     294          '4562': 'AU ausgestellt',
     295          '4570': 'besondere Heilbehandlung erforderlich',
     296          '4571': 'besondere Heilbehandlung durch',
     297          '4572': 'Anschrift behandelnder Arzt',
     298          '4573': 'AU ab',
     299          '4574': 'voraussichliche Dauer der AU',
     300          '4580': 'Rechnungsart',
     301          '4581': 'allgemeine Heilbehandlung durch',
     302          '4582': 'AU über 3 Tage',
     303          '4583': 'AU bescheinigt als',
     304          '4584': 'Nachschau erforderlich',
     305
     306          '4601': 'Rechnungsnummer',
     307          '4602': 'Rechnungsanschrift',
     308          '4603': 'überweisender Arzt',
     309          '4604': 'Rechnungsdatum',
     310          '4605': 'Endsumme',
     311          '4608': 'Abdingungserklärung vorhanden',
     312          '4611': 'Unterkonto Arzt',
     313          '4613': 'Anlage erforderlich',
     314          '4615': 'Kopfzeile',
     315          '4617': 'Fußzeile',
     316
     317          '5000': 'Leistungstag',
     318          '5001': 'Gebührennummer',
     319          '5002': 'Art der Untersuchung',
     320          '5003': 'Empfänger des Briefes',
     321          '5004': 'Kilometer',
     322          '5005': 'Multiplikator / Anzahl GNR',
     323          '5006': 'Um-Uhrzeit',
     324          '5007': 'Bestellzeit-Ausführungszeit',
     325          '5008': 'Doppelkilometer',
     326          '5009': 'freier Begründungstext',
     327          '5010': 'Medikament als Begründung',
     328          '5011': 'Sachkostenbezeichnung',
     329          '5012': 'Sach-/Materialkosten in Cent',
     330          '5013': 'Prozent der Leistung',
     331          '5015': 'Organ',
     332          '5016': 'Name des Arztes',
     333          '5017': 'Besuchsort bei Hausbesuchen',
     334          '5018': 'Zone bei Besuchen',
     335          '5019': 'Erbringungsort,Standort des Gerätes',
     336          '5023': 'GO-Nummern-Zusatz',
     337          '5024': 'GNR-Zusatzkennzeichen für poststationär erbrachte Leistungen',
     338          '5060': 'Beschreibung der GNR',
     339          '5061': 'Gebühr',
     340          '5062': 'Faktor',
     341          '5063': 'Betrag',
     342          '5064': 'Endsumme Privatrechnung',
     343          '5090': 'Honorarbezeichnung',
     344          '5091': 'Gutachtenbezeichnung',
     345
     346          '6000': 'Abrechnungsdiagnosen // xBDT: Diagnose',
     347          '6001': 'ICD-Schlüssel',
     348          '6003': 'Diagnosensicherheit',
     349          '6004': 'Seitenlokalisation',
     350          '6005': 'Histologischer Befund bei Malignität',
     351          '6006': 'Diagnosenerläuterung',
     352
     353          '6200': 'Behandlungsdaten gespeichert am',
     354          '6205': 'aktuelle Diagnose',
     355          '6210': 'Medikament verordnet auf Kassenrezept',
     356          '6211': 'Medikament verordnet auf Privatrezept',
     357          '6215': 'Ärztemuster',
     358          '6220': 'Befund',
     359          '6221': 'Fremdbefund',
     360          '6222': 'Laborbefund',
     361          '6225': 'Röntgenbefund',
     362          '6230': 'Blutdruck',
     363          '6240': 'Symptome',
     364          '6260': 'Therapie',
     365          '6265': 'physikalische Therapie',
     366          '6280': 'Überweisung Inhalt',
     367          '6285': 'AU Dauer (von - bis)',
     368          '6286': 'AU wegen',
     369          '6287': 'AU wegen (ICD-Code)',
     370          '6288': 'Diagnosesicherheit AU wegen',
     371          '6289': 'Seitenlokalisation AU wegen',
     372          '6290': 'Krankenhauseinweisung, Krankenhaus',
     373          '6291': 'Krankenhauseinweisung',
     374          '6292': 'Krankenhauseinweisung wegen (ICD-Code)',
     375          '6293': 'Diagnosesicherheit Krankenhauseinweisung wegen',
     376          '6294': 'Seitenlokalisation Krankenhauseinweisung wegen',
     377
     378          '6300': 'Bescheinigung',
     379          '6301': 'Inhalt der Bescheinigung',
     380          '6306': 'Attest',
     381          '6307': 'Inhalt des Attestes',
     382          '6310': 'Name des Briefempfängers',
     383          '6311': 'Anrede',
     384          '6312': 'Strasse',
     385          '6313': 'PLZ',
     386          '6314': 'Wohnort',
     387          '6315': 'Schlusssatz',
     388          '6316': 'Telefonnummer',
     389          '6317': 'Telefax',
     390          '6319': 'Arztnummer/Arztident',
     391          '6320': 'Briefinhalt',
     392          '6325': 'Bild-Archivierungsnummer',
     393          '6326': 'Graphikformat',
     394          '6327': 'Bildinhalt',
     395          # 63xx und 63xx+1 belong to each other in pairs up to 6398/99
     396          '6330': 'freie Kategorie 1: Name',
     397          '6331': 'freie Kategorie 1: Inhalt',
     398
     399          '7100': 'Namenszusatz',
     400          '7101': 'Name',
     401          '7102': 'Vorname',
     402          '7103': 'Geburtsdatum',
     403          '7104': 'Titel',
     404          '7106': 'PLZ/Ort',
     405          '7107': 'Straße',
     406          '7110': 'Geschlecht: 1=männlich, 2=weiblich, 8=gemischt (Gemeinschaftspraxen o.ä.)',
     407          '7112': 'PLZ',
     408          '7113': 'Wohn-/Praxisort',
     409
     410          '7200': 'xBDT: Typ Textbaustein/Medikament (0=Medikament, 1=BTM, 2=Heilmittel, 3=Hilfsmittel, 4=Impfstoff, 5=Sprechstundenbedarf)',
     411          '7201': 'xBDT: KV-Nummer/Hinweise/Name /// AOK-DMP (D.M.): 1.-3. Stelle der Postleitzahl',
     412          '7202': 'xBDT: Fachrichtung/Textbaustein/PZN /// AOK-DMP (D.M.): Nummer des Diabetes-Paß',
     413          '7203': 'Telefon/Preis',
     414          '7204': 'Funktelefon/Festbetrag',
     415          '7205': 'Telefax/Negativliste (1=auf Liste)',
     416          '7206': 'E-Mail-Adresse/Packungsgröße',
     417          '7207': 'Kurzanrede/Wirkstoff',
     418          '7208': 'Briefanrede/Indikation',
     419          '7209': 'Briefschluß/Nebenwirkungen',
     420          '7210': 'Ansprechpartner/Gegenanzeigen',
     421          '7211': 'Vertretung/Wechselwirkungen',
     422          '7212': 'Bankname/Hinweise',
     423          '7213': 'BLZ/Alternativmedikamente',
     424          '7214': 'Kontonummer',
     425          '7215': 'Bemerkung',
     426          '7216': 'Sonstiges',
     427          '7217': 'Gruppenkennzeichen: 1=Arztkollege, 2=Arbeitgeber, 4=Krankenhaus, 5=BG, 6=Sonstige',
     428          '7218': 'Internet-Adresse',
     429
     430          '7210':'AOK-DMP (D.M.): Datum der Erstmeldung',
     431          '7212':'AOK-DMP (D.M.): bereits v. SSP mitbetreut; 1=nein, 2=ja',
     432          '7215':'AOK-DMP (D.M.): Schulungsstatus; 1=nicht 2=geschult',
     433          '7216':'AOK-DMP (D.M.): Jahr der letzten Schulung; Vorgabe 1979',
     434          '7220':'AOK-DMP (D.M.): Schulung laut Vertrag durchgeführt; ja, nein',
     435          '7221':'AOK-DMP (D.M.): Begründung für keine Schulung; 1 bis 5',
     436          '7222':'AOK-DMP (D.M.): Klartext für Sonstige 7221 = 5',
     437          '7223':'AOK-DMP (D.M.): Schulungsprogramm; 1 bis 17',
     438          '7224':'AOK-DMP (D.M.): Schulungsinstitution; 1 bis 4',
     439          '7226':'AOK-DMP (D.M.): Schwangerschaft; 1=nein, 2=ja',
     440          '7227':'AOK-DMP (D.M.): Mitglied Selbsthilfegruppen; 1=nein, 2=ja',
     441          '7228':'AOK-DMP (D.M.): Überweisung SPP/HA veranlasst ?; 1=nein, 2=ja',
     442          '7229':'AOK-DMP (D.M.): Begründung für keine Überweisung;1 bis 4',
     443          '7230':'AOK-DMP (D.M.): Klartext Sonstiges 7229 = 5',
     444
     445          '8000': 'Satzidentifikation >>===============',
     446          '8100': 'Satzlänge',
     447
     448          '8301': 'Eingangsdatum des Auftrags im Labor',       ## nicht in GDT 2.1 Specs (KS)
     449          '8302': 'Berichtsdatum',       ## nicht in GDT 2.1 Specs (KS)
     450          '8303': 'Berichtszeit',     ## nicht in GDT 2.1 Specs (KS)
     451          '8310': 'Anforderungsnummer',
     452          '8311': '(interne) Auftragsnummer des Labors',## nicht in GDT 2.1 Specs (KS)
     453          '8312': 'Kunden- bzw. Arztnummer',## nicht in GDT 2.1 Specs (KS)
     454          '8315': 'GDT-ID Empfänger',
     455          '8316': 'GDT-ID Sender',
     456          '8320': 'Labor Bezeichnung',     ## nicht in GDT 2.1 Specs (KS)
     457          '8321': 'Labor Strasse',         ## nicht in GDT 2.1 Specs (KS)
     458          '8322': 'Labor PLZ',             ## nicht in GDT 2.1 Specs (KS)
     459          '8323': 'Labor Ort',             ## nicht in GDT 2.1 Specs (KS)
     460
     461          '8401': 'Befundstatus (E=End, T=Teil, V=Vor, A=Archiv)',
     462          '8402': 'Geräte-/Verfahrensspezifisches Kennfeld',
     463          '8403': 'Gebührenordnung',
     464          '8404': 'Kosten in Doppelpfennigen',
     465          '8406': 'Kosten in Cent',
     466          '8407': 'Geschlecht Patient',    ## nicht in GDT 2.1 Specs (KS)
     467          '8410': 'Test-Ident/LDT-Kürzel',
     468          '8411': 'Testbezeichnung',
     469          '8417': 'Zuordnung (A,D,T,L...) neu für KVT',
     470          '8418': 'Teststatus',
     471          '8420': 'Ergebnis-/Meßwert',
     472          '8421': 'Einheit',
     473          '8422': 'Grenzwert Indikator',
     474          '8428': 'Probematerial-Ident',
     475          '8429': 'Probenmaterial-Nummer',
     476          '8430': 'Probenmaterial-Bezeichnung',
     477          '8431': 'Material_Spezifikation',
     478          '8432': 'Abnahme-Datum',
     479          '8433': 'Abnahme-Zeit',
     480          '8440': 'Keim-Ident',
     481          '8441': 'Keim-Bezeichnung',
     482          '8442': 'Keim-Nummer',
     483          '8443': 'Methode der Resistenzbestimmung',
     484          '8444': 'Wirkstoff-Ident',
     485          '8445': 'Wirkstoff-Generic-Nummer',
     486          '8446': 'MHK/Breakpoint',
     487          '8447': 'Resistenz-Interpretation',
     488          '8460': 'Normalwert-Text',
     489          '8461': 'Normalwert untere Grenze',
     490          '8462': 'Normalwert obere Grenze',
     491          '8470': 'Anmerkung',
     492          '8480': 'Ergebnis-Text',
     493          '8485': 'Zielwert KVT',
     494          '8486': 'Ersteintritt',
     495          '8490': 'Abschluss-Zeile',
     496
     497          '8609': 'Gebührenordung',
     498          '8990': 'Signatur',
     499
     500          '9100': 'Arztnummer des Absenders',
     501          '9102': 'Empfänger',
     502          '9103': 'Erstellungsdatum (TTMMJJJJ)',
     503          '9105': 'laufende Nummer Datenträger im Paket (xBDT: immer 1)',
     504          '9106': 'verwendeter Zeichensatz (1=7, 2=8-bit-Code)',
     505          '9115': 'Erstellungsdatum ADT-Datenpaket',
     506          '9116': 'Erstellungsdatum KADT-Datenpaket',
     507          '9117': 'Erstellungsdatum AODT-Datenpaket',
     508          '9118': 'Erstellungsdatum STDT-Datenpaket',
     509          '9132': 'enthaltene Datenpakete dieser Datei',
     510
     511          '9202': 'Gesamtlänge Datenpaket (Byte)',
     512          '9203': 'Anzahl Datenträger im Paket',
     513          '9204': 'Abrechnungsquartal',
     514          '9206': 'Zeichensatz (encoding)',
     515          '9210': 'Version ADT-Satzbeschreibung',
     516          '9211': 'Version Satztabelle ADT',
     517          '9212': 'Version der Satzbeschreibung',
     518          '9213': 'Version BDT',
     519          '9218': 'Version GDT',
     520          '9233': 'GO-Stammdatei-Version',
     521
     522          '9600': 'Archivierungsart (1=Gesamt, 2=Zeitraum, 3=Quartal)',
     523          '9601': 'Zeitraum der Speicherung (TTMMJJJJTTMMJJJJ)',
     524          '9602': 'Beginn der Übertragung (HHMMSSCC)',
     525
     526          '9901': 'Systeminterner Parameter /// xBDT: Praxishaupttyp bei untergeordneten Praxen'
     527
     528  }
     529  #--------------------------------------------------------------
     530  # 8000
     531  xdt_packet_type_map = {
     532          '0010': "========<< Praxisdaten >>========",
     533          '0020': "========<< Anfang Datenträger >>========",
     534          '0021': "========<< Ende Datenträger >>========",
     535          '0022': "========<< Anfang Datenpaket >>========",
     536          '0023': "========<< Ende Datenpaket >>========",
     537          '0080': '========<< xBDT: Stammdaten >>========',
     538          '0081': '========<< xBDT: Diagnosenliste >>========',
     539          '0082': '========<< xBDT: Textbausteine >>========',
     540          '0083': '========<< xBDT: Leistungsketten >>========',
     541          '0084': '========<< xBDT: Medikamente >>========',
     542
     543          '0101': "========<< Fall: Primärarzt >>========",
     544          '0102': "========<< Fall: Überweisung >>========",
     545          '0103': "========<< Fall: Belegarzt  >>========",
     546          '0104': "========<< Fall: Notfall/Dienst/Vertretung >>========",
     547          '0109': "========<< Fall: Kurärztliche Abrechnung >>========",
     548          '0190': "========<< Fall: Privat >>========",
     549          '0191': "========<< Fall: BG >>========",
     550          '0199': "========<< Fall: unstrukturiert >>========",
     551
     552          '6100': "========<< Patientenstamm >>========",
     553          '6200': "========<< Behandlungsdaten >>========",
     554          '6300': '========>> GDT: Stammdaten anfordern >>========',
     555          '6301': '========>> GDT: Stammdaten übermitteln >>========',
     556          '6302': "========<< GDT: Untersuchung (neue) anfordern >>========",
     557          '6310': "========<< GDT: Untersuchung übermitteln >>========",
     558          '6311': "========<< GDT: Untersuchung anzeigen >>========",
     559
     560          '8202': '========<< LDT: LG-Bericht >>========',
     561          '8220': '========<< LDT: L-Datenpaket-Header >>========',
     562          '8221': '========<< LDT: L-Datenpaket-Abschluß >>========',
     563
     564          'adt0': "========<< ADT-Datenpaket-Header >>========",
     565          'adt9': "========<< ADT-Datenpaket-Abschluss >>========",
     566          'con0': "========<< Container-Header >>========",
     567          'con9': "========<< Container-Abschluss >>========",
     568          'prax': "========<< Praxisdaten >>========",
     569          'kad0': "========<< KADT-Datenpaket-Header >>========",
     570          'kad9': "========<< KADT-Datenpaket-Abschluß >>========",
     571          'std0': "========<< STDT-Datenpaket-Header >>========",
     572          'std9': "========<< STDT-Datenpaket-Abschluß >>========",
     573          'st13': "========<< Statistiksatz >>========"
     574  }
     575  #--------------------------------------------------------------
     576  # XDT:
     577  # dob: ddmmyyyy
     578  # gender: 1 - male, 2 - female
     579
     580  # patient record fields
     581  name_xdtID_map = {
     582          'last name': '3101',
     583          'first name': '3102',
     584          'date of birth': '3103',
     585          'gender': '3110'
     586  }
     587  #    'city': '3106',\
     588  #    'street': '3107',\
     589
     590  # sort of GNUmed compatible
     591  map_gender_xdt2gm = {
     592          '1': 'm',
     593          'm': 'm',
     594          'M': 'm',
     595          '4': 'm',
     596          '2': 'f',
     597          'f': 'f',
     598          'W': 'f',
     599          'w': 'f',
     600          '5': 'f',
     601          'd': 'h',
     602          'D': 'h',
     603          'U': None
     604  }
     605
     606  map_gender_gm2xdt = {
     607          'm': '1',
     608          'f': '2',
     609          'tm': '1',
     610          'tf': '2',
     611          'h': '3',               # 'D' unchecked
     612          None: '?'               # 'U'
     613  }
     614
     615  # LDT "gender", 8407
     616  map_8407_2str = {
     617          '0': _('unknown gender'),
     618          '1': _('male'),
     619          '2': _('female'),
     620          '3': _('child'),
     621          '4': _('boy'),
     622          '5': _('girl'),
     623          '6': _('animal')
     624  }
     625
     626  # xDT character code mapping : 9106
     627  xdt_character_code_map = {
     628          '1': 'ASCII (DIN 66003/ISO 646)',
     629          '2': 'cp437 (8 Bit)',
     630          '3': 'ISO 8859-1/cp1252'
     631  }
     632
     633  _charset_fields = [
     634          '9106',                 # LDT
     635          '9206'                  # GDT
     636  ]
     637
     638  _map_field2charset = {
     639          '9106': {
     640                  '1': 'ascii',
     641                  '2': 'cp437',
     642                  '3': 'iso8859-1'
     643          },
     644          '9206': {
     645                  '1': 'ascii',
     646                  '2': 'cp437',
     647                  '3': 'iso8859-1'
     648          }
     649  }
     650
     651  # Archivierungsart : 9600
     652  xdt_Archivierungsart_map = {
     653          '1': 'Speicherung Gesamtbestand',
     654          '2': 'Speicherung beliebiger Zeitraum',
     655          '3': 'Speicherung eines Quartals'
     656  }
     657  # Praxistyp : 0202
     658  xdt_Praxistyp_map = {
     659          '1': 'Einzelpraxis',
     660          '2': 'Gemeinschaftspraxis',
     661          '3': 'Fachübergreifende GP',
     662          '4': 'Praxisgemeinschaft',
     663          '5': 'Fachübergreifende GP ohne Leistungskennzeichnung',
     664          '6': 'ermächtigter Arzt',
     665          '7': 'Krankenhaus oder ärztlich geleitete Einrichtung'
     666  }
     667  # Versichertenart MFR : 3108
     668  xdt_Versichertenart_map = {
     669          '1': 'Mitglied',
     670          '3': 'Familienversicherter',
     671          '5': 'Rentner',
     672  }
     673  # Kostenträgeruntergruppe : 4106
     674  xdt_Kostentraegeruntergruppe_map = {
     675          '00': 'default',
     676          '01': 'SVA(Sozialversicherungsabkommen)',
     677          '02': 'BVG(Bundesversorgungsgesetz)',
     678          '03': 'BEG(Bundesentschädigungsgesetz)',
     679          '04': 'Grenzgänger',
     680          '05': 'Rheinschiffer',
     681          '06': 'SHT(Sozialhilfeträger, ohne Asylstellen)',
     682          '07': 'BVFG(Bundesvertriebenengesetz)',
     683          '08': 'Asylstellen(AS)',
     684          '09': 'Schwangerschaftsabbrüche'
     685  }
     686  # Abrechnungsart : 4107
     687  xdt_Abrechnungsart_map = {
     688          '1': 'PKA(Primärkassen)',
     689          '2': 'EKK(Ersatzkassen)',
     690          '3': 'SKT(Sonstige Kostenträger)',
     691  }
     692  # Ost/West-Status VK : 4113
     693  xdt_Ost_West_Status_map = {
     694          '1': 'West',
     695          '6': 'BVG',
     696          '7': 'SVA',
     697          '8': 'SVA',
     698          '9': 'Ost',
     699          'M': 'eingeschriebene Versicherte in Disease-Management-Programmen für Diabetes mellitus Typ2 - RK West',
     700          'X': 'eingeschriebene Versicherte in Disease-Management-Programmen für Diabetes mellitus Typ2 - RK Ost',
     701          'A': 'eingeschriebene Versicherte in Disease-Management-Programmen für Brustkrebs - RK West',
     702          'C': 'eingeschriebene Versicherte in Disease-Management-Programmen für Brustkrebs - RK Ost',
     703  }
     704
     705  # Gebührenordnung : 4121
     706  xdt_Gebuehrenordnung_map = {
     707          '1': 'BMÄ',
     708          '2': 'E-GO',
     709          '3': 'GOÄ'
     710  }
     711
     712  # Abrechnungsgebiet : 4122
     713  xdt_Abrechnungsgebiet_map = {
     714          '00': 'kein besonderes Abrechnungsgebiet (Defaultwert)',
     715          '01': 'Dialyse-Arztkosten',
     716          '02': 'Dialyse-Sachkosten',
     717          '03': 'Methadon-Substitutionsbehandlung',
     718          '04': 'Grosse Psychotherapie',
     719          ##'04': 'persönlich erbrachte Notfallleistungen durch ermächtigte Krankenhausärzte',
     720          '05': 'Verhaltenstherapie',
     721          ##'05': 'sonstige Notfallleistungen durch ermächtigte Krankenhausärzte',
     722          '06': 'Fremde Zytologie',
     723          '07': 'Diabestesabrechnung',
     724          '08': 'Umweltmedizin',
     725          '09': 'Rheuma',
     726          '10': 'Hirnleistungsstörungen',
     727          '11': 'Kodex-Anhangsarzt',
     728          '12': 'Kodex-Arzt',
     729          '13': 'Kodex-Listenarzt',
     730          '14': 'Ambulantes Operieren'
     731  }
     732  # Ursache des Leidens : 4201
     733  xdt_Ursache_des_Leidens_map = {
     734          '2': 'Unfall, Unfallfolgen',
     735          '3': 'Versorgungsleiden'
     736  }
     737  # Ankreuzfeld LSR, HAH, ABO.RH, AK
     738  xdt_Ankreuzfeld_map = {
     739          '1': 'angekreuzt'
     740  }
     741  # Scheinuntergruppe
     742  xdt_Scheinuntergruppe_map = {
     743          '00': 'Ambulante Behandlung (Defaultwert)',
     744          '20': 'Selbstaustellung',
     745          '21': 'Zielauftrag (Defaultwert bei Einsendepraxen)',
     746          '22': 'Rahmenauftrag',
     747          '23': 'Konsillaruntersuchung',
     748          '24': 'Mit/Weiterbehandlung (Defaultwert ausser bei Einsendepraxen)',
     749          '25': 'Überweisung aus anderen Gründen',
     750          '26': 'Stat. Mitbehandlung, Vergütung nach amb. Grundsätzen',
     751          '27': 'Überweisungs-/Abrechnungssschein für Laboratoriumsuntersuchungen als Auftragsleistung',
     752          '30': 'Belegärztliche Behandlung (Default bei SA 0103)',
     753          '31': 'Belegärztliche Mitbehandlung',
     754          '32': 'Urlaubs-/bzw. Krankheitsvertretung bei belegärztlicher Behandlung',
     755          '41': 'ärztlicher Notfalldienst',
     756          '42': 'Urlaubs-bzw. Krankheitsvertretung',
     757          '43': 'Notfall',
     758          '44': 'Notfalldienst bei Taxi',
     759          '45': 'Notarzt-/Rettungswagen (Rettungsdienst)',
     760          '46': 'Zentraler Notfalldienst',
     761          '90': 'default bei SA 0190',
     762          '91': 'Konsillaruntersuchung',
     763          '92': 'stat. Mitbehandlung Vergütung nach stat. Grundsätzen',
     764          '93': 'stat. Mitbehandlung Vergütung nach ambul. Grundsätzen',
     765          '94': 'belegärztliche Behandlung im Krankenhaus'
     766  }
     767  # Gesetzlicher Abzug zur stationären Behandlung gemäss Paragraph 6a GOA
     768  xdt_gesetzlicher_Abzug_map = {
     769          '1': 'nein',
     770          '2': 'ja'
     771  }
     772  # Klasse bei stationärer Behandlung
     773  xdt_Klasse_stationaere_Behandlung_map = {
     774          '1': 'Einbettzimmer',
     775          '2': 'Zweibettzimmer',
     776          '3': 'Mehrbettzimmmer'
     777  }
     778  # Rechnungsart
     779  xdt_Rechnungsart_map = {
     780          '01': 'Privat',
     781          '20': 'KVB',
     782          '21': 'Bahn-Unfall',
     783          '30': 'Post',
     784          '31': 'Post-Unfall',
     785          '40': 'Allgemeines Heilverfahren',
     786          '41': 'Berufsgenossenschaft Heilverfahren',
     787          '50': 'Bundesknappschaft',
     788          '70': 'Justizvollzugsanstalt',
     789          '71': 'Jugendarbeitsschutz',
     790          '72': 'Landesversicherungsanstalt',
     791          '73': 'Bundesversicherungsanstalt für Angestellte',
     792          '74': 'Sozialamt',
     793          '75': 'Sozialgericht',
     794          '80': 'Studenten-Deutsche',
     795          '81': 'Studenten-Ausländer'
     796  }
     797  # Abdingungserklärung vorhanden
     798  xdt_Abdingungserklaerung_map = {
     799          '1': 'nein',
     800          '2': 'ja'
     801  }
     802  # Anlage erforderlich
     803  xdt_Anlage_erforderlich_map = {
     804          '1': 'nein',
     805          '2': 'ja'
     806  }
     807  #Alkoholeinfluss
     808  xdt_Alkoholeinfluss_map = {
     809          '1': 'nein',
     810          '2': 'ja'
     811  }
     812  # Blutentnahme
     813  xdt_Blutentnahme_map = {
     814          '1': 'nein',
     815          '2': 'ja'
     816  }
     817  # Bedenken gegen das Vorliegen eines Arbeitsunfalls
     818  xdt_Arbeitsunfall_map = {
     819          '1': 'nein',
     820          '2': 'ja'
     821  }
     822  # arbeitsfähig
     823  xdt_arbeitsfaehig_map = {
     824          '1': 'angekreuzt'
     825  }
     826  # Besondere Heilbehandlung erforderlich
     827  xdt_Heilbehandlung_erforderlich_map = {
     828          '1': 'ambulant',
     829          '2': 'stationär'
     830  }
     831  # Besondere Heilbehandlung durch
     832  xdt_Besondere_Heilbehandlung_durch_map = {
     833          '1': 'selbst',
     834          '2': 'anderer Durchgangsarzt'
     835  }
     836  # Allgemeine Heilbehandlung durch
     837  xdt_Allgemeine_Heilbehandlung_durch_map = {
     838          '1': 'selbst',
     839          '2': 'anderer Arzt'
     840  }
     841  # AU über 3 Tage
     842  xdt_AU_3Tage_map = {
     843          '1': 'angekreuzt'
     844  }
     845  # 8401: Befundstatus
     846  xdt_Befundstatus_map = {
     847          'E': '(kompletter) Endbefund',
     848          'T': 'Teilbefund',
     849          'V': '(kompletter) Vorbefund',
     850          'A': 'Archivbefund',
     851          'N': 'Nachforderung'
     852  }
     853
     854  map_Befundstatus_xdt2gm = {
     855          'E': _('final'),
     856          'T': _('partial'),
     857          'V': _('preliminary'),
     858          'A': _('final'),
     859          'N': _('final')
     860  }
     861
     862  # Teststatus : 8418
     863  xdt_Teststatus_map = {
     864          'B': _('already reported'),
     865          'K': _('corrected result'),
     866          'F': _('missing, reported later')
     867  }
     868
     869  # Resistenzmethode
     870  xdt_Resistenzmethode_map = {
     871          '1': 'Agardiffusion',
     872          '2': 'Agardilution',
     873          '3': 'MHK-Bestimmung',
     874          '4': 'Breakpoint-Bestimmung'
     875  }
     876  # Resistenz-Interpretation
     877  xdt_Resistenzinterpretation_map = {
     878          '0': 'nicht getestet',
     879          '1': 'sensibel/wirksam',
     880          '2': 'mässig sensibel/schwach wirksam',
     881          '3': 'resistent/unwirksam',
     882          '4': 'wirksam in hohen Konzentrationen'
     883  }
     884  # enthaltene Datenpakete in dieser Datei : 9132
     885  kvdt_enthaltene_Datenpakete_map = {
     886          '1': 'ADT-Datenpaket',
     887          '2': 'AODT-Datenpaket(roter Erhebungsbogen)',
     888          '3': 'Kurärztliches Abrechnungsdatenpaket',
     889          '4': 'AODT-Hessen-Datenpaket (grüner Erhebungsbogen der KV Hessen)',
     890          '5': 'STDT-Datenpaket'
     891  }
     892  #KV-Bereich : 3116
     893  kvdt_KV_Bereich_map = {
     894          '01': 'Schleswig-Holstein',
     895          '02': 'Hamburg',
     896          '03': 'Bremen',
     897          '17': 'Niedersachsen',
     898          '20': 'Westfalen-Lippe',
     899          '38': 'Nordrhein',
     900          '46': 'Hessen',
     901          '47': 'Koblenz',
     902          '48': 'Rheinhessen',
     903          '49': 'Pfalz',
     904          '50': 'Trier',
     905          '55': 'Nordbaden',
     906          '60': 'Südbaden',
     907          '61': 'Nordwürtemberg',
     908          '62': 'Südwürtemberg',
     909          '71': 'Bayern',
     910          '72': 'Berlin',
     911          '73': 'Saarland',
     912          '74': 'KBV',
     913          '78': 'Mecklenburg-Vorpommern',
     914          '83': 'Brandenburg',
     915          '88': 'Sachsen-Anhalt',
     916          '98': 'Sachsen'
     917  }
     918  # Personenkreis / Untersuchungskategorie : 4123
     919  kvdt_Personenkreis_Untersuchungskategorie_map = {
     920          '01': 'Beschädigter',
     921          '02': 'Schwerbeschädigter',
     922          '03': 'Angehöriger',
     923          '04': 'Hinterbliebener',
     924          '05': 'Pflegeperson',
     925          '06': 'Tauglichkeitsuntersuchung',
     926          '07': 'ärztl. Versorgung',
     927          '08': 'Bewerber',
     928          '09': 'Erstuntersuchung',
     929          '10': 'Nachuntersuchung',
     930          '11': 'Ergänzungsuntersuchung',
     931          '12': 'Verfolgte'
     932  }
     933  #Unfall, Unfallfolgen : 4202
     934  kvdt_Unfallfolgen_map = {
     935          '1': 'ja'
     936  }
     937  #belegärztliche Behandlung : 4221
     938  kvdt_belegaerztliche_Behandlung_map = {
     939          '1': 'kurativ',
     940          '2': 'präventiv',
     941          '3': 'sonstige Hilfen',
     942          '4': 'bei belegärztlicher Behandlung'
     943  }
     944  # anerkannte Psychotherapie : 4234
     945  kvdt_anerkannte_Psychotherapie_map = {
     946          '1': 'ja'
     947  }
     948  # Abklärung somatischer Ursachen : 4236
     949  kvdt_somatische_Ursachen_map = {
     950          '1': 'ja'
     951  }
     952  # GNR-Zusatzkennzeichen für poststationär erbrachte Leistungen : 5024
     953  kvdt_Zusatzkennzeichen_poststationaere_Leistungen_map = {
     954          'N': 'poststationäre Leistung'
     955  }
     956  # Diagnosensicherheit : 6003
     957  kvdt_Diagnosensicherheit_map = {
     958          'V': 'Verdacht auf / zum Ausschluss von',
     959          'Z': 'Zustand nach',
     960          'A': 'ausgeschlossen'
     961  }
     962  # Seitenlokalisation : 6004
     963  kvdt_Seitenlokalisation_map = {
     964          'R': 'rechts',
     965          'L': 'Links',
     966          'B': 'beiderseits'
     967  }
     968  # Empfänger : 9102
     969  kvdt_Empfaenger_map = {
     970          '01': 'Schleswig-Holstein',
     971          '02': 'Hamburg',
     972          '03': 'Bremen',
     973          '06': 'Aurich',
     974          '07': 'Braunschweig',
     975          '08': 'Göttingen',
     976          '09': 'Hannover',
     977          '10': 'Hildesheim',
     978          '11': 'Lüneburg',
     979          '12': 'Oldenburg',
     980          '13': 'Osnabrück',
     981          '14': 'Stade',
     982          '15': 'Verden',
     983          '16': 'Wilhelmshaven',
     984          '18': 'Dortmund',
     985          '19': 'Münster',
     986          '20': 'KV Westfalen Lippe',
     987          '21': 'Aachen',
     988          '24': 'Düsseldorf',
     989          '25': 'Duisburg',
     990          '27': 'Köln',
     991          '28': 'Linker Niederrhein',
     992          '31': 'Ruhr',
     993          '37': 'Bergisch-Land',
     994          '39': 'Darmstadt',
     995          '40': 'Frankfurt/Main',
     996          '41': 'Giessen',
     997          '42': 'Kassel',
     998          '43': 'Limburg',
     999          '44': 'Marburg',
    1000          '45': 'Wiesbaden',
    1001          '47': 'Koblenz',
    1002          '48': 'Rheinhessen',
    1003          '49': 'Pfalz',
    1004          '50': 'Trier',
    1005          '52': 'Karlsruhe',
    1006          '53': 'Mannheim',
    1007          '54': 'Pforzheim',
    1008          '56': 'Baden-Baden',
    1009          '57': 'Freiburg',
    1010          '58': 'Konstanz',
    1011          '59': 'Offenburg',
    1012          '61': 'Nord-Würtemberg',
    1013          '62': 'Süd-Würtemberg',
    1014          '63': 'München Sadt u. Land',
    1015          '64': 'Oberbayern',
    1016          '65': 'Oberfranken',
    1017          '66': 'Mittelfranken',
    1018          '67': 'Unterfranken',
    1019          '68': 'Oberpfalz',
    1020          '69': 'Niederbayern',
    1021          '70': 'Schwaben',
    1022          '72': 'Berlin',
    1023          '73': 'Saarland',
    1024          '78': 'Mecklenburg-Vorpommern',
    1025          '79': 'Postdam',
    1026          '80': 'Cottbus',
    1027          '81': 'Frankfurt/Oder',
    1028          '85': 'Magdeburg',
    1029          '86': 'Halle',
    1030          '87': 'Dessau',
    1031          '89': 'Erfurt',
    1032          '90': 'Gera',
    1033          '91': 'Suhl',
    1034          '94': 'Chemnitz',
    1035          '95': 'Dresden',
    1036          '96': 'Leipzig',
    1037          '99': 'Bundesknappschaft'
    1038  }
    1039  # Facharztstatus Operateur / Assistent : 2750/2752
    1040  kvdt_Facharztstatus_map = {
    1041          '0': 'nein',
    1042          '1': 'ja'
    1043  }
    1044  # Anästhesie erbracht : 2761
    1045  kvdt_Anaesthesie_erbracht_map = {
    1046          '1': 'vom Operateur',
    1047          '2': 'vom Anästhesisten'
    1048  }
    1049  # Blutung : 2770-2776,2720-2726
    1050  kvdt_Zwischenfall_map = {
    1051          '0': 'nein',
    1052          '1': 'intraoperativ',
    1053          '2': 'postoperativ bis zum 12. Tag EIGENBEFUND',
    1054          '3': 'postoperativ bis zum 12. Tag FREMDBEFUND'
    1055  }
    1056  # Revisionseingriff erforderlich : 2780
    1057  kvdt_Revisionseingriff_erforderlich_map = {
    1058          '1': 'ja'
    1059  }
    1060  # Histologie : 2781,2729
    1061  kvdt_Histologie_map = {
    1062          '0': 'nein',
    1063          '1': 'ja'
    1064  }
    1065  # stationäre Weiterbehandlung erforderlich : 2782
    1066  kvdt_stationaere_Weiterbehandlung_map = {
    1067          '1': 'unmittelbare Aufnahme zur Weiterbehandlung',
    1068          '2': 'stationäre Aufnahme zur Weiterbehandlung bis zum 12.Tag'
    1069  }
    1070  # stationäre Aufnahme : 2731
    1071  kvdt_stationaere_Aufnahme_map = {
    1072          '0': 'nein',
    1073          '1': 'unmittelbare Aufnahme zur Weiterbehandlung',
    1074          '2': 'stationäre Aufnahme zur Weiterbehandlung bis zum 12.Tag'
    1075  }
    1076  # Indikationsschlüssel : 2706
    1077  kvdt_Indikationsschluessel_map = {
    1078          '0': 'keine Angabe'
    1079  }
    1080  # Komplikation : 2727
    1081  kvdt_Komplikation_map = {
    1082          '0': 'keine Komplikation'
    1083  }
    1084  # Erfolgsbeurteilung hinsichtlich Indikationsstellung : 2728
    1085  kvdt_Erfolgsbeurteilung_Indikation_map = {
    1086          '1': 'gut',
    1087          '2': 'mittel',
    1088          '3': 'schlecht',
    1089          '4': 'nicht beurteilbar'
    1090  }
    1091  # Revisionseingriff: 2730
    1092  kvdt_Revisionseingriff_map = {
    1093          '0': 'nein',
    1094          '1': 'erforderlich'
    1095  }
    1096  # Angaben zu implantierten Materialien : 2732
    1097  kvdt_Implantat_map = {
    1098          '00': 'keine Implantation',
    1099          '01': 'Herzschrittmachertyp AAI-R',
    1100          '02': 'Herzschrittmachertyp VVI-R',
    1101          '03': 'Herzschrittmachertyp DDD-R',
    1102          '04': 'Herzschrittmachertyp DVI-R',
    1103          '05': 'Herzschrittmachertyp DDI-R',
    1104          '06': 'Herzschrittmachertyp VDD-R',
    1105          '09': 'sonstiger Herzschrittmachertyp',
    1106          '11': 'PMMA-Linse',
    1107          '12': 'Silicon-Linse',
    1108          '13': 'Acryl-Linse'
    1109  }
    1110  # Operierte Seite : 2742
    1111  kvdt_operierte_Seite_map = {
    1112          '0': 'keine Angabe',
    1113          '1': 'links',
    1114          '2': 'rechts',
    1115          '3': 'beidseitig'
    1116  }
    1117  # Art der Anästhesie gemäß Klassifikation Strukturvertrag : 2744
    1118  kvdt_Anaesthesie_Art_map = {
    1119          '1': 'Intubationsnarkose',
    1120          '2': 'Spinalanästhesie',
    1121          '3': 'Maskennarkose',
    1122          '4': 'Stand-By',
    1123          '5': 'Plexusanästhesie',
    1124          '6': 'Periduralanästhesie',
    1125          '7': 'intravenöse Region',
    1126          '8': 'Lokalanästhesie',
    1127          '9': 'Retrobulbär-/Peribulbäranästhesie'
    1128  }
    1129  # Kurart : 4261
    1130  kvdt_Kurart_map = {
    1131          '1': 'Ambulante Vorsorgeleistung zur Krankheitsverhütung',
    1132          '2': 'Ambulante Vorsorgeleistung bei bestehenden Krankheiten',
    1133          '3': 'Ambulante Vorsorgeleistung für Kinder'
    1134  }
    1135  # Packungsgröße bei Kassenrezept und Privatrezept : 0917,0918
    1136  kvdt_Packungsgroesse_map = {
    1137          'N1': 'Kleine Packung',
    1138          'N2': 'Mittlere Packung',
    1139          'N3': 'Große Packung',
    1140          'kA': 'keine Angabe'
    1141  }
    1142  # Heilmittel : 0925
    1143  kvdt_Heilmittel_map = {
    1144          '01': 'Massagetherapie',
    1145          '02': 'Bewegungstherapie',
    1146          '03': 'Krankengymnastik',
    1147          '04': 'Elektrotherapie',
    1148          '06': 'Thermotherapie(Wärme- und Kältetherapie)',
    1149          '08': 'Kohlensäurebäder',
    1150          '09': 'Inhalalationtherapie',
    1151          '10': 'Traktionsbehandlung',
    1152          '20': 'Stimmtherapie',
    1153          '25': 'Sprechtherapie',
    1154          '30': 'Sprachtherapie',
    1155          '35': 'Sprech- und/oder Sprachtherapie bei Kindern und Jugendlichen',
    1156          '40': 'Beschäftigungs- und Arbeitstherapie (Ergotherapie)',
    1157          '90': 'Sonstiges'
    1158  }
    1159
    1160  # Kennzeichnung gebührenpflichtig, aut idem, noctu
    1161  kvdt_Kennzeichnung_map = {
    1162          '0': 'nein',
    1163          '1': 'ja'
    1164  }
    1165  #--------------------------------------------------------------
    1166  xdt_map_of_content_maps = {
    1167          '0202': xdt_Praxistyp_map,
    1168          '0917': kvdt_Packungsgroesse_map,
    1169          '0918': kvdt_Packungsgroesse_map,
    1170  #       '0925': kvdt_Heilmittel_map,
    1171          '0953': kvdt_Packungsgroesse_map,
    1172          '0960': kvdt_Kennzeichnung_map,
    1173          '0961': kvdt_Kennzeichnung_map,
    1174          '0962': kvdt_Kennzeichnung_map,
    1175          '2706': kvdt_Indikationsschluessel_map,
    1176          '2720': kvdt_Zwischenfall_map,
    1177          '2721': kvdt_Zwischenfall_map,
    1178          '2722': kvdt_Zwischenfall_map,
    1179          '2723': kvdt_Zwischenfall_map,
    1180          '2724': kvdt_Zwischenfall_map,
    1181          '2725': kvdt_Zwischenfall_map,
    1182          '2726': kvdt_Zwischenfall_map,
    1183          '2727': kvdt_Komplikation_map,
    1184          '2728': kvdt_Erfolgsbeurteilung_Indikation_map,
    1185          '2729': kvdt_Histologie_map,
    1186          '2730': kvdt_Revisionseingriff_map,
    1187          '2731': kvdt_stationaere_Aufnahme_map,
    1188          '2732': kvdt_Implantat_map,
    1189          '2742': kvdt_operierte_Seite_map,
    1190          '2744': kvdt_Anaesthesie_Art_map,
    1191          '2750': kvdt_Facharztstatus_map,
    1192          '2752': kvdt_Facharztstatus_map,
    1193          '2761': kvdt_Anaesthesie_erbracht_map,
    1194          '2770': kvdt_Zwischenfall_map,
    1195          '2771': kvdt_Zwischenfall_map,
    1196          '2772': kvdt_Zwischenfall_map,
    1197          '2773': kvdt_Zwischenfall_map,
    1198          '2774': kvdt_Zwischenfall_map,
    1199          '2775': kvdt_Zwischenfall_map,
    1200          '2776': kvdt_Zwischenfall_map,
    1201          '2780': kvdt_Revisionseingriff_erforderlich_map,
    1202          '2781': kvdt_Histologie_map,
    1203          '2782': kvdt_stationaere_Weiterbehandlung_map,
    1204          '3108': xdt_Versichertenart_map,
    1205          '3110': map_gender_xdt2gm,
    1206          '3116': kvdt_KV_Bereich_map,
    1207          '3674': kvdt_Diagnosensicherheit_map,
    1208          '3675': kvdt_Seitenlokalisation_map,
    1209          '4106': xdt_Kostentraegeruntergruppe_map,
    1210          '4107': xdt_Abrechnungsart_map,
    1211          '4113': xdt_Ost_West_Status_map,
    1212          '4121': xdt_Gebuehrenordnung_map,
    1213          '4122': xdt_Abrechnungsgebiet_map,
    1214          '4123': kvdt_Personenkreis_Untersuchungskategorie_map,
    1215          '4201': xdt_Ursache_des_Leidens_map,
    1216          '4202': kvdt_Unfallfolgen_map,
    1217          '4210': xdt_Ankreuzfeld_map,
    1218          '4211': xdt_Ankreuzfeld_map,
    1219          '4212': xdt_Ankreuzfeld_map,
    1220          '4213': xdt_Ankreuzfeld_map,
    1221          '4221': kvdt_belegaerztliche_Behandlung_map,
    1222          '4234': kvdt_anerkannte_Psychotherapie_map,
    1223          '4236': kvdt_somatische_Ursachen_map,
    1224          '4239': xdt_Scheinuntergruppe_map,
    1225          '4230': xdt_gesetzlicher_Abzug_map,
    1226          '4236': xdt_Klasse_stationaere_Behandlung_map,
    1227          '4261': kvdt_Kurart_map,
    1228          '4580': xdt_Rechnungsart_map,
    1229          '4608': xdt_Abdingungserklaerung_map,
    1230          '4613': xdt_Anlage_erforderlich_map,
    1231          '4520': xdt_Alkoholeinfluss_map,
    1232          '4522': xdt_Blutentnahme_map,
    1233          '4554': xdt_Arbeitsunfall_map,
    1234          '4560': xdt_arbeitsfaehig_map,
    1235          '4570': xdt_Heilbehandlung_erforderlich_map,
    1236          '4571': xdt_Besondere_Heilbehandlung_durch_map,
    1237          '4581': xdt_Allgemeine_Heilbehandlung_durch_map,
    1238          '4582': xdt_AU_3Tage_map,
    1239          '5024': kvdt_Zusatzkennzeichen_poststationaere_Leistungen_map,
    1240          '6003': kvdt_Diagnosensicherheit_map,
    1241          '6004': kvdt_Seitenlokalisation_map,
    1242          '6288': kvdt_Diagnosensicherheit_map,
    1243          '6289': kvdt_Seitenlokalisation_map,
    1244          '6293': kvdt_Diagnosensicherheit_map,
    1245          '6294': kvdt_Seitenlokalisation_map,
    1246          '8000': xdt_packet_type_map,
    1247          '8401': xdt_Befundstatus_map,
    1248          '8418': xdt_Teststatus_map,
    1249          '8443': xdt_Resistenzmethode_map,
    1250          '8447': xdt_Resistenzinterpretation_map,
    1251          '9102': kvdt_Empfaenger_map,
    1252          '9106': xdt_character_code_map,
    1253          '9132': kvdt_enthaltene_Datenpakete_map,
    1254          '9600': xdt_Archivierungsart_map
    1255  }
    1256  #--------------------------------------------------------------
    1257 -def xdt_8date2iso(date=None):
    1258          """DDMMYYYY -> YYYY-MM-DD"""
    1259          return '%s-%s-%s' % (date[-4:], date[2:4], date[:2])
    1260  #==============================================================
    1261