14:25 Отладка проектов АКП |
Во время запуска процедуры подготовки данных иногда выходят ошибки, по текстам которых не просто понять в чем дело. Для того чтобы разобраться, бывает полезно заглянуть в таблици #tmp_var_list или #tmp_var_list. Обычно проблема заключается в той строке, которая отличается от других - по ней легко выйти на имя переменной или измерения. Если не получилось разобраться, тогда можно запустить текст процедуры bap_sp_CreateSvodTbl, подав ей на вход айдишник проекта @id_prj и смотреть выполнение кода построчно. Чтобы отладка проходила быстрее, желательно максимально ограничить набор данных. Ниже код для заполнения и просмотра временных таблиц: if object_id(N'tempdb..#tmp_var_list') IS NOT NULL DROP TABLE [#tmp_var_list] CREATE TABLE [#tmp_var_list] ( NameVar Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, NameLFld Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, NameFTbl Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, IdFTbl int NULL, NameFFld Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, VarValue Varchar(500) COLLATE Cyrillic_General_CI_AS NULL ); exec bap_sp_GetVarFld 4 -- Поля из измерений if object_id(N'tempdb..#tmp_dim_list') IS NOT NULL DROP TABLE [#tmp_dim_list] CREATE TABLE [#tmp_dim_list] ( ID_Dim int NULL, Lev_num int NULL, NameLFld Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, NameFTbl Varchar(100) COLLATE Cyrillic_General_CI_AS NULL, IdFTbl int NULL, NameFFld Varchar(1100) COLLATE Cyrillic_General_CI_AS NULL, LevDType tinyint ) declare @id_prj int = 4 declare @_ID_DIM int declare @_DIM_Type int declare @_SVOD_TBL_NAME varchar(1000) DECLARE _DimLst CURSOR FOR SELECT ID_DIMAN, DIM_TYPE FROM bap_tb_dimans WHERE [id_prj] = @id_prj AND Dim_Used = 1 ORDER BY DIM_SORT OPEN _DimLst FETCH _DimLst INTO @_ID_DIM, @_DIM_Type WHILE @@FETCH_STATUS = 0 BEGIN EXEC bap_sp_GetLevs @id_prj, @_ID_DIM, @_DIM_Type, @_SVOD_TBL_NAME FETCH _DimLst INTO @_ID_DIM, @_DIM_Type END CLOSE _DimLst DEALLOCATE _DimLst
select * from #tmp_var_list select * from #tmp_dim_list |
|
Всего комментариев: 0 | |