Jump to content

Search the Community

Showing results for tags 'finanças'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Bem-vindos ao Portugal-a-Programar
    • Sugestões, Críticas ou Dúvidas relativas ao P@P
    • Acerca do P@P
  • Comunidade a Trabalhar
    • Wiki P@P
    • Apresentação de Projectos de Programação
    • Downloads
  • Revista PROGRAMAR
    • Revista PROGRAMAR
  • Desenvolvimento Geral
    • C
    • C++
    • Java
    • Haskell
    • Pascal
    • Python
    • Bases de Dados
    • Visual Basic Clássico
    • Visual Basic for Applications (VBA)
    • Dispositivos Móveis
    • Outras Linguagens
  • Desenvolvimento Orientado para Web
    • PHP
    • HTML
    • CSS
    • Javascript
    • Outras Linguagens de WebDevelopment
    • Desenvolvimento Web
  • Desenvolvimento .NET
    • C#
    • Visual Basic .NET
    • ASP.NET
    • WPF & SilverLight
  • Software e Sistemas Operativos
    • Software de Produtividade
    • Sistemas Operativos
    • Apresentação de Software
  • Informática
    • Interfaces Visuais
    • Computação Gráfica
    • Algoritmia e Lógica
    • Segurança e Redes
    • Hardware
    • Electrónica
    • Automação Industrial
    • Matemática
    • Dúvidas e Discussão de Programação
    • Notícias de Tecnologia
  • Outras Áreas
    • Dúvidas Gerais
    • Discussão Geral
    • Eventos
    • Anúncios de Emprego
    • Tutoriais
    • Snippets / Armazém de Código
  • Arquivo Morto
    • Projectos Descontinuados
    • System Empires

Blogs

  • Blog dos Moderadores
  • Eventos
  • Notícias de Tecnologia
  • Blog do Staff
  • Revista PROGRAMAR
  • Projectos
  • Wiki

Categories

  • Revista PROGRAMAR
  • Tutoriais
  • Textos Académicos
  • Exercícios Académicos
    • Exercícios c/ Solução
    • Exercícios s/ Solução
  • Bibliotecas e Aplicações
  • Outros

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Found 10 results

  1. nunopicado

    WS-Dll.zip

    Version 2017.10.27

    850 downloads

    DLL com as funções de encriptação e envio por webservices de documentos de transporte para o servidor da AT Programa demonstração de como usar a DLL ALERTA NOVA VERSÃO: AtWS: Desde 2017-08-23 este projecto está marcado como obsoleto, e não terá nenhum tipo de apoio nesta versão. O projecto segue com o nome AtWS, que pode ser encontrado em github.com/nunopicado/AtWS A nova versão quebra a compatibilidade com a antiga, pela necessidade de melhorar a estrutura do código. No entanto, a compatibilização de código que esteja a usar a WS-DLL não é difícil, já que os parâmetros necessários são os mesmos e no mesmo formato, apenas indicados em locais ligeiramente diferentes. NOTAS: Requer instalação da biblioteca da Microsoft CAPICOM 2.0 (http://www.microsoft.com/pt-pt/download/details.aspx?id=25281) Requer que o certificado esteja instalado no Windows ATENÇÃO: Esta é uma DLL de testes para fins meramente didáticos. Não foi alvo de testes intensivos que seriam necessários para ambiente de produção. Usem por vosso risco. Funções: ValidadePFX (PFXFile,PFXPass:WideString):WideString; Retorna a data de expiração do certificado. Aceita por parâmetro duas strings, em formato UniCode, e retorna uma no mesmo formato. O primeiro parâmetro é o caminho completo para o ficheiro do certificado (Extensão PFX), o segundo leva a password do certificado. A Naming Convention é StdCall, standard do Windows. InitWS(SoapURL,SoapAction:WideString;TimeOut:Integer); Inicializa a DLL. Deve ser chamada antes de qualquer envio de documentos (não precisa ser chamada se for apenas para verificar a validade). Aceita por parâmetro duas strings, em formato UniCode, e um valor inteiro. O primeiro parâmetro é o URL do serviço AT, o segundo é a SOAP Action a usar, o terceiro é o número de segundos para o Timeout. Normalmente, 10 segundos é suficiente. Em máquinas lentas/net lenta, subir um pouco pode ser necessário. A Naming Convention é StdCall, standard do Windows. ValidaTDoc(XMLData,PFXFile,PFXPass:WideString):WideString; Envia um documento de transporte para a AT. Aceita por parâmetro três strings, em formato UniCode. O primeiro parâmetro é o documento a enviar, em formato XML, de acordo com as indicações da AT. As excepções são os campos Password (que deve ir em texto simples, e não encriptado), e os campos Nonce e Created, que devem ir vazios. A DLL encarrega-se de encriptar a password e criar os campos Nonce e Created. Os segundo e terceiro parâmetros são os dados do certificado (caminho completo e password). Retorna uma string, UniCode também, com o XML de resposta da AT, ou uma string vazia caso não haja resposta. A Naming Convention é StdCall, standard do Windows. Requisitos: Para funcionar, é necessário instalar no PC um pacote da Microsoft, chamado CAPICOM v2.0. Este tem também uma dll (capicom.dll) que deve ser registada no Windows (regsvr32 capicom.dll). É necessário também que, no Internet Explorer (mesmo que este não seja usado) se defina nas opções avançadas o TLS 1.2 como desabilitado. Por regra, este protocolo já vinha desabilitado, mas no Windows 8.1, ou no Windows 7/8 com o IE 11 instalado, este protocolo é activado. Deve-se desactivar. É preciso ainda o certificado, de produção ou de testes, atribuído pela AT. O ficheiro ChavePublicaAT, ao contrário do que é costume, aqui não é necessário, pois a chave da AT está embutida no código. AVISO: De notar que esta DLL não foi alvo de testes extensivos, pelo que o seu uso é por conta e risco do utilizador. Eu uso-a, com algumas alterações para fazer face às minhas necessidades, e nunca me deu problema, mas ainda assim, não posso garantir nada.
  2. Bom dia, Desenvolvi a minha primeira aplicação mobile para o Android e já me registei como developer no Google Market, ao qual aguardo a conclusão deste processo para poder efectuar o upload da aplicação. A aplicação será paga e a minha dúvida é em relação aos impostos. Segundo o regulamento do Google Market: "E quanto aos impostos? Não fornecemos um mecanismo para recolher impostos de vendas, impostos de valor agregado ou outros impostos relacionados à venda dos seus aplicativos a compradores. É sua responsabilidade como o comerciante de registro (1) determinar se você precisa legalmente coletar impostos, (2) reajustar o preço do aplicativo para incluir os impostos e (3) enviar quaisquer impostos obrigatórios às autoridades responsáveis por eles. Você é responsável por quaisquer impostos retidos resultantes da venda dos aplicativos. Os pagamentos do Google estarão livres de impostos retidos. " Assim sendo, cá em Portugal tenho de pagar impostos ou não e tendo de pagar será na altura da declaração do IRS e se sim em que zona do mesmo ? Terei de me colectar nas finanças ou neste caso como não passo recibos não é necessário ? Eu sei que ainda é um bocado cedo, porque mesmo após o upload tenho de aguardar um bom tempo para ver o feedback da qualidade da aplicação (ou seja o número de downloads) mas ainda assim tenho esta curiosidade e também para definir o preço. Agradeço desde já à ajuda nestas minhas dúvidas
  3. Version 1.0

    104 downloads

    DRE Notify Mini-programa, que vai buscar ao Diário da República Electrónico os artigos do dia. É possível filtrar os resultados, inserindo paralavras de pesquisa no ficheiro filter.txt em anexo. Se não forem encontrados artigos (ou por não existirem mesmo, ou porque o filtro não retornou resultados), nada é mostrado ao utilizador. O programa entra e sai automaticamente. Se forem encontrados artigos, é mostrada uma lista, com o resumo do artigo seleccionado. O conceito é meter isto no boot do Windows, e ser notificado caso haja algum artigo de uma área que nos interesse. Filter.txt: O ficheiro de filtros é nada mais que um ficheiro de texto, em que cada linha é um filtro. Não há tratamento algum dos filtros, o que significa que não há palavras compostas. O que meterem no filtro tem de aparecer exactamente igual no cabeçalho do artigo, caso contrário, é descartado. A única excepção são as maiúsculas e minúsculas - O filtro não é case-sensitive. Note-se que a condição dos filtros é OU, ou seja, se o artigo tiver qualquer das palavras dos filtros, já aparece. Isto foi feito porque me dá jeito saber dos mandos e desmandos do Ministério das Finanças, mas se der jeito a mais alguém, estejam à vontade.
  4. Boa noite, alguém conhece algum módulo de facturação certificado pela AT para o prestashop, que seja gratuito ou permita emissão de um valor limite de facturas gratuitamente? Ou algum programa stand-alone para windows ou serviço online/na clound?
  5. Boa noite, Pretendo certificar um software de facturação desenvolvido em IOS. Alguém tem código criado neste sentido? Ou indicar alguém qu3 me possa ajudar? Obrigado. Diogo (tlm 917112955)
  6. tiagopinho

    Erro no serviço da AT - Windows XP?

    Olá pessoal, Antes demais, desculpem se coloquei esta mensagem no forum errado. Hoje, dia 20, começou a dar um erro bastante estranho na minha clientela, aquando da comunicação das guias à AT. O mais estranho é que, tanto nos meus clientes, como nos clientes de outro parceiro, este tipo de erro só acontece se a maquina que está a comunicar tiver o Windows XP. Com o Windows 7, 8 e 8.1, funciona normalmente. Alguém já se deparou com o mesmo problema? Obrigado.
  7. DRE Notify - Notificações Diário da República Electrónico Ver Ficheiro DRE Notify Mini-programa, que vai buscar ao Diário da República Electrónico os artigos do dia. É possível filtrar os resultados, inserindo paralavras de pesquisa no ficheiro filter.txt em anexo. Se não forem encontrados artigos (ou por não existirem mesmo, ou porque o filtro não retornou resultados), nada é mostrado ao utilizador. O programa entra e sai automaticamente. Se forem encontrados artigos, é mostrada uma lista, com o resumo do artigo seleccionado. O conceito é meter isto no boot do Windows, e ser notificado caso haja algum artigo de uma área que nos interesse. Filter.txt: O ficheiro de filtros é nada mais que um ficheiro de texto, em que cada linha é um filtro. Não há tratamento algum dos filtros, o que significa que não há palavras compostas. O que meterem no filtro tem de aparecer exactamente igual no cabeçalho do artigo, caso contrário, é descartado. A única excepção são as maiúsculas e minúsculas - O filtro não é case-sensitive. Note-se que a condição dos filtros é OU, ou seja, se o artigo tiver qualquer das palavras dos filtros, já aparece. Isto foi feito porque me dá jeito saber dos mandos e desmandos do Ministério das Finanças, mas se der jeito a mais alguém, estejam à vontade. Submetido por nunopicado Submetido em 12-03-2014 Categoria Bibliotecas e Aplicações Licença Website Submetido pelo Autor? Sim
  8. NazgulTuga

    Software Certificado, Ajuda!

    Boa noite, Já li vários posts, neste forum, sobre o assunto de OpenSSL. Li também o manual de construção dos Hash e respectivas chaves Públicas e Privadas. Li o documento "Certificação de Software (Modelo 24)", que se encontra em: "Declarações", que me indica todos os requisitos/obrigações que o meu software deve ter a funcionar. Tenho por tanto algumas dúvidas. Li por aí, que o OpenSSL, dá chaves ou encriptações diferentes de ambiente para ambiente, e de linguagem para linguagem. Este problema é fácil de resolver, estando eu a utilizar o PHP? [*]Sou obrigado a criar uma chave Privada e outra Pública. Mas tenho visto na internet de que existe uma Assinatura a ser preenchida pelo cliente. <?php $dn = array( "countryName" => 'XX', "stateOrProvinceName" => 'State', "localityName" => 'SomewhereCity', "organizationName" => 'MySelf', "organizationalUnitName" => 'Whatever', "commonName" => 'mySelf', "emailAddress" => 'user@domain.com' ); $privkeypass = '1234'; $numberofdays = 365; $privkey = openssl_pkey_new(); $csr = openssl_csr_new($dn, $privkey); $sscert = openssl_csr_sign($csr, null, $privkey, $numberofdays); openssl_x509_export($sscert, $publickey); openssl_pkey_export($privkey, $privatekey, $privkeypass); openssl_csr_export($csr, $csrStr); echo $privatekey.'<br><br>'; // Will hold the exported PriKey echo $publickey.'<br><br>'; // Will hold the exported PubKey echo $csrStr.'<br><br>'; // Will hold the exported Certificate ?> [*]Depois de as chaves criadas, tanto a pública como a privada, quais as que uso, como e onde? [*]Ao encriptar a informação: "2010-05-18;2010-05-18T11:22:19;FAC 001/14;3.12;", onde vou buscar o XML para enviar ao SAF-PT, e como crio? ​Existem templates já construidos, disponibilizados na internet ou tenho de pedir essa informação à AT? [*]Exemplo: link. [*]Alguém me consegue, explicar de forma clara, quais os requisitos que o meu software deve comprir para poder ser certificado? ​Eu pergunto isto porque nas Finanças, onde moro, dizem-me que não sabem de nada disso, e quando telefonei para lá, que tinha de ler o Modelo 24. Li o documento mas para mim é chinês. Eis o código que tenho e que se encontra a funcionar, apenas como teste. <?php # http://www.php.net/manual/pt_BR/book.openssl.php if (isset($_SERVER['HTTPS']) ) { echo "SECURE: This page is being accessed through a secure connection.<br><br>"; } else { echo "UNSECURE: This page is being access through an unsecure connection.<br><br>"; } // Create the keypair $config = array( "digest_alg" => "sha1", /* sha512*/ "private_key_bits" => 1024, "private_key_type" => OPENSSL_KEYTYPE_RSA, 'x509_extensions' => 'v3_ca' ); $res=openssl_pkey_new($config); // Get private key openssl_pkey_export($res, $privatekey); echo "Private Key:<BR>$privatekey<br><br>"; // Get public key $publickey=openssl_pkey_get_details($res); $publickey=$publickey["key"]; echo "Public Key:<BR>$publickey<BR><BR>"; $cleartext = '2010-05-18;2010-05-18T11:22:19;FAC 001/14;3.12;'; echo "Clear text:<br>$cleartext<BR><BR>"; openssl_public_encrypt($cleartext, $crypttext, $publickey); echo strlen($crypttext)."<br>"; echo "Crypt text:<br>$crypttext<BR><BR>"; $base64_data = base64_encode($crypttext); echo strlen($base64_data)."<br>"; echo "Base64 text:<br>$base64_data<BR><BR>"; openssl_private_decrypt($crypttext, $decrypted, $privatekey); echo strlen($decrypted)."<br>"; echo "Decrypted text:<BR>$decrypted<br><br>"; echo '<br/>'; echo '<br/>'; /* $pkeyid = openssl_get_privatekey($priv_key); openssl_sign($assinar,$signature,$pkeyid,"sha1"); return base64_encode($signature); */ # http://www.portugal-a-programar.pt/topic/58028-saft-openssl/page__hl__openssl # http://www.portugal-a-programar.pt/topic/61541-at-questoes-legais/page__hl__openssl # http://www.portugal-a-programar.pt/topic/61541-at-questoes-legais/page__st__20#entry517850 # http://www.portugal-a-programar.pt/topic/57734-utilizar-webservices-da-at/page__st__760__hl__openssl#entry503022 # GETs PUBLIC KEY object, from PRIVATE KEY $pubkey = openssl_get_privatekey($privatekey); # CREATES signature openssl_sign($cleartext, $signature, $pubkey, "sha1"); # GETs PUBLIC KEYID object from PUBLIC KEY $pubkeyid = openssl_get_publickey($publickey); # http://www.portugal-a-programar.pt/topic/63288-at-saft-facturacao-php/#entry532920 $sig64 = base64_encode($signature); echo strlen($sig64).'<br>'; echo $sig64.'<br>'; # CHECK IF data is VALID $Result = openssl_verify($cleartext, $signature, $pubkeyid,"sha1"); switch($Result) { case 0: { echo "ERROR: bad (there's something wrong)\n"; } break; case 1: { echo "SUCESS: signature ok (as it should be)\n"; } break; default: { echo "ERROR: ugly, error checking signature\n"; } break; } echo '<br>----------------------------<br><br>'; $dn = array("countryName" => 'XX', "stateOrProvinceName" => 'State', "localityName" => 'SomewhereCity', "organizationName" => 'MySelf', "organizationalUnitName" => 'Whatever', "commonName" => 'mySelf', "emailAddress" => 'user@domain.com'); $privkeypass = '1234'; $numberofdays = 365; $privkey = openssl_pkey_new($config); $csr = openssl_csr_new($dn, $privkey); $sscert = openssl_csr_sign($csr, null, $privkey, $numberofdays); openssl_x509_export($sscert, $publickey); openssl_pkey_export($privkey, $privatekey, $privkeypass); openssl_csr_export($csr, $csrStr); echo $privatekey.'<br><br>'; // Will hold the exported PriKey echo $publickey.'<br><br>'; // Will hold the exported PubKey echo $csrStr.'<br><br>'; // Will hold the exported Certificate ?> Básicamente o que pretendo, é uma ajuda "paço-a-paço" para poder desenvolver um software que possa ser certificado e que funcione de acordo com o Modelo 24 da AT. Não estou a pedir ajuda para o desenvolvimento do software, mas sim ajuda para a criação de um tutorial paço-a-paço, do que devo fazer com o mecanismo OpenSSL para que tudo fique a funcionar, tudo o que me é obrigatório ter por parte da AT, e o respectivo envio dessa mesma informação. Ou seja, desde a criação das chaves Pública e Privada, registo das informações de uma factura (Ex: "2010-05-18;2010-05-18T11:22:19;FAC 001/14;3.12;"), exportação para XML e envio. Como não conheço ninguém que tenha feito e desenvolvido um software certificado e que tenha passado pelo mesmo processo, pedia a vossa ajuda, com o intuito não só de me ajudar, mais também a outros interessados no assunto e que tenham as mesmas dúvidas ou dificuldades. Obrigado, Links úteis: http://www.primaverabss.com/pt/UserFiles/Downloads/Especifica%C3%A7%C3%A3o_Regras_T%C3%A9cnicas.pdf http://info.portaldasfinancas.gov.pt/NR/rdonlyres/AC494AE7-7E41-41C9-991B-15C3F0126ABF/0/ComunicacaodedadosdasFaturas20130418.pdf http://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/NEWS_SAF-T_PT.htm http://www.improxy.pt/LinkClick.aspx?fileticket=cmPEyh2GqWw%3D&tabid=788&mid=4195 http://repositorio.ipv.pt/handle/10400.19/1117 http://msmvps.com/blogs/albertosilva/archive/2010/08/30/processo-de-certifica-231-227-o-de-software-de-gest-227-o-e-c-243-digo-exemplo-em-vb-net-full-net-fx-amp-net-cf.aspx ​Resposta: SAF-T PT (Standard Audit File for Tax purposes) - Versão Portuguesa Tenho de criar uma maneira para preencher apenas o que é relevante para uma factura ou recibo, certo? Não vou utilizar tudo. (?)
  9. ccue2003

    AT - SAFT - Facturacao - Php

    Bom dia Embora já existe um forum com duvidas sobre o saft, a ideia deste forum é resumos, ou seja, apresentar já o codigo final que funcione: Assim o meu contributo: » Para quem pode executar no servidor linhas de comando # criacao do ficheiro formato - sha1 $comando="openssl dgst -sha1 -sign " . $hash_privada . " -out " . $ficheiro_assinado . " " . $ficheiro_temp; exec($comando); # criacao do ficheiro formato - base 64 $comando="openssl enc -base64 -in " . $ficheiro_assinado . " -out " . $ficheiro_encriptado . " -A"; exec($comando); Cumprimentos
  10. nunopicado

    WS-Dll.zip

    WS-Dll.zip Ver Ficheiro DLL com as funções de encriptação e envio por webservices de documentos de transporte para o servidor da AT Programa demonstração de como usar a DLL ALERTA NOVA VERSÃO: AtWS: Desde 2017-08-23 este projecto está marcado como obsoleto, e não terá nenhum tipo de apoio nesta versão. O projecto segue com o nome AtWS, que pode ser encontrado em github.com/nunopicado/AtWS A nova versão quebra a compatibilidade com a antiga, pela necessidade de melhorar a estrutura do código. No entanto, a compatibilização de código que esteja a usar a WS-DLL não é difícil, já que os parâmetros necessários são os mesmos e no mesmo formato, apenas indicados em locais ligeiramente diferentes. NOTAS: Requer instalação da biblioteca da Microsoft CAPICOM 2.0 (http://www.microsoft.com/pt-pt/download/details.aspx?id=25281) Requer que o certificado esteja instalado no Windows ATENÇÃO: Esta é uma DLL de testes para fins meramente didáticos. Não foi alvo de testes intensivos que seriam necessários para ambiente de produção. Usem por vosso risco. Funções: ValidadePFX (PFXFile,PFXPass:WideString):WideString; Retorna a data de expiração do certificado. Aceita por parâmetro duas strings, em formato UniCode, e retorna uma no mesmo formato. O primeiro parâmetro é o caminho completo para o ficheiro do certificado (Extensão PFX), o segundo leva a password do certificado. A Naming Convention é StdCall, standard do Windows. InitWS(SoapURL,SoapAction:WideString;TimeOut:Integer); Inicializa a DLL. Deve ser chamada antes de qualquer envio de documentos (não precisa ser chamada se for apenas para verificar a validade). Aceita por parâmetro duas strings, em formato UniCode, e um valor inteiro. O primeiro parâmetro é o URL do serviço AT, o segundo é a SOAP Action a usar, o terceiro é o número de segundos para o Timeout. Normalmente, 10 segundos é suficiente. Em máquinas lentas/net lenta, subir um pouco pode ser necessário. A Naming Convention é StdCall, standard do Windows. ValidaTDoc(XMLData,PFXFile,PFXPass:WideString):WideString; Envia um documento de transporte para a AT. Aceita por parâmetro três strings, em formato UniCode. O primeiro parâmetro é o documento a enviar, em formato XML, de acordo com as indicações da AT. As excepções são os campos Password (que deve ir em texto simples, e não encriptado), e os campos Nonce e Created, que devem ir vazios. A DLL encarrega-se de encriptar a password e criar os campos Nonce e Created. Os segundo e terceiro parâmetros são os dados do certificado (caminho completo e password). Retorna uma string, UniCode também, com o XML de resposta da AT, ou uma string vazia caso não haja resposta. A Naming Convention é StdCall, standard do Windows. Requisitos: Para funcionar, é necessário instalar no PC um pacote da Microsoft, chamado CAPICOM v2.0. Este tem também uma dll (capicom.dll) que deve ser registada no Windows (regsvr32 capicom.dll). É necessário também que, no Internet Explorer (mesmo que este não seja usado) se defina nas opções avançadas o TLS 1.2 como desabilitado. Por regra, este protocolo já vinha desabilitado, mas no Windows 8.1, ou no Windows 7/8 com o IE 11 instalado, este protocolo é activado. Deve-se desactivar. É preciso ainda o certificado, de produção ou de testes, atribuído pela AT. O ficheiro ChavePublicaAT, ao contrário do que é costume, aqui não é necessário, pois a chave da AT está embutida no código. AVISO: De notar que esta DLL não foi alvo de testes extensivos, pelo que o seu uso é por conta e risco do utilizador. Eu uso-a, com algumas alterações para fazer face às minhas necessidades, e nunca me deu problema, mas ainda assim, não posso garantir nada. Submetido por nunopicado Submetido em 11-06-2013 Categoria Bibliotecas e Aplicações Licença Website https://github.com/nunopicado/AtWS Submetido pelo Autor? Sim  
×

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.