Monthly Archives: January 2013

72-App-Store-Icon

Blaze … a free iPad app for SAP Netweaver Gateway

72-App-Store-Icon.png

 

A couple of months ago I was working on creating services for a SAP App store app called Production Insight for SAP. While working on the app I constantly found myself using RESTClient for Firefox to test, debug and view the attributes of my service while I was developing in XCode. Eventually I pulled up the metadata and service implementation on my iPad and used it as a second screen for reference. This made my life much easier. After having done this a couple of times over the past few months, I figured it wouldn’t be a bad idea to create an app which not only lets you view the service and its details, but also save requests, test them against multiple servers and also view the details easily. Which is why I built “Blaze”, it does all this and a little more. It is a free app and available in the app store as of yesterday, if I could put a “demo” or “beta” sticker on it: I would. (but apple won’ approve anything like that!) for all you “gatewayers” out there, please test it out and let me know what you like and don’t. My intention is to create a iOS client for gateway which is useful to developers like myself. The app can also handle other OData servers and services like Netflix and XS Engine from HANA.

Here are a couple of the app’s features:

  • Easily create and test new gateway services
  • Browse the service catalog of your servers
  • Save service calls as favorites for easy testing
  • Adding favorites saves request headers and methods
  • Handles both XML and JSON based services
  • Preview mode formats the response for easy reading
  • Links mode shows all links in the document which enables quick and easy drill down
  • Add headers easily with a list of choices
  • Also supports other OData Service Implementations such as Netflix and HANA XS Engine

  • This version currently requires SAP Netweaver Gateway SP04, the main reason for this is to easily browse the service catalog using JSON, if you don’t have SP04, you can set the app to “other” type and it should work. <- feedback needed

Click here to download the app

Here is a short demo video of the app in action:

 

And here are a couple of screenshots:

iPad Screenshot 1

iPad Screenshot 2

iPad Screenshot 3


Screen Shot 2014-04-23 at 4.57.06 PM

Communicating with other iOS apps using URL Schemes

When I started developing iOS apps a couple of years ago, I was concerned that enterprise apps were going to quickly succumb to the world of development scope creep. Since the apps were fairly focused and provided a single function or process solution, what if the business wanted more? For example, you have a CRM app displaying your customer contact information and some high level details regarding order history and credit limits, but what if the user wanted some additional details from your BI solution drilling down into historical orders and profit analysis? Well, in that case, you had a few options:

1) Extend the scope of the app – by adding functionality and options, sometimes a reasonable option if the scope is not excessive or the functionality is relative to the app. In our  above example, probably not.

2) Build another app with replicated functionality – duplicate code to display the customers and overview details in both apps.

3) Build 2 separate apps – But this would require the user to re-enter information (such as searching for and entering the Customer ID) in the 2nd app.

The fourth option is to use option 3 but with a twist, by enabling communication between the 2 apps by using URL Schemes. As the majority of iOS developers know, you can open other standard iOS apps like Safari, Mail or the Phone using the UIApplication SharedApplication class, what many developers and mobility architects overlook is that, not only standard apps can be called from your code, but any app which has a URL scheme defined. This gives you the ability to separate processes by application, and in the event a user would like drill deeper into additional information or functions, you can pass information to another app where that can be handled. What if the app is not installed? Good question … You device will smartly open the Apple App Store giving you the ability to install the missing app. Configuring and consuming the communication between 2 apps is very simple and straight forward.

http://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Art/app_open_url_2x.png

 

 

You can read about the URL Schemes within the apple documentation here:

http://developer.apple.com/library/ios/#featuredarticles/iPhoneURLScheme_Reference/Introduction/Introduction.html

and here: http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html#//apple_ref/doc/uid/TP40007072-CH7-SW18

Within the SAP Suite of iOS Apps you can also find URL Schemes already configured and in use, some examples of these are:

CRM @ SAP

Find account by number: crmatsap://openAccount?accountid=<number>

Open opportunity by number: crmatsap://openOpportunity?opportunityid=<number>

Open account by number: crmatsap://openAccount?accountid=<number>

SAP Pricing

Open Product by ID: pricingapp://openProduct?productid=<productid>

If you are still not sure if iOS URL Schemes are right for you here are a couple of Pro’s and Con’s

Pros:

- Use other custom apps to augment yours

- Use other companies apps to augment yours

- No need to redevelop similar functionality

- Communicate between apps

- Launch your app from a hyperlink (online/in a web page?)

- No need to be online for base functionality

Cons:

- Shouldn’t pass sensitive data

- Clearly define the scope of each app and avoid over simplifying (e.g. an app for searching for customers by name, another for searching by ID.)

- Should not be a critical function, since there is no guarantee that the data is being received by the other application

I am curious to know how many app developers out there are using URL Schemes within their custom development?

 


mzl.qqijnvvh

zSCN – A iPad SCN Community Reader

After spending a couple of months traveling in 2012, I wrote a personal app for reading and following content created on the SAP Community Network. Although it was slightly buggy and ghetto, I found it way faster than firing up my MBA to check if a comment or something helpful had been posted in my local Netweaver Gateway hangout. I spent the last +- 6 months using the app and after reading a few comments on the new Idea place and in the forums, I decided a couple of others may find it helpful and set out to build a user friendly version.

Now on to the app …. firstly, starting up the app you are presented with a list of spaces (thanks to Jason Lax for creating a helpful list here!), secondly, the app uses the RSS feeds from each SCN “Space” to curate the content, each time you select a space the content is cached on the device (in a little SQLite DB) and refreshes each time the space is opened. You can also select the number of items which are downloaded in each category (blogs, documents and forums). After logging into SCN using your SCN username/password, it will download your spaces, people and saved content. Keep in mind that you cannot “save” or create content from the app, since the SCN API’s are not currently publicly available (I am hoping for some change on this!). However, each item can be selected and the original content will be displayed on the website where you can login and respond/comment. You can also easily email the item to a friend in need, or tweet it if you are a social butterfly

Currently the app has been written for iPad only but the iPhone version is in the works, but since blogs and more in depth content is more conducive to read on a tablet, I am still trying to decide if it would be warranted … any comment?

Personally, I am quite surprised the Community does not have a mobile app for iOS/Android since it would ultimately bring better adoption and collaboration amongst the users. Like all the other free apps I have developed, this is a work in progress and am hoping the direction and goals get driven by the community of users, so any and all constructive comments are welcome!

Here are a couple of screenshots and features of the app, you can download the iPad app here: https://itunes.apple.com/us/app/zscn-for-sap-scn/id587877577?ls=1&mt=8

Features:
- Access to your saved spaces, bookmarks and people
- View all available SCN spaces
- Blogs, messages and documents are all displayed on a single page for quick and easy browsing
- Each space includes relevant tweets
- Share articles via email or twitter easily

mzl.qqijnvvh.png

mzl.aanoimmq.png

mzl.vjmmiumh.png

mzl.mkweqdfx.png

mzl.wgoysymu.png