В отличие от более ранних версий iScala хранит данные, как минимум в 2-х базах данных: в системной (по умолчанию ScaSystemDB) и в БД (или нескольких БД) с информацией делового содержания (по умолчанию ScalaDB).
Большинство таблиц имеет старый порядок именования вида MMNNCCYY, где MM – 2-х символьное наименование модуля, например, «GL» – General Ledger (Главная Книга), NN – номер таблицы внутри модуля, например, «06» (GL06 – проводки ГК), CC – код компании, например, «01», YY – финансовый год, например, «09» для годозависимых таблиц и «00» для годонезависимых. Таким образом, можно расшифровать 2 следующих примера:
- GL060108 – Таблица проводок Главной Книги компании «01» за 2008 финансовый год.
- SL010800 – Таблица «картотеки» покупателей для компании «08» (годонезависимая таблица).
Для того чтобы узнать название модулей можно заглянуть в системную базу данных в таблицу «ScaFeatures»:
select * from ScaFeatures (nolock)
Результат:
FeatureCode | FeatureName | Comment |
00 | System objects | Objects that are necessary for basic functionality |
AM | Asset Management | Change FA submodule |
CM | Contract Management | |
DI | Direct Invoicing | |
GL | General Ledger | |
HR | Resourse Management | |
MA | Market Database | |
MP | Material Production Control | |
OR | Sales Order | |
PA | Payroll | |
PC | Purchase Order | |
PL | Purchase Ledger | |
PN | Promissory Notes | |
PR | Project Management | |
SC | Stock Control | |
SL | Sales Ledger | |
SM | Service Order Management | |
SO | Other objects | |
ST | Statistics | |
SY | System Utilities/Office Autom. | |
UD | User-defined |
Для того чтобы понять назначение таблицы следует заглянуть в таблицу «ScaDBObjects», например, с помощью такого запроса:
select ObjectName as TableName, ObjectName + ' - ' + case rtrim(isnull(ExtendedComment,Comment)) when '' then Comment else rtrim(isnull(ExtendedComment,Comment)) end as TableDescription from ScaDBObjects (nolock) where left(ObjectName,2)='PL' order by ObjectName
В качестве результата данного запроса мы получим названия таблиц модуля «PL» (Purchase Ledger – Книга Закупок)
TableName | TableDescription |
PL01 | PL01 — Suppliers |
PL03 | PL03 — Purchase Ledger Invoices |
PL04 | PL04 — Purchase Ledger Invoice Journal |
PL05 | PL05 — Purchase Ledger Payment Journal |
PL07 | PL07 — Payment Proposal |
PL08 | PL08 — Purchase Ledger Parameters |
PL09 | PL09 — Purchase Ledger Automatic Accounting Table |
PL10 | PL10 — Payment Ledger |
PL14 | PL14 — Shipping Addresses |
PL15 | PL15 — Payment Methods |
PL16 | PL16 — Payment Methods Layouts |
PL17 | PL17 — VAT Transactions |
PL18 | PL18 — Withholding Tax Transactions |
PL19 | PL19 — Suppliers Templates |
PL21 | PL21 — Purchase Ledger Payments |
PL22 | PL22 — Payment Terms PL |
PL23 | PL23 — Payment Terms Descriptions |
PL24 | PL24 — Tax details for prepayment |
PL25 | PL25 — Tax details for payment |
PL30 | PL30 — Check Register |
PL44 | PL44 — Prepayment Documents |
PL45 | PL45 — Extended Bank Info |
PL46 | PL46 — Invoice OCR Payment Reference |
PL50 | PL50 — Payment Proposal Header |
PL51 | PL51 — Payment Proposal Lines |
PL56 | PL56 — Swedish BankGiro, PlusGiro services |
PL88 | PL88 — Check Printout |
PL92 | PL92 — Foreign Payment Temp File I/O |
PL93 | PL93 — Foreign Payment Temp File I/O |
PL95 | PL95 — Russian VAT wrk |
PL96 | PL96 — DueDate report |
PL97 | PL97 — Ledger Statement |
PL98 | PL98 — EC Tax Reports |
PLB1 | PLB1 — Transportation Terms |
PLB4 | PLB4 — Tax note description lines |
PLE0 | PLE0 — Spain Payment Parameters |
PLH3 | PLH3 — Recharge Invoice Accounts Payable Header |
PLH4 | PLH4 — Recharge Invoice Accounts Payable transaction lines |
PLH6 | PLH6 — Inter-Company Transaction Entry |
PLH7 | PLH7 — Entities and Amounts for current invoice(Work) |
PLHA | PLHA — Recharge Invoice Parameters |
PLHB | PLHB — Recharge Invoice Parameters — Target Company |
PLHC | PLHC — Work file for entering inter-company transactions |
PLHD | PLHD — Recharge Invoice Tax amount |
PLHE | PLHE — Recharge expense amounts |
PLHF | PLHF — Recharge Amounts |
PLHG | PLHG — Recharge Invoice Distribution Templates |
PLI1 | PLI1 — Payment Term Instalments PL Header |
PLI2 | PLI2 — Payment Term Instalments PL Lines |
PLI3 | PLI3 — Payment Term Instalments PL |
PLIN | PLIN — Invoice Based Intrastat PL |
PLL1 | PLL1 — Supplier Tax Exemptions |
PLL2 | PLL2 — Supplier Payment Balances |
PLL3 | PLL3 — Payment Proposal Retentions |
PLM5 | PLM5 — Bank Account Number for Currency Code |
PLR4 | PLR4 — PL Reversed Transaction |
PLT7 | PLT7 — Temp Tax table for autopayments |
PLTC | PLTC — Work File for Printing Tax Certificate |
PLXX | PLXX — PLXX Work File |
PLXY | PLXY — PLXY Work File |
Разумеется, большинство пользователей не утруждают себя запросами к базе данных «напрямую», используя взамен «ScaDBConv.exe»:

Но так как наша тема посвящена созданию и использованию отчётов MS SQL Server Reporting Services, мы познакомимся с готовым отчётом по таблицам и полям БД iScala, построенным с помощью этого инструмента:

Надо сказать, что разработчики серьёзно потрудились и снабдили некоторые поля расширенными комментариями, объясняющими бизнес логику того или иного возможного значения, логично этим было бы воспользоваться, не правда ли?
Содержание:
- Цели урока, Введение: 4 уровня отчетности в Scala/iScala
- Обзор структуры БД системы
- Знакомство с MS SQL Server Reporting Services
- Практическое создание отчётов: Создание общего источника данных
- Создание простейшего отчёта без параметров
- Публикация отчёта на сервере
- Модификация отчёта
- Добавление параметра «Код компании»
- Создание отчёта с элементом «Матрица»
- Добавление к проекту существующих отчётов
- Альтернативный вариант перехода из отчёта в отчёт: переход к URL-адресу
- Отчёты с многозначными параметрами
- Использование функций: Как вывести сумму прописью?
- Пользовательские «хотелки»: «А можно сделать сортировку и Автофильтр, как в Excel’е?»
- Подписки на отчёты
- Автоматизация создания связанных отчётов при сложной структуре
- Включение отчётов в меню iScala
- Кратко о реальном использовании MS SQL Server Reporting Services в компаниях-клиентах Epicor|Scala
- Более тесная интеграция MS SQL Server Reporting Services с iScala версии 2.3 SR2
- Как в отчёт MS SQL Server Reporting Services добавить возможность скрывать и показывать подробности?