Instrução

Reconciliar múltiplas versões simultaneamente usando IVersionEdit2

Last Published: January 8, 2021

Resumo

O fluxo de trabalho de uma organização pode exigir a capacidade de reconciliar simultaneamente várias versões em relação a um predecessor comum. As ferramentas do ArcMap e geodatabase limitam a reconciliação de uma versão a qualquer momento, com uma versão primária comum, impondo bloqueios de objetos do geodatabase.

Nota: Este artigo se refere apenas às versões do ArcGIS 8.x. Versões posteriores do ArcGIS podem conter diferentes funcionalidades, bem como diferentes nomes e locais para menus, comandos e ferramentas de geoprocessamento.

Um bloqueio de objeto de geodatabase exclusivo é obtido na versão de origem e destino quando o processo de reconciliação é iniciado. Isso evita que outros usuários editem a versão de origem e se reconciliem com a versão de destino.

Por exemplo, dois usuários não podem reconciliar suas respectivas versões com a versão padrão ao mesmo tempo. Este comportamento é implementado no ArcGIS por design. A intenção é não permitir que várias reconciliações sejam executadas simultaneamente para economizar feições do sistema (servidor e cliente).

O geodatabase também impõe esse comportamento porque apenas uma versão pode ser postada em uma versão de destino para garantir a consistência dos dados. Se o software permitir que várias versões sejam reconciliadas e postadas simultaneamente, a segunda versão simplesmente irá substituir as alterações aplicadas pela versão anterior que realizou a postagem.

Embora o projeto tenha como objetivo economizar recursos do sistema e garantir a integridade dos dados, algumas organizações ainda podem querer realizar várias reconciliações simultaneamente. Isso pode ser alcançado usando IVersionEdit2: Reconcile2, ao mesmo tempo que garante a integridade dos dados.

Procedimento

Sua organização, por exemplo, pode desejar reconciliar várias versões simultaneamente quando a intenção do usuário não for realizar uma postagem após o processo de reconciliação. O usuário simplesmente deseja juntar a versão atual com a versão de destino.

Você pode fazer isso com o método IVersionEdit2:Reconcile2, que é semelhante ao método IVersionEdit:Reconcile, mas tem um argumento booleano adicional: se a reconciliação deve obter o bloqueio do objeto geodatabase ou não. Se o bloqueio não for obtido, a versão ainda pode ser postada, mas não haverá garantia de que a versão de destino não foi modificada e salva desde a conclusão da reconciliação. Neste caso, será gerado um erro informando que a versão foi redefinida. Este erro indica que você precisará executar novamente a reconciliação.

Este breve exemplo demonstra o uso de IVersionEdit2:Reconcile2:

Código: Dim pNewVersion As IVersionEdit2 Set pNewVersion = pWS Dim Success As Boolean Success = pNewVersion.Reconcile2("SDE.DEFAULT", false)

O procedimento acima reconcilia a versão atual do espaço de trabalho com a versão padrão. Ele configurou o booleano activateLock para falso, o que significa que não irá adquirir um bloqueio de objeto do geodatabase na versão de destino, ou falhará se a versão padrão estiver sendo reconciliada por um segundo processo. O valor booleano retornado, com sucesso, indica se os conflitos foram detectados ou não.

ID do Artigo:000004449

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com suporte técnico

Baixe o Esri Support App

Ir para opções de download

Informações Relacionadas

Descubra mais sobre este tema