Jump to content

Leaderboard

  1. nunopicado

    nunopicado

    Moderator


    • Points

      1,177

    • Content Count

      6,044


  2. HappyHippyHippo

    HappyHippyHippo

    Member


    • Points

      1,163

    • Content Count

      14,776


  3. thoga31

    thoga31

    Moderator


    • Points

      579

    • Content Count

      7,285


  4. marcolopes

    marcolopes

    Member


    • Points

      407

    • Content Count

      1,411



Popular Content

Showing content with the highest reputation since 05/13/2012 in Posts

  1. 5 points
    Para quem possa interessar, fica aqui um exemplo de questionário que anda a circular relativo as inspeções no âmbito da faturação:
  2. 5 points
    E está feito... Aveiro, aqui vou eu. Meia dúzia de pormenores para ajustar, e um "mantenha o programa assim que está bom" na hora da despedida... 2 senhores, de trato cordial e bem disposto, que estiveram a analisar tudo o que tinham na checklist, mais o que se foram lembrando durante o decorrer da entrevista. Ainda me perdoaram a fenomenal gafe de estar a imprimir para pdf mas gerar extensão html (é no que dá fazer alterações de última hora e testar pela metade). Mais tarde faço um relato mais pormenorizado!
  3. 4 points
    Olá, A Autoridade Tributária agora já me deu uma resposta mais concreta sobre a pergunta efectuada, pelo que cito para futuras dúvidas: Obrigado, abraço.
  4. 4 points
    Relativamente a este assunto, ontem tivemos uma reunião com DIgitalSign ( empresa emissora de Certificados Digitais ), pois a Faturação Eletrónica vai obrigar a um Certificado por cada utilizador ( 125 € por ano e por cliente ) Na reunião informaram-nos que também estão com reuniões agendadas com as grandes Softwares-Houses pois na verdade ainda ninguém tem o sistema a funcionar ( muito embora algumas publicitem que sim ) Também nos informaram que a informação que tinha chegado até eles é de que seria utilizado o UBL 2.1 e não o UBL 2.0 como se tem falado aqui no Forum, mas também não tinham certezas de nada Como tal, a situação é: A Portaria que vai regular ainda não saiu …... A data de inicio já vai em Abril de 2019 …... As Empresas do Estado ainda não tem Software preparado para recolha das Faturas Eletrónicas …. e por ai fora ….. Vamos aguardando e juntando toda a informação que vai saindo, mas com toda a certeza a menos fiável é a publicada pelos jornalista, e que devemos descartar pois tem objetivos sensacionalistas e não profissionais
  5. 4 points
    Se alguém usar .NET, o seguinte link poderá ter interesse: https://github.com/UblSharp/UblSharp
  6. 4 points
    Estou 100% de acordo contigo. Obviamente o que interessa é o que já foi aqui discutido. E que não deixemos "baldar" para o processo de certificação. Quem é que no seu bom-senso vai mudar softwares para poder emitir faturas de 1 ou 2 semanas de Janeiro?! NINGUEM. Obviamente que nós não mandamos, mas não é lógico multarem ABC por ter emitido vendas até (p.ex) 15 de Janeiro, porque o processo de Certificação demorou etc etc etc. Quem precisar de certificar, que mande a papelada a tempo e horas, e o resto que "deixe andar"... porque os Senhores da AT, devem estar preocupados com cadeias ENORMES de retalho, Stapples, RadioPopular, MediaMarkt etc etc etc que usam software pra uso próprio. Esses sim, terão "prioridade" pois na cabeça de muita gente, não podem parar... Ja imaginaram o que era a MediaMark não abrir lojas 15dias em Janeiro por causa de não ter o Certificado? Quem paga o prejuizo? A culpa é de quem, uma vez que o cliente cumpre os prazos?? (Além disso, já pensaram no IVA €€€ que o estado perde pelos dias destas lojas fechadas?!?) Ninguem vai levar multas desde que cumpram com os prazos pra mandar a papelada pra Lisboa, e aguardem por um telefonema... Agora parar por causa de não ter Certificado?! NAO FAZ SENTIDO.
  7. 4 points
    Bem, para além de que com o avançar do tempo estamos sempre a detetar novas situações, eu acho que existe aqui uma evidente falta de informação e esclarecimentos, por parte da AT. Esta, para além da pouca documentação disponibilizada, que claramente é ambígua, não responde às solicitações efetuadas, o que é grave pois ignora quem realmente implementa os requisitos que eles definem. De forma a demonstrarmos a nossa insatisfação, eu acho que deveriamos preparar e uniformizar um texto que, posteriormente, pudesse, por cada um de nós, ser enviado, por email, à AT. Nesse texto: Demonstrariamos o nosso desagrado, Reclamariamos por uma fonte de informação adequada, atempada e precisa, Enumeravamos uma série de pontos a esclarecer. Se fizermos lá chegar uns quantos emails pode ser que nos dêm a atenção devida e lancem uma FAQ com os esclarecimentos aos pontos enumerados. Caso contrário, meus amigos..., estaremos completamente entalados, quer pela AT, quer pelos nossos chefes e quer pelos nossos clientes. Duas semanas não dá margem para planear, desenvolver, testar e distribuir as nossas aplicações. A AT tem de perceber que por detrás de um software está todo um processo de engenharia que não pode/deve ser ignorado só porque são eles a definir os requisitos.
  8. 4 points
    Eu também nunca tinha ouvido falar... Nada como um cliente aos berros ao telefone logo pela manhã para aprendermos estas coisas...
  9. 4 points
    Não se trata de uma opinião ou não. Regras são regras, e não faz qualquer sentido criar uma secção cujo objectivo principal é explorar alguma área cinza na lei, ou até mesmo violar a mesma. Dado isto, dou este tópico como encerrado. Obrigado pela sugestão.
  10. 3 points
    Acabei de receber a resposta a ilink: O seu pedido foi recebido e analisado atentamente. Ticket ID: 2018121788260 Assunto: e-Invoicing Boa tarde Exmo. Sr. Vítor Pereira, Informamos que a integração com o nosso software iLink é gratuito. Assim sendo, de forma a podermos disponibilizar a documentação e proceder à criação dos acessos, deverão ,apenas, indicar-nos o nome do Vosso ERP. Por favor, não hesite em contactar-nos se necessitar de ajuda em mais alguma questão. Filipa Câmara ACIN iCloud Solutions Lda
  11. 3 points
    De modo geral, Python é mais usado como linguagem de scripting enquanto que Java é mais usado para projectos, especialmente situações onde OOP tem claras vantagens, como qualquer software com uma forte componente de bases de dados. Nunca gostei da abordagem de OOP do Python e acho que não sou o único. Java também é a linguagem de eleição para Android. Situações em que escolheria Python: computação cientifica, inteligência artificial, machine learning. Python tem excelentes bibliotecas nestas áreas (e.g., scikit-learn), embora Java também não esteja de todo mal servido (e.g., o universo Hadoop). Scripts que vão ser executados muito poucas vezes (por vezes 1). Ou seja, "código de escrever e deitar fora". Parsing de ficheiros, migração de dados. Qualquer operação no sistema operativo que seja difícil resolver usando somente bash. Exploração de dados, elaboração de gráficos, etc. Se as opções estiverem limitadas a Java ou Python, escolheria uma framework de Python para desenvolvimento web. Disclaimer: Isto é uma opinião pessoal e já não programo regularmente em Python há 5 anos. Tudo o que disse tem várias excepções, algumas bastante conhecidas. São duas linguagens maduras e generalistas, pelo que só num caso muito excepcional diria "essa linguagem não é uma boa escolha".
  12. 3 points
    Pelo menos até instruções em contrário, o entendimento da AT é este:
  13. 3 points
    Não, não tenho no carro... Quando vou devolver o material, faço guia na loja. Quando vou levantar, o cliente passa-me guia ele. Se acaso for um cliente que não possa passar guias, ligo à loja, e de lá passam-me a guia e dizem-me o número. Quem tiver livro de GTs manuais, pode usar, e comunica no espaço de 5 dias. Não está isento. Deverá quando faz a guia comunicar via telefónica, e depois ir preencher no portal o restante no prazo indicado. Isenção só para quem tenha faturado menos de 100 000€ no exercício do ano anterior. Não, as GTs não obrigam à criação de FT (embora é claro também não proíbam). Só as GRs é que tens de faturar. Eu uso o mesmo sistema para todos os documentos... Original, Duplicado, Triplicado, e por aí fora na primeira impressão, na reimpressão meto o 2ª via.
  14. 3 points
    Segunda ronda: Mais em: http://jonasnuts.com/faq-lei-da-copia-privada-pl118-491801
  15. 3 points
    Titulo do Projecto: P@P Magazine Reader Última Versão:1.0 Site Oficial: https://github.com/pikax/papreader Store: http://apps.microsoft.com/windows/en-us/app/revista-programar-reader/a03a9a04-ce91-4de8-a7fa-c57db7221037 Licença:GPL v2.0 Líder do Projecto:pikax Membros Actuais do Projecto:pikax Screenshots: Versao antiga: Descrição do Projecto: Visto não haver a aplicação actualizada para visualizar a revista do P@P no windows 8. Cada vez que se entra na aplicação ela vai ao site da revista Programar e vai ver quais são as revistas que existem. Download executável: Windows Store Plataforma: Windows 8/8.1 (x86,x64 e ARM) Antigas: Versão 1.0: Adicionado leitura offline das revistas que foram feitas o download.
  16. 3 points
    Atenção, não confundir "pequeno retalhista" com o "regime dos pequenos retalhistas" previsto no artigo 60 do CIVA. O regime dos pequenos retalhistas é um regime especial pelo qual o comerciante em vez de pagar o IVA pelas faturas que emite, paga o IVA pelas compras que faz. Neste caso, para efeitos do IVA a pagar em cada trimestre, é ignorado o que o comerciante vendeu e o IVA a pagar é 25% do IVA das faturas de compra, podendo a este valor deduzir apenas o IVA das aquisições de imobilizados.
  17. 3 points
    Qundo pedi a primeira das minhas certificações (POS) indicaram-me 7 casas decimais, mas só nos calculos de separação do valor sem iva, a indicar no SAFT. Aqui um exemplo: <Invoice> <InvoiceNo>T 13/057777</InvoiceNo> ... <Line> <LineNumber>1</LineNumber> <ProductCode>123</ProductCode> <ProductDescription>Pao</ProductDescription> <Quantity>1.000</Quantity> <UnitOfMeasure>und</UnitOfMeasure> <UnitPrice>0.1037736</UnitPrice> <TaxPointDate>2013-06-01</TaxPointDate> <Description>Pao</Description> <CreditAmount>0.1037736</CreditAmount> <Tax> <TaxType>IVA</TaxType> <TaxCountryRegion>PT</TaxCountryRegion> <TaxCode>RED</TaxCode> <TaxPercentage>6.00</TaxPercentage> </Tax> </Line> <DocumentTotals> <TaxPayable>0.01</TaxPayable> <NetTotal>0.10</NetTotal> <GrossTotal>0.11</GrossTotal> </DocumentTotals> </Invoice> Nas bases de dados, documentos, etc.. fica tudo a 2 casas decimais. Se se vende 1 pão por 11 centimos, a fatura tem que ser de 11 centimos, penso eu de que... Quem recebe a fatura vai contabilizá-la por 10 centimos de produto e 1 centimo de iva,tal como indicado no DocumentTotals, não creio que haja outra forma. Contabilizar com 3 ou mais casas decimais parece-me ridículo, não há moedas de décimos de centimo. Na perspetiva da AT: Pegam no UnitPrice sem IVA, multiplicam pela quantidade e aplicam a taxa do IVA. Para bater certo com o DocumentTotals, as tais 7 casas decimais serão suficientes, e aceitáveis na maioria das situações. Mas não vejo nenhum problema em usar 10 ou mais, para algum tipo de negócio mais específico.
  18. 3 points
    Não há muito que se possa dizer nessas condições. Viseu não é propriamente uma zona do país conhecida pelo seu grande mercado de desenvolvimento de software, se estás condicionado a ficar por Viseu então terás mais dificuldades. De qualquer modo, procura em sites destinados a freelancers, não te limites apenas a um e nunca apenas a um em Português , e procura activamente oportunidades nesses locais. Edit: Há sempre algumas coisas a fazer que não são expecificas de um regime freelancer, além de procurar activamente por propostas de trabalho é importante ter um bom CV, por exemplo no Linkedin, ter trabalho para mostrar também é bom, pelo que se não tiveres projectos teus podes sempre colaborar com projectos livres para melhorares os teus conhecimentos, ter um portfolio bem estruturado é mais um ponto extra.
  19. 3 points
    Boas pessoal, eu estou seguindo este vídeos, acho que são um dos melhores vídeos de Java que já vi, e estou a aprender muito. Os são um total de 116 vídeos publicados pela Univercidade XTI. São falados em PT-BR e ensinam sobre a programar JAVA desde 0. http://www.youtube.com/watch?v=dqL7cG4J6gI&list=SPA03DEA5320ECBF85 P.S: caso já alguém tenha publicado estes vídeos no Fórum, diga-me, que eu vou remover este Tópico.
  20. 3 points
    Os cursos profissionais não estão mal implementados. Claro que podem ter falhas, mas ainda não conheci um curso que seja que não tenha pontos menos bons. O problema é que o actual sistema de ensino, para os cursos profissionais, das duas, uma: ou entras na faculdade com aquilo que fizeste no curso profissional, sem exames, ou então tens de fazer os mesmos exames que um CCH-CT. Eu não concordo nem com um nem com o outro. Primeiro, tendo em conta que os cursos profissionais têm menos carga teórica que o CCH-CT, e no CCH-CT somos avaliados à brava para podermos entrar na faculdade, então não é justo que os profissionais entrem na faculdade sem um mínimo de equivalência que seja justa. Segundo, não se pode esperar que um aluno de um curso profissional tenha o mesmo nível de aptidões que os alunos de CCH-CT nos Exames, sendo o exemplo clássico o de Matemática. Há aqui falhas nesta transição, e a ideia de "igualdade" não pode ser aplicada as is. Há diferenças entre os cursos, pelo que a entrada no Ensino Superior deverá ter aqui um ajuste de equivalência. É claro que criar Exames apenas para os cursos profissionais e torná-los equivalentes aos do CCH-CT não é o melhor, porque assim todos vão para os cursos profissionais para terem as regalias, a menor carga teórica e, consequentemente, exames menos puxados (comparem Matemática A com a B, são mundos diferentes). Não é minha missão encontrar soluções, mas enquanto ex-aluno do Ensino Secundário e que assistiu ao que assistiu, tenho o direito de expressar a minha opinião, a qual se resume a isto: há falhas no nosso sistema de ensino que, ao tentar dar oportunidades iguais a todos, cria o esboço de uma sociedade estudantil feita de alunos de primeira e de segunda. É lamentável que esta ideia se tenha formado, se mantenha e promete manter-se ou até mesmo reforçar-se.
  21. 3 points
    Deixem aqui os links uteis para quem programa na web, mas nao so! PasteHTML (quase como o conhecido pastebin, da para colar texto, ou html, e poder assim visualizar logo html como pagina e nao codigo, possibilidade de ter conta, ou entao em anonimo): http://pastehtml.com JsFiddle (Util para colar/partilhar codigo JS[suporta varias bibliotecas como jquery e mootools], podendo testar logo o codigo): http://jsfiddle.net JS Beautifier (Serve para identar[Formatar o codigo com os avanços] de forma automatica codigo JS e HTML): http://jsbeautifier.org/ PasteBin (Para quem nao conhece, um dos melhores sites para colar codigo, suporta varias linguagens, nao so web mas como de desktop): http://pastebin.com/ Privnote (Serve para partilhar notas/pequenos textos de forma segura e privada, uma vez que mal o link de partilha seja acedido[lido], ele se destroi ;] ) https://privnote.com/ Um json decoder: http://json.parser.online.fr/ Converter palavra em MD5: http://md5.gromweb.com/ Base64 Decoder http://base64decode.org/ Base64 Encoder http://www.base64encode.org/ Url Encode/Decode http://meyerweb.com/eric/tools/dencoder/ Multi Salted Hash Generator http://www.larkrisewebservices.co.uk/hasher.php MD5 Decoder http://ptsec.info/wp/hash/ Password/Security Salt Generator http://www.sethcardoza.com/tools/random_password_generator TextReverse http://textop.us/Text-tools/Reverse-Text Descompressor / Desfucador de CSS http://cssbeautify.com/ Minify/Compress JS http://minifyjs.com/javascript-compressor/ Minify/Compress CSS http://www.minifycss.com/css-compressor/ Analise de website (SEO e Performance) http://www.woorank.com/pt HTML, JS e CSS beautifier http://dirtymarkup.com/ PHP array beautifier http://phillihp.com/toolz/php-array-beautifier/ Conversor de timestramp unix http://unixtimestamp.50x.eu/ CSS Image Sprite Generator http://csssprites.com/ Validatores de markup, de SEO, de performance e muito mais http://www.jonasjohn.de/test-tool/ Cria codigo CSS de todas as id's e classes usadas http://www.primercss.com/index.php Testes de SEO http://www.woorank.com/pt Testes de velocidade de carregamento https://www.pingdom.com/ PHP code beautifier http://beta.phpformatter.com/ Geradores de Sitemap's para Google e outros motores de busca http://www.auditmypc.com/xml-sitemap.asp http://rapid.searchmetrics.com/seo-tools/extras/sitemap-generator,25.html http://www.xml-sitemaps.com Gerador de ficheiros robots.txt http://tools.seobook.com/robots-txt/generator/ Gerador de menu dropdown vertical/horizontal em css3 puro http://cssmenumaker.com/ Frameworks/Estruturas CSS/HTML/JS http://www.initializr.com/ http://stuffandnonsense.co.uk/projects/320andup/ http://www.getskeleton.com/#forms http://978.gs/ http://foundation.zurb.com/ http://twitter.github.com/bootstrap/ Debugger's online de JS http://tinkerbin.com/ http://jsbin.com/ Debugger's online de CSS/HTML http://dabblet.com/ http://cssdesk.com/ Editores/Debuggers de varias linguagens online (java, php, c++, etc...) http://ideone.com/ https://compilr.com/ Criar grelhas: http://grid.mindplay.dk Desenhar: http://drawter.com/ Criar Layouts: http://builder.yaml.de/ Formatar http://www.lonniebest.com/FormatCSS/ Ver Aspecto do Tipo de Letra: http://www.csstypeset.com/ Limpar e optimizar css: http://www.cleancss.com/ Comparar tipos de letra: http://www.typetester.org/ Passar código xhtml a css: http://lab.xms.pl/css-generator/ Validar css pela w3c: http://jigsaw.w3.org/css-validator/ portas abertas: http://www.yougetsignal.com/tools/open-ports/ css sprites (sao diferentes!): http://wearekiss.com/spritepad http://spritepad.wearekiss.com/ isto é qqr coisa para ganhar visitas ou ranking seo... http://www.findthiss.com/ identar codigo: http://ctrlq.org/beautifier/ http://tools.arantius.com/tabifier imagens em base64 (para incorporar em css por exemplo): http://www.base64-image.de/ webfonts: http://www.fontsquirrel.com/tools/webfont-generator http://www.font-face-generator.com geradores de css3 http://www.css3maker.com/ http://css3please.com/ http://www.css3world.com/ previsualizar ficheiros html no github: http://htmlpreview.github.io/ otimizador de codigo js: http://closure-compiler.appspot.com/home crossBrowser tester: http://www.modern.ie/ tutoriais de PS, flash, 3d... http://www.pixel2life.com/ icon packs: http://icomoon.io/ gerador de padroes de cores para twitter bootstrap: http://www.lavishbootstrap.com/ http://www.stylebootstrap.info css3 compressor (minify): http://devilo.us/# biblioteca de expressoes regulares (REGEX) http://regexlib.com/?AspxAutoDetectCookieSupport=1 site que junta os docs das apis de varias tecnologias (html5, css3,jquery, php...) http://devdocs.io/ testar em diferentes resoluçoes (mobile, tablet...) http://mobiletest.me/ Ajudem la este post pessoal, ponham ai as vossas webreliquias de ajuda a webdevelopers...
  22. 3 points
    Diz a Portaria 340/2013: Artigo 3, Número 3, Alínea c) Artigo 6, Número 1, Alínea c) Artigo 7, Número 2, Alínea a), Ponto iii) Artigo 7, Número 2, Alínea b), Ponto iii) E diz o Ofício Circulado 50001/2013: Ponto 1.7
  23. 3 points
    Sim, em relação ao hash anterior: da mesma série sempre. Em relação ao pimeiro documento do ano, o hash do documento anterior não é usado. Ou seja, depois do ponto e vírgula não fica nada, como se fosse o primeiro documento da série.
  24. 3 points
    Não quero alimentar o offtopic, mas o certificado deles é o 369/AT
  25. 3 points
    Ninguém nasce ensinado, nem sempre as pessoas estão nos seus melhores dias e todos erram. Se assim não fosse, não teríamos inventado umas quantas religiões para adorar deuses perfeitos - nós mesmos seríamos os deuses e adorar-nos-íamos a nós mesmos. Creio que foi o caso aqui, e ninguém tem o direito de comentar a facilidade ou dificuldade do problema e tirar juízos de valor da situação e/ou das pessoas. Não é com certeza produto de uma pessoa humilde. Um iniciante poderá ter dificuldades em perceber, por exemplo, que deverá colocar uma string entre aspas, caso contrário o compilador assume que é um identificador. Para nós, que estamos nisto há uma temporada, é super fácil, e até usamos estes termos como "identificador" da mesma forma como bebemos água. Para o principiante, é uma novidade. Portanto, estamos sempre a aprender. Além de que nem sempre nos apercebemos das coisas ou raciocinamos da melhor forma. Quem é infalível? Nem as máquinas o são. Visto que, segundo me parece, a questão inicial do OP está resolvida, e uma vez que já estamos a assistir a demagogia, dou este tópico por encerrado. Em última análise, se a solução era assim tão simples, o OP teria agradecido que tal lhe fosse explicado desde o início, tal como o @Happy fez, e não que viessem aqui poluir o tópico com comentários acerca do que não pode ser alvo de juízos de valor precipitados. Aliás, os juízos de valor nunca devem ser precipitados. Se falha a lógica do pensamento na vida real e nas relações interpessoais, de que serve a lógica da algoritmia e da matemática?
  26. 3 points
    Normalmente tens um repositório central (normalmente denominado de origin). A partir desse repositório vais ter clones. Nos clones serão efectuadas alterações distintas do projecto inicial que está no repositório central e gravam as suas alterações (commit) que representam estados de um projecto. Qualquer um desses estados representa um ponto de onde se pode iniciar um novo ramo (branch) onde serão feitas alterações que não irão afectar o ramo principal do projecto (normalmente, o master). Um dos clones pode submeter as alterações (commits) que fez ao repositório central (push) e receber as alterações feitas ao repositório central (pull). As alterações de vários clones sobre o mesmo estado também são ramos que no final podem ser fundidos no mesmo ramo inicial (merge) e que normalmente são feitos do lado do clone antes de serem submetidos ao servidor. Um exemplo da utilidade dos branches: Tens um projecto que tem já uma versão em produção (por exemplo, 1.0). Estás a trabalhar nas funcionalidades novas que vais introduzir na versão (por exemplo, 1.1), mas surge um problema (issue) na tua versão 1.0 que tem que ser resolvido rapidamente, o que te vai obrigar a lançar uma nova versão de correcção (por exemplo, 1.0.1). O estado da tua versão 1.0 é o mesmo que o que tens no branch master. As novas funcionalidades que estás a implementar para a versão 1.1 estarão num outro branch (por exemplo, dev). A qualquer altura podes simplesmente mudar para o branch master (checkout), criar um novo branch (por exemplo, hot_fix) fazer as alterações que pretendes para resolver o problema, juntar (merge) com o master e voltar para o branch dev, juntar o master ao dev para voltares a garantir a consistência do dev e continuar a trabalhar na versão 1.1. Tens outra funcionalidade que são as tags. No exemplo anterior, uma tag serviria para identificar o estado de cada uma das versões que colocares em produção. Dessa forma sabes que, se estás a suportar as versões 1.0.1 e 1.1, se ocorrer um bug na 1.0.1 que não ocorre na 1.1, sabes identificar facilmente qual é o estado do código para o binário que tem esse bug. Durante o desenvolvimento em equipa, cada elemento vai ter um clone do repositório central, e esse repositório vai manter todo o código realizado pela equipa, e nos clones vão sendo feitas alterações ao projecto. É perfeitamente comum cada elemento estar a trabalhar numa funcionalidade diferente do projecto e ter, portanto, um branch distinto só para a funcionalidade que está a implementar. Esses novos branches podem ser submetidos para o repositório central (podendo manter a sua identidade) e fundidos com o branch de desenvolvimento. Isto pode causar conflitos se, nos dois branches houverem alterações nos mesmos ficheiros por diferentes elementos. Muitos desses conflitos são resolvidos pelo Git, mas existem conflitos que têm que ser resolvidos manualmente, normalmente com a ajuda de uma ferramenta que apresenta as diferenças entre versões (diff). Este tipo de conflitos só ocorre quando existem alterações na mesma parte dos ficheiros que não podem ser inferidas de forma lógica. Para agilizar o desenvolvimento em equipa, é boa prática sejam feitos merges frequentes de funcionalidades (features) completas com o branch de desenvolvimento. Finalmente, e mais importante (lol): SVN é lixo.
  27. 3 points
    Com ou sem IVA, bom fim de semana a todos.
  28. 3 points
    Pró Natal sai o 1.04 Alterações: Inclui os nomes moradas e familiares(pais,tios, avós e vizinhos) dos operadores dos programas; Inclui tamanho de vestuário dos programadores, cor dos olhos e de cabelo, dentes tratados etc... Inclui a marca do microondas, do frigorífico e do fogão do operador que efectuou o Recibo em RIC. Marca dos pneus do Veículo (guias de Transporte) - obrigatório Estão ainda a analisar conteúdos como: nome do cão, tamanho dos sapatos, até a tonalidade da pele, entre outras variáveis.
  29. 3 points
    Que comparação idiota, os android não fazem auto-update.
  30. 3 points
    http://aem1k.com/world/ .<script> eval(z='p="<"+"pre>"/* ,.oq#+ ,._, */;for(y in n="zw24l6k\ 4e3t4jnt4qj24xh2 x/* =<,m#F^ A W###q. */42kty24wrt413n243n\ 9h243pdxt41csb yz/* #K q##H######Am */43iyb6k43pk7243nm\ r24".split(4)){/* dP cpq#q##########b, */for(a in t=pars\ eInt(n[y],36)+/* p##@###YG=[#######y */(e=x=r=[]))for\ (r=!r,i=0;t[a/* d#qg `*PWo##q#######D */]>i;i+=.05)wi\ th(Math)x-= /* aem1k.com Q###KWR#### W[ */.05,0<cos(o=\ new Date/1e3/* .Q#########Md#.###OP A@ , */-x/PI)&&(e[~\ ~(32*sin(o)*/* , (W#####Xx######.P^ T % */sin(.5+y/7))\ +60] =-~ r);/* #y `^TqW####P###BP */for(x=0;122>\ x;)p+=" *#"/* b. OQ####x#K */[e[x++]+e[x++\ ]]||(S=("eval"/* l `X#####D , */+"(z=\'"+z.spl\ it(B = "\\\\")./* G####B" # */join(B+B).split\ (Q="\'").join(B+Q/* VQBP` */)+Q+")//m1k")[x/2\ +61*y-1]).fontcolor/* TP */(/\\w/.test(S)&&"#\ 03B");document.body.innerHTML=p+=B+"\\n"}setTimeout(z)')// </script>
  31. 3 points
    Pessoal, na sequência da sugestão, por favor, assinem esta campanha http://chn.ge/1a168vI Comuniquem a todos os vossos colegas que possam, de certa forma, entender a nossa causa. É importante mostrarmos a nossa força.
  32. 3 points
    SpeedSell Agora que o mais insignificante da PAP está feito, vai-te a ela ...
  33. 3 points
    Titulo do Projecto: Movie Down Última Versão: 1.0.0 beta Licença: Freeware, uso não-comercial Líderes do Projecto: thoga31 Lukas S. Descrição do Projecto: Talvez já tenham tido a experiência de estar a ver um bom DVD a partir do PC, deitados na cama, e quando ele termina temos de nos levantar, abandonar o conforto dos lençóis, e ir encerrar. O MovieDown tem por obejctivo tratar do vosso PC após a reprodução de um ficheiro multimédia, segundo as vossas instruções. Assim, por exemplo, o PC poderá desligar automaticamente após o fim do filme sem que vocês tenham de sair do vosso lugar. Uma ferramenta útil para quem gosta de ouvir música ou ver um vídeo antes de dormir, como nós. Pretendemos expandir o programa e melhorá-lo, claro: para tal, dêem as vossas sugestões, opiniões e críticas. Querem começar a desfrutar ainda hoje? Download 'Movie Down': http://www.portugal-a-programar.pt/files/file/40-movie-down/ Requisitos mínimos: .NET Framework 3 ou superior
  34. 2 points
    Basicamente, a diferença entre Isenção e Não sujeição (também chamadas isenções completas) tem a ver com a possibilidade de deduzir o IVA quando se adquire os materiais. Por exemplo, um médico, quando fatura é isento pelo artigo 9º, mas em contrapartida não tem direito a deduzir o IVA que paga aos seus fornecedores quando compra os materiais necessários ao desenvolvimento da sua atividade. Já quando é uma operação não sujeita, como no caso do trespasse de um estabelecimento, não tem IVA, mas o vendedor entretanto terá deduzido o IVA das coisas que está a trespassar (por isso se chamar uma isenção completa).
  35. 2 points
    Bom dia! Leonel Fonseca, em Lisboa eu não sei. Caso esteja a procuro de algo para iniciantes, indico um canal do youtube que disponibiliza algumas aulas. https://www.youtube.com/embed/videoseries?list=PL77JVjKTJT2hP_lxL88oDo2rJvOskpGfJ Atenciosamente,
  36. 2 points
    Delphi é uma linguagem cross-platform, podendo, portanto, criar programas para as várias plataformas usando, em essência, o mesmo código. Quando digo "em essência", quero referir-me ao facto de poder haver, dependendo da aplicação desenvolvida e do código subsequente, pequenas variações que dependem da plataforma. Por exemplo, eu programo em Object Pascal para Windows e Linux e tenho de ter em mente algumas "nuances" no Linux que são distintas do Windows. Para esses casos, podem ser utilizadas as compiler directives - podes ter, no mesmo código-fonte, as variações para as várias plataformas. Dependendo da plataforma em que estás a compilar, o compilador selecciona os pedaços de código dirigidos apenas àquele OS. Por exemplo, const MAX = {$ifdef windows} 32 // Se estiveres numa máquina Windows, o compilador assume "32"... {$else} 64 // Noutras máquinas, assume 64. {$endif} No caso do DevExpress, os seus componentes têm por base uma API que só existe no sistema operativo Windows e que se chama VCL. No Linux, OS X, iOS, Android, etc, tal não existe, pelo que os componentes do DevExpress não vão funcionar aí. A forma de tornar a tua aplicação cross-platform sem teres de implementar uma versão do mesmo programa por plataforma é usar uma framework que seja igualmente cross-platform. Neste caso tens, portanto, a Firemonkey. Cumprimentos.
  37. 2 points
    Claro que consegue. Consegue ele, consigo eu, consegue qualquer Google Bot que vá indexar o site... Consegue com o HTTrack, com qualquer outro crawler ou podes mesmo fazer um que saque tudo... consegues inclusive sacar tudo com uma shell com o wget... vê lá só o tamanho da bruxaria... Para onde queres que mande o zip desse site?
  38. 2 points
    Nos últimos tempos tenho visto boas recomendações para a Esoterica e a PTServidor (ao nível de alojamento partilhado nacional). Para developers, penso que soluções de alojamento partilhado como as da WebFaction ou OVH podem fazer mais sentido, na medida em que oferecem acesso SSH (e mais uma série de funcionalidades avançadas). Contudo, não usam cPanel, o que pode complicar migrações. O serviço da OVH também tem algumas limitações pouco habituais (ao nível das BDs, por exemplo). Também já há VPSs a preços relativamente acessíveis e com bons níveis de fiabilidade (e.g., OVH, DigitalOcean). Contudo, dão mais trabalho a configurar e gerir (em particular questões como emails, segurança, e backups).
  39. 2 points
    No portal das finanças, já tem lá uma opção para enviar um ficheiro... agora não sei é em que formato
  40. 2 points
    A retenção na fonte não é feita na fatura, mas sim no recibo. Pode ser mencionada na fatura mas não afeta o seu valor.
  41. 2 points
    Por outro lado, países como a Espanha e o Reino Unido tiveram essa taxa e decidiram que estava na altura de deixar de a ter. Quem estará certo? Dizer que está certo porque outros países têm não me diz absolutamente nada sobre se a taxa deve ou não ser aplicada. No máximo diz-me que o lobby dessa indústria é mais forte nesses países.
  42. 2 points
    Existem formas más de o fazer e uma delas é quereres ter os likes na tua BD. A informação que vais ter na BD não vai estar consistente com os likes do Facebook até porque, se a intenção é a partilha na rede social, as pessoas vão poder fazer like fora da tua página e, portanto, mesmo que consigas apanhar qualquer coisa que te permita identificar um clique no like e gravar na base de dados, não vais apanhar os likes que foram feitos fora. Portanto, a minha sugestão é utilizares uma das APIs do Facebook para obteres esse valor. E repara que tens soluções para PHP e para Javascript, o que te permite decidir se pretendes implementar a solução server-side ou client-side (na minha opinião, a segunda é uma melhor aposta).
  43. 2 points
    Por isso é que eu digo muitas vezes que uma coisa é uma coisa, outra é outra lol um coisa é o E-fatura que somava Anulados e Notas de crédito, outra coisa é o Dep. de Certificação, e outra ainda bem Diferente os tipos que Lançam as Leis cá para fora
  44. 2 points
    visto que o criador do tópico alterou o código no primeiro post do qual foi referido que é uma solução fraquinha, aqui fica a solução pretendida: // solução 1 : já apresentada antes mas não é a pretendida int comparray1(int v1[], int v2[], int tam) { return memcmp(v1, v2, sizeof(int) * tam) == 0; } // solução 2 : a pretendida pelo exercício (perceber o funcionamento de ciclos) int comparray2(int v1[], int v2[], int tam) { int i; for (i = 0; i < tam; i++) if (v1[i] != v2[i]) return 0; return 1; }
  45. 2 points
    Possas pá.. isto ás vezes enerva. Usem o Ano incluído na série e resolve vários problemas aqui discutidos, ou obriguem o utilizador a mudar nem que seja uma letra. Adaptem ao vosso software da melhor maneira. O campo de identificação da AT é o Nr que envias para lá e pronto. Se enviares GT 2013/001 e agora GT 2014/001 não haverá problema e faz todo o sentido que assim seja. Se quiseres manter a Série, então usa uma numeração diferente: GT 2013/2013001 por exemplo Agora se enviares GT 2013/001 e agora envias GT 2013/001 OBVIAMENTE que o documento já existe, mesmo em anos diferentes. Pensem nisto: Imaginem o servidor a fazer as query's à Data (para validar o ano), por cada submissão de Guia... Depois em vez de ser este o problema, iam dizer que o servidor demora 10 segundos a responder. Quem diz guia, diz factura e outras coisas que no fundo é tudo igual...
  46. 2 points
    Não sei se compreendi bem a tua dúvida. Em Haskell podes atribuir nomes a determinados valores, como na maioria das linguagens de programação. Isso faz-se de forma muito simples: answer = 42 Quando estás a utilizar o GHCi (provavelmente aquilo a que chamaste "Prelude"), tens que utilizar let antes da atribuição de valor (por motivos que não farão sentido nenhum para ti nesta fase; é melhor aceitar que é assim, pelo menos para já). Ainda assim, o que escreves no GHCi é um caso especial, não deves considerá-lo como sendo Haskell completamente normal (pelo menos para já) Dentro de uma função tens duas formas de adicionar "variáveis": as expressões let..in (que são diferentes do let que usas no GHCi) e as cláusulas where. Comecemos pelas let..in. Vamos utilizar o teorema de Pitágoras: hyp :: Float -> Float -> Float hyp a b = let c1 = a^2 c2 = b^2 soma = c1 + c2 in sqrt soma O exemplo acima é um pouco exagerado, é perfeitamente possível construir a função hyp sem utilizar let..in, mas o nosso objectivo é utilizar. Como podes ver, eu criei "variáveis" novas (c1, c2 e soma); a própria soma é definida em termos de outras variáveis. Quando utilizas let..in, as definições que criares mantêm-se visíveis dentro de toda a expressão que escreves após o in (neste caso, a expressão era sqrt soma). Existem, no entanto, casos onde o scope da forma let..in não nos é suficiente, e queremos definições que sejam visíveis em várias expressões, como por exemplo numa função com múltiplas equações com guards (não podemos utilizar let..in fora das guards). Vou exemplificar com a fórmula quadrática: quad :: Float -> Float -> Float -> [Float] quad a b c | delta < 0 = [] -- sem soluções em R | delta == 0 = [ -b / (2*a) ] -- uma solução em R | delta > 0 = [ (-b + sqrt delta) / (2*a) , (-b - sqrt delta) / (2*a) ] where delta = b^2 - 4 * a * c Neste caso, queremos que delta seja visível em todos os casos que definirmos; com let..in isso seria impossível. Esta diferença deve-se ao facto de let..in constituir uma expressão, enquanto que where é uma estrutura sintáctica que faz parte da declaração de funções -- no futuro isto fará mais sentido. Para já convém que saibas que quando se usam guards, é provavelmente mais acertado utilizar where. Mais uma nota: o primeiro caso podia ser resolvido também com where em vez de let..in. Pessoalmente, até acho que fica mais legível assim: hyp :: Float -> Float -> Float hyp a b = sqrt soma where soma = c1 + c2 c1 = a^2 c2 = b^2 Um pequeno reparo antes de terminar: quando damos um nome a um valor (em Haskell), é impossível atribuirmos esse nome a um valor diferente. Possivelmente isso já te foi explicado nas aulas: em Haskell os objectos são imutáveis (em teoria, claro está). PS.: Ficou maior do que esperava. Caso não tenha sido esta a tua pergunta, seria bom que te explicasses melhor.
  47. 2 points
    imagina este exemplo: for (int i = 0, j = 0; i < 3; i++) { j = j*j + i; } agora pegas numa folha de papel e fazes: for (int i = 0/*, j = 0; i < 3; i++) {*/ // i = 0, j = 0 j = j*j + i; // j = 0*0 + 0 = 0 for (/*int i = 0, j = 0; i < 3; */ i++) { // i = 0 + 1 = 1 for (/*int i = 0, j = 0; */ i < 3; /* i++ */) { // i < 3 ? yep ... do cycle j = j*j + i; // j = 0*0 + 1 = 1 for (/*int i = 0, j = 0; i < 3; */ i++) { // i = 1 + 1 = 2 for (/*int i = 0, j = 0; */ i < 3; /* i++ */) { // i < 3 ? yep ... do cycle j = j*j + i; // j = 1*1 + 2 = 3 for (/*int i = 0, j = 0; i < 3; */ i++) { // i = 1 + 1 = 3 for (/*int i = 0, j = 0; */ i < 3; /* i++ */) { // i < 3 ? hell no ... get out !!! // i = 3, j = 3 agora faz o mesmo no teu ciclo
  48. 2 points
    Portugal sofre um problema de nepotismo empresarial. Ou seja, o filho, por muito inadequado que seja à posição de patrão ou gestor, é sempre quem fica ao comando da empresa acabando por, nalguns casos a levar ao chão e noutros a uma espécie de estado zombie onde a empresa apenas sobrevive. Eu já trabalhei em duas empresa assim e embora tu lhe chames corrupção, eu diria que é mais uma falta de moralidade brutal. Uma vez que a empresa paga tudo aos patrões. Numa destas empresas, a roupa da família inteira era levada a uma lavandaria e a empresa é que pagava a conta. :| Quanto à relocalização de estruturas, o mesmo passou-se com a empresa onde o meu pai trabalha em que o patrão aproveitou os incentivos ao crescimento para relocalizar a empresa a uns 80km do local original. Note-se que a relocalização abriu muito mais área produtiva e muito mais opções para jogar com stocks e produção, coisa que era simplesmente impossível nas antigas instalações. O que é interessante é que, por lei, o patrão não pode despedir quando muda a empresa... nem pode forçar os empregados a picarem o ponto nas novas instalações (excepto empregados contratados após a mudança, obviamente). Logo, o meu pai pica o ponto à mesma hora, no mesmo sítio e depois entra numa camioneta (fretada pelo patrão) para os levar às novas instalações. À chegada, normalmente pica o ponto mais tarde e compensa essas horas à sexta feira não trabalhando de tarde. Aumentar proporcionalmente os salários consoante os lucros das empresas é estúpido e contraproducente. Primeiro, olhando à empresa, ao aumentares os salários assim estás a assumir que a empresa vai continuar a aumentar os lucros. Se apenas mantiver os lucros, estás logo a deitar por terra a oportunidade de renovar/aumentar o negócio. Se, a empresa não conseguir manter os lucros, como é que vais pagar os salários? Depois olhando às pessoas... quando aumentas os salários, estás a dizer às pessoas que elas vão passar a ganhar X... as pessoas começam a fazer contas à vida e com essa salário podem comprar um carro novo, uma casa nova, etc... pedem um empréstimo e começam a pagar a sua casa nova. Alguns meses passam e a empresa ão consegue manter os lucros... deixa de pagar os salários... e como é que as pessoas ficam? Então, o aumento dos salários deve estar de acordo com a inflação e mediante a capacidade e prestação de cada um, mas nunca ligado directamente ao lucro que uma empresa faz. Se quiseres ligar a gratificação dos empregados ao lucro da empresa, o ideal é um bónus que significa que aquele ano foi bom, mas que não é um encargo que terá de ser mantido para sempre.
  49. 2 points
    Na opinião de quem trabalha há 14 anos em Delphi e que começou sem saber nada e ao fim de 6 meses já produzia trabalho de forma autónoma, não há IDE como o do Delphi e já testei vários. A capacidade que o Delphi tem de quase nos fazer esquecer que os ponteiros existem, porque nos dá outras formas de fazer a mesma coisa, resulta numa fiabilidade superior das aplicações finais. Pessoalmente sei usar ponteiros, mas em Delphi é algo que evito a todo o custo. Tenho colegas de trabalho que duvido que saibam usar ponteiros, mas que não deixam de produzir bom trabalho por isso. Será que se poderia dizer o mesmo noutras linguagens (ex: C) ? Já andámos a testar .NET, porque o Delphi esteve parado no tempo durante uns anos, é um facto. Mas a quantidade de código "escondido" que o IDE do VS cria apenas para criar um menu principal de uma MDI Form deixou-me logo de pé atrás. Junte-se a isso o facto de o Delphi compilar tudo nativamente, sem IL, sem necessidade de ofuscação, resultando em aplicações mais rápidas e mais fiáveis. A maioria das nossas aplicações foram feitas em Delphi 6 e correm em tudo o que é Windows, desde XP a 8, seja 32bits ou 64bits (em modo 32 bits, claro). Falta ao IDE do Delphi a capacidade de customização do VS, mas acima de tudo, falta o que há uns anos a Borland fazia e que hoje a MS faz, que é "oferecer" o produto às instituições de ensino. É assim que se ganha mercado. Não devemos nem podemos deixar de referir que as várias versões do Delphi sempre mantiveram a compatibilidade com as versões anteriores, enquanto que a MS, por exemplo, quando se lembra de quebrar compatibilidade nem pensa duas vezes (veja-se o caso do VB para VB.NET). A ajuda do Delphi tem perdido qualidade ao longo do tempo e a quantidade de informação disponível relativa a versões mais recentes tem diminuído. Preocupa-me ver que grandes produtores de componentes têm versões .NET com funcionalidades muito interessantes e que nunca as implementaram em Delphi. Já questionei alguns acerca disso e dão como razão para isso a compatibilidade com a maior quantidade de versões anteriores possível. O debate aqui na empresa acerca do abandono de Delphi é constante, mas a verdade é que ainda não encontrámos alternativas que cumpram todos os nossos requisitos. A curva de aprendizagem em Delphi deve ser das mais rápidas que existem. Pessoalmente, passei cerca de 2 meses com C#.NET e concluí que para se saber programar em .NET como deve ser, primeiro é preciso conhecer toda a framework, que é uma coisa imensa. Talvez isto seja o resultado de querer conseguir conhecer em pouco tempo o .NET como conheço o Delphi. Habituado como estou a compilar uma aplicação em Delphi, pegar no executável e fazer um instalador, o processo de preparação de uma aplicação .NET para distribuição deixou-me desconfortável. Para quem diz que Pascal é fraco... bom, digam-me lá o que é que não conseguem fazer em Pascal puro e que conseguem fazer noutra linguagem. Ou digam-me o que conseguem fazer noutra linguagem que não conseguem fazer em Delphi. Até hoje ainda não houve nada que precisasse de fazer e que não conseguisse em Delphi. Até já fiz uma DLL em Delphi XE2, que é usada em aplicações compiladas em Delphi 6, só para poder usar um componente VCL que lá existe e que nos estava a fazer muita falta. E não esquecer que Delphi XE2 é unicode, ao contrário do Delphi 6, e mesmo assim a compatibilidade é garantida, desde que se usem variáveis do tipo certo. E quanto ao acesso a tabelas DB.... não podia ser mais fácil em Delphi. Comparado com a confusão que é em VS então é mesmo muito simples. Peço desculpa pela insistência na comparação com .NET/VS, mas a verdade é que a única framework que conheço que se aproxime da VCL do Delphi (e até vai mais longe, é um facto) é .NET. E o único IDE que conheço e se aproxima e até tem algumas coisas melhores que o Delphi é o VS. Portanto, a comparação é inevitável.
  50. 2 points
    Nice, o IDE realmente tambem esta na minha lista... depois quando puderes has-de arranjar coisas mais especificas que gostes no IDE. Outra coisa que quero focar é na facilidade da instalaçao em relaçao ao .net. Nao é preciso isntaladores nem 1001 dll's com o exe para ele funcionar nem plataformas nenhumas. Vou tratar melhor o texto que fiz amanha e depois ponho aqui para dares uma opinadela ^^
×
×
  • 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.