Maybee it is the straw that broke the camel's back.
Try breaking it into 2 command:

SET VAR vSumPromoGI CURRENCY = +
(.v_1 + .v_2 + .v_3 + .v_4 + .v_5 )

SET VAR vSumPromoGI CURRENCY = +
(.vsumpromogi + .v_6 + .v_7 + .v_8 + .v_9 + .v_10)

Troy

===== Original Message from [EMAIL PROTECTED] at 5/16/02 10:55 am
>G'day Bill,
>
>Thanks for the suggestion on combining the commands.
>
>What I forgot to mention is that as I stepped through
>the debugger I confirmed that each of the v_
>variables has a valid currency value at the point of the:
>SET VAR vSumPromoGI CURRENCY = +
>(.v_1 + .v_2 + .v_3 + .v_4 + .v_5 + .v_6 + .v_7 + .v_8 + .v_9 + .v_10)
>command.
>
>That's why the failure to sum them has me tossed.
>
>I just reran the code and the first time I run it I get an
>"Invalid date value" message - only on performing the calc for v_2!
>Why only on that one and not on the others, given the same where
>clause has me tossed as the dates checked as valid using TRACE.
>
>Anyway the problem appears to be solved as upgrading my code
>as per your suggestion to what follows has yet to glitch.
>
>$COMMAND
>CalSumGI
>-- Sums Deposits received for where clause
>-- Called by:
>--   RptsMenu in PromCmpn.apx
>*( Requires var
>vWhere
>    Returns var
>vSumPromoGI
>)
>-- Created by Tom Grimshaw 25-04-2002
>-- Modification history
>-- 15-05-2002  tlg  Combined SELECTS to one
>--
>
>SET VAR v1 CURRENCY = 0.00
>SET VAR v2 CURRENCY = 0.00
>SET VAR v3 CURRENCY = 0.00
>SET VAR v4 CURRENCY = 0.00
>SET VAR v5 CURRENCY = 0.00
>SET VAR v6 CURRENCY = 0.00
>SET VAR v7 CURRENCY = 0.00
>SET VAR v8 CURRENCY = 0.00
>SET VAR v9 CURRENCY = 0.00
>SET VAR v10 CURRENCY = 0.00
>SELECT SUM(GI_0_30_Days),SUM(GI_31_61_Days),SUM(GI_62_92_Days), +
>   SUM(GI_93_123_Days),SUM(GI_124_153_Days),SUM(GI_154_183_Days), +
>   SUM(GI_184_275_Days),SUM(GI_276_365_Days),SUM(GI_366_732_Days), +
>   SUM(GI_Over732_Days) INTO +
>   v1 IND vi1, +
>   v2 IND vi2, +
>   v3 IND vi3, +
>   v4 IND vi4, +
>   v5 IND vi5, +
>   v6 IND vi6, +
>   v7 IND vi7, +
>   v8 IND vi8, +
>   v9 IND vi9, +
>   v10 IND vi10 +
>   FROM Promotions +
>   &vWhere
>SET VAR vSumPromoGI CURRENCY = +
>(.v1 + .v2 + .v3 + .v4 + .v5 + .v6 + .v7 + .v8 + .v9 + .v10)
>CLEAR VAR v1,v2,v3,v4,v5,v6,v7,v8,v9,v10
>RETURN
>
>
>At 23:09 14/05/02 -0500, you wrote:
>>Test each variable for null, and set the nulls to zero before you add
>>them together.  If you sum things, and one of the items is a null, your
>>result should be a null (unless you override the SQL default and SET
>>ZERO ON).
>>
>>Meanwhile, you could do all 10 of your sums in a single command,
>>and not hit the database 10 times, but that's another issue.  Since the
>>FROM And WHERE clauses are all the same, you should combine
>>them:
>>
>>SELECT +
>>   SUM(GI_0_30_Days), +
>>   SUM(GI_31_61_Days), +
>>   etc.
>>  INTO v_1 IND vi1, v_2 IND vi2, etc. +
>>    FROM Promotions +
>>    &vWhere
>>
>>On Wed, 15 May 2002 11:23:22 -0700, Tom Grimshaw wrote:
>>
>> >G'day,
>> >
>> >I have a problem summing variables for a report.   The weird thing
>> >is that sometimes she works, sometimes she don't.   Sometimes the
>>var
>> >vSumPromoGI is without one of the constituents.   Which one it is
>> >missing varies from one running of the code to another.
>> >
>> >Is there something I am doing wrong or should I report this to RDCC>
>> >
>> >Here is the code:
>> >
>> >$COMMAND
>> >CalSumGI
>> >-- Sums Deposits received for where clause
>> >-- Called by:
>> >--   RptsMenu in PromCmpn.apx
>> >*( Requires var
>> >vWhere
>> >    Returns var
>> >vSumPromoGI
>> >)
>> >-- Created by Tom Grimshaw 25-04-2002
>> >-- Modification history
>> >--
>> >
>> >SET VAR v_1 CURRENCY = 0.00
>> >SET VAR v_2 CURRENCY = 0.00
>> >SET VAR v_3 CURRENCY = 0.00
>> >SET VAR v_4 CURRENCY = 0.00
>> >SET VAR v_5 CURRENCY = 0.00
>> >SET VAR v_6 CURRENCY = 0.00
>> >SET VAR v_7 CURRENCY = 0.00
>> >SET VAR v_8 CURRENCY = 0.00
>> >SET VAR v_9 CURRENCY = 0.00
>> >SET VAR v_10 CURRENCY = 0.00
>> >SELECT SUM(GI_0_30_Days) INTO +
>> >   v_1 IND vi1 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_31_61_Days) INTO +
>> >   v_2 IND vi2 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_62_92_Days) INTO +
>> >   v_3 IND vi3 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_93_123_Days) INTO +
>> >   v_4 IND vi4 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_124_153_Days) INTO +
>> >   v_5 IND vi5 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_154_183_Days) INTO +
>> >   v_6 IND vi6 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_184_275_Days) INTO +
>> >   v_7 IND vi7 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_276_365_Days) INTO +
>> >   v_8 IND vi8 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_366_732_Days) INTO +
>> >   v_9 IND vi9 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SELECT SUM(GI_Over732_Days) INTO +
>> >   v_10 IND vi10 +
>> >   FROM Promotions +
>> >   &vWhere
>> >SET VAR vSumPromoGI CURRENCY = +
>> >(.v_1 + .v_2 + .v_3 + .v_4 + .v_5 + .v_6 + .v_7 + .v_8 + .v_9 + .v_10)
>> >CLEAR VAR v_1,v_2,v_3,v_4,v_5,v_6,v_7,v_8,v_9,v_10
>> >RETURN
>> >
>> >Any help on this would, as always, be greatly appreciated.
>> >
>> >Warmest regards,
>> >
>> >
>> >Tom Grimshaw
>> >coy:    Just For You Software
>> >tel:    612 9552 3311
>> >fax:    612 9566 2164
>> >mobile: 0414 675 903
>> >
>> >post:   PO Box 470  Glebe  NSW  2037  Australia
>> >street: 3/66 Wentworth Park Rd  Glebe  NSW  2037
>> >
>> >email:  [EMAIL PROTECTED]
>> >web: www.just4usoftware.com.au
>> >
>> >"... the control of impulse -- is the first principle of civilization."--
>> >Will Durant,
>> >Pulitzer Prize winning philosopher, writer and historian
>> >
>> >the most needed product in the world can be found at
>> >www.thewaytohappiness.org
>> >
>> >This email and any files transmitted with it are confidential to the
>> >intended recipient and may be privileged. If you have received this
>>email
>> >inadvertently or you are not the intended recipient, you may not
>> >disseminate, distribute, copy or in any way rely on it. Further, you
>>should
>> >notify the sender immediately and delete the email from your
>>computer.
>> >Whilst we have taken precautions to alert us to the presence of
>>computer
>> >viruses, we cannot guarantee that this email and any files transmitted
>>with
>> >it are free from such viruses.
>> >
>> >================================================
>> >TO SEE MESSAGE POSTING GUIDELINES:
>> >Send a plain text email to [EMAIL PROTECTED]
>> >In the message body, put just two words: INTRO rbase-l
>> >================================================
>> >TO UNSUBSCRIBE: send a plain text email to
>>[EMAIL PROTECTED]
>> >In the message body, put just two words: UNSUBSCRIBE rbase-l
>> >================================================
>> >TO SEARCH ARCHIVES:
>> >http://www.mail-archive.com/rbase-l%40sonetmail.com/
>> >
>>
>>
>>
>>
>>
>>================================================
>>TO SEE MESSAGE POSTING GUIDELINES:
>>Send a plain text email to [EMAIL PROTECTED]
>>In the message body, put just two words: INTRO rbase-l
>>================================================
>>TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
>>In the message body, put just two words: UNSUBSCRIBE rbase-l
>>================================================
>>TO SEARCH ARCHIVES:
>>http://www.mail-archive.com/rbase-l%40sonetmail.com/
>
>Warmest regards,
>
>
>Tom Grimshaw
>coy:    Just For You Software
>tel:    612 9552 3311
>fax:    612 9566 2164
>mobile: 0414 675 903
>
>post:   PO Box 470  Glebe  NSW  2037  Australia
>street: 3/66 Wentworth Park Rd  Glebe  NSW  2037
>
>email:  [EMAIL PROTECTED]
>web: www.just4usoftware.com.au
>
>"... the control of impulse -- is the first principle of civilization."--
>Will Durant,
>Pulitzer Prize winning philosopher, writer and historian
>
>the most needed product in the world can be found at
>www.thewaytohappiness.org
>
>This email and any files transmitted with it are confidential to the
>intended recipient and may be privileged. If you have received this email
>inadvertently or you are not the intended recipient, you may not
>disseminate, distribute, copy or in any way rely on it. Further, you should
>notify the sender immediately and delete the email from your computer.
>Whilst we have taken precautions to alert us to the presence of computer
>viruses, we cannot guarantee that this email and any files transmitted with
>it are free from such viruses.
>
>================================================
>TO SEE MESSAGE POSTING GUIDELINES:
>Send a plain text email to [EMAIL PROTECTED]
>In the message body, put just two words: INTRO rbase-l
>================================================
>TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
>In the message body, put just two words: UNSUBSCRIBE rbase-l
>================================================
>TO SEARCH ARCHIVES:
>http://www.mail-archive.com/rbase-l%40sonetmail.com/

================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: INTRO rbase-l
================================================
TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: UNSUBSCRIBE rbase-l
================================================
TO SEARCH ARCHIVES:
http://www.mail-archive.com/rbase-l%40sonetmail.com/

Reply via email to