Thursday, July 22, 2010

Barcode Font

Line art drawing of a barcode.Image via Wikipedia


I searched a lot for a barcode to work on most of the devices that reads it. The solution is IDAutomationHC39M.ttf

you can find it on this link, also note you will write the code as follows: *123* to show it properly.
if the reader scans it, it will be 123
Enhanced by Zemanta

Tuesday, February 23, 2010

MS SSIS 2005

The component failed because truncation occurred, and the truncation row disposition on "output column " specifies failure on truncation. A truncation error occurred on the specified object of the specified component.

common error messages when dealing with SSIS. and you google alot to know the answer. some people advise to user derived columns!

but the problem is when initiating the data source itself.

So the answer is pretty simple:

for the field that produce this error, on the output field for this field make it not fail the componenet but rather ignor this error.

Reblog this post [with Zemanta]

Thursday, October 8, 2009

nettiers dynamic search query

I am using nettiers 2.3.0 now in a project and then i faced a problem where i have to make a search function that takes a string and search in each entity of the string fields of it to get the results.

nettiers has a good functions like GetPaged that takes the where clause and search with it. but come on how to make this search with generic code and powerful!!!!

the solution is a magic word, "Reflection"!!! ta da .... you have to make your development framework ideal enough to do that. How?

As I said i am using nettiers this make me support the following: each entity has an interface describes each property. and a good naming convention that I can follow in naming the UI elements such as typed data sources, that nettiers generates, and so i wrote this code...


List<string> lookFor = new List<string>();

Type t = Type.GetType(string.Format("Entities.I{0}, Entities", EntityName));

foreach (PropertyInfo info in t.GetProperties())

{

if (info.PropertyType == Type.GetType("System.String"))

{

lookFor.Add(string.Format(" [{0}] Collate SQL_Latin1_General_CP1_CI_AS like '%{1}%' ", info.Name, txtName.Text));

}

}

string whereClause = string.Join(" OR ", lookFor.ToArray()) ;

DataSourceControl ds = WebFormUtil.GetControlByID(Page.Controls, EntityName + "DataSource") as DataSourceControl;

PropertyInfo filterProperty = ds.GetType().GetProperty("Parameters");

Object collection = filterProperty.GetValue(ds, null);

if (collection is ParameterCollection)

{

((CustomParameter)((ParameterCollection)collection)["WhereClause"]).Value = whereClause;

}

ds.DataBind();


with just the entity name as a variable, and the well formed structure of the tiers and the good structure of the any form that contains a list and a search box this code rocks. I am able to get the typed data source and attach a value to its attributes and finally get works done and generic.

Thanks to Reflection, it made it possible.

Thursday, September 17, 2009

Source Safe Error "File xxxxxxx is already open"

Did you face this error once !!!! I faced it and goggled it. and all the answers were try closing the antivires and download this application to check. and none fix the problem.


The solution I found was simple but takes a long time :( it is Source Safe Admin analyzer. I ran this tool from the Admin. and duh it worked. I can check in files to source safe.

Anyway it is fixed now. :D
Reblog this post [with Zemanta]

Tuesday, April 14, 2009

Entity Framework

Entity framework is designed to separate the usage of the data layer elements like table names columns types, database type, and some added functionalities like super-set and subset.

It is good in the aspects mentioned above. But as Microsoft says, it is not a OR mapper. So, you cant get the benefits of the OR mapper like caching and database column validation, custom load, foreign keys values, and some like that.

All you have is the designer that you can do many things in it. and you have to edit this file for further subclassing conditions value - it saves the hexadecimal value and you have to change it manually, hope it will be solved at the final release- also, you can manage whether this table can be accessed via stored procedure or by generated query - if you select a stored procedure for one function like delete, you have to supply *sp for the rest update, insert :S - It is not complete now. Hope that it will be fixed in the final release. I made a comparison between Entity framework and .net Tier, and I found this



















































Entity Framework
.net Tier

one file contains entities and relations
contains many projects and files to represent the entities and its relations
No. of files generated
you can subclass entities based on condition easily from designer
you have to create the subclass file and modify the super-class manually
Super-class and subclass
entity object references not accessible outside domain [web service, WCF]
entity object accessible anywhere
entity object accessibility
queries accessible via linq and e-sql
accessible via defined functions
data retrieved
select query generated from linq and e-sql
select query defined in sp
select query
using the facade generated class for update and delete and insert, no e-sql
using the sp for all the operations
DML functions

This is all as far as I used the Entity framework. it is good but not as good as hibernate.


*sp: stored procedure
Reblog this post [with Zemanta]

Sunday, March 1, 2009

Javascript Good Stuff

I was reading many blogs, and surfing and I found this video and it is awesome.

It is about the Good parts and Bad parts of the Javascript language. I was shocked for some of the bad parts like 0.1 + 0.2 <> 0.3. check the video for more.


the video url is here
Reblog this post [with Zemanta]

Tuesday, January 27, 2009

Visual Studio Add-on

From alot of projects I figured out that Microsoft is missing a vital addon for its Solution Explorer Pane! that is expand/collapse feature.

This feature is vital when you are working in solutions each one consisting of more than 15 projects each project has folders and sometimes these folders contain folders :(

the problem when you want to reach a file you will manually collapse all those nodes then find your item. the worst thing when you are debugging and opened a file from outside the solution to read something then close it ......................... Visual studio behavior is miserable, it will open all the projects tree nodes, then you want to collapse all of them to focus on the selected node only.

I searched about this add-on and found one http://www.paraesthesia.com/archive/2004/06/25/solvent---power-toys-for-visual-studio-.net.aspx but it is for Visual Studio 2003.

hmmmm, Ok no deal I created one for VS 2005 ta.da.

the link is here
Reblog this post [with Zemanta]