I thought it was generally a browser-level non-Pega code that checks for such things. For instance, if you use your browser to submit a form and then you click the "back" choice, the browser warns you that the form will get resubmitted and asks you if you are sure. /Eric
Almost all POST requests generated from within Pega use the variable pzTransactionID which must be in synch with the current database transaction on the server. So if you POST something to the database with pzTransactionID=6b0b6891891c76be47d8aed4fd2c57a4, the database will, after commiting the change, change the current transactionid to 53cbf232781f58af075e12f15978bb5b. If the user hits the "back" button and attempts to rePOST the previous screen, the stale 6b0b6891891c76be47d8aed4fd2c57a4 pzTransactionID will be used, and the system will reject the post, with an error message similar to:
ERROR: posted transaction id '6b0b6891891c76be47d8aed4fd2c57a4' for frame 'pyWorkPage' DOES NOT match record '53cbf232781f58af075e12f15978bb5b'".