Wednesday, May 7, 2008

Hackaback's xMII forum Launched

I have taken an initiative for discussing xMII on my site. All of you who are having a knowledge or want to gain something can see it here .
Here you can discuss all sort of SAP and xMII related stuff and also on related technologies, let it be on xMII, ABAP, PP, FI, SD, MM, HR, PM, QM, XML, XSLT, XPATH, CSS, HTML, DHTML or even SDN .
If you have some interesting thing to share, you can just share it there, so that others can read it and gain something over there.
Initially I'm using the free version by Nabble, but later on you can see a full fledged version.

Btw If you have some queries related to xMII, or you want to point something wrong out in the blog, you can always leave comment or drop me a mail @ musarrat[at] this domain.com.

Monday, April 28, 2008

Joke: ERP Implementation in 10 Easy Steps

  1. Ask the board of directors for an arbitrary but large sum of money. (Suggestion: $300 million.)

  2. Give half the money to consultants. Ask them to select an appropriate ERP package for your company. Consultants will audit your business processes for six months and then select SAP, which they happen to resell.

  3. Form cross-functional implementation teams. Hold meetings.

  4. Reengineer all your business processes to match the software’s model.

  5. Give the other half of the money to consultants.

  6. Install the software.

  7. Train end users repeatedly.

  8. Cross your fingers.

  9. Turn on the software.

  10. If you’re still in business, immediately return to Step 1 because it’s time for an upgrade.

Sunday, April 27, 2008

SAP PM and xMII

Here is presentation which talks about PM integration with xMII.
PM module of SAP is used to handle all the operations with plant. And a plant with intelligence (xMII enabled), should be able to take certain decisions on its own.
However I want to let you know that you can stay updated with the content on this site by subscribing to RSS feeds. And email updates are available too.

Friday, April 11, 2008

Thursday, April 10, 2008

Sending HTML using Dynamic data

I have been writing blogs on SDN. Thought I should share it here too.

Original post can be found here

https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/8462


Communication in any industry has its own significance and email is a very powerful mode of communication where high tech industry is involved. xMII provides us with the facility of sending email whenever a crucial thing is involved. It has a basic email action block which can be used to send emails for important emails. In this blog I'm going to focus on two things:

  • Configuring the basic ‘send email' action block.
  • Using a trick to send the information in HTML format.

The prerequisite for the readers of this blog is to have basic knowledge of xMII action blocks and templates.

Configuring the send email action block

Configuring the send email action block is quite easy of a thing.

All he fields can be set dynamically(and ideally they should be used that way using link editor). But for the sake of simplicity, I'm hardcoding these values in this example.

Please note here that I've set message content type as text/html because we are going to use a html template.

Configuring The Data to be displayed

Now we are going to send the status of all the three fans(the default simulator) using email action block of BLS in HTML format.

Write a tag query using simulator with fan1, fan2 and fan3 as output and save it as ‘Demo/Fanstatus'.

Designing the HTML template

Now this trick has helped me a lot. Design a HTML template as shown in the picture. Save it as "d:\demotemp.html".

Here, you may see that I've given following keywords:

  • date_it - this will be used for displaying the current date and time in the email.

Following keywords will be used for showing the fan state of the respective fans.

  • fn1_st
  • fn2_st
  • fn3_st

Creating The Business Logic

Since we are done with the things requirement gathering ;). So, we have to develop a transaction which will be used for sending the email in HTML format.

  • Go to logic editor and insert a tagquery action block. Call the ‘Demo/Fanstatus' query in it.

  • Add a the html loader action block and the load the template(d:\demotemp.html).

  • Create a new local string variable and name it ‘message'.

  • Add an assignment action block and assign the string content value of html loader action to local variable message.

  • Now add one more assignment action block and add the following code to local variable 'message'.

stringreplace(stringreplace(stringreplace(stringreplace(Local.message , "fn3_st", stringif( IllumTagQuery_0.Results{/Rowsets/Rowset/Row/Fan3}==1, "ON", "OFF" ) ) , "fn2_st", stringif( IllumTagQuery_0.Results{/Rowsets/Rowset/Row/Fan2}==1, "ON", "OFF" ) ) , "fn1_st", stringif( IllumTagQuery_0.Results{/Rowsets/Rowset/Row/Fan1}==1, "ON", "OFF" ) ) , "date_it", IllumTagQuery_0.Results{/Rowsets/Rowset/Row/DateTime} )

This code will modify the html template accordingly. It consists of two things:

stringreplace(Local.message , "fn3_st", stringif( IllumTagQuery_0.Results{/Rowsets/Rowset/Row/Fan3}==1, "ON", "OFF" ) )

this code will first search for the keyword called "fn_3st" in the HTML string and then it will replace it with ON or OFF depending on the value we get from fan3 status from the tag query.

  • Now comes the final part. Configure an email action block as specified earlier and assign the message variable to the message part of the 'sendmail' action block.

And now run the transaction. The output email will be something like this.

Final Output

This trick can be used to send detailed informations to the concerned person and can be used to handle more complex scenarios of table generation on the fly using XSLT.

Saturday, April 5, 2008

SAP xMII in India

Indian Software solutions providers are really trying very hard to get projects from US. But they are not able to get enough work. The main reason behind this is evolution of small and medium sized companies who are having expertise in xMII and charge much lesser than what our Indian IT Giants are demanding despite of the lack of knowledge.

So the solution providers are moving to Indian customers. But the question is how many companies in India will be willing to implement a multi-million dollar project unless it is a government one.
The rates of an xMII consultant are too high. $80 per Consultant hour is what our Indian giants are charging to the clients as compared $40 for an ABAP. So if they are turning to Indian customers then they have to bring the pricing down.

xMII is a really good tool and will yield profitable results for sure.

In US, situation is different. The charges are high($250-300 an hour) and average salary of an xMII consultant is around $1,20,000 a month. This is one of the reason behind the brain drain that's causing Indian companies to loose the expertise. Even the onsite salary of Indian companies ranges from $100 to $150 a day which is noting in front of that of a proper xMII consultant in US.

Saturday, March 29, 2008

Some Free Tools For xMII Consultants

As an xMII Consultant, one needs to deal with variety of technologies(viz web technologies(js, ajax,) , data manipulation(XML, XSLT), db(oracle,mysql,oracle, UDS), SAP and xMII.
So I'm giving links to some of the free tools that I use for developing composites usig xMII.

Notepad++ - One of the most useful tool for any developer. Its very handy and handles most of the programming language formats. Moreover one can add custom plugins to handle some customised tasks.

XML Marker - XML editing made easy for free.

Gliffy - Used for creating diagrams.

xMII enhanced BLS - SAP xMII Enhanced Logic Editor is an enhanced version of standard SAP xMII Logic editor that allows an xMII developer to debug and develop transactions as never before thought. Developed by Felix Jeyareuben, a really cool tool. But it might be violating the SAP terms(that's why they deleted his weblog on that.(Download it at your own risk).

Technical Specifications to xMII transaction - Technical Specifications to xMII transaction is a tool that auto-generates transactions in xMII directly from the technical specifications. The tool is designed in such a way that the transactions will work automatically and no additional efforts after generating the transactions are needed. This tools is also developed by Felix Jeyareuben.

HeidiSQL:
HeidiSQL is a powerful and easy client for MySQL

Toad
: The most powerful and free client for SQL.




Other tools that are good( but not free) are:

  1. Adobe Dreamweaver CS3
  2. Microsoft SQL Server Developer Edition 2005 CD/DVD
  3. SAP R/3 IDES 4.71 + Oracle Database 9.2.10+ Education License

and of course Grand Theft Auto 3

Hope this article is useful to you

SAP BW Certification Test Simulation

A Really Good Video for guys who wanna do some BW thingy
Wanna subscribe to Sap Insider?

Tweaking Schedulers in xMII

SAP xApp Manufacturing Integration and Intelligence (SAP xMII) Business Logic Services includes its own scheduling service that allows you to execute transactions on different schedules.

  • The Schedule Editor is used to set up all scheduled jobs.
  • The Scheduler is used to view a schedule summary.

Schedulers can be used to perform the functions as defined by SAP but we can also use it to have a variety of other things.

Like when me and my teammate Rupesh were discussing about an MES simulation for a training demo, we were struck with the brilliant idea(;-)) of using scheduler to update the SQL table and display the values in LED. Now the LEDs(of the Grid) will be updated from a SQL table which is updated by a transaction.

What did we achieve

We achieved a grid which was somewhat like this.

LED

The grid automatically changes according to the values in the SQL table. And yippie... we did simulated MES.

This is just a tweak that one can use to simulate some time bound action. I hope this also gives readers the idea to get the things done using schedulers. This is just for prototypes and shoudl not be used on real production environments.

What did we do?

  • We created a table called stage_info using MySQL for simulating the stage activities. It has two columns:
  • o LineID(alphanumeric)
  • o Stage_ID (alphanumeric)
  • o Stage_status(boolean)

  • Another table line_info is created for holding the flag that whether the transaction is to be executed or not.
  • o Line_id(alphanemric)
  • o RunFlag(Boolean)

Here for the sake of simplicity, I'm using a Boolean value for stage_status(1 for in use and 0 for idle).

  • We created a transaction which fulfils the following functionality.
  • o First it will check the status of the flag for current line. If it is true then it will execute the rest of the transaction otherwise it will exit it.
  • o reads the sql table and check the status of each stage and change the status of next stage and current stage.
  • Then a scheduler is set to run for specific time interval and the transaction for this scheduler is set to the transaction that we created earlier.
  • We created a columnlights grid with source as the field of the stage_status of stage_info table. Here we set the color context as
  • o 1-Green
  • o 0-Magenta

The refresh rate of the grid was set to 15 seconds.