Custom sitecolumns can't update - sharepoint-2010

I have made a ContentType in Visual Studio 2010 for my SharePoint 2010 project and the first time I deployed the wsp through the WSPBuilder there were no troubles but now every time I try to deploy, it keeps saying that it can't activate features because "The field with ID {insert random guid here} defined in feature {60938308-3563-497c-bc55-b2ae847ca8b8} (the feature activating my contenttype on the site) was found in a current site collection or in a subsite."
The contenttype and site columns gets created on the rootweb and even though I try to either deactivate the feature or completely uninstall it, the site columns and contenttype won't be deleted from the ContentType gallery or Site Columns gallery.
How can this be?
I use pure feature and XML functionality. No eventreceivers are involved.

SharePoint will not let you delete site columns and content types that are in use. This makes the upgrade process a little tricky.
If you just want to add a field to your content type you can use the Feature upgrade facilities in SharePoint 2010. This blog post series should help you: http://www.sharepointnutsandbolts.com/2010/06/feature-upgrade-part-1-fundamentals.html
If you need to make any other changes (remove field, change type, etc) then you need to take a different approach. You'll create a new content type that inherits from, and eventually replaces, your existing content type. This strategy is discussed here: http://msdn.microsoft.com/en-us/library/aa543504.aspx

Besides checking out what Rob suggests:
Did you install Visual Studio SP1?
I received that error before installing SP1 and the workaround was closing all Visual Studio instances and starting it up again. After starting up deployment was possible again.

Related

Message in side client visual basic application?

I have a Visual Basic application, and there are a lot of clients using it. Every XX days I make some updates to the source, and after that, I contact every client to tell them that there is a new version of the application.
But I realize that I have a few clients using an old version of the system.
Is there a way (by this I mean some kind of code, library, functions, etc.) to modify/update my master source, so that if a user is using an old version of the application, some kind of message appears after a successful log in into the system?
Message: "You are using v.1.00 and this is an old version of the
system. Try to update to the newest version, v.2.01"
Additional to the information described above, in my VB application I used some parts of VB.net code for some actions that require connections to Internet web pages.
Any suggestions/help/comments or guidance would be very helpful!
You can't do much about the customers who are already out there.
An easy way to implement this is to have your code retrieve an XML file from a website that you control. That XML file would contain the most recent version number. The code compares its version number to the version in the XML. If they're different, you display a message.
As a bonus, your XML can include a URL that points to the newest version for download.

How revert to tfs 2015 stock agile process template

After (or before) we convert from TFS 2012.2 to TFS 2015.3 (which we have done just fine in a test run) we would like to revert our team project to the standard TFS 2015 Agile process template, and no longer use the customized agile process that we had modified from TFS 2012. We are quite willing to delete all of our work items and start over, but need to keep the team project history and change sets. Anyone know how to do this? Answers to prior questions on this did not address this situation. Thanks.
There is no easy way to do it. Basically the steps require you to use a lot of witadmin commands. Start by deleting any work item types that were added and don't exist in the default template.
Then push the standard work item definition for each work item type.
Then push the categories
Then push the process configuration
Then delete any fields that are no longer used
That should bring you back to the standard template.
An alternative you could try is to use the WitMorph project. You can write a set of rules to migrate your data back into working order.

Lightswitch lost data provider for data source connection

I have an odd situation on a VS upgrade from 2013 > 2015 outside of runtime.
App Type: MS Lightswitch HTML Client
DB Type: Oracle
Framework: 4.5
Story: I upgraded VS and replaced OPD.Net to the 2015 version. Works fine.
Then I converted my application. There were a lot of things to fix, but most were pretty easily remedied. I tested the application and it works as expected so I published to test server and everything checks out. Success! So I thought.
I want to continue developing the site. As I make db changes, they need to be reconciled to the intrinsic db in my project.
After clicking 'Update Database' I see this. So far so good.
What's expected is that after I hit 'Finish', all changes to the selected table should pull in to the lsml files. But this is what I get.
I've read a few places like The given key was not present in the dictionary, what key? [closed] but these all look like runtime remediations.
If I go back to the update screen and hit 'Previous', I get this.
I sifted through every freakin lsml file in text editor looking for where the provider is assigned. No luck. I also created a new proj to compare, nothing stood out. I also tried adding another data source which works fine. So ODP.net is not the issue. I am lost on what to do now. I searched all over the site, Google, for every error message with various tags. At this point I reach out to you, or anyone that may know what this is about.
Thanks ahead of time!
Note for future users upgrading a VS LS project with Oracle db.
Since a new version ODP.Net is required (in my case 2015), the provider name is going to change. To ensure LS knows the new provider, the data source lsml file needs to be updated. In my case I used GIT to help out. This is how I resolved it.
Steps:
After converting your project and replacing ODP.net to the current version.
Create a new data source using the new provider.
Save the project and re-open. This will cause lightswitch to recompile.
Open File Explorer and navigatye to the ProjectName.server folder. In a text editor (I used notepad) open the lsml files under ProjectName.server and there should be two lsml files (1 for the pre-existing and another for the new) or more if you have multiple sources.
Copy the connection properties of the new datasource to a new temp file on your desktop.
Roll back the entire solution using GIT or other source control.
Use text editor to open the lsml file for the original data source.
Update the GUID for DataProviderName with the values from the temp file in step 4.
Note: The connection string GUID should be left alone as it should match your GUID in the web.config file.
<DataService.ConnectionProperties>
<ConnectionProperty
Name="DataProviderName"
Value="9d8fdbb9-xxxx-4787-xxxx-49831d34ad4b" />
<ConnectionProperty
Name="ProviderInvariantName"
Value="Oracle.ManagedDataAccess.Client" />
<ConnectionProperty
Name="ConnectionStringGuid"
Value="36e67aca-xxxx-41a7-xxxx-a4546761b30d" />
<ConnectionProperty
Name="ProviderManifestToken"
Value="12.1" />
</DataService.ConnectionProperties>
Finally reload project and the changes should take effect allowing you to once again update your data source.
Thanks

TFS 2015 won't upload custom process template

We have a customized version of the Agile template that we've been using since TFS 2013. I have upgraded the template for 2015, which was no big deal. But when I go to upload it I get error "VS402479: You can't overwrite the Agile process template, because it's locked".
I have followed the instructions from MSDN to upload an updated process template. I have changed the name, description, and minor version strings as described in the documentation.
Here are the values from the metadata node in my ProcessTemplate.xml file:
<name>Custom Agile</name>
<description>Custom Template based on MSF Agile</description>
<version type="ADCC42AB-9882-485E-A3ED-7678F01F66BC" major="14" minor="20" />
I have tried changing the major version and the minor versions to different, higher increments, and receive the same error.
If I change the type to a different Guid, the template loads just fine. The instructions imply that the Guid should be the same. I'm assuming this is so TFS knows the relationship between the built-in templates and custom templates they are based on.
I have a bunch of team projects to update the features on once the upgrade is complete and do not want to break the relationship to the built-in Agile process template if I can help it.
You can no longer edit or delete the built in templates in TFS 2015 so you'll have to change the Guid if you want to upload your template.
Process Template changes to TFS 2015 RTM
In TFS 2015, the system templates are locked and cannot be changed. That change allowed us to overwrite the templates we ship, and with that we were able to rename the templates to Scrum, Agile and CMMI.
To create a custom process template based on a shipped template, simply export an existing template, give it a new name and version, and then reimport it by using the Process Template Manager. Existing projects are unaffected by this change, which means that they can continue to have their process customized by using witadmin.
We have determined that this issue is not a bug. To upload a custom process template, not only the Process template name needed to change, but the version id also needed to change.
In the ProcessTemplate.xml file, find the following settings:
<version type="ADCC42AB-9882-485E-A3ED-7678F01F66BC" major="15" minor="10" />.
Change GUID string to another value. Then try to upload the custom template again.
You can generate a new Guid by using this C# code:
Guid g = Guid.NewGuid();
string s = g.ToString();

Prevent copy of app from overwriting the original

I'm working on a windows phone application for an event. The event has an last year's event already had a windows phone application and all I really need to do are some updates. So I made a copy of the old application and started modifying it instead of creating a new solution from scratch.
Now here's my issue: when I deploy the new event application with Visual Studio to my phone it overwrites the old application. This is something I don't want, as I want to be able to compare the two on my phone. I also suspect that this might give me some issues when I upload the application to the store.
I suspect that this has something to do with copying files that are supposed to be unique for each application.
Any help would be appreciated!
The way I fixed this was by generating a GUID id using the GUID generator in Visual Studio ( as suggested by #Robert ). And changing the GUID in the WMAppManifest.xml and Package.appxmanifest files.