Saturday, December 20, 2008

What is the difference between a stepped layout and a blocked layout in the table design of a report?

The difference is very easy to discern when you have a grouped display of data as shown in the two reports which uses the same data source but only the layout is different. In the stepped report you will notice a clear step where what is grouped under is clearly delineated.

Monday, December 15, 2008

How do I turn-off ATOM / RSS feeds in IE?

You can do this from TOOLS | Internet Options in IE
which brings up the Internet Options page as shown

Click on the Content tab to open that page as shown

In the section Feeds click on Settings

In the Feed Settings page uncheck the Turn on feed reading view

Saturday, December 13, 2008

I started a project with .NET 2.0 framework, how do I change it to compile for .NET 3.5 in Visual Studio 2008?

Let us say you have a web site project which uses .NET 2.0 framework and you want to change it to .NET 3.5 to try out something supported by .NET 3.5

You can right click the web site and access the Properties as shown here and change the target framework to .NET Framework 3.5

On the other hand if it is a Windows Application, you right click and access the Property pages as before which displays the following:

 Now click on the Advanced Compile Options...button to display the next,

Now you can change over to the target you desire.

Friday, November 14, 2008

How do I find the extension of a file in Windows XP?

By default file extensions may not show in Windows Explorer. In case they are not showing follow the indicated procedure.

You may just know the file name in the Windows Explorer. Sometimes you need to know the correct extension. This is especially true when you rename a file. It is true that the icons may change and you may know the difference. But you may change the default of not showing extension to one showing extension by following the indicated steps:

In Windows Explorer open in C:\ drive

1.Click Tools | Folder Options...

2. In the Folder Options window change to the View Tab

3. Under Advanced settings: ,remove the check mark (default) for the radio button Hide extensions for known file types.

4. Click OK to the Folder Options window.

Now your files will be showing the extensions

Thursday, November 6, 2008

How do I set up a Data Connection in Visual Studio 2008?

It depends on where the data comes from, SQL Server, IBM DB2, MS Access etc.

Here is what you do for SQL Server 2008.

Step 1: Open Visual Studio 2008
            Click View | Server Explorer
            Click on Connection as shown.

The Add Connection window shows up

Step 2: Click on the Change...button

The Change Data Source window gets displayed.

Step 3: Highlight Microsoft SQL Server
            Click OK

Step 4: Click on the Refresh button
            Then click on the drop-down button
The SQL Servers on your machine should show up as in the figure
            Choose the SQL Server 2008 as shown by highlighting Hodentek2\SANGAM

Step 5: Assuming the SQL Server 2008 is to be Windows Authenticated
       Click on the drop-down handle for 'Select or enter a database name:"
       Select AdventureWorksDW2008 as shown


Step 6: Click on Test Connection button
You should get the following message

Step 7: Click OK to the message and close the Add Connection window.
You are done.

Now you will see your connection in the Data Connections folder in Server Explorer
Now you can access Tables, Views, Stored Procedures and Functions within the Visual Studio IDE

Well I have a number of other connections in my VS 2008 IDE.

Thursday, October 9, 2008

How do you use the Query Designer in SQL Server 2008?

Well, there are a few steps you need to follow. This note shows how you may create and execute a query in the SQL Server Management Studio. I am using a copy of the Northwind database.

Step 1:

Click on New Query toolbar item [directly below File in SQL Server Management Studio]

Step 2:

In the new empty query created [herein SQLQuery1.sql - Hodentek2\...]. Right click on an empty area and choose Design Query in Editor

Query Designer pops-up with the Add Table modal window on top of it as shown.

Step 3:

Hold down Control Key and highlight Products and Suppliers in the Add table list and click on the Add button. After the tables are added close the window.

The Tables get added to the Query Designer together with the relationship between them as shown.

Step 4:

Place check marks for the columns in Products and Suppliers as shown.
You do not need to do anything with the Grid Pane or the SQL Pane below it. Just observe them as you place the check marks.

Step 5:

Execute the query in the designer and if you are satisfied click OK.
The SQL Statement gets in to the Query window.
Study the SQL Statement.

You are done!!
You successfully used the Query Editor to query two tables in the database.

Tuesday, September 16, 2008

How do you create a ODBC DSN for an Microsoft Access 2003 data source?

This example shows how you may create a ODBC DSN for the Northwind.mdb sample in the Sample directory of Microsoft Access on a Windows XP Machine.

1. Open ODBC Data Source Adminisitor from Start Control Panel Administrative Tools Data Sources(ODBC)
ODBC Data Source Administrator window gets displayed.

2. Click on Add... button after you move over to the System DSN tab.
"Create New Data Source" window gets dsiplayed

3. Scroll and highlight Microsoft Access Driver (*mdb). If you are using Office 2007 you could use the other below it as shown.

4. Click on the Finish button.

The ODBC Microsoft ACCESS SETUP WINDOW gets displayed as shown.

5. Provide a name for the source, this is the DSN and provide an optional description.

Data Source Name: MdbSource
Description: "Test source for MS Access 2003"

6. Click on the Select...button in the previous screen and locate the Northwind.mdb file as shown.

7. Click OK on the Select Database screen after selecting Northwind.mdb
The path information gets recorded as shown.

8. Click on the OK button on the ODBC Microsoft Access Setup window.

9. The new ODBC source you created "MdbSource" gets into the list of
System Data Sources as shown.

You have successfully created a ODBC DSN.

Wednesday, September 10, 2008

How do I create a new login for the SQL Server 2008?

I assume you have a desktop computer on which you have installed the SQL Server 2008 RTM (the one used here is a named instance with Windows Authentication). Now you want to create a login for the Windows user or a group.

Step 1:
Connect to the Database engine
Expand the Security node for the server
Right click the Logins folder and choose New Login...
Login - New window pops-up as shown

The default authentication is Windows.
 Step 2:

Click on the Search... button
The Select User or Group window pops-up.

Step 3:

The object types you will be looking for by default are User or Built-in principal.
Now enter the name of a windows user (or group) for which you want a login in the
Enter the object name to select box and click on Check names button that gets enabled.
You should see that the check name succeeds. You may get a fully qualified name for the user as \UserName even though you entered the user name only.

Step 4:

Click OK on the Select User or Group window.
This name gets into the Login -New window
You are done.
For a new user, the Server role is Public.

Tuesday, September 9, 2008

Test page to include Kannada script

The Process of importing was round about but works alright.

I did not use Google's Transcription for this

My name in Kannada

Thursday, September 4, 2008

How do I connect to ODBC data in MS Access?

In MS Access you click on File | Get External Data | Import...
In the Import window click as shown to connect to a ODBC source. Scroll all the way down, last item.

This opens the Select Data Source window where you can use the existing ones are create a brand new DSN.

Have fun!

Wednesday, September 3, 2008

DOJO 111 Test page on Google Chrome

Here are five shots of the same DoJO test page on server rendered on different browsers.

Top left: Google Chrome
Top right: IE 7.0
BottomLeft: Safari 3.1.1
Bottom Right: Firefox 3.0.1

This one is from Opera 9.1

True to form IE is different.

Google Chrome is ready for down load. Look for details at:

Tuesday, September 2, 2008

Google Chrome Beta install page does not work

Tried to down load from this link:

It does not like to install.

In IE  7.0 errors on Line 133 and 146

In Mozilla/5.0 Firefox 3.0.1 nothing happens, no messages nada

In Safari 3.1.1 nothing happens, no messages

Anyone find a better site to down load?

Tuesday, August 26, 2008

My Oracle 10G XE is on port 8080. Can I change the port?

 If you have port conflict and you want to change Oracle 10G XE's HTTP port (default is 8080) you can change it.

This is what you do in the Windows XP machine.

Make sure OracleServiceXE and OracleXETNSListener have started in the Control Panel.

From Start | Run open a command window.
Assuming your environmental variables are set correctly start with the following: (Reds are what you type-in and blues are what the computer writes to screen)

C:\>sqlplus /nolog

SQL*Plus: Release - Production on Tue Aug 26 10:40:44 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> connect
Enter user-name: system
Enter password: >enter password if will not be visible >
SQL> Exec DBMS_XDB.SETHTTPPORT(8087); [Assuming you want to have HTTP going to this port]

PL/SQL procedure successfully completed.

Disconnected from Oracle Database 10g Express Edition Release - Production

I have a bunch of articles on Oracle 10G XE at the following link:

Thursday, August 21, 2008

How do you turn on and turn off Report Server Web Service functionality in SQL Server 2008?

You can turn off and turn on Reporting services functionality using the SQL Server Management Studio.

Step 1: Connect to the Report Server from File |Connect Object Explorer... to open the
Connect to Server window.

Step 2: Pick Reporting  Services and click [assumed authentication is OK].
After a while the  Report Server opens in Management Studio as shown.

Step 3: Right click the Report Server node to reveal drop-down menu as shown.

Step 4: Click on Facets.

The View Facets window opens. It shows the surface area exposed with all reporting services programs running. You can change the TRUE to FALSE for these services to turn them off for one reason or another. Suppose you are managing reports and viewing them without a need for a Report Manager, then you can turn off Report Manager here. Later if you do need you can turn it on. Similarly for Scheduled events and Web Services as well. After making changes click OK.

Saturday, August 16, 2008

How does an Access table copy over to MS SQL Server 2008?

Here is an example of how Categories table in Northwind database would copy over to the SQL Server 2008 Database Nwind2008.

MS Access:

Category ID  Primary Key Data Type: AutoNumber Long Integer Indexed:Yes(No dups)
CategoryName: Data Type: Text FieldSize:15 AllowZeroLength:No Indexed:Yes(No dups)
Descripton: Data Type:Memo AllowZeroLength+NO, Indexed:No, Required:no
Picture: OLE Object Required:NO

SQL Server 2008:
CategoryID: Int AllowNulls:NO
CategoryName: nvarchar(15) AllowNulls:No
Description: nvarchar(MAX) allowNulls:Yes
Picture: Data Type: image Allow Nulls:Yes

Tuesday, August 12, 2008

Dojo111 with Internet Information Server 5.1

Do you want to experience one of the nicest open source Javascript based Rich Internet Application developer tool DOJO and host it on your IIS?

Then do the following:

Step 1:
Download the latest build from:
File name:dojo-release-1.1.1.tar.gz (a tarred and zipped file)

Step 2:
Get BitZipper 5.0 from:
Bit zipper zips through the zipped archives and gets you the inside stuff that you can now use.
Use BitZipper to unravel the dojo111 download.

Step 3:
I unzipped the contents to a folder on my desktop called dojo111.

The folder had the following subfolders:
I created another folder here, my own called Hodentek

Now in my IIS default web site I created a new virtual directory by following Default Web Site|New |Virtual Directory...and pointed the folder location to my desktop folder dojo111.

Now my Dojo111 website looks like this. I am ready to roll.

Have fun!!!

Thursday, August 7, 2008

How do I create Primary Key/Foreign Key relationships in SQL Server2008?

The easiest way to create is by using the SQL Server Management Studio. I assume you have designed two or three tables and you want to assign keys. You can go to my other blog where I have added a posting.

Monday, July 28, 2008

How to format string to currency?

Public Function FormatCurrency(ByVal Expression As Object, Optional ByVal NumDigitsAfterDecimal As Integer = -1, Optional ByVal IncludeLeadingDigit As Microsoft.VisualBasic.TriState = UseDefault, Optional ByVal UseParensForNegativeNumbers As Microsoft.VisualBasic.TriState = UseDefault, Optional ByVal GroupDigits As Microsoft.VisualBasic.TriState = UseDefault) As String

Member of Microsoft.VisualBasic.Strings

If the string is 7.75 the message box would show $7.75,4))

If the string is 7.75 the message box would show $7.7500

MessageBox.Show(Strings.FormatCurrency(str, 4, TriState.False))
If the string is 0.75 the message box would show $.7500

MessageBox.Show(Strings.FormatCurrency(str, 4, TriState.True))
If the string is 0.75 the message box would show $0.7500

Friday, July 25, 2008

Problem displaying a report in a web page?


I have Windows authentication for my Reporting Services and when I create a report for web [VS 2008 and Report Viewer Control] using back end data on my SQL Server RC0 and try displaying it, I get an error - the web page is not displayed?

Possible answer:

You need to make sure whether you have established a RC0 login for ASPNET which is usually \ASPNET. If it is not present then you can add it from the SQL Server Management Studio.

Monday, July 21, 2008

How to bind a DataSet to a DataGridView, a DataGrid?

A DataSet is memory resident data in DataTables in the DataTables collection. Each table is known by its name.

Let us say a DataTable named "MyTable" in a DataSet called "MyDs" needs to be bound to a DataGrid or a DataGridView controls. Then the following code does this binding:


and for a Datagrid it will be,


Sunday, July 13, 2008

What are the different Web site related reporting templates in Visual Studio 2008?

There are basically three ways reporting is supported in Visual Studio 2008.

These are,

ASP.NET Web Site -->You need to place a Microsoft Viewer Control for use in a reporting application

ASP.NET Reports web Site---->This type brings with it a .rdl file and starts a Report Design Wizard which needs configuring

ASP.NET Crystal Reports Web Site-->Hosts a default page with a Crystal Viewer Control and a Crystal Report that runs on the server.

Of course Visual Studio is another Interace for the BIDS project and provides three templates,

Report Server Project

Report Server Project Wizard

and Report Model Project

Wednesday, July 9, 2008

How are reports processed on a Report Server in SSRS 2008?

In SSRS 2008 reports are processed on the Report Server instance (not IIS) configured during installation and uses the two special relational databases as the backend, ReportServer and ReportServerTempdb.

Reports are procesed when they are requested by the user. These requests can take the following forms:

On-demand ->
User accessing report triggers report processor on the report server or, user working on a model-based report triggers report processor.

Demand for a cached report->
User accessing a cached copy triggers this type of processing if cached copy has expired.

From schedulig and delivery processor->
Schedules and delivery events trigger this type of processing.

In all these cases the published report definition file is retrieved. This file defines both data and formatiing information. The data from the data processing extension is merged with the formatting information to produce the report in an intermediate format. The rendering extension takes this report in the intermediate format, processes it and produces the report rendered in a device specific format. During this process it may also process information that were not processed earlier like expressions in the report.

In the case of report being requested due to user working with a model, the steps are similar except that the model is interrogated to provide report and model data.

In essence core processors, the several specialized extensions, and the backend work together to produce a finished report.

Thursday, June 26, 2008

How can I print a web page?

Some browsers support Javascript's Window.Print() method. You can use it in the click event of a control, say a button.

<input type="button" value="Print this window" onClick="Window.Print()"/>

This will bring up a Print Dialog which is good thing since it will allow you make up your mind whether you really want to print; allows you to see if Printer is turned on, etc.

Another way would be to place a Web Browser Control on a windows form. Use the WebBrowser's navigate() method to go to the page you want at form load. Then use the click event of a button to Print.

Ofcourse you need to add a PrintDocument control from Toolbox to your form.

Code Follows:

Imports System.Windows.Forms.WebBrowser

Public Class Form1
Private Sub Form1_Load(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Me.Load

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click


'The above will print the Form1

End Sub

End Class

Wednesday, June 25, 2008

On using the Httpcfg tool in Windows XP Professional

HTTPCFG.EXE is generally found in these locations on your computer:





The next listing shows the Syntax for running this query

C:\>httpcfg query
ACTION - set query delete
STORENAME - ssl urlacl iplisten
[OPTIONS] - See Below
Options for ssl: -i IP-Address - IP:port for the SSL certificate (record key)
-h SslHash - Hash of the Certificate.
-g GUID - GUID to identify the owning application.
-c CertStoreName - Store name for the certificate. Defaults to "MY". Certificate must be stored in the LOCAL_MACHINE context.
-m CertCheckMode - Bit Flag 0x00000001 - Client certificate will not be
verified for revocation. 0x00000002 - Only cached client certificate revocation will be used. 0x00000004 - Enable use of the Revocation freshness time setting. 0x00010000 - No usage check.
-r RevocationFreshnessTime - How often to check for an updated certificate revocation list (CRL). If this value is 0, then the new CRL is updated only if the previous one expires. Time is specified in seconds.
-x UrlRetrievalTimeout - Timeout on attempt to retrieve certificate revocation list from the remote URL. Timeout is specified in Milliseconds.
-t SslCtlIdentifier - Restrict the certificate issuers that can be trusted. Can be a subset of the certificate issuers that are trusted by the machine.
-n SslCtlStoreName - Store name under LOCAL_MACHINE where SslCtlIdentifier is stored.
-f Flags - Bit Field 0x00000001 - Use DS Mapper. 0x00000002 - Negotiate Client certificate. 0x00000004 - Do not route to Raw ISAPI filters.
Options for urlacl: -u Url - Fully Qualified URL. (record key) -a ACL - ACL specified as a SDDL string.
Options for iplisten: -i IPAddress - IPv4 or IPv6 address. (for set/delete only)

If you want to find the URLs and associated ACLs run this query on your computer.

C:/>httpcfg query urlacl

or with the u flag as in,

C:/>httpcfg query urlacl /u

Both return the same result and there will be no completed final message.

Friday, June 6, 2008

How do you specify in the ADO DataReader destination your db connection to Oracle?

Drop a ADO DataReader destination and add path from your ADO DataSource.
Right click the ADO DataReader Destinaton and in the window that pops-up click on the NEW.. button in the ADO.NET Destination Editor. In the window that pops-up click on the New...button to create a new connection manager and choose .NET Providers for OleDb\Microsoft OLE DB Provider for Oracle. Follow this up by providing the server name and authentication details.

Learn most of regular configuraion in SSIS under two weeks from my illustrated guide:

Thursday, June 5, 2008

What can the string function StrDup() do ?

First of all StrDup() fuction is a member of the Microsoft.VisualBasic.Strings.
It comes in three flavors:

StrDup(Integer,Char) as String
StrDup(Integer, Object) as Object
StrDup(Integer,String) as String

What it returns in each case is the first character of the
string the number of times.

Say, if the string is "yes" and the integer is 7 you would get
yyyyyyy as the return value. In the case of the argument
Object, the object should be either a string or a char.

Observe the following listing:

Wednesday, June 4, 2008

I need to convert a string into a Byte Array. How do I code it in Visual Studio?

Visual Studio has Microsoft Visual Basic already referenced and you can use the following code. Of course you need to add an imports statement as shown. This code was tested using Visual Studio 2008.

In this code I am converting the string "Welcome" to a Byte array and writing it to the immediate window.

Code follows:

The output of this is:


Wednesday, May 21, 2008

How can I access my desktop/laptop from another computer?

Before you can access your computer remotely[[it is assumed that the computers are connected or networked] you need to enable it. The figure shows how you may do it in the SYSTEM folder [Remote tab]in the Control Panel (Windows XP). Place a check mark for Allow users to connect remotely to this computer.

This is a neat way to work with two computers at the same time from one set of keyboard, mouse and monitor. You can copy and paste from most files, especially if they use the same program. For example you can copy contents of Notepad from one computer[this is the local] and paste it into the other [this is the remote]. It helps you to keep the monitor display color different so that you don't get confused between the local and the remote.

Added: May 22 2008

Additionally you may also need to enable this in the firewall as an exception as shown in the next figure. By default this is not enabled. Place a check mark for the Remote Desktop and click OK.

Once enabled you go to the other computer and establish a remote connection as described in

Sunday, May 18, 2008

How do I connect to an Oracle 10G XE database from Visual Studio 2008?

The following code should help you in opening a connection to Oracle from VS2008. You need to know the connection string. For USERID and PASSWORD you should use what is appropriate for your database.

With OracleConnection you can do lot more than just making a conneciton.

Friday, May 9, 2008

How do you change computer time on a remote computer?

One way to change the time settings on a remote computer is to go to " All Programs-->Accessories--> Communications--> Remote Desk Top" on your computer[assuming you are using Windows XP (tested here), but may work with other Windows OS] and log on to the remote computer. When successful you can change the time just like you change time in your local machine.

Thursday, May 8, 2008

ActiveX Script Task to access a Report on a Report Server in SSIS 2008

The following ActiveX Script used in an ActiveX Script task can can display a web page in the IIS web server. However the task may fail. This is one of identified bugs.

Function Main()

Set oIE = CreateObject("internetExplorer.Application")oIE.navigate "http://localhost/SilverLight/TestSilverLight.htm"
oIE.Visible = true
end function

To display a Report deployed to a Report Server (Sql Server 2008) the following script can be used. Notice the processing instructions in addition to the URL of the report,

Function Main()

Set oIE = CreateObject("internetExplorer.Application")oIE.navigate "http://hodentek2:8080/ReportServer/Pages/ReportViewer.aspx?%2fRSProject%2fpubsAuthors&rs:Command=Render"
oIE.Visible = true
end function

Make sure the Report Services is running.

The task completes but the task fails. Opa!

Here are the Execution Results:

Saturday, May 3, 2008

This blog is for providing help

I often get emails asking for help and in most of the cases I respond. Sometimes I have the answers, sometimes I try to simulate the problem and find answers, and sometimes I cannot. I do feel that the answers should be shared with others who are looking for the very same questions.

I blog on my Hodentek site on things I feel I should be concerned about, on things I constantly think about, and also regarding my writings. It does take time and effort to write and I sincerely hope someone can benefit.

Jayaram Krishnaswamy
Plainsboro, NJ
May 3, 2008