Wednesday, May 25, 2011

Recipe: IIS 7.0 Compression for SharePoint 2010

%Windir%\system32\inetsrv\config\applicationHost.config around line 445


<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">

<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" dynamicCompressionLevel="9"/>

<dynamicTypes>


cd \windows\system32\inetsrv

APPCMD.EXE set config –section:httpCompression /dynamicCompressionDisableCpuUsage:75

APPCMD.EXE set config –section:httpCompression /dynamicCompressionEnableCpuUsage:20

APPCMD.EXE set config –section:urlCompression /dynamicCompressionBeforeCache:true


XML rendered in blog with help of http://centricle.com/tools/html-entities/



Tuesday, May 24, 2011


http://www.mctsummit.eu/Sessions.aspx?ID=8

See you there! I will be presenting one SharePoint Deep Dive for ITPros and one for Developers.


Monday, April 25, 2011

Writing programmatically to the web.config file

SharePoint 2010 has a change that requires the following PowerShell:

$cs = [Microsoft.SharePoint.Administration.SPWebService]::ContentService

$cs.RemoteAdministratorAccessDenied = $false

$cs.Update()

OnTaskCreated not firing in loop

This bug with OnTaskCreated still exists

http://social.msdn.microsoft.com/Forums/en-US/sharepointworkflow/thread/2273b142-46d8-49a0-bd33-1f953d84b2c8

Thursday, April 7, 2011

Errata MOC 10175 SharePoint Dev


1. Lab 13 is gets message office not activated. Workaround to copy theme file from C:\Program Files (x86)\Microsoft Office\Document Themes 14 or run ospprearm from Office 2010 directory


2. Page 4-46 Lab 4, should delete the where clause.


3. Careful with timing in lab 2 page 2-53, allow the timer job time to run at each step, otherwise you will get errors.


4.Page 5-39 Lab 5, unfortunately has access denied problems changing the web config file, Lab works as stated, as long as the students do not look in the web config file to see if it really changed! Fix is this Powershell:



$cs = [Microsoft.SharePoint.Administration.SPWebService]::ContentService


$cs.RemoteAdministratorAccessDenied = $false


$cs.Update()


5. Page 5-41 needs to add the references as well as just the using statements, but the students should be able to work that out.


6. Page 10-34 needs also a test for .jpeg files to make it harmonize with the page 10-32 test.


7. Page 10-34 needs to add to create a new page called training.


8. Page 12-24 has the students typing in unneccessary xml to link to a taxonomyreporter page that does not exist.


9. Page 1-28 Best practice would have been to store value of CatchAccessDeniedException and set it back afterward to its original value, but not to false again at the end of the try code.


10. The manuals have bad spacing in Lab 6, use the lab instructions at the back of the manual instead.


11. The manuals also have wrong spacing in Lab 2 PowerShell commands.


12. Solution file for Lab 9 has a wrong elements.xml file.


13. Lab 2 does not update the content type for outcomes, so new item does not show the new fields. Quickest solution is to delete the content types section from the schema.xml.


REST is not handled, but would need to load down the ADO patch to get it to work on the vm.


A hotfix is needed if the host OS for this course is W2008 and not Windows 2008 R2. Hotfix 971677.


I would have liked some best practice double dot referencing on page 9-28, but I recommending talking the lab thru afterward to point this out.


Module 5 says that after events are asynchronous, but there is a new setting with SP2010, the SPEventReceiverDefinition that can set to SPEventReceiverSynchronization.Synchrononous, to make the after event sychronous.


Sunday, March 20, 2011

Commerce Server Inventory System Part 3

The Inventory Schema

Just as the Catalog System has a schema used as a template to define the product catalog, so too does the Inventory System have a schema used to define an inventory catalog. There are two types of inventory metadata: Inventory Catalog Metadata, and Inventory Stock-Keeping Unit (SKU) Metadata.
* Inventory Catalog Metadata: This metadata is similar to catalog metadata, except that it pertains to the Inventory System. This metadata includes the catalog name, date created, description, and the last modified date.
* Inventory Stock-Keeping Unit (SKU) Metadata: The SKU is the unique identifier for a product, and allows a product to be tracked for inventory purposes. See Table 4-1 for detailed SKU metadata properties.
Inventory Stock-Keeping Unit (SKU) Metadata
Property Name
Property Description
Backorder Availability date
The backorder availability date property is the earliest date when the back-ordered SKU is available for shipping.
Backorder Limit
The backorder limit property defines a limit for the number of SKUs that can be back-ordered. This value must be below the stockout threshold, and is used to prevent overselling and the inability to fulfill orders. If an item is pre-orderable and back-orderable, the pre-order limit is applied before the back-order limit.
Backorderable
The backorderable property is used to indicate that a SKU can be back-ordered. This is applied when the onhand quantity is less than the stockout threshold. A SKU is backordered when it has already been selling and gone out-of-stock. If the SKU has not been selling and is out-of-stock, it is considered pre-orderable.
Backordered Quanity
The backordered quantity property indicates the number of units that have been back-ordered for a particular SKU. This property is maintained by the system.
Catalog Name
The catalog name property indicates the inventory catalog used to store SKU information.
Excess Onhand Quanity
The excess onhand quantity property indicates the total quantity of SKUs above which the inventory is in excess. This property can be used to indicate that there’s too much inventory for a particular SKU.
Last Modified
The last modified property indicates the last time a modification was made to the SKU. This property is maintained by the system.
Last Restocked
The last restocked property indicates the date when the inventory for a SKU was last restocked.
Memo
The memo property is a repository for notes or comments about the SKU.
Onhand Quantity
The onhand quantity property indicates the quantity of a SKU in inventory that is available to be sold.
Preorder Availability Date
The preorder availability date indicates the earliest date when the pre-ordered SKU will be available for shipping.
Preorder Limit
The preorder limit property defines a limit for the number of SKUs that can be pre-ordered. This value must be below the stockout threshold, and is used to prevent overselling and the inability to fulfill orders. If an item is pre-orderable and back-orderable, the pre-order limit is applied before the back-order limit.
Preorderable
The preorderable property is used to indicate that a SKU can be pre-ordered.
Preordered Quantity
The preordered quantity property indicates the number of units that have been pre-ordered for a particular SKU. This property is maintained by the system.
Reorder Point
The reorder point property is used to indicate when the inventory should be replenished for a particular SKU if the onhand quantity falls below the specified value.
Status
The status property is used to determine the condition of the inventory. There are three statuses: Disabled, Ignored, and Enabled. If the status is disabled, then the inventory SKU condition is considered out-of-stock and unavailable. If the status is ignored, then the inventory condition is considered in stock but unavailable. If the status is enabled, then the inventory condition is can either be in stock, pre-ordered, back-ordered or out-of-stock, depending on the values specified in other SKU properties. See Figure 4-4 for more information.
Stockout Threshold
The stockout threshold property defines the lowest quantity of items that must be available for a SKU to be considered in stock.
Target Quantity
The target quantity property is the amount of inventory you want to have available before reordering the SKU. This value should be set based on observed buying patterns.
Unit Of Measure
The unit of measure property defines the meaning of the unit value for a SKU.
Table 4-1
All of the properties listed in Table 4-1 work together to drive the functionality of the Inventory System. It is important to again reiterate that it’s not enough to simply set these values and expect that your Web site will automatically work the way it should. The Web site must use the Inventory APIs to drive the functionality.
Based on my book on Commerce Server. Part 4 is here. Part 1.

Monday, March 14, 2011

InfoPath FormService MemoryCacheSize default

Technet says 250 MB. MSDN says 300 MB.
I suspect the first figure is correct. The 300 MB is the threshold as explained here.