Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 08/19/2019 in Posts

  1. 2 points
    Vamos lá a ver, O DL 28/2019 estabeleceu o dia 10 como prazo de entrega, com o período transitório até ao fim do ano com o prazo até ao dia 15. Agora a Lei 119/2019 vem estabelecer o dia 12 em definitivo com efeitos a partir de 1 de Outubro. Quando as leis são contraditórias, vale a mais recente. Por isso, as faturas emitidas a partir do dia 1 de Outubro têm de ser comunicadas até ao dia 12 do mês seguinte. E isto manter-se-á até que nova legislação venha dispor em contrário.
  2. 2 points
    A partir de Fevereiro de 2019 que a data limite de entrega do SAF-T passou a ser o dia 15 de cada mês, Importa referir que em janeiro de 2020 o limite passa a ser o dia 10 ( com certeza sairá nova legislação neste sentido ). Esta nova medida do Governo - e-fatura 2.0 - encurtará o prazo de entrega em 10 dias (anteriormente o ficheiro SAF-T tinha de ser entregue até ao dia 20).
  3. 2 points
    Neste último despacho sobre o assunto: Despacho_254_2019_XXI_SEAF prometeram mais informações, esclarecimentos e orientações até 1 de Outubro de 2019
  4. 2 points
    Não é possível descarregar o ficheiro SAF-T do eFatura. O que poderá ser feito é scrapping ou, com jeitinho, usar a API do eFatura (que não está documentada). Mas aqui não se obtém o detalhe da faturação (que produtos e serviços foram faturados) o que limita as opções de contabilização. O mais fácil mesmo será pedir o SAF-T ao cliente 😀
  5. 1 point
    CrominhO isto apenas diz respeito ao SAF-T da contabilidade. Como o Vitor Pereira disse antes, a partir de 2020 a data de entrega do SAF-T mensal será (se não houver nada dito em contrário) até ao dia 10. Podes encontrar a legislação sobre isto no Decreto-Lei 28/2019, de 15 de Fevereiro. Por sua vez nas normas transitórias, artigo 43.º, temos
  6. 1 point
    Relativamente ao SAF-T de contabilidade, a Lei 119/2019 (de 18 de Setembro) diz o seguinte:
  7. 1 point
    Viva, Sim deve emitir manualmente em pré-impressos (tipografias autorizadas) e depois mais tarde recolher (recuperar) os mesmos em séries próprias do software para mais tarde serem devidamente exportados no SAFT com indicação de serem "manuais" seguindo as respectivas regras de exportação. Sobre a parte legal, podes ler a lei mais recente Decreto-Lei n.º 28/2019, de 15/02, onde no Artigo 4.º, Ponto 4, dizem: "4 - Em caso de inoperacionalidade do programa de faturação, os sujeitos passivos referidos no n.º 1 devem emitir faturas ou documentos fiscalmente relevantes pré-impressos em tipografias autorizadas, os quais devem posteriormente ser recuperados para o programa." cps
  8. 1 point
    Boa noite, Se é muito noob nestas coisas de faturação eu não te aconselho a usar um programa de faturação gratuito, ter suporte professional para mim é fundamental quando se trata de faturação. O melhor conselho que te posso dar é pede assistência ao produtor do software que estás a usar.
  9. 1 point
    Viva, Todas as Software Houses, tem esse problema de X em X tempo quando um cliente tem instalações do mesmo software independentes/isoladas para o mesmo contribuinte. A primeira coisa (que já o deve ter feito) é PARAR de imediato a série de um dos locais (POS) e criar uma nova série específica para esse local (POS), distinta do outro. [Se quiser também pode parar nos dois - a tal série problemática - e de seguida abrir duas novas DISTINTAS em cada POS livre de erros : conforme achar melhor] A segunda coisa, salvo erro é contactar a AT, dizer que, são instalações independentes (isoladas), que o cliente (distribuidor) por lapso não teve o cuidado de criar séries distintas, só agora deram com o erro, já criaram uma nova série para evitar futuros duplicados e que solicitam informação /ajuda da parte deles para "aceitarem" os duplicados e/ou darem instruções do que fazer. Penso que respondem a dar solução (só não me recordo se acabam por aceitar [+provável], ou se pedem algo, ou se pedem uma declaração de que tal aconteceu e porque (escrever o que está acima)]. cps,
  10. 1 point
    Boa tarde, A mim também acontece o mesmo, mas reparei que em máquinas de 32 bits isso não acontece. Se compilar a minha aplicação como x64 o erro também não acontece infelizmente tenho que a compilar com x86 e é nessa altura que dá erro se a máquina for de 64bis
  11. 1 point
    Ao ler o enunciado do problema, tenho uma leitura completamente diferente (provavelmente ainda o vai desenvolver), nomeadamente: - não vejo em lado algum que deve ignorar os espaços (para mim é um carácter normal) - diz caracteres distintos, portanto também não é para contar os outros (diferentes de espaços) mas sim os DISTINTOS Até fui procurar um calculo online, para demonstrar o que "leio" e encontrei este (https://www.somacon.com/p525.php) onde a string "Portugal a Programar" tem os seguintes caracteres DISTINTOS: Code: 32 0x20 ' ' Count: 2 Code: 80 0x50 'P' Count: 2 Code: 97 0x61 'a' Count: 4 Code: 103 0x67 'g' Count: 2 Code: 108 0x6C 'l' Count: 1 Code: 109 0x6D 'm' Count: 1 Code: 111 0x6F 'o' Count: 2 Code: 114 0x72 'r' Count: 4 Code: 116 0x74 't' Count: 1 Code: 117 0x75 'u' Count: 1 -----TOTAL CHARACTERS: 20 Não será uma aplicação com este tipo de resultado que deves desenvolver?
  12. 1 point
    Olá. Permite-me primeiro fazer alguns reparos ao código em si. É boa prática que os #defines sejam em letra maiúscula. Depois, é bom também utiliza-los coerentemente, ou seja, fgets(nome, N, stdin); em vez do valor hardcoded. Depois, for (i=0; i < strlen(nome) != '\0'; i++) { count++; } isto é redundante. Faz exatamente o mesmo do que o strlen(). " i < strlen(nome) != '\0' " Acho que devias rever isto. Não sei se percebes muito bem o que é que a função strlen() faz, e o significado do '\0'. No entanto, aproveitando esse teu pedaço de código, deixo uma dica para os espaços: for (i=0; i < strlen(nome) != '\0'; i++) { if (nome[i] != ' ') count++; } A tua solução está a dar um caracater a mais. Mas deixo isso para resolveres, que também é preciso estudar um bocadinho
  13. 1 point
    Viva, Tens 2 problemas: 1) estas a calcular os "juros" com as variáveis "capital", "taxa" e "dias" ANTES de perguntar o valor das mesmas ao operador. (a primeira vez que corre os juros são ZERO, na segunda e seguintes vais ver os juros do cálculo anterior) 2) ao contrário do que dizes o programa termina com -1, mas como fazes sempre as 3 (tres) perguntas "capital?", "taxa?", "dias?" independentemente de o operador introduzir -1 no capital, "dá a impressão" de que o programa continua a correr até ao fim das 3 perguntas. aconselhava a reveres o fluxo do programa, para o cálculo ser correcto e a experiência com o operador ser a mais natural possível. cps,
  14. 1 point
    Ainda sobre a Factura Electrónica para a Administração Pública, ontem, 5 de Setembro, foi publicada a Portaria 289/2019.
  15. 1 point
    Tanto quanto sei o algoritmo de calculo do último dígito de controlo deveria ser o mesmo. https://info.portaldasfinancas.gov.pt/pt/destaques/Paginas/Atribuicao_Nova_Gama_de_NIF_a_Pessoas_Singulares.aspx Nota: - há por aí muitos algoritmos NIFPT que logo no início tem algo assim a limitar o primeiro digito if ("1256789".indexOf(nif.charAt(0)) == -1) return false; - no caso acima, iria falhar por [ainda] não estar a ser considerado o novo início por "3" - corrigida esta linha, o restante [linhas seguintes] cálculo do último dígito de controlo deveria manter-se correcto Questões: - Que algoritmo está a usar? Tem um exemplo de um novo nif começado por "3"?
  16. 1 point
    Eu sei. Eu referi isso Já corrigi o erro. Mantive a inserir como string normal e no PHP faço a conversão. iconv(mb_detect_encoding($text, mb_detect_order(), true), "UTF-8", $text);
  17. 1 point
    O que necessitas é: =IF(($D$1-D92)<=30;"0-30 Dias";IF(($D$1-D92)<=60;"31-60 Dias";IF(($D$1-D92)<=90;"61-90 Dias";"+ 90 Dias"))) Atenção, noto que utilizas como separador de parâmetro a vírgula. Não sei se é erro teu (mais provável) ou configuração. Não precisas de utilizar o AND. O resto é uma questão de ordenação e lógica. Cumprimentos
  18. 1 point
    No artigo 3.º do Decreto-Lei 198/2012 refere que Não descrimina se são os recibos do regime de caixa ou do geral, logo, deverão ser todos os que são emitidos.
  19. 1 point
    Por acaso não és Jesus Molina? Não ficam a vazio, têm de ser "anulados" com por exemplo "X" por forma a não ser preenchido manualmente. por exemplo, NIF XXXXXXXXX, e no caso do NIF não podes imprimir o 999999990, mete por exemplo Consumidor Final ou algo do género. Sim, a) Não, a FS como ja tinha dito em cima, não contempla impressão dos dados do Cliente para além do NIF, b) aqui é igual, a única diferença é que metes o NIF no SAFT 😕
  20. 1 point
    Fonte: https://arstechnica.com/information-technology/2019/07/dataspii-inside-the-debacle-that-dished-private-data-from-apple-tesla-blue-origin-and-4m-people/ Desde há algum tempo que temos regras CSP definidas aqui no fórum, e temos uma quantidade significativa de erros por conteúdos que foram bloqueados mas que não estão nas nossas páginas. Alguns parecem inócuos, mas também há vários casos de imagens/scripts para tracking e ads. Enfim, o panorama das extensões para browsers não inspira muita confiança.
  21. 1 point
    Contactei a AT em Janeiro precisamente sobre essa questão. Coloco abaixo a minha questão e a resposta deles.
  22. 1 point
    é para isso que servem as células de carga, dependendo do peso, variam a tensão em mmV/V como o sinal é muito baixo mmV/V, é preciso usar conversores ou cartas do PLC que especificas
  23. 1 point
    A parte física há várias hipóteses, o normal é usar células de carga. Se usares células de carga, tens 2 hipóteses de a ligar ao PLC, diretamente, se o PLC tiver cartas especificas para isso ou com um controlador e uma entrada analógica do PLC A nível de PLC a programação de uma carta especifica para células de carga, ou uma entrada analógica (com o valor do peso) é completamente diferente
  24. 1 point
    Aparentemente (digo isto porque nunca experimentei) ao clicares com o botão direito em cima do controlo da GridView aparece-te um menu para fazeres a customização das colunas (as que queres que aparecem e em que ordem) e ai podes adicionar um botão, pelo que percebi cada item da lista vai ter um botão. Assim sendo será só adicionares o código que queres ao event_handler do botão. Deixo-te aqui os sites onde encontrei esta informação: https://www.techotopia.com/index.php/Visual_Basic_and_the_DataGridView_Control e https://docs.microsoft.com/en-us/previous-versions/dotnet/articles/bb498196(v=msdn.10) Boa sorte.
  25. 1 point
    Boa noite, @nuno35. Numa list comprehension em Haskell, a condição booleana não é feita dessa forma, não havendo sequer o uso de let. A sintaxe geral é a seguinte (feita de cabeça, poderá conter incorrecções e não contemplar todos os casos possíveis): [funcao(elemento) | elemento <- lista, ..., condição1, ...] Portanto, no teu caso deverás usar algo como isto: [(x, y) | x <- [1..numero], y <- [numero, numero-1 .. 0], x + y == numero] Cumprimentos.
  26. 1 point
    Dica: usa a função zip. Prelude> zip [6,7,8] [1,2,3] [(6,1),(7,2),(8,3)] Depois tens várias formas de concluir, entre elas um map ou uma comprehension list. Cumprimentos.
  27. 1 point
    Bom, antes de mais tens de ter a base de dados criada.. Depois depende da versão do office que tens instalado o meu código é para o 2007. Tens de ir ao editor de VBA, selecionar tools , depois references, e adicionas os seguintes (provavelmente estão a mais, mas antes a mais que a menos..(no caso de não te aparecerem os mesmos números, escolhe o numero mais alto) Microsoft Active Data Objects 2.8 Library Microsoft DAO 3.6 Object Library Microsoft OLE Provider for OLAP serviçe connection dialog 8.0 Dim appAccess As Object Dim strConPathToSamples As String Dim strDb As String Dim tauto, nauto, datainf As String tauto = "Iva" nauto = Me.numauto.Value datainf = Me.datainf.Value ' Inicializa a string do caminho da base de dados strConPathToSamples = "C:\Teste\Dados Autos.mdb" strDb = strConPathToSamples 'Cria uma nova instancia do Microsoft Access. Set appAccess = _ CreateObject("Access.Application") appAccess.OpenCurrentDatabase strConPathToSamples ' Abre e insere os dados appAccess.DoCmd.RunSQL "(insert into Auto (N_Auto, Data) values ('" & nauto & "', '" & datainf & "'))" Comigo funciona.. Boa sorte.
×
×
  • 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.