Depois de criar ou editar um registro, salve as alterações no banco de dados executando as seguintes etapas:
O método Validate executa os scripts de validação de esquema e retornam uma cadeia contendo quaisquer erros de validação. Se essa cadeia não estiver vazia, você pode usar o método GetInvalidFieldValues para retornar uma lista de campos que contém dados que não estão corretos. Depois de corrigir os valores nesses campos, é necessário chamar o Validate novamente. Se o método Validate retorna uma cadeia vazia, não há mais erros.
Depois de validar o registro e da conclusão bem sucedida da validação, você confirma as alterações no banco de dados chamando o método Commit do objeto Entity correspondente.
Reverter alterações: Se a validação de um registro falhar, você não pode confirmar as alterações no banco de dados. A solução mais segura é reverter o registro ao seu estado original e relatar um erro. Para reverter um registro, chame o método Revert do objeto Entity.
Reverter um conjunto de alterações retorna o registro ao estado em que estava antes de chamar EditEntity. Se as alterações feitas em um objeto Entity criado pelo método BuildEntity forem revertidas, o registro não é criado e os dados são descartados. Os IDs associados aos registros não são reciclados. Se você reverter um registro que foi transformado em editável pelo método BuildEntity, o registro é descartado, mas o ID visível não é, assim futuros registros não podem usar esse ID.
# Modify the record and then commit the changes.
$entityObj = $sessionobj->GetEntity("defect","BUGID00000042");
$sessionObj->EditEntity($entityobj,"modify");
# Modify the entity object
# Your code should also check for exceptions
$status = $entityObj->Validate();
if ($status == ""){
$status = $entityObj->Commit();
if ($status == ""){
# successful commit
}
else {
# check error message
}
} else {
$entityObj->Revert();
}
# The entity object is no longer editable.