This article applies to:
- CWR Mobile CRM 1.2
- Microsoft Dynamics CRM 3.0
EditCurrent Version
Release Date: 2008-08-08
Version: 1.2.0.20 (compatible with mobile clients 1.2.0.16 and higher)
EditServer
EditMobile Configurator
1.2.0.20:
- CAS-1357: Changing the properties of a lookup column in the ViewEditor removed the "DisplayFormat='name'" attribute when clicking OK.
- CAS-01374: Fixed issue with HttpUtility.HtmlEncode in MobileConfiguration and string "Tab" was not translated.
1.2.0.18:
- CAS-01319: Filter editor: selecting an entity after entering the filter name generated an error.
1.2.0.17:
- CAS-01317: ViewEditor condition value attribute contains the value "undefined". Fixed View Editor and FilterEditor "no-value" condition operator (e.g.: Contains Data, Does Not Contain Data) bug:
- Value attribute is filled with "undefined" instead of blank.
- When updating a condition the value control (TextBox) is enabled and must be disabled.
1.2.0.15:
- CAS-01309: Entity bulkoperation and campaignactivity were not added as a valid entity for RetrieveMultiple. However, they are valid entities. This caused the FieldProperties of the Regarding field to fail because it uses bulkoperation and campaignactivity in the LookupEntities. You are now able to add bulkoperation and campaignactivity as mobile entities.
1.2.0.14:
- CAS-01236 (CONTINUED): Added encoding/decoding to support stressed/special characters in Mobile Config.
- CAS-01295: Forms: Added encoding/decoding to support stressed/special characters.
- CAS-01296: Views: Added encoding/decoding to support stressed/special characters.
- CAS-01288: Fixed Sitemap menu item display bug in IE6.
- CAS-01302: Fixed issue when adding a new view corrupts the existing view xml.
1.2.0.6:
- CAS-01236: Added encoding/decoding to support stressed/special characters in Mobile Config.
1.2.0.5:
- CAS-01231: Added "FETCHXML_OPERATOR_thisweek" value (This week). The FilterEditor Operator list did show the value "undefined".
1.2.0.2
- Changed External image.
- Several small bug fixes.
1.2.0.1
- Select activity party attributes on activities in the filter of the views.
- Add mask on text attributes.
EditMobile WebServices
1.2.0.18:
- CAS-01322: Machine.config "impersonate" settings override application settings: Added "<identity impersonate="false"/>" to Web.config.
- CAS-01323: Rebuild AskWhoAmI to not use impersonation, but retrieve callerid from the usersettings.
1.2.0.16:
- CAS-01313: Update and Create methods are not compressed. Especially when sending large document (ntext fields) this takes up extra bandwidth.
1.2.0.14:
- CAS-01086: Fixed issues with the GetEntity method. Not all fields were updated and datetime format was incorrect.
- CAS-01298: Sync throws error when user doesn't have READ privileges; instead it should just return nothing.
- CAS-01301: Fixed threading issue.
1.2.0.12:
- CAS-01123: For some entities StateCode and StatusCode are NULL. This caused an exception on the client.
1.2.0.4:
- CAS-01226: float/decimal/money fields are incorrectly converted to a string based on the regional settings of the server. This results in sync errors or incorrect values to be synced.
EditServer Database
1.2.0.16:
- CAS-01312: Fixed SP proc_InsertPendingClientSnapshot. Variable @hDoc and @hdoc was used. This causes problem on case-sensitive sql servers
- Set the databaseversion to 1.2.0.16.
EditClient
1.2.0.20:
- CAS-1391: DisplayFormat List for Boolean field throws a NullReferenceException when loading form.
- CAS-1396: SDK: Added all necessary CRM Response classes to the CRM webservice proxy so that SDK code can use them. Without these Response classes the application doesn't recognize CRM's responses and throws a MemberAccessException.
- CAS-01310 CONTINUED: The check for the Unauthorized loop checked the same Exception twice instead of checking the second exception on the retry.
- CAS-1392: Default sorting on picklist column failed.
1.2.0.19:
- CAS-01333: Datetime was not converted to UTC when calculating the actualend of an activity.
- CAS-01339: Emptying a non-required picklist field sets the value to -1. This is not a valid value, it should be NULL.
- CAS-01340: View throws NullReferenceException when it encounters an invalid (Picklist) value.
1.2.0.18:
- CAS-01324: Moved call to ValidateFormFields from the Save button event to the actual Save method. Otherwise it's never called when calling Save from the SDK.
- CAS-01321 CONTINUED: Previous fix failed when opening a lookup from a NEW form, so when the ObjectId was still null.
- Added several methods/properties/events to the SDK IFormContext:
- Property Relations
- Event FormClosed
- Method SaveAndNew
- Method OpenView
- Method OpenRelatedView
- Method OpenForm
- Method NewForm
1.2.0.17:
- CAS-01314: Calculation of actualduration was incorrect when duration was longer than one hour.
- CAS-01310 CONTINUED: The WebException with statuscode Unauthorized was still not handled correctly. We were checking for the wrong exception type.
- CAS-01315: Start and end dates for activities were not checked. This means you can enter a start date that's later than the end date and this causes a sync issue.
- CAS-01316: View filter NOT IN operator disregards NULL values. This is not in line with the CRM NOT IN operator.
- CAS-01318: Validation of email address caused error popups to appear that couldn't be closed.
- CAS-01320: Relations on the Owner field used the owninguser instead of the ownerid field. However, owninguser is a special field and is not transferred to the client, so relations on this field will never show any records.
- CAS-01321: Lookups don't filter out the parent entity so when selecting a Parent Account you could select your current account which would cause a self-referential relation.
1.2.0.16:
- CAS-01311 CONTINUED: Setting the ParentEntityRelation didn't call the ClearIsChanged so every time an existing related record was closed the message "you have made changes" appeared.
- CAS-01313: Update and Create methods are not compressed. Especially when sending large document (ntext fields) this takes up extra bandwidth.
1.2.0.15:
- CAS-01306: Calendar Agenda view shows 24 hour format regardless or regional settings of pda.
- Agenda view now shows time format according to pda regional settings.
- Agenda view now shows 30 minute time slots instead of 1 hours timeslots.
- CAS-01307: Calendar Agenda view doesn't show day of the week.
- CAS-01308: InvalidCastException when opening an appointment or serviceappointment from the Calendar panel.
- CAS-01310: WebException with statuscode Unauthorized returned from mobile webservice, even though nothing has changed with the credentials.
1.2.0.14:
- CAS-01086: Fixed issues with the GetEntity method. Not all fields were updated and datetime format was incorrect.
- CAS-01161: Fixed looping forms issue.
- CAS-01297: Localized Call, Send Email and Navigate To button in the NvarcharControl.
- CAS-01303: Fixed issue where SyncStatus and DeletionStateCode were not reset after a sync.
1.2.0.13 (
DB RE-INIT):
- CAS-01235 Continued: Always set the ActualEnd if not already filled on the form, even if ActualStart is not filled.
- CAS-01242: Log fully qualified name of main application on application startup and when new log file is created.
- CAS-01287: SDK:
- FormPanel.SetFieldValue(string, Property) doesn't check if field exists and throws a NullReferenceException if field doesn't exist.
- FormPanel.GetFieldValue(string) doesn't check if field exists and throws a NullReferenceException if field doesn't exist.
- CAS-01289: SyncStatus is not always correctly set to Failed when an exception other than SoapException/WebException occurs.
- CAS-01291: Activityparties were not removed on a Delete of an activity during the sync. This causes sync issues when syncing (creating) those same activities again (duplicate key exception when inserting activityparties).
- NOTE: THIS REQUIRES A RE-INITIALIZE OF THE DATABASE!
- CAS-01292: Timeout running background sync.
- Increased webservice timeout to 5 minutes when background sync starts. Resetting back to default when background sync is finished.
- CAS-01293: View without filters doesn't take into account DeletionStateCode and as a result shows deleted records on the client.
1.2.0.12:
- CAS-01266 CONTINUED: The fix only worked on create of a new record, not on the update of an existing record. On update it still closed the form.
- CAS-01271: FormPanel.RelatedMenu was not reset properly between opening a new and an existing form.
- CAS-01275: Only retrieve PrincipalAccessRights when entity is UserOwned, otherwise return null.
- CAS-01276: Implement Route request for cases. Current Assign functionality throws an error.
- CAS-01279: Calendar didn't refresh after update of an activity.
- CAS-01282: Problem in entities sync could cause Sql locking timeout in consecutive entities when sync in previous entity failed.
- CAS-01283: Sync Issues Resubmit and Delete button use different method of selecting items. For both actions you now need to check the items, not select them.
- CAS-01284: PreRetrieve.Abort caused NullReferenceException in ListPanel.
1.2.0.11:
- CAS-01265: Calendar doesn't show activities for last day of the month.
- Changed LastDay operator to include the last day of the month (e.g. 2007-10-31 23:59:59).
- CAS-01266: Done button closes the form even when Pre Callout return Abort.
- FormPanel.Save method now doesn't swallow the CalloutException, but throws it. Calling code has to handle it. The SaveAndClose method handles this and doesn't close the form when a CalloutException is thrown.
1.2.0.10:
- CAS-01247: Added following methods to IFormContext in SDK:
- Save
- SaveAndClose
- Cancel
- CloseForm
- Delete
- CAS-01248: PicklistControl.Property only returned the int value, not the display name.
- CAS-01249: Go Online/Go Offline menu item didn't change with the connection status.
1.2.0.9:
- CAS-01235 Continued (1.2.0.5):
- Logic to calculate end times and/or duration wasn't complete/correct:
- Actualstart time is NOT set when creating an activity.
- Scheduledend or duration is calculated based on which fields are filled. IsAllDayEvent overrides those values.
1.2.0.8:
- CAS-01241: Can't remove items from MultiLookupControl
- CAS-01243: Changed the Select button on the MultiLookupDialog to OK.
- CAS-01244: Changed the order of the previous and next buttons in the Initialize wizard.
1.2.0.7:
- CAS-01240: Changed list view to show a message when the correct view (main or related) is not defined.
1.2.0.6:
- CAS-01237: Changed SettingsPanel to localize the Logging and Searchmode listboxes.
- CAS-01238: Metadata sync error when adding new entity to profile. ExtensionBase table was dropped without checking if it actually existed.
1.2.0.5:
- CAS-01229: Fixed sorting of Lookup fields in list view. When clicking on a lookup column, the sort would be on the parent attribute, e.g. regardingobjectid instead of regardingobjectidname. This resulted in unexpected sort orders.
- CAS-01230: Fixed bug in OwnerControl. Owner name wasn't set correctly in the Value property. This resulted in a blank lookup when changing the owner.
- CAS-01232: Fixed bug in Synchronization method. This bug caused activityparties to seemingly random disappear when syncing.
- CAS-01233: Fixed bug in LookupControl/OwnerControl/CustomerControl. The check for existence of the entity on the client during setting of the Value property was incorrect.
- CAS-01234: Changed DateTimeControl to not set the seconds when using the Now button. Setting the actual seconds can lead to small rounding differences.
- CAS-01235: ActualEnd was not set when closing an appointment:
- Implemented functionality which sets the actualstart field and calculates the scheduleddurationminutes field if necessary (if not already filled on form).
- Implemented functionality which sets the actualend and actualdurationminutes fields if necessary (if not already filled on form).
- The user name and domain name in the settingspanel are set to readonly.
1.2.0.4:
- CAS-01226: float/decimal/money fields are incorrectly converted to a string based on the regional settings of the server. This results in sync errors or incorrect values to be synced on the client.
- CAS-01227: Updated Calendar control. Added filter to only retrieve actvities where the current user is the owner or an activityparty. So the calendar only displays activities for the current user.
- Menu option in Listview for paging are now enabled or disabled, based on availability of next or previous page.
1.2.0.3:
- Fixed bug when deleting record in offline mode.
- Fixed bug in LookupControl. Lookup couldn't be cleared.
- Added FormChanged event to client-side SDK.
1.2.0.2 (
DB RE-INIT):
- Fixed bug when assigning activities.
- Fixed serialization issue when logging synchronization error.
- Fixed bug when syncing or creating records with custom attributes. The ExtensionBase table was out of sync with the Base table.
- NOTE: THIS REQUIRES A RE-INITIALIZE OF THE DATABASE!
- Fixed bug when uploading attachments. The attachment was uploaded correctly, but still generated a client error.
- Fixed several bugs in the form controls.
- In some cases default values were not set correctly.
- In some cases IsChanged was not set correctly.
- Added some checks for local existence of entities/records:
- Lookup control is disabled when related record doesn't exist locally.
- Form doesn't open when the record doesn't exist locally.
- View doesn't open when the entity doesn't exist locally.
1.2.0.1 (
DB RE-INIT):
- Fixed errors when syncing Activities and Notes.
- NOTE: THIS REQUIRES A RE-INITIALIZE OF THE DATABASE!
- Fixed errors when saving a form.
- In some cases, the MultiLookup control was not cleared correctly.
- Sometimes, the form didn't see if anything was changed even if changes were made to the form.