|
At the risk of sounding like a fool, could I ask you to please explain the bit about changes being saved immediately instead of when the save icon is clicked.
|
|
|
|
|
Databases have implicit save behaviour, e.g. triggered by an action such as moving to a new row. An application like Excel does not know when you want to save the data, so it only saves when you trigger an explicit save.
|
|
|
|
|
Okey doke -- but this is only the case when there is data binding between the database and the client right? I'm sure there must be plenty of apps out there, other than Excel, that required an explicit save.
I'm not sure if I get the point that was originally being made. Was this being suggested as a good thing, a bad thing, or just an example of where the "developer" mis-understood what was going on?
|
|
|
|
|
This was a case of a luser insisting on using the wrong tool (access instead of excel), and then continually whining about how it didn't do what she wanted.
Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots.
-- Robert Royall
|
|
|
|
|
Pete O'Hanlon wrote: Access should be removed from the PC of anybody who is tempted to open it up and knock together a crappy app with zero understanding of basic database procedures. Hello. It's called normalization people, and it's not an optional extra. If you don't understand normalisation, then you should be in a more touchy-feely career and not one that demands reaching higher than a 2 on the clue-o-meter.
Amen to that
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
"Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham
|
|
|
|
|
Comeon I have written several VBA programs both nothing as horrible as that.
|
|
|
|
|
|
Sad: I have to maintain code like this.
|
|
|
|
|
Transactions are a blessing. Writing code to undo all changes after an error is no fun at all. And how do you proceed when even more errors pop up while undoing things?
Unfortunately you don't always have transactions. I'm working on a larger project that uses a MySql database for both low cost and speed. Using another table format would make transactions available, but also slow everything down in an unacceptable manner. So I guess, the only choice is dealing with some tight spots in the buisiness logic.
A while ago he asked me what he should have printed on my business cards. I said 'Wizard'.
I read books which nobody else understand. Then I do something which nobody understands. After that the computer does something which nobody understands. When asked, I say things about the results which nobody understand. But everybody expects miracles from me on a regular basis. Looks to me like the classical definition of a wizard.
|
|
|
|
|
the point was to do 2 column reversable order sorting, i wrote this thing as an intern.. have fun guys and gals.
int t1 = 0;
int t2 = 0;
string temp = "";
string orig = "";
if (lblSortOrder.Text==e.SortExpression)
{
Trace.Write("asdf","in order switcher");
lblSortOrder.Text +=" DESC";
}
else if (lblSortOrder.Text.IndexOf(e.SortExpression)== -1)
{
Trace.Write("asdf","in column adder");
temp=e.SortExpression;
temp+=", "+lblSortOrder.Text;
lblSortOrder.Text=temp;
}
else if (lblSortOrder.Text.IndexOf(',')!=-1)
{
if (lblSortOrder.Text.IndexOf(e.SortExpression)!=-1)
{
orig=lblSortOrder.Text;
t1=orig.IndexOf(e.SortExpression);
t2=orig.IndexOf(",",t1)-t1;
if(t2>=0)
{
temp=orig.Substring(t1,t2);
}
else
{
temp=orig.Substring(t1);
}
if(temp.IndexOf("DESC")!=-1)
{
orig=orig.Remove(t1,temp.Length);
temp=temp.Remove(temp.IndexOf("DESC"),4);
temp=temp.Trim();
}
else
{
orig=orig.Remove(t1,temp.Length);
temp+=" DESC";
temp=temp.Trim();
}
orig=orig.Trim();
lblSortOrder.Text=temp+","+orig;
}
else
{
lblSortOrder.Text=e.SortExpression;
}
}
else
{
lblSortOrder.Text=e.SortExpression;
}
lblSortOrder.Text=lblSortOrder.Text.Replace(",," , ",");
lblSortOrder.Text=lblSortOrder.Text.Replace(", ," , ",");
t1=lblSortOrder.Text.IndexOf(",",lblSortOrder.Text.IndexOf(",")+1);
if(t1>10)
{
lblSortOrder.Text=lblSortOrder.Text.Remove(t1,(lblSortOrder.Text.Length-t1));
}
Please remember to rate helpful or unhelpful answers, it lets us and people reading the forums know if our answers are any good.
|
|
|
|
|
Several years ago I was asked to evaluate a C program. The question was: can we fix it, or do we need to rewrite it?
What the program did and for whom doesn't matter, other than it should have been a straightforward business application: user-interface screens and database reads and updates.
The client was concerned that the program - used daily by several people for real work - was "flaky" and would often lock up or BSOD after 15-20 minutes.
So I started looking at the code...and found several interesting things:
- the program was using invisible pop-up windows as temporary data buffers to implement wizard-like operations in the user-interface, and never deallocating them.
- every variable was global
- there were no data structures anywhere for anything
- there were no functions other than those required by the GUI
- several functions were over 75 pages long - that's about 4500 lines of code in a single function
- the level of code redundancy was incredible; it was common to see the same 5-10 lines of code repeated several dozen times within the same function
Naturally, my recommendation was that the system be rewritten, preferably in an object-oriented language [which we did, but that was a Success Story, not a Horror Story].
My curiosity could not be held back, I had to know who had written this program...
This program was written by a COBOL programmer. It was her first C program, and her first GUI program.
I asked what happened to her. They said she got a job with a larger firm in the same industry just down the street - teaching C programming!
|
|
|
|
|
You know, those who can't code, manage. Those who can't manage... you know where they end up at..
|
|
|
|
|
|
Steven A. Lowe wrote: the program was using invisible pop-up windows as temporary data buffers to implement wizard-like operations in the user-interface, and never deallocating them.
Ahead of its time: garbage collection without the collection!
Steven A. Lowe wrote: every variable was global
But think of all the stack space you have!
Steven A. Lowe wrote: there were no data structures anywhere for anything
Or you could think of it as a data structure everywhere for everything.
Steven A. Lowe wrote: there were no functions other than those required by the GUI
Again, think of the saved stack space!
Steven A. Lowe wrote: several functions were over 75 pages long - that's about 4500 lines of code in a single function
But I bet Intellisense was nice and responsive.
Steven A. Lowe wrote: the level of code redundancy was incredible; it was common to see the same 5-10 lines of code repeated several dozen times within the same function
Man, haven't you heard of code reuse??
Faith is a fine invention
For gentlemen who see;
But microscopes are prudent
In an emergency!
-Emily Dickinson
|
|
|
|
|
David Kentley wrote: Ahead of its time: garbage collection without the collection!
5!
|
|
|
|
|
David Kentley wrote: Steven A. Lowe wrote:
the level of code redundancy was incredible; it was common to see the same 5-10 lines of code repeated several dozen times within the same function
Man, haven't you heard of code ref use??
fixed that for you.
Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots.
-- Robert Royall
|
|
|
|
|
Steven A. Lowe wrote: I asked what happened to her. They said she got a job with a larger firm in the same industry just down the street - teaching C programming!
It is a shame
My first C class was thought by a guy who is good at COBOL but knows very little C. I made it through the class thinking, I am C Master. It did not occur to me how little I Knew until I took Data Structures with the toughest instructor in my life. I broke down and admitted I didn't knew C. He said, if you are willing to put up the time and effort I will help you. After painful semester, I learned C and felt very grateful. Because of that lesson I am a better developer now.
Yusuf
|
|
|
|
|
how about a C++ class taught by an accountant (by profession) handing out code examples that were not syntax correct?
Sorry to say, yes this is a true story. Good thing I was already working w/ C++
|
|
|
|
|
More proof that just knowing the syntax of a language is not enough to write high quality code.
Bill W
|
|
|
|
|
Steven A. Lowe wrote: several functions were over 75 pages long - that's about 4500 lines of code in a single function
That is just flat out a horror itself.
Steven A. Lowe wrote: asked what happened to her. They said she got a job with a larger firm in the same industry just down the street - teaching C programming!
That's even scarier.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
"Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham
|
|
|
|
|
USE [Database1]
GO
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
-- Validate User can hit the sql box. Basically doesn't do anything, except ensure I can see the sql box
-- Returns 1 if successful,
-- 0 l if failed (one could ask, If I can't see the box, how is it going to return 0....I don't know).
-- 3/26/04 (via name omitted)
-- Assumes SQL Server 7.0 SP1 or better
ALTER procedure [dbo].[CheckConnection]
@result char(1) OUTPUT
AS
set @result = "1"
RETURN
|
|
|
|
|
Hokay. So you can't just test the state of the connection then...
|
|
|
|
|
No of course not... security and permissions you know.
|
|
|
|
|
Austin Harris wrote: If I can't see the box, how is it going to return 0....I don't know
|
|
|
|
|