diff --git a/mlair/helpers/join.py b/mlair/helpers/join.py index 43a0176811b54fba2983c1dba108f4c7977f1431..99689ab110c172c765bdd4bfa203bfd1524e634d 100644 --- a/mlair/helpers/join.py +++ b/mlair/helpers/join.py @@ -47,6 +47,13 @@ def download_join(station_name: Union[str, List[str]], stat_var: dict, station_t # load series information vars_dict = load_series_information(station_name, station_type, network_name, join_url_base, headers, data_origin) + # check if all requested variables are available + if set(stat_var).issubset(vars_dict) is False: + missing_variables = set(stat_var).difference(vars_dict) + origin = helpers.select_from_dict(data_origin, missing_variables) + options = f"station={station_name}, type={station_type}, network={network_name}, origin={origin}" + raise EmptyQueryResult(f"No data found for variables {missing_variables} and options {options} in JOIN.") + # correct stat_var values if data is not aggregated (hourly) if sampling == "hourly": stat_var = {key: "values" for key in stat_var.keys()}