SharePoint / ASP.Net Development
Experiences from the field
Navigation
   RSS 2.0
Categories
Entries by Month

# Tuesday, August 16, 2005

E. Shupps has started a series of blog posts titled Extreme SharePoint Design Series that promises "advanced tips and tricks for designers."

Tuesday, August 16, 2005 3:37:16 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Sunday, August 14, 2005

I had to move an extranet application, including the databases, to a new server. The application has just over 300 sites, so of course I had to write code! There is a lot of file copies, but the script does include one interesting piece: creating a database on a server and creating an empty database.

The solution was written in VBScript and runs on a Windows XP machine. The script uses SQL-DMO to perform the database admin steps. I am including the script below as an example.

Now, I am sure that many of you will have an opinion about the code. That is fine. But do not flame about database best practices -- I am simply moving an existing application with specific requirements. And do not flame about the hungarian notation -- VB Script does not have strong typing and the entire script is almost 400 lines. Feel free to flame anything else. ;-)

Sub CreateDB(DBServer, SiteName)
    Dim oDBDataFile, sDataPath, oDBLogFile, sLogPath
    Dim oSvr, oDB

    Set oSvr = CreateObject("SQLDMO.SQLServer")
    oSvr.Connect DBServer, "user", "password" ' Could use WinNT login

    Set oDB = CreateObject("SQLDMO.Database")
    Set oDBDataFile = CreateObject("SQLDMO.DBFile")
    Set oDBLogFile = CreateObject("SQLDMO.LogFile")

    'Set new database name
    oDB.Name = SiteName

    'Define the PRIMARY data file.
    oDBDataFile.Name = SiteName
    sDataPath = oSvr.Registry.SQLDataRoot & "\DATA\" & SiteName & ".mdf"
    oDBDataFile.PhysicalName = sDataPath
    oDBDataFile.PrimaryFile = True
    oDBDataFile.Size = 2 'Set initial size (optional)

    oDBDataFile.FileGrowthType = SQLDMOGrowth_MB 'fixed size - other options available
    oDBDataFile.FileGrowth = 1

    'Add the DBFile object
    oDB.FileGroups("PRIMARY").DBFiles.Add oDBDataFile

    'Define the database transaction log.
    oDBLogFile.Name = SiteName & "Log"
    sLogPath = oSvr.Registry.SQLDataRoot & "\DATA\" & oDBLogFile.Name & ".ldf"
    oDBLogFile.PhysicalName = sLogPath
    oDBLogFile.Size = 2
    oDB.TransactionLog.LogFiles.Add oDBLogFile

    'Create the database as defined.
    oSvr.Databases.Add oDB
    
    'Add a user to the database
    Set oUser = CreateObject("SQLDMO.User")
    oUser.Login = "ExNet"
    oUser.Role = "db_owner" ' Make sure this is appropriate for you!
    oDB.Users.Add(oUser)
    

    ' Now, build the schema from the file of SQL statements
    Const ForReading = 1, ForWriting = 2
    Dim oFSO, oFile, sFile, sCmdBatch
    
    SET oFSO = CreateObject("Scripting.FileSystemObject")

    sFile = "C:\Visual Studio Projects\ExNetMove\CreateDatabase2_05.sql"
    SET oFile = oFSO.OpenTextFile(sFile, ForReading)

    sCmdBatch = oFile.ReadAll
    
    oDB.ExecuteImmediate sCmdBatch, SQLDMOExec_ContinueOnError    

    oFile.Close

End Sub

Sunday, August 14, 2005 11:00:32 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Thursday, August 11, 2005

Bil Simser has started a project for community-built templates.

Thursday, August 11, 2005 1:26:45 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 

I don't have the time for a full review, but the book Building ASP.Net Server Controls by Dale Michalk and Rob Cameron has been very helpful for a long time.

If you are interested in writing server controls (and remember, Web Parts are server controls) this book is for you. The authors start out with very basic "write" statements, but they progress into a sophisticated control -- one that includes templates, CSS styling and data binding.

Thursday, August 11, 2005 12:16:49 AM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Wednesday, August 03, 2005
Wednesday, August 03, 2005 10:57:41 AM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Tuesday, August 02, 2005

The files referenced in the August Intranet Journal article: Using a Custom Web Page Template for Easy Content Entry

EasyContentEntry.zip (43.6 KB)
Tuesday, August 02, 2005 2:40:36 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Sunday, July 31, 2005

I noticed today that Google Maps now has a hybrid view that puts street names over the satellite view.

Sunday, July 31, 2005 3:45:39 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Friday, July 15, 2005

This article made me laugh out loud:

"In fact, hockey has been fixed, in that veterinarian sort way."

"But since this lockout was all about the 10 or so hard-line owners and their unleashed commissioner getting what they wanted at all costs, hats off to them. Preferably with their heads inside, true, but you get what you can at times like this."

Ray Ratto - ESPN.com

Friday, July 15, 2005 10:42:37 AM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 

The lastest article in my SharePoint series is available on IntranetJournal.com

Customizing the Quick Launch in a WSS Team Site
This month, Paul provides a solution to automate the linking of documents in a Windows SharePoint Services (WSS) document library to the Quick Launch navigation feature.

The article discusses a custom web part. The web part and its source code are available for download.

Friday, July 15, 2005 9:18:21 AM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
# Wednesday, July 13, 2005

"The purpose of the SharePoint Utility Suite is to provide a packaged collection of Tools and Utilities showcasing the rich Object Model that is delivered with the SharePoint Product and Technologies SDK (which includes Windows SharePoint Services 2.0 and SharePoint Portal Server 2003). This package includes code and tool examples that SharePoint Developers and SharePoint Administrators might find useful."
http://www.microsoft.com/sharepoint/downloads/components/detail.asp?a=724

Thanks to Jessica Gruber

Wednesday, July 13, 2005 3:46:04 PM (Central Daylight Time, UTC-05:00)  #    Comments [0]  | 
Search

Powered by: newtelligence dasBlog 2.2.8279.16125

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010, Paul Schaeflein

Send mail to the author(s) E-mail