Replacing a Drop-Down List in Nintex Forms 2010 with an Autocompleting Textbox – Fix for Version 1.11.4.0 Update

SharePoint Sig wrote a great post about creating an autocompleting textbox in Nintex Forms 2010 using a Drop-Down list as the source. This was awesome code that did not require much hassle to implement. Until version 1.11.4.0 was released in January of this year.

That is right, this threat that is on every Nintex release finally came to pass:

image

The changes did indeed require adjustments to custom JavaScript.

We had a client that this functionality broke on, so the SWAT team was called in to figure out a solution. After a few frustrating hours, I was able to figure it out. When configuring your variables that are linked to your textbox and drop-down list, let’s call them simply mylist and mytext for the drop-down list and textbox respectively… the ID for the drop-down list element had changed and added _hid on the end of it. So as an example, the ugly ID for the element:

ctl00_m_g_53210a58_ac0b_4f63_be11_47018c3b62f1_ctl00_ListForm2_formFiller_FormView_ctl26_ca219dc8_8328_4480_b26c_fabd21a218d9

Now becomes:

ctl00_m_g_53210a58_ac0b_4f63_be11_47018c3b62f1_ctl00_ListForm2_formFiller_FormView_ctl26_ca219dc8_8328_4480_b26c_fabd21a218d9_hid

So I needed to add in a replace on the string to fix it:

mylist = mylist.replace("_hid","");

That’s the first issue. The second issue is iterating through the options in the dropdown did no longer work. The original code used the following to iterate through:

        $(dropDown1).children().each(function() {

This was no longer working in our implementation, so we did this:

Now, I tried several (well, a lot more than several) options to get ahold of the element, this seemed to be the only one that worked. I built up the element selector in a variable, and then passed it in:

var dropDownOptions = "#" + mylist + " > option";

NWF$(dropDownOptions).each(function() {

The final code ended up being close to this… this was the working prototype, so it can probably be cleaned up a bit more, but, the most important thing is that it worked (changed bits highlighted):

NWF$(document).ready(function(){

    var textbox = NWF$("#" + mytext);

    mylist = mylist.replace("_hid","");

    var dropDown1 = NWF$("#" + mylist);

       
    textbox.autocomplete({

        source: function(request, response) {

            var autocompleteVals = [];

            console.log("autocomplete1");

           
            var dropDownOptions = "#" + mylist + " > option";

            NWF$(dropDownOptions).each(function() {

                if (NWF$(this).text() != "(None)" && NWF$(this).text().toLowerCase().indexOf(request.term.toLowerCase()) >= 0) {

                    autocompleteVals.push(NWF$(this).text());

                }

            });

           
            response(autocompleteVals);

        },

        minLength: 1,

        select: function(event, ui) {

            console.log("autocomplete3");

            var fieldOption = NWF$("#" + dropDown1Id + " option").filter(function() {

                return NWF$(this).html() == ui.item.value;

            });

           
            NWF$(fieldOption).attr("selected", true);

            NWF$(dropDown1).change();

        }

    })

});   

Hope this helps someone else out struggling with this issue!

Advertisement

Creating New Service Application Proxy Groups and Associating Services and Sites

Sometimes the need arises to create separate Service Application Proxy groups in SharePoint. Starting with SharePoint 2010, you’ve been able to do this. In SharePoint 2007, you would have created different Shared Service Providers. Your needs might be, that you are exposing web applications to a different group of users, and need separate applications such as Search and the User Profile Service. This also allows you to run those service applications under different accounts, if you needed to for security reasons.

First, let’s create the proxy group we want to use. And lets give it a name.. in the example, I’ll be using "Redacted"… because all my screenshots have had the real service application group identity redacted 🙂 But you can name this anything you’d like. Load up the SharePoint Version Management Console… and call the New-SPServiceApplicationProxyGroup PowerShell cmdlet.

New-SPServiceApplicationProxyGroup "Redacted"

Once you have your new Service Application Proxy Group created, you can then change the web application subscriptions to the proxy groups. To do so, go into Central Administration > Application Management > Web Applications > Manage web applications and select one of your sites. In the ribbon, then select Service Connections under the Management group.

Image(5)

You can always verify this by then going into Central Administration > Application Management > Service Applications > Configure service application associations

Image(6)

Select the Web Applications view, and then you should see your sites, and their associated applications with their Application Proxy Groups.

Image(7)

When you create a new service application, by default, it is going to get tossed into the default group. There is no way in the UI presently to allow you to change associations in the UI once you have created your new proxy group, so, what you need to do is to handle this in PowerShell. The best way to get the IDs for your service applications is to use Get-SPServiceApplication, and then only display the two columns you need, DisplayName (so you know what ones you are looking for), and the Id.

Get-SPServiceApplication | select-object DisplayName,Id

Image(8)

Once you have the ID’s that you need for your Service Applications, you now need to add them as members to the new proxy group you created earlier. You can do this by using the Add-SPServiceApplicationProxyGroupMember PowerShell cmdlet, like so:

Add-SPServiceApplicationProxyGroupMember "Redacted" -Member "f166672c-24b5-4f1a-bd2d-e8436d966abb"

This will add the "Secure Store Service – Redacted" Service Application to my new proxy group Redacted.

If for some reason, one of the service applications do not want to move out of the default group after adding them into the new group, you can remove them with the Remove-SPServiceApplicationProxyGroupMember PowerShell cmdlet. Just an FYI – the default group is referenced as "", so, if you needed to now remove the above service from the default group, you will need to address it as:

Remove-SPServiceApplicationProxyGroupMember "" -Member "f166672c-24b5-4f1a-bd2d-e8436d966abb"

Upgrading to an Enterprise License in SharePoint 20XX

In SharePoint 2010, 2013, and 2016 – you at some point may need to upgrade from a Standard License to an Enterprise license. There are too many reasons to list here…

At first, it seems pretty straight forward… go into Central Administration > Upgrade and Migration > Convert farm license type

Image

You can see your current license… however, both the input box, as well as the OK button are disabled.

Image

Seems like this would be the place to do it, right? Yeah, I don’t get it either. In any event, the proper way to do this, is to click on Enable Enterprise Features under Upgrade and Migration

Image

Click on Enterprise

Image

and enter in your Product Key and click OK.

NOTE: You cannot undo this, so make sure that you want to use an Enterprise key and absorb the associated cost of CALs!

SharePoint Saturday Boston 2014

image

Yes folks, it’s that time of year again, when the days get longer, and the temperature slowly starts to rise. That also means that SharePoint Saturday is back in town! On April 12, 2014, we will be hosting the 7th SPS Boston at the Microsoft office at One Cambridge Center (in Cambridge!)

Check out our awesome lineup of world-class speakers and sessions: http://www.spsevents.org/city/Boston/April2014/speakers

Also, our awesome sponsors (there are still some slots left!), who help make this event a reality every year: http://www.spsevents.org/city/Boston/April2014/sponsors

This is a FREE (as in a sponsored SharePint beer) event for all, but there is limited space, so please visit the site to register today! http://www.spsevents.org/city/Boston/April2014/

SharePoint Version Feature Comparisons

I wanted to share a link with my readers that shows a very comprehensive matrix of what features are available across different versions of SharePoint; SharePoint 2007, SharePoint 2010 (no FAST search), SharePoint 2013, and last but certainly not least, Office 365.

Richard Harbridge, a Partner Technology Strategist with Microsoft is responsible for this resource, which is a highly valuable one. Please go here to see the comparison chart.

If you are looking for the most up-to-date feature matrix for SharePoint Online across its different plans (as Office 365 changes frequently), can be found here: http://technet.microsoft.com/en-us/library/sharepoint-online-service-description.aspx

Speaking at the Granite State SharePoint Users Group on February 21, 2013

Granite State SharePoint Users Group (GSSPUG) NHI am pleased to announce that I will be speaking again at the Granite State SharePoint Users Group on February 21, 2013. I will be presenting “Automating your Enterprise Application Deployments with PowerShell”

Session Abstract

In enterprise application deployments to SharePoint, there are generally farms, or web applications that host specific applications for specific groups, rather than having just an all-in-one deployment. Often times, you do not have access to these other environments, and will need to pass the deployment baton off to the system administrators of those farms.

This session will walk you through how you can deploy your applications, without needing to have the administrator who will be deploying the application, have to do much more than type a few keys into the SharePoint Administration Console and press enter – and having full configuration and deployment of your custom SharePoint applications to other environments.

Meeting Location

Eaton Richmond Center, Room 122 at Daniel Webster College, Nashua, NH

Meeting Time

6P – 8P

Meeting Registration

Click here to register: http://granitestatesharepoint.eventbrite.com/?ref=ebtn

User Group Information

For more information on the Granite State SharePoint Users Group, visit them at: http://www.granitestatesharepoint.org

Hope to see you there!

Speaking at SPTechCon San Francisco in March 2013

imageI have the privilege to announce that I will be presenting again in lovely San Francisco at The SharePoint Technology Conference on March 3-6th, 2013.

Information on the event and the sessions I will be presenting is below. I hope to see you there! San Francisco is a beautiful place, and I cannot wait to get back down (and over… diagonally really) there.

 

Event Description

SPTechCon: The SharePoint Technology Conference – is the largest independent SharePoint conference in the world – for IT professionals, business managers, analysts, and developers. Choose from more than 90 Classes and Workshops!!! Learn from the brightest minds in the SharePoint universe – more than 40 Expert Speakers and Microsoft MVPs! There’s a shortage of SharePoint experts! Develop your skills, and improve your own professional standing! "I would recommend SPTechCon to SharePoint admins and developers. By far the best Tech Event I have attended." Venki Oruganti , Software Developer – Pitney Bowes

 

Planning and Configuring Extranets in SharePoint 2010

Monday, March 4 – 11:15 AM – 12:30 PM

Most companies, large or small, require contact and collaboration with external entities, whether they are vendors, clients, or contractors. SharePoint gives us the ability to open up portals for collaboration with these external entities, and this session will show you how to accomplish this using SharePoint 2010.
We will review what is required to make SharePoint “open” to the external world and discuss scenarios regarding security and privacy. We will also walk through configuring Forms-Based Authentication, Claims-Based Authentication, as well as using Business Connectivity Services in SharePoint 2010 to authenticate and manage our external users. Once completing this session, you should have a firm grasp on how to configure an extranet environment using SharePoint 2010, as well as what should be considered during the planning of your extranet scenarios.

Level: Advanced
Topic Area: IT Pro Essentials

Automating Your Enterprise Application Deployments With PowerShell

Tuesday, March 5 – 4:00 PM – 5:15 PM

In enterprise application deployments to SharePoint, there are generally farms or Web applications that host specific applications for specific groups, rather than having just an all-in-one deployment. Oftentimes, you do not have access to these other environments, and will need to pass the deployment baton off to the system administrators of those farms.
This class will walk you through how you can deploy your applications—without needing to have the administrator who will be deploying the application—have to do much more than type a few keys into the SharePoint Administration Console and press enter, and having full configuration and deployment of your custom SharePoint applications to other environments.

Level: Advanced
Topic Area: IT Pro Essentials

Speaking at the SharePoint Maine User Group – December 11, 2012

image

I have the honor of speaking at the SharePoint group with by far the best acronym, SPUGME. Makes me wish I put more effort into the BASPUG acronym! 🙂

I will be up there on December 11, 2012, and presenting The Ribbon UI and Custom Actions in SharePoint 2010.

I am excited to speak at this (fairly new) group, and, to meet some more of the New England SharePoint Community.

For more information on the group, and, for the event itself, please visit: http://www.sharepointmaine.com

Extracting Solution Packages (WSPs) from SharePoint using PowerShell

I just stumbled across this link from Kirk Evanshttp://blogs.msdn.com/b/kaevans/archive/2011/12/05/extract-a-wsp-solution-from-sharepoint-2010.aspx

Basically, using 3 lines of PowerShell (which can be turned really into one if needed), to extract a SharePoint Solution Package (WSP) from the Farm Solutions collection.

From his post:

$farm = Get-SPFarm

$file = $farm.Solutions.Item("extendeddiagnosticproviders.wsp").SolutionFile

$file.SaveAs("c:\temp\extendeddiagnosticproviders.wsp")

As awesome as it is easy.

Encoding Encoded Characters in XSLT for Deployment

Let’s say you are deploying out some pages, which may include some custom forms out to a list. In that case, it is pretty straight forward (example: http://www.3guysonsharepoint.com/?p=1004), just do a find and replace in your XLST for < and >, and replace with &lt; and &gt; respectively, paste it within the XSL property (<property name="Xsl" type="string">).

One thing that may trip you up, is if you actually need to keep a < or > sign in your XSLT – but, you cannot deploy the code with that, or else you’ll run into issues…

The fix? Quite simple, just encode the encoded characters, changing the ampersand (&) to &amp;lt; and &amp;gt;, also respectively.

%d bloggers like this: