SAP Applications
for Mobile Business
SAP Mobile Direct
Store Delivery 3.0
SAP AG
Dietmar-Hopp-Allee 16
69190 Walldorf
Germany
T +49/18 05/34 34 24
F +49/18 05/34 34 20
www.sap.com
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.
Typographic Conventions
Icons
Type Style
Represents
Icon
Example Text
Example text
EXAMPLE TEXT
Example text
Example text
<Example text>
EXAMPLE TEXT
Meaning
Caution
Example
Note
Recommendation
Syntax
Contents
1 Introduction .............................................................................................5
1.1 Scope......................................................................................................................5
1.2 Target Groups........................................................................................................5
1.3 System Requirements...........................................................................................5
1 Introduction
1.1 Scope
This document provides information for efficient monitoring of SAP Mobile Direct Store Delivery (MDSD) 3.0.
It does not include information about installing or configuring the application.
For information about installing the application, see the MDSD 3.0 Installation Guide at SAP
Service Marketplace (service.sap.com/instguides). For information about configuring the
application, see SAP Solution Manager Direct Store Delivery Configuration Guide.
To monitor the application, you should be able to:
Detect errors
Identifying system conditions that can lead to a business process standstill, loss of production, or
inefficient system operations and troubleshooting system problems
System Administrators
Solution Consultants
Technical Consultants
Support Specialists
We recommend that the target groups consider attending the SAP Direct Store Delivery
(including MDSD) and SAP Mobile Infrastructure trainings.
SAP ERP 6.0 (Enhancement Pack 3) with SAP Direct Store Delivery 3.0
The following graphic shows how the various SAP components work together.
Apply all the SAP recommendations from SAP Service Sessions and any SAP recommendations
resulting from customer problem messages.
d. Implement all the current SAP Support Packages as and when they become available.
e. Search and apply all the related notes on a specific issue.
Check Category
No.
Check Item
Refer to
Item Content
System Connections
1
10
11
12
No.
Check Category
No.
Check Item
Refer to
Item Content
4
Connectivity Objects
Upload
Mapping Rules
1
Types Assignments
Definition of Reasons
10
11
12
13
No.
Check Category
No.
Check Item
Refer to
Item Content
Defining Allowed Payment / Credit
Card Types
Assigning Shipment / Visit Plan Types
to Tour Scenarios
3
4
14
15
16
17
18
19
20
21
Assigning Means-of-Transportation
Types to Equipment Category /
Vehicle Types
No.
Check Category
No.
Check Item
Refer to
Item Content
22
23
24
Transportation Planning
Configuration
Transportation Planning
Configuration
Route Definition
1
Defining Modes-of-Transport
25
Transportation Planning
Configuration
26
Transportation Planning
Configuration
27
Transportation Planning
Configuration
28
Transportation Planning
Configuration
29
Transportation Planning
Configuration
30
Transportation Planning
Configuration
10
No.
Check Category
No.
Check Item
Refer to
Item Content
31
32
33
34
35
36
37
Output Control
ConfigurationOutput Control for
Visit Lists
Output Control
ConfigurationOutput Control for
Visit Lists
Output Control
ConfigurationOutput Control for
Visit Lists
Output Control
ConfigurationOutput Control for
Visit Lists
Output Control
ConfigurationOutput Control for
Visit ListsMaintaining Output
11
No.
Check Category
No.
Check Item
Refer to
Item Content
38
39
Types
Output Control
ConfigurationOutput Control for
Visit ListsAssigning Output types
to Partner Functions
Output Control
ConfigurationOutput Control for
Visit ListsMaintaining Output
Determination Procedure
Output Control
ConfigurationOutput Control for
Visit ListsAssigning Output
Determination Procedure
Output Control
ConfigurationOutput Control
Configuration
10
11
40
41
Route Accounting
Route AccountingRoute
Settlement
Settlement Office
1
12
No.
Check Category
No.
Check Item
Refer to
Item Content
Route Accounting Collection
Processing
10
11
12
43
Middleware
44
Middleware
45
Middleware
46
Device
42
2.2 Procedure
2.2.1 Monitoring Concepts
Monitoring in the Mobile Direct Store Delivery environment can be divided into the following areas:
Monitoring the end-to-end message flow from the mobile clients to the backend system
Analyzing errors
The following table lists the MDSD server components and the associated monitoring functions.
Server Component
Mobile Client
13
Server Component
Middleware Server
Backend System
14
Access
Monitoring
Frequency
(Periods and
Events)
Transaction SE16
On error
MDSD
Administration
Console
Daily
or
Transaction BD87
Verify that the user ID and password are valid for the RFC
connection
On error
SM59
On error
SE37
On error
MDSD
Administration
Console
On Error
or
Transaction SLG1
Description
/DSD/ME_COCI_ITM
15
Table
Description
followed by shipment number or prefix V followed
by visit list number).
/DSD/ME_COCI_PAY
Check-Out Check-In
Payments
/DSD/ME_CONTACT
/DSD/ME_CUST_HD
Customer Data
/DSD/ME_DDR_STAT
/DSD/ME_DEL_HD
/DSD/ME_DEL_ITM
Delivery Items
/DSD/ME_MAT_HD
/DSD/ME_MSG_HD
Message
/DSD/ME_OPIM_HD
Open Items
/DSD/ME_ORD_HD
/DSD/ME_ORD_ITM
/DSD/ME_TOUR_HD
/DSD/ME_VISIT_ACT
16
Table
Description
/DSD/ME_VISIT_HD
Verify RFC Connection Between the Back-End System and the DSD Connector
If there are issues with data synchronization, first, verify the RFC connections. Ensure that the user ID and
password for the connection are valid and that the user has the appropriate authorization to execute the
required transactions. This may not be apparent when testing the connection.
Verify that no errors are returned when executing the function module.
Application Log
When the IDocs are passed to the DSD connector from the backend system, the DSD connector parses the
IDocs and places the data in the DSD connector tables. Any errors that occur during this process are logged
in the Application Log for the /DSD/ME object.
If the inbound IDoc to the DSD connector has been processed without errors and yet there seem to be
issues with the data in the DSD connector, check the Application Log for errors.
Access
Monitoring
Frequency
(Periods, Events)
DSD
Administration
Console
On error
or
Transaction SMQ1
17
Access
Monitoring
Frequency
(Periods, Events)
MEREP_DISP_DQ
or
On error
MEREP_DISP_UQ
Verify that the user ID and password are valid for the RFC
connection.
SM59
On error
N : Implies that the queue is being prepared, or there have been errors
The details of the queue can be viewed by selecting the queue and choosing Edit Display Selection from
the Menu. The Status column would give more details about the status of the queue.
18
Monitoring
Frequency
Periods and
Events
Analyze Client Trace File: Allows you to see the log generated by the Mobile
Infrastructure client
On error
Perform Sync Service Test: Verifies whether the synchronization service is working
properly
On error
Use Data Viewer Tool: Allows you to view the downloaded SyncBO data on device
On error
Simulate on Desktop: When analyzing a device issue, you can speed up reproduction
and analysis by simulating the same data set on the desktop
On error
Analyze Pricing Log: Allows you to view detailed pricing calculation on the device
On error
View Downloaded XML Document: Allows you to view the XML document
downloaded to the handheld
On error
View Uploaded XML Document: Allows you to view the XML document uploaded to
the backend system
On error
Now, the Mobile Infrastructure client attempts to connect to the backend server. The client sends the User
ID, password, and a list of the applications that have been registered for this user.
The installation information, the User ID, and password are sent to the MI server. The password is
validated and the installation information is compared with the user information on the server.
19
The trace file will usually contain a string which clearly indicates that a connection could not be made.
The actual information that is sent to the server in the package.out container is dumped in the trace file so
that the data can be visually confirmed.
The next step is the call to the server to retrieve any data that has been accumulated for the user. This can
be done via the httpPost command. The inbound.sync container is used to transport client information
and retrieve server data.
The local MI registry file is updated with information about any new applications/user information.
20
Simulate on Desktop
When analyzing a device issue, you can speed up reproduction and analysis of the issue by simulating the
same data set on the desktop.
21
Prerequisite
Install the Mobile Infrastructure client desktop version and download the same version patches, add-ons and
DSD application as on the mobile client. This precondition is valid regardless of whether or not you download
tour data. You can use your own user ID/password for this process.
Procedure
1. Copy the following folders from the mobile client to the desktop version of MI. Before you replace
these folders in the desktop version of MI, you may copy the original folders to another location as a
backup.
- eventListeners
- data
- settings
- sync folder
2. Now, you can reproduce and analyze the device problems by running <MI Installation
Directory on Desktop>/startup.bat.
3. Log on to MI client with the user ID and password from the mobile client device.
Append the suffix .zip to the end of the file name (for example InboundData-1.dsdSync.zip)
2.
Extract the file inside the zip and append .xml to the end of the file name.
3.
Open the XML file in a text editor (WordPad for example) and delete any characters before <?xml
version="1.0" encoding="utf-8"?>.
4.
5.
Open the XML file in Internet Explorer or any XML viewer or editor.
22
Append the suffix .xml to the end of the file name (for example OutboundData-1.dsdSync.xml)
2.
Open the XML file in Internet Explorer or any XML viewer or editor.
Corresponding
Transaction Code
(BE=Backend
MW=Middleware)
Monitoring
Frequency
Periods and
Events
N/A
Daily
Synchronization Monitor
On Error
SLG1 (BE)
On Error
BD87 (BE)
Daily
On error
Queue Status
SMQ1
Daily
On Error
MEREP_DISP_DQ
On Error
MEREP_DISP_UQ
On Error
System Log
SM21
On Error
Dump Analysis
ST22
On Error
View the synchronization status details, including the download ,upload and reload status of the tour
Maintain driver
23
Maintain vehicle
View IDoc
To view the details of the synchronization status for a mobile client device:
1. Log on to the DSD Administration Console.
2. Open the Synchronization Monitor tree in the navigation pane.
3. Start the Sync. Status Overview transaction.
4. Enter the appropriate selection criteria for the mobile client device.
5. Click
(Action) for the appropriate mobile client device to view the detail information.
System Log
The System Log is used to point out and correct errors in your system and its environment. This transaction
is not specific to MDSD.
Dump Analysis
This transaction allows you to administer short dumps. It is not specific to MDSD.
24
3 Further Information
3.1 Data Resets
Data can be reset in the following ways:
Remove Tour: The tour can be removed on the DSD Administration Console (in conjunction with the
device reset).
When you use this functionality, you must also execute a reset on the device as described in
section 3.1.1 Reset the Client Database.
To remove a tour from the DSD Administration Console, perform the following steps:
1. Log on to the DSD Administration Console.
2. Go to the Sync. Status Overview transaction.
3. Enter the appropriate selection criteria for the device for which the tour should be removed.
4. Select the Start button.
5. Select the
6. Select the Remove Tour link at the top of the detail screen.
7. Reset the device as described in section 3.1.1 Reset the Client Database.
25
6. Select the Re-download Tour to Device link at the top of the detail screen.
7. Reset the device as described in section 3.1.1 Reset the Client Database.
If a shipment is already assigned to the device or if a driver-device assignment does not exist, the status
changes to:
DATA_STATUS:
TRANDAT_STATUS:
PRCDAT_STATUS:
If no shipment is assigned to the device, the new shipment is assigned to the device and the status is set
to:
DATA_STATUS:
TRANDAT_STATUS:
PRCDAT_STATUS:
After this, the Pricing Data Extractor is started to select the pricing data; the status changes to:
DATA_STATUS:
TRANDAT_STATUS:
PRCDAT_STATUS:
If the Pricing Data Extractor ends with an error, the status will change to:
DATA_STATUS:
TRANDAT_STATUS:
PRCDAT_STATUS:
If the Pricing Data Extractor ends successfully, the status changes to:
DATA_STATUS:
TRANDAT_STATUS:
R
S
PRCDAT_STATUS:
The middleware is then notified of the readiness of data, and the queue preparation begins. Once the queue
is prepared, the status changes to the following:
DATA_STATUS:
26
PRCDAT_STATUS:
Error Message
Displayed On
Solution
Application log
(transaction: SLG1)
Application log
(transaction: SLG1)
TRANDAT_STATUS:
PRCDAT_STATUS:
Displayed On
Solution
Displayed On
Solution
Middleware
DSD connector
application log
Sync transaction end SyncBO
27
Error Message
validation failed. Please check MI
Worklist Monitor
Displayed On
Solution
worklist monitor, reset the device, and
download the shipment again.
Mobile Device
Screen
Displayed On
Solution
Upload of tour XXX failed due to IError in MI server; please check the
MI Worklist Monitor
28
3.3 Troubleshooting
This chapter describes problems that can arise in the MDSD environment and the standard procedures for
handling and solving these problems.
Verify whether the RFC connections (bi-directional) are working between the MI server and DSD
connector, between the DSD connector and the backend system and between the MI server and the
backend system.
Check the MI server error messages and SLG1 messages to make sure that were no system connection
issues (RFC-related messages) when the problem occurred.
Verify that the RFC connection is maintained in the DSD Customizing Cockpit on the Mobile Engine ID
tab.
If a problem is reported to have occurred on the mobile client (for example, process stopped), check in this
order: Client Middleware.
Client: Check the trace file. Verify that the related data for this process is downloaded correctly.
Connector: Check whether the related data for this process is correct in the Connector Database
tables..
If a problem is reported to occur in the settlement cockpit (for example, incorrect data uploaded), check in
this order: Middleware Client.
Check the connector tables to verify that the uploaded data was correct.
The table below lists the problem conditions described in this section.
Problem Condition
Go to page
After uploading the first shipment, the sync screen continues to show the S status,
though the next shipment is ready for downloading in the connector
30
Pricing exception, price does not appear, price shows all zeroes, or price differs from
the backend system
31
RFC error
31
31
Transport-layer (http) sync exception error message is displayed on the mobile client
device during polling
32
Transport-layer (http) sync exception error message is displayed on the mobile client
device during download
32
Transport-layer (http) sync exception error message is displayed on the mobile client
device during upload
32
29
Problem Condition
Go to page
Tied empties appear on a normal delivery/order line item screen on the client device
33
A reason code (damage return, normal return, free-of-charge, and so on) does not
work as expected
33
10
No (or incorrect) tied empty explosions for delivery/order on the client device
33
11
34
12
While processing a delivery, the user always gets a Not Enough Inventory error on
the client device
34
13
34
14
35
15
35
16
35
17
35
18
The payment method (Cash, Credit, Check) is not shown in the mobile client device
as expected
36
19
37
20
37
21
39
Condition 1
After uploading the first shipment, the sync screen continues to show the S status, though the next shipment
is ready for downloading in the connector.
Analysis
This condition can occur due to problems in the upload of the first shipment.
Handling
1. On the MI server, use the SMQ1 transaction to check errors in the uploaded message queues.
Check the status of the upload queues to see if errors have occurred during the upload.
2. If the status of the upload queue shows SYSFAIL, check for short dumps in the middleware and
the backend/connector. A basic analysis of the reason for the short dump can be obtained by
double-clicking on the status column of the queue details. Detailed analysis should be done on the
middleware, backend or the connector system depending on the reason of the error.
If errors are caused due to Compare Error During Execution of a Simple Transformation, check if
the generation of the function modules have been completed. This error normally occurs if the XML
transformations and function modules on the middleware are not regenerated after changes made to
mapping of Sync BO fields. Regenerate the function modules using the transaction, and reprocess
the upload queue.
If the error occurs in the backend/connector, the data of the queue can be viewed using the
transaction MEREP_DISP_UQ. Detailed analysis should be performed on the backend/connector
based on the upload data viewed in the queue.
3. View the settlement cockpit uploading logs using the SLG1 transaction in the backend. If the log
shown an error, you can fix it manually in the DSD connector tables and trigger the upload manually
to the settlement cockpit again as described in step 3.
30
Condition 2
Pricing exception, price does not appear, price shows all zeroes, or price differs from the backend system.
Analysis
This condition could indicate errors in the pricing calculation or missing data on the device.
Handling
1. Check the client trace file to for pricing exceptions or warnings just after the initial download.
2. Execute the function module /DSD/PE_MS_DWNLD on the backend for the user, and verify if the
pricing data was downloaded properly.
3. Check whether pricing works as expected on the backend with the customer and materials on the
specific pricing date (for order: delivery date; for invoice: invoice date).
4. Check the device clock. Check the delivery date or invoice date field of the order on the mobile client
by using the Data Viewer. The pricing date affects determination of the backend pricing condition. If
the pricing conditions for the pricing date are not downloaded, pricing can be incorrect.
5. Check the pricing log (both overall and line item detail) on the device. To perform this, you must
have basic knowledge about SAP Pricing Conditions. Compare the pricing overview log with the
backend order condition screen. Compare the item detail log with the backend price analysis screen
by checking each pricing access to find a difference. Check the related master data and the
condition data using the Data Viewer to find out the reason for the access being determined
differently from the backend.
Condition 3
RFC error.
Analysis
This condition could be due to problems with the RFC connections.
Handling
See the Problem Diagnosis section on page 29.
Condition 4
Client error: Transport layer exception raised, error writing to server.
Analysis
This problem is usually related to a connection issue or incorrect settings either on the device side or the
server side. To analyze this problem, consider the following questions:
Is there a fixed test path that can always reproduce the problem?
Is the problem reproducible on the device only or can it be reproduced on the desktop as well?
Is the problem reproducible on other devices, other shipments, and different scenarios?
Since when does this error occur on the system? Were there any changes done on the system from that
time?
Handling
1. Verify whether a restart or a sync solves the problem.
31
Condition 5
Transport-layer (http) sync exception error message is displayed on the mobile client device during polling
Analysis
This condition can occur if the network connection between the MI server and the mobile client device fails.
Handling
Stop polling, restore the connection between the MI server and mobile client device, and then restart polling.
Condition 6
Transport-layer (http) sync exception error message is displayed on the mobile client device during
download.
Analysis
This condition can occur if the network/RFC connection between MI server and mobile client device or
between the MI server and the backend system fails.
Handling
1. On mobile client device, if pricing data is not downloaded but if the Download completed message is
displayed, go to step 2; otherwise, proceed to step 3.
2. Restore the connection between the MI server and mobile client device.
3. On the DSD Administration Console, view the details of the synchronization status by following the
procedure described in the Synchronization Status Overview section.
4. If the status is S, use the MEREP_MON transaction to monitor the SyncBO status on the MI server.
5. If a message is in the O-waiting status, perform the procedure described in section 3.1.3 Resend
Tour to Device.
6. Perform the procedure described in section 3.1.2 Remove Tour.
Condition 7
Transport-layer (http) sync exception error message is displayed on the mobile client device during upload
Analysis
This can occur if the network connection has failed between MI Server and mobile client device.
Handling
1. Restore the connection between the MI server and the mobile client device.
2. On the MI server, use the MEREP_MON transaction to monitor the SyncBO status.
3. If a message is in the O-waiting status, monitor the status of shipment in the DSD Administration
Console by following the procedure described in the Synchronization Status Overview section.
4. If the status is S, restart upload on mobile client device.
5. If the status for the next shipment is R or N, reset the mobile client device.
32
Condition 8
Tied empties appear on a normal delivery/order line item screen on the client device.
Analysis
This could be a data or customizing issue.
Handling
1. Check whether you have applied all the related notes regarding tied empties (for example: 742481).
You can find the full list of related note numbers in the MDSD 3.0 Installation Guide or SAP Note
755712 (DSD Central Note).
2. Verify that the UEPOS field of the downloaded delivery/order line items is set to a correct parent item
number (a number other than 0).
3. Verify that the IMP_EMPTY fields of the downloaded delivery/order tied empty line items are marked
correctly as X.
4. Check the MAT_TYPE EMP entry in DSD Customizing Cockpit (Not INV_TYPE EMP entry). This
field must be set to the same value as the empty material type in the backend.
Condition 9
A reason code (damage return, normal return, free-of-charge, and so on) does not work as expected.
Analysis
This condition can occur if the behavior codes of the reason code have not been mapped properly.
Handling
1. In the client Data Viewer, check the DSD_CHCUST SyncBO. Search the reason code and reason
code source (example: CHG_REAS). Check the BEHAVIOR field to see whether the correct
behavior code is downloaded in the reason code.
2. In the DSD Connector Customizing Cockpit (transaction /DSD/ME_CPT), search the reason code
and reason code source (example: CHG_REAS). Check the BEHAVIOR field to see whether the
correct behavior code is mapped to the reason code.
3. Currently the following behavior codes are supported:
0: No special logic, same as leave blank
1: No penalty to customer
2: Damage return
3: Normal return
4: Free of charge goods
7: Sales effective
8: Reload
9: Empty allocation
Condition 10
No (or incorrect) tied empty explosions for delivery/order on the client device.
Analysis
This could be a data or customizing issue.
Handling
1. Check whether tied empty line items are downloaded.
33
Condition 11
Error occurs on creating a one-time CPD customer on the client device.
Analysis
On a device, only one reference customer must be a template for creating other CPD customers. This
problem could be because no (or multiple) CPD reference customers are downloaded to the device.
Handling
1. In the DSD_CUST SyncBO, verify, using the client Data Viewer, that only one SyncBO record exists
with REF_CPD=X.
2. Check the implementation strategy for downloading CPD customer.
Certain DSD deployment projects may choose an automatic approach by implementing a BADI
to send a dummy visit of a CPD reference customer automatically while sending itinerary
IDocs. Verify that a visit is in the /DSD/ME_VISIT_HD table with EXTFLD1=X for this shipment
and the customer of this visit is in the /DSD/ME_CUST_HD DSD connector table with
REF_CPD=X and that UPDFLG is not equal to X.
Condition 12
While processing a delivery, the user always gets a Not Enough Inventory error on the client device.
Analysis
This condition is due to insufficient inventory on the device.
Handling
Perform the following steps:
1. Check whether the user delivered more quantity than planned in previous deliveries resulting in
insufficient inventory should not exist.
2. Check whether the downloaded check-out data for the DSD_COCI SyncBO is correct. This can be
verified via the Data Viewer tool on the device. Initial on-truck inventory is built up by accumulating
downloaded check out items.
Condition 13
Materials that are not in a shipment are downloaded.
Analysis
Any materials to be downloaded must already exist in the DSD Connector tables before the shipment is
downloaded.
Handling
1. Implement BADI: /DSD/IF_EX_ME_DE_TRIGGER_E~SEL_CRI_EXTRA_PROCESS as shown
below:
Clear t_material[]
Select mat_no from /DSD/ME_MAT_HD into lv_material
Move lv_material to ls_material-matnr
Append ls_material to t_material
End select
34
Condition 14
Driver information is not downloaded.
Analysis
This condition can occur if the customer master for the driver has not been sent when the shipment is
downloaded.
Handling
1. Drivers are considered as customers in the customer master. Send the customer master IDoc using
the BD12 transaction and make sure that it is available in the /DSD/ME_CUST_HD connector table.
2. Send the shipment IDoc, and verify that the driver information is in the /DSD/ME_TOUR_HD tour
header table in the DSD connector.
Condition 15
Incorrect language is displayed on the mobile client.
Analysis
This condition can occur if language entries in the customizing cockpit have not been customized correctly.
The DLANG entry determines the language used in the client user interface; the LANG1 entry determines
the first language used in retrieving texts for downloaded data (example: descriptions of customers and
materials).
Handling
1. Using the Client Data Viewer tool, check the DLANG and LANG1 records in the DSD_CHCUST
SyncBO.
DLANG should be customized to ISO code (example: EN for English, DE for German, and ES
for Spanish).
LANG1 should be customized to SAP code (example: E for English, D for German, and S for
Spanish).
2. Check the DLANG and LANG1 entries in the customizing cockpit (transaction: /DSD/ME_CPT).
Condition 16
No authorization error appears while uploading to the settlement cockpit.
Analysis
This condition can occur if the user for the connectorbackend RFC connection does not have the
necessary authorization to run the /DSD/ME_RA_PREPARE_DATA upload function module.
Handling
1. Log on with the RFC connection user.
2. Run /DSD/ME_RA_PREPARE_DATA, manually.
3. Verify whether the RFC connection user has appropriate authorization to run the function module.
Condition 17
The reply: 178,ERROR,MEREP_01,RFC system error message is displayed on the mobile device during
download or upload.
35
Analysis
This condition can occur if the network/RFC connection between the MI server and the DSD connector or
between the backend system and the DSD connector fails.
Handling
1. Restore the connection between the MI server and the DSD connector or between the backend
system and the DSD connector.
2. Restart the download/upload process on the mobile device.
Condition 18
The payment method (Cash, Credit, or Check) is not shown in the mobile client device as expected.
Analysis
This could be a data or customizing issue.
Handling
1. Using the client Data Viwer tool, verify that the DSD_CUST SyncBo that is sent to the mobile client
device contains the correct value for the PYMT_METHOD attribute in the middleware.
For example, to allow a customer to pay only cash, set the PYMT-METHOD attribute to 1).
36
PYMT-METHOD
Credit
Check
Cash
Bank Transfer
1
2
3
x
x
x
6
F
2. In the /DSD/ME_CUST_HD table of the DSD connector, verify, using the SE16 transaction code,
whether the setting is as expected.
Condition 19
No pricing data on the mobile client during invoice creation.
Analysis
This is most likely a data or customizing issue.
Handling
1. Verify that the PSTART_DATE field is filled in the /DSD/ME_TOUR_HD table of the DSD connector,
using the SE16 transaction.
2. The material UOM used in documents must exist in the physical unit conversion table. If the table is
empty, check the corresponding USE_ISOCODE setting.
Condition 20
A document numbering prefix logic is implemented; but, the logic (example: last number or prefix) is not
updated as expected.
Analysis
This can occur if the BADI implementation (/DSD/IF_EX_ME_BAPI method DOCNM_GET_PREFIX) is not
implemented correctly, causing a conflict between the get-list BAPI wrapper (/DSD/ME_GL_NUMBERING)
and the get-detail BAPI wrapper (/DSD/ME_GD_NUMBERING).
Handling
1. Unit test /DSD/ME_GL_NUMBERING using the SE37 transaction.
a. Enter the ME user in the I_MEUSER field.
b. Enter the mobile ID in I_MEMBLID field.
c. Leave the I_DOCTYPE field empty.
2. Unit test /DSD/ME_GD_NUMBERING using the SE37 transaction.
a. Enter the ME user in the I_MEUSER field.
b. Enter the mobile ID in I_MEMBLID field.
c. Enter D, O, I and C (separately) in the I_DOCTYPE field.
3. Compare the results of steps 1 and 2. If there is a conflict, the BADI implementation
(/DSD/IF_EX_ME_BAPI method DOCNM_GET_PREFIX) needs to be corrected.
37
Condition 21
Sync error
Error processing the data on the client; check the MI trace for details
Analysis
This can occur when you implement a BADI on the backend system. The synchronization keys are
generated in the middleware, so even though the mass download function module returns all data without
errors it is possible for duplicate keys to be generated by the middleware.
To determine if this is the cause of the error, turn the trace level to All and download the shipment again. If
you see an SQL exception, follow the handling steps below.
Handling
1. Examine the trace file, youll see something similar to the following:
(0001310689,0001121644,'0000101540','0000000157','','FRANCIS SOEHNLEIN=AP','','','',5)
[20060621 13:50:38:906] E [MI/Persistence
] java.sql.SQLException: [SQLState:23505, error code:-803]
java.sql.SQLException: [SQLState:23505, error code:-803]
at com.ibm.db2e.jdbc.DB2eError.<init>(DB2eError.java:77)
at com.ibm.db2e.jdbc.DB2eStatement.executeSql(DB2eStatement.java:270)
at com.ibm.db2e.jdbc.DB2eStatement.executeUpdate(DB2eStatement.java:313)
at com.sap.ip.me.persist.jdbc.IPersistenceWriterImpl.execute(IPersistenceWriterImpl.java:228)
at com.sap.ip.me.persist.jdbc.IPersistenceWriterImpl.end(IPersistenceWriterImpl.java:119)
at com.sap.ip.me.smartsync.syncIn.SmartSyncDataImporter.endElement(SmartSyncDataImporter.java:292)
at com.sap.ip.me.xmlParser.MIXMLParser$ElementParser.parse(MIXMLParser.java:638)
at com.sap.ip.me.xmlParser.MIXMLParser.parse(MIXMLParser.java:215)
at com.sap.ip.me.smartsync.syncIn.SmartSyncDataImporter.importDeltas(SmartSyncDataImporter.java:259)
at com.sap.ip.me.smartsync.syncIn.SyncInRuntimeImpl.importDeltas(SyncInRuntimeImpl.java:142)
at com.sap.ip.me.smartsync.core.SmartSyncRuntimeImpl.importDeltas(SmartSyncRuntimeImpl.java:743)
at com.sap.ip.me.smartsync.core.SmartSyncRuntimeManager.importDeltas(SmartSyncRuntimeManager.java:242)
at com.sap.ip.me.dsd.DSDSyncManagerImpl.processInboundMessage(DSDSyncManagerImpl.java:1387)
at com.sap.ip.me.dsd.DSDSyncManagerImpl.processInboundMessages(DSDSyncManagerImpl.java:1574)
at com.sap.ip.me.dsd.DSDSyncManagerImpl.downloadData(DSDSyncManagerImpl.java:1737)
at com.sap.dsd.buslogic.sync.SyncManagerNewImpl$SyncThread.poll(Unknown Source)
at com.sap.dsd.buslogic.sync.SyncManagerNewImpl$SyncThread.run(Unknown Source)
[20060621 13:50:38:906] E [MI/Persistence
] char processor: - error code: -803 SQL state: 23505 Message:
2. The above message indicates that the failure occurred at sync key 0001310689.
3. Extract the XML document as described in View Downloaded XML Document.
4. Search for the duplicate sync key 0001310689 in the XML document.
38
5. As you can see in the above example, the sync key 0001310689 is displayed twice.
6. Review the BADI implementation to remove duplicate entries.
Copy the complete MI25 (on a device) or the SAP Mobile Infrastructure (on a desktop) folder
Copy the jscp.out file in the root directory (if you are using a device)
Ensure that the connections between the middleware, DSD Connector, and backend systems
are functioning properly.
39
The sample included here is only intended to help you understand the structure and format of
the output; so, it shows only the first few line items of the output.
DSD_DELIV
SyncBO instances:3
[TOP]
State: G
SYNC_KEY: 0001886671 TOUR_ID: S0000004806
VISIT_ID: 000003 ACTI_ID: 000001
DELV_NO: 0080008492 DOCTYP: ZLF
CUST_NO: CP_KON1003 HH_CREATE:
DELV_PRIO: 00 DELV_DATE: NULL
PO_NO: 20050317 DAT: NULL
TIME: 12:00:00 STATUS: 3
CANCEL: CAN_REAS:
MOD: INVOICED:
TOT_AMT: 0.0000 OFFICIAL_DELV_NO: 0080008492
CURRCY: EXTFLD1:
EXTFLD2: EXTFLD3:
BSTDK: NULLPLANT:
BE_DELIVERY: 0080008492
Child SyncBOs
[ITEMs]
010 instances: 30
SYNC_KEY: 0001886699 DELV_NO: 0080008492
ITM_NO: 000280 TOUR_ID: S0000004806
PSTYV: UEPOS: 000270
IMP_EMPTY: X RTN_FLAG:
HH_CREATE: MOD:
CHG_REAS: MAT_NO: MDSD_90001
MAT_NO_R (Related: DSD_MAT): 0001647882 [Parent exists]PLANT_CODE: 0001
STORAGE_LOC: DPLN_QTY: 1.000
40
41