OpenEnergyPlatform / open-MaStR

A collaborative software to download the energy database Marktstammdatenregister (MaStR)
https://open-mastr.readthedocs.io/en/latest/
GNU Affero General Public License v3.0
84 stars 17 forks source link

Key Error 'einheitenaenderungnetzbetreiberzuordnungen' in solar download #548

Closed kknappmann closed 1 month ago

kknappmann commented 1 month ago

Description of the issue

Hey guys, I am getting a key error when downloading the solar data. Code: db = Mastr() db.download(data="solar") Logs: ... File 'AnlagenEegSolar_44.xml' is parsed. Data is cleansed. Traceback (most recent call last): gridregistrations.py line 29, in main: db.download(data="solar") File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/open_mastr/mastr.py", line 231, in download write_mastr_xml_to_database(File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site packages/open_mastr/xml_download/utils_write_to_database.py", line 34, in write_mastr_xml_to_database if is_table_relevant( ^^^^^^^^^^^^^^^^^^ File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/open_mastr/xml_download/utils_write_to_database.py", line 76, in is_table_relevant tablename_mapping[xml_tablename]["class"] is not None


KeyError: 'einheitenaenderungnetzbetreiberzuordnungen'

## Steps to Reproduce
1.    db = Mastr()
      db.download(data="solar")

## Context and Environment
* Version used: 0.14.3. and 0.14.4.
* Environment setup and (python) version: 3.11. & 3.12.

## Workflow checklist
- [x] I am aware of the workflow in [CONTRIBUTING.md](https://github.com/OpenEnergyPlatform/open-MaStR/blob/production/CONTRIBUTING.md)
kknappmann commented 1 month ago

@FlorianK13 did you have time to look into this yet?

FlorianK13 commented 1 month ago

Hi @kknappmann, I'll have a look at it when I'm back at work

FlorianK13 commented 1 month ago

I was not able to reproduce this error. The table einheitenaenderungnetzbetreiberzuordnungen was added as a new table in #510 - @kknappmann could you delete your existing sqlite database and download + parse the MaStR again?

Then this code should successfully parse the table einheitenaenderungnetzbetreiberzuordnungen: db = Mastr() db.download(data="changed_dso_assignment")

kknappmann commented 1 month ago

Hi Florian, I can confirm that it works again, thank you! :)