This blog shares my journey as a software engineer, along with personal reviews and life experiences I’ve gained along the way. “I have not failed. I've just found 10,000 ways that won't work.” — Thomas Edison. If you enjoy my content, please support it by clicking on ads (free for you, big help for me!) or by buying me a coffee on Ko-fi. Thank you!
Wednesday, January 30, 2013
Looping with ADO.NET on DataTable filled from SQL
Dim application_id As Int32
Dim sqlString As String
Dim dtl_id As String = String.Empty
Dim dt As New DataTable()
Dim MyCtrl As ctrl_db_commands
If Not Session("application_id") Is Nothing Then
Try
application_id = Int32.Parse(Session("application_id"))
'SQL to check to see if the Agency Form is completed
sqlString = "SELECT agcy_xxx_number, agcy_npx_number, agcy_number, agcy_primary_contact_title, agcy_executive_director, agcy_medical_director, agcy_entity_type_id, agcy_tax_status FROM [dbo].[TBL_101_APPLICATION] WHERE application_id = " & application_id
Using conn As New SqlConnection(ConfigurationManager.ConnectionStrings("conn").ConnectionString)
conn.Open()
Using sda As New SqlDataAdapter(sqlString, conn)
sda.Fill(dt)
End Using
End Using
Catch ex As Exception
Throw New ArgumentException("Exception Occured Contact Cardinal Innovations Solutions Delievery")
End Try
End If
For Each dataRow As DataRow In dt.Rows
For Each dataColumn As DataColumn In dt.Columns
Dim fieldValue As String = dataRow(dataColumn).ToString()
'The AgencyForm is not completed Exit For and display message
If (fieldValue = "" Or fieldValue = "-1") Then
Me.Master.ShowSysMessage("Please complete the entire Section1-1 (Agency) before adding Facilities", "Error")
MyCtrl = DirectCast(Me.fv1.FindControl("ctrl_db_commands1"), ctrl_db_commands)
MyCtrl.Show_Add = False
MyCtrl.Show_Cancel = False
MyCtrl.Header_Text_HTML = "Please complete the entire Section1-1 (Agency) before adding Facilities"
Exit For
End If
Next
Next
End Sub
Programmer productivity -- Dr. Dobbs
Tuesday, January 29, 2013
ASP.NET Coding Thoughts
- Use DirectCast when you know the value type and in this scenario were casting the user control with ID = ctrl_db_commands1
- Find the control in the correct container, never trust old applications and always research where these controls exist
- If your properties are not changing you better debug and find out why in this case the values where hard coded in the properties, which was updated to work correctly.
Friday, January 18, 2013
Clustered and Non-Clustered Indexes by Vijay Modi
What is cluster and Non-Cluster index and why we need it? Do you know? Just read this article and you will know all about it.
Most database administrators are familiar with the potential performance benefits they can gain through the judicious use of indexes on database tables. Indexes allow you to speed query performance on commonly used columns and improve the overall processing speed of your database.
Microsoft SQL Server supports two types of indexes:
-> Clustered indexes define the physical sorting of a database table’s rows in the storage media. For this reason, each database table may have only one clustered index. If a PRIMARY KEY constraint is created for a database table and no clustered index currently exists for that table, SQL Server automatically creates a clustered index on the primary key.
-> Non-clustered indexes are created outside of the database table and contain a sorted list of references to the table itself.
SQL Server 2000 supports a maximum of 249 non-clustered indexes per table. However, it’s important to keep in mind that non-clustered indexes slow down the data modification and insertion process, so indexes should be kept to a minimum
One of the hardest tasks facing database administrators is the selection of appropriate columns for non-clustered indexes. You should consider creating non-clustered indexes on any columns that are frequently referenced in the WHERE clauses of SQL statements. Other good candidates are columns referenced by JOIN and GROUP BY operations.
You may wish to also consider creating non-clustered indexes that cover all of the columns used by certain frequently issued queries. These queries are referred to as “covered queries” and experience excellent performance gains.
SQL Server provides a wonderful facility known as the Index Tuning Wizard which greatly enhances the index selection process. To use this tool, first use SQL Profiler to capture a trace of the activity for which you wish to optimize performance. You may wish to run the trace for an extended period of time to capture a wide range of activity. Then, using Enterprise Manager, start the Index Tuning Wizard and instruct it to recommend indexes based upon the captured trace. It will not only suggest appropriate columns for queries but also provide you with an estimate of the performance increase you’ll experience after making those changes!
Monday, January 14, 2013
Calendar Mask and AJAX
<asp:TextBox ID="txt_prov_srvc_from_dt" runat="server" MaxLength="10" />
<asp:ImageButton ID="ibtnServFromDtCal" AlternateText="Calendar" ImageUrl="~/images/calendar_icon_blue.gif" runat="server" CausesValidation="false" />
<ajaxtoolkit:MaskedEditExtender ID="maskExtenderServFromDtCal" TargetControlID="txt_prov_srvc_from_dt" MaskType="None" Mask="99/99/9999" ClearMaskOnLostFocus="False" runat="server" />
<ajaxtoolkit:CalendarExtender ID="maskCalExtenderServFromDtCal" TargetControlID="txt_prov_srvc_from_dt" PopupButtonID="ibtnServFromDtCal" Format="MM/dd/yyyy" runat="server" />
<asp:CompareValidator ID="ProvSrvcFromDtValidator" runat="server" ErrorMessage="CompareValidator" Type="Date" ControlToValidate="txt_prov_srvc_from_dt" Operator="DataTypeCheck" Display="Dynamic" Font-Bold="True">?</asp:CompareValidator>
<asp:TextBox ID="txt_prov_srvc_to_dt" runat="server" MaxLength="10" />
<asp:ImageButton ID="ibtnServToDtCal" AlternateText="Calendar" ImageUrl="~/images/calendar_icon_blue.gif" runat="server" CausesValidation="false" />
<ajaxtoolkit:MaskedEditExtender ID="maskExtenderServToDtCal" TargetControlID="txt_prov_srvc_to_dt" MaskType="None" Mask="99/99/9999" ClearMaskOnLostFocus="False" runat="server" />
<ajaxtoolkit:CalendarExtender ID="maskCalExtenderServToDtCal" TargetControlID="txt_prov_srvc_to_dt" PopupButtonID="ibtnServToDtCal" Format="MM/dd/yyyy" runat="server" />
<asp:CompareValidator ID="ProvSrvcToDtValidator" runat="server" ErrorMessage="CompareValidator" Type="Date" ControlToValidate="txt_prov_srvc_to_dt" Operator="DataTypeCheck" Display="Dynamic" Font-Bold="True">?</asp:CompareValidator>
Friday, January 11, 2013
ADO.NET 2012 - GET DATA from SQL with Using Statements
Private Function GetData() As String
Dim intDataID As Integer
Dim strFinalizedDate As String = "Not Completed"
Try
intDataID = Int32.Parse(lblDataID.Text)
Using conn As New SqlConnection(ConfigurationManager.ConnectionStrings("conn_string").ConnectionString)
conn.Open()
Using cmd As New SqlCommand("SELECT update_dt FROM table WHERE data_id = " & intDataID, conn)
cmd.CommandType = CommandType.Text
Using reader As SqlDataReader = cmd.ExecuteReader()
If reader.HasRows Then
While reader.Read()
strFinalizedDate = reader("update_dt").ToString()
End While
End If
End Using
End Using
End Using
Return strFinalizedDate
Catch ex As Exception
Throw
End Try
End Function
C#
try {
intDataID = Int32.Parse(lblDataID.Text);
using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings("conn_string").ConnectionString)) {
conn.Open();
using (SqlCommand cmd = new SqlCommand("SELECT update_dt FROM table WHERE data_id = " + intDataID, conn)) {
cmd.CommandType = CommandType.Text;
using (SqlDataReader reader = cmd.ExecuteReader()) {
if (reader.HasRows) {
while (reader.Read()) {
strFinalizedDate = reader("update_dt").ToString();
}
}
}
}
}
return strFinalizedDate;
} catch (Exception ex) {
throw;
}
Thursday, January 10, 2013
To find out who is connected to database in SQL Server
First one:
- Use the SQL SERVER Management Studio -- Management -- Activity Monitor
- This gives a list of users, database names, status, command, transactions, application with which they are using the database, CPU, IO and Memory usage, Login time etc.
Second One:
- Use the built in stored procedure called sp_who2
- Run the command exec sp_who2
- This gives a list of users, database names, status, command, program with which they are using the database, CPU time, Login time etc.
Tuesday, January 08, 2013
Happy New Year
- .NET Entity Framework, know backwards and forwards
- JQuery
- Keep up with SharePoint
- Most important, GET IN SHAPE
Thursday, December 27, 2012
Importance of Audit in Windows Servers
Importance of Folder and File Auditing to track changes on Windows Servers. If something gets change that your job requires you to be responsible, it is to your benefit to:
A) Lock down and password protect and minimize the password to (3) people only
B) Turn File Auditing on.
C) Ensure that the only change capability is assigned to individuals rather than a service account. If a service account is compromised you will not know be able to track the changes down.
Thursday, December 20, 2012
How to write efficient database JOINs
How
to write efficient database JOINs
Last updated March 27, 2009. Created by moshe weitzman on June 21, 2003.
Edited by bekasu, gkallenberg, puregin, Steven. Log
in to edit this page.
This page is based on an e-mail posted by Craig Courtney on
6/21/2003 to the drupal-devel mailing list.
There are 3 kinds of joins: INNER, LEFT OUTER, and RIGHT OUTER.
Each requires an ON clause to let the RDBMS know what fields to use when
joining the tables. For each join there are two tables: the LEFT table and the
RIGHT table. The syntax is as follows:
{left table} (INNER | LEFT OUTER | RIGHT OUTER) JOIN {right
table} ON (join criteria)
An INNER JOIN returns only those rows from the LEFT table having
a matching row in the RIGHT table based on the join criteria.
A LEFT OUTER JOIN returns all rows
from the LEFT table even if no matching rows where found in the RIGHT table.
Any values selected out of the RIGHT table will be NULL for those rows where no
matching row is found in the RIGHT table.
A RIGHT OUTER JOIN works exactly the same as a LEFT OUTER JOIN
but reversing the direction. So it would return all rows in the RIGHT table
regardless of matching rows in the LEFT table.
It is recommended that you not use RIGHT OUTER JOIN since
a query can always be rewritten to use LEFT OUTER JOIN which tends to be more
portable and easier to read.
If there are multiple rows in one table that match one row in
the other table, the join will return that same row many times.
For example:
Table A
tid,
name
1,
'Linux'
2,
'Debian'
Table B
fid,
tid, message
1, 1,
'Very Cool'
2, 1,
'What an example'
Query 1: SELECT a.name, b.message FROM a INNER JOIN b ON
a.tid = b.tid
Result
1:
Linux,
Very Cool
Linux,
What an example
Query 2: SELECT a.name, b.message FROM a LEFT JOIN b ON
a.tid = b.tid
Result
2:
Linux,
Very Cool
Linux,
What an example
Debian,
NULL
Visual Examples
codinghorror.com example
Hope
that helps in reading some of the queries.
Edited by bekasu, gkallenberg, puregin, Steven. Log in to edit this page.
codinghorror.com example
Monday, December 03, 2012
SQL Data Cache
Tuesday, November 20, 2012
SortedDictionary Powerful tool
Thursday, November 15, 2012
Here are five questions great candidates ask:
What do you expect me to accomplish in the first 60 to 90 days?
Great candidates want to hit the ground running. They don't want to spend weeks or months "getting to know the organization."
They want to make a difference--right away.
What are the common attributes of your top performers?
Great candidates also want to be great long-term employees. Every organization is different, and so are the key qualities of top performers in those organizations.
Maybe your top performers work longer hours. Maybe creativity is more important than methodology. Maybe constantly landing new customers in new markets is more important than building long-term customer relationships. Maybe it's a willingness to spend the same amount of time educating an entry-level customer as helping an enthusiast who wants high-end equipment.
Great candidates want to know, because 1) they want to know if they fit, and 2) if they do fit, they want to be a top performer.
What are a few things that really drive results for the company?
Employees are investments, and every employee should generate a positive return on his or her salary. (Otherwise why are they on the payroll?)
In every job some activities make a bigger difference than others. You need your HR folks to fill job openings... but what you really want is for HR to find the rightcandidates because that results in higher retention rates, lower training costs, and better overall productivity.
You need your service techs to perform effective repairs... but what you really want is for those techs to identify ways to solve problems and provide other benefits--in short, to generate additional sales.
Great candidates want to know what truly makes a difference. They know helping the company succeed means they succeed as well.
What do employees do in their spare time?
Happy employees 1) like what they do and 2) like the people they work with.
Granted this is a tough question to answer. Unless the company is really small, all any interviewer can do is speak in generalities.
What's important is that the candidate wants to make sure they have a reasonable chance of fitting in--because great job candidates usually have options.
How do you plan to deal with...?
Every business faces a major challenge: technological changes, competitors entering the market, shifting economic trends... there's rarely a Warren Buffett moat protecting a small business.
So while a candidate may see your company as a stepping-stone, they still hope for growth and advancement... and if they do eventually leave, they want it to be on their terms and not because you were forced out of business.
Say I'm interviewing for a position at your bike shop. Another shop is opening less than a mile away: How do you plan to deal with the new competitor? Or you run a poultry farm (a huge industry in my area): What will you do to deal with rising feed costs?A great candidate doesn't just want to know what you think; they want to know what you plan to do--and how they will fit into those plans.
Monday, November 12, 2012
XML Transformation on MSBuild TFS 2010
<Target Name="BeforeBuild">
</Target>
<!--<Target Name="AfterBuild">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)" />
</Target>--> <Target Name="AfterBuild" Condition="$(IsAutoBuild)=='True'">
<ItemGroup>
<DeleteAfterBuild Include="$(WebProjectOutputDir)\Web.*.config" />
</ItemGroup>
<TransformXml Source="Web.config" Transform="$(ProjectConfigTransformFileName)" Destination="$(WebProjectOutputDir)\Web.config"/>
<Delete Files="@(DeleteAfterBuild)" />
</Target>
</Project>
Assuming you have saved and checked in your project file and are in the process of creating a build definition, on the Process step of your build definition you will find under the Advanced heading a field labeled “MSBuild Arguments”. Enter the value /p:IsAutoBuild=”True”.
Simple GOTCHA, be sure to check in the PROJECT File back to Source Control before testing (DUH!)
Thursday, October 18, 2012
Move Window between monitors with keystrokes
Tuesday, October 09, 2012
SQL Connection and Command Example
Trycmd.CommandText = "csp_validate_progress_notes_entry"cmd.CommandType = CommandType.StoredProcedurecmd.Connection = conn
cmd.Parameters.Add(
"@ClientID", SqlDbType.Int).Value = ClientIDcmd.Connection.Open()
passOrFail = cmd.ExecuteScalar()
Return passOrFail
Catch ex As ExceptionRaiseEvent StatusMessageChanged(New StatusMessageEventArgs("Error Connecting to Database", StatusMessageEventArgs.StatusMessageType.ErrorMsg))
Return passOrFail
FinallyIf Not conn Is Nothing Thenconn.Close()End IfEnd TryEnd Function
Friday, September 28, 2012
9. Ctrl+Alt+minus sign (-)—Sometimes you don't want an image of the entire desktop; sometimes you want just a selected window. Pressing the Ctrl+Alt+minus sign (-) keyboard shortcut captures a snapshot of just the active window within the remote desktop session. This key combination is the same as pressing Alt+Print Screen on your local desktop.
8. Alt+Home—Pressing the Alt+Home keyboard combination with Remote Desktop displays the Start menu on the remote system. The Start menu gives you quick access to the different programs installed on the remote system. This key combination is the same as pressing the Windows key on your local desktop.
7. Alt+Delete—Pressing the Alt+Delete keyboard combination in the Remote Desktop session opens the Windows menu of an application running on the remote system. The Windows menu is typically displayed under the icon in the extreme upper left corner of most Windows applications, and it lets you move and resize the application.
6. Ctrl+Alt+Break—Sometimes you might want the Remote Desktop window to be displayed in full-screen mode just as if you were using your local desktop. If you want to toggle the Remote Desktop session between a window and a full-screen display, you can press the Ctrl+Alt+Break keyboard combination.
5. Ctrl+Alt+Pause—Like the previous item, the Ctrl+Alt+Pause keyboard combination switches between full screen and windowed mode. However, with this keyboard shortcut, the remote desktop window remains at its standard size and doesn't fill the entire local desktop. Instead, it's displayed on a black background.
4. Alt+Insert—Sometimes you want a quick way to switch between the different programs that you have running. Pressing the Alt+Insert keyboard combination lets you cycle through the programs on the remote system in the order that they were opened. This process is the same as using Alt+Tab on your local desktop.
3. Alt+Page Down—Another way to cycle through the running programs on your Remote Desktop session is to use the Alt+Page Down keyboard shortcut. Pressing this key combination lets you switch between programs on the remote desktop session, moving from right to left in the Windows task switcher. This is the same as Alt+Shift+Tab on your standard desktop.
2. Alt+Page Up—Pressing Alt+Page Up lets you switch between programs on the Remote Desktop session, moving from left to right in the Windows task switcher. This is the same as Alt+Tab on your standard desktop.
1. Ctrl+Alt+End—One of the most common yet hard-to-find things that you'll need to do in a Remote Desktop session is to send a Ctrl+Alt+Del signal to the remote system. Press Ctrl+Alt+End if you need to send a Ctrl+Alt+Del keystroke combination to the remote system. This keystroke opens the Microsoft Windows Security dialog box, which lets you lock the computer, log off, change your password, and start Task Manager.
Monday, June 18, 2012
SharePoint 2010 User Profile Synchronization
http://blogs.msdn.com/b/russmax/archive/2010/03/20/sharepoint-2010-provisioning-user-profile-synchronization.aspx
Wednesday, September 14, 2011
SharePoint 2010 Day at Microsoft Campus in Charlotte
Friday, September 02, 2011
SharePoint 2007 & 2010 Index and Search sizes
Wednesday, August 31, 2011
MOSS 2007 on Windows Server 2008 R2
Next was installing MOSS 2007 SP2 slip stream on the rest of the farm. Ensure you open the port that Central Admin is installed on or you will not be able to access. LESSONS LEARNED FROM MOOJJOO
Saturday, March 26, 2011
Friday, November 19, 2010
Add JavaScript to handle two scripts in ASP.NET
{
System.Text.StringBuilder sbValid = new System.Text.StringBuilder();
sbValid.Append("if (confirm('Are you sure you want to post this file to app') == true){");
sbValid.Append("this.disabled = true;");
sbValid.Append("} else { return false;}");
sbValid.Append(this.ClientScript.GetPostBackEventReference(this.btnPostToIRIS, "") + ";");
this.btnPostToIRIS.Attributes.Add("onclick", sbValid.ToString());
}
Tuesday, November 09, 2010
Looping through SQL Server ... This has to be saved. To many hours spent.
This article describes various methods that you can use to simulate a cursor-like FETCH-NEXT logic in a stored procedure, trigger, or Transact-SQL batch.
Use Transact-SQL Statements to Iterate Through a Result Set
There are three methods you can use to iterate through a result set by using Transact-SQL statements.
One method is the use of temp tables. With this method, you create a "snapshot" of the initial SELECT statement and use it as a basis for "cursoring." For example:
/********** example 1 **********/
declare @au_id char( 11 )
set rowcount 0
select * into #mytemp from authors
set rowcount 1
select @au_id = au_id from #mytemp
while @@rowcount <> 0
begin
set rowcount 0
select * from #mytemp where au_id = @au_id
delete #mytemp where au_id = @au_id
set rowcount 1
select @au_id = au_id from #mytemp
end
set rowcount 0
A second method is to use the min function to "walk" a table one row at a time. This method catches new rows that were added after the stored procedure begins execution, provided that the new row has a unique identifier greater than the current row that is being processed in the query. For example:
/********** example 2 **********/
declare @au_id char( 11 )
select @au_id = min( au_id ) from authors
while @au_id is not null
begin
select * from authors where au_id = @au_id
select @au_id = min( au_id ) from authors where au_id > @au_id
end
NOTE: Both example 1 and 2 assume that a unique identifier exists for each row in the source table. In some cases, no unique identifier may exist. If that is the case, you can modify the temp table method to use a newly created key column. For example:
/********** example 3 **********/
set rowcount 0
select NULL mykey, * into #mytemp from authors
set rowcount 1
update #mytemp set mykey = 1
while @@rowcount > 0
begin
set rowcount 0
select * from #mytemp where mykey = 1
delete #mytemp where mykey = 1
set rowcount 1
update #mytemp set mykey = 1
end
set rowcount 0
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Robert Dannelly
-- Create date: 11/09/2010
-- Description: Resubmission Validation
-- =============================================
CREATE PROCEDURE ResubmissionValidation
-- Add the parameters for the stored procedure here
@ImportID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE @ResubmissionTest TABLE
(
[ImportMetricID] [int] NULL,
[ImportID] [int] NULL,
[MetricInstanceID] [int] NULL,
[MetricValue] [varchar](100) NULL,
[NDTR] [varchar](20) NULL,
[MetricValueDate] [datetime] NULL,
[Narrative] [varchar](300) NULL,
[Resubmission] [varchar](50) NULL,
[ImportMetricStatus] [varchar](50) NULL,
[ImportFailureMsg] [varchar](200) NULL,
[CurrentMetricValue] [varchar](50) NULL
)
INSERT INTO @ResubmissionTest (ImportMetricID, ImportID, MetricInstanceID, MetricValue, NDTR, MetricValueDate, Narrative,
Resubmission, ImportMetricStatus, ImportFailureMsg, CurrentMetricValue)
SELECT ImportMetricID, ImportID, MetricInstanceID, MetricValue, NDTR, MetricValueDate, Narrative,
Resubmission, ImportMetricStatus, ImportFailureMsg, CurrentMetricValue FROM tblImportMetric WHERE ImportID = @ImportID --Need to change to Variable
-- This is used for Testing RBD
--SELECT * FROM @ResubmissionTest
DECLARE @ImportMetric_ID char(11), @Resubmission varchar(10)
SELECT @ImportMetric_ID = min(ImportMetricID) FROM @ResubmissionTest
--Begin LOOP
WHILE @ImportMetric_ID is not null
BEGIN
DECLARE @MetricInstanceID int,
@MetricValueDate DateTime
SELECT @MetricInstanceID MetricInstanceID FROM @ResubmissionTest WHERE ImportMetricID = @ImportMetric_ID
SELECT @MetricValueDate MetricValueDate FROM @ResubmissionTest WHERE ImportMetricID = @ImportMetric_ID
-- Be sure to change the values to @MetricInstanceID AND @MetricValueDate
EXECUTE ImportCheckResubmission @MetricInstanceID, @MetricValueDate, @Resubmission OUTPUT
IF @Resubmission = 'Yes'
BEGIN
UPDATE @ResubmissionTest
SET ImportFailureMsg = 'There is an existing value for this metric and interval. Please indicate if it is a resubmission.'
WHERE ImportMetricID = @ImportMetric_ID
SELECT @ImportMetric_ID = min(ImportMetricID) FROM @ResubmissionTest WHERE ImportMetricID > @ImportMetric_ID
END
END
DELETE FROM tblImportMetric WHERE ImportID = @ImportID
INSERT INTO tblImportMetric (ImportID, MetricInstanceID, MetricValue, NDTR, MetricValueDate, Narrative,
Resubmission, ImportMetricStatus, ImportFailureMsg, CurrentMetricValue)
SELECT ImportID, MetricInstanceID, MetricValue, NDTR, MetricValueDate, Narrative,
Resubmission, ImportMetricStatus, ImportFailureMsg, CurrentMetricValue FROM @ResubmissionTest WHERE ImportID = @ImportID --Need to change to Variable
--This is used for Testing
--SELECT * FROM tblImportMetric
END
GO
Thursday, November 04, 2010
Demystify SQL Debugging with with Visual Studio
http://www.asp.net/data-access/tutorials/debugging-stored-procedures-vb
#1 Connect using Windows Authentication as the same account on the local machine that must have sysadmin rights in the Instance of SQL Server.
#2 They use Server Explorer and connect with that same account and then once connect right click on the DB and check "Application Debuggin. I am posting this to my blog.
Great posts. By the way I feel the pain of remote individuals, my answer tell you management that if you want fast, rapid code to fork up the dough for SQL Developer Edition and do all you coding locally with a quality source control.
Robert.
Tuesday, October 19, 2010
Add Using for Controls or lookup very useful
Reboot Remotely
Replace x.x.x.x with the IP address or computer name of the remote machine. -r option is for restart, don't use -r if want to just shut down the system.
Thursday, August 05, 2010
SharePoint Site Collection Administration
Thursday, June 17, 2010
AJAX Install
1) Download the latest version from CodePlex for AJAX.
2) Extract to a location of your choice
3) Add the AjaxControlToolkit.dll & AjaxControlToolkit.pdb to you Web layer project /bin folder
4) Create a new Tab in your Toolbox and point to the new AjaxControlToolkit.dll
5) Create a reference to your AjaxControlToolkit.dll
6) Finally ensure the line in your Web.config is that same version as your dll assembly -
Friday, April 16, 2010
Visual Studio 2010
SharePoint and SQL Sever Reporting Integration
This will be the first implmentation at my company and I very excited to have a fantastic presentation for my upper managment.
A lot of work has been put into this and I plan to sell this great feature.
Thursday, April 01, 2010
New Trick Envrionment Variables
You can right click on your computer > Advanced Tab > set the variables. Warning they will not take effect till a reboot.
This would not worth using for a hosted appllication when you do not have access to the server.
Monday, March 08, 2010
Time to build the app
Define - 20 more hours
- Design DB (Completed)
- Design Workflow (Completed)
- Design UI(s) All screens (Completed)
- Design Objects (Completed)
Measure - 10 hours (2-6 Months, but will be done before I am 40 :-) )
Analyze - 40 hours (Done)
Improve (Build) - (In Process)
- Database Development (8 Hours Completed)
- Application (Web to start in Progress 2-6 months
* Web UI
* Business Layer
* Data Layer (Completed)
* Test Test Test fix fix fix test test test
* Demo to friends and family (Huge Milestone - break out Beer and Wine)
Control - Will know after Improve Phase)
Friday, February 19, 2010
Trace.axd
<trace enabled="true" requestLimit="40" localOnly="false" />
Very important when troubleshooting:
http://msdn.microsoft.com/en-us/library/y13fw6we%28VS.71%29.aspx
Thursday, February 04, 2010
Kill Task in XP
Force kill aspnetwp.exe....
Than stop the IIS and then delete temporary files.
Monday, January 11, 2010
Ctrl-Alt-Del on remote desktop aka server
Ctrl+Alt+End
Friday, October 30, 2009
Database Design and Audit
When developing ASP.NET application that use a APP Pool and identity to make all calls to the back end database in order to have a trigger based solution for auditing.
I would recommend all your tables have updatedDT and updateBY columns in all the tables you want to audit.
Tuesday, September 15, 2009
Leading a Development Team
Depending on the scope of the technical requirements, it is the job of the team lead to review all documentation. PERIOD. From the technical specs the DEV LEAD develops the HLD/LLD specs, make estimates on the Business Analysis for each HLD/LLD.
Next, grant the developer the proper time to analyze the HLD/LLD requirements written by the tech lead. Tech Lead should read the HLD/LLD to ensure they are complete and time the review time and add 1 hour to allow developer the time needed to read the documentation and allow time the developer to ask questions to close gaps on missing requirements.
Once the business and the tech lead sort out these issues a developer should not code until all gaps are filled.
If you do, you will be doing rework on the project, thus costing time which as we all know == MONEY.
Wednesday, July 22, 2009
Team work
Wednesday, April 29, 2009
Assignments
DUhG
If you see that something does not work in Visual Studio because it is not set as an assignment on a property.
Include the = symbol.
Example
li.select;
Will not work
li.select = true; //will.
Tuesday, March 31, 2009
Change My Documents
Ability to change the My Documents path is restricted.
This setting can restrict the ability to change the current path of My Documents folder.
Click here to run a free scan for registry errors
Description:
Every user on a computer has some files and folders of personal use. The my documents folder is the users personal folder where he normally saves all his documents, pictures, music and other personal files. If more than one user account is created on the computer, windows creates the my documents folder for each account. This setting disables the users ability to change the default location/path of the my documents folder. The user can invoke the my documents properties dialog by right-clicking the folder, but the access to change the folder location is denied. For this, go to start > run menu, enter regedit and navigate to the registry path listed below. You can create a dword value disablepersonaldirchange, if this value does not exist. Now, right-click and modify the value to 1 which can restrict change in folder path. However, if you want to enable the changes, delete the value name disablepersonaldirchange. The changes take effect after a restart or logoff.
Level: Recommended For Experts Only
Registry Entries
Click here to run a free scan for registry errors
· Path: [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\]
· Location: Current User
· Value Name: DisablePersonalDirChange
· Data Type: DWORD (DWORD Value)
· Enabled Value: 1
· Disabled Value: 0
· Action Type: Add an Entry
Screenshots
Click here to run a free scan for registry errors
First, click the Start button, and select Run. In the resulting dialog box, type "regedit"
Second, go to [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\] and create a DWORD value "DisablePersonalDirChange.
Third, right-click on "DisablePersonalDirChange" and select 'Modify'.
Finally, set the "Value Data" to 1in the textbox provided and click on 'OK' to enable