InnoDB slow query (few derived and dependent queries)
CREATE TEMPORARY TABLE pro ( PRIMARY KEY (product_id, station_id) ) ENGINE=InnoDB
    SELECT DISTINCT product_id, station_id FROM productie;
CREATE TEMPORARY TABLE s ( PRIMARY KEY (station_id)  ) ENGINE=InnoDB
    SELECT DISTINCT station_id, station_omschrijving FROM stations;

SELECT 
        ....
    FROM producten p
    JOIN pro  ON pro.product_id = p.product_id
    JOIN s    ON s.station_id = pro.station_id
HAVING p.afschrijvingenbedrag = 0
    OR p.... = 0
    ....;


Notes:


By creating tmp tables with useful indexes, those JOINs will run much faster.
I got rid of inner_query and changed WHERE inner_query. into HAVING p.  This may not improve speed, but it simplifies the code.


Another thought...  Did you really need the DISTINCTs?  Keep in mind that SELECT DISTINCT a,b is like GROUP BY a,b, not like GROUP BY a.

Another thought...

s.station_omschrijving
...and...
INNER JOIN (SELECT DISTINCT station_id, station_omschrijving FROM stations) s
        ON s.station_id = pro.station_id


could perhaps be replaced by

( SELECT DISTINCT station_omschrijving FROM stations
      WHERE station_id = pro.station_id ) AS station_omschrijving
...and no join...


It is, however, unclear whether the JOIN is restricting the overall query and whether the DISTINCT is correct.  I simply don't know what the data looks like in that table.  Maybe DISTINCT station_omschrijving needs to be MAX(station_omschrijving) to avoid multiple rows?