
Arlon
Membros-
Total de itens
371 -
Registro em
-
Última visita
Tudo que Arlon postou
-
Existem diferentes formas de se fazer isso, uma delas é a suguinte: - Adicione um novo formulário ao seu projeto - Vai no data modulo e coloca 2 componentes: uma Query(paleta BDE) e um DataAccess(paleta DataAccess) -Na Query seta as seguintes propriedades: -SQL --> Select * from NomeDaTabela - DatabaseName --> é o Alias interno, seleciona o mesmo nome que tá na propriedade DatabaseName do componente DataBase - Active --> True - Name --> QrProdutos Propriedades do componente DataAccess: - DataSet --> QrProdutos - Name --> DsQrProdutos Aí no formulário que você criou coloca um DBGrid, um Edit e dois botões Propriedade do DBGrid: - DataSource --> DsQrProdutos Botão1 OnClick: DM.QrProdutos.Close; DM.QrProdutos.SQL.Text := 'Select * from Produtos ' + 'where Upper(Nome) =:NomeBusca Like (edit1.text)'; DM.QrProdutos.Params[0].AsString := UpperCaseUpperCase('%' + Edit1.Text + '%'); DM.QrProdutos.Open; Botão2: DataModulo.Tabela.Edit; FormularioDeCadastroDeProdutos.ShowModal; Caso dê algo errado posta ae e posta tb seu e-mail pra eu te mandar as imagens pra botões, valeu.
-
Não conheço esse lance de campo virtual não, por acaso é algo como adicionar itens dinamicamente em modo de execução?? Mas eu vou usar o DBLookUp mesmo, porque aí eu pego logo somente os campos da tabela e esse componente é tipo ReadOnly você só pode selecionar o q tiver nele, diferente de um comboBox normal, onde você pode escrever. Responde a minha pergunta ae por favor e brigadão pela ajuda
-
Descobri o erro, agora diga-me se o motivo é realmente esse: Eu tenho duas tabelas 'Pedidos' e 'Clientes' elas estão relacionadas através do campo Cliente, isso quer dizer que eu só posso indicar um cliente a ser gravado na tabela Pedidos se esse cliente estiver cadastrado na tabela Clientes, ou seja, pra eu evitar esse tipo de erro vou colocar um DBLookUpComboBox no formulário de Pedidos que exibirá os clientes cadastrados na tabela Clientes. O erro que tava acusando era por isso?? Valeu a ajuda Bolomaster.
-
Cara, não consegui acessar os links não Você não está autorizado a ver esta página Você pode não ter permissão para exibir este diretório ou página usando as credenciais fornecidas. -------------------------------------------------------------------------------- Se você acha que deveria poder ver este diretório ou página, tente contatar o site da Web através de qualquer endereço de email que esteja listado na home page logic.vila.bol.com.br. Você pode clicar em Pesquisar para procurar informações na Internet. Erro de HTTP 403 - proibido Internet Explorer
-
Consegui meio q descobri o erro, só não sei o porquê dele, se liga só na situação q tá acontecendo: eu tenho um campo chamado 'cliente' e se eu digitar mais de um caracter no DBEdit correspondente a esse campo e gravar o registro ele acusa o erro (Master record missing), já verifiquei o tamanho do campo no data module e tá tudo certo, alguém sabe o motivo e como corrigir esse erro??
-
Consegui descobrir onde está o erro, agora se alguém puder me ajudar a resolvê-lo eu agradeço. Tem um campo chamado cliente em um DBEdit e se eu digitar mais de 1 caracter nesse DBEdit aparece a mensagem de erro. Já verifiquei o tamanho dele no data módulo e tá com as propriedades Size e DisplayWidth do tamanho em que eu determinei no Paradox, 40. Alguém sabe me dizer porque q tá acontecendo isso?
-
É um campo Date, outro Time e tem um Alfanumérico, mas em quê isso pode influenciar?? Me explica melhor, por favor. Eu tava buscando data e hora do sistema e mesmo quando eu cancelei a tabela ele tava registrando esses campos daí eu tirei o comando de busca automática da data e hora e o problema parou. Mas mesmo assim se eu digitar nesse campo alfanumérico ele acusa erro.
-
Dá uma olhada aqui ó: Delphi.Eti Active Delphi Clube Delphi vai na busca dos sites e digita 'Glyph' ou 'Ícones' Eu tenho um monte aqui, posta seu e-mail que eu mando pra você. Todos os arquivos zipados dá 1,29 MB, seu e-mail tem espaço pra tudo de uma vez?
-
O negócio é o seguinte: Eu tenho um formulário de cadastro com vários DBEdit´s e se eu digitar em alguns deles aparece a seguinte mensagem de erro: MASTER RECORD MISSING Mas se eu digitar em outros no mesmo formulário não acontece erro. Alguém sabe me dizer o motivo de alguns dbedit´s desse formulário estarem dando erro e outros não, já verifiquei as propriedades Dataset e dataField e tá tudo certo. estou usando Paradox.
-
Valeu a ajuda Bolomaster e Corposemalma, consegui resolver a "doideira". Se liga só no mole que eu tava dando: Eu coloquei UpperCase na passagem de parâmetro e esqueci de colocar Upper na instrução SQL do botão também. Até a próxima escabrosa dúvida...
-
O Delphi tá mandando declarar 'LoPartialKey' Tem que declarar alguma cláusula no uses? E tá dizendo o seguinte: [Error] Clientes.pas(120): Undeclared identifier: 'LoPartialKey' [Error] Clientes.pas(120): Not enough actual parameters [Fatal Error] CorporateMaster.dpr(17): Could not compile used unit 'Clientes.pas'
-
Bolomaster, então ficaria assim, certo: DM.QrConsClientes.Close; DM.QrConsClientes.Sql.Text := 'Select * from Clientes ' + 'Where Cliente =:Edit1.text'; DM.QrConsClientes.Params[0].AsString := UpperCase(Edit1.Text); DM.QrConsClientes.open; DM.QrConsClientes.Locate('Cliente', edit1.text [LoPartialKey]); DBGrid1.DataSource := DM.DsQrConsClientes; Panel2.Visible := false; BtnMostraTudo.Enabled := true O Delphi tá mandando declarar 'LoPartialKey' E tá dizendo o seguinte: [Error] Clientes.pas(120): Undeclared identifier: 'LoPartialKey' [Error] Clientes.pas(120): Not enough actual parameters [Fatal Error] CorporateMaster.dpr(17): Could not compile used unit 'Clientes.pas' Você falou pra colocar o seguinte: table1.locate('nome', edit1.text [LoPartialKey]); 'nome' é o nome do campo que eu estou procurando?? no caso seria clientes?? Valeu pela ajuda que tá me dando cara.
-
Corposemalma, continua uma doideira total a situação da bendita procedure. Não adiantou nada tirar o UpperCase e continua dando o mesmo erro na linha 5; e outra coisa, você colocou: with DM.QrConsClientes do begin clear; //importante pois se fizer duas pesquisas seguidas tera um erro... . . . tá dando erro na linha do clear, pedindo pra declarar essa palavra, não seria ClearFields ou outro comando?? Mas isso é fácil de se descobrir, e a propósito do erro na linha 5, você tem alguma idéia de como resolvê-lo? estou usando Paradox
-
Pow galera não deu certo nenhuma das duas opções. Bolomaster, do jeito que você falou continuou a mesma coisa (a busca só dá certo se eu cadastrar o campo Cliente com uma letra só). Corposemalma, da forma como você falou tá acusando o seguinte erro: Project CorporateMaster.exe raised exception class EDBEEngineError with message 'Invalid use of keyword. Tolken: SELECT Line number: 5'. Process stopped. Use Step or Run to continue. e ao invés de Parambyname['ClienteBusca'].AsString eu usei Parambyname('ClienteBusca').AsString , pois com colchetes tava dando erro. Mas valeu a ajuda galera, e se vc´s pensarem em mais alguma provável solução posta aí pra mim que eu agradeço.
-
Galera o problema é o seguinte Eu tenho uma tabela Clientes e um DBGrid setado pra essa tabela. estou fazendo uma busca com uma Query através do campo cliente (que reperesenta o nome do cliente). Até aí tudo certo, só que quando eu cadastro um cliente de nome 'Raphael', por exemplo, e chamo o formulário de consulta e no Edit eu digito 'Raphael' ele não me traz o resultado da pesquisa. Porém quando eu cadastro o cliente com o nome 'R' e faço a busca digitando 'R' no Edit o sistema mostra o resultado no DBGrid. Estranho né?? Alguém sabe como resolver essa doideira?? o código que eu estou usando tá aí ó: Código do botão: procedure TFrmClientes.BtnBuscarClick(Sender: TObject); begin DM.QrConsClientes.Close; DM.QrConsClientes.Sql.Text := 'Select * from Clientes ' + 'Where Cliente =:ClienteBusca'; DM.QrConsClientes.Params[0].AsString := UpperCase(Edit1.Text); DM.QrConsClientes.open; DBGrid1.DataSource := DM.DsQrConsClientes; Panel2.Visible := false; end; Código da propriedade SQL da Query: Select * from Clientes where Cliente =:ClienteBusca Propriedade Parans da Query 0 - NomeBusca DataType: ftString ParamType: ptImput
-
Cara, existe uma grande quantidade de sites sobre Delphi que contém apostilas, componentes, funções, essas paradas; porém, na minha opinião, mas sem desmerecer os outros, os melhores são os .com.br. Eu coloquei uns links aí com sites com material Free, é só você se cadastrar, ter um login e uma senha e aproveitar. Planeta Delphi Active Delphi Clube Delphi e o portal Delphi aqui do Script Brasil Delphi - SB
-
As bandas são para dividir o relatório em: título, corpo dos dados, nome dos campos(QrLabel) e assim por diante.
-
Cara, eu não se seria a melhor opção, mas tenta fazer o seguinte: Passa o valor do campo da tabela pra uma variável, por exemplo: Var LocValorPG : integer; begin LocValorPG := Dm.TbLocacaoVALORPG.Value; DM.TbLocacaoPENDENCIA.VALUE:=DM.TBLOCACAOTOTAL.Value-LocValorPG; end; e ao invés de realizar a operação direto com o campo da tabela, use a variável. OBS.: Quando você joga um valor do campo na variável nem sempre é necessário a conversão pra ponto flutuante.
-
Se liga só: Coloca um componente ImageList no formulário --> dá um duplo click nele --> clica em Add \ Disco Local © \ Arquivos de Programas \ Arquivos Comuns \ Borland Shared \ Images \ Buttons dá um doplo click na imagem que você quer colocar no Tool Bar, clica em "yes", clica na imagem que tá preta e branca e deleta ela (eu não sei porque que apareem duas figuras) e vai adicionando outros ícones. Depois que você já tiver adicionado tudo, clica no Tool Bar, vai no Object Inspector, propriedade "Images" e seleciona "ImageList1". Espero ter ajudado, qualquer coisa posta de novo ae...
-
Usa esse código aqui, além de desabilitar CTRL+ALT+DEL ele desabilita ALT+F4 também: procedure TFrm.FormCreate(Sender: TObject); <--- evento OnCreate var hSysMenu: HMENU; begin hSysMenu := GetSystemMenu(Self.Handle, False); if hSysMenu <> 0 then begin EnableMenuItem(hSysMenu, SC_CLOSE, MF_BYCOMMAND Or MF_GRAYED); DrawMenuBar(Self.Handle); end; KeyPreview := True; end; procedure TFrm.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); <--- evento OnKeyDown begin if (Key = VK_F4) and (ssAlt in Shift) then Key := 0; end; Abraços...
-
Abaixo da linha "frmSenha.Close" coloca "Application.Terminate".
-
Aí galera, o pc de um amigo meu tá com o vírus Makro Word. Existe algum programa disponível na internet para remover esse vírus... alguém sabe me dizer o que deve ser feito?? Obrigado.
-
O TPrinter é usado pra q? Imprimir?? Se for isso que você quer, eu recomendo que use o PrintDialog que fica na paleta Dialogs, o procedimento simples de usá-lo é o seguinte: procedure TFrmForm1.btnImprimirClick(Sender: TObject); begin RichEdit1.Font.Size := 8; if PrintDialog1.Execute then begin RichEdit1.Print('NotaFiscal'); end; end;
-
Como assim se o programa for fechado de forma incorreta?? Não sei se vai te ajudar, mas desabilita o botão fechar da borda do form e o ALT F4, obrigando o usuário a cancelar o cadastro ou registrá-lo. procedure TFrmFornecedor.FormCreate(Sender: TObject);//evento OnCreate var hSysMenu: HMENU; begin hSysMenu := GetSystemMenu(Self.Handle, False); if hSysMenu <> 0 then begin EnableMenuItem(hSysMenu, SC_CLOSE, MF_BYCOMMAND Or MF_GRAYED); DrawMenuBar(Self.Handle); end; KeyPreview := True; end; procedure TFrmFornecedor.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);//Evento OnKeyDown begin if (Key = VK_F4) and (ssAlt in Shift) then Key := 0; end; Se não for isso que você quer, posta de novo ae...
-
Não é só a guia Data Controls que possui componentes para trabalhar com BD, são das guias Data Access até a Interbase, se eu não me engano. você até pode ligar um edit normal ao banco de dados mas pra isso é prciso que você grave o registro na tabela através de um comando (DataModule.Tabela.Campo.Value := edit1.text, por exemplo), coisa que não é necessário se você usar um DBEdit, onde você só ajusta geralmente duas propriedades no Object Inspector (Data Source, que corresponde à tabela, e Data Field, que corresponde ao campo) e o resto já vem "embutido" no DBEdit é só você dar o comando pra gravar na tabela que ele mesmo já se encarrega do resto. E sobre o SQLConnection, eu nunca usei esse componente não.