Структура бази даних
У цьому розділі довідки описано структуру бази даних, яку пропонується використовувати як проміжну базу даних. Наприкінці розділу наведено приклад БД у форматі MS Access. Її структура повністю аналогічна структурі БД у форматі MS SQL.
Shopdesk використовує лише деякі таблиці з бази даних ТЦУ:
- [articl] - статті руху
- [discount_rules] - правила знижок для клієнтів
- [izmer] - одиниці виміру
- [kat] - групи товарів
- [list] – товарні записи документів. Заповнюється, якщо використовується імпорт прибуткових накладних із замовлень постачальнику.
- [nakl] – документи. Заповнюється, якщо використовується імпорт прибуткових накладних із замовлень постачальнику
- [point] - довідник клієнтів і торгових точок
- [reestr] - реєстр товарів
- [tcu_par] - деякі параметри налаштування облікової системи
- [tovar] - довідник товарів
- [tovar_code] - штрихкод
- [user] - довідник користувачів
- [user_rights] - права користувачів
У перелічених таблицях використовуються лише деякі поля. Нижче наведено поля, які мають бути присутніми в цих таблицях, із поясненнями щодо окремих із них. За потреби можна ознайомитися з повною технічною специфікацією бази даних ТЦУ.
articl
Статті руху. Можуть бути окремі статті для продажу, повернення, інвентаризації, замовлення та прибуткової накладної. Ці статті мають бути активними (act_pass=False).
- articl_number
- articl_name
- act_pass
- завершено
discount_rules
Правила знижок. Таблиця може бути порожньою.
- discount_rules_number
- point_number - посилання на клієнта
- sales_sum
- discount_percent
- sales_period
- fact_sale_sum
izmer
Одиниці виміру.
- izmer_number
- izmer_name
kat
Групи товарів. Поле PointsGeneratePercent використовується для визначення коефіцієнта нарахування балів за групою товарів.
- kat_number
- kat_name
- top_kat
- discount_percent
- PointsGeneratePercent - коефіцієнт нарахування балів за групою. Наприклад, для алкоголю та цигарок = 0. Для інших товарів = 1. Використовується в режимі роботи з франчайзі.
- MacroGroupId - ID макрогрупи з БД CRM (режим роботи з франчайзі)
list
Таблиця товарних записів документа. Посилається на nakl через поле nakl_number. Заповнюється, якщо потрібно створювати прибуткові накладні імпортом із замовлень постачальнику.
- list_number – long, ID запису
- nakl_number – long, ID документа, який містить цей товарний запис
- tovar_number – long, ID товару з довідника товарів
- reestr_number – long, ID реєстрового запису з таблиці reestr. Може дорівнювати 0
- kol – double, кількість товару в одиницях виміру
- cena_opt – double, закупівельна ціна товару за одиницю виміру. Може дорівнювати 0; у цьому випадку касир має встановити закупівельні ціни самостійно після імпорту документа. У будь-якому разі, незалежно від того, встановить касир цю ціну чи ні, у бекофісі цю ціну має проконтролювати відповідальний співробітник перед затвердженням прибуткової накладної.
- cena_rozn – double, роздрібна ціна товару за одиницю виміру. Обов'язкове значення, оскільки касир не може редагувати ці значення. У бекофісі цю ціну має проконтролювати відповідальний співробітник перед затвердженням прибуткової накладної.
nakl
Таблиця документів. На неї посилається таблиця товарних записів List через поле nakl_number. Заповнюється, якщо потрібно створювати прибуткові накладні імпортом із замовлень постачальнику.
- nakl_number – long, унікальний номер документа в обліковій системі
- doc_number – text(255), обліковий номер документа, який виводиться на друк
- point1_number – long, номер торгової точки, на якій створено документ
- point2_number – long, номер контрагента (постачальника)
- date_utv – date, дата затвердження документа
- nakl_type - integer, енумератор типу документа. Для замовлення постачальнику = 19
- utv – boolean, ознака затвердженого документа. Імпортуються лише затверджені замовлення постачальнику
- articl_number – long, ідентифікатор статті з таблиці articl
- sum_opt – double, сума документа в закупівельних цінах
point
Контрагенти та торгові точки. Для торгової точки post = False. Обов'язково потрібно внести роздрібного покупця та всі торгові точки. Клієнти франчайзі зберігаються в іншій базі (CRM).
- point_number
- name_point
- ind_num
- address
- telefon
- post
- завершено
- mfo
- bank_account
- bank_name
- saldo
- bank_from_param
- name_firm_from_param
- name_firm
- comm_agent
- card_number
- card_activated
- discount_card_percent
- discount_type
- price_column_number
reestr
Залишки товарів та їхні роздрібні ціни.
- reestr_number
- point_number
- tovar_number
- kol
- cena_rozn
- kol_min
tcu_par
Параметри програми. Якщо використовується схема роботи з франчайзі, тут потрібно додати один параметр: param_name=”MerchantId” (без лапок), param_type=2, long_value=12345 (ідентифікатор франчайзі).
- param_name
- param_type
- text_value
- bool_value
- long_value
tovar
Довідник товарів.
- tovar_number
- tovar_name
- izmer_number - посилання на одиницю виміру
- kat_number - посилання на групу товару
- cena_rozn_sprav
- cena_rozn2
- cena_rozn3
- cena_rozn4
- cena_rozn5
- kol_default
- articul
- fiscal_group_number – фіскальна група товару. Від 1 до 8
- discount_limitation
- franch_top_id - якщо використовується режим роботи з франчайзі, тут вказується ID товару з БД CRM. Якщо не використовується, 0.
tovar_code
Штрихкоди товарів.
- tovar_code_number
- tovar_number - посилання на аналогічне поле таблиці [tovar]
- tovar_bar_code
user
Користувачі. Тут потрібні лише касири та адміністратор. Для адміністратора вкажіть admin=True. Касиру потрібно дозволити доступ до підсумків каси (cash_report_access=True), доступ до звітів (report_access=True) і торгівлю в мінус (negative_rests=True).
- user_number
- user_name
- user_fullname
- user_passwd - MD5-хеш пароля, доповнений на початку рядком "ver2". Наприклад, "ver2a0c758a9b1cf87e71176482d953d62"
- admin - True для адміністратора
- negative_rests
- max_discount
- cash_report_access
- report_access
- завершено
user_rights
Права користувачів за кожною з торгових точок. Адміністратора можна не прив'язувати до точок. Касиру потрібно дозволити редагування та затвердження чека.
- user_rights_number
- user_number - посилання на касира в таблиці [user]
- point_number - торгова точка, за якою визначається список прав. Посилання на таблицю [point]
- 00edit - редагування видаткової накладної. True для касира
- 00approve - затвердження видаткової накладної. True для касира
- 04edit – редагування актів переоцінки. True для касира
- 04approve - затвердження актів переоцінки. True для касира
- 07edit - редагування прибуткового касового ордера. True для касира
- 07approve - затвердження прибуткового касового ордера. True для касира
Для зразка пропонуємо завантажити базу даних, що використовується для резервної копії бази даних ТЦУ на робочому місці касира. Нагадуємо, що її структура повністю ідентична структурі проміжної бази даних, яку пропонується використовувати як проміжну ланку між вашою обліковою системою та робочим місцем Shopdesk.
Завантажити зразок бази даних
Перелік і структура таблиць, описані в цьому розділі, можуть незначно відрізнятися в пізніших версіях програми.
Останнє оновлення:
5/9/2026 8:25:12 PM
281