Msg 102, уровень 15, состояние 1, строка 38
ИСПОЛЬЗУЙТЕ [FMSUAT]
ГО
/****** Объект: StoredProcedure [dbo].[sp_Generate_GL_Journals_NEW] дата сценария: 20.11.2018 7:57:47 AM ******/
УСТАНОВИТЕ ANSI_NULLS НА
ГО
УСТАНОВИТЬ QUOTED_IDENTIFIER OFF
ГО
-- =============================================
-- Автор: <Author,,Sean Cudd/Kathy Hurley>
-- Дата создания: <дата создания,, 11/30/2009, 11/15/2018>
-- Описание: <описание,,генерируйте записи журнала PeopleSoft G/L из разнесенных пакетов AS400 G/L,используя рабочую таблицу>
-- =============================================
Изменить процедуру [dbo].[sp_Generate_GL_Journals_NEW]
-- Добавьте параметры для хранимой процедуры здесь
@System char(10),
@Library char(10),
@busUnit char(5),
@acctPeriod int = 0,
@batchNbr int = 0
АС
НАЧАТЬ
LINENO 0
-- Установить параметр nocount на добавленную предотвратить дополнительные результирующие наборы
-- вмешательство в операторы SELECT.
УСТАНОВИТЕ NOCOUNT ON;
Объявить @SchemaPath varchar(50);
Объявить @timestamp varchar(50);
Объявить @GLAcct char(10);
Объявить @IC_Flag varchar(1);
Объявить @Inter_Company varchar(1000);
Объявить @Non_Inter_Company varchar(1000);
Объявить @Is_It_IC varchar(1000);
Установите @SchemaPath = dbo.GetAS400SchemaPath(@System) + @Library;
Набор @IC_Flag = ' ';
SET @GLAcct = ' ';
Набор @типа timestamp = приведение(@acctPeriod как char(6)) + чугун(15 как char(2));
УДАЛИТЬ ИЗ PS_CG_WF_PRIOR_JGN;
Старпома ДБО.система sp_Generate_Pre_JGEN_file @, @библиотека, @busUnit, @acctPeriod, @batchNbr;
--- Следующая вставка предназначена для внекорпоративной партии ----
SET @Non_Inter_Company = "вставить в PS_JGEN_ACCT_ENTRY
(SEQUENCENO,
БИЗНЕС-ЕДИНИЦА,
ИДЕНТИФИКАТОР ТРАНЗАКЦИИ,
LEDGER_GROUP,
ГРОССБУХ,
ACCOUNTING_DT,
APPL_JRNL_ID,
BUSINESS_UNIT_GL,
ФИНАНСОВЫЙ ГОД,
ОТЧЕТНЫЙ ПЕРИОД,
JOURNAL_ID,
JOURNAL_DATE,
JOURNAL_LINE,
СЧЕТ,
ALTACCT,
DEPTID,
ОПЕРАТИВНОЕ ПОДРАЗДЕЛЕНИЕ,
ПРОДУКТ,
FUND_CODE,
CLASS_FLD,
ПРОГРАММНЫЙ КОД,
BUDGET_REF,
ФИЛИАЛ,
AFFILIATE_INTRA1,
AFFILIATE_INTRA2,
CHARTFIELD1,
CHARTFIELD2,
CHARTFIELD3,
PROJECT_ID,
CURRENCY_CD,
STATISTICS_CODE,
ИНОСТРАННАЯ ВАЛЮТА,
RT_TYPE,
RATE_MULT,
RATE_DIV,
ДЕНЕЖНАЯ СУММА,
FOREIGN_AMOUNT,
STATISTIC_AMOUNT,
MOVEMENT_FLAG,
DOC_TYPE,
DOC_SEQ_NBR,
DOC_SEQ_DATE,
JRNL_LN_REF,
LINE_DESCR,
IU_SYS_TRAN_CD,
IU_TRAN_CD,
IU_ANCHOR_FLG,
GL_DISTRIB_STATUS,
ЭКЗЕМПЛЯР ПРОЦЕССА,
DTTM_STAMP)
ВЫБЕРИТЕ ROW_NUMBER() OVER (ORDER BY TRANSACTION_ID) AS SEQUENCENO, * FROM
( ВЫБИРАТЬ
'" + @busUnit + "' как BUSINESS_UNIT,
ИДЕНТИФИКАТОР ТРАНЗАКЦИИ,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК LEDGER_GROUP,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК ГРОССБУХ,
'" + @timestamp + "' как ACCOUNTING_DT,
'GENERIC' КАК APPL_JRNL_ID,
Случай, когда '" + @busUnit + "' &ЛТ;&ГТ; CG_GLACCOUNT2 потом CG_GLACCOUNT2 еще '" + @busUnit + "' конец как BUSINESS_UNIT_GL,
ФИНАНСОВЫЙ ГОД,
ОТЧЕТНЫЙ ПЕРИОД,
"КАК JOURNAL_ID,
'" + @timestamp + "' как JOURNAL_DT,
JOURNAL_LINE,
СЧЕТ,
ALTACCT,
DEPTID,
ОПЕРАТИВНОЕ ПОДРАЗДЕЛЕНИЕ,
ПРОДУКТ,
FUND_CODE,
CLASS_FLD,
ПРОГРАММНЫЙ КОД,
BUDGET_REF,
ФИЛИАЛ,
AFFILIATE_INTRA1,
AFFILIATE_INTRA2,
CHARTFIELD1,
CHARTFIELD2,
CHARTFIELD3,
PROJECT_ID,
CURRENCY_CD,
STATISTICS_CODE,
ИНОСТРАННАЯ ВАЛЮТА,
RT_TYPE,
RATE_MULT,
RATE_DIV,
ДЕНЕЖНАЯ СУММА,
FOREIGN_AMOUNT,
STATISTIC_AMOUNT,
MOVEMENT_FLAG,
DOC_TYPE,
DOC_SEQ_NBR,
DOC_SEQ_DATE,
JRNL_LN_REF,
LINE_DESCR,
IU_SYS_TRAN_CD,
IU_TRAN_CD,
IU_ANCHOR_FLG,
GL_DISTRIB_STATUS,
ЭКЗЕМПЛЯР ПРОЦЕССА,
DTTM_STAMP
ОТ PS_CG_WF_PRIOR_JGN ) GL_ENTRIES ";
--- Следующее относится к внутрихолдинговой партии
SET @Inter_Company = "вставить в PS_JGEN_ACCT_ENTRY
(SEQUENCENO,
БИЗНЕС-ЕДИНИЦА,
ИДЕНТИФИКАТОР ТРАНЗАКЦИИ,
LEDGER_GROUP,
ГРОССБУХ,
ACCOUNTING_DT,
APPL_JRNL_ID,
BUSINESS_UNIT_GL,
ФИНАНСОВЫЙ ГОД,
ОТЧЕТНЫЙ ПЕРИОД,
JOURNAL_ID,
JOURNAL_DATE,
JOURNAL_LINE,
СЧЕТ,
ALTACCT,
DEPTID,
ОПЕРАТИВНОЕ ПОДРАЗДЕЛЕНИЕ,
ПРОДУКТ,
FUND_CODE,
CLASS_FLD,
ПРОГРАММНЫЙ КОД,
BUDGET_REF,
ФИЛИАЛ,
AFFILIATE_INTRA1,
AFFILIATE_INTRA2,
CHARTFIELD1,
CHARTFIELD2,
CHARTFIELD3,
PROJECT_ID,
CURRENCY_CD,
STATISTICS_CODE,
ИНОСТРАННАЯ ВАЛЮТА,
RT_TYPE,
RATE_MULT,
RATE_DIV,
ДЕНЕЖНАЯ СУММА,
FOREIGN_AMOUNT,
STATISTIC_AMOUNT,
MOVEMENT_FLAG,
DOC_TYPE,
DOC_SEQ_NBR,
DOC_SEQ_DATE,
JRNL_LN_REF,
LINE_DESCR,
IU_SYS_TRAN_CD,
IU_TRAN_CD,
IU_ANCHOR_FLG,
GL_DISTRIB_STATUS,
ЭКЗЕМПЛЯР ПРОЦЕССА,
DTTM_STAMP)
ВЫБЕРИТЕ ROW_NUMBER() OVER (ORDER BY TRANSACTION_ID) AS SEQUENCENO, * FROM
( ВЫБИРАТЬ
'" + @busUnit + "' как BUSINESS_UNIT,
ИДЕНТИФИКАТОР ТРАНЗАКЦИИ,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК LEDGER_GROUP,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК ГРОССБУХ,
'" + @timestamp + "' как ACCOUNTING_DT,
'GENERIC' КАК APPL_JRNL_ID,
'" + @busUnit + "' как BUSINESS_UNIT_GL,
ФИНАНСОВЫЙ ГОД,
ОТЧЕТНЫЙ ПЕРИОД,
"КАК JOURNAL_ID,
'" + @timestamp + "' как JOURNAL_DT,
JOURNAL_LINE,
СЧЕТ,
ALTACCT,
DEPTID,
ОПЕРАТИВНОЕ ПОДРАЗДЕЛЕНИЕ,
ПРОДУКТ,
FUND_CODE,
CLASS_FLD,
ПРОГРАММНЫЙ КОД,
BUDGET_REF,
ФИЛИАЛ,
AFFILIATE_INTRA1,
AFFILIATE_INTRA2,
CHARTFIELD1,
CHARTFIELD2,
CHARTFIELD3,
PROJECT_ID,
CURRENCY_CD,
STATISTICS_CODE,
ИНОСТРАННАЯ ВАЛЮТА,
RT_TYPE,
RATE_MULT,
RATE_DIV,
ДЕНЕЖНАЯ СУММА,
FOREIGN_AMOUNT,
STATISTIC_AMOUNT,
MOVEMENT_FLAG,
DOC_TYPE,
DOC_SEQ_NBR,
DOC_SEQ_DATE,
JRNL_LN_REF,
LINE_DESCR,
IU_SYS_TRAN_CD,
IU_TRAN_CD,
IU_ANCHOR_FLG,
GL_DISTRIB_STATUS,
ЭКЗЕМПЛЯР ПРОЦЕССА,
DTTM_STAMP
ОТ PS_CG_WF_PRIOR_JGN
СОЮЗ
ВЫБИРАТЬ
'" + @busUnit + "' как BUSINESS_UNIT,
ИДЕНТИФИКАТОР ТРАНЗАКЦИИ,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК LEDGER_GROUP,
"ФАКТИЧЕСКИЕ ДАННЫЕ" КАК ГРОССБУХ,
'" + @timestamp + "' как ACCOUNTING_DT,
'GENERIC' КАК APPL_JRNL_ID,
Случай, когда '" + @busUnit + "' &ЛТ;&ГТ; CG_GLACCOUNT2 потом CG_GLACCOUNT2 еще '" + @busUnit + "' конец как BUSINESS_UNIT_GL,
ФИНАНСОВЫЙ ГОД,
ОТЧЕТНЫЙ ПЕРИОД,
"КАК JOURNAL_ID,
'" + @timestamp + "' как JOURNAL_DT,
JOURNAL_LINE,
СЧЕТ,
ALTACCT,
DEPTID,
ОПЕРАТИВНОЕ ПОДРАЗДЕЛЕНИЕ,
ПРОДУКТ,
FUND_CODE,
CLASS_FLD,
ПРОГРАММНЫЙ КОД,
BUDGET_REF,
ФИЛИАЛ,
AFFILIATE_INTRA1,
AFFILIATE_INTRA2,
CHARTFIELD1,
CHARTFIELD2,
CHARTFIELD3,
PROJECT_ID,
CURRENCY_CD,
STATISTICS_CODE,
ИНОСТРАННАЯ ВАЛЮТА,
RT_TYPE,
RATE_MULT,
RATE_DIV,
ДЕНЕЖНАЯ СУММА,
FOREIGN_AMOUNT,
STATISTIC_AMOUNT,
MOVEMENT_FLAG,
DOC_TYPE,
DOC_SEQ_NBR,
DOC_SEQ_DATE,
JRNL_LN_REF,
LINE_DESCR,
IU_SYS_TRAN_CD,
IU_TRAN_CD,
IU_ANCHOR_FLG,
GL_DISTRIB_STATUS,
ЭКЗЕМПЛЯР ПРОЦЕССА,
DTTM_STAMP
ИЗ PS_CG_WF_PRIOR_JGN ) GL_ENTRIES";
---- проверьте, является ли это внутрихолдинговым пакетом, и соответственно вызовите соответствующий оператор insert.
Выберите @IC_Flag = CG_INTERCOMPANY из PS_CG_WF_PRIOR_JGN;
Печать @IC_Flag;
IF (@IC_Flag = 'Y')
НАЧАТЬ
Принт ' Г это в компании;
Метод exec(@Inter_Company);
Печать "назад от исполнителя @Inter_company";
КОНЕЦ
ЕЩЕ
НАЧАТЬ
Печать 'не внутрихолдинговых' ;
Метод exec(@Non_Inter_Company);
Выведите 'Back from exec of @Non_Inter_company';
КОНЕЦ
КОНЕЦ
Что я уже пробовал:
Я погуглил ошибку, поместил LINENO 0 после начала, чтобы попытаться найти строку с ошибкой, и запустил SQL standalone. Не повезло. Любые мысли будут очень оценены.