USP_GLCONFIGURENOACCOUNTING

Executes the "Auto configure for no GL functionality" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being updated.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the update.

Definition

Copy


CREATE procedure dbo.USP_GLCONFIGURENOACCOUNTING
(
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier 
)
as begin
  set nocount on

if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

if (select count(*) from dbo.GLACCOUNT) > 0 or (select count(*) from dbo.PDACCOUNTSTRUCTURE where PDACCOUNTSYSTEMID = '4B121C2C-CCE6-440D-894C-EA0DEF80D50B') > 1
    return -1
else
    begin

    insert into dbo.GLFISCALYEAR (ID, YEARID, DESCRIPTION, STATUSCODE, SUMMARIZED, FISCALPERIODSINYEAR, YEARSEQUENCE, NUMBERADJUSTMENTPERIODS, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    values
    ('0B405191-7E50-4CBC-89C9-1B2312BCD0E3', 'YEAR1','Fiscal year for system not using GL',1,0,1,1,0, @CHANGEAGENTID, @CHANGEAGENTID, getdate(), getdate())

    insert into dbo.GLFISCALPERIOD (ID, STARTDATE, ENDDATE, CLOSED, GLFISCALYEARID, SEQUENCE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    values
    (newid(),'2009-01-01','2099-12-31',0,'0B405191-7E50-4CBC-89C9-1B2312BCD0E3',1,@CHANGEAGENTID, @CHANGEAGENTID, getdate(), getdate())

    update dbo.PDACCOUNTSTRUCTURE
    set LENGTH = 1,
    CHANGEDBYID = @CHANGEAGENTID,
    DATECHANGED = getdate()
  where PDACCOUNTSYSTEMID = '4B121C2C-CCE6-440D-894C-EA0DEF80D50B'

    insert into dbo.GLACCOUNT (ID, ACCOUNTNUMBER, ACCOUNTDESCRIPTION, PDACCOUNTSYSTEMID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    values
    ('3DCA1C5F-7A74-4EC8-9874-A210982393A3', '1','Acct 1', '4B121C2C-CCE6-440D-894C-EA0DEF80D50B', @CHANGEAGENTID,@CHANGEAGENTID, getdate(), getdate()),
    ('EBC7B969-5902-4E9F-A4CE-1777BE16EDF7', '2','Acct 2', '4B121C2C-CCE6-440D-894C-EA0DEF80D50B', @CHANGEAGENTID,@CHANGEAGENTID, getdate(), getdate())

    insert into dbo.PDACCOUNTCODEMAPPING (ID, REVENUETYPE, APPLICATIONTYPE, PAYMENTMETHOD, PDACCOUNTCODEMAPOFFICEID, OFFICEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, DEBITGLACCOUNTID, CREDITGLACCOUNTID, PDACCOUNTSYSTEMID)
    select newid(), isnull(t2.RevenueTypes,0), isnull(t3.ApplicationTypes,0), isnull(t4.PaymentMethods,0), t1.ID, t1.OFFICEID, @CHANGEAGENTID, @CHANGEAGENTID, getdate(), getdate(),
    '3DCA1C5F-7A74-4EC8-9874-A210982393A3', case t1.OFFICEID when 8 then '3DCA1C5F-7A74-4EC8-9874-A210982393A3' else 'EBC7B969-5902-4E9F-A4CE-1777BE16EDF7' end, '4B121C2C-CCE6-440D-894C-EA0DEF80D50B'
    from dbo.pdaccountcodemapoffice t1 left join 
        (select PDACCOUNTCODEMAPREVENUETYPE.PDACCOUNTCODEMAPOFFICEID, sum(PDACCOUNTCODEMAPREVENUETYPE.nameid) as RevenueTypes from dbo.PDACCOUNTCODEMAPREVENUETYPE group by PDACCOUNTCODEMAPREVENUETYPE.PDACCOUNTCODEMAPOFFICEID) t2 on t1.id = t2.PDACCOUNTCODEMAPOFFICEID
    left join
        (select PDACCOUNTCODEMAPAPPLICATIONTYPE.PDACCOUNTCODEMAPOFFICEID, sum(PDACCOUNTCODEMAPAPPLICATIONTYPE.nameid) as ApplicationTypes from dbo.PDACCOUNTCODEMAPAPPLICATIONTYPE group by PDACCOUNTCODEMAPAPPLICATIONTYPE.PDACCOUNTCODEMAPOFFICEID) t3 on t1.id = t3.PDACCOUNTCODEMAPOFFICEID        
    left join
        (select PDACCOUNTCODEMAPPAYMENTMETHODTYPE.PDACCOUNTCODEMAPOFFICEID, sum(PDACCOUNTCODEMAPPAYMENTMETHODTYPE.nameid) as PaymentMethods from dbo.PDACCOUNTCODEMAPPAYMENTMETHODTYPE group by PDACCOUNTCODEMAPPAYMENTMETHODTYPE.PDACCOUNTCODEMAPOFFICEID) t4 on t1.id = t4.PDACCOUNTCODEMAPOFFICEID        

    insert into dbo.PDACCOUNTCODEMAPPINGSUBTYPE (ID, ADDITIONALSUBTYPE, PDACCOUNTCODEMAPPINGID, SUBTYPEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    select newid(), V1.ADDITIONALSUBTYPE, PDACCOUNTCODEMAPPING.ID, '99999999-9999-9999-9999-999999999999',
    @CHANGEAGENTID, @CHANGEAGENTID, getdate(), getdate()
    from
        (select OFFICEID, PDACCOUNTCODEMAPOFFICEID, ADDITIONALSUBTYPE from dbo.PDACCOUNTCODEMAPREVENUETYPE where HASSUBTYPE = 1
        union 
        select OFFICEID, PDACCOUNTCODEMAPOFFICEID, ADDITIONALSUBTYPE from dbo.PDACCOUNTCODEMAPAPPLICATIONTYPE where HASSUBTYPE = 1
        union 
        select OFFICEID, PDACCOUNTCODEMAPOFFICEID, ADDITIONALSUBTYPE from dbo.PDACCOUNTCODEMAPPAYMENTMETHODTYPE where HASSUBTYPE = 1) V1
    inner join dbo.PDACCOUNTCODEMAPPING on V1.PDACCOUNTCODEMAPOFFICEID = PDACCOUNTCODEMAPPING.PDACCOUNTCODEMAPOFFICEID

  end
return 0;

end