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

Trees problem



Happy Holidays,

I posted this question about a week ago, and got a reply that has worked.
Once. The problem has resurfaced- ie, the trees.sqc I am modifying hangs
just after it gets into the do Tree Node Information procedure. Here is the
code that is abending...

!--------------------------------------------------------------------!
! do Tree-Node-Information                               !
!--------------------------------------------------------------------!
begin-procedure Tree-Node-Information
begin-select ON-ERROR=Extract-SQL-Error(1,'TREES.SQC: Could not select Tree
Node Information','Could not Extract Data')
        show 'entering node'
treenode.SETID
treenode.TREE_NAME
treenode.EFFDT
treenode.TREE_BRANCH
treenode.TREE_NODE_NUM
etc...

TNT.Descr
   !--------------------------------------------------------------
    do format-DateTime(&treenode.EffDt,$EffDt,{DEFCMP},'','')
    let $det_record_type       = 'DET'
    let $det_tree_type         = 'TREE NODE'
    let $det_setid             = substr(rpad(&treenode.setid,5,' ') ,1, 5)
    let $det_tree_name         = substr(rpad(&treenode.tree_name,18,' ') ,1,
18)
    let $det_eff_dt            = substr(rpad($EffDt,8,' ') ,1, 8)
    let $det_tree_branch       = substr(rpad(&treenode.tree_branch,20,' ')
,1, 20)
    let $det_tree_node_num     = edit(&treenode.tree_node_num,'9999999990')
    ETC...
    let $det_Descr             = substr(rpad(&TNT.Descr,30,' '),1,30)
    !----------------------------------------!
    ! Write Chart-Field Information to File  !
    !----------------------------------------!
    write #1 from
        $det_record_type:3
        $det_tree_type:15
        $det_setid:5
        $det_tree_name:18
        $det_eff_dt:8
        $det_tree_branch:20
        $det_tree_node_num:10
        ETC...
        $det_Descr:30
    let #Trees=#Trees+1
   !--------------------------------------------------------------
   FROM pstreenode treenode,
        PS_TREE_NODE_TBL TNT

   WHERE  treenode.setid in (select extract_bus_unit
                             from ps_goa_extract_bu
                             where business_unit = &gs.BUSINESS_UNIT
                             AND   extract_type  = &gs.EXTRACT_TYPE
                             AND   seqno         = &gs.SEQNO )

   AND TNT.setid = treenode.setid
  AND TNT.tree_node = treenode.tree_node

   OR    treenode.setid  =  'GOA'
   AND   TNT.setid=treenode.setid
   AND   TNT.tree_node=treenode.tree_node

   order by treenode.setid
   ,        treenode.tree_name
   ,        treenode.effdt
   ,        treenode.tree_branch
   ,        treenode.tree_node_num
end-select
end-procedure ! Tree-Node-Information

The "AND TNT.setid = treenode.setid
       AND TNT.tree_node = treenode.tree_node"
is what is causing the problem. The one time it did work, it did not return
as many nodes as the original extract. I've tried indenting the two lines in
several different places, and keep getting the same result.

any clues appreciated

Jason
IMAGIS