Jump to content

All Activity

This stream auto-updates

  1. Yesterday
  2. rocks

    PHPMAILER - Envio emails PHP

    Boa tarde a todos, Estou a desenvolver uma aplicação web e uma das funções era o envio de emails apos submeter um form. Funciona tudo muito bem em localhost mas ao passar para um servidor sempre que tento enviar o email é dado erro SMTP -> ERROR: Failed to connect to server: Connection timed out (110) The following From address failed: xxx@iscte-iul.pt : Called Mail() without being connected function smtpmailer($para, $de, $de_nome, $replyto , $cc ,$assunto, $corpo) { global $error; $mail = new PHPMailer(); $mail->CharSet = 'UTF-8'; $mail->IsSMTP(); // Ativar SMTP $mail->SMTPDebug = 1; // Debugar: 1 = erros e mensagens, 2 = mensagens apenas $mail->SMTPAuth = true; // Autenticação ativada $mail->SMTPSecure = 'tls'; // SSL REQUERIDO pelo GMail //$mail->SMTPSecure = 'TLS'; // SSL REQUERIDO pelo GMail $mail->Host = 'smtp.office365.com'; // SMTP utilizado $mail->Port = 587; // A porta 587 deverá estar aberta em seu servidor $mail->Username = GUSER; $mail->Password = GPWD; $mail->SetFrom($de, $de_nome); $mail->AddReplyTo($replyto, $de_nome); $mail->AddCC($cc, $de_nome); $mail->Subject = $assunto; $mail->Body = $corpo; $mail->AddAddress($para); if (!$mail->Send()) { $error = 'Mail error: ' . $mail->ErrorInfo; return false; } else { $error = 'Mensagem enviada!'; return true; } } O que poderá causar este erro. Poderá ser permissoes ? Obrigado a todos
  3. Meetup e Giveaway (Patrocinado pela JetBrains) no Discord do DevPT - 27 de Setembro O meetup devPT está de volta e vai realizar-se no próximo dia 27 de Setembro (segunda) o 3° meetup devPT. Nesta edição teremos a presença do Dr. Miguel Oliveira que nos falará sobre “Gestão Emocional na Era Digital”. Depois abordaremos temáticas como backend, a apresentação de um projeto pessoal de um membro da comunidade e exploraremos também algo diferente: vamos aos bastidores do trabalho por detrás da música dos videojogos. Vamos também como já é habitual fazer o nosso giveaway patrocinado pela JetBrains. O meetup irá ser realizado dia 27 de Setembro pelas 21h de Portugal no Discord da comunidade, em canais que serão criados para o efeito e com transmissão numa sala Zoom comunicada no dia respetivo. Discord onde decorrerá o evento e onde está presente a comunidade: https://devpt.co/discord
  4. razs

    Var em loop incorreta

    é lapso, é tk.button editei o post para ver se fica mais simples. Obrigado 🙂
  5. AshKetshup

    Var em loop incorreta

    Preciso de um pouco mais de contexto para compreender a questão, mas eis algo que posso indicar: Tu usas o: b = tk.Button(...) b.grid(...) buttonlst.append(b) e mais tarde usas: ttk.Button(...).grid(...) O 'tk' é equivalente ao 'ttk'?
  6. razs

    Var em loop incorreta

    Boas, alguém percebe porque e que neste loop ele passa sempre a ultima var b. Eu pretendo que ele passe o id do butao b de modo a poder altera-lo com um config noutra function buttonslst=[] #aqui comeca um for loop b = tk.Button(frm_txt_json_case_btn, width="30", height=3, text=str(titulo+" "+cherep), fg=fcolor,relief=relifst, borderwidth=4,command=lambda titulo=titulo: ChangConfWI(titulo)) b.grid(column=colcount, row=rowcount, padx=10, pady=5) buttonslst.append(b) #vamos chamar a este o botao mestre tk.Button(frm_but_oknot, width="15", text="OK", image=photoOK, command=lambda assumirrow=assumirrow: savetoxls(buttonslst[int(assumirrowr)-8])).grid( column=0, row=0, padx=1, pady=15) eu preciso de passar o id fo butao b quando clico no "butao mestre" assumirrow é um contador, dai estar a usar para ir buscar a lista
  7. eduubessa

    Autenticação GOV (cartão de cidadão e assinatura digital)

    Boas tudo bem? Eu penso que é necessário fazer com oauth eu encontrei este documento que explica de que forma pode ser feito https://www.autenticacao.gov.pt/documents/20126/0/Autenticação.Gov+-+Manual+de+Integração+v1.5.4.pdf/82d87ff8-e046-d69f-cca5-38d319f7afa5?t=1610443249238 Mas eles dão exemplos em CSharp e Java, mas possivelmente que pode ser feito em PHP
  8. Last week
  9. É uma inconsistência da DOCUMENTAÇÃO e não do serviço... Vejamos <S:Body> <ns2:finalizarSerie xmlns:ns2="http://at.gov.pt/"> <serie>CFA2021</serie> <classeDoc>SI</classeDoc> <tipoDoc>FT</tipoDoc> <codValidacaoSerie>AAJFFGF6DB</codValidacaoSerie> <seqUltimoDocEmitido>1</seqUltimoDocEmitido> </ns2:finalizarSerie> </S:Body> <S:Body> <ns0:finalizarSerieResponse xmlns:ns0="http://at.gov.pt/"> <finalizarSerieResp> <infoSerie> <serie>CFA2021</serie> <tipoSerie>N</tipoSerie> <classeDoc>SI</classeDoc> <tipoDoc>FT</tipoDoc> <numInicialSeq>1</numInicialSeq> <dataInicioPrevUtiliz>2021-09-17</dataInicioPrevUtiliz> <seqUltimoDocEmitido>1</seqUltimoDocEmitido> <meioProcessamento>PI</meioProcessamento> <numCertSWFatur>0</numCertSWFatur> <codValidacaoSerie>AAJFFGF6DB</codValidacaoSerie> <dataRegisto>2021-09-17</dataRegisto> <estado>F</estado> <dataEstado>2021-09-17T19:49:32+01:00</dataEstado> <nifComunicou>999999990</nifComunicou> </infoSerie> <infoResultOper> <codResultOper>2004</codResultOper> <msgResultOper>Série finalizada com sucesso.</msgResultOper> </infoResultOper> </finalizarSerieResp> </ns0:finalizarSerieResponse> </S:Body> Serviço de CONSULTA depois de finalizada
  10. Obrigado pela análise exposta. Ainda não coloquei a questão à AT porque estou no desenho da implementação da comunicação na minha aplicação e ao passar nas validações surgiu-me essa situação, Por vezes acontece um cliente enviar um artigo à consignação a um cliente dele. Se for uma situação pontual, irá haver apenas uma guia de consignação, uma fatura de consignação e (com o prazo de até 12 meses) haverá uma fatura ou credito de consignação. Só aqui, irá haver pelo menos 2 conjuntos tipoDoc/serie com apenas 1 documento, independentemente do cliente vender o conteúdo consignado ou não. Mas vou seguir a tua sugestão e colocar a questão no e-balcão. Mais uma vez obrigado.
  11. Vitor Pereira

    Utilizar Webservices da AT

    Eu entendo quando a AT quer que o Ultimo Documento seja superior ao Documento que iniciou a Série, pois caso contrário o Webservice poderia fazer uma Finalização de um Série que nunca fez nenhum documento quando deveria ser Anulada e não Finalizada. Agora, quando a Série só tem mesmo um único Documento ( o que raramente ou nunca acontecerá convenhamos ) o problema está mesmo instalado pois o Nº do Documento inicial é o mesmo que o Nº Final !!! Está à 1ª vista aquilo um pequeno buraco, muito embora se não for resolvido pela AT ( tipo não fazer Controle quando o Doc. Inicial é igual ao Doc. Final ) será facilmente resolvido pelo cliente final, que faz mais um Documento ( mesmo que o Anule de seguida ) e depois já pode Finalizar a Série. Expuseste o problema no Site da AT ?
  12. Uma duvida parva: Segundo o manual, o código de retorno 4047 para a finalização de séries refere "O valor indicado no ultimo documento emitido deve ser superior ao indicado no inicio da sequencia". Assim sendo, como finalizamos uma série que contenha apenas um documento emitido? (Ultimo documento = numero inicial da serie)? Alguém experimentou finalizar uma série com apenas um documento?
  13. @TheBug Reparei nisto: Após o body, tens de colocar a TAG da operação: <ns2:registarSerie xmlns:ns2="http://at.gov.pt/"> (Aqui dentro é que colocas os campos <serie>, <tipoSerie>, etc.) </ns2:registarSerie>
  14. Eu fiz em C#, mas fica aqui a minha sugestão do que poderá estar errado no seu código Quase de certeza que o problema está na formatação do do XML. Mas verifica também se o SOAP Action está correto! Verifica se a hora do PC que está a correr o código está sincronizado com a hora do Observatório Astronómico de Lisboa; Verifica se está a utilizar os certificados corretos! Verifica a validade dos mesmos.
  15. Estou na mesma situação no ambiente de testes (e utilizador de testes)... estou a passar xml idêntico...recebo o seguinte erro: <?xml version='1.0' ?> <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'> <env:Body> <env:Fault> <faultcode>env:Client</faultcode> <faultstring>Internal Error</faultstring> </env:Fault> </env:Body> </env:Envelope> Quer em PHP (CURL), quer em VB.NET... Alguém tem alguma sugestão?
  16. Eu já consigo anular séries registadas recentemente, mas séries registadas no inicio dos testes ainda não consigo. Quando tiver em fase de produção deve ficar tudo reslvido, mas era muito bom ter uma opção para fazer reset á área de testes e começar do 0. Obrigado.
  17. - A ANULAÇÃO de séries tem um LIMITE temporal (ainda analisei qual é) - SIM, é possível voltar a registar uma série anulada (é emitido novo código de validação) Sobre as possibilidades, criei testes com "todos" os cenários: /** Situações ACEITES */ //Registar //Registar -> Anular //Registar -> Finalizar //Registar -> Anular -> Registar /** Situações NÃO ACEITES */ //Registar -> Registar //Registar -> Anular -> Finalizar //Registar -> Finalizar -> Anular TEST CASE: https://github.com/marcolopes/dma/blob/master/org.dma.services.at/src/org/dma/services/at/test/SeriesServiceTest.java
  18. Vitor Pereira

    Utilizar Webservices da AT

    Bom, não faço a mínima ideia se será essa a razão, mas logo à 1ª vista salta algo que não faz senti: <numInicialSeq>0</numInicialSeq> O Nº do 1º Documento de uma Série nunca pode ser ZERO !! Se a Série é nova, e ainda não tem documentos, este campo tem de ir preenchido com 1 ( UM ) Se a Série já estiver em uso e com Documentos já registados, este campo tem de ir preenchido com o ( Nº do Ultimo Documento+1 ) Abre uma nova Série, colocando 1 ( UM ) como registo inicial e depois tenta anular, acho que te resolve o problema
  19. Este código de erro 2012 nem se quer está identificado no manual de integração da AT... Já fui ver se existia mais alguma versão do manual e ainda só existe a versão 1.0. Mais uma vez, temos de ficar a espera deles.
  20. Enviando os dados de cliente estrangeiro (não UE): <InternationalCustomerTaxID> <TaxIDNumber>600700800</TaxIDNumber> <TaxIDCountry>ST</TaxIDCountry> </InternationalCustomerTaxID> Dá-me o erro: particle 3.1: in element {http://servicos.portaldasfinancas.gov.pt/faturas/}RegisterInvoiceElem of type {http://servicos.portaldasfinancas.gov.pt/faturas/}RegisterInvoiceType, found <InternationalCustomerTaxID> (in default namespace), but next item should be any of [CustomerTaxID, {http://servicos.portaldasfinancas.gov.pt/faturas/}InternationalCustomerTaxID] Se enviar os dados de cliente nacional, funciona bem. <CustomerTaxID>600700800</CustomerTaxID> Conseguem ajudar? Obrigado.
  21. Já consegui resolver o Problema. Agora quando tento anular uma série recebo a mensagem <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Header> <WorkContext xmlns="http://oracle.com/weblogic/soap/workarea/">rO0ABXdWABV3ZWJsb2dpYy5hcHAuc2VyaWVzYm8AAADWAAAAI3dlYmxvZ2ljLndvcmthcmVhLlN0cmluZ1dvcmtDb250ZXh0ABAyMDIxMDkxNDE3MzkyNS4wAAA=</WorkContext> </S:Header> <S:Body> <ns0:anularSerieResponse xmlns:ns0="http://at.gov.pt/"> <anularSerieResp> <infoResultOper> <codResultOper>2012</codResultOper> <msgResultOper>Prazo para anular a comunica&#231;&#227;o da s&#233;rie esgotado.</msgResultOper> </infoResultOper> </anularSerieResp> </ns0:anularSerieResponse> </S:Body> </S:Envelope> Alguém sabe com ultrapassar isso? Se eu anular uma série será que posso voltar a registar a mesma série?
  22. obrigado, já tinha tentado isso, mas alguma coisa devo ter feito mal, agora deu bem.
  23. O BillingReference tem de ser repetido tantas vezes quanto o numero de Faturas a que a NC se refere
  24. Olá, Como estão fazendo no caso de uma nota de crédito que referencie mais que uma factura na tag correspondente: <cac:BillingReference> <cac:InvoiceDocumentReference> <cbc:ID>FT A21/34891</cbc:ID> <cbc:IssueDate>2021-08-23</cbc:IssueDate> </cac:InvoiceDocumentReference> </cac:BillingReference> obrigado
  25. Alguém que envie Facturas por webservices emitidas a clientes estrangeiros? Não estou a conseguir resolver o problema. Obrigado desde já.
  26. Bom dia, sou novo nisto de serviços da AT e vinha solicitar se possível ajuda. Estou a receber como resposta, quando meto o url (https://servicos.portaldasfinancas.gov.pt:722/SeriesWSService)no browser e uso o certificado de teste: <faultcode>env:Client</faultcode> <faultstring>Internal Error</faultstring> Dentro do codigo, recebo o erro "O servidor remoto devolveu um erro: (500) Erro interno de servidor." quando faço o (HttpWebResponse)request.GetResponse(); . Usando o catch (WebException webex) { WebResponse errResp = webex.Response; using (Stream respStream = errResp.GetResponseStream()) { StreamReader reader = new StreamReader(respStream); string text = reader.ReadToEnd(); } } Consigo ver que a minha string text está preenchida com o que vem quando meto o link no browser <?xml version='1.0' ?> <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'> <env:Body> <env:Fault> <faultcode>env:Client</faultcode> <faultstring>Internal Error</faultstring> </env:Fault> </env:Body> </env:Envelope> No meu caso, o serviço é em C# pelo que estou a enviar este xml: <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Header> <wss:Security xmlns:wss="http://schemas.xmlsoap.org/ws/2002/12/secext"> <wss:UsernameToken> <wss:Username>xxxxxxxxxxxxxxxx</wss:Username> <wss:Password>xxxxxxxxxxxxxxxxx</wss:Password> <wss:Nonce>IjDSMT0wHTFpS+9GOA/vrTdc4xtJGSgk+GLTilzLf9N6JJe+uGjykiAFEplvErL4gE46Hk3/IYzwL0AzFOM2ssKNZBirfnZSpmzdaxD1YyS6LxVzojbZTAskE/z1q0y5yyDW9rOSNdP/YhuhR6gDnfCEHgNspPKISkD10yWGr9vm5KRbYrFDHxTCua/BAEC1C4STw8pPbrlDQyyA8VBb5/Mb4Fq9Wmh5/B1SJjCfFHfjnOHF3liTkiGNagMm641czSYxSAvuv2VnFWX82Rknfsk0+ikwQoVpPfKTrLR2IYyfbZLuuX4wrQeyPj6ZYHC2wjnLUb0fkgSd03sPueRBBw==</wss:Nonce> <wss:Created>a0Jh01g62q0qW3V0Ps/rc8cdTD5BNgsCk2zZ8+D12f4=</wss:Created> </wss:UsernameToken></wss:Security> </S:Header> <S:Body> <serie>A</serie> <tipoSerie>N</tipoSerie> <classeDoc>SI</classeDoc> <tipoDoc>S003</tipoDoc> <numInicialSeq>0</numInicialSeq> <dataInicioPrevUtiliz></dataInicioPrevUtiliz> <numCertSWFatur>0095</numCertSWFatur> <meioProcessamento>PI</meioProcessamento> </S:Body> </S:Envelope> Será que alguém me pode ajudar no que estou a fazer mal ou que me possa estar a faltar fazer? Desde já obrigado pela ajuda!
  1. Load more activity
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.