[firebase-br] RES: Gravação Mestre Detalhe

Renan Cruz de Almeida renan.aju em terra.com.br
Ter Out 20 22:03:18 -03 2009


Solução muito boa. Não serve para mim. Mas muito boa mesmo.
Sim, não uso componentes DBAWARE, nem uso tabelas temporárias.
Costumo criar estruturas de dados - vetores, listas de objetos - em 
memória para este objetivo.

[]'s
Renan


Joao Marcos escreveu:
>  Meu querido, se você estiver usando Interbase, a melhor solução é:
>
>  Trabalhar com componentes que não sejam DBAWARE.
>
>
>  1 ) Os itens do pedido você pode ir colocando em uma tabela em
> memória (RXTABLE por exemplo, paleta RX / Ou ainda o Client Dataset)
>  2) Quando o usuário clicar no botão gravar, você lê o valor do
> GENERATOR que vc setou pra sua tabela de pedidos e faz o resto.
>
>  Usando generators, vc não precisa se preocupar com outros usuários
> inserindo no banco, pois os generators estão em um outro contexto
> transacional. Ainda que a sua transação não tenha sido comitada, este
> valor de generator NUNCA vai ser obtido por outra aplicação rodando em
> outro cliente.
>
>
> ex.
>
> procedute gravar();
> var
>  codPedido : integer;
> begin
>
>
>  codPedido := geraCodigoPedido(); // Funcão que recebe o codigo do generator.
>
>  inserePedido(codPedido); // faz a inserção do seu pedido com o valor
> obtido do generator.
>
> // varre a sua tabela em memória fazendo os inserts na tabela de
> itens, usando o código obtido pelo generator.
>
>
>
> end
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>   





Mais detalhes sobre a lista de discussão lista