#GPUGSummit | #INreno15 #GPUGSummit DEVELOPING SERVICE APPLICATIONS WITH DEXTERITY A NO NONSENSE STEP-BY-STEP GUIDE David Musgrave MVP Managing Director,

Slides:



Advertisements
Similar presentations
Support.ebsco.com EBSCOadmin Branding Tutorial. Welcome to the EBSCOadmin Skinning and Branding tutorial, where you will learn how to customize EBSCOhost.
Advertisements

1.
CS0004: Introduction to Programming Select Case Statements and Selection Input.
Test Automation: Coded UI Test
GP2013 (R2) New features in GP2013 (R2). New Ribbon for windows Edit List is the Print button on the right without the paper background Action pane can.
Introduction to MVC Adding a View Page NTPCUG Tom Perkins, Ph.D.
 2005 Pearson Education, Inc. All rights reserved Introduction to Classes and Objects.
Jeff Derstadt Senior Development Lead Microsoft Corporation Patterns & Architecture.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Works Cardholder Tutorial Initial Login, Transaction Review, & Reports.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2006 Microsoft Corporation.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
04 | Customize Team Foundation Server for Team Use Anthony Borton | ALM Consultant, Enhance ALM Steven Borg | Co-founder & Strategist, Northwest Cadence.
UNIT-V The MVC architecture and Struts Framework.
Design for Testability: Mocks, Stubs, Refactoring, and User Interfaces Benjamin Day.
JavaScript Form Validation
STAT!Ref New User Interface. The simplest way to search STAT!Ref is to enter the search term into the field at the top of the page and click the Search.
How a little code can help with support.. Chris Barba – Developer at Cimarex Energy Blog:
Database Design for DNN Developers Sebastian Leupold.
Doing Something Useful with Enterprise Library 3.0 Benjamin Day Level: Intermediate.
Analysis of SQL injection prevention using a proxy server By: David Rowe Supervisor: Barry Irwin.
GPUG ® Summit 2011 November 8-11 Caesars Palace – Las Vegas, NV Where do the Experts Turn for Answers? Presenter: Mariano Gomez MIS, MCITP, PMP, MVP.
Building Web Sites with ASP.NET MVC Framework Noam King CTO Sela College
University of Economics Prague Information Extraction (WP6) Martin Labský MedIEQ meeting Helsinki, 24th October 2006.
GPUG ® Summit 2011 November 8-11 Caesars Palace – Las Vegas, NV Microsoft Dynamics GP Development Tools Ask The Experts: Presenter: Mariano Gomez MIS,
R BRO SOLUTIONS INC. ©2006 RBRO Solutions Inc., All Rights Reserved Systems Design Consultants Document Migration into WorkSite.
Analysis of SQL injection prevention using a proxy server By: David Rowe Supervisor: Barry Irwin.
System Administration Dataform Management. Session Agenda Intro to Dataforms Adding & Editing Dataforms Field Maintenance Business Logic Custom Header.
Introduction to ABAP Selection Screens. Slide 2 Screens (Types) There are three types of screens Selection screens get parameter input for reports List.
CSCI 6962: Server-side Design and Programming Database Manipulation in ASP.
#GPUGSummit | #INreno15 #GPUGSummit CALLING ALL GEEKS! FIND OUT HOW APPS WORK WITH MICROSOFT DYNAMICS GP David Musgrave MVP Managing Director, Winthrop.
GPPC Connections 2011 | November 6-8 | Las Vegas, NV Support Debugging Tool for Partners Mark Polino, CPA, I.B.I.S., Inc. Principal Consultant, Microsoft.
GPUG ® Summit 2011 November 8-11 Caesars Palace – Las Vegas, NV Deployment, Administration and Performance Jeff Soelberg Fastpath Sarah PurdyMicrosoft.
Aniket Joshi Justin Thomas. Agenda Introduction to SQL Injection SQL Injection Attack SQL Injection Prevention Summary.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 Adding Parameters to Commands ADO.NET - Lesson 06  Training time: 15 minutes.
#GPUGSummit | #INreno15 #GPUGSummit WHY IS THE SUPPORT DEBUGGING TOOL / GP POWER TOOLS SO AMAZING David Musgrave MVP Managing Director, Winthrop Development.
Chapter 4 Introduction to Classes, Objects, Methods and strings
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Search Overview Search Features: WSS and Office Search Architecture Content Sources and.
#GPUGSummit | #INreno15 #GPUGSummit 25 DEVELOPMENT TRICKS AND HACKS IN 50 MINUTES David Musgrave MVP Managing Director, Winthrop Development Consultants.
WORKING WITH THE “CALL HTTP WEB SERVICE” WORKFLOW ACTIVITY Derek Nishino Nishino Consulting
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
House of tails dogs charity All donations go 100% to the charity #MMSGIVEBACK.
EBIZ302 Jupiter Business Process Automation and Web Services David Fong Program Manager.
Users are moving towards web applications Content on the web is more personal & meaningful Development on the web is easier than the OS.
DEV332 Programming for the Middle Tier in Visual Basic.NET Billy Hollis Author / Consultant.
#GPUGSummit | #INreno15 #GPUGSummit USING GP POWER TOOLS TO WRITE CUSTOM WEB SERVICES FOR MICROSOFT DYNAMICS GP David Musgrave MVP Managing Director, Winthrop.
Central Management Server Managing Your SQL Server Environment 1.
Python: Building Geoprocessing Tools David Wynne, Ghislain Prince.
Creating REST Services with WCF and EF. About Me: Architect with CEI > concentration is ALM practice. 10 years experience developing with Microsoft Tools.
Jens Seiger Kristiansen, Western Computer PRODUCT CONFIGURATOR - A DEEP DIVE INTO THE WORLD OF ATTRIBUTES AND CONSTRAINTS.
Exploreengage elevate explore engage elevate Presented By: Laura Murphy, Turnkey Technologies.
Redmond Protocols Plugfest 2016 Vivian TIAN Enhanced User Experience For Protocol Test Suites Software Engineer.
Introduction to Clustering
Ora Goldman, CEO, Mekorma
Project Center Use Cases
CARA 3.10 Major New Features
Data Virtualization Tutorial… CORS and CIS
Microsoft MB6-704 Microsoft Dynamics AX 2012 R3 CU8 Development Introduction Practice Exam Questions.
6/16/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Hyper-V Cloud Proof of Concept Kickoff Meeting <Customer Name>
Web Programming– UFCFB Lecture 17
Finding Data in Dynamics GP A Guide for Data Enthusiasts
14 T-SQL Functions You May Not Know
Introduction to .net Impersonation
Summit Nashville /3/2019 1:48 AM
JavaScript: Introduction to Scripting
Governing Your Enterprise with Policy-Based Management
RMA User Guide.
Automated Testing Strategies and Dynamics 365 Performance Management
SSRS – Thinking Outside the Report
Presentation transcript:

#GPUGSummit | #INreno15 #GPUGSummit DEVELOPING SERVICE APPLICATIONS WITH DEXTERITY A NO NONSENSE STEP-BY-STEP GUIDE David Musgrave MVP Managing Director, Winthrop Development Consultants Mariano Gomez MVP Senior Software Engineer, Mekorma

#GPUGSummit | #INreno15  Introductions  Service Based Architecture  Microsoft Dexterity Service Patterns – Wrapped Windows – Decoupled Business Logic  Steps to Create Service Enabled Procedures  Q & A 2 AGENDA

#GPUGSummit | #INreno15  Managing Director of Winthrop Development Consultants  Microsoft Dynamics GP Most Valuable Professional (MVP)  Worked with Microsoft for 13 and a half years  Lives in Winthrop, a suburb in the city of Perth  Where is Perth, Western Australia? 3 DAVID MUSGRAVE

#GPUGSummit | #INreno15

 Senior Software Engineer at Mekorma  Microsoft Dynamics GP Most Valuable Professional (MVP)  Lives in Atlanta, Georgia, USA  Born on a small Colombian island off the coast of Nicaragua  Where is San Andres Island? 6 MARIANO GOMEZ

#GPUGSummit | #INreno15

 Introductions  Service Based Architecture  Creating Service Enabled Procedures – Wrapped Windows – Decoupled  Q & A 9 AGENDA

#GPUGSummit | #INreno15

SERVICE BASED ARCHITECTURE

#GPUGSummit | #INreno15

Endpoint

#GPUGSummit | #INreno15 PATTERN: [Context]/[Resource Path(keys)]?[Query String] Hypothetical Examples GET … /Tenants(Default)/Companies(Contoso)/Sales/Customers(AARONFITZ0001)?format=summary POST … /Tenants(Default)/Companies(Contoso)/Sales/Customers DELETE … /Tenants(Default)/Companies(Fabrikam.%20Inc)/Manufacturing/Boms(WIDGET123) GET … /Tenants(Default)/Companies(Fabrikam.%20Inc)/Products(Id=346)/Boms?limit=20 THE ENDPOINT URI STRUCTURE Inc.) /Dynamics/Inventory/Items(100XLG).xml

#GPUGSummit | #INreno15  Discover available operations on a live deployment—just add /Help  Use to model your code or extract info from system  Provides info on objects, parameter requirements  Discovery not filtered by security— you may see operations you can’t call  Example URI does not provide company context DISCOVER YOUR URI

#GPUGSummit | #INreno15 MICROSOFT DEXTERITY SERVICE PATTERNS

#GPUGSummit | #INreno15 WRAPPED WINDOW PATTERN Validations Performed Commit logic executed ServiceCreateCustomer(customerObj) Field Mapping

#GPUGSummit | #INreno15 18 DECOUPLED BUSINESS LOGIC PATTERN Validations Moved UI is reoriented to call validations

#GPUGSummit | #INreno15 STEPS TO CREATE SERVICE APPLICATIONS

#GPUGSummit | #INreno15 STEPS

#GPUGSummit | #INreno15 SERVICE BASED ARCHITECTURE BEST PRACTICES

#GPUGSummit | #INreno15 WRAPPED WINDOW PATTERN

#GPUGSummit | #INreno15 WRAPPED WINDOWS

#GPUGSummit | #INreno15 REPLACING WARNING_DIALOGS

#GPUGSummit | #INreno15 ASK MESSAGES WITH PREDETERMINED ACTION

#GPUGSummit | #INreno15 ASK MESSAGES AND ADD ON THE FLY

#GPUGSummit | #INreno15 RETURN MESSAGES: FAILURE VS. WARNING

#GPUGSummit | #INreno15 ADDITIONAL TRACE LOGGING

#GPUGSummit | #INreno15 SERVICE PROCEDURES

#GPUGSummit | #INreno15 DECOUPLED BUSINESS LOGIC

#GPUGSummit | #INreno15 DECOUPLED BUSINESS LOGIC  Business Logic is provided by source other than a UI form. – Ex. sproc, other web service, pass thru sql, “PD” forms in the dictionary. Ex of PD form. Form\IV_Item  Should be faster than wrapped window. Encourages separation of business logic and presentation.  Might require a refactor if business logic currently resides in a form. – How do decide whether to refactor? Frequency of use and throughput should drive the decision.

#GPUGSummit | #INreno15 DECOUPLED BUSINESS LOGIC  No implicit datatype validation/conversion. – Map statement in wrapped window takes care of casing, signed vs unsigned precision and nulls. – In decoupled these things need to be coded. Examples for Decimals, Drop down lists and radio groups.

#GPUGSummit | #INreno15 DECOUPLED BUSINESS LOGIC  Check for valid sign and precision.  Check for valid value for a Drop Down or Radio Group.

#GPUGSummit | #INreno15 DECOUPLED BUSINESS LOGIC  Force strings to upper case as needed, for instance Item Number  Code must provide default values as needed in case the user passes a null value.  Demo create an Item.

#GPUGSummit | #INreno15

David Musgrave’s Winthrop Development Consultants Blog The Microsoft Dynamics GP Blogster blog (by Mariano Gomez) Developing for Microsoft Dynamics GP Blog – retired (by David Musgrave & the Developer Support Team) or 36 LINKS

#GPUGSummit | #INreno15

QUESTIONS? Contact: &

#GPUGSummit | #INreno15  Main Topic 1: Size 22pt – Subtopic: Size 20 pt  Main Topic 2: Size 22pt – Subtopic: Size 20 pt  Main Topic 3: Size 22pt – Subtopic: Size 20 pt 39 HEADER TEXT: SIZE 30PT

SECTION TITLE

QUESTIONS? Contact: