|
Hi, I work in the insurance industry and we are having to go through our code to check for any instances of hard-coding of 5% as the Insurance Tax (IPT) in increasing to 6%.
The increase comes in on 4th January 2011 I think. I've noticed in my initial investigations that we have some hard-coding of the 5% calculations, etc, and some of our tables hold 0.05 as the rating factor, etc.
The problem is the business is online and as it strikes midnight we would have to cater for the IPT increase. We also need to cater for existing business pre-IPT increase in terms of documentation, quotes, etc to leave the 5% in.
Can anybody please recommend what approach they would take to resolve these problems?
Thanks in advance
|
|
|
|
|
Firstly I would remove all of the hard coding and use a commonly defined variable. I would then look at applying the stretegy pattern so the proper tax rate can be applied at the proper time and under the proper circumstances
I know the language. I've read a book. - _Madmatt
|
|
|
|
|
As this is urgent, my advice is to create a static class with the rate defined as a readonly constant, and a static property to define the rate. Point all the hard-coded values at the static class property, then fix your SQL Tables.
After you've fixed it everywhere you'll should be OK for midnight. Tomorrow, start refactoring so the rate is set in one place in the database and the static class retrieves it from the rate table. Don't leave the static class as I have described it.
|
|
|
|
|
I agree with Keith with one extra. Add a field to the rate table defining an effective date for the field and then have the old and new rates both in there. In your static class you only have to write it to pull the correct rate based on the current time and the changeover can happen automagically.
I'm not sure if it is an official development term, but we do that sort of thing all the time here with pricing changes, etc. and call it time-coding.
I wasn't, now I am, then I won't be anymore.
|
|
|
|
|
Thanks for the replies guys, it would be great to have one central table containing the IPT rates and dates effective but this would be extremely difficult to do given there is only 2 developers in the team and the IPT is a rating factor in a few products quote engines.
We also need to cater for the pre-IPT increase customers in terms of documentation and also have to re-quote them as their quotes could potentially be incorrect depending on the cover start date.
|
|
|
|
|
Always fun to get thrown in the fire, isn't it...
You may need this in large quantities.
I wasn't, now I am, then I won't be anymore.
|
|
|
|
|
Danpeking wrote: Thanks for the replies guys, it would be great to have one central table containing the IPT rates and dates effective but this would be extremely difficult to do given there is only 2 developers in the team and the IPT is a rating factor in a few products quote engines.
Not just great, but proper design, and you wouldn't need to face this problem again. If you don't fix this sort of problem properly, you'll spend increasing amounts of time firefighting, as you are doing now.
You are in a triage type situation:
1) Sort the immediate problem
2) contact customer who have need re-quoting,
3) fix the system to handle this kind of change properly, tax rate changes are quite common (normally upwards ).
|
|
|
|
|
Yeah, I agree, it's just a case of small businesses and priorities, etc.
We'll have one central figure if possible, gonna scope how long it will take, etc.
EDIT - We're gonna do it the proper way - static class, bit of work but will be worth it! Thanks for the advice guys!
modified on Thursday, October 28, 2010 6:38 AM
|
|
|
|
|
I want to implement Repository pattern using object based model, bcoz all the code which i get so far is based on linq to sql.So do any body have any link for repository pattern without linq to sql.
|
|
|
|
|
|
I have already viewed both articles and is of no use to me. If you look below article of code project, you will know that code is written for linq to sql but how can i convert it using entlib 5.0 persistence methodology.
<a href="http://www.codeproject.com/KB/architecture/linqrepository.aspx?fid=1382161&df=90&mpp=25&noise=3&sort=Position&view=Quick&fr=26#xx0xx">Implementing the Repository Pattern with LINQ-to-SQL</a>[<a href="http://www.codeproject.com/KB/architecture/linqrepository.aspx?fid=1382161&df=90&mpp=25&noise=3&sort=Position&view=Quick&fr=26#xx0xx" target="_blank" title="New Window">^</a>]
For eg, In the below article for GetAll method of IRepository,
IEnumerable<T> FindAll(Func<T, bool> exp);
same thing i do using entlib 5.0
public static CustomerResponseLogCollection FindAll(int orderID)
{
Database db = EmersonDataHelper.CreateConnection();
CustomerResponseLogCollection customerResponseLogs = new CustomerResponseLogCollection();
var c = db.ExecuteSprocAccessor<CustomerResponseLog>(ConstantsDB.USPGetResponseLogsByOrderID, orderID).ToList();
foreach (CustomerResponseLog item in c)
{
customerResponseLogs.Add(item);
}
return customerResponseLogs;
}
|
|
|
|
|
|
Am totally stuck with an issue.
I have developed a web application using Visual Studio .Net 2005. The problem is that i could see a straight line displayed in the application, However its not due to any code i guess. Since the issue exists only in Windows 7 OS with IE8. For the same OS, there is no such issue when tested in Mozilla Firefox . And the other scenario i noted here is that when i test the application( same code) with these configurations - Windows XP , Firefox/IE8, the issue is not reproduced. Am not able to trace out whether this issue is browser specific, or OS specific or whether the problem with Visual Studio.Net. Please help.
Thanks,
Arudya
|
|
|
|
|
Please post some code! The problem is probably due to rendering quirks between browsers, somtimes borders and alignment go out of whack due to these, it is possible that the line you describe is due to this. Without the markup, we can't tell at all what is going on.
[Edit] see PogoBoy's answer below, he describes the problem better than I have!
|
|
|
|
|
You may have an issue where two elements with a common background are meant to be seamlessly aligned with each other, but in the affected system and browser, the rendering is forcing a pixel or two of spacing between the objects, causing the background to bleed through. This would appear as though a line is rendered, when in reality it is just the background. That is why you won't find it in yourcode directly. If it is a table tag, make sure your cellspacing is explicitly set to 0.
I wasn't, now I am, then I won't be anymore.
|
|
|
|
|
Hi,
I have a form which including different sort of information. for instance, some information is regarding to personal data which related to Table1 and some are for Table2 and the some are for Table3. all this information are in 1 form.
Now, I just wondering to know, when I wanna insert data via Store procedure do I have to write SP for each of them?
is there any approach to insert data with writing just one SP.
|
|
|
|
|
|
future3839 wrote: Now, I just wondering to know, when I wanna insert data via Store procedure do I have to write SP for each of them?
is there any approach to insert data with writing just one SP.
Get the data in parameters and based on their name, in which db you need to insert.
Are you asking something else?
|
|
|
|
|
I'm having visual web developer 2008. I haven't found any masked textbox. How to have masked texbox functionality like (__/__/__).
|
|
|
|
|
You need to download the AJAX control toolkit. There is a MaskedEdit Extender for text boxes:
Masked Edit Control[^]
The toolkit download link is at the top of the page.
|
|
|
|
|
You can use AJAX Control as Keith suggested, or you can try with Masked Textbox[^]
|
|
|
|
|
Hi,
I have a grid with 10K rows
and i'm trying to convert it to datatable.
<br />
First Ex.<br />
DataTable dt = (DataTable)GridViewArgs.DataSource;<br />
<br />
Second Ex.<br />
DataView dataview = (DataView)GridViewArgs.DataSource;<br />
DataTable dt = dataview.Table.Clone();<br />
In both ex. i got an empty datatable (the grid has values).
Can someone please tell me what i'm doing wrong?
|
|
|
|
|
treuveni wrote: I have a grid with 10K rows
Which is not good design! Why 10 K Records in a grid? Does it really make any sense? It will hit your application performance very badly. Show only those data that are required. Use some filter to show less amount of data.
treuveni wrote: DataTable dt = (DataTable)GridViewArgs.DataSource;
What is your Source of Gridview data ?
|
|
|
|
|
First example should works.
Second example:
DataView dataview = ((DataTable)GridViewArgs.DataSource).DefaultView;
I Love T-SQL
"Don't torture yourself,let the life to do it for you."
If my post helps you kindly save my time by voting my post.
www.aktualiteti.com
|
|
|
|
|
If you are trying to retrieve the data after postback, datasource will return null unless you bind the data again.
If your GridView ViewState is not disabled, you can access the data by iterating rows and columns like this:
foreach(GridViewRow row in grdRawData.Rows)
{
myData = row.Cells[ColNum].Text;
}
If you are using controls, say TextBox, in GridView Columns, you can fetch the data by using FindControl method.
TextBox txtName = (TextBox)grdRawData.Rows[rowNum].FindControl("IdOfTextBox");
myData = txtName.Text;
Hope this will help.
|
|
|
|