
Limas
Membros-
Total de itens
16 -
Registro em
-
Última visita
Sobre Limas

Limas's Achievements
0
Reputação
-
Olá amigos que sempre nos ajudam, Eu estou com problemas na manipulação de imagens, estou utilizando o delpui 7, banco db paradox, eu preciso criar um diretório (C:Fotos) e dentro do diretório Fotos um Subdiretório para guardar cada grupo de fotos de imóveis (para a imobiliária) e depois quando necessário eu seleciono o caminho em um campo de um dbgrid e o sistema deveria abrir aquele diretório e me mostrar uma foto de cada vez. Conforme código abaixo eu já consigo criar os dois diretório e gravo a imagem e o path na tabela atual mas o path vem sempre no primeiro registro da tabela e não no registro (codgo) que estou editando, este é um problema, o outro é no onCellClick abrir outro formulário com as insformações do Path (caminho) das fotos e exibir uma de cada vez no AfterScroll ou em um CtrlGrid. procedure T_imovel.BitBtn3Click(Sender: TObject); var Origem, Destino, caminho: string; begin if not DirectoryExists('C:Fotos') then CreateDir('C:Fotos'); caminho := 'C:\Fotos\' + qim.FieldByName('CODIGO').AsString; if not DirectoryExists(caminho) then CreateDir(caminho); if OpenPictureDialog1.Execute then begin origem := OpenPictureDialog1.FileName; Delete (Origem, 1, Lenght(ExtractFilePath(OpenPictureDialog1.FileName))); Destino:=caminho + '\' + origem; CopyFile(PChar(Origem), Pchar(Destino), False); Tabimovel.Open; Tabimovel.Edit; Tabimovelcaminho.AsString:= Caminho; Tabimovel.Post; Image1.Picture.LoadFromFile(Tabimovelcaminho.value); end; end; Já pesquisei na internet e já tentei de várias formas mas não consegui, se alguém puder me ajudar desde já eu agradeço. Atenciosamente. Limas
-
Olá amigos, Estou com uma dificuldade para inserir na mesma linha do Memo um texto mais data (concatenar). Com o código abaixo ele gera o seguinte erro: Incompatible types: 'String' and 'Integer' Quando é o texto somente o sistema insere normalmente. procedure T_conscomprador.DBLookupComboBox2CloseUp(Sender: TObject); begin Editmemo.text:=TabmemoImovel.Text; DBMemo2.Lines.Add(Editmemo.text) + FormatDateTime('dd/mm/yyyy',now); end; Já tentei de várias formas mas não cosegui, se alguém puder me ajudar com este problema desde já eu agradeço. Atenciosamente. Valdir Lima
-
Olá amigos do Delphi, Estou precisando de uma ajuda de vocês, estou desenvolvendo um programa que deve buscar fotos em um diretório no HD e gravar o caminho (path) em um campo da Table que vai estar alimentando um DBGrid. Eu não sei como gravar este caminho e nem a forma que eu possa visualizar estas fotos posteriormente em um TImage. Vejam o início da minha procedure: procedure T_imovel.BitBtn2Click(Sender: TObject); var Origem, Destino, caminho: string; begin caminho := 'C:\Fotos\' + qim.FieldByName('CODIGO').AsString; if not DirectoryExists(caminho) then CreateDir(caminho); if OpenPictureDialog1.Execute then begin //Aqui pego o caminho inteiro inclusive com o nome do arquivo origem := OpenPictureDialog1.FileName; //Aqui pego somente o nome do arquivo com a extenção Delete(Origem, 1, Length(ExtractFilePath(OpenPictureDialog1.FileName))); Destino := caminho + '\' + origem; CopyFile(PChar(Origem), PChar(Destino), False); Tabimovel.Open; Tabimovel.Edit; Tabimovelcaminho.AsString:= Destino; Tabimovel.Post; end; end; Se puderem me ajudar desde já eu agradeço, Atenciosamente. Valdir Lima
-
Boa tarde amigos de Delphi, Gostaria de saber se o Delphi calcula Tan-¹, se sim alguém pode me ensinar como fazer esta fórmula? Desde já Agradeço, Atenciosamente. Valdir Lima
-
Obrigado pela Resposta, agora funcionou. Abraço. Valdir
-
Eu fiz uma rotina para calcular o Seno com resultado em Radiano mas o sistema retorna o seguinte erro:[Error] UCalculo.pas: Not enough actual parameters Function TFCALCULO.DegToRad( const Degrees : Extended ) : Extended; var float : single; begin float := Sin(DegToRad(30)); ShowMessage('Sine off 30 degrees = '+FloatToStr(float)); end; procedure TFCALCULO.BitBtn5Click(Sender: TObject); begin DegToRad; end; Se o pessoal que entende de Seno e Coseno puder me ajudar, Desde já eu agradeço. Valdir
-
Bom dia Jhonas, O erro que ainda está ocorrendo é que o programa não está conseguindo localizar o produto na tabela de produtos, eu fiz as tres etapas conforme você passou abaixo, o programa faz a leitura do código de barras e depois carrega no EditCodBarra e no evento OnClick do Button1 o sistema não consegue identificar o código do produto na tabela de produto. Talvez no evento OnClick esteja faltando informar o que está carregado no EditCodBarra para que o sistema possa buscar na tabela e carregar na tabela itens ou ainda algum problema com a geração do código de barra onde eu estou somando (+) ao número fixo '789827287' o número gerado pelo autoincrement que está resultando um número com 9 dígitos. Já tentei resolver de várias maneiras do tipo "OnKeyPress", "OnExit" do Edit e outros mas não deu certo. Um Abraço. Valdir Lima
-
Veja que voce esta usando o metodo OnKeyPress.... não deveria, pois o leitor funciona como se voce estivesse digitando cada numero do código, ou seja, o metodo será chamado uma vez para cada numero que o leitor está lendo. Esse código deveria estar no evento OnExit do Edit procedure TFvendas.EditCodBarraExit(Sender: TObject); begin try tbproduto.IndexDefs.Clear; tbproduto.IndexName := 'bycodbarra'; tbproduto.IndexDefs.Update; tbproduto.open; tbproduto.FindNearest([trim(EditCodbarra.Text)]); except on EDBEngineError do MessageDlg('Erro na busca! Tente novamente.', mtError, [mbOK], 0); end; begin if EditCodPed.Text='' then begin Showmessage('Escolha Nova Venda, para continuar'); abort; end; tbitem.insert; tbitem['codigo']:= tbproduto['codigo']; tbitem['nome']:= tbproduto['item']; tbitem['Qtd']:= 1; tbitem['vrunit']:= tbproduto['venda']; tbitem['data']:=DateTostr(now); tbitem.post; EditCodbarra.Clear; EditCodbarra.SetFocus; end; end; abraço Olá Jhonas, estamos aqui novamente. Ainda não consegui fazer o leitor de código de barras funcionar, ao passá-lo em uma barra, pode ser o primeiro registro ou outro qualquer, o programa lança sempre o "primeiro" e o "último" registro da minha tabela produto duas ou tres vezes para tabela itens. Talvez eu esteja fazendo confusão onde eu deva usar o evento EditCodBarraKeyDown que você citou na resposta do dia 11/09 e o evento EditCodBarraExit que está na resposta do dia 18/09, eu devo usar um dos dois ou os dois eventos em procedures diferentes? Segue abaixo o font que está gerando este erro. procedure TFvendas.EditCodBarraKeyPress(Sender: TObject; var Key: Char); begin try tbproduto.IndexDefs.Clear; tbproduto.IndexName := 'bycodbarra'; tbproduto.IndexDefs.Update; tbproduto.open; tbproduto.FindNearest([trim(EditCodbarra.Text)]); except on EDBEngineError do MessageDlg('Erro na busca! Tente novamente.', mtError, [mbOK], 0); end; begin if EditCodPed.Text=' then begin Showmessage('Escolha Nova Venda, para continuar'); abort; end; tbitem.insert; tbitem['codigo]:= tbproduto['codigo']; tbitem['nome']:= tbproduto['item']; tbitem['Qtd']:= 1; tbitem['vrunit']:= tbproduto['venda']; tbitem['data']:=DateTostr(now); tbitem.post; EditCodbarra.Clear; EditCodbarra.SetFocus; end; end; Um abraço. Valdir Lima
-
Bom dia Jhonas, Quero te agradecer por ter me ajudado até aqui mas eu continuo com problema para fazer a leitura, ao passar o leitor no código de barra o sistema passa para tbitem vários produtos e varias vezes ao invés de passar o produto do código de barra uma vez só. Eu acho que está faltando associar o produto na tbproduto para poder transferir este para tbitem. Se você puder me ajudar mais uma vez, eu te agradece muito. Segue abaixo o font do jeito que está no programa. procedure TFvendas.EditCodBarraKeyPress(Sender: TObject; var Key: Char); begin try tbproduto.IndexDefs.Clear; tbproduto.IndexName := 'bycodbarra'; tbproduto.IndexDefs.Update; tbproduto.open; tbproduto.FindNearest([trim(EditCodbarra.Text)]); except on EDBEngineError do MessageDlg('Erro na busca! Tente novamente.', mtError, [mbOK], 0); end; begin if EditCodPed.Text='' then begin Showmessage('Escolha Nova Venda, para continuar'); abort; end; tbitem.insert; tbitem['codigo']:= tbproduto['codigo']; tbitem['nome']:= tbproduto['item']; tbitem['Qtd']:= 1; tbitem['vrunit']:= tbproduto['venda']; tbitem['data']:=DateTostr(now); tbitem.post; EditCodbarra.Clear; EditCodbarra.SetFocus; end; end; Atenciosamente. Valdir Lima.
-
Olá Jhonas, Eu fiz a correção conforme sua orientação mas na hora de abrir o programa ele apresenta o seguinte erro: [Error] UVenda.pas(253): There is no overloaded version of 'Trim' that can be called with these arguments [Error] UVenda.pas(253): Incompatible types: 'Integer' and 'TCaption' Este erro aparece na linha abaixo: tbproduto.FindNearest(trim[EditCodbarra.Text]); Estou tentando resolver por aqui mas não estou conseguindo. Abraço. Valdir
-
Boa tarde pessoal, Meu programa não esta conseguindo ler o código de barras, gerei os códigos de barra tipo btCodeEAN13 do CJVBarcode desta forma: procedure Tfproduto.DBGrid1ColExit(Sender: TObject); begin if (DbGrid1.SelectedIndex=12) then begin tbproduto.edit; tbproduto['codbarra'] := '789827287' + tbproduto['codigo']; tbproduto.post; end; end; O delphi (banco paradox) grava na tabela o código sem o digito identificador mas imprime a etiqueta com o identificador, o que pode estar errado, o sistema pode identificar no banco um código sem o digito identificador? Para a leitura do código eu escrevi o font abaixo que também pode estar errado pois o leitor traz sempre o primeiro registro. procedure TFvendas.EditCodBarraKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin try tbproduto.Open; tbproduto.IndexFieldNames := 'codbarra'; tbproduto.Editkey; tbproduto.FindNearest([EditCodbarra.Text]); tbproduto.Refresh; except on EDBEngineError do MessageDlg('Erro na busca! Tente novamente.', mtError, [mbOK], 0); end; begin if EditCodPed.Text='' then begin Showmessage('Escolha Nova Venda, para continuar'); abort; end; tbitem.insert; tbitem['codigo']:= tbproduto['codigo']; tbitem['nome']:= tbproduto['item']; tbitem['Qtd']:= 1; tbitem['vrunit']:= tbproduto['venda']; tbitem['data']:=DateTostr(now); tbitem.post; EditCodbarra.Clear; EditCodbarra.SetFocus; end; end; end; Se os colegas puderem me ajudar eu agradeço antecipadamente. Abraço. Valdir Lima
-
Voce vai achar o componente e exemplos no primeiro endereço http://www.tec-it.com/en/download/tbarcode...s/Download.aspx http://www.brothersoft.com/tbarcode-for-delphi-9346.html http://www.softpedia.com/progDownload/TBar...load-82123.html http://superdownloads.uol.com.br/download/...barcode-delphi/ abraço Ok!!!! Muito obrigado pela dica, Um abraço. Valdir
-
Bom dia a todos, Estou desenvolvendo um programa que deve gerar e ler código de barra, e neste programa eu escrevi o código abaixo mas falta o componente TBarCode, como faço para instalar este componente e de acordo com o código como eu devo fazer para iniciar a geração de códigos de barra? Aos que puderem me ajudar desde já eu agradeço. Att. Valdir Lima procedure Tfproduto.SpeedButton9Click(Sender: TObject); Var I:Integer; begin BOK:=InputQuery ('Etiquetas', 'Digite o nº de etiquetas a ser impressa',st); if BOK then begin I:=0; BarCode1.Digits:='789827287' + tbproduto['codbarra']; tbcodbarra.close; tbcodbarra.emptytable; tbcodbarra.open; While I < StrToInt(st) do Begin tbcodbarra.Insert; tbcodbarra['Codigo']:=tbproduto['codigo']; fcodbarra.LProduto.Caption:=tbproduto['nome']; fcodbarra.LIngrediente.Caption:=tbproduto['marca']; I:=I + 1; end; BarCode1.BarcodeCopy; fcodbarra.QRImage1.Picture.Assign (ClipBoard); //FormEtiqueta.LData.Caption := MaskEdit1.Text; // FormEtiqueta.LPeso.Caption := EditPeso.Text; // FormEtiqueta.LMS.Caption := Edit1.Text; fcodbarra.Preview; clipboard.clear; end;
-
Valeu Daniel, obrigado pela dica, problema resolvido. Abraços. Valdir
-
Boa tarde a todos, Estou instalando um programa em uma rede pequena com um servidor e dois cliente, no servidor eu configurei como Z:\MELISSA\Delphi Solutions\Banco de dados onde MELISSA é o nome da maquina servidor, Delphi Solutions é a pasta dentro do Drive C e Banco de dados é a pasta com o .exe, e no NET DIR dos usuários eu coloquei \\MELISSA\Delphi Solutions\Banco de dados. Todas as máquina tem o BDE instalado mas os dados são atualizados cada um no banco local e não no servidor, o que tem de diferente é que no servidor já tem um outro programa em Delphi usando o DBASE e no INIT DO BDE o Default Drive está setado para o DBASE. O que está errado, o que devo fazer para que os dados sejam atualizados no Servidor? Aos que puderem me ajudar desde já eu agradeço. Valdi Lima.