Hi,
you can do that, and that s very simple.
1) You turn your intervals into a tuple set
Example in sched_intro/sched_intro.mod
tuple solutionT{
string name;
int start;
int end;
};
{solutionT} solution = {};
execute {
writeln("Masonry : " + masonry.start + ".." + masonry.end);
writeln("Carpentry: " + carpentry.start + ".." + carpentry.end);
writeln("Plumbing : " + plumbing.start + ".." + plumbing.end);
writeln("Ceiling : " + ceiling.start + ".." + ceiling.end);
writeln("Roofing : " + roofing.start + ".." + roofing.end);
writeln("Painting : " + painting.start + ".." + painting.end);
writeln("Windows : " + windows.start + ".." + windows.end);
writeln("Facade : " + facade.start + ".." + facade.end);
writeln("Garden : " + garden.start + ".." + garden.end);
writeln("Moving : " + moving.start + ".." + moving.end);
solution.addOnly("Masonry" , masonry.start, masonry.end);
solution.addOnly("Carpentry" , carpentry.start , carpentry.end);
solution.addOnly("Plumbing" , plumbing.start , plumbing.end);
solution.addOnly("Ceiling" , ceiling.start , ceiling.end);
solution.addOnly("Roofing" , roofing.start , roofing.end);
solution.addOnly("Painting" , painting.start , painting.end);
solution.addOnly("Windows" , windows.start , windows.end);
solution.addOnly("Facade" , facade.start , facade.end);
solution.addOnly("Garden" , garden.start , garden.end);
solution.addOnly("Moving" , moving.start , moving.end);
writeln(solution);
}
2) You use SheetWrite to move that tuple set to Excel
regards
#DecisionOptimization#OPLusingCPOptimizer