This should be the Programmer Response as per IBM library: Correct the REPL call, or check with the DBA or the equivalent specialist at your installation.
Following are the some of the violation rules I can remember.
1. Must issue a Get-Hold call prior to issuing a REPL function call
2. Should not issue any other call using the same PCB, between the time a Get Hold call is issued and the time a Replace call is issued, unless that other call is also a Get Hold call.
3. Should not normally code SSA's in the Replace calls except when the Get Hold call is with one or more SSA's using the D command code.
4.The KEY field in the segment cannot be modified before the REPL calls.