Problem: A mobile business object (MBO) that you edited using the C# client API fails to update upon synchronization.
If the log record does not provide enough information, check the C# client API code for errors, for example:
int id = 777; //it's the customer id Customer cust = Customer.FindBy(id); cust.Name = "some other name"; cust.Update(); cust.SubmitPending(); DBClass.Synchronize(); //... //you verify operation log that indicates the update failed at backend server //... cust = Customer.FindBy(id); cust.Delete(); cust.SubmitPending(); DBClass.Synchronize(); //... //you verify operation log that indicates the delete failed //...
Call CancelPending() after the failed update operation to delete the MBO, for example:
int id = 777; //it's the customer id
Customer cust = Customer.FindBy(id);
cust.Name = "some other name";
cust.Update();
cust.SubmitPending();
DBClass.Synchronize();
//...
//you verify operation log that indicates the update failed at backend
servercust = Customer.FindBy(id);
//...
Customer customer = Customer.FindById(id);
if(errorHappened)
{
Customer.CancelPending();
}
else
{
customer.SubmitPending();
}
//...
//you verify operation log that indicates the delete succeeded
//...