SAP Jam Collaboration Developer Guide Company

Total Page:16

File Type:pdf, Size:1020Kb

SAP Jam Collaboration Developer Guide Company PUBLIC SAP Jam Collaboration Document Version: May 2019 – 2019-03-28 SAP Jam Collaboration Developer Guide company. All rights reserved. All rights company. affiliate THE BEST RUN 2019 SAP SE or an SAP SE or an SAP SAP 2019 © Content 1 Introduction................................................................4 1.1 The SAP Jam Collaboration Developer Guide..........................................4 2 SAP Cloud Platform..........................................................7 2.1 Use SAP Jam with SAP Cloud Platform..............................................7 Register for SAP Cloud Platform and SAP Jam Collaboration developer access..............10 How to use the SAP Jam Developer Edition........................................15 Jam and SAP Cloud Platform integrations........................................35 Develop Collaborative Business Apps with SAP Web IDE and SAP Jam....................48 3 External Applications........................................................61 3.1 Integrate new business records.................................................. 61 Prepare the external application or platform.......................................63 Add a Trusted Certificate Authority.............................................65 Configure SAP Jam Collaboration as a SAML Local Identity Provider......................67 Add an OAuth Client........................................................68 Add a SAML Trusted IDP.....................................................70 Register the external application in SAP Jam Collaboration............................73 Develop an OData annotations file to display business records..........................77 Register the business records in SAP Jam Collaboration..............................113 Configure a business record filter..............................................116 Configure a business record sort order..........................................117 Configuring access to business records in SAP Jam Collaboration.......................118 Manage "external objects" (business records) using the SAP Jam Collaboration API..........119 4 Branding.................................................................122 4.1 Custom Headers............................................................122 5 OpenSocial Gadgets........................................................124 5.1 Develop SAP Jam OpenSocial gadgets.............................................124 Gadget Contexts......................................................... 126 Gadget Content Types......................................................127 Register your gadget with SAP Jam Collaboration..................................128 OpenSocial Gadget XML Structure.............................................139 SAP Jam Collaboration OpenSocial Tutorials......................................141 Using OpenSocial Gadgets to extend SAP Jam Collaboration..........................185 SAP Jam OpenSocial JavaScript API reference....................................193 6 Integrate Webhooks........................................................244 SAP Jam Collaboration Developer Guide 2 PUBLIC Content 6.1 Push notifications for webhooks.................................................244 Webhooks - Alias Users.................................................... 244 Webhooks - Alias Users - WAR file.............................................249 Webhooks - Groups.......................................................254 Webhooks - Groups - WAR file................................................259 7 UI5 Embeddable Widgets....................................................265 7.1 UI5 Embeddable knowledge base widget...........................................265 8 SAP Jam embeddable widgets................................................270 8.1 About SAP Jam embeddable widgets.............................................270 SAP Jam Collaboration div-embedded widgets....................................272 9 SAP Jam API............................................................. 288 9.1 About the SAP Jam API.......................................................288 SAP Jam API Reference....................................................288 SAP Jam OData API Tutorial.................................................289 Authentication and Authorization API...........................................451 SAP Jam REST API........................................................501 SAP Jam Collaboration Developer Guide Content PUBLIC 3 1 Introduction 1.1 The SAP Jam Collaboration Developer Guide This document, the SAP Jam Collaboration Developer Guide, presents developer-oriented information for integrating SAP Jam with other business-critical applications to enable work patterns. Work patterns are repeatable business processes that bring together people's expertise, content, tools, and business data, in a clearly laid out, purpose-built, collaborative workspace—SAP Jam groups—to efficiently and effectively deliver business results. Work patterns combine the collaborative features and tools of SAP Jam with external data, applications, and business best practices. It is the goal of the SAP Jam Developer Community to support customers and partners in building their own SAP Jam work patterns that can solve their specific business problems. While each work pattern is unique, they are built with a common set of building blocks, which include: ● SAP Jam Group Templates: SAP Jam groups act as the collaborative workspaces for work patterns. Group templates organize the content in a way that provides guidance to users on the best way to approach the work required to support a particular repeatable business process. The available SAP Jam group templates, and the use and customization of group templates, is discussed in the SAP Jam Collaboration Administrator Guide. ● Incorporating External Content into SAP Jam: Incorporating external content into SAP Jam allows data from both other SAP business systems and third party business systems to be displayed within SAP Jam groups. The procedure for doing this involves the following steps: ○ Register access to the External Application: This is done by configuring the access in SAP Jam's Admin console External Applications section, which is explained in the External Application section of the SAP Jam Collaboration Administrator Guide. ○ Develop the display component for the imported data: This is done by your organization's developer/integrators developing the components that display data retrieved from these external applications' OData APIs using SAP Jam Annotations, which is documented in the External Application [page 61] section of this SAP Jam Collaboration Developer Guide. These External Data objects can then be bound to specific group templates to allow organizations to easily build groups designed for collaboration around that external data. Development is an important part of integrating other software and services with SAP Jam to create the most effective work patterns for your organization. To make your development efforts as easy as possible, SAP invites you to register for free developer accounts of SAP Cloud Platform, SAP Jam, and to post your questions, comments, and solutions to the SAP Cloud Platform Developer Center and the SAP Jam Developer Community . (Click "Register [page 10]" in the image below.) SAP Jam Collaboration Developer Guide 4 PUBLIC Introduction ● Register for SAP Cloud Platform and SAP Jam Collaboration developer access [page 10] SAP Jam integrations The integrations of external applications with SAP Jam that are of interest to SAP Jam developer/integrators are shown in the following diagram. SAP Jam integrations In summary, there are five major sections in this SAP Jam Collaboration Developer Guide: ● SAP Cloud Platform: [page 7] This section introduces developers to the particular requirements and procedures for performing integrations using the SAP Cloud Platform. ● External Applications: [page 61] This section contains information on integrating business records data from business-critical applications into SAP Jam. This is done by pulling in data from the business application's OData API, or from an intermediary platform that provides an OData API (such as SAP NetWeaver Gateway or SAP Cloud Platform), creating an annotations file that maps that data into UI elements of SAP Jam's Business Record Viewer, and registering the external application with SAP Jam (in the Admin console's External Applications section). ● OpenSocial Gadgets: [page 124] provides documentation on the development of web apps that utilize SAP Jam's implementation of the OpenSocial specification, which extends the capabilities of SAP Jam to interact with any software or service. This section includes a tutorial, a reference section detailing SAP SAP Jam Collaboration Developer Guide Introduction PUBLIC 5 Jam's OpenSocial APIs, and information on configuring these gadgets for use in SAP Jam via the Admin console's OpenSocial Gadgets section. ● Embeddable Widgets: [page 270] This section describes two mechanisms for adding SAP Jam content to external web pages: ○ SAP Jam div-embedded widgets [page 272]: use the SAP Jam Admin console's Widget Builders section to generate the JavaScript required to paste a customized Feed Widget, Recommendations Widget, or Share Widget into an HTML page, without requiring knowledge of JavaScript. ● SAP Jam API: [page 288] provides the following sections of API Documentation for incorporating SAP Jam content into external applications, or for manipulating SAP Jam via
Recommended publications
  • Google Docs Accessibility (Pdf)
    Google Docs Accessibility (A11y) Building Accessible Google Docs • Heading Styles • Images • Table of Contents • Captioning • Columns and Lists • Tables A11y • Tab Stops • Color Contrast • Paragraph Spacing • Headers and Footers • Meaningful Link Text • Accessibility Checker What is Assistive Technology? Assistive Technology (AT) are “products, equipment, and systems that enhance learning, working, and daily living for persons with disabilities.” Magnification Speech Screen Readers Software Recognition Trackball Mouse Keyboard Zoom Text Braille Computer Keyboard Captions/Subtitles Captioned Telephone Video Relay Services Captioning Videos Per federal and state law, and CSU policy, instructional media (e.g., videos, captured lectures, recorded presentations) must have captions. This includes instructional media used in classrooms, posted on websites or shared in Canvas. • All students who are enrolled in a course must be able to access the content in the course. • Faculty: Funding is available to help faculty generate captions and transcripts for instructional media. Materials should be submitted at least six weeks in advance of their use in instruction. • Staff: For CSUN staff who do not provide classroom material, there is a cost through chargeback. For information on the chargeback, email [email protected]. csun.edu/captioning What are Screen Readers Screen readers are a form of assistive technology (AT) software that enables access to a computer, and all the things a computer does, by attempting to identify and interpret what is being displayed on the computer screen using text-to-speech. Screen readers can only access and process live text (fully editable or selectable text). • Provides access to someone who is visually impaired, mobility or has a learning disability to access text on the screen.
    [Show full text]
  • Wireless Assistive Head Controlled Mouse with Eye-Blink Detection for Enhanced Actions
    Turkish Journal of Physiotherapy and Rehabilitation; 32(2) ISSN 2651-4451 | e-ISSN 2651-446X WIRELESS ASSISTIVE HEAD CONTROLLED MOUSE WITH EYE-BLINK DETECTION FOR ENHANCED ACTIONS ALAN FRANCIS CHEERAMVELIL1, ARJUN ALOSHIOUS2, N. DHARANIDEVI3, S. VARUN4, ABEY ABRAHAM5 5Assistant Professor, Department of Information Technology, Rajagiri School of Engineering & Technology, Kerala, India- 682039 1,2,3,4Student, Department of Information Technology, Rajagiri School of Engineering & Technology, Kerala, India-682039 [email protected], [email protected], [email protected], [email protected], [email protected] ABSTRACT The Wireless Assistive Head Controlled Mouse with Eye-Blink Detection for enhanced actions is an assistive Human Interface Device aimed at quadriplegic people. The current pandemic has made the world more reliant on digital means of communications than ever before and people with motor disability have no means to access these resources. A majority of them have good head movement but no torso movement. The proposed device uses a Gyroscope sensor to accurately map the user’s head movements to the corresponding mouse coordinates. The device works with Bluetooth Low Energy technology enabling the user to control the digital devices at a comfortable range without the hassle of wires. The plug-N-play feature allows the use of the device without additional drivers. For more sophisticated usage scenarios, the user can choose between the various traditional mouse operations using a desktop software with the help of the eye-blink detection using image processing. Keywords— Assistive technologies; Persons with disability; Gyroscope sensor; Human Computer Interaction; Eye-blink Detection; I. INTRODUCTION According to the Census conducted in 2011, persons with disability (PwD) constitute 2.21% of the total population in India.
    [Show full text]
  • User Manual Introduction
    Item No. 8015 User Manual Introduction Congratulations on choosing the Robosapien Blue™, a sophisticated fusion of technology and personality. With a full range of dynamic motion, interactive sensors and a unique personality, Robosapien Blue™ is more than a mechanical companion; he’s a multi-functional, thinking, feeling robot with attitude! Explore Robosapien Blue™ ’s vast array of functions and programs. Mold his behavior any way you like. Be sure to read this manual carefully for a complete understanding of the many features of your new robot buddy. Product Contents: Robosapien Blue™ x1 Infra-red Remote Controller x1 Pick Up Accessory x1 THUMP SWEEP SWEEP THUMP TALK BACKPICK UP LEAN PICK UP HIGH 5 STRIKE 1 STRIKE 1 LEAN THROW WHISTLE THROW BURP SLEEP LISTEN STRIKE 2 STRIKE 2 B U LL P D E O T Z S E R R E S E T P TU E R T N S S N T R E U P T STRIKE 3 R E S E R T A O R STRIKE 3 B A C K S S P T O E O P SELECT RIGHT T LEF SONIC DANCE D EM 2 EXECUTE O O 1 DEM EXECUTE ALL DEMO WAKE UP POWER OFF Robosapien Blue™ Remote Pick Up Controller Accessory For more information visit: www.wowwee.com P. 1 Content Introduction & Contents P.1-2 Battery Details P.3 Robosapien Blue™ Overview P.4 Robosapien Blue™ Operation Overview P.5 Controller Index P.6 RED Commands - Upper Controller P.7 RED Commands - Middle & Lower Controller P.8 GREEN Commands - Upper Controller P.9 GREEN Commands - Middle & Lower Controller P.10 ORANGE Commands - Upper Controller P.11 ORANGE Commands - Middle & Lower Controller P.12 Programming Mode - Touch Sensors P.13 Programming Mode - Sonic Sensor P.14 Programming Mode - Master Command P.15 Troubleshooting Guide P.16 Warranty P.17 App Functionality P.19 P.
    [Show full text]
  • Profiles Research Networking Software Installation Guide
    Profiles Research Networking Software Installation Guide Documentation Version : July 25, 2014 Software Version : ProfilesRNS_2.1.0 Table of Contents Introduction ..................................................................................................................... 2 Hardware and Operating System Requirements ............................................................. 3 Download Options ........................................................................................................... 4 Installing the Database .................................................................................................... 5 Loading Person Data....................................................................................................... 8 Loading Person Data: Part 1 – Importing SSIS Packages into SQL Server msdb Database ..................................................................................................................... 8 Loading Person Data: Part 2 – Importing Demographic Data .................................... 10 Loading Person Data: Part 3 – Geocoding ................................................................ 15 Loading Person Data: Part 4 – Obtaining Publications .............................................. 16 Loading Person Data: Part 5 – Convert data to RDF ................................................. 19 Scheduling Database Jobs ............................................................................................ 21 Installing the Code........................................................................................................
    [Show full text]
  • A Comparison of Natural Language Understanding Platforms for Chatbots in Software Engineering
    1 A Comparison of Natural Language Understanding Platforms for Chatbots in Software Engineering Ahmad Abdellatif, Khaled Badran, Diego Elias Costa, and Emad Shihab, Senior Member, IEEE Abstract—Chatbots are envisioned to dramatically change the future of Software Engineering, allowing practitioners to chat and inquire about their software projects and interact with different services using natural language. At the heart of every chatbot is a Natural Language Understanding (NLU) component that enables the chatbot to understand natural language input. Recently, many NLU platforms were provided to serve as an off-the-shelf NLU component for chatbots, however, selecting the best NLU for Software Engineering chatbots remains an open challenge. Therefore, in this paper, we evaluate four of the most commonly used NLUs, namely IBM Watson, Google Dialogflow, Rasa, and Microsoft LUIS to shed light on which NLU should be used in Software Engineering based chatbots. Specifically, we examine the NLUs’ performance in classifying intents, confidence scores stability, and extracting entities. To evaluate the NLUs, we use two datasets that reflect two common tasks performed by Software Engineering practitioners, 1) the task of chatting with the chatbot to ask questions about software repositories 2) the task of asking development questions on Q&A forums (e.g., Stack Overflow). According to our findings, IBM Watson is the best performing NLU when considering the three aspects (intents classification, confidence scores, and entity extraction). However, the results from each individual aspect show that, in intents classification, IBM Watson performs the best with an F1-measure>84%, but in confidence scores, Rasa comes on top with a median confidence score higher than 0.91.
    [Show full text]
  • Connected Cl As Sroom
    Data in the Cloud he ability to move from one representation monthly temperatures for cities in the United of data to another is one of the key char- States, South America, and Russia. Tacteristics of expert mathematicians and A quick inspection of the graph makes it evi- scientists. Cloud computing will offer more dent that on average it is always colder in Verk- opportunities to create and display multiple hoyansk than in Washington (and much colder representations of data, making this skill in the winter) and that the seasons in the south- even more important in the future. ern hemisphere are reversed. These patterns would have been much more difficult to discern Multiple Representations in a table of numbers alone. We can represent data in a variety of forms— Even young students can explore multiple rep- graphs, charts, tables of numbers, equations. resentations of the same data with software such Mathematicians, scientists, and engineers often as The Graph Club (Tom Snyder Productions). look for patterns in data. Different representations This application allows students to view two of the same data sometimes make it easier to see linked representations of data simultaneously. As a pattern. For example, the pattern in the table children drag icons to form a picture graph or of numbers below is not immediately evident. enter numbers in a simple table, a corresponding bar graph or pie chart takes shape (see Figure 2). Changing the size of a sector in the circle graph or the height of a bar in a bar chart Table 1. changes the pictogram or vice versa.
    [Show full text]
  • Voice.AI Gateway One-Click Dialogflow Integration Guide
    Integration Guide AudioCodes Intuitive Human Communications for Chatbot Services Voice.AI Gateway Google One-Click DialogFlow Integration Integration Guide Contents Table of Contents 1 Introduction ......................................................................................................... 7 1.1 Purpose .................................................................................................................. 7 2 Messages Sent by Voice.AI Gateway ................................................................ 9 2.1 Welcome Message ................................................................................................. 9 3 Messages Sent by Agent .................................................................................. 11 3.1 Basic Activity Syntax ............................................................................................ 11 3.2 hangup activity ..................................................................................................... 11 3.3 Bot Framework Specific Details ............................................................................ 12 3.3.1 Google Dialogflow ....................................................................................................12 Voice Bot Solutions 3 Voice.AI Gateway One-Click Dialogflow List of Tables Table 2-1: Description of Initial Message Sent by Voice.AI Gateway ...................................................... 9 Table 3-1: Properties of JSON Object Activities.....................................................................................11
    [Show full text]
  • Slow Blink Eye Closure in Shelter Cats Is Related to Quicker Adoption
    animals Article Slow Blink Eye Closure in Shelter Cats Is Related to Quicker Adoption Tasmin Humphrey 1,* , Faye Stringer 1, Leanne Proops 2 and Karen McComb 1,* 1 Mammal Communication and Cognition Research Group, School of Psychology, University of Sussex, Brighton BN1 9QH, UK; [email protected] 2 Centre for Comparative and Evolutionary Psychology, Department of Psychology, University of Portsmouth, Portsmouth PO1 2DY, UK; [email protected] * Correspondence: [email protected] (T.H.); [email protected] (K.M.) Received: 27 October 2020; Accepted: 23 November 2020; Published: 30 November 2020 Simple Summary: Slow blinking is a type of interaction between humans and cats that involves a sequence of prolonged eye narrowing movements being given by both parties. This interspecific social behaviour has recently been studied empirically and appears to be a form of positive communication for cats, who are more likely to approach a previously unfamiliar human after such interactions. We investigated whether slow blinking can also affect human preferences for cats in a shelter environment. We measured whether cats’ readiness to respond to a human-initiated slow blink interaction was associated with rates of rehoming in the shelter. We also examined cats’ propensity to slow blink when they were anxious around humans or not. We demonstrated that cats that responded to human slow blinking by using eye closures themselves were rehomed quicker than cats that closed their eyes less. Cats that were initially identified as more nervous around humans also showed a trend towards giving longer total slow blink movements in response to human slow blinking.
    [Show full text]
  • Software Development Methodologies on Android Application Using Example
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by VUS Repository POLYTECHNIC OF ŠIBENIK DEPARTMENT OF MANAGEMENT SPECIALIST STUDY OF MANAGEMENT Ivan Bumbak SOFTWARE DEVELOPMENT METHODOLOGIES ON ANDROID APPLICATION USING EXAMPLE Graduate thesis Šibenik, 2018. POLYTECHNIC OF ŠIBENIK DEPARTMENT OF MANAGEMENT SPECIALIST STUDY OF MANAGEMENT SOFTWARE DEVELOPMENT METHODOLOGIES ON ANDROID APPLICATION USING EXAMPLE Graduate thesis Course: Software engineering Mentor: PhD Frane Urem, college professor Student: Ivan Bumbak Student ID number: 0023096262 Šibenik, September 2018. TEMELJNA DOKUMENTACIJSKA KARTICA Veleučilište u Šibeniku Diplomski rad Odjel Menadžmenta Diplomski specijalistički stručni studij Menadžment Razvojne metode programa na Android platformi koristeći primjer Ivan Bumbak [email protected] Postoji mnogo razvojnih metoda programskih rješenja koje se mogu koristiti za razvoj istih na bilo kojoj platformi. Koja metoda će se koristiti ovisi o zahtjevnosti samog projekta, koliko ljudi radi na projektu, te u kojem vremenskom roku projekt mora biti isporučen. U svrhu ovog diplomskog rada razvijena je Android aplikacija putem tradicionalne metode, iako su danas sve više i više popularne takozvane agile metode. Agile, ili agilan, znači biti brz i sposoban reagirati na vrijeme te prilagoditi se svim promjenama u bilo kojem trenutku razvoja projekta. U radu su objašnjenje najpopularnije agile metode te su prikazane prednosti korištenja agile metoda u odnosu na tradicionalnu metodu. (37 stranica
    [Show full text]
  • Google Earth Engine Sentinel-3 OLCI Level-1 Dataset Deviates from the Original Data: Causes and Consequences
    remote sensing Technical Note Google Earth Engine Sentinel-3 OLCI Level-1 Dataset Deviates from the Original Data: Causes and Consequences Egor Prikaziuk * , Peiqi Yang and Christiaan van der Tol Faculty of Geo-Information Science and Earth Observation (ITC), University of Twente, 7500 AE Enschede, The Netherlands; [email protected] (P.Y.); [email protected] (C.v.d.T.) * Correspondence: [email protected] or [email protected]; Tel.: +31-534-897-112 Abstract: In this study, we demonstrate that the Google Earth Engine (GEE) dataset of Sentinel-3 Ocean and Land Color Instrument (OLCI) level-1 deviates from the original Copernicus Open Access Data Hub Service (DHUS) data by 10–20 W m−2 sr−1 µm−1 per pixel per band. We compared GEE and DHUS single pixel time series for the period from April 2016 to September 2020 and identified two sources of this discrepancy: the ground pixel position and reprojection. The ground pixel position of OLCI product can be determined in two ways: from geo-coordinates (DHUS) or from tie-point coordinates (GEE). We recommend using geo-coordinates for pixel extraction from the original data. When the Sentinel Application Platform (SNAP) Pixel Extraction Tool is used, an additional distance check has to be conducted to exclude pixels that lay further than 212 m from the point of interest. Even geo-coordinates-based pixel extraction requires the homogeneity of the target area at a 700 m diameter (49 ha) footprint (double of the pixel resolution). The GEE OLCI dataset can be safely used if the homogeneity assumption holds at 2700 m diameter (9-by-9 OLCI pixels) or if the uncertainty in the radiance of 10% is not critical for the application.
    [Show full text]
  • Meeting Minutes Template Google Docs
    Meeting Minutes Template Google Docs Emerson narrows uncouthly as unleaded Rhett Photostats her weeds hex virulently. Clifton parts yore. Unblemished Virgil delates that lucidness entwining offensively and infests elementally. Once you could prove harmful to give a daily standups would any meeting minutes templates, may or question in your The templates include predesigned sections where did record meeting details. This is a more efficiency, google docs word or confirmation email address to read. Ability to be saved as well as view only with google. Below are outdated example templates as complete as tips and ideas to job you get started with maritime and preparing effective meeting minutes What are meeting. Download Word docx For Word 2007 or later Google Docs Description Free Writing Meeting Minutes Template October 23 20xx Plus it adds a tomb of. Enter the time that want to master templates offers a lot of the approaches that it helps you need to create a text. Blog post drafts company documentation meeting notes or even whitepapers. PandaDoc Track eSign Sales Docs Get surveillance on Google Play. Can use google docs templates you for the necessary details of minutes meeting template google docs. Slides can help you format it offers a regular basis and even easier access meeting notes, other common that holds several benefits of this attendance. Add special purpose of the staff or associated with your document also slow your content in a printable pdf a structured and you can. What a google docs to and quick agenda will find it can get an assistant to enter the user interface, not need to go.
    [Show full text]
  • The Ultimate Guide to Google Sheets Everything You Need to Build Powerful Spreadsheet Workflows in Google Sheets
    The Ultimate Guide to Google Sheets Everything you need to build powerful spreadsheet workflows in Google Sheets. Zapier © 2016 Zapier Inc. Tweet This Book! Please help Zapier by spreading the word about this book on Twitter! The suggested tweet for this book is: Learn everything you need to become a spreadsheet expert with @zapier’s Ultimate Guide to Google Sheets: http://zpr.io/uBw4 It’s easy enough to list your expenses in a spreadsheet, use =sum(A1:A20) to see how much you spent, and add a graph to compare your expenses. It’s also easy to use a spreadsheet to deeply analyze your numbers, assist in research, and automate your work—but it seems a lot more tricky. Google Sheets, the free spreadsheet companion app to Google Docs, is a great tool to start out with spreadsheets. It’s free, easy to use, comes packed with hundreds of functions and the core tools you need, and lets you share spreadsheets and collaborate on them with others. But where do you start if you’ve never used a spreadsheet—or if you’re a spreadsheet professional, where do you dig in to create advanced workflows and build macros to automate your work? Here’s the guide for you. We’ll take you from beginner to expert, show you how to get started with spreadsheets, create advanced spreadsheet-powered dashboard, use spreadsheets for more than numbers, build powerful macros to automate your work, and more. You’ll also find tutorials on Google Sheets’ unique features that are only possible in an online spreadsheet, like built-in forms and survey tools and add-ons that can pull in research from the web or send emails right from your spreadsheet.
    [Show full text]