The Mobile CRM Conference 2015 September 14-15, 2015 in Boston, MA Take Your CRM to the Next Level.

Slides:



Advertisements
Similar presentations
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
Advertisements

Computer and Communication Fundamental Basic web programming Lecture 8 Rina Zviel-Girshin.
XHTML Basics.
SmartCall™ Messenger Account Setup
Create slices and hotspots Create links in Web pages Create rollovers from slices Create basic animation Add tweening symbol instances to create animation.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
® IBM Software Group © 2006 IBM Corporation Additional AJAX Examples and Workshops This learning module provides additional AJAX use cases and examples.
Macromedia Dreamweaver 4 Advanced Level Course. Add Rollovers Rollovers or mouseovers are possibly the most popular effects used in designing Web pages.
XP Tutorial 9 New Perspectives on JavaScript, Comprehensive1 Working with Cookies Managing Data in a Web Site Using JavaScript Cookies.
Technical Workshops | Esri International User Conference San Diego, California Customizing ArcPad solutions Marika Vertzonis, Gareth Walters, Stephen Quan.
Chapter 14: Advanced Topics: DBMS, SQL, and ASP.NET
We are partners in learning.. Note: Office 365 works best in Internet Explorer V 9 or above. Some features do not work in PWCS’s Chrome Browser or in.
Salesforce.com Web to Leads. Unit Name Web to Leads A web to lead provides users the ability to gather information from their website visitors which automatically.
Sage CRM Developers Course
Copyright 2007, Information Builders. Slide 1 Maintain & JavaScript: Two Great Tools that Work Great Together Mark Derwin and Mark Rawls Information Builders.
JavaScript & jQuery the missing manual Chapter 11
Administration Tab CiviCRM. Data Organization in CiviCRM: "Building Blocks" Contacts Reports Mail Tags Activities Contribe Member Events and Event Attendences.
Classroom User Training June 29, 2005 Presented by:
Chapter 6: Forms JavaScript - Introductory. Previewing the Product Registration Form.
Adxstudio Portals Training
© Cheltenham Computer Training 2001 Macromedia Dreamweaver 4 - Slide No 1 Macromedia Dreamweaver 4 Advanced Level Course.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
McGraw-Hill/Irwin © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Dynamic Action with Macromedia Dreamweaver MX Barry Sosinsky Valda Hilley.
Advanced Level Course. Site Extras Site Extras consist of four categories: Stationeries Site Trash Designs Components.
SEG3210 DHTML Tutorial. DHTML DHTML is a combination of technologies used to create dynamic and interactive Web sites. –HTML - For creating text and image.
Integrating JavaScript and HTML5 HTML5 & CSS 7 th Edition.
Multi-Part Requests/ Parent & Child Service Items.
Audio Dial In: or CRM to RM Visual CRM to MS-CRM 2007 Visual User Group Nov 21 st 2007.
Domain 3 Understanding the Adobe Dreamweaver CS5 Interface.
INTRODUCTION TO JAVASCRIPT AND DOM Internet Engineering Spring 2012.
Introduction to JavaScript 41 Introduction to Programming the WWW I CMSC Winter 2004 Lecture 17.
Presentation. Recap A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate. Taken advantage of Spring’s multi layer.
Session Objectives • Login to PeopleSoft Test Framework(PTF)
Warehouse Report. Log into EDS using your Address/User Id and Password. If you have forgotten your password, click on the Forgot Password? link.
IFORM ACCOUNT MAINTENANCE ICT4D SESSION 4. IFORMBUILDER WEBSITE REQUIREMENTS To access the iFormBuilder website, you need the following items: -Reliable.
ASP.NET The Clock Project. The ASP.NET Clock Project The ASP.NET Clock Project is the topic of Chapter 23. By completing the clock project, you will learn.
New & Improved Events List Relationships and Joins Large List Support Field & List Item Validation.
The Mobile CRM Conference 2015 September 14-15, 2015 in Boston, MA Take Your CRM to the Next Level.
.  A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate.  Taken advantage of Spring’s multi layer injection.
37 Copyright © 2007, Oracle. All rights reserved. Module 37: Executing Workflow Processes Siebel 8.0 Essentials.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
® IBM Software Group © 2006 IBM Corporation Using JSF Mini-Calendar Controls This section describes how to use a JSF Mini-Calendar Control with EGL It.
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
Extending the Operations Dashboard
1 CSC160 Chapter 7: Events and Event Handlers. 2 Outline Event and event handlers onClick event handler onMouseOver event handler onMouseOut event handler.
Adxstudio Portals Training
Presentation.
Servers- Apache Tomcat Server Server-side scripts- Java Server Pages.
0Copyright 2014 FUJITSU New Zealand Limited FUJITSU CONFIDENTIAL UNLESS SPECIFIED OTHERWISE Microsoft CRM Tablet App for Dynamics CRM 2013 Travis Chen.
Adxstudio Portals Training
Using Workflow With Dataforms Tim Borntreger, Director of Client Services.
Javascript Basic Concepts Presentation By: Er. Sunny Chanday Lecturer CSE/IT RBIENT.
SNG via Webinar. Where’s Webinar??  Double click Aflac 2000 folder  Highlight “SNGWebCommunicator”  Right Click and “Send To - Desktop”
What’s New in Dynamics CRM 2013: Business Processes, Workflows, No-Code Customization Richard Knudson Microsoft MVP since 2011 VP, CRM Magenium.
Lesson 1 – Getting Started with App Inventor
Basics Components of Web Design & Development Basics, Components, Design and Development.
Web Programming Java Script-Introduction. What is Javascript? JavaScript is a scripting language using for the Web. JavaScript is a programming language.
111 State Management Beginning ASP.NET in C# and VB Chapter 4 Pages
 1- Definition  2- Helpdesk  3- Asset management  4- Analytics  5- Tools.
An introduction to JDM Pro Release 2.0
100% Exam Passing Guarantee & Money Back Assurance
What Is Adxstudio Portals?
User Manual for Contact Management Customer Relationship Management (CRM) for Bursa Malaysia 2014 Version 1.0 | 4 September 2014.
Adxstudio Portals Training
Working in the Forms Developer Environment
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Integrating JavaScript and HTML
Implementation Methodology
Web Programming and Design
Kanban Task Manager SharePoint Editions ‒ Introduction
Presentation transcript:

The Mobile CRM Conference 2015 September 14-15, 2015 in Boston, MA Take Your CRM to the Next Level

A to Z of portable business logic Technical Advanced Track Juraj Mojik

Validate address, postal code, telephone number Time duration is calculated (Actual End – Actual Start) A field is hidden / not editable based on a condition Populate fields on a child entity based on the parent Modify the Order Products to add a special discount Find out how many appointments have been made against an Account …

All business logic captured within JavaScript Workflows UI scripts … has to be rewritten (recreated) for Mobile CRM Data plugins will fire Upon synchronization Immediately in Online mode

Rules Form View Calendar & Map JavaScript Form HTML UI components

Mobile application scripts written directly in Woodford Form Events Commands View Calendar Map

Conditions (if …) Steps Assignment Get GPS Position Say Text …

Available on Edit Form Executed on Form events / actions 3 types onLoad onChange onSave Specialty – onChange is executed during loading Value is changing from nothing to something

Triggered when the form is loaded (form is opened) Typically: Initialization of values Initialization of the form Specialty isFormEditable – makes whole for not editable

Triggered when a field on the form has changed Typically: Validation checks Setting of values Items visibility Specialty ChangedItem – contains currently changed item IsLoaded – if the form has finished loading

Triggered when the form is being saved Typically: Final check before saving Specialty ErrorMessage – prevents saving WarningMessage – user decides whether to save or not Note – setting values in Save is ignored

Entity – entity fields (data) Form – items available on the detail tabs Tabs – all the tabs Variables – local variables Shared variables – variables shared between the rules Configuration – current user, URL, is online, … Relationship – if form opened via associated view Specialties

Account, Don’t Allow s field If Don’t Allow s Make field not available on the form

Address on the Contact form Don’t allow saving a contact with incorrect address Inform the user with a message Highlight the problematic field

Contact has parent Account (parent company) Show Account’s website on the Contact form The field should be not editable Change is not reflected on the parent

Setting a value in the onChange rule triggers the onChange rule again! ‘field = value’ will trigger onChange Execution stops when the same value is being set onChange isn’t called when new value is the same as original value Typical problem – DateTime.setNow

Define commands (actions) for form Can use predefined Change State & Status Delete link Favorite PrintReport Scan (Contact, Lead) Conversions Or define own custom command

On Execute What should happen when a command is executed On Can Execute When a command should be available Command.isEnabled Script the same as on Form rules Both scripts can control standard & custom commands

Contact – Parent Account Custom command : Copy Address From Parent Should copy Address fields Available only if Address fields are empty

Contact Delete Status Field (Active / Inactive) Only show delete command if Contact is inactive

Similarly to Form rules there are also View rules View rules can set Row template Variable – ‘virtual item’ Modifying entity properties won’t work!

View - multiple row templates Different rows (lines) different look Row script (view rule) Which row template is used TemplateIndex Which template to use for current line

Opportunity view Different look for different Opportunities Highlight the ones with revenue more than $

Row definition contains Map pin Flip view to map Global Map Map pin requires Latitude & Longitude View rule is respected on the map Different pins for different items

The same Opportunity view Show Opportunities on a map based on their Account address Different Pin different revenue

Color of items (Color property) Possibility to reschedule by drag & drop (IsReadOnly) Note! Entity object contains all the properties If you want to use some – must be enabled in Select Fields

Standard Calendar Appointments Priority field Show Calendar items in Red if priority high Green if normal Blue = low

Form Events onLoad onChange onSave Commands onExecute onCanExecute View & Map Calendar

Access entity values Access form / view / calendar properties Load parent entity (via lookup) Create variables & show them Access GPS Access configuration Display a Message …

Load children entities (for cycle) Execute fetch (retrieve records) Create, modify & save entities (except on form)

Load children entities (for cycle) Execute fetch (retrieve records) Create, modify & save entities Access metadata Create (local) files …

What is Offline HTML? Flexible way to extend MobileCRM Offline HTML HTML pages (.html,.js,.css,.jpg, *) Included into Mobile Project Available offline for mobile app Offline HTML is used for Extending the Mobile CRM app UI Adding business logic Replacing the app’s UI completely

Offline HTML in Resco Mobile CRM The HTML pages are displayed in a web browser window (IFrame) Uses device’s browser iOS – Safari Android – Chrome Windows – Internet Explorer The IFrame can be placed on Form (as tab) Hidden – not visible Containing only business logic

Resco JavaScript Bridge JSBridge.js - Component provided by Resco Allowing the HTMLs (JavaScript) to interact with Resco app Native UI Data Layer (Fetch, Entities) Other (Application, Configuration, Metadata, …) You have to include it in your HTML / JS Latest version available always here Comprehensive reference of all functions & classes

Architecture Resco JavaScript Bridge Local DB … & more

1.Create an HTML page with business logic in JavaScript 2.Add that page as IFrame (tab) on a form 3.Make the IFrame hidden Work with: onChange, onSave handler onLoad – not present (body onload) CreateCommand, onCommand, CommandEnabled

Dynamic Entity represents entity instance createNew, load, save, properties[“fieldname”] FetchXML for queries construct, execute & process results EntityForm for form interaction onChange, onSave, form items, form properties, …

Do you need to: Load multiple records Create, modify & save records Perform computation on arbitrary number of fields Process strings (extract part of a text field) Go for JavaScript bridge Everything else -> start with Rules

Limited inter-form / multi-tab communication Not available on views / lists No global object Asynchronous everywhere! JavaScript Bridge objects different to Dynamics CRM

Thank you. Help us improve! Rate this session in the resco.next app TAKES 1 MINUTE