Ad Blocker Detected

Our website is made possible by displaying online advertisements to our visitors. Please consider supporting us by disabling your ad blocker.

To insert a logo or image onto the front screen of SAP you need to do the following.

Go to transaction code SMW0. Choose the option “Binary data for WebRFC applications”. Enter your required package or development class that you wish to use then execute. You will then be taken to the screen which is output below.

Click on the create icon. You will be asked for an object name and description. The object name should use the customer naming conventions i.e. z…

You will be prompted to attach the relevant image which will be on a local or network drive. You will be asked to place the configuration into a Workbench transport.

You might get a message type referring to MIME object types not having been maintained. If you do you need to go and create one for your file type using the menu path from that screen Settings Maintain MIME types.

You now need to go to table maintenance and edit the table SSM_CUST. The table is output in the screen below. The key entry is the one “START_IMAGE” – which needs to hold the object name which you created in the previous step. As in the current example I have used the object name ZEJH1. There are various other settings which can also be set.

Importing Files into Excel

When importing files that have the file extension .txt or .csv or .prn, you will be required to choose one of 2 methods. You can use either the Delimited or the Fixed Width option. Excel is usually very good at determining which method to use. If you are not sure which method to use, use the one defaulted by Excel. If it is not quite right, you can always re-import the file.

If choosing the delimit option, the wizard defaults the choice of tabs as your delimiter. You can add and delete different delimiters. The columns are by default set to a General default. Dates should be changed to date formats and the drop-down box allows you to choose the order e.g. dmy, ymd, mdy etc. Click on the “finish” icon to conclude the import process.

With the fixed width option you can move a line by clicking and dragging, delete a line by double-clicking on it and insert a line by clicking once in the required position. The next step allows you to modify the formats. Click on the “finish” icon to conclude the import process.

Exporting Files from Excel

Files from Excel are generally saved with the usual .xls file extension. If you are wishing to save the data in a flatfile format e.g. .txt or .prn extension, Excel will prompt you with the message “xxxx.txt is not in Excel format. Do you want to save your changes”. You have saved the last version of your file in a file format other than Excel and the program offers you the chance of saving it in an Excel file. Don’t worry about this command – just click “No”. Clicking cancel will leave you in Excel with the same file open – with .txt files you generally need to have closed the file.

Paste Special

This is a useful command, which allows you to paste data using additional features. If you use the normal paste function – this copies formulae, which are not always required. Once having selected the data you wish to copy, and copying it to the clipboard, click on the top left hand cell of your target selection. Right click on the mouse or use the menu path Edit – Paste Special. Ensure that the radio button is set to “values” if you are copying formulae and wish to output values.

Ensure that the checkbox “transpose” is ticked if you wish to transpose the rows and columns when copying the data. If your selection is 5 rows by 2 columns – transposing and copying will result in 2 rows by 5 columns.

See the relevant worksheet in the Excel sample file.

Inserting Objects

Inserting objects allows you to insert objects into Excel. Use the menu path Insert – Object to choose from a number of different objects. You can either use the “create new” or the “create new from file” tab. The difference is that the second option allows you to make changes which upon being saved, will be reflected in the original source file. The first options allows you to make changes, but these will only be saved in the Excel view and not in the original file.

Cell Formats

Cell formats are usually set to General. If you experience problems with certain functions, you can set the contents of both sets of data to Text. When using functions, ensure that both sets of data have the same format.

You can use the “custom” format to derive your own specific format.

Fill Command

The “fill” command can be found using the menu path: Edit – Fill. It is useful for populating data. Highlight the cells in which you wish to have the data populated. Ensure that you have data in the first cell of the selection. Excel will use this value as a basis for the series that it produces. Choose the “Down” command off the menu if you wish to have all the values in the selection filled with the value that exists in the first cell. If you wish to increment the values by a certain amount, choose the menu option “Series”. Ensure that the radio button is set to row or column – depending on your particular selection screen. Choose the step value that you wish the data to increment each time. You can set a stop value up to which the cells will be populated.


Macros are useful for automating a task which requires a lot of manually repetitive work. Use the menu path: Tools – Macro – Record New Macro. Choose a pertinent name for the macro and record it. You can assign a keystroke shortcut to the macro.

You can link an icon to the macro. Turn the view “Forms” on. Create a button. Once having created the button, you will be prompted to assign a macro to it. Choose the relevant macro. If you right-click on the “button”, you will see an option which allows you to change the text on the button.

See the relevant worksheet in the Excel sample file


Add-Ins are sub modules of Excel which need to be “switched on” before they can be used. You can switch them on and off using the menu path: Tools – Add Ins. Tick the checkboxes to turn each component “on”. Once turned on and having clicked on the “OK” icon, you will see Excel loading the modules on the bottom left hand side of the screen.

Sorting Data

Choose the data you wish to sort and then use the menu path: Data – Sort. If you have headings in your selection set, then make sure that the radio button “Header Row” is selected. If you are just selecting the data, without the headers, then ensure that the radio button “no header row” is selected. You can choose a sort order and whether you wish to have the data sorted in an ascending or descending manner.

Filtering Data

When it comes to filtering data, you can choose to use the “auto filter” or the advanced filter options. The auto filter should be sufficient for most cases. Selecting the auto filter option will allow Excel to filter the data it finds. You can also manually select a portion of data and then click on the auto filter icon. You can select a filter by clicking on the drop-down arrow in the relevant column. You will see that the list contains all the possible entries. Choosing any one of them will then display only the rows containing that entry in the specific column. Notice that the colour of the arrow changes to blue when AutoFilter is enabled. If your data is right-justified, it might be preferable to change it to be centred or left-justified, as the filter arrows occupy the right-hand-side of the top row of cells.

The advanced filter is best described by using an example, which can be seen in the sample file.

Choose the advanced filter. Ensure that you have your criteria in separate cells – known as your “criteria range”. The data you wish to filter is known as the “list range”. Click on the OK icon once you have made both selections. The selection indicated below will find all the rows which have both “1” in column A and the letter “a” in column B.

If you wish to show only the first row for each duplicate entry, you must tick the field “unique records only” checkbox. You can then copy and paste the unique entries to a new spreadsheet if required.


Subtotals carry out the same function in Excel as the name suggests. You can choose any set of data. The sample file gives a sample example of what can be done. You might want to create subtotals at each change of colour. You can minimise the data by clicking on the “-” signs on the left hand side.

Data Validation

Data validation is quite useful for a number of reasons. It is ideal for offering a drop-down of available entries.

Ensure that you have selected the cell in which you want the drop-down to appear. Use the menu path: Data – Validation. Choose the option “list” from the “allow” drop-down. Choose your “source” which in the example below will be the cells A10:A12. Click on the “OK” icon to complete the process. You will now see the arrow appear on the right hand side of the cell. You can now copy and paste this cell to other cells which require the list.

It is a good idea to place the “source” cells far from the current view. This could make things less confusing for users who need to fill in the options.

Data validation is also useful for placing restrictions on the data that can be input into certain cells. Look at the Excel sample to get a better idea.

Pivot Tables

Pivot Tables can best be described by looking at the example file set up in the Excel spreadsheet. Pivot tables can be created using the wizard found using the menu path: Data – Pivot Table Report. There are 4 steps to the wizard. You first stipulate what form the data is. Then you stipulate where it is and how it is to be reported on. You need to choose which headers need to be allocated to rows or columns, which are to be counted and the entries that are to be assigned to the data area. You can drag and drop the fields. The last step in the wizard allows you to choose where to output the data – on the current worksheet or a new one. The last step also has an “options” tab which allows you to customise the table quite considerably.

You can turn the Pivot Table shortcut menu – which makes things a bit easier.


Vlookup is used whenever you wish to know if a value is found in a particular selection. Choose your result or destination cell. Functions are always written in the following format: =vlookup(….

Using the simple example found in the Excel sample. If you wanted to know whether the following 2 wage types in column A were listed in column B, you could use “vlookup” in the following manner. Place your cursor in cell C1 and type in the formula listed. The formula has 4 parts within the brackets which are separated by a comma. You need to stipulate the first cell to be tested (A1), then the range to be looked in (B1:B10), then a 1 followed by either a true or false condition. The value 1 means that the contents of the first column will be returned. False implies an exact match, whilst using True will return the closest value.

Note the $ symbols between the column letter and the row. This has been inserted to stop Excel incrementing the values by 1 each time, when copying the first cell of column C into the second, third, fourth entries. This explanation is more easily conceptualised when looking at the Excel sample file.


Concatenate is a useful function for joining 2 or more columns of data. As indicated in the Excel sample file, “text 1” is the first column of data, “text 2” is the second column of data etc. Having chosen the second column of data in “text 2”, you’ll notice that “text 3” appears. The wizard will allow you to choose 5 sets of data. Having completed the process, it is possible to edit the data and manually insert further sets of data.

Sum, Average, Count, Max, Min

The above 2 functions are rather useful and are often used. If you ensure that the cell you wish the sum to show in, is selected, you can click on the summation icon and Excel carries out a best guess of the cells it thinks you wish to sum (usually the cells immediately adjacent). You can change the target selection.

If you wish to use the “average” function you can use the Fx icon. You will then have an opportunity to use any of the available functions. Choose from the most recently used ones: mathematical, date types etc.

A shortcut offers you the opportunity of using the following functions:

  1. Average
  2. Count
  3. Count Nums
  4. Max
  5. Min
  6. Sum

If you click the right hand mouse button whilst hovering at the very bottom of the screen, you will notice that one of the above 6 functions will have a tick alongside it. You can tick any one of the 6 to change the default. If you select any number of cells with data, you will notice that the defaulted function offers a result.

The “count” function gives the number of records in the selection criteria.

The “max” and “min” give the maximum and minimum values in the selection criteria.

The “count nums” is the same as “count” when the data contains only numbers. If the data contain any non-numeric data, “count nums” will ignore this while the normal “count” function will include these values as well.

Date Functions

You can determine days of the week from different dates by using the Excel function “weekday”. As can be seen in the sample Excel file, the result of the query is output in column C. The function looks at column A and decides whether it is the first, second, third etc day of the week.

The number corresponds to the second value in the formula – 1 in this case. The “1” implies that the first day of the week is Sunday. Days falling on Sunday will return 1, Monday 2, etc

Having a 2 in the formula means that the following sequence is used: Monday returns 1, Tuesday 2 etc.

Having a 3 in the formula means that the following sequence is used: Tuesday returns a 1, Wednesday 2, etc.

Split Windows

The split windows command allows you to view different parts of the same spreadsheet. Use the menu path: Window – Split to give you a vertical and horizontal split. To remove the split windows you can use the menu path: Window – Remove Split. You can also create an individual horizontal or vertical split by double-clicking on the bar immediately adjacent to the horizontal and vertical scroll bars. The cursor changes to a symbol indicating 2 horizontal or vertical arrows, separated by 2 parallel lines.

Freeze Panes

Using the “freeze panes” functionality is quite useful when you wish to see the headings – which are usually in the first row or column. The functionality is found using the menu path: Window – Freeze Panes. Click on a specific cell. The window is frozen immediately above and to the left of that cell. This can be seen in the sample Excel file. The cursor is placed in the cell B2. Scrolling to the right and down will still allow you to view the headings in the first row and column.


The above function is quite useful. It allows you to consolidate data from different Excel data sources. The most useful example it to consolidate data which is found on different worksheets. The task is made easier if the data is in the same format and structure. The example found on the sample Excel file accompanying this document, shows how the feature can be used in its simplest form.

Note: Formulae are only copied through as values and not as formulae.

Page Setup

You can make changes to the page setup by using the menu path: File – Page Setup. There are 4 tabs: Page, Margins, Header/Footer and Sheet.

The Page tab allows you to alternate the page layout from portrait to landscape and vice versa. You can also change the size of the print, by adjusting the percentage of the normal size – where the normal size is defaulted to 100%. Alternatively you can force the printout to be a certain number of pages wide or tall. This is useful especially once having set a print area.

The Margins tab allows you to change the 4 margins on each side as well as the height of the header and footer. You can also centre the data either vertically or horizontally.

The Header/Footer tab allows you to insert certain text items and attributes into the header and footer. For both the header and footer there is a drop-down arrow on the right hand side which offers you certain choices. If these are not sufficient, you can click on the custom header or custom footer icon to determine your own. You can determine the font, page number, total page numbers, date, time and file name.

The Sheet tab allows you to determine certain things. You can set the print area, decide what fields are to be printed at the top of each page and on the left hand side of each page, whether to print gridlines, row and column headings and other pieces of information.

Print Areas

Print areas are useful if you wish to print only a certain part of the document. Highlight the area you wish to set as the print area and use the menu path: File – Print Area – Set Print Area. You will then only be able to print out that piece of chosen data. You can clear the print area by clicking on the menu item Clear Print Area, which can be found immediately below the “set print area” command.

General Hints & Tips
  1. If you are unsure as to what data is required for a function. Choose the destination cell for the function and then enter “=function” in the cell – where function is sum, vlookup etc. Click on the “=” icon to the left of the cell input area. This will bring up a dialogue box, which guides you through the required procedure.
  2. If you need to select a column which has thousands of entries, you do not have to click the top cell and drag right down to the bottom. Highlight the top cell and holding down the shift key, double-click the bottom line of the highlighted cell. This will take you the next cell preceding an empty cell – which should be the last cell. Note: If there are any blank cells within the column, the whole column will not be selected.
  3. If you have created a formula in a cell. Instead of clicking and dragging the bottom right hand part of the cell to the last possible cell in the range – double click on the bottom right hand side of the cell (hovering over this you will note that the appearance of a “+” sign). This will have the same effect.
  4. If you wish to increment a cell by the next available value e.g. you wish to number the first 100 rows from 1-100. Place the value 1 in cell A1. Click on the bottom right hand side of the first cell and drag it down to cell A100. You will note that the values increment by 1 in each case. You can do this with dates and other types of values. Note that with certain cell formats you may need to hold down the Ctrl key to enable this.
  5. If you have a spreadsheet with duplicate entries in any column and you wish to only have the first record showing – you can do so using the following workaround. In a spare column write a formula which finds the difference between the cell and the one following it. Copy the formula down to the end of the rows holding the data. You will see that the result is 0 unless there is a change in the sequence. Copy the whole column (containing the formula) and use the paste special – as values, in the adjacent column. You can then sort all the data on this column to get the unique rows.
  6. Switch on the “Show Tip of the Day” in the options in the Office Assistant to get invaluable tips on Excel.
  7. When averaging cells, keep in mind the difference between empty cells and those containing the value zero, especially if you have cleared the Zero values check box on the View tab (Options command, Tools menu). Empty cells are not counted, but zero values are.
  8. To change the author name for the active file, do so under the menu path: File – Properties.
  9. To make a macro available whenever you run Excel, store the macro in the Personal Macro Workbook. Remember to unhide it first, because the Personal Macro Workbook is a hidden workbook that is always open.
  10. To constrain an object so it moves only horizontally or vertically, press SHIFT as you drag the object.
  11. To save changes to a read-only file, use the Save As command (File menu) to save it with a new name.
  12. If you want a macro to select a specific cell, perform an action, and then select another cell relative to the active cell, you can mix the use of relative and absolute references when you record the macro. To record a macro by using relative references, make sure that Relative Reference is pressed in. To record with absolute references, make sure Relative Reference is not pressed in.

A brief review of some common lessons learned when undertaking an implementation or project.

The idea of a perfect project is a rare one. Undoubtedly all projects will succeed in some aspect and they will fail or come up against some issues no matter how large or insignificant they may be.

However, what is important is taking onboard those successes and issues at an early stage so they can be repeated or mitigated in the future.

It is a good idea to evaluate the progress of the project at regular junctures throughout the implementation usually between phases i.e. Blueprint to Realisation. This is just as a measure of how the project thinks it is doing relative to how the project is actually doing. Lessons Learned sessions provide a good forum for doing so. They are also a great way for all members of a project to have a constructive contribution to how the project is running, as different members of the project team will see different successes and challenges from sometimes very different perspectives.

A book or three could be written on the pitfalls of projects but we will cover just a few simple points which sometimes come out of lessons learned sessions.


Without careful, detailed and realistic planning a project, no matter how big or small, will run into difficulty.

So many lessons learned sessions seem to yield very similar outcomes, such as, ‘planning needed to be more detailed’, ‘ we needed to be more realistic with the resource available’ or ‘given resourcing levels can we phase some of the solution we are attempting to implement later rather than completing this for one Go Live’ and it goes on.

A plan varies considerably and usually forms a high level phase plan to individual task level plan. It offers a very practical way to evaluate the progress of what activity should be taking place on an agreed timescale. They are used for different purposes and importantly different audiences within the project. The Programme Manager, for instance, will often have little interest in the 500 point task plan to implement Organisational Management and Personnel Administration.

It is a good idea to ensure a high level plan exists of the broad phases and key milestones which will need to be met to see how they fit with the expected delivery dates. These usually take the form of the broad phases of an implementation i.e. Blueprint, Realisation, Testing, Data Migration, Cutover and Go Live

Then breaking these down into their constituent parts if we take the Testing phase as an example planning needs to take place to ensure; Unit Testing, Integration Testing, User Acceptance Testing (UAT), Business Process/Scenario testing (i.e. Day in the life of….), Regression Testing and Stress Testing to name but a few.

Then breaking these down even further, each of these tasks needs to be planned. If we take UAT there is; test script writing, what resource is required to complete this test phase, method of recording scripts and results and acceptance criteria, etc.

The key is then ensuring that when this has been sufficiently planned, there is then enough resource and time to complete the project within the agreed timescales which can mitigate planning coming up again and again as a lesson still to be learnt.

Change Management

We will here look at one aspect which is very important and often comes out of Lessons learned sessions, ‘user buy-in’.

Often seen as the first area where resource is cut in the face of difficulties, this can be the biggest mistake. Always in Lessons Learned sessions where Change Management is missing, no matter how successful the project, when the solution is deployed into the wider business, the way Change Management has readied the business for that change will have great bearing on the success of the project. In other words, how much has the business bought into the project and what does the business want to achieve as a result of the project. This is particularly true for those users brought onto the project. These are key users as their impressions will always disseminate throughout the rest of the business and give the business confidence on the ground level.

Before the solution is deployed into the business, while the project is being undertaken, the user population are the primary source of company specific information. This includes how the processes are currently undertaken, who carries out these processes, why do they carry them out and when are they carried out. All this information obviously forms the basis for the blueprint and is gained during workshops.

The feedback in Lessons Learned sessions is often that this information was not readily available slowing the progress of the project and impacting on any carefully organised plans. Where this becomes an issue is once the consultants and consultancy team have moved on site, the project team members often report back difficulties ranging from; attempting to gather information from a sometimes wary user population for Blueprint and Process design, to attempting to gain sufficient information to test company specific scenarios and ensure the solution is ‘water tight’.

User buy-in can often be gained by empowering users. Giving sufficient training can provide this. Lessons Learned sessions often feedback that training was inadequate or absent for those working on the project from inside the business or the general user population. There are many different issues that can come up and are often the cause for much discussion, but Change Management must lead in order to integrate the project and the business, and guarantee the long term success of an implementation.


Another aspect which is often of primary concern in Lessons Learned sessions is communications. These activities are usually carried out by a Change Management team.

Are all team members and teams speaking to one another?

All too often something so simple such as suitable lines of communication to all members of the project team can mean success or failure. Lessons Learned sessions often have members of the project claiming that they didn’t know what was happening in other areas or that they didn’t think a single long-winded email every week was very effective.

Communication is vital, particularly where more than one consultancy may be involved or more simply if teams are working in different rooms or buildings. Part of the work may be being carried out offsite. Alternatively, those people from the business who have been moved onto the project may not have worked in a project environment before, and may have little or no project experience.

It is important for appropriate methods of communication to be decided early on, and that they are maintained to avoid confusion and misinformation. These can be regular structured meetings where information can be filtered through all levels of the project. Or possibly succinct emails which provides a brief synopsis to the other team members in different areas of the project. Posters of high level activity throughout different phases of the project also give a good summary of activity and progress.

Poor communication to members of a project team can cause time delays, confusion and often duplication of effort. This is all a waste of time and effort.


Here we aren’t talking about specific business processes as these vary from business to business, we are talking about project processes, those activities which oil the success of a project. If ineffective processes exist, they can prove to be some of the biggest hindrance and frustration to its team members.

Often project methodology is used as guidance or principles from other implementations are used which are not applicable. Typically these will come up in Lessons Learned sessions. Really this is very simple, do not be dogmatic in the approach to processes on a project and while those in project management may feel they are the best processes, it is listening to the outcome from Lessons Learned sessions which can give invaluable feedback to how the processes can be made even better.

A good example of this can be an overly complicated approval process for moving transports through the landscape after the managed drops of the Realisation phase. Now certainly rigor needs to be applied particularly where there are contractual ramifications for work being moved into a test or productive system. However, nothing is more frustrating when a transport takes an overly long period of time which comes from 10 meetings and 7 forms which need to be filled in as it can stall consultant activity, testing from the business or equally getting a fix into production.

The result of a slow or ineffective process can be stopping the progression from one phase of the project to another, wasting resource time on either the consultant or business side or causing the business undue pain. Obviously this then has an impact on the planning phase and eventual Go Live.

Thinking about the Future

The final point here is thinking about what happens after the project. Once the project gains momentum, attention turns to what happens when the consultants leave site.

For the business this reality may not hit until the latter stages of the project but once it does, a certain amount of fear and trepidation can be seen over the question of ‘what happens if something goes wrong, we want to make a change or we want some new functionality?’. If we think about the amount of money that is invested, which will not be an insignificant amount, then looking after and maintaining that which has cost time, effort and money needs to be protected and maintained.

The questions from the business in Lessons Learned sessions about support will not usually come until the latter stages of the project as previously mentioned and what this is often linked to is training and training needs or ‘who do I go to if?’. However, both aspects need to be thought of as part of the evolution of the system from day one, as the project itself is only the start of a system lifecycle which over the long term can be 10-15 years with upgrades. So if the project is 6-24 months, then the system will be live without consultants on site for the majority of the lifecycle.

Putting into place a strategy for support at an early stage is vital and will certainly make the business more comfortable in operating post implementation effectively and efficiently, as well as identifying exactly where user training is required and the form and depth of that user training.

The size, complexity and business areas of the solution need to be considered in terms of the strategy for support and implementation from day one. Taking Payroll as an example, the size, scale and impact of the Payroll needs to be outlined for a support and training strategy. Obviously the Payroll process from business to business varies considerably and depending on the business’ terms and conditions it can be very complex or relatively straight forward. It is heavily utilised on a regular basis and the impact of it not working is vast. You can instantly see these factors begin to shape the strategy and requirements for support and staff training.

The sharp end of these considerations will be raised by members of the business and consultants and these concerns are regularly raised in these Lessons Learned sessions. Where budgets may be tight as a result of the project, the support requirements need to be considered and ‘trimming’ the support will usually lead to longer term pain both financially and operationally as is similarly found with Change Management.

Lessons Learned sessions are invaluable if structured and managed properly. All too often it is not learning from the lessons and simply completing the activity because the ‘project management 101’ manual said to do so which is the biggest lesson not to be taken from the sessions. These can be vital opportunities to save time and money and to encourage good practice and stop bad practice in its steps.

Listen and learn.


Without doubt, probably the most powerful word in any project environment. You cannot be overly prepared. If you have the time, resources and budget then you will be in a position to be able to undertake this task adequately. If you don’t have the required time, resources and budget then you are likely to be under-prepared at Go Live and no one wants to be in that position.

Always have a contingency or back up plan for project risks

Remember that a risk has been raised because of its likelihood of occurring and its significance on the outcome of the project. Concentrate on the ones that are likely to occur and which will have a major impact on the success of the project. Make sure you have a plan to minimise the likelihood of these risks becoming issues on the project. Once a risk becomes an issue you have to deal with it. So make sure that you minimise the chance of it becoming an issue through careful planning and management activities.

Be selective about which risks you include on the risk register

Capture both the likelihood of the risk becoming an issue and its impact on the project. You can now start looking at these individually.

Take note of the likelihood of the risk and the impact that it could have on the project

Having said that, only include risks that are possible and have a chance of occurring. Don’t include external risks which are inconsequential in terms of the project’s outcome. Once you start including these sorts of risks you detract from the real risks that are likely to affect the project.

You can never have too much detail

Remember that you will never really fail by having too much detail. The converse is true in that many projects have had too little detail and failed. Having more detail is far better. Project team members can see what is required and know exactly what has to be done

Communication is vital

One of the most important lessons that have been learned from previous projects, is that where projects have failed, one of the key issues has been the lack of communication. Granted, there will be other issues as well, but it is highly probable that these would not have surfaced soon enough, due to the poor communication channels or lack thereof.

Executive Buy In

The project needs total endorsement from your organisation to ensure that it takes precedence over other business as usual activities. With strong project sponsorship your project has a much greater chance of success. If you have a project sponsor who is high up within the organisation and who is quite influential, then you have a better chance of success. They can influence activities in the organisation to either suit or minimise the disruption to the project

Prototyping Solutions

The building of prototypes is a vital step in any project environment. This is especially important whenever a bespoke solution is being built. The prototype allows the users to see, at an early stage, what the solution could look like. There is nothing worse than seeing the look on a user’s face at the time of testing and knowing that the solution which has been built is not going to be well liked or easily used by the users. This brings on change management issues which could have been avoided. Remember that the consultants will design the best solution based on a technical view. Many consultants will not view the solution from a users perspective.

See the relevant worksheet in the Excel sample file

The Role of Project Sponsor

This role is crucial for the project. It is important that the project sponsor is not changed on a frequent basis. Having just one project sponsor is ideal. We have been involved in projects where the project sponsor was changed 3 times. This is far from ideal as you lose the continuity of the project sponsorship.

Change Management

Don’t let people tell you that this is about the training of users on SAP. Training is part of the change programme, but for all intents and purposes, Change Management is exactly what it says. It is about managing the change which users go through in the transition from their current system to SAP. This is probably the most under rated item on a project list and is often either left till last in terms of the order of priorities or left out entirely.

Training of Users

Training cannot be under estimated for any SAP users in the organisation. Remember that there will be different training requirements for different types of users. You may require project training for the super users involved in the project. You will require training for the testers involved in User Acceptance Training (UAT). In addition you may require to carry out train-the-trainer training and/or end user training.

Planning of Project Resources

Don’t underestimate the number of resources you require for a project. Remember to allow some contingency in your planning of resources. There will be tasks and activities which you may have omitted from the project plan or forgotten entirely. If these activities are required and you don’t have any spare resources, they will have to be done by existing project team members. This will place additional pressure on your existing resources, which is not a great scenario. They will already be under pressure. Remember that project team resources will in all probability not have gone through a project lifecycle before. In addition, as happens on most of our projects, they will be required to complete their “normal” daily activities. This is often done late in the afternoon or evening and will put them under pressure, even without having to undertake any additional, unplanned project activities


Unit testing – this is testing done on a single piece (unit) of configuration and is done by the consultant

System testing – this is the testing done by the consultant in the test environment, before any user acceptance testing (UAT) is done.

Integration testing – this is the testing which covers, as the name suggests, the integration points. The integration points are those which exist between different sub-modules and modules of SAP. Examples would be as follows: transferring an applicant from recruitment to personnel administration, posting results from payroll to FI, transferring qualifications from Training and Events to Personnel Administration.

User Acceptance Testing (UAT) – this as the name suggests should be carried out by the users. This should never be carried out by the consultants who did the configuration. This is a key part of the testing and is useful for a number of reasons. It gives the end users a chance to see and use the system. It also gives relatively new users a chance to see whether they can find any faults with the system build – whether this is due to configuration, data or lack of knowledge in how to use the new system.

Regression Testing – this testing takes place whenever the new configuration is to be introduced to existing functionality. This testing determines the impact of the new functionality and modules on the existing system build. This testing is important for SAP, which is a tightly integrated system.

Stress testing – this is usually done at the end of the testing cycle. Remember that this is not to test the stress levels of the project team members. It is to test whether the new hardware can cope with the transaction volumes expected as a result of the new functionality being introduced.

If you wish to see all or some of the transaction codes in the system, use the data browser (SE16), or the more advanced SE16N for table TSTC. There are approximately 20 000+ SAP standard transaction codes, so remember to increase your maximum number of hits. You can then use the “find” option to search for any key words.

Alternatively use transaction code SE93 which takes you to the transaction maintenance screen. From there you can search and find the relevant transaction code.

This table contains transaction codes which are commonly used by SAP HR folks

Transaction Code


/n… Ends the current session – can proceed to the stipulated transaction code
/nPA30 Ends the current session and starts transaction code PA30 in its place
/o… Creates a new session and takes you straight to the new transaction code
/oPA30 Opens a new session as PA30
/nS000 Ends the current session – takes you to the main menu
/i… Deletes the current session
/nend Logs you off SAP
/nex Logs you off SAP without confirmation message
AL11 Allows you to look at the directories on the SAP server. Double click on any directory to take you to the sub-directory or to a list of the individual files located therein
CMOD Can undertake modifications to the names of screen fields
FB03 Display documents and document types
FI01 Create bank sort code data
FK03 Display vendors
FS00 Edit G/L Accounts
HR00 HR Report Selection
KS01 Create cost centres individually
KS03 Display individual cost centres
KS07 Fast entry screen for creating cost centres
LSMW Legacy System Migration Workbench. Very useful for large data loads. Easy to set up and get going on. More powerful than CATT procedures.
OKEN Display the standard FI cost centre hierarchy
OOFO Form Painter: Request – allows you to copy, change and display the SAP Script forms – in Training and Events
OOPS Allows you to set various defaults for PA and OM
OOSB Relationships between user and authorisation profiles
OOSP Authorisation profiles
OSS1 Takes you to OSS in SAP – not used anymore as OSS is done via your browser on the SAP Service Marketplace (www.service.sap.com)
OY19 Checks across SAP clients and systems – allows you to check and compare tablesetc. Very useful tool but can be quite onerous on your system. Be careful about what areas you choose to compare – you could get a visit from the whole Basis team!
PA03 Transaction for changing the control record for a payroll area
PA10 Display personnel file
PA20 Display master data
PA30 Maintain master data
PA40 Actions screen
PA51 Display time Data
PA61 Maintain time data
PA62 List entry of additional data
PA71 Fast entry of time data
PAR1 Flexible employee data. Takes you straight into this report which is highly flexible, easy to use and provides useful output.
PAR2 Takes you into the report which outputs the employee list. Another very useful report.
PAT1 Personnel Administration infosystem
PC_PAYRESULT Allows you to view payroll results for an employee
SE16 Data browser: lists all the different tables
SE16N General Table display. Improved version of SE16
SE36 Logical Database Builder
SE37 Function Builder
SE38 ABAP/4 editor * programs
SE39 Allows you to compare different programs in 2 separate windows. The programs can be different programs in the same client or the same program in different instances.
SE43 Area Menus: Create, modify, display etc
SE71 SAPscript editor – create, modify and display SAP Script forms
SE78 SAPscript graphics management- allows you to view all the graphics available for SAPscript commands
SE80 Object browser: initial screen – get details on any program eg.RPCALCW0
SE93 Transactions: Create, modify, display etc
SEARCH_SAP_MENU Find a transaction code or word from a menu path in the standard SAP menu
SEARCH_USER_MENU Find a transaction code or specific word in a user menu
SECR Audit information system
SERP Allows you to change a report tree
SHD0 Transaction variants, allows you to search for different transaction codes. Can use wildcards in the transaction or name of the transaction
SHDB Batch Input: Recording
SLG1 Allows you to see which payroll results have been deleted for which employees
SM01 Lock/Unlock Transactions – double click the relevant transaction to lock/unlock transaction
SM02 System messages
SM04 User overview/monitoring
SM12 Locked entries: display and delete locked entries
SM19 Configure audit log
SM20 Review the audit log
SM31 Table maintenance
SM35 Batch Input: Initial screen
SM36 Scheduling background jobs
SM37 Viewing status of background jobs. If you need to know who has run a particular report, key in the report name as the job name and place an * in the field user name. You can also see which variants users used for a particular report. Click on job and the job log.
SM51 List all servers
SM59 Maintaining RFC Destinations
SMOD User exits
SMX Status of your own current background jobs: shows latest 5 & overview
SO01 SAP Office – Inbox
SO10 Standard Letters – create, modify etc. Use HR_G for notification messages
SO99 Find release notes
SOST SAP Connect: Send requests for a period
SP01 Output Controller
SPAD Allows you to change the printer settings including font maintenance and many other attributes relating to printers
SPAM Support Package Manager
SPAU HRSP application tool
SPRO Takes you to the IMG
SP11 TEMSE file administration
SQ01 ABAP Query: Maintain queries
SQ02 Functional Area – Maintenance
SQ03 User Group – Maintenance
ST03 Performance Monitoring – allows you to view server response times, user traces etc
ST22 Dump Analysis – lets you view Screen Dumps on any day for any user: using selection criteria
STMS Transaction used for carrying out the transports
SU2 Maintain User Parameter – allows you to update your own parameters in the same session.
SU3 Maintain Users Own Parameters – allows you to maintain your own settings in same session.
SU01 User maintenance
SU53 Run it directly after you have been blocked by authorization checks
SUIM Security and authorisation information system – very useful area to run reports for security roles and profiles for users on SAP.
SXDA Data transfer workbench. Hit enter and you get taken to the screen which is the same as report – RPUSTD00
PC08 GB Payroll User Menu (replace 08 with your own country modifier)
PDSY HR document maintenance
PE01 Payroll schema editor
PE02 Payroll PCR (personnel calculation rules) editor
PE03 Features editor
PE04 Functions(schemas) and Operations(rules)
PE51 Form editor for remuneration statements, P45’s etc.
PE51_checktab Key payslip changes – overview of key payroll form settings
PEPM Profile Matchup in PD
PEST Profile Matchups in PD
PFCG Configuration of activity groups, profiles and menus. You can attach them here to test them against a test user, or you can use SU01.
PPOM_OLD Simple maintenance for OM (especially if you don’t like using PPOME)
PPOME The new OM graphical maintenance of the organisation structure
PQAH Ad Hoc Query – report name is RHADHOC0. This is the old transaction code. There are other transaction codes which are now better to use as they provide you with more flexibility and functionality.
PR05 Travel Expense Manager
PRFI Create Posting Run
PRRW Posting Run Management
PT69 Multiple persons or infotypes time data
PT40 Time management pool
PT50 Quota overview
PT60 Time Evaluation (RPTIME00)
PT61 Time Statement
PT66 Time Evaluation Results (RPCLSTRB2)
PU00 Allows you to delete individual employees
PU01 Deletes individual payroll results
PU03 Change payroll status
PU90 Allows you to delete individual applicants
PU95 Edit Wage Type Groups & Logical Views
PU97 Logical Views
PU98 Assignment of wage types to wage type groups
RZ10 System Profile Maintenance
SA38 Allows you to run a report – similar to SE38 but geared towards running the report rather than editing the actual code and attributes etc.
SAINT Add-ons and Plug-ins Installation tool
SB09 SAP Reference Structure – Process Flow Diagrams
SCC1 Allows you to carry out a “pull” transport from any client on the instance to the client that you are in. Very useful transaction as it allows you to move unreleased transports.
SCC3 Allows you to view the logs of client copies
SCC4 Allows you to carry out maintenance on any client – e.g. changing the transport status, client dependency, CATT status etc. You can also view all the available clients on an instance.
SCMP View table comparison. Very useful in checking tables between different instances. Need to have RFC connections set up for this piece of functionality.
SCU0 Cross System Comparison – allows you to compare config in different clients/servers.
SE01 Transport Organiser – initial screen. Allows you to view details of an individual transport. Can access the Transport Tool from this screen.
SE03 Transport Organiser – Tools
SE09 Transport maintenance screen – for Workbench (ABAP programs)
SE10 Transport maintenance screen – for Customising (configuration)
SE11 Dictionary: Initial screen. Good for getting the values from a table – like SE16

If you undertake the same task on SAP repeatedly and use the same input data it may be useful and possible to set defaults on parameters

This table contains user parameters which are often used

User Parameter

Parameter Description

ABK Payroll Area
APG Applicant group
AQB ABAP Query: User group
AQQ ABAP Query: Query
AQR ABAP Query list
AQS ABAP Query: Functional area
AQW ABAP Query: Query area
ARA HR: Payroll type
ASP Aspect (PD)
ATB CATT – Test module flag
BEG Start Date (PD)
BUK Company Code
CAC Controlling Area
CHR View HR assignments
CM_CPLAN Compensation adjustment type (HR Compensation Management)
CM_CPROC Compensation Adjustment Reason
CM_FREQU Time unit for compensation (HR Compensation Management)
CM_PERIOD Compensation Plan Period (HR Compensation Management)
CMA Compensation area (HR Compensation Mgmt)
CTP CATT – External variants path specification
CYC HR: Personnel calculation rule
DFB Default Start Date (PD: PPOM)
DFE Default End Date (PD: PPOM)
DFV Default View (PD: PPOM)
DSY Transfer values to RPDSYS00
END End Date (PD)
FRL Form
FWS Currency Unit
HR_DISP_INFTY_NUM HR: Display Infotype Number
HRDSYS Language vector for HR document system
HRDSYS_LANGU Alternative languages for HR documentation system
HRPE01_DISPLAYMODE Display Personnel Calculation Schemas (‘TREE’ / ‘TABLE’)
HRPE02_DISPLAYMODE Display Personnel Calculation Rules (‘TREE’ / ‘TABLE’)
ITP HR Master Record – Infotype
MEN Menu name
MOL Personnel Country Grouping
MOS Personnel Subarea Grouping for Work Schedules
MRK HR: Feature
NAT HR: Nationality
OCBONDT HR-PAY: Payment date for off-cycle payroll accounting
OIN Default Object ID (PD: PPOM – Input Organizational Unit)
OMD Table analyses: Comparison client
OM_DATE Default start date used in PPOME
OM_OBJM_NO_DISPLAY OM: Deactivate Object Manager (PP01, PA30…)
OM_OBJM_NO_LAST_SEAR OM: Do Not Restore Last Object Manager Search
OPS HR Master Record – Object ID
PBR Personnel Area
PBS Personnel Subarea
PCA Plan for payroll calendar
PE_APP_PRINT Appraisal systems: print parameters
PE_PLAN Access Shift Planning With Target Plan or Actual Plan
PE_STNBY Show/Hide Availability Line in Shift Plan
PE1 Shift Planning: Entry Log
PE2 Setting: Info Column to Display Jobs
PE3 Settings: Info Column to Display Organizational Unit
PE4 Shift Planning: Entry Object IDs
PE5 Display All Jobs
PE6 Start Date for the Shift Plan
PE7 End Date for the Shift Plan
PE8 Setting: Info Column to Display Personnel Number
PE9 Shift Planning: Proposal Determination Strategy
PEA Requirements Source: Object Type
PEB Requirements Source: Object ID
PED Default Date Selection (first of the month, current date)
PEH Disregard depreciation meter
PEI WBS element, call transaction with internal number
PEM Include Essential Requirements
PEO Specify default organizational unit
PEP Print Settings for Shift Planning
PER Personnel Number (HR)
PES Include alternative qualifications
PEV Career Planning: Display vacant positions only
PEZ Time Evaluation Log: Deactivate (X), Activate ( )
PKE Complete key for employee information (PAKEY)
PKR Employee Subgroup (HR Master Data)
PKY Complete key for employee information (PSKEY)
PNR IMG project number
POB Start Time (PD)
POC Copied Object ID (PD)
POD Default Status (PD)
POE End Time (PD)
POF Location (PD)
POK PD: Views (Key, Short Text, Validity, etc.)
POL LIFO pool number
POM Action (PD)
PON Object ID (PD)
POO Menu Mode (PD)
POP Plan Version (PD)
POR Port name
POS Item number in document
POT Object Type (PD)
POV Sort Task Catalogue (TA PFCT)
PRG Employee Group (HR Master Data)
PRI Printer
PRINT_PARAM Print settings
PSI Infotype number for PD staff indicators (e.g. 1003)
PST Planning Status (PD)
P-V PD: Views (Key, Short Text, Validity, etc.)
SCE HR: Personnel calculation schema
SCH Work Schedule Rule
SCL Upper and lower case in source code: ‘X’ = lower, ‘ ‘ =upper
SGR Administrator Group (HR)
SPR Language
SUB HR Master Record – Subtype
TCA Employee Subgroup Grouping for Work Schedule
UGR User group (HR master data)
XHR Check management: Checks from Payroll Accounting

Check the settings for parameters and defaults for each user.

Make sure that the parameters MOL=xx (where xx is your country version, 08 for the UK) and UGR=xx (often set the same as your country version).

Check the date format – should match the format stipulated in the data migration specification.

As the Basis team usually copy an existing user in order to create a new one, it would be wise to set up a dummy default user with the correct settings for them to copy in each client.

This is vital in version 4.6 where the Favourites are also copied across. Copying an existing user will take over the favourites of the existing user.