Ir para conteúdo
  • Cadastre-se

EMBarbosa

Consultores
  • Total de ítens

    9.413
  • Registro em

  • Última visita

  • Days Won

    117

Tudo que EMBarbosa postou

  1. Mas não esqueça do que eu escrevi no final. Se não teve tempo, sugiro ler o artigo que eu citei.
  2. Nesse caso, precisamos entender melhor o que você e sua equipe estão discutindo. O que vocês estão discutindo? Vocês estão discutindo a atualização do ACBr ou o "deploy", que é o envido de versões aos clientes? Vocês precisam de uma estratégia de "desenvolvimento" e uma estratégia de deploy. Tudo bem que as duas estratégias podem ser interligadas, como é o caso quando se usa um sistema de "Implantação Contínua". Mas são duas coisas bem diferentes. Não vou dizer que você está errado nas sua posição. Porque não está. Na verdade, talvez não tenha certo ou errado aqui. E claro, ninguém deveria ficar desesperado para instalar uma nova versão sem fazer testes. Também, antes de enviar uma versão aos clientes é preciso levar em conta a quantidade de clientes, o tamanho da equipe de desenvolvimento e suporte e até o plano de negócios da empresa. Por outro lado, acho que as seguintes perguntas precisam também ser analisadas: Só se envia uma nova versão ao cliente para resolver problemas? Não são apresentadas ao cliente os novos recursos como algo que facilita a vida dele? Não seria muito mais interessante comercialmente se o programa tivesse sempre novidades para cativar o usuário? Não será muito mais difícil encontrar e resolver um problema se de uma versão para outra houverem muitas alterações no código? Que controle se faz de versão do software que está instalado no cliente? Consegue-se facilmente reproduzir no ambiente de desenvolvimento? Vou deixar esse link de artigo aqui que eu achei muito interessante de um pessoal que saiu do "GitFlow" e foi pro "Trunk Based Development". Leia também os comentários onde alguns categoricamente não concordam. É um artigo pra pensar no desenvolvimento. https://www.gamasutra.com/blogs/NiklasGray/20170927/306445/Moving_away_from_GitFlow.php Enfim, eu disse implicitamente antes, mas agora vou falar explicitamente. Não estou dizendo que uma maneira é melhor do que a outra. Cada empresa precisa pesar as vantagens e desvantagens e decidir o que é melhor para empresa, sua equipe e seus clientes. Não leve em conta só a sua equipe. Mas também, não leve em conta só os clientes. Isso poderia fazer sua equipe sofrer.
  3. Acho que a ideia é: atualize o o mais frequente quanto possível. Mas a resposta completa vai depender da sua equipe, do tamanho da empresa e das alterações que foram disponibilizadas. Acho que a chave é que vocês devem se sentir como desenvolvedores do ACBr. O código é também de vocês. Afinal, ele roda na sua aplicação, e afeta seus clientes. Mas esse é o meu ponto de vista particular. Voltando a sua pergunta, por experiência própria, sugiro o seguinte: Leiam os logs do SVN pelo menos uma vez por dia. Não é preciso atualizar para ler o log. Ao ler o log do SVN, verifique se: Alguma alteração feita afeta seus clientes em produção? (correção de bug, alteração de legislação, etc...) Algum novo recurso que você quer utilizar foi implementado? Se são poucas alterações e elas não são essenciais, você (ou alguém na sua equipe) tem tempo para testar? São muitas alterações que foram feitas? Já passou muito tempo desde que foi feita a última atualização? Por exemplo mais de 3 semanas? Caso a resposta a qualquer pergunta acima seja "sim", atualize. No mínimo você vai estar mantendo o código do seu aplicativo com o mínimo de alterações possíveis. Então quando surgir uma situação que vocês precisem atualizar com urgência, não vai haver uma grande quantidade de trabalho acumulado. Caso negativo, siga com as suas tarefas. Vale lembrar também que nem toda atualização precisa de uma reinstalação. Você precisa reinstalar quando: As alterações envolvem partes visuais dos componentes; Os fontes não são recompilados ao fazer um build em sua aplicação; Depois de atualizar, teste as partes de sua aplicação que usam os componentes modificados assim que possível. Primeiro na sua máquina de desenvolvimento, depois em outras máquinas. Por último no servidor de Build. Faça o "deploy" de forma escalonada. Quer dizer, instale a nova versão primeiro em clientes selecionados. Escolha apenas dois, três ou no máximo quatro a princípio. Quanto mais crítica a alteração, mais seletivo você precisa ser. Depois de um tempo, envie a nova versão para os outros. Dentre sua carteira de clientes, minha sugestão é para escolher aqueles que: Precisam da "novidade" apresentada no novo executável Tem um movimento menor (e assim darão um grau menor de dor de cabeça caso algum imprevisto aconteça) Ficam mais próximos de sua empresa (posso deslocar um técnico ou até mesmo um "dev" pra lá rapidamente se realmente necessário, nem que seja virtualmente?) São mais pacientes e compreensivos (paciência nunca é demais, apenas cuide de não abusar deles) Nota: É claro que, se vocês estão no meio de uma situação que precisa que todo o desenvolvimento fique focado no produto de vocês, talvez não seja possível atualizar o ACBr. Por exemplo, pode ser que um problema no software esteja exigindo a atenção urgente de toda equipe. Mas geralmente, pelo menos um dev deve conseguir dar uma lida nos logs e fazer a avaliação se é necessário ou não atualizar.
  4. Então, não sei se você entende a diferença, mas começando pelo OLE: Aqui você está utilizando OLE, (nome antigo, agora é apenas automação), para automatizar o Office. É como se você tivesse acesso as dlls da aplicação pra lançar os comandos. Isso permite muita coisa. Por outro lado, precisa ter certeza que os objetos OLE que você está utilizando são compatíveis com o que está instalado na máquina e sua aplicação consegue encontrar. Se você não estiver usando a versão correta, pode acontecer isso que está dizendo. Além de atualizar seus objetos OLE, seria bom se seu código tratasse os erros levantados para verificar o que está acontecendo. No código acima não dá pra ver tratamento de erros então não sei se você está fazendo. Caso não, você deve encontrar na internet material sobre o assunto. Nesse código, você está executando um comando do Shell. Está basicamente executando o outlook pelo "prompt". Então precisa conhecer os parâmetros do Outlook por linha de comando nessas novas versões. Geralmente basta entrar no prompt, na pasta do outlook e digitar "outlook /?". Mas caso contrário, tem que procurar a documentação. Achei esse link aqui, espero que ajude: https://support.microsoft.com/en-us/office/command-line-switches-for-microsoft-office-products-079164cd-4ef5-4178-b235-441737deb3a6#ID0EAABAAA=Outlook
  5. Que tipo de código você usa para abrir o Outlook?
  6. Se eu entendi bem sua dúvida, você só irá receber o xml completo depois de você fazer a manifestação. Veja esse tópico: https://www.projetoacbr.com.br/forum/topic/46730-como-obter-o-xml-do-fornecedor/?tab=comments#comment-377650
  7. Não. A imagem não mostra que essa versão está instalada no Delphi 7.
  8. A imagem mostra claramente (letras azuis logo na frente da versão do Delphi 7) que você precisa instalar a JCL de versão 2.2 ou superior no Delphi 7 antes de instalar a JVCL.
  9. Se eu entendi bem: Antes de escrever o registro 2110, sua aplicação já deve saber: Se a apuração será de ressarcimento e/ou complemento Se vão ser gerados registros 2121 ou 2120 Sabendo disso com antecedência, seria possível preencher esse campo conforme as regras que você postou. Mas, conforme o Juliomar mencionou acima, em caso de dúvidas, o melhor mesmo é contatar um contador experiente nessa área.
  10. Sugestão que pode parecer boba, mas funciona: Vá num parque aquático e veja como eles fazem com essa questão de cartão. Daí, faça melhor.
  11. Possível solução em:
  12. até onde estou sabendo, por enquanto, ainda está funcionando... Veja esse tópico sobre como configurar tanto o ACBrMail como a conta de e-mail:
  13. 2.2 - Permaneça no assunto - Quando tiver uma dúvida diferente do assunto no tópico, poste em novo tópico. Não use algo equivalente a "aproveitando o gancho... [dúvida não relacionada com o tópico aqui]". Favor leia as regras do fórum.
  14. Nesse caso, é altamente recomendado que você entre em contato com eles. Com certeza, se o problema for do lado deles, eles vão agradecer o contato porque isso pode estar gerando problema para um número muito grande de pessoas.
  15. Essa correção não gera efeitos colaterais, mas também não parece fazer muito sentido. Pelo menos não para o problema de "out of memory". Por favor, anexe um arquivo xml que gere o problema para que possamos verificar.
  16. Então, é isso que eu disse, não tem nenhuma diferença entre o que está no SVN e o seu arquivo nessa linha. Veja: Então acredito que seu código já esteja no SVN. Só preciso de uma confirmação para que possamos fechar esse caso.
  17. Apesar do problema não ser no ACBr, resolvemos subir a alteração. Muito obrigado pela contribuição. Fiz a implementação baseada nela. Subi as alterações para o SVN na Revisão 21247. Pelo que vi está tudo certo. Queira por favor atualizar, testar e reportar qualquer problema. Mais uma vez obrigado.
  18. Mais um motivo pra ficar atento a como o software está consumindo os webservices.
  19. Fortes errado e desatualizado... o certo é esse do git:
  20. O FreeOnTerminate pode ser setado para false quando você deseja controlar manualmente a vida útil da thread. Veja mais na documentação. http://docwiki.embarcadero.com/Libraries/en/System.Classes.TThread.FreeOnTerminate
  21. Pode ser que o DataModule ainda esteja em memória, ou pelo menos o Windows pensa que a porta está ocupada.
  22. Ajuste o volume de outros usuários (e da música) Se em algum momento você usar um canal de voz no Discord, pode perceber que o volume de um outro usuário está muito baixo ou muito alto. Ou talvez você esteja no canal Música ouvindo o que está tocando no momento e queira ajustar o volume. Faça o seguinte: Clique com o botão direito em cima do usuário (no caso do canal de música é o bot "MEE6 ACBr" quem toca as músicas). Ajuste o volume do jeito que achar melhor.
  23. Formate seu texto usando Markdown. Talvez você queira se expressar melhor usando ênfases, como negrito, italico, sublinhado, ou outra formatação. O Discord usa um subconjunto de Markdown. Então se você estiver familiarizado, vai ser tranquilo de usar. Caso não esteja, e você não lê inglês, veja esse link de ajuda do próprio Discord: https://support.discord.com/hc/pt-br/articles/210298617-Noções-básicas-de-marcação-de-texto-Formatação-do-chat-negrito-itálico-e-sublinhado- Se você lê em inglês, então esse outro link é melhor: https://gist.github.com/matthewzring/9f7bbfd102003963f9be7dbcf7d40e51 Além de usar textos ao invés de imagem, que facilita o Ctrl+C e Ctrl+V, ele parece ser mais fácil de entender.
  24. Diminua o ruído com as configurações de notificação dos canais. Sabemos que se você pudesse leria todas mensagens do ACBr. Mas infelizmente não podemos fazer isso todo o dia. Ainda assim, talvez você queira ler todas as mensagens falando sobre SAT, mas não liga tanto pra NFC-e (ou vice-versa). Então, se você quer usar o Discord com menos notificações, você pode configurar isso de canal por canal. É só clicar com o botão direito em cima de um canal e escolher "Config. de notificação". Veja na imagem abaixo:
  25. Acesse praticamente tudo do Discord por meio do QuickSwitcher (Ctrl+K) Se você quer usar o Discord de forma rápida então esse é o caminho: Existe um recurso chamado QuickSwitcher que permite você localizar conversas, usuários, canais, servidores etc... Usando "Ctrl+K", você chama a tela abaixo: Daí basta digitar o que procura e apertar ENTER. Note a dica no fim da imagem acima para localizar mais facilmente pessoas (usando "@"), canais de texto (usando "#"), canais de voz (usando "!") e servidores (usando "*").
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.