Hi Lp12,
Very interesting question. I'm not sure if you can use xdExpression programmatically to do this at runtime or not, but you should try it via the Properties->Display->Conditional wizard. Search on xdExpression in this forum. You might be able to do it, but you'll likely have to write a little function to return true or false depending on user role and row id. The function will have to calculate that.
Another option is to create two sections inside your repeating section - one for read-only and one for non-read-only and use xdExpression to control which one is displayed based on id of section.
Let us know if this works. I'm optimisitic, but don't have time to prototype right now. Good luck!
Patrick Halstead [InfoPath MVP]
InfoPathDev
Patrick Halstead
Project Manager at Qdabra