Ir para conteúdo
  • Cadastre-se

Marcelo Bill

Membros
  • Total de ítens

    411
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Marcelo Bill postou

  1. Oia eu mais uma vez Esquece tudo ACBrDownload Funciona perfeitamente, acho que foi apenas uma confusão no preenchimento das propriedades. Vou deixar claro aqui procedure TFormulario.acao_Baixar_SchemasExecute(Sender: TObject); Try With Baixar do begin Protocolo :=protHTTP; DownloadDest :='c:\pasta_para_destino_do_arquivo_que será_baixado'; DownloadNomeArq :='nome_do_arquivo_no_site.rar'; DownloadUrl :='https://www.dominio.com.br/pasta/subpasta/nome_do_arquivo_no_site.rar'; StartDownload; end; Except on E:Exception do Begin Showmessage('Erro '+e.Message); Exit; End; end; Controle de Progresso (BytesDownloaded deve ser uma variavel Integer Global) procedure TFormulario.BaixarHookMonitor(Sender: TObject; const BytesToDownload, BytesDownloaded: Integer; const AverageSpeed: Double; const Hour, Min, Sec: Word); var sConnectionInfo: string; begin pb.Position := BytesDownloaded; sConnectionInfo := sConnectionInfo + ' - ' + Format('%.2d:%.2d:%.2d', [Sec div 3600, (Sec div 60) mod 60, Sec mod 60]); sConnectionInfo := FormatFloat('0.00 KB/s' , AverageSpeed) + sConnectionInfo; sConnectionInfo := FormatFloat('###,###,##0', BytesDownloaded / 1024) + ' / ' + FormatFloat('###,###,##0', BytesToDownload / 1024) +' KB - ' + sConnectionInfo; lbStatus.Caption := sConnectionInfo; end; procedure TFormulario.BaixarHookStatus(Sender: TObject; Reason: THookSocketReason; const BytesToDownload, BytesDownloaded: Integer); begin case Reason of HR_Connect : begin Pb.Position := 0; end; HR_ReadCount : begin Pb.Max := BytesToDownload; Pb.Position := BytesDownloaded; end; HR_SocketClose : begin case Baixar.DownloadStatus of stStop : begin Pb.Position := 0; lbStatus.Caption := 'Download Encerrado...'; end; stPause : lbStatus.Caption := 'Download Pausado...'; stDownload : Begin lbStatus.Caption := 'Download Finalizado com Sucesso'; Pb.Position := 0; Pb.Max :=0; end; end; end; end; end; A realidade é que a descrição das propriedades não trazem a informação adequada, em DownloadURL eu estava entendendo que deveria ser informado apenas a URL, afinal o nome do arquivo de origem já existe na propriedade DownloadNomeArq Portanto Caso encerrado. Peço desculpas por não ter compreendido o funcionamento, uma vez que já havia usado o ACBrDonwload apenas como protFTP. abraço, boa a noite todos e por hoje chega. ufa Graças a Deus. menos um problema na minha vida.
  2. Daniel Obrigado pela dica do HTTPSend. Testei aqui, funciona bonitinho, mas não tem controle de progresso. Fiz var arquivo:TStringlist; begin with THTTPSend.Create do begin HTTPMethod('GET','https://www.dominio.com.br/pasta/subpastaadmgeral.txt'); arquivo:=TStringlist.Create; arquivo.LoadFromStream(Document); arquivo.SaveToFile('d:\delphi\aplicacao\admgeral.txt'); end; end;
  3. Daniel obrigado por responder, já imaginava isso, diante de algumas perguntas no forum e sem respostas. Tudo bem posso tentar usar a Synapse, só tem uma situação. Até semana passada, meu site estava num provedor HTTP:// ai troquei o provedor e nesse novo, por conta do meu projeto, meu site passará a ficar no modo seguro HTTPS:// Já tentei com o acbrDownload, IdHTTP e ambos me trazem um erro de OIHandler Invalid ISS, algo do tipo. já adicionei o IOHandle mas não tenho conhecimento suficiente para configura-lo, pois, depois de adicionar, o erro passou a ser falta de DLL. Então coloquei na pasta da aplicação as Dlls libeay e ssleay, mas o erro persiste. Pela synapse eu consigo fazer download usando a URL HTTPS:// ???? Estou usando idFtp pra fazer meus downloads, mas é um saco ficar configurando toda a Ftp, pois tenho várias situações de Downloads dentro da aplicação. Seria ótimo se o AcbrDownload funcionasse, pois ele tem controle de progresso. (O comentário do Waldir Paim diz que o .RAR está imcompatível, no entanto o aCBRDowload foi feito para efetuar Downloads e não querer descompactar um arquivo .RAR. Não entendo o motivo do erro em relação a incompatibilidade) Fazer o Download é fácil demais. alguns casos de Downloads rapidos uso UrlDownloadFile, mas também não controle de progresso. Neste momento estou quebrando a cabeça pra montar uma Função assim: function DownFTP(aPasta, aOrigem, aDestino:String; aBarra:TProgressBar):Boolean; Var cpnFtp:TIdFtp; Begin cpnFtp:=TIdFtp.Create(nil); With cpnFtp do begin Disconnect; Host :=NomeDoHost; Port :=21; Username :=NomeDoUsuario; Passive :=True; Password :=NomeDaSenha; OnWorkBegin :=DownFtp1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); OnWork :=DownFtp2Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); OnWorkEnd :=DownFtp3WorkEnd(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer); Connect(True); if not Connected then begin Application.MessageBox('Não foi possível Conectar','Erro',mb_ok+mb_IconError); Exit; end; ChangeDir(aPasta); Try bytesToTransfer := Size(aOrigem); Get(aOrigem,aDestino,True,True); Result:=True; Except On E:Exception do begin Result:=false; Application.MessageBox(pchar(e.Message),'Erro',mb_ok+mb_IconError); end; end; Disconnect; end; End; Tá funcionando bonitinha, mas não consigo associar OnWorkBegin, OnWork, OnWorEnd;. Se conseguisse já não dependeria do HTTPS, embora FTP seja um pouco mais lento que HTTP/HTTPS Praticamente estou escrevendo uma função semelhante ao AcbrDownload kkkk Synapse dá condição de baixar HTTPS ? Seria mais fácil aprender como associar OnWorkBegin, etc.. ? Seria possível usar idHTTP vinculado ao Handler e deixar a DLL na pasta da aplicação ? Qual DLL é essa ? Qual versão ? Que bom seria se alguém pudesse dar essa força pra nós. Eu adoraria ajudar, mas como já disse, meu conhecimento em componentes é quase nada.
  4. Pessoal Uso D7, estou tentando fazer uso do ACBrDownload, pelo que vi nos posts anteriores, está com o mesmo problema. Meu ACBr foi atualizado em 18/01/2018 Ele executa rapidinho, cria o arquivo Exemplo: Arquivo.rar.part e não executa nada quando ligado a barras de progresso, alem de travar a aplicação. Testei no ACBrDownload Demo, e dá exatamente o mesmo problema. alguem já passou por isso ?
  5. Ultimo detalhe, em relação a posição Vertical (linha) está perfeito, se informo que quero que seja impresso a 2mm do topo ele corresponde, com relação Horizontal, se informo que quero que seja impresso a 6mm da Esq, ele imprime a 12mm, ou seja, ele ta dobrando a medida. Fiz a gambiarra e dividi por 2 todas as informações que se referem a medida horizontal. Isso inclui todos os tipos que envolvem essa medida. Mas não vou disponibilizar minha aplicação dessa forma, vou aguardar suas possíveis correções. Se não conseguirmos fazer funcionar onde mm vale mm, então manteremos as RTIs (Recurso Técnico improvisado) Abraço
  6. Daniel boa tarde É o seguinte, depois muito testes, cheguei a conclusão em relação a AcbrEtqZplII.Pas: a- Melhor resolução para Zebra ZPLII é 600 dpi, pois as demais, o componente não consegue acompanhar a qualidade principalmente no tange o código de barras; b- Nessa resolução, a etqMilimetros funciona adequadamente, já nas demais resoluções, se voce define 1 mm ela não corresponde na impressão; c- Conforme o último post, não consegui resolver, a solução foi desabilitar, voce seria mais capaz do que eu pra pensar nesse caso (obs*) obs*: o acbrEtq tem duas funções ImprimirTexto(ComandoFonte), uma recebe Fonte:Integer, a outra recebe Fonte:String, no meu caso, eu mandei a Fonte=10 ou 11 etc, ai bate na exception, quando eu mando Fonte='10' ou '11', passa pela exception porém a impressora não acata a fonte como A, B, C, etc., ela imprime sem com a Fonte A; d- Em relação a altura da Barra, na função ComandoBarras, eu removi a ConverterUnidade deixando apenas IntToStr(aAlturaBarras) + ',' + e funcionou perfeitamente; e- Em relação a Função ComandoLinhaCaixa, também removi todas as ConverterUnidade deixando o valor originale funcionou de acordo, no entanto, a espessura Horizonta e vertical, deixei com 0 (zero) e ainda ficou grossa conforme a imagem. Se quiser fazer algo para que eu possa testar aqui é só avisar. Estarei com a impressora Zebra S4M até sexta feira.
  7. Daniel boa tarde É o seguinte, depois muito testes, cheguei a conclusão: a- Melhor resolução para Zebra ZPLII é 600 dpi, pois as demais, o componente não consegue acompanhar a qualidade principalmente no tange o código de barras; b- Nessa resolução, a etqMilimetros funciona adequadamente, já nas demais resoluções, se voce define 1 mm ela não corresponde na impressão; c- Conforme o último post, não consegui resolver, a solução foi desabilitar, voce seria mais capaz do que eu pra pensar nesse caso (obs*) obs*: o acbrEtq tem duas funções ImprimirTexto, uma recebe Fonte:Integer, a outra recebe Fonte:String, no meu caso, eu mandei a Fonte=10 ou 11 etc, ai bate na exception,
  8. Daniel boa noite. Encontrei a primeira divergência no acbrETQZPLII.pas Em TacbrETQZPLII.ComandoFonte Voce está bloqueando a funcionalidade criando uma Exception onde Caso o cFonte não esteja dentro de ['0'..'9','A'..'Z'] Porem, no AcbrETQ.ImprimirTexto voce está mandando, quando a fonte for >=10, cFonte := Chr(55+Fonte) //'A'..'Z' Bom, se usei uma fonte 15 por exemplo, o cFonte teria o resultado de Chr(55+15)= Chr(70) = 'F', ou seja, está dentro de A..Z, mas não entendi porque a Excepion foi disparada; Então eu desabilitei as linhas if (aMultVertical > 10) then raise Exception.Create('Multiplicador Vertical deve estar entre 1 e 10'); if (aMultHorizontal > 10) then raise Exception.Create('Multiplicador Horizontal deve estar entre 1 e 10'); cFonte := PadLeft(aFonte,1,'A')[1]; //if not CharInSet(cFonte, ['0'..'9','A'..'Z']) then // raise Exception.Create('Fonte deve "0" a "9" e "A" a "Z"'); Result := '^CF' + cFonte + IntToStr(Max(aMultVertical,1)) + ',' + IntToStr(Max(aMultHorizontal,1)); Depois disso deu certo, está imprimindo como se fosse a letra "F" ou se eu colocar a Fonte =10(A), 11(B), 12(C), 13(D), 14(E), 15(F) etc... Agora, estou tentando descobrir por que, usando o etqMilimetro, exemplo Vertical=2 ele imprime a 4 milimetros do topo da etiqueta e horizontal=3 ele imprime a 6 milimetros da esquerda da etiqueta; Outra coisa, eu determino o Tamanho da Etiqueta, assim como minha etiqueta tem 50x30 (mm), ou seja é uma variavel que informo 50, pois no caso de 2 colunas, a posição inicial da coluna à direita, deveria ser de 50(mm)+Horizontal=3(mm). Mas essa configuração manda a coluna da direita pra bem longe. estou ainda analisando o caso mais tarde informo mais outras situações.
  9. Oxi, ajudou e muito. Vou estudar tudo e todas as opções com relação a Gerar e EnviarSincrono, a ideia é que possamos enviar e já imediatamente receber o OK da Prefeitura assim como na NF-e Muito obrigado Ítalo, espero que eu consiga andar com minhas próprias pernas depois dessa Aula.
  10. Meu Deus. Não sei mais o que faço. Já fiz aparecer todos os dados do prestador, preenchi a tags do PrestadorDeServiços, a nota ta sendo impressa bonitinha, mas na hora de enviar continua a mesma coisa o mesmo erro "URL não definida para TNfseEnviarLoteRps"
  11. Eu estava com um problema ao imprimir a NFSe. Ai o Juliomar resolveu o problema. agora estou conseguindo imprimir. Mas percebi uma coisa, não está aparecendo os dados do prestador que no caso sou eu, acredito que esteja faltando preencher a XML de forma correta veja essa foto da nota, me diga se ta errada.
  12. To tentando executar o Demo da NFSE e quando abre o projeto da falta de uma propriedade "Property ExplicitLeft does not exist", então eu ignoro todos, depois quando tento executar ocorre um erro diz que falta RLINK32.DLL e em outra hora "Erro interno LA30" Será que tem algum demo já compilado (EXE) ?
  13. Boa tarde Ítalo Caramba, to rodando como peão aqui. preciso saber qual é propriedade que armazena essa "URL não definida" A coisa parece ser muito simples mas não acho nada. Vou configurar o Demo com as informações que tenho logo volto com mais informações
  14. Ítalo o que é essa propriedade ? acbrNFSe.Configuracoes.Geral.ConfigURL.HomRecepcaoLoteRPS:=?????
  15. que pena já tem sim, inclusive coloquei o número diretamente mas o erro persiste With acbrNFSe.Configuracoes.Geral do begin SSLLib :=libWinCrypt; Salvar :=True; CodigoMunicipio :=3538006;//StrToInt(FormatFloat('00',dm.Empresa.FieldByName('CodUF').AsInteger)+FormatFloat('00000',dm.Empresa.FieldByName('CodMun').AsInteger));
  16. obrigado, vou fazer
  17. Ítalo meu amigo. Tá osso. o erro permanece Erro "URL não definida para TNfseEnviarLoteRps" Configurei o que faltava como mencionou Alterei as paths atuais, pois estavam apontando para o meu servidor. Agora trouxe tudo para pasta local e mesmo assim nada. sera que nao esta faltando alguma coisa.
  18. Ítalo me dê um auxilio por favor, faz muito tempo que tentei acertar essa configuração, agora mudou bastante coisa. Tento enviar um XML Homologação pra Pindamonhangaba e está trazendo um erro "URL não definida para TNfseEnviarLoteRps" Veja o que já fiz Copiei os arquivos pra dentro da pasta da aplicação Cidades.INI SiapNet.INI Pasta Schemas que estava em D:\CD\ACBr\trunk2\Exemplos\ACBrDFe\ACBrNFSe Como está tudo muito diferente, não localizei uma série de Schemas de XML de serviços que existia anteriormente. Outra coisa. Eu já tenho o usuário e senha para enviar o XML, neste caso, como vou somente enviar o XML, não teria que assinar o XML com meu certificado ? Veja como fiz no finalzinho pra gerar, Gravar e Enviar dm00.acbrNFSe.NotasFiscais.Items[0].GerarXML; dm00.acbrNFSe.NotasFiscais.Items[0].GravarXML; dm00.acbrNFSe.Enviar(dm04.NotaComRps.FieldByName('RPS').AsInteger); with dm00.acbrNFSe do begin rCodigo :=WebServices.EnviarLoteRPS.RetEnvLote.InfRec.MsgRetorno[ 0 ].Codigo; rMsg :=WebServices.EnviarLoteRPS.RetEnvLote.InfRec.MsgRetorno[ 0 ].Mensagem; rCorrecao :=WebServices.EnviarLoteRPS.RetEnvLote.InfRec.MsgRetorno[ 0 ].Correcao; end; showmessage(rCodigo+' - '+rmsg+' - '+rCorrecao); Erro "URL não definida para TNfseEnviarLoteRps" Complementando. Segue como está a config do componente acbrNFSe With acbrNFSe.Configuracoes.Certificados do begin //NumeroSerie := dm.EmpresaCERTIFICADO.AsString; End; Path_NFSe :=LerIni('NFSE','PATHNFSe'); Path_RPS :=LerIni('NFSE','PATHRps'); Path_Ger :=LerIni('NFSE','PATHGer'); Path_SchemaS :=LerIni('NFSE','PATHSchemas'); With acbrNFSe.Configuracoes.Arquivos do begin AdicionarLiteral :=True; EmissaoPathNFSe :=True; PathNFSe :=Path_NFSe; PathRPS :=Path_RPS; PathGer :=Path_Ger; PathSchemas :=Path_SchemaS; PathMensal :=GetPathGer(0); PathCan :=PathMensal; PathSalvar :=PathMensal; Salvar :=True; End; With acbrNFSe.Configuracoes.Geral do begin SSLLib :=libWinCrypt; Salvar :=True; CodigoMunicipio :=StrToInt(FormatFloat('00',dm.Empresa.FieldByName('CodUF').AsInteger)+FormatFloat('00000',dm.Empresa.FieldByName('CodMun').AsInteger)); UserWeb :=dm.Empresa.FieldByName('UsuarioWeb').AsString; SenhaWeb :=dm.Empresa.FieldByName('SenhaWeb').AsString; with Emitente do begin CNPJ :=dm.Empresa.FieldByName('cnpj').AsString; CNPJPrefeitura :='45226214000119'; InscMun :=dm.Empresa.FieldByName('Municipal').AsString; RazSocial :=dm.Empresa.FieldByName('Razao').AsString; WebUser :=dm.Empresa.FieldByName('UsuarioWeb').AsString; WebSenha :=dm.Empresa.FieldByName('SenhaWeb').AsString; end; End; With acbrNFSe.Configuracoes.WebServices do begin Ambiente :=iif(dm.EmpresaAMBIENTE.AsInteger=0,taHomologacao,taProducao); Salvar :=True; Visualizar :=False; End; With acbrNFSe.Configuracoes.Geral do begin SetConfigMunicipio; End; if acbrNFSe.DANFSE <> nil then begin acbrNFSe.DANFSE.Logo := LerIni('NFSE','LOGOPREF'); acbrNFSe.DANFSE.PrestLogo := LerIni('NFSE','LOGO'); acbrNFSe.DANFSE.Prefeitura := dm.EmpresaPREFEITURA.AsString; end;
  19. Ítalo me dê um auxilio por favor, mas muito tempo que tentei acertar essa configuração, agora mudou bastante coisa. Tento enviar um XML Homologação pra Pindamonhangaba e está trazendo um erro "URL não definida para TNfseEnviarLoteRps" Veja o que já fiz Copiei os arquivos pra dentro da pasta da aplicação Cidades.INISiapNet.INI
  20. Obrigado Italo Segue as demais cidades com o mesmo prestador de serviços #################### Bom dia Sr, Conforme solicitado as cidades que utilizam o Iss online do SIAP são: Pindamonhangaba, Guaratinguetá, Roseira e Lorena. Obs: Jacareí, Aparecida e Cruzeiro utilizam outras plataformas do nosso sistema não mais o ISS online. Atenciosamente, Felipe Bissoli Piorino ######################## Ambiente de testes/homologação: URL WSDL: https://iss.guaratingueta.sp.gov.br/teste/websis/siapnet/arrecadacao/issonline/ws/index.php?wsdl URL para login no sistema: https://iss.guaratingueta.sp.gov.br/teste/websis/siapnet/arrecadacao/issonline/ Ambiente de produção/oficial: URL WSDL: https://iss.guaratingueta.sp.gov.br/pmguaratingueta/websis/siapnet/arrecadacao/issonline/ws/index.php?wsdl URL para login no sistema: https://iss.guaratingueta.sp.gov.br/pmguaratingueta/websis/siapnet/arrecadacao/issonline/ Estou no aguardo dos demais endereços
  21. ok muito obrigado. fico no aguardo
  22. Juliomar Não tenho o Fast Report instalado. Só uso o Fortes Não tem opção para o Fortes ? Achei a opção do Fortes, porem sua pergunta não foi correta creio eu. RL=Fortes RF=Fast
  23. Obrigado por responder AcbrNFSeDanfSeRL
  24. Marcelo Bill

    Erro ao Imprimir Danfse

    Bom dia a todos Estou tentando mais uma vez iniciar a emissão de NFS-e na minha cidade Pindamonhangaba. Ainda estou no D7, tentei imprimir um DANFSe e está ocorrendo o seguinte erro eReadError with message 'Property ExplicitWidth dows not exist' Já percebi que conforme o erro indica que no D7 não contem essa propriedade. A pergunta é: Existe alguma outra solução pra isso ?
  25. Bom dia Italo e demais companheiros Voltei a ativar esse tópico pois finalmente encontrei aqui em minha cidade Pindamonhangaba, alguém que me respondeu sobre Webservice da Perfeitura. Gostaria de Relatar o seguinte, no fontes no se referem a NFS-e, Pindamonhangaba e Guaratinguetá estão definidos como GINFES. No entanto esse sujeito me passou um email e no email diz que o Padrão agora é Abrasf V2.02, talvez essa informação seja necessária para que se mude os endereços e padrão de XML. Segue o conteudo do email ################# Boa Tarde conforme solicitado, segue email detalhando mais os 2 modos de integração (via importação de arquivo .CSV e via webservice ). Existem 02 formas de Integração: via importação de arquivo .CSV e via webservice: É recomendado que as empresas se adequem aos 2 formatos, ou no mínimo a integração via importação de arquivos .CSV. - Geração de arquivos .CSV de RPSs para conversão em NFS-e ( depois de importado no sistema, é possível baixar o CSV de retorno/confirmação de transmissão ) - Geração de XML de RPS para emissão de NFS-e ( e de modo síncrono já recebe um xml retorno ) Atendendo as 2 situações, a empresa não ficará prejudicada / travada caso a prefeitura vier a ter algum problema técnico. Pessoas que podem ajudar tecnicamente na Embras com orientações sobre a integração: Felipe, Diego, Carlos, Erick Telefone: (12) 2126-4900 1) Integração via importação de arquivo CSV: Recomendamos a geração de arquivos .CSV de RPSs ( Recibos Provisórios de Serviços ) para importação no sistema e conversão em NFS-e. Após login no sistema, menu: Serviços / Enviar Arquivos Remessa CSV de RPS , existem 3 abas sendo uma de IMPORTAÇÃO ( onde é possível checar os problemas existentes no arquivo), outra de ARQUIVOS IMPORTADOS ( onde é possível fazer o download dos arquivos ) e a última de DOCUMENTAÇÃO (com layout, arquivos de tabelas auxiliares e instruções ) para geração do arquivo texto .CSV de RPSs. Segue anexo 01 arquivo CSV de exemplo. 2) Integração via webservice: Para homologação da integração via webservice, solicitamos que realize todos os testes na URL do ambiente de homologação. Somente depois de homologados os testes, a empresa poderá utilizar a URL do ambiente oficial de produção da Prefeitura. Seguem anexos 2 arquivos XML de exemplo. Ambiente de testes/homologação: URL WSDL: http://siapegov.pindamonhangaba.sp.gov.br/pmpinda_teste/websis/siapnet/arrecadacao/issonline/ws/index.php?wsdl URL para login no sistema: http://siapegov.pindamonhangaba.sp.gov.br/pmpinda_teste/websis/siapnet/arrecadacao/issonline/ Ambiente de produção/oficial: URL WSDL: http://siapegov.pindamonhangaba.sp.gov.br/pmpinda/websis/siapnet/arrecadacao/issonline/ws/index.php?wsdl URL para login no sistema: http://siapegov.pindamonhangaba.sp.gov.br/pmpinda/websis/siapnet/arrecadacao/issonline/ O webservice segue o padrão Abrasf 2.02 , segue o link para download do manual diretamente no site da Abrasf: http://www.abrasf.org.br/arquivos/publico/NFS-e/Versao_2.02/NFSE-NACIONAL_Manual_De_Integracao%20versao%202-02.pdf Link para demais arquivos do manual: http://www.abrasf.org.br/pagina_publica.php #################
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...