
Arlon
Membros-
Total de itens
371 -
Registro em
-
Última visita
Tudo que Arlon postou
-
Lilia, já passei por isso e acho que entendi o que você quer. O problema é que quando você usa a query e depois seleciona alguma linha no dbgrid o ponteiro da tabela não anda junto, uma vez que você não está visualizando a tabela, mas sim o resultado da query, não é isso? Bem, pra resolver esse problema você deve "apontar" o ponteiro da tabela para o registro que está sendo visualizado no db grid que exibe o resultado da query, faça o seguinte: antes de colocar o comando de editar o registro coloque o código abaixo: DataModule.Tabela.FindNearest([DataModule.QueryCampoDaBusca.FieldByName('CampoDaBusca').AsString]); Entendeu??
-
Dê uma olhada aqui: http://scriptbrasil.com.br/forum/index.php...&hl=centralizar Aí galera, vamos usar mais a ferramenta de busca do fórum, eu fui lá e digitei "centralizar", pimba, o resultado veio logo de cara, o primeiro tópico.
-
Por acaso você está usando Delphi? Caso esteja, creio que isso te ajude: O campo NOME deverá ser chave primária. Este código foi usado em banco paradox, não sei se vai dar certo em SQL Server, caso você o esteja usando. procedure TFrmCliente.MaskEdit1Exit(Sender: TObject); Var Nome : String; Begin DM.TBClientes.Cancel; if (trim(MaskEdit1.text) <> '') then begin Nome := MaskEdit1.text; if DM.TBClientes.FindKey([Nome]) then begin Label1.caption := 'Nome Encontrado.'; end else begin Label1.Caption := 'Nome não encontrado.'; DM.TBClientes.Append; end; end; end; end;
-
Aí, caso queira, poste seu e-mail que eu te mando um exemplo com código fonte comentado em Delphi 6.
-
você tem que colocar o banco de dados em uma pasta qualquer e apontar o BDE pra essa pasta. Uma dica: não sei se vai acontcer com vc, mas quando eu copio a pasta do banco de dados pra colocar em um outro computador ele gera dois arquivos: PARADOX.LCK e PDOXUSRS.LCK, esses dois arquivos impedem que você inicialize o programa. Dê uma olhada na pasta em que você colocou o banco e delete esses dois arquivos caso eles existam lá.
-
Eu usei o código do MGrasser e o Delphi me retornou um milhão de erros... deixa pra lá, mas valeu mesmo assim pela ajuda cara, essa é a intenção do fórum. estou usando Delphi 6, mas nem sei se tem alguma coisa a ver. Peguei um componente maluco aqui, um tal de MapiControl, ele utiliza a conta padrão do outlook pra mandar o e-mail (nem sei se essa bagaça funciona, vou testar só sábado), se funcionar eu dou uma resposta aqui pra vocês. Valeu a ajuda ae galera, até mais.
-
Tá bom MGrasser, vou testar então e depois respondo se deu certo. você sabe como anexar um arquivo no outlook express via código pelo Delphi?
-
O erro que dá é esse aqui: "554 Error: No valid recipients." Só que eu mando pra um e-mail que realmente existe, daí mais um motivo de eu não entender o motivo do erro. ----editado aqui---- Bem, e pra não perder tempo com um erro eu vou buscando outras soluções também. Peguei um código que abre o outlook express pelo delphi e manda o e-mail pro endereço que você definir, mas alguém sabe se existe alguma forma de anexar o arquivo no outlook express através de um código em delphi?? A função que estou usando é a seguinte: ShellExecute(Handle,'open',PChar('mailto:' + edit1.text),'','',SW_SHOW); quero definir no código o arquivo a ser anexado, é possível isso? Eu já tentei: ShellExecute(Handle,'open',PChar('mailto:' + combobox1.text),'',Pchar('C:\caminho_do_arquivo),SW_SHOW); mas não deu certo dessa forma e nem colocando #0 depois do caminho.
-
Aí pessoal, eu fiz uma aplicação que manda pedidos de produtos por e-mail, mas estou com um pequeno grande problemão: ele só envia de um provedor pra ele mesmo, ou seja, se eu colocar um smtp e user do Terra ele só manda e-mail pra assinantes do Terra, se eu ponho smtp e user do Click21 ele só manda pra e-mails do Click21. O código do botão enviar está listado abaixo: nmsmtp1.Port := 25; nmsmtp1.Host := DM.TBEmailHost.Value; nmsmtp1.UserId := DM.TBEmailLogin.Value; nmsmtp1.PostMessage.FromAddress := DM.TBEmailRemetente.Value; nmsmtp1.PostMessage.ToAddress.Add(ComboBox1.Text); nmsmtp1.PostMessage.subject := edit6.Text; nmsmtp1.postmessage.fromname := DM.TBEmailNome.Value; if trim(edit8.Text) <> '' then begin nmsmtp1.postmessage.attachments.add(edit8.Text); end; nmsmtp1.PostMessage.Body.Assign(memo1.lines); nmsmtp1.Connect; nmsmtp1.SendMail; nmsmtp1.Disconnect; Alguém sabe o que pode estar acontecendo? E se algum de vocês tiver uma rotina ou um exemplo pronto que funcione sem dar esse problema que está acontecendo comigo será que daria pra me enviar, por favor. Obrigado.
-
Dê uma olhada nesse tópico aqui, tem o que você tá querendo: http://scriptbrasil.com.br/forum/index.php...rograma+em+rede
-
Huuuuum, comandos sobre hardware né?? Comandos sobre o mouse: Comandos sobre mouse. //Comando para posicionar o mouse SetMousePos(x,y): //Comando para fazer ações com o mouse mouse_event(Comando,0,0,0,0); //Coamndos dos botões MOUSEEVENTF_LEFTDOWN //-->preciona o botão esquerdo MOUSEEVENTF_LEFTUP //--> larga o botão esquerdo MOUSEEVENTF_RIGHTDOWN //-->preciona o botão direito MOUSEEVENTF_RIGHTUP //--> larga o botão direito MOUSEEVENTF_MIDDLEDOWN //--> preciona o botão do meio MOUSEEVENTF_MIDDLEUP //--> larga o botão do meio MOUSEEVENTF_WHEEL {--> Activa o WHELL (Não verificada se funciona)} {Fazendo movimentos com o mouse} procedure genmouse; begin setmousepos(20,50); mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); end; {para fazer dois cliques utiliza-se duas vezes aos comandos de um clique, ou seja: primeiro clique} mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); //Segundo clique} mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); Comandos sobre o nosso querido, amado e adorado Windows (não estou de deboche hein!!): Finalizando o Windows Via Programação procedure TForm1.ButtonClick(Sender: TObject); begin {Reinicia o windows} ExitWindowsEx(EWX_REBOOT,0); end; procedure TForm1.Button1Click(Sender: TObject); begin {Desliga o windows} ExitWindowsEx(EWX_SHUTDOWN,0); end; procedure TForm1.Button1Click(Sender: TObject); begin {Força todos os programas a desligarem-se} ExitWindowsEx(EWX_FORCE,0); end; Outros códigos procure nos sites da nossa sessão de links: ClubeDelphi, PlanetaDelphi e ActiveDelphi (os principais).
-
Já deu uma passadinha na página de downloads relativos a Kylix do site da Borland?? http://www.borland.com/products/downloads/...load_kylix.html
-
O botoinfo abriu um tópico com isso e achei legal se fosse postado aqui também. JPEG no banco de dados uses Windows,Clipbrd , jpeg,Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, DBCtrls, Grids, DBGrids, ExtDlgs, StdCtrls, Buttons, ExtCtrls, OleServer, Word97; type TForm1 = class(TForm) OpenPictureDialog1: TOpenPictureDialog; DBGrid1: TDBGrid; Table1: TTable; DataSource1: TDataSource; Table1Imagem: TBlobField; Button2: TButton; Button3: TButton; DBImage1: TDBImage; Button4: TButton; procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure DBImage1Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Button3Click(Sender: TObject); begin table1.delete; end; procedure TForm1.Button2Click(Sender: TObject); begin table1.Edit; table1.post; table1.Append; end; procedure TForm1.DBImage1Click(Sender: TObject); var jpg : TJPegImage; begin if OpenPictureDialog1.Execute then begin jpg := TJpegImage.Create; jpg.LoadFromFile(OpenPictureDialog1.FileName); clipboard.Assign(jpg); DBImage1.PasteFromClipboard; jpg.Free; end; end; procedure TForm1.Button4Click(Sender: TObject); begin close; end; end. // colocar JPEG e Clipbrd na USES. Qualquer coisa, se não der certo briguem com ele e não comigo, tá!!?? He, he, brincadeirinha!!
-
Dê uma produrada no Super Downloads ou no Google que deve ter.
-
É, isso é estranho, eu sempre uso Paradox (que, diga-se de passagem, é o único banco que eu sei usar!!) e sempre que vou gravar registro uso append e depois post. Isso que ela tá relatando nunca aconteceu comigo... ainda bem né.
-
É, bem estranho mesmo!! Eu nunca usei commitUpdate e nem applyUpDates (não ei nem pra quê que isso serve!!), mas sempre que vou adicionar um registro e gravar eu utilizo o que o Corposemalma falou: Tabela.Append; // cria um novo registro Tabela.Post; // salva o registro criado.
-
Olá Viviane, Infelizmente não posso te ajudar pois nunca utilizei nada relativo a códigos de barras em meus aplicativos, mas aconselho que descreva melhor sua dúvida para que possa haver um interesse maior por parte dos participantes do fórum em ajudá-la.
-
Erro Access Violation Rlink32.dll
pergunta respondeu ao Cristiano Conceição de Arlon em Delphi, Kylix
Eu não sei o significado desse erro, mas vou te dar uma dica: sempre que der um erro desse, meio fora do normal, vai no google e faça uma busca avançada por frase exata e digita a mensagem de erro que aparece no Delphi. A maior parte dos dites está em inglês, mas o google tem a opção de tradução do mesmo, o que acaba facilitando um pouco nosso trabalho. -
Então tanto no caso dele quanto no meu, o problema não seria do programa e sim do provedor e/ou da conexão?
-
Mas o que eu não consigo entender é porquê os dados somem da tabela, porquê eles estão sendo apagados.
-
Olha esse código que eu uso no OnDblClick (on duplo clique) do DBGrid: procedure TFrmClientes.DBGrid1DblClick(Sender: TObject); DM.TBClientes.Edit; frmcliente.ShowModal; Nada demais, apenas ponho a tabela em modo de edição e chamo o formulário que possui os campos setados como o Program-amador falou. Quando você põe a tabela em modo de edição não é necessário chamar os valores que estão na tabela da forma como você faz: É só colocar a tabela em edição.
-
Eu também estou tendo algumas dificuldades em enviar e-mail com esse componente. Não sei se o problema é da conexão, do programa, ou de alguma outra coisa. Pra utilizar uma conta do UOL pra enviar o e-mail você precisa estar autenticado lá no UOL, e como você já está se conectando através do componente NMPOP3 e o BOL pertence ao UOL, presumo que realmente necessite dessa autenticação. Quanto ao erro que me retorna é o seguinte: 503 - RCPT first (#5.51), se eu não me engano é isso. Eu pesquisei e vi que esse erro é do SMTP do servidor de e-mail. Mas aí fica a pergunta: esses erros estão acontecendo devido à falhas no sistema que nós criamos, ou é algum problema na hora do envio através do SMTP do servidor de e-mail?? O código que eu estou usando é esse aqui: procedure TFrmEnvioPedido.BtnEnviarClick(Sender: TObject); begin nmsmtp1.Port := 25; nmsmtp1.Host := 'smtp.meuhost.com.br'; nmsmtp1.UserId := 'meulogin'; nmsmtp1.PostMessage.FromAddress := 'alguém@algumacoisa.com.br; nmsmtp1.PostMessage.ToAddress.Add(ComboBox1.Text); nmsmtp1.PostMessage.subject := edit6.Text; nmsmtp1.postmessage.fromname := 'meunome'; if trim(edit8.Text) <> '' then begin nmsmtp1.postmessage.attachments.add(edit8.Text); end; nmsmtp1.PostMessage.Body.Assign(memo1.lines); nmsmtp1.Connect; nmsmtp1.SendMail; nmsmtp1.Disconnect; Às vezes eu consigo enviar, outras vezes não.
-
Quando eu preciso imprimir notas fiscais, uso o componente RichEdit, mas já que você já tem os formulários pré-impressos terá que modelar o recibo ao modelo que já está na folha em que ele será impresso. Quais seriam suas dúvidas? Pegar os dados informados em um determinado formulário e colocá-los no relatório? Pra gerar relatórios eu sempre utilizo o QuickRep e nunca testei nenhum outro, daí nem posso te dizer se existe um melhor pra esse tipo de relatório que você quer fazer.
-
Em relação ao primeiro problema, o que aconteceu, você perdeu todos os dados que haviam sido registrados no banco. Outra coisa, você quer uma forma de abrir e fechar as tabelas apenas quando for usá-las? Em relação à impressora, não sei como ajudá-la.