Copying 'Like' and 'Liked By' From One List To Another


Badge +11

I am using SharePoint 2013 and Nintex Workflow 2013. I have a blog site with data that I am trying to copy to a publishing site. They both have 'Like' and 'Liked By'. How do I copy that information from the blog to the publishing site using the Nintex Workflow? The 'Liked By' doesn't even show up in the list although I know its there because you can see it when ordering fields.


11 replies

Userlevel 7
Badge +17

Make sure the rating settings have been enabled for the destination list, otherwise the list fields will not be there. The fields added are more 'system' in nature, similar to Created By field.

When you do a query on the source list, do the two fields show in the fields drop down in query list, or even the update item action?

The internal field names are LikesCount and LikedBy.

If they will not show in the drop downs in action settings, you can still query them with soap calls for sure using the lists.asmx web service.

"<soapenv:Body>

                      <GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'>

                         <listName>Library Name Here</listName>

                         <viewFields>

                             <ViewFields>

                                <FieldRef Name='Title' />

                                   <FieldRef Name='LikesCount' />

                                   <FieldRef Name='LikedBy' />

                                   <FieldRef Name='ID' />

                                </ViewFields>

                         </viewFields>

                         </GetListItems>

                 </soapenv:Body>

             </soapenv:Envelope>";

Badge +11

I tried to use the 'Query List' action. I put the text in like you recommended but I got an error:

Cannot find a field with internal name &#39;LikesCount&39; on list.

If I remove the Like field and leave the ID field it works. None of the Like fields appear in the list of fields in Query List.

Badge +11

'Number of Likes' shows up with 'Update Item' action. But not 'Liked By'.

Badge +11

Yes, the ratings were set. The fields appear in the destination list, just not when I'm trying to create it in this 'Create new item in another site' action. I decided to try something else. I simply used this action to create a new item. All I tried to add was the Name and Title field. I got an error on that as well.

"Create Site Specific Item Activity Could not find the document template at '/_layouts/CreatePage.aspx' "

Man! So annoying!!!

Userlevel 7
Badge +17

That's a strange issue and should be separate from the ratings. Is there a default content type on the list, and does it have a valid template included?

Second, on the existing source list. Can you update an item's rating successfully?

Badge +11

The destination library has content types: Page, Article Page and Welcome Page. They are built in. However, I created 4 custom templates that I copied from the layouts. You know the publishing layouts: Body Only, Left Image, Right Image and Left Image. In that destination library I've been able to successfully create articles by using the Article content type and selecting one of my custom layouts. No problems! I don't know why I can't create an item from the workflow. I don't know if it is because the site where I created the workflow is a blog site, it doesn't recognize those templates from the publishing site.

Userlevel 7
Badge +17

If the workflow is to create a new page, then update it with blog content, then it will have to do those in separate steps. First create an item with the a Page content type. Then supply the body text data, this should be html.

Badge +11

Since they are on different sites, I had to use the 'Create new item in different site' action. That required me to put in content type and field data for Name. Is there a better way of doing it. I can't use any action (services) that requires me to use login information. They don't give us login information to get into the server unfortunately.

Userlevel 7
Badge +17

Just make sure it is a content type in the Publishing library.

For actions requiring login data, you could setup a constant variable or use a secure store credential. So there should be ways to not require server information or login ability but still have a set aside credential. We use one called Nintex Workflows Service account. So it is not related to anything but for use in workflows.

Badge +11

The article is a content type in the publishing library. It is strange.

Badge +11

Apparently, you were right Andrew Glasser about the document template. The document template is a default SharePoint template. But for some reason it couldn't find it in the workflow. So I followed the steps in the website even though my version is 2013 and it worked.

http://sharepoint.stackexchange.com/questions/162733/using-workflow-to-create-a-new-page

Once I did what the website said, I was able to use the 'Create new item from different site'. Yaaaay!

Reply