Subject | Re: Procedure Problem, Div By 0 |
---|---|
Author | andyh20012003 |
Post date | 2003-08-07T22:44:30Z |
Alexander, I apologize for doing this to you, I am having problems
finding info on doing what you talked about.
First: my lowest value is set in my code of 0.001 therefore anything
Greater than or equal to 0.001 is not equal to 0, right?
I have not found any info on where to place the code you sent me,
does this look right? This code will not run, it gives me a column
name error.
PS. Any good book ideas on using sql with ib or fb would be great.
Again Thanks
Andy
ALTER PROCEDURE EACHNODE_NETLIST_2
RETURNS (
EHTESTEDVAL DOUBLE PRECISION,
EHNODE INTEGER,
EHSUB INTEGER,
EHCIR INTEGER,
ELTESTEDVAL DOUBLE PRECISION,
ELNODE INTEGER,
ELSUB INTEGER,
ELCIR INTEGER)
AS
begin
for
select ENH.TestedValue,
ENH.Node,
ENH.SubstrateNum,
ENH.CircuitNum,
ENL.TestedValue,
ENL.Node,
ENL.SubstrateNum,
ENL.CircuitNum
From EachNode ENH, EachNode ENL
Where
(ENH.JobNum = "2621") and
(ENH.ProberNum = 1) and
(ENL.JobNum = "2621") and
(ENL.ProberNum = 1) and
((ENH.Passed = 1) or (ENL.Passed = 1)) and
(ENH.SubstrateNum = ENL.SubstrateNum ) and
(ENH.CircuitNum = ENL.CircuitNum) and
(ENH.Node = 2) and
(ENL.Node = 92)
Into :EHTestedval, :EHNode, :EHSub, :EHCir, :ELTestedVal, :ELNode, :E
LSub, :ELCir
do
if ((ENH.TestedValue >= 0.001 ) and (ENL.TestedValue >= 0.001))
then
if
(
(
(
(ENH.TestedValue/ENL.TestedValue)>0
)
and
(
( 100 -((ENH.TestedValue/ENL.TestedValue*100) )
)
or
(
(
(ENL.TestedValue/ENH.TestedValue)>0
)
and
(
( 100 -((ENL.TestedValue/ENH.TestedValue)*100) )
)
)
then
suspend;
end
finding info on doing what you talked about.
First: my lowest value is set in my code of 0.001 therefore anything
Greater than or equal to 0.001 is not equal to 0, right?
I have not found any info on where to place the code you sent me,
does this look right? This code will not run, it gives me a column
name error.
PS. Any good book ideas on using sql with ib or fb would be great.
Again Thanks
Andy
ALTER PROCEDURE EACHNODE_NETLIST_2
RETURNS (
EHTESTEDVAL DOUBLE PRECISION,
EHNODE INTEGER,
EHSUB INTEGER,
EHCIR INTEGER,
ELTESTEDVAL DOUBLE PRECISION,
ELNODE INTEGER,
ELSUB INTEGER,
ELCIR INTEGER)
AS
begin
for
select ENH.TestedValue,
ENH.Node,
ENH.SubstrateNum,
ENH.CircuitNum,
ENL.TestedValue,
ENL.Node,
ENL.SubstrateNum,
ENL.CircuitNum
From EachNode ENH, EachNode ENL
Where
(ENH.JobNum = "2621") and
(ENH.ProberNum = 1) and
(ENL.JobNum = "2621") and
(ENL.ProberNum = 1) and
((ENH.Passed = 1) or (ENL.Passed = 1)) and
(ENH.SubstrateNum = ENL.SubstrateNum ) and
(ENH.CircuitNum = ENL.CircuitNum) and
(ENH.Node = 2) and
(ENL.Node = 92)
Into :EHTestedval, :EHNode, :EHSub, :EHCir, :ELTestedVal, :ELNode, :E
LSub, :ELCir
do
if ((ENH.TestedValue >= 0.001 ) and (ENL.TestedValue >= 0.001))
then
if
(
(
(
(ENH.TestedValue/ENL.TestedValue)>0
)
and
(
( 100 -((ENH.TestedValue/ENL.TestedValue*100) )
> (100 - 98))
)
or
(
(
(ENL.TestedValue/ENH.TestedValue)>0
)
and
(
( 100 -((ENL.TestedValue/ENH.TestedValue)*100) )
> (100 - 98))
)
)
then
suspend;
end