Skip to end of metadata
Go to start of metadata
--add all the Vendors
 TRUNCATE TABLE _etblAllocsDCLinkRangeTemp
  insert into _etblAllocsDCLinkRangeTemp (DCLink)
   (Select DClink from Vendor ) -- where /*bforcurAcc =0 and */ dclink = 532)          
 
--Fill the Temp table sage uses
exec _espAllocsAllToTableARAP 'AP'                         
 
 

/*This table outlines which allocations do not have a contra-position. (so the contra-allocation in the other tx as expeced)*/
Select
 NoMirror.iFromRecID  as AutoIdx,
 NoMirror.iToRecID as [Alocated To AutoIdx]
 
  from
   (Select A1.* from _etblAllocsTemp A1 left join _etblAllocsTemp A2 on A2.iToRecID = A1.iFromRecID and A1.iToRecID = A2.iFromRecID where A2.idAllocsTemp Is Null) NoMirror
    left outer join PostAP PAP on NoMirror.iFromRecID = PAP.AutoIdx left outer join Vendor V on NoMirror.iAccountID = V.DCLink order by NoMirror.iFromRecID
 
 -------------------------------------
-------------------------------------
-------------------------------------
--these tx show differences in from-to allocation amounts
;with y as (Select
A1.iFromRecID  as AutoIdx,
 A1.iToRecID as [Alocated To AutoIdx]
 ,p1 = (select sum(A3.fAmount) from _etblAllocsTemp A3
            where A3.iFromRecID=A1.iFromRecID and A3.iToRecID=A1.iToRecID group by A3.iFromRecID, A3.iToRecID) 
,p2 = 
            (select sum(A4.fAmount) from _etblAllocsTemp A4 where A4.iFromRecID=A2.iFromRecID and A4.iToRecID=A2.iToRecID group by A4.iFromRecID, A4.iToRecID)
  
  from _etblAllocsTemp A1 left outer join _etblAllocsTemp A2 on A2.iToRecID=A1.iFromRecID and A1.iToRecID=A2.iFromRecID
  left outer join PostAP PAP on A1.iFromRecID = PAP.AutoIdx
  left outer join Vendor V on A1.iAccountID = V.DCLink
   where ((select sum(A3.fAmount) from _etblAllocsTemp A3
            where A3.iFromRecID=A1.iFromRecID and A3.iToRecID=A1.iToRecID group by A3.iFromRecID, A3.iToRecID) <>
            (select sum(A4.fAmount) from _etblAllocsTemp A4 where A4.iFromRecID=A2.iFromRecID and A4.iToRecID=A2.iToRecID group by A4.iFromRecID, A4.iToRecID))
  --       order by A1.iFromRecID
 )
 select * , p1-p2 as diff from y where abs(p1-p2) > 1
  • No labels