Boa tarde. estou precisando de uma ajuda, quando uso do transaction e termino este processo a tabela fica locada, exemplo: do transaction: for each tabela exclusive-lock: tabela.tt = 10. end. end. release tabela. update alguma coisa. se outro usuario precisa usar a tabela acima, o mesmo fica travado até o primeiro usuario sair do programa. Eu uso o progress 8.2, alguem saberia me dizer o que posso fazer para resolver isso? []'s
Felix, As vezes existe uma transação maior, e por isso existe a necessidade de fechar o programa. Já passei por algumas situações colocando transações dentro de outras por acidente. E só liberava os registros quando a transação principal era encerrada. Verifique onde sua transação é executada, se é executada a partir de outro programa. Antes de executar o do transaction tenta verificar se já existe alguma transação ativa com uma mensagem, se não em engano o código é este: Código: message transaction view-as alert-box. do transaction: ... Posta mais detalhes relacionado ao procedimento de execução. T+
Eu já estava achando que era isso mesmo. o problema é que tenho do transaction no programa principal, que chama outro programa que tbém tem do transaction e a tabela só esta sendo liberada quando sai do primeiro do transaction. Valeu, Obrigado
Só voltando um pouco este assunto. Andei fazendo umas pesquisas e encontrei um documento que diz que a melhor maneira de usar o do transaction é a cada ação de atualização de dados e logo apos a utilização dar o release na tabela. O programa no qual estou tendo problema é grande e atualiza dados em partes bem diferentes uma da outra, sendo assim, tenho a preocupação de colocar o do transaction a cada atualização e no meio do programa acontecer de cair a conexão e ter dados que ficam atulizados e otros que ainda não foram. Alguem teria alguma ideia de como posso fazer para resolver este problema? []'s
Olá Felix... cara, enfrentamos o mesmo problema na minha empresa, no qual tivemos que colocar um bloco enorme com transaction nos itens de Nota Fiscal... se ocorrer qualquer erro nos itens, toda a NF é eliminada... o usuario tem que fazer do zero. Assim conseguimos garantir a fidelidade dos itens para aquela NF e evitamos lixos nas duas tabelas (NotaFiscal e ItensDaNota).