Code blocks are not allowed in this file

I was trying to enable code in an aspx page in SharePoint Designer, with no luck!

(warning, search google for reason not to do this.)

Appears my problem was related to not including the SubFolders option in the web.config file update.

<script><!–mce:0–></script>
<form id="form1"> Current server time is <% =GetTime()%>. </form>

This is the contents of my aspx page in SharePoint Designer (2010).

What web.config file did I update?

C:\inetpub\wwwroot\wss\VirtualDirectories\80

Do I need to run an IISreset?

Nope, I’ve tested this and there is no need for an IISreset.

Spaces count as characters in a file name or url

Question:  Do spaces count toward the total character limit in file or folder names?

Answer: Yes.

How I tested this.

I created a text file and named it

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111.txt

The name is a 124 characters long.  Uploaded it to a Document Library and it works.

Now, try adding some spaces to the file name, the re-upload the file.

You will see this error:

The specified file or folder name is too long. The URL path for all files and folders must be 260 characters or less (and no more than 128 characters for any single file or folder name in the URL). Please type a shorter file or folder name.

More info from Joel Oleson’s blog:

File Names

 

  • Invalid characters: ” # % & * : < > ? \ / { | } ~ 
  • Cannot be longer than 128 characters
  • You cannot use the period character consecutively in the middle of a file name
  • You cannot use the period character at the end of a file name
  • You cannot start a file name with the period character

Folder Names

 

  • You cannot use the following characters anywhere in a folder name or a server name:  ~ # % & * { } \ : < > ? / | “
  • Cannot be longer than 128 characters
  • You cannot use the period character consecutively in the middle of a folder name
  • You cannot use the period character at the end of a folder name
  • You cannot start a folder name with the period character

 

update.

More info from Microsoft on this topic:

http://technet.microsoft.com/en-us/library/ff919564.aspx

Replace Hyperlink column with a Button

If you have ever had to deal with unruly hyperlink columns in a List, you know they can be a mess.  What I’ve done is add a button to a column using SharePoint Designer. Then set the buttons path equal to the unruly hyperlink url.

To start this example I created a List then added a Hyperlink column named LongURL.

From the Ribbon click on Edit List to open SharePoint Designer.

Once SharePoint Designer opens, click on All Items in the Views section.

In this step we are going to add a column to the table in the Web Part.  I right clicked in the LongURL column, selected Insert, then Column to the Right.

With the cursor in the row of the new column, click on the Design tab at the top of screen, click on Insert Control, then Form Action Button.

Next we will want to set two of the buttons properties.  Click on the button, the Tag Properties for the button should now be displayed on the right side of SharePoint Designer.  In the Attributes section, you can set the text that appears on the button.  This can be static text or text that is bound to an item in the row.

While still in the Tag Properties, scroll down to Events and look for onclick, this is where we are setting the hyperlink value of the button.   In the onclick field enter:  window.location.href='{@LongURL}’

Now, click save and return to your browser and refresh the page.  You should now see the newly added button.

Safe to assume you want to remove the LongURL column?  Go back to SharePoint Designer.  Click in the column that displays LongURL.  Now, right click, select Delete, then Delete Columns.  Click save, and return to your browser and refresh the page.

Your page should now look like this:

Let me know

Failed to get value of the “Attachments”

Failed to get value of the “Attachments” column from the “Attachments” field type control.  See details in log. Exception message: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)..

Open SharePoint Designer, on the left side of the screen click on Lists and Libraries, right click on your broken List, and select List Settings.

In the Settings section –> Advanced Settings section un-check Allow attachments. Save your changes, go back to your page and refresh.

failed to get value of the attachments


 

Filter Major and Minor Versions

Overview of what we are going to do:
Create a Library.
Enable versioning.
Create a new View named Major.
Using SharePoint Designer, convert the Major View to an XSLT Data View.
Apply filtering to the Data View using the Approval Status field = Approved.
Save.
Using the same steps as above, create another View named Minor, and apply a filter for Draft.
Done.

Create a Document Library (I named my MajorMinor) and enable Versioning (Site Settings –> Versioning –> Create major and minor).

Create a new View and name it Major.

Once you have created your new Library, open SharePoint Designer, and open your site.

(File –> Open Site.. )

Now, navigate to your Library, open the Forms folder, and then open the Major.aspx page.

Once the page opens, right click on the Web Part and select Convert to XSLT Data View.

Right click in the Version field –> select Insert –> Column to the Right.

Now look in your Data Source Details Task Pane and locate the Approval Status field.  (If you don’t see the Data Source Details Task Pane, you will want to activate it from the Task Panes menu at the top of your screen)

Once you have located the Approval Status field, drag it into a cell of the column you just added to your Data View.

Now we are going to filter the Data View using our new field.

Click on the Web Part, select the little box in the top right corner of the Web Part, and then select Filter.

Click on Filter, once the Filter Criteria box opens, click on Click here to add a new clause….

From Field Name select Approval Status, Comparison should be Equals, Value is Approved, click Ok to apply the filter.

Save your page (click yes when the warning box opens).

Go back to your browser and refresh the page.  To test your changes, edit and save a document.

Now, to create your Minor View, use the same step shown above, but your filtered value would be Draft.

*NOTE*
1. If your Library has a Workflow attached, you will need to take into account the other Approval Statuses (Pending, Rejected, …)
2. You don’t need to add a new column to the Data View to use the filtering.  You could simply apply the filter without adding the column.

PowerShell Query Webpage SharePoint

Using PowerShell, I was looking for a way to query / search a webpage for a string / variable. If the string was found, do something.

When trying to access a SharePoint page, I needed to use the UseDefaultCredentials = $true function, otherwise I was seeing random errors.

Error example:
The remote server returned an error: (401) Unauthorized.
$web = New-Object System.Net.WebClient
$web.UseDefaultCredentials = $true

If ($web.DownloadString(“http://www.yoursite.com/taco.aspx”)| select-string “Taco”)
{
Write-Host “True”
}
Else
{
Write-Host “False”
}