Maseroli 0 Denunciar post Postado Dezembro 3, 2012 Boa tarde a todos, Estou com um problema, preciso criar um DBGRID simples, porem preciso incluir valores fracionados. Porem já estou a duas semanas tentando conseguir alguma forma de acertar a entrada de dados porem nao tive sucesso ainda. EXEMPLO: 1) Tenho um Obra(Construção de alguma coisa) valor de R$ 5.000,00 2) Preciso programar este obra em dias 3) Dividi os turnos (Manhã - Tarde - Dia todo) VISTA DO DBGRID COM UMA LINHA PROGRAMADA ______________________________________________________________________ DATA PROGRAMADO | TURNO | VALOR PROGRAMADO | 02/12/2012 | MANHA | R$ 5.000,00 | Aqui eu inclui uma programaçao VISTA DO DBGRID COM DUAS LINHAS PROGRAMADA ______________________________________________________________________ DATA PROGRAMADO | TURNO | VALOR PROGRAMADO | 02/12/2012 | MANHA | R$ 2.500,00 | Aqui eu inclui uma programação 02/12/2012 | TARDE | R$ 2.500,00 | Aqui eu inclui a segunda programação VISTA DO DBGRID COM DUAS LINHAS PROGRAMADA ______________________________________________________________________ DATA PROGRAMADO | TURNO | VALOR PROGRAMADO | 02/12/2012 | MANHA | R$ 1.250,00 | Aqui eu inclui uma programação 03/12/2012 | TARDE | R$ 1.250,00 | Aqui eu inclui a segunda programação 04/12/2012 |DIA TODO | R$ 2.500,00 | Aqui eu inclui a terceira programação Nesta ultima vista do DBGRID eu tenho 4 turnos, porem o ultimo turno foi trabalhado o dia todo, por isso ficou dobrado. O grande problema e que o usuario pode altrar qualquer linha a qualquer momento o sistema precisa recalculando a a cada inserção ou exclusão. Preciso saber qual a melhor forma de fazer esta rotina. Desde já agradeço a todos. Mário Sergio Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Dezembro 3, 2012 Olá amigo! Olha, sinceramente não sei se compreendi muito bem o seu problema. O que eu entendi foi que você precisa pegar o valor total do projeto e dividi-lo de acordo com o período trabalhado. Se possível de mais detalhes para que eu possa te ajudar! Até a próxima :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Maseroli 0 Denunciar post Postado Dezembro 4, 2012 Olá amigo! Olha, sinceramente não sei se compreendi muito bem o seu problema. O que eu entendi foi que você precisa pegar o valor total do projeto e dividi-lo de acordo com o período trabalhado. Se possível de mais detalhes para que eu possa te ajudar! Até a próxima :thumbsup:/>/>/>/>/> Jeferson, bom dia. Agradeço sua ajuda, vou colocar aqui as imagens do cenario de como deve funcionar, as inserções de registros que eu fiz nas imagens foram feitas manuais, preciso fazer com que o sistema calcule e recalcule a cada inclusão ou exclusão da linha do dbgrid Att, Mário Sergio https://skydrive.live.com/redir?resid=14B25C461D7FA851!294[/img] https://skydrive.live.com/redir?resid=14B25C461D7FA851!293[/img] https://skydrive.live.com/redir?resid=14B25C461D7FA851!292[/img] Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Dezembro 4, 2012 Boa tarde amigo! Agora compreendi o que você precisa. Nesse caso você teria que fazer o seguinte: Criar um campo calculado para realizar o calculo dos valores, dessa forma a cada nova inclusão/alteração/exclusão ele já recalcularia pra você os valores. A forma de fazer eu imagino o seguinte: 1) Você guarda a Qtde de Registros que existe; Ex: QtdeReg := 3; 2) Você guarda a Qtde de registros que Não foram realizados o dia todo; Ex: QtdeAux := 2; if ( Turno = 'M' ) or ( Turno = 'N' ) then vlrCalc.AsFloat := ( ( vlrDaObra / QtdAux ) / QtdAux ) else vlrCalc.AsFloat := ( vlrDaObra / QtdAux ) * ( QtdeReg MOD QtdeAux ); Conseguiu compreender? Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Maseroli 0 Denunciar post Postado Janeiro 6, 2013 Boa tarde Eisenheim, precisei me ausentar por alguns dias fora do estado com isso acabei atrasando meu trabalho. Bom, hoje segui sua ideia, a principio deu +ou- certo: Alguns minutos depois, resolvi montar uma classe de testes e segui fielmente a sua ideia, e adivinha, consegui fazer, deu certo. Muito obrigado mesmo. Um grande abraço e Feliz Ano novo para todos Delphianos. Att, Mário Sergio Compartilhar este post Link para o post Compartilhar em outros sites