SAPtipsJournal Jun Jul 2007 Vol5 Issue3 833...
SAPtipsJournal June / July 2007 Volume V Issue 3
Unlocking the Value of your SAP® Investment
Undocumented Features…Timesaving Solutions…Best Practices Journal
|
Training
|
Consulting
| Document Library | Tip of the Month | Software Solutions | SAPtips Community
COVER STORY
FINANCIALS
9 u Warehouse Maintenance Kanban? In SAP You Can, by Bruce Rishel, Perot Systems.
25 u The Eliminator:
Today’s business is all about efficiencies. If your business isn’t agile and efficient, it won’t be competitive long. That’s why we felt that Bruce Rishel’s article on Kanban was not only timely, but…well… efficient. Bruce shows you how to maximize your SAP investment by maximizing your resources, ordering only what you need, as you need it, automatically. Follow his straightforward configuration suggestions and best practice tips to implement Kanban in your company.
Understanding Elimination of Internal Business Volume in Cost Center Reports, by Sutrisno Japit, SAP Practice Manager, Japit, Inc. You’re not seeing a true picture of your cost center accounts unless you learn to exclude cost center exchanges from your reports. Sutrisno Japit shows you how to make it work.
SAPtipsJournal
What Do You Need to Know About SAP’s Personnel Areas and Employee Groups?, by Satish Badgi, SAP HR Consultant. Time will fly
Barua discusses the concepts and benefits of document splitting and demonstrates some preliminary configuration in the second installment of his series.
DEPARTMENTS
Interactive with SAP’s FI Substitution Rules, by Graham Smith, FI/CO Consultant. First
4 u SAPtips Training and Consulting 6 u Software Solutions 8 u User News from ASUG 67 u Humor 68 u SAPtips Associate Editors
time contributor Graham Smith shows you how to build an interactive prompt for your FI users by tweaking your substitution rules.
BW
19 u
40 u What’s New?: NetWeaver™
users stuck in “Excel-land”? Ranjan Sinha explains why the release of SCM 5.0 will inspire your users to embrace your APO Demand Planning tool.
From the Editor continued on page 2
35 u Substitution Rules! Get
LOGISTICS APO and Supply Chain Management SAP’s SCM 5.0: A Kinder, Gentler Demand Planner, by Ranjan Sinha, Lead APO Technical Analyst. Are your
Whether you attended Sapphire keynote speeches in person or by Webcast this year, or simply followed the usual news sources, you learned elements of SAP’s proposed business strategies and relationships. These announcements held no big surprises. Of note is an expanding relationship with Microsoft’s Duet product in identifying a longrange roadmap for the software, which allows users to tap into SAP
ECC 6.0: Document Splitting – Part II, by Anurag Barua, The Washington Post. Anurag
if you follow Satish Badgi’s suggestions for fine tuning your Employee Sub Groups and Personnel Sub Groups in your Time Management module.
From the Managing Editor
29 u SAP’s New General Ledger in
HR 14 u ESGs and PSGs:
Cheryl A. Cave, Managing Editor
2004s BI Reporting Tools, by Peter Scott, SAP Practice Director at Traxion Consulting Inc. Let Peter Scott show
you what’s new and exciting in BW/BI Reporting with NetWeaver 2004s. Table of Contents continued on page 2
SAPtips.com
Publisher: Andy Klee Director of Publications: Laura Donovan Managing Editor: Cheryl A. Cave Editors: Emil Marx Colleen Low Larkin Graphic Designer: Mark Hunter Klee Associates, Inc. SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
BASIS
TRAINING
44 u TMS 101:
59
Fine Tuning Your Transport Management System, by Eric Walter, SAP Consultant.
Prop up the hood of your TMS system and overhaul it with expert Eric Walter’s tips.
49 u Building the SOA City, by Axel Angeli and Lynton Grice. To
build the city of tomorrow, you need to start with a solid plan and state-of-the art tools. Axel Angeli and Lynton Grice show you how to begin construction of an SOA with a minimal time investment and best-of-breed tools.
u Maquiladora Training: Just a
“Sap” in Mexico, by Robert Vaughan, SAP Training Consultant. The world is
now a global marketplace with manufacturing interests spanning borders and continents. Robert Vaughan describes the obstacles and solutions in implementing SAP maquiladora training in Mexico.
SOA
.
CIO Corner 65
u The New SLOG, by Erik Keller.
Erik Keller describes his concept of the next wave of IT wizards, those who SLOG. Find out what his acronym means for you and your career.
SAPtips ONLINE Be sure to visit the SAPtips Document Library to download these new white papers. On ABAP SAP GUI Scripting and MSOffice-Visual Basic for Applications: A Powerful Combination By Arturo Bernal, SAP Consultant
SAPtipsJournal
Page
SAPtipsJournal
If you need to record data, but find the eCatt tool more complex than you need for daily tasks, Arturo Bernal offers a creative alternative. SAP GUI Scripting, used in combination with Visual Basic for Applications found in MSOffice’s Excel, can provide you with a much more flexible, easy to use option. Let Arturo show you the steps to integrate these technologies and get you on your way to automating some of labor-intensive tasks.
On HR Need a Yes to ESS? Tips to Improve User Acceptance of Your SAP® ESS Solution By Bharath Ajendla, Cap Gemini
Are your users having trouble accepting Employee Self Service? Are they finding it difficult to use? Sometimes, even applications touted as “userfriendly” could benefit from a few changes to make them truly easy-touse. Bharath Ajendla has been working on such a project of his own, and he’s more than happy to share with you a few tips and tricks he’s learned regarding navigation, communication with users, and dealing with downtime that he says will get your users to say “YES” to ESS in no time!
From the Editor continued from page 1
applications through their familiar Microsoft Office applications. Version 2.0 of Duet will be delivered in late 2008. SAP also announced a more robust relationship with Cisco in leveraging enterprise SOA. Is SOA truly the shape of things to come? Axel Angeli and Lynton Grice begin a series this issue in which they propose an SOA city built in small, simple steps to support services as you need them. Turn to page 49 to read their solution, which utilizes a collection of the best-of-breed applications from OpenSource to Microsoft. SAP also announced a new relationship with Adobe to develop virtual learning tools that can provide a lower cost and more accessible solution to training. Until their solution is on the market, you may want to read Robert Vaughan’s synopsis of a maquiladora training project that kept his team crossing the Mexican border more frequently than an immigration official. Every project has its obstacles; see page 59 to read how Robert’s team overcame language, culture, infrastructure, and political issues to train their users. And if you’re interested in offshoring, multi-national corporations, and global business, you’ll want to read Erik Keller’s CIO Corner article on page 65. Eric predicts the winners of the next enterprise software race – the SLOGgers. Yep, just when you thought you couldn’t take one more acronym. Need more from your FI/CO investment? Anurag Barua returns with Part II of his series on Document Splitting with the new General Ledger in ECC 6.0. In this installment he discusses the concept of document splitting and takes you through some preliminary configuration steps. You’ll find his article on page 29. Maybe you just need to know how to report the true cost for a cost center group. On page 25, Sutrisno Japit shows you how to eliminate internal business volume to show a more accurate cost. From the Editor continued on page 3
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
From the Editor continued from page 2
Whether you’re demanding more information on Demand Planning in SCM 5.0 (page 19) or trying to reduce inventory levels with Kanban replenishments (page 9), we have your back. But what if you need more than information? Whether you need Mastery Level consultants to implement additional functionality or an economical custom training solution (page 5) for your users, we’re here to help. Just think of SAPtips as the only friend you’ll ever need when it comes to enterprise solutions.
Over 4000 pages of content over 29 categories, over 400 articles and white papers, all easily and quickly searchable by category or keyword. . . What are you waiting for?
SAPtips Document Library
www.SAPtips.com/AccessDocumentCategories.asp
Your First Stop for SAP Knowledge
Meanwhile, there is still time to participate in our “we must be nuts” win-a-free-class offer for our off-site public classes. Look at page 4 to read about this great offer – we are really going nuts this summer and offering these classes in August in Denver as well as our regularlyscheduled fall series. Sincerely,
Cheryl A. Cave,
Managing Editor, SAPtips
[email protected]
≈
SAPtipsJournal
Page
SAPtipsJournal
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtips University Announces AUGUST 2007 session in DENVER, COLORADO! That’s right! SAPtips’ hottest workshops will be featured at a special Summer session held in one of the coolest cities in the U.S.! Get mile-high knowledge from instructors who’ve already climbed some pretty steep peaks when it comes to SAP implementations. Just go to www.SAPtips.com/WorkshopSchedule.asp for more details, course descriptions and how to register! Workshops
Dates
August 2007 - Denver, CO Reporting and Modeling in BW -
July 30-August 3, 2007
Basis and Security -
August 6-10, 2007
Sales and Distribution -
August 13-17, 2007
If you can’t make our August session, we’ll be back in the Lone Star
Here’s what one person who attended our public workshop in Dallas, Texas, had to say about the value of SAPtips training::
“The course and instructor were very beneficial in our deployment of SAP; others should indeed take this class.”
state in November. November 2007 - Dallas, TX
SAPtipsJournal
Page
SAPtips Training and Consulting
– Brian J. Pullin,
Reporting and Modeling in BW -
November 12-16, 2007
Basis and Security -
November 12-16, 2007
Sales and Distribution -
November 12-16, 2007
Is SAPtips going NUTS? You decide…
Sr. Network Engineer, PCF, Inc.
(Um, we said “we must be nuts”—no one said anything about free nuts.)
We must be nuts, but we’re going to do it! We’re going to give up to three lucky individuals a chance to attend either of the above listed sessions of SAPtips University for FREE. All you need to do is go to www.SAPtips.com/3Nuts.asp, by June 30, complete a short survey, and you’ll be entered in a drawing for a FREE seat to either the August or November sessions of SAPtips University. And, even if your name isn’t selected, if you register by July 15th, you’ll still win with a 10% discount on your tuition.
What could SAPtips do for your next project? Call or email Jocelyn Hayes today to find out!
[email protected] 1.877.832.2594 ext 122.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Some shells are just hard to crack without a little help. . . Why not let our SAPtips team of consultants and trainers help you get to the meat of the matter when it comes to your SAP software? Whether it’s an implementation project you need help getting off the ground, an upgrade that needs assistance, a team of super users that need in-house training, or any project that’s just left you scratching your head, wondering what to do next—SAPtips Consulting and Custom training services offer expertise at an affordable price. With SAPtips Consulting services, we don’t look for endless commitment; our goal is to help you get the results you need, then empower you to continue getting those results—without racking up unnecessary fees. Just go to: www.SAPtips.com/Consulting.asp for more information.
SAPtipsJournal
Page
SAPtipsJournal SAPtips Training and Consulting
With SAPtips Custom training, we’ll bring the experts to you! We take the time to learn about your company’s specific needs and business practices, and customize our training to be relevant to your users. At www.SAPtips.com/WorkshopCustom.asp, you can learn more about our approach and find links to our course catalog and descriptions. Or, if you’d like to discuss something in particular, just contact our Director of Consulting and Training, Jocelyn Hayes, at
[email protected] or call her at 877.832.2594 ext 122.
Either way, we’ll help you crack through your tough SAP issues and get the most benefit from your SAP investment! SAPtips.com
≈
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
RFgen: The Secret’s Out on the Best in Wireless Data Collection When it comes to Manufacturing and Inventory Management, especially in this era of “just-in-time” shipments, accuracy and efficiency are everything. There’s no time for “misplaced” or “lost” stock. It’s about knowing exactly what you have on hand, and what you need to produce, especially during peak sales periods. It’s having the full picture on what stock moves, and what’s been collecting dust. So what’s the secret to accurately assessing your manufacturing and inventory needs, with less paper, less costs, and less reliance on manual stock checks and reports driven by input from inconsistent sources? With RFgen Data Collection software, implementing a low-cost radio frequency bar-coding solution for SAP is easier than you think. Using the latest in Mobile Wireless and RFID Data Collection Technology, the RFgen solution is ready “out-of-the-box,” offering the benefits listed to the right
SAPtipsJournal
Page
SAPtipsJournal SAPtips Software Solutions
There are other “out-of-the-box” solutions out there, but RFgen has been found to offer an easier, lower-cost approach that’s decidedly quicker to implement. Go to www.SAPtips.com/DataCollection.asp to learn more about the simplicity of this product.
• Pre-built transactions for all Manufacturing and Distribution modules that work immediately with all SAP versions • The only Data Collection Software Solution to offer a full production free trial download that can be up and running in less than 1 hour • No source code installation is required within SAP’s server environment - ever • Easy-to-use development tool set for enhancements and configuration of business processes • The lowest total cost of ownership in the industry for a quick return on your investment • Off-Line Data Collection for 24/7 • Continuous support, even when your ERP system is down • Easy Bar Code Printing using popular bar code print applications
RFgen is used by over 2000 Companies Worldwide and by over 30,000 users. Isn’t it time you learned the secret, too? SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Each of our SAP® complementary software products helps you extract even more value from your investment in SAP software. Visit www.SAPtips.com/SoftwareSolutions.asp to learn more. Or contact Gabriel Ramos at
[email protected] or Toll-Free at 1.877.832.2594 ext 170 for a free demonstration or to speak with one of our software partners.
RFgen – Data Collection Solutions
An RF bar-coding solution that’s low cost and easy to implement? With RFgen software, you can be up and running as quickly as 30 days from now! And, with a greater ROI than other RF solutions. RFgen’s integration with SAP has been certified by SAP. RFgen is the only data collection software solution to offer a full production free trial download that can be up and running in less than 1 hour. www.SAPtips.com/DataCollection.asp
iTera High Availability – For the Information You Can’t Afford to Lose
When disaster strikes, where will your business-critical information be? Be it a hardware failure or the wrath of a Category 5 hurricane, High Availablity for iSeries offers you a reliable failover solution that allows you to continue on with business. Isn’t it time you looked into iTera–an affordable solution for the information you can’t afford to lose? www.SAPtips.com/HighAvailability.asp
ACOM Solutions: We can do this the hard way, or the EZ way!
SAPtipsJournal
Page
SAPtipsJournal SAPtips Software Solutions
ACOM helps you manage your documents and payments electronically, so that the paper jungles can be banished forever! Create, capture, distribute, manage, or store documents easily with EZeDocs and EZContentManager. EZPayManager allows you to manage payments seamlessly, while EZConnect extends your capabilities to EDIXML translations. Put them altogether, and you’ve got an easy-to-use, secure Integrated Document Management solution that lets you say good-bye to fax machines, tedious bookkeeping, and yes, that shinbruising, finger pinching, over-stuffed nightmare that is your filing cabinet. EZeDocs: www.SAPtips.com/Document-Management.asp EZContent Manager: www.SAPtips.com/Document-Management.asp EZPayManager: www.SAPtips.com/payment-software.asp EZConnect: www.SAPtips.com/edi-software.asp
≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
ASUG Education Your Way Our members asked for it and we delivered. In a recent ASUG member survey, our members told us that they wanted fewer face-to-face events while still meeting their needs for networking with other SAP users beyond the ASUG Annual Conference. And that is exactly what we have created – we’ve consolidated the number of times our members need to leave their offices and maximized the networking and educational opportunities available to them when they do.
~ JULY ~
This fall, ASUG is offering six events. Registering for one event grants attendees access to the sessions offered at the other events taking place at the same time. This flexible format will allow attendees to maximize their time out of their offices, tailor their agendas to suit their companies’ unique needs, and network with a greater number of people in the SAP community. Be sure to check out the event Web sites below to register and discover more about these expanded educational and networking opportunities. Non-members are welcome at all ASUG events. September 19-21, 2007 San Francisco, California Enterprise Asset Management: http://w3.asug.com/2007eam/saptips Product Lifecycle Management: http://w3.asug.com/2007plm/saptips Supply Chain Management: http://w3.asug.com/2007scm/saptips November 12-14, 2007 Orlando, Florida Financials: http://w3.asug.com/2007financials/saptips Human Capital Management: http://w3.asug.com/2007hcm/saptips Public Sector: http://w3.asug.com/2007ps/saptips
SAPtipsJournal
Page
SAPtips User News from
Registration for the events taking place in San Francisco also includes access to the SAP Adaptive Manufacturing Summit: http://www.sap.com/solutions/manufacturing/newsevents/manufacturingsummit/index.epx In addition to these events, ASUG will also be providing 100 hours of educational and Influence content at SAP TechEd ’07: http://events.asug.com/Default.aspx?alias=events.asug.com/teched2007 October 2-5, in Las Vegas, Nevada, and is excited about a new collaboration with SAP and SAP Insider for Global SAP Environments 2007: http://www.sapglobal2007.com/index.cfm?usergroup=asug October 22-24, in Miami, Florida. Learn more: http://www.asug.com/CommunityCalendar/tabid/58/ctl/Details/mid/439/ID/398/Default.aspx about our new partnership for this event. Don’t miss out on these events where you can leverage the networking and educational offerings ASUG has made available. Learn more: http://www.asug.com/events2007 about all of these events. See you this fall!
SAPtips is not formally affiliated with ASUG, but we share important ASUG news and events with our friends and partners.
SAPtips.com
≈ SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page
SAPtips Cover Story Kanban? In SAP You Can ®
By Bruce Rishel, Perot Systems Editor’s Note: If you think reducing your overall inventory is a “can’t”, you need to think Kanban. This pull principle-based process is yet another overlooked feature that comes standard with the SAP ERP package. Bruce Rishel takes us through the benefits of using Kanban, whether it’s a supplier or internal process, along with providing some pointers on configuration, master data, and control. Read this article, then imagine what you can do with all that extra floor space in your warehouse!
Introduction
If your company is running SAP, you may have an opportunity to improve your inventory levels and upgrade your standard MRP-based replenishment processes by using Kanban replenishments; this can be done without incurring new software costs, as the functionality is a standard part of the SAP ERP package. The advantage of Kanban replenishment is significantly reduced levels of inventory, often to the point where only materials required for short-term needs are stored in the Kanban containers. This inventory reduction is gained when the replenishment mindset is changed from a push type MRP principle to a pull principle. In the former, materials are pushed from the supplier or the warehouse to the demand source, often a production line or customer’s inventory. Typically, the push principle uses a reorder point and is executed through MRP. With pull principles, the demand source is in control of its inventory and pulls material into the supply area as materials are needed. Supply Source Note: The screen shots in this document were captured using an SAP ERP2004 (ECC 5.0) system, though the functionality is similar in SAP R/3 versions 4.6(x) and also SAP Enterprise (version 4.7) and ERP2005 (ECC 6.0).
supplier delivers material directly to the supply area when a Kanban signal is received. • Internal Kanban (Kanban cycle between store and work center). Materials are received on a purchase order or schedule agreement and the Kanban material is stored at the warehouse. The supply area sends a Kanban signal to the warehouse when Kanban material replenishment is needed. Note: The warehouse can be managed by either the SAP Inventory Management (IM) or Warehouse Management (WM) modules; either solution supports Kanban. Along with the shift of mindset from a push to a pull principle, we realize that with Kanban, no detail level planning or forecasting is used for replenishment beyond the demand signals coming from the supply source. The supply source can be, for example, the vendor, warehouse, or production line requesting the material. The SAP data element enabling this replenishment signal is called the control cycle. The control cycle sets the number of Kanbans circulating between the supply source and the demand source. The supply source typically represents the consumer of the Kanban materials, for example, a production work center or an external customer. Each Kanban represents a specific material type or group of materials (for example, a kit), a quantity, and a type of container. This process flow is illustrated in Figure 1. Demand Source
Key Kanban Card Material Continer
Types of Kanban
There are two general methods of running Kanban: • Supplier Kanban (Kanban cycle between supplier and work center), also known as external Kanban. In this process, the Kanban
Scheduling Board
Mail Box
Figure 1: Kanban Process Flow
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Knowing that Kanban is the Japanese word for visual (kan) and board (ban), we should note that as long as the Kanban container holds material, the Kanban card or board is attached to it. When the full material quantity of a Kanban is consumed, the Kanban card becomes the trigger for replenishment. In SAP, this trigger is activated by setting the Kanban to an “empty” status. When the Kanban is set to empty, the Kanban replenishment signal is sent to the supply source, requesting the Kanban container be refilled and the Kanban status set to “full”.
There is never more material circulating between the demand and the supply source than the sum of the Kanbans and their respective lot sizes. The lot size of the Kanban determines how much material the supply source sends. If the lot size is large, then there will be fewer replenishments and less Kanban circulation between the demand and supply source. Conversely, if lot size is small, then more Kanbans will circulate with less material. Consequently, inventory levels will remain lower but more material handling is required. Note: There is never more material circulating between the demand and the supply source than the sum of the Kanbans and their respective lot sizes.
SAPtipsJournal
Page 10
SAPtips4On Warehouse Maintenance
Let’s focus now on the distinctions between supplier (external) Kanban and the internal Kanban approach. Supplier Kanban There are two primary methods to execute a supplier Kanban cycle: • Schedule Agreement – Setting the Kanban status to “empty” sends a signal to the supplier through a schedule line or through a just in time call (JIT call), representing multiple schedule lines summarized in one document. Note: A purchase order can be used to satisfy the Kanban replenishment request, but a schedule agreement often represents a better solution because of the inability of purchase orders to automatically group replenishment requests.
• Two Bin Approach – This method is managed by the Kanban material supplier and is considered Vendor Managed Inventory (VMI). Since the supplier manages the material, there is neither a goods receipt nor a goods issue of the material. The supplier will refill the Kanban containers set to empty by the demand source on a regular, pre-defined basis (weekly, daily, etc.). After filling the Kanban containers, the supplier sets the Kanban to “full”. Internal Kanban Using internal Kanban, material is stored in the warehouse (again, WM or IM managed), and the warehouse responds to the demand source’s request for replenishment. A WM managed warehouse will trigger a transfer requirement and subsequent transfer order moving materials from the warehouse to the demand source. In an IM managed warehouse, a reservation requests the material move. Material receiving into the warehouse is performed through the normal purchasing or production processes. For example, purchase order or schedule agreement receiving in the case of purchased materials, and production order receiving in the case of produced materials.
Kanban Configuration and Master Data
• Material master – set the MRP 1 view to MRP type PD, which is described as “MRP”. On the MRP 2 view, set the view procurement type to F – external procurement, assuming the material is purchased. • Storage locations – transaction MMSC shown in Figure 2 will enable storage location configuration for MRP. When using supplier Kanban, set the MRP indicator to 1 – storage location excluded from MRPPlanning. When using internal Kanban, set the MRP indicator to 0 – storage location stock also planned at plant-level. Note: These settings are also controlled at the material master level using the MRP 4 view and adjusting the “SLoc MRP Indicator” field. • Maintain supply area for storage location – The production supply area is defined using transaction PK05. A single storage location is assigned to one or many supply areas; however, the reverse is not true. In other words, one supply area cannot be assigned to multiple storage locations. As seen in Figure 3, the supply area is assigned to a single plant, storage location, and responsible person. The responsible person is often the same as the MRP controller in a push environment.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 2: MMSC Enter Storage Locations Collectively
SAPtipsJournal
Page 11
SAPtips4On Warehouse Maintenance
Figure 3: PK05 Change Supply Area
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3 Figure 4: PK03 Display Control Cycle
• Create Kanban Control Cycle – Transaction PK01 sets the Kanban control cycle. The results of this setup are shown in Figure 4. The rules for replenishment between the supply and demand source exist in this data element.
SAPtipsJournal
Page 12
SAPtips4On Warehouse Maintenance
Kanban Control
Kanban control refers to the method of setting the Kanban cards to either “empty” or “full”. When set to empty, the signal is sent to the supplier to replenish the Kanban. When set to full, the demand source knows Kanban parts are available. There are a number of methods to control the Kanban signals. These include:
Figure 5: Transaction PK21 – Kanban Signal
• Manually using transaction PK21 (Figure 5) • Barcoding using transaction PK21 (Figure 5)
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
• Kanban board using transaction PK13N (Figure 6) There are six status settings available in PK21 (see Figure 5), and two available in PL13N (see Figure 6). The most important statuses are shown in Figure 6. These are again “empty” and “full”. When a card is set to “empty”, a signal is sent to either the warehouse (in the case of internal Kanban) or the supplier (in the case of supplier Kanban), to replenish the Kanban materials.
Figure 6: Transaction PL13N – Kanban Board
After materials are received from either the external supplier (on a schedule agreement or purchase order), internal production (on a production order) or from the warehouse, the Kanban card is re-set to “full” by either posting a goods receipt, scanning the Kanban barcode, or flagging the Kanban card to “empty”, using transactions PK13N or PK21.
Conclusion
SAPtipsJournal
Page 13
SAPtips4On Warehouse Maintenance
By using the Kanban principles discussed in this article, your company can gain control over one of the most important key process indicators (KPIs) in your supply chain, reduced inventory levels. Reduced inventory levels occur by moving from an MRP-based replenishment strategy (where reorder points are calculated and material is received in large quantities) to a strategy where only inventory required for the short term is stored. The ability to reduce the “bullwhip effect,” which occurs when each member of the supply chain independently forecasts demand and includes their own safety stock buffers, is yet another benefit of going to a Kanban replenishment strategy.
Bruce Rishel, Perot Systems (Dallas, TX) has over nine years of SAP systems consulting experience, during which time he has served as both functional and technical leads and as a project manager. Bruce specializes in logistics and supply chain solutions and has experience implementing the materials management, sales and distribution, production planning, and logistics execution modules. He also has significant experience integrating external logistics systems with SAP. Bruce helps companies implement and grow their supply chains across the globe. He continues to work “hands on”, helping his clients realize their potential. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
Kanban processes require tighter integration with the warehouse, in the case of internal Kanban, and tighter integration with suppliers, in the case of supplier Kanban. In either case, the party supplying the Kanban needs to be available on short notice to re-fill the Kanban container. Keeping inventory low also requires that the containers are refilled more often than in the traditional MRP-based replenishment strategy; this can result in increased inventory handling costs. These increased material handling costs, however, should be balanced against the benefits of additional floor space and reduced inventory levels when considering the Kanban solution.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 14
SAPtips4On HR ESGs and PSGs: What Do You Need to Know About SAP ’s Personnel Areas and Employee Groups? ®
By Satish Badgi, SAP HR Consultant Editor’s Note: The title says it all… there’s a lot to know about Employee Sub-Group groupings and Personnel Sub-area groupings, especially in SAP’s Time Management, module. Fortunately, our SAP HR expert Satish Badgi can help sort out what’s what with ESGs and PSGs, and help you to get a better understanding on how you can use these groupings to your advantage.
Introduction
Most of us already know about Personnel Areas, Personnel Sub-areas, Employee Groups, and Employee Sub-groups. However, many of us are not clear about Employee Sub-Group Groupings (ESG) as well as Personnel Sub-area Groupings (PSG). Especially when you get to SAP’s Time Management module, these groupings become very involved and can get very confusing. Through these groupings, SAP has extended tremendous flexibility in various sub-modules to map the functionality to organization rules and policies. The flexibility can be well utilized if we make attempts to understand the concepts behind the groupings. This article takes a simple approach to learning and understanding the groupings in different SAP HR sub-modules. Although, you will see the ESG and PSG at various places in the configuration of HR sub-modules, they are different from each other and should be considered in the context. Example: ESGs and PSGs in the time management work schedules are different from ESGs and PSGs in absence management. Before we get to the detailed discussion, let me present some simple definitions:
ESG – The ESGs are the groupings of Employee SubGroups that share common rules and ways of doing things. The ESGs have an indirect impact on Employee Groups due their relationships with Employee Groups. How do we understand the “common business practices, policies, and rules”? It is easier said than done! We will try to use examples in this article, and as you work more with these groupings, it will be increasingly easier to understand. The contents of this article are applicable to all the versions from 4.6C through to ECC since the concepts of PSG’s and ESG’s has not changed across these versions.
Groupings in Personnel Administration
The groupings in Personnel Administration (PA) or, for that matter, in Organization Management (OM) module are almost non-existent. The reason is simple; both these modules use the basic HR structures for the differentiation and have no need for any rule-based logic. The PA and OM modules are primarily employee master data maintenance oriented modules, and hence are not affected by the ESG and PSG. Figure 1 shows the IMG path to one single place where the groupings are configured in the PA module. However, this configuration is geared towards payroll rather than PA, and you will notice that it is under the Basic Pay node of IMG. We will discuss this grouping later in this article when we discuss the impact of groupings on Payroll.
PSG – A grouping of Personnel Sub-areas that will share a common policy, rules, and philosophy of doing business. Please remember that Personnel Sub-areas have relationships with Personnel Areas, and hence there will be an indirect impact of groupings to the Personnel Areas. Figure 1: ESG and PSG in PA Module
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Groupings in Time Management
The Time Management module probably has the greatest number of PSG’s and ESG’s in the configuration. Within the Time Management module, there are many places where the groupings have different contexts. Let us start with Work Schedules. Work Schedules To be able to understand the groupings in work schedules, let us look at Figure 2, which shows the generation of a work schedule rule. While you are working with ESG and PSG in the Work Figure 2: ESG and PSG in a Work Schedule Rule Schedule section of Time Management, your focus should be on the generation of rules (Figure 2). Example: If we have hourly employees across different employee groups/subgroups who follow a similar holiday calendar or have a policy with similar work schedule related rules, then all such Figure 3: PSG for Work Schedule employees will follow a common ESG and PSG to generate one or multiple work schedule rules.
SAPtipsJournal
Page 15
SAPtips4On HR
Figures 3 and 4 (respectively) present the PSG and ESG related to a work schedule rule.
Figure 4: ESG for Work Schedule
As we discussed earlier in the article, the impact is visible on Personnel Areas and Employee Groups, too.
While you are working with ESG and PSG in the Work Schedule section of Time Management, your focus should be on the generation of rules.
Absences You will come across the groupings once again, as you move into the configuration of the Absence Management area of Time Management, as shown in Figure 5. Let us list these different groupings and their impact. PS Grouping for Absence Types – The PS (Personnel Sub-area) groupings for absence types help you to decide those personnel sub-areas that follow a common holiday calendar, and therefore can follow common absence types. In the configuration of absence types, therefore, we have PS groupings as the starting point.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3 Figure 5: Groupings in Absence Management
Although, these groupings have different context and meaning than the work schedule related groupings that we discussed, I always find it easier to use the same numbering scheme. Example: If you have used grouping 10 for certain Personnel Subareas earlier, continue to follow the same numbering convention of 10 (or 20 or 30) in other areas, too.
SAPtipsJournal
Page 16
SAPtips4On HR
PS (Personnel Sub-area) and ES (Employee Sub-group) Groupings for Absence Quotas – The absence quotas creation uses both ESG and PSG, which are relevant in the quota configuration. Figure 6 shows that the ESG and PSG are configured earlier in the IMG, while they are actually used slightly later (when we create absence quotas). I always find it slightly confusing that the “Rules for Absence Counting” and “Managing Time Accounts” nodes of IMG are slightly separated from each other.
Figure 6: PSG and ESG for Absence Quotas
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 7: Creation of Absence Quota
Just like we kept our focus earlier on the creation of the Work Schedule rule, in this area we need to keep our focus on the creation of absence quota. Figure 7 shows the Absence Quota creation screen where the ESG and PSG come together. PS (Personnel Sub-area)Groupings for Substitution and Availability – Figure 8 shows the IMG nodes for PS groupings for Availability and Substitution functionality in time management. However, note that it is the same table, and these groupings are not different from the ones we configured in the absence quota. Once again, Figure 8: Availability and Substitution it can get confusing when you see the different nodes at different places in IMG. However, they are the same PS groupings that we payroll rules as we will see a little later in this used earlier. article.
SAPtipsJournal
Page 17
SAPtips4On HR
Let us move the discussion to the Payroll module.
Groupings in Payroll
The impact of Payroll groupings is slightly less profound (compared to Time Management). However, there are two key areas in which you need to know the roles played by the PSG and ESG.
• ESG for CAP – Collective Agreement Provision (Union Agreements) – These are helpful to control the pay scale structures in Basic Pay Infotype 0008. Wage Types Permissibility – There are “not so obvious” areas in SAP HR where the PSGs and ESGs can affect your configuration. Wage type permissibility is
Payroll Rules – Earlier, in Section 2, we saw the IMG node in the PA module. Figure 9 shows the details of the ESGs that are configured and have impact on – • ESG for PCR (Personnel Calculation Rules) – These are used in
Figure 9: ESG for PCR
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
one such place. You can use wage type permissibility to make the wage type permissible or non-permissible with the concerned Infotype. Example: You have a certain earning (or deduction) which is entered through Infotype 0014 and Infotype 0015. This wage type is only applicable for hourly employees in a particular location. You can configure the PSG for that location, as well as the ESG for the hourly employees, and turn the switch on (as shown in Figure 10). In the event, this wage type is permissible for all ESGs and PSGs, then the switches will be turned on for all groups, as the example in Figure 10 shows.
Figure 10: PSG and ESG Usage for Wage Type Permissibility
Coding Payroll Rules – ESGs can be used to manipulate wage types in different manners in your payroll rules. You can refer to my earlier article on Payroll Rules Cookbook (8/1/2004) in the HR category of the SAPtips Document Library.
Conclusion
If you follow a structured modules-based approach (PA, Time, Payroll) to handle ESGs and PSGs, they are not difficult to manage. Although ESGs can get confusing in the Payroll and Time Management modules, proper documentation of applicable IMG nodes and a solid enterprise structure will always help you to avoid confusion. It is normally a good idea to translate the organization policies and rules in the Payroll and Time Management modules for the appropriate grouping before you embark on to the Build/Realization phase of the implementations.
SAPtipsJournal
Page 18
SAPtips4On HR
Satish Badgi, SAP HR Expert. Satish is a senior consultant with specialization in SAP HR and Payroll. He has over ten years of experience implementing and supporting SAP systems across multiple countries in a variety of industries. In his recent engagements, Satish has been involved with implementing SAP payroll systems in complex Public Sector environments and integrating them with Finance, Costing, and Funds Management. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 19
SAPtips4On Logistics / APO and Supply Chain Management SAP ’s SCM 5.0: A Kinder, Gentler Demand Planner ®
By Ranjan Sinha, Lead APO Technical Analyst Editor’s Note: Demand Planning using APO used to be a drag—and not the drag and drop kind, either. Many planners stuck to Excel because APO 4.0 just wasn’t as easy to use. Well, if you’re one of those dedicated Excel users, and your company has migrated to SCM 5.0, Ranjan Sinha presents a compelling case for taking another look at what SAP’s tool has to offer. Ranjan highlights the improvements that SAP has made to this functionality with the new release. If you’ve been shying away from using SAP’s Demand Planning tools, this article presents them in a whole new light!
Introduction
Demand Planning is a tool within APO (Advanced Planner and Optimizer) to support the forecasting and product allocation planning process in your company. The tool relies on the interactive planning books and the ability of the end user to customize the views to make it flexible. In spite of the wide array of tools and functionality that is available within Demand Planning; it is tough to wean users away from APO’s competitor, Excel. Many APO implementations run into rough weather and have trouble getting “user acceptance” and “user adoption” simply because users prefer the flexibility (particularly the ability to customize the views) that is present in Excel. This remains true even though APO is much more versatile in its integration with an ERP system. If you’ve been looking for a way to lure more users to play for the APO team, take heart. SAP’s Supply Chain Management (SCM) release 5.0 provides the kind of user-friendly structure to make you cheer.
• A more flexible drill-down feature and enhanced Header Display • An option for “Fixing” multiple cells within the Planning Book • Recognition of a “Zero” and a “Null” value in a cell • Enabling the “offline” planning functionality • Simple formula calculations by selecting multiple cells We will look at the above features in more detail in the following sections. The reference point in comparing the new features will be APO 4.0.
Saving the Planning Book Settings
In APO 4.0, the user could select the key figures that she or he wanted to view; however, these settings were lost when the user exited Interactive Demand Planning. This was painful from a user perspective. In 5.0, the user can save the settings, and they are available every time the user logs on to the same Planning Book. Figure 1 shows a snapshot of a Planning Book. We will see how the view can be customized to display only certain key figures that the user would like to see every time he gets into the same Planning Book.
The New Features of SCM 5.0 in Demand Planning
Some of the new features in SCM 5.0 that enhance the “user friendliness” are: • The ability to save the Planning Book settings • The option to switch “Time Buckets” (in which the user can view the data)
Figure 1: A Sample Planning Book
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 20
SAPtips4On Logistics / APO and Supply Chain Management The user-specific settings can be invoked by clicking on the “Maintain user Settings” button, highlighted by the arrow (and enclosed in the red circle) in Figure 2. This brings up the following screen where, in the “Hide Key Figures” tab, the user can select the key figures that have to be hidden. In my example, I will hide all but the three key figures (the ones which are not selected). Notice also that the settings can be made specific to a Selection ID for a particular user. However, if Figure 2: Invoking the User Settings the same consistent data view is required across all Selection IDs, then these settings should be made without the Selection ID, as shown in Figure 3. Once the settings are made, only those three key figures will be displayed for that particular user. Notice also that these are user specific, so that Planner 1 can choose five different key figures to be displayed, while Planner 2 could choose three different key figures that he is primarily interested in. The second tab in the user settings offers the option to select the Unit of Measure (or currency) in which the user wishes to view the data. For example, there could be Figure 3: Selecting Key Figures to Be Hidden a Pack of 10 Compact Discs. User 1 could be interested in viewing this item in “Eaches”, whereas User 2 would show the Products in the “shuffler”. However, when the want to simply view the data in “Packs” (see Figure 4). user double clicks to load data for a certain Product, the user would immediately want the data to show all The third tab, Navigation Path (Drilldown), offers the the Plants where the Product could be sold from, as well ability for the view to be automatically “drilled-down” as all the Customers that could buy Products from that to the level at which the user would like to view data. Plant. So, in the Navigation Path (Drilldown) view, one In simple terms, let us say the Selection ID is defined to would select the desired characteristics(see Figure 5).
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 21
SAPtips4On Logistics / APO and Supply Chain Management
Figure 4: Selecting the Unit of Measure and Currency
The fourth tab corresponds to the Pivot Sorting, functionality where one would specify the order in which the Characteristics and the Key Figure would be displayed. For example, you Figure 5: Selecting the Navigation Path (Drilldown) may want the selected key figures to be displayed for all the characteristics displayed in the Planning Book. Figure 6 shows the Pivot Sorting tab view. The combination of Figures 5 and 6 results in the display in the Planning Book (shown in Figure 7). Notice that all the key figures get displayed for any “Characteristic Combination” chosen. The ability to “store” the Pivot Sort greatly enhances the user friendliness of the Planning Book Display.
Figure 6: Pivot Sorting
Changing the Time Bucket Profile
In APO 4.0, it was not possible for the user to change Figure 7: Display of Planning Book (Based on the Navigation Path and Pivot Sorting) the Time Bucket Profile to view the data. The Time Bucket profile would be restricted to the definition in To switch the Time Bucket Profile, the user would have the Data view. With SCM 5.0, it is possible to dynamito click on the Period Structure corresponding to the cally change the Time Bucket Profile. In the Data view, arrow highlighted in the red circle in Figure 8. Clicking the Time Bucket definition is defined in “Weeks”. The on the Period Structure brings up the screen as seen in user could choose to switch to a monthly or a quarterly Figure 9, which has the various Time Bucket Profiles view of the data in the Planning Book. that can be selected for viewing the Data.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 8: Selecting the Period Settings to Change the Time Bucket Profile
Figure 12 shows an example of the Planning Book in which the Header information shows both the ID and the Description. Figure 9: Selecting the “Time Bucket Profile”
Enhanced Header Display and a More Flexible Drill Down
In SCM 5.0, there is a more enhanced Header Display with the ability to select both the Characteristic value as well as the description corresponding to the characteristic values. In APO 4.0, it used to be tricky, where only the value or the description was possible, but not both. The enhanced Header Display can be invoked by clicking on the icon indicated by the arrow (again in the red circle) in Figure 10.
Figure 12: Header Showing Both ID and the Text
For any of the characteristics that are shown in the Header, it is possible to perform a “Details All”, or select multiple values, as shown in Figure 13. In APO 4.0, the option (of selecting multiple values) was not possible.
In the screen in Figure 11, one could select both the ID and the Text to display in the Planning Book.
SAPtipsJournal
Page 22
SAPtips4On Logistics / APO and Supply Chain Management
Figure 13: Option to Select All or Multiple Values
Figure 10: Selecting the Header Information Settings
Once you click on the option Details (Filter), it brings up the screen (shown in Figure 14) where the multiple values can be selected.
Figure 11: Selecting Both the ID and the Text to Display in the Header
Figure 14: Selecting Multiple Values
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 15: Fixing Multiple Cells
Figure 16: Multiple Values Fixed
Figure 17: Fixing a Zero Value
“Fixing” Multiple Cells within the Planning Book
In APO 4.0, if a key figure was fixable, you had to fix one cell at a time. In SCM 5.0, it is possible to select multiple cells and apply “fixing” for all of them. For example, in the screen shown in Figure 14, the “Allocation Plan” is a fixable key figure, and multiple values have been selected to fix. Once we click on the Fix cells(s) (Figure 15), all the cell values get fixed, as seen in Figure 16.
Recognition of a Zero and a “Null” Value in a Cell
SAPtipsJournal
Page 23
SAPtips4On Logistics / APO and Supply Chain Management
SAP has finally agreed to differentiate between a Null value and a zero with SCM 5.0. In APO 4.0, if a cell showed blank, you would have to guess whether the user has deliberately entered a value of 0 or just left the cell blank. In 5.0, it is still not possible to tell, although
internally SAP will recognize whether the value is the default initial or whether a zero was entered. The only clear way, if the key figure was fixable, was to enter a zero and then fix the cell as shown in Figure 17.
Enabling the Offline Functionality
Here SAP finally recognized that if you cannot keep the Planners away from Excel, it is better to just enable the users to download the Planning Book to Excel, and have the ability to upload information back from Excel (the same file that was downloaded and, mind you, no format changes are allowed in that file).
Simple Formula Calculations by Selecting Multiple Cells.
Simple formula calculations are enabled by selecting multiple cells and right clicking, which brings up the screen that enables formula calculations to Total or calculate a Mean value (Figure 18).
Figure 18: Simple Formula Calculations for Total and Mean Value
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Conclusion:
It looks like with 5.0, SAP has made a serious attempt to enhance the user experience in the Planning Book. Whether it will result in Planners preferring APO over Excel remains to be seen! But combine the new functionality of 5.0 with a little coaching and support, and you could see APO finally begin to pay for itself. Ranjan Sinha works as an Information Systems Project Lead for a major electronics manufacturer. He has spent the last five years implementing different SCM application areas of SAP like Demand Planning, Supply Network Planning, and Global ATP. He also has nine years of SAP implementation experience with a deep background in SAP R/3, including Production Planning, Materials Management, and Logistics Information systems. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtipsJournal
Page 24
SAPtips4On Logistics / APO and Supply Chain Management
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
The Eliminator: Understanding Elimination of Internal Business Volume in Cost Center Reports By Sutrisno Japit, SAP Practice Manager, Japit, Inc. Editor’s Note: Reporting the true cost of a cost center group can be a challenge as internal cost exchanges can mess things up good. Sustrisno Japit has a neat way to exclude them, and ultimately, let you report the “truth.” If you’re looking to understand how internal business volume affects your cost center reporting and how to eliminate them, here’s just the article you’ve been waiting for!
tively. I prefer to use the latter to avoid mixing them up with the FI debit and credit (which means positive and negative).
Introduction
Do you know how to report the true cost of a cost center group? This seemingly “no-brainer question” has tripped up many SAP consultants and power users. In this article, I would like to explain how internal cost exchanges affect your cost reporting, and how you can exclude them in order to report the true cost of your cost center group. Even though all transactions in this article were executed in an IDES 4.70 x2.0 system, the function of elimination of internal business volume has been available since Release 2.1. If your release is before 4.70, be sure to research and implement any applicable OSS notes. OSS note 17491 (CO Reports: Elimination of Internal Business Volume) is a good place to start.
IN (Debit) and OUT (Credit) Buckets
SAPtipsJournal
Page 25
SAPtips4On Financials
Conceptually, a cost center can be thought of as having two separate cost buckets, namely: IN and OUT. The IN bucket collects incurred costs, whereas the OUT bucket collects the allocated costs. Upon month-end closing, the net difference of IN and OUT costs is allocated out to the consuming CO objects, thus netting the cost center to a zero balance. All postings made to the cost center are segregated into the IN and OUT buckets automatically. The system does this through a field called the “Debit/Credit Indicator” (COEPBEKNZ). As indicated in Figure 1, “D” identifies postings into the IN bucket, whereas the others identify postings into the OUT bucket. Note that the system actually uses the terms “debit” and “credit” for the IN and OUT buckets, respec-
Figure 1: Create CATT Test Case Attributes Screen
Through the use of the “Debit/Credit Indicator”, it is very easy to segregate the incurred costs from the allocated costs, thus reporting the true cost of a cost center. The standard “Cost Centers: Actual/Plan/Variance” report (S_ALR_87013611) indicates that “Cost Center A” has incurred and allocated $1,000 (see Figure 2). Pretty easy so far. Now, what if you are responsible for a group of cost centers, say A and B? Cost center A allocates all of its costs to cost center B, which in turn allocates them to the other CO objects (see Figure 3). In other words, there are internal cost exchanges between cost centers in my cost center group. What is the true cost of my cost center group then?
Figure 2: “Cost Centers: Actual/Plan/Variance” Report (Showing Incurred Costs and Allocated Costs)
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 26
SAPtips4On Financials
Figure 3: Internal Cost Exchanges Between Cost Centers in Cost Center Group “MY_GROUP”
The standard “Cost Centers: Actual/ Plan/Variance” report now indicates that my cost center group (MY_ GROUP) has incurred and allocated $2,000 (see Figure 4). This is absolutely not true! I have not incurred more costs, but I have allocated my costs through another cost center (i.e., A through B) in my group. Refer to Figure 4 an illustration of the following explanation: IN bucket • An external posting to cost center A Figure 4: “Cost Centers: Actual/Plan/Variance” Report (Showing Incorrect True Cost of Cost Center Group MY_GROUP) created a debit of 1,000 under 430000. Elimination of Internal Business Volume • Assessment to cost center B created a debit of 1,000 In order to eliminate internal cost exchanges from the under 648400. “Cost Centers: Actual/Plan/Variance” report, I created a copy of it using transaction GRR1 (see Figure 5). I OUT bucket called my new report ZIBV. • Assessment from cost center A created a credit of 1,000 under 648400. • Assessment from cost center B (to the external CO object) created a credit of 1,000 under 648400. The internal cost exchanges from cost center A to B created additional incurred costs that were totaled when I ran the report for my cost center group. These internal cost exchanges should be excluded in order to report the true cost of a cost center group. Luckily, our friends in Germany have caught this early on, and created a field called the “Internal Business Volume Indicator (Cost Centers)” (CCSS-BUEKZ). This field is dynamically filled when the report is executed.
Figure 5: Creation of New Report ZIBV (Based on “Cost Centers: Actual/Plan/Variance” Report [1SIP-001])
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Through the [Edit ‡ Variation] menu path, I set the “IBV Elimination” checkbox for the “Cost Center” field (see Figure 6). I saved my report and ran it for my cost center group MY_GROUP. The report now correctly shows the true cost of my cost center group MY_ GROUP (see Figure 7). The internal cost exchanges between cost centers A and B have been excluded (or eliminated) from the report results.
Figure 6: Activation of the Internal Business Volume Elimination
Elimination of IBV for Costs Allocated through Internal Order
Let’s take it a step further. What if A allocated its costs to an internal order that was then settled to B (see Figure 8). Have our German friends thought about this and incorporated it in their solution? As expected, the standard “Cost Cen- Figure 7: New Report ZIBV (Showing True Cost of Cost Center Group MY_GROUP Through Elimination of ters: Actual/Plan/Variance” report Internal Business Volume) shows all costs that were posted to cost centers A and B including those generated by the allocation from A to B through the internal order. Refer to Figure 9 for the following explanation: IN bucket • An external posting to cost center A created a debit of 1,000 under 430000. • Settlement of the internal order to cost center B created a debit of 1,000 under 650000.
SAPtipsJournal
Page 27
SAPtips4On Financials
OUT bucket • Assessment from cost center A to the internal order created a credit of 1,000 under 648400. • Assessment from cost center B to the external CO object created a credit of 1,000 under 648400.
Figure 8: Allocation of Cost from A to B (Through Internal Order)
Figure 9: Internal Cost Exchanges Through the Internal Order Were Not Eliminated in the Standard “Cost Centers: Actual/Plan/Variance” Report
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
On the other hand, our new report ZIBV correctly eliminated internal cost exchanges between cost centers A and B, even though they were done through an internal order (see Figure 10). However, the entries look rather strange and require some explanation. IN bucket •An external posting to cost center A created a debit of 1,000 under 430000. OUT bucket • Assessment from cost center A to the internal order created a credit of 1,000 under 648400. • Settlement of the internal order to cost center B created a debit of 1,000 under 650000. • Assessment from cost center B to the external CO object created a credit of 1,000 under 648400. Compare Figures 9 and 10 very closely. Note that the debit and credit amounts are exactly the same. They differ only by the buckets to which the costs were posted, i.e., the IN bucket or OUT bucket.
Conclusion
All right then--let’s wrap this up. In your cost reporting, you may need to make use of the “Debit/Credit Indicator” and “IBV Elimination” flags in order to report the true cost of your cost center group. The “Debit/Credit Indicator” segregates costs into IN and OUT buckets so that you can identify incurred costs from allocated costs, whereas the “IBV Elimination” flag eliminates internal cost exchanges between cost centers in your cost center group. Sutrisno Japit, Japit Inc. Sutrisno has over ten years of SAP implementation experience. He specializes in the FI/CO modules and their integration to SD, MM, and PP. In addition to his functional knowledge, he is also an expert in user exit development, report development, and transaction automation. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
If the IBV elimination flag is activated, the system treats the internal order as an extension of cost center A. The settlement debit to cost center B is used to reduce the allocated costs of cost center A. This is smart design. In the case when the internal costs are only partially settled back to cost center B, this settlement debit will reduce the allocated costs by exactly the same amount as the internal cost exchanges between cost centers A and B.
SAPtipsJournal
Page 28
SAPtips4On Financials
Figure 10: Internal Cost Exchanges Were Eliminated in the New Report ZIBV (Even Though They Were Done Through an Internal Order)
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAP ’s New General Ledger in ECC 6.0: Document Splitting - Part II ®
By Anurag Barua, The Washington Post
Editor’s Note: Last issue, we teased you with some information on the new document splitting feature found in mySAP ERP 2005’s New G/L. Well, we don’t like to leave our readers hanging and hungering for more information (at least not for too long!), so Anurag Barua returns this issue to continue his series. This time, he delves deeper into the various facets and benefits of document splitting, including the configuration steps needed to get you up and running with this neat new feature.
documents as part of your period-end closing processes; this may have resulted in a protracted closing process. By using document splitting, you can accelerate the closing process.
By using document splitting, you can accelerate the closing process.
Introduction
In the April/May 2007 issue of SAPtips, I walked you through the key concepts of the New General Ledger (New G/L) in Enterprise Core Component (ECC) 6.0 in the mySAP® ERP 2005 application. I also briefly introduced you to the new document splitting feature – a feature I believe is worth flaunting. In Part II of this series, I will go into the concept of document splitting and will walk you through some of important configuration steps you will need to carry out before you can leverage this feature. Part III, which will conclude this series, will be on the remaining configuration steps, other aspects of document splitting, and some tips and tricks.
Why Document Splitting?
SAPtipsJournal
Page 29
SAPtips4On Financials
Document Splitting with a Vendor Invoice: An Example
Let’s try to get an understanding of document splitting from an accounting standpoint. Table 1 shows you a snapshot of account postings for a vendor invoice in the classic G/L (i.e., without document splitting). This invoice (for $140) is posted to a couple of expense lines. Expense 1 belongs to Segment A, and Expense 2 belongs to Segment B. The debit side is made up by a $20 input tax amount.
Before we get into the intricacies of splitting, it’s worthwhile discussing why document splitting is required. Because of the ability to add new (custom) fields and apply document splitting based on these custom fields, you can create various reports such as income statements, balance sheets, etc. on a more focused and segmented level. The ability to engineer document splitting online (and therefore in real time) is a big benefit, because the information is current and the integrity of the displayed data is maintained. Before the advent of the New G/L, you may have had to run some programs to split Table 1: Account Postings in a Non-Split (Classic G/L) World
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Table 2: Account Postings After Document Splitting in the New G/L
Now let’s assume that we have configured our New G/L to split at the segment level. Table 2 depicts the result of this split. You will notice that the vendor line and input tax lines are split on a segment level, and the amounts allocated to the lines are in the same ratio to the amounts in the expense lines in the two segments.
SAPtipsJournal
Page 30
SAPtips4On Financials
Earlier, I had mentioned that document splitting enables segment reporting. It is easy to see how the balance sheet would have looked when reporting was done on Segments A and B prior to splitting. Obviously, it would not have been a balance sheet at a segment level. After splitting, complete balance sheet reporting on segment-level is possible, as you can see in Tables 3 and 4.
Table 3: Balance Sheet – Based on Segment A
Key Configuration Steps
In the IMG menu, configuration for document splitting is done by navigating to the selection, as shown (by the options highlighted in green) in Figure 1.
Table 4: Balance Sheet – Based on Segment B
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3 Figure 1: Navigating to Document Splitting Configuration in the IMG Menu
Now, let’s look at the individual configuration items:
SAPtipsJournal
Page 31
SAPtips4On Financials
• Classify G/L Accounts for Document Splitting – In this activity, for a given chart of accounts, you’ll enter the G/L account range for which document splitting will be active. This means that whenever a document line item is posted to a G/L account in this range, the line should be split, provided that all the other configuration activities have been Figure 2: Configuration of G/L Accounts for Document Splitting completed. The most important aspect of this piece of configuration is assigning an item category, as shown in Figure 2. •D efine Zero-Balance Clearing Account – This step allows you to define the clearing account for one •C lassify Document Types for Document Splitting of the key features of document splitting discussed – In this option, you’ll need to enter a business transpreviously – the ability to achieve and display a zero action and a variant in order for the system to figure balance. Once you have defined the clearing account out which splitting rule should be used. The docuwith the desired posting keys, the system will check ment type has a big influence on document splitting. if the balance in the Account Assignment Objects is Therefore, you need to specify a business transaction zero after the split takes place. If it is not, it will clear variant, because this is the link between the document additional clearing lines and these will be assigned to type and item categories. This configuration step is the defined clearing account, as shown in Figure 4. seen in Figure 3.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 3: Classifying Document Types for Splitting in the IMG Menu
SAPtipsJournal
Page 32
SAPtips4On Financials
Figure 4: Specifying a Clearing Account for Zero Balance Clearing
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 33
SAPtips4On Financials • Define Document Splitting Characteristics for General Ledger Accounting – This is an extremely important configuration step. Here, you specify the characteristics for which you want document splitting to be active. Keep in mind that in order to specify Figure 5: Customizing for Document Splitting Characteristic(s) characteristics for splitting, those characteristics need to be part of your ledgers. You can specify whether you want to make the automatic population of this characteristic (during document splitting) mandatory. Note: If you turn this “Mandatory Field” flag on, the system will not allow you to make a document posting if the splitting characteristic is not populated. You can also specify whether you need a zero balance setting to be achieved for Figure 6: Activation of Document Splitting the characteristic you have chosen to split on. This setting works in conjunction with the •A ctivate Document Splitting – In this step, you’ll previous configuration step; for the zero balance setactivate the document based on SAP-delivered ting to work properly, you need to assign a clearing standard splitting rules. If you want to use your own account so that in the event that the split for a given splitting rules, you will have to create them; I will characteristic does not balance out, additional clearcover this option in the final part of this series. Once ing lines are generated for the clearing account. You you turn on the “Document Splitting” flag, all comcan specify a Partner field; this will work in conjuncpany codes in that specific client will be enabled for tion with the Zero Balance indicator. The Partner field document splitting. So, what do you do if you want acts as the conduit to a sender-receiver relationship to exclude specific company codes from being subject when additional clearing lines are generated as a to document splitting? The answer is that there is an result of the zero balance setting. Figure 5 shows the additional configuration that you can perform in this configuration for customizing the document splitting step that allows you to do so. characteristics. When you double-click on the “Deactivation per Company Code” dialog structure (on the left in the screenshot in Figure 6), you will be taken to a screen where you will have the opportunity to turn off individual company codes. Figure 7 shows the screen that is displayed when you double-click on “Deactivation per You can specify a Partner field; Company Code” in the dialog structure. In order to turn this will work in conjunction with off any particular company code, you need to flag the corresponding check box (labeled “Inactive”).
the Zero Balance indicator.
In this part of the series, I provided you with the various facets and benefits of document splitting and walked you through the important configuration steps that you would need to carry out to achieve document splitting.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 7: Disabling Document Splitting Per Company Code In The IMG Menu
I hope you enjoyed learning more about this key feature in SAP’s New G/L and will be able to leverage the information in this article. In the final part of this series, I will walk you through the remaining configuration steps, other aspects of document splitting, and some useful tips and tricks.
SAPtipsJournal
Page 34
SAPtips4On Financials
Anurag Barua is Manager, SAP Application Support for the Customer Competency Center (CCC) at The Washington Post. He has 14 years of experience in conceiving, designing, managing, and implementing complex software solutions, including nearly 9 years of SAP experience. He has been associated with several SAP implementations in various capacities. Anurag’s core SAP competencies include FI/CO, Logistics, BW/BI, NetWeaver, ABAP, SOX compliance, reporting, and Project Management. Anurag is a frequent speaker at various SAP conferences and contributes to several publications. He has a B.S. in Computer Science and an MBA in Finance. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Substitution Rules! Get Interactive with SAP ’s FI Substitution Rules ®
By Graham Smith, FI/CO Consultant
Editor’s Note: Validation rules can be great for ensuring a validated entry is made in a FI document field that has no standard associated value table; they serve the purpose of telling users “sorry, wrong value entered.” But what if you want your users to know what a “valid value” is for a particular field? Substitution rules can be of great help here, but don’t require input from users. There is a solution that can nicely resolve this dilemma. Graham Smith shows us how we can make use of “interactive” substitution rules, complete with a real-life case study and setup details!
Introduction
Consider the following scenario: When entering an FI document, you want your users to be required to enter some piece of additional data in a spare field. Having identified the field you’re going to use, you could perhaps make the field mandatory, through simple configuration of document type settings, or field status, or even using a transaction variant.
SAPtipsJournal
Page 35
SAPtips4On Financials
But let’s say the field you’ve chosen to use is not associated with a value table, (i.e., a list of maintainable valid values) – it may not be enough to make the field mandatory. You might want to ensure that the value the user enters meets some sort of logic. Such a requirement is frequently met using a Validation Rule; valid values can be held in a Set, and if the users enter an invalid value, they receive an error (or warning) message. But supposing there are lots of valid values – validation rules are great at telling the users they’ve entered the wrong value, but they’re not so good at revealing what alternative values would be acceptable. Sound familiar? Wouldn’t it be great to present the users with a list of valid values to choose from, in a similar way to the “drop-down” help they would typically get when using a field with an associated value table (such as Document Type, for example). For such a scenario, it’s worth rejecting the validation rule in favor of its sibling, the Substitution Rule. Substitution rules are generally used for filling a field using some predefined logic, without any explicit input from
the user (i.e., from the user’s point of view, it all takes place behind the scenes). A common example might be to copy the text from the FI document header into the line item text fields. This tip will show how the use of an “interactive” substitution rule, which does require some input from the user, can provide an elegant solution. I have used this functionality with version 4.6c forward, although I believe it was available with earlier versions. You can verify from SAP whether this is relevant to your release. The screenshots were taken from R/3 Enterprise 4.7.
This tip will show how the use of an ‘interactive’ substitution rule, which does require some input from the user, can provide an elegant solution. Detailed Scenario
In this particular scenario, my client implemented FI Accounts Payable, but not MM Purchasing. An internal audit review concluded that they should store in each online-entered FI A/P invoice document, the name of the person who had physically signed-off the invoice for payment, whom they termed the “budget holder”. The organizational structure was such that the budget holder was not necessarily the same as the cost-center manager, so there was no logical standard piece of master data representing the budget holder.
Solution
It was decided to store the name of the budget holder in the field XREF3 (Reference Key 3) of the FI Document Item table BSEG. A number of custom tables were created to hold the budget holder names as master data, and their assignment to users.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Although the user could type the budget holder name directly into XREF3, it was important to ensure that the name was valid (that it was an authorized budget holder for that user’s department), and that the name was spelled correctly (important for later reporting). Whereas a validation rule could easily carry out such validation, it was felt that it was important to present the users with a list of valid values from which they could choose. Enter the “interactive substitution rule”; instead of simply copying a value from one field to another without user involvement, we present the users with a list of valid values, and then copy their chosen value to the designated target field.
Figure 1: Entering an Invoice
The key to the solution lies in the use of one of a number of standard SAP function modules that result in a popup window. The substitution needs to be in the form of an ABAP exit in which you:
SAPtipsJournal
Page 36
SAPtips4On Financials
• derive the valid values by reading a set, or custom tables as appropriate • pass them to a function module such as POPUP_ WITH_TABLE_DISPLAY • move the user’s chosen value to the designated target, in our case BSEGXREF3.
Figure 2: The Result of the Substitution
Figure 1 shows an example of an invoice being parked using transaction FV60; on saving or simulating, the substitution rule is triggered and the user receives a popup window prompting him to select a value.
In Figure 2 we can see that the selected value has been copied into the target field XREF3 (note we have changed the description from Ref. Key 3 to Bdgt Hldr). Figure 3 shows the details of the particular step in the FI substitution line item rule. It is important to note
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 37
SAPtips4On Financials here that the interactive nature of such a substitution rule means it should not be allowed to be called in background processing, such as an Idoc interface or batch input, since it requires user input to select the valid value. Consequently it is important to put some logic either in the Prerequisite, or in the user exit coding, such that the substitution will only be called in the case of the appropriate transactions entered online. In my example, I have specified the Enjoy transactions FV60/ FV65, which are normally used exclusively online. However, if you want your “interactive” substitution to be called by a transaction that may also be used in background processing, then you will need to find some other way of limiting it to online processing (perhaps by specifying document type, or user id). You might also want to exclude background processing and batch input in the prerequisite by reference to the ABAP system fields SYST-BATCH and BINPT.
Figure 3: Details of the Substitution Step
Function Module Demonstration
For those of you who may be interested in learning more about the function module Figure 4: Supplying the Import Parameters POPUP_WITH_TABLE_ DISPLAY, I’ll provide a demonstration (see Figure 3) using the Single Test feature within transaction SE37: In Figure 5, we see the rows of data that are being passed to the internal table VALUETAB. In my demonFigure 4 shows how the size, position, and title of the stration, I’m passing four rows, of which the first two popup window can be determined. are intended as column headings.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 38
SAPtips4On Financials
Figure 5: Supplying the Internal Table with Values
Upon execution, the function module presents the popup window (Figure 6), inviting the user to select a value or to cancel. It’s worth noting here that you could make the depth of the window variable, according to how many rows you are passing; in the case where the number of rows exceeds the depth (parameter ENDPOS_ROW in Figure 4), the popup window will introduce a scroll bar, allowing the user to scroll down (if necessary) to find the desired value.
After the user has selected a value, the function module will return the index of the chosen row, via the export parameter CHOISE (Figure 7). The ABAP code then simply needs to read the internal table with the returned index, to establish the chosen value. If the user cancels the popup window, the value returned in CHOISE will be zero. You may not want the users to be able to cancel, and you certainly won’t want them to be able to select one of the column heading rows (which, as far as the function module is concerned, are the same as any other row). In my demonstration example, this can be achieved by effectively re-presenting the popup window whenever the value returned in CHOISE is less than or equal to 2 (0 being cancel, 1 and 2 being column headings). This re-presentation happens so quickly that from the user’s point of view, the popup window remains on the screen until they choose an acceptable value. From a coding perspective, this can be achieved by placing the code within a DO….ENDDO loop; if the user chooses an unacceptable value, the statement CONTINUE will restart the loop, so that the popup window will remain on the screen until an acceptable value is chosen.
Figure 6: Popup Window Which Appears on Execution
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 7: Table Index Value Returned by the Export Parameter
Summary
Hopefully this article has demonstrated how for online FI document entry, with appropriate ABAP user-exit coding you can use substitution rules rather than validation rules to achieve much the same end result – i.e. a validated entry in a field which has no standard associated value table – but with a much more powerful interaction with the user.
SAPtipsJournal
Page 39
SAPtips4On Financials
Because of their flexibility, and the ability to incorporate user exits, I find that validation and substitution rules are amongst the most powerful tools available to the FI consultant, and yet I frequently come across implementations where they have been barely used, if at all. SAP Note 842318 titled “Frequently asked questions about validations and substitutions” is a very useful source of information on the subject. Graham Smith is an independent consultant specializing in SAP’s FI and CO modules. Graham has 12 years SAP experience, including 8 years working for SAP(UK) as a Principal Consultant. Although primarily a functional consultant, Graham also has extensive technical experience, and has consulted in cross-application technology areas such as data archiving and IDoc interface development. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
What’s New?: NetWeaver™ 2004s BI Reporting Tools By Peter Scott, SAP Practice Director at Traxion Consulting Inc. Editor’s Note: If you haven’t checked out the BW’s reporting tools since the release of NetWeaver 2004s, you may be missing out on some great enhancements and new opportunities when it comes to reporting and analysis. Peter Scott gives us an overview of what’s hot with what’s now known as NetWeaver BI, particularily the BEx tools. If you’ve considered taking your reporting analysis needs to a third-party tool—don’t make a move until you’ve read this article! The collection of reporting tools for SAP’s Business Warehouse (BW) has been significantly beefed up with the highly touted release of NetWeaver 2004s. With many productivity enhancements to existing tools, and the addition of some promising new applications, SAP’s latest offering should give customers fresh new reasons to consider BW vs. 3rd party reporting tools for their reporting and analysis needs. As of NetWeaver 2004s, Business Warehouse (BW) has been re-branded as SAP NetWeaver BI. Within SAP NetWeaver BI are three scenarios aptly labeled as: 1) Enterprise Reporting, Query and Analysis 2) Business Planning and Analytical Services 3) Enterprise Data Warehousing
Each of these tools has been enhanced (if not all together re-written) with a state-of-the-art user interface; this interface provides productivity improvements through support of multi-selected objects in a Visual Basic .NETbased, Unicode-compliant tool. Since developing reports with a new interface usually results in additional training and migration efforts, it is significant to note that the new version of BI found in NetWeaver 2004s comes bundled with the previous version of the tools (BW 3.5 from NetWeaver 2004). This allows customers to continue with the status quo and to have the luxury of migrating to the new BEx Tools and features once they become familiar and comfortable with them. The new version of the BEx tools is also backwards compatible, so it will be helpful with migrating existing queries and web applications to take advantage of new enhancements. BEx Query Designer The BEx Query Designer is one tool that has been completely redesigned. One of the most common complaints of the previous version was the inability to modify properties for more than one object simultaneously. This has been resolved, as support for multi-selected objects now exists (see Figure 1).
Enterprise Reporting, Query and Analysis
SAPtipsJournal
Page 40
SAPtips4On BW
BEx Tools In this article, I will focus on the Enterprise Reporting, Query and Analysis functionality within the Business Explorer (BEx) Tools that constitute the presentation layer of NetWeaver BI. Returning from previous versions are the: · BEx Query Designer · BEx Analyzer · BEx Web Application Designer · BEx Broadcaster
Figure 1: Setting Properties for Multiple Row Objects
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 41
SAPtips4On BW Also, a pane has been added to the GUI design, which allows for the direct update of properties (or to select tasks for a selected object). See Figure 2 for an illustration of this. For new users, the tool is more intuitive with a simplified set of icons, vocabulary, and a message panel (see Figure 3) that shows warnings and helps to troubleshoot errors. The Query Designer still doesn’t allow for a quick preview without saving a query definition first, which will hopefully become an option as additional support packages are delivered (I’ll cross my fingers).
Figure 2: Properties Window Allows for Direct Update of Object Properties
Figure 3: A Message Pane Identifies Errors and Warnings
BEx Analyzer There were rumors that the BEx Analyzer and its integration with Microsoft Excel were in question with the release of NetWeaver 2004s, however that didn’t happen. Technically the new version of the BEx Analyzer allows for input and display of Unicode and improves support for visually impaired users. The BEx Analyzer, as shown in Figure 4, has a new default layout and better user interaction through drag and drop capability. There is also tighter integration with the new BI Figure 4: Improved Visualization and Design Features in the BEx Analyzer Integrated Planning (IP) tool. Some new functions that arrived with NetWeaver side effect of enhanced information broadcasting and 2004s aren’t available in the BEx Analyzer. These newer web browser capabilities, such as those found newer functions can only be found using BEx Web in Internet Explorer 7. The benefit of having a zero reporting. While most deployments of BW focus on the footprint (no software installation required) for users is BEx Analyzer, it may be prudent to take a look at the often understated. Rolling out reporting applications to web side of things, as it offers other benefits as well, onsite and remote users with a pervasive web interface such as a zero footprint GUI, better query performance saves on visits from desktop support and assists with times and better printing capabilities - these being a change management and adoption. When upgrading,
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 42
SAPtips4On BW query definitions created with previous versions of BW are converted when they are opened with the BEx Analyzer from NetWeaver 2004s. BEx Web Application Designer Web Reporting is typically underutilized with BW implementations. One of the tools that has evolved greatly since the days of BW 3.0 is the BEx Web Application Designer (WAD). It offers a WYSIWYG client that also allows for the direct manipulation of HTML, or the insertion of additional code such as JavaScript. The WAD suffered from stability issues in the past, making application development frustrating Figure 5: 2004s Web Application Designer when the tool would crash for seemingly no reason. The version of the BEx WAD delivered with NetWeaver BEx Broadcaster 2004s seems extremely stable and comes with addiThe BEx Broadcaster was introduced with BW 3.5 and tional web items, new layout elements, additional API allows for the distribution of reports by email with the commands and integration with BI IP. One really practiAlert framework. The new version extends the capacal layout element, as shown in Figure 5, is Tab Strips, bilities by offering distribution over multiple channels which allow for many reports to be displayed within (Email, printer, Portal) and supports HTML, PDF and common real estate on a web page. XML document formats (see Figure 6). This pre-delivered functionality used to be available One practical performance enhancement is the ability only through custom programming. Two new Wizards to pre-calculate query results into OLAP cache, reduc(guided step-by-step instructions) assist novice users ing the time to access the data and ultimately providwith the creation and editing of exceptions and condiing quicker results for users. Overall, the broadcasting tions. Note: The Web Design API for tables is no longer capabilities of SAP BW are much more intuitive and available from SAP NetWeaver 2004s and, as such, it straightforward compared to the Reporting Agent, may be impossible to migrate existing web applications and templates where custom enhancements exist. Because of these significant functional changes, SAP recommends that web applications created with the new BEx WAD do not use any queries or objects created from previous versions of BW, and vice-versa. Expect to have some level of manual intervention in order to successfully migrate existFigure 6: BEx Broadcaster Distribution Options ing web templates.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
which has been replaced and will not be developed any further. Note: As of 2004s, the Administrator Workbench (Data Warehousing Workbench) no longer includes an entry for the Reporting Agent; however, it can still be accessed via the transaction code REPORTING_AGENT for those that need to continue using it. BEx Report Designer In addition to the enhancements, BEx has expanded its toolset by including a new application called the BEx Figure 7: BEx Report Designer Report Designer. It allows for the creation of highly formatted, print-optimized reports (see Figure 7). Formatted reporting was really lacking before the introduction of the BEx Report Designer. As a new entry that is satisfying an important requirement for most users, I would expect this application to receive much attention from SAP’s development team. Some of the features delivered with this tool include: · Standard formatting (font, color, border) · Definition of row heights and column widths · Merging of cells · Support for hierarchies · Headers and Footers at the page and report level · Multi-line column headers · Page breaks and page numbers
SAPtipsJournal
Page 43
SAPtips4On BW
While not as rich of a tool as Business Objects’ Crystal Reports, it will likely get to that point with subsequent support packs and future releases. There were three things that used to stand out as being less than ideal with SAP’s Reporting, Query and Analysis qualifications: printing, reporting and performance. With the release of NetWeaver 2004s, SAP greatly closes the gap with formatting and printing, and brings their offering close to best-in-breed (the performance issue is addressed with the introduction of the BI Accelerator – an appliance that enables quick access to any data with a low amount of administrative effort). The changes to the presentation layer of SAP BI certainly reduces the strength of business cases that introduce additional 3rd party BI tools that bolt on to an SAP ERP or BI environ-
ment. Companies that have a mix of SAP, Cognos and Business Objects could greatly benefit from a comprehensive review of their reporting landscape and may be able to streamline certain functions to lower TCO and simplify their overall business intelligence strategy. Peter Scott is SAP Practice Director at Traxion Consulting Inc., a strategy and technology firm specializing in business intelligence and data warehousing. He is an internationally-recognized consultant, trainer, and author in business intelligence and management reporting. His project experience with dozens of companies across North America has included enterprise-wide reporting strategy, process re-engineering, implementation and change management. Peter is the SAP BW Reporting expert with SAPtips and TechTarget. His new book, SAP Business Explorer (BEx) Tools is available through SAP PRESS. Peter holds an MBA from Queen’s University, a B.Sc. in Computer Science and a B.Sc. in Biology. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
TMS 101: Fine Tuning Your Transport Management System By Eric Walter, SAP® Consultant Editor’s Note: If you’re an SAP client company that is currently in the process of an implementation or version upgrade, then you’ve probably discovered that your transport landscape will most likely undergo some manipulations—changes that could easily get lost in the shuffle. Eric Walter provides some food for thought on how to use SAP’s Transport Management System to keep a handle on what system changes are being made, who’s making them, and how to keep a history from version to version and more.
This may involve transport changes from client to client within the same host, or it may entail adding additional hardware such as a sandbox, multiple development servers, or additional quality assurance systems for different forms of testing. Whatever your functional reasoning may be, it is important to be able to quickly and efficiently convert your landscape and transport routes to accommodate these needs.
I like to think of a transport Introduction
As anyone working with SAP knows, this ERP package is very different than any other software application. The architecture of the core system alone has proprietary structure and methodologies. These include work process, architecture, and database locking that make SAP the stable and robust system that it should be (when everything is configured correctly). In addition to this architecture, SAP has its own Transport Management System (TMS) that allows for ultimate change management control.
SAPtipsJournal
Page 44
SAPtips4On Basis
Many SAP customers are either going through new implementations or upgrading their SAP version. Either one of these circumstances will most likely require manipulation of the transport landscape. This article will outline some SAP transport manipulation scenarios that you may encounter during your projects: • Version management and its importance • Technical structure of the transport file system (and how it works) • Setting up the TMS environment from scratch.
Strategic Landscapes
During the preparation for your upgrade or implementation, you may need to strategically move or upgrade your hardware because of technical limitations of your current platform. This could mandate a parallel landscape that would allow heterogeneous environments to be tested while developers can continue to develop. You also must keep in mind, the development lifecycle and the functional strategy that may be driven by the needs of developers, configurators, and functional analysts.
request as being synonymous to an envelope that is sent through the mail. Version Management and Unique Transport Numbering Scheme
The SAP Transport Management System is also extremely powerful as a development tool due to its ability to provide version management by tracking changes that were made in a system, associate them with dates and the people making the changes, and hold the history in a way that you can revert back to a previous version if needed. Let’s step back and think about what a transport request really is. I like to think of a transport request as being synonymous to an envelope that is sent through the mail. When you create a transport, you include corrections and repairs into that envelope. These corrections and repairs are really stuffed into the envelope and released and sent on their way to the recipient. The recipient in this case would be the system and client number that was defined in TMS. Figure 1 shows an example of a transport request with the associated number and program changes tied to that specific transport request number. Remember, the transport numbering system ensures unique numbers are always assigned to the transports, corrections, and repairs. Also, the originating system
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 45
SAPtips4On Basis identifier (SID) will always be the first three characters of the numbering system. For example, the items that are assigned to a transport request in Figure 1 were originated in a system with the SID.
The Life of a Transport…
Our example in Figure 1 shows a transport that has been released. What does this mean? When an object is modified in SAP, the modifier will “own” the object as long as he or she is making changes to it. This means it will lock out any other developer from modifying the object until it is released. This ensures that there are no unwanted modifications that may cause bugs in the owning developer’s changes. As a result, the object is then assigned to a transport that is “Modifiable”. Once the modifications have been completed in the development system, they are ready to be moved to a quality assurance or testing system (depending on how your landscape is set up). At this point, the object owner must “Release” the transport. Once released, the object may be imported into the subsequent system. This may be imported by using transaction STMS. Figure 2 shows an example of STMS. Once you are in the STMS transaction, you may view the transports and their status by clicking on the “Truck” icon or using menu option Overview‡Imports.
Figure 1: Example of Transport Request and the Contents as Seen in Transaction SE10
Figure 2: Transaction STMS
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 46
SAPtips4On Basis
Figure 3: List of Transport Requests (that can be moved into this system after they were released from the originating system)
Once you have drilled to the system you want to import to, you can see a list of transports and the status of each on the right side of the screen. You can import the request by clicking on the desired transport number (to highlight) and then clicking the truck icon (with the small box highlighted). This will then prompt you to ensure you are ready for import. Confirm your decision by clicking OK, and your changes will be moved into the system. Figure 3 shows an example of a list of transports. Now that these changes have been moved into the system, there may be a need to compare the program changes, and maybe even back the changes out. In this case, the program changes may be viewed and retrieved using transaction SE38. Once in the main SE38 screen, use menu path Utilities‡Versions‡Version Management. This will display a list of all of the transport requests that have been active in the system in the past, along with their associated Transport Request number. Figure 4 shows an example of a program that has been altered as well as its history. Notice the icons at the top of the screen that allow you to view the differences in versions (and even retrieve old source code if desired).
of the SAP transport system, we may want to know how it all works. The basic foundation of tying the systems together is based on a common directory structure. This structure is defined as /usr/sap/trans in a UNIX system and \sapmnt\trans in the Windows server environment. These MUST be shared in all hosts in the SAP landscape. The subdirectories in the /usr/sap/trans/ directory are data, cofiles, log, buffer, and bin. The Data and Cofile directories hold the data and metadata associated with the transport. The Logs directory obviously contains the logs for the transports, and the Bin directory defines the landscape along with all of the detailed attributes.
Setting Up Transport Management System Now that we understand that all systems MUST have this shared transport directory, let’s discuss how to set it up. The first thing that must be created is a Domain
Transport Management System Filesystem Structure
Now that we have viewed some of the unique features
Figure 4: Version Management Comparison and Retrieval Screen (Transaction SE38)
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 47
SAPtips4On Basis Controller. The Domain Controller is simply one system in your landscape that will act as the “Controller” of your landscape. This means that all landscape configuration must be administered in the Domain Controller, and then pushed out to the other systems. Earlier, we mentioned the importance of the shared transport directory. The files /usr/sap/trans/bin/ DOMAIN.CFG and /usr/sap/ trans/TPPARAM contain the information that defines the landscape and its properties. Let’s say you want to recreFigure 5: Transaction SE06 as Client 000 for Deleting CTS (TMS) ate your landscape from scratch. First, determine the system that will be the domain controller. Next, log in to each system of the landscape and delete the current Next, log in to all other systems (client 000) that will be transport landscape. To do this, log in to client 000 part of your new system landscape. You will be promptand run transaction SE06, then click on the “Perform ed to join the newly created domain. Confirm these SAP Post Installation Actions” button, as shown in Figure 5. messages. When you confirm these messages, you are Then take the actions (when prompted) to delete CTS. updating the /usr/sap/trans/bin/TPPARAM file on your Note: CTS means Corrections Transport System, which operating system. Once all of your systems have been is another SAP term for Transport Management System. added to the landscape, log in to client 000 on your Domain Controller and run transaction STMS again. Once all of your systems have reinitialized TMS, you Use the menu path Overview‡Transport Routes. This can now declare the Domain Controller. Make sure that screen will show all of the systems in your landscape. you are logged in to client 000 for all of these transport Choose the Change icon to update your landscape. At activities. Log in to the system you have chosen as the this point, you can use two or three standard system Domain Controller after TMS deletion, and run translandscape options in the Configuration Menu path. If action STMS. At this point, SAP will check the /usr/ you have a more complex system, you can drag each sap/trans/bin/DOMAIN.cfg file for a defined controller. system into the lower work area of this screen. You can The file will no longer exist, so SAP will then ask if you then create a Transport Layer and assign that layer to would like this system to become the domain controller. a Transport Route, as shown in Figure 6, for consolidaAnswer “Yes” and the DOMAIN.cfg file will be created. tion systems. You can also create a delivery route for your production system. This is done using menu path Edit‡Transport Route or Edit‡Transport Layer. The transport layers are also correlated to the development classes your developers use to define the transport target client.
Once all of your systems have
reinitialized TMS, you can now declare the Domain Controller.
Once your landscape has been created, the modifications will need to be pushed to all other members of the landscape. This is accomplished by the icon that is shown in the top of the screen in Figure 6.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 48
SAPtips4On Basis This should complete the landscape. You may log in to all of the systems at this point and validate the landscape by running transaction STMS. You should see the same landscape in all of your systems. You can also test the system by creating a transport in Development, and moving the changes through to your Production system. Your system is now ready to hand over to the developers to use.
Conclusion
The ability to dynamically alter your landscape is vital to the SAP development needs in implementation and upgrades. It is not only important to know how to recreate and alter your TMS landscape, but it is also important to know what is being written and impacted at your operating system. Figure 6: Creation of a Consolidation Transport Route Remember these technical details when making your changes and your landscape configuration will be much less of a headache. Eric Walter is a senior consultant specializing in SAP Basis technologies along with J2EE and Java integration with SAP. He has eight years of experience with SAP R/3 Basis and security, UNIX administration, Oracle database administration, and five years with Java technologies, integration servers, and portal environments. In this time, he has led and supported numerous public and private implementations of these technologies along with developing and implementing architecture at all levels, from programming interfaces to hardware improvements and upgrades. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Building the SOA City By Axel Angeli and Lynton Grice Editor’s Note: Have you ever visited Disney’s EPCOT and ventured into the Future World pavilions for a peak at how much technological advances have changed our world, connected us globally, all with the constant reminder that it’s just the beginning? This series of articles by Axel Angeli and Lynton Grice is a lot like an EPCOT attraction, as this duo explores how global our tech world has become since the advent of Service Oriented Architecture (SOA) and how this is just the beginning—we’re building a global city within our own enterprises. And it’s ever changing. . .But, as Angeli and Grice note, change is something that can be embraced—and when it comes to the benefits of SOAs—they encourage us to embrace away. In this first installment, they’ll introduce the general concepts of SOA and delve into some real life challenges that were solved in their own SOA Village. Panta rhei – “Nothing is as stable as change”
The Early Days: Using Basic Services
SAPtipsJournal
Page 49
SAPtips4On SOA
Introducing a Service Oriented Architecture (SOA) to your enterprise is very much like architecting a city. This article will be the first of many in which we’ll discuss the SOA City in an effort to give you a practical demonstration of how you can benefit from the services that make up the basis of an SOA. The challenge we take on is that we do not want to spend more than one hour in general in order to connect any arbitrary data source to a process flow. This time we shall invite you to step into our SOA City Limits to see how we break down a real life SOA challenge and solve it with methods of Agile and Extreme Programming in an SOA environment.
What is Service Oriented Architecture?
The SOA structure is based on a widespread industry effort to restructure IT applications in a way that they can be accessed as services from other applications. This dictates the true essence of an SOA: the Services. You have reached the state of a Service Oriented Architecture when you have created a nominal number of services and it appears easier for developers of new applications to reuse the existing services rather than writing their own ones again.
A good example of a working SOA infrastructure is the Windows operating system. Nearly every application written for Windows is equipped with a full featured application programming interface that makes it easy for other applications to automate the control of it. Figure 1 demonstrates just how easy you can control an ActiveX application. This little VBA script opens an existing Word document and saves it again as Microsoft HTML archive (.mht). You can instantiate this script from many powerful scripting languages like Python or Windows Powershell. The true work is done by the instantiated objects that completely encapsulate the processed Word document. The Word control is a service, an extremely powerful one as well.
Public Sub XConverter() ‘ Dim oDocs As Word.Documents Dim oApp As Word.Application Dim oDoc As Word.Document ‘ Set oApp = New Word.Application Set oDocs = oApp.Documents oApp.ChangeFileOpenDirectory “F:\BLUEBOOK\mySOA\word\” Set oDoc = oDocs.Open( _ filename:=”current.doc”, _ ConfirmConversions:=False, _ ReadOnly:=True, _ AddToRecentFiles:=False, _ Format:=wdOpenFormatAuto, _ XMLTransform:=””) oDoc.SaveAs _ filename:=”current.mht”, _ FileFormat:=wdFormatWebArchive oDoc.Close False End Sub
Figure 1: VBA Script for ActiveX
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 50
SAPtips4On SOA Are We Ready for the SOA Era?
Modern enterprises are well equipped with a rich kaleidoscope of powerful software applications. While the applications themselves are extremely powerful and deliver state-of-the-art features in many respects, the way data is brought in and out of those applications is extremely awkward. Practically every ERP application uses its own proprietary interfacing protocols, and their data models often differ greatly. This is even true for such highly standard application models like a sales order or an order shipment. As a matter of fact, writing interfaces for ERP applications is still a specialists’ task. Many may think that EDI with SAP is a very difficult job, but actually, other ERP systems are far more awkward in that respect. Initiatives that tried to build interfacing standards based on a universal ontology – like EDIFACT – did not deliver the expected success. They all suffer from the same deficiency: they require substantial changes to be made on the legacy system’s side. Even if we disregard the fact that this typically costs a nominal amount of money, it is often impossible to implement the changes (if we deal with a mature legacy application). This is especially true for the critical applications that were designed according to custom needs, like those famous AS/400 applications that drive whole factories. These applications are often untouchable for the sole risk that it might bring down the whole production line with a keystroke.
An Enterprise Service Bus (ESB) is not set for one single standard, but rather provides a place where every interested party can plug in an appropriate converter. What Does SOA Do Differently?
SOA goes in with a different approach. Instead of forcing legacy applications to adopt a licentious standard, it provides for generic mechanisms to allow adaptation of legacy applications. An Enterprise Service Bus (ESB) is not set for one single standard, but rather provides a place where every interested party can plug in an appropriate converter. Once the messages are in a readable format, they can be processed by uniform algorithms. SOA does this and more; it offers services and encourages applications to abandon homemade solutions and replace them with common services.
Workflow is one area where an SOA can deliver the highest benefits. Currently, no ERP suite has set a workflow messaging standard, and none of them are able to provide a satisfactory collaboration framework with respect to integration of third-party products. Workflow means executing a series of single tasks in sequence, with the possibility of halting the flow to request a user decision and to control the flow, depending on the content of the message. Imagine how difficult it is to successfully fulfill the following scenario: • Email a message from SAP R/3 to an Outlook email box. • The email message should be prepared in such a way that it allows the user to “select a decision box”, or fill out some missing information or figures, and then “submit” the message back to SAP in such a format that the user decision can be processed by the workflow engine. Here we can see the advantages of an SOA framework: Instead of preparing your message as a form, you would send the message with a list of questions and possible answers to the SOA framework. The SOA framework will then prepare the message for Outlook and return the received answers in a previously agreed format. It is just like if you wanted to drink some fine beer. You could buy some recipe books, the latest micro-brewery toolkit, and some fine ingredients (if you are able to find a store that sells hop and malt), and start experimenting. Those who have tried it have told me the same thing; it ended up in some sort of disaster, and the result was the furthest thing from beer. That being the case, you might consider simply going to a store and choosing from the variety of ready-brewed beers. It’s the same with SOA—why reinvent something from scratch, when someone else has already refined the process and can deliver the desired results?
The Business Challenge
It was not even two years ago when the expression SOA was quite an exotic term and only something for visionary CIOs. This has completely changed in 2007. Now, the SOA hype has reached new heights and the number of “wannabe SOA consultants” is widely on the rise. It is now important to distance yourself from the many theoretical pieces of advice and rather hook onto a more practical way of seeing SOA. It is always the unknown
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 51
SAPtips4On SOA and uncertain that appears to us as difficult and dangerous. And most times, it turns out that the expected obstacle was a trivial bump along the path. We are now determined to demonstrate that you can build the essentials of SOA in a ridiculously small amount of time. But this is only achieved by choosing the correct, pragmatic strategy, and reusing the right components to be orchestrated by the right utilities. We‘ll show you extreme SOA in this article, but first, let us expose the business challenge a bit by reflecting on some real life examples (of course, all identities have been altered).
Business Cases
Getting business to buy in to SOA can be quite a task. Approaching management with words like “agility” will create business expectations that can often only be realized once the whole SOA ecosystem is fully functioning. A better way to approach SOA is to explain the concept of “You will only pay for what you use”. The majority of companies out there use large software application packages like SAP, Oracle, etc, and even though they “may” only use a fraction of the application functionality, they are usually still hit very hard with licensing and support fees. This is where the paradigm shift needs to take place. Business clearly understands the value of choice when paying for resources. With this in mind, managers need to understand that within the SOA context they will only pay for the services that add value to the business. The following business cases show real-life scenarios that are pretty difficult to accomplish when following traditional “old school” IT management philosophies and techniques. The important thing to remember here is that SOA design will typically encompass numerous components that do NOT necessarily come from the same software package, but will rather follow a “bestof-breed” approach. Here we present three individual business cases. The challenges for the respective IT forces may vary, but they have a common pattern. They are all tied up in their old fashioned understanding of IT and IT governance, and are blind to the new possibilities out there. This does not mean that these guys were totally wrong all the time. It is truly a fact that the foundation to build an SOA has been created within the past five years. At the same time, it is also clear that building an SOA city would have been much more difficult to
accomplish a couple years ago than it is today. Today, SOA is a straightforward and lightning fast experience. Business Case #1: Mission Impossible in Johannesburg Paul Hunter sat at his desk in a pretty desperate mood. He just came back from a meeting with his CTO in Houston/Texas. He came back with a challenge that seemed to him to be fairly unsolvable. The CTO’s idea was that using the full cycle defined by Moore’s law, he wanted at least 80% of the customers connected electronically to the ordering and supply chain system... Paul’s company, H2O, has a branch that produces sterile papers for medical sciences and laboratories. The customers are widely spread all over the world and the profile of these customers ranges from huge industrial clients to small individual labs. While the industrial companies are mostly linked through classical EDI standards like EDIFACT and X.12, Hunter had been working now for more than five years to get the smaller labs connected somehow. They were writing regular letters to the clients, asking them to please deliver data electronically. They even got the key accountants to add a penalty on the price tag for those not connected via EDI. They offered longer payment terms; nothing worked. The answers were always the same: “Our software does not support EDIFACT or X.12”, or “We have no way of sending data to an X.400 Telebox”, or “We have no money to pay the programmers”. How could Hunter achieve in only nine months time what they did not even vaguely achieve in the many years prior? Hunter’s hope had always been that more and more customers would eventually change their software and would then be able to jump onto the bandwagon for automation. But there were no signs that indicated this would ever happen. Under these circumstances, Hunter’s day as head of IT infrastructures in South Africa seemed to be numbered.
Getting business to buy in to SOA
SAPtips.com
can be quite a task.
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 52
SAPtips4On SOA Business Case #2: Champagne with RFID in Copenhagen The Research and Development group at the University was quite exhilarated. After a couple of frustrating night shifts, they finally managed to get the new RFID based conveyor belt running properly. Whenever a truck enters the hall, all the containers on the truck are automatically scanned and recognized by a myriad of RFID antennas. The data is then used by a small, local application to open and close some wedges that are installed on the top of the conveyor belt. The champagne was bubbling over after this great success. Only Niels Holgersson – no, not that one – seemed to be more contemplative in contrast to the serene hardware team. His duty was more to demonstrate what they finally could do with the new expected affluence of the RFID data from the production sites. They had an IDES SAP system running and they wanted to use this as a data sink for the collected data, to kick off some business processes like sending goods receipt notifications, and updating the warehouse’s stock quantities in real-time. But Niels knew only too well that it would not be as easy as it appeared. The idea of the demo center was, among other things, to prepare some prêt-à-porter solutions for specific industries to connect the RFID world to the ERP universe in a plug-n-play manner. But this meant that they needed to be prepared for some worst case scenarios as well. This would include customers running old, outdated or homemade software solutions that could not be expected to comply with much of a modern communication standard. And if the programmer of such an old system had resigned (as he knows many AS/400 production systems) without documenting his extensive changes, there would be trouble ahead. First of all, Niels expected to find a greater variety of customers still running older SAP releases. The presence of a middleware product like SAP XI would be the exceptional case. So, his unsolved work for the coming three months was to find a way to connect the RFID toys with the most common “real life” scenarios. Business Case #3: Mutiny in Texas Heidelberg, Germany, March 2007 Peter Hartmann hit the handset back to the fork so that it was audible all over the open office. He had an unpleasant talk with the head of the sales force team, Heidi Bayer. Mrs. Bayer had just returned from the CeBIT computer fair in Hannover. There, she met some people who demonstrated to her how easy it was with
Microsoft Dynamics to create sales order documents and either print them out or send them directly via telefax, or even email as PDF, TIF or ZIP-File. That was something that Mrs. Bayer wanted to do for so many years, and she had run this exact request by Peter Hartmann numerous times before, as he was responsible for the SAP-driven ERP landscape.
The business felt permanently dependent on the goodwill of the IT and hence became indignant.
This time Heidi Bayer made it very clear. Either Peter would have a solution for this exact scenario up and running in a couple of weeks or she would withdraw her signature for funding the new SAP consolidation project. While he still mulled over this threat, he got another email that confused him for the rest of the day: the CIO of the Texas affiliation of H2O decided not to participate in the SAP consolidation project, but had signed another contract with Microsoft and IBM to equip the nearly 50 locations in North America with an ERP software. Peter Hartmann considered this plan as insane. They had invested 10 years of work in order to get all the SAP systems running according to business demands and now they have refrained from revamping the solution into a single consolidated instance. What Peter Hartmann never understood was the fact that the business never went for his technical arguments and found his financial calculations quite absurd and unrealistic. But that was not the worst part; the business felt permanently dependent on the goodwill of the IT and hence became indignant. They were looking for freedom and so they headed back on the markets. As we work through our series on Building the SOA City we will address solutions for each of these business cases.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Extreme SOA
There are numerous vendors out there like SAP, IBM, and Oracle, that most certainly have very impressive integration products. Regardless of the vendor or solution you choose, the question is “just how long does it really take to get an integration scenario up and running with the ability to change it rapidly on demand?” We keep hearing things like: “Companies need to be agile in order to remain competitive in the dynamic marketplace these days” or “With our product, all you do is drag and drop and voila, there you go”. Well that all sounds good and true but in practice, how long does it typically take an integration specialist or programmer to change a technical business process? One week? Two weeks? I would say that the majority of products out there are “all bark and no bite”--I want to see results and I want to see them now!
Putting Up the Stakes: An SOA in Four Weeks
b. Branch off and also do the following: i. Send the IDoc to a remote message queue service via HTTP (like the “Amazon Simple Queue Service”) ii. Send an IDoc to an ABAP message queue on a SAP server (via HTTP interface) iii. Send IDoc to another message queue on a SAP server (via RFC interface) iv. Invoke an ABAP web service and pass it the incoming IDoc and get a response IDoc that becomes the result of running the process 3. Test and deploy the process 4. Change the process by adding in a new service Figure 2 depicts part of the this process in ActiveBPEL Designer. Note: The authors believe that the ActiveBPEL designer is probably the best and easiest to use SOA orchestration tool in the marketplace today. (http://www.active-endpoints.com/). Realistic Figures How does the following sound?
Let’s dive straight into this…How long would you expect the following to take? 1. Install a “message orchestration” product
SAPtipsJournal
Page 53
SAPtips4On SOA
2. Orchestrate a business scenario that does the following: a. Receive an IDoc i. Email the received IDoc to someone when there is an error or suspicious content ii. Convert the IDoc to PDF iii. Email the PDF to some designated receiver iv. Handover the PDF to an attached archiving system using XMLRPC
Install a “message orchestration” product Orchestrate the business scenario **Orchestrate only, no service code Test and deploy the process Change the process by adding in a new service
15 minutes 30 minutes 30 minutes 1 hour
You think these are realistic figures? Absolutely! We did it! And we also did it on partly new ground. The components we used have most certainly not been our daily dish so far:
Figure 2: A Sample BPEL Process in Active BPEL Designer
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
• ActiveBPEL was completely new to us • Python we knew, but honestly, we had never written more than a “Hello World” • Well, the rest was more or less downloads from the wide fund of the OpenSource community We basically found the components for a proper working SOA in the World Wide Web. If you think about it, the World Wide Web is a huge society of communities, and these communities are dedicated to service. They develop things and contribute them to the public; in return they get some other great things back. After all, not everything has to be about money. A side note from the authors: It is remarkable and predictable that the companies that sell utilities and services for money only will become extinct faster than anybody may believe. In our case, we decided to use Python as the scripting language, simply because we got most of the working snippets from the community. But Python was only “today’s dish” for us. At this writing, a good friend has just shown us some neat PERL scripts that monitor his EDI messages. Nice work he did; we will not consider rewriting this, we shall just use it.
The main advantage of scripting languages is their high degree of programmer productivity and
SAPtipsJournal
Page 54
SAPtips4On SOA
software reuse.
chose the best of breed approach, and most components we chose had no corresponding part in the Linux world. Back to our SOA village. . . Integration does not have to always be a painful, time wasting and expensive exercise. By giving up the single vendor and single architecture approach, we achieve a complete new dimension of agility and speed in development.
Day 1 in the SOA Village
Now let’s see how this all fits together and step into the SOA Village. On the first day of our SOA construction exercise, we’ll start with some easy to understand examples in order to warm up. All examples and strategies are created in the spirit of the Agile Manifesto that drives Extreme Programming, Scrum and Hologramming as its essence. For now, we shall ignore any error handling or any step that distracts our concentration on the essential information we are trying to impart. Routing Data When comparing SOA to the times when cities were built, we find ourselves in the period where the telephone has already been invented and is becoming widely used. The basic challenge of an SOA is to serve the data at the right place, in the correct format, to an application with limited interfacing capabilities. SAP R/3 is such an application. We’ll try to avoid using SAP XI for now and work on a plain vanilla SAP ABAP stack. In this exercise, we want to: • Receive some data in a folder of the file system • Push the data to SAP by calling a specific function module
Why scripting languages? Scripting languages like Python are designed for “gluing” together applications as they assume that there already exists a useful collection of other useful components written in other languages. The main advantage of scripting languages is their high degree of programmer productivity and software reuse.
• Push the data to SAP via HTTP interface
One small thing that should not go unmentioned: As cute and smart as the following may appear, it depends largely on the functions provided by the Microsoft Windows operating system. This is not necessarily the .NET framework. In fact, most features we use run safely on top of the Windows API. But why Windows? Isn’t it treason towards the wide community? Not really. We
• Create EXCEL file
• Push the data to SAP via ABAP web service • Common tasks • ZIP and UNZIP files
We have decided to do all this in Python, a popular scripting language with the power to change its interface like a chameleon. We chose it because there are so many ready to use snippets and utilities available that we could reuse.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Receive Some Data in a Folder of the File System
Figure 3 is the simple Python piece of code that polls a directory and reads the first line of data from a new file (assuming the file contains an IDoc, for example). Figure 4 is the Python Shell output after dropping a file “New_IDoc_File.txt” into the “hot folder”.
Push the Data to SAP by Calling a Specific Function Module
Figure 5 is some Python code that passes the “IDoc data” via a remote function module call to SAP. Figure 6 shows the Python Shell output after executing the code shown in Figure 5.
import os import time import datetime poll_dir = ‘c:\\tmp\\idoc_in\\’ before_list = dict ([(file, None) for file in os.listdir (poll_dir)]) while 1: time.sleep(5) print datetime.datetime.now().strftime(“%d/%m/%Y %H:%M:%S”) + “ – Watching directory “ + poll_dir after_list = dict ([(file, None) for file in os.listdir (poll_dir)]) new_file = [file for file in after_list if not file in before_list] if new_file: print “File added: “, “, “.join (new_file) full_path = poll_dir + new_file[0] myfile = open(full_path, ‘r’) idoc = myfile.readline() print “File contents: “ + idoc myfile.close() before_list = after_list
Figure 3: Python Code For Receiving Data
Push the Data to SAP via HTTP interface
Figure 7 shows some simple Python code that demonstrates just how easy it is to send data via HTTP to a SAP system.
SAPtipsJournal
Page 55
SAPtips4On SOA
Figure 8 is the Python Shell output after executing the above HTTP call to SAP.
Push the Data to SAP via ABAP Web Service
Creating ABAP web services is simple, really simple...and invoking a web service from Python is even simpler, as demonstrated in Figure 9.
Figure 4: Python Shell Output
import pysap conn=pysap.Rfc_connection() print “Connecting to SAP system...” conn.open(conn_string=’ASHOST= SYSNR=00 CLIENT=000 USER=bcuser PASSWD=’) print “Retrieving function module interface ZLOGOSZMQ_PROXY” func=conn.get_interface(‘ZLOGOSZMQ_PROXY’) func[‘HEADER’]=”IDOC_HEADER” func[‘DATA’]=”SOME_IDOC_DATA” print “Executing function module...” result=func() print “Result from function module call is: “ + func[‘GUID’]
Figure 5: Python Code That Pushes Data to SAP via a Remote Function Module
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 6: Python Shell Output import urllib2 idoc = ‘SOME_IDOC_DATA’ result = urllib2.urlopen(“http://:8200/mq/ receive?sap-client=000”, idoc) str = result.read() print str
Figure 7: Python Code That Pushes Data to SAP via a HTTP Interface
Figure 8: Python Shell Output after Executing the HTTP Call to SAP
SAPtipsJournal
Page 56
SAPtips4On SOA
from SOAPpy import WSDL wsdlFile= ‘http://:8010/sap/bc/srt/rfc/sap/ ZLOGOS_MATERIAL_PUT?sap-client=010&wsdl=1.1&style=rpc’ server = WSDL.Proxy(wsdlFile) idoc = ‘SOME_IDOC_DATA’ response = server.ZlogosMaterialPut(IvIdocIn = idoc) print “Response from ABAP web service: “ + response
Figure 9: Python Code That Pushes Data to SAP via ABAP Web Service
Figure 10 is the result in the Python Shell after running the code documented in Figure 9.
Common Tasks
Figure 10: Python Shell Output
After this little warm up round, we want to add some extra processing like ZIPPING the file for archiving purposes, or UNZIPPING files read in from an email message. No problem...simple!
Figure 11 shows a small piece of Python code that shows how simple it is to ZIP a file. And on the other end, the code in Figure 12 shows just how easy it is to UNZIP a file.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
The Show Is Just about to Commence
import zipfile myfile = zipfile.ZipFile(‘test.zip’,’w’,zipfile.ZIP_DEFLATED) myfile.write(‘My_BIG_File.txt’) myfile.close()
This was just a small demonstration of how easy it is to accomplish data routing and some manipulation by reusing great routines written by some other people. The benefit here is the ability to reuse components. If we need some more work to be done, we should simply look out for a great utility to do the job.
Figure 11: Python Code for File Zipping
For example, if we need to create a TIF image from our document, we could use the GraphicMagick libraries; they are written in PHP, but also allow access to most of the features via an XMLRPC web service. Converting to PDF may be done using Ghostscript or the genuine Adobe Acrobat library. Encrypting or decrypting files can be handled by PGP services. There are so many other requirements and services out there and the consumers of the services are continuing to grow in number just as well. Our village is growing into a metropolitan city, one step at a time.
import zipfile myfile = zipfile.ZipFile(‘test.zip’,’r’) for filename in myfile.namelist(): data = myfile.read(filename) file = open(filename, ‘w+b’) file.write(data) file.close()
Figure 12: Python Code for File UNZIP
Let’s face it, most people love getting data in an EXCEL format. So wouldn’t it be nice to create EXCEL files with absolute ease using the standard COM interface? The code in Figure 13 shows just how easy it is to create an EXCEL file using Python, and pass it some arbitrary cell value.
The benefit here is the ability to reuse components.
import os import win32com.client
Conclusion
filename = ‘myfile.xls’ filepath = os.path.abspath(filename)
SAPtipsJournal
Page 57
SAPtips4On SOA
You most certainly do not need to install a “heavyweight” product like SAP XI to get SOA working in your environment. The majority of the time IT managers don’t really know what is possible and available (product and component wise) in the marketplace. As stated right up front we want to be able to change and add to process flows in less than one hour…bottomline! This paper has shown some very basic code snippets and concepts that should whet your appetite for an SOA development. We are laying the foundation to show you just how easily common SOA requirements can be accomplished. So we welcome you into our SOA Village where SOA has become easy, fast and FUN!
excel = win32com.client.Dispatch(‘Excel.Application’) excel.Visible = False workbook = excel.Workbooks.Add() sheet=workbook.Worksheets(1) sheet.Cells(1,1).Value = “Hello Excel from Python” workbook.SaveAs(Filename=filepath) excel.Quit()
Figure 13: Code for Creating Excel File Using Python
These sorts of useful pieces of code could easily be added to some sort of “utility class” that could then be accessed by multiple other applications requiring the same sort of functionality.
In the next installment of this series, we’ll show you a more complete scenario where we demonstrate and explain how useful and powerful message queues (MQ’s) are in practice. This will involve Microsoft MQ, a self-coded and stunning ABAP MQ, and the Amazon SQS queue service. We’ll also show you how to use the file system and an email system as an MQ. The scenario
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
will shuffle data around from queue to queue and will be orchestrated by some BPEL utility. Getting an SOA in place is not difficult, and this scenario will show just that! Axel Angeli, logosworld.com. Axel is a senior SAP and SOA advisor and principal of logosworld.com, a German-based enterprise specializing in mentoring SAP and SOA project teams and advising IT management on implementation issues. Axel runs his own IT business since 1984, and throughout his career, he has always worked with cutting edge technologies. Axel’s SAP experience stems from the good old R/2 days, and he is an expert on SAP’s NetWeaver technology and any kind of ABAP development. A speaker of several languages, Axel specializes in coaching and leading large multinational teams on complex projects with heterogeneous platforms and international rollouts. Known for his intensive and successful trouble-shooting experience, Axel has been nicknamed by his colleagues as the “Red Adair” of SAP projects. He is the author of the best-selling tutorial “The SAP R/3 Guide to EDI, IDocs, ALE and Interfaces.” You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. Lynton Grice, logosworld.com is an SAP integration specialist contracting in Johannesburg, South Africa. He has a passion for programming and has a particular interest in the “business process and SOA space” incorporating things like workflow, BPEL, SAP XI, etc. Lynton is a champion of the Blue Elefant League of SOA Excellence.You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtipsJournal
Page 58
SAPtips4On SOA
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Maquiladora Training: Just a “Sap” in Mexico By Robert Vaughan, SAP Training Consultant Editor’s Note: Trainers are used to walking into a class full of students and being prepared for the unexpected—equipment failures, students who can’t quite catch on, you name it. Now, add in training in a country where the culture is very different from previous conditions under which you’ve taught, and you have Robert Vaughan’s on-going experience in Mexico. Robert is currently conducting training sessions for U.S.-based companies with Mexican factories; a growth market for certain, but one that has presented some challenges that were unexpected and previously undocumented, as he’s discovered. As Robert reports from somewhere in Mexico, there are lessons to be learned—tactically and culturally, and he’s here to share them, just in case you’re called upon to train, as we say in the U.S., “South of the Border!” Whenever I start a new project, I have certain expectations about logistics, support, politics, etc. However, my recent SAP training project in Mexico turned out to be a whole other thing. Only a couple weeks into the project I realized, “Toto, we’re not in Kansas anymore”.
transportation, textile, and machinery, among others. Maquiladoras may be 100% foreign-owned (usually by U.S. companies) in most countries. The use of maquiladoras is an example of offshoring. Other countries such as Japan, Germany, and Korea have maquiladoras as well, but the majority of them are located in Mexico and are associated with United States’ companies. The term “maquiladora”, in the Spanish language, refers to the practice of millers charging a “maquila”, or “miller’s portion” for processing other people’s grain In my area of expertise, Materials Management, I discovered that maquiladora transactions are very similar to Interplant Transfers, the main difference being that you receive the material on the other (Mexican) side of the border, and some behind the scenes activities have to take place to ensure that the proper Customs documentation (TSA) is created and delivered with a shipment. Figure 1 displays this process and Figure 2 shows the SAP transaction screen.
This was my first SAP maquiladora project. For those of you new to this concept, Here’s what Wikipedia has to say on the subject:
SAPtipsJournal
Page 59
SAPtips4On Training
Ma·qui·la·do·ra Pronunciation [muh-kee-luh-dawr-uh]–noun, plural -do·ras A maquiladora or maquila is a factory that imports materials and equipment on a duty-free and tariff-free basis for assembly or manufacturing and then re-exports the assembled product, usually back to the originating country. “Maquiladora” is primarily used to refer to factories in Mexican towns along the United States– Mexico border, but increasingly is used to refer to factories all over Latin America. Maquiladora factories encompass a variety of industries including electronics,
Figure 1: Maquiladora Process
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
Figure 2: Example of MIGO – Receiving a Shipment on the Opposite Side of the Border
It may still be a somewhat rare thing, as I’ve researched the Internet and found very little documentation or news of other SAP maquiladora implementations. However, with the degree that SAP lends itself to the global workplace, I suspect this will become more and more commonplace. In this article, I have identified some of the issues, pitfalls, and solutions that I discovered in the course of my training project. In this particular project we used SAP AG 4.7.
The Project
SAPtipsJournal
Page 60
SAPtips4On Training
Project timeline: Phase 1: Four weeks of development, to translate and localize existing English (American) SAP training material for a Mexican audience, Phase 2: Seven weeks of Power-User training delivery (broken into four weeks of training delivery, a week break, and three weeks of refresher training), Phase 3: Three weeks of End-User training, followed by Phase 4: Three weeks of Go-Live support. Phase 1 - Development Planned: Development was scheduled for a four-week period with 13 consultants to complete and deliver: • Translation and localization of training materials that were developed and used for training in the United States • Capture Spanish SAP screens and insert into translated documentation
• Translate presentations and job aids • Create a Spanish Glossary for SAP and manufacturing terms • Train instructors on current processes This sounded like a simple task in the beginning; just translate existing English materials created for the American factories and go. A simple task couldn’t have been further from the truth. We were to discover and confront a number of challenges along the way. First, as with many training projects, we were forced to start our training development late but held to the same aggressive delivery dates. We received the SAP Spanish version (see Figure 3 for an example) of software late into the Development phase, and when we did, we found the translation to be incorrect for our audience. SAP, being a German company, naturally looked to the Spanish spoken by their European neighbors in Spain. For our purposes, we needed the Spanish that is spoken in the Latin American countries. We made modifications where we could and job aids (such as a reference index for the glossary and modified screen shots with Photoshop), where we couldn’t. Actual: It was necessary to carry out development in three weeks with eleven (two of the original thirteen didn’t work out) consultants.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 61
SAPtips4On Training • Spanish screen shots were problematic because of differences between European Spanish and LatinAmerican Spanish. • Losing a week from development time resulted in less time for training current processes. It was necessary to squeeze twoweeks of training into one week. Metrics: • The original development schedule projected 13 consultants working a total of 128 hours each, but to resolve the problems we encountered, it was necessary to spend 244 hours Figure 3: Spanish Screenshot Sample – Modifying the Material Master (each) X 11 consultants, to complete development on time. An element that added to the development part of the project was the need for additional materials that would be only used in Mexico, and therefore had to be developed from scratch. However, this task was made fairly easy using the latest version of RWD InfoPak V5.52. (InfoPak automatically records all the steps you make in a process, much like SnagIt, but formats in a template you set up ahead of time for ease and speed of processing—see Figure 4 for an example.) Another issue arose in the delivery stage, but since it impacted the development process, I will mention it here. We were caught off-guard with the client’s preference for “Span-glish”
Figure 4: RWD InfoPak Sample – Material Master Data-Entry Fields and Instructions
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
(a mix of English and Spanish) rather than pure Spanish. Making the recommended changes required an additional 28 man-hours. After three weeks of 14-hour workdays spent frantically translating and developing new materials, we were ready to begin Power-User (Super-User) training.
1) Original Spanish/Euro files acquisition
Phase 2 - Power-User Training (Round One) “Z_SLEEP”, Exactly What Process Does That Transaction Serve?
4) Re-downloading it (in the English version)
Planned: 4 weeks X 40 hours each (per 233k) X 13 instructors Objective: Train Power Users with presentations, SAP exercises, and future-state process explanations.
The major impact of this issue was the extra time spent (approximately 10 hrs X 11 consultants) after-hours.
A small tidbit that we discovered was that no matter how many times we referred to it as “S-A-P”, the users kept calling it “sap”, as in what comes from a tree. As with the mighty oak, the trainees were unbending on using the correct pronunciation. The first two weeks were a bit rocky; as with most large projects, there were political aches in the system. For the team members, the real test of their Spanish proficiency was still to come in the implementation stage of our project. Our team was further reduced as we realized some of our team members’ Spanish skills were not up to the task at hand. As a team lead, I spent my days training and my evenings smoothing over project issues.
…we discovered (after arriving in Mexico) that the local
SAPtipsJournal
Page 62
SAPtips4On Training
management and users preferred to use the English version of SAP instead of Spanish… Another issue was that after we had spent so much time translating the instructions for the individual transactions, we discovered (after arriving in Mexico) that the local management and users preferred to use the English version of SAP instead of Spanish, so we had to scrap all of our original transaction and screen translation documents and revert to English documentation. We had to spend our evenings downloading remotely from our hotel rooms. Net Impact in terms of project time lost and redundancies:
2) Translation/localization of the Euro-Spanish version to Latin Spanish 3) Cultural adjustments to the original materials
5) Refining the English version to support our project
One issue that I had fully anticipated was the difference in learning approaches in Mexico. I had observed this when I was an exchange student at a Mexican university. The Mexican people approach learning differently; they tend to learn better on their own. Therefore, they spent most of their class time creating PowerPoint presentations and collecting screen shots. This significantly slowed down the pace of the course. Once we identified this issue, we provided each attendee with their own version of the full training materials, and we created time the following month to assist them in further developing materials. As with most training projects (in any country) the users were often engaged in sending emails and IMs during the class. Other challenging issues included frequent network failures due to infrastructure issues (mainly electricity interruptions). During these downtimes we took breaks or switched our training to a topic that was not dependent on the system or electricity. Still, training classes often ran late or lunches were cut short, making tempers even shorter. The biggest of all challenges, however, was communicating how SAP processes would replace legacy systems and how they fit into current manufacturing processes. We were provided process flows and cheat sheets with transaction codes, but these simply weren’t enough. Therefore, we ended up researching and providing a lot of this information in spurts, as warranted throughout the training, all the way to Go-Live. Actual: 4 weeks X 72 hours each X 10 instructors Phase 2 - Power-User Training (Round Two) I Think I Have A Family; I’m Not Sure (Six Weeks To Go-Live And Counting) The second round of Power-User training went much more smoothly. Still, there were some obstacles to
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
overcome. For the most part during these three weeks, it was just refresher training, but we also carried out Train-the-Trainer sessions. The biggest obstacle of this round of training came from changes in team structure, which introduced new challenges around language differences and training approach. Another hurdle came when including some end users (who were to be section leaders) in this SuperUser refresher training. They had not had any SAP introductory classes prior to this, so we had to accommodate to their level of understanding. Phase 3 - End-User Training I Can Start To See The Horizon Planned: 3 weeks X 13 consultants X 30 hours each (per week)
Conclusion
Lessons Learned • The project may have been smoother had planners included some of the key Mexican staff in a committee to strategize and review the plan and materials; if nothing else for the sake of “buy-in”. • If the issues with the Spanish version of SAP had been identified earlier, programmers and developers could assist with any translation issues. • Disabling email and IM functionality in the classroom would improve participants’ focus. This could be said for ANYWHERE. • Unavoidable infrastructure downtimes resulted in the most challenging of the issues we faced, and were not considered in the project timeline.
Objective: Assist Power-Users in training End-Users, using new materials designed by Power Users The end-user training involved the instructors splitting off from the main sites to several sites across the country to lend support during end-user training. Other than some unanswered future process questions, we were basically able to lean back and watch our pupils become the teacher; very gratifying considering all the hurdles we had to jump along the way.
SAPtipsJournal
Page 63
SAPtips4On Training
My only concerns during this process were that the Super-Users focused on teaching the end-users very specific processes, without really giving them a look at the big picture and how they fit into it. Also, the project plan did not allow for make-up training for those who missed the original scheduled classes. This added another week to our project. Actual: 4 weeks X 14 consultants X 40 hours each (per week) Phase 4 - GO-Live Support Planned: 3 weeks X 13 consultants X 48 hours each (per week) Objective: Give support in plants and regional warrooms to Power-Users during Go-Live As of this writing, we have just entered the Go-Live stage. Actual: Not yet known
This experience was very educational…
This experience was very educational—not only did it allow me to broaden my skills of socially adapting in the Latin American culture and practice my Spanish language, but it also allowed me another opportunity to observe the Mexican culture. Should you have an opportunity to participate in a maquiladora project, I think you will find it a fulfilling experience and a great opportunity to develop both your technical and soft skills. Here are some general tips for consulting in Mexico (many can apply to any country abroad): Travel • Do your research on hotels. Just because it has an American name, doesn’t mean you’ll get American style amenities. • Rent a car. Don’t be afraid to drive in Mexico; once you get the hang of it, I believe you’ll find it more enjoyable than driving in America. • Choose flights with connections in America if possible; connecting in Mexico can be a difficult.
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
• Make sure you have the right address, as it is very common in Mexico to have the same company in plants located on opposite sides of town, instead of in a central-campus setting. Social • Learn to say “No” and stand your ground on important issues, but be tactful and professional. • Be very, very patient and willing to adapt to the local culture. • Verify all instructions and make sure you and the client are very clear in your expectations. Robert Vaughan, Robert is an independent SAP consultant specializing in Materials Management and Production Planning training and documentation. He has over nine years of SAP implementation experience. He studied at Universidad La Salle in Mexico City and holds a Bachelor of Arts in International Technical Communications from the University of Texas. You may contact the author at
[email protected]. Be sure to mention the author’s name and/or the article title. ≈
SAPtipsJournal
Page 64
SAPtips4On Training
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtipsJournal
Page 65
SAPtips4CIO Corner The New SLOG By Erik Keller Editor’s Note: Yep, we just love acronyms. KISS, ERP, SAR – now we can add SLOG to our three and four letter vocabulary, thanks to Erik Keller. Whereas the BIG FOUR (Microsoft, IBM, SAP, and Oracle) are still talking like the future is theirs and theirs alone, the SLOGS of the world are priming to strike hard and take away some of the market share. If you’re looking for the latest trend in enterprise planning, think smaller, global, and SLOG. Now, let’s get you up-to-date on who’s up to bat! Part of a pundit’s DNA is the slavish need to create acronyms: ERP, CRM, etc. are all part of the jargonladen lexicon that is a gun in the holster of any analyst. At the Enterprise 2006 event, AMR Research’s Bruce Richardson coined MISO when he spoke of the differing goals and platforms of Microsoft, IBM, SAP, and Oracle. Call me snarky, but I think that MISO is so retro and represents the status quo much as BUNCH did in the 1970s for computer manufacturers. It’s old school rather than something that represents the growth and future of enterprise software. (For those of you under 50 or over 50 with failing memories, BUNCH stood for Burroughs, UNIVAC, NCR, Control Data Corporation, and Honeywell.) Like the BUNCH through the 1970s and 1980s, MISO’s impact on enterprise applications will not fade away soon, but as a group, it is likely that at least one or two will be acquired in the next decade and that a new set of kids will grab much of the growth (and eventually installed base) of the enterprise market. Thus for everyone considering where to go with enterprise applications, it’s a tough SLOG moving ahead. What is SLOG? In cricket (which I love to watch but struggle to understand,) a slog is a play where the batsman attempts to swing for the fences or go for broke, as we would say here in the states. It’s a Babe Ruth type of shot. In this article, it’s an acronym for the IT trends that will “go for broke” in the future. Our SLOG represents the biggest trends that will change the status quo of enterprise software moving forward.
• Software as a Service (SaaS) • LAMP (Linux, Apache, MySQL, Perl/PHP/Python, open source) • Offshoring • Google, Amazon, Yahoo, FedEx, etc. Let’s look at each “letter” in further detail: S: SaaS is a business model that will force increased quality and reliability of sellers, while over the longer term locking in buyers more so than they do today. This is due to the fact that releases and upgrades will occur quickly in time measured in days or weeks, rather than years. Also, software problems will manifest themselves expediently as outages become very public knowledge through the Web and other media. For example, when salesforce.com had a succession of outages, it was made public very quickly through the Web and specialty blogs like www.salesforcewatch.com. While the theory of switching out services quickly is possible, I don’t think it will occur and SaaS vendors will be even stickier than their licensed counterparts. After a few years and lots of users, it is hard to rip something out of a business. Companies that purchase software can stop paying maintenance; those who subscribe to a service cannot, thus making a switch difficult and costly unless it is very well planned (something few user organizations know how to do well). And given the fact that IT capital budgets are locked down and tightly controlled, SaaS via an expense line is a much easier way to penetrate an organization. (This is not to say that SaaS will be the only vehicle for value delivery, but rather it will be the one that represents a lion’s share of incremental buyer spending.)
Rather than represent individual companies (because it’s way too early to identify the eventual winners), the trends that comprise this acronym are:
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
L: The successful buyers of the future will be able to
G: And finally, Google, Amazon, Yahoo, etc. as a group
This use of open source will also have the effect of keeping software companies on their toes and adding value – rather than cost and useless functions – to their product. If buyers just want a simple commodity, they will lean toward buying open source, which implies that software sellers need to keep their eye on increasing the value of their software every year. By the way, this does not mean just pasting on excess functionality; it will be to make the software easier to use, install, integrate with, etc., well beyond what is offered in the open source world.
For example, as Google continues its massive capital build out, exemplified by its “secret” data center in Oregon, does anyone believe that all of its computing power will be used just for consumer search? Not when businesses outspend consumers by about 10 to 1 in technology. It brings to mind what Amazon announced with its Elastic Computing Cloud (EC2). And speaking of Amazon? If I am a small to medium business, much of the functionality I will ever need for selling my product is on its site. Same with eBay. Check out the interview with Amazon’s CTO, Werner Vogels, posted on ACM Queue (Here’s a handy link to that posting.)
The most successful buyers will need to understand how to use offshoring to deliver lower-cost, world-class quality.
What Amazon is able to do is nothing short of incredible when compared to traditional enterprise software.
leverage off open source, not just for infrastructure (LAMP stack) but also for increasing numbers of applications, including simple office functions, document management, collaboration, etc. This will give them a low-cost basis for customer development and deployment and, ironically, access to high-quality software.
O: The most successful buyers will need to understand
SAPtipsJournal
Page 66
SAPtips4CIO Corner
how to use offshoring to deliver lower-cost, world-class quality. Right now, there are many different views as to how well or poorly this works. But let’s face it: any IT professional in any high-tech area (San Francisco, Boston, etc.) represents $120,000 and up in fully loaded costs. And it is no coincidence that end-user companies such as GE, United Technologies, etc., as well as sellers, have been steadily adding offshoring assets while aggressively lowering their internal (onshore) costs. To see the impact and importance of this, just compare Oracle’s recent financials from a cost perspective to those of five years back and look at its maintenance margins. IT groups need to take a page from manufacturing companies as well as retailers in knowing how and when to use offshoring partners and when to build stuff locally. Even though software tech execs are loath to say so, there is no difference between deploying a piece of code and designing and building a part for a safety-critical air-bag system. Over the past 20 years, manufacturers have figured out how to globally source the right parts of their product line. IT groups need to do the same in the next five years.
are leaders in the consumer enterprise and are starting to move into the business world; FedEx is already there. They each have a different perspective on computing. However, they all share a very disruptive business model based on low-cost IT and offerings that should be taken into consideration.
And by the way, there are a couple of small vendors out there who will rise up and displace the enterprise status quo—just like SAP, Oracle, and Microsoft did 15 years ago. Today they are being ignored; in 2016, they will be feared. Isn’t it time you reconsidered your enterprise software strategy by figuring out how to SLOG it? Or SLOG through it? Erik Keller has been a participant in the information technology industry for over 25 years in a variety of roles. He formed Wapiti LLC (www.wapitillc.com) in January 1999. His book, Technology Paradise Lost, which predicts the future of IT spending in corporations, was published in 2004. Before forming Wapiti, Erik was a Research Fellow, Director of Research, and Vice President with Gartner Inc. and was the primary analyst that defined ERP (enterprise resource planning) years before it was recognized by the market as one of the big IT trends of the 1990s. Erik graduated from SUNY at Stony Brook with a BE in Engineering Science. He lives in Ridgefield, CT. ≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
And the winner is:
Charles MacIver, Microsoft Corporation “Aah, they have SAP!! Begin assimilation via user exit MV45AFZZ!! They’ll never know until it’s too late… ha, ha, ha…” Congratulations to Charles, our fifth cartoon caption contest winner. Charles will receive a signed copy of this cartoon with his caption from SAPtips cartoonist extraordinaire, Mark Hill. This is our final cartoon caption contest. A big thank you to all who decided to play along with us and submit entries and vote for the winners! We had a blast doing this and we hope you had fun as well! Stay tuned next issue to see what kind of comic relief SAPtips cooks up for you (as if working with ERPs doesn’t require strong sense of humor already!) In the meantime, our SAPtips Editor, Emil Marx, aka Redd, has cooked up a few brainteasers to keep your mind sharp (when it maybe drifting to other thoughts—like how many days until it’s the weekend.) Immediately below are examples of how to do CrossLine Puzzles. Then, we’ve tossed out three for you to try on your own. Have fun! (Solutions will be available at www.SAPtips.com/Humor.asp.) Object of puzzle: Draw one continuous line that does not cross itself, but crosses each line segment in the figure once and only once. A line segment is the extent of a line between corners or the meeting points of other lines. For example, the figure to the left has 7 line segments.
SAPtipsJournal
Page 67
SAPtips4On Humor
This second figure shows one possible path through the figure. Different paths may be possible. You can begin and end the line outside or inside of the figure – whatever works. Some figures can be easy, some can be hard, and others are impossible.
Puzzle #1
Puzzle #2
SAPtips.com
Puzzle #3
SAPtips © 2007 Klee Associates, Inc.
June / July 2007 Volume V Issue 3
SAPtips Associate Editors Logistics . . . . . . . . . . . . . . . . . Sutrisno Japit, SAP FI/CO Consultant
Laura Donovan, Director of Publications
Pricing. . . . . . . . . . . . . . . . . . Matthias Liebich, MLI Solutions, LLC CRM . . . . . . . . . . . . . . . . . . . Scott Cameron, CRM Consultant Financials . . . . . . . . . . . . . . . . Bill McNaughten, Enterprise Resource Corp. HR and Payroll. . . . . . . . . . . . . . Satish Badgi, Unisys Corporation Business Warehouse (BW). . . . . . . . Anurag Barua, The Washington Post Basis. . . . . . . . . . . . . . . . . . . Eric Walter, Senior SAP Consultant ABAP Development. . . . . . . . . . . . Rehan Zaidi, Siemens Pakistan Data Archiving. . . . . . . . . . . . . . Breck Whitten, Halliburton
We are always looking for outstanding SAP® consultants and subjectmatter experts who want to write for us on a regular or semi-regular basis. Get involved with the SAPtips editorial team today, by emailing Managing Editor Cheryl Cave at
[email protected]
SAPtipsJournal
Page 68
SAPtipsJournal
Laura Donovan is Director of Publications for Klee Associates, Inc., with responsibility for the SAPtips and JDEtips Journals and the editing and production of our Mastery-Level Training Manuals. Laura has over 30 years experience in the software arena, where she has specialized in user documentation and training development and delivery. She’s held in-house publications and training management positions and has worked as a consultant. Laura may be reached at:
[email protected] 1.877.832.2594 ext 190
The publisher, Andy Klee, is the President of Klee Associates, Inc., a premier provider of JD Edwards and SAP implementation and training services. Andy’s personal goal for 2007 is to help more clients optimize their use of JD Edwards and SAP, and realize more value for their software investment.
SAPtips is published six times per year. Copies are available online to paid readers. Preview all content at: www.SAPtips.com
[email protected] 1.970.856.4811 The information in our publications and on our Website is the copyrighted work of Klee Associates, Inc. and is owned by Klee Associates, Inc. NO WARRANTY: This documentation is delivered as is, and Klee Associates, Inc. makes no warranty as to its accuracy or use. Any use of this documentation is at the risk of the user. Although we make every good faith effort to ensure accuracy, this document may include technical or other inaccuracies or typographical errors. Klee Associates, Inc. reserves the right to make changes without prior notice. NO AFFILIATION: Klee Associates, Inc. and this publication are not affiliated with or endorsed by SAP AG, SAP AG software referenced on this site is furnished under license agreements between SAP AG and its customers and can be used only within the terms of such agreements. SAP AG and mySAP are registered trademarks of SAP AG. All other product names used herein are trademarks or registered trademarks of their respective owners.
≈
SAPtips.com
SAPtips © 2007 Klee Associates, Inc.