ArticleCity.com - free articles for reprint.

SEARCH

SITE MENU

CATEGORIES

Keyword Search


Article Title
Author's Name


Custom Hooks in TierDeveloper
 by: Ann Morris



Custom Hooks is another powerful and most demanding feature provided by TierDeveloper. Custom Hooks work like database triggers. It could be your own business logic that you can activate before or after performing some database action(s). PreHooks and PostHooks are two ways, provided by TierDeveloper, through which you can embed your own logic in the generated code. Pre hook methods are called before the database access is performed whereas post hook methods are called after the database operations are performed.

Custom hooks can be specified wherever database access is performed. It includes standard operations, query methods, bulk operations and custom operations. User can generate skeleton code for custom hooks of the selected methods or he/she can use his/her own hooks class.

For your convenience and better understanding I have listed sample code here which shows how TierDeveloper embed custom hooks in the generated code. It is pretty self-explanatory.

public void UpdateCustomerInfo(Customers objInfo)
{
try
{
... ... .... .......
... ... .... .......

CustomersHooks hooks = new CustomersHooks();
status = hooks.PreUpdateCustomerInfo((System.Data.SqlClient.SqlConnection)getConnection(), objInfo);

if (status != CustomersHooks.SUCCESS_CONTINUE)
{
SetStatus(status == CustomersHooks.FAIL_NONCONTINUE ? EStatus.eFail : EStatus.eSuccess);
ReleaseCommand();
return;
}

AddCmdParameter("@CompanyName", TDevFramework.EDataType.eVarchar, objInfo.CompanyName, TDevFramework.EParamDirection.eInput, objInfo.IsNull("CompanyName"));
... ... .... .......
... ... .... .......
... ... .... .......

ExecuteNonQuery();

status = hooks.PostUpdateCustomerInfo((System.Data.SqlClient.SqlConnection)getConnection(), objInfo);

if (status != CustomersHooks.SUCCESS_CONTINUE)
{
... ... .... .......
... ... .... .......
return;
}

SetStatus(EStatus.eSuccess);
ReleaseCommand();
}
catch (Exception e)
{
... ... .... .......
... ... .... .......
throw e;
}
}

public class CustomersHooks
{
public const int SUCCESS_CONTINUE = 0;
public const int SUCCESS_NONCONTINUE = 1;
public const int FAIL_NONCONTINUE = 2;

public int PreUpdateCustomerInfo( System.Data.SqlClient.SqlConnection Conn, Customers objInfo)
{
//.. .. .. . .. .. 
// . .. .. .. .. Put your own code here
return SUCCESS_CONTINUE;
}

public int PostUpdateCustomerInfo( System.Data.SqlClient.SqlConnection Conn, Customers objInfo)
{
	// .. .. .. .. . .. .. .. 
	//	.. ..	 .. .. put your own code here.
return SUCCESS_CONTINUE;
}
}

About The Author

Ann Morris - I work in a software development Organization and interested in writing technical articles.
ann@alachisoft.com

This article was posted on January 07, 2005

 


How to Create a Sidebar in Adobe Photoshop CS3

Safe Surfing - beginner's guide - #2 - Get protected: Anti-spyware

Understanding Internet Explorer 8 - #2 - Navigation in Internet Explorer 8

Getting to Know Google Chrome - #4 - Dealing with Downloads

 

<< Back to "Web Design And Development" Index


Disclaimer: The information presented and opinions expressed herein are those of the authors
and do not necessarily represent the views of ArticleCity.com and/or its partners.



Search || Bulk Article Submission || Submit An Article || Syndicate Articles
Free Videos || Advertising|| Home || Privacy Policy
Terms of Use || Link To Us || Site Map || Contact Us

This site uses Thumbshots previews