[Date Prev][Date Next][Thread Prev][Thread Next]
[Author Index] [Date Index] [Thread Index]
[SQR-USERS Info] [SQRUG Home Page]

[sqr-users] variable resetting to 0 problem



Hey there.  Okay, so this should be a pretty easy problem, but it has me
currently stumped.  I'm trying to use a couple variables across my SQR and
by the time I go to use them, they've been reset to 0.  Here's a summary of
my program (i've taken out the parts which I know work fine, and aren't part
of the problem). My idea is to set up these variables that are going to be
used through the whole SQR.  But as they're being called through procedures,
they're not being set correctly.  REPORT calls CC_REPORT calls
BUSINESS_UNIT_ROW sets #D_BU_COUNT.  but when I try to use it in a different
procedure (END_OF_DISTRICT) it isn't set. Can someone tell me what i'm doing
wrong with my variables?!?!  

do i need to declare them somewhere else?  
is the problem with how many procedures its going through?
i'm stumped.  any help would be appreciated.


The finished product will look somethign like this
               normal     single
BU1             10      5       
BU2             20      7
BU3             17      2
BU4             13      10

dist tot                80      24
Avg             20      6       ** except #d_bu_count isn't being correctly
increased by one!!



-------------------------
BOB.SQR        ||
-------------------------

!*******************************************************************
BEGIN-SETUP
!*******************************************************************
END-SETUP

!*******************************************************************
BEGIN-REPORT
!*******************************************************************
                !-------District variables
        let #d_normal = 0
        let #d_single = 0
        let #d_bu_count = 0
                !-------Region variables
        let #r_normal = 0
        let #r_single = 0
        let #r_bu_count = 0
                !------Excel Variables
        Let #RowNum = 1
        Do EXCEL-HEADING

        do CC_REPORT

END-REPORT

!*******************************************************************
BEGIN-PROCEDURE CC_REPORT
!*******************************************************************
BEGIN-SELECT 
fas_branch5             &business_unit  
fas_district_descr      ()      ON-BREAK PRINT=NEVER  AFTER=END_OF_DISTRICT
SKIPLINES = 1
fas_regional_descr      ()      ON-BREAK PRINT=NEVER  AFTER=END_OF_REGION
SKIPLINES = 1

        let $business_unit = &business_unit
        Do BUSINESS_UNIT_ROW($business_unit)                    

FROM sysadm.ps_table WHERE busin_unit_type = 'BRNC'  AND fas_branch5 in (
**Blah blah blah.  sql works fine ) ORDER BY fas_region_code, fas_district,
fas_bu_4char
END-SELECT
END-PROCEDURE CC_REPORT

!*******************************************************************
BEGIN-PROCEDURE BUSINESS_UNIT_ROW($bu)
!*******************************************************************
        !******************** Normal CC
BEGIN-SELECT on-error=sql-error
count(distinct a.counting_event_id)     &n.count
        let #cyclcnt_count = &n.count
FROM ps_count_hdr_inv a, ps_fas_count2_inv c
WHERE a.business_unit = c.business_unit and a.counting_event_id =
c.counting_event_id
and c.business_unit = $bu and c.fas_cyclcnt_type = 'N'
END-SELECT

        let #d_normal = #d_normal + #cyclcnt_count
        let #r_normal = #r_normal + #cyclcnt_count

        !******************** Single CC
BEGIN-SELECT on-error=sql-error
count(distinct a.counting_event_id)     &s.count
        let #cyclcnt_count = &s.count
FROM ps_count_hdr_inv a, ps_fas_count2_inv c
WHERE a.business_unit = c.business_unit and a.counting_event_id =
c.counting_event_id
and c.business_unit = $bu and c.fas_cyclcnt_type = 'S'
END-SELECT

        let #d_single = #d_single + #cyclcnt_count
        let #r_single = #r_single + #cyclcnt_count

        !********************
        let #d_bu_count = #d_bu_count + 1
        let #r_bu_count = #r_bu_count + 1
        let #RowNum = #RowNum + 1
END-PROCEDURE BUSINESS_UNIT_ROW

!*******************************************************************
BEGIN-PROCEDURE END_OF_DISTRICT  
!*******************************************************************
!***TOTALS

Do Excel-Write-Number(1, #RowNum, 4, #d_normal)
Do Excel-Write-Number(1, #RowNum, 5, #d_single)

!***AVERAGES
let #d_normal = #d_normal / #d_bu_count         !****ERROR - cannot divide
by ZERO***!!
let #d_single = #d_single / #d_bu_count

let #RowNum = #RowNum + 1                       !skip a row

Do Excel-Write-Number(1, #RowNum, 4, #d_normal)
Do Excel-Write-Number(1, #RowNum, 5, #d_single)

!***RESET VARIABLES to 0 FOR NEXT DISTRICT
let #d_normal = 0
let #d_single = 0

let #RowNum = #RowNum + 1                       !skip a row

END-PROCEDURE END_OF_DISTRICT  

  #include **stuff - includes are working fine**

_______________________________________________
sqr-users mailing list
sqr-users@sqrug.org
http://www.sqrug.org/mailman/listinfo/sqr-users