Tuesday, March 03, 2009

Configuring Windows 2003 Active Directory

After completion of the steps as i have described in my previous post “Configuring the Windows 2003 DNS Server” you can run the “dcpromo” command to start installing the Active Directory in your Windows 2003 Server.

clip_image002

clip_image004

clip_image006

clip_image008

clip_image010

clip_image012

Enter the full DNS name of the new domain, for example – marketing.mycompany.com - this must be the same as the DNS zone that you have created in the previous post “Configuring the Windows 2003 DNS Server” at the time of configuring the DNS.

clip_image014

clip_image016

clip_image018

clip_image020

clip_image022

clip_image024

clip_image026

clip_image028

clip_image030

clip_image032

clip_image034

clip_image036

clip_image038

image

Configuring the Windows 2003 DNS Server

i thought to share the experience of installing a DNS in Windows Server 2003. As the starting point you have to install the DNS Services from the Windows Components.

The path you have to follow is this :

Start => Settings => Control Panel => Administrative Tools => Add/Remove Programs => Add/Remove Windows Components.

After that select Networking Services and click Details. Make sure to click Domain Name System (DNS) and click OK.

Once you finished installing the DNS via the Administrative Tools you can find the DNS Manager snap in as depicted below.

clip_image002

clip_image004

clip_image006

1. Creating a Forward Lookup Zone (please follow the screens one by one)

clip_image008

clip_image010

clip_image012

clip_image014

clip_image016

clip_image018

2. Creating a Reverse Lookup Zone (please follow the screens one by one).

clip_image020

clip_image022

clip_image024

clip_image026

clip_image016[1]

clip_image028

clip_image030

Monday, March 02, 2009

The instance name must be the same as computer name.

when you changed the Computer Name when there is already a SQL Server 2005 instance running (exists) in your system, then you may have to face “The instance name must be the same as computer name” at the time of installing the Microsoft CRM 4.0 Server.

As the solution you have to make sure the exact name of the SQL Server instance running in your computer. for that execute the following command in Query Analyzer :

select @@Servername

if the above commands gives you the output as the old server name

Then execute the following command:

sp_dropserver 'old_sql_server_instance_name', 'droplogins'
GO
sp_addserver 'new_sql_server_instance_name', 'local'
GO

Successfully Installed the Microsoft CRM 4.0 Server

After sometime of struggle to install DNS (Domain Name Server) and the AD (Active Directory) i was able to install the Microsoft CRM 4.0 in my machine successfully. I am planning to update you guyz with screen shots in due course.

The summary of the CRM installation is :

  • OS should be a Server Operating System (Win 2003/2008)
  • Install & Configure the Domain Name Server
  • Install & Configure the Active Directory
  • Install Microsoft Dynamics CRM 4.0

CRM in Action :

untitled

Sunday, March 01, 2009

The report server cannot decrypt the symmetric key used to access sensitive or encrypted data in a report server database.

Ooops what is this error!!!

when i was configuring MS SQL Reporting Services 2005 on the way to installing Microsoft CRM Server i had to encounter for the error:

"The report server cannot decrypt the symmetric key used to access sensitive or encrypted data in a report server database. You must either restore a backup key or delete all encrypted content. Check the documentation for more information. (rsReportServerDisabled) (rsRPCError)"

the solution for that error is to delete the Encryption Key in the Reporting Services Configuration.

the step is :

Start => Programs => Microsoft SQL Server2005 => Configuration Tools => Reporting Services Configuration => Encryption Keys.

SQLReporting

Wednesday, February 11, 2009

The local policy of this system does not permit you to logon interactively.

I came across a problem when i was playing around the Active Directory today. I have created a new user in AD and tried to login to the machine with the newly created username and password. At the time of logging to the machine the error was “The local policy of this system does not permit you to logon interactively.”.

SOLUTION

1. Click Start, point to Programs, point to Administrative Tools, and then click Domain Controller Security Policy.

Error 2. Double-click the Security Settings folder, double-click Local Policies, and then click User Rights Assignment.

3. Under the Policy column, double click “Allow Log on Locally”.

Error2 Properties
4. Click “Add User or Group”, and then select the user to be added.

5. Click OK, click OK, and then click OK.

Wednesday, February 04, 2009

Customer Relationship Management

Customer Relationship Management (CRM) is about finding, acquiring, and retaining the best, most profitable customers. In other words we can define it as a methodology which is used to learn about the Customer. As a strategy CRM places the customer as the center of a business. When implemented in a proper manner, the goal is to give deep information about the customers in return which supports the areas of the marketing, product planning, sales, finance and customer service.

WE can categorize the CRM into Marketing, Sales and Customer Services.

Ammar

Monday, February 02, 2009

Microsoft Dynamics CRM

Microsoft Dynamics CRM is built by using Microsoft .NET–connected technologies so that it is easy to deploy, customize, and use. Microsoft Dynamics CRM can be accessed from Microsoft Office Outlook;

As well as it integrates with other business applications, and it scales as your business grows.

Microsoft Dynamics CRM consists of the following components:

  • Microsoft Dynamics CRM Server
  • Microsoft Dynamics CRM for Microsoft Office Outlook
  • Microsoft Dynamics CRM 4.0 E-mail Router

CRMInterface

Microsoft Dynamics CRM 4.0 offers several editions that cover various implementations for small, to mid-level, to even very large organizations.

Editions

Microsoft Dynamics CRM 4.0 Workgroup. This edition is limited to 5 or fewer users, and supports a single organization. Microsoft Dynamics CRM 4.0 Workgroup can be installed on a single computer running Microsoft® Windows® Small Business Server 2003 R2 Premium Edition, any of the supported Windows Server 2003 editions, or Windows Server 2008.

Microsoft Dynamics CRM 4.0 Professional. This edition has no user limit, but is limited to a single organization. Microsoft Dynamics CRM 4.0 Professional can be installed on more than one computer within the same deployment.

Microsoft Dynamics CRM 4.0 Enterprise. There are no user limits for this edition, and it supports multiple organizations. Microsoft Dynamics CRM 4.0 Enterprise can be installed on more than one computer in the same deployment. In addition, the Enterprise edition supports role-based service installation, which enables you to increase performance by installing component services on different computers.

Sunday, February 01, 2009

Microsoft Dynamics

Microsoft Dynamics consists of five products:

Microsoft Dynamics AX (Axapta)

Designed for midsize and larger companies, Microsoft Dynamics AX (formerly Microsoft Axapta) is a multi-language, multicurrency enterprise resource planning (ERP) solution. With core strengths in manufacturing and e-business, there is an additional strong functionality for the wholesale and services industries.

Microsoft Dynamics CRM

Microsoft Dynamics CRM is a sophisticated business application platform that provides the basic services required by ISVs, VARs, and even business analysts to build upon. A wide range of applications can be created with this platform. These applications may be based on Microsoft Dynamics CRM but are not limited to CRM-type applications.

Microsoft Dynamics GP (Great Plains)

Microsoft Dynamics GP is a business management solution that provides growing and midsize organizations with complete and scalable financial and operational functionality. Several development tools are available that can be used to customize and create integrations for Microsoft Dynamics GP.

Microsoft Dynamics NAV (Navision)

Microsoft Dynamics NAV is a business management solution that helps small and mid-sized organizations streamline their highly specialized business processes, rapidly adapting to the unique way they do business. Through the rapid adaptability, simplified customization, and ease of use offered by Microsoft Dynamics NAV, you can easily add functionality, custom applications, and online business capabilities that enhance the built-in industry-specific functionality that's relevant to the local needs of customers' businesses.

Microsoft Dynamics SL (Solomon)

Microsoft Dynamics SL (formerly Microsoft Solomon) is perfect for the project-driven mid-size organization needing a modularized business management solution for managing people, projects, and profitability. This solution comes in two editions and is ideal for professional services, operations, field services and construction management, and wholesale distribution businesses with multiple locations and divisions.

for more details please refer this link :
http://msdn.microsoft.com/en-us/dynamics/ax/default.aspx

Friday, January 30, 2009

Microsoft Share Point Server

through out past few weeks I had a chance to explore the features of the Microsoft Share Point Server. So i m planning to keep all of you guys updated with the stuffs that i did explore in a detailed form when time permits.

Wednesday, January 21, 2009

Inside Dynamics AX 4.0

The best technical resource for Dynamics AX 4.0 is available to download from Microsoft. :)

Discover how to:
  • Use MorphX designers and development tools
  • Work with the X++ programming language
  • Build managed solutions that enable enterprise application integration
  • Customize tables, classes, forms, and reports
  • Develop and customize role-based, Web-enabled application portals
  • Implement applications that concurrently support multiple users, languages, and locations
  • Query application metadata using reflection APIs
  • Design and implement application logic that optimizes database performance
Please download it from here .

Tuesday, November 25, 2008

How do I loop through a record set in a stored procedure?

i came across a situation where i had to loop through a recordset, have to pick some column values and need to insert it to another table.

A sample snippet as below :


DECLARE MyCursor CURSOR READONLY FORWARD SELECT id FROM mainNav ORDER BY sort,id

OPEN MyCursor
READ NEXT FROM MyCursor INTO @id
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT id,label,url,sort,mainnavid FROM SubNav

WHERE mainNavID=@id ORDER BY sort,id
READ NEXT FROM MyCursor INTO @id
END
CLOSE MyCursor
DEALLOCATE MyCursor

attached the file script that i have used for the project.

-- ========================
-- Inserting Notifications –
-- =========================

ALTER PROCEDURE [dbo].[NotificationJob] AS
declare @TransId Int
declare @ToUserId Int
declare @RequestId Int
declare @FileId Int
declare @NoOfDays int
declare @TransType nvarchar(50)
declare @TransTypeId int
declare @NotificationType nvarchar(50)
declare @Active Int
declare @Description nVarchar (max)
declare @CreatedBy nvarchar(50)
declare @RecordCount Int

set @CreatedBy='DB_JOB'

--opening a cursor to select records from the Transaction table

DECLARE CUR_Notification
CURSOR FOR
SELECT
FileTransaction.TransId,
FileTransaction.UserId,
FileTransaction.FlowID,
FileTransaction.FileId,
FLOOR(CONVERT(real, GETDATE()) - FileTransaction.TransDate),
FileTransactionType.Name,
FileTransactionType.TransTypeId
FROM
FileTransaction
INNER JOIN
FileTransactionType
ON
FileTransaction.TransTypeId = FileTransactionType.TransTypeId
where
FLOOR(CONVERT(real, GETDATE()) - FileTransaction.TransDate) > 12
AND
FileTransactionType.TransTypeId= dbo.GetTransStatusId('Issue')
Or
FileTransactionType.TransTypeId= dbo.GetTransStatusId('Forward')
Or
FileTransactionType.TransTypeId= dbo.GetTransStatusId('AcceptReturn')

-- Opening the Cursor

OPEN CUR_Notification
FETCH NEXT FROM CUR_Notification
INTO @TransId, @ToUserId, @RequestId,@FileId, @NoOfDays, @TransType, @TransTypeId

declare @NotificationDate real

set @NotificationDate=(select CONVERT(real, GetDate()))

WHILE @@FETCH_STATUS = 0

BEGIN

SELECT @RecordCount=COUNT(*) FROM FRSNotification
WHERE
FRSNotification.TransID=@TransId
AND
FRSNotification.ToUserID=@ToUserId
AND
FRSNotification.RequestID=@RequestId

-- checking whether is there are any records exists

if @RecordCount=0
exec FRSNotification_Insert @TransId, @ToUserId,
@RequestId, @FileId, @TransTypeId, 1,
@NotificationDate, null, @TransType,
@NotificationDate, @CreatedBy

FETCH NEXT FROM CUR_Notification
INTO @TransId, @ToUserId, @RequestId,@FileId,
@NoOfDays, @TransType, @TransTypeId

END

--cleaning up operations
CLOSE CUR_Notification
DEALLOCATE CUR_Notification

Wednesday, October 29, 2008

SQL Doc™

Document SQL Server 2000, 2005 and 2008 databases without any hassle.

  • Fast, simple database documentation
  • Document one or multiple databases, down to object level
  • Write, edit, and export documentation in easy-to-read HTML files or .chm files for team distribution
  • Includes all cross-database dependencies
download trial version :
http://www.red-gate.com/supportcenter/Product.aspx?p=SQL%20Doc

Saturday, October 25, 2008

How to identify your SQL Server 2005 version and edition

To determine which version of Microsoft SQL Server 2005 is running, connect to SQL Server 2005 by using SQL Server Management Studio, and then run the following Transact-SQL statement:

SELECT
SERVERPROPERTY('productversion') as productversion,
SERVERPROPERTY ('productlevel') as productlevel,
SERVERPROPERTY ('edition') as edition

The results are:

* The product version (for example, "9.00.1399.06").
* The product level (for example, "RTM").
* The edition (for example, "Enterprise Edition").

sample results :

9.00.1399.06 RTM DeveloperEdition

Monday, October 20, 2008

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

One of strange error that i had to deal with is the one mentioned above. The error used to prompt more frequently when the number of records increased in table. So at the initial stage of developments you won't have this timeout error. But when the system is in operation level and when the production data increases you may haev to come across this timeout error.

There are two main Timeout property in ADO.NET.

1. Connection Timeout for Connection
2. Timeout for Data Access( Command Object or DataAdapter)

Setting Connection Timeout property for SQLConnnection object ?

You can't set timeout property in connection object because its a READ ONLY property.

The proper way to do this is to set the timeout value in connection string as mentioned below.

SqlConnection conn = new SqlConnection("server=Server;uid=sa;pwd=123456;database=myDB;Connection Timeout=120");

Setting the timeout property in DataAdapter or CommandObject.

SqlDataAdapter sqlAdapter = new SqlDataAdapter();
sqlAdapter.SelectCommand = new SqlCommand(sqlQuery, conn);
sqlAdapter.SelectCommand.CommandTimeout = 0;


Setting the timeout value to 0 will makes adapter or command to wait for indefinite time before terminating the attempt to execute a command and generating an error.
The default timeout value for connection object is 15 seconds.

hope this might help you to solve the problem.


Thursday, August 21, 2008

Working with System Tables in SQL 2005

Find ALL tables that have columns with an identity property

SQL SERVER 2000:

select object_name(id),name from syscolumns where columnproperty(id,name,'IsIdentity')=1 

SQLSERVER 2005:

select object_name(object_id),name from sys.identity_columns 

Note: SQL Server 2005 stores the last value of the identity property that was generated. To query the last value execute the following query.

select name,last_value from sys.identity_columns

Find ALL columns in a table that are computed columns

SQL SERVER 2000:

select name from syscolumns where id =object_id('TableName') and iscomputed=1

SQL SERVER 2005:

select name from sys.computed_columns where object_id =object_id('TableName')

Note: The computed column in SQL Server 2005 may be persisted. To narrow down the result set, you could execute the following query:

select * from sys.computed_columns where is_persisted=0

Find ALL database names in a SQL Server instance

SQL SERVER 2000:

select name from master..sysdatabases

SQL SERVER 2005:

select name from sys.databases

Note: Many enhancements were made to the database. Query all of the columns in sys.databases to understand the new enhancements like snapshot, etc.

Find ALL Procedures in a Database

SQL SERVER 2000:

select name from sysobjects where type='P'

SQL SERVER 2005:

select name from sys.procedures

Note: You can find whether the stored procedure execution is used in replication or if the stored procedure is a startup procedure. Execute the following queries:

select name from sys.procedures where is_execution_replicated=1
select name from sys.procedures where is_auto_executed=0

Find ALL tables in a Database

SQL SERVER 2000:

select name from sysobjects where type='U'

SQL SERVER 2005:

select name from sys.tables

Note: In SQL Server 2005, you can find whether a table is replicated. Execute the following query.

select * from sys.tables  where is_replicated =1

Find ALL views in a Database

SQL SERVER 2000:

select name from sysobjects where type='V'

SQL SERVER 2005:

select name from sys.views

Note: In SQL Server 2005, you can find whether a view is replicated. Execute the following query.

select * from sys.views where is_replicated =1

Find ALL Triggers in a Database

SQL SERVER 2000:

select name from sysobjects where type='TR'

SQL SERVER 2005:

select name from sys.triggers where parent_class=1

Note: In SQL Server 2005, the triggers can be Assembly trigger (CLR) or a SQL trigger. In addition, we can find whether the trigger is an AFTER trigger or INSTEAD of trigger. Execute the following query:

select name from sys.triggers where type='TA'
select name from sys.triggers where type='TR'
select name from sys.triggers where is_instead_of_trigger=1

Find ALL SQL logins in a server

SQL SERVER 2000:

select * from master..syslogins where isntgroup=0 and isntname=0

SQL SERVER 2005:

select * from sys.sql_logins

Find ALL dependencies of the SQL Object in a Database

SQL SERVER 2000:

select * from sysdepends

SQL SERVER 2005:

select * from sys.sql_dependencies

Find ALL data types in SQL server

SQL SERVER 2000:

select * from systypes

SQL SERVER 2005:

select * from sys.systypes

Find ALL error messages in SQL server

SQL SERVER 2000:

select * from master..sysmessages

SQL SERVER 2005:

select * from sys.messages

Find ALL the database files of the current database

SQL SERVER 2000:

select name,filename from sysfiles

SQL SERVER 2005:

select name, physical_name from sys.database_files

Find the type of index

SQL SERVER 2000: We have to use indid column to determine the type of index from 0,1 or 255.

SQL SERVER 2005:

select object_name(object_id),name, type_desc  from sys.indexes where type_desc ='CLUSTERED'
select object_name(object_id),name, type_desc from sys.indexes where type_desc ='HEAP'
select object_name(object_id),name, type_desc from sys.indexes where type_desc ='NONCLUSTERED'
select object_name(object_id),name, type_desc from sys.indexes where type_desc ='XML'

Thursday, April 10, 2008

Google Jumps Head First Into Web Services With Google App Engine

Google App Engine is designed for developers who want to run their entire application stack, soup to nuts, on Google resources. Amazon, by contrast, offers more of an a la carte offering with which developers can pick and choose what resources they want to use.

Google Product Manager Tom Stocky described the new service to me in an interview today. Developers simply upload their Python code to Google, launch the application, and can monitor usage and other metrics via a multi-platform desktop application.

More details from Google:

Today we’re announcing a preview release of Google App Engine, an application-hosting tool that developers can use to build scalable web apps on top of Google’s infrastructure. The goal is to make it easier for web developers to build and scale applications, instead of focusing on system administration and maintenance.

Leveraging Google App Engine, developers can:

  • Write code once and deploy. Provisioning and configuring multiple machines for web serving and data storage can be expensive and time consuming. Google App Engine makes it easier to deploy web applications by dynamically providing computing resources as they are needed. Developers write the code, and Google App Engine takes care of the rest.
  • Absorb spikes in traffic. When a web app surges in popularity, the sudden increase in traffic can be overwhelming for applications of all sizes, from startups to large companies that find themselves rearchitecting their databases and entire systems several times a year. With automatic replication and load balancing, Google App Engine makes it easier to scale from one user to one million by taking advantage of Bigtable and other components of Google’s scalable infrastructure.
  • Easily integrate with other Google services. It’s unnecessary and inefficient for developers to write components like authentication and e-mail from scratch for each new application. Developers using Google App Engine can make use of built-in components and Google’s broader library of APIs that provide plug-and-play functionality for simple but important features.

Google App Engine: The Limitations

The service is launching in beta and has a number of limitations.

First, only the first 10,000 developers to sign up for the beta will be allowed to deploy applications.

The service is completely free during the beta period, but there are ceilings on usage. Applications cannot use more than 500 MB of total storage, 200 million megacycles/day CPU time, and 10 GB bandwidth (both ways) per day. We’re told this equates to about 5M pageviews/mo for the typical web app. After the beta period, those ceilings will be removed, but developers will need to pay for any overage. Google has not yet set pricing for the service.

One current limitation is a requirement that applications be written in Python, a popular scripting language for building modern web apps (Ruby and PHP are among others widely used). Google says that Python is just the first supported language, and that the entire infrastructure is designed to be language neutral. Google’s initial focus on Python makes sense because they use Python internally as their scripting language (and they hired Python creator Guido van Rossum in 2005).

Source

Monday, January 14, 2008

Microsoft Silverlight

Microsoft Silverlight is the next generation, cross browser web client, cross platform runtime. Silverlight is a lightweight subset of XAML for building rich media experiences on the web.

http://www.microsoft.com/silverlight/

Visual Studio 2008

you can download the VS 2005 and SQL Server 2008 Express Edition from here :

http://www.microsoft.com/express/download/#webInstall

Tuesday, November 20, 2007

Open Source Web Design

download free web design templates and share yours with others:

http://www.oswd.org/