Salesforce Google地图集成

Salesforce Google地图集成

我们是Salesforce™专家,我们通过记录我们在Salesforce™CRM世界中解决的所有行业特定技术问题来引导能源。在这里,我即将解释其中一个 谷歌地图API与Saleforce.com自定义开发项目 我与Salesforce™开发人员密切相关。在下面,我将为您提供项目的简要描述,基本上是我们帮助我们的最终客户。

要求:-

在,该项目客户端基本上需要一个系统查看器,他可以计算源和其他记录之间的距离。该项目的基本议程,帮助我们的最终客户,他们将帮助客户,他们可以从账户来源识别所有机器。

该项目的原始想法是,来自单个帐户记录来源,我们需要提供其他帐户列表的能力。属于该帐户的某个接近半径范围内的帐户记录是搜索“邻近”帐户中导致的帐户列表。

系统中的帐户可能是源帐户。从源帐户启动搜索的用户首先需要填充显示各种标准信息的屏幕。此类标准将包括“RADIUS”设置,我们将提供初始默认值,但我们将需要覆盖的能力。

其他条件将包括其中存在的两个或三个自定义字段,这些字段目前存在于帐户记录上。它将为每个提供默认值,但我们需要覆盖能力。

它不强制在地图表单中显示邻近帐户列表。如果邻近帐户显示在列表中,而不是在地图上,则重要的是,我们可以看到从每个接近帐户的距离到源帐户的距离。

我们带来了解决方案: -

在此内容中,我们承认从帐户列表中,我们可以从源到估算里程中的某些机器识别,并且可以以不同的成本从源中找到机器列表,从而识别某些机器可以识别某些机器英里列表和它也可以从上一个销售日前识别,我们可以从上面的所有来源过滤,然后单击“搜索”。从这方面,它提供了两个选项 

1 - 生成PDF
2视图地图

生成PDF: -  从此选项客户选择选择其选择后,他们会单击此选项,并会在PDF中获取详细报告。

查看地图: -  它为观众提供了识别产品的所有目标位置,并通过此地图分析某些目的地。

 

 

现在,随着以下屏幕截图,其方法可以理解如下: -

1)使用各种标准搜索过滤器

 

可以通过以下方式理解 代码片段 如下。这些是我们部署到生产的少数组成部分。

1. 在过滤器控制器上显示所有帐户: -

从以下代码中,我们能够区分如何多选过滤器上可用的选项 -

公众与共享类showallaccountonfiltercontroller {

公共字符串RecordId {GET; SET;}

公共帐户SourceAccount {GET; SET;}

public double last_sale_days_ago {get; set;}

公开名单<Account>accountlist {get; set;}

公开名单<Account>accountlistsearched {get; set;}

公开名单<Account>accountlistsearched1 {get; set;} //列表将在地图上显示

公开名单<wrpclass>searchAccountListWither {GET; SET;}

公开名单<String>AccountPickListValue;

公开名单<String>seletectedaccountpicklistvalue;

公共布尔列表空地{GET; SET;}

公共Boolean展示{get; set;}

public string headerdata {get; set;}

下面有上述模型的描述 ER图

 

 

 

 

Salesforce Winter ’18平台的顶级功能

Salesforce冬天’18平台的顶级功能

Salesforce今年呈现第54届发布;我们觉得在冬季令人难以置信的新功能’18版。随后,直接在平台上使用最新版本从冬天带出了我们最喜欢的前6名亮点’18 release. Let’在这里检查一下!!

Salesforce Service Salesforce DX: Salesforce DX是一种全新的和创新的制度来规范和蓬勃发展的Salesforce应用程序。不管你’作为组织的一部分,Salesforce DX为高性能敏捷开发的集成端生命周期设计提供了一个单独的开发人员或运作,最重要的是,Salesforce创建了与共存工具开发的即平移和灵活性。

Salesforce DX是运输源驱动开发的产品和服务的汇编。现在,您可以从现代协作技术获得:

  • 获取版本控制团队中的所有内容
  • 你的代码
  • 您的组件配置
  • 元数据

它提供了更卓越的测试功能的能力。此外,Salesforce DX CLI是一个强大的命令行界面,可促进开发,并在与您的Salesforce Org一起使用的同时进行自动化。

Salesforce IoT Explorer: Salesforce IoT Explorer是核心Salesforce平台所固有的;您可以精确启动设置。 Salesforce正在实时访问设备数据,并监控连接产品的能量输出。 Orchestrations接口允许您在IoT资源管理器检测到故障时,可以查看具有自动生成服务案例的相关声明规则的各种状态。在此,请在通过读取设备数据通知的服务控制台内直接设置详细信息。服务技术人员现在可以基于设备数据升级和路由该病例。使用Salesforce IoT Explorer,用户体验和处理引擎全部内置于核心Salesforce平台中,并完全集成了所有业务流程。所有这些都有利于您在任何连接设备上与客户联系,并彻底改变您服务的销售和市场的方式。

爱因斯坦分析新的故事建议和可视化: 最新的爱因斯坦分析增强包括Einstein发现驱动器的激动人心的新功能,更聪明的洞察力和新的故事可视化印象深刻。 Salesforce在建议改善您的数据时,Salesforce在关注所有工作。它将自动检测任何重复和异常值,以便您可以创建分析报告的最佳版本。随着故事时间表的增加,你可以在你的故事和什么之间来回浏览’s随着时间的推移,可以在不使用任何数据科学家的情况下在数据中发现这些一致模式的能力,它允许您的团队更聪明,更快地工作。

Einstein Analytics SDK休息加密: 在冬天18,那里’S向Einstein Analytics SDK开放我们的分析平台的基础。无论您的应用程序是否建在闪电Visualforce甚至是Salesforce之外,您现在可以使用您的应用程序与任何分析仪表板进行交互。 Salesforce现在推出了Analytics Web SDK,它允许您快速连接自定义应用程序以及分析效果SDK,其中您可以从休息时从任何Apex类加密求出分析数据的查询。它可能会内置,你’LL永远不必担心对分析数据的安全性和保护。

闪电体验增强: 在冬季释放中,你’毫无疑问地注意到了一个急剧改变了闪电体验。这些增强功能是Salesforce社区令人难以置信的研究反馈,并强烈希望看到客户成功的愿望。

首先是首先,此功能具有扫描信息的全新选项。你’LL很快注意到内容和背景之间更引人注目的对比。 Salesforce以增强的字体大小和文本框,标题,正文内容和按钮之间的显式层次结构易读了易读性。您还将观察更紧凑的设计,并在页面上增加了内容密度和更少的空白空间。现在,您可以在同一区域查看更多数据,并花费更少的时间滚动,但是’s not all. We’ve用一些salesforce乐趣注入了闪电体验。 Trailhead Branding建立在;这些新的增强功能有助于使每个用户达到最大的闪电体验,更高效。

新的闪电组件: 分享这一刻很高兴; Salesforce为Salesforce开发人员社区添加了更多基础的闪电组件。基于闪电组件是构成现代闪电体验,闪电应用和雷电社区用户界面的构建块。

新的和更改的闪电组件如下:

  • 添加了有关新组件,闪电的信息,闪电:输出域和闪电:RecordViewForm,以及闪电的更改:DataTable和Lightning:VerticalNavigation
  • 新的和改变闪电组件
  • 添加有关更改的信息 闪电:按钮有状态.
  • 新的和改变雷电接口
  • 添加了对Force:HasreCordid接口,用于实用条中使用的闪电部件。

希望这有助于您所有新的冬季18发布,有关您可以查看我们的更多信息 www.cloudanalogy.com.

承担Salesforce集成的挑战

承担Salesforce集成的挑战

现代组织倾向于利用各种应用来提高其运行效率。例如,销售的Salesforce,工作日为HR&财务,现在服务于运营,亚斯索州工程等。大多数这些应用程序都提供不同的功能。其中一些没有被编程为彼此合作,但它们有很多共同点,即锻炼类似的业务并发症和问题。当我们在组织内集成相关但独立的应用程序时,它可以帮助业务增加运行一致性,效率和质量。 CRM Systems倾向于为与客户相关的所有数据提供服务的统一位置,因此,公司更有意义能够与此类平台进行连接。

Salesforce在CRM领域的市场份额约为22%,而且客户从初创公司到财富500强,在市场上有很大的声誉。 Salesforce提供了一系列多通道营销,客户隔离,支持服务,协作和预测,报告,工作流等。Salesforce API是顺利的,但仍然存在一些需要照顾的领域。

根据第一篇文章的文章,对200名积极的Salesforce用户和专业人士进行的调查披露了与未来规划和使用模式的最重要问题,并实施了Salesforce。大约54%的Salesforce用户指出,数据源与应用程序的集成是最关键的问题。

通过溶液从BizTalk到Informatica,整合技术已经存在多年,但云计算改变了方案并带来了一个完全新的挑战。在整合技术的初始年份,它被分类为Enterprise应用程序集成,企业信息集成提取,转换和加载等术语。为简单使用自定义编码也是一个选项。

在跨越基于云和云的数据中心的混合环境中,集成方案已经改变,以多种方式变得更加复杂。首先,可预见的未来的计算基础架构现在将在以下位置传播:

Salesforce集成问题从必要性中爆发了Salesforce和各种平台之间的数据。

主要的一体化挑战是:

1. 需要广泛的编码和应用程​​序安装

在某些集成方案中,需要大量编码,需要安装多个设备以确保成功集成。这些解决方案要求管理管理更新软件和类似的基础架构。通过频繁的平台更新,应同时确保所有实例的定期分发这些更新的重要性。

2. 控制

集中控制中的云中的集成开发,管理和监测是一个复杂的任务。开发一个运行时,可以在云中或用于安装和集成执行的云端或在线上进行的引擎,这可能是一个麻烦的任务,特别是我们正在寻找不同应用程序之间的数据分享数据。这也取决于公司的安全和延迟考虑因素。

3.  灵活性

在复杂的环境下,几个SaaS和内部部署应用程序需要集成,其中包括在房屋托管应用程序到基于云的应用程序的遗留的组合。如果需要将数据从本地应用移动到迁移方案的基于云的应用程序。重要的是,任何整合努力都应该支持任何组合的前提和云应用程序集成。即使跨核心信息系统,子公司,地区和合作伙伴,也应该有可能。

可能的解决方案

有两种主要方式可以帮助处理上述或其他Salesforce集成问题。它可以在您自己的解决方案上构建,这些解决方案是自定义的或使用现有工具的作业。

评估建立一个软件的主要优点是呈现出广泛的定制选项以及巨大的灵活性。它将允许满足业务和CRM集成的所有需求。但是,它涉及崇高的投资和加工和发展这样的工具的大量时间。因此,它成为企业的不合理选择。第二种方式是使用现有的服务,该服务易于负担,同时更快地部署。通过单一访问这些服务之一,它允许同时与多个系统集成。实际上没有要求为不同的CRM平台编写单个集成模块,也没有要求雇用开发人员。

可以force.com(来自salesforce.com)被视为paas

可以force.com(来自salesforce.com)被视为paas

云计算和Force.com介绍

“云计算” 大大改变了业务应用程序如何构建和运行。按照打开互联网程序,向部署其他应用程序呈现。作为服务的平台 - 或PaaS - 是今天是运行应用程序的建立模型,而不会在您公司维护硬件和软件基础架构的挑战。 PAAS解决方案的优势是他们能够将自己升级到最新的无需手动干预。

PAAS服务部署在云中,并通过其Web程序基本上由客户端访问。软件设计师,网络工程师和组织可以通过PAAS进行所有利润:软件设计人员可以利用PAAS解决方案来组装他们计划提供网站或软件的应用程序,以便在框中出售。 Web设计人员可以在过程的每个阶段使用单独的PaaS情况来创建,测试和托管其网站。组织可以建立其内部软件,主要是开发明白的环形围栏的进步和测试条件。作为服务的平台(PAAS)是一个分布式计算模型,其中Outsider供应商传达了硬件和软件乐器 - 通常是应用程序改进所需的软件仪器 - 在网上到客户端。 PAAS供应商拥有硬件和软件全部独立基础架构。

PAAS解释客户端必须安装内部硬件和软件以创建或运行其他应用程序。 PaaS的原始目的是改进设计师的代码撰写过程,并通过PAAS供应商处理的基础设施和操作。最初,所有PAAS平台都在公共云中。在一段时间内,因为许多公司不想拥有一切,在公共云中,私人和混合Paas平台建造。

Force.com.平台使公司能够在云中构建和部署应用程序,而不是大量的内部部署应用程序平台,混合平台以及许多不那样的云平台。

PAAS为工程师和公司提供了一种情况,可以创建,拥有和传达应用程序,从基础架构侧的复杂性节省设计人员(设置,安排和管理组件,例如服务器和数据库)。 PaaS可以通过确保开发人员和其他利益相关者能够专注于应用程序本身,而无需解决管理运行时,中间件,运营框架,虚拟化,服务器,存储和网络的问题,可以加速应用程序本身。

 是什么让力量得到的paas?

 

就像Salesforce.com一样,与他们的产品有关,销售云,服务云和营销云。一个组织可以今天出去购买销售云,并开始记录潜在客户,机会,运行报告等。对比,通过购买一些Force.com许可证,您不会开箱解决方案,无权提供领导,账户或机会。您必须建立应用程序,标签,自定义对象,工作流程为自己设计为设计要使用的系统。

force.com作为paas.

Force.com.与其他PAAS提供商有一些重要的差异,因为它支持编程接口,专门用于创建基于多租户的基于云的应用程序。它具有基于Java的Apex编程语言的唯一编程模型。它还具有本机UI和UI编程语言。构建在Force.com平台上的应用程序可以是Salesforce CRM提供的CRM功能的扩展,或者它们可以是基于过程的业务应用程序,例如批准工作流程。该平台还为CRM集成或Outsider服务提供集成API。

在Force.com中,开发人员可以仅声明数据对象正在利用可视化配置工具并以APEX编程语言编写触发处理程序。对多租户的支持,包括租户数据隔离和配置,不需要特定编程。这种平台的实用,异常状态方面之一。

但是,权衡是编程模型是一种类型的模型,并且不转化为传统的企业架构。此外,对于帮助多租户的特定最终目标,该平台具有运行时截止点,限制了数据量,一些事务和交易延迟。

Force.com.平台提供其他功能,包括与外部API的安全性和集成

Force.com.加速了基于云的应用程序的开发速度,该应用程序挖掘中心Salesforce.com应用程序并促进无缝部署。许多isvs不愿意采用corce.com,因为它是专有的,与更多主流开发平台相比,没有成熟或市场验收,例如Microsoft .NET或Java / J2EE。此外,由于Force.com没有提供极端云的便携性,一些程序员在利用这个平台时犹豫不决

Salesforce.com正在与PaaS推动进行。例如,该公司收购了Heroku-A基于Ruby的PAA,支持全球改进组并推动许多社交和多功能的云应用程序。该公司还介绍了Database.com-A语言自主促进的数据库,显然是与Microsoft SQL Azure竞争的路径。这些如何形成战略性补充力量,并将被市场接受尚未完全捕获。

右PAAS平台驱动创新,使公司能够更快地部署应用程序。一个精确的PAAS应用程序已打开,允许IT协作有助于多云部署。

尽管Force.com专注于生产力,但该平台仍然需要解决一系列应用程序支持等因素,从简单到最复杂的应用程序逻辑和源控制器的应用程序逻辑和源码控制。

5错误的Salesforce开发人员可以承诺或应该避免

5错误的Salesforce开发人员可以承诺或应该避免

这款Salesforce博客是开发商在Force.com开发和定制方面的经验。日常开发人员面临的问题以及它们犯下的错误有时对广泛的开发人员和管理员有助于有趣。

所以让我们开始史诗!

不要纠结:

曾几何时  我正在VF页面上开发,并提供了一个报告的链接(VisualForce页面中的标准Salesforce报告:

因此,我在我的vf页面中硬编码了报告的网址。 URL在沙箱中正常工作,我很开心。一旦我完成了开发,我将迁移到生产环境的更改,最后当我在网站上测试了应用程序时,我无法查看单击链接的报告。

但我稍后知道我无法修改生产环境中的APEX类,我需要尽快修复它,所以这一切都是一个大的烂摊子!

在仔细审查障碍之后,我发现我已经硬编码了我的报告网址,因为环境发生了改变了URL已停止工作。

所以我终于想到了使用动态URL的概念,并使用下面的一些代码片段:

“url.getsalesforceBaseURL()。ToexternalForm()+'/'+ ReportId”

最后的判决:> DO NOT HARDCODE!!!

避免SOQL错误:

在开发中,您遇到了错误的错误,例如“system.limitexception:太多SOQL查询:101”?

这个错误 system.Limitexception. :太多SOQL查询:101是由于事实,您正在击中州长限制。

我们尊敬的州长限制说,您可以在上下文中运行总共100个SOQL查询,您正在击中限制。

在对同一个彻底的研究之后,我发现触发的所有触发器将在单个上下文或呼叫中进行计数。我们需要确保触发的SOQL总数应小于100。

为了通过这一点,我多次更改了我的代码,以这样的方式触发必须小于100。

有时我也喜欢如果(只有我们需要更改上下文)在需要异步运行代码时,使用@future注释。

我肯定总是那个我使用的SOQL查询不应该在循环中。

有一些最佳实践,您必须遵循避免此错误(以避免击中调速器限制)。

//wiki.developerforce.com/page/Best_Practice:_Avoid_SOQL_Queries_Inside_FOR_Loops

http://salesforcedeveloperblog.blogspot.com/2011/05/best-practices-of-triggers.htmhttp://www.salesforce.com/us/developer/docs/apexcode/Content/apex_triggers_bestpract.htm

http://wiki.developerforce.com/page/Apex_Code_Best_Practices

//www.salesforce.com/us/developer/docs/apexcode/Content/apex_gov_limits.htm

 始终遵循上述实践,以确保您在工作场所享受微笑..

具有挑战性的部分是人们无法增加总督限制,只能遵循最佳实践。

Streamline在同一对象上的多个触发器

 所以这是一个更棘手的情况:

一旦我在尊重的对象案例上工作(简而言之),可以自动为客户经理分配。所以我写了一个“在插入前的”触发器。

我发现有时分配的客户经理正如预期的那样,有时候不会!

我被困惑了!!

就像始终我开始挖掘检查调试日志,手动测试等等。

最后,调试日志是一个“Maseeha”告诉我,我确实有两个触发器,因为哪个系统无法识别执行顺序。 可能这些代码由其他一些开发商起草(当然是我当前和以前的同事)起草。 我坐在他们身边,最后突出了一个触发器,对象上具有相同的事件。

因此,在实践中,避免对象上具有相同事件的多个触发器,因为它可能有时脱掉您。

ullkify代码

因此,在我的Salesforce发展职业的最初日期,我遇到了非常可怕和良好的学习当然为我。

让我们开始给你一些瞥见我的书面代码,只处理一个记录 :

trigger BeforeInsert_Account on Account (before insert){

//This only handles the first record in the Trigger.new collection but if more than 1 Account initiated this trigger, those             additional records will not be processed

Account objAccount= Trigger.new[0];

List<Contact> contacts = [SELECT ID,salutation,firstName,lastName,email FROM Contact WHERE
 accountId = :acct.Id];

//and something something

} 

我测试了触发器,它的工作正常,我的工作是由我的工作完成的,然后突然有一天触发器击中了调速器的限制。

就像总是我被困惑了。我知道,我的一个甜蜜的同事已经写了一批插入账户,这是整个唯一的原因。

因为我无法问我的甜蜜同事撤消批处理课程,我需要做点什么。

挖掘后,我发现如果一批记录调用我的APEX代码,则所有这些记录都需要作为批量处理,击中调控器限制。

问题是,只有一个帐户记录被处理,因为代码仅在触发器中仅明确访问触发器中的第一个记录.New [0]。相反,触发器应正确处理触发器中的整个帐户集合。

以下是如何从批处理处理所有传入记录的示例:

trigger BeforeInsert_Account on Account (before insert){

//This only handles the first record in the Trigger.new collection but if more than 1 Account initiated this trigger, those additional records will not be processed

Account objAccount= Trigger.new[0];

List<Contact> contacts = [select ID, salutation,firstName,lastName,email FROM Contact 
WHERE accountId = :acct.Id];
//and something something……
}

请注意,该代码的该修订版本如何遍历整个触发器。使用用于循环的整个触发器。现在,如果使用单个帐户或最多200个帐户调用此触发,则所有记录将被正确处理。

所以始终缩小策略来写宽容的代码。这是练习,虽然它不容易但是很好!

遵循申请表现的一般设计指南

根据我在设计VisualForce的经验,您可以使用良好的弹出窗口和图像开发一个非常丰富的UI,但是当用户开始使用它时,它将成为NetTlesome用于单击或导航到按钮。

我已经写了这些一般指导方针以避免绩效影响:

  • 始终在特定任务周围设计页面,在任务之间具有明智的工作流程和导航。该点应在任何地方连接。
  • 切勿使用功能和数据过载页。 VisualForce页面具有无界数据或大量组件,行和字段具有较差的能力和性能,并且它们冒着击中调速器限制的视图状态,堆大小,记录限制和总页面大小。
  • 始终尝试推回请求以包括非基本功能。
  • 必须构建原型以验证疑虑。

 参考:

//developer.salesforce.com/blogs/developer-relations/2015/01/apex-best-practices-15-apex-commandments.html