Friday, November 28, 2008

introducing MIEx

it's been more than 2years of laying low. today, i'll just post here what i should have had shared before while MI2.5 is still the current release. i'm not sure if this tool could still be used with the current MI version as i haven't got myself updated on this field anymore. anyway, considering that a few might still be working on with the 2.5 version and if you're one of them, this tool might help you a bit...

what's MIEx?
MIEx stands for SAP MI client executor extension for Internet Explorer. i created this tool primarily to work on IE6. but since IE7 is now the primary version, i'm not sure if this tool will work on this version. (i'm still using IE6 though...)

what it does?
as the name implies, it is just an MI client executor. it provides the access to these actions by extending IE menu toolbar with 4 buttons - Start MI, Stop MI, Restart MI and MI Home buttons.
MI2.5 client comes with an exe file called MobileEngine.exe. This program runs in a separate process and provides the UI (popup menu) for starting and shutting down of MI client. behind the scene, it only just create a new java.exe process for running the MI client and shut it down when requested by the user thru the popup menu. under the installation directory of MI client, you will also find startup.bat as well as the corresponding shutdown script. if you want to save the memory consumed by this mobilengine.exe program, you just have to make use of the batch scripts for starting up and shutting down of the MI java client. well, it will be a bit troublesome locating the installation dir and invoking the scripts from there. so this is where MIEx will serve its purpose. all you need to do is open the IE and start MI process from there...

here's the link to a captured video of MIEx: MIEx in action

how to install:
i have created a simple installer script. this script will create the necessary batch files for you and you will be asked for the location of your MI client installation directory. it will also copy the necessary icons and create the files required. you can download the MIEx installer here: MIEx.zip

update 11/29:
i made the article public on my googlepages. please refer to the following page for details on this tool as well if you are interested of knowing how this tool works.

Introducing SAP MIEx

if you have any comments, requests or suggestions, don't hesitate to drop a line.

Thursday, October 12, 2006

Laying low

I had promised to publish some articles on my last blog. I have some of them almost completed when I got pretty de-motivated by a direct email last month stating, "Pa blog blog pa wala namang alam. Baka!" It's a combination of Tagalog and Japanese words which means, "You're blogging but you know nothing. Stupid!" This email was sent to me from the hotmail account rick_brillantes@hotmail.co.jp. Maybe someone who knows and perhaps hates me... ???
I don't recall having met a person nor have a friend named Rick Brillantes. I'm sure this is not his/her real name. I also couldn't recall if I had offended someone with my blogs or articles in SDN. And I'm still wondering who this scum bag really is...

Anyway, it seems that I had been pushing myself to write some articles are worthless, am I Rick? I won't be posting any for a little while; I have to lay back myself and think about this blogging thing once again. Perhaps, big Rick can show us his precious blogs that are worth reading... So long...

Wednesday, July 19, 2006

So long i021268

For more than five years, I was using my SAP ID i021268. It was also my SDN ID and was using it till now not until yesterday when this user account was finally removed. Though it was possible to retain that ID for SDN access rather than creating a new one, I still opted to have a new SDN ID. Why?

First, it was also too limited in the sense that I cannot update my email address in my profile which is always defaulted to my previous SAP email account. Thus, I didn't have the alert emails to all of the watches that I set in some SDN forums as I don't have the access to that email account... Just a personal thought, SDN should let SAP employees who are using SAP ID as SDN ID, to be able to change there email account. The internal mail quota of 64MB would not suffice for an active SDNers of watching several forums.

And lastly, I do not want fellow SDNers think that I'm still related to SAP. Yeah, I was proud to be a SAP employee! If SAP gives me a honorary membership as a SAP employee in the SDN, it would be a pleasure to me then. But since Im not related in a way or another, I don't want fellow SDNers to consider my every post sound like an official word from SAP. That's why I have to get rid of the SAP logo beside my name to avoid such implications.

Frankly, I was a bit surprised yesterday when I wasn't able to login with this ID as I had decided to stop using this ID when my SDN points reaches 2000. Damn, I was 326 points away for my contributions in Mobile Infrastructure! (see figure). I wanted to reach sen pointo (Japenese for 1000 points) as well for my forum posts at Forum 46 but I was 146 short... :(
Anyway, I didn't actually contribute to SDN for point's sake. I didn't know where to use it actually until Craig told me thru his comment that it can serve as my ticket to SAP Tech Ed! Mmmm, I just heard that there'll might be no more Tech Ed here in Tokyo so it would seem useless to me at all... ( And my current job is not related to SAP; so I won't be permitted by my boss to join such event without any special reason.) SDN also gives out t-shirts to those who earned 250, 500, 1000 and so on... but I never received one till now. Perhaps it is only for those people who are physically near?
Well, finally, with my new SDN ID now activated for SDN weblogs, check out for my next MI tips in a week or two. I would like to introduce another convenient tool on how to startup/shutdown MI from Internet Explorer. See the screenshot and a short summary at my GPages: http://jogel.sdn.googlepages.com/home. If you can't wait to get it, just drop me a comment...



Monday, July 17, 2006

MDK & MI LAD

I had posted MI LAD in my previous post and today I just would like to share some thoughts regarding MDK and MI LAD. As I had mentioned in that post, MDK doesn't have the functionality of temporarily deploying the application under work into an MI installation and that MI client application development requires you to have a running MW to deploy your application. While SAP offers NW Developer Workbench which enables developers to develop application without requiring for an actual middleware stack, MI on the other hand requires a configured middleware to deploy your still incomplete application when testing it on top of MI.

For around a year after MDK was first released, I was hoping that it would have this kind of functionality in the future SP releases. However, till now, not much new features are introduced into MDK. I wrote MI LAD to help me test my apps on MI whenever I was offline. (Which at that time, I was still one of the MI client developers for SmartSync layer). Actually I am not using MDK coz I already have Eclipse 3.x and I don't want another 2.1 base NWDS in my PC. Another reason was MDK functionalities aren't enought for me.
Last year June, I was thinking of creating a plugin just like MDK which will serve this purpose. However, it was during this time we came to know that MI development will be moved to Bangalore... Most MI developers were a bit de-motivated by this board announcement; my motivation of creating that plugin was lost and I did not continue on completing it. I already had a list of the features to include into it... You might be asking why create a new one and not extend the existing MDK plugin? Actually, I did check it out. I was able to get the source code of MDK plugin, however, the way it was built was NOT designed to be extensible. To add a functionality into MDK will require you to change the existing code and not just add an implementation to a certain contribution point. Seems that MDK plugin was not made for us to extend. Anyway, I heard that in the future release of NWDS, which will be based in Eclipse 3.1 version, MDK will also be recreated and I do really hope that it will have the LAD feature in it. Or even at least define contribution/extension points which users would be able to extend it. Eclipse plugin framework was designed with this in mind, so does the design of the plugin should be. Anyway, I ever I can have access to SAP systems and have some time off my current job, I might consider of continuing the plugin development; but I kinda worry where I had put my old codes... :)

Saturday, July 15, 2006

MI LAD now available!

I was able to find some time today to complete the article of MI Local Application Deployer (LAD). I just hope that this simple tool will help MI application developers in their daily tasks and experiments. In another aspect, I'm hoping that the code will also serve as a help in understanding MI internals. What I'm asking in return are your feedback and comments...Please add them to the comments link below.
Well then see ya on my next blog. :)

Wednesday, July 05, 2006

Would it really matter...


Last March, I posted one blog at SDN entitled Extending Firefox & IE to ease SAP sites search. Then I got comments that everything had been covered by fellow SDNers in their previous posts. I also got an email from the SDN "evangelist" that I should or say must have referenced the work of those who had introduced it previously. In that article I actually DID reference previous posts of Dagfinn Parnas and DJ Adams. These were the only blogs related to the topic that I read prior to writing of my posts. I did not bother of updating my article later after I got those comments as Eddy himself had listed up the related posts in his comments. Would it really matter?

Shame on me!
Yesterday, while searching for good SAP related sites, I stumbled into The GadgetGuy's forum. Craig Cmehil, an SDN evangelist made comment on this post.
"Shame Jo Gel does not give credit where credit is due (to Eddy De Celercq and DJ Adams since they got the ball rolling)
Comments to Jo Gel’s weblog on SDN from Eddy are quite interesting."
I'm not sure whether Craig had read my post or not... I did actually refernced DJ Adams work but not Eddy's. I admit that it might not have been proper etiquette of not referencing Eddy's work. The truth is that I only came to know Eddy's work on the same topic right after he made those comments. Would it matter of putting his works as reference when you did not really refer to them during the creation of the article? There are lot of papers (articles as well) on the same research field but you won't put all them in the references. Rather you will only put those ones you knew and did refer to while doing your work.

Blogs: the SDN way
After such incident, it seems that the proper etiquette is that prior to posting a blog in SDN, you should read ALL the blogs related to that topic and make references to them. Also, if the topic has been covered, you should not post it! Gush! I think SDN missed the concept of what a blog is... Honestly, I was not writing SDN blogs for the sake of points! What are those points anyway? I can even use them to buy me a chocolate!

I will share to you why I had chosen SDN blog in the first place.
When MI development was scheduled to move to Bangalore, I was already preparing for my new RIG tasks related to XI. XI is a very big component and there were so many things to put in mind. Having a very limited memory, I decided to put whatever I got on MI into writing before those "knowledge" leave my mind. First I considered writing how-to guides and I actually had written some internally. However, this kind of documents is very hard to maintain. Several copies could be made here and there, and sometimes it's hard to locate the latest one. HTG documents in SDN are even difficult to share. You have to submit it for screening and if approved, they will be available to the public. And you don't even have the interface to update it!

I did not like this kind of sharing medium so what I did was to start a weblog. Blog is the easiest way of sharing things and you can get feedback from your reader as well. Maintenance-wise, you only have one copy available online that you can update thus assuring your readers that it is the latest one...

FYI
Some reader might say that I might had came across Eddy's work and intentionally "steal" the topic. Now ask yourself what for!? Please note that I don't post blogs for the sake of those "useless" SDN points. I have my own reason for this motivation.

Well, I have been using search shortcuts on top of my customized desktop.
I actually have an html form on my desktop to fast access to Google, SDN, SAP notes, SAP help and Eijiro query sites. The figure on the right is the screenshot of my desktop object. I also included the shot of the original files of this search object where you could also see when I last modified them.

When Firefox 1 got public, I created my search plugin into it. Using the same icons and info from my desktop search form. The next figure shows you the files of the Firefox search plugins that I got. You should now have an idea when I started using Firefox search plugin for SAP sites.

Btw, I created them incrementally, adding new search plugin and new query fields when need arises. So don't wonder why the files have different dates.

Share it
It was just last March when a RIG colleague saw my SAP notes search plugin as well as my desktop search form and wanted to have a copy of it. So I gave him a copy of it, also to some of my friends in support field who frequently does SAP Notes search. Then I decided to share it with my fellow SDNers. But before writing my post, I tried checking whether the same thing had been available. I read on DJ Adam's and Dagfinn Parnass' blogs; unfortunately did not encounter Eddy's post. Then I decided to post it up... Would it really matter if I missed referencing Eddy's work? Or should I have to update my article and put the credits to Eddy?

Could it be the reason?
As I have mentioned in my previous posts, I started posting here in blogspot since SDN would not allow me to post blogs with my new SDN ID. They did not tell me the reason for the rejection but rather invited me to contribute in different media like technical articles, HTGs and program codes... Mmmm, why not weblog??? Well, perhaps this could be the reason behind it.

Anyway, I'm happy with this spot to write my blogs. And I'm free from reading all blogs that might have already covered the same topic! Blogspot has an editor too and I don't have to bother having another WYSIWYG editor...

Finally...
Lastly, I just hope that the person concern will stop on "trolling" other forums claiming for Eddy's credit! In fact, Eddy had already claimed it thru his commnent. Isn't that enough? Well, you have to power to delete SDN contributions... remove it if you found it necessary. Who cares...

Tuesday, July 04, 2006

Learning SAP MI

There are so many posts in Forum 46 asking for advice on where to start when learning MI. In MI as well as other SAP components like XI, there is the technology consultant learning curve and the development consultant learning curve. Unlike other SAP components, I think MI is the smallest of them all. Thus I would say that there is a big chance that you can master it within a shorter period. MI administration tasks don't differ that much with other components as you only have to know some transactions and utilities. Knowing how they work also matter though.

So where should you start learning? This is kinda hard to answer. This purely depends on which level you are now and which learning curve you are planning to pursue. Here I will list up some materials that I'm sure will help you in understanding SAP MI.

1) SAP Mobile Development Kit
In that same Forum 46, fellow SDNers will surely point you to MDK as you introductory material. I do agree that reading MDK will give you an idea of the whole MI architecture. MDK however includes to many text documentations and lesser illustrations. I personally would like it restructured into more concrete groups and include more figure aides.

2) SAP Help
MDK itself is shipped with the SAP NetWeaver Developer Studio as a plug-in set. It seems that MDK documentations and samples are not updated to the latest MI version. Changes in the public APIs including the deprecation of the existing APIs should be reflected into the kit upon every release to help guide MI developers to proper use of the APIs in their programs. I would suggest the reader to check on the SAP Help documentation site for changes and new features introduced into MI component upon every SP release. You will have idea as well which new features could be implemented and which is not yet supported.

3) SAP Notes
There are also MI related SAP Notes released not only to give information on the fixed bugs but as well as give information on some technical limitations and implementation issues. Reading SAP notes on MI will let you avoid adding unimplemented or unsupported features into your program especially issues when your target device is a PDA.

4) MI API Javadoc
Before going into coding your application, I suggest you to skim thru the MI public APIs first. Knowledge on which API for which use will help you avoid the mistake of using the wrong API for certain cases and will keep you from defining unnecessary interfaces into your application. In fact, the Javadoc includes sample codes on how to use the interfaces themselves.

5) SDN MI Blogs
There are some MI related blogs available at SDN. I myself have posted several blogs on MI topic. Most of these blogs are tips and how-to guides articles which will help you easen your administration and development tasks on MI. As I had mentioned in my previous blog, I will be moving my SDN blogs to blogspot. So don't be surprised if you find the link to my SDN blogs broken one by one from now on... But I'll assure you of the smooth transition from SDN to this site. If you can find it at SDN, you will surely find it here then.

6) SDN MI FAQ
The SAP NetWeaver Mobile page on SDN has a collection of FAQs on the infrastructure level and the standard MI application level. If you are not using standard MI applications like MAM, you might find Mobile Infrastructure FAQ helpful enough. Questions related to double-byte issues, platform support and so on are collectively answered in this page. However, it seems that they are not updately frequently. There are still some commonly asked questions being posted in Forum 46 which are not yet included in the FAQs. Last several months ago, the forum moderator tried collecting candidates FAQs and their corresponding answers on the forum. But it seems that they had not finished on the selection process... I still could not see some new FAQ in the list.

7) Training
There are trainings on MI which you can avail thru SAP Education. Personally, if you are a person having a technical background, I won't recommend you to take it. But if you are to learn on the MI application and not on the infrastructure, you might need to take the training on how the business process or workflow is implemented. One famous SAP MI application is Mobile Asset Management (MAM), which requires knowledge on how the MAM middleware components are configured.

8) SAP Tech Ed
If you have a chance to join SAP Tech Ed, there might be some hands-on session on MI development. However, the topic might not suit your needs but might serve as a good starter and will give me a chance to have just a taste of it...
I had once given an hands-on session at Tokyo Tech Ed on developing an MI application. Unfortunately, I heard that there'll be no more Tech Ed here in Tokyo. Perhaps Sapphire as well?

So where do we go from here.
I have enumerated several materials to which you can get information on MI administration and application development. If you want to focus on MI application development, I would recommend you not to start developing using SmartSync functionality. Start with the simple GenericSync application. When you get acquainted with the GenericSync layer, you will be able to know how the SmartSync framework works. The SmartSync framework itself is actually just a simple GenericSync application providing some convenient interfaces to easen data and delta handling in the client as well as in the middleware.

Client-side development is purely in Java while the middleware-side primarily involves ABAP programming and the use of MI utilities. The MI client APIs Javadoc is the best reference when developing an application. MDK has sample codes but are not updated to the latest API changes; thus you will get some deprecated warnings on that sample codes. So the javadoc is still your primary reference.

Oh by the way, mobile applications are now called xApps - officially called SAP xApps for Mobile Business. Ummm, I think that calling MI applications as xApps will confuse some readers with the online xApps solutions that are using the xApps interfaces. I'm pretty curious how MI applications make us of the xApps interfaces...

In my future blogs, I will giving out some tutorials as well. I can't commit when I can publish it, but will surely create one in detail. I can give out lectures as well if you invite me... :)