Fórum Delphi Conflito de transações Banco Firebird #547838
07/03/2016
0
Bom dia Pessoal,
Não consegui achar uma resposta para o meu caso. Uso Componentes da paleta Interbase com banco Firebird 2.5
Tenho um formulário de cadastro com varias TabSheets, e tenho 3 transactions no sistema. Uma para Operação, outra para Cadastro e outra para Consultas.
Quando ocorre o conflito?
Vamos lá, primeiro vou no meu cadastro, e tento cadastrar uma Obra por exemplo.
Ele chama o form de Consultas de obras eu Clico no botão Novo e ele chama o form de Cadastro com o Insert já. Até ai blz....mas e se no cadastro da obra não tiver a cidade cadastrada?
Ai eu tenho q chamar o form de consulta de cidades (que é o mesmo de consulta de obras apenas separados por tabsheets) e lá na consulta de cidades eu clico em novo para cadastrar a nova cidade. Ai começa a confusão. Quando eu iniciei o cadastro da obra eu iniciei a transação e quando eu gravar o cadastro da cidade ele vai dar um commit e eu vo perder o cadastro da obra, mas ok. Eu poderia usar o Commit Retaining para resolver isso se não fosse pelo fato do cliente talvez querer cadastrar a cidade primeiro. Dessa forma a transação ficaria aberta e em algum outro momento eu poderia dar um rollback e perder cadastro da cidade por exemplo.
Alguem tem uma sugestão para esse caso?
Não consegui achar uma resposta para o meu caso. Uso Componentes da paleta Interbase com banco Firebird 2.5
Tenho um formulário de cadastro com varias TabSheets, e tenho 3 transactions no sistema. Uma para Operação, outra para Cadastro e outra para Consultas.
Quando ocorre o conflito?
Vamos lá, primeiro vou no meu cadastro, e tento cadastrar uma Obra por exemplo.
Ele chama o form de Consultas de obras eu Clico no botão Novo e ele chama o form de Cadastro com o Insert já. Até ai blz....mas e se no cadastro da obra não tiver a cidade cadastrada?
Ai eu tenho q chamar o form de consulta de cidades (que é o mesmo de consulta de obras apenas separados por tabsheets) e lá na consulta de cidades eu clico em novo para cadastrar a nova cidade. Ai começa a confusão. Quando eu iniciei o cadastro da obra eu iniciei a transação e quando eu gravar o cadastro da cidade ele vai dar um commit e eu vo perder o cadastro da obra, mas ok. Eu poderia usar o Commit Retaining para resolver isso se não fosse pelo fato do cliente talvez querer cadastrar a cidade primeiro. Dessa forma a transação ficaria aberta e em algum outro momento eu poderia dar um rollback e perder cadastro da cidade por exemplo.
Alguem tem uma sugestão para esse caso?
Casa
Curtir tópico
+ 0
Responder
Posts
07/03/2016
Wazowski
Da insert só na hora de confirmar o cadastro...
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)