Clayton's SharePoint Madness

All About SharePoint, InfoPath, and SharePoint Designer!

SharePoint 2010


This is where I will keep sort of a diary of my trials and tribulations with Microsoft SharePoint Server 2010 (SP2010).  I am in the Tech Beta program, which gives me access to the SP2010 bits as well as the entire Office 2010 suite.  Now that the SharePoint Conference has come and gone, the NDA has been lifted, so we can now show off everything we’ve learned.  The Beta 2 release of SharePoint Server 2010 will not be released until late November, but I luckily got a day to work with a much better build than the one I got 2 months ago.  During this day of work, I was able to create several scenarios based on things I had learned through the week, and then I frantically took as many screenshots as I could using my trusty OneNote 2010 (you gotta try it!).  Next, I will write up my new blog posts in Word 2010 and publish straight to WordPress as soon as I can.  Office 2010 is also public, so I can speak in depth about the beautiful combination of the two, since Office 2010 is tightly integrated with SP2010.

I will be writing blog entries as I go through the process of testing and learning this new, awesome version.

To start off, I’m going to just link to the resources already available for SP2010:

Administrative:

Codeless Solutions:

121 Responses to “SharePoint 2010”

  1. Felicia said

    Hi Clayton,

    I need to know if it is possible to develop a workflow in SP that would start in one library and open up a form in another library. The reason I need this is because I would like the tracking number in the first library to be transferred to the second form in the second library. Right now each library has its on set of “ID” numbers each time an item is created in that particular library.

    The form in the initial library has a “Assigned to” field, I would like a workflow that would open a new form in another library once that assigne to field is SME, but keep the tracking number consistent across the two libraries.

    • Clayton Cobb said

      Felicia,

      Workflows don’t open forms, but you can edit fields in existing items of other lists or libraries. You can also create items, but not new forms unless you do a special workaround. If the form in the 2nd library already exists, then it’s very easy to pass the special tracking # from form 1 to form 2 with a workflow AS LONG as you have a unique identifier to define which form in the 2nd library should receive the tracking #. Since it seems the tracking # would be the unique identifier, then I’m not sure how you plan to identify the 2nd form unless there is another unique identifier. Can you explain the entire process so that I can understand and try to think up a solution?

      You will always have a unique ID auto-generated in SharePoint, and that can’t be changed or set, but you can create your own ID that gets shared between items in separate lists or libraries.

      To reiterate, though, the workflow won’t “open a new form.”

      -Clay

  2. Felicia said

    Thanks Clayton,

    That helps.

    Here is my proposed process: An internal customer goes to my library and fills out form A. Once submitted I look at the form and determine if it can be processed further or rejected. If approved I assign it a status of SME in the library. I want a workflow that will be triggered from that SME designation which will trigger form B to open in another library. (I know now I cannot do this. So can it trigger notification to a specific user to open a new form B?) I also wanted form B to pull the tracking number from form A. (Would this be your unique identifier? How would I do that?)

    Any suggestions?

    • Clayton Cobb said

      What does the 2nd form do? Can you not keep it all contained within one form? You could easily send a link to the “new” form so that when clicked, the SME gets right into the new form on the other library, but you can’t pass the identifier in this link unless you do a URL query parameter, which will require code. Help me understand why a 2nd form is needed, because that will help me think of a solution.

      -Clay

  3. Felicia said

    The 1st form is for customer submission. The second form is for coworks in our department to complete. It gives info on how they manage the particulars on the first form once they were assigned to it.

  4. Marcus said

    Hi Clayton,

    I am almost sure, that my problem has a simple solution, but it seems I just cannot find it. Maybe you can help:

    Problem:
    I store Infopath 2010 forms into a sharepoint 2010 form library. These forms (purchase orders) contain a repeating table section (item list). From the sharepoint library I would like to export the stored xml-files to MS Excel 2010 for analysis.

    I just can’t find a way to get the data from the repeating section into Excel. Is there any codeless way to do so?

    • Clayton Cobb said

      No, because SharePoint can’t handle the repeating InfoPath data, so once the form is submitted to SharePoint, that data is no longer repeating. It becomes a concatenated single line of text in SharePoint. You would need to export straight from InfoPath, not from SharePoint, but even then, you’re taking one record (the form) and trying to extract many records (the repeating table). I’ve only seen coded methods that could parse out each line.

      • Marcus said

        hm. For just one xml-File it works perfectly. From Excel I just import the form from the sharepoint-library. But doing so, I just can look into one file (form) at a time. When the forms are stored in a “normal” file-folder it is possible to import all xml-files at a once and run the report. Well, no “export all xml-files from Sharepoint-Form-Library-Button to wherever”. Thank you anyway.

  5. Chris G said

    I’m not entirely sure how to create a ‘new post’ in your forums, so I’ll throw ‘er here! 🙂

    I’ve got InfoPath 2010 with SharePoint 2010.

    What I’m trying to do is create a simple ‘Send to PDF’ button, or even better a Submit button that saves the InfoPath form and at the SAME TIME creates a PDF on an InfoPath ‘view’ of my choice. That looks to involve some coding, correct?

    Thanks,

    Chris.

    • Clayton Cobb said

      Nothing simple about that at all – definitely custom code.

      I have no forums. There’s nowhere to post other than comments, so you got it right.

      • Chris G said

        Thanks for the ultra-quick response!

        I’m guessing this is because InfoPath Form Filler is competing directly with Acrobat.

        I’ve got my forms created in InfoPath 2010 Form Filler … converting them to the Web Form is not easy, is it? Is there a quick reference somewhere that easily shows you what you lose (or can’t do) when you move from the Filler to the Web version?

      • Clayton Cobb said

        It’s easy, and in 2010, you don’t lose much. I will explain later.

  6. Chris G said

    Clayton …

    Is it possible to create a SharePoint List drop-down link that takes me to either a particular Page View of the template.xsn or a Page View of a new InfoPath doc (i.e. neither an Edit, Display nor New) ALL within the SharePoint 2010 ‘dialog’ mode (greyed out background) … AND WITHOUT having to code?

    PS. Thanks for your help/recommendations/’vehement disagreements’ 🙂 in the past … all have helped me out a lot.

    • Clayton Cobb said

      Chris, I read your issue elsewhere but didn’t really understand it. What is a “SharePoint List drop-down link”?

      There isn’t a way to specify a view to open when opening an InfoPath form. You switch views on form load based on some condition. To base that condition off an incoming URL would require a query parameter in your URL, which requires code in the form.

      • Chris G said

        Clayton …

        A Sharepoint list has records. When I hover over a SharePoint list record, I get a drop-down menu appear that provides the user with links (e.g. Delete Item, Alert Me, etc.). I have created about a half-dozen custom ‘drop-down links’ on this list associated to the item you’re clicking on.

        They work, but come up with their results on the basic web page. I want them to come up in a SharePoint dialog box.

      • Clayton Cobb said

        Ahhhhh, ok. When you say “drop down,” I don’t think people will realize you’re talking about what is known as the “context menu.” A dropdown is a control within a new/edit form. Yes, the context menu is a “dropdown,” but that wouldn’t ever come to mind when referring to custom dropdowns (at least to me). Now, I know what you mean, but the dialog box is specific to the form in the list. What exactly are you trying to invoke in a dialog box with these custom actions?

      • Chris G said

        Oh, OK – context menu.

        I have a half-dozen of them that work fine – they Display info related to the record. That ‘display’ comes from related Display View’s in my template.xsn file. All working fine.

        I just want this web part to appear in a SP2010 Dialog Box like this:

        I understand that there’s no real facility for this without some code. But is the code difficult to add? Is there workaround?

  7. Burak said

    Hi Clayton,

    I’ve been working with userprofilesync for some time on Sharepoint 2010 & Infopath 2010. But for some reason I can’t pull AD Security groups. Userprofile sync works well, I can get all the user information from AD but not security groups.

    I know there some articles on page regarding to this subject but all of them are for MOSS 2007.

    I was wondering if you manage to get them work on Sharepoint Server 2010 ??

    Regards

    • Clayton Cobb said

      Burak,

      I’m glad you wrote this, because the same thing is happening to me, and I haven’t found anyone who can get this to work. I’m trying desperately to get Microsoft to look at it, but they haven’t done it yet. I was told I have to call paid support to resolve it, so I’m trying to get help through other channels, such as the InfoPath team even though it’s not their job. They are trying to help, but it’s slow going so far. Please add your comments to this thread so that maybe we can get Microsoft to really help:

      http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/8ede2f40-2b11-416b-b426-51c1b6479c33

    • Barry C said

      If you are talking about creating an AD Security group and then using this group for permissions, we have made this work in MOSS 2010. I don’t know of anything that we had to do that was special, but instead of the user name populating, the security groups have the domain\”Security Group”.

      • Clayton Cobb said

        Barry, we’re talking about pulling security groups into InfoPath through the User Profile Service, not basic permissions in SharePoint. As you can see in the thread I posted above, this is a pretty complex issue and is being researched by the Microsoft Support team – I have an open case.

  8. Felicia said

    Hi Clayton, need your help on something. I have a site users webpart that for one reason or another stopped displaying the availability of the users. I have my department employees listed in this webpart and would like to see the online availability of each. Any help you can provide will be greatly appreciated.

    • Clayton Cobb said

      Are you sure the web part stopped working, or are you just not seeing the status orbs on your computer? Can you check with other users on other computers with other browsers to ensure they don’t see the status orbs?

      • Felicia said

        It was another user that informed me of this issue. We see the orbs but all of them say user not available. Right now I should be listed as in a meeting but I am not.

      • Clayton Cobb said

        That means it’s not getting the information. That would either be due to the person not being logged in, the accounts being disassociated, or the OCS server losing it’s connectivity with SharePoint. I doubt it’s the web part itsself.

  9. Barry C said

    I need some help. Using SharePoint 2010 and InfoPath 2010

    I have created a list submitting to SP that includes a checkbox for Email Notifications calles Email Select then the user types in their email address in another field (email address). Within this row there is a list of items they can select to receive notification on, Item1, Item2, etc… This works perfectly, but I may need to set the list for the items a little bit differently. (That’s a secondary issue)

    Now this list contains about 200 individuals and I want to utilize a notification form independent of List. This will post to another managed library but will use the list for all people who selected yesd for email, and the selected item that matches. I want to concatenate the email addresses and send a message through Infopath. I can use designer, but I am just as lost there.

    I have retrieved the data on open, (I can configure with button as well), but when I try to populate a field with all the email addresses I just get 1 and it is only with the option for Any Occurrence of “email_select” = “True”. Then I try to use All I get nothing. I have tried multiple fields to populate this in, test box, list, repeating table, and I am just getting stuck. Your help is greatly appreciated.

    • Clayton Cobb said

      You need to use the double eval trick to concatenate the repeating values with a semicolon delimiter. Here is an article from Alec Pojidaev that explains the trick, and I use it in my forms: http://alecpojidaev.wordpress.com/2008/12/16/infopath-codeless-programming-walkthrough/

      Btw, you shouldn’t make your people type in their email address. You already know their email address, so don’t make them manually type anything – just auto-populate that field (no reason to even show it – just store it in a hidden field) – by using the User Profile Service: https://claytoncobb.wordpress.com/2009/06/21/userprofileservice-extended/

      • Barry C said

        (I have a large majority of the people which will be using with alternative emails outside of AD is the reason they have to enter it)

        Thanks for your suggestion. The double Eval trick seems to be the way I want to do this but I’m having some issues. I can populate the field with the correct number of responses, but it repeats the first firld only. It does not appear to go to the next row. Here is the formula:

        eval(eval(SharePointListItem_RW[Email_Address != “”], ‘concat(xdXDocument:GetDOM(“Retrieve Email”)/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW/d:Email_Address, “;”)’), “..”)

        What I get is user1@domain.com;user1@domain.com when I want to get user1@domain.com;user2@domain.com

      • Clayton Cobb said

        Barry, you’ll have to play around with it and work on the syntax. The double eval trick definitely gets each repeating value, so if you’re only getting the first value, then it’s either not a repeating field, or the syntax of the statement is off. There may be another reason, but I haven’t encountered any others yet. If you can’t ever figure it out, then send your XSN to me via email.

  10. Mary Ann said

    Clayton, Our organization is still utilizing SharePoint Server 2007 with a size limit of 50MB per site. I am a site owner and would like to be able to check the size of my entire site, and if possible individual document libraries. The site administrator is unable to provide instructions on this. Can you help?

    • Clayton Cobb said

      Mary Ann, are you sure it’s only 50MB? That’s a negligible and useless amount of “space” for SharePoint. Also, SharePoint can only limit the size of an entire site collection, not an individual site. So, if you truly have a 50MB on a _site_ and not a whole site collection, then your company is using a 3rd-party tool to manage this. If there is actually a 50MB quota per site collection, then your SharePoint implementation is unusable. As for seeing the size of your site, that can only be done at the site collection level. SharePoint does not expose metrics for the size of a sub-site nor a doc lib. Finding such info would require a 3rd-party tool or perhaps some Powershell scripts that a developer creates.

      • Mary Ann said

        Unfortunately I confirmed that it is. It may be that they are using third-party software but I don’t know. Thanks for the info. on the metrics.

  11. Shelly said

    Clayton –

    Really appreciate all that I’ve learned from you thus far. Our organization is planning on doing a 2010 upgrade (includes upgrade to AD 2008) – to Exchange, Office (includes upgrading all clients to Windows 7), SharePoint (which will include migration of custom and fairly complex InfoPath forms and SPD workflows). I’m finding it hard to understand what products need to be migrated first and the impacts of 2007 and 2010 co-existence. I saw a blog post back in January in which you agreed with Mike Walsh that Office 2007 will work just fine with SP 2010, but then saw a more recent post (September) in which you warned against installing SPD 2010 while still on Office 2007. Do you have any basic suggestions you can share regarding the order of this multi-product upgrade? – Thanks…

    • Clayton Cobb said

      I would recommend doing all of the supporting infrastructure first: AD first (and all servers to Windows Server 2008 R2), Exchange (this is a major upgrade if going to 2010, so do this by itself when not doing anything else), then do all clients to Win7, then upgrade all clients to Office 2010 (are you doing this?). Lastly, upgrade to SharePoint 2010 – they should not co-exist unless you have a specific business need to do so. Office 2007 does work fine with SP2010, but SPD2010 is a separate topic. You don’t want to install SPD2010 on a machine that still has Office 2007 – don’t mix Office clients. After you upgrade to Office 2010, install SPD2010. For those who have SPD2007, uninstall it before upgrading to Office 2010.

      • Shelly said

        Thanks, Clayton. One more question. If we need a ‘rollback’ strategy, would MOSS 2007 work ok with Office 2010?

      • Clayton Cobb said

        Yes, Office 2010 works fine with MOSS 2007 as well. You just have to make sure you’re not creating 2010 documents in some cases. For instance, an InfoPath 2010 browser form will not work in MOSS 2007, but an InfoPath 2010 client form WILL work with a MOSS 2007 form library. Additionally, you can easily create InfoPath 2007 browser forms while using InfoPath 2010 – it automatically restricts and hides features that are not available for 2007, so it works wonderfully well. In fact, I only use InfoPath 2010 even when building 2007 forms, because it’s so much more efficient.

  12. Naveed Afzaal said

    Hi,

    I have been trying to write the Sharepoint 2010 workflow event receiver “Workflow commpleted”.

    On the completion of an out of box “Approval – Sharepoint 2010 workflow” set on a Site Page library, I need to update some column of that list in my event receiver.
    So for this I need the list Item on which the workflow instance is running.

    I understand I can get this using “properties.ActivationProperties.Item” but I get ‘null’ in ActivationProperties, therefore i am not able to get the required list item.

    Can you help me in this regard?

  13. Michael said

    Hi Clayton,

    I am having problems using double eval function to concatenate the AccountId when using Person/Group Picker control on InfoPath 2010. I have set the default value of another field to this:

    xdMath:Eval(xdMath:Eval(/my:myFields/my:PointOfContacts/pc:Person, ‘concat(/my:myFields/my:PointOfContacts/pc:Person/pc:AccountId, “|”)’), “..”)

    What happens is that when I add 3 users, it just seems to repeat the AccountId of the 1st user 3x.

    Please, I need help with this.

    Thank you!!!

    • Clayton Cobb said

      Michael, you’ll just have to play with the syntax or go to Alec Pojidaev’s blog and ask if he can see what’s wrong. I can’t tell by looking at it, but if it happened to me, I would keep playing with it until I found why it wasn’t working. If you can’t figure it out after a while and can’t get an answer from Alec, then let me know, and I may have time to dig into it myself. Just be aware that I’ve used it many times and have suggested it many times where it always worked, so there’s a good chance it’s a syntax error. However, I haven’t needed to use it in 2010 yet, so it’s possible there is a limitation (shouldn’t be, but I can’t verify).

    • Barry C said

      xdMath:Eval(xdMath:Eval(/my:myFields/my:PointOfContacts/pc:Person, ‘concat(my:AccountId, “|”)’), “..”)

      Try that

      I was having the same problem foe weeks and when I finally got an answer it was as simple as that, only I was using an external data source.

  14. venkat said

    Hi Clayton Cobb,

    Thanks for sharing good stuff in your blog. i gone thorough your video related to Leave request workflow with infopath form.
    Could you please share me the solution to explore my self in sharepoint.

    Thanks in advance,
    venkat

    • Clayton Cobb said

      Venkat, you’re welcome for the information. Unfortunately, this is not a package solution that can be shared. It is self-contained within my environment.

  15. J. Cruz said

    There are a select few in the Systems Group that have upgraded to 2010 for an eventual company-wide upgrade. In the meantime, most users are still on 2007. I created an InfoPath form on 2010 that has a Person/Group Picker that does not work for the users on 2007. The rest of the form works fine. Any suggestions? Thanks.

    • Clayton Cobb said

      Upgraded to 2010 what? Office 2010? Ok, so then are you creating InfoPath Filler forms or Browser forms? It must be associated with SharePoint if there is a Contact Selector, but are you not using browser forms in SharePoint? If not, then 2007 users can’t utilize 2010 forms at all, but you said that only the People Picker doesn’t work. The form shouldn’t even open if it’s a 2010 form, and they only have 2007. If it’s a browser form, then it doesn’t matter what version of Office they have at all, because InfoPath doesn’t get used locally when viewing a form in the browser.

      Based on the above, can you clarify the situation?

  16. Felicia said

    Hi Clayton,

    I am trying to create a workflow in one library that will copy a “Closed or completed” request to another library. Any ideas on how to do this?

    Felicia

    • Clayton Cobb said

      Felicia, you use a SharePoint Designer workflow with the Copy List Item action, but I disagree with copying it to another library. Just close it in the original library.

      • Felicia said

        Will this copy the entire form along with the data contained in it or do I have to build a seperate workflow for that?

      • Clayton Cobb said

        Copy List Item should take the whole thing, but I think it’s a poor idea.

      • Felicia said

        What would you advise?

      • Clayton Cobb said

        Use metadata to define the status of each file and “close” them in place. Then, use views to group and/or filter by status column. You can then add a Form Load rule to the form to switch to a read-only view if the status = Closed, or you can use a workflow to dynamically reduce permissions to Read for everyone when status = closed.

  17. Sean said

    Clayton,

    Sharepoint 2010

    Here is on overview of what I am trying to do:

    1. User create new idea (SP list/Infopath 2010) – Got this part working
    2. New Idea creates a new Idea Discussion (SP workflow creates SP Team Discussion)- Got this part working
    3. Creating a new Idea Discussion starts a SP workflow to email SP group with a link to the discussion – Got this part working

    I would also like to include a link to InfoPath 2010 Form for the new idea in the email that notifies the SP group. I do not know how to link the SP idea list and the SP idea team discussion. Also, I would like to send different emails and links in the email based on the status of the idea (new, rejected, approved).

    Any help would be great. or if you feel there is a better way to approach this, I am willing to listen…

    Sean

    • Clayton Cobb said

      Sean, sounds like you just need to add a new column to the discussion list for storing the ID of the form (idea) that creates it, then in your SPD workflow action for “Create List Item,” set that custom field to the ID of the CurrentItem:ID. That way, each discussion will have a foreign key relationship to the original idea so that your workflow on the discussion can look back to the idea list and dynamically create a hyperlink to the idea where the ID matches your custom field.

      • Sean said

        Thanks, Clayton. Works great.

        Now I have another issue – how do I pass the CustomerID filed value to the Replies in the discussion?

        Thanks,
        Sean

      • Clayton Cobb said

        Not sure – what is CustomerID?

      • Sean said

        Sorry about that…I meant CustomID – the custom field to the ID of the CurrentItem:ID. How do I pass the value of CustomID to the Replies to the Discussion?

      • Clayton Cobb said

        Why does it need to be associated with the replies when it’s associated with the discussion list item already? I haven’t done something like that, but discussion replies don’t really use metadata. You could try adding a CustomID field to the Message content type in your discussion list, and then populate each reply with the ID of the discussion itself using a workflow that runs only on creation. Basically, a reply is submitted, then the workflow runs and sets the CustomID field to the ID stored in the discussion item that the reply is a part of.

    • Sean said

      I was thinking I needed to do it for two reasons

      1. I want to send different emails based on the status of CurrentItem:ID
      2. In the reply, I want to send a link to the DispForm.aspx of the list item that created the discussion.

      I am new to Workflows, so maybe this isnt the best way to handle it…

  18. mj said

    Hi clayton,
    I’m trying to use “Convert Document” option in a library to convert an infopath form to a webpage.
    I started “Document Conversions Launcher Service” and “Document Conversions Load Balancer Service” in sharepoint 2010, and enabled document conversions for the site which i use it.
    Now, what should I do to convert an infopath form to a webpage?
    It seems plain, but I dont see “convert document” when I r-click on an infopath form in a form library!
    where is my wrong?(except my terrible grammer!!)

    • Clayton Cobb said

      You don’t right-click on items in SharePoint – that doesn’t do anything. You click the down arrow on the context menu of the Name field (filename) to perform any specific actions if the actions are not in the ribbon. I have not used Document Conversions, so I do not have any advice other than to read how it works on TechNet and follow the steps exactly.

  19. Burak said

    Dear Clayton,

    I have a little (sometimes common) problem with my document library in my SP2010 Site.

    Documents in the library are created from another list using a workflow % document properties of the word and I’m successfully doing it. The problem is, for some reason when I use previously created list&library as a template to create another library, documents in the new library give me an error like “Document Information was unable to load.”

    I did some research regarding to issue but nothing worked for me.

    – Some says the problem is a lookup column (I don’t have any)
    – Some suggest cmd line to stop some service
    – ….

    All I can do to solve problem is to delete library and recreate it (which is a very bad idea.)

    Do you know something about it?

    Best Regards

    • Clayton Cobb said

      Burak, that is some non-standard usage of SharePoint that can lead to things like that. The DIP is very finicky, since it’s an InfoPath form embedded inside Word. Since creating a doc with a workflow requires a content type, and the DIP + all fields are associated with the content type, then it’s likely losing some associations when you try to create the template. It’s a unique requirement that I haven’t had, so I haven’t tried to build something like that.

  20. Barry C said

    Ok, I’m stuck again and want to run this by you. I may have this built wrong from the start, but let me see if this is possible.

    I have a list I created using Infopath 2010 in MOSS2010. What I want to do is to edit the list item, change the Title, remove the ID and resubmit as a new item in the list. I’m doing this since many of the same things will be included but only a few fields will have to change according to the group of items that have to be submitted. I know that I can do a copy then go into the item to change the title and other fields, but it would be more efficient if Infopath would allow me to submit the first, then change a few fields and submit a new one.

    I’ve tried creating a button that removed the Created By, Modified By, ID and it fails with a data exception error.

    This list will be used to populate drop downs in other lists. Should I have created this as a library and created a workflow to generate and update the list?

    Any insight would be greatly appreciated.

    Barry

    • Clayton Cobb said

      Yeah, you can’t mess with those built-in fields. This is not the right approach.

      How are you trying to submit new items? Are you saying you want to submit multiple items at one time from the same form at the same time in one session? If so, then list forms have this ability built-in. When initially creating the list form, you get the option to “allow multiple,” which then converts the main data group to a repeating group and thus allows you to insert sections so that you can submit one list item per section all in the same form. That’s one way to do it.

      The other way would be to configure your submit options to submit and then open a fresh blank form. The key would be keeping the values. You would either need to set them as default values or come up with another trick, but I don’t exactly what your process is yet.

      • Barry C said

        Thanks, I was afraid that was my answer. I will have to prepopulate the most popular items that reoccur, which is doable, but more work for me. I was trying to take a shortcut. I have it all submitted through a button, and the length of the form is not great to have as a repeating item, but then a problem would be copying the same ones as you mentioned above.

        But you mentioned submit and open a fresh form, is this an OOTB option in 2010? I’ve seen this with code, but not any other way? I would be very interested in this as I have other forms this would be great on.

      • Clayton Cobb said

        Yes, submit and open a new form is built-in for 2007 and 2010 – it’s just a submit option when using the actual built-in submit (not Rules and Custom Code).

        Submit Options > Advanced > Open a new form.

        Btw, the multi-item thing I mentioned doesn’t create a repeating table. It creates a repeating section so that you basically get to replicate the same form as many times as you want in one session, and each one submits as a separate item – much different than a repeating table.

      • Barry C said

        Unfortiunately that won’t work since I have a bunch of rules around my submit button to creadte a dynamic file name, submit to multiple libraries, set fields, etc… Glad to know it does exist though. Wished it was available for rules.

        Thanks as usual for your prompt responses.

        Barry

      • Clayton Cobb said

        That method allows rules, too. Did you try it? I do all the same things you mentioned…in just about every form.

      • Barry C said

        This is why you are the MVP and I have a bruise for kicking myself in the ass.

        Thanks

  21. Cliff F said

    Hi, any ideas how I would do this – using InfoPath 2010 (1st time) using InfoPath Form Services The form has been published to a Forms library.
    The form is browser-enabled.

    The form has two views:
    User View – all users will see this view Admin View – only Admin users will see this view

    Users should not be able to open the Admin View.

    Thanks

    • Clayton Cobb said

      First, go to File > Info > Form Options > Browser > Uncheck the Views box so that the View selector doesn’t show up. I also recommend doing the same for Save/SaveAs/Submit/Update/Close

      Next, make the User view default and add a button that only Admins can see that switches to Admin view by adding a Formatting rule that detects the user’s identity to see if they’re an Admin or not.

      Or, add Form Load that switches to the appropriate view based off the user’s identity.

      The key to all of the above is determining how you know if someone is a user or admin. How are you determining this? I have articles explaining the concept, so please read through the “User Roles in Browser Forms” articles.

  22. Eric said

    Hi Clayton,

    I am looking at storing two excel files in two separate form libraries (SharePoint 2007). Excel A is read only and updated from an external source; excel B pulls specific data from excel A. Both documents would be version controlled and excel B would only pull data from the latest version of excel A.

    My questions:

    1) Would custom workflow actions be able to pull information from an excel file stored in a form library? (A google search didn’t answer either way)

    2) If said workflow is possible, would excel B be able to pull data from only the latest version of excel A?

    • Clayton Cobb said

      Eric, I don’t think that’s a good plan. For one, you don’t put Excel files in form libraries – you only put InfoPath forms in form libraries. Also, data inside Excel is not usable by SharePoint really. To SharePoint, those are just documents. You really need that data to be in lists or in a database that you connect to with BCS. Having Excel as the interface is going to limit you greatly.
      1) No, a workflow has no idea what’s inside your Excel files. The only thing the workflow can read from or write to would be the metadata you add to the Excel files (column data).
      2) SharePoint only ever sees the current version of a document, so I’m not sure why you’re asking if Excel B would be able to pull ONLY from the latest version. If you’re using versioning, then only the latest version is even visible to anyone/anything else, so anything pulling data from that file would automatically pull from the latest version.

      • Eric said

        I apologize, I meant document library. Though it doesn’t look like that would be a good idea either though. Thank you for the quick response!

  23. wolfy wolverine said

    Is there a way to create reports in sharepoint 2010 for example crystal report,or something close to that ?
    if you can show me how to do that if there is a way in a step by step i will be more appreciated

    • wolfy wolverine said

      to be more Clear

      I have read that sharepoint doesn’t offer a direct reporting method.
      and in case a user needed to generate a report he must use a third party solution ?
      considering that is a true what a good third party solution could be used?

      with regards

      • Clayton Cobb said

        Wolfy, that is still way too vague. There are TONS of ways to do reporting in SharePoint. Where did you read that SharePoint doesn’t offer reporting. I would LOVE to see any resource that says that so that I can address it.

        There is no single “thing” that does “reporting.” Reporting encompasses many, many things, so you have to be specific about what kind of reports you want. There is basic reporting like views, intermediate reporting like Export to Excel and Access, and adavnced reporting with Reporting Services and PerformancePoint Services. More complexity means less end user ability to do it themselves. There are also 3rd-party tools, but they do different things, too. You need to state what exactly you mean by “reporting.”

      • wolfy wolverine said

        First of all Iam Happy to have a response from you.

        second thing,lets suppose I have a list called Employees and I want to create a report called employees

        which is include: name,position,department,salary….etc.

        Lets say i dont want to exporting them to Excel or Access,how about doing that in the adavnced reporting with Reporting Services and PerformancePoint Services,How to do that??
        can you help me in this issue?

        and about the resource thats says sharepoint doesn’t offer reporting system or something like that i took it from this URL
        http://www.go4sharepoint.com/Forum/crystal-reports-sharepoint-possible-7369.aspx
        I looked at the date,it was posted in Jan 2010, even though I asked my self since im new to sharepoint :
        were sharepoint 2007 empty of such reporting systems?

        any way im waiting your response

        with regards

      • Clayton Cobb said

        You still haven’t said what you mean by “report.” What are you even talking about? What kind of report? What format? What’s wrong with Excel and Access? In fact, why would you not just have a view in your list that shows those columns? This is all still very, very vague.

        PerformancePoint and Reporting Services are advanced and require advanced architecture plus SQL/PPS knowledge. I cannot help you with that through my blog comments. That is something your SharePoint architect needs to have already planned for and built for you to use.

        That link only talks about Crystal Reports, which has nothing to do with SharePoint. You took that comment and extrapolated it to say that SharePoint has no reporting? That’s…strange…

      • wolfy wolverine said

        Dear Clayton

        what i need to show a report just as the view do,but i want the ability to print it in some custom way.
        the time being i will use the Access services 🙂

        about that link from what I have read at the title it says :
        Sharepoint Forum , add to that the question which was posted there is :
        Crystal Reports + SharePoint? Possible?
        so that why I determined it was talking about sharepoint , actually i didnt like that post because I dont think such huge services like sharepoint, I don’t know if i can call it services or there is another sentence or words could describe sharepoint correctly , cant have a reporting method which i mean it tabular report just like those in access.

        as for now from what I have got from your words i will use the Access services in a time I don’t think it is bad.

        Thanks so much for your response again 🙂

  24. wolfy wolverine said

    hello again Clayton

    do you have any idea on how to enable the search on a sharepoint portal?

    • Clayton Cobb said

      Wolfy, again, that’s a very broad question. Instructions for setting up Search step-by-step exist in many places online. I recommend searching for “SharePoint 2010 + search + technet” to get you started. I don’t plan to explain the whole thing through comments.

  25. Kerrie said

    Our organisation is in the process of deploying SharePoint/InfoPath 2010. We currently have a 2007 site on a different server. I have been asked to transfer the forms on the 2007 server across to 2010. Obviously, the forms on the servers are different as I have taken on a lot of the new InfoPath 2010 features. Is it possible to move the 2007 forms across and have them function correctly? I do have code behind on some forms and all of them have rules of one type or another.

    • Clayton Cobb said

      Possible? Of course.

      Doable without re-work? Unlikely. You can convert the templates to 2010 in the compatibility settings to gain the new feature set, fix all the data connections, publish them to the new location, then re-link all the existing XML files after copying them to the new form library. Or, you can use a migration tool to move the form library in-tact to keep all the identity info and versions, then perform the above steps. The ones with code require a decision. Filler or Browser? Full Trust required? Admin-deployed? Going to deploy to the Sandbox? One way or another, the code has to be deployed according to the previous questions, but it can be done.

  26. Gaya Kumar said

    Clayton,

    When filling out “New Item” form in sharepoint list is it possible to “freeze” (as in excel “freeze panes”)the title column so as I fill out the rest of the lengthy form and get interrupted a million times, dont have to scroll back up to see the title of the item I am working on?

    Any input will be appreciated. Thanks for reading.

    Gaya

  27. Renee said

    Hello Clayton – I’m using MOSS2010 InfoPath2010. I want to customize a SharePoint list form with InfoPath and submit/edit data to a Customer list (main connection) and then add fields that submit to a Contact list (secondary source) as there are multiple contacts per customer (legal contact, PR contact, executive contact, etc). I want to use one form to submit to both lists and then later display and hopefully edit the data in both the customer and contact lists. Is there a way to do this without custom code?
    Thank you for your help
    R

    • Clayton Cobb said

      Renee, InfoPath is not able to submit to other lists. It can only submit to other form libraries, and the only list it can submit to is the one that it’s bound to (the current list). You also cannot add code to list forms, so this isn’t a viable set of requirements as far as I can tell.

  28. Scott Bernard said

    I have tried to follow your posts/advice for the last year. You are very knowledgeable and it seems as if you enjoy helping people. I would like to enlist your ‘guru-ish’ advice/help but I am unsure of the correct procedure/forum/process. I have few questions that pertain to connecting to a database and/or use and modify Excel table to update a list. Please let me know the best way to procedure.
    Thank you in advance

  29. Burak said

    Hello Clayton,

    I’m having some problems with the chart web part in Sharepoint 2010, hope you can help;
    I’m trying to use this web part to analyze two fields and show them in a chart that groups the data in the third field.
    For example;
    In 10 rows there is 3 rows show the same value and 7 show the other value. So the chart should count the same values and group these in two groups and show me.

    It was quite easy in Dundas Charts (using its built in code editor) but I couldn’t find any way to do this in the Microsoft version of the same component.

    Do you have any idea about it?
    Best Regards

  30. Yaroslav Bykov said

    Hello Clayton,

    Thanks for sharing your knowledge and experience! Let me also ask you a question, hope for your answer.

    I’m working on my custom workflow that will have 2 ‘approvers’ (that will be subsequental). (Actually the workflow will have 3 ‘approvers’, but it does not matter). So, I have 2 Collect actions. These Collect actions create a new task in the same Tasks list. For Tasks list I have a secondary workflow that sends email.

    Now is the question. I need to pass a kind of parameter before Collect. Depending on this parameter, secondary workflow will send different emails. (this secondary workflow will start on create of new item in Tasks. So, the parameter should be inserted in the list item at ‘creating item’ stage).

    Is it possible to do this using just ONE (the same) field for this parameter in Tasks list? The obvious solution is to have 2 different fields for this: first field will be for the first Collect, and the second field for the second Collect. (But what if the number of Approvers will growth? eg, 3 in my case and more?).
    So, I need to store this parameter in the same field. How to ‘setup’ this parameter before Collect?

    • Clayton Cobb said

      No, there is no method to pass a parameter when using Collect Data from User, but why are you using that task method instead of the OOTB Approval workflow that you can modify easily? Collect Data From User is one of the least useful task activities. The only way I know for sure to pass a parameter while creating a task is to use “Create List Item,” but this will not pause the workflow. You would have to manually pause the workflow until that task is completed. Also, why are you having to send an email using a workflow on the Tasks list? Task lists can be set to send email notifications automatically without any work.

      • Yaroslav Bykov said

        Hi Clayton,
        thanks for quick answer. Let me answer:
        > why are you using that task method instead of the OOTB Approval workflow that you can modify easily?

        well, I examined OOTB Approval workflow and found that it is still not fully customizable. How it is implemented? Is it a mix of C# and SPD? (where I can get sources for C#?) Can you implement the same Approval workflow yourself (at least theoretically) just with SPD?

        For me it looks like it is not fully SPD workflow – in SPD I see mostly just Log, Email and sometimes Set activities and a lot of If… Well, yes, I understand that I can send my own emails (inserting it in SPD workflow) and create my own forms, but not sure I always have a control on all process, lists, etc.
        For example, at the beginning – in OOTB Approval workflow I failed to get Approvers to a variable. Can you simply output the Approvers to Log?
        And I need Approvers for further analysis. I also unable to set Approvers from the variable(s) (from SPD workflow).

        So, I decided to create my own Approval workflow (similar to OOTB Approval workflow) that I control pretty well.

        > Collect Data From User is one of the least useful task activities.

        Well, I do not think so. Just create the secondary workflow for Tasks and it will be the desired behaviour (at least in my case).

        > why are you having to send an email using a workflow on the Tasks list? Task lists can be set to send email notifications automatically without any work.

        I need customizable emails. Eg, text (body of email) will depend on the value in a custom field (that ‘parameter’ in my previous post). But thanks for the hint, I will try that automatic notification.

        > The only way I know for sure to pass a parameter while creating a task is to use “Create List Item,” but this will not pause the workflow. You would have to manually pause the workflow until that task is completed.

        Thanks for idea, I will consider this.

      • Clayton Cobb said

        No C# required – it’s 100% SPD and is fully customizable.

  31. Mohamed Khairy said

    HI

    I tried to download the below vedio session from the website but the link did not work, please advise :

    ◦Building Codeless Solutions with SharePoint and Office 2010 (full, one-hour video)

  32. Luckies said

    Hi Clayton,

    I don’t know where to go, so please forgive me in just posting here…

    I’m having some problem with a “Leave Request Workflow” and Infopath. SP and IP are 2010.

    I made a Team Calendar and a Content-Type for a Leave Request.
    In SPD I made a workflow for the approval process (custom one) and everything is fine so far.

    Now I’m trying to make a custom InfoPath form for this workflow to show the approver the metadata from the item/requests that wants to be approved.

    My Problem is that the person to Approve the request should see the item’s Information of the request on the Approval Form (who made the request, dates, comments,…)
    I’m getting the DataConnection in InfoPath done but only with repeating tables, showing every singe item in my calendar.

    If I’m now static filtering to “ID = 5”, then I’m getting only the item with the ID=5.
    Works like a charm, but how can I get it to work, so that the Workflow-Form is loading the corresponding data from the Item of the request. And maybe submit any changes back?

    Since 2 weeks I’m now trying to find out how to filter the data so that the approver does only see the one record he should approve. And not all Items in that List (Calendar).
    After days of Google and eBooks about Infopath and SharePoint I’m close to say that this “for me common request” cannot be done with SharePoint and Infopath without writing code?!?

    I’m I missing something? Should I go another way, is there one?
    I read lots of how-to and walkthroughs in the past days. Everbody is using repeating data but not filtering for the item the workflow is running on.

    Thank you for your help and time!

    Regards,

    Luckies

    • Clayton Cobb said

      Luckies, tasks are not built to do this, so you aren’t missing anything. You’re trying to force this data into the task form when the person is actually supposed to go open the original form to see all the data and then decide on the task. This is one reason I avoid tasks usually and just put the approval buttons in my actual form so that I can display all the data easily.

      Anyway, you still need to show the repeating data, but you need to do a parameterized query that sends the ID of the related item to the data connection BEFORE querying so that you only return the related data. This is the same concept as static filtering on ID=5. YOu need to do the filtering dynamically based off the item related to the task.

      • Luckies said

        Thanks Clayton,

        your answer saved me hours of giving it a last try :0

        Putting the approval buttons on the form of the item with item-level security (only approvers role can see the buttons) will then be the way to go.
        I think that I might like that way…

        Thanks Clayton, the community can be proud in having a guy like you supporting us

        Big thank you again!

  33. Hi Clayton,

    I am having an issue designing my infopath solution and workflow for a travel request form. The form collects data about a request for worldwide travel for an employee. A workflow routes the form to the travel organiser to check the availability of flights hotels etc as requested on the form. What then needs to happen is that the travel organiser needs the ability to put notes into the same form about the request for travel (i.e if the requested flight is booked or the hotel cannot be booked) and then send the form back to the traveller who needs to accept the details and then send the form back to the travel organiser to confirm the arrangements for the last time. I can do the first part of the approval workflow and send the form to the travel organiser, but i cannot figure out how to allow the travel organiser to put in comments into the form and send it back to the travel requester for approval and then back again. Please can you help me? I only have SharePoint Designer with which to work with in order to complete this task. Thanks in advance

    • Clayton Cobb said

      Tenille, you really need InfoPath for that. SPD isn’t enough. With only SPD, you’ll be able to do the workflow, but the request and comment portions will have to be within the same list item using the new and edit SharePoint forms.

      • Thanks Clayton, Infopath? I am using infopath for collecting the data and an spd workflow to route the document for approval, wwhat i am confused about is how to save the comments from each person and route the document back and forth and save all comments within the form?

      • Clayton Cobb said

        I thought you said you only had SPD. If you also have InfoPath, then everything should be done inside the InfoPath form. You don’t save comments and you don’t route any documents. You just have one form (InfoPath) that everyone uses, and the workflow just notifies each person in succession depending on the workflow status. You use views, Form Load rules, and conditional formatting to show/hide the right things at the right time. The comments would live in the same place as the original request – all one form.

        My Youtube video shows this concept.

  34. Sorry i meant my only workflow develoment tool is SPD. I do want everything to be done within the form and saved within only one form. When a request for travel is made, the travel organiser needs to put comments into the form to say whether the requested travel arrangements can be made. This then needs to go back to the requester who puts his comments in there to say whether he/she accepts the proposed arrangements from the travel requester, then the form needs to go back to that travel requester to arranged the travel. so there needs to be a saving of comments and a routing of the form between the 2 parties back and forth. there is only ever one travel requester and one travel organiser involved. I understand that I will have one comments section on the form where both parties will put their comments but I am unsure of how to get the SPD workflow to send the document back and forth.
    i could have the travel organiser edit the form and put their comments and save the form in the doc lib, but would that not start another workflow to get the new version of the form approved?
    If i get the travel organiser to update the form with his/her comments and then within the workflow task ask for a change to be made that would be a messy way to acomplish my scenario?

    • Clayton Cobb said

      Tenille, I think there is a lot missing in your understanding based on how you responded. Please watch my video so that you see what I’m talking about. There definitely will not be a NEW workflow started just because they both update the same form.

      You didn’t explain why you don’t want the comments to be saved in one form. You also keep talking about “sending” the document, but nothing gets sent anywhere. The form stays where it is…in SharePoint…and the workflow routes back and forth only by sending notifications with links to the form. This is how I do it and how I’m basing my suggestions. Again, my video really shows what I’m talking about.

      • Sorry clayton if my words are confusing, I use my own terminology when trying to understand difficult things. i have watched the video, I do know that the document stays in the same place in the document library it is the tasks of approving it which are sent via email to the different appprovers. I understand that if you untick the box when creating the workflow that says ‘ Start this workflow when something is changed’, then the workflow will nto be started if someone adds a comment to the form. Perhaps I did not explain my requirements properly.

        We have a scenario where people in the company travel alot between branches all over the world. We need a travel request form in infopath to capture all the information that a traveller needs in order to book flights, hotel etc. For instace person A needs to travel to Dubai on a certain day and needs accomodation and transfers, we want to capture their request. They also need to be able to put in the flight they would prefer if they know the flight number etc. then this form is saved to the form library and a workflow kicks off, sending an approval task to person B, the travel organiser. She reads this information and attempts to book the flight, transfers and accomodation as per person A’s request. But what if the requested flight is no longer available or the hotel they requested is fully booked for that time? Thats why I wanted a comments section where the travel organiser can put in comments to say whether they were successful in booking the requested travel, or whether they have other options they would like the traveller to consider. this is where the back and forth comes in. In order to organise the travel there needs to be a back and forth in communication between the 2 parties in order to ascertain the final travel details.

        So what is needed within the form is a comments section to record the information exchanged between the 2, and in the process of the workflow is there an easy way to record this information and get to the final goal of the travel request being approved?

        The ultimate requirement is for the form to record the comments between the 2 without the possibility of deleting them?

        I hope this helps in understanding my cunundrum.

      • Clayton Cobb said

        Tenille, I’m confident this can be done without much issue, but it’s too specific and too involved for me to answer the whole thing through text interaction. I have tried to help guide you some, but I would need to actually work on the project with you to help to the degree needed to get the work done.

  35. mark said

    Hello Clayton,
    first of all i want to say thank you for your blog.
    I’m working on an infopath-form and use your blog to get the user-information. Everything works very fine as well as the unique file-name solution.
    But I have a problem wich drives me crazy.
    By the way we work with MOSS 2007 and infopath 2007.
    In My Case I have to publish a browser-enabled form to our moss.
    I know there is no standard-way to choose multiple values from a sharepoint list wich is possible in 2010.
    So I bulid a list in sharepoint where some values are together in one cell (e.g. vs1;vs2;vs3)
    On my Infopath-form i have a dropdown where you can choose this variable. after submitting this form to a library the value is in onecolumn.
    Everthing is fine but the colum cannot be filtered to for example vs1. I think its clear, because moss is looking at the value as one value “vs1;vs2;vs3” not as I hoped many values like “vs1” “vs2” “vs3”

    Is there any help on sharepoint or in infopath to get the value (vs1;vs2;vs3) seperated in “vs1” “vs2” and “vs3”? or is there a possibility to get a multiple choice in the infopath 2007 form?
    …our it wont migrate to moss 2010 in near future 🙂

    thank a lot for reading and looking forward to you answer
    greetings from germany
    mark

    • Clayton Cobb said

      Mark, yeah, there is no support for multi-select in 2007 browser forms. I see what you’re trying to do, but I haven’t seen a way to take a single line of text and push it into a repeating column as individual repeating elements like what you’re trying to do. Maybe if you created a choice column in the form library that allows multi-select, set all the choices to the same syntax as what’s in your form, and then promoted the InfoPath field to the existing choice field, then MAYBE it would accept your semicolon delimited string as multi-selected items, but I haven’t tried it.

      • mark said

        obi wan, you were our last hope… 🙂
        I tried that already but it’s not working…
        i cant believe that this is a rare problem.
        thanks a lot for your answer.

        there is a fault in my text above.
        i ment: our IT won’t migrate to MOSS 2010

      • Clayton Cobb said

        It’s not a rare problem, I didn’t say that. I said that there is no feature to allow for it. This is one of the great improvements in 2010. Why will your IT team not upgrade to 2010?

      • mark said

        they told me that the migration is to expensive. Our Servers are hosted by HP

  36. mark said

    obi wan, you were our last hope… 🙂
    I tried that already but it’s not working…
    i cant believe that this is a rare problem.
    thanks a lot for your answer.

    there is a fault in my text above.
    i ment: our IT won’t migrate to MOSS 2010

  37. Hi Clayton, Me again! Another InfoPath question needing your infinite wisdom please. I have copied and modified the OOTB SPD 2010 reusable workflow. I have an InfoPath form to approve absence requests. There is a field on the form called manager, where the user sets the value of their manager.

    Now within the SPD workflow, I want to set the value of the workflow approver for the request form to that of the value entered in the Manager field on the form. Any easy ideas on how to get to the manager field from within the workflow.

    I must say i have tried this before and it worked, I used an if statement to set the value of the approver to that of the manager field on the form. BUT when associating the workflow to the document library in the association form, I have to select approvers there. I had to select an approver to approve the form and only after thie, the workflow used the manager field as a second approver.

    It woud be perfect if I could select the manager field in the workflow association form when connecting the workflow to the document library. Is this possible?

    Thanks in advance!

  38. Gary Irving said

    Hey Clayton – long time no talk to. Hey is it possible for 2 content types in the same document libary to share the same custom Infopath DIP template? I created a custom DIP template from the base template of one of the content types. Now that I have everything just the way I want it, I would like to use it for the other content type so that I don’t have to maintain 2 DIP templates. The content types are identical in every way except different Word documents were uploaded as the document template.

    • Gary, I haven’t tried it. I don’t see why you wouldn’t be able to. You may have to make two physically separate DIP files (separate filenames of the same template) and reference them separately, but I don’t know if you even need to do that. Did it not work when you tried it?

  39. Gary Irving said

    Here’s what I did to try it: I saved the Infopath form that works well with content type #1 to my desk top and then uploaded it to content type #2 through the UI. When I click the New button and select content type #2, Word opens but I get the following error:

    Document Information Panel cannot open a new form.
    The form template associated with this form was moved or cannot be accessed. The form template “Product Labels – English Only DIP” on your computer has the same form ID as the template associated with the form, but it is from a different location.

    Location of the associated form template: http://partners.beanvine.com/sitedir/bblr/Copy%20Files/Forms/Product%20Labels%20-%20Bilingual/Product%20Labels%20-%20Bilingual%20DIP.xsn
    Original location of the form template on your computer: file:///C:\Users\kxgirvin\Desktop\Product%20Labels%20-%20English%20Only%20DIP.xsn

    Make sure you can access the location of the associated form template and try opening the form again. If that does not work, ask the form author to update the form.

Leave a reply to Michael Cancel reply