Quantcast
Channel: Jive Syndication Feed
Viewing all 11427 articles
Browse latest View live

How-to navigate to ECC BOR object from CRM DocFlow

$
0
0

Yesterday I faced a very common issue with some CRM business transactions: the document flow was showing ECC objects for which no navigation was possible (despite the identification number rendered as hyperlink):

img1.png

So, as I couldn't find any source on SCN to solve it, I decided to post a quick note on one possible solution to overcome this problem (which I found by debugging the system as of method PREPARE_COL_FOR_NAVIGATE_BOR from class CL_CRM_UIU_BT_NAVIGATE). First, check table BSPDLCV_OBJ_TYPE: it is most likely that you won't find any entry delivered by SAP with "BOR object Type" = "BCONTACT". So you'll have to create such entry in table BSPDLCVC_OBJ_TYP (which is exactly the same as BSPDLCV_OBJ_TYPE, but for customers only):

img2.png

It's important to use "BOL Object Name" = "ICBORWrapper", because SAP will use this name to determine a "mapping class" stored in table CRMV_UI_OBJ_MAPS (or CRMV_UI_OBJ_MAP if you want to overwrite this customizing with your own values):

img4.png

This class will in turn create a BOL entity dedicated to BOR objects that will store the BOR type, ID and logical system (i.e. those three pieces of information you need to navigate to the right system, on the right screen). Also, make sure that you name your UI object type WRAPPED_<BOR TYPE> in table BSPDLCVC_BJP_TYP. Now we just need to create a Launch Transaction (tcode CRMC_UI_ACTIONWZ):

img5.png

And we also need to enable navigation for this WRAPPED_BCONTACT UI object type created above in the corresponding navigation bar (tcode CRMC_UI_NBLINKS):

img6.png

img8.png

Everything is setup. If you click on the link corresponding to BCONTACT object type in the Document Flow assignment block, the system will automatically navigate to the corresponding screen in the backend (provided the launch transaction is customized correctly, and the backend system is defined in tcode CRMS_IC_CROSS_SYS). In case you're facing any issue, the following documents by Hasan Zubairi might help:

Almost Everything About Transaction Launcher - Part I

Almost Everything About Transaction Launcher - Part II


Future of Mobile for Maximo is Now with SAP and Syclo!

$
0
0

Attending IBM Pulse 2014 February 23 - 26 in Las Vegas? Hear SAP's presentation on Sunday Feb 23rd at 7 pm Expo Theater and join SAP in our booth S501 while we showcase our SAP Mobile apps, formerly Syclo SMART Mobile Suite, the #1 selling, most widely deployed mobile for Maximo.  We would to meet you with our expert staff at the show.

 

Hear why over 500+ Maximo customers selected our prebuilt mobile apps – SAP Work Manager for Maximo, SAP Inventory Manager for Maximo, SAP Auditor for Maximo and SAP Work Manager for TRIRIGA.

 

  • Reliable Prebuilt Integration: A Decade of Tight Integration to Maximo versions 4, 5, 6, 7 & 7.5
  • SAP Mobile Platform: The Most Device (native iOS, Android, Windows, Windows Mobile), Peripheral and Connectivity Options (online & offline)
  • Handling Complexity: Unmatched Scalability for Assets, Transactions & Users
  • End-to-end mobile solution: EMM to apps to platform

 

I hope you can also make SAP’s presentation on Sunday, February 23 at 7 pm in the Expo Theatre. “Mobile: Future is Now with SAP and Syclo!” will highlight mobility trends and how the largest mobile platform provider, SAP, is addressing the challenges.  Learn how former Syclo mobile apps have been adopted across industries by your peers to extend their IBM Maximo and TRIRIGA data access and capture to the point-of-performance for increased productivity, full visibility, cost reductions and longer asset lives. 

Mobile-Future_is_Now_with_SAP_and_Syclo_for_Maximo_IBM_Pulse.jpg

Justin Molenaur, HANA Distinguished Engineer and Tinkerer

$
0
0

HANA Distinguished Engineers are coming like HANA Revisions this week - thick and fast! With Revision 72 of SAP HANA, released yesterday, we get two awesome things. First, we get a production-ready revision of SPS07 of HANA - Revision 71 had some restrictions. And second, we get a newly minuted HANA Distinguished Engineer, Justin Molenaur.

 

Justin is an indie consultant working in the Healthcare industry. He has great content here on SCN - check out this piece for exampe: Using loops within stored procedures for ETL processes within HANA. Please give him a warm welcome!

 

Tell us a little around your background in the industry

 

I have been working with SAP Analytics products for the past 10 years across a number of roles and customers. I started off with a large consulting firm focusing on reporting and BW solutions. There I had the opportunity to work on one of the first BO/Crystal/SAP Portal integrations running on top of a BW source. This gave me a flavor for what it’s like to work on new product implementations and gave me my first “let’s figure this out” experience that I carry with me today.

 

From there I spent some time in a few industry SAP roles, again getting the chance work on some new and exciting components. For the past 5 years I have been working as an independent consultant assisting organizations with SAP Analytics implementations that span a number of different products including BW, BO, ERP, SCM and Retail.

 

One of the more exciting roles I had recently was with a retailer who was implementing a solution for RMA (Retail Method of Accounting). This was a brand new BW based solution for recalculating inventory and costs specific to retail accounting rules. I had the chance to work as a conduit between SAP Development and a fantastic project team in helping to refine the product from both a technical and functional perspective. We were successful in taking the first ever implementation of this product live albeit taking quite a few bruises along the way.

 

How did you get into the SAP HANA space? How did you transition from ERP to BW to HANA?

 

My interest in SAP HANA started around revision 35 or so, when I began reading as much about the product as I could possibly get my hands on. This seemed to be a great opportunity to blend some of my traditional SAP BI skills with more flexible core database technology. My involvement in helping a client evaluate a BW on HANA migration also quickly got me more into the weeds on the various use cases, limitations and strengths of the platform.

 

It also helps that I am very passionate about understanding the various components in any work I take on. I just can’t casually graze over some of these topics – I need to fully understand them. With some diligence I passed SAP HANA certification in the fall of 2012, and then started my first HANA project in May of 2013. So my conceptual learning and hands-on AWS experience translated very quickly to some real solution delivery.

 

What advice would you give to people looking to transition from classic SAP to HANA?

 

Three key things to get you up and moving:

 

Read, read and read some more, then ask questions and read it again. I would say the most important thing (with any discipline for that matter) is that you need to have a natural curiosity and some ability to put together disparate information sources to reach a conclusion. This is a fast moving and new product, so information is always changing.

 

Get an SAP HANA instance stood up immediately. Nothing can substitute for real hands on experience. How can you tell if something works as you imagine it will unless you build it yourself and test it out? Amazon and Cloudshare both offer great options to make this happen in a cost effective manner.

 

Get involved. SCN is a fantastic community to read what others are doing and at the same time provide you direct access to those same people to answer your questions or point you in the right direction. I was a big fan of SCN a number of years ago but only recently started becoming involved again because I see a lot of great energy and enthusiasm around SAP HANA. There are some people who I just met in the last 6 months who I now find myself helping solve issues and also bouncing questions off of on a weekly basis.

 

Can you tell us a little about the projects you are working on right now?

 

Right now I am in a consulting role with a large Healthcare client on a combination of an ECC sidecar and CO-PA accelerator. We are using SLT and some external sources (via DataStage) to serve up analytics through BO 4.1 SP2. This is sitting on a 1 TB single node HP appliance and currently on revision 69.01 with ambitions to get to SP07 as soon as there is a feasible option (Hopefully rev 72).

 

The project sponsors are very excited about getting data in real time and getting it fast. In some cases HANA performs up to 1000x faster than the legacy platform (Teradata), even on more granular data. The customer is running the legacy data warehouse in parallel to HANA and some days the batch window loads aren’t even finishing by the end of the business day, while HANA has had real time data all along.

 

The core work so far has been around getting a solid data foundation in place for a few functional areas. Now the focus starts to move on flushing out more of the reporting and analytics components. Finance users love Analysis for Office, and most casual users are thrilled with the speed and ease of use that Explorer offers. We are just starting to get into SAP Design Studio and some of the SAP Mobile deployment options, so more to come on that exciting part of the project.

 

Additionally, I am starting to see some pointed requests come in from a number of other customers looking for various types of validation, performance analysis or general troubleshooting questions that can be solved remotely. Always glad to assist where I can.

 

Tell us about one of your HANA war wounds!

 

I’ll do better – I’ll provide three that I believe are likely to be common on HANA projects.

 

Manage expectations and stay aligned with sponsors. With all the hype around HANA and how it can “solve all your problems”, it’s hard to go from the sales pitch straight to implementation details with the customer. After all, at the core it’s really is just a database that is a part of the overall solution. You still need fundamentally sound project methodology, good alignment with sponsors and the skill sets to make it work.

 

Bad modeling choices can ruin your day. On this particular project, we had an analytic model that met all the business needs in the testing environment, and were ready to start the dog and pony show with our sponsors in production. When the first person started querying the model in production, we noticed that the HANA CPU was peaking to 100% and this was with only ONE user. Over the course of a few days of analysis and open SAP messages, we found that the cause was a row level date function being invoked in an attribute view over 600 million record dataset, which is a bad idea. Build time into your project plan to prototype different ways of achieving the same functionality, and then test it using real data volumes. Some of the time, what seems to be an obvious path is not the most optimal.

 

Data and IT Governance. Even though HANA is a silver bullet (per point 1 above), you still need some type of governance around both data and IT processes. “What? I just spent all this money on the software and hardware and it can’t govern itself?!” There are some BI shops where user created content or sloppy standards can lead to spaghetti like solutions. In HANA, since the mentality is that “it’s just a view, not a new table” can propagate that type of behavior. Get something in place early to try to proactively manage your environment. A competent data architect should be able to help here, even if they have no experience in SAP HANA directly.

 

What do you see in the future of HANA?

 

More implementations that are non-SAP centric. I see SAP HANA as a way for SAP to get into customers that traditionally are not SAP shops since they can use HANA only for key parts of their processes. The speed at which HANA operates is astounding, and the option to have it in the cloud can make it more cost effective too.

 

Becoming the obvious platform choice for the data warehouse in SAP centric shops. You have multiple SAP source systems? No problem, SLT is a fantastic way to cut out hundreds of hours of ETL development. I am really, really impressed on how easy it is to get table data replicated with this tool. After hearing requirements from clients, and then being asked how long it will take to build, they are sometimes shocked since they are used to hearing duration in terms of weeks or months, not days. I attribute a lot of that to the ease of data acquisition.

 

Starting to overlap BW quite a bit. Even as a BW consultant now working in native HANA, I am starting to see how you could get by without a BW in your SAP landscape. It’s an interesting position to be in.

 

If there was one change you could make to HANA, what would it be?

 

The variation between the repository concept vs. modeler perspective is hard to follow for many coming from a non-IDE background. As I understand it, SAP is moving away from the modeler perspective and this will become more mainstream.

 

More stability, I have seen some very quirky behaviors in the DB using SQL that should be well supported. Additionally, HANA Studio can have its moments. I am hoping that SP07 helps pushes more stability into the picture for both.

 

Make the migration process a little cleaner. Migration at delivery unit level (package level) at times is far too large. Since system transport systems like CTS+ operate only at delivery unit level, it makes customers want to go the route of manual file import/export to send only what truly needs to move.

 

Make the change impact/dependency functions operate a little better. I have observed that downstream objects like Calculation views and Stored Procedures tend to go inactive with any changes to upstream objects such as Analytic Views. This makes migration a much more tedious exercise since now the checklist for re-activation becomes longer every time.

 

Have you heard anything else interesting around HANA lately?

 

One thing that really struck me was during a local ASUG meeting. There was an SAP Solution engineer (can’t remember the name), who had some 20+ years of experience with SAP. When asked on how SAP HANA can fit into an organization or what the value proposition is, he defined three different layers of adoption or HANA maturity.

 

1) It allows you to do something faster

2) It allows you to do something better

3) It allows you to do something you have never been able to do before

 

Although this is very simple, it makes a whole lot of sense to me.

 

Most customers are all in the first phase, where everything is really focused on acceleration and making reports run faster. Since there is so much backlog demand for “fast data” or “fast processing”, this tends to be the focal point. After you get that pain relieved, you can really start to look ahead at the second two, which will be a very interesting place to watch solutions develop.

 

Tell us a bit about Justin outside of HANA and work

 

Outside of work I enjoy spending time with my family; my lovely wife Molly, 3-year-old daughter Penny and almost 2-month-old son Miles. It’s interesting how quickly you forget how time consuming newborns can be until you have another one!

 

Other than family, I enjoy cycling (mountain and road), home improvement, traveling, live music (when I can get out!), power tools and just being outdoors. I am a natural “tinkerer” who enjoys learning and creating new things.

My Views on SIT_HYD on 22 Feb 2014

$
0
0

I was waiting to post a Blog since i joined SDN but never got correct opportunity or topic to blog... Today i got opportunity to speak on the nice and long awaiting event.

I want to thank personally Mahesh Kumar for taking this initiative and  special thanks to Deloitte team for hosting this event in Hyderabad.

As i was confused on which stream i need to select when asked to opt while getting registered from Functional/Technical/Analytics. But Finally thought to go for Technical stream.

 

All the views shared are my personal and no one forced or influenced me to share this.

As usual the event started with lot of enthusiasm as we can see in SAP events with a Introduction session by Deloitte Management and Mahesh at 9.10 AM till almost 9.30. Then people were requested to split as per their registered events mentioning that people can attend even other streams if interested. But still i sticked with Technical and moved in to the excellent conference room Anejo at Deloitte.

 

First session started with SAP FIORI which i never heard at 9.40 AM and I was very eager to know about the FIORI(As i was expecting new things to learn at this event). The presenter was Tanay Hoshing very well organised and well spoken. It went pretty smoothly and everyone understood about FIORI well. FIORI is a web based application which uses ODATA,BSP and Gateway. Bottom line I understood is implementation will be done very quickly and no big scope for getting in to this atleast for me as I dont want to learn BSP . Happy that I got some what familiarized about FIORI and what made SAP to create this product.

 

Next session was on HANA on Mobile at almost 10.15 AM by Virinchy Panangiaplli. Frankly speaking Virinchy was too fast like a bullet train for me so i couldnt get anything from this(may be my mind got in to slow and steady pace with Tanmay presentation ) . But he had well documented PPT.

The session was very short it was like 8 to 10 mins max which should be of 30 mins.

 

After this next session was SAPUI5 application to track SAP project deployments by Naveen Inuganti which got started almost at 10.40 AM. It went very good and Naveen and his colleague had done good work in developing this Tool but still I didn't understood the need of this topic in SIT as I was expecting new products or topics by SAP. The product was regarding the Transport Management but with front end as UI5 with more enhanced features than STMS. We can even check whether this TR will be imported successfully or with any warnings/errors possible in target system. Need to appreciate them but got angry on people who have selected this topic to present at SIT as this is not SAP developed product(this is my perspective).

 

Then another topic was on Master Data Governance by Archana Balliwar and her colleague which got started before scheduled time as Virinchy completed his session too quickly. The presentation gone very well as they discussed on their experiences and issues while MDG custom model implementation was done for multiple clients. I was thinking to ask the difference between MDM and MDG but one of the attendee had taken initiative and asked. The Q & A session went well as lot of attendees involved in asking their questions.

The lesson I learnt was MDM runs on Java stack where as MDG runs on ABAP Stack and uses FPM. Never use Implicit Enhancements in MDG as they will get swipe out while upgrade. I was happy again that I learnt a new product from SAP.

 

After this the topic was on HANA cloud Integration(HCI) by Jaya Prakash and this topic is more useful to PI consultants. It gone well as the presenter was well prepared and experienced. Prakash had shared lot of things like how and what basis the client should opt HCI/PI.  I understood the basics but not felt to concentrate more as PI is not of my interest.

 

Then next session should be Lunch as per the schedule but as time was available for one more session so session after lunch was preponed. The topic was on Salesforce cloud Integration with ECC via PI by sreedhar kanchanapalli. The session went well as he too was well prepared and experienced. He had shared his experience on what to do when we get HTTP 500 server error to get the correct reason behind this exception. Similar to previous presentation for this even I didn't felt to concentrate more as PI is not of my interest.

 

Then we were requested to have nice Lunch arranged by Deloitte. Accidentally met Mahesh and Sundaresan while having lunch and I discussed regarding BIG DATA with Mahesh.

 

After lunch at 1.30 PM the buffer presentation SAP Mobility offerings and SMP 3.0 was presented. I am sorry as I dont remember the presenter name but the presentation was very good and attendees got familarized with SMP 3.0(Kapsel) to pretty good extend but because of time constraint the presenter couldnt make us through the complete SMP 3.0 offerings and features. I was happy again as this was new topic and this is what expected from SIT.

 

Next session started at almost 2.15 PM on SAP HANA Live by Anjali and Aditya. I was totally surprised to hear a strange name(HANA LIVE) as I was well versed with HANA at opensap.com but never heard this name(LIVE). so eagerly listened the session. It went very well as they showed even live demo on HANA system and how,where to download particular product shared by SAP, how to configure and import the downloaded file in to system and lot more stuffs. Even got chance to see the SAP Lumira. Felt Happy to see new products.....

 

Then the most anticipated topic ABAP on HANA was presented by Sundaresan at 3 PM. It too went very good but due to time constraint it was made to cut short. Shared info on tcode SQLM and SWLT and lot more. I can see charming faces on lot of people as most are from ABAP This session also had lot of participation from attendees while Q & A.

 

Next session was on SQL Usage and Benefits in SAP HANA by Krishna Tangudu and his colleague. It was their client requirement which made them to go for SQL instead of odata services and SLT. They shared their experiences on how they made use of SQL and made data from Teradata to HANA with Autosys job.

It went well as they shared their Tips and Tricks while using SQL.

 

Final Technical session of the day was on Surface Equipment Information Management - Designing Complex Enhancements using Webdynpro by Vijayanad and his colleagues. It was a simple tool developed by them using webdynpro and adobeforms for oil and energy sector for moving the rig from one location to other. I was totally disappointed with this topic as its a product developed by them which should be shown to clients but not at SIT(this is my perspective). As we attended to learn new products by SAP like previous sessions(FIORI,SAP HANA LIVE). This session got completed before 5 PM.

 

Their was a Networking Tea Break concluded with Closing Ceremony.

 

Really it was a good experience at SIT apart from 2 products developed by Deloitte every other topic was new and well presented. Thanking Deloitte once again for taking such tremendous pain on arranging this SIT at Hyderabad by arranging logistics.

 

Last but not least thanks to SAP Press for sponsoring the event.

Gartner rates SAP Transportation Management “Visionary” in the Magic Quadrant for Transportation Management Systems 2013

$
0
0

Dear Colleagues, just like to share this piece of information about SAP TM in the recent Gartner Rating for TMS in 2013.

_______________________________________________________________________________________________

 

Gartner rates SAP Transportation Management “Visionary” in the Magic Quadrant for Transportation Management Systems 2013

 

SAP’s position improved in Ability to Execute– Considering target market for SAP TM, SAP moves into Leaders– Comprehensive vision for Supply Chain Execution acknowledged

 


Dear colleagues,

The long-awaited 2013 Gartner Magic Quadrant for Transportation Management Systems (TMS) has now been published.  SAP has been ranked as a “Visionary” substantially improving our position this year, especially compared to many of our competitors in this Magic Quadrant. If the SAP brand value is included as decision criteria and considering additional SAP TM 9.1 capabilities, we can argue in discussions with customers that this brings us into the leaders’ quadrant.

Our continued positive movement towards the Leaders Quadrant in the future will depend upon our ability to continue demonstrating momentum by recruiting references that are using SAP TM across a broader scope and are also willing to speak to Gartner (confidentially) about it. This MQ does not consider SAP TM 9.1, currently in Ramp Up.

Since Q4 2011 over 170 companies have become TM customers from all regions and industries.

Magic Quadrant for TMS

Gartner 1.jpg
SAP Transportation Management (SAP TM) has been a work in progress for many years as SAP continues to build on its previous experience in transportation as part of its ERP and logistics execution system (LES) offerings, as well as its initial transportation planning application Transportation Planning/Vehicle Schedule (TP/VS). TM was built as a stand-alone product that exploits NetWeaver development tools and is seamlessly interfaced with SAP's ERP and related SCM offerings. While product maturity and the number of live customers continue to lag TMS leaders, SAP continues to invest in TM to serve its shipper and LSP clients. This research was based on SAP TM 8.0 and 9.0. While TM 9.1, which includes new capabilities such as for sourcing and rail planning and execution, was released during the latter stages of creating this research, at this time it is in ramp-up. Thus, it was not considered in this evaluation.


STRENGTHS

(1) SAP can rely on the size of its ERP installed base of large, sophisticated manufacturing and distribution enterprises; its global presence and coverage for global sales and support; and its financial viability.

·     
       (2) Global TMS capabilities, particularly the execution side of multi-leg international shipments, are differentiated.

(3) S
AP has a robust ability to deploy its TMS internationally. It is able to sell and implement SAP TM in areas where most TMS vendors lack capabilities, such as Latin America, the Middle East, Africa and the Asia/Pacific region.
(4) TM was built exploiting NetWeaver development tools such as the rule engine, which provides unique and powerful capabilities to adapt the TMS application.

(5)
SAP TM was designed to support all modes (ocean, air, land and rail) for both shippers and LSPs. TM also includes capabilities specific to the planning and execution needs of freight forwarder operations.
(6) SAP's SCE convergence vision is extensive and noteworthy.


CAUTIONS
(1) SAP has a modest number of live customers holistically and extensively using TM, and several customer references stated they have long rollout schedules

(2) SAP sells its TMS almost exclusively to SAP ERP users, and it remains best-suited for customers committed to SAP ERP.

(3)
SAP TM's capabilities lag those of leading TMS vendors in this Magic Quadrant in terms of breadth, depth and product maturity; however, it continues to invest in filling functional gaps.
(4) Customer references have indicated that implementation time and costs can be higher than those of alternative offerings. However, it now offers
rapid deployment solutions to help address this problem when it comes to basic needs.

(5) SAP TM is a more complex product than many of its TMS competitors because TMS functionality can reside in multiple places — that is, in TM, ERP and stand-alone applications, such as railcar management and partner solutions. This was not a design flaw but an intentional strategy to protect the investments of ERP users.

(6)
SAP has no multitenant SaaS TMS strategy, and its trading partner (carrier) connectivity strategy is nascent and unclear.
(7) SAP is building a noteworthy ecosystem of TM partners, but given the number of live customers, these partners should be appropriately vetted for TM experience and expertise.

Add button to ALV created with REUSE_ALV_GRID_DISPLAY

$
0
0

Below you can see how to add an additional button to an ALV created with function module

REUSE_ALV_GRID_DISPLAY. I especially want to point out that the GUI status which needs to be copied to your custom

report needs to be STANDARD_FULLSCREEN of program SAPLSLVC_FULLSCREEN.

 

1. Copy the GUI status STANDARD_FULLSCREEN of programSAPLSLVC_FULLSCREEN to your custom report in SE41, in this

case report ZBUTTONTEST.

 

1.jpg

 

2. After having copied the GUI status add the new functioncode to the GUI status in your report:

 

2.png

 

3. The report ZBUTTONTEST:

 

  *&---------------------------------------------------------------------*
*& Report  ZBUTTONTEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZBUTTONTEST.

DATA: lt_scarr TYPE TABLE OF scarr.

START-OF-SELECTION.

SELECT * FROM scarr INTO TABLE lt_scarr.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER                = ' '
* I_BUFFER_ACTIVE = ' '
i_callback_program                = sy-repid
i_callback_pf_status_set          = 'SET_PF_STATUS'
i_callback_user_command           = 'HANDLE_USERCOMMAND'
* I_CALLBACK_TOP_OF_PAGE            = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
i_structure_name                  = 'SCARR'
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS                   =
* IS_LAYOUT =
* IT_FIELDCAT =
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
* IT_EVENTS =
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_STARTCOLUMN =
* I_SCREEN_START_LINE =
* I_SCREEN_ENDCOLUMN =
* I_SCREEN_END_LINE =
* I_HTML_HEIGHT_TOP                 = 0
* I_HTML_HEIGHT_END = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* IR_SALV_FULLSCREEN_ADAPTER =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab                          = lt_scarr
EXCEPTIONS
program_error                     = 1
OTHERS                            = 2.

IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

*&---------------------------------------------------------------------*
*&      Form set_pf_status
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM set_pf_status USING rt_extab TYPE slis_t_extab.

SET PF-STATUS 'STANDARD_FULLSCREEN'.

ENDFORM. "set_pf_status

*&---------------------------------------------------------------------*
*&      Form handle_user_command
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM handle_usercommand USING r_ucomm     TYPE sy-ucomm
rs_selfield TYPE slis_selfield.

CASE r_ucomm.
WHEN '&NEWBUTTON'.
* Handle functioncode of new button
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
titlebar        = 'Functionality of additional button'
*         DIAGNOSE_OBJECT = ' '
text_question   = 'Please make your selection'
EXCEPTIONS
text_not_found  = 1
OTHERS          = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

ENDCASE.

ENDFORM.                    "handle_user_command

 

 

4. When executing the report in SE38 the output looks as follows with the new custom button:

3.png

5. After clicking on the new button in this case the subroutine handle_usercommand handles the functioncode. In this case

   a pop-up with some text appears.

4.png

Translation of a GUI status

$
0
0

Below you can see how to translate the components of a GUI status.

 

1. Go to transaction SE41 and enter the report and the GUI status you would like to translate:6.jpg

 

2. Choose the option translation in the menu bar:

 

7.jpg

 

3. Choose the language and make the tranlsation of the component you would like to translate:

8.jpg

 

9.jpg

Add translation to transport request with report RS_LXE_RECORD_TORDER

$
0
0

When a repository object is translated it will not automatically be added to a transport request if no

further changes were made.

 

To add the translation of the object you need to run report RS_LXE_RECORD_TORDER.

 

1. Go to SE38 and execute report RS_LXE_RECORD_TORDER

 

2. In the screen enter the following data:

10.jpg

 

3. After execution of the report informs you which translations were added:

11.jpg

The translation is now added to the requested transport request:

 

12.jpg


Installing NWDS on Citrix : Steps for Basis / Citrix Administrator

$
0
0

NWDS Installation Steps on Citrix

 

Trying to put the steps together at one place, hope its useful.

Prerequisite
SAP NetWeaver Developer Studio has the following hardware and software requirements:
Hardware (minimal requirements)
3 GB free disk space
2 GB RAM
Software
Operating system
Supported operating systems are:
Windows XP 32-bit
Windows Vista 32-bit
Windows Server 2008 64-bit
Windows 7 32-bit
Windows 7 64-bit

JDK version
Supported Java Development Kit (JDK) are from SAP AG or Oracle. Note that the JDK you use must be the 32-bit version. You can either use:
JDK provided with the SAP JVM 6 "Windows Server on IA32 32-bit".
https://nwds.sap.com/swdc/downloads/updates/netweaver/nwds/nw/731/doc/files/sapjvm6.msi
OR
JDK from Oracle.
You need JDK version 1.6.0_7 or higher, 32-bit.
http://java.sun.com/javase/downloads.


* Hardware and software details are as provided on the SMP in NWDS installation guide.

Installation Procedure :
1.Copy the distribution archive (zip) downloaded from the sap market place.
2.Open the archive and extract its content in a folder on the file system.
3.Open the folder and start SapNetweaverDeveloperStudio.exe.
4.When the Developer Studio start, in the window that opens enter a location for the Workspace folder, you can choose a default folder or have a /workspace folder created.
5.If the Developer Studio detects a JRE or unsupported JDK, a window opens and allows you to select a javaw.exe file of a supported JDK version.
If you do not have a supported JDK version, you can install it while this window is open and then, choose the JDK source.
When you enter a valid javaw.exe file, the Developer Studio stores the settings and exits. Open the installation folder and start SapNetweaverDeveloperStudio.exe again.
6. We will need the link /shortcut for SapNetweaverDeveloperStudio.exe on citrix.

You need to setup the NWDS shortcut as below , so that the user specific workspace is selected.
<path to your IDE>\eclipse\SapIde.exe -vm "<JAVA_HOME>\bin\javaw.exe" -data "<workspace folder of a given user>"
<workspace folder of a given user> should be replaced by a variable which points to the users profile.
eg.D:\NWDS\SapIde.exe -vm "D:\j2sdk1.4.2_09\bin\javaw.exe" -data "D:\workspace\<userid>"
"D:\workspace\<userid>" we need to make it dynamic by replacing it by variable.

 


Adding SAP IDES Demo Solution Project in CV's, Naukri, Monster,Linkedin

$
0
0

Hello EveryOne,

 

I am sharing again my reality concept "Adding SAP IDES Demo Solution Project in CV's" You all might have experienced during your Job Trails, few Companies might have stated in their job description "One of our Client is Implementing SAP Newly" for this they will surely mention T&C may apply and so on.

 

Practically How many times you will undergo SAP Training? Local Training 1 or 2 times at low cost and Authorized Training 1 time for 1 SAP Module.

 

After this Training, you need to show your SAP IDES Demo Solution in your CV and Linkedin. You have invested your Money and also your Time spent in learning SAP Module so you can't ignore this SAP IDES Demo Expertise.

 

SAP IDES - used for Fast Implementation and Learning Purpose. It is Model Company with many examples of scenarios which can be used for Quick learning and Understanding of SAP Module.

 

SAP Project – IDES Configuration and Implementation Project


Project Title: SAP Financials or Controlling Configuration and Implementation - Hands On


Client: SAP IDES – Client 800


Project Duration: Start Date & Month – End Date & Month


Employment Type: Full Time


Note: Fresh Graduates are excluded from Employment. You can just say Full Time since you have spent long hours in Configuring your SAP IDES System.  Do not worry about Employment.


Project Location: Bangalore  

        

Onsite or Offsite

Note: If you are using Online SAP Server through SAP Server Providers then mention it as Onsite. If you are using SAP IDES Installed in External Hard Drive or PC’s Laptop/Desktop then mention it as Offline.


Project Details: Give the full detail of your Project. You need to mention about the SAP Module, it’s Scope, Version of SAP etc.


Role: Solution Architect, Domain Expert, Project lead, Module Lead


Note: if you are Technical Graduate/Post Graduate then you can give Solution Architect or Project Lead. If you are Functional Graduate/Post Graduate then you can give Module Lead or Solution Architect.


Role Description: SAP Financials Application Associate Consultant or SAP Controlling Application Associate (you can give this Role name if you are certified in SAP FI or CO.


If you are not certified in SAP FI or CO, then you can mention SAP Financials Consultant – Application Configuration or SAP Controlling Consultant – Application Configuration.


Team Size: 1 or more than 1 if you have done your configuration Online along with your SAP Friends via Groups/ Forums/Community.


Skills Used: SAP, SAP Financials or SAP Controlling, F&A (SAP).


Try to Use Key words of SAP Modules in your CV.


This is not a Fake Experience. This relates to your Self Practice Project Session in SAP IDES. SAP IDES is Powerful Software for Fresh Graduates. Do not ignore SAP IDES Self Practice.  Of course this is not a Real time Project. But it’s a Basic Implementation Project which is essential for every beginner especially Fresh Graduates. This can be also be followed by Working Professionals who have shifted to SAP.


After Completing One Full Configuration Cycle and Adding this Demo Solution, You all must make a Certificate for this Solution - Certificate of Completion of SAP IDES Demo Solution on particular SAP Module. Get it signed Official from your SAP Trainers (Authorized & Local), to do this you need to show your Hard Copy/Soft Copy of your Demo Solution to your SAP Trainer and get signed on your Certificate. You can show this certificate during your Interview Process.


Effect of this Idea :


During the month of July 2013, One SCN Member had asked me How to get SAP Project? I said him to add SAP IDES Demo Solution of ABAP. He had followed this idea and he also got entry into SAP Authorized Training for ABAP. He got certified in October 2013. He got his Dream Job in 4 months, got entry into SAP Partner - CSC Chennai Permanent role. I am happy that My idea has worked out for him.


I am also following this idea and this idea has been accepted by Naukri Dot Com (HR) Bangalore. Its taking more time for me to get entry in SAP FI Role. I am waiting for 2nd time here in Bangalore.


 

Success Quote : Three Steps for Success Go On…Go On…Go On. Just do it in your own Professional Style.


My Voice for Beginners :


The Motto of this Idea " Your CV must reach SAP Recruiters for Right Kind of Role, Right kind of Skill, At Right Place and At Right Time which you are seeking for your Career Entry into SAP. "

 

Note to Moderators : Please kindly Allow the Members to follow this Reality Idea. Please do not depreciate Ideas of Young Talents. Its my Request to All Moderators. I just want to see Satisfaction that's All. Nothing Else I want here in SCN. I have kept a Mission for Beginners specially Fresh Talents.

 

Thanks & Regards

Pramila

SAP Financials Associate Certified Consultant Fresher/Trainee

SAP Certified Candidate of SourceOne Management Services Pvt, Ltd.

Bangalore

Mitigating Control Lifecycle

$
0
0

A high amount of time during a SAP GRC project will be spent on defining processes and responsibilities. My suggestion is to think in lifecycles for getting a better understanding of the processes and who is taking over the responsibilty.

 

In this post I would like to clarify the lifecycle of Mitigating Controls. I have grouped them into four steps Create, Change, Delete and Review. Please see for each step expected Tasks and who is involved.

Lifecycle_Mitigating_Control.png

 

 

Creation of Mitigating Controls

 

Tasks

Define the control including:

  • Control description
  • Control execution
  • Control approver and control monitor
  • Documentation of control execution
  • Templates used to monitor the risk

 

Involved functions

  • Control Owner
  • ICS responsible
  • SAP GRC responsible

 

 

Changing of Mitigating Controls

 

Tasks

Change the control for example:

  • Control description
  • Control execution
  • Control approver and control monitor
  • Documentation of control execution
  • Templates used to monitor the risk

 

Involved functions

  • Control owner
  • ICS responsible
  • SAP GRC responsible

 

 

Deletion of Mitigation Controls

 

Tasks

  • Delete the mitigating control within SAP GRC AC
  • Document the decision of deletion of the mitigating control

 

Involved functions

  • Control Owner
  • ICS responsible
  • SAP GRC responsible

 

 

Reviewing of Mitigating Controls

 

Tasks

  • Analyse if maintained controls within SAP GRC are still valid
  • Analyse if the mitigating controls are covering the risk fully
  • Test the effectiveness of the mitigating controls

 

Involved functions

  • Control owner
  • ICS responsible
  • SAP GRC responsible

 

If you want to have further information or contribute in this blog post do not hesitate to contact me or reply to this post directly.

Risk Lifecycle

$
0
0

A high amount of time during a SAP GRC project will be spent on defining processes and responsibilities. My suggestion is to think in lifecycles for getting a better understanding of the processes and who is taking over the responsibilty.

 

In this post I would like to clarify the lifecycle of Risks. I have grouped them into four steps Create, Change, Delete and Review. Please see for each step expected Tasks and who is involved.

 

 

Creation of Risks

 

Tasks

  • Define the SoD risk on business level (e.g. with internal auditors)
  • Evaluate the necessary transactions to execute the SoD conflict (transaction and authorization)
  • Implement the risk within SAP GRC AC
  • Validate the risk analysis results

 

Involved functions

  • Risk owner
  • Process owner
  • ICS responsible
  • SAP GRC responsible

 

 

Changing of Risks

 

Tasks

  • Define the changes within the SoD risk on business level (e.g. with internal auditors)
  • Evaluate the necessary transactions to execute the SoD conflict (transaction and authorization)
  • Change the risk within SAP GRC AC
  • Validate the risk analysis results

 

Involved functions

  • Risk owner
  • Process owner
  • ICS responsible
  • SAP GRC responsible

 

 

Deletion of Mitigation Controls

 

Tasks

  • Delete risks within SAP GRC AC which are not valid anylonger
  • Document the deletion of the risk and especially the decision to delete the risk

 

Involved functions

  • Risk owner
  • ICS responsible
  • SAP GRC responsible

 

 

Reviewing of Risks

 

Tasks

  • Analyse if maintained risks within SAP GRC are still valid
  • Define actions to take because of:
    • New business processes
    • Changes in the IT system
    • Changes in the Internal Control System

 

Involved functions

  • Risk owner
  • Process owner
  • ICS responsible
  • SAP GRC responsible

 

 

If you want to have further information or contribute in this blog post do not hesitate to contact me directly.

No comment!

$
0
0

Are Comments overrated?

Comments are a wonderful tool to document what you intended with certain program logic. You can place it directly where that logic resides: In the source code. As comments are non-functional, they are not getting compiled and hence, not executed. However, I’ve got the feeling that sometimes we should really think about how to use comments and how not to use them. These points are neither fundamentally new nor innovative to developers at all, but I still have the feeling, that these are the most commonly violated principles.

 

Antipattern #1 – Comments do not replace program structure

Usually, developers should tell the reader of their code why they are doing something, not what they are doing. Before you start to comment by describing what the next few lines of code should do, stop and think about it.

Consider the following example. What do you think would be better to read?

 

*   parse header from excel    lv_row = 2.    lv_column = zcl_excel_common=>convert_column2int( lv_range_start_column ).    lv_current_column = 0.    WHILE lv_column <= lv_highest_column.      lv_current_column = lv_current_column + 1.      READ TABLE mt_fcat INTO ls_fcat INDEX lv_current_column.      CHECK sy-subrc = 0.      lv_col_str = zcl_excel_common=>convert_column2alpha( lv_column ).      io_excel_worksheet->get_cell(        EXPORTING          ip_column = lv_col_str          ip_row    = lv_row        IMPORTING          ep_value = lv_value      ).      ASSIGN COMPONENT ls_fcat-fieldname OF STRUCTURE ls_scale TO <lv_value>.      CHECK sy-subrc = 0.      CASE ls_fcat-inttype.        WHEN 'D'.          <lv_value> = zcl_excel_common=>excel_string_to_date( lv_value ).        WHEN OTHERS.          <lv_value> = lv_value.      ENDCASE.      lv_column = lv_column + 1.    ENDWHILE.    lv_column = zcl_excel_common=>convert_column2int( lv_range_start_column ).    lv_row = lv_row + 1.
*             …Some more coding…    lv_highest_row = io_excel_worksheet->get_highest_row( ).
*   parse items from excel    WHILE lv_row <= lv_highest_row.      lv_column = 2.      lv_col_str = zcl_excel_common=>convert_column2alpha( lv_column ).      io_excel_worksheet->get_cell(        EXPORTING          ip_column = lv_col_str          ip_row    = lv_row        IMPORTING          ep_value = lv_value      ).      lv_catyp = lv_value.      lv_column = 1.      lv_col_str = zcl_excel_common=>convert_column2alpha( lv_column ).      io_excel_worksheet->get_cell(        EXPORTING          ip_column = lv_col_str          ip_row    = lv_row        IMPORTING          ep_value = lv_value      ).
*                           some more coding…      lv_row = lv_row + 1.    ENDWHILE.

Basically, the comments tell me what the next few lines of code will do. But there is no benefit. You just don’t understand immediately, what the code does, no matter if there are comments available or not.

Even worse, more comments would not make clear what the code does. Furthermore, as you shift code to another part of your program, the comments might lose their relationship to the code – as they are non-functional and not taken into account by the compiler. This will eventually lead to comments that are misleading users in the best case.

Consider this refactored example:

 

    parse_header_from_excel( io_excel_worksheet = io_excel_worksheet io_scale = ro_scale ).    parse_items_from_excel( io_excel_worksheet = io_excel_worksheet io_scale = ro_scale ).

Actually, replacing comments by special methods with a useful name does not reduce complexity – but it increases readability dramatically.

By the  way, that’s why I think that code scanners which measure the ratio of comments and source code are useless – as the goals that they proclaim to address cannot be addressed by such simple measurements.

Normally, I try to produce code which has no comments in the middle of some logical program unit like a method. If there are comments, they are at the top of the code – or nowhere.

 

Antipattern #2 – Commented code

Having code that is getting useless by the time will lead to the end of its lifecycle. Usually most of the developers just comment this piece of code out. How often have they ever read this program logic again?

I personally do not read it as it might lose track of its relationship to the surrounding source code by the time. My eyes just went over these comments. Whenever I need to delete some coding that I might miss in the future, I generate a new version of the ABAP source code and delete the code. Code Versioning systems are meant for this kind of tasks. When I miss something in the code, I take a look at the versions – This immediately allows me to compare two versions by the changes that have been applied in the meantime.

C,D,E .... Where it leads you finally??

$
0
0

Since I started SAP trainings in my free time, I do get lot of "Friend" requests on my personal mail from people who are anxious to say 'Hello' or to ask some technical help or general advice about their SAP career. Few days back, it was from a lady from Bengaluru, India (Erstwhile Bangalore). The lady did her Bachelors in Commerce & MBA, and worked for 3 years before getting married and since then is a home maker. Now she wanted to begin her career again


When she contacted me, her voice was not audible enough. But all I could pick up from the conversation was what I have written above. She added she has been trained in SAP FICO a year back, but she is not clear with many concepts and wanted me to help her so that she can be ready for the interviews. Since she had no prior SAP FICO experience, I said teaching you Controlling module will be tough and put her in touch with my wife who deals in SAP FI module related topics.


What transpired next between both of them, I would share in a summarized form.


The candidate had no interest whatsoever in learning any SAP topic. She just wanted my wife to help her fake during the interviews. She wanted to know about the SAP implementations that have happened in some 4 to 5 companies, what was the business requirement in those projects, challenges and how they were addressed, etc. For all of these, our Hyderabad has coined a new word, "Live Projects". Those who don't know what this means, would have understood after reading this blog till now.


My wife, Kavita, put forth few questions to her.


Kavita: Why do you want to do this? Do you know the consequences if you are caught?

Caller: I know it is wrong. But don't worry. There are HR consultancy firms. They charge 300,000 INR and they take care of everything. They will cover for you


Kavita: Do you think it is right?

Caller: I know it is not. But I have 3 friends, who did the same. They are getting salary of 900,000 INR p.a. and plus they are sitting on bench for the last 9 months. What a life they are having!!


Kavita: You wanted to enjoy married life, so you quit a job that you were having. Now having enjoyed it for 3 years, all of a sudden you had a realization about your career, and you want to be at the same level at which you should have been by now, if you were working all these years. What about those who are working since then, don't you think you will be doing injustice to the candidates who are genuine?

Caller: I have some financial problems, so I am in need of a Job. Everybody is asking for experience, so I have no choice


Kavita: If you want a job, I can help you. I can teach you, send your CV to many companies wherever I have contacts. But why do you want to fake?

Caller: I know I can get a job if I wait for few months. But the salary will not be good. And I need money now


Kavita: Do you have kids?

Caller: Yes, I do, a Son

Kavita: Then with what face will you teach him that Honesty is the best policy

Caller: I know it is wrong, but I cant help it


Kavita: Tomorrow if a robber does robbery in your house and gives the same reasoning then he is also justified. Right?

Caller: Can you help me or not?

Kavita: If you want to learn the subject, you are at the right place. If you want to fake, you are knocking at the wrong door.


When she came for lunch, was very disturbed after this conversation. She said if someone has financial problems, there are Banks who give personal loans. But people are more interested in faking up their CVs, than living by right means and doing hard work. I wondered what the Comparison, Desperation and Eagerness is leading the people to.


My wife said even the companies are at fault. Everyone wants a candidate who is experienced and no one wants to invest in freshers. This eventually forces people to resort to some means and eventually they get into the same companies who were trying to avoid them as freshers. But then, my memory took me back to my earlier days and I shared with her a story about Birbal, the famous minister in the court of Emperor Akbar, who was known for his wit.


There happened to be an officer in Akbar's court who was caught being corrupt. The man cleverly blamed Akbar when produced in front of him. He said you don't care about your subjects, you don't know our problems and how we suffer each day. We are in great misery and forced to resort to corruption.


Birbal suggested to Akbar that if your subjects are not happy in your rule, it is your fault and you cant punish him for that. Birbal asked this man to sit at the sea shore and count the no of waves in the sea, as a small punishment. After a month, both Akbar and Birbal disguised as fishermen and went upto this man sitting at the shore to ask for an address.


The man yelled at them saying he was doing an important job of counting the waves, which was important to form a strategy to attack the enemy nation. Because they disturbed in between, he forgot the count and now the emperor will hang both of them. The two fishermen asked for forgiveness and the man struck a deal for 500 gold coins.


Moral of the story is if someone is corrupt at roots, they will find an opportunity even if you put them in a job that is worth nothing. Honesty is something that is not defined by the circumstances.


There was a gentleman in my team in my previous company. He had so called experience of 3 years in Product costing. When we gave him the orientation about our project and the T codes that we use, he came up with an Einstein type question. Guess what!  And the question was "What is a T Code?

 

We knew he has faked up his CV and we tried to help him for 2 yrs and taught him all that we could. After 2 years he was fired for non-performance.

 

When the manager gave him feedback about his performance rating of 4 (the lowest) and explained the consequences of it, he came out of the room with his chest size bulged up. He asked one of my colleagues about his rating. He said, "I got 1" (the highest). This poor fellow became further happy saying "I got a bigger rating than you" (i.e. 4 > 1). Because the manager talked to him in English, he could not even make out that the manager explained to him that he will have to quit the Job. I leave it to the forum to decide how we got into the job in the 1st place.

 

This brings us to the question, who is (are) at fault?  - The clients running on SAP who insist on the BEST possible "Race Horse" ->  The IT companies who hire a "Pony" and morph them as a " Race Horse" -> The Job consultancy firms who find a "Donkey" and showcase them as a "Pony" or the Donkey himself / herself who is not sure who he / she is and what they want to do in life.

 

The ultimate sufferer in this whole chain is the client, till the time the fake cv is caught and then the fake CV, once it is caught. However, the clients are big enough to absorb some big  shocks, but we as an individual don't have that capacity, because for us a shock in this situation would mean lack of economic support to our families and disrepute to our own selves.

 

It is one man's greed that leads to corrupting the whole eco system and this is how a chain reaction works.

 

The IT companies want to improve their margins, by hiring folks at lower salaries -> People at lower salary means people with lower experience - > Hire people with lower experience -> Make them eat the food in a day which one can eat in four years and just vomit in front of the client during remote telephonic call from offshore -> The Job consultancy firms come to know that the hiring companies are cheating, so why be honest?

 

If one man's greed has the capability to corrupt the whole eco system, then surely, one right / honest / mature decision would also have an equal potency, if not less, to improve the whole eco system. So, the buck has to stop here, and the Sr. SAP Consultants who are in a capacity to select their team members from with in the same organization, should not bluntly reject someone for lack of experience in a given SAP Module or Sub-module. Rather use your experience to assess whether the candidate is capable enough to ramp-up soon


Thank you for reading this blog. I look forward to your valuable feedback on the same.


Br. Ajay Maheshwari


PS: I dedicate this blog to one of the new faces in SAP, who with sheer zeal and hard work could feature (and is still there) in the Top 10 contributors list in SAP ERP Financials. And despite that, was refused a project because of lack of experience in one of the Sub modules of SAP FICO

用ABAP 生成二维码

$
0
0


除了使用这篇blog里提到的使用ABAP webdynpro生成二维码之外,也可以通过使用二维码在线生成网站提供的service来生成二维码:


二维码在线生成网站:

 

http://www.makepic.com/qrcode.php

 

 

在网页上输入要生成的二维码数据源,校验级别和图片大小,点生成即可看到生成的二维码图片:

clipboard1.png

下面是用ABAP code 利用上述service生成二维码的代码:

 

DATA:     ls_form   type zcl_http_tool=>ty_name_pair,     lt_header type zcl_http_tool=>tt_name_pair,     lt_form   type zcl_http_tool=>tt_name_pair,     lv_code   type xstring.
ls_form = value #( name = 'data' value = 'testforQRCode' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'level' value = 'M' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'size' value = '6' ).
APPEND ls_form TO lt_form.
zcl_http_tool=>send_request( iv_url      = 'http://www.makepic.com/qrcode.php'                              iv_req_type = if_http_request=>co_request_method_post                             it_form      = lt_form ).
ls_form = value #( name = 'Referer' value = 'http://www.makepic.com/qrcode.php' ).
APPEND ls_form TO lt_header.
zcl_http_tool=>send_request( EXPORTING  iv_url      = 'http://www.makepic.com/mkqr.php?data=testforQRCode&level=M&size=6'                                        iv_req_type = if_http_request=>co_request_method_get                                        it_header   = lt_header
IMPORTING  ev_response = lv_code ).


testforQRCode对应生成的二维码:

clipboard2.png

用手机上的二维码扫描应用能够成功扫描出来:

2c0e3e5ff0c6eded33e3f498631b0c95.jpg

zcl_http_tool的代码见附件(因为用于demo用途,没有加对应的出错处理)





Data Connection Details for Data server Configuration

$
0
0

Few days ago when I was working for some system configuration, I have faced a big issue to collect the db connection details for a DB2 server. So by facing so I planned to share my knowledge regarding data connection details I gained from various system configuration. Hope it will help all in future.

 

Here I will give the details of most used databases where developers need to connect using data server for fetching the data from those DB. I am giving the details for Oracle, MSSQL, DB2, Sybase etc.

 

 

Data Server Configuration : Before starting the data connection details let me explain about a bit of data server configurations. While configuring a data server few parameters which directly depends upon the database connection details, they are as follows,

 

  • JDBC Driver
  • Server URL
  • Validation Query

 

JDBC Driver is a fixed driver class which is different for each kind of database. Using server URL it basically connects to the database but every databases have a fixed format for the URL and Validation Query used to check the ping to that server based on that MII determines the server is up or not.

Apart from that developers required another thing that is JDBC Driver (.jar file). So those are the main part developers required to collect data before configuring the data server in MII.

 

Data Connection Details :

 

  • Oracle ::
      • JDBC Driver Class : oracle.jdbc.driver.OracleDriver
      • Server URL Format : jdbc:oracle:thin:@<host>:<port>:SID
      • Validation Query : select sysdate from dual
      • Driver : JDBC/UCP Download Page

 

 

  • DB2 ::
      • JDBC Driver Class : com.ibm.db2.jcc.DB2Driver
      • Server URL Format : jdbc:db2://<host>:<port>/<db> (For JDBC4); jdbc:db2:<db> (for JDBC2)
      • Validation Query : Select Current Date from SYSIBM.SYSDUMMY1
      • Driver : IBM DB2 JDBC Driver Versions - United States

 

 

There are lots of other db with IDBC connector which developers can connect in SAP MII Data server but the above mentioned are commonly in use.

Hope it will help a bit to the developer while configuring the data server.

Get an Idea

$
0
0

Hello All,

I think I should have posted this blog prior to what I already posted.

 

Since I have already shared that I’m under Translation and Localization Services Team, I would like to share with you some challenges that our team who handles requests for Translation, had and how a small idea helps to increase efficiency. Our team had to ask lots of questions to requestors when any request for translation came in.

 

I thought why not improve our Translation Portal and give requestors the options where we need not ask any questions.

The purpose of this creation was to eliminate as many queries we have during processing new request.

Why not give options to requestor that will minimize our work and give more clarity towards the request.

 

Request Creation page

1.png

 

This is the request creation page where we get details of country, language, date, asset of a particular request. Under additional information box, requestor fills whether they want images, screenshots or noted to be translated. But sometimes it is empty or no clarity.

I suggested, what we can do is under Additional Information; we can give the options to requestor.

They just need to select an option. The essential thing here is we need to make this as *required fields, without which the request will not be submitted.

 

I presented this idea to my Manager and he was amazed. He approved the idea and forwarded to Tools team to implement it and thankfully it is partly done and we see this actually helps our team to execute our services quickly.

 

Thanks for reading.

 

Regards,

Neha

The 2014 SAP PartnerEdge for Application Development Challenge for Mobile

$
0
0

SAP is again looking for the hottest apps that help our joint customers revolutionize their business. This is your chance to win BIG. All partners are invited to build mobile apps and to submit them to the 2014 Challenge. Create your mobile apps now and publish them on the SAP Store. Fill out the submission form, and you are in the race. One winner and two finalists will be awarded with a  trophy in the autumn of 2014, at a major SAP or similar event, and will be included in various demand-generating activities.

Visit the SAP Booth at the Mobile World Congress in Barcelona between February 24 and 27 to learn more - detail.

 

 

Useful links and info:

 

  • It has never been easier to join a Mobile App Challenge. Fill out the submission form today and ensure that your app goes live on the SAP Store between April 1 and August 31
  • Benefits for all participating partners: Publication of the SAP certified app on http://store.sap.com. Reach >250,000 SAP customers and sell your apps
    through this channel. Be part of the marketing activities for apps on the SAP Store
  • Benefits for Finalists and Winners: One winner and two finalists will be selected. Winner & finalists will be awarded with a trophy in
    the autumn of 2014, at a major SAP or similar event. They
    will be publicized through SAP‘s social media channels, SAP Store, newsletters, videos & press releases, reference slides etc. Winner and finalists will be considered for SAP Pinnacle Award nomination and the apps will be included in various demand-generating activities
  • Read the Terms & Conditions
  • The challenge is open to new and existing partners with qualified development staff. Submission of Proposals starts now and runs up to August
    31st, 2014. Apps published on the SAP Store between April 1st 2014 and August 31st 2014 will be eligible to participate (Apps published outside of that time frame are excluded from participation)
  • Participants can submit single or multiple apps
  • The apps must showcase the power of Mobile
  • Apps submitted to previous or current SAP Challenges are excluded from participation
  • Participants must initially join the SAP PartnerEdge program for Application Development – either as full or exploration member: SAP PartnerEdge program for Application Development
  • Participants must join the full SAP PartnerEdge program for Application Development latest by August 31st
  • Apps must be fully documented including all SAP Store deliverables and an offline demo and video, which are essential for winner identification
  • Winner and finalist selection will take place by a Jury of Experts and/or Audience Vote

 

Capture.JPG

generate QRcode via ABAP with help of online service

$
0
0

Previously we have discussed how to generate QRcode with SAP standard functionality:

 

1. Generate QRcode with ABAP Webdynpro

2. Generate QRcode with ABAP Code plus Adobe form template

 

Both solutions will generate QRCode within a PDF file. If your requirement is to generate the QRCode in a picture file, you can use the solution described in this blog.

 

There are lots of websites which provide free QRCode generation service. Just google it:

clipboard1.png


I prefer to use this one http://www.qrstuff.com: just choose "Plain Text" and we can input some characters in Text field. There is a AJAX call which will generate QRCode immediately after some characters are typed.

clipboard2.png

Now question is how we automate the character input via ABAP.

 

I use Chrome to explore what has happened when we input some char in webpage. Click F12 to launch Chrome developer tool, input some char and observe the information displayed in the "Network" tab:

clipboard3.png

The request URL is found: http://www.qrstuff.com/generate.generate

 

The request method is GET.

 

Also it is necessary to identify http form fields and they are also listed in Chrome:

clipboard4.png

We need to copy all of those form fields into our ABAP code except preview=1, since we don't need the preview functionality, we just need the generated png file.

 

here below is the simple report to generate QRCode from hard coded string "testforQRCode". ( The bold text are just copied from Chrome developer tool )

The source code of zcl_http_tool could be found from attachment.

 

DATA:     ls_form   type zcl_http_tool=>ty_name_pair,     lt_form   type zcl_http_tool=>tt_name_pair,     lv_code   type xstring.
ls_form = value #( name = 'type' value = 'TEXT' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'foreground_color' value = '000000' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'ecc_level' value = 'L' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'width_pixels' value = '200' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'dpi' value = '72' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'file_type' value = 'png' ).
APPEND ls_form TO lt_form.
ls_form = value #( name = 'text' value = 'testforQRCode' ).
APPEND ls_form TO lt_form.
zcl_http_tool=>send_request( EXPORTING iv_url      = 'http://www.qrstuff.com/generate.generate'                                       iv_req_type = if_http_request=>co_request_method_get                                       it_form     = lt_form
IMPORTING ev_response = lv_code ).


And this is QRCode scanned from my mobilephone:

2c0e3e5ff0c6eded33e3f498631b0c95.jpg

ABAP Icon Explorer - SAPUI5 application

$
0
0

In sapui5 application, we can use various icons to beautify its look and feel. On SAPUI5 demokit, you can find Icon Explorer which has around 500+ icons which you can use in your application. you can also see various icons at SAPUI5 SDK - Demo Kit

 

There was blog on ABAP Icon Library by Patrick Wenger where it is mentioned that

Dealing with web frontends, the need of a consistant icon library is crucial. Of course you can use the icons of the SAPUI5 library. But besides this, every SAP ABAP stack also hosts an nice icon library. You can use the following url to have a look at the icons:

 

http://[HOST][PORT]/sap/bc/bsp/sap/it00/mime_sap_icons.htm

 

So I was thinking can we have sapui5 application which will show all icons from SAP NW AS ABAP? Apart from icons from  Icon Explorer if someone is interested to display icons from backed system, there should be some application which will provide those icons. These icons will be best suitable for desktop based ui5 application. Users will be familiar with these icons as those are being used in almost all SAP transactions!

 

for example, see these buttons with some backend icons!

abap_icon.jpg

Source at ABAP Icons on Buttons

 

In this blog, I will provide demo of an ABAP Icon explorer UI5 application which will display various icons from ABAP Application server.

 

first I created simple function module to capture icon data as below,

 

FUNCTION z_test_mime_list.
*"----------------------------------------------------------------------
*"*"Local Interface:
*"  EXPORTING
*"     REFERENCE(MIME_TAB) TYPE  ZMIME_T
*"----------------------------------------------------------------------   DATA: icon_tab TYPE STANDARD TABLE OF icon,         icont_tab TYPE STANDARD TABLE OF icont,         wa_icon LIKE LINE OF  icon_tab,         wa_icont_tab LIKE LINE OF icont_tab,         ls_mime TYPE zmime_s,         url TYPE string.   SELECT * FROM icon INTO TABLE icon_tab .   IF icon_tab[] IS NOT INITIAL.     SELECT  * FROM icont       INTO TABLE icont_tab       FOR ALL ENTRIES IN icon_tab       WHERE langu = sy-langu       AND id = icon_tab-id.   ENDIF.   LOOP AT icon_tab INTO wa_icon.     IF wa_icon-internal IS NOT INITIAL.       READ TABLE icont_tab INTO wa_icont_tab WITH  KEY id = wa_icon-id.       IF sy-subrc = 0.         REPLACE ALL OCCURRENCES OF '@' IN wa_icon-internal WITH ''.         CONCATENATE 's_' wa_icon-internal '.gif' INTO url.         CONCATENATE '/sap/public/bc/icons/' url INTO url.  "You can append absolute path with host and port name as well         ls_mime-name = wa_icon-name.         ls_mime-url = url.         ls_mime-shorttext = wa_icont_tab-shorttext.         APPEND ls_mime TO mime_tab.       ENDIF.     ENDIF.   ENDLOOP.
ENDFUNCTION.

I am exporting table type ZMIME_T which refers to structure ZMIME_S with fields NAME, URL and SHORTTEXT of type string. Then I created simple GW service as below,

abap_icon1.jpg

and redefined method MIMESET_GET_ENTITYSET of generated class ZCL_ZTESTMIME_DPC_EXT as below,

 

METHOD mimeset_get_entityset.   DATA: ls_entity LIKE LINE OF et_entityset,         lt_mime_tab TYPE zmime_t,         ls_mime_tab TYPE zmime_s.   CALL FUNCTION 'Z_TEST_MIME_LIST'     IMPORTING       mime_tab = lt_mime_tab.   LOOP AT lt_mime_tab INTO ls_mime_tab.     MOVE-CORRESPONDING ls_mime_tab TO ls_entity.     APPEND ls_entity TO et_entityset.   ENDLOOP.
ENDMETHOD.

With this code, I am able to get relative URLs to all icons from ABAP stack. I developed simple UI5 application to consume this GW service and was able to explore all icons. But I was thinking how to make this available to all to explore icon library. For that, first i downloaded the OData service response in JSON format and then appended SAP demo system host name https://sapes1.sapdevcenter.com/ to relative URL exposed from my OData service. I created local json file and used in my demo application. you can see the demo application at ABAP Icon Explorer SAPUI5 Application

 

Below is the output screen of the application. I used DataSet UI element to display icons.

abap_icon2.jpg

 

There is option to search icons based on ShortText. So if you wan to see icons which contain description as "material", you can search it as shown below,

 

abap_icon3.jpg

 

I hope you will explore ABAP Icons and will use it in your application. Just do not forget to replace SAP Demo system host name with your SAP system host name in real productive applications!

 

Please let me know your views, comments. Happy exploring ABAP Icons!

Viewing all 11427 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>