
Eder
Membros-
Total de itens
1.002 -
Registro em
-
Última visita
Tudo que Eder postou
-
Colegas....beleza?? Bom...infelizmente pra mim/empresa fica difícil adquirir uma versão mais recente, devido ao auto custo que o Delphi representa pra empresa onde trabalho. Como vocês devem ter percebido não tenho grande experiência em programação, apenas crio aplicativos que ajudam no gerenciamento de informações na empresa, portanto não crio aplicativos fora desta empresa. Sei que pra mim a versão que já me agradaria trabalhar é com o Delphi 5 que possui grandes funcionalidades, uma delas seria esta que estou procurando(D5)...... Tentei um tempo atraz tentar ver o preço de uma Licença de Uso do D5, derepente de alguém que ta migrande pra outra versão e quer vender ou algo parecido, mas não obtive êxito. Sei que estou limitado a avançar, mas é o que a empresa tem a disposição pra mim trabalhar..... As vezes tenho que buscar componentes free pra tentar contornar uma determinada situação....no caso estes dias tive que aprender a usar o FreeReport, mas as vezes não encontro e fico a ver navios. quanto ao TWebBrowser procurei algo semelhante na paleta Indy, e não achei nada. Infelizmente mais uma vez vou ficar sem implementar o esqueminha do Mapa Geoogle Eart. Bom pessoal é isto ai. Um Bom Dia de Trabalho a todos. Abraço :)
-
R.: a paleta tem mas este componente WebBrowser não tem não. R.: cara tem um monte achei um tal de IdHTTP1 mas não sei o seu funcionamento... :unsure: :wacko:
-
Resumindo: Dica do Jonas: procedure TForm1.Button2Click(Sender: TObject); var S: string; begin S := EditEndereco.text; while Pos('+', S) > 0 do S[Pos('+', S)] := ' '; EditEndereco.Text := S; end; R.: beleza.. Dica do Micheus: Função:function StringReplace(S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string; var Idx, Offset :Integer; S_Case, OldPattern_Case: string; begin if rfIgnoreCase in Flags then begin S_Case := UpperCase(S); OldPattern_Case := UpperCase(OldPattern); end else begin S_Case := S; OldPattern_Case := OldPattern; end; Idx := Pos(OldPattern_Case, S_Case); Offset := Idx; if Idx > 0 then repeat Delete(S, Offset, Length(OldPattern)); Insert(NewPattern, S, Offset); Delete(S_Case, 1, Idx); Idx := Pos(OldPattern_Case, S_Case); Offset := Offset +Length(NewPattern)+ Idx -1; until not(rfReplaceAll in Flags) or ((Idx = 0) and (rfReplaceAll in Flags)); Result := S; end; (+)mais Codigo do botão: procedure TForm1.Button3Click(Sender: TObject); var S: string; begin S := EditEndereco.text; S := StringReplace(S, '+', ' ', [rfReplaceAll]); EditEndereco.text:=S; end; R.: beleza...também Dicas testadas usando Delphi 4 valeu..Pessoal testei as duas e realmente ambas funcionam muito bem. muito Obrigado a todos Abraço :)
-
Oba..Micheus. é esta aqui né: function StringReplace(S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string; var Idx, Offset :Integer; S_Case, OldPattern_Case: string; begin if rfIgnoreCase in Flags then begin S_Case := UpperCase(S); OldPattern_Case := UpperCase(OldPattern); end else begin S_Case := S; OldPattern_Case := OldPattern; end; Idx := Pos(OldPattern_Case, S_Case); Offset := Idx; if Idx > 0 then repeat Delete(S, Offset, Length(OldPattern)); Insert(NewPattern, S, Offset); Delete(S_Case, 1, Idx); Idx := Pos(OldPattern_Case, S_Case); Offset := Offset +Length(NewPattern)+ Idx -1; until not(rfReplaceAll in Flags) or ((Idx = 0) and (rfReplaceAll in Flags)); Result := S; end; Porem não compreendi ela.....por isto não sei por onde começar.... :blush:
-
amigo.....só pra completar a ideia do JOnas... Eu faço assim e funciona legal: Insira no form: QRCompositeReport1.Reports.Add(QuickRep1); // contas a receber QRCompositeReport1.Reports.Add(QuickRep2); // contas a pagar No Botão de imprimir ao invés de form2.quickrep1.preview coloque assim: procedure TForm1.Button1Click(Sender: TObject); begin form2.Query1.Active:=true; form2.Query2.Active:=true; FORM2.QRCompositeReport1.Prepare; FORM2.QRCompositeReport1.Preview; end; Espero que te ajude... valeu :D
-
Ola Tenho este conteudo em um edit: eu gostaria de saber como faço um codigo que retira este sinal de mais(+) deixando assim: Grato
-
R.: oba...JOnas beleza? carinha neste linck tem um exemplo que parece muito bom.... mas eu não to achando este componente pra montar o exemplo: WebBrowser1.Navigate o exemplo é com D7 e o meu é D4 será que não tem este componente no D4?? bom se não tiver...será que não da pra usar com a Suiti Indy??? Grato
-
Ola..Churc e TicoO bom.......neste caso parece que nosso colega Tico0 manja da siatuação.... Tico....como expliquei acima... eu queria colocar um botão no meu form de cadastro de cliente que tem endereco, cidade etc...e ai um codigo que linckaria ao mapa de localização do cliente...via Google Eart. você saberia me instruir se daria pra fazer este processo? enquanto isto vou dar uma olhada no linck do nosso colega Churc Grato
-
Ola..pessoal eu vi num programa web que aparece o cadastro do clientes...e ao lado tem um linck chamado VER MAPA e ai clickar aparece o mapa aonde esta o cliente via Google Earth achei muito legal. Pergunta: No delphi da pra fazer algo parecido?? pelo que notei no programa web ele faz uma associação do campo endereco com cidade....e ai manda o mapa na tela...acho que é isto.. achei muito legal colocar num cadastro de cliente..... alguém sabe algo parecido.? Grato
-
Ok..amigo vou tentar então...valeu a dica..t+
-
Eder, não falta nada, aliás nem precisa das duas units que você acrescentou. O que ocorre é que você utilizou QRPrint ao invés de QRPrinter. Pode alterar que o relatório será lido perfeitamente em "widescreen" (landscape) mas..já estava assim.......eu mudei pra tentar algo. O estranho é que só não salva correto....já verifiquei a configuração do preview e esta para landscape...tanto que fiz um teste conforme abaixo...coloquei um: Form3.quickrep1.preview; e visualizou direitinho....mas quando troque este comando por este: Form3.QuickRep1.Printer.Save('C:\DADOS\'+FORM1.LANO.Caption+'\REL\'+Arq_Qrp); ai o arquivo salvo sai muito feio......horrivel todo esticado... não sei mas o que pensar.....hehehe se tiver mais alguma dica...manda ver.. grato
-
Ola.. tenho uma maquina AMD_850 mhz....e agora ao ligar não aparece nada...ela não bipa em fim....ta ligada mas não aparece nada no monitor.... tentei entrar pelo setup...mas nem o setup aparece... nem a tela preta da inicialização com as configurações do setup...em fim parece estar morta...mas não ta pois a fonte esta ligada, o Cooller também esta ligado.. O que pode ser?? Grato
-
Ola.....testando melhor acabei descobrindo que só acontecia com um relatorio.....acredito que seja por causa deste codigo que gera automaticamente e cria arquivos *.qrp a cada cliente gerado.... Form3.QuickRep1.Printer.Save('C:\DADOS\'+FORM1.LANO.Caption+'\REL\'+Arq_Qrp); ai tentei usar este comando conforme instrução de nosso colega Micheus....porem ele não compila o programa da erro: Form3.QuickRep1.QRPrint.Save('C:\DADOS\'+FORM1.LANO.Caption+'\REL\'+Arq_Qrp); erro: [Error] UnitMClientes.pas(297): Undeclared identifier: 'QrPrint' acrescentei na uses: QRPrntr, printers; mas o erro persiste.... o que falta será?? Grato
-
Oba....Micheus..Bdia! Carinha.. Deu certinho.. :) muito Grato pela ajuda...não iria conseguir resolver... alias...eu nem sabia que dava pra colocar uma procedore dentro de outro....a programação....é muito show... valeu Abraço e Ótima Semana de Trabalho ;)
-
R.: sim é nesta linha mesmo..já havia reparado... ai é que ta não to conseguindo lidar com a função abaixo: {..Função pra Enviar email usando Outlook Express..} function SendEMail(Handle: THandle; Mail: TStrings): Cardinal; type TAttachAccessArray = array [0..0] of TMapiFileDesc; PAttachAccessArray = ^TAttachAccessArray; var MapiMessage: TMapiMessage; Receip: TMapiRecipDesc; Attachments: PAttachAccessArray; AttachCount: Integer; i1: integer; FileName: string; dwRet: Cardinal; MAPI_Session: Cardinal; WndList: Pointer; begin dwRet := MapiLogon(Handle, PChar(''), PChar(''), MAPI_LOGON_UI or MAPI_NEW_SESSION, 0, @MAPI_Session); if (dwRet <> SUCCESS_SUCCESS) then begin MessageBox(Handle, PChar('Error while trying to send email'), PChar('Error'), MB_ICONERROR or MB_OK); end else begin FillChar(MapiMessage, SizeOf(MapiMessage), #0); Attachments := nil; FillChar(Receip, SizeOf(Receip), #0); if Mail.Values['to'] <> '' then begin Receip.ulReserved := 0; Receip.ulRecipClass := MAPI_TO; Receip.lpszName := StrNew(PChar(Mail.Values['to'])); Receip.lpszAddress := StrNew(PChar('SMTP:' +Mail.Values['to'])); Receip.ulEIDSize := 0; MapiMessage.nRecipCount := 1; MapiMessage.lpRecips := @Receip; end; AttachCount := 0; for i1 := 0 to MaxInt do begin If Mail.Values['attachment' + IntToStr(i1)] = '' then break; Inc(AttachCount); end; if AttachCount > 0 then begin GetMem(Attachments, SizeOf(TMapiFileDesc) *AttachCount); for i1 := 0 to AttachCount - 1 do begin FileName := Mail.Values['attachment' +IntToStr(i1)]; Attachments[i1].ulReserved := 0; Attachments[i1].flFlags := 0; Attachments[i1].nPosition := ULONG($FFFFFFFF); Attachments[i1].lpszPathName := StrNew(PChar(FileName)); Attachments[i1].lpszFileName := StrNew(PChar(ExtractFileName(FileName))); Attachments[i1].lpFileType := nil; end; MapiMessage.nFileCount := AttachCount; MapiMessage.lpFiles := @Attachments^; end; if Mail.Values['subject'] <> '' then MapiMessage.lpszSubject := StrNew(PChar(Mail.Values['subject'])); if Mail.Values['body'] <> '' then MapiMessage.lpszNoteText := StrNew(PChar(Mail.Values['body'])); WndList := DisableTaskWindows(0); try Result := MapiSendMail(MAPI_Session, Handle, MapiMessage, MAPI_DIALOG, 0); finally EnableTaskWindows( WndList ); end; for i1 := 0 to AttachCount - 1 do begin StrDispose(Attachments[i1].lpszPathName); StrDispose(Attachments[i1].lpszFileName); end; if Assigned(MapiMessage.lpszSubject) then StrDispose(MapiMessage.lpszSubject); if Assigned(MapiMessage.lpszNoteText) then StrDispose(MapiMessage.lpszNoteText); if Assigned(Receip.lpszAddress) then StrDispose(Receip.lpszAddress); if Assigned(Receip.lpszName) then StrDispose(Receip.lpszName); MapiLogOff(MAPI_Session, Handle, 0, 0); end; end; De momento até achar uma solução fiz uma tremenda gambiarra com if FileExists para fazer funcionar...mas o codigo ficou horrivel mas funciona... :blush: Se tiver alguma ideia pra simplificar o codigo por favor Grato
-
Ola.. Pessoal...já tou algum tempo pra resolver este problema e não to conseguindo... seguinte. tem varios arquivos na pasta chamado JPG e caso estes arquivos estejam lá, gostaria de anexa-los ao email usando a função Mapi codigo que estou encrencado é este: If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'S1.jpg') then BEGIN mail.values['attachment0'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'S1.JPG'; END; If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'S2.jpg') then BEGIN mail.values['attachment1'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'S2.JPG'; END; If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'E1.jpg') then BEGIN mail.values['attachment2'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'E1.JPG'; END; If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'E2.jpg') then BEGIN mail.values['attachment3'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'E2.JPG'; END; If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'SE1.jpg') then BEGIN mail.values['attachment4'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'SE1.JPG'; END; If FileExists (ExtractFilePath(Application.ExeName)+ '\jpg\' + edit5.text + 'SE2.jpg') then BEGIN mail.values['attachment5'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'SE2.JPG'; END; mail.values['attachment6'] := (ExtractFilePath(Application.ExeName))+'\jpg\genera.jpg'; mail.values['attachment7'] := (ExtractFilePath(Application.ExeName))+'\pdf\'+ComboRp.TEXT + '.PDF'; Notem que ele verifica se o arquivo existe e depois anexa ao email....ele funciona certinho se tiver todos este arquivos nas pastas, porem se algum deles falta ele para de anexar só anexando um antes do arquivo faltando... Eu precisaria que independente dos arquivos solicitantes existirem ou não ....ele anexaria os existentes........ é possivel arrumar este codigo??? também coloquei assim...mas ele acontece a mesma coisa: mail.values['attachment0'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'S1.JPG'; mail.values['attachment1'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'S2.JPG'; mail.values['attachment2'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'E1.JPG'; mail.values['attachment3'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'E2.JPG'; mail.values['attachment4'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'SE1.JPG'; mail.values['attachment5'] := (ExtractFilePath(Application.ExeName))+'\jpg\'+ EDIT5.TEXT + 'SE2.JPG'; mail.values['attachment6'] := (ExtractFilePath(Application.ExeName))+'\jpg\genera.jpg'; mail.values['attachment7'] := (ExtractFilePath(Application.ExeName))+'\pdf\'+ComboRp.TEXT Grato
-
Opa...valeu..Jonas beleza.. muito Grato Abraço...t+ :D
-
Ola..JOnas. Carinha...na hora do preview aparece certinho e imprimi certinho.... eu me refiro ao seguinte.... quando eu uso este comando pra salvar no disco pra mais tarde caso necessario eu visualize de novo: Form3.Quickrep1.Prepare; Form3.QuickRep1.Printer.Save('C:\DADOS\'+FORM1.LANO.Caption+'\REL\'+Arq_Qrp); note que este codigo vai salvar um *.qrp então é aqui que eu me refiro.......quando eu precisar visualizar este arquivo...eu precisarei usar um aplicativo pra visualizar *.qrp..certo? então ai eu tenho dois.....aplicativos..e quando uso qualquer um dos dois...o preview sai na Vertical e não na horizontal......e se eu mandar imprimir no papel também sai assim na vertical..mas quando salvei atraves daquele codigo lá em cima...ele esta certinho na horizontal(pois já configura o quickrep1.page.orientation:=poLandscape) o que acha?? grato
-
(Resolvido) Como montar um IF com data
pergunta respondeu ao Eder de Eder em Ajax, JavaScript, XML, DOM
opa....beleza Fernando agora peguei o esqueminha....rs. Achei que era igual ao Delphi...... mas quase chei lá faleu..carinha muito grato pela ajuda. abraço :D -
(Resolvido) Como montar um IF com data
pergunta respondeu ao Eder de Eder em Ajax, JavaScript, XML, DOM
Opa....Fernando..este seu código sim funcionou certinho. valeu. Mas...aquele meu código porque não funciona??? Saberia me explicar?? fiquei curioso.... muito Grato -
Ola... Estou usando dois visualizadores, mas tenho problemas em todos os dois na questão de visualizar um relatorio feito na horizontal. Ou seja, Depois de salvo se eu abrir em um dos visualizadores ele mostra na vertical.......fazendo com que ele fique muito expremido...horrível.. Teria alguma solução pra quando eu abrir o mesmo ele abrir corretamente? Grato
-
(Resolvido) Como montar um IF com data
pergunta respondeu ao Eder de Eder em Ajax, JavaScript, XML, DOM
Oba..Fernando carinha deu certo, mas o IF não funciona direito ele ta pegando o nome MARIA deveria pegar PEDRO, pois hoje é dia 23/01/2008 Por favor veja o código abaixo: <script language="JavaScript"> vData = new Date(); vMostrar = vData.getDate() + '/' + vData.getMonth()+1 + '/' + vData.getFullYear(); document.write(vMostrar); if(vMostrar = "07/01/2008") { document.write(" MARIA"); } else if(vMostrar = "12/01/2008") { document.write(" JOAO"); } else if(vMostrar = "23/01/2008") { document.write(" PEDRO"); } </script Grato -
Oba...entendido. falou abraço :)
-
Ola... Não sei muita coisa do assunto, por isto pergunto aos colegas. como faço um if com data mostrando tipo o aniversariante do dia?? montei assim: <script language="JavaScript"> data = new Date(); document.write(data); if(data = 07/01/2008) { document.write(" maria"); } else if(data = 12/01/2008) { document.write(" joao"); } else if(data = 23/01/2008) { document.write(" pedro"); } </script> mas o resultado sai assim no preview da pagina: O que esta errado?? Grato
-
Ola... alguém poderia me ajudar e dizer porque o try except não funciona neste caso: procedure TForm1.XiButton1Click(Sender: TObject); begin TRY CopyFile('c:\teste\carro.exe','c:\casa\carro.exe',false); EXCEPT SHOWMESSAGE('Erro arquivo não existe!!'); end; END; no caso acima nem a pasta e nem os arquivos existentes na maquina, portanto ele deveria mandar a mensagem pro usuario, mas não manda nada acontece. Grato