I am still not sure I understand you correctly, but if I do then things are slightly more complicated than Alex' solution.
So let me see whether I got you right.
For a fixed time period t0 in time and a fixed handy h0 in Handy you require that at most one of Reuse[t0][l][h0][i][r] is non-zero. Since variable Reuse is a general integer you will need an auxiliary variable and then can model things like this (untested):
dvar boolean aux[time][location][Handy][Inspektion][Reuse];
int M = ...;
subject to {
forall (t0 in time) {
forall (h0 in Handy) {
// At most one of the aux variables can be non-zero
sum (l in location) sum (i in Inspektion) sum (r in Reuse) aux[t0][l][h0][i][r] <= 1;
}
}
forall (t in time) {
forall (h in Handy) {
forall (l in location) {
forall (i in Inspektion) {
forall (r in Reuse) {
// A Reuse variable may only be non-zero if the corresponding
// aux variable is 1.
Reuse[t][l][h][i][r] <= M * aux[t][l][h][i][r];
}
}
}
}
}
}
Here 'M' is an upper bound on the Reuse variables (I assume that such an upper bound exists).
BTW, it seems you are German (like me). So if your question is still not answered and it is any easier to explain things in German, then please feel free to drop we an email to daniel(dot)junglas(at)de(dot)ibm(dot)com.
#CPLEXOptimizers#DecisionOptimization