Ir para conteúdo
Fórum Script Brasil

Pirambu!

Membros
  • Total de itens

    359
  • Registro em

  • Última visita

Posts postados por Pirambu!

  1. procedure TF_Produtos.procura;
    Begin
    if editProcura.Text <> '' then
    begin
    if ncol = '' then
    Application.MessageBox('Primeiro Selecione uma Coluna para Realizar a Consulta','Clique em um Título',MB_OK + MB_IconError)
    else
    Begin
    F_Dados.Q_Produto.Active := False;
    F_Dados.Q_Produto.SQL.Clear;
    F_Dados.Q_Produto.SQL.Add('SELECT * FROM PRODUTO WHERE '+nCol+' LIKE ' + #39 + '%' + EditProcura.Text + '%' + #39);
    F_Dados.Q_Produto.SQL.Add('order by '+nCol);
    F_Dados.Q_Produto.Active := True;
    end;
    End;
    end;
    ZueRa, eu acredito que "nCol" seja o nome do campo onde vai ser feita a consulta. Livio Neiva, tenta colocar o comando para inicializar a consulta no local onde estão listados. se você estiver usando um combobox, em items você deve colocar o nome dos campos que contém na tabela a qual será feita a consulta exp : local, idade... ainda no combobox em eventos "OnChanger" de dois click e
    procedure TF_Produtos.ComboBox1Change(Sender: TObject);
    var
    NomCol:String;
    begin
    editProcura.Text:= ''; //limpando o campo onde será feita a consulta.
    NomCol:= Combobox1.text; //colocamos o valor selecionado na variavel.
    
    if NomCol= '' then
    Application.MessageBox('Primeiro Selecione uma Coluna para Realizar a Consulta','Clique em um Título',MB_OK + MB_IconError)
    else
    Begin
    
    with F_Dados.Q_produto do
    Begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM PRODUTO WHERE '+ NomCol + );
    SQL.Add('order by '+ NomCol);
    open;
    end;
    End;
    end
    e para o o editProcura.Text de dois click
    procedure TF_Produtos.Edit1Change(Sender: TObject);
    var
    NomCol:String;
    begin
    editProcura.Text:= ''; //limpando o campo onde será feita a consulta.
    if combobox1.text = '' then
    Begin
    Showmessage('Escolha o loca");
    exit;
    end;
    NomCol:= Combobox1.text; //colocamos o valor selecionado na variavel.
    
    with F_Dados.Q_produto do
    Begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM PRODUTO WHERE '+ NomCol + ' like :A');
    SQL.Add('order by '+ NomCol);
    parameters[0].value:= '%' + editProcura.Text + '%';
    open;
    end;
    
    end;

    Ver ai se é o que você precisa, e posta o resultado.

  2. Geomar Canjundo, eu consigo sem problema usando um arquivo "udl", você deve fazer o mapeamento da rede para a máquina de onde fica o Banco de dados, dentro do seu sistema, em TADOACONNECTION você quando for indicar o local do banco de dados você marca "User data link file" e manda procurar o arquivo que você vai criar ex.: "C:\Sistema.udl."

    agora você salvar este codigo abaixo em um bloco de nota e salvar como "Sistema.udl" e salva dentro do "C:\", depois de salvo você dá dois no arquivo click e indica o banco de dados que já estar mapeado. em Database Password se o banco tiver senha, o acesso pelo sistema é feito normalmente, apenas não permite outra pessoa abrir o banco e alterar as informações.

    [oledb]
    ; Everything after this line is an OLE DB initstring
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sistemas.mdb;Persist Security Info=False;Jet OLEDB:Database Password=xxx;Jet OLEDB:Engine Type=0

    ver se isso é o que você precisa, depois posta o resultado.

  3. silvanirms, assim resolve seu problema, testa ai

    Proc....
    var
    arq:textfile;
    linha:string;
    begin
    
    assignfile(arq,'c:\nomedoarquivo.txt');
    reset(arq);
    while not eof(arq) do
    begin
      readln(arq,linha);
     if pos('cadeira',linha)>0 then
     begin
      Showmessage('Encontrado');
     end;

  4. Jhonas, desta forma é aberto o PDF, da forma que eu fiz ele abre o arquivo dentro do proprio Form do Delphi mas aparece as opções de Salvar e Imprimir. veja abaixo:

    Ex.: C:\Arquivos de programas\Adobe\Acrobat 6.0\Reader\ActiveX\pdf.ocx

    - Clique em Abrir.

    - Procure na lista por 'Acrobat Control for ActiveX'

    - Clique em 'Install'.

    Após instalar, será criado na paleta 'ActiveX' (caso você não altere no momento da Instalação) um novo componente chamado 'Pdf'.

    Insira esse componente no formulário e utilize seus recursos para trabalhar com arquivos PDF.

    Ex.:

    Pdf1.LoadFile('C:\temp\arquivo.pdf'); //Abre um arquivo

  5. Exercicio 4

    Ler dois valores referentes a duas notas escolares de um aluno e imprimir uma mensagem dizendo que o aluno foi aprovado, se o valor da média escolar for maior ou igual a 7, solicitar a nota de exame, somar com o valor da média e obter nova média.

    Se a nova média for maior ou igual a 5, apresentar uma mensagem dizendo que o aluno foi aprovado em exame. Se o aluno não foi aprovado, indica uma mensagem informando esta condiçao.

    Apresentar junto com as mensagens o valor da média do aluno para qualquer condição.

    Vamos supor que os dois valores estejam em dois "edit",

    proc...
    var
    media,NotaExame:double;
    begin
    media:= strtoint(edit1.text) + strToInt(edit2.text);
    if media >= 7 then
    begin
    ShowMessage("Aluno Aprovado");
    end else
    begin
    ShowMessage("Aluno Reprovado");
    inputquery("Informe a nota do exame","Aviso!",NotaExame);
    media:= strtoint(edit1.text) + strToInt(edit2.text) + NotaExame;
    if media >= 5 then
    begin
    ShowMessage("Aluno foi Aprovado em exame");
    end else
    begin
    ShowMessage("Aluno teve a media = " + Media + "seguir a condição");
    end;
    end;

    Juliana ver se é isso que você esta precisando.

  6. Daniel Henrique M. Doro, já que você colocou a senha, agora fica simples, na string que direciona ao banco de dados use este código:

    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=local do banco de dados.mdb;Persist Security Info=False;Jet OLEDB:Database Password=sua senho;Jet OLEDB:Engine Type=0

    copie este codigo e altere o Source e Password, no meu funcionou sem problema. eu teste no ACCESS 2000 e 2003

    posta o resultado, valeu.

  7. flavioavilela, você pode dentro do banco SQLserver formatar o campo que vai receber o valor ficaria assim:

    Valor decimal(10,2) default(0),
    e no Delphi quando você abrir a tabela ou query selecione o Campo dentro da tabela ou query e var na propriedade: Corrency coloca como True. ver se isso ajuda. outra forma seria essa direto no Delphi
    floatTostrF(CampoString,ffcurrency,10,2);

  8. Junior, pelo que entendir você tem uma tabela e quer soma os valores do registro da mesma, dependendo do Codigo "PlanConcPlano.AsString" a primeira condição é que o codigo inicie com "1" e a segunda opção não entendir "1. "

    if (trim(copy(qyRelPlanConcdPlano.AsString,1,5))  <>  cdFormato1[i]) and (trim(copy(qyRelPlanConcdPlano.AsString,1,5)) <> '1.   ') then

    Da forma em que estar sendo feito você estar pegando os valores e atualizando a cada While deve ser jogada no "QRlabel10.caption" depois do While, e você estar usando duas query, post mais informações sobre as querys,

  9. Estou tentando mudar apenas a cor de uma determinada coluna

    if Querystatus.AsString = 'Sim' then
    Begin
      DbGrid1.Canvas.Font.Color := ClNavy;
      DBGrid1.DefaultDrawDataCell(Rect, Column.Field, State);
      End Else
        Begin
         DbGrid1.Canvas.Font.Color := Clmaroon;
         DBGrid1.DefaultDrawDataCell(Rect, Column.Field, State);
        end;

    Quero mudar apenas na coluna "Status", mas fica a linha do DbGrid inteiro, como eu posso resolver isso?

×
×
  • Criar Novo...