 |
ActiveDelphi .: O site do programador Delphi! :.
|
| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
CRdelphi5 Aprendiz

Registrado: Quarta-Feira, 30 de Julho de 2003 Mensagens: 169
|
Enviada: Dom Mai 30, 2004 3:28 pm Assunto: Help-me Banco de Dados!!!! |
|
|
Tenho um grande problema, estou trabalhando com um banco de dados, feito com tabelas no Database Desktop, o problema é que no Paradox, onde são aceitas tabelas que podem ser incluídos valores não estou conseguindo criar um índice, o outro problema, é o seguinte tenho neste mesmo programa três edits um de Quant, e outro de valor, é o último de total onde eu inseri através de um button as seguintes variáveis :
Var
Valor 1: Real;
Valor 2: Real;
Begin
Valor 1 := StrToFloat ( Edit1.Text);
Valor 2 := StrToFloat ( Edit2.Text);
Edit3.Text:= FloatToStr ( Valor 1 * Valor2);
Mas ocorre o seguinte este código só aceita Números e quando preciso por exemplo digitar um número que é composto por ponto, ou vírgula, Ex: 1.230,65 ocorre o erro pois não aceita os mesmo, aí entra o problema quando mudo as tabelas que aceitam os pontos e vírgulas como as Dbase, não tem como eu inserir o $, acredito que existe uma variável onde possa inserir estes valores, se alguém puder me indicar como, mas o mais importante e que preciso criar um ídice em uma tabela, onde a mesma aceite o sinal moeda $ e que quando eu digitar valores compostos por pontos e vírgulas não de erro.
Espero ter sido claro, mas se alguém tiver alguma dúvida me mande um e-mail
Carlao.rfsa@ibest.com.br
Muito obrigado a todos!
|
|
| Voltar ao Topo |
|
 |
CRdelphi5 Aprendiz

Registrado: Quarta-Feira, 30 de Julho de 2003 Mensagens: 169
|
Enviada: Dom Mai 30, 2004 8:25 pm Assunto: Help-me Banco de Dados!!!! |
|
|
| Espero que me informem sobre isto pois estou com um grande problema, para conseguir colocar estes registros. |
|
| Voltar ao Topo |
|
 |
sh@dow Mestre

Registrado: Domingo, 21 de Março de 2004 Mensagens: 807
|
Enviada: Dom Mai 30, 2004 9:19 pm Assunto: Help-me Banco de Dados!!!! |
|
|
Tente assim:
Var
Valor1: Real;
Valor2: Real;
begin
Valor1 := StrToFloat ( RemoveChar( Edit1.Text));
Valor2 := StrToFloat ( RemoveChar( Edit2.Text));
Edit3.Text:= FloatToStr ( Valor1 * Valor2);
end;
function RemoveChar(Const Texto:String):String;
var
I: integer;
S: string;
begin
S := \'\';
for I := 1 To Length(Texto) Do
if (Texto[I] in [\'0\'..\'9\',\',\']) then
S := S + Copy(Texto, I, 1);
result := S;
end;
_________________ <a>Regras do fórum</a> |
|
| Voltar ao Topo |
|
 |
CRdelphi5 Aprendiz

Registrado: Quarta-Feira, 30 de Julho de 2003 Mensagens: 169
|
Enviada: Qui Jun 03, 2004 9:59 pm Assunto: Help-me Banco de Dados!!!! |
|
|
| Pois Bem, eu segui todos os passos que o Sh@dow falou mas houve mensagem de erro, e continuei sem poder colocar o ponto nas variantes, e o mais importante o sinal Moeda ( $) no Edit Resultado, o Erro que apareceu foi ( Undeclared Identifier: \'RemoveChar\' ), não sei se influência o fato de eu estar usando uma tabela Dbase, e também um Dbgrid, ligado a mesma onde aparece os valores da tabela, mas.... |
|
| Voltar ao Topo |
|
 |
MP Aprendiz

Registrado: Quarta-Feira, 4 de Junho de 2003 Mensagens: 166
|
Enviada: Sex Jun 04, 2004 3:32 pm Assunto: Help-me Banco de Dados!!!! |
|
|
Amigo, no Paradox quando vou trabalhar com algarismos, defino os campos sempre como N (Number).
Em relação aos indices, os mesmos devem ser sempre os primeiros campos da tabela:
Por ex: COD_CLI, COD_ENTREGA
Espero ter ajudado. _________________ Grato,
MP. |
|
| Voltar ao Topo |
|
 |
Darvane Membro Junior

Registrado: Domingo, 1 de Junho de 2003 Mensagens: 350
|
Enviada: Sex Jun 04, 2004 9:44 pm Assunto: Help-me Banco de Dados!!!! |
|
|
Quando uso Edits também tenho problemas com a validação dos valores.
Por exemplo: se não for digitado nada pode ocorrer erro... Então montei a seguinte função (espero que ajude)
function Tform1.ValidaNumero(VarNumero: string): boolean;
var fragmento, outrofragm, modelos: string;
TamNum, vez: integer;
begin
VarNumero := Trim(VarNumero);
if VarNumero = \'\' then
begin
result := False;
exit;
end;
result := True;
modelos := \'.,0123456789\';
TamNum := Length(VarNumero);
for vez := 1 to TamNum do
begin
fragmento := copy(VarNumero, vez, 1);
if pos(fragmento, Modelos) = 0 then
begin
ShowMessage(\' Número inválido !!! \');
result := False;
Break;
end;
end;
fragmento := \'.\';
outrofragm := \',\';
if (pos(fragmento, modelos) > 0) and (Pos(outrofragm, modelos) = 0) then
begin
ShowMessage(\' Número inválido \'#13#10\' Digite VIRGULA ou PONTO \'#13#10\' Nunca os dois!\');
result := False;
end;
end;
// Não digite nada na propriedade EditMask
// No evento OnExit de cada edit... Poderia ser por ex:
Procedure Tform1.Edit1Exit(Sender: TObject);
begin
if ValidaNumero(saTamanho.Text) then
saTamanho.Text := FormatFloat(\'#0\', StrToFloat(saTamanho.Text))
else
saTamanho.Text := \'0\';
end;
.........
Valeu, Inteh!
_________________ ****************************
Miner d´Beraba |
|
| Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|