Ajuda sobre somatoria de Arrays
Moderador: Moderadores
Ajuda sobre somatoria de Arrays
Bom dia!
Pessoal, estou com uma dúvia a respeito de somatórias com Arrays bidimencionais para serem adicionados em uma Grid, espero que alguém do grupo pode me ajude. O meu caso é o seguinte eu preciso fazer uma somatória da seguinte forma:
aSoma:= {}
aSoma[n1,n2] := valor
O layout da Grid é o seguinte:
Data 1 Data 2 Valor 1 Valor 2 Valor 3
Os itens data 1 e data 2 não serão somados, somente os itens valor 1 , valor 2 e valor 3 é adicionado os primieros e os seguintes são somados aos anteriores e adicionados a Grid , tudo isso o usuário esta entrando n vezes e depois da entrada dos dados mostrar o total num Label.
Desde já agradeço a todos que puderem me ajudarem a resolver este problema.
[]'s
Paulo - Jacareí/SP
Pessoal, estou com uma dúvia a respeito de somatórias com Arrays bidimencionais para serem adicionados em uma Grid, espero que alguém do grupo pode me ajude. O meu caso é o seguinte eu preciso fazer uma somatória da seguinte forma:
aSoma:= {}
aSoma[n1,n2] := valor
O layout da Grid é o seguinte:
Data 1 Data 2 Valor 1 Valor 2 Valor 3
Os itens data 1 e data 2 não serão somados, somente os itens valor 1 , valor 2 e valor 3 é adicionado os primieros e os seguintes são somados aos anteriores e adicionados a Grid , tudo isso o usuário esta entrando n vezes e depois da entrada dos dados mostrar o total num Label.
Desde já agradeço a todos que puderem me ajudarem a resolver este problema.
[]'s
Paulo - Jacareí/SP
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda sobre somatoria de Arrays
Não entendi.Paulo_CPV escreveu:somente os itens valor 1 , valor 2 e valor 3 é adicionado os primieros e os seguintes são somados aos anteriores
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Ajuda sobre somatoria de Arrays
Bom dia!
Pablo, me desculpe de novo de não ser objetivo, o que eu queria dizer é o seguinte:
Os itens data 1 e data 2 são adicionados normalmente.
Os itens valor 1 , valor 2 e valor 3, na primeira entrada são adicionados normalmente a partir da segunda entrada tenhoa que somar os valores anteriores com os valores digitados pelo usuário e depois adicionar na Grid.
Espero ter esclarecido. Obrigado pela sua atenção.
Paulo - Jacareí/SP
Pablo, me desculpe de novo de não ser objetivo, o que eu queria dizer é o seguinte:
Os itens data 1 e data 2 são adicionados normalmente.
Os itens valor 1 , valor 2 e valor 3, na primeira entrada são adicionados normalmente a partir da segunda entrada tenhoa que somar os valores anteriores com os valores digitados pelo usuário e depois adicionar na Grid.
Espero ter esclarecido. Obrigado pela sua atenção.
Paulo - Jacareí/SP
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda sobre somatoria de Arrays
Bom dia Paulo.
Valor1+ Valor2 = Valor3
ou
Tenho impressão que seria como uma espécie de extrato, onde a primeira coluna é o crédito, a segunda o débito e a terceira saldo ?
Até ai: Ok, entendi.Paulo_CPV escreveu:Os itens data 1 e data 2 são adicionados normalmente.
Os itens valor 1 , valor 2 e valor 3, na primeira entrada são adicionados normalmente
Como na sua primeira mensagem você disse que no grid tem as seguintes colunas: Data1 Data2 Valor1 Valor2 Valor3, ai pergunto de que forma tem que ser somados os valores ?Paulo_CPV escreveu:a partir da segunda entrada tenhoa que somar os valores anteriores com os valores digitados pelo usuário e depois adicionar na Grid.
Valor1+ Valor2 = Valor3
ou
Código: Selecionar todos
Valor1 Valor2 Valor3
Valor1 Valor2 Valor3
------------------------
Resultado das somas: Valor1 Valor2 Valor3Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Ajuda sobre somatoria de Arrays
Boa tarde!
Pablo, o que eu quero é o segundo exemplo que você me mostrou.
Pablo, o que eu quero é o segundo exemplo que você me mostrou.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda sobre somatoria de Arrays
Ok, então considerando 3 TEXTBOXes como você acostuma fazer e o ultimo registro do grid (colunas: Valor1, Valor2 e Valor3), você precisaria somar ao próximo registro a ser incluso no grid, isto a partir de segundo registro.Paulo_CPV escreveu:Pablo, o que eu quero é o segundo exemplo que você me mostrou.
Então o que faltaria para você fazer isso ?
Na hora de adicionar o registro no grid, você irá ver antes, quantos registros o seu grid possui e pegar o conteúdo nas três colunas do ultimo registro. Então, lembra a função SomaRegistro que tinha passado do outro tópico seu ? Nessa função tem como você obter a "Tupla" do grid, varrendo todo o array, mas neste caso só irá pegar o ultimo com: nFim:=Form_1.Grid_1.ItemCount, ai é só somar o value de cada TEXTBOX e adicionar ao grid.
Senão conseguir, disponibilize o seu código para poder aplicar correções na sua tentativa.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
luiz antonio da silva
- Usuário Nível 3

- Mensagens: 161
- Registrado em: 21 Nov 2006 22:12
- Localização: serrana-sp
Ajuda sobre somatoria de Arrays
Olá Paulo !
Completando o que o amigo Pablo falou...
O usuário poderá excluir ou alterar algum registro desse grid ?, se sim para exclusão, após executar o form_1.grid_1.deleteitem(x) você terá que reler o grid desde o início refazendo o cálculo para atualizar o último registro (caso o item excluido não seja o último registro), e se sim para alteração, você terá que de alguma maneira (poderia ser clicando no registro a ser alterado) saber qual saldo anterior pegar para ser somado com o valor do textbox e reler o grid após esse registro para atualizar os dados...blz
Abraço.
Luiz.
Completando o que o amigo Pablo falou...
O usuário poderá excluir ou alterar algum registro desse grid ?, se sim para exclusão, após executar o form_1.grid_1.deleteitem(x) você terá que reler o grid desde o início refazendo o cálculo para atualizar o último registro (caso o item excluido não seja o último registro), e se sim para alteração, você terá que de alguma maneira (poderia ser clicando no registro a ser alterado) saber qual saldo anterior pegar para ser somado com o valor do textbox e reler o grid após esse registro para atualizar os dados...blz
Abraço.
Luiz.
HMG 3.4.4 - SQL SERVER - ORACLE
Ajuda sobre somatoria de Arrays
Bom dia!
Pablo, muito obrigado mais uma vez pela sua ajuda, deu tudo certo, rotina funcionando 100%. Desde já agradeço a sua atenção para me ajudar nas minhas dúvidas e se precisar também estarei a disposição.
[]'s
Paulo - Jacareí/SP
Pablo, muito obrigado mais uma vez pela sua ajuda, deu tudo certo, rotina funcionando 100%. Desde já agradeço a sua atenção para me ajudar nas minhas dúvidas e se precisar também estarei a disposição.
[]'s
Paulo - Jacareí/SP
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda sobre somatoria de Arrays
Beleza Paulo, fico contente que tenha conseguido. Só que o colega Luiz complementou um ponto importante sobre a manutenção dos registros no grid que deve levar em conta.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Ajuda sobre somatoria de Arrays
Pablo,
vi o comentario do colega Luiz e já estou pensando no assunto. Mas agora estou com outra dúvida, fiz uma rotina para limpeza da Grid para que o usuário entre com novos dados. Para mim está tudo certo, mas para ficar mais uniforme: Na primeira chamada da função ele me mostra no Grid com as colunas com atributos zerados, eu queria que ele me retornase de novo as colunas zeradas, quando chamo a função NovoCalculo().
Eu queria que ele me mostrase de novo: // // 0 0 0 e não deixar a Grid em branco.
[]'s
Paulo - Jacareí/SP
vi o comentario do colega Luiz e já estou pensando no assunto. Mas agora estou com outra dúvida, fiz uma rotina para limpeza da Grid para que o usuário entre com novos dados. Para mim está tudo certo, mas para ficar mais uniforme: Na primeira chamada da função ele me mostra no Grid com as colunas com atributos zerados, eu queria que ele me retornase de novo as colunas zeradas, quando chamo a função NovoCalculo().
Código: Selecionar todos
aRows:={{CTOD(""),CTOD(""),0,0,0}}
DEFINE GRID grid_1
.
.
.
ITENS aRows
.
.
.
END GRID
/ / // 0 0 0
* Função para limpaza da Grid
Function NovoCalculo()
Form_1.Grid_1.DeleteAllItems
Form_1.Text_1.Value := ""
Form_1.Text_2.Value := ""
Form_1.Label_2.Value := ""
Form_1.Text_1.SetFocus
RETURN Nil []'s
Paulo - Jacareí/SP
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda sobre somatoria de Arrays
Na sua função NovoCalculo(), após Form_1.Grid_1.DeleteAllItems, você precisa adicionar ao menos um "registro" no vetor, assim:
Form_1.Grid_1.AddItem({{CTOD(""),CTOD(""),0,0,0}})
A função DeleteAllItems() elimina todos os itens deixando sem conteúdo algum e portanto irá dar erro.
Form_1.Grid_1.AddItem({{CTOD(""),CTOD(""),0,0,0}})
A função DeleteAllItems() elimina todos os itens deixando sem conteúdo algum e portanto irá dar erro.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Ajuda sobre somatoria de Arrays
Pablo,
Muito obrigado pela sua ajuda, eu estava pensando nisto que você me passou, agora está funcionando beleza. Mas agora vou penssar no comentário do colega Luiz.
Mais uma vez agradeço sua atenção.
[]'s
Paulo - Jacareí/SP
Muito obrigado pela sua ajuda, eu estava pensando nisto que você me passou, agora está funcionando beleza. Mas agora vou penssar no comentário do colega Luiz.
Mais uma vez agradeço sua atenção.
[]'s
Paulo - Jacareí/SP