<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>CodeKeep ActionScript Feed</title>
    <description>The latest and greatest ActionScript code snippets publicly available</description>
    <link>http://www.codekeep.net/feeds.aspx</link>
    <lastBuildDate>Tue, 17 Apr 2012 20:11:40 GMT</lastBuildDate>
    <docs>http://backend.userland.com/rss</docs>
    <generator>RSS.NET: http://www.rssdotnet.com/</generator>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/CodeKeepActionScript" /><feedburner:info uri="codekeepactionscript" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
      <title>C# Case Insensitive String Replace</title>
      <description>Description: Replace string A inside string B using string C, no attention is paid to the case.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/0a6822ef-743e-4698-afd9-6d49d0efaac5.aspx'&gt;http://www.codekeep.net/snippets/0a6822ef-743e-4698-afd9-6d49d0efaac5.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;        #region &amp;quot; Case-Insensitive String Replace &amp;quot;

        /// &amp;lt;summary&amp;gt;
        /// replace text in a string without consideration for the case of the input
        ///   string or the find string
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;input&amp;quot;&amp;gt;the string to search&amp;lt;/param&amp;gt;
        /// &amp;lt;param name=&amp;quot;oldText&amp;quot;&amp;gt;the text to find and replace&amp;lt;/param&amp;gt;
        /// &amp;lt;param name=&amp;quot;newText&amp;quot;&amp;gt;the text that replace the 'old' text&amp;lt;/param&amp;gt;
        /// &amp;lt;returns&amp;gt;a new string with the replaced text&amp;lt;/returns&amp;gt;
        public static string ReplaceText(string input, string oldText, string newText)
        {
            if (string.IsNullOrEmpty(input))
                return input;
            if (string.IsNullOrEmpty(oldText))
                return input;

            // build the case insensitive regx to use
            var regxBuilder = new StringBuilder(&amp;quot;(&amp;quot;);
            for (var i = 0; i &amp;lt; oldText.Length; i++)
                regxBuilder.AppendFormat(&amp;quot;[{0}{1}]&amp;quot;, oldText.Substring(i, 1).ToLower(), oldText.Substring(i, 1).ToUpper());
            regxBuilder.Append(&amp;quot;)&amp;quot;);

            // perform the replacement
            var result = System.Text.RegularExpressions.Regex.Replace(input, regxBuilder.ToString(), newText);
            return result;
        }

        #endregion&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/K5PVKcbLOvI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/K5PVKcbLOvI/0a6822ef-743e-4698-afd9-6d49d0efaac5.aspx</link>
      <pubDate>Tue, 17 Apr 2012 20:11:40 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/0a6822ef-743e-4698-afd9-6d49d0efaac5.aspx</feedburner:origLink></item>
    <item>
      <title>Barcode Suppress Print</title>
      <description>Description: bcp.DisplayCode = False&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/6f815b8a-9c3e-4eca-9b0e-64ff71d22ecd.aspx'&gt;http://www.codekeep.net/snippets/6f815b8a-9c3e-4eca-9b0e-64ff71d22ecd.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;bcp.DisplayCode = False&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/fu0p5Q3zXFA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/fu0p5Q3zXFA/6f815b8a-9c3e-4eca-9b0e-64ff71d22ecd.aspx</link>
      <pubDate>Wed, 28 Mar 2012 17:08:21 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/6f815b8a-9c3e-4eca-9b0e-64ff71d22ecd.aspx</feedburner:origLink></item>
    <item>
      <title>SetHeaderAndCache</title>
      <description>Description: 	/// &lt;summary&gt;
	/// This will make the browser and server keep the output
	/// in its cache and thereby improve performance.
	/// &lt;/summary&gt;
	private void Set&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/52134d41-dbdc-48cf-8a4e-9099f66e9baa.aspx'&gt;http://www.codekeep.net/snippets/52134d41-dbdc-48cf-8a4e-9099f66e9baa.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;	private void SetHeadersAndCache(string file, HttpContext context)
	{
		//context.Response.ContentType = &amp;quot;text/javascript&amp;quot;;
		context.Response.AddFileDependency(file);
		context.Response.Cache.VaryByHeaders[&amp;quot;Accept-Language&amp;quot;] = true;
		context.Response.Cache.VaryByHeaders[&amp;quot;Accept-Encoding&amp;quot;] = true;
		context.Response.Cache.SetLastModifiedFromFileDependencies();
		context.Response.Cache.SetExpires(DateTime.Now.AddDays(7));
		context.Response.Cache.SetValidUntilExpires(true);
		context.Response.Cache.SetCacheability(HttpCacheability.Public);
	}
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/BIyFvGvkd5E" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/BIyFvGvkd5E/52134d41-dbdc-48cf-8a4e-9099f66e9baa.aspx</link>
      <pubDate>Tue, 28 Feb 2012 17:27:11 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/52134d41-dbdc-48cf-8a4e-9099f66e9baa.aspx</feedburner:origLink></item>
    <item>
      <title>Creating table in teradat when one column is derived from other column</title>
      <description>Description: when few columns are derived&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/d8b36769-8464-4e83-a869-d7f9596479a8.aspx'&gt;http://www.codekeep.net/snippets/d8b36769-8464-4e83-a869-d7f9596479a8.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;create table  TBNAME as
(Select emp_num, manager_employee_number, job_code, last_name, first_name, 
salary, salary+5 (NAMED salary1), 
salary1*2 (NAMED salary2)
From DBNAME.TBNAME
where salary2 &amp;gt;2000 ) with data 
PRIMARY INDEX (emp_num) ;&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/HR6hi2w3xTM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/HR6hi2w3xTM/d8b36769-8464-4e83-a869-d7f9596479a8.aspx</link>
      <pubDate>Fri, 03 Feb 2012 10:11:14 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/d8b36769-8464-4e83-a869-d7f9596479a8.aspx</feedburner:origLink></item>
    <item>
      <title>to get ther table disk size </title>
      <description>Description: to get ther table disk size of all the tables in that specific database in GBs, can be converted to MB by reducing on 1024 division&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/b002350d-d75d-4697-9483-876af53841d6.aspx'&gt;http://www.codekeep.net/snippets/b002350d-d75d-4697-9483-876af53841d6.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;Select tablename, sum(currentperm)/1024/1024/1024 as TableSize from dbc.tablesize
where databasename = 'DBNAME'
group by tablename;

&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/_Am_vvXJrOM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/_Am_vvXJrOM/b002350d-d75d-4697-9483-876af53841d6.aspx</link>
      <pubDate>Fri, 03 Feb 2012 10:07:58 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/b002350d-d75d-4697-9483-876af53841d6.aspx</feedburner:origLink></item>
    <item>
      <title>NOT ALLOWED SPECECAL CHARACTER USING JAVA SCRIPT WITH REGULAR EXPRESSION</title>
      <description>Description: NOT ALLOWED SPECECAL CHARACTER USING JAVA SCRIPT WITH REGULAR EXPRESSION&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/66d74292-1341-4428-a7ad-384c21e9f122.aspx'&gt;http://www.codekeep.net/snippets/66d74292-1341-4428-a7ad-384c21e9f122.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;NOT ALLOWED SPECECAL CHARACTER USING JAVA SCRIPT WITH REGULAR EXPRESSION&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/91On5VphcJw" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/91On5VphcJw/66d74292-1341-4428-a7ad-384c21e9f122.aspx</link>
      <pubDate>Thu, 02 Feb 2012 14:30:40 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/66d74292-1341-4428-a7ad-384c21e9f122.aspx</feedburner:origLink></item>
    <item>
      <title>IIf function </title>
      <description>Description: IIf function for web pages&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/42aae042-c3ba-4c45-92a6-c366cccbfa35.aspx'&gt;http://www.codekeep.net/snippets/42aae042-c3ba-4c45-92a6-c366cccbfa35.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;    Function iif(ByVal psdStr, ByVal trueStr, ByVal falseStr)
        If psdStr Then
            iif = trueStr
        Else
            iif = falseStr
        End If
    End Function&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/BNL5YwaxHhY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/BNL5YwaxHhY/42aae042-c3ba-4c45-92a6-c366cccbfa35.aspx</link>
      <pubDate>Thu, 15 Dec 2011 06:09:42 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/42aae042-c3ba-4c45-92a6-c366cccbfa35.aspx</feedburner:origLink></item>
    <item>
      <title>py2exe</title>
      <description>Description: Errors encountered running python executable built with py2exe.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/106d1ac7-8e38-4769-ba32-0a4ba3e6ffd2.aspx'&gt;http://www.codekeep.net/snippets/106d1ac7-8e38-4769-ba32-0a4ba3e6ffd2.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;Errors:

pyodbc:  additional configuration required to include decimal package;  running the executable version produces the error: RuntimeError: Unable to import decimal
http://www.py2exe.org/index.cgi/PyODBC
setup(
    ...
    options = {
        'py2exe': {
            'includes': 'decimal',
            },
        },
    ...
    )

__file__:  NameError: name '__file__' is not defined
http://www.pyweek.org/d/746/
try:
    libdir = os.path.abspath(os.path.join(os.path.dirname(__file__), 'lib'))
    sys.path.insert(0, libdir)
except:
    # probably running inside py2exe which doesn't set __file__
    pass

&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/4zMOxdBMVEg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/4zMOxdBMVEg/106d1ac7-8e38-4769-ba32-0a4ba3e6ffd2.aspx</link>
      <pubDate>Mon, 17 Oct 2011 15:47:09 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/106d1ac7-8e38-4769-ba32-0a4ba3e6ffd2.aspx</feedburner:origLink></item>
    <item>
      <title>Determine if string is numeric or not</title>
      <description>Description: Determine if string is numeric or not&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/3342cd68-ab08-440c-b6bc-a3a90cfa1b61.aspx'&gt;http://www.codekeep.net/snippets/3342cd68-ab08-440c-b6bc-a3a90cfa1b61.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;This should give you back all rows where at least one character in the character string is numeric.
SELECT * FROM TABLENAME
WHERE COLUMNNAME LIKE ALL ('%0%', '%1%', '%2%', '%3%', '%4%', '%5%', '%6%', '%7%', '%8%', '%9%', '%0%');
----------------------

SELECT 
--CASE WHEN account_status = 'Active Account' OR NOT account_number  LIKE ALL ('%0%', '%1%', '%2%', '%3%', '%4%', '%5%', '%6%', '%7%', '%8%', '%9%', '%0%')  THEN 'is only numbers'   ELSE 'is not only numbers' END
CASE WHEN account_status = 'Account Active' AND account_number IS NOT NULL AND LENGTH(account_number) = 8 AND account_number LIKE ALL ('%0%', '%1%', '%2%', '%3%', '%4%', '%5%', '%6%', '%7%', '%8%', '%9%', '%0%') THEN 1 ELSE 0 END AS Correct
,CASE WHEN account_status &amp;lt;&amp;gt; 'Account Active' OR account_number IS  NULL OR LENGTH(account_number) &amp;lt;&amp;gt; 8 OR NOT account_number  LIKE ALL ('%0%', '%1%', '%2%', '%3%', '%4%', '%5%', '%6%', '%7%', '%8%', '%9%', '%0%') THEN 1 ELSE 0 END AS Incorrect
FROM  t_account&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/T5HHacMWHS4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/T5HHacMWHS4/3342cd68-ab08-440c-b6bc-a3a90cfa1b61.aspx</link>
      <pubDate>Mon, 10 Oct 2011 07:34:50 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/3342cd68-ab08-440c-b6bc-a3a90cfa1b61.aspx</feedburner:origLink></item>
    <item>
      <title>Guideline for Code Optimization</title>
      <description>Description: Guideline for Code Optimization&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/c37c5c1d-71e5-4514-9a49-cf90bbb274aa.aspx'&gt;http://www.codekeep.net/snippets/c37c5c1d-71e5-4514-9a49-cf90bbb274aa.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;This document is copyright protected in content, presentation, and intellectual origin, except where noted otherwise. You may not modify, remove, augment, add to, publish, transmit, participate in the transfer or sale of, create derivative works from, or in any way exploit any of the elements of this document, in whole or in part without prior written permission from eClerx Services Ltd. &amp;#169; 2010 2011.
 
Table of Contents
1.	Best Practices and Code Optimization	3
2.	Revision History	5
 
1.	Best Practices and Code Optimization 
1.	Group all framework namespaces together and put custom or third party namespaces underneath
2.	Group all framework namespaces together and put custom or third party namespaces underneath
3.	Avoid having multiple namespaces in a single file. A single file should contribute type to a single namespace.
4.	Avoid interfaces with one member or more than 20 members
An interface represents an entity and having only one member in it defeats the purpose of having it. Interface are generally used when we have to implement multiple inheritance, so if we have to have only 1 member in the base class, then its better not to have it in the base class and declare it in the derived class itself. So its recommended to use it if there are more than 20 members.
5.	All member variables should be declared at the top with one line separating them from methods and properties
6.	Variables should be declared in logical groups. Suitable comments should also be given.
7.	Values should be ideally be assigned at the place of declaration
8.	Avoid multiple variable declarations on the same line
9.	Declare variables close to their first place of use
10.	Always use C#/VB.Net predefined types rather than the aliases in the system namespace. 
E.g. Use int instead of Int32.
11.	Global variables should be avoided as far as possible
12.	The expressions should be as simple and restricted to a single line if possible. Complicated expressions should be split into simpler expressions and temporary variables.
13.	Boolean expressions containing constant should use the variable as the leading component
E.g. if (temp = 1) should be used instead of if (1 = temp)
14.	The ternary conditional operator (?) should not be nested
15.	If there are several conditions, have one condition on every line
16.	Using actual size for data rather than some default size increases performance up to 50%
17.	For loop is twice faster than for each loop
18.	ReaderWriterLock is 20 times slower than lock
19.	Use Page.IsPostback to avoid unnecessary processing on a round trip
20.	Turn OFF ViewState if not being used. The ViewState is configured at three levels which results in slow performance of the application, when it is turned ON.
21.	Minimize the amount and complexity of data stored in a session state. The larger and complex the data is, the higher the cost of serializing or deserializing of data.
22.	Disable the Session when it is not using. This can be done at the application level in the "Machine.Config" file or at a page level.
23.	Use SERVER.TRANSFER rather than Response. Redirect, if the Webpage is present in the same application. This makes the communication faster.
24.	Use Exceptions in the code where necessary. Exceptions reduce performance. Do not catch the exception itself before handling the condition.
25.	Cache data and page output whenever possible
26.	Disable DEBUG mode before deploying the application
27.	Do a "PRE-BATCH" compilation. To achieve this, request a page from the site. Avoid making changes to pages or assemblies that are there in the bin directory of the application. A changed page will only recompile the page. Any change to the bin directory will result in recompile of the entire application.
28.	Use ASP.NET TRACE feature for efficient debugging instead of RESPONSE.WRITE
29.	Use Server Controls in appropriate circumstances. Since ,they are expensive because they are server resources even though are they are very easy to implement.
30.	IN-PROC option will provide better performance. SQL Server option provides more reliability.
31.	Release the native resources as soon as the usage is over. This will reduce performance issues, since by nature GC release them at a later point. This results in appropriate utilization of resources by the other Requests.


2.	Revision History
Version and Release	Prepared/
Change Date	Prepared/
Changed by	Reason for Change
1.0	September 10, 2007	Pradeep Bangera	?	Initial version
1.1	February 18, 2008	Pradeep Bangera	?	Information regarding version and date created deleted from header

&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/4xsVKor22eA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/4xsVKor22eA/c37c5c1d-71e5-4514-9a49-cf90bbb274aa.aspx</link>
      <pubDate>Wed, 05 Oct 2011 05:43:10 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/c37c5c1d-71e5-4514-9a49-cf90bbb274aa.aspx</feedburner:origLink></item>
    <item>
      <title>Project Management</title>
      <description>Description: Project Management&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/755a2a49-7c35-48bf-ad83-d9fcf5336371.aspx'&gt;http://www.codekeep.net/snippets/755a2a49-7c35-48bf-ad83-d9fcf5336371.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;This document is copyright protected in content, presentation, and intellectual origin, except where noted otherwise. You may not modify, remove, augment, add to, publish, transmit, participate in the transfer or sale of, create derivative works from, or in any way exploit any of the elements of this document, in whole or in part without prior written permission from eClerx Services Ltd. &amp;#169; 2010 2011.
 
Table of Contents
1.	Introduction	3
1.1.	Purpose	3
1.2.	Abbreviations	3
1.3.	Stakeholders, Roles and Responsibilities	3
1.4.	Training and Resource Required	4
1.5.	Templates Required	4
1.6.	Guidelines/Checklists to be Referred	4
2.	Procedure	6
2.1.	Entry Criteria	6
2.2.	Information Inputs	6
2.3.	Tasks	6
2.4.	Process Output	9
2.5.	Verification	9
2.6.	Measurements	9
2.7.	Exit Criteria	9
3.	Revision History	10
 
1.	Introduction
1.1.	Purpose
To ensure software projects are planned, executed and monitored to meet the agreed upon deliverable dates. Also, manage the project and the stake of all relevant individuals.
1.2.	Abbreviations
Sr. No.	Abbreviation	Elaboration
1	PM	Project Manager
2	PL	Project Leader
3	PPQA	Project Planning Quality Assurance
4	SEPG	Software Engineering Process Group
5	WBS	Work Breakdown Structure (Document)
6	EE	Effort Estimation (Document)
7	MOM	Minutes of Meeting (Document)
8	PP	Project Plan (Document)
9	BRD	Business Requirement Document
10	SOW	Scope of Work
11	VSS	Visual SourceSafe (Application)
12	PAL	Process Asset Library
13	SCMP	Software Configuration Management Plan
14	TL	Team Lead
1.3.	Stakeholders, Roles and Responsibilities
Sr. No.	Stakeholder Role	Responsibility
1	PM	?	Planning, executing and closing the project
2	PL	?	Successful execution of the project
3	PPQA	?	Audits processes and products of project
4	Client	?	Sponsors and initiates the project
5	Resource Manager	?	Resource requirements of the project are met
6	Training Manager	?	Responsible for project-specific training needs
7	SEPG	?	Provides process guidance throughout the project
8	Head-IT	?	Reviews project activities
9	Team Lead	?	Monitoring on-going projects in the team
1.4.	Training and Resource Required
Training:
?	Project Management Training
?	Time Tracker Tool Training 
?	Microsoft Project Tool Training
?	Soft Skills Training 
?	Training Tool Training
?	Measurement and Analysis Training
?	Life Cycle Models
Resource Required:
?	VSS
?	Time Tracker
?	Microsoft Project
?	Microsoft Office
?	Training Tool
1.5.	Templates Required
?	PROJECT PLAN_TMPL 
?	ESTIMATION_TMPL
?	MOM_TEMPLATE_STANDARD
?	PROJECT STATUS DASHBOARD_TMPL
?	PROJECT CLOSURE_TMPL 
?	PROJECT TRACKER_TMPL 
?	PPQA REQUISITION FORM_TMPL
1.6.	Guidelines/Checklists to be Referred
Guidelines
?	PROJECT MANAGEMENT_GUIDELINE
?	TAILORING_GUIDELINE
?	EFFORT ESTIMATION GUIDELINE
?	MA_GUIDELINE
?	RISK_GUIDELINE
?	TESTING_GUIDELINE
?	RELEASE_GUIDELINE
?	RISK TAXONOMY
Checklists
?	PROJECT KICKOFF_CHKL
?	PROJECT PLAN REVIEW_CHKL
?	PROJECT STATUS REVIEW_CHKL
?	PROJECT CLOSURE_CHKL 
?	MEASUREMENT DATA VALIDATION_CHKL


2.	Procedure
2.1.	Entry Criteria
?	BRD submission/SOW Agreement
2.2.	Information Inputs
?	BRD/SOW
2.3.	Tasks
Initiating
1.	The need of automation is expressed by client during monthly roadmap meetings or through emails
2.	BRD is submitted by the client with high level requirements
3.	SPM++ assigns PM and BA to scope the client requirements in detail
4.	Project is created in the PMS tool and new database is created in VSS to facilitate configuration management
5.	PM prepares draft project plan with tentative estimates of scoping period
6.	During the scoping period BA meets client to understand and elaborate the requirements
7.	PM reviews the requirements (i.e. BRD) and approves
Planning, Estimation and WBS
8.	As per the approved BRD, PM shall prepare the project plan
9.	The PM selects life cycle as per the nature of development. In case of any deviation from defined life cycle, tailoring is taken and approval is sought from SEPG. 
10.	Effort is estimated for each activity and for the entire project through effort estimation tab in the PRJMGMT_WB
11.	WBS is prepared for each phase with activity, sub-activity and available resources and uploaded on PMS. The 'Prj. Schedule &amp;amp; Effort' tab displays the schedule for each phase and effort estimated for each activity. 
12.	Effort estimation can also be an expert judgment based on historical data. In this case, tailoring request is logged on tailoring request portal and approval of SEPG is sought.
13.	The project plan also contains:
a.	Stakeholder matrix with names, their interest/stake, and their involvement/
responsibility in the project
b.	Training plan for required competency and skill to accomplish the project successfully
c.	Communication plan with details of sender, recipient, frequency of communication, template to be used, and need for communication
d.	Data management plan with details of data source, purpose, and backup location. Project related data is stored in VSS with appropriate access to relevant stakeholders.
e.	Risk plan containing initially identified risks and their score
f.	Review Plan is prepared with all the work products that are to be reviewed with a specific review method and reviewer name
g.	Measurement plan contains all the org. objectives and the frequency of measurement. The metrics tab contains all the base measures and derived metrics.
h.	DAR plan is prepared with the possible event that may come up in project. Reuse plan shows the modules being reused and their functionality.
i.	Design strategy is made with the basic level of design to be adopted for the project. Modules other than the basic design level are mentioned second section. 
j.	Project monitoring is planned by mentioning the events and escalation scenarios. Release plan is prepared by mentioning all the events where the work products are released to the client.
k.	Test plan is prepared for all the testing activities in the project with details of entry exit criteria, tasks to be performed, environment, tools to be used and the tester name
l.	Work environment standards that are required to complete the project
14.	The entire project plan is reviewed and approved by TL. The plan is then baselined for monitoring and controlling and to track actual schedule against the planned.
15.	PPQA is assigned to the project, by lead PPQA, after requisition mail from PM. The approved project plan is used by PPQA to prepare audit plan for the project.
16.	PM conducts the project kick-off meeting where-in all stakeholders are invited. The timelines and effort required are discussed and the commitment is obtained. 
17.	All project related documents are kept in VSS with appropriate access control. VSS structure is defined in VSS structure guidelines
Monitoring and Controlling
18.	The project progress is monitored through planned and actual schedule, estimated effort and actual effort spent at every phase end meeting
19.	Corrective actions are taken for schedule and effort variances and the stakeholders are communicated accordingly
20.	The project status is also reviewed during the Senior Management/phase end meetings and through unplanned review meetings. MOMs are prepared and communicated to all relevant stakeholders. 
21.	The risks that were identified are monitored through phase end project meetings and are 
re-evaluated frequently. The stakeholder commitment and involvement related issues are also identified and monitored through risk register/issue tracker. 
22.	Materialized risks are tracked and resolved through project issue tracker
23.	Any issue related to project and project data is analyzed, tracked and resolved through project issue tracker
 
Audits
24.	PPQA audits happen after every phase. In addition to these audits, start and project closure audit shall also be conducted by PPQA.
25.	IS team conducts following audits:
a.	Pre-dev IS Audit
b.	Pre-UAT 
c.	Pre-Live
Project Closure
26.	Once the client acceptance is obtained on UAT, the application/tool is delivered as per requirement
27.	The acknowledgement of live porting is obtained from the client
28.	Project's actual size is calculated by taking into considerations the change requests accepted and their impacts on size
29.	The PM shall update Project Closure Report (PCR) with following information
a.	Lessons learned
b.	Best practices
c.	Justification/observations/corrective actions for the deviations observed in measurement objective
30.	Filled up customer satisfaction form is obtained from the client
31.	All project artifacts are updated for completeness and submitted to SEPG. On receipt of the same, the SEPG shall send the acknowledgement to project team. 
32.	All project artifacts are uploaded to Project Asset Library (PAL) by SEPG or assigned person
33.	SEPG shall evaluate the findings of the project and determine if they need to be included in asset library. Following are the sample criteria of selection:
a.	Uniqueness of implementation methodology
b.	Complexity of the project
34.	PM shall send the PPQA feedback to head PPQA
35.	PM/PL shall close the project in PMS tool
36.	In cases where the project needs to be put on hold due to various environmental factors, the PM/PL shall set the status of the project 'on hold'. The project will be re-planned and initiated as per the priority set by the client.
37.	In case where the project needs to be abruptly closed due to various environmental factors, the PM/PL shall set the status of the project 'halted'. The PM/PL shall complete relevant project closure activities.

2.4.	Process Output
?	Approved project plan
?	Project Closure Report
?	Project Metrics
?	Risk and Issue Tracker
2.5.	Verification
?	Review by Sr. Manager during PER meetings
?	Project plan review
?	PPQA process and product audit of initiation phase
2.6.	Measurements
?	Project Planning Effort
2.7.	Exit Criteria 
?	Project Closure
3.		Revision History
Version and Release	Prepared/
Change Date	Prepared/
Changed by	Reason for Change
D01	February 7, 2007	Vinay Wankhede	?	Document under review
1.0	March 10, 2007	Nitish Shukla	?	Initial release
1.1	May 24, 2007	Vinay Wankhede, Nitish Shukla	?	Training Section modified
?	Procedure name corrected in the header
1.2	August 28, 2007	Sharadchandra/Datar	?	Section 1.5 modified
?	Section 1.6 maintenance related guidelines deleted
?	Section 2.3 Task 19 related to maintenance deleted
?	Old eClerx logo replaced with new
1.3	October 22, 2007	Vinay/Datar	?	Task 2.3 activity 13 modified
1.4	February 8, 2008	Sharadchandra Adepu	?	The section 2.3 Tasks 10, 13 and 14 modified
?	The section 2.3 Tasks 1,2,3,6, 16, 21 and 22 added 
?	Project audits added
?	Information regarding version and date created deleted from header
1.5	October 1, 2008	Vinay Wankhede	?	Added Team Lead role in section 1.3
1.6	September 7, 2010	Sharadchandra Adepu	?	Added section 3
?	Updated section 2.3
1.7	November 22, 2010	Sharadchandra Adepu	?	Addressed review comments obtained in gap analysis

&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/YGj-K84gcPk" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/YGj-K84gcPk/755a2a49-7c35-48bf-ad83-d9fcf5336371.aspx</link>
      <pubDate>Wed, 05 Oct 2011 05:34:50 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/755a2a49-7c35-48bf-ad83-d9fcf5336371.aspx</feedburner:origLink></item>
    <item>
      <title>Extension to get timestamp</title>
      <description>Description: Get timestamp from a column&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/815f5e20-b3ba-4751-b215-df4d66dc786e.aspx'&gt;http://www.codekeep.net/snippets/815f5e20-b3ba-4751-b215-df4d66dc786e.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;        &amp;lt;System.Runtime.CompilerServices.Extension()&amp;gt; _
        Public Function GetTimestamp(ByVal dataReader As SafeDataReader, ByVal name As String) As Byte()
            Dim buffer As Byte() = New Byte(7) {}

            If dataReader IsNot Nothing Then
                dataReader.GetBytes(name, 0, buffer, 0, 8)
            End If

            Return buffer
        End Function&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/AY9H-TRgp6o" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/AY9H-TRgp6o/815f5e20-b3ba-4751-b215-df4d66dc786e.aspx</link>
      <pubDate>Tue, 27 Sep 2011 13:05:37 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/815f5e20-b3ba-4751-b215-df4d66dc786e.aspx</feedburner:origLink></item>
    <item>
      <title>Open a javascript window and center it</title>
      <description>Description: Open a javascript window and center it&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/74fde85d-9cd7-4840-920d-c088c6c17069.aspx'&gt;http://www.codekeep.net/snippets/74fde85d-9cd7-4840-920d-c088c6c17069.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;&amp;lt;script&amp;gt;
function PopupCenter(pageURL, title,w,h) {
var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
var targetWin = window.open (pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
} 
&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/7ZB4XU8MH6U" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/7ZB4XU8MH6U/74fde85d-9cd7-4840-920d-c088c6c17069.aspx</link>
      <pubDate>Thu, 01 Sep 2011 08:33:12 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/74fde85d-9cd7-4840-920d-c088c6c17069.aspx</feedburner:origLink></item>
    <item>
      <title>jQuery selector to select all elements except one div</title>
      <description>Description: jQuery selector to select all elements except one div&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/3af9016e-9b99-49e5-ba2d-d40f5ac401e8.aspx'&gt;http://www.codekeep.net/snippets/3af9016e-9b99-49e5-ba2d-d40f5ac401e8.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;Use : $(&amp;quot;*&amp;quot;, &amp;quot;body&amp;quot;).not(&amp;quot;#divname&amp;quot;).click(function() {

(please note divname is the ID of the div not necessarily the name)

Test page :

&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;
&amp;lt;script src=&amp;quot;http://code.jquery.com/jquery-1.6.1.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script&amp;gt;
	$(document).ready(function() {
		$(&amp;quot;*&amp;quot;, &amp;quot;body&amp;quot;).not(&amp;quot;#divname&amp;quot;).click(function() {
			alert('haha');
		});
	});
&amp;lt;/script&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;div id=&amp;quot;div1&amp;quot;&amp;gt;DIV1&amp;lt;/div&amp;gt;
&amp;lt;a id=&amp;quot;a1&amp;quot; href=&amp;quot;javascript:void(0)&amp;quot;&amp;gt;EE&amp;lt;/a&amp;gt;
&amp;lt;div id=&amp;quot;divname&amp;quot;&amp;gt;DIVNAME&amp;lt;/div&amp;gt;
&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/rOINxt9INzA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/rOINxt9INzA/3af9016e-9b99-49e5-ba2d-d40f5ac401e8.aspx</link>
      <pubDate>Tue, 28 Jun 2011 15:53:27 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/3af9016e-9b99-49e5-ba2d-d40f5ac401e8.aspx</feedburner:origLink></item>
    <item>
      <title>Inhabilitar el botón de retroceso/atrás en android</title>
      <description>Description: Inhabilitar el botón de retroceso/atrás en android&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/166b4935-9cc5-48f8-9bfc-c88c711687bc.aspx'&gt;http://www.codekeep.net/snippets/166b4935-9cc5-48f8-9bfc-c88c711687bc.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;// asi se controla el boton de retroceso

	public void onBackPressed() {
	   return;
	}&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/P3NWzkPfX14" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/P3NWzkPfX14/166b4935-9cc5-48f8-9bfc-c88c711687bc.aspx</link>
      <pubDate>Fri, 17 Jun 2011 17:14:51 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/166b4935-9cc5-48f8-9bfc-c88c711687bc.aspx</feedburner:origLink></item>
    <item>
      <title>Convert datatable to json</title>
      <description>Description: Convert datatable to json in c#&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/f197e091-605e-477e-a306-13676956a810.aspx'&gt;http://www.codekeep.net/snippets/f197e091-605e-477e-a306-13676956a810.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;    public string GetJson(DataTable dt)
    {
        System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
        List&amp;lt;Dictionary&amp;lt;string, object&amp;gt;&amp;gt; rows = new List&amp;lt;Dictionary&amp;lt;string, object&amp;gt;&amp;gt;();
        Dictionary&amp;lt;string, object&amp;gt; row = null;

        foreach (DataRow dr in dt.Rows)
        {
            row = new Dictionary&amp;lt;string, object&amp;gt;();
            foreach (DataColumn col in dt.Columns)
            {
                row.Add(col.ColumnName, dr[col]);
            }
            rows.Add(row);
        }
        return serializer.Serialize(rows);
    }&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/M8do81sb0Kk" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/M8do81sb0Kk/f197e091-605e-477e-a306-13676956a810.aspx</link>
      <pubDate>Sat, 04 Jun 2011 01:40:27 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/f197e091-605e-477e-a306-13676956a810.aspx</feedburner:origLink></item>
    <item>
      <title>Convert datatable to json</title>
      <description>Description: Convert datatable to json in c#&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/0073f85e-e31a-4a27-b8b1-5d02c25a1615.aspx'&gt;http://www.codekeep.net/snippets/0073f85e-e31a-4a27-b8b1-5d02c25a1615.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;    public string GetJson(DataTable dt)
    {
        System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
        List&amp;lt;Dictionary&amp;lt;string, object&amp;gt;&amp;gt; rows = new List&amp;lt;Dictionary&amp;lt;string, object&amp;gt;&amp;gt;();
        Dictionary&amp;lt;string, object&amp;gt; row = null;

        foreach (DataRow dr in dt.Rows)
        {
            row = new Dictionary&amp;lt;string, object&amp;gt;();
            foreach (DataColumn col in dt.Columns)
            {
                row.Add(col.ColumnName, dr[col]);
            }
            rows.Add(row);
        }
        return serializer.Serialize(rows);
    }&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/LqKZ_4FOwsM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/LqKZ_4FOwsM/0073f85e-e31a-4a27-b8b1-5d02c25a1615.aspx</link>
      <pubDate>Sat, 04 Jun 2011 01:38:08 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/0073f85e-e31a-4a27-b8b1-5d02c25a1615.aspx</feedburner:origLink></item>
    <item>
      <title>v</title>
      <description>Description: b&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/9897b6ea-90ca-40a7-bbe7-88ae54e60c73.aspx'&gt;http://www.codekeep.net/snippets/9897b6ea-90ca-40a7-bbe7-88ae54e60c73.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;{
	PKI_FORMATS_TRY()

	return TRUE;

	PKI_FORMATS_CATCH_BOOL()
}
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/cUYfVYoyyes" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/cUYfVYoyyes/9897b6ea-90ca-40a7-bbe7-88ae54e60c73.aspx</link>
      <pubDate>Thu, 02 Jun 2011 13:11:13 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/9897b6ea-90ca-40a7-bbe7-88ae54e60c73.aspx</feedburner:origLink></item>
    <item>
      <title>connectionstring</title>
      <description>Description: connectionstring&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/5de36b48-aee6-40a7-a79c-2b98ec2beefc.aspx'&gt;http://www.codekeep.net/snippets/5de36b48-aee6-40a7-a79c-2b98ec2beefc.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;MSAccess
&amp;lt;connectionStrings&amp;gt; 
    &amp;lt;remove name=&amp;quot;AccessFileName&amp;quot;/&amp;gt; 
    &amp;lt;add name=&amp;quot;AccessFileName&amp;quot; connectionString=&amp;quot;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=~/App_Data/ASPNetDB.mdb&amp;quot; providerName=&amp;quot;System.Data.OleDb&amp;quot;/&amp;gt; 
&amp;lt;/connectionStrings&amp;gt; 

&amp;lt;connectionStrings&amp;gt; 
    &amp;lt;remove name=&amp;quot;AccessFileName&amp;quot;/&amp;gt; 
    &amp;lt;add name=&amp;quot;AccessFileName&amp;quot; connectionString=&amp;quot;~/App_Data/ASPNetDB.mdb&amp;quot; providerName=&amp;quot;System.Data.OleDb&amp;quot;/&amp;gt; 

mySQL
&amp;lt;connectionStrings&amp;gt; 
    &amp;lt;add name=&amp;quot;MySQLConnectionString&amp;quot; connectionString=&amp;quot;server=LHYPartsDB.db.#######.hostedresource.com; user id=LHYPartsDB; password=mypassword; database=LHYPartsDB; pooling=false;&amp;quot; 
      providerName=&amp;quot;System.Data.SqlClient&amp;quot; /&amp;gt; 
&amp;lt;/connectionStrings&amp;gt; 
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/eNyPO2mR7Co" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/eNyPO2mR7Co/5de36b48-aee6-40a7-a79c-2b98ec2beefc.aspx</link>
      <pubDate>Fri, 06 May 2011 09:05:07 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/5de36b48-aee6-40a7-a79c-2b98ec2beefc.aspx</feedburner:origLink></item>
    <item>
      <title>Display background bitmap image for any Windows dialog box.</title>
      <description>Description: Display background bitmap image for any Windows dialog box.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/25644fb6-60a8-4fd8-948a-4b90fd308893.aspx'&gt;http://www.codekeep.net/snippets/25644fb6-60a8-4fd8-948a-4b90fd308893.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;// Display background bitmap image for any Windows dialog box.
// Assumes dialog box has been created in your favorite resource editor (Visual Studio etc.)
// Assumes you have sized your bitmap and imported it as a resource called IDB_BITMAP1
// The Dialog box is also nicely centered on the screen by the code in WM_INITDIALOG:


//----------------- Function prototype for the top of your Windows app. ------------

LRESULT CALLBACK  Picture(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);


//--------------------------- &amp;quot;Picture&amp;quot; (Actual Dialog Function) ------------------------

LRESULT CALLBACK Picture(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
  RECT rc;
  HDC hdc;
  HDC hMemoryDC;
  PAINTSTRUCT ps;
  HBITMAP hBitmap, hOldBitmap;

  switch (message)
  {
    case WM_INITDIALOG:
    {
      RECT rc;
      GetWindowRect(hDlg, &amp;amp;rc); 
      SetWindowPos(hDlg, NULL, 
         ((GetSystemMetrics(SM_CXSCREEN) - (rc.right - rc.left)) / 2),
              ((GetSystemMetrics(SM_CYSCREEN) - (rc.bottom - rc.top)) / 2),
                     0, 0, SWP_NOSIZE | SWP_NOACTIVATE);
      return TRUE;
    }
        
    case WM_PAINT:
    {
      hdc = BeginPaint(hDlg, &amp;amp;ps);
      hBitmap = LoadBitmap(hInst, (LPCWSTR)IDB_BITMAP1);
      
      hMemoryDC = CreateCompatibleDC(hdc);
      hOldBitmap = (HBITMAP) SelectObject(hMemoryDC, hBitmap);
      GetClientRect(hDlg, &amp;amp;rc);
      BitBlt(hdc, rc.left, rc.top, rc.right, rc.bottom,  hMemoryDC, 0, 0, SRCCOPY);
      SelectObject(hMemoryDC, hOldBitmap);                                  
      DeleteDC(hMemoryDC);
      
      EndPaint(hDlg, &amp;amp;ps);

      break;
    }

   case WM_COMMAND:
    {
      if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) 
       {
         EndDialog(hDlg, LOWORD(wParam));
         return TRUE;
       }
       break;
     }
  }
  return FALSE;
}
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/BA_oZ_jea9c" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/BA_oZ_jea9c/25644fb6-60a8-4fd8-948a-4b90fd308893.aspx</link>
      <pubDate>Sun, 01 May 2011 15:06:15 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/25644fb6-60a8-4fd8-948a-4b90fd308893.aspx</feedburner:origLink></item>
    <item>
      <title>C# ???? ??</title>
      <description>Description: ??&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/d5c1e22c-a475-4610-bace-265559f6c4be.aspx'&gt;http://www.codekeep.net/snippets/d5c1e22c-a475-4610-bace-265559f6c4be.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;/// &amp;lt;summary&amp;gt;

/// 2011.04.25 add by ajs yyyyMMddHHmmss ??? yyyy-MM-dd HH:mm:ss ???? ??
/// &amp;lt;/summary&amp;gt;
/// &amp;lt;param name=&amp;quot;pDate&amp;quot;&amp;gt;&amp;lt;/param&amp;gt;
/// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;
public static string ConvertDataString(string pDate)
{
    return pDate.Substring(0, 4) + &amp;quot;-&amp;quot; + pDate.Substring(4, 2) + &amp;quot;-&amp;quot; + pDate.Substring(6, 2) + &amp;quot; &amp;quot; + pDate.Substring(8, 2) + &amp;quot;:&amp;quot; + pDate.Substring(10, 2) + &amp;quot;:&amp;quot; + pDate.Substring(12, 2);
}

&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/wrlh-LxsJeE" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/wrlh-LxsJeE/d5c1e22c-a475-4610-bace-265559f6c4be.aspx</link>
      <pubDate>Tue, 26 Apr 2011 00:26:11 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/d5c1e22c-a475-4610-bace-265559f6c4be.aspx</feedburner:origLink></item>
    <item>
      <title>Incrementing AssemblyVersion revision number on each build</title>
      <description>Description: Incrementing AssemblyVersion revision number on each build&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/433a18e8-d1e0-4304-83ad-916c59980b92.aspx'&gt;http://www.codekeep.net/snippets/433a18e8-d1e0-4304-83ad-916c59980b92.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;[assembly: AssemblyVersion(&amp;quot;1.0.0.*&amp;quot;)]&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/jOQPjf9Hcq8" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/jOQPjf9Hcq8/433a18e8-d1e0-4304-83ad-916c59980b92.aspx</link>
      <pubDate>Tue, 19 Apr 2011 00:51:59 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/433a18e8-d1e0-4304-83ad-916c59980b92.aspx</feedburner:origLink></item>
    <item>
      <title>DependencyProperty</title>
      <description>Description: Dependecy Property&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/0d207746-df12-426e-9c70-475c4f7278c8.aspx'&gt;http://www.codekeep.net/snippets/0d207746-df12-426e-9c70-475c4f7278c8.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;public static readonly DependencyProperty MYPROPERTYNAMEProperty =	DependencyProperty.Register(&amp;quot;Stock&amp;quot;,
													typeof(string), typeof(WindowModel),null);

		public string Stock
		{
			get { return (String)GetValue(StockProperty); }
			set { SetValue(StockProperty, value); }
		}&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/SR2hQlVczT4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/SR2hQlVczT4/0d207746-df12-426e-9c70-475c4f7278c8.aspx</link>
      <pubDate>Fri, 01 Apr 2011 18:18:33 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/0d207746-df12-426e-9c70-475c4f7278c8.aspx</feedburner:origLink></item>
    <item>
      <title>Using an anonymous delegate in List&lt;T&gt;.FindAll()</title>
      <description>Description: Using an anonymous delegate in List&lt;T&gt;.FindAll()&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/d8b5182a-5c16-47eb-9efd-0cd7a8a1baa8.aspx'&gt;http://www.codekeep.net/snippets/d8b5182a-5c16-47eb-9efd-0cd7a8a1baa8.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;public class NavEntryList : List&amp;lt;NavEntry&amp;gt;
{
    public List&amp;lt;NavEntry&amp;gt; GetItemsContaining(string text)
    {
        return this.FindAll(delegate(NavEntry nav) { return nav.Title.Contains(text); });
    }
}&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/2vPsGSQB9jI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/2vPsGSQB9jI/d8b5182a-5c16-47eb-9efd-0cd7a8a1baa8.aspx</link>
      <pubDate>Wed, 23 Mar 2011 10:15:33 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/d8b5182a-5c16-47eb-9efd-0cd7a8a1baa8.aspx</feedburner:origLink></item>
    <item>
      <title>Play Sound from Library</title>
      <description>Description: Play a sound file from the library.&lt;br /&gt;&lt;br /&gt;Link: &lt;a href='http://www.codekeep.net/snippets/708abca4-c71b-40c6-831a-7ed07e49bade.aspx'&gt;http://www.codekeep.net/snippets/708abca4-c71b-40c6-831a-7ed07e49bade.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='font-size: 9pt;'&gt;import flash.media.Sound;

//////////////////////////
/////Sound Functions///////
//////////////////////////

function soundPlay():void {
	
	var mySound:Sound = new yourSoundClass();
	var myChannel:SoundChannel = new SoundChannel();
	var myTransform = new SoundTransform();
	var lastPosition:Number = 0;
	myTransform.volume = 0.5;
	myChannel = mySound.play();
	myChannel.soundTransform = myTransform;
	
	}
	&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/CodeKeepActionScript/~4/9VRk278gNgc" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/CodeKeepActionScript/~3/9VRk278gNgc/708abca4-c71b-40c6-831a-7ed07e49bade.aspx</link>
      <pubDate>Tue, 15 Mar 2011 20:49:33 GMT</pubDate>
    <feedburner:origLink>http://www.codekeep.net/snippets/708abca4-c71b-40c6-831a-7ed07e49bade.aspx</feedburner:origLink></item>
  </channel>
</rss>

