Pour le développement d'une application de gestion destinée à Office Live Small Business, je voulais utiliser le Web Service WebBCM.asmx.
Pour information, grâce à ce service, vous pourrez gérer tous les aspects de l'application "Gestionnaire de Contacts". Vous pourrez par exemple ajouter des sociétés, des groupes, des contacts. Vous pourrez également associer un contact à un groupe etc ...
En regardant la description de ce service (http://mon_compte_office_live/WebBCM/_vti_bin/WebBCM.asmx), je repère la méthode qui m'interesse : AddContact. Les paramètres de cette action à fournir sont
<AddContact xmlns="http://schemas.microsoft.com/officelive/soap/">
<Contact>
<Id>int</Id>
<LastName>string</LastName>
<FirstName>string</FirstName>
<Email>string</Email>
<Email2>string</Email2>
<WorkPhone>string</WorkPhone>
<CellPhone>string</CellPhone>
<AllFields>
<Field>
<Name>string</Name>
<Value>string</Value>
</Field>
<Field>
<Name>string</Name>
<Value>string</Value>
</Field>
</AllFields>
</Contact>
</AddContact>
Je code le tout en JavaScript, ajoute les paramètres qui vont bien et j'obtiens le message d'erreur suivant :
Server was unable to process request. Field with internal name 'Title' failed on validation rule 'Required field'
En effet, la liste contenant les contacts doit avoir le champ "Title" de renseigné .... En testant plusieurs scénarii, il s'avère que ce champ doit être ajouté dans la section AllFields comme suit.
<AllFields>
<Field>
<Name>Title</Name>
<Value>Mr.|Dr. ...</Value>
</Field>
</AllFields>
Et voila, on peut ajouter maintenant des contacts en utilisant ce service.