Ir para conteúdo
Fórum Script Brasil
  • 0

Alguém Me Ajuda..please!


Guest - Thaise -

Pergunta

Guest - Thaise -

Oi galera,

Meu nome é Thaise e eu estou com 4 big problems..hehe

Estou montando um sistema em Delphi com Interbase,sendo que uma das tabelas é uma tabela de orçamento (aquelas fichas de orçamento de papel que eles geralmente te dão nas lojas com uma tabelinha que contém esses campos: Quantidade, Tipo da mercadoria e Valor).

É o seguinte:

1º Big problem - Eu preciso de um código que gere números automáticos, melhor dizendo, um contador automático para o número do orçamento, tipo o inicial vai ser 1 claro, dai quando o usuário clicar no botão "novo" ele automaticamente cria o orçamento 2. Eu queria esse código porque eu montei um e não está dando certo. Criei uma query na unha e o Delphi não reconhece minha query. Comparei com o meu programa de estágio do colégio, é o mesmo código e no programa de estágio ele funciona e no meu atual não;

2º Big problem - vocês concordam comigo que um usuário pode ter N serviços numa mesma ficha?? Então, na minha tabela do Interbase eu criei os determinados campos (Dados do cliente - nome,end,tel,etc - Dados da mercadoria - quantidade,tipo e valor.) No Delphi eu puxei esses campos para o form e montei a tabela visual.Certo. Acontece que eu não criei chave primária nessa tabela no Interbase (que no caso chama ORCAMENTO), porque a pessoa por ter vários serviços em seu nome. SE EU ESTIVER COM O RACIOCÍNIO ERRADO, POR FAVOR ME CORRIJAM. Acontece que eu não consigo exibir TODOS os serviços desses campos no relatório Quick Report. Eu precisava de uma Grid sabem...ou algo parecido, que liste TODOS OS SERVIÇOS QUE ESSA PESSOA REALIZOU NESSE MESMO Nº DE ORÇAMENTO.

vocês estão me entendendo?? Tipo eu sou o numero 1 do orçamento e eu realizei 3 serviços. Eu só consigo exibir 1 serviço, utilizando o QRDBText aquele componente de pegar os campos da tabela no Interbase tals...

3º Big problem - Eu preciso verificar campos vazios antes de cadastrar no Interbase. Como? Fazendo um FOR - REPETIÇÃO. A minha prof me explicou mais eu não entendi nada porque ela estava no intervalo de um exercício e a sala estava toda barulhenta. TAMBÉM QUERIA SABER COMO FAZ ISSO.

4º Big problem - Preciso saber como gerar o arquivo inicializável para o usuário instalar o programa na máquina dele.

Gente, se alguém puder me ajudar eu vou agradecer muito! Preciso entregar esse programa no fim de março e só está faltando essas 4 pequenas coisinhas...EU SUPLICO AJUDA!!!!!!

Pra quem quiser maiores detalhes, peguem meu MSN : florzinha_crazywitch@hotmail.com

Abraços.

Editado por Progr'amador
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Oi Thaise,

O 2 Big Pro... é assim:

Coloque uma Detail Band No Quick e lá os Campos QRDBtext, tá e você esque ceu de ligar o DataSet do QuickRep em sua Query Pesquisa onde você está puchando os dados.

Os demais respondo se der amanhã, é que estou muito na correria hj.

Mas calma olhei por cima e não é nada assim tão complicado, o pessoal certamente ainda não lhe ajudou porque postou muita coisa e assustou a galera...

Valeu até mais.

Tbaiano cool.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Thaise......

Para gerar este código automáticamente, você pode usar uma query, tipo assim:

Quando você clicar no botão novo:

procedure TForm1.SpeedButton3Click(Sender: TObject);

begin

Table1.Insert;

Query1.Close;

Query1.SQL.Clear;

Query1.SQL.add('select max(codigo) + 1 as novo from aniversario');

Query1.open;

if not Query1.IsEmpty then

begin

Table1Codigo.AsString := Query1.fieldbyname('novo').AsString;

DBEdit2.SetFocus;

end

else

Table1Codigo.AsString := '1';

end;

Espero ter ajudo

Darlan

Link para o comentário
Compartilhar em outros sites

  • 0

A verificação dos campos em branco você pode fazer no evento before insert da tabela,

if campo.text ='' then

begin

showmessage('Preencha o campo');

campo.setfocus;

exit

else if

campo2.texte = '' then

showmessage('Preencha o campo');

campo2.setfocus;

exit;

end;

end;

assim você pode veiricar todos os campos requeridos

espero ter "Ajudado"

Darlan

Link para o comentário
Compartilhar em outros sites

  • 0

Thaise,

No próprio Interbase você pode gerar o código automático

Criando um generator

create generator cod_cliente; 
(execute)
Criando um Trigger
set term ^;
create trigger ai_cod_cliente for minha_tabela
active before insert position 0
as
begin
if (new.codigo is null) then new.codigo = gen_id( cod_cliente, 1 );
end ^ 
(execute)

Abs.

kikonanet laugh.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...