quarta-feira, 6 de novembro de 2019

quinta-feira, 12 de setembro de 2019

Salesforce - Meta Tiger - New Features





Description:


This project is intended to make life easier for Salesforce developers by updating metadata that is changed or created in the sandbox's, and to help deploy to production environments by relating package.xml to the artifacts in the repository.
Features:

1 - Get All Package.xml

his feature serves to get a list of all metadata in your organization. They will be added in a package.xml in the MetaTiger directory called package.

2 - Generate Package With Files of Repository

This feature is for taking the files that are stored in your repository and preparing for deployment.
List of supported metadata:
 AppMenu  ApexClass  ApexTrigger  ApexComponent  ApexPage  CustomMetadata  CustomObject  CustomLabels  CustomField  DelegateGroup  EmailTemplate  Layout  PermissionSet  Profile  StaticResource  RemoteSiteSetting  EntitlementProcess  Flow  CustomObjectTranslation  FlowDefinition  Settings  ListView  ValidationRule  RecordType  MilestoneType  WebLink  Workflow  WorkflowRule  StandardValueSet  CustomTab  AssignmentRules  AuraDefinitionBundle  CompactLayout  CustomApplication  FlexiPage  Territory2Type  Territory2  Territory2Model  ContentAsset  SharingRules  BrandingSet  LightningExperienceTheme

3 - Retrieve Files in Package

This functionality serves to download the metadata mentioned in a package.xml just pass the organization and path that it will download in the package directory a zip file.

4 - Get All Package.xml With User Last Modified

This feature has a responsibility to take everything that has been changed by a user list in the sandbox or organization, adding a start and end date. A package.xml will be created in the MetaTiger root directory only with appropriate user changes.
This feature also takes metadata creations that were made by users.

5 - Get All Package.xml With User Created

You have a responsibility to get the metadata that was only created by users at that reference period.

Configuration Meta Tiger

Install Visual Studio Code.
Install SDK do .NET Core 2.2 Download
Install the C # extension for the Visual Studio Code. To learn more about installing extensions in Visual Studio Code, check out the VS Code Extension Marketplace.
You can have more information on this link, how to install the dependencies before running the program: https://docs.microsoft.com/pt-br/dotnet/core/tutorials/with-visual-studio-code
In VisualCode using the terminal
Execute command --> dotNet run
Just select the options below and use the tool normally it will prompt you for the required information.

Salesforce - Aside IO - IDE




Hi all, Good morning, this morning I thought of doing something really cool to help you with Salesforce development. There is an IDE of development for Salesforce online similar to the developer console called ASIDE.IO. SITE IDE Mentions: CODE EDITOR Create and edit Apex, Lightning, Visualforce, Static Resources, and Custom Objects. TEST MONITOR Run unit tests in multiple ways, view their results, and get code coverage. DEPLOY MANAGER Retrieve or deploy by dropping a package.xml or zip from your computer. QUERY TOOL Run SOQL queries and view the results in a flexible data grid. I found this tool sensational, it helped me a lot with the question of test class reports. I hope they help you too.

Url below:
https://www.aside.io

segunda-feira, 25 de fevereiro de 2019

Salesforce - Project Salesforce Package Repository Files




Oi Pessoal,

Hoje eu trouxe mais uma novidade para facilitar a vida, que talvez os desenvolvedores Salesforce já tenham passado muito por isso, ou ainda estejam passando sobre a questão dos arquivos que se encontram na pasta do repositório, que geralmente são criados pela ferramenta Ant Migration Tool.

Atividades como:

  • Rastreabilidade de diretório/arquivos através do Package.xml
  • Selecionar um mais de 100 arquivos de um determinado projeto manualmente.
  • Criação dos diretórios para ferramenta Migration Tool manualmente.
  • Selecionar determinadas tag's em objetos compostos. 
  • Realizar o filtro do que realmente necessário para realizar um deploy
  • Verificar se não foi esquecido nenhum arquivo.
  • Verificar nomenclatura de arquivos, se eles realmente existem.
  • Verificar arquivos que são necessários como -meta.xml, se estão nos diretórios.
  • Merge de metadados compostos.

Esses atividades foram me causando um certo desgaste, então eu pensei em criar uma ferramenta que aos poucos fizesse essas atividades para mim, hoje ela já consegue trabalhar com determinados tipos de metadados como:

ApexClass,ApexTrigger,ApexPage,ApexComponent,CustomMetadata,CustomObject
,CustomField,EmailTemplate,Layout,PermissionSet,Profile,Flow,ListView,Settings
,ValidationRules,Workflow,WorkflowRules,Weblink,RecordTypes,StandardValueSet
MilestoneType,RemoteSiteSetting,FlowDefinition,CustomTab
Como estou fazendo há baby steps porque existe uma infinidade de metadados, o resultado está sendo gratificante, e está facilitando muito a minha vida.

Então resolvi compartilhar com vocês, meus queridos amigos, para que não passem por isso, nosso foco está em ser criativo e tarefas que são consideradas desgastantes deixe para a máquina, fazer o trabalho braçal, então não tem desculpa né! rsrs

Eu adicionei o tutorial no arquivo "Readme" do Github, caso possuam qualquer dúvida pode me contatar, através do meu e-mail.

O projeto está sendo feito na plataforma .NET, utilizando C#, e o framework .NetCore, fiquem
livres para criar branchs como novos tipos de metadados. Qualquer coisa eu vou avaliar nos Pull Requests, caso desejem colaborar.

Espero que vocês gostem,

O link do repositório está abaixo;

Salesforce - Create Package of Repository

Um Abraço.

quinta-feira, 13 de dezembro de 2018

Salesforce - Apex - Callout - Simple Pattern - Rest


Oi Pessoal,

Tudo bem ? Espero que sim, eu aqui de novo postando mais uma ajuda sobre como realizar o desenvolvimento na plataforma Salesforce, agora a minha parte em questão. Se deve na criação de chamada a WebService em formato REST, as chamadas "Callouts".

Havia encontrado uma lista de problemas em diversos projetos, redundância, forte acoplamento, sem padrão, não reaproveitamento,falta de praticidade, entre outros que estavam desagradando cada vez mais em criar uma simples chamada Callout, e se tornando um caos para podermos realizar uma modificação.

Eu comecei a estudar um modo de criar uma chamada e fosse o mais simples possível, fosse prática e limpa ao mesmo tempo. Para qualquer pessoa pudesse ler e entender o que estava acontecendo e quais eram os padrões de construção da chamada.

Acabei criando esse simples Pattern que se encontra hoje no Github, a questão não é ser inovador ou ser robusto, apenas ser simples e prático, como deveria realmente ser essas chamadas externas, por enquanto esta me ajudando a limpar muito código confuso que estava em diversos projetos.

Espero que gostem, caso tenham ideias de modificação, só mandarem um pull request, que faço uma análise e aprovo sem problemas.

https://github.com/brunoslribeiro/sfdc-callout-pattern

Um forte abraço, pessoal.

quarta-feira, 11 de julho de 2018

Warstock CSV - Salesforce - Heroku


Oi Pessoal,

Mais uma vez venho aqui trazer mais uma solução para os meus problemas ou talvez de vocês haha, mas uma das minhas soluções tabajara corporation, criei um prov-c utilizando JavaScript trabalhando com csv's como base, eu tive que realizar um carregamento bem grande de uma aplicação legado para o Salesforce, eu estava cansado de fazer via Excel pois iria demorar muito tempo, por isso pensei nesta ideia de meio que automatizar com csv's.

Link abaixo:
https://warstockcsv.herokuapp.com/procv

quarta-feira, 15 de novembro de 2017

Salesforce - Angular - Gulp - Pequeno exemplo para Aprendizado




Fala ai galera,

Tudo bem com vocês ? Espero que sim.

Eu sei que estou um pouco longe daqui porém estou trabalhando e estudando muito até para acompanhar o mercado com as novas tecnologias, e como mudei de emprego estou com mais desafios e metas a serem cumpridas e também novos projetos a serem concluídos como sempre né a vida de desenvolvedor sempre sendo barra pesada meu amigo. kkkk

Bem mais vamos o que interessa né:

Hoje queria compartilhar um pouco de conhecimento com um pequeno exemplo de uma aplicação utilizando o AngularJS mais o automatizador de tarefas Gulp, com um CRUD  no Salesforce, como ainda não estava muito bem familiarizado com a ferramenta criei essa pequena estrutura para aprendizado como me ajudo um pouco espero que possa ajudar algum de vocês.

Eu coloquei uma passo a passo no readme no repositório para ajudar.

Me despeço humildemente, desejo uma vida longa e próspera.

E bom estudos. :)

Link do repositório:
https://bitbucket.org/devbrunoribeiro/angularsalesforce

segunda-feira, 24 de abril de 2017

Salesforce - Abrindo a Mente - CRM - Desenvolvimento

Oi pessoal, como vocês estão ? Espero que todos estejam bem.
Estou trilhando mais um caminho na minha jornada de desenvolvedor agora em uma plataforma multitenancy Force.com e desenvolvendo na linguagem Apex.

Estou desenvolvendo algumas customizações no Salesforce para uso de soluções para a consultoria em que eu trabalho para alguns projetos e quais são as características principais desta poderosa ferramenta.

Para ajudar vocês nesta jornada, estarei disponibilizando alguns links e discriminando algumas referências para facilitar um pouco mais na sua caminhada.
Todo o administrador deve ser um pouco desenvolvedor, e todo desenvolvedor deve ser um pouco administrador. 

O que eu quero dizer com a frase a cima, e que muita das soluções não precisam ser necessariamente customizadas em nível de interface, o Salesforce possui muitos recursos que abrangem que o próprio administrador do sistema possa criar essas mesmas customizações não dependendo somente de desenvolvimento. Então fica essa dica antes de começar a desenvolver estude bem a ideia de como fazer, esgote todas as possibilidades de criar via administração qualquer solução.
Existe algo pronto que eu não preciso fazer gostei da ideia.
Existe várias soluções que estão na App Exchange do Salesforce prontinhas, que você não precisa escrever nenhuma linha de código, mas utilize com sabedoria.
Um bom administrador ou desenvolvedor deve conhecer os limites da ferramenta em que está customizando.
Isto é algo que você tem que levar para sempre e que é importantíssimo quando desenvolver qualquer tipo de customização dentro do Salesforce, ele possui alguns limites pois ele trabalha em uma plataforma multitenancy onde existe vários gerenciamentos de recursos, se  isso não for pensado previamente poderá haver vários problemas de performance e até exceções que vão dar muita dor de cabeça.
Teste, reteste e pense sempre em sua cobertura de teste quando desenvolver.
Quando você está desenvolvendo suas Triggers, Classes e métodos Apex entre outros pense sempre em refatorar, porque estou dizendo isso ? Isso é algo que vai te ajudar no momento de migrar as customizações na Org's de desenvolvimento para produção, e lembre-se que a cobertura de código deverá ser 75% para poder realizar o Deploy de qualquer customização que for transferida através de Change Set's.
Para poder testar preciso ter algo para poder testar, crie Mocks. 
No momento do desenvolvimento de qualquer teste vocês precisarão dos cenários de testes, antes de começarem a desenvolver peçam antecipadamente o que aplicação deve realmente fazer. Pense em vários cenários que possam seguir vários fluxos que ativem as exceções, validações. Não existe essa de um cenário só, o certo deverá ser vários que atendam os principais fluxos, isso  é importantíssimo será o medidor de qualidade do código.
Um bom padrão de nomenclatura, é uma garantia de sucesso para administrador e o desenvolvedor.
Quando a equipe desenvolvimento estiver desenvolvendo mesmo com a correria, dedique um tempo na nomenclatura de todos os objetos que deverão ser criados e de todas as classes, isso ajudará muito na organização, pelo menos nem que seja meia hora. Vocês vão perceber o ganho quando tiver umas 200 Classes. 😆
O administrador e desenvolvedor tem que achar as soluções juntos. 
Isso é primordial estou falando em um Pair Programming, isso faz parte também da primeira citação onde os dois devem ter quase o mesmo conhecimento, digo a vocês que vai ser muito difícil desenvolver sem o administrador da ferramenta, que cria os campos e outros processos de fluxo de trabalho e de negócio não estar do seu lado, você pode bater em um Process Builder ou Workflow do Salesforce quando executar sua trigger ou um método, sem saber. Então nada de ficarem separados um deve esta do lado do outro, ou perto ou se comunicarem todos os dias tirando todas as dúvidas.
Utilizar um Padrão vai definir o sucesso na manutenção e no desenvolvimento.
Então é bom se preparar para desenvolver em um determinado padrão de arquitetura, e nível de programação e a nível de documentação, saiba utilizar com sabedoria, lembre-se de cada objeto e classe e suas responsabilidades. Existem vários padrões de arquitetura, mas na minha opinião o que se encaixa melhor na maioria das customizações é o de Service Layer.

Espero que tenham gostado dessas dicas, no início me serviriam de grande ajuda.

Um Abraço.

Referências:

https://trailhead.salesforce.com/
https://developer.salesforce.com/blogs/
https://www.youtube.com/watch?v=n9amswhOxJw&list=PLRXcsQvlIqgipsM0VADllCPdT75L4iDLI
https://developer.salesforce.com/page/Apex_Enterprise_Patterns_-_Separation_of_Concerns

terça-feira, 3 de janeiro de 2017

Feliz 2017




Oi Pessoal,

Sei que tó sumido, desejo a vocês um ótimo 2017 espero que todos as suas metas se realizem e espero que Deus chova um monte de bençãos nas suas vidas, e lembre-se vá com fé, que a luta é nossa e o amanhã ainda é o presente que se faz hoje.

Um forte Abraço, Bruno.

segunda-feira, 4 de abril de 2016

SugarCRM - Abrindo a Mente - CRM - Sugar 7 - Desenvolvimento



Galera, estou a muito tempo sem aparecer aqui no meu blog mas acho que o meu amigo Rafael, me deu uma ótima ideia de postar aqui os meus tutoriais sobre a ferramenta SugarCRM, que é uma das melhores ferramentas do Mercado, e várias empresas estão pedindo cada vez mais suporte a ela.

Descrição da ferramenta abaixo:
https://www.sugarcrm.com/products/overview

Bem, a 1 ano eu vivi uma certa dificuldade de encontrar alguns tópicos em Português para o desenvolvimento baseado no Sugar então eu e meus colegas sentíamos muita dificuldade para localizar conteúdo, como eu estava um pouco mais a frente, peguei todas as dificuldades no inicio e fui montando um passo a passo de como desenvolver em cima dele.

Aqui abaixo está uma lista de sites que explicam sobre como desenvolver no ambiente Sugar:

Sugar Developer Guide - Este site funciona como se fosse o manual da ferramenta, tem uma gama de customizações que podem ser feitas, tipos de classes que podem ser herdades o método de desenvolvimento e a Arquitetura do Sistema.
http://support.sugarcrm.com/Documentation/Sugar_Developer/

Universidade Sugar  - Bem este site é baseado no aprendizado tem o conteúdo que você pode começar a brincar e desenvolver o nosso mentor nessa jornada é o Angel Maganã um dos especialistas da Sugar que nos mostra o quão poderosa é essa ferramenta e quão longe podemos chegar com ela.
https://university.sugarcrm.com/category/developer-users---self-paced

SugarCRM Comunity - Aqui é o fórum de discussão deles a onde nós podemos debater e procurar melhorar a ferramenta e buscar novas soluções juntos com os especialistas da Sugar, é um ótimo ambiente para se começar, aquilo que você pensa assim "poxa será que é realmente possível ?" a galera respondi sem problema, mas primeiro de uma pesquisada né. ^^
https://community.sugarcrm.com/welcome

Sugar Developer - Aqui é a nossa casa sempre quando você quer saber alguma uma novidade sobre o mundo do desenvolvimento do Sugar, aqui é uma lugar onde você estará entre amigos. :)
 http://developer.sugarcrm.com/

Angel Maganã - Galera, esse cara me ajudo muito no início considero como um amigo Angel tem várias exemplos de customizações foi uma das minhas linhas de partida e já disse pare ele me considerar um dos seus padawan rs.
http://cheleguanaco.blogspot.com.br/ - Blog
https://gist.github.com/elchele - GitHub
https://twitter.com/cheleguanaco - Twitter

Minhas apostilas - Com o passar do tempo acabei fazendo algumas apostilas em caso vocês precisem ou tenha dificuldades no início podem me perguntar que eu vou tentar passar o que já sei não adianta eu ficar guardando conhecimento estamos no tempo de compartilhar nossas ideias e abrir nossas mentes, porém nenhum dos documentos estão no padrão certinho como fui fazendo e desenvolvendo ao mesmo tempo foi complicado, mas espero que ajudem vocês.

Lista abaixo:

Desenvolvedor SugarCRM - Parte 1 - Validação - Versão 7

Desenvolvedor SugarCRM - Parte 2 - Criação do Pacote - Versão 7

Desenvolvedor SugarCRM - Parte 3 - Consumindo REST Api no Sugar - Versão 7

Desenvolvedor SugarCRM - Parte 4 - Consumindo REST da SugarCRM - Oauth - Versão 7

Desenvolvedor SugarCRM - Parte 5 - Criando um REST Point - Customizado - Versão 7

Desenvolvedor SugarCRM - Parte 6 - Criando um Drawer - Customizado - Versão 7

Desenvolvedor SugarCRM - Parte 7 - Criando um SubPainel - Customizado - 6.5

Bruno Ribeiro.

quinta-feira, 26 de fevereiro de 2015

Dia a Dia

Boa tarde,

Pessoal vocês devem ver que o meu blog tá parado é que realmente estou sem tempo para verificar novidades e nem Amv-s o que eu gosto muito de fazer e trazer os melhores.

Vou ver se do uma limpeza nesse blog retirar alguns posts antigos, adicionar coisas novas que condizem com o meu dia, dia de hoje e o que eu aprendo de desenvolvimento de sistemas, estou pensando em postar alguns vídeos com tutoriais em .Net e Jquery e aplicações Mobile utilizando o Cordova.

Olha pessoal estou sempre no Twitter agora, até mesmo por causa do meu trabalho, então se quiserem falar comigo podem falar de lá.

Bem sem mais delongas rs

Um abraço do seu amigo Bruno. :)

MetaTiger Presentation on Salesforce Brazil Channel

Hi Guys, I would like to thank the Salesforce Brazil Channel people for giving me a space to introduce MetaTiger. Thanks Guys,