This is because the entire microflow is performed within one transaction.
If you want to prematurely commit it to the database, you should call
endTransaction();
on the current Context. This can be done from a Java Action. After that you need to start another transaction.
Please note though, that this is dangerous stuff you're playing with and that we cannot guarantee that it'll work.
You need java actions to achieve this behavior. In Java you can start seperate transactions and commit them right away:
for(IMendixObject obj : allyourobjects) {
IContext newContext = this.getContext().getSession().getContext(); //eventually: .getSudoContext();
newContext.startTransaction();
//do some stuff with newContext, you can even invoke a microflow here
newContext.endTransaction();
}
Is it an idea for a future release of the Mendix modeler to create 2 new MF actiontypes "startTransaction" and "endTransaction" to give the programmer/modeler more control over the transactionscope?