SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each...

40
Troubleshooting Guide Troubleshooting Guide Troubleshooting Guide Troubleshooting Guide SAP MI Smart SAP MI Smart SAP MI Smart SAP MI Smart Synchronizat Synchronizat Synchronizat Synchronization ion ion ion Troubleshooting Troubleshooting Troubleshooting Troubleshooting Guide Guide Guide Guide Using SAP Using SAP Using SAP Using SAP ® MI 2.5 SP12 MI 2.5 SP12 MI 2.5 SP12 MI 2.5 SP12 Document Version 1.50 - May 31, 2005

Transcript of SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each...

Page 1: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

Troubleshooting GuideTroubleshooting GuideTroubleshooting GuideTroubleshooting Guide

SAP MI Smart SAP MI Smart SAP MI Smart SAP MI Smart

SynchronizatSynchronizatSynchronizatSynchronization ion ion ion

Troubleshooting Troubleshooting Troubleshooting Troubleshooting

GuideGuideGuideGuide

Using SAPUsing SAPUsing SAPUsing SAP®®®® MI 2.5 SP12 MI 2.5 SP12 MI 2.5 SP12 MI 2.5 SP12

Document Version 1.50 - May 31, 2005

Page 2: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

© Copyright 2002 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any

form or for any purpose without the express permission of SAP AG.

The information contained herein may be changed without prior

notice.

Some software products marketed by SAP AG and its distributors

contain proprietary software components of other software vendors.

Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® and

SQL Server® are registered trademarks of Microsoft Corporation.

IBM®, DB2®, DB2 Universal Database, OS/2®, Parallel Sysplex®,

MVS/ESA, AIX®, S/390®, AS/400®, OS/390®, OS/400®, iSeries,

pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere®,

Netfinity®, Tivoli®, Informix and Informix® Dynamic ServerTM

are

trademarks of IBM Corp. in USA and/or other countries.

ORACLE® is a registered trademark of ORACLE Corporation.

UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of

the Open Group.

Citrix®, the Citrix logo, ICA®, Program Neighborhood®, MetaFrame®,

WinFrame®, VideoFrame®, MultiWin® and other Citrix product names

referenced herein are trademarks of Citrix Systems, Inc.

HTML, DHTML, XML, XHTML are trademarks or registered

trademarks of W3C®, World Wide Web Consortium, Massachusetts

Institute of Technology.

JAVA® is a registered trademark of Sun Microsystems, Inc.

J2EE™ is a registered trademark of Sun Microsystems, Inc.

JAVASCRIPT® is a registered trademark of Sun Microsystems, Inc.,

used under license for technology invented and implemented by

Netscape.

SAP, SAP Logo, R/2, RIVA, R/3, SAP ArchiveLink, SAP Business

Workflow, WebFlow, SAP EarlyWatch, BAPI, SAPPHIRE,

Management Cockpit, mySAP, mySAP.com, and other SAP products

and services mentioned herein as well as their respective logos are

trademarks or registered trademarks of SAP AG in Germany and in

several other countries all over the world. MarketSet and Enterprise

Buyer are jointly owned trademarks of SAP Markets and Commerce

One. All other product and service names mentioned are the

trademarks of their respective owners.

Disclaimer

Some components of this product are based on Java™. Any code

change in these components may cause unpredictable and severe

malfunctions and is therefore expressively prohibited, as is any

decompilation of these components.

Any Java™ Source Code delivered with this product is only to be used

by SAP’s Support Services and may not be modified or altered in any

way.

SAP AGSAP AGSAP AGSAP AG Neurottstraße 16 69190 Walldorf Germany T +49/18 05/34 34 24 F +49/18 05/34 34 20 www.sap.comwww.sap.comwww.sap.comwww.sap.com

Page 3: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

Typographic Conventions

Type Style Represents

Example Text Words or characters that appear on the screen. These include field names, screen titles, pushbuttons as well as menu names, paths and options.

Cross-references to other documentation

Example text Emphasized words or phrases in body text, titles of graphics and tables

EXAMPLE TEXT Names of elements in the system. These include report names, program names, transaction codes, table names, and individual key words of a programming language, when surrounded by body text, for example, SELECT and INCLUDE.

Example text Screen output. This includes file and directory names and their paths, messages, names of variables and parameters, source code as well as names of installation, upgrade and database tools.

Example text Exact user entry. These are words or characters that you enter in the system exactly as they appear in the documentation.

<Example text>

Variable user entry. Pointed brackets indicate that you replace these words and characters with appropriate entries.

EXAMPLE TEXT Keys on the keyboard, for example, function keys (such as F2) or the ENTER key.

Icons

Icon Meaning

Caution

Example

Note

Recommendation

Syntax

Page 4: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

Master Guide: mySAP <Solution>

4 <Month Year>

Contents 1 Getting Started ...............................................................................5

1.1 Related Information .........................................................................5

1.2 Pre-requisites ...................................................................................6

1.3 Targets ..............................................................................................6

2 Smart Synchronization Overview .................................................7

2.1 SyncBO Types and Message Processing Modes .........................9 2.1.1 SyncBO Types..................................................................................... 9 2.1.2 Message Processing Modes............................................................... 9

2.1.2.1 Synchronous ..............................................................................................................9 2.1.2.2 Asynchronous ..........................................................................................................10

2.1.3 Administration Tools ........................................................................ 11 2.1.3.1 Worklist Monitor (MEREP_MON) ............................................................................11 2.1.3.2 SyncBO Builder (MEREP_SBUILDER) ...................................................................13 2.1.3.3 Table Maintenance (SE16) ......................................................................................14 2.1.3.4 Profile Dialog (MEREP_PD) ....................................................................................15 2.1.3.5 Purge Tool (MEREP_PURGE) ................................................................................16 2.1.3.6 Log Monitor (MEREP_LOG) ....................................................................................17

2.1.4 Useful Tables..................................................................................... 18

3 Common Trobleshooting Scenarios ..........................................19

3.1 Missing data after synchronization..............................................19 3.1.1 Scenario 1 .......................................................................................... 19 3.1.2 Scenario 2 .......................................................................................... 24 3.1.3 Scenario 3 .......................................................................................... 27 3.1.4 Scenario 4 .......................................................................................... 28 3.1.5 Scenario 5 .......................................................................................... 32

3.2 Replication Error ............................................................................36 3.2.1 Scenario 1 .......................................................................................... 36

3.3 Tracing and Logging......................................................................37 3.3.1 Scenario 1 .......................................................................................... 37 3.3.2 Scenario 2 .......................................................................................... 37

3.4 Conflicting Data..............................................................................39

4 Appendix.......................................................................................40

Page 5: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

1 Getting Started

1.1 Related Information

May 2005 5

1 Getting Started This guide offers a concise introduction to troubleshooting Smart Synchronization problems within SAP Mobile Infrastructure (MI). It includes a brief review of synchronizer business objects types and message processing types, and covers the common Smart Synchronization administration tools used to analyze and solve errors with a Smart Synchronization application.

In the final section, the guide discusses some common Smart Synchronization error scenarios and their solutions.

1.1 Related Information

List of Related Documentation

Content Location

SAP Online Help http://help.sap.com > Documentation > NetWeaver > English/German > People Integration > Multi-Channel Access

SAP MI Technical Infrastructure Guide http://service.sap.com/~sapidb/011000358700001485812005D

SAP Mobile Development Kit http://sdn.sap.com > Mobile Infrastructure > MDK Online or

NetWeaver Developer Studio > Help > Help Contents > NetWeaver Developer Documentation > SAP Mobile Development Kit

Page 6: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

1 Getting Started

1.2 Prerequisites

6 <Month Year>

1.2 Prerequisites You should already have some practical experience with SAP MI, or have attended either the SAP MI Administration or SAP MI Development training course. If this is not the case, SAP advises reading the following documentation for more information on the concept of Smart Synchronization:

• SAP Mobile Development Kit (MDK) (combined with the SAP Netweaver Developer Studio)

• SAP MI Learning Maps (http://intranet.sap.com/rkt-mi)

• SAP Help Portal for MI (http://help.sap.com)

1.3 Target Group � MI support specialists

� Regional group members

� Technical consultants

Page 7: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

1.3 Target Group

May 2005 7

2 Overview of Smart Synchronization This section gives a brief overview of the role of Smart Synchronization within Mobile Infrastructure.

Concept of Smart Synchronization Smart Synchronization is a complete data replication and realignment middleware based on extracts of business objects (synchronizer business objects or SyncBOs). These extracts can be assigned to users and user groups. Smart Synchronization involves transporting the corresponding data to the mobile devices and making this data available to the mobile applications deployed on these devices. To optimize data replication, Smart Synchronization tracks the current state of each mobile device in the field and ensures that only those changes made since the last synchronization are sent from the server to the client and vice versa (“delta determination”). Smart Synchronization also handles conflict situations when the same object has been edited simultaneously both on the server and on the client. Smart Synchronization detects these conflicts and resolves them automatically (by sending a corresponding error message and information about the updated object to the client). Smart Synchronization also offers a dedicated tool to define SyncBOs. SyncBOs can define complex relationships that are used to define what data is sent to the mobile device. Dedicated monitoring and logging tools are available for monitoring the data flow and the synchronization process.

Smart Synchronization is completely independent of the CRM middleware.

Applications deployed on the mobile device do not have to be connected permanently. This means that data can be stored locally on the device and must, therefore, be dispatched centrally. The data is dispatched using the MI Server Component on the Web AS. The application backend system “pulls” the data to the Web AS and stores it in a replicated database. From the Web AS, the mobile device pulls the data for the installed application(s) and stores it locally. Data can be displayed, changed, created, and deleted on the client, and is transferred back to the Web AS with the next synchronization. The Web AS then automatically updates the backend system with the data it has received.

The data for the mobile applications is supplied by from the backend system. The synchronizer business object (SyncBO) describes the structure of the data used in the communication between the client and the middleware. A SyncBO data model is essentially a subset of each BAPI model. BAPIs are used to maintain these object instances in the backend system. Existing BAPIs are wrapped by BAPI wrappers that are used as an interface for the MI server to access the data.

The MI server contains SyncBOs that represent the data structure used on the MI client. The SyncBOs call the BAPIs to retrieve and change data in the backend system. Before the data from the backend system is downloaded to the mobile devices, it is stored in the replicated database. Filter criteria and default values can reduce the amount of data required to suit the mobile users needs.

The MI client is a framework that runs on a handheld device or laptop upon which you can install applications. Data is transferred in the form of the defined SyncBOs, and is stored locally as SyncBO definitions. Synchronization is triggered on the MI client side, meaning the data is “pulled” by the client: Requests are sent to download new data, and at the same time, changes made locally are also uploaded to the server.

The downloaded data can be processed without a connection to the server. This is commonly done by copying the data to the different devices on a user-dependent basis. The MI client offers a Smart Synchronization API, which applications can use to access the data on the mobile device.

Page 8: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

1.3 Target Group

8 <Month Year>

Page 9: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

May 2005 9

2.1 Synchronizer Business Object Types and Message Processing Modes

2.1.1 Synchronizer Business Object Types

SyncBO Types Descriptions

Download (D01) Allows multiple business objects to be downloaded from the server to a mobile device. This SyncBO type does not allow data to be uploaded from the mobile device. This type is not supported in MI 2.5. Its function has been completely replaced by the 2-way, timed 2-way, and server-driven types.

Upload (U01) Allows business objects to be uploaded from a mobile device to the server.

2-Way (S01) Download and upload messages are exchanged between the mobile device and Web AS. The delta determination process between the business objects in the application backend and their counterparts on the mobile device’s database is run as the above-mentioned messages are processed. The messages can be processed while the device is synchronizing or immediately after the synchronization process has been completed. As the delta determination process is run with each synchronization, this can be particularly performance-intensive for the Web AS. If the delta determination is also carried out during the synchronization process, it can increase the duration of this process significantly.

Timed 2-Way (T01) Download and upload messages are exchanged between the mobile device and Web AS. In contrast to the above 2-way SyncBO type, however, the delta determination between the application database in the backend system and the replicated database on the Mobile Infrastructure Server Component is executed as a periodic, background job (and not with each synchronization event). As a result, performance is high.

Server-Driven (T51) Download and upload messages are exchanged between the mobile device and Web AS. As the delta determination for the business objects between the application database in the backend system and the replicated database on the device is determined by the backend system, the replication performance is better than that of the timed 2-way type. The synchronization performance, however, remains the same for both these types.

2.1.2 Message Processing Modes A setting can be made in the application design time environment to determine whether the SyncBO messages are processed synchronously or asynchronously. The design time environment is used to define synchronization at runtime.

2.1.2.1 Synchronous Processing Mode

Page 10: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

10 <Month Year>

With the synchronous message processing mode, the requests from the mobile client are processed directly during synchronization. This means that the client must be connected to the network until the request is processed and a response has been received.

2.1.2.2 Asynchronous Processing Mode With the asynchronous processing mode, the requests made by the client are stored in an inbox on the SAP Mobile Infrastructure Server Component (Web AS). The client is disconnected after the message has been delivered to the inbox and the outbox has been checked. The message is then processed in the background and delivered to the outbox. The processed response is then collected from the outbox during the next synchronization.

Processed immediately Processed later

Page 11: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

May 2005 11

2.1.3 Administration Tools The following sections describe the administration tools that are available in the MI middleware to help users identify and resolve problems related to the Smart Synchronization application.

2.1.3.1 Worklist Monitor (MEREP_MON) The transaction MEREP_MON is a tool used to display inbound and outbound worklists of SyncBOs. The initial screen is a selection screen that allows you to display, for example, all synchronization requests and responses for a mobile ID, or all requests and responses for a mobile ID with an error status. Where the fields Mobile Group, Mobile ID, and SyncBO ID are used as filtering criteria, the system uses an AND relationship.

Users can enter a Mobile ID, a date and time, and a preferred summary grouping, and then call a worklist by choosing the Execute button (or F8).

The screen below, for example, contains a table of synchronization messages for the specified mobile ID (0000000095), grouped according to the synchronizer business object, for the MAM application.

Page 12: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

12 <Month Year>

Page 13: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

May 2005 13

2.1.3.2 Synchronizer Business Object Builder (MEREP_SBUILDER) The transaction MEREP_SBUILDER is used to check the attributes of a SyncBO to verify the consistency of the BAPI wrappers, and to filter data. This transaction is also used to define SyncBO data models for application development.

Page 14: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

14 <Month Year>

2.1.3.3 Table Maintenance (SE16) The transaction SE16 is used to check table entries (for example, the tables MEREP_207 and MEREP_10700).

Page 15: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

May 2005 15

2.1.3.4 Profile Dialog (MEREP_PD) The profile dialog can be used to check the status of the SyncBOs of the mobile application. Administrators can check the status of the runtime component (receiver and sender), handler and synchronizer.

Page 16: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

16 <Month Year>

2.1.3.5 Purge Tool (MEREP_PURGE) The purge tool is used to purge obsolete runtime data from the MI Server Component. Administrators can define the time intervals at which the data is purged.

Page 17: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

May 2005 17

2.1.3.6 Log Monitor (MEREP_LOG) This tool is used to check logs created at runtime and provides a complete overview of all the Smart Synchronization logs on the server. The worklist monitor tool, in contrast, groups the logs together by worklist. The log monitor is used, therefore, to check the logs for various processes that are not directly related to any particular item in a device worklist items.

Page 18: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

2 Overview of Smart Synchronization

2.1 Synchronizer Business Object Types and Message Processing Modes

18 <Month Year>

2.1.4 Useful Tables Table Name Description

MEREP_10100 Replicated database table containing 2-way SyncBOs

MEREP_10700 Mobile synchronization key control table for timed 2-way SyncBOs

MEREP_103 Control table for download SyncBOs

MEREP_201 Replicated database table containing download SyncBOs

MEREP_207 Replicated database table containing timed 2-way SyncBOs

MEREP_504 Transparent table that stores inbound/outbound messages in the Smart Synchronization inbox/outbox

Page 19: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 19

3 Common Troubleshooting Scenarios This section provides additional information about the most common cross-industry or industry solution software components.

3.1 Missing Data After Synchronization

3.1.1 Application Data Download Error Scenario No data was downloaded to the application during the synchronization process. The relevant data does exist, however, in the table MEREP_207.

Solution

• Use MEREP_MON to check the worklists to see if there is any data waiting to be sent to the mobile device. Check the data in the outbound worklist (Sender) by selecting the checkbox of the relevant item in the worklist and then choose the Data pushbutton to display the data content. The screenshot below shows the inbound and outbound worklists for a SyncBO.

• Check if the necessary data was entered in the messages in the server side outbox to identify where the problem could have occurred. For example, if all the necessary data exists in the outbox on the server side for the device concerned (the device with the missing data), it may be that the device did not access the server at the right time, or that there was a problem on the mobile device with the inbound processing when the data is received.

• To find out what response was generated for a particular inbound worklist item, select the checkbox of the target inbound worklist item, and choose the Subworklist button in the application menu bar to find the corresponding outbound worklist item(s).

You can also check the table content in MEREP_207 using the transaction SE16. In SE16, type in the name of the table (MEREP_207) and select the Table Contents button (see the screen shot below).

Page 20: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

20 <Month Year>

You can then enter the name of the SyncBO in the Scenario field and click on the execute button.

The system then displays the table contents (see below). Select the row you want, and choose Display.

Page 21: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 21

• Check the filtering criteria for the SyncBO using the transaction MEREP_SBUILDER. Enter the relevant SyncBO name in the text field on the initial screen and choose Environment > Filtering Criteria from the menu.

Page 22: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

22 <Month Year>

• If there is an inbound message in the I-WAITING state, you can check if all the related SyncBOs for the application are enabled. To do this, use the transaction MEREP_PD and choose the Synchronizer tab page. Select the Display -> Change icon to flag the Enabled checkbox. You can also display the log messages that relate to the I-WAITING message. These log messages could show, for example, that corresponding synchronizer control record is in a disabled state.

• In some cases, a worklist item for an upload synchronization message has the status I-Error because the BAPI wrapper call produced an (application) error. In this case, you can modify the associated inbox data. You may be able to resolve this problem by reprocessing the inbound worklist item to call the BAPI wrapper again. The inbox data can only be modified if the original message has yet to be processed successfully. Once this has been done, the system does not allow you to change the data again. This prevents the message from being processed twice. To modify the message content in the I-ERROR status, you can:

Page 23: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 23

o Select an I-Error worklist item on the Display Worklists screen. o Choose the Display Data button. o Select one of the data items. o Choose Change Field Contents. o Modify the data. o Choose Save. o Reprocess the worklist item.

• Reprocessing messages for error handling: The system only allows you to reprocess those inbound messages that have already been processed once but have an error status. This prevents:

o A message from being processed multiple times and thus causing duplicates or jeopardizing the basic rule for ‘one time execution’.

o A message from being processed and thus jeopardizing the ‘in-order processing’ of messages.

• With the MEREP_MON transaction, you can reprocess the message with an I-ERROR status as follows:

o Select the I-Error worklist item that you need to reprocess in the Display Worklists screen.

o Choose Reprocess Worklist. o Choose Execute. o Choose Back.

• You can also check how the downloading data set is determined. You can check the Cascade Download and Filter by Referencing SyncBOs flags in the profile dialog (MEREP_PD). You can find more information on how to use these flags in the following documentation:

o Cascade Download: � OSS note 607901: How to Use the Cascade Download � SAP Online Help:

http://help.sap.com/saphelp_nw04/helpdata/en/ef/82ad34524a874f941a07427a9fec58/content.htm

o Filter by Referencing SyncBOs � SAP Online Help:

http://help.sap.com/saphelp_nw04/helpdata/en/44/ee70421c433040af667062c411877d/content.htm

Page 24: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

24 <Month Year>

3.1.2 Missing Sales Order on Mobile Client Scenario You created a sales order on the backend system but you could not download the sales order to the mobile client using MSR. The data was found in the message using MEREP_MON.

Solution • Check the MI client trace to see if there is an error or Java Exception. For more

information about tracing on the MI client, see: o Tracing on SAP MI Client Component:

http://help.sap.com/saphelp_nw04/helpdata/en/46/e3a9409ecd1314e10000000a1550b0/content.htm

o Analyzing the Trace File: http://help.sap.com/saphelp_nw04/helpdata/en/b2/dfa840d8c8e369e10000000a1550b0/content.htm

• Execute the BAPI wrapper (GETDETAIL) on the backend system to check the data and to make sure the function is working. You can use MEREP_BUILDER to check the BAPI wrapper of the SyncBO.

• You can also use the BAPI Wrapper Interface Check pushbutton in MEREP_BUILDER to check the consistency of the BAPI wrapper on the middleware server.

Page 25: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 25

• You can also check the contents of the MEREP_207 table using the transaction SE16. Type in the name of the table (MEREP_207) on the initial screen. In this case, enter a name of the MSR SyncBO and select the Table Contents button (see the screenshot below).

You can then enter the name of the SyncBO in the Scenario field and choose Execute.

Page 26: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

26 <Month Year>

The system then displays the table contents (see below). Select a row and display it by choosing the Display pushbutton.

Page 27: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 27

3.1.3 Empty Inbound Container Scenario The synchronization log on the Mobile Infrastructure client returns the message Received empty inbound container and no data has been downloaded to your mobile device. (This is not an error that is specific to Smart Synchronization. A similar problem could occur when using the Generic Synchronization application.)

Solution • In the Web browser, test the MI Synchronization Servlet using the URL:

http://<J2EE_Serer>:<port>/meSync/servlet/meSync?~sysid=<System_ID>&~login=<user>&~password=<password>&~client=<client_number>&~language=<language>&~acknowledge=X&~test=true&

If it is successful, the following message should appear in the Web browser:

Page 28: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

28 <Month Year>

• If, however, a blank screen is displayed, it is possible that the <SystemID>.props file is missing in the MI Synchronization Servlet’s System_Properties folder. For more details on finding this folder, see the MI Installation Guide.

3.1.4 Missing Synchronization Key Scenario An error message appeared in your custom-built mobile application explaining that the synchronization key was missing during the synchronization process. (This scenario is taken from the note 681170/2003)

Solution • Using the trace feature in the MI client, activate the trace to determine the source of

this error. Choose the Trace link and then select Trace On. Choose Change to activate it. Return to the MI client homepage and synchronize to upload the trace file.

Page 29: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 29

• Check the tables MEREP_10700 and MEREP_207 using SE16 (for the timed 2-way SyncBO type). When you check the table MEREP_10700 (device-specific download objects), you can enter the mobile ID and the timed 2-way SyncBO name to list the table entries, which in turn enables you to check the SYNC_KEY field. In the screenshot below, the MAM application is used as an example.

Page 30: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

30 <Month Year>

• Check the inbound and outbound worklists for a specific SyncBO with a valid mobile

ID on the middleware server using MEREP_MON. Check the data in the worklists using the Data button to make sure the inbound message is not searching for a SyncBO with a non-existent synchronization key.

Page 31: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 31

• In a custom-built application, you can prevent the loss of synchronization keys for SyncBOs by:

o Always synchronizing twice before updating on the client (two consecutive synchronizations with a sufficient interval in between).

o Using the synchronous synchronization mode so that all the responses from the server are sent to the device immediately when you request data.

o Using the Data Completeness Check API. This function checks that all the responses reach the mobile client.

Page 32: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

32 <Month Year>

3.1.5 Incomplete Application on Device Scenario You have not received the complete MAM application on your mobile device. After synchronizing twice, you only have the User View Manager, as shown below.

Solution

In this case, it is likely that you have not downloaded the Customizing data. To determine whether you have the Customizing data or not you can:

• Open Windows Explorer (or Explorer on PocketPC)

• Go to the ME or MI folder

• Open the Data folder. One of the subfolders contains the required information. The name of this folder is generated randomly and is, therefore, unique to each device. The folder required, however, contains a large number of files.

• If you do not have a.MAM_090.dat or the a.MAM_095 file, your Customizing data has not been downloaded.

To download your Customizing data: 1. Get your mobile ID using the transaction MEREP_PD. Select the Mobile ID tab page. In the Mobile ID field, use input help to select the relevant mobile ID and choose ENTER. You have a mobile ID for every application that you have downloaded from the WebConsole. Find the mobile ID for the MAM application (see below). Your device GUID should be the same as your device ID on your Mobile Infrastructure client (settings).

Page 33: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 33

2. Enter the transaction MEREP_MON. Select Status Summary by SyncBO ID. Enter your mobile ID in the Mobile ID field. Choose Execute (F8). Select the row MAM_090. The system then generates a screen similar to the one below:

3. Select the checkbox in the first line of the Outbound Worklist and then choose Data. Notice that the Rec. No. for the first row is 1. This generally means that this worklist does not contain any data. If you do not have any data, the system generates a screen similar to the one below:

Page 34: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

34 <Month Year>

4. Check the other outbound worklists. If none of these worklists contains any data, then the relevant data was not sent to the device.

5. If no data was sent to the device, you need to check whether the backend system contains the data. Use the transaction MEREP_SBUILDER to do this.

• Enter MAM_090 in the SyncBO ID field. Select the Display icon. The system generates a list of methods available for this SyncBO.

• Select the ALM_MEREP_090_GETLIST method. This takes you to the function module in the backend system. Execute the function module in test mode. You do not need to enter any import parameters. Ensure your user is in the CUSTOMIZED_USERS table parameter and that no errors have occurred.

• Choose Back (F3) to return to the SyncBO Builder transaction. • Select the ALM_MEREP_090_GETDETAIL method. Execute this function module in

test mode. You must enter your user as the import parameter. Ensure that data is returned for this user and that no errors have occurred.

• If no data is returned for either function modules, your Customizing data has not been maintained properly. Check the Customizing settings for your user in the IMG.

6. If the data returned is correct, the backend system is not responsible for the original problem. Check that the Customizing data has been copied to the replicated database on the Web Application Server. As MAM_090 is a timed two-way SyncBO, use transaction SE16 to display the contents of table MEREP_207. Enter MAM_090 in the Scenario field and then TOP into the STRUCT_ID field. Choose Execute. The system generates a screen that should contain a record of your user (see below).

Page 35: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.1 Missing Data After Synchronization

May 2005 35

7. If your user ID is not in this table, you can go to MEREP_PD and choose the Synchronizer tab page. Select MAM_090 as the SyncBO ID and choose the Replicator Start icon (circled below). Your data should now be in table MEREP_207.

8. Synchronize your device again twice. You should now be able to view the entire MAM application.

Page 36: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.2 Replication Errors

36 <Month Year>

3.2 Replication Errors

3.2.1 Replicated Database Update Error Scenario When you tried to replicate the MAM_095 SyncBO the system generated the error message Error updating replica DB for download (SyncBO=MAM_095, Mobile ID=).

Solution

• Use RFC BAPI Wrapper Check in the transaction MEREP_SBUILDER to check the BAPI wrappers for the SyncBO. If you find an error or inconsistency, you need to reset the replicated database after you have corrected the error.

• To reset the replicated database for Web AS 6.20, run transaction SE37 and execute the function module MEREP_RDB_xxx_RESET (where xxx is D01 for the download synchronization type, T01 for the timed 2-way and server driven synchronization types, and S01 for the 2-way synchronization type).

• For Web AS 6.40 or above, you can correct this error automatically (in doing so, select Yes to reset the replicated database).

Page 37: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.3 Tracing and Logging

May 2005 37

3.3 Tracing and Logging

3.3.1 Missing Data Scenario You can see from the MI client’s trace file that data has been successfully downloaded but this data is not in the middleware.

Solution • Check the trace file for the error message E Inbound container <container ID>

with too big sequence number <sequence number> will be ignored. This error may be caused by an outbound process failure, such as, for example, an enqueue failure. You can also check the status of an outbound process in the worklist monitor (MEREP_MON).

• If the ABAP program MEREP_RETRY_BP (the handler component in the synchronization layer in the middleware) is not scheduled to run in the background, define a periodic job to run the program using the transaction SM36. This allows the message to be collected and reprocessed. For more information on scheduling the background job of this ABAP program, see the MI 2.5 Installation Guide.

3.3.2 Log Monitor Runtime Error Scenario When you use the log monitor (transaction MEREP_LOG) and specify a name of a SyncBO, a runtime error occurs.

Solution • This problem may be caused by the large amount of worklist items in the database. • Use MEREP_PURGE to purge old or unnecessary worklist items to provide more

space in the database.

Page 38: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.3 Tracing and Logging

38 <Month Year>

• You can also specify low log levels for the receiver, sender, and handler components using the transaction MEREP_PD to reduce the amount of logs. The system is unable, however, to analyze errors thoroughly when this setting is applied.

Page 39: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

3 Common Troubleshooting Scenarios

3.4 Data Conflicts

May 2005 39

3.4 Data Conflicts Scenario When you synchronized with the backend system, a data conflict occurred.

Solution • When a data conflict occurs, the data on the MI client is returned to its original state

(that is, that state before any changes were made to the fields) after the synchronization.

• You can check the upload request for the SyncBO in the MEREP_MON transaction and then check the data in the worklist.

• Advise the user of the mobile application to resynchronize the modified data on the MI client so the data will be updated in the backend system during another synchronization.

Page 40: SAP MI Smart SynchronizatSynchronization ion ... · background job (and not with each synchronization event). As a result, performance is high. Server-Driven (T51 ) Download and upload

4 Appendix

3.4 Data Conflicts

40 <Month Year>

4 Appendix