Retener y liberar la caducidad/eliminación

Puede retener la eliminación y la caducidad de objetos de archivado en respuesta a una acción pendiente o en curso que requiere que se retengan los datos particulares. En caso de que se inicie una acción que requiera el acceso a los datos, dichos datos deben estar disponibles hasta que la acción haya concluido y ya no sea necesario el acceso a los datos como parte del proceso. Después de determinar que la suspensión ya no se requiere, se reinicia la eliminación y caducidad normal de acuerdo al periodo de retención original.

Antes de empezar

Verifique el servidor tiene licencia emitiendo una llamada dedsmRetentionEvent de prueba:
  1. Consulte un objeto que desee retener y obtenga el ID.
  2. Emita dsmBeginTxn, dsmRetentionEvent con Holdy dsmEndTxn.
  3. Si el servidor no tiene licencia, recibe un voto de cancelación con el código de razón de DSM_RC_ABORT_LICENSE_VIOLATION.
Restricciones:
  1. No es posible emitir más de una llamada dsmRetentionEvent en una única transacción.
  2. No es posible emitir una retención en un objeto que ya está retenido.

Procedimiento

  1. Para retener los objetos, siga estos pasos:
    1. Consulte al servidor todos los objetos que desea retener. Obtenga el ID de objeto de cada uno de ellos.
    2. Emita una llamada a dsmBeginTxn , luego emita una llamada a dsmRetentionEvent con la lista de objetos, seguida de una llamada a dsmEventType: eventHoldObj llamada. Si el número de objetos excede el valor de maxObjPerTxn, utilice varias transacciones.
    3. Utilice la respuesta qryRespArchiveData en la llamada de función dsmGetNextQObj para confirmar que los objetos están en espera. Compruebe el valor de objHeld en qryRespArchiveData.
  2. Para liberar los objetos de la retención, siga estos pasos:
    1. Consulte al servidor todos los objetos que desea liberar. Obtenga el ID de objeto de cada uno de ellos.
    2. Emita una llamada a dsmBeginTxn , luego emita una llamada a dsmRetentionEvent con la lista de objetos, seguida de una llamada a dsmEventType: eventReleaseObj llamada. Si el número de objetos supera el valor de maxObjPerTxn, utilice varias transacciones.
    3. Utilice la respuesta qryRespArchiveData en la llamada a la función dsmGetNextQObj para confirmar si los objetos han sido liberados. Compruebe el valor de objHeld en qryRespArchiveData.