Отчеты: Сводный менеджер: Создание нового отчета — различия между версиями

Материал из wiki.standart-n.ru
Перейти к: навигация, поиск
(3. Новая запись в SP$FRREPORTS)
(Новая запись в SP$ANALYTICS (Типы отчетов))
 
(не показано 17 промежуточных версии 2 участников)
Строка 1: Строка 1:
==1. Новая запись в SP$ANALYTICS (Типы отчетов)==  
+
Теги: добавить аналитический сводный отчет перенести отчеты
 +
 
 +
== Новая запись в SP$ANALITICS (Типы отчетов)==  
 
  D$UUID - идентификатор типа отчета, генерируется автоматически
 
  D$UUID - идентификатор типа отчета, генерируется автоматически
 
  D$SRVUPDDT - служебное поле, не заполняется
 
  D$SRVUPDDT - служебное поле, не заполняется
Строка 10: Строка 12:
 
  USERDATA - Зарезервированное поле для переноса настройки аналитических отчетов из автоматизации (Входящие параметры пользователя)
 
  USERDATA - Зарезервированное поле для переноса настройки аналитических отчетов из автоматизации (Входящие параметры пользователя)
 
  TMS_SID - Строковый код записи таблицы SP$GROUPS (SID). Определяет вызываемый TMS скрипт
 
  TMS_SID - Строковый код записи таблицы SP$GROUPS (SID). Определяет вызываемый TMS скрипт
 +
[[Файл:Новая_запись_spwdicts.jpg|center|Новая запись в SP$WDICTS]]
 +
Список возможных отчетов для формирования вы можете посмотреть в своднике, меню сервис - интерактивные отчеты.
 +
[[Файл:Список_интерактивных_отчетов.jpg|center|Создание новой ТМС]]
  
==2. Новая запись в SP$GROUPS (TMS скрипт)==  
+
== Новая запись в SP$GROUPS (TMS скрипт)==  
 
  В spacepro меню группы -  подпрограммы TMS
 
  В spacepro меню группы -  подпрограммы TMS
 
  Создаем новую подпрограмму, запоминаем код.
 
  Создаем новую подпрограмму, запоминаем код.
 +
[[Файл:Новая_ТМС_для_интерактивного_отчета.jpg|center|Список интерактивных отчетов]]
 
  Ищем подобный отчет, возьмем его для основания нашего отчета, запоминаем код.
 
  Ищем подобный отчет, возьмем его для основания нашего отчета, запоминаем код.
 
  В IBExperte в таблице SP$GROUPS находим подпрограмму основание, копируем поле DATA на диск
 
  В IBExperte в таблице SP$GROUPS находим подпрограмму основание, копируем поле DATA на диск
 
  Находим новую запись (будет в конце списка), в поле DATA загружаем с диска бинарный файл.
 
  Находим новую запись (будет в конце списка), в поле DATA загружаем с диска бинарный файл.
 +
[[Файл:Копирование_ТМС.jpg|center|Копирование ТМС]]
 
  SID - указываем строковый идентификатор, должен соответствовать TMS_SID из SP$ANALYTICS
 
  SID - указываем строковый идентификатор, должен соответствовать TMS_SID из SP$ANALYTICS
  
  
==3. Новая запись в SP$FRREPORTS==
+
== Новая запись в SP$FRREPORTS==
  
 
  В IBExpert создаем новую запись в SP$FRREPORTS.  
 
  В IBExpert создаем новую запись в SP$FRREPORTS.  
 
  Для удобства можно скопировать в поле DATA подобную печатную форму с другой записи данной таблицы.
 
  Для удобства можно скопировать в поле DATA подобную печатную форму с другой записи данной таблицы.
 +
Если в готовом интерактивном отчете не предполагается наличие печатной формы, то можно не создавать новую запись.
 +
[[Файл:Копирование_reports.jpg|center|Создание новой записи в SP$FRREPORTS]]
  
==4. Новая запись в SP$WDICTS==   
+
== Новая запись в SP$WDICTS==
 +
   
 +
Если интерактивному отчету будет соответствовать не только печатная форма, но и интерактивная сетка,
 +
то создаем необходимый справочник в SP$WDICTS
  
==5. Редактирование TMS скрипта==   
+
== Редактирование TMS скрипта==
 +
  Для редактирования скрипта с зажатой клавишей shift создайте отчет.
 +
Поскольку наш TMS скрипт будет уже не пустой, то нам остается только
 +
1. Исправить константы:
 +
    const WDICT_SID='';  //Код справочника SP$WDICTS. Если '', то создаваться не будет
 +
    REPORT_ID=79;  //Код отчета SP$FRREPORTS. Если 0, то создаваться не будет
 +
    ANALYTIC_TYPE='8328BFD7-BE61-3D4E-A536-B956951F386A'; //Код аналитического отчета SP$ANALYTICS   
 +
    [[Файл:констаны_тмс_интерактивного_отчета.jpg|center|Константы ТМС]]
 +
2. Написать хранимую процедуру формирования данных в IBExperte.
 +
    Указать ее выполнение в TMS в процедуре fill
 +
    [[Файл:Процедура_fill.jpg|center|Процедура Fill]]
  
==6. Редактирование формы==   
+
== Редактирование формы==
 +
  Для редактирования печатной формы нажмите на кнопку "печать в отдельном окне" с зажатой клавишей shift.
 +
На редактирование откроется та печатная форма, которую вы указали в константах TMS.
  
==7. Принцип хранения данных отчетов==
+
== Принцип хранения данных отчетов==
 +
Каждый сохраненный отчет делится на 2 и более таблицы хранения:
 +
1. SP$ANALYTIC_DOCS  - заголовочная часть отчетов
 +
    Запись в этой таблице формируется автоматически.
 +
2. Детализация отчета, которая может состоять из нескольких таблиц.
 +
    Например, для товарного отчета, это таблицы ANALYTIC_TO_TOTALSBEG, ANALYTIC_TO_ALLDATA, ANALYTIC_TO_KASSA и т.д.
 +
    данные в этих таблицах должны заполняться хранимой процедурой, которую указали в процедуре fill TMS отчета.

Текущая версия на 13:56, 14 октября 2022

Теги: добавить аналитический сводный отчет перенести отчеты

Новая запись в SP$ANALITICS (Типы отчетов)

D$UUID - идентификатор типа отчета, генерируется автоматически
D$SRVUPDDT - служебное поле, не заполняется
PARENT_UUID - код записи таблицы SP$ANALYTICS родителя. Иерархичность структуры
CAPTION - Название типа отчета
DESCR - Описание
SORTING - Порядок сортировки
STATUS - Статус (0-включен, 1-выключен)
DATA - Зарезервированное поле для переноса настройки аналитических отчетов из автоматизации (Настройка формирования)
USERDATA - Зарезервированное поле для переноса настройки аналитических отчетов из автоматизации (Входящие параметры пользователя)
TMS_SID - Строковый код записи таблицы SP$GROUPS (SID). Определяет вызываемый TMS скрипт
Новая запись в SP$WDICTS
Список возможных отчетов для формирования вы можете посмотреть в своднике, меню сервис - интерактивные отчеты. 
Создание новой ТМС

Новая запись в SP$GROUPS (TMS скрипт)

В spacepro меню группы -  подпрограммы TMS
Создаем новую подпрограмму, запоминаем код.
Список интерактивных отчетов
Ищем подобный отчет, возьмем его для основания нашего отчета, запоминаем код.
В IBExperte в таблице SP$GROUPS находим подпрограмму основание, копируем поле DATA на диск
Находим новую запись (будет в конце списка), в поле DATA загружаем с диска бинарный файл.
Копирование ТМС
SID - указываем строковый идентификатор, должен соответствовать TMS_SID из SP$ANALYTICS


Новая запись в SP$FRREPORTS

В IBExpert создаем новую запись в SP$FRREPORTS. 
Для удобства можно скопировать в поле DATA подобную печатную форму с другой записи данной таблицы.
Если в готовом интерактивном отчете не предполагается наличие печатной формы, то можно не создавать новую запись.
Создание новой записи в SP$FRREPORTS

Новая запись в SP$WDICTS

Если интерактивному отчету будет соответствовать не только печатная форма, но и интерактивная сетка,
то создаем необходимый справочник в SP$WDICTS

Редактирование TMS скрипта

Для редактирования скрипта с зажатой клавишей shift создайте отчет.
Поскольку наш TMS скрипт будет уже не пустой, то нам остается только
1. Исправить константы: 
   const WDICT_SID=;  //Код справочника SP$WDICTS. Если , то создаваться не будет
   REPORT_ID=79;  //Код отчета SP$FRREPORTS. Если 0, то создаваться не будет
   ANALYTIC_TYPE='8328BFD7-BE61-3D4E-A536-B956951F386A'; //Код аналитического отчета SP$ANALYTICS    
Константы ТМС
2. Написать хранимую процедуру формирования данных в IBExperte. 
   Указать ее выполнение в TMS в процедуре fill
Процедура Fill

Редактирование формы

Для редактирования печатной формы нажмите на кнопку "печать в отдельном окне" с зажатой клавишей shift.
На редактирование откроется та печатная форма, которую вы указали в константах TMS.

Принцип хранения данных отчетов

Каждый сохраненный отчет делится на 2 и более таблицы хранения:
1. SP$ANALYTIC_DOCS  - заголовочная часть отчетов
   Запись в этой таблице формируется автоматически.
2. Детализация отчета, которая может состоять из нескольких таблиц.
   Например, для товарного отчета, это таблицы ANALYTIC_TO_TOTALSBEG, ANALYTIC_TO_ALLDATA, ANALYTIC_TO_KASSA и т.д.
   данные в этих таблицах должны заполняться хранимой процедурой, которую указали в процедуре fill TMS отчета.