Jump to content

Marcelo Luiz Baraldi

Pessoal da TecnoSpeed
  • Contagem de Conteúdo

    12
  • Ingressou

  • Última visita

  • Dias Ganhos

    3

Tudo que foi postado por Marcelo Luiz Baraldi

  1. Olá Porter, boa tarde Esse problema está ocorrendo porque você está salvando um arquivo sem os metadados necessários de um arquivo xlsx, que é proprietário da Microsoft. Repara que se você tentar abrir ele com o notepad, vai funcionar, porém para que ele seja um arquivo funcional xlsx, é necessário que você o crie a partir de uma biblioteca. A primeira necessidade seria baixar e adicionar a biblioteca no ínício do seu código using OfficeOpenXml Logo após você selecionar o caminho onde quer salvar os dados, é necessário adicionar as linhas e salva-las FileInfo novoArquivo = new FileInfo(caminho); using (ExcelPackage pacote = new ExcelPackage(novoArquivo)) { ExcelWorksheet planilha = pacote.Workbook.Worksheets.Add("Planilha1"); planilha.Cells["A1"].Value = "Testando"; planilha.Cells["A2"].Value = ""; planilha.Cells["A3"].Value = "Primeira linha do teste"; planilha.Cells["A4"].Value = "Segunda linha do teste"; planilha.Cells["B4"].Value = "Mais uma coluna"; pacote.Save(); } Este código cria um arquivo Excel no caminho especificado, adiciona uma planilha chamada "Planilha1" e escreve alguns dados nela. Certifique-se de adicionar a referência ao EPPlus em seu projeto através do NuGet. Você pode fazer isso procurando por "EPPlus" na janela de gerenciamento de pacotes do Visual Studio. A documentação do OfficeOpenXml pode ser visto aqui Bons estudos!
  2. Faaaaala pessoal, tudo tranquilo com vocês?😁 Vim aqui dar umas dicas e insights a respeito dos estudos na programação e algumas dicas que vão alavancar os seus projetos e alinhar seu caminho e expectativas. Todo mundo sabe que hoje a programação é uma habilidade cada vez mais valorizada e necessária no mundo. Desde criar aplicativos, automatizar tarefas, desenvolver aplicativos, tudo depende do seu conhecimento básico. Porém, também é reconhecido que o começo pode ser bem desafiador e intimidante. Há um excesso muito grande de caminhos e conteúdos. Quem nunca salvou vários tutoriais no Youtube para assistir depois? Ou mesmo começou diversos cursos só para largar no meio e começar outro inicialmente mais interessante? Ou tem diversas anotações que faz durante os estudos e nunca mais abre seus blocos de notas? Vou Contar um spoiler pra vocês! Eu mesmo já passei por esses problemas e muitos outros até entrar no meu caminho e finalmente me tornar um desenvolvedor! Aqui vou passar algumas dicas que podem te ajudar também em todo esse processo: 🤏🏻 Começe pelo básico: Não adianta estudar React sem ter estudado Javascript. Não adianta estudar Typescript sem ter conhecimento de Programação Orientada a Objetos. Eu entendo que no começo queremos estudar logo as stacks que são tão pedidas pelo mercado. Mas todo conhecimento é criado a partir de uma base boa. Você só vai memorizar e entender de verdade um conteúdo se já tem um conhecimento anterior que faça conexões. Começar pelo lugar errado, de forma pressada, pode causar frustração, te fazer achar que não é para isso. Por isso, se atente ao básico e ao que é comum à todo mundo da programação: Loops, Orientação a objetos, Ternários, Condicionais, Estrutura de Dados (caso não saiba o que são esses termos, é só dar uma pesquisada! Assim começa o aprendizado!). ⌨️ Qual linguagem iniciar: Primeiramente é importante apontar que todas linguagens tem conceitos em comum e que se repetem. Por isso, mesmo que você está aprendendo uma linguagem na faculdade ou em um curso que inicialmente você não se vê utilizando a curto prazo, saiba que o aprendizado não se prende a apenas uma linguagem. Eu mesmo me perguntava isso ao ter disciplinas de Java na faculdade e hoje consigo ver como foi importante no meu conhecimento em C# e em Typescript, por exemplo. Segundamente, sua escolha de linguagem inicial pode ir de acordo com o que você tem com perspectiva do futuro. Quer trabalhar com jogos? Python, C++ ou C#. WebBackend? Go, Javascript, Java. Frontend? Javascript, PHP. Se atente também a, no começo, pelo menos, tentar se focar em uma linguagem por um tempo durante seus estudos. Entenda seus conceitos antes de pular para uma nova aventura. 🏋🏻‍♀️ Praticar regularmente: O segredo não é estudar diversas horas por dia por uma semana. É a constância. A prática constante que é a chave para o sucesso. Crie pequenos projetos pessoais, resolva desafios, participe de competições, qualquer coisa que te motive a continuar aprendendo. Dessa forma, você criará mais conhecimento e confiança nas suas habilidades. 📈 Metas e longo prazo: Defina metas de aprendizado e empregabilidade alcançáveis. Às vezes as redes sociais e algumas exceções que vemos de influencers podem nos dar uma impressão errada, mas saiba que ninguém se torna um desenvolvedor experiente da noite para o dia. Acreditar no discurso que aprender a programar é muito fácil e que já está preparado para o mercado de trabalho em 3 meses pode criar expectativas bem longe da realidade. O caminho pode ser longo e há muito o que aprender. 👩🏻‍💼 Comunidade e Networking: Encontre uma comunidade com interesses comuns, divida suas conquistas. O caminho não precisa ser solitário 100% do tempo. Muita da nossa motivação e também novas possibilidades podem vir das conexões que criamos. Busque grupos no GitHub, redes sociais, fóruns (como esse da Casa do Desenvolvedor), faça conexões em sua graduação. 🎭 Frustrações: Vão chegar momentos em que você vai se sentir “travado”. Com dificuldade para resolver algum problema. Algum código que não compila, uma oportunidade que não chega. Saiba que isso acontece com todos e que você não está sozinho. Descanse e tente novamente. Peça ajuda. Realinhe suas expectativas. O segredo é não desistir. É nos momentos de dificuldade que se diferencia quem é apenas curioso dos que realmente tem interesse e potencial de trabalhar na área. 💼 Projetos Práticos: Faça projetos práticos para pôr a mão na massa os conteúdos estudos. Mas saiba que não adianta apenas copiar e fazer exatamente o que o professor está fazendo na aula/tutorial. Tente mudar algumas coisas, criando algo novo a partir do aprendizado. Com algo de original nos seus projetos, está tudo bem postar no seu Github e aumentar ainda mais seu portfolio e base de conhecimento! 🛠️ Recursos e Ferramentas: Vivemos em uma era de excesso de conteúdo e falta de foco. Por isso precisamos nos organizar para lidar com esse tipo de problema. Aqui vão algumas dicas de ferramentas e recursos que ainda utilizo nos meus estudos e que podem te ajudar na sua produtividade. Tente organizar suas anotações em ferramentas de como Obsidian e Notion. Pesquise sobre métodos de estudos e anotações. Faça cursos online como o CS50, canais no Youtube como FreeCodeCamp, cursos na Alura, Udemy, RocketSeat, OdinProject e tantos outros. Nesse caso, é importante lembrar de tentar iniciar um caminho ou um estudo e ir até o final. De nada adianta começar vários cursos e parar na metade. Escolha o que mais te agrada, se esforce e não pule para o próximo na primeira dificuldade. Não tenha preguiça de ler documentação. A documentação normalmente é o caminho mais rápido e confiável de se aprender alguma ferramenta. Em resumo, o estudo da programação pode ser sim bem desafiador, mas com foco nos conceitos fundamentais, prática constante e uma mentalidade positiva, os iniciantes podem superar esses desafios e prosperar. Lembre-se de que o aprendizado da programação é uma jornada contínua e que pode variar de pessoa para pessoa. Tente não se comparar tanto com o vizinho e foque em seu caminho! E é isso, bons estudos! 📖
  3. Olá Carlos, bom dia Eu também sou alguém que migrou de área e atualmente trabalho na Tecnospeed. Completei minha mudança de carreira em 2021, aos 32 anos. Com isso, sou uma prova de que sim, é possível. Alguns pontos que eu gostaria de levantar: - Atualmente conseguir o primeiro emprego na área não está fácil. Houve um aumento de pessoas se interessando pela área de TI muito grande e por isso a concorrência está bem alta. Apesar de sempre precisarem de novas pessoas, nem sempre as empresas estão dispostas a treinarem alguém trainée. O melhor conselho que posso te dar em relação à isso é: Começe uma graduação. Nem que seja EAD. Com isso, você consegue entrar em vagas de estágio e em processos seletivos para trainées nas empresas. É um caminho mais certo do que simplesmente tentar vagas com projetos pessoais e certificados de cursos gratuitos. - Não acredite em youtuber que te diz que você vai ficar rico da noite para o dia. TI não é dinheiro fácil. Apesar da área de TI ter muitas possibilidades, entenda que tudo é caminho e processo. Há muito, muito o que aprender, muito tempo de tela. O quão rápido vais crescer na área depende muito de você, mas também depende do cargo e da empresa que você vai conseguir entrar. Apesar de ter uma pressa por causa da idade, entenda que você vai ter que passar pelos processos de crescimento na área como em qualquer outra. Bem, é isso. Continue os estudos e desejo todo sucesso para ti!
  4. Assim como a maioria das linguagens de programação, o Javascript está constantemente evoluindo. Todo ano, a linguagem lança novas e poderosas features que tornam o trabalho do desenvolvedor bem mais conciso e de fácil leitura. Recentemente foi lançado o ECMAScript 2022, também conhecido como ES13. Esse é um novo padrão que dita novas funcionalidades para a linguagem. Vamos te apresentar algumas das mais importantes mudanças lançadas neste novo release! Declarações de campos de Classe (Class FIeld Declarations) Antes do ES13, campos de classe só podiam ser declarados juntos ao construtor. Ao contrário da maioria das outras linguagens, não era possível declarar ou definir no escopo mais abrangente da classe. ES13 removeu essa limitação, deixando o processo mais claro: Métodos e Campos Privados (Private Methods and Fields): Anteriormente, não era possível declarar membros privados em uma classe. Um membro era tradicionalmente prefixado com um underline ( _ ) para indicar que era privado. Apesar disso, ainda podia ser acessado e modificado de fora da classe. Com o ES13, é possível adicionar campos e membros privados à uma classe prefixando com a hashtag(#). Tentar acessar o conteúdo por fora, causará um erro: Repare que o erro foi de sintaxe, durante o tempo de compilação. Isso acontece porque o compilador não espera que você nem tente acessar campos privados de fora da classe e assume que você está tentando declarar um novo. Operador await no nível superior (await Operator at the Top Level) No Javascript, o operador await é usado para pausar uma execução até que uma Promise esteja concluída ou rejeitada. Anteriormente, só era possível usar esse operador dentro de uma função assíncrona (async). Não era possível acessá-la dentro do escopo global. Com o ES13, agora é possível: Método .at() (method .at() function for Indexing) Tipicamente utilizamos colchetes [ ] no javascript para acessar um elemento dentro de um array, de forma que a lista se inicia com 0. Entretanto, é necessário usar o index de arr.length - N se queremos acessar os últimos índices Com o novo método .at(), é possível fazer isso de forma mais concisa e expressiva, simplesmente passando um valor negativo ao N como parâmetro do .at(), sendo possível utilizar o método dentro de arrays, strings e objetos TypedArray. Object.prototype.hasOwnProperty() Acessível (Accessible Object.prototype.hasOwnProperty() ) No Javascript, é possível utilizar o método Object.prototype.hasOwnProperty() para verificar se o objeto tem determinada propriedade. Mas há problemas com essa utilização. o método .hasOwnProperty() não é protegido e pode ser sobrescrito (override) por um método completamente diferente: Outro problema é que objetos criados com um prototype nulo causam um erro ao chamarem esse método: Uma forma de lidar com essa situação é utilizar o método call() da seguinte forma: O novo método Object.hasOwn() tem a mesma funcionalidade do Object.hasOwnProperty, recebendo o Object como primeiro argumento e a propriedade para verificar no segundo: Causa de Erro (Error Cause) Para debugar comportamentos inesperados, erros tem que ser verificados com informações contextuais como "error messages", de forma que é expressado o que aconteceu em determinado momento. A propriedade .cause no Object error vai nos permitir especificar que erro causou determinado erro. de forma que os erros possam ser encadeados sem necessidade de aglutina-los dentro de condições: Método de enconrar último item de array: (Array find from last) No Javascript já temos o método Array.prototype.find o Array.prototype.findIndex. Sabemos que para encontrar a partir do último a performance do FindIndex é superior. Apesar disso, caso nos importamos com a ordem dos elementos (itens duplicados no array, por exemplo), uma melhor forma de aproximação seriam os novos métodos .findLast e .findLastIndex : Referências: https://github.com/tc39 https://javascript.plainenglish.io/latest-es13-javascript-features-24cba45c93f7 https://codingbeautydev.com/blog/es13-javascript-features/
  5. O que é sexta feira 13 perto do pânico de chegar no pedágio e ter esquecido o dinheiro. 😔
  6. C (tá mto fácil) hahahaha é um loop que roda no range de 2 a -5 função range, primeiro parâmetro começo, segundo parâmetro final e terceiro parâmetro incremento No print ali embaixo tu pede pra separar com a virgula espaço em cada iteração do loop.
  7. Olá MrVillasBoas Primeiramente, para vincular o sat à softwarehouse é necessário que o cliente gere uma signAC que vincula o cnpj do cliente ao cnpj da softwarehouse em questão. Você consegue fazer esse signAC direto pelo nosso aplicativo: https://atendimento.tecnospeed.com.br/hc/pt-br/articles/360015561913-Gerador-de-SignAC-SAT-para-certificado-A1-e-A3 Também é interessante ver o modelo/marca do seu aparelho, para dar uma acompanhada no manual. Lá tem o passo a passo do processo de ativação também.
  8. Alô Guilherme! Pode existir diferença, mas normalmente é igual. Tenta exportar um XML da NFSe no portal da prefeitura e compara os valores dos campos CodigoItemListaServico/CodigoTributacaoMunicipio/CodigoCnae Comparando os dois tu consegue ver as diferenças entre eles e o que pode estar dando problema
  9. Oi Katiane! Todos os métodos do componente NFe Tecnospeed estão todos listados aqui. Caso esteja procurando algo específico, é bem fácil de encontrar com a barra de pesquisa da documentação! No caso de consulta de eventos da NFe, temos uma documentação completa explicando como implementar o método de ConsultaDFe em várias linguagens. Ali no final da documentação tem uma tabela com quais eventos retornam no método de consulta de destinadas!
×
×
  • Create New...