Система автоматизации складского учета StoreHouse 4 позволяет полностью контролировать процесс управления производством в ресторанах, кафе и ресторанах быстрого обслуживания, работающих на системе управления R-Keeper.
С помощью StoreHouse 4 можно:
Система состоит из серверной и клиентской частей.
К серверной части относятся следующие приложения:
К клиентской части относятся следующие приложения:
Блок-схема взаимосвязи основных модулей
Серверная часть
Клиентская часть
StoreHouse 4 поставляется с аппаратным ключом защиты Guardant Stealth II. Ключ защиты устанавливается только на сервере склада - при подключении клиентов сервер проверяет ограничения лицензии, записанной в ключ.
Лицензия, записанная в аппаратный ключ, содержит ограничения по следующим параметрам:
Если ключ не установлен или неправильно настроен, клиент при подключении получит сообщение Ошибка чтения ключа защиты.
Если лицензия ограничена по дате или по количеству возможных подключений (определяется приобретенной лицензией), клиент получит сообщение Превышено допустимое количество соединений.
Обратите внимание, что при настройке интеграции с r_keeper_7, лицензия тоже используется. Поэтому, закройте клиентские подключения перед настройкой — иначе DataCollector не сможет подключиться.
Если вы хотите докупить лицензии на SH4, воспользуйтесь утилитой SHKey.exe. Утилита по-умолчанию находится в подкаталоге \SDBCli.
При работе с утилитой SHKey.exe рекомендуется подключать только один ключ защиты, предназначенный для склада.
Рис. Рабочее окно утилиты SHKey.exe для версии склада ниже 4.80 |
Рис. Рабочее окно утилиты SHKey.exe для версий склада выше 4.80 |
Важно: После попытки 7 (семь) раз сохранить некорректную лицензию, ключ будет заблокирован! Разблокировать ключ можно только в офисе компании UCS.
Для установки серверной части рекомендуется использовать ОС из семейства Windows NT: Windows 2000\XP\7\8\2003 Server и выше.
Для установки серверной части необходимо:
Примечание: Версия сервера склада определяется версией библиотеки \SDBSrv\ShServ.dll
Возможные варианты установки:
Примечание: Рекомендуется устанавливать SH4 на не системный раздел диска.
Для создания нового сервера или изменения конфигурации имеющегося используется приложение SdbsConf.exe. Оно по-умолчанию находится в папке \SDBCli
Для создания сервера необходимо:
После выбора сервера установленные параметры автоматически отображаются в соответствующих полях:
Описание параметров сервера:
Важно: Сервер всегда хранит только одну резервную копию базы данных в сутки. Если в каталоге хранения резервных копий уже есть файл бекапа за текущие сутки (например, сделанный вручную), сервер не будет создавать новую резервную копию, независимо от установленного параметра автоматического резервного копирования.
Важно: Крайне рекомендуется всегда включать режим автоматического резервного копирования с опциями "Backup time" и "Stop server on error" - отсутствие актуальных резервных копий самая частая причина невозможности оперативно восстановить работу системы в случае поломки БД!
Примечание: Подробная информация о резервном копировании и обслуживании БД StoreHouse 4 описана в этой статье.
20.05.2005 20:40:15- Server started version=1.15 subkey=SDBSERV def working set size min=204800, max=1413120 max cache memory=1024 pages (4096 K)
Возможны три варианта:
Возможные режима запуска:
Рекомендуется использовать режим запуска в качестве системной службы (Service).
Важно: Рекомендуется всегда включать параметр Automatic recovery.
На закладке Settings (Настройки) содержится единственный параметр Root directory:
Важно: После изменения любых настроек их необходимо сохранить с помощью кнопки Save.
Сервер склада может быть запущен в трех режимах:
В случае запуска в качестве сервиса состояние сервера можно проверить через стандартную оснастку Windows «Пуск» \ «Настройка» \ «Панель управления» \ «Администрирование» \ «Службы».
Убедитесь, что соответствующий сервер (Sdb server : <имя сервера>) находится в состоянии «Работает» и тип запуска установлен в «Авто»:
Если служба не запущена, запустите её.
В случае ручного или автоматического запуска в системном трее должна появиться иконка сервера:
Если в системе несколько серверов и используется ручной режим запуска (Manual), сервер необходимо запускать с ключом /n<ИмяСервера>
Например, есть два сервера с именами SDBSERV01 и SDBSERV01 - для ручного запуска необходимо выполнить следующие команды:
Sdbserv.exe /nSDB01SERV Sdbserv.exe /nSDB02SERV
Примечание: В случае автоматического запуска или запуска в качестве сервиса, конфигуратор сам создаст необходимые настройки и сохранит их в реестре.
Для установки клиентской части необходимо:
Примечание: Рекомендуется выполнять установку в раздел диска, который не является системным.
После установки клиентской части необходимо настроить параметры подключения к серверу(ам) и другие сервисные параметры.
Для настройки параметров клиента используется приложение SHSetup.exe (по-умолчанию находится в директории \SH4):
В верхней части окна SHSetup.exe отображается список серверов (баз данных), которые будут доступны для подлючения на данном рабочем месте (по-умолчанию список пуст).
Для добавления нового сервера необходимо:
После добавления сервера необходимо настроить параметры подключения в разделе "Параметры подключения":
С помощью операций «Добавить сервер» \ «Удалить сервер» можно добавить и удалить строки для добавления дополнительных серверов - операция также доступна по правому нажатию кнопки мыши в верхнем окне.
Далее расположен раздел "Прочие параметры":
Примечание: Дополнительная информация о значениях кеша есть здесь - https://support.ucs.ru/ru/node/9578. Рекомендуется ознакомиться.
Важно: После настройки всех параметров необходимо сохранить конфигурацию нажав кнопку «Сохранить».
В дистрибутиве StoreHouse 4 не поставляется пустая база данных.
Сервер склада может управлять только одним экземпляром базы данных - при необходимости использовать несколько баз данных, требуется запустить соответствующее количество экземляров серверов.
Для создания БД используется приложение Sdbman.exe (находится в директории \SH4)
Примечание: Для создания и обслуживания БД рекомендуется установить на сервер клиентскую часть и использовать локальное подключение (Local) к серверу
Для создания базы данных необходимо выполнить следующие действия:
127.0.0.1:pTa3333
где
Если сервер слушает все порты, можно указать строку вида 127.0.0.1:pT, т.е. без указания порта.
Важно: Предельный размер базы данных StoreHouse v4 примерно 1,8Гб (точно - 1792 Мб или 458752 страниц)
После входа в приложение на экране отобразится два сообщения с ошибками - необходимо проигнорировать эти сообщения и войти в приложение:
После выполнения запроса в нижнем части окна появится сообщение о результате:
Для восстановления необходимо иметь файл резервной копии базы данных (*.bkp) - допускается восстановление резервных копий, выполненных на более младших версиях сервера (например, при обновления ПО StoreHouse 4).
Для создания резервной копии базы данных необходимо:
Примечание: Создание резервной копии базы данных также можно выполнить с помощью приложения \SH4\Shc.exe - операция «Инструменты» ⇒ «Резервное копирование»
Рекомендуется использовать локальное (Local) подключение при восстановлении базы данных, если используется подключение по протоколу TCP/IP, в качестве имени сервера необходимо указать строку вида:
127.0.0.1:pTa3333
где
Если сервер "слушает" все порты, можно указать строку вида 127.0.0.1:pT, т.е. без указания порта.
Примечание: При восстановлении базы данных рекомендуется устанавливать размер файла базы данных примерно в три раза больше, чем размер файла резервной копии - в дальнейшем размер базы данных можно изменить с помощью приложения Sdbman.exe
Важно: Не имеет значения, какое имя и пароль администратора использовались в исходной базе данных - при восстановлении из резервной копии они будут перезаписаны новыми значениями.
Процесс обновление ПО StoreHouse 4 фактически состит из удаления текущей версии, установки требуемой версии и восстановлении резервной копии текущей рабочей базы данных.
Процесс обновления можно разделить на два этапа:
Перед обновления серверной части необходимо выполнить следующие действия:
Дальнейший процесс обновления соотв. процессу установки серверной части:
Если новая версия StoreHouse требует перезаписи ключа защиты (см. историю изменений в файле ftp://ftp.ucs.ru/storehouse/sh4/Ver4.txt), выполните процедуру, описанную в разделе "Дополнительные подключения"
Далее необходимо восстановить параметры и базы данных серверов:
Перед обновления клиентской части необходимо выполнить следующие действия:
Дальнейший процесс обновления соотв. процессу установки клиентской части:
Далее необходимо восстановить конфигурацию клиентской части:
Отдельно стоит уделить внимание макетам печатных форм:
Примечание: При отсутствии информации какие формы были модицированы, рекомендуется скопировать все формы из сохраненной резервной копии предыдущей рабочей директории \SH4\RPT
Примечание: В файле \SH4\SH.RPT хранится сопоставление макетов печатных форм и соответствующих им отчетов или документов - если не использовать ранее сохраненную копию файла SH.RPT, необходимо будет заново вручную подключать дополнительные отчеты в SH4
После завершения восстановления конфигурации, необходимо проверить наличие ярлыков и работоспособность всех используемых клиентских приложений.
После создания файла test.udl запускаем файл "Settings.exe". При первичном запуске создаются таблицы в БД (назначение таблиц см. в приложении 1).
Рис. 5 – Подтверждение того, что соединение с сервером БД установлено
Описание настроек:
1. Путь к UDL-файлу - полный путь до файла настройки связи с SQL-базой
2. Пароль к БД - пароль для пользователя sa к базе SQL
3. Автовыгрузка с - дата с которой будут выгружены данные при первом запуске DataCollector, если параметр отключен и выгрузка данных не производилась - будут выгружены все данные имеющиеся в базе.
4. Частота обновления - периодичность с которой будет запускаться DataCollector - не рекомендуем выставлять слишком маленькие значения.
5. Сортировка списков - настройка сортировки серверов SH4(если их несколько)
6. Таймаут выполнения запроса - время ожидания выполнения запросов к SQL-серверу
Рис. 6 – Настройки импорта
Флаг «Активен» - определяет использование выделенного сервера для импорта/экспорта.
Флаг «Импорт в SH» - при наличии данного флага для данного сервера возможен импорт данных из R-Keeper V7 в StoreHouse V4.
Область «Основные параметры»
В области «Основные параметры» отображается информация выбранного сервера: имя сервера (то, что будет отображено слева в "Списке серверов StoreHouse"), ip-адрес, порт для подключения, имя пользователя (StoreHouse), пароль (к БД StoreHouse).
Область «Параметры импорта»
Вид закладки «Параметры импорта» зависит от выбранного принципа выгрузки документов в StoreHouse: по ресторанам или по концепциям.
Если используется выгрузка по концепциям, то в менеджерской РК7 должны быть заведены соответствующие концепции и связаны с ресторанами (рис.6а).
В версии SHCR ver. 7.5.23.0 добавлен новый фильтр меню по расписанию (список доступности).
Работает только для выбранного конкретного ресторана.
При выборе всех ресторанов или концепции, данный фильтр не работает.
Особенность:
Блюдо не выгружается, если у выбранного ресторана задан период, в котором нет детализаций.
В Остальных случаях, если период не выбран или у периода есть хоть 1 детализация, блюдо выгружается.
Рис.6а
Вид области «Параметры импорта» при выгрузке по ресторанам представлен на Рис. 6 – Настройки импорта.
Флаг «Категории заказа по использованию» - при наличии данного флага в БД StoreHouse будут выгружаться документы расхода с категориями заказа (местами реализации), котрые определены в использовании (см. руководство по R-Keeper V7)
Для сопоставления типов валют R-Keeper V7 и Типов оплат StoreHouse необходимо нажать клавишу «Маппинг способов оплаты» (см. рис. 8). Если напротив способов оплат R-Keeper V7 не будет установлен соответствующий тип оплат StoreHouse, в базе StoreHouse создадутся новые типы оплат (в соответствии с типами оплат R-Keeper).
Настройка «Доп. Фильтры» позволяет выбирать, по какой валюте/типу оплат выгружать расходы в StoreHouse. Из-за этой настройки сумма расхода за день в R-keeper может не соответствовать сумме расхода в StoreHouse. При группировке по причинам удаления кнопка «Доп. фильтры» неактивна.
В этом разделе можно поставить флаг «По нулевой цене» , который позволяет выгружать товары из R-keeper с нулевой ценой. Это полезно, например, для корректного учёта продаж за бонусы Plazius в StoreHouse.
В StoreHouse в документе расхода назначается Категория расхода, соответствующая способу группировки при загрузке данных. В пункте «Разбивка по складам» определяются настройки позволяющие разделять документы расхода по выбранному типу группировки и одновременно по складам списания.
Пример окна «Разбивка по складам» представлен на Рис. 9.
Рис. 9
Для добавления новой строки необходимо выбрать пункт «Добавить» из контекстного меню, затем в открывшемся окне (см. Рис. 10) необходимо заполнить поля.
Рис. 10
Склад - склад списания товара;
Заменяемая Категория - категория расхода, определяемая «по умолчанию» при импорте данных их R-Keeper.
Заменяющая Категория - категория расхода, которая будет присвоена документу расхода в StoreHouse в зависимости от склада списания товаров.
Для экспорта информации в SQL-базу (то есть выгрузка данных из StoreHouse (накладные и товары) в таблицы SQL), необходимо установить флаг «Экспорт в SQL».
Для выгрузки в таблицы SQL фудкоста, рассчитанного в StoreHouse, необходимо установить флаг «Обрабатывать фудкост».
Для расчета фудкоста обязательно выбрать группы для внутренних корреспондентов и группы корреспондентов для списания боя/порчи (перечень зависит от настроек StoreHouse). Более подробно ознакомиться с расчетом фудкоста можно в руководстве по StoreHouse.
Если требуется передавать информацию о прейскурантах в таблицы SQL, необходимо установить флаг «Обрабатывать прейскуранты».
Если требуется передавать информацию о свойствах товаров в таблицы SQL, необходимо установить флаг «Обрабатывать свойства товаров».
Примечание: для того чтобы не выгружать из RK7 в SH4 наценку, которая определена для механизма импорта предоплаченных заказов из EDI в RK7, в настройках появился параметр "Не учитывать предоплаты". Поддержано в SHCR ver. 7.5.19.1+.
К таким наценкам могут относиться например наценки, которые используется в случае оплаты заказа баллами из какой-либо внешней системы лояльности.
Если в r_keeper_7 заведено более двух налогов, то необходимо правильно передавать суммы в документы расхода.
Для назначения ставки налогов в карточку товара StoreHouse_4
Если используется более 2х налогов в r_keeper_7, то импорт налоговых сумм в расход StoreHouse_4 проводить только по r_keeper_7 (по StoreHouse нецелесообразно, т.к. нет возможности определить все ставки, для правильных расчетов сумм)
Для просмотра существующих задач нажимаем кнопку «Просмотр задач» (см. рис. 13).
Рис. 13 – Просмотр задач для выбранного сервера
Для просмотра сведений о задачах, например, выполненных с ошибкой, необходимо щелкнуть правой кнопкой мыши по интересующей задаче, нажать «Сведения» (см. рис. 14).
Рис. 14– Сведения о задаче
В стартовом окне мастера создания задачи необходимо выбрать сервер StoreHouse (см. Рис. 15) и нажать «Далее».
Рис. 15 – Выбор сервера SH4
В открывшемся окне выбираем категорию нового задания, нажимаем «Далее» (см. рис. 16)
Рис. 16 – Выбор задания
В следующем окне выбираем начальную и конечную даты периода, за который хотим получить отчет (см. рис. 17), нажимаем «Далее».
Рис. 17 – Выбор периода желаемого отчета
В следующем окне назначаем время запуска задания (задачу можно выполнить немедленно, либо в заданное время и дату (см. рис. 18). Т.е. запуск "немедленно" используется для одноразовых задач "прямо сейчас", запуск по времени уточняет время запуска задачи, галочка "повторять каждый день" позволяет сделать задачу "ежедневной", при этом будут импорироваться все необработанные смены, т.е. если служба не запускалась неделю(а продажи за это время были) то при запуске импортируются данные о продажах за весь этот период.. Нажимаем «Далее». После этого появится окно со сведениями о созданном. Просматриваем, все ли верно, нажимаем «Сохранить».
Затем в открывшемся окне будут отображены данные о сформированном расписании. Пример представлен на Рис. 19. Для сохранения настроек необходимо нажать клавишу «Сохранить».
Рис.19
Таблица 1 - Назначение SQL - таблиц
Наименование таблицы |
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
Из StoreHouse 4 в r_keeper_7 можно импортировать данные в режиме онлайн. Для этого необходим Feature Server, идущий в комплекте с интерактивными отчетами. Соответственно, перед настройкой импорта, у вас должно быть установлены и запущены:
i_Guid={D54BA83D-EA0F-4ADC-834D-70C336259F6D}
instance_name=171848
MasterServer=1
Импортировать из r_keeper_7 можно следующие данные:
Если у вас установлена старая версия плагина интерактивных отчетов и Feature Server, их лучше обновить. В ранних версиях FS есть требование о необходимости установки FS и SQL на одном компьютере, но с версии 1.36 это не актуально.
Для обновления Feature Server и плагина:
Для работы импорта необходима настроенная связь с MS SQL и интерактивных отчётов.
Запустите Сервер справочников, Common Server, Feature Server.
CREATE VIEW [dbo].[PLG_OBJECTS] AS SELECT GUIDSTRING ,CODE ,NAME ,ALTNAME ,STATUS FROM dbo.RESTAURANTS WHERE (STATUS = 3)
SH4_Class={71B5617A-00D7-48EE-91A4-4A82C4F62642}
[PLG_ACC] use_accounts = 1 [PLG_PLAN] use_plan_params = 1 [PLG_SH] use_sh_params = 1
Для работа импорта на компьютере необходимо зарегистрировать библиотеку SH4ole.dll. Для этого есть специальная утилита RegOle. Скачайте ее по ссылке: ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/shOLE_4_45_66.7z
Запустите серверы:
И откройте менеджерскую станцию.
Если все настройки правильные, Feature Server начнёт загружать данные из StoreHouse 4 в r_keeper_7 за выбранный период:
Если в логе Feature Server есть строчки Date... Invoice load, значит всё работет правильно.
Пересчитать данные StoreHouse можно зайдя в Интерактивные Отчеты (ИО) > Отчеты по безопасности > Системные операции > Пересчитать данные SH.
Из StoreHouse 4 можно импортировать себестоимость товаров в r_keeper_7.
Для настройки импорта себестоимостей необходимо скопировать DLL-файлы из папки StoreHouse, а затем сделать настройки в менеджерской станции. Не забудьте настроить себестомости в StoreHouse, чтобы было что импортировать.
Импорт можно запускать 2-мя способами. Непосредственно из меню и через импорт данных.
Чтобы быстро импортировать только нужную группу меню, импорт можно запускать непосредственно из меню. Для этого:
Реализовано несколько видов взаимодействия r_keeper 7 и Storehouse 4:
[REFSERVER7] ServerName = TEST_RK7SRV ; Укажите здесь имя сервера справочников или сервера отчетов r_keeper_7. ClientName = SH4cli ; Имя клиента. Должно быть уникальным! NetworkTimeout = 3600000 ; Таймаут - 1 час ImportMode=0 ; Режим импорта: 0 – по сети с сервера, 1 – из файлов. ImportPath= ; Путь к файлам данных. Если режим импорта 1 (импорт из файлов), то указывается либо путь к каталогу с файлами данных (получаемыми из менеджерской), либо путь вида: HKLM\SOFTWARE\UCS\SHTrans\MYSERV\Settings\2. В таком случае путь будет взят из значения ключа srcPath в реестре по адресу, заданному ImportPath. (Корневая ветка – всегда HKEY_LOCAL_MACHINE). RestaurantCode=0 ; Здесь можно указать Код ресторана. Это необязательная настройка, она позволяет загрузить продажи только из одного ресторана с этим кодом, если импорт по сети (ImportMode=0). Со значением 0, загружаются данные по всем ресторанам. Элементы меню и модификаторы будут закачиваться те, что в торговой группе, заданной в свойствах этого ресторана и те, что продавались в этом ресторане. Остальные справочники, кроме черновиков всегда закачиваются полностью. [NETKERN] PROTOCOLS = tcpsoc.DLL ;NODISCONNECTEVENTS = 1 [TCPSOC] listen = 0 ;!!! [TCPDNS] ;TEST_RK7SRV=127.0.0.1:3639
Подробнее о настройке читайте в руководстве пользователя https://docs.ucs.ru/uploads/StoreHouse.pdf
В менеджерской: меню Сервис – Экспорт Данных – Экспорт Данных StoreHouse. Необходимо указать даты экспорта (с, по), тип группировки (если тип группировки не совпадет с типом, указанным в IrkSetup – будет ошибка), каталог для сохранения файлов.
В файле rk7tosh4.ini необходимо указать режим импорта (из файлов) и каталог, либо ветвь реестра, откуда следует взять путь к файлам для импорта.
Примечание: данный механизм не поддерживается с версий 7.5.7.65. Рекомендуется использовать DataCollector.
Возможные параметры свойства ExecuteData (параметры разделяются "точкой с запятой"):
Пример содержимого свойства ExecuteData:
Формат командной строки ImportRK.exe:
ImportRK.exe <ИмяСервераСклада> <КодРесторана> %1 <ПризнакАвтоматическогоСписания>
где <ИмяСервераСклада> - имя, по которому определяются параметры подключения к серверу склада
Важно: параметр <ИмяСервераСклада> должен в точности соответствовать имени сервера, прописанного в разделе реестре HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHTrans (или HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\UCS\SHTrans для 64-х битных ОС).
Например, если в реестре параметры для нашего сервера прописаны в разделе HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHTrans\192.168.0.1, параметр <ИмяСервераСклада> должен быть 192.168.0.1
<КодРесторана> - уникальный код ресторана (для)
%1 - начальная дата импорта; данный параметр передается в bat-файл внешней обработкой (то есть, при запуске bat-файла значение %1 будет заменено на фактическое)
<ПризнакАвтоматическогоСписания> - 0 - списывать расход автоматически, <любое значение, отличное от нуля> - не списывать автоматически
Пример содержимого файла Some.bat:
сls cd c:\ucs\sh4\ ImportRK.exe SDBSERV 17 %1 0 Pause
Где
cd c:\ucs\sh4\ - расположение файла ImportRK.exe
SDBSERV - имя SH4
17 - внешний код ресторана
%1 - параметр
0- признак необходимости списания расхода
Для корректной работы ImportRK.exe необходимо настроить параметры импорта через IRkSetup.exe.
Обязательно указать:
Описана в отдельной статье: https://support.ucs.ru/ru/node/9653
Для импорта справочников и расхода блюд из системы R-Keeper v7 (далее RK7) в систему StoreHouse v4 (далее SH4) совместно с параметрами IRkSetup.exe и прочими настройками, используется транспортная библиотека SHTR.DLL. Библиотека отвечает за загрузку данных в SH – SHTR.DLL описание (Incl.D). Стандартная библиотека выгружает: Группы станций, Товарные группы, Категории расхода (причины удаления), Категории расхода (валюты), Категории расхода (типы оплат), Товары, Расход блюд (за период указанный при импорте)
Расход блюд выгружается с учетом всех скидок/наценок. НДС в документ расхода проставляется из карточек товаров SH. НДС для товаров проставляется вручную в словаре товаров. Тип группировки (причины удаления, валюты, типы оплат, загрузка по складам списания) документов расхода задается в приложении IRKSETUP.EXE
Для использования библиотеки она должна быть скопирована в рабочую директорию \SH4.
Загрузить различные версии библиотеки можно с FTP-сервера ftp://ftp.ucs.ru/storehouse/sh4/shtr.dll/RK7
Примечание: Для определения версии и описания библиотеки необходимо открыть свойства файла SHTR.DLL в проводнике Windows.
№ п.п. |
Описание библиотеки |
Описание |
0 |
Incl.D |
Импортирует:
Особенности:
|
Кроме стандартной существуют специальные модификации библиотеки SHTR.DLL, которые влияют на внутреннее содержимое документов расхода, суммы и т.д., формируемые в процессе импорта документов.
Основные настройки импорта производятся в приложении IRkSetup.exe и аналогичны настройкам при использовании стандартной библиотеки SHTR.DLL
№ п.п. |
Описание библиотеки |
Описание |
1 |
Empty.DL, Incl.D |
Используется для загрузки документов расхода в локальный склад, когда сеть предприятий работает со StoreHouse HeadOffice (далее SHHO). Данная библиотека не импортирует меню, так как меню рассылается из системы SHHO, документы расхода импортируются как при работе со стандартной библиотекой SHTR.DLL |
2 |
Excl.D |
Библиотека для импорта документов расхода без учета скидок/наценок, то есть документы расхода по отпускным ценам. Все остальные функции аналогичны стандартной библиотеке SHTR.DLL |
3 |
Empty.DL, Excl.D |
Модификация библиотеки, описанной в п.3, для работы с SHHO |
4 |
Incl.D, Tr.Tax |
Библиотека для импорта документов расхода с группировкой блюд по ставкам НДС в документе расхода. Если ставка налога в одной налоговой группе RK7 отличается в зависимости от заданных условий (категории, тип заказа), то при использовании данной библиотеки одно и то же блюдо импортируется несколькими строками согласно реализованным ставкам НДС (пример: тип заказа «в зале» – НДС 18%; тип заказа «на вынос» - НДС 10%. Если реализовали одно блюдо и так и так, то данная позиция будет в документе расхода двумя строками) Ставки НДС будут проставлены в документ расхода, но на карточки товаров данная ставка назначена не будет - отпускной НДС на карточки товаров нужно назначать вручную! |
5 |
Empty DL,Incl.D,Tr.Tax |
Модификация библиотеки, описанной в п.5, для работы с SHHO |
6 |
Excl.D,Tr.Tax |
Библиотека для импорта документов расхода без учета скидок/наценок и с группировкой блюд по ставкам НДС в документе расхода. Данная библиотека совмещает в себе функционал библиотеки из п.2 и п.3. Если ведется разделение ставок НДС в одной налоговой группе, например в зависимости от типа заказа или от категории, то при использовании данной библиотеки товары будут разделены согласно реализованным ставкам НДС. |
7 |
Empty DL,Excl.D,Tr.Tax |
Модификация библиотеки, описанной в п.7, для работы с SHHO |
Складскую систему "Store House 4" можно связать с бухгалтерской системой - "1С Бухгалтерия". Данный функционал (обработка) приобретается отдельно и защищен лицензионным ключом Guardant. Ниже будут рассмотрены варианты поддерживаемого связкой ПО, общие требования и рекомендации, а также информация по установке и настройке.
Важно! Перед установкой обработки необходимо знать заранее, какая версия SH4 и какая редакция, платформа, конфигурация 1С установлены на объекте, так как не все версии программных комплексов можно связать между собой!
Важно - 2. Выгружать проводки без указания номенклатурной группы нельзя и дорабатываться этот функционал не будет.
Версия SH4 | Редация 1С, каталог на ФТП | Платформа 1С, каталог на ФТП | Конфигурация 1С | sh4book.dll | Версия обработки | Файл keys.num | ||
минимум - SH 4.70.172 и выше (рекомендуется 4.95 и выше)
|
1.6 | ftp://.../storehouse/sh4/1C/Buh 1.6 | 8.1 | .../Buh 1.6/Platform_8_1/ | "1С Бухгалтерия" | не ниже 4.5.6.0 | 3.02 | не используется |
8.2 | .../Buh 1.6/Platform_8_2/ | |||||||
2.0 | ftp://.../storehouse/sh4/1C/Buh 2.0 | 8.1 | .../Buh 2.0/Platform_8_1/ | "Бухгалтерия предприятия КОРП" | не ниже 4.19.10.0 | 5.01 | используется | |
8.2 |
.../Buh 2.0/Platform_8_2/ | "Бухгалтерия предприятия" | 5.03 | |||||
"Бухгалтерия предприятия КОРП" | ||||||||
8.2.15 и выше |
.../Buh 2.0/Platform_8_3/ | "Бухгалтерия предприятия" | ||||||
"Бухгалтерия предприятия КОРП" | ||||||||
3.0 | ftp://.../storehouse/sh4/1C/Buh 3.0 | 8.2.17 и выше | .../Buh 3.0/Platform_8_2/ | "Бухгалтерия предприятия" | не ниже 4.15.16.0 | 6.08 и выше | не используется | |
8.3.3 и выше | .../Buh 3.0/Platform_8_3/ |
Установка складывается из распаковки дистрибутива и копирования файлов в нужные каталоги. Также, в дистрибутиве обработки, как правило идет win-инсталлятор, которым чаще всего пользуются если и 1С и SH4 вместе со своими базами находятся локально на одном ПК.
Сама связка представлена в виде нескольких файлов:
"Пуск"\"Выполнить" в окне набрать: "regsvr32 <папка в которой установлен клиент Store House>\Sh4book.dll"
"Пуск"\"Выполнить" в окне набрать: "regsvr32 <папка в которой установлен клиент Store House>\Midas.dll"
Примечание: если при открытии внешней обработки, появляется сообщение "Нарушение прав доступа", то выполните действия пункта ниже.
Документы: 0 ; Код соответствия документов SH4 выгруженным документам в 1С. Заполняется при использовании нискольких баз SH4. Справочники: 0 ; Этот код, не используется. Править его не нужно, т.к. этот функционал остался на стадии разработки.
Важно! по этим реквизитам документов, в случае если например, рабочий файл keys.num утерян/удален можно вяснить этот код и вписать его в новый keys.num. Если на рабочей и настроенной связке заменить keys.num на некорректный, то соответсвие документов в базах будет нарушено!
Если при открытии внешней обработки или отчёта через меню Файл->Открыть
появляется ошибка "Нарушение прав доступа": "Нарушение прав доступа",
то сделайте следующее:
\SH4\1C\SH4_Base1\ SHto1C.epf keys.num: Документы: sh1 settings.ini
- первый экземпляр.
\SH4\1C\SH4_Base2\ SHto1C.epf keys.num: Документы: sh2 settings.ini
- второй экземпляр и т.д.
Библиотека SH4book.dll защищена ключем Gurdant. Для использования выгрузки нужно получить физический ключ. На сервере лицензирования лицензия называется R-Keeper модуль Выгрузка из SHV4 в 1CV8 ПО.
Обработка будет запускаться и работать только компьютере, к которому подключен лицензионный ключ.
Важно! Если в дальнейшем будет использоваться обрезание базы данных SH (любым способом) - после КАЖДОЙ обрезки необходимо в SH ЗАЧИСТИТЬ старый "код базы" 1С ("Сервис"\"Собственные реквизиты"), а в настройках "1С" прописать НОВЫЙ код 1С. Иначе произойдет РАССИНХРОНИЗАЦИЯ баз данных! Подробнее в статье об обрезке БД SH здесь - http://support.ucs.ru/ru/node/6701.
- а так же:
Важно! Атрибут создается только для собственных реквизитов, в отличие от предыдущих версий выгрузки данных (атрибут создавался для словарей). Данный код будет определяющим для связи баз Store House и 1С. Если данный код будет удален из базы Store House, синхронизацию нужно будет провести заново.
Примечание: если при попытке работы с выгрузкой появляется сообщение:
То необходимо отключить запрет открытия модальных окон в настройках самой 1С.
Документ содержит общую техническую информацию и информацию по установке и настройке ПО, пользовательская документация по модулю "Алкогольная декларации" доступна на FTP ftp://ftp.ucs.ru/books/alc_declaration_user_manual.pdf
ЕГАИС - Единая государственная автоматизированная информационная система учета объема производства и оборота этилового спирта, алкогольной и спиртсодержащей продукции. Система предназначена для осуществления государственного контроля за рынком алкогольной продукции на территории РФ.
Для розничной торговли внедрение системы разбито на два этапа:
Исключение составляет торговля пивом и общепит - эти сферы ограничиваются только подтверждением закупок.
На предприятиях общественного питания алкоголь может быть реализован только на розлив (реализация алкоголя в закрытой таре на вынос является нарушением), т.е. розничной продажи алкоголя в предприятиях общепита нет и подтверждать требуется только факт закупки.
ПО StoreHouse v4 было доработано для возможности работы с системой ЕГАИС начиная с версии 4.101.332. Основное приложение в составе StoreHouse v4 для взаимодействия с системой ЕГАИС - Sh4decl.exe ("Алкогольная декларация")
Функции, реализованные в StoreHouse v4 в рамках взаимодействия с ЕГАИС:
Федеральная служба по регулированию алкогольного рынка РФ, Росалкогольрегулирование - http://fsrar.ru
Public Key Infrastructure - инфраструктура открытых ключей в криптографии, набор средств (технических, материальных, людских и т. д.), распределённых служб и компонентов, в совокупности используемых для поддержки криптозадач на основе закрытого и открытого ключей; система, позволяющая удостоверится, что открытый ключ принадлежит именно тому лицу, за которое оно себя выдаёт - использует для этого центры сертификации (Certificate Authority , CA)
Криптографический алгоритм асимметричного шифрования (asymmetric cipher) с открытыми ключами, основывающийся на вычислительной сложности задачи факторизации больших целых чисел. Назван по фамилиям авторов: Rivest - Shamir - Adleman (Рон Райвест, Ади Шамир и Леонард Адлеман), разработавших эту схему шифрования в 1978 г. Криптосистема RSAi стала первой системой, пригодной и для шифрования, и для цифровой подписи. Алгоритм используется в большом числе криптографических приложений, включая PGP, S/MIME, TLS/SSL, IPSEC/IKE и других.
JaCarta - производное от названия современной смарт-карточной технологии Java Card, собственная разработка российской компании "Аладдин Р.Д." http://www.aladdin-rd.ru
Специальное устройство с защищенным микропроцессором и операционной системой, контролирующей устройство, доступ к оперативной и долговременной памяти. Устройство одновременно является сертифицированным средством ЭП и средством доступа к защищаемым информационнымресурсам специализированных систем (в данном случае — ЕГАИС), а также является защищенным хранилищем ключей программных средств криптографической защиты информации (далее – СКЗИ) в целом и средств ЭП в частности.
JaCarta включает в себя: средства аутентификации и ЭП: смарт-карты, модули (чипы) для производства смарт-карт, USB-, MicroUSB- и Secure MicroSD-токеныс встроенным в них чипом смарт-карты, SIM-карты с ЭП "на борту".
Полный FAQ по устройствам JaCarta на оф. сайте производителя http://www.aladdin-rd.ru/catalog/jacarta/faq.php?sphrase_id=584925
Универсальный транспортный модуль - программное обеспечение, устанавливаемое на рабочее место для взаимодействия с сервером ЕГАИС; предоставляется бесплатно в личном кабинете ЕГАИС.
Квалифицированная электронная подпись - усиленная квалифицированная электронная подпись, выданная в Удостоверяющем Центре ОАО «ИнфоТеКС Интернет Траст», которая предназначена для юридически значимой подписи документов передаваемых от УТМ на сервер ЕГАИС.
КЭП в УЦ "ИИТ" генерируется сразу на носитель (секция ГОСТ) на устройстве «JaCarta PKI/ГОСТ/SE» и не может быть извлечена/скопирована.
Идентификатор организации в ФСРАР.
FSRAR_ID представлен в качестве значения реквизита «CN» RSA-сертификата на аппаратном носителе JaCarta. Чтобы узнать свой FSRAR_ID, подключите к ПК носитель с КЭП, откройте утилиту для работы с аппаратными носителями и перейдите во вкладку «Ключи и сертификаты» - при этом потребуется ввести пароль пользователя RSA-ключа.
Код причины постановки на учет.
Для организаций в дополнение к ИНН в связи с постановкой на учет в налоговых органах по основаниям, предусмотренным Налоговым кодексом Российской Федерации, присваивается код причины постановки на учет (КПП).
Структура КПП представляет собой девятизначный код: NNNNPPXXX.
Рис. Схема взаимодействия StoreHouse v4 и ЕГАИС
Крипто-ключ JaCarta PKI/ГОСТ/SE содержит две секции:
Как правило, КЭП выдается при покупке крипто-ключа в любом сертифицированном Удостоверяющем Центре.
Важно: Генереция RSA-сертификатов (секция PKI) выполняется только после получения и записи КЭП (секция ГОСТ) в крипто-ключ
Примечание: Если при покупке крипто-ключа сразу не получена КЭП на время настройки и проверки можно использовать тестовую КЭП http://egais.ru/testkey/innkpp
Крипто-ключ JaCarta содержит в себе два хранилища PKI и ГОСТ - для работы с каждым из них требуется свое ПО, которое можно скачать и установить по отдельности, но удобнее использовать Единый Клиент, который объединяет все необходимые инструменты.
Загрузить дистрибутив Единого Клиента JaCarta можно с оф. сайта прозводителя крипто-ключей http://www.aladdin-rd.ru/support/downloads/jacarta/
Рис. Страница загрузки единого клиента JaCarta на оф. сайте http://www.aladdin-rd.ru/support/downloads/jacarta/
Для установки Единого Клиента JaCarta на компьютере должна быть установлена одна из нижеперечисленных операционных систем:
Важно: Единый Клиент JaCarta версии 2.7 НЕ ПОДДЕРЖИВАЕТ работу с Microsoft Windows 10. Для работы с токенами JaCarta в Microsoft Windows 10 необходимо использовать версию Единого Клиента JaCarta 2.8
Установка Единого Клиента производится стандартным образом. После окончания мастера установки подключаем к компьютеру крипто-ключ JaCarta - система обнаружит новое устройство и установит драйвера ключа.
После установки Единого Клиента JaCarta в системе будет доступна сервисная утилита для проверки крипто-ключа:
Примечание: На только что приобретенных крипто-ключах отсутствуют RSA-сертификаты (секция PKI)
Примечание: Если после запуска сервисной утилиты "Единый клиент JaCarta" не отображаются закладки, необходимо в левом нижнем углу выбрать опцию "Переключиться в режим администрирования"
Дальнейшим шагом после получения КЭП, следует выполнить генерацию сертификатов для торговых точек.
Для этого перейдите на страницу https://service.egais.ru/checksystem и нажмите кнопку Ознакомиться с условиями и проверить их выполнение, появится страничка проверки системных требований. К сожалению, другого пути в личный кабинет нет и через проверку придется проходить каждый раз, благо посещать его нужно не столь часто.
Основным модулем системы ЕГАИС на предприятии является Универсальный транспортный модуль (далее УТМ)
Назначение модуля УТМ - обеспечить прием и передачу данных между сервером ЕГАИС и системой StoreHouse.
Примечание: Модуль УТМ может использоваться с любым другим учетным ПО на предприятии совместно с системой StoreHouse.
Для подтверждения достоверности передаваемых данных и обеспечения безопасности канала связи применяется токен JaCarta, который содержит квалифицированную электронную подпись (КЭП) и RSA-сертификат для обеспечения безопасного канала связи.
УТМ является сетевым сервисом и работает с любыми поддерживающими его приложениями по протоколу TCP/IP - это позволяет разместить транспортный модуль на любом ПК в пределаз локальной сети.
Важно: Существует законодательно закрепленное требование к физическому расположению УТМ в месте реализации, поэтому варианты с удаленным доступом к УТМ (например, через VPN) следует исключить.
Установка и настройка алкогольной декларации http://support.ucs.ru/ru/node/8608
Проблема: SH4Decl выдаёт ошибку: GridDS: Record not found.
Решение: Обновиться на актуальную версию.
Система StoreHouse v4 поставляется с предустановленным набором печатных форм, содержание которых в большинстве случае соотв. унифицированным формам, утвержденным Федеральной службой государственной статистики
Некоторые положения, которыми следует руководствоваться в вопросах, связанных с печатными формами:
Файлы макетов печатных форм хранятся в подкаталоге клиентской части \SH4\RPT - все макеты имеют расширение *.FRF и созданы с помощью дизайнера отчетов Fast Reports.
Сопоставление макетов печатных форм и соответствующих им отчетов или типов документов хранится в файле \SH4\SH.RPT
Для каждого отдельного типа документа или отчета может быть определено несколько вариантов печатных форм.
Примечание: Понятие "отчет" применяется не только к отчетам в меню "Отчеты", но и к некоторым словарям системы - например, при просмотре "Словари" ⇒ "Валюты" ⇒ "Список валют" доступен отчет "Список валют"
Пример вариантов печатных форм для типа документа "Приходная накладная" (версия StoreHouse 4.99.315):
Пример вариантов печатных форм для отчета "Ведомость остатотков" (версия StoreHouse 4.99.315):
Стуктура файла \SH4\SH.RPT идентична структуре стандартного INI-файла и состоит из секций, внутри которых определены пары <НазваниеПараметра>=<ЗначениеПараметра>:
Название секции соответствует определенному типу документа или отчету - например, секция [eDoc0] относится к типу документа "Расходная накладная", а секция [rGsRemns] к отчету "Ведомость отстатков":
..... [fCurrencies] d_0=Список валют [eDoc0] TORG12=Товарная накладная ТОРГ-12 DOC_0=Приходная накладная M11=Требование-накладная М11 M4=Приходный ордер M4 DOC_0_OP5=Закупочный акт ОП5 .....
.....
В качестве значения <НазваниеПараметра> указывается имя файла макета печатной формы без расширения.
Например, форме "Товарная накладная ТОРГ-12" типа документа "Расходная накладная" соотв. файл печатной формы \SH4\RPT\TORG12.FRF:
[eDoc0] TORG12=Товарная накладная ТОРГ-12
Для использования встроенного дизайнера отчетов Fast Reports необходимо с помощью приложения \SH4\SHSetup.exe включить в клиентской конфигурации параметр "Разрешить дизайнер отчетов" :
Для создания нового макета печатной формы необходимо:
Рис. Создание новой печатной формы
Далее запускается стандартный дизайнер отчетов Fast Reports с пустым макетом:
После внесения изменений в макет его необходимо сохранить - данный макет можно использовать в качестве дополнительной печатной формы для существующего отчета или типа документа.
Для модификации существущего макета печатной формы необходимо:
Рис. Редактирование существующей печатной формы для типа документа "Приходная накладная"
Далее запускается стандартный дизайнер отчетов Fast Reports с выбранным для редактирования макетом:
Есть два варианта сохранения модифицированного макета::
Новый или модифициованный макет можно использовать в качестве дополнительной печатной формы для существующего отчета или типа документа.
Для подключения печатной формы необходимо:
Например, был модицирован стандартный макет "Товарная накладная ТОРГ-12" для типа документа "Приходная накладная" и сохранен в виде файла TORG12_MOD1.FRF (файл стандартного макета называется TORG12.FRF).
В файле \SH4\SH.RPT находим секцию [eDoc0], которая соотв. типу документа "Приходная накладная":
[eDoc0] TORG12=Товарная накладная ТОРГ-12 DOC_0=Приходная накладная ...
Подключаем новый макет:
[eDoc0] TORG12=Товарная накладная ТОРГ-12 DOC_0=Приходная накладная ... TORG12_MOD1= Товарная накладная ТОРГ-12 (МОДИФИЦ.)
где
При создании/модификации печатных форм следует учитывать следующие ограничения:
Как отмечалось выше, дизайнер (генератор) отчетов Fast Reports является сторонней разработкой компании Fast Reports Inc.
Подробная документация по работе с элементами и объетками дизайнера Fast Reports доступна на оф. сайте https://www.fast-report.com/ru/download/documentation/ , также на сайте представлена документация для разработчиков.
В частности, руководство пользователя по дизайнеру FastReports VCL (генератор отчетов для Delphi), который используется в StoreHouse v4, доступно по ссылке https://www.fast-report.com/public_download/html/FR5UserManual-HTML-ru/index.html
Для информации по данным StoreHouse v4, используемых в макетах, следует обратить внимание на следующие документы:
В качестве дополнительного программного обеспечения расширяющего возможности ПО "Store House v4" может быть настроен и задействован модуль "Алкогольная декларация" (Sh4decl.exe) позволяющий предоставлять отчеты по алкогольной продукции в Федеральную службу по регулированию алкогольного рынка (Росалкогольрегулирование).
Данное приложение актуально в первую очередь для Москвы и Московской области. Остальные регионы при подаче отчетов в региональные филиалы "Росалкогольрегулирования" могут воспользоваться приложением только в том случае, если формируемый в программе Отчет - по форме отчета и по набору данных подходит для предоставления в своем регионе.
На рабочем объекте должен быть установлено и запущено ПО "Store House v4". Установка Sh4decl.exe производиться непосредственно в клиент \SH4 на той клиентской машине, на которой будут пользоваться "Алкогольной декларацией".
Примечание: также, с фтп можно скачать файл codes.txt - содержащий установленное законом соответствие кодов алкогольной продукции, которые в дальнейшем необходимо будет занести в SH4 для работы с декларацией.
Содержимое архива:
<?xml version="1.0" encoding="windows-1251"?> <Файл> <gFileName cbBeer="false" cRepDate="06.12.2012" eVersForm="4.20" eGUID="" eTotal="R1__03_06122012_"/> <gReport eNomForm="11-о" cbMQ="0" cbPrisFOtch="0" eGodPeriodOtch="" cbFormaOtch="0" eNomerCorr="0"/> <gOrgParams eNaimUL="" eINNUL="" eKPPUL="" eTelORG="" eEMailOtpr="" cbUL="Юридическое лицо"> <Address eKodStrany="" eKodRegiona="" eIndex="" eRayon="" eGorod="" eNaselPunkt="" eUlica="" eDom="" eKorpus="" eLitera="" eKvart=""/> <gPers eRukF="" eRukI="" eRukO="" eBucF="" eBucI="" eBucO=""/> <Lics/> <Departs/> </gOrgParams> <gDepRep StartDate="01.12.2012" StopDate="" cbDeparts="-1"/> </Файл>
Пользовательский мануал ftp://ftpint.ucs.ru/books/Operator_proizvodstva_user_manual.pdf
Дистрибутив лежит в папке на фтп ftp://ftp.ucs.ru/storehouse/sh4/opr/.
Касса используется соответственно для печати наклеек, отчетов при закрытии смены. При закрытии смены данные о проведенной инвентаризации (если осуществляли) и проданных товарах OPR_SH4.exe передает в SH4.
Для работы весов необходим сервер весов, при чем для каждого типа весов он уникальный (ftp://ftp.ucs.ru/rk7/other/labelprint/ScaleServer/ ).
Для запуска сервера необходимо использовать параметры:
/desktop - для запуска в качестве десктопного приложения;
/install - для установки в качестве службы
Рис. Настройка Сервера весов
Для конфигурации сервера его необходимо запустить с парметром /desktop и прописать номер COM-порта, к которому подключены весы и свободный HTTP порт.
Примечание: рекомендуется зарегистрировать Sh4Ole.dll в операционной системе до начала настройки.
Запустить OPR_SH4Settings.exe и прописать IP, Port, имя пользователя и пароль для подключения к серверу SH4.
Рис. Параметры для подключения к серверу StoreHouse
Нажать кнопку Далее
и в открывшемся окне сделать следующее:
выбрать место реализации;
выбрать корневую ветку товаров, которые будут использоваться в OPR-Board;
в зоне «Склад по-умолчанию» выбрать склад, который по-умолчанию будет использоваться при создании накладных;
в зоне «Весовая единица измерений» указать единицу измерений, в которой будут поступать данные с весов.
в том случае, если импорт товаров без штрих-кода не нужен, выставить галочку «Запретить импорт товаров без штрих-кода»;
указать адрес сервера весов и коэффициент взвешивания;
Важно: для определенного типа весов используется свой сервер весов - ScaleServer.exe, в настройках которого прописывается номер COM-порта и HTTP порт.
Параметр HTTP Сервер весов может иметь вид http://127.0.0.1:27722 в зависимости от настроек сервера весов.
нажать кнопку «Завершить».
Рис. Дополнительные параметры OPR_SH4Settings.exe
4.1. В справочнике Сервис - классификаторы объектов
создать новый классификатор с параметрами:
Наименование = Роль, Объект = корреспондент
Рис.3 Расположение справочника Классификаторы объектов
Рис.4 Наполнение справочника Классификаторы объектов
4.2. В справочнике Словари - классификаторы - корреспондентов - Роль
добавить две роли: Менеджер и Сотрудники.
Рис.3 Расположение справочника Роль
Рис.4 Наполнение справочника Роль
4.3. В справочнике «Сервис - Дополнительные атрибуты - Атрибуты корреспондентов» добавить атрибут ПИН КОД(PIN) для корреспондентов.
Рис. 5 Расположение справочника Атрибуты корреспондентов
Рис.6 Наполнение справочника Атрибуты корреспондентов
4.4. Добавить сотрудников (как физических лиц) в справочник Словари - Корреспонденты - Список корреспондентов
и прописать им Пин код (рис.9), который далее необходимо будет использовать для входа в приложение OPR-Board.
Рис.7 Расположение справочника Список корреспондентов
Рис.8 Добавление нового корреспондента
Рис. 9 Свойств ПИН КОД сотрудника
4.5. В справочник Сервис - Дополнительные атрибуты - Атрибуты товаров
добавить атрибуты для товаров
Рис.10 Расположение справочника Атрибуты товаров
Рис.11 Атрибуты товаров
4.6. Заполнить данные атрибуты у товаров. Штрих коды товаров должны быть уникальные.
Рис.12 Свойства товара
4.7. В справочнике "Словари - Корреспонденты - Места реализации" заполнить места реализации
КОД1 – МАГАЗИН1
КОД2 – МАГАЗИН2
Рис.13 Места реализации
Макет лежит в папке с OPR Board и называется sticker.fr3. Список переменных храниться в файле variables.fd3. Файлы можно взять из прикрепленного архива.
Для редактирования можно использовать редактор с ФТП - ftp://ftp.ucs.ru/rk7/other/labelprint/RK7CashPlugin_old/fr3_editor.exe
Доступен следующий список переменных:
Важно: более актуальную информацию о том как работать с кассой, вы найдете в руководстве пользователя ftp://ftpint.ucs.ru/books/Operator_proizvodstva_user_manual.pdf.
6.1. Начало работы
Включить систему. После запуска ОС выводится окно логина. Система ожидает авторизации пользователя OPRBoard.
6.2. Вход в систему
Требуется ввести ПИН, пин должен быть уникален. Если пин есть в системе - по нему определяется сотрудник и его тип.
Тип сотрудника определяется ролью и определяет уровень прав.
-Простые сотрудники могут выполнить печать этикетки, отменить последнюю операцию, провести инвентаризацию. После логина попадает в список товаров.
-Привилегированные сотрудники - могут закрывать смену и печатать документ сверки. После логина попадает в список операций. Смена открывается в момент первого логина. Дата смены берется по открытию.
6.3. Печать этикеток
В режиме печати этикеток при нажатии на товар (на тач-скрине) печатается этикетка. Есть возможность отменить 1 последнюю операцию кнопкой “отмена последней операции”.
6.4. Инвентаризация
При инвентаризации - сканером ШК считываются штрихкоды оставшихся товаров и вносятся в документ “остатки”. 1 считанный код добавляет 1 единицу товара. Есть возможность отменить 1 последнюю операцию кнопкой “отмена последней операции”. Считанный товар подсвечивается, если он есть в списке или добавляется в него.
6.5. Отмена последней операции
6.5.1. При печати этикеток
Если товар был выбран неверно или при печати произошел брак - операцию можно отменить. При этом сменный счетчик товара декрементируется
6.5.2. При инвентаризации
Если товар был выбран неверно или отсканирован ошибочно - операцию можно отменить. При этом количество товара в инвентаризации уменьшается на 1.
6.6. Генерация отчета
Печатается на роловый принтер список проданных блюд и их количество с сортировкой по коду. Проданным считается количество, получаемое как разница между произведенным и остатком.
Пример отчета:
Отчет по продажам
дата: 01.01.2015
объект: Магазин 1
оператор: Василий Н. К.
товар кол-во
набор товаров №1 123
набор товаров №2 3
булка с маком 23
сок апельсиновый 12
пряник тульский 234
печать: 01.01.2015 32:50
6.7. Закрытие смены (передача данных в SH4)
Делаются копии всех документов “произведенная продукция” и “остатки”, выполняется попытка их передачи на сервер. Выводится сообщение “смена закрыта”.
Вложение | Размер |
---|---|
sticker.rar | 1.04 МБ |
Важно: перед выполнение любых операций с базой данных, необходимо делайть резервные копии!
SDB server manager (Sdbman.exe) - основное приложение для диагностики и обслуживания баз данных SH4.
Так как формат базы данных (*.SDB, *.SDL) зашифрован, других средств для работы с базами данных SH4 нет.
Основной функционал приложения Sdbman:
В данном меню находятся следующие пункты:
Создание ролей и назначение прав подробно описано в руководстве пользователя по системе StoreHouse v4 ftp://ftp.ucs.ru/books/storehouse_v4_user_manual.pdf
В списке соединений можно посмотреть информацию по всем клиентам, подключенным на данный момент к серверу SH4.
В списке соединений указывается следующая информация:
Список соединений можно использовать для анализа сообщений системы типа "Превышен лимит подключений к серверу" - т.к. лицензионный ключ защиты содержит ограничение на кол-во возможных одновременных подключений клиентов к серверу склада, каждое подключение клиентского приложения, включая сервисные приложения (Sh4Utils, инвентаризация и т.д.), будет учитываться ограничением лицензии.
В данном меню находятся следующие пункты:
Размер базы данных указывается в страницах или в мегабайтах (1 страница = 4Кб или 1Мб = 256 страниц) - параметры взаимосвязаны, т.е. изменение одного влечет за собой изменение другого.
При создании базы данных по умолчанию устанавливается размер в 35 000 страниц (приблизительно 137Мб) - как правило, базы данных такого размера хватает примерно на 2-3 года работы предприятия общественного питания.
Увеличивать размер базы рекоммендуется постепенно, т.е. добавляя к первоначальному размеру не более 30000-50000 страниц. Задавать максимальный размер количества страниц в базе сразу не рекомендуется, т.к. это может усложнить процедуры связанные с перемещением и обслуживанием файла БД такого размера.
Примечание: Система не позволит установить новый размер базы данных, который меньше текущего
Важно: Максимальный размер базы данных StoreHouse v4 примерно 1,8Гб или 458752 страниц
В системе есть два похожих сообщения: "страничный кэш исчерпан" и "недостаточно страниц в базе данных", которые относятся к разным сущностям сервера склада. Иногда это приводит к путанице между понятиями "количество страниц в базе данных" и "страничный кеш" - в каждом случаев необходимо выполнить соответсвующие настройки
"Диагностика" - диагностика и автоматическое восстановление структуры базы данных.
Если в процессе работы с базой данных возникают сообщения, ссылающиеся на "страницы", "индексы", "ключи", вероятнее всего есть структурные повреждения базы данных - в таком случае необходимо воспользоваться диагностикой и восстановить структуру базы данных.
Применение диагностики с последующими процедурами резервного копирования и восстановления из резервной копии, позволяют восстановить работоспособность более чем в 90% случаев при возникновении структурных ошибок в базе данных SH4.
Если резервная копия стандартными средствами не выполняется, вероятнее всего, база данных содержит серьезные структурные нарушения и продолжать работу в такой базе не рекомендуется. В таких случаях необходимо восстановить базу данных из созданной ранее резервной копии или обратиться в техническую поддержку
В данном меню находятся следующие пункты:
Примечание: Опция "Запрет на приходование при отрицательных остатках" влючена по умолчанию и не может быть отключена в стандарной версии склада
"Оптимизация вычисления себестоимости" - включение опции хранения себестоимости накладных в закрытом периоде
Как следует из названия опции, оптимизация работает для закрытого периода. Таким образом, данную опцию имеет смысл использовать только совместно с операцией закрытия перида в приложении Sh.exe, меню "Сервис" ⇒ "Закрытие периода":
Операцию закрытия периода желательно выполнять регулярно и как можно ближе к текущей дате, что обеспечит высокую производительность системы при построении списков документов, отчетов и т.д. Особенно заметно это будет на достаточно больших базах, информация в которых накапливалась несколько лет.
"Снять блокировки..." - удаление блокировок документов, установленных всеми пользователями либо конкретным пользователем
"Доп. ограничения на открытый период..." - задание количества дней от текущей даты в течени которых возможно изменение документов в складе
Система будет автоматически закрывать документы для редактирования, которые введены ранее указанного кол-ва дней.
Обработка параметра:
"Статистика" - список всех объектов системы с возможностью просмотра детальной информации по каждому объекту
Статистика и информация по объектам системы может быть полезной в различных аспектах - обслуживании базы данных, локализация технических проблем в работе системы и т.д.
Например, можно посмотреть общую статистику по серверу SH4:
"Выполнить запрос" - сервисный инструмент для работы со встроенными или внешним процедурами
Для получения информации по встроенным процедурам сервера достаточно указать наименование процедуры в поле "Процедура" и выполнить запрос (с помощью вызова контекстного меню или с помощью соотв. иконки на панели задач).
Для работы с внешними процедурами требуется указание в поле "Библиотека" полного пути к сервисной библиотеке (библиотека, как правило, предоставляться вместе с инструкцией по решению проблемы - пример такой библиотеки ShFix.dll ftp://ftp.ucs.ru/storehouse/sh4/shfix)
SDB server configuration utility (SdbsConf.exe) - основное приложение для настройки параметров конфигурации сервера SH4.
Параметры конфигурации сервера подробно описаны в документе http://support.ucs.ru/ru/node/6942#header-6
В данном разделе рассмотрены особенности и рекомендации для некоторых параметров, связанных с сервисным обслуживанием:
Важно: Рекомендуется всегда включать режим автоматического резервного копирования с опциями "Backup time" и "Stop server on error" - отсутствие актуальных резервных копий самая частая причина невозможности оперативно восстановить работу системы в случае поломки БД!
Параметры резервного копирования:
С выключенным параметром "Stop server on error" сервер будет продолжать работу даже в случае возникновения каких-либо проблем в процессе создания резервной копии - это может привести к тому, что Заказчик лишится возможности быстрого решения возможных проблем, в том числе связанных со стуктурным нарушением целостности базы данных.
В случае несвоевременной реакции на возникшие проблемы в базе данных, существует несколько вариантов решения, которые не всегда могут устроить Заказчика:
Дата последней успешной операции резервного копирования хранится в базе данных - эта дата используется сервером для планирования операций автоматического резервного копирования. Если при попытке принудительно выполнить автоматическое резервное копирование (например, с помощью перезапуска сервера) резервная копия не создается, это может говорить о том, что сервер уже выполнял операцию в пределах периода, заданного в параметрах резервного копирования (проверить дату и время последней созданной резервной копии можно с помощью приложения Sdbman.exe в меню "Прочее" ⇒ "Статистика".). Вручную резервное копирование можно выполнить в любой момент. Если же требуется создание именно автоматической резервной копии (например, в случае восстановления пользователя и пароля администратора базы данных), необходимо временно изменить системную дату компьютера, чтобы согласно заданным параметрам операция выполнилась автоматически - после успешного завершения операции дату необходимо установить в текущее значение.
Automatic recovery (Автоматическое восстановление) - устанавливает режим автоматического восстановления БД при сбоях (например, при нештатном отключении питания), восстановление происходит при запуске сервера и использует для восстановления информацию из журнала транзакций (Database Log)
Технология предназначена для восстановления баз данных StoreHouse из резервных копий. Операция восстановления происходит полностью в автоматическом режиме.
Конфигурация с автоматическим восстановлением БД может использоваться для сетевых ресторанов, где есть необходимость развертывания локальных (удаленных) БД на едином (центральном) сервере.
Важно: Для возможности автоматического восстановления БД сервер StoreHouse должен быть запущен в качестве службы!
В состав комплекса входят следующие файлы:
Дистрибутив можно загрузить с FTP-севрера ftp://ftp.ucs.ru/storehouse/sh4/Shr
Перед запуском Shr.exe необходимо выполнить единоразовую процедуру инициализации параметров с помощью утилиты Shrinit.exe
Утилита Shrinit.exe используется для инициализации (сохранения) параметров - эта операция выполняется единоразово, затем утилиту Shrinit.exe и конфигурационный файл Shrinit.ini можно удалить.
Содержимое конфигурационного файла Shrinit.ini:
[NTUSER] - необязательные параметры для персонализации пользователя Windows: Shr.exe необходимы права на запись к реестру, на остановку и запуск сервисов Name=Администратор Password= [SHUSER] - обязательные параметры: имя и пароль администратора, устанавливаемые для создаваемых при восстановлении баз данных Name=Admin Password=
Важно: После запуска утилиты Shrinit.exe все параметры, заданные в Shrinit.ini, сохраняются в реестре в зашифрованном виде - переменная shrdta в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\UCS\SH (x64) или HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SH (x86)
Утилита Shr.exe выполняет восстановление базы данных из резервной копии.
Формат запуска утилиты - командная строка вида:
Shr.exe<пробел><имя сервера SDBServ>
Примечание: Имя сервера, передаваемое в командной строке, должно соотв. имени сервера (Server name), заданное в SdbsConf.exe
Например, для восстановление базы для сервера SDBSERV запускаем с командной строки (или bat-файла) Shr.exe SDBSERV
Все параметры утилита Shr.exe считывает из INI-файла - для каждого сервера должен быть создан свой конфигурационный файл, имя которого совпадает с именем сервера.
Например, для сервера с именем SDBSERV должен быть создан и настроен конфигурационный файл SDBSERV.INI
Важно: Для возможности автоматического восстановления БД сервер StoreHouse должен быть запущен в качестве службы!
Содержимое INI-файла:
[Options] SrvNetName= - сетевое имя сервера, используемое для соединения с сервером. По умолчанию совпадает с именем сервера, формат зависит от типа подключения BkpPath= - маска, по которой ищутся файлы резервных копий, берется первый найденный попавшийся. Обязательный параметр LibName= - полный путь к библиотеке Sh_crtdb.dll. Обязательный параметр FilePath= - каталог, в котором создаются файлы восстановленной БД. Обязательный параметр MaxFileSize=0 - макс. размер файла БД в мегабайтах: 0 - размер не ограничен (по умолчанию) CreateLog=0 - режим логирования: "0" - выводить на экран (по умолчанию), остальные непустые значения - сохранять в файл DeleteFiles=0 - режим удаления файлов устаревшей БД и исходного бекап-файла при успешном завершении операции: "0" - не удалять (по умолчанию), остальные непустые значения - удалять
Рассмотрим подробно каждый параметр:
- SrvNetName - сетевое имя сервера или строка подключения к серверу. Формат зависит от типа подключения - при использовании локального подключения или подключения по протоколу NetBIOS, указывается имя сервера (например, SDBSERV), тогда как при подключении по протоколу TCP/IP необходимо указывать строку в специальном формате:
Важно: Для подключения к серверу склада, запущенного как служба, необходимо использовать подключение только по протоколу TCP/IP. При использовании протокола TCP/IP всегда указывайте параметр таймаута для избежания ситуации, когда утилита Shr.exe будет терять связь с сервером после его перезапуска.
- LibName - полный путь к библиотеке SH_CRTDB.DLL из рабочего каталога склада
- FilePath - директория, в которой будет создаваться база данных и файл журнала транзакций после успешного завершения автоматического восстановления
- MaxFileSize - максимальный размер файла восстановливаемой базы данных. Следует заметить, что при значении MaxFileSize=0 будет создаваться база данных размером, приблизительно в три раза превышающим размер самого архива. Рекомендуется использовать значение параметра MaxFileSize=0, т.к. в такой конфигурации всегда будет установлен необходимый и достаточный размер базы данных
- CreateLog - сервисный параметр. Вывод сообщения на экран (CreateLog=0) может потребоваться в случае решения возникших проблем при восстановлении, в рабочем режим достаточно журналирования операций в лог-файл (CreateLog=1)
- DeleteFiles - режим удаления "старой" базы данных и исходного файл резервной копии. Варианты использования зависят от требуемой конфигуации и, как правило, согласовываются с Заказчиком
Важно: Для запуска утилиты Shr.exe требуются клиентские компоненты SH4 - DmCtrl.bpl, DoMan.dll, SdbCli.dll, RTL60.BPL и VCL60.BPL. Можно скопировать эти компоненты в каталог c Shr.exe из рабочего каталога SH4 либо скопировать утилиту Shr.exe в рабочий каталог SH4
В центральном офисе сервера могут находится на одном компьютере, возможное кол-во одновременно запущенных серверов зависит от размеров ОЗУ (например, для запуска 16-ти серверов достаточно 2Гб оперативной памяти).
Примечание: Если длина имени сервера превышает 15 символов, подключение НЕ ПРОИСХОДИТ. Например, подключение к серверу KINOMAX_CHPOBEDA.INI (или KINOMAX_VOLGOGRAD.INI) не удалось, тогда как к KINOMAX_VORONEG.INI соединение устанавливается без проблем.
Важно: Перед выполнение любых сервисных операций, связанных с базой данных, необходимо создавать резервную копию!
SDB server manager (Sdbman.exe) - основное приложение для диагностики и обслуживания баз данных SH4.
Так как формат базы данных (*.SDB, *.SDL) зашифрован, других средств для работы с базами данных SH4 нет.
Основной функционал приложения Sdbman:
В данном меню находятся следующие пункты:
Создание ролей и назначение прав подробно описано в руководстве пользователя по системе StoreHouse v4 ftp://ftp.ucs.ru/books/storehouse_v4_user_manual.pdf
В списке соединений можно посмотреть информацию по всем клиентам, подключенным на данный момент к серверу SH4.
В списке соединений указывается следующая информация:
Список соединений можно использовать для анализа сообщений системы типа "Превышен лимит подключений к серверу" - т.к. лицензионный ключ защиты содержит ограничение на кол-во возможных одновременных подключений клиентов к серверу склада, каждое подключение клиентского приложения, включая сервисные приложения (Sh4Utils, инвентаризация и т.д.), будет учитываться ограничением лицензии.
В данном меню находятся следующие пункты:
Размер базы данных указывается в страницах или в мегабайтах (1 страница = 4Кб или 1Мб = 256 страниц) - параметры взаимосвязаны, т.е. изменение одного влечет за собой изменение другого.
При создании базы данных по-умолчанию устанавливается размер в 35 000 страниц (приблизительно 137Мб) - как правило, базы данных такого размера хватает примерно на 2-3 года работы предприятия общественного питания.
Увеличивать размер базы рекоммендуется постепенно, т.е. добавляя к первоначальному размеру не более 30000-50000 страниц. Задавать максимальный размер количества страниц в базе сразу не рекомендуется, т.к. это может усложнить процедуры связанные с перемещением и обслуживанием файла БД такого размера.
Примечание: Система не позволит установить новый размер базы данных, который меньше текущего используемого размера (в статистике параметр "Используется страниц").
Важно: Предельный размер базы данных StoreHouse v4 примерно 1,8Гб (точно - 1792 Мб или 458752 страниц)
В системе есть два похожих сообщения: "страничный кэш исчерпан" и "недостаточно страниц в базе данных", которые относятся к разным сущностям сервера склада. Иногда это приводит к путанице между понятиями "количество страниц в базе данных" и "страничный кеш" - в каждом случаев необходимо выполнить соответсвующие настройки
Если в процессе работы с базой данных возникают сообщения, ссылающиеся на "страницы", "индексы", "ключи", вероятнее всего есть структурные повреждения базы данных - в таком случае необходимо воспользоваться диагностикой и восстановить структуру базы данных.
Применение диагностики с последующими процедурами резервного копирования и восстановления из резервной копии, позволяют восстановить работоспособность более чем в 90% случаев при возникновении структурных ошибок в базе данных SH4.
Если резервная копия стандартными средствами не выполняется, вероятнее всего, база данных содержит серьезные структурные нарушения и продолжать работу в такой базе не рекомендуется. В таких случаях необходимо восстановить базу данных из созданной ранее резервной копии или обратиться к специалистам службы поддержки компании ЮСИЭС.
В данном меню находятся следующие пункты:
Примечание: Опция "Запрет на приходование при отрицательных остатках" влючена по-умолчанию и не может быть отключена в стандарной версии склада
Как следует из названия опции, оптимизация работает для закрытого периода. Таким образом, данную опцию имеет смысл использовать только совместно с операцией закрытия перида в приложении Sh.exe, меню "Сервис" ⇒ "Закрытие периода":
Операцию закрытия периода желательно выполнять регулярно и как можно ближе к текущей дате, что обеспечит высокую производительность системы при построении списков документов, отчетов и т.д. Особенно заметно это будет на достаточно больших базах, информация в которых накапливалась несколько лет.
Система будет автоматически закрывать документы для редактирования, которые введены ранее указанного кол-ва дней.
Обработка параметра:
Статистика и информация по объектам системы может быть полезной в различных аспектах - обслуживании базы данных, локализация технических проблем в работе системы и т.д.
Например, можно посмотреть общую статистику по серверу SH4:
Для получения информации по встроенным процедурам сервера достаточно указать наименование процедуры в поле "Процедура" и выполнить запрос (с помощью вызова контекстного меню или с помощью соотв. иконки на панели задач).
Для работы с внешними процедурами требуется указание в поле "Библиотека" полного пути к сервисной библиотеке (библиотека, как правило, предоставляться вместе с инструкцией по решению проблемы - пример такой библиотеки ShFix.dll ftp://ftp.ucs.ru/storehouse/sh4/shfix)
SDB server configuration utility (SdbsConf.exe) - основное приложение для настройки параметров конфигурации сервера SH4.
Параметры конфигурации сервера подробно описаны в документе http://support.ucs.ru/ru/node/6942#header-6
В данном разделе рассмотрены особенности и рекомендации для некоторых параметров, связанных с сервисным обслуживанием:
Важно: Крайне рекомендуется всегда включать режим автоматического резервного копирования с опциями "Backup time" и "Stop server on error" - отсутствие актуальных резервных копий самая частая причина невозможности оперативно восстановить работу системы в случае поломки БД!
Параметры резервного копирования:
С выключенным параметром "Stop server on error" сервер будет продолжать работу даже в случае возникновения каких-либо проблем в процессе создания резервной копии - это может привести к тому, что Заказчик лишится возможности быстрого решения возможных проблем, в том числе связанных со стуктурным нарушением целостности базы данных.
В случае несвоевременной реакции на возникшие проблемы в базе данных, существует несколько вариантов решения, которые не всегда могут устроить Заказчика:
Дата последней успешной операции резервного копирования хранится в базе данных - эта дата используется сервером для планирования операций автоматического резервного копирования. Если при попытке принудительно выполнить автоматическое резервное копирование (например, с помощью перезапуска сервера) резервная копия не создается, это может говорить о том, что сервер уже выполнял операцию в пределах периода, заданного в параметрах резервного копирования (проверить дату и время последней созданной резервной копии можно с помощью приложения Sdbman.exe в меню "Прочее" ⇒ "Статистика".). Вручную резервное копирование можно выполнить в любой момент. Если же требуется создание именно автоматической резервной копии (например, в случае восстановления пользователя и пароля администратора базы данных), необходимо временно изменить системную дату компьютера, чтобы согласно заданным параметрам операция выполнилась автоматически - после успешного завершения операции дату необходимо установить в текущее значение.
1.1. Поскольку БД SH4 является закрытой, для доступа к её данным существует специальная библиотека sh4ole.dll
1.2. Sh4Ole.dll можно скачать ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/
1.2.1. Для проверки, качайте вместе с тестовой программой TestOle.exe
1.2. Через библиотеку происходит работа с сервером SH4 аналогично его оригинальным клиентам.
1.2.1. Доступны для вызова стандартные функции и процедуры, которые описаны в файле ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/Interface.txt
1.2.2. Существует также способ выполнения произвольных процедур, который описан ниже.
1.3. Алгоритм выполнения практически любой процедуры дает возможность получать данные, недоступные через стандартные процедуры OLE-сервера
2.1.1. Рассмотрим работу алгоритма на примерах
На данный момент описание процедур отсутствует, но есть возможность узнать предназначение процедуры и ее параметры с помощью приложения Sdbman.exe (Sdb server manager, входит в стандартный дистрибутив StoreHouse v4).
Для входа в приложение требуется административный пароль (по умолчанию, Admin без пароля).
Получение информации о процедуре:
Например, если перейти в списке прав в "Словари" \ "Корреспонденты" \ "Список корреспондентов", увидим право "Чтение списка (proc CorrList)" - процедура CorrList возвращает список корреспондентов, которые относятся к определенной группе (при этом мы должны знать RID этой группы - их можно узнать с помощью другой процедуры CorrTree )
IN PARAMETERS tUint32,Key Tag: 101.1.0 --------- data set # 0 tUint8 Tag: 102.2.0 OUT PARAMETERS Array { --------- data set # 1 tUint32,Key Tag: 102.1.0 tUint32,NotNull Tag: 101.1.1 tStr[15],NotNull Tag: 102.3.0 tStr[47],NotNull Tag: 102.4.0 tUint8,NotNull Tag: 102.2.0 tUint8,NotNull Tag: 102.5.0 } END OF PARAMETER LIST
где
Эту информацию мы будем использовать для вызова процедуры CorrTree в собственном приложении (с использование OLE)
В файле ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/Interface.txt есть пример алгоритма выполнения произвольного запроса:
*********************************************************************************
Алгоритм выполнения практически любого запроса
*********************************************************************************
IndQuery := Sh.pr_CreateProc (ProcName); // ProcName - Имя процедуры
Заполняем входные датасеты
sh.pr_SetValByName ( IndQuery, IndexDS, FldName, Value ); // IndexDS - Индекс датасета
// (входные выходные - сквозная нумерация 0..n
// FldName тэг поля n.n.n (например 209.3.0)
// Value - присваиваемое значение
sh.pr_SetValByName ( IndQuery, IndexDS, FldName, Value );
sh.pr_SetValByName ( IndQuery, IndexDS, FldName, Value );
sh.pr_SetValByName ( IndQuery, IndexDS, FldName, Value );
sh.pr_Post( IndQuery, IndexDS );
Примечание: если у процедуры нет входных параметров, процедура SetValByName не вызывается
--------------------------------------------------------
перед выполнением процедуры устанавливаем состояние датасета
Чтение состояния датасета для ArrayX
function pr_GetRecordStatus (IndexDS : integer): integer;
возвращает состояние датасета
0 - Select
1 - Insert
2 - Update
3 - Delete
Запись состояния датасета для ArrayX
function pr_SetRecordStatus ( IndexDS, NewValue : integer ): integer
возвращает состояние датасета
----------------------------------------------------------
sh.pr_ExecuteProc(IndQuery);
получение результата проход по датасету IndexDS
while sh.pr_EOF( IndQuery,IndexDS )<>1 do
begin
X := sh.pr_ValByName(IndQuery,IndexDS,FldName) // получит значение поля FldName в датасете IndexDS
sh.pr_Next(IndQuery,IndexDS);
end;
sh.pr_CloseProc(IndQuery);
*********************************************************************************
У себя в приложении мы должны вызвать IndQuery := Sh.pr_CreateProc (CorrList);
При заполнении входных датасетов нужно учитывать информацию, полученную выше:
*********************************************************************************
IN PARAMETERS
tUint32,Key Tag: 101.1.0 --------- data set # 0
tUint8 Tag: 102.2.0
*********************************************************************************
Мы видим, что для процедуры CorrList входным является только один датасет (data set # 0), поэтому при заполнении мы должны в качестве параметра IndexDS передать 1, т.е. получаем:
IndQuery := Sh.pr_CreateProc (CorrList);
sh.pr_SetValByName (IndQuery, 1, FldName, Value );
Далее надо заполнить параметр FldName - это тег поля в виде n.n.n
В блоке входных параметров мы видим, что используется два тега - Tag: 101.1.0 и Tag: 102.2.0 . Первый тег обозначает RID группы (дерева), к которой относиться корреспондент, второй - тип корреспондента (третье значение обычно не значущее - используется в том случае, если есть два одинаковых по сути объекта, например "Ключ (Rid) корреспондента", но типы объекта различаются.
Например, тег 102.1.2 обозначает "Ключ (Rid) корреспондента-поставщика", тогда как тег 102.1.3 обозначает "Ключ (Rid) корреспондента-получателя".
Более подробное описание всех тегов есть в файле Sh_Tags.h ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/Sh_Tags.zip и Sh_TagsB.h ftp://ftp.ucs.ru/storehouse/sh4/sh4ole/sh_tagsB.zip
Таким образом, для получения списка корреспондентов нам предварительно надо получить RID группы и тип корреспондента (т.е. сначала надо выполнить другие процедуры для получения этих данных)
В итоге наш код будет выглядеть приблизительно так:
IndQuery := Sh.pr_CreateProc (CorrList);
//Заполняем входные датасеты:
sh.pr_SetValByName ( IndQuery, 1, 101.1.0, 1); //запрос всех
корреспондентов, которые относятся к группе с RID=1
sh.pr_SetValByName ( IndQuery, 1, 102.2.0, 2); //запрос всех
корреспондентов, которые имеют тип = 2 (физ лицо) - более подробно см. в
файле Sh_Tags.h
sh.pr_SetValByName ( IndQuery, 1, 102.2.0, 3); //запрос всех
корреспондентов, которые имеют тип = 3 (спец. корр) - более подробно см. в
файле Sh_Tags.h
//выполняем процедуру:
sh.pr_ExecuteProc(IndQuery);
//получение результата проход по датасету 1:
while sh.pr_EOF( IndQuery,1 )<>1 do
begin
X := sh.pr_ValByName(IndQuery,1,FldName) // получить значение поля
FldName в датасете 1 - вот здесь уже нужно подставить в качестве FldName
теги, которые относяться непосредственно к корреспонденту. Например
102.1.0 - RID корреспондента, 102.4.0 - наименование корреспондента и
т.д. (более подробно см. Sh_Tags.h)
sh.pr_Next(IndQuery,IndexDS);
end;
sh.pr_CloseProc(IndQuery);
В итоге мы получим информацию о всех искомых корреспондентах.
Следует помнить, перед вызовом процедуры CorrList нужно получить значения RID-ов всех групп корреспондентов (дерева)
И еще - все вышеописанное больше для примера, т.к. получить список корреспондентов (всех) можно и проще - с помощью процедуры CorrFullList
IndQuery := sh.pr_CreateProc( 'InsExpDoc' ) ;
// -----------------------------------------------------------------------------------------
// ЗАГОЛОВОК
// Заголовок неактивный, чтобы не заполнять группу станций
// для простоты без модификаторов
sh.pr_SetValByName ( IndQuery, 0, '230.2.0','AAA'); // Номер префикс tStr[19]
sh.pr_SetValByName ( IndQuery, 0, '230.3.0',1); // Номер число tUint32
// Для автоматического получения номера документа можно использовать процедуру sh: CalcExpDocNum
sh.pr_SetValByName ( IndQuery, 0, '230.4.0',Date()); // Дата док tShortDate,NotNull
sh.pr_SetValByName ( IndQuery, 0, '230.5.0',4 or 8 ); // Опции документа tUint32,NotNull
{
// опции документов по расходу ( expense document options )
#define edoActive 2 // расход активный (нужно заполнять группу станций)
#define edoSaleTaxIncluded 4 // в суммы включен налог с продаж
#define edoSaleTaxPayed 8 // налог с продаж оплачен
#define edoImported 16 // документ сымпортирован - недопустима модификация
#define edoLocked 32 // документ блокирован создавшим его пользователем
// второй байт занят под степень скомплектованности/списанности док-та (младшие 4 бита: флаги ed_...)
}
sh.pr_SetValByName ( IndQuery, 0, '214.1.0',NULL); // Группа станций tUint32,Key
// Список мест реализации - Процедура SUnits;
sh.pr_SetValByName ( IndQuery, 0, '216.1.0',0); // Категория расхода tUint32,Key,NotNull
// Список категорий расхода ExpCtgs
sh.pr_SetValByName ( IndQuery, 0, '230.7.0','Здесь комментарии'); // tStr[255]
sh.pr_Post( IndQuery,0 );
//
// Содержимое
// запись 1 - товар с RID = 2366 , комплект 67 , количество 10, ед.изм. 6
sh.pr_SetValByName ( IndQuery, 1,'231.1.0', 0); // Rid tUint32,Key
sh.pr_SetValByName ( IndQuery, 1,'231.2.0', 10 ); // Количество
sh.pr_SetValByName ( IndQuery, 1,'231.3.0', 200); // Сумма tCurrency,NotNull
sh.pr_SetValByName ( IndQuery, 1,'212.2.10',0); // НДС tCurrency,NotNull
sh.pr_SetValByName ( IndQuery, 1,'213.2.10',0); // НСП tCurrency,NotNull
sh.pr_SetValByName ( IndQuery, 1,'206.1.0', 6); // Ед.изм.
sh.pr_SetValByName ( IndQuery, 1,'210.1.0', 2366); // Товар
sh.pr_SetValByName ( IndQuery, 1,'200.1.0', 67); // Комплект для товара можно узнать из процедуры GoodsBase
sh.pr_SetValByName ( IndQuery, 1,'102.1.5', NULL); // Склад списания, подобрать склад списания можно с помощью проц.sh: GoodsLink4Exp
sh.pr_SetValByName ( IndQuery, 1,'0.50.99',0); // НЕ трогать
sh.pr_SetValByName ( IndQuery, 1,'231.4.0',0); // Опции спецификаций
{
// опции спецификаций документов по расходу ( expense specification options )
#define esoService 1 // спецификация - услуга
#define esoHasMdf 2 // есть связанные со спецификацией модификаторы
#define esoTax1Rate 4 // использовать ставку для расчета налога 1 (НДС)
#define esoTax2Rate 8 // использовать ставку для расчета налога 2 (НСП)
#define esoRef 16 // спецификация - ссылка
}
sh.pr_Post( IndQuery,1 );
// запись 2 то же самое только количество 20, сумма 300
sh.pr_SetValByName ( IndQuery, 1,'231.1.0', 0);
sh.pr_SetValByName ( IndQuery, 1,'231.2.0', 20 );
sh.pr_SetValByName ( IndQuery, 1,'231.3.0', 300);
sh.pr_SetValByName ( IndQuery, 1,'212.2.10',0);
sh.pr_SetValByName ( IndQuery, 1,'213.2.10',0);
sh.pr_SetValByName ( IndQuery, 1,'206.1.0', 6);
sh.pr_SetValByName ( IndQuery, 1,'210.1.0', 2366);
sh.pr_SetValByName ( IndQuery, 1,'200.1.0', 67);
sh.pr_SetValByName ( IndQuery, 1,'102.1.5', NULL);
sh.pr_SetValByName ( IndQuery, 1,'0.50.99',0);
sh.pr_SetValByName ( IndQuery, 1,'231.4.0',0);
sh.pr_Post( IndQuery,1 );
SH.pr_SetRecordStatus ( 1,1 );
sh.pr_ExecuteProc(IndQuery);
SH.pr_SetRecordStatus ( 1,0 );
ShowMessage(sh.GetExcMessage);
sh.pr_CloseProc(IndQuery);
end;
end.
Название ошибки | Полный текст ошибки | Описание ошибки и метод решения |
Ошибка менеджера данных 15 | Поле-источник данных должно содержать значение для записи потока. Ошибка менеджера данных 15. Тег поля: {216.2.0} |
Причин ошибки может быть несколько:
В случае если выгрузка идет из РК7: - снять флаг в параметре \Установочные\Связь с другими системами\Альт.названия. Т.е. поле альт. название заполнять не нужно, а просто отключить экспорт альт. названий в SH4. После этого, импорт меню и расхода должен пройти успешно. |
Ошибка сервера Sdbserv 153 | Ошибка Sdbserv 153: Слишком большая высота дерева индекса "iCmltemsHdrRefs" |
При входе в товарные группы, калькуляции, а также утилиту проверки базы данных, появляется след. сообщение: "Ошибка сервера Sdbserv 153,Объект = "iCmltemsHdrRefs". Параметр = 0. Ошибка Win32 = 0.Слишком большая высота дерева индекса "iCmltemsHdrRefs". Решение: Как вариант решения - восстановить backup, который сформирован до повреждения и заполнить базу недостающими документами. |
Ошибка: Исключение процедуры сервера - 503 | Ошибка: Исключение процедуры сервера - 503 (Не определена единица измерения товара) |
Описание: Эта ошибка возникает при формировании списка документов, в частности документов расхода или при импорте расхода из базы ркипера. Backup-Restore базы не помогает. При проверке накладных SHCheck Utility - эта ошибка проявляется и не исправляется. Решение: Нужно выполнить процедуру ChkGsMUnitRef (из библиотеки SHSERV.DLL) - после его выполнения в текстовом логе сервера (по умолчанию, sdb.txt) появятся строки вида "__ LOST MUNIT __ ... ", в которых указаны наименования и коды товаров и наименования ед. изм., которые к ним надо добавить. |
Не найдена товарная группа внешний код %Х | Не найдена товарная группа внешний код %Х. Исключение процедуры сервера. |
Ошибка возникает при импорте товаров (меню и модификаторы). R-Keeper v7 В случае использования RK7 следует проверить, нет ли НЕ удаленных блюд (черновики, активные) в удаленных группах меню. В общем для RK7 универсального решения нет - дополнительно можно посмотреть на трекере задачи http://tracker.ucs.ru:8080/redmine/issues/20726 и http://tracker.ucs.ru:8080/redmine/issues/24364, а также связанными с ними задачи. |
Не найдено поле DEPART в таблице ACHECK | Field not found file C:\RK6\DB\ARK6.UDB table ACHECK field DEPART | Ошибка возникает при импорте словарей (меню). Решение: обновить библиотеку SHTR.DLL на версию не ниже 1.13.9.1 |
Не найден товар для модификатора. | Не найден товар для модификатора. | Обновить SHTR.DLL на версию не ниже 1.13.9.1 |
Исключение процедуры сервера 563 | Отсутствует версия комплекта на заданную дату (Исключение процедуры сервера 563) | Если SHCheck и диагностика ошибок не выдают, то надо удалить данный комплект и завести его заново. Также подобная ошибка бывает следствием при обновлении SHouse v3 на SHouse v4. Вполне вероятно во вновь создаваемые блюда входят полуфабрикаты перенесенные из старого склада. И у данных полуфабрикатов отсутствуют периоды на определенные даты, т.е. имеет место конфликт между периодами комплектов блюда и входящих в него составляющих. Еще один варианет появляния ошибки - когда в новый, создаваемый в SH4 комплект, входили комплекты, перекачанные из SH3. Решение - выполнение процедуры SetStartCmHdrDate из shfix.dll версии 4.49.86 |
Исключение процедуры сервера 37 | Не найдена вершина в дереве/мастерзапись (Исключение процедуры сервера 37) | Необходимо сделать обновление версии программы. |
Недопустимое имя параметра "%S" | Недопустимое имя параметра "%S". Исключение процедуры сервера 100 | Данная ошибка выдается при открытии карты комплекта. Проблема решается обновлением версии программы и удалением последнего периода действия комлекта. Если период не удаляется, удаляется сам комплект и заводится заново. |
Цена не может быть отрицательной. | При импорте расхода возникает ошибка "Цена не может быть отрицательной" | Проблема решается выполнением процедуры ZeroGsInPrice c использование специальной библиотеки ShFix.dll |
DLL exception: Field 'NALOG' not found. | DLL exception: Field 'NALOG' not found. | Данная ошибка появляется при импорте меню. Проблема решается повышением версии RK6. |
DLL exception: Invalid pointer operation. | DLL exception: Invalid pointer operation. | Посмотреть в отчетах R-Keeper v6 расход блюд за данный период. При наличии неизвестных блюд или знаков "???" исправлять БД R-Keeper v6 |
Could not convert variant of type (String) into type (Double) | Could not convert variant of type (String) into type (Double) | Ошибка возникает при добавлении товара в комплект. Решение проблемы - обновление версии программы. Или как временный вариант: в меню Сервис->Настройки склада->Комплекты - снять галочку "Автоматически подставлять проценты обработки" |
Неизвестное исключение процедуры сервера 606 | Некорректная запись о замене для товара <наименование_товара>. Неизвестное исключение процедуры сервера 606 | Ошибка возникает при построениии списка накладных. Решение проблемы - обновление версии программы. |
Не найден товар для спецификации расхода | Не найден товар для спецификации расхода. Внешний код XXX |
Данные решения указанной проблемы нельзя применять в случае использования SH4 HeadOffice Ошибка возникает при импорте расхода блюд. В качестве значения ХХХ указывается ШИФР проблемного блюда (модификатора, категории) в шестнадцатиричном виде (HEX) - например, значение 244Е соотв. десятичному 9294. Вариант №1 Для решения проблемы нужно найти в таблице меню (menu.db) блюдо с соотв. шифром (поле Sifr) и проверить, корректно ли заполнены в этой записи остальные поля. Например, поле Parent (шифр родителя) может ссылаться на несуществующую запись. Если в таблице menu.db такого блюда нет, следует проверить в удаленном меню (menu_.db) Если проблема не связана с блюдами, надо аналогичным образом проверить другие таблицы (categ.db, modify.db) Вариант №2 Ошибка может возникать при использовании библиотеки SHTR.DLL, предназначенной для SH4 HeadOffice. В таком случае необходимо заменить ее на стандартную библиотеку SHTR.DLL. |
Неверная контрольная сумма ключа защиты | Неверная контрольная сумма ключа защиты. | - Ошибка возникает при входе в программу и устраняется заменой ключа. - Либо не совпадает версия программы с прошивкой ключа. |
Дублирование в порядке компонентов комплекта | Исключение процедуры сервера 621 |
Возникает при попытке открыть комплект или список комплектов. Решение проблемы: 1. Если версия склада ниже 4.62, скопировать в любое место библиотеку ShServ.dll. ВАЖНО: библиотеку НЕ НУЖНО подменять в SDBSrv! |
Undefined symbol "PRINTCOLOR" | Undefined symbol "PRINTCOLOR" | Ошибка возникает при попытке распечатать из спец.ведомости остатков форму "Заказ". Решение проблемы - обновление формы REP_SPECZAKAZ.frf |
Код ошибки WinSock 10038 | Невозможна операция записи (5064). Код ошибки WinSock 10038. | Ошибка выдается при построении баланса счетов. Проблема решается увеличением таймаута на сервере и клиенте. |
Адрес процедуры "DocHdrAttrList" неизвестен | Ошибка процедуры сервера Sdbserv 84. Объект = "DocHdrAttrList". параметр = 0. Ошибка Win 32 = 0. | Возникает при попытке добавить атрибут заголовка документа. Решение: обновить ShServ.dll - должна быть не ниже версии 4.48.86. |
An error occured while attempting to initialize the Borland Data Base Engine (error $210A) | An error occured while attempting to initialize the Borland Data Base Engine (error $210A) | Возникает при попытке импорте меню. Решение: установить BDE |
Database not supported | Database not supported | Ошибка возникает при импорте из R-Keeper и заключается в несоответствии версии библиотеки rklogin.dll и накопительной базы данных ARK6.UDB . Проблема устраняется копированием библиотеки rklogin.dll из рабочего каталога RK6 в директорию SH4 (откуда запускается транспорт данных ImportRK.exe) |
Ошибка сервера Sdbserv 72 | Нарушение условий ссылочной целостности внешнего ключа "fk_ExpSpecs0_CmRef": мастер-запись не найдена. Ошибка сервера Sdbserv 72. Объект = "fk_ExpSpecs0_CmRef". Параметр = 0. Ошибка Win32=0. | Ошибка появляется при импорте меню. Для решения проблемы необходимо выполнить обновление программы SHouse до последней, затем выполнить процедуру CheckGsCmRef используя библиотеку SH_CRTDB.DLL. |
Комплект не найден (по заданному RID) | Комплект не найден (по заданному RID) | Ошибка появляется при открытии группы блюд. Для решения проблемы необходимо выполнить обновление программы SHouse до последней, затем выполнить процедуру CheckGsCmRef используя библиотеку SH_CRTDB.DLL. |
Floating point overflow | Floating point overflow | Данная ошибка появляется при печати отчетов. Проблема связана с ошибками в печатной форме для данного отчета (возможно после изменения ее самими пользователями). Решение проблемы - замена печатной формы, на рабочую печатную форму (стандартную) того же отчета. |
Printing in progress | Printing in progress | Данная ошибка появляется при печати отчетов. Проблема связана с ошибками в печатной форме для данного отчета (возможно после изменения ее самими пользователями). Решение проблемы - замена печатной формы, на рабочую печатную форму (стандартную) того же отчета. |
DLL exeption: Index is out of date | DLL exeption: Index is out of date. Index: Iparent. | Ошибка появляется при импорте данных из БД RKepeer. Для решения проблемы необходимо сделать реиндексацию БД RKepeer с помощью утилиты REIND32.EXE и повторить импорт данных в SHouse. |
Ошибка сервера Sdbserv 77 | Нарушение условия уникальности индекса "uiExpM0". Ошибка сервера Sdbserv 77. Объект = "uiExpMO" |
Есть несколько причин возникновения ошибки и методов ее решения: 1. Ошибка возникает при импорте расхода блюд из R-Keeper v6 или v7 и объясняется тем, что в таблице expm0 лежит много мусора. Таким образом, импорт расхода за некоторые дни может не проходить. Решение: выполнить процедуру ChkExpM из прилагаемой ShServ.dll. Для версии SH4.52 требуется модифицированная ShServ.dll, с версии SH4.53 эта процедура станет стандартной. 2. Блюдо было удалено вручную и в menu.db и в menu_.db. Решение: расход блюд не импортируется за этот день в SH4, а забивается вручную. 3. В SH4 некоторые модификаторы могут в свойствах иметь тип "ССЫЛКА" - так делать нельзя и это может быть причиной данной ошибки. Решение: нужно что бы все модификаторы имели тип "ТОВАР". (Проверялось на версии SH 4.60). 4. Если данные импортируются из RK7, необходимо параметр в RK7 "Не передавать тип заказа (SH4UsesDefaultCOT)" выставить в TRUE. |
Нарушение условия уникальности индекса pkDocSpecs0 | Нарушение условия уникальности индекса pkDocSpecs0 |
Дополнительная информация: - диагностика база данных находит много потерянных страниц и также ссылается на индекс pkDocSpecs0. Backup базы проходит успешно, но восстановить из этого архива базу невозможно. Решение: - предупредить клиента, что на время восстановления базы в складе работать нет смысла, т.к. внесенные изменения будут потеряны - создать запрос в трекере (http://tracker.ucs.ru), вложить в него проблемную базу (backup не подходит!), предварительно сделав архив с помощью WinRAR (или любого другого архиватора) и ожидать восстановления базы - если на момент возникновения проблемы с базой у клиента установлена не последняя версия склада, подготовиться к обновлению (не забывая при этом, что с версии 4.31.44 используются ключи с новой пропиской) |
Количество должно быть больше нуля | Количество должно быть больше нуля |
Ошибка происходит при попытке открыть документа расхода. Проблема может возникать в нескольких случаях: - в накопительной базе R-Keeper v6 есть чеки, которые были оплачены одной валютой, а сдача оформлена другой (как правило, ошибка персонала). Если оплата комбинированная, то сдача должна быть в любой из валют оплаты - в таком случае проблема не возникает. - в накопительной базе R-Keeper v6 есть чеки, в оплате которых по одной из валют нулевая сумма. Эта ситуация возникает очень редко и является нештатной (сбой системы). Следует заметить, что это не относится к чекам без оплаты (которые обрабатываются нормально) - проблема возникает только в том случае, когда в таблице PCHECK.DB (оплата чеков) для одного чека существует несколько записей, одна из который с нулевой суммой. Для решения проблемы потребуется исправлять исходные данные закрытого дня (каталог OLDRES) В первом случае для выбора проблемных записей можно использовать следующий запрос: SELECT * FROM 'C:\UCS\PCHECK.DB' AS a, 'C:\UCS\PCHECK.DB' AS b WHERE (a.Cnum = b.Cnum AND a.Curency <> b.Curency) ВАЖНО: Запрос возвращает не только проблемные записи, но и записи с комбинированной оплатой - будьте внимательны! Во втором случае нужно просмотреть все записи в таблице PCHECK.DB и удалить проблемную. |
No measure unit is set for the product. | When trying to perform expenditure, system shows error "No measure unit is set for the product." |
Sometimes system shows error "No measure unit is set for the product." when trying to perform expenditure. 1. Using SDBMAN execute query (Service -> Execute query) on procedure "ChkGsMUnitRef" in ShServ.dll |
Ошибка менеджера данных 16. Тэг поля:{200.3.0} | Слишком длинная строка для присваивания |
Возникает при открытии комплекта; группы комплектов, куда входит проблемный комплект; либо при открытии группы товаров, где есть товар, связанный с проблемным комплектом. Причина: у комплекта макс длинна аббревиатуры 16 символов, у товара – 20. При создании комплекта на основе товара не отрезались лишние символы до версии 4.72 Решение: Выполнить процедуру CutCmBaseAttr из библиотеки SHFix.dll версии 4.70.159.0 от 05.08.10 |
Неизвестное исключение процедуры сервера 72 | Неизвестное исключение процедуры сервера 72 | При формировании отчета "Анализ неплатильщиков" в SHUtils, может возникнуть данная ошибка. Подробное описание причин возникновения есть на http://tracker.ucs.ru/view.php?id=7273 Решение:обновить текущую версию SHUtils до версии 4.19.41.0 |
Несуществующие модификаторы при списании | При списании документа расхода к товарам без модификаторов, прикрепляются несуществующие модификаторы. При пересписании документа, данные позиции могут уже не подкрепляться |
Нечто подобное обсуждалось на трекере - например, запрос 0005967. Решение: 1. Сделать бэкап БД. Далее, существующие проблемные документы загрузить заново и пересписать. Обновленная ShFix.dll находится на ФТП (ftp://.../dealers/storehouse/sh4/shfix/). Также ее можно скачать с трекера - номер обращения 0005967 (http://tracker.ucs.ru/view.php?id=5967), вложенный архив ShFix4_70_159.rar |
Не работает назначение комплекта в SH 4.92 | Не корректно отрабатывает назначение комплекта в SH 4.92 |
- В версии сервера 4.92 при работе с "учет/спец. учет" некорректно отрабатывает назначение комплекта по-умолчанию. Если делать в учете, то не назначается в спец. учете (и наоборот).
- Решение: сделать обновление SH до версии 4.93 и выполнить запрос UpdGsCmRef из библиотеки SHFix.DLL 4.84.222.0 - что назначит "неназначенные" комплекты по-умолчанию
|
Error - Sdbserv 70 | Ошибка чтения потока - Ошибка сервера Sdbserv 70 |
Воспроизводится: P.S> решен запрос на трекере - №28093 |
Не сходятся остатки на конец-начало периода | Не сходятся суммы остатков конца одного периода с началом следующего периода в товарном отчете |
Решение: Предполагается вызывать так (в качестве библиотеки указывать SHSERV.DLL с версии SH 4.94): Внимание! Ошибки при работе SHC.EXE могут остаться. Главное, чтобы отчет сходился! На современных версиях SH 4.90 и выше, после правки можно воспользоваться SHC для исправления оставшихся после правки логических ошибок до полного исправления БД. 3. Если не помогают вышеописанные процедуры, выполнить процедуру fix_002 - из актуальной для используемого SH версии SHFIX.DLL. Для старых версий SH (ниже 4.90) может не сработать, тогда выполнить после обновления ПО до актуальной версии. |
При некорректном окончании работы программы StoreHouse v4 в сообщении об ошибке очень часто указывается код ошибки "WinSock" - расшифровку таже можно посмотреть в таблице ниже.
Код ошибки Winsock | Краткое описание сущности ошибки |
10004 | Операция блокирования прервана вызовом WSACancelBlockingCall.10009 Предоставленный дескриптор файла неверен. |
10013 | Сделана попытка доступа к сокету методом, запрещенным правами доступа. |
10014 | Система обнаружила недопустимый указатель адреса при попытке использовать в вызове аргумент указателя. |
10022 | Получен недопустимый аргумент. |
10024 | Открыто слишком много сокетов. |
10035 | Операция на незаблокированном сокете не может быть завершена немедленно. |
10036 | Сейчас выполняется операция блокировки. |
10037 | На незаблокированном сокете сделана попытка выполнить операцию при наличии другой выполняемой операции. |
10038 | Сделана попытка выполнить операцию на объекте, не являющемся сокетом. |
10039 | В операции на сокете пропущен обязательный адрес. |
10040 | Сообщение, отправленное на сокет датаграмм, было больше, чем буфер внутренних сообщений или был превышен иной сетевой параметр. Также возможно, что буфер для принятия сообщения был меньше, чем размер сообщения. |
10041 | Протокол, указанный в вызове функции сокета, не поддерживает такую семантику для требуемого типа сокета. |
10042 | Для вызова getsockopt или setsockopt был указан неизвестный, недопустимый или неподдерживаемый параметр или уровень. |
10043 | Требуемый протокол не настроен в данной системе, или не существует его реализации. |
10044 | Поддержка указанного типа сокетов в этом семействе адресов отсутствует. |
10045 | Предпринятая операция не поддерживается для выбранного типа объекта. |
10046 | Данное семейство протоколов не настроено в системе, или оно не реализовано. |
10047 | Адрес несовместим с выбранным протоколом. |
10048 | Обычно разрешается одно использование адреса сокета (протокол/сетевой адрес/порт). |
10049 | Требуемый адрес для своего контекста неверен. |
10050 | Операция на сокете обнаружила отключение сети. |
10051 | Сделана попытка выполнить операцию на сокете при отключенной сети. |
10052 | Подключение было разорвано из-за ошибки во время выполнения операции. |
10053 | Программа на вашем хост-компьютере разорвала установленное подключение. |
10054 | Удаленный хост принудительно разорвал существующее подключение. |
10055 | Невозможно выполнить операцию на сокете, т.к. буфер слишком мал или очередь переполнена. |
10056 | Сделан запрос на подключение для уже подключенного сокета. |
10057 | Запрос на отправку или получение данных (when sending on a datagram socket using a sendto call) no address was supplied. |
10058 | Запрос на отправку или получение данных был запрещен, т.к. сокет уже отключен в данном направлении на основании прежней запроса на его отключение. |
10059 | Слишком много ссылок на некоторый ключевой объект. |
10060
|
Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера. |
10061 | Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение. |
10062 | Не удается преобразовать имя. |
10063 | Компонент имени или все имя слишком длинно. |
10064 | Произошла ошибка операции на сокете, т.к. конечный хост выключен. |
10065 | Сделана попытка выполнить операцию на сокете для недоступного хоста. |
10066 | Нельзя удалить пустой каталог. |
10067 | Реализация Windows Sockets может иметь ограничения на количество одновременно выполняющихся приложений. |
10068 | Квота исчерпана. |
10069 | Дисковая квота исчерпана. |
10070 | Ссылка дескриптора файла более недоступна. |
10071 | Элемент локально недоступен. |
10091 | WSAStartup не может выполняться в данное время, т.к. недоступна основная система, используемая для работы сетевых служб . |
10092 | Указанная версия Windows Sockets не поддерживается. |
10093 | Или приложение не вызвало WSAStartup, или произошла ошибка в WSAStartup. |
10101 | Возвращено WSARecv или WSARecvFrom, чтобы показать - удаленная сторона инициировала правильную последовательность отключения. |
10102 | WSALookupServiceNext не может возвратить каких-либо дополнительных результатов. |
10103 | Был сделан вызов WSALookupServiceEnd, когда этот вызов еще обрабатывался. Обрабатываемый вызов был прерван. |
10104 | Недопустимая таблица вызова процедуры. |
10105 | Недопустимый поставщик услуг. |
10106 | Не удается загрузить или инициализировать нужного поставщика услуг. |
10107 | Произошла ошибка системного вызова, что недопустимо. |
10108 | Неизвестная служба. Эта служба отсутствует в указанном пространстве имен. |
10109 | Указанный класс не найден. |
10110 | WSALookupServiceNext не может возвратить каких-либо дополнительных результатов. |
10111 | Был сделан вызов WSALookupServiceEnd, когда этот вызов еще обрабатывался. Обрабатываемый вызов был прерван. |
10112 | Произошла ошибка запроса к базе данных, т.к. запрос был активно отвергнут. |
11001 | Этот хост неизвестен.Возможно, отсутствует связь, или не указан прокси сервер. |
11002 | Обычно - это временная ошибка, возникающая во время разрешения имени узла, и означающая, что локальный сервер не получил ответа от заслуживающего доверие сервера. |
11003 | При просмотре базы данных произошла неисправимая ошибка. |
11004 | Затребованное имя допустимо и оно найдено в базе данных, но для имени отсутствуют связанные с ним данные, которые были разрешены для него. |
11005 | Получен по меньшей мере один резерв. |
11006 | Получен по меньшей мере один путь. |
11007 | Отправители отсутствуют. |
11008 | Получатели отсутствуют. |
11009 | Резерв подтвержден. |
11010 | Произошла ошибка из-за недостатка ресурсов. |
11011 | Отвергнуто по административным причинам - неправильные учетные данные. |
11012 | Неизвестный или вызывающий конфликты стиль. |
11013 | Обнаружена проблема общего типа с буфером filterspec или providerspecific. |
11014 | Обнаружена проблема с частью "flowspec". |
11015 | Общая ошибка QOS. |
11016 | В спецификаторах потока найден недопустимый или нераспознанный тип службы. |
11017 | Недопустимый или нераспознанный спецификатор потока был найден в структуре QOS. |
11018 | Недопустимый буфер QOS, определяемый поставщиком. |
11019 | Использован недопустимый стиль фильтра QOS. |
11020 | Использован недопустимый стиль фильтра QOS. |
11021 | В FLOWDESCRIPTOR был задан неверный номер QOS FILTERSPEC. |
11022 | В определяемом поставщиком буфере QOS задан объект с неверным полем ObjectLength. |
11023 | В структуре QOS заданы неверные номера дескрипторов потока. |
11024 | В буфере QOS, задаваемом поставщиком, найден нераспознанный объект. |
11025 | В буфере QOS, задаваемом поставщиком, найден объект с недопустимой политикой. |
11026 | В списке дескрипторов потока обнаружен недопустимый дескриптор потока QOS. |
11027 | Недопустимый или нераспознанный спецификатор потока обнаружен в буфере QOS, определяемом поставщиком. |
11028 | Недопустимый FILTERSPEC обнаружен в буфере QOS, определяемом поставщиком. |
11029 | Недопустимый объект режима изменения формы обнаружен в буфере QOS, определяемом поставщиком. |
11030 | Недопустимый объект формирования уровня обнаружен в буфере QOS, определяемом поставщиком. |
11031 | Зарезервированный элемент политики обнаружен в буфере QOS, определяемом поставщиком. |
Печать атрибутов:
Собственные реквизиты (определены для любого отчета)
OPV(OA,A,0) где A атрибут
Доп. атрибуты корреспондентов
OPV(CA,A,RID) где A атрибут, RID-идентификатор корреспондента
Доп. атрибуты товаров
OPV(GA,A,RID) где A атрибут, RID-идентификатор товара
Доп. атрибуты заголовков комплектов
OPV(CHA,A,RID) где A атрибут, RID-идентификатор заголовка комплекта
Атрибуты спецификаций накладных (числовые)
OPV(DSA, A;S, RID )] где A-атрибут,S - тип учета (0-учет, 1 спец.учет), RID-идентификатор спецификации накладной
Например: для накладной атрибут с номером 100 для обоих учетов [IF(SysFlag=0,[OPV(DSA, 100;0,[Specs."Specs.105.1.1"])],[OPV(DSA, 100;1,[Specs."Specs.105.1.1"])])]
Значения поля DocRec::Type - тип накладной (см. также sh_tags.h)
----------------------------------------------------------------
0 - приходная накладная
4 - расходная накладная
5 - возврат поставщику
6 - списание товара
8 - сличительная ведомость
10 - акт переработки
11 - внутреннее перемещение
12 - комплектация
13 - декомплектация
Битовая маска опций накладной
DocRec::Options (набор значений, объединенных по OR; см. также sh_tags.h)
-------------------------------------------------------------------------------------------------------
1 - селектор типа учета накладной (спецучет, если бит 0 установлен, иначе учет)
2 - флаг активности (накладная активна, если бит 1 установлен)
4 - признак блокировки накладной (накладная блокирована пользователем, создавшим накладную, если бит 2 установлен)
16 - признак связи накладной с др. документами (если бит 4 установлен, то накладная сгенерирована автоматически - недопустима модификация списка товаров, даты, корреспондентов, валюты и курса накладной, флага использования взаимозамен)
32 - флаг использования взаимозамен - только комплектации (если бит 5 установлен, то в комплектации установлен флаг "Использовать взаимозамены")
Битовая маска опций записи накладной
DocSpecRec::Options (см. также sh_tags.h)
------------------------------------------------------------------------------
2 - запись относится к активному документу (может быть неверно при редактировании накладной)
4 - использовать ставку для расчета налога 1 (НДС) (п/н, р/н. Если значение поля == Null, то используется ставка)
8 - использовать ставку для расчета налога 2 (НСП) (п/н, р/н. Если значение поля == Null, то используется ставка)
16 - автоматически рассчитывать цену излишков (для инвентаризации. Если значение поля == Null, то цена рассчитывается автоматически); - списывать по себестоимости (для расходной накладной)
32 - на данной записи хранятся излишки/недостачи (только инвент.; может быть неверно при редактировании накладной)
64 - использовано доп. количество для инвентаризации (только инвент.; может быть неверно при редактировании накладной)
Значения поля PDocRec::Type - тип платежного документа (см. также sh_tags.h)
----------------------------------------------------------------------------
0 - приходный кассовый ордер (п/к)
1 - расходный кассовый ордер (р/к)
2 - приходное платежное поручение (п/п)
3 - расходное платежное поручение (р/п)
4 - приходная платежная операция (п/о)
5 - расходная платежная операция (р/о)
Битовая маска опций платежного документа PDocRec::Options (набор значений, объединенных по OR; см. также sh_tags.h)
-------------------------------------------------------------------------------------------------------------------
1 - документ относится к спец учету
2 - документ активный
4 - документ блокирован создателем документа
8 - автоматически рассчитывать сумму платежного документа на основе связанной накладной
16 - признак связи платежного документа с др. документами (если бит 4 установлен, то платежный документ сгенерирован автоматически - недопустима модификация списка сумм, валюты, курса накладной
Типы группировок отчетов gsfg... (см. также sh_tags.h)
------------------------------------------------------
1 - по дереву товаров
2 - по складам
3 - по товарным категориям
4 - по бух. категориям
5 - по счету-дебет
6 - по счету-кредит
Флаги отчетов drpt... (см. также sh_tags.h)
-------------------------------------------
0x1 - признак учета
0x2 - показывать активные документы, спецификации
0x4 - показывать неактивные документы, спецификации
0x8 - вычислять суммы
0x10 - объединить корреспондентов по AND (список док-тов)
0x10 - группировать по складам (товарный отчет)
0x10 - группировать по корреспондентам (анализ корреспондентов)
0x20 - вычислять остатки
0x40 - показывать с каких приходов/на какие расходы списано
0x80 - включать поддерево товарной группы
0x100 - только не пустые очереди Fifo
0x8 - вычислять номера для создаваемых документов
0x10 - заблокировать созданные документы
0x20 - использовать фильтр по количеству
0x10 - в книге продаж использовать при фильтрации дату накладной
Фильтр суммы на спецификациях бух. операций накладных dsf... (см. также sh_tags.h)
----------------------------------------------------------------------------------
0 - закупочная без налогов (приход)
1 - закупочный НДС (приход)
2 - закупочный НСП (приход)
3 - закупочная с налогами (приход)
4 - закупочная без налогов (расход)
5 - закупочный НДС (расход)
6 - закупочный НСП (расход)
7 - закупочная с налогами (расход)
8 - отпускная без налогов
9 - отпускной НДС
10 - отпускной НСП
11 - отпускная с налогами
12 - наценка без налогов
13 - наценка с налогами
Параметры, кот. определены в любом отчете
--------------------------
"RptDate" Печатать дату печати отчета (числовое значение):
0 - не печатать,
1 - печатать "User" Имя пользователя БД, соединенного с сервером
"DbAlias" Имя сервера
"FCaption" Заголовок формы, для кот. вызван отчет
"FVState" Состояние формы, для кот. вызван отчет (числовое значение):
1 - не модифицирована,
2 - модифицирована,
4 - новая (несохраненная),
16 - только для чтения,
32 - объект, отображаемый формой, удален
"SysFlag" Тип учета формы (числовое значение):
0 - учет,
1 - спецучет, -1 - не поддерживает разделение по учетам
"UDepart" Склад, определенный для пользователя
"SumOpts" Битовая маска опций отображения сумм для учета, определяемого печатаемой формой (числовое значение):
0x1 - показывать закуп. сумму без налогов
0x2 - показывать закупочный НДС
0x4 - показывать закупочный НСП
0x8 - показывать закуп. сумму с налогами
0x10 - вычислять закуп. цену по сумме с налогами
0x100 - показывать отп. сумму без налогов
0x200 - показывать отпускной НДС
0x400 - показывать отпускной НСП
0x800 - показывать отп. сумму с налогами
0x1000 - вычислять отп. цену по сумме с налогами
"BaseCurr" Код базовой валюты
"OrgName" Наименование организации
"EntName" Наименование предприятия
Классы дополнительных параметров
--------------------------------
"OA" Собственные реквизиты (определены для любого отчета)
"CA" Доп. атрибуты корреспондентов (определены в форме накладной, форме счета/фактуры)
"GA" Доп. атрибуты корреспондентов (определены в форме накладной, форме счета/фактуры)
Дополнительные параметры
------------------------
"$corr_type" - тип корреспондента (только для класса "CA"):
"0" - склад,
"1" - юр.лицо,
"2" - физ.лицо,
"3" - спец.корр
+-----------------------------------+ | Список валют; Свойства валюты | +-----------------------------------+ Report Список вылют (свойства валюта) ------ 100.1.0 Ключ (Rid) валюты - внутрениий ключ валюты 100.2.0 Св-ва валюты. Если бит 0 установлен, то валюта базовая. Если бит 1 установлен, то валюта может быть использована для рассчетов в отчетах 100.3.0 Код валюты (напр., "RBL"). Используется для идентификации валюты 100.4.0 Банковский код валюты (напр., "002") 100.5.0 Наименование валюты (напр., "Российский рубль") +------------------+ | Курсы валюты | +------------------+ Params Фильтр ------ 100.1.1 Ключ (Rid) валюты 100.3.1 Код валюты (напр., "RBL"). Используется для идентификации валюты 0.5.0 Дата курса с 0.6.0 Дата курса по Report Курсы ------ 104.1.0 Дата курса 104.2.0 Сумма в базовой валюте 104.3.0 Сумма в валюте, для которой строится история курса +-----------------------------------------------------+ | Список корреспондентов, карточка корреспондента | +-----------------------------------------------------+ Groups Список групп корреспондентов (только список корреспондентов) ------ 101.1.0 Ключ (Rid) группы 101.1.2 Ссылка на родительскую группу (на Rid) 101.1.3 Наименование группы Report Список корреспондентов, карточка корреспондента ------ 101.1.1 Ссылка на родительскую группу (на Rid в группах) 101.3.1 Наименование группы, которой принадлежит корреспондент (только карточка корреспондента) 102.1.0 Ключ (Rid) корреспондента 102.2.0 Тип корреспондента: 0 - склад, 1 - юр. лицо, 2 - физ. лицо, 3 - спец. корр. 102.3.0 Код корреспондента 102.4.0 Наименование корреспондента 102.5.0 Внутренний номер склада Attrs Атрибуты корреспондента (только карточка корреспондента) ----- 111.1.0 Числовой идентификатор корреспондента 111.5.0 Наименование атрибута 0.1.0 Значение атрибута +---------------------------------------+ | План бух. счетов, свойства счета | +---------------------------------------+ Report План бух. счетов, свойства счета ------ 106.1.0 Первичный ключ счета/субсчета 106.2.0 Ссылка на родительский счет/субсчет 106.3.0 Код счета/субсчета 106.4.0 Наименование счета/субсчета 106.3.1 Код родительского счета/субсчета (только форма свойств счета) 0.13.0 Уровень дерева (только в списке счетов) +------------------------------------------+ | Список бух. операций над накладными | +------------------------------------------+ Report Список операций ------ 107.1.0 Первичный ключ (Rid) опреации 107.2.0 Наименование операции 107.3.0 Маска типов накладных (1 << DocRec::Type, объединено по битовому OR), к кот. применимы операции +------------------------------------------+ | Свойства бух. операции | +------------------------------------------+ Header Заголовок операции ------ 107.1.0 Первичный ключ (Rid) опреации 107.2.0 Наименование операции 107.3.0 Маска типов накладных (1 << DocRec::Type, объединено по битовому OR), к кот. применимы операции Specs Список проводок ------ 106.1.1 Первичный ключ (Rid) счета - дебет 106.3.1 Код счета - дебет 106.1.2 Первичный ключ (Rid) счета - кредит 106.3.2 Код счета - кредит 108.2.0 Коэффициент 108.3.0 Код фильтра по сумме dsf... (что проводится) 0.2.0 Наименование фильтра по сумме (что проводится) 219.1.3 Первичный ключ (Rid) бух. категории 219.2.3 Наименование бух. категории 108.4.0 Описание +------------------------+ | Протокол накладных | +------------------------+ Params Фильтр ------ 0.1.0 тип накладных: 0 - "созданные/модифицированные/удаленные c" 1 - "созданные с-по", 2 - "удаленные с-по" 0.2.0 дата с 0.3.0 дата по 0.4.0 максимальная мин.дата накладной Report Протокол ------ 103.1.0 Ключ (Rid) накладной (Null для удаленных) 103.3.0 Текущая дата накладной (дата накладной на момент удаления) 103.4.0 Текстовая часть номера накладной 103.5.0 Цифровая часть номера накладной 103.11.0 Битовая маска опций накладной DocRec::Options 103.10.0 Тип накладной DocRec::Type 0.1.0 Мин. дата накладной 0.2.0 Дата/время последнего изменения накладной (Старшее двойное слово - дата, младшее двойное слово - время в секундах) 0.4.0 Создавший накладную пользователь 0.5.0 Дата/время создания накладной (Старшее двойное слово - дата, младшее двойное слово - время в секундах) 0.7.0 Удаливший накладную пользователь 0.8.0 Дата/время удаления накладной (Старшее двойное слово - дата, младшее двойное слово - время в секундах) 0.12.0 Дата последнего изменения накладной 0.15.0 Дата создания накладной 0.18.0 Дата удаления накладной 0.13.0 Время последнего изменения накладной в секундах 0.16.0 Время создания накладной в секундах 0.19.0 Время удаления накладной в секундах +------------------------+ | Список накладных | +------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска типов документов (1 << DocRec::Type, объединено по битовому OR) 0.4.0 Маска параметров drpt... 100.1.1 Ключ (Rid) валюты, в кот рассчитывать сумму 100.3.1 Код валюты, в кот рассчитывать сумму 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.1.3 Ключ (Rid) корреспондента-получателя 102.4.3 Наименование корреспондента-получателя 102.1.4 Ключ (Rid) отв. лица 102.4.4 Имя отв. лица 100.1.5 Ключ (Rid) валюты накладных 100.3.5 Код валюты накладных Report Список накладных ------ 103.1.1 Ключ (Rid) накладной 103.3.1 Дата накладной 103.14.1 Стамп даты накладной 103.4.1 Строковая часть номера накладной 103.5.1 Числовая часть номера накладной 103.11.1 Битовая маска опций накладной DocRec::Options 103.10.1 Тип накладной DocRec::Type 103.15.1 Примечание накладной 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.1.3 Ключ (Rid) корреспондента-получателя 102.4.3 Наименование корреспондента-получателя 102.1.4 Ключ (Rid) отв. лица "Отпустил" 102.4.4 Имя отв. лица "Отпустил" 102.1.5 Ключ (Rid) отв. лица "Принял" 102.4.5 Имя отв. лица "Принял" 100.3.0 Код валюты накладной 107.1.9 Ключ (Rid) бух.операции 107.1.9 Строковая часть номера бух.операции 107.1.9 Числовая часть номера бух.операции 107.1.10 Ключ (Rid) счета-фактуры 107.4.10 Строковая часть счета-фактуры 107.5.10 Числовая часть счета-фактуры 0.1.0 * Закупочная сумма б/н 0.2.0 * Закупочный НДС 0.3.0 * Закупочный НСП 0.4.0 * Закупочная сумма в/н 0.1.1 * Отпускная сумма б/н 0.2.1 * Отпускной НДС 0.3.1 * Отпускной НСП 0.4.1 * Отпускная сумма в/н * - чтобы поля, омеченные звездочкой, были определены в отчете, в макет необходимо включить параметр "chkSums" +------------------------+ | Накладная | +------------------------+ Header Заголовок накладной ------ 103.1.1 Ключ (Rid) накладной 103.10.1 Тип накладной DocRec::Type 103.11.1 Битовая маска опций накладной DocRec::Options 103.2.1 Младшее слово стампа даты накладной 103.3.1 Дата накладной 103.4.1 Строковая часть номера накладной 103.5.1 Числовая часть номера накладной 103.14.1 Стамп даты накладной 103.12.0 Курс в базовой валюте (секция "Курс: столько-то RBL за столько-то USD", только п/н, р/н) 103.13.0 Курс в валюте накладной (секция "Курс: столько-то RBL за столько-то USD", только п/н, р/н) 103.15.0 Примечение 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.1.3 Ключ (Rid) корреспондента-получателя 102.4.3 Наименование корреспондента-получателя 102.1.4 Ключ (Rid) отв. лица "Отпустил" 102.4.4 Имя отв. лица "Отпустил" 102.1.5 Ключ (Rid) отв. лица "Принял" 102.4.5 Имя отв. лица "Принял" 100.1.6 Ключ (Rid) валюты документа 100.3.6 Код валюты документа 100.6.6 Наименование целой части валюты 100.7.6 Наименование дробной части валюты 107.1.9 Ключ (Rid) бух.операции 107.1.9 Строковая часть номера бух.операции 107.1.9 Числовая часть номера бух.операции 107.1.10 Ключ (Rid) счета-фактуры (только п/н, р/н, в/т) 107.4.10 Строковая часть счета-фактуры (только п/н, р/н, в/т) 107.5.10 Числовая часть счета-фактуры (только п/н, р/н, в/т) 0.1.7 история: дата создания 0.2.7 история: время создания в секундах 0.3.7 история: дата последнего изменения 0.4.7 история: время последнего изменения в секундах 0.5.7 история: мин. дата активного док-та 0.6.7 история: пользователь, создавший накладную Specs Список товаров ------ 105.1.1 Ключ (Rid) записи 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения 105.3.0 Количество товара 105.15.1 Опции записи DocSpecRec::Options 105.14.0 Альтернативная дата для рассчета курса небазовой валюты (только п/н) 212.2.0 Ставка/сумма НДС (в зависимости от DocSpecRec::Options) 213.2.0 Ставка/сумма НСП (в зависимости от DocSpecRec::Options) 105.3.14 Количество остатка 206.2.14 Наименование единицы измерения остатка 0.201.0 Номер строки в накладной 105.4.15 * Себестоимость: Сумма б/н 105.5.15 * Себестоимость: НДС 105.6.15 * Себестоимость: НСП 105.7.15 * Себестоимость: Цена 105.8.15 * Себестоимость: Сумма в/н 105.4.0 Сумма б/н 105.5.0 НДС 105.6.0 НСП 105.7.0 Цена 105.8.0 Сумма в/н 105.1.2 Ключ (Rid) прихода для списания 103.3.2 Дата накладной для списания (только с/т, в/т) 103.4.2 Строковая часть номера накладной для списания (только с/т, в/т) 103.5.2 Числовая часть номера накладной для списания (только с/т, в/т) 103.11.2 Битовая маска опций накладной DocRec::Options для списания (только с/т, в/т) 103.10.2 Тип накладной DocRec::Type для списания (только с/т, в/т) 210.1.6 Ключ (Rid) товара # 2 (только а/п) 210.3.6 Текстовая часть кода товара # 2 (только а/п) 210.4.6 Числовая часть кода товара # 2 (только а/п) 210.2.6 Наименование товара # 2 (только а/п) 206.1.6 Ключ (Rid) единицы измерения # 2 (только а/п) 206.2.6 Наименование единицы измерения # 2 (только а/п) 105.3.7 Количество товара # 2 (только а/п) 200.1.1 Ключ (Rid) комплекта (только к, д/к) 200.2.1 Наименование комплекта (только к, д/к) 206.1.4 Ключ (Rid) доп. единицы измерения (только с/в) 206.2.4 Наименование доп. единицы измерения (только с/в) 105.3.5 Доп. количество (только с/в) 105.3.16 Вычисляемое доп. количество в с.в. (только с/в; определено, если определена доп. ед. измерения - лучше использовать вместо 105.3.5 при печати) 105.7.17 Вычисляемая цена (только с/в) 212.2.17 Вычисляемый НДС (только с/в) 213.2.17 Вычисляемый НСП (только с/в) Rpt2Grps группы расширенный Детализированные расход комплектации, --------- 0.9.0 Наименование группы 105.1.1 Ключ (Rid) записи (для Rpt2 соответствует полю 105.1.1 в Specs - идентификатору группы) 105.1.2 Ссылка на предка 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения 105.3.0 Количество товара в единицах измерения накладной Rpt1, Rpt2 Расход комплектации, приход декомплектации (Rpt1); ---------- Детализированные расход комплектации, приход декомплектации (Rpt2) - только к, д/к **, *** 105.1.1 Ключ (Rid) записи (для Rpt2 соответствует полю 105.1.1 в Specs - идентификатору группы) 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения 105.3.0 Количество товара 105.4.0 Сумма б/н 105.5.0 НДС 105.6.0 НСП 105.7.0 Цена 105.8.0 Сумма в/н 102.1.1 Ключ (Rid) склада 102.4.1 Наименование склада Rpt1, Rpt2 Излишки недостачи, Излишки недостачи по единицам измерения (только с/в) *** ---------- 105.1.5 Ключ (Rid) ценообразующей записи 210.1.5 Ключ (Rid) товара 210.3.5 Текстовая часть кода товара 210.4.5 Числовая часть кода товара 210.2.5 Наименование товара 206.1.5 Ключ (Rid) единицы измерения 206.2.5 Наименование единицы измерения 105.3.0 Рассчетное количество товара 105.4.0 Рассчетная сумма б/н (только Rpt1) 105.5.0 Рассчетный НДС (только Rpt1) 105.6.0 Рассчетный НСП (только Rpt1) 105.7.0 Рассчетная цена (только Rpt1) 105.8.0 Рассчетная сумма в/н (только Rpt1) 105.3.2 Фактическое количество товара 105.4.2 Фактическая сумма б/н (только Rpt1) 105.5.2 Фактический НДС (только Rpt1) 105.6.2 Фактический НСП (только Rpt1) 105.7.2 Фактическая цена (только Rpt1) 105.8.2 Фактическая сумма в/н (только Rpt1) 105.3.1 Количество излишка/недостачи 105.4.1 Сумма б/н излишка/недостачи (только Rpt1) 105.5.1 НДС излишка/недостачи (только Rpt1) 105.6.1 НСП излишка/недостачи (только Rpt1) 105.7.1 Цена излишка/недостачи (только Rpt1) 105.8.1 Сумма в/н излишка/недостачи (только Rpt1) 102.1.5 Ключ (Rid) склада 102.4.5 Наименование склада RptAccs Проводки по накладной **** ------- 106.1.1 Ключ (Rid) счета-дебет 106.3.1 Код счета-дебет 106.1.2 Ключ (Rid) счета-кредит 106.3.2 Код счета-кредит 0.1.4 Сумма 219.2.3 Бух. категория 108.4.0 Описание операции RptPDocs Список платежных документов, связанных с накладной (только п/н, р/н, в/т) ***** -------- 112.1.9 Ключ (Rid) платежного документа 112.3.9 Дата платежного документа 112.4.9 Строковая часть номера платежного документа 112.5.9 Числовая часть номера платежного документа 112.10.9 Тип платежного документа PDocRec::Type 112.11.9 Битовая маска опций платежного документа PDocRec::Options 103.1.1 Ключ (Rid) связанной накладной 107.1.3 Ключ (Rid) бух. операции 107.2.3 Наименование бух. операции 0.1.0 Сумма б/н в базовой валюте 0.2.0 НДС в базовой валюте 0.3.0 НСП в базовой валюте 0.4.0 Сумма в/н в базовой валюте * - чтобы поля себестоимости в отчете были определены, в макет необходимо включить параметр "chkSums"; ** - в качестве групп для Rpt2 м. использовать Specs с ключевым полем 105.1.1 *** - чтобы данные для отчета Rpt1 были загружены перед печатью, в макет необходимо включить параметр "chkRpt1"; чтобы данные для отчета Rpt2 были загружены перед печатью, в макет необходимо включить параметр "chkRpt2" **** - чтобы данные для отчета RptAccs были загружены перед печатью, в макет необходимо включить параметр "chkRptAccs"; ***** - чтобы данные для отчета RptPDocs были загружены перед печатью, в макет необходимо включить параметр "chkRptPDocs"; xxxxxxxxxx +------------------------+ | Движение товара | +------------------------+ Params Фильтр ------ 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска параметров drpt... 102.1.2 Ключ (Rid) склада 102.4.2 Наименование склада 101.1.3 Ключ (Rid) группы складов 101.3.3 Наименование группы складов 100.1.4 Ключ (Rid) валюты, в кот. строится отчет 100.3.4 Код валюты, в кот. строится отчет Report Отчет ------ 105.1.1 Ключ (Rid) записи 103.1.1 Ключ (Rid) накладной 103.10.1 Тип накладной DocRec::Type 105.2.1 Тип записи (0 - приход, 1 - расход, 2 - инвентаризация) 105.15.1 Опции записи DocSpecRec::Options 103.11.1 Опции накладной DocRec::Options 103.4.1 Текстовая часть номера накладной 103.5.1 Цифровая часть номера накладной 103.14.1 Стамп даты накладной 103.3.1 Дата накладной 102.1.2 Ключ (Rid) поставщика 102.4.2 Наименование поставщика 102.1.3 Ключ (Rid) получателя 102.4.3 Наименование получателя 105.3.0 Количество 105.3.10 Вычисляемое количество - лучше использовать его, нежели количество 105.3.0 105.4.0 Сумма б/н 105.5.0 НДС 105.6.0 НСП 105.7.0 Цена 105.8.0 Сумма в/н 105.3.12 * Остатки: Количество 105.4.12 * Остатки: Сумма б/н 105.5.12 * Остатки: НДС 105.6.12 * Остатки: НСП 105.8.12 * Остатки: Сумма в/н 105.1.4 ** Списание: Ключ (Rid) записи 103.1.4 ** Списание: Ключ (Rid) накладной 103.10.4 ** Списание: Тип накладной DocRec::Type 105.2.4 ** Списание: Тип записи (0 - приход, 1 - расход, 2 - инвентаризация) 105.15.4 ** Списание: Опции записи DocSpecRec::Options 103.11.4 ** Списание: Опции накладной DocRec::Options 103.4.4 ** Списание: Текстовая часть номера накладной 103.5.4 ** Списание: Цифровая часть номера накладной 103.14.4 ** Списание: Стамп даты накладной 103.3.4 ** Списание: Дата накладной 105.3.5 ** Списание: Количество 105.3.11 ** Списание: Вычисляемое количество - лучше использовать его, нежели количество 105.3.5 MUnit Ед. измерения, вх. остатки ----- 206.2.0 Наименование единицы измерения 105.3.0 * Остатки: Количество 105.4.0 * Остатки: Сумма б/н 105.5.0 * Остатки: НДС 105.6.0 * Остатки: НСП * - чтобы поля остатков в отчете были определены, в макет необходимо включить параметр "chkRemns"; ** - чтобы поля списания в отчете были определены, в макет необходимо включить параметр "chkRptEx"; Чтобы поля списания в отчете НЕ были определены, в макет необходимо включить параметр "chkNRptEx"; +--------------------------------+ | Движение группы товаров | +--------------------------------+ Params Фильтр ------ Соответствует Params Ведомости остатков (см. выше), КРОМЕ ДВУХ ПОЛЕЙ: 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Опции отчета drpt... 209.1.5 Ключ (Rid) товарной группы 209.3.5 Наименование товарной группы 208.1.8 Ключ (Rid) категории товаров 208.2.8 Наименование категории товаров 219.1.9 Ключ (Rid) бух. категории товаров 219.2.9 Наименование бух. категории товаров 102.1.6 Ключ (Rid) склада 102.4.6 Наименование склада 101.1.7 Ключ (Rid) группы складов 101.3.7 Наименование группы складов 100.1.4 Ключ (Rid) валюты, в кот. строить отчет 100.3.4 Код валюты, в кот. строить отчет Groups Список групп для группировки ------ 210.1.0 Ключ (Rid) товара 210.2.0 Наименование товара 206.2.0 Наименование единицы измерения Report Отчет ------ 210.1.8 Поле для связи с группой (Rid товара) В остальном соответствует отчету "Движение товара", вкл. переменные "chkRemns", "chkRptEx" и "chkNRptEx" +--------------------------------------------------------------+ | Ведомомсть остатков, количественная ведомость остатков, | | остатки по единицам измерения, остатки по приходам | +--------------------------------------------------------------+ Params Фильтр ------ 0.1.0 Дата 0.3.0 Опции отчета drpt... 209.1.5 Ключ (Rid) товарной группы 209.3.5 Наименование товарной группы 208.1.8 Ключ (Rid) категории товаров 208.2.8 Наименование категории товаров 219.1.9 Ключ (Rid) бух. категории товаров 219.2.9 Наименование бух. категории товаров 102.1.6 Ключ (Rid) склада 102.4.6 Наименование склада 101.1.7 Ключ (Rid) группы складов 101.3.7 Наименование группы складов 1.1.0 Поле кода типа группировки: 0 - не группировать 1 - по дереву товаров 2 - по складам 3 - по товарным категориям 4 - по бух. категориям 1.2.0 Наименование типа группировки 0.6.0 * Тип сравнения кол-ва (<, >, и т.п.): бит 1 <, бит 2 ==, бит 3 > 0.7.0 * С чем сравнивать кол-во: 0 - с нулем, 1 - с мин. запасом, 2 - с макс. запасом 100.1.4 ** Ключ (Rid) валюты, в кот. строить отчет 100.3.4 ** Код валюты, в кот. строить отчет Groups Список групп для группировки ------ 0.1.0 Идентификатор группы (для складов - идентификатор склада, для прочих объектов - ключ (Rid)) 0.2.0 Дополнительный параметр (для складов - Rid, для дерева товаров - Rid родителя, для прочих объектов не определен) 0.3.0 Наименование группы 0.9.0 Модифицированное наименование группы (при группировке по дереву) Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.9 Ключ (Rid) товара 210.3.9 Текстовая часть кода товара 210.4.9 Числовая часть кода товара 210.2.9 Наименование товара 206.1.9 Ключ (Rid) единицы измерения 206.2.9 Наименование единицы измерения 0.2.0 Количество 0.3.0 ** Сумма б/н 0.4.0 ** НДС 0.5.0 ** НСП 0.10.0 ** Цена 0.11.0 ** Сумма в/н 0.21.0 *** Мин. товарный запас 0.22.0 *** Макс. товарный запас 103.1.14 **** Ключ (Rid) накладной 103.10.14 **** Тип накладной 103.4.14 **** Номер накладной - символьная часть 103.5.14 **** Номер накладной - числовая часть 103.14.14 **** Стамп даты накладной 103.3.14 **** Дата накладной 102.1.15 **** Ключ (Rid) поставщика 102.4.15 **** Наименование поставщика 102.1.16 **** Ключ (Rid) получателя 102.4.16 **** Наименование получателя 105.1.14 **** Остатки по приходам * - только ведомость остатков, количественная ведомость остатков; сравнение с количеством производится, если в поле {0.3.0} Params установлен бит, соответствующий числу 0x20; ** - только ведомость остатков, остатки по приходам *** - только ведомость остатков, количественная ведомость остатков **** - только остатки по приходам +--------------------------------------------------------------------------+ | Спец. ведомомсть остатков, спец. количественная ведомость остатков, | +--------------------------------------------------------------------------+ Params Фильтр ------ Соответствует фильтрам ведомостей остатков, за исключением 0.6.0 Тип сравнения кол-ва (<, >, и т.п.) в учете и спецучете 0.7.0 Не определено Groups Список групп для группировки ------ Соответствует списку групп ведомости остатков Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.9 Ключ (Rid) товара 210.3.9 Текстовая часть кода товара 210.4.9 Числовая часть кода товара 210.2.9 Наименование товара 206.1.9 Ключ (Rid) единицы измерения 206.2.9 Наименование единицы измерения 0.2.0 * Количество - учет 0.3.0 * Сумма б/н - учет 0.4.0 * НДС - учет 0.5.0 * НСП - учет 0.10.0 * Цена - учет 0.11.0 * Сумма в/н - учет 0.6.0 * Количество - спецучет 0.7.0 * Сумма б/н - спецучет 0.8.0 * НДС - спецучет 0.9.0 * НСП - спецучет 0.12.0 * Цена - спецучет 0.13.0 * Сумма в/н - спецучет 0.40.0 * Количество - разница между учетом и спецучетом 0.41.0 * Сумма б/н - разница между учетом и спецучетом 0.42.0 * НДС - разница между учетом и спецучетом 0.43.0 * НСП - разница между учетом и спецучетом 0.44.0 * Сумма в/н - разница между учетом и спецучетом 0.21.0 * Мин. товарный запас 0.22.0 * Макс. товарный запас 0.2.0 ** Количество - учет 0.3.0 ** Количество - спецучет 0.10.0 ** Количество - разница между учетом и спецучетом * - только спец. ведомость остатков ** - только спец. количественная ведомость остатков +----------------------------+ | Оборотная ведомость | +----------------------------+ Params Фильтр ------ Соответствует Params Ведомости остатков (см. выше), КРОМЕ ДВУХ ПОЛЕЙ: 0.1.0 Дата с 0.2.0 Дата по Groups Список групп для группировки ------ Соответствует Groups ведомостей остатков (см. выше) Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.9 Ключ (Rid) товара 210.3.9 Текстовая часть кода товара 210.4.9 Числовая часть кода товара 210.2.9 Наименование товара 206.1.9 Ключ (Rid) единицы измерения 206.2.9 Наименование единицы измерения 0.2.N * Количество 0.3.N * Сумма б/н 0.4.N * НДС 0.5.N * НСП 0.10.N * Сумма в/н * - N принимает следующие значения: 0 - входящие остатки 1 - приходы 2 - расходы 3 - в/п 4 - излишки 5 - недостачи 6 - исходящие остатки +----------------------------------------+ | Расширенная оборотная ведомость | +----------------------------------------+ Аналог оборотной ведомости, с той разницей, что N принимает следующие значения: 0 - входящие остатки 1 - приходные накладные 2 - расходные накладные 3 - возвраты поставщику 4 - списания товара 5 - слич.ведомости - излишки 6 - слич.ведомости - недостачи 7 - акты переработки 8 - внутр.перемещения 9 - комплектации 10 - декомплектации 16 - исходящие остатки +--------------------------------------------------------------+ | Товарный отчет, Товарный отчет с категорией тары * | +--------------------------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 102.1.1 Ключ (Rid) склада 102.4.1 Наименование склада 100.1.3 Ключ (Rid) валюты, в кот. строится отчет 100.3.3 Код валюты, в кот. строится отчет 103.11.0 Опции drpt... 208.1.2 Ключ (Rid) категории тары 208.2.2 Наименование категории тары Groups Список групп для группировки ------ 0.1.0 Идентификатор группы 0.10.0 Тип группы: NULL - Подразделение/Все склады, 1 - Приход, 2 - Расход 102.1.4 Ключ (Rid) склада 102.4.4 Наименование склада 105.4.0 Входящие остатки: Сумма б/н 105.5.0 Входящие остатки: НДС 105.6.0 Входящие остатки: НСП 105.4.2 ** Тара - входящие остатки по таре: Сумма б/н 105.5.2 ** Тара - входящие остатки по таре: НДС 105.6.2 ** Тара - входящие остатки по таре: НСП Report Отчет ------ 0.1.0 Идентификатор группы 0.10.0 Тип записи тотала по группам (флаг записи dsrfAggrTotal): 1 - остатки на начало 2 - остатки на конец 3 - итого приход 4 - итого расход 103.1.7 Ключ (Rid) накладной 103.14.7 Стамп даты накладной 103.3.7 Дата накладной 103.4.7 Текстовая часть номера накладной 103.5.7 Цифровая часть номера накладной 103.10.7 Тип документа DocRec::Type 102.1.8 Ключ (Rid) поставщика 102.4.8 Наименование поставщика 102.1.9 Ключ (Rid) получателя 102.4.9 Наименование получателя 105.4.0 Закупочная сумма б/н 105.5.0 Закупочный НДС 105.6.0 Закупочный НСП 105.8.0 Закупочная сумма в/н 105.4.1 Отпускная сумма б/н 105.5.1 Отпускной НДС 105.6.1 Отпускной НСП 105.8.1 Отпускная сумма в/н 105.4.2 ** Тара: закупочная сумма б/н 105.5.2 ** Тара: закупочный НДС 105.6.2 ** Тара: закупочный НСП 105.8.2 ** Тара: закупочная сумма в/н 105.4.3 ** Тара: отпускная сумма б/н 105.5.3 ** Тара: отпускной НДС 105.6.3 ** Тара: отпускной НСП 105.8.3 ** Тара: отпускная сумма б/н 105.4.4 Наценка б/н 105.8.4 Наценка в/н 105.4.5 ** Тара: наценка б/н 105.8.5 ** Тара: наценка в/н * - для печати отчета без категории тары в макете НЕ ДОЛЖНА быть определена переменная "chkRptEx"; для печати отчета c категорией тары в макете ДОЛЖНА быть определена переменная "chkRptEx"; ** - поля определены только для отчета с категорией тары +----------------------------------------------------+ | Анализ поставщиков, анализ получателей | +----------------------------------------------------+ Params Фильтр ------ Соответствует Params Ведомости остатков (см. выше), КРОМЕ ДВУХ ПОЛЕЙ: 0.1.0 Дата с 0.2.0 Дата по Groups Список групп для группировки ------ 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения Report Отчет ------ 102.1 Ключ (Rid) корреспондента 102.4 Наименование корреспондента 102.2 Тип корреспондента: 0 - склад; 1 - юр. лицо; 2 - физ. лицо; 3 - спец. корр 210.1.1 Ключ (Rid) товара (для связи с группой) 103.1.3 * Ключ (Rid) накладной 103.14.3 * Стамп даты накладной 103.3.3 * Дата накладной 103.10.3 * Тип накладной 105.1.3 * Ключ (Rid) спецификации внутри накладной 105.3.0 Количество 105.4.0 Закупочная сумма б/н 105.5.0 Закупочный НДС 105.6.0 Закупочный НСП 105.7.0 Закупочная цена 105.8.0 Закупочная сумма в/н 105.4.4 ** Отпускная сумма б/н 105.5.4 ** Отпускной НДС 105.6.4 ** Отпускной НСП 105.7.4 ** Отпускная цена 105.8.4 ** Отпускная сумма в/н * - определены, если отчет построен без группировки по корреспондентам ** - только Анализ получателей +--------------------------------------------------------------------------+ | Анализ корреспондентов, рассчеты с поставщиками/получателями | +--------------------------------------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 * Маска типов документов (1 << DocRec::Type, объединено по битовому OR) 0.4.0 Опции drpt... 102.1.12 Ключ (Rid) корреспондента 102.4.12 Наименование корреспондента 101.1.13 * Ключ (Rid) группы корреспондентов 101.3.13 * Наименование группы корреспондентов 101.1.23 ** Ключ (Rid) группы корреспондентов 101.3.23 ** Наименование группы корреспондентов 102.1.14 * Ключ (Rid) взаимодействующего корреспондента 102.4.14 * Наименование взаимодействующего корреспондента 101.1.15 * Ключ (Rid) взаимодействующей группы корреспондентов 101.3.15 * Наименование взаимодействующей группы корреспондентов 209.1.5 Ключ (Rid) товарной группы 209.3.5 Наименование товарной группы 208.1.8 Ключ (Rid) категории товаров 208.2.8 Наименование категории товаров 219.1.9 Ключ (Rid) бух. категории товаров 219.2.9 Наименование бух. категории товаров 100.1.4 Ключ (Rid) валюты, в кот. строить отчет 100.3.4 Код валюты, в кот. строить отчет 1.1.0 * Тип группировки (7 - по корреспондентам, 0 - не группировать) Groups Список групп для группировки ------ 102.1.0 Ключ (Rid) корреспондента 102.4.0 Наименование корреспондента Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.9 Ключ (Rid) товара 210.3.9 Текстовая часть кода товара 210.4.9 Числовая часть кода товара 210.2.9 Наименование товара 206.1.9 Ключ (Rid) единицы измерения 206.2.9 Наименование единицы измерения 209.1.6 Ключ (Rid) товарной группы 209.3.6 Наименование товарной группы 208.1.7 Ключ (Rid) категории 208.2.7 Наименование категории 219.1.8 Ключ (Rid) бух. категории 219.2.8 Наименование бух. категории 0.2.0 Приход - кол-во 0.2.1 Расход - кол-во 0.6.0 Приход - цена 0.3.0 Приход - сумма б/н 0.4.0 Приход - НДС 0.5.0 Приход - НСП 0.7.0 Приход - сумма в/н 0.6.1 Расход - закупочная цена 0.3.1 Расход - закупочная сумма б/н 0.4.1 Расход - закупочный НДС 0.5.1 Расход - закупочный НСП 0.7.1 Расход - закупочная сумма в/н 0.6.2 Расход - Отпускная цена 0.3.2 Расход - Отпускная сумма б/н 0.4.2 Расход - отпускной НДС 0.5.2 Расход - отпускной НСП 0.7.2 Расход - Отпускная сумма в/н * - только Анализ корреспондентов ** - только Рассчеты с поставщиками/получателями +----------------------------------------------------+ | Журнал проводок | +----------------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска типов накладных (1 << DocRec::Type, объединено по битовому OR) 0.6.0 Маска типов платежных документов (1 << PDocRec::Type, объединено по битовому OR) 0.4.0 Маска параметров drpt... 0.5.0 Тип группировки gsfg... 100.1.1 Ключ (Rid) валюты, в кот рассчитывать сумму 100.3.1 Код валюты, в кот рассчитывать сумму 102.1.2 Ключ (Rid) корреспондента-поставщика для накладных 102.4.2 Наименование корреспондента-поставщика для накладных 102.1.3 Ключ (Rid) корреспондента-получателя для накладных 102.4.3 Наименование корреспондента-получателя для накладных 102.1.7 Ключ (Rid) корреспондента-получателя для платежгых документов 102.4.7 Наименование корреспондента-получателя для платежгых документов 107.1.4 Ключ (Rid) хоз. операции 107.2.4 Наименование хоз. операции Groups Список групп для группировки ------ 106.1.0 Ключ (Rid) бух. счета 106.3.0 Код бух. счета Report Отчет ------ 113.255.7 0 - накладная, иначе - платежный документ 113.1.7 Ключ (Rid) документа 113.3.7 Дата документа 113.4.7 Строковая часть номера документа 113.5.7 Числовая часть номера документа 113.11.7 Битовая маска опций документа DocRec::Options/PDocRec::Options 113.10.7 Тип документа DocRec::Type/PDocRec::Type 102.1.8 Ключ (Rid) корреспондента-поставщика 102.4.8 Наименование корреспондента-поставщика 102.1.9 Ключ (Rid) корреспондента-получателя 102.4.9 Наименование корреспондента-получателя 106.1.1 Ключ (Rid) счета-дебет 106.3.1 Код счета-дебет 106.1.2 Ключ (Rid) счета-кредит 106.3.2 Код счета-кредит 0.1.4 Сумма 107.1.14 Ключ (Rid) операции 107.2.14 Наименование операции 219.1.3 Ключ (Rid) бух. категории 219.2.3 Наименование бух. категории 108.4.0 Описание операции +----------------------------------------------------+ | Баланс счетов | +----------------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.4.0 Маска параметров drpt... 100.1.1 Ключ (Rid) валюты, в кот рассчитывать сумму 100.3.1 Код валюты, в кот рассчитывать сумму 106.1.2 Ключ (Rid) бух. счета 106.3.2 Код бух. счета Groups Список групп для группировки ------ 106.1.0 Ключ (Rid) бух. счета 106.3.0 Код бух. счета 0.1.0 Начальное сальдо по счету Report Отчет ------ 113.255.7 0 - накладная, иначе - платежный документ 113.1.7 Ключ (Rid) документа 113.3.7 Дата документа 113.4.7 Строковая часть номера документа 113.5.7 Числовая часть номера документа 113.11.7 Битовая маска опций документа DocRec::Options/PDocRec::Options 113.10.7 Тип документа DocRec::Type/PDocRec::Type 102.1.8 Ключ (Rid) корреспондента-поставщика 102.4.8 Наименование корреспондента-поставщика 102.1.9 Ключ (Rid) корреспондента-получателя 102.4.9 Наименование корреспондента-получателя 106.1.1 Ключ (Rid) счета-дебет 106.3.1 Код счета-дебет 106.1.2 Ключ (Rid) счета-кредит 106.3.2 Код счета-кредит 0.1.4 Сумма 107.1.14 Ключ (Rid) операции 107.2.14 Наименование операции 219.1.3 Ключ (Rid) бух. категории 219.2.3 Наименование бух. категории 108.4.0 Описание операции 0.101.0 Ссылка на группу (поле 106.1.0 в Groups) +----------------------------+ | Список счетов-фактур | +----------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска типов документов (1 << DocRec::Type, объединено по битовому OR) 0.4.0 Маска параметров drpt... 100.1.1 Ключ (Rid) валюты, в кот рассчитывать сумму 100.3.1 Код валюты, в кот рассчитывать сумму 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.1.3 Ключ (Rid) корреспондента-получателя 102.4.3 Наименование корреспондента-получателя Report Список накладных ------ 110.1.9 Ключ (Rid) счета-фактуры 110.3.9 Дата счета-фактуры 110.4.9 Строковая часть номера счета-фактуры 110.5.9 Числовая часть номера счета-фактуры 103.1.1 Ключ (Rid) накладной 103.3.1 Дата накладной 103.4.1 Строковая часть номера накладной 103.5.1 Числовая часть номера накладной 103.11.1 Битовая маска опций накладной DocRec::Options 103.10.1 Тип накладной DocRec::Type 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.2.2 Тип корреспондента: 0 - склад; 1 - юр. лицо; 2 - физ. лицо; 3 - спец. корр; <0 - не найден 102.6.2 Номер паспорта (только физ.лицо) 102.7.2 Дата выдачи паспорта (только физ.лицо) 102.8.2 Место выдачи паспорта (только физ.лицо) 102.9.2 ИНН (только юр.лицо) 102.10.2 Юридический адрес (только юр.лицо) 102.11.2 Почтовый Адрес (только юр.лицо) 102.12.2 Телефоны (только юр.лицо) 0.1.0 * Закупочная сумма б/н 0.2.0 * Закупочный НДС 0.3.0 * Закупочный НСП 0.4.0 * Закупочная сумма в/н 0.1.1 * Отпускная сумма б/н 0.2.1 * Отпускной НДС 0.3.1 * Отпускной НСП 0.4.1 * Отпускная сумма в/н * - чтобы поля, омеченные звездочкой, были определены в отчете, в макет необходимо включить параметр "chkSums" +----------------------------+ | Свойства счета-фактуры | +----------------------------+ Header Заголовок счета-фактуры ------ 110.1.9 Ключ (Rid) счета-фактуры 110.3.9 Дата счета-фактуры 110.4.9 Строковая часть номера счета-фактуры 110.5.9 Числовая часть номера счета-фактуры 110.15.9 Примечание счета-фактуры 110.20.9 Список платежно-расчетных документов 103.1.1 Ключ (Rid) накладной 103.3.1 Дата накладной 103.4.1 Строковая часть номера накладной 103.5.1 Числовая часть номера накладной 103.11.1 Битовая маска опций накладной DocRec::Options 103.10.1 Тип накладной DocRec::Type 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 102.2.2 Тип корреспондента: 0 - склад; 1 - юр. лицо; 2 - физ. лицо; 3 - спец. корр; <0 - не найден 100.1.3 Ключ (Rid) валюты накладной 100.3.3 Код валюты накладной 100.6.3 Наименование целой части валюты 100.7.3 Наименование дробной части валюты Specs Список товаров ------ 210.1.3 Ключ (Rid) товара 210.3.3 Текстовая часть кода товара 210.4.3 Числовая часть кода товара 210.2.3 Наименование товара 206.1.3 Ключ (Rid) единицы измерения 206.2.3 Наименование единицы измерения 105.3.0 Количество товара 105.4.0 Закупочная сумма б/н 105.5.0 Закупочный НДС 105.6.0 Закупочный НСП 105.7.0 Закупочная цена 105.8.0 Закупочная сумма в/н 212.2.0 Закупочная ставка НДС 213.2.0 Закупочная ставка НСП 105.20.0 Страна присхождения 105.21.0 Номер таможенной декларации 105.4.1 Отпускная сумма б/н (только расходная счет-фактура) 105.5.1 Отпускной НДС (только расходная счет-фактура) 105.6.1 Отпускной НСП (только расходная счет-фактура) 105.7.1 Отпускная цена (только расходная счет-фактура) 105.8.1 Отпускная сумма в/н (только расходная счет-фактура) 212.2.1 Отпускная ставка НДС (только расходная счет-фактура) 213.2.1 Отпускная ставка НСП (только расходная счет-фактура) RptPDocs Список платежных документов, связанных со счетом-фактурой * -------- См. описание аналогичного отчета для накладной * - чтобы данные для отчета RptPDocs были загружены перед печатью, в макет необходимо включить параметр "chkRptPDocs"; p->pDescr[0] = "Header"; p->pDescr[1] = "Specs"; +-----------------------------------+ | Список платежных документов | +-----------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска типов документов (1 << PDocRec::Type, объединено по битовому OR) 0.4.0 Маска параметров drpt... 100.1.1 Ключ (Rid) валюты, в кот рассчитывать сумму 100.3.1 Код валюты, в кот рассчитывать сумму 102.1.2 Ключ (Rid) корреспондента 102.4.2 Наименование корреспондента Report Список платежных документов ------ 112.1.9 Ключ (Rid) платежного документа 112.3.9 Дата платежного документа 112.4.9 Строковая часть номера платежного документа 112.5.9 Числовая часть номера платежного документа 112.10.9 Тип платежного документа PDocRec::Type 112.11.9 Битовая маска опций платежного документа PDocRec::Options 103.1.1 Ключ (Rid) связанной накладной 103.4.1 Строковая часть номера связанной накладной 103.5.1 Числовая часть номера связанной накладной 103.11.1 Битовая маска опций связанной накладной DocRec::Options 103.10.1 Тип связанной накладной DocRec::Type 103.14.1 Стамп даты связанной накладной 103.3.1 Дата связанной накладной 107.1.3 Ключ (Rid) бух. операции 107.2.3 Наименование бух. операции 100.1.8 Ключ (Rid) валюты платежного документа 100.3.8 Код валюты платежного документа 102.1.2 Ключ (Rid) корреспондента 102.4.2 Наименование корреспондента 110.1.4 Ключ (Rid) связанной счет-фактуры 110.4.4 Строковая часть номера связанной счет-фактуры 110.5.4 Числовая часть номера связанной счет-фактуры 110.3.4 Дата связанной счет-фактуры 0.1.0 Сумма б/н платежного документа 0.2.0 НДС платежного документа 0.3.0 НСП платежного документа 0.4.0 Сумма в/н платежного документа 0.1.1 Сумма б/н связанной накладной 0.2.1 НДС связанной накладной 0.3.1 НСП связанной накладной 0.4.1 Сумма в/н связанной накладной +-----------------------------------+ | Платежный документ | +-----------------------------------+ Header Заголовок платежного документа ------ 112.1.9 Ключ (Rid) платежного документа 112.3.9 Дата платежного документа 112.4.9 Строковая часть номера платежного документа 112.5.9 Числовая часть номера платежного документа 112.10.9 Тип платежного документа PDocRec::Type 112.11.9 Битовая маска опций платежного документа PDocRec::Options 112.15.9 Примечание платежного документа 112.12.9 Курс в базовой валюте (секция "Курс: столько-то RBL за столько-то USD") 112.13.9 Курс в валюте платежного документа (секция "Курс: столько-то RBL за столько-то USD") 112.21.9 Не ноль, если можно изменить значение флага "Оплатить полностью" 112.16.9 Сумма платежного документа в базовой валюте (только для связанных с накладной платежных документов) 0.102.0 Сумма платежного документа в валюте платежного документа 103.1.1 Ключ (Rid) связанной накладной 103.4.1 Строковая часть номера связанной накладной 103.5.1 Числовая часть номера связанной накладной 103.11.1 Битовая маска опций связанной накладной DocRec::Options 103.10.1 Тип связанной накладной DocRec::Type 103.3.1 Дата связанной накладной 0.1.0 Сумма в/н связанной накладной в базовой валюте (только для связанных с накладной платежных документов) 0.101.0 Сумма в/н связанной накладной в валюте платежного документа (только для связанных с накладной платежных документов) 107.1.3 Ключ (Rid) бух. операции 107.2.3 Наименование бух. операции 100.1.8 Ключ (Rid) валюты платежного документа 100.3.8 Код валюты платежного документа 102.1.2 Ключ (Rid) корреспондента 102.4.2 Наименование корреспондента 110.1.4 Ключ (Rid) связанной счет-фактуры 110.4.4 Строковая часть номера связанной счет-фактуры 110.5.4 Числовая часть номера связанной счет-фактуры 110.3.4 Дата связанной счет-фактуры Specs Суммы с разбивкой по ставке НДС ----- 212.2.0 Ставка НДС 0.1.0 Сумма б/н в базовой валюте 0.2.0 НДС в базовой валюте 0.3.0 НСП в базовой валюте 0.101.0 Сумма б/н в валюте платежного документа 0.102.0 НДС в валюте платежного документа 0.103.0 НСП в валюте платежного документа 0.104.0 Сумма в/н в валюте платежного документа RptAccs Проводки по платежному документу * ------- 106.1.1 Ключ (Rid) счета-дебет 106.3.1 Код счета-дебет 106.1.2 Ключ (Rid) счета-кредит 106.3.2 Код счета-кредит 0.1.4 Сумма 219.2.3 Бух. категория (всегда не определена для платежного документа) 108.4.0 Описание операции * - чтобы данные для отчета RptAccs были загружены перед печатью, в макет необходимо включить параметр "chkRptAccs"; +--------------------------------------------+ | Книга покупок, книга продаж | +--------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска параметров drpt... 102.1.1 Ключ (Rid) корреспондента 102.4.1 Наименование корреспондента Report Отчет ------ 0.7.0 Битовая маска. Установленный второй бит (значение & 2) говорит о начале (первой строке) секции об оплате 110.1.1 Ключ счета-фактуры 110.3.1 Дата счета-фактуры 110.10.1 Тип счета-фактуры 110.4.1 Текстовая часть номера счета-фактуры * 110.5.1 Числовая часть номера счета-фактуры * 0.10.0 Страны происхождения, номера таможенных деклараций (только в книге покупок) * 112.1.2 Ключ платежного документа 112.3.2 Дата платежного документа 103.3.4 Дата связанной накладной * 102.1.3 Ключ корреспондента * 102.4.3 Наименование корреспондента * 212.2.0 Ставка НДС 0.1.0 Сумма б/н 0.2.0 Сумма НДС 0.3.0 Сумма НСП 0.4.0 Сумма в/н * - поля определены, только если установлен второй бит поля {0.7.0} +--------------------------------------------+ | Баланс по корреспондентам | +--------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска параметров drpt... 102.1.1 Ключ (Rid) корреспондента 102.4.1 Наименование корреспондента 101.1.2 Ключ (Rid) группы корреспондентов 101.3.2 Наименование группы корреспондентов 100.1.3 Ключ (Rid) валюты, в которой строится отчет 100.3.3 Код валюты Groups Список корреспондентов для группировки ------ 102.1.0 Ключ (Rid) корреспондента 102.4.0 Наименование корреспондента 105.4.0 Начальное сальдо по корреспонденту: сумма б/н 105.5.0 Начальное сальдо по корреспонденту: НДС 105.6.0 Начальное сальдо по корреспонденту: НСП 105.8.0 Начальное сальдо по корреспонденту: сумма в/н Report Отчет ------ 102.1.0 Ключ группы (Rid корреспондента) 113.255.7 0 - накладная, иначе - платежный документ 113.1.7 Ключ (Rid) документа 113.3.7 Дата документа 113.4.7 Строковая часть номера документа 113.5.7 Числовая часть номера документа 113.10.7 Тип документа DocRec::Type/PDocRec::Type 110.1.1 Ключ (Rid) счета-фактуры 110.10.1 Тип счета-фактуры DocRec::Type 110.3.1 Дата счета-фактуры 110.4.1 Строковая часть номера счета-фактуры 110.5.1 Числовая часть номера счета-фактуры 105.4.0 Сумма б/н 105.5.0 НДС 105.6.0 НСП 105.8.0 Сумма в/н +--------------------------------------------+ | Расширенный список накладных | +--------------------------------------------+ Params Фильтр - соответствует полям Params списка накладных ------ Docs Список заголовков накладных - соответствует полям Report списка накладных ---- за исключением 0.1.0, 0.2.0, 0.3.0 - cуммы б/н, НДС и НСП оплат по документу 0.4.0, 0.1.1, 0.2.1, 0.3.1, 0.4.1 - отсутствуют в отчете Specs Список спецификаций накладных ----- 0.1.0 Тип записи 105.1.1 Ключ (Rid) записи 103.1.1 Ключ (Rid) накладной 210.1.1 Ключ (Rid) товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 210.2.1 Наименование товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения 206.1.3 Ключ (Rid) ,базовой единицы измерения 206.2.3 Наименование базовой единицы измерения 105.3.2 Кол-во в базовой ед. измерения 105.3.0 Кол-во в ед. измерения накладной 105.4.4 Закупочная сумма б/н 105.5.4 Закупочная сумма НДС 105.6.4 Закупочная сумма НСП 212.2.4 Закупочная ставка НДС 213.2.4 Закупочная ставка НСП 105.4.5 Отпускная сумма б/н 105.5.5 Отпускная сумма НДС 105.6.5 Отпускная сумма НСП 212.2.5 Отпускная ставка НДС 213.2.5 Отпускная ставка НСП +---------------------------------------------+ | Акт реализации, Спец. акт реализации | +---------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Опции 209.1.2 Ключ (Rid) товарной группы 209.3.2 Наименование товарной группы 102.1.0 Ключ (Rid) склада 102.4.0 Наименование склада 101.1.1 Ключ (Rid) группы складов 101.3.1 Наименование группы складов 214.1.5 Ключ (Rid) группы станций 214.3.5 Наименование группы станций 216.1.4 Ключ (Rid) категории расхода 216.2.4 Наименование категории расхода 100.1.6 Ключ (Rid) валюты, в кот. строить отчет 100.3.6 Код валюты, в кот. строить отчет 1.1.0 Поле кода типа группировки: 0 - не группировать 1 - по дереву товаров 2 - по складам 3 - по категориям расхода 4 - по местам реализации 1.2.0 Наименование типа группировки Groups Список групп для группировки ------ 0.1.0 Идентификатор группы (для складов - идентификатор склада, для прочих объектов - ключ (Rid)) 0.2.0 Дополнительный параметр (для складов - Rid, для дерева товаров - Rid родителя, для прочих объектов не определен) 0.3.0 Наименование группы Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.0 Ключ (Rid) товара 209.1.0 Ключ (Rid) товарной группы 210.2.0 Наименование товара 210.3.0 Текстовая часть кода товара 210.4.0 Числовая часть кода товара 210.5.0 Тип товара 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения /- 0.11.0 Количество 0.20.0 Закуп. сумма без налогов 0.21.0 Закуп. НДС 0.22.0 Закуп. НСП 0.30.0 Закуп. сумма с налогами 0.20.1 Отп. сумма без налогов 0.21.1 Отп. НДС 0.22.1 Отп. НСП 0.30.1 Отп. сумма с налогами 0.100.0 Наценка б/н 0.101.0 Наценка б/н (%) 0.100.10 Наценка в/н 0.101.10 Наценка в/н (%) -/ Для спец. отчета Поля /--/ с Object = 0 - данные учета Поля /--/ с Object = 2 - данные спец. учета Поля /--/ с Object = 3 - разница +----------------------------------------------+ | Продажи по дням | +----------------------------------------------+ Params Фильтр ------ Соответствует Params Акта реализации (см. выше), но НЕТ ГРУППИРОВКИ и 0.4.0 Шаг Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 0.91.0 Дата с (начало периода) 0.92.0 Дата по (окончание периода) 0.11.0 Количество 0.20.0 Закуп. сумма без налогов 0.21.0 Закуп. НДС 0.22.0 Закуп. НСП 0.30.0 Закуп. сумма с налогами 0.20.1 Отп. сумма без налогов 0.21.1 Отп. НДС 0.22.1 Отп. НСП 0.30.1 Отп. сумма с налогами 0.100.0 Наценка б/н 0.101.0 Наценка б/н (%) 0.100.10 Наценка в/н 0.101.10 Наценка в/н (%) +----------------------------------------------+ | Список комплектов | +----------------------------------------------+ Params Фильтр ------ 0,1,0 Опции (тип учета, вкл. поддерево) 0.9.0 Дата (для расчета стоимости) 201.1.0 Ключ (Rid) группы комплектов 201.3.0 Наименование группы комплектов 102.1.1 Ключ (Rid) склада 102.4.1 Наименование склада 100.1.2 Ключ (Rid) валюты, в кот. строить отчет 100.3.2 Код валюты, в кот. строить отчет Report Отчет ------ 0.1.0 Тип строки 202.1.0 Ключ (Rid) версии комплекта 204.8.0 Ключ (Rid) компонента 204.9.0 Наименование компонента 204.3.0 Текстовая часть кода объекта 204.4.0 Числовая часть кода объекта 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 203.2.0 Тип компонента 203.4.0 Брутто 203.5.0 % 1 203.15.0 Нетто 203.6.0 % 2 203.16.0 Выход 202.7.0 Технология +-------------------+ | Кальк. карта | +-------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Опции 0.4.0 // товар, комплект или их группа 102.1.0 Ключ (Rid) склада 102.2.0 Наименование склада 214.1.1 Ключ (Rid) группы станций 214.3.1 Наименование группы станций 100.1.6 Ключ (Rid) валюты, в кот. строить отчет 100.3.6 Код валюты, в кот. строить отчет Report Отчет ------ 0.1.0 Тип строки 204.8.0 Ключ (Rid) компонента 204.9.0 Наименование компонента 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 203.2.0 Тип компонента 203.4.0 ... 5 Брутто 0.10.0 ... 5 Сумма б/н 0.11.0 ... 5 Цена 0.15.0 ... 5 НДС 0.16.0 ... 5 НСП 0.17.0 ... 5 Сумма в/н тип строки 0 - заголовок карты 204.9.0 наименование объекта (товара или комплекта) 206.2.0 код объекта 0.10.х дата калькуляции тип строки 2 - себестоимость за норму закладки 203.4.х норма закладки тип строки 3 - себестоимость за 1 норму закладки тип строки 4 - отпусткная стоимость 204.8.0 отп. ставка НДС (%) 206.1.0 отп. ставка НСП (%) тип строки 6 - наценка тип строки 7 - наценка (%) 203.4.х наценка по суммам без налогов 0.10.х отп. суммы с налогами (для расчета наценки на клиенте) 0.15.х закуп. суммы с налогами (для расчета наценки на клиенте) +----------------------------------------------+ | Документ расхода | +----------------------------------------------+ Header Заголовок ------ 230.1.0 Ключ (Rid) документа 230.2.0 Текстовая часть номера документа 230.3.0 Числовая часть номера документа 230.4.0 Дата документа 230.5.0 Параметры документа 214.1.0 Ключ (Rid) группы станций 214.3.0 Наименование группы станций 216.1.0 Ключ (Rid) категории расхода 216.2.0 Наименование категории расхода 230.7.0 Примечание История комплекта 0,1,7 Дата создания 0,2,7 Время создания в секундах 0,3,7 Дата последнего изменения 0,4,7 Время последнего изменения в секундах 0,5,7 Создатель 0,6,7 Исправитель Specs Спецификации ------ 231.1.0 Ключ (Rid) спецификации 231.2.0 Кол-во 231.3.0 Сумма (б/н) 231.4.0 Опции спецификации 231.5.10 Сумма НДС 231.6.10 Сумма НСП 231.30.0 Сумма (в/н) 230.1.0 Ключ (Rid) документа расхода 210.1.0 Ключ (Rid) товара 210.2.0 Наименование товара 210.3.0 Текстовая часть кода товара 210.4.0 Числовая часть кода товара 210.5.0 Тип товара 210.7.0 Отпускная цена товара 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 200.1.0 Ключ (Rid) комплекта 200.2.0 Наименование комплекта 200.4.0 Параметры комплекта 102.1.5 Ключ (Rid) склада 102.4.5 Наименование склада 103.1.0 Ключ (Rid) накладной комплектации 103.4.0 Строковая часть номера накладной комплектации 103.5.0 Числовая часть номера накладной комплектации 103.10.0 Тип накладной 103.11.0 Опции накладной 103.1.1 Ключ (Rid) расходной накладной или платежки 103.4.1 Строковая часть номера расходной накладной или платежки 103.5.1 Числовая часть номера расходной накладной или платежки 103.10.1 Тип накладной или платежки 103.11.1 Опции накладной или платежки +----------------------------------------------+ | Предполагаемый расход | +----------------------------------------------+ Params Фильтр ------ 0.1.0 Дата расхода 0.2.0 Параметры (набор флажков): 1 - разделять по складам, 4 - использовать замены 102.1.0 Ключ (Rid) склада 102.4.0 Наименование склада ExpDocs Документы расхода ------ 230.1.0 Ключ (Rid) документа расхода 230.5.0 Параметры документа Report Отчет ------ 102.1.0 Ключ (Rid) склада 102.4.0 Наименование склада 210.1.0 Ключ (Rid) товара 209.1.0 Ключ (Rid) товарной группы 210.2.0 Наименование товара 210.3.0 Текстовая часть кода товара 210.4.0 Числовая часть кода товара 210.5.0 Тип товара 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 0.11.0 Кол-во 0.12.0 Остаток до расхода 0.13.0 Остаток после расхода 0.15.0 Необходимое кол-во +---------------------------------------------+ | Предполагаемая стоимость товара | +---------------------------------------------+ Params Фильтр ------ 0.1.0 Дата 0.3.0 Опции 209.1.5 Ключ (Rid) товарной группы 209.3.5 Наименование товарной группы 102.1.6 Ключ (Rid) склада 102.4.6 Наименование склада 208.1.8 Ключ (Rid) категории товаров 208.2.8 Наименование категории товаров 219.1.9 Ключ (Rid) бух. категории товаров 219.2.9 Наименование бух. категории товаров 214.1.21 Ключ (Rid) группы станций 214.3.21 Наименование группы станций 100.1.4 Ключ (Rid) валюты, в кот. строить отчет 100.3.4 Код валюты, в кот. строить отчет 1.1.0 Поле кода типа группировки: 0 - не группировать 1 - по дереву товаров 2 - по складам 3 - по категориям расхода 4 - по местам реализации 1.2.0 Наименование типа группировки Groups Список групп для группировки ------ 0.1.0 Идентификатор группы (для складов - идентификатор склада, для прочих объектов - ключ (Rid)) 0.2.0 Дополнительный параметр (для складов - Rid, для дерева товаров - Rid родителя, для прочих объектов не определен) 0.3.0 Наименование группы Report Отчет ------ 0.1.0 Поле соответствия группе (указывает на {0.1.0} из Groups) 210.1.9 Ключ (Rid) товара 210.2.9 Наименование товара 210.3.9 Текстовая часть кода товара 210.4.9 Числовая часть кода товара 206.1.9 Ключ (Rid) единицы измерения 206.2.9 Наименование единицы измерения 102.1.12 Ключ (Rid) склада 102.4.12 Наименование склада 0.20.1 Отп. сумма без налогов 0.21.1 Отп. НДС(%) 0.22.1 Отп. НСП(%) 0.30.1 Отп. сумма с налогами 0.20.0 Закуп. сумма без налогов 0.21.0 Закуп. НДС(%) 0.22.0 Закуп. НСП(%) 0.23.0 Закуп. НДС 0.24.0 Закуп. НСП 0.30.0 Закуп. сумма с налогами 0.100.0 Наценка б/н 0.101.0 Наценка б/н (%) 0.100.10 Наценка в/н 0.101.10 Наценка в/н (%) +---------------------------------------------+ | Комплект (из словаря) | +---------------------------------------------+ Base Основная информация ------ 201.1.0 Ключ (Rid) группы комплектов 201.3.0 Наименование группы комплектов 200.2.0 Наименование комплекта 200.3.0 Код комплекта 200.4.0 Опции комплекта 206.1.0 Ключ (Rid) единицы измерения норма закладки 206.2.0 Наименование единицы измерения норма закладки 102.1.0 Ключ (Rid) склада 102.4.0 Наименование склада 200.20.0 Стоимость б/н 200.21.0 НДС 200.22.0 НСП 200.30.0 Стоимость в/н 200.40.0 Предполагаемая отпускная цена 200.41.0 Наценка или FoodCost (%) История комплекта 0,1,7 Дата создания 0,2,7 Время создания в секундах 0,3,7 Дата последнего изменения 0,4,7 Время последнего изменения в секундах 0,5,7 Создатель 0,6,7 Исправитель Header Заголовок версии комплекта ------ 202.20.0 Дата начала действия версии комплекта 202.3.0 Дата окончания действия версии комплекта 202.4.0 Норма закладки комплекта 202.7.0 Технология приготовления Specs Компонеты ----- 204.8.0 Ключ (Rid) компонента 204.9.0 Наименование компонента 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 206.1.1 Ключ (Rid) баз. единицы измерения 206.2.1 Наименование баз. единицы измерения 203.1.0 Ключ (Rid) записи 203.2.0 Тип компонента 203.3.0 Ключ (Rid) компонента 203.4.1 Брутто 203.5.1 % 1 203.6.1 % 2 203.7.1 % цены 220.1.0 Ключ (Rid) группы замен 220.2.0 Наименование группы замен 203.15.1 Нетто 203.16.1 Выход 203.20.2 Стоимость б/н 203.21.2 НДС 203.22.2 НСП 203.30.2 Стоимость в/н +----------------------------------------------+ | Вхождение товара в комплекты | +----------------------------------------------+ Params Фильтр ------ 0.1.0 Ключ (Rid) компонета 0.2.0 Параметры (тип компонента или тип учета) 0.3.0 Дата с (для версий комплекта) 0.4.0 Дата по (для версий комплекта) Report Отчет ------ 200.1.0 Ключ (Rid) комплекта 200.2.0 Наименование комплекта 200.3.0 Код комплекта 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 202.2.0 Дата начала действия версии комплекта 202.4.0 Норма закладки комплекта 203.1.1 Ключ (Rid) записи 203.4.1 Брутто 206.1.1 Ключ (Rid) единицы измерения брутто 206.2.1 Наименование единицы измерения брутто 220.1.1 Ключ (Rid) группы замен 220.2.1 Наименование группы замен +----------------------------------------------+ | Вхождение товара в предп. расход | +----------------------------------------------+ Params Фильтр ------ 0.1.0 Ключ (Rid) товара 0.2.0 Параметры документов расхода (тип учета) 0.3.0 Дата расхода Report Отчет ------ 210.1.0 Ключ (Rid) товара 210.2.0 Наименование товара 210.3.0 Текстовая часть кода товара 210.4.0 Числовая часть кода товара 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 200.1.1 Ключ (Rid) комплекта 200.2.1 Наименование комплекта 200.3.1 Код комплекта 206.1.1 Ключ (Rid) единицы измерения нориы 206.2.1 Наименование единицы измерения нормы 202.2.1 Дата начала действия версии комплекта 202.4.1 Норма закладки комплекта 231.2.0 Кол-во 210.99.0 Расход 102.1.2 Ключ (Rid) склада 102.4.2 Наименование склада +----------------------------------------------+ | Прейскурант | +----------------------------------------------+ Header Заголовок ------ 240.1.0 Ключ (Rid) документа 240.2.0 Текстовая часть номера документа 240.3.0 Числовая часть номера документа 240.4.0 Тип документа (0-приход,1-расход) 240.5.0 Дата документа 240.6.0 Параметры документа 102.1.1 Ключ (Rid) корреспондента 102.4.1 Наименование корреспондента 100.1.2 Ключ (Rid) валюты 100.3.2 Код валюты 240.7.0 Примечание История 0.5.7 Создатель Specs Спецификации ------ 241.1.0 Ключ (Rid) спецификации 241.2.0 Сумма (б/н) 210.1.0 Ключ (Rid) товара 210.2.0 Наименование товара 210.3.0 Текстовая часть кода товара 210.4.0 Числовая часть кода товара 210.5.0 Тип товара 206.1.0 Ключ (Rid) единицы измерения 206.2.0 Наименование единицы измерения 212.2.0 Ставка НДС 213.2.0 Ставка НСП +----------------------------------------------+ | Список прейскурантов | +----------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Опции 102.1.0 Ключ (Rid) корреспондента 102.4.0 Наименование корреспондента 100.1.0 Ключ (Rid) валюты, в кот. строить отчет 100.3.0 Код валюты, в кот. строить отчет Report Отчет ------ 240.1.0 Ключ (Rid) документа 240.2.0 Текстовая часть номера документа 240.3.0 Числовая часть номера документа 240.4.0 Тип документа (0-приход,1-расход) 240.5.0 Дата документа 240.6.0 Параметры документа 102.1.1 Ключ (Rid) корреспондента 102.4.1 Наименование корреспондента 100.1.2 Ключ (Rid) валюты, в кот. строить отчет 100.3.2 Код валюты, в кот. строить отчет +----------------------------------------------+ | Отклонение по прейскурантам | +----------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Опции 0x20000 только товары, присутствующие в прейскурантах 0x40000 только движения, в к-рых есть разница по суммам 0x10000 тип ( 0 - приход, 1 - расход ) 210.1.1 Ключ (Rid) товара 210.2.1 Наименование товара 209.1.5 Ключ (Rid) товарной группы 209.3.5 Наименование товарной группы 102.1.6 Ключ (Rid) склада 102.4.6 Наименование склада 208.1.8 Ключ (Rid) категории товаров 208.2.8 Наименование категории товаров 219.1.9 Ключ (Rid) бух. категории товаров 219.2.9 Наименование бух. категории товаров 101.1.7 Ключ (Rid) группы складов 101.3.7 Наименование группы складов Report Отчет ------ 103.1.0 Ключ (Rid) накладной 103.3.0 Дата накладной 103.4.0 Строковая часть номера накладной 103.5.0 Числовая часть номера накладной 103.10.0 Тип накладной 103.11.0 Опции накладной 103.100.2 Цена накладной 102.1.4 Ключ (Rid) корреспондента 102.4.4 Наименование корреспондента 210.1.1 Ключ (Rid) товара 210.2.1 Наименование товара 210.3.1 Текстовая часть кода товара 210.4.1 Числовая часть кода товара 206.1.1 Ключ (Rid) единицы измерения 206.2.1 Наименование единицы измерения 240.1.5 Ключ (Rid) прейскуранта 240.4.5 Тип прейскуранта 240.6.5 Опции прейскуранта 240.2.5 Строковая часть номера прейскуранта 240.3.5 Числовая часть номера прейскуранта 240.100.5 Цена прейскуранта 0.49.0 Кол-во в накладной 0.50.2 .. 3 Сумма б/н по документу 0.51.2 .. 3 Сумма НДС по документу 0.52.2 .. 3 Сумма НСП по документу 0.53.2 .. 3 Сумма в/н по документу 2 - накладная, 3 - прейскурант 0.50.10 Расхождение сумм б/н 0.50.11 Расхождение сумм б/н в % 0.53.10 Расхождение сумм в/н 0.50.11 Расхождение сумм в/н в % +--------------------------------------------+ | Сроки оплаты накладных | +--------------------------------------------+ Params Фильтр ------ 0.1.0 Дата с 0.2.0 Дата по 0.3.0 Маска типов документов (1 << DocRec::Type, объединено по битовому OR) 0.4.0 Опции drpt... 0.11.0 Дата для расчета просроченной задолженности 102.1.12 Ключ (Rid) корреспондента 102.4.12 Наименование корреспондента 101.1.23 Ключ (Rid) группы корреспондентов 101.3.23 Наименование группы корреспондентов 100.1.4 Ключ (Rid) валюты, в кот. строить отчет 100.3.4 Код валюты, в кот. строить отчет Report Отчет ------ 103.1.1 Ключ (Rid) накладной 103.3.1 Дата накладной 103.14.1 Стамп даты накладной 103.4.1 Строковая часть номера накладной 103.5.1 Числовая часть номера накладной 103.10.1 Тип накладной DocRec::Type 103.16.1 Срок оплаты 102.1.2 Ключ (Rid) корреспондента-поставщика 102.4.2 Наименование корреспондента-поставщика 0.1.3 Закупочная сумма б/н 0.2.3 Закупочный НДС 0.3.3 Закупочный НСП 0.4.3 Закупочная сумма в/н 0.1.4 Отпускная сумма б/н 0.2.4 Отпускной НДС 0.3.4 Отпускной НСП 0.4.4 Отпускная сумма в/н 0.1.5 Оплачено по документу - сумма б/н 0.2.5 Оплачено по документу - НДС 0.3.5 Оплачено по документу - НСП 0.4.5 Оплачено по документу - сумма в/н 0.1.6 Просроченная задолженность - сумма б/н 0.2.6 Просроченная задолженность - НДС 0.3.6 Просроченная задолженность - НСП 0.4.6 Просроченная задолженность - сумма в/н 0.1.7 Задолженность - сумма б/н 0.2.7 Задолженность - НДС 0.3.7 Задолженность - НСП 0.4.7 Задолженность - сумма в/н
Важно! Если используется обрезание базы данных SH (любым способом), у которой настроена связка с 1С редакции 3.0 (как здесь - http://support.ucs.ru/ru/node/8219#header-6) - необходимо после успешной обрезки в SH ЗАЧИСТИТЬ старый "код базы" 1С ("Сервис\Собственные реквизиты"), а в настройках 1С прописать НОВЫЙ код 1С. Иначе произойдет РАССИНХРОНИЗАЦИЯ баз данных!
Важно: Перед выполнением любой операции, связанной с удалением данных, обязательно выполняйте резервное копирование базы данных!
Примечание: Если в базе данных есть документы возврата и они находятся вне периода удаления, но при этом ссылаются на приходные накладные в удаляемом периоде, рекомендуется преобразовать эти документы возврата в расходные накладные либо удалить их.
Важно: Перед выполнением любой операции, связанной с удалением данных, обязательно выполняйте резервное копирование базы данных!
Автоматическое удаление данных выполняется с помощью приложения ShCut.exe.
Дистрибутив приложения можно загрузить с FTP ftp://ftp.ucs.ru/storehouse/sh4/shCut/
Особенности приложения ShCut:
Рекомендации по использованию:
Примечание: Версия сервера склада определяется версией библиотеки \SDBSrv\ShServ.dll.
Важно: Удаление данных необходимо выполнять на дополнительном сервере склада, специально созданном для этих целей.
Порядок удаления данных для серверов версии 4.95.ххх и ниже:
Примечание: Версия сервера склада определяется версией библиотеки \SDBSrv\ShServ.dll.
Важно: Удаление данных необходимо выполнять на дополнительном сервере склада, специально созданном для этих целей.
Для удаления накладных в базе данных сервера склада 4.95.ххх и выше необходимо использовать версию ShCut.exe 4.96.276 и выше.
В версии ShCut 4.96.276 появились изменения, связанные с использованием алкогольной декларации.
При использовании несоотв. версии сервера склада и/или версии приложения ShCut, будет возникать ошибка при попытке подключения к серверу склада, например:
Порядок удаления данных для серверов версии 4.95.ххх и выше:
Примечание: Опцию "Только проверить ссылки" устанавливать не требуется - это сервисная функция.
Пример записей в лог-файле сервера, созданных в процессе удаления данных:
Exception EmptyCm processing doc К___3922 Exception EmptyCm processing doc К___46 22.05.2013 15:45:27- Exp docs deletion ... 22.05.2013 15:45:43- Doc refs deletion ... 22.05.2013 15:50:32- Doc specs deletion ... 22.05.2013 15:51:44- Docs deletion ... 22.05.2013 15:59:17- Fifo data deletion ... 22.05.2013 15:59:41- Fifo queues building ... 22.05.2013 15:59:43- Fifo static data building ... 22.05.2013 15:59:43- SysFlag = 1 22.05.2013 15:59:43- Refs checking ... 22.05.2013 15:59:44- Attr depart checking ... 22.05.2013 15:59:44- Problem queues search ... Ламбруско Медичи бел. Склад-бар Хейнекен Бар №3 Боулинг Золотой Фазан Бар №3 Боулинг Бочкарев светлое Бар №3 Боулинг Бочкарев светлое Бар №2 Бильярд 22.05.2013 15:59:45- Docs datestamp checking ... 22.05.2013 15:59:48- Docs creation ... Exception EmptyCm processing doc К___38 22.05.2013 15:59:54- Exp docs deletion ... 22.05.2013 16:00:02- Doc refs deletion ... 22.05.2013 16:01:33- Doc specs deletion ... 22.05.2013 16:02:05- Docs deletion ... 22.05.2013 16:03:59- Fifo data deletion ... 22.05.2013 16:04:12- Fifo queues building ... 22.05.2013 16:04:13- Fifo static data building ... 22.05.2013 16:04:13- IDocs deletion ... 22.05.2013 16:04:13- *** CutDocs completed *** 22.05.2013 16:24:08- Logout. User=Admin, id=5, comp.name=W8D.
Обращать внимание следует на записи, которые следуют за сообщением "Problem queues search ...":
22.05.2013 15:59:44- Problem queues search ...
Ламбруско Медичи бел. Склад-бар
Хейнекен Бар №3 Боулинг
Золотой Фазан Бар №3 Боулинг
Бочкарев светлое Бар №3 Боулинг
Бочкарев светлое Бар №2 Бильярд
Наличие таких записей говорит о проблемах с расхождением остатков, которые не могут быть автоматически разрешены сервером.
В лог-файле сервера перечисляются проблемные очереди (Товар + Склад) - для разрешения проблемы необходимо вручную сопоставить/исправить остатки по указанным товарам.
Для анализа ситуации с расхождением можно использовать отчет "Остатки по приходам" - причиной, как правило, является невнимательное использование операции жесткого связывания расхода с приходом.
В некоторых случаях при удалении накладных с помощью приложения ShCut версии 4.96.ххх может происходить автоматический сдвиг даты, на которую формируются входящие остатки (обсуждение в трекере http://tracker.ucs.ru:8080/redmine/issues/27950)
При анализе лог-файла сервера могут быть обнаружены записи следующего типа:
48757 11.11.2010 Адреналин <- 1113694458 31.08.2012 Адреналин 48757 11.11.2010 Адреналин <- 1113694458 31.08.2012 Адреналин 48777 09.11.2010 Пирожное "Эксклюзив" <- 49102 15.11.2010 Пирожное "Эксклюзив" 48619 08.11.2010 Пирожное "Эксклюзив" <- 48627 09.11.2010 Пирожное "Эксклюзив" 46805 15.10.2010 Пирожное "Нюаж шоколад" <- 49102 15.11.2010 Пирожное "Нюаж шоколад"
Итог: Чтобы выполнить удаление накладных по требуемую дату DD.MM.YYYY, достаточно избавиться от всех жесткосвязанных пар документов "ПН"⇔ "РН", где дата документа "ПН" до даты DD.MM.YYYY, а дата документа "РН" после даты DD.MM.YYYY
Sh4Utils - клиентское приложение для выполнения дополнительныъ операций и построения отчетов в виде куба по технологии OLAP.
Подробная информация о функционале приложения приведена в руководстве пользователя по системе StoreHouse v4 ftp://ftp.ucs.ru/books/storehouse_v4_user_manual.pdf
Примечание: Для запуска приложения Sh4Utils не требуется лицензия.
Установка приложения SH4Utils:
В приложении Sh4Utils есть несколько отчетов, для построения которых используются внешние источники данных - отчет "Оперативные остатки" и "Анализ неплательщиков".
Отчет "Оперативные остатки" строится на основании данных, полученных из двух источников - БД SH4 и online-данные с кассовых серверов.
Для взаимодействия с кассовыми серверами приложение Sh4Utils использует доп. библиотеку rkonline.dll:
[netbios] Adapter = 0 [Config] ClientName=MIDSRV [netkern] protocols = tcpsoc.dll [TCPSOC] listen=0 [TCPDNS] MIDSRV=127.0.0.1:4639
Полноценного функционала привязки изображений к товарам / комплектам в складской системе SH4 не предусмотрено. Но все же, при возникновении подобной необходимости, можно попробовать настроить вывод изображений товаров / комплектов используя функционал встроенного в SH4 редактора отчетов Fast-Report в печатную форму почти любого отчета. Ниже, описан пример того, как это можно сделать.
Примечание: для выполнения указанных ниже действий необходимо иметь хотя бы минимальный багаж знаний по функционалу и работе с дизайнером отчетов "Fast Report".
Рис. - Атрибуты комплектов.
Рис. - Добавление нового атрибута.
Рис. - Заполнение названий фото.
Рис. - Запуск дизайнера отчетов.
Рис. - Выбор формы для редактирования.
Рис. - Сохранение оригинальной формы в качестве отдельного экземпляра для дальнейшей работы с ним.
Рис. - Добавление объекта "picture1".
begin picture1.loadfromfile('\\MyMegaServer\SH4Fotos\'+[OPV(CHA,MyFoto,[Header."Header.202.1.0"])]+'.jpg'); end
Рис. - Пример скрипта.
- где:
Примечание: дополнительная информация о работе с Fast-Report - http://support.ucs.ru/ru/node/5357.
Для товаров можно выполнить пратически те же действия, за исключением:
1. Атрибут создать не в "атрибутах комплектов", а в "атрибутах товаров".
2. Использовать в формуле RID товара (а не комплекта).
- При помощи приложения XLS2SH4.EXE (мастер загрузки данных) появилась возможность закачивать данные из XLS-файла (книги) определенного формата в базу SH4. На момент написания статьи (26.09.14), была реализована загрузка:
1. Списка новых (отсутствующих в справочнике товаров базы) товаров. 2. Списка новых (отсутствующих в справочнике комплектов базы) комплектов.
Примечание: ПО рекомендуется использовать с версиями SH 4.95 и выше.
Важно!!! Закачивать пока можно только НОВЫЕ товары и комплекты В УЖЕ СУЩЕСТВУЮЩИЕ (или заранее созданные) в базе "группы товаров" и "группы комплектов".
Важно!!! Приложение работает только с файлами имеющими расширение - *.XLS (т.е. книга EXEL 97-2003).
Важно!!! Перед всеми действиями сделать резервную копию базы данных SH4!!!
- Формат должен быть следующим:
- Первая страница файла книги EXEL будет использоваться для загрузки списка новых товаров. Саму страницу необходимо переименовать в "Товары":
- далее, заполнить по формату представленному на скриншоте выше:
Столбец "КОД" - задается список уникальных кодов (отсутствующих в базе SH!!!) загружаемых товаров. Столбец "Наименование" - задается загружаемая номенклатура товаров. Столбец "Группа товаров" - существует/используется только для сопоставления его содержимого с существующими группами товаров в базе SH (т.е. данные этого столбца в БД не заносятся, а только сопоставляются). Столбец "Единица измерения" - существует/используется только для сопоставления его содержимого с существующими в базе SH единицами измерения (т.е. данные этого столбца в БД не заносятся, а только сопоставляются). Столбец "Ставка налога" - существует/используется только для сопоставления его содержимого с существующими в базе SH ставками налога (т.е. данные этого столбца в БД не заносятся, а только сопоставляются).
- Все последующие страницы (независимо от их названия) в книге XLS будут использоваться для загрузки комплектов. Каждая страница может содержать только один комплект, причем состав этого комплекта должен быть новым для базы SH но может ссылаться на записи из страницы товары или на страницы с другими комплектами. Именно по-этому, утилита при работе с файлом использует несколько проходов по страницам файла (количество проходов можно задать в настройках самой утилиты), что бы в итоге скомпановать полную инфорацию по всем позициям файла.
- Таким образом, следующим шагом, создается необходимое количество страниц и заполняется данными новых комплектов:
- Описание полей:
Поле A1 - вписать уникальный (отсутствующий в базе SH4) код комплекта. Это поле относится к заголовку комплекта. Поле A2 - вписать название комплекта. Это поле относится к заголовку комплекта. Поле A3 - вписать единицу измерения нормы закладки комплекта. Поле A4 - вписать количество нормы закладки комплекта. Поле A5 - вписать КОД товара/ингредиента/комплекта. Поле B5 - вписать тип ингредиента (G - товар, S - подкомплект). Поле С5 - вписать единицу измерения ингредиента. Поле D5 - вписать количество (брутто) ингредиента.
Важно!!! Для работы ПО требуется наличие установленного на ПК - NET Framework Version 4.5! Если его нет, - установить.
- Скопировать содержимое дистрибутива утилиты перекачки в каталог с установленным клиентом SH4 (Например, - D:\UCS\SH4).
- Создать в \SH4 (если их не было в дистрибутиве) следующие каталоги:
\Input - для закачиваемых xls-файлов \Done - в этот каталог будут перемещаться из каталога \Input xls-файлы, если они были успешно закачаны в БД SH4. \Error - в этот каталог будут перемещаться из каталога \Input xls-файлы, если при их закачке возникли ошибки и данные из них не были загружены в БД SH4.
- Дополнительно:
\LOG - в этот каталог будет записан лог-файл (xls2SH4.log) работы приложения, в котором так же фиксируются ошибки связанные с перекачкой.
- Поместить в каталог \Input заполненный данными xls-файл и запустить приложение XLS2SH4.EXE.
Важно!!! Перед всеми действиями, не забыть сделать резервную копию рабочей базы SH4!!!
- После запуска, появится запрос на подключение к серверу SH (для этого в ShSetup.exe должно быть настроено подключение к серверу sh стандартным образом):
- Если связь с сервером отсутствует:
- в таком случае необходимо проверить параметры подключения и например, подключиться к серверу обычным клиентом SH4 (sh.exe). Если подключение произошло успешно, кнопка [Далее >] станет активной.
- Заполнить параметры диалогового окна "Настройки":
"Путь до LOG-файла" - указать каталог в который будет писаться лог-файл выполненных операций.
"Папка с файлами для обработки" - указать каталог в котором содержаться xls-файлы, которые необходимо закачать.
"Папка с обработанными файлами" - указать каталог в который, будут перенесены успешно обработанные xls-файлы.
"Папка для ошибочных файлов" - указать каталог в который, будут перенсены xls-файлы обработанные с ошибками.
Максимальное число проходов по страницам - по-умолчанию = 4294967295 (максимальное значение). Может портебоваться изменить, если xls-файл содержит большой список товаров и большое количество страниц с комплектами, коды которых (комплектов/товаров/ингредиентов) связаны между собой и мастеру перекачки данных необходимо совершить несколько проходов для получения полной информации по всем позициям из закачиваемого файла.
Важно!!! Все параметры которые будут указаны в течении настройки мастера перекачки данных будут сохранены в его основной конфигурационный файл - xls2SH4.xml. Т.е. настройки при необходимости можно отредактировать и напрямую в этом файле.
- После определения параметров первого окна, перейти ко второму нажав кнопку [Далее >]:
- Указать параметры для импорта товаров ("Категория" и "Бух.категория").
- Указать склад, в который будут помещены комплекты.
- Указать группу, в которую будут помещены комплекты.
- Все выбранные поля должны подсветиться зеленым цветом. После чего можно перейти на следующий экран настроек, нажав кнопку [Далее >]:
- В правом окне, необходимо проставить соответсвие ДЛЯ КАЖДОЙ строки группы товаров из файла к группе товаров из базы данных SH4:
- Выбирать нужно, кликая мышкой сначала по нужной позиции в левом окне, а затем в правом окне по нужному каталогу из дерева базы, тем самым проставляя соответсвие между группами товаров из файла с данными БД.
- Так же необходимо, указать "Значение по-умолчанию", оно сыграет роль для товаров у которых в xls-файле поле "Группа товаров" не было заполнено вовсе. Для этого, нажать кнопку "Определить значение по умолчанию", затем выбрать из дерева базы нужный каталог, после чего нажать кнопку "Закончить определение" и убедиться что в поле "Значение по умолчанию" указан требуемый каталог.
- После заполнения всех полей и их подсветки зеленым цветом, перейти к следующему окну нажав кнопку [Далее >]:
- В окне настроек соответсвий единиц измерения выполнить те же действия что и в предыдущем окне. А именно:
- Указать соответсвие для ВСЕХ строк в левом окне выбирая их поочередно и затем проставляя требуемое соответсвие (в базе) из окон правее.
- Указать "Значение по-умолчанию" для тех товаров у которых поле "Единица измерения" не заполнено. Т.е. как и в предыдущем окне, сначала нажимаем кнопку "Определить значение по умолчанию", затем в окнах правее проставить соответсвие, после чего подтвердить нажав кнопку "Закончить определение". После указания всех соответствий и подсветки зеленым цветом, нажать [Далее >] для настройки следующего диалогового окна ("Ставка налога"):
- По аналогии с предыдущими окнами сопоставить ставки налогов из файла таковым в базе данных SH (ДЛЯ КАЖДОЙ СТРОКИ). А также указать значение по умолчанию, для товаров с пустым полем "Ставка налога". После указания и подсвечивания всех полей зеленым цветом перейти к следующему окну, нажав [Далее >]:
- В этом окне ("Проверка") проверить все ранее введенные данные и если все верно, нажать кнопку [Далее >], после чего начнется обработка файлов и загрузка новых данных в БД. Результат будет выведен на экран и в LOG-файл.
<Config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <LogFilePath>D:\2_SH4xx\SH_95\SH4_XLS\LOG</LogFilePath> <InputFolder>D:\2_SH4xx\SH_95\SH4_XLS\Input</InputFolder> <DoneFolder>D:\2_SH4xx\SH_95\SH4_XLS\Done</DoneFolder> <ErrorFolder>D:\2_SH4xx\SH_95\SH4_XLS\Error</ErrorFolder> <GoodColor>0</GoodColor> <BadColor>0</BadColor> <GoodsCtgId>4</GoodsCtgId> <GoodsCtg2Id>2</GoodsCtg2Id> <DefComplGroupId>138</DefComplGroupId> <CorrId>50</CorrId> <MaxPassNumber>4294967295</MaxPassNumber> <DefGoodsGroupId>484</DefGoodsGroupId> <DefMeasureId>1</DefMeasureId> <DefTaxRateId>1</DefTaxRateId> <GoodsGroupsRelation> <ValueToDatabaseRelation> <Value>Товары в xls</Value> <DatabaseId>484</DatabaseId> </ValueToDatabaseRelation> </GoodsGroupsRelation> <MeasureRelation> <ValueToDatabaseRelation> <Value>кг</Value> <DatabaseId>1</DatabaseId> </ValueToDatabaseRelation> <ValueToDatabaseRelation> <Value>порция</Value> <DatabaseId>6</DatabaseId> </ValueToDatabaseRelation> </MeasureRelation> <TaxRateRelation> <ValueToDatabaseRelation> <Value>0</Value> <DatabaseId>1</DatabaseId> </ValueToDatabaseRelation> <ValueToDatabaseRelation> <Value>10</Value> <DatabaseId>2</DatabaseId> </ValueToDatabaseRelation> </TaxRateRelation> </Config>
10.10.2014
Использование специальных мобильных устройств терминалов сбора данных расширяет возможности и функционал складской системы - SH4. В часности, использование ТСД позволяет повысить уровень автоматизации и эффективность при выполнении инвентаризации склада.
Для связи ТСД с SH4 используется дополнительный программный модуль - SH4 Data Collection Terminal (SH4DCT). При работе с ПО "SH4DCT" доступны следующие преимущества и возможности:
На данный момент в ПО "SH4 Data Collection Terminal" поддержано две модели ТСД:
Примечание: поддержка других моделей осуществляется через предварительное согласования ТЗ на поддержку и предоставления модели устройства для тестирования.
Примечание: возможно так же подключение других терминалов по отдельному соглосованию и предварительной проверкой (доработкой).
Для установки драйвера:
Рис. - Компоненты для установки.
Рис. - Подтверждение успешной установки.
Рис. - Подтверждение успешной установки.
Рис. - Уведомления об успешной установке драйверов.
При подключении ПО SH4DCT к серверу SH будет задействована лицензия на одно подключение из лицензионного ключа SH4
Необходимо выполнить ряд настроек и подготовительных работ на ТСД "Opticon Smart". В большинстве случаев ТСД после приобретения должен быть уже готов к работе. На него достаточно загрузить конфигурацию для работы с SH, после чего можно начинать работу.
Рис. - Окно теста драйвера ТСД.
Рис. - Свойства связи.
Важно! Если конфигурация не прогружается на терминал с сообщением о разности версий прошивки ТСД и самой конфигурации (например, прошивка на ТСД новее чем загружаемый файл конфигурации), в таком случае, необходимо сначала перекомпилировать (обновить) его в актуальной версии ПО "MobileLogistics". Там же, после обновления, можно выполнить и загрузку на ТСД.
Этот раздел предназначен для ознокомления в случае, если по каким-то причинам файл конфигурации SH_DB.ctf не может быть установлен на ТСД "Opticon Smart". Выдаются ошибки о несовместимости версий, лицензий и прочее.
Терминал сбора данных "Opticon Smart" поддерживаемый компанией "АТОЛ" является современным и недорогим решением.
Вся необходимая информация, необходимые драйвера и сервисное ПО содержится на официальном сайте компании "АТОЛ" - www.atol.ru.
Примечание: основная документация на ТСД есть в том числе и на support.ucs.ru, например, - http://support.ucs.ru/ru/node/8632.
Важно! Описанные ниже настройки выполняются только по согласованию с владельцем устройства ТСД в случае, если на ТСД установлена не стандартные ОС и прошивка.
На самом ТСД должно быть устанволено:
При приобретении ТСД необходимо сразу уточнить какая версия ОС установлена на устройстве. Разные версии стоят разных денег. Как правило, предлагаются следующие:
Рис. - Варианты установленных на ТСД ОС.
Примечание: Подробная информация о сертификации и лицензировании Pro версии ОС для ТСД находится здесь - http://www.atol.ru/support/certification/.
Важно! Для полноценной работы требуется - Пролицензированная ОС Pro DOS. С непролицензированной конфигурация SH_DB.ctf будет работать (в ограниченном режиме) и при запуске конфигурации будет выдаваться ошибка лицензии. После подтверждения сообщения об ошибке, можно продолжить работу в штатном режиме.
Важно! Непролицензированная Pro или Basic версия - имеют ряд ограничений по функционалу, количеству, размеру номенклатуры справочников, отгружаемых данных и т.д. За более подробной информацией о разнице версий/лицензий ОС и их ограничениях необходимо обращаться в техподдержку компании производителя "АТОЛ": www.atol.ru.
На ТСД должен быть установлен соответствующий файл ресурсов - MLRES.HEX и файл прошивки - ML.HEX.
Важно! необходимо установить файл ресурсов и прошивку для ТСД Opticon SMART если они отличаются от предложенных конфигуратором "MobileLogistics".
Важно! Выполняется только в случае неработоспособности загруженной конфигурации - SH_DB.ctf по предварительному согласованию с владельцем ТСД и после изучения тех.документации на ТСД!
Важно! файл образа ОС должен быть предоставлен либо поставщиком оборудования, либо получен в службе техподдержки компании "АТОЛ"!
Рис. - Отображение подключенного на виртуальный COM-порт ТСД.
Рис.1 - Окно авторизации на сервере StoreHouse.
Главное окно приложения состоит из 3-х пунктов (см. рис. 2):
Рис.2 – Окно главного меню.
Рис. 3 – Раздел "Настройки", вкладка "Параметры StoreHouse".
В разделе "Настройки" содержится несколько вкладок:
- так же в последних версиях ПО появились:
Можно добавлять/удалять/изменять серверы SH, а также если потребуется, сменить сервер без выхода из приложения.
Рис. – Вкладка "Общие".
№ п.п. | Параметр | Описание |
1 | "Группировка позиций" |
|
2 | "Текущее устройство" |
|
3 | "Параметры удаления документа с устройства" |
|
4 | Анализ баркодов |
|
5 | Выгрузка номенклатуры |
|
Диалог подтверждения:
Рис. – Окно с предложением выбора действий.
См. рис.:
Рис. – Раздел "Настройки", вкладка "Оборудование" для ТСД "Opticon Smart".
Рис. - Настройки драйвера.
Рис. - Результат проверки связи.
Примечание: проверка связи выполняется при ожидании устройства к нему подключения. Т.е. в момент проверки связи ТСД должен быть подключен к ПК и находиться в режиме обмена данными.
См. рис.:
Рис. - Раздел "Настройки", вкладка "Оборудование" для ТСД "Cipher 8001".
Во вкладке "Весы" (см. рис. - Вкладка "Весы") указывается адрес сервера весов, если планируется использовать электронные весы (в противном случае вкладка не заполняется).
Для работы с приложением на поддержаны следующие модели весов:
Коэффициент веса по-умолчанию =1000.
Рис. - Вкладка "Весы"
Вкладка "Баркоды" используется в том случае, если распознавыать баркоды необходимо по определенному правилу.
Также во вкладке "Единицы измерений" необходимо указать соответствие единиц измерения и цифр.
Рис. - Вкладка "Баркоды"
Важно! Прежде чем выгружать номенклатуру необходимо задать штрих-коды товарам в справочниках SH, а так же настроить "разбор" этих штрих-кодов сервисом SH4DCT.
Рис. – Подтверждение выгрузки номенклатуры.
Рис. - Окно подтверждения успешной выгрузки.
При выборе пункта меню "Создание накладных", откроется диалоговое окно с возможностью выбора типа накладной (см. рис. - Выбор типа накладной).
Рис. – Выбор типа накладной.
После нажатия «ОК», откроется окно с формой накладной.
Для всех типов накладных кнопки «1», «2», «3», «4» (см. рис. - Выбор типа накладной) являются идентичными.
Во всех типах накладных настройки "Активный документ", "Поставить в начало даты"» - идентичны.
Рис. 13 – Ошибка при отсутствии необходимого товара на складе.
При составлении накладных выбирают в поле "Дата", каким числом необходимо составить накладную.
Для создания приходной накладной в диалоговом окне выбирают «Приходная накладная», нажимают «ОК».
Рис. – "Приходная накладная", вкладка "Заголовок".
Рис. – Выбор Поставщика/Получателя.
Далее, перейти во вкладку "Товары":
Рис. – Вкладка "Товары".
Во вкладке отображается перечень вновь зарегестрированных полученных товаров.
Редактор товаров позволяет изменять кол-во, цену, сумму б/н и выбирать ставку НДС. Все расчеты ведутся автоматически.
Рис. – Использование редактора товаров.
Нажать кнопку "Сохранить". Незарегестрированные на складе товары в накладной не сохраняются.
Рис. – Окно-предупреждение о наличии неидентифицированных товарах.
Для создания приходной накладной в диалоговом окне выбрать "Расходная накладная" и нажать «ОК».
Рис. – Меню "Расходная накладная" вкладка "Заголовок".
Вся информация вводится по аналогии с "Приходной накладной" (см. предыдущий раздел)
Для создания документа перемещения в диалоговом окне выбрать "Внутреннее перемещение" и нажать "ОК".
Рис. – Документ "Внутреннее перемещение", вкладка "Заголовок".
Рис. – Документ "Внутреннее перемещение", вкладка "Товары".
Работа в данной вкладке идентична работе с вкладками "Товары" в приходной и расходной накладных.
Для создания сличительной ведомости в диалоговом окне выбрать "Сличительная ведомость" и нажать "ОК".
Рис. - Документ "Сличительная ведомость", вкладка "Заголовок".
Рис. - Документ "Сличительная ведомость", вкладка "Товары".
Работа в закладке "Товары" идентична работе во вкладке "Товары" меню "Временное перемещение".
Комплектация-документ о факте производства товара (списание сырья для производства товара).
Для создания документа "Комплектация" в диалоговом окне выбрать «Комплектация», нажать «ОК».
Рис. - Вкладка "Заголовок".
Рис. Вкладка "Товары".
Для просмотра созданных накладных в StoreHouse выбрать меню "Документы" - "Список накладных" (см. рис. - Выбор параметров поиска накладных).
Рис. – Выбор параметров поиска накладных.
В открывшемся окне отображается перечень созданных за выбранный период времени накладных (см. рис. - Перечень найденных накладных).
Рис. – Перечень найденных накладных.
Клиенсткая часть StoreHouse 4 поддерживает работу со сканером штрих-кодов начиная с версии 4.16.17.
Сканер можно подключить через:
С помощью сканера штрих-кодов можно выполнять следующие операции:
Ввод товаров и поиск - это взаимоисключащие операции, они не могут выполняться одновременно.
Примечание: поиск накладной происходит по ее номеру, при этом номер накладная не печатается в виде штрих-кода при использовании стандарной формы.
Для настройки сканера используется приложение COMSCN.EXE.
Для настройки сканера штрихкодов необходимо:
[Settings] Port=COM1 - порт, в который подключен сканер BaudRate=9600 - скорость, установленная для интерфейса сканера ByteSize=8 - биты данных, установленные для интерфейса сканера. Может принимать значение 8 или 7 Parity=0 - бит четности, установленный для интерфейса сканера. Может принимать значения: 0 - No Parity, 1 - Odd Parity, 2 - Even Parity, 3 - Mark Parity, 4 - Space Parity StopBits=0 - стоповые биты, установленные для интерфейса сканера. Может принимать значение 0 (соотв. 1 Stop Bit), 1 (соотв. 1,5 Stop Bits) или 2 (соотв. 2 Stop Bits)
Примечание: Если в дистрибутиве отсутствует файл COMSCN.INI, его необходимо создать вручную.
Далее необходимо установить две опции с помощью приложения \SH4\SHSetup.exe:
Текущее поведение сканера определяется опцией в настройках склада: "Сервис" > "Настройки склада...", далее закладка "Накладные", параметр "Использовать сканер для поиска" - при включенном параметре сканер будет использоваться для поиска товара (в открытой активной накладной), при выключенном параметре - для ввода товара в накладную.
Значения баркодов товаров должны быть указаны в карточке товара на закладке "Ед. изм." - более подробная информация по работе со сканером описана в руководстве пользователя StoreHouse v4 ftp://ftp.ucs.ru/books/storehouse_v4_user_manual.pdf
Независимо от параметра "Использовать сканер для поиска", сканер может быть использован для поиска накладных - для этого используется окно, вызываемое с помощью меню "Документы" > "Найти документ..." - для поиска достаточно считать штрих-код (в котором содержится номер накладной) и нажать кнопку "Искать".
Если в настройках приложения SHSetup.exe не отмечен параметр "Автоматически копировать данные от внешних устройств", результаты сканирования можно скопировать/считать/очистить с помощью пункта меню "Сервис" > "Внешние устройства...".
Примечание: Пункт меню "Сервис" > "Внешние устройства..." доступен только при включенном параметре "Разрешить применение внешних устройств" в приложении SHSetup.exe.
Статья находится здесь: https://support.ucs.ru/ru/node/9582
Скопировать с фтп актуальную версию дистрибутива сервера инвентаризации ftp://ftp.ucs.ru/storehouse/sh4/sh4inventory/chashInventory/
Распаковать содержимое архива в каталог с установленным клиентом SH4 (по-умолчанию - \UCS\SH4).
Туда же (в \SH4), скопировать все содержимое из папки /RK7/bin/Inventory (находится внутри установленного RK7). Кроме прочих файлов и папок каталог \SH4 после всех копирований должен содержать примерно следующий состав файлов:
borlndmm.dll
dllman.dll
DoMan.dll
errors32.dll
Netkern.dll
RK7RUS.dll
RTL60.BPL
Rnbopen.dll - из каталога \RK7\Bin\Inventory
TCPSOC.dll
Thread32.dll
SdbCli.dll
SdbVcl.dll
shInvent.dll
rkinv.ini
SHInvent.ini
netk.ini
Примечание: В качестве Rnbopen.dll можно использовать переименнованную библиотеку pds_netk.dll с версии 7.16.0.38
Пример:
[LinkDLL] 1 = Rnbopen [Rnbopen] NetServerName=InventoryServ ;; сетевое имя сервера инвентаризации. Должно совпадать со значением параметра “Сервер инвентаризации” в менеджерской станции ininame=netk.ini DebugMessages=1 [Config] CharCode=RK7RUS – имя dll для перекодировки, например (RUS, LITVA,...), если не указана - используется Windows.
Пример:
[SERVER] SERVNAME = SDBSERV (если связь с SH сервером через "Local") USERNAME = 'Admin' PASSWORD = '' [STOCKLIST] ;; Какие склады (RID) соответствуют категориям заказа DEPARTXX = Y - где ХХ- коды категории заказа, которые будут применены на кассе в момент инвентаризации. - Y - RID склада можно узнать c помощью FastReport-a в словаре корреспондентов поле в макете [Report."Report.102.1.0"] (Пример:DEPART77 = 1)
Примечание: Одиночные кавычки '...' в значениях параметров использовать обязательно.
У указанного в параметре "UserName" пользователя должны быть кроме прочих, права на следующие процедуры:
Если связь сервера инвентаризации (rkinv.exe) с сервером SH (Sdbserv.exe) осуществляется через TCP-протокол, в этом случае, в параметре "ServName" необходимо указать так как он обычно прописывается со стороны SH4, например:
ServName='127.0.0.1:pTa4001'
- где, 127.0.0.1 - адрес ПК, на котором запущен сервер SH, а 4001 - порт сервера SH.
Примечание: Значение XX (код категории) не должно содержать "ведущего" нуля, например, DEPART07 = 1 работать не будет, надо указывать DEPART7 = 1
Если в файле коды категории заказа не будут соответствовать, то на экране появится ошибка:
Рис. Ошибка "Stock is not defined in shinvent.ini"
Рис. Вид запущенного сервера инвентаризации
Рис. Настройка параметров в Менеджерской RK7
Рис. Окно инвентаризации на кассе
Рис. Настройки в SH4
Рис. Сформированные в SH документы.
Система StoreHouse HeadOffice v4 (далее SHO4) предназначена для централизированного управления словарями и построения отчетов в разрезе всех ресторанов сети.
В отличии от предыдущей версии StoreHouse BackOffice v3, в версии 4 изменился принцип работы - для обновления словарей в локальных ресторанах требуется подключение из центрального офиса к локальным ресторанам, а не наоборот.
Система отчетов также изменилась - в SHO4 не хранятся накопительные данные по локальным точкам, а при построении отчета в центральном офисе происходит подключение к удаленным локальным серверам StoreHouse v4
Примечание: Дистрибутив SHO4 доступен по ссылке ftp://ftp.ucs.ru/storehouse/SH4 HeadOffice
Система состоит из следующих модулей:
В качестве СУБД используется Microsoft SQL Server (далее MSSQL). Рекомендуется использовать версию SQL Server 2012 (коммерческая версия) или SQL Server 2012 Express Edition (бесплатная версия), разрядность не имеет значения.
Примечание: Пошаговая установка MSSQL Express Edition на примере версии 2005 описана в статье.
Требования к серверной части определяются требованиями к СУБД, с которой будет работать SHO4 - ниже описаны требования и рекомендации для СУБД SQL Server 2012, приведенные на оф. сайте Microsoft https://msdn.microsoft.com/ru-ru/library/ms143506(v=sql.110).aspx
Следующие требования и рекомендации относятся как к 32-разрядной, так и к 64-разрядной версиям SQL Server 2012.
Копмонент | Требования |
Память (ОЗУ) |
Минимальные:
Рекомендуемые:
|
Быстродействие процессора |
Минимальные:
Рекомендуемые: 2,0 ГГц и выше |
Тип процессора |
|
Жесткий диск | Для SQL Server 2012 требуется как минимум 6 ГБ свободного места на диске |
Полный перечень версий и редакций ОС Windows, совместимых с SQL Server 2012, приведен на оф. сайте Microsoft https://msdn.microsoft.com/ru-ru/library/ms143506(v=sql.110).aspx
Все модули SHO4 для работы требуют подключения к БД MSSQL - можно использовать встроенную учетную запись 'sa', но рекомендуется создать отдельного пользователя, от имени которого будут осуществляться все обращения к серверу MSSQL.
Для создание нового пользователя MSSQL необходимо запустить среду "SQL Server Management Studio", выбрать рабочий экземпляр SQL-cервера и перейти в раздел Безопасность ⇒ Имена входа. Вызвать меню по правой кнопке мыши и выбрать пункт "Создать имя входа ...".
В разделе "Общие" необходимо указать имя входа, например sho4, установить переключатель в положение "Проверка подлиности SQL Server" , ввести пароль и подтверждение пароля, убрать опцию "Требовать использования политики паролей". Остальные параметры оставляем по умолчанию
Важно: При создании пользователя имя входа и пароль должны быть разными - это требование политики безопастности MS SQL Server!
Далее переходим в раздел "Серверные роли", отмечаем все доступные роли и подтверждаем создание пользователя нажатием кнопки "ОК"
Важно: Для запуска клиентских приложений SHO4 требуется электронный ключ защиты USB Novex Stealth II, прописанный специальным образом - ключ должен быть установлен на каждом рабочем месте! Сервер, если на нем нет рабочего места, не требует ключа защиты.
Примечание: ключ защиты для SHO4 не имеет ограничений по сроку действия - он прописывается один раз с бессрочной лицензией.
Для установки скопируйте все файлы из дистрибутива в отдельную директорию, например D:\UCS\SHO4.
Для запуска редактора (SHO4edit.exe) необходимы дополнительные файлы из станлартного дистрибутива StoreHouse v4 той версии, с которой планируется использование SHO4:
Кроме указанных библиотек для запуска SHO4edit.exe требуется библиотека SHTR.dll, которую можно взять на фтп ftp://ftp.ucs.ru/storehouse/sh4/shtr.dll/RK7/SHTR.dll
Создайте несколько разделов в реестре:
Примечание: при установке системы на 64-битных операционных системах обязательно ознакомьтесь с пунктом "Тонкости развертывания системы на 64-х битных ОС".
В этом разделе создайте следующие строковые переменные (String Value):
- DBPath - перечень баз данных, к которым требуется подключение. Значения разделяются знаком ";" ("точка с запятой"). Значение параметра необходимо указывать в виде:
<имя компьютера-сервера>\<имя экземпляра сервера SQL>:<имя базы данных>
Например, Server1\SQLExpress:sho4_data1 или для нескольких баз Server1\SQLExpress:sho4_data1; Server2\SQLServer2005:sho4_data2
где:
- Server1 и Server 2 - имена компьютеров, на которых установлены СУБД SQL Server (могут быть одинаковы)
- SQLExpress и SQLServer2005 - экземпляры баз данных SQL Server
- sho4_data1 и sho4_data1 - базы данных SQL Server. На данном шаге можно не указывать эти значение, т.к. базу данных мы будем создавать на следующем этапе
- Db_user - имя пользователя, с помощью которого осуществляются все обращения к SQL Server. Необходимо указать пользователя, которого мы создали ранее
- Db_pwd - пароль пользователя, указанного в параметре Db_user
2. Раздел [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4COM] - необходим для возможности обращения к серверу через DCOM. Используется приложением SH4 HeadOffice Reports (SHO4Rpt.exe)
В этом разделе создайте точно такие же строковые переменные, как и в разделе [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4editor]
Важно: Сервер приложений (SHAppSrv.exe), который вызывается при запуске приложения SH4 HeadOffice Reports, может подключаться только к одной базе данных SHO4, поэтому в качестве значения параметра DBPath в разделе [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4COM] можно указать путь только к одной базе!
Примечание: Для успешного запуска сервера приложений SHAppSrv.exe требуется файл SHAppSrv.txt, в котором формируется лог работы - если файл отсутствует, обязательно создайте его вручную (пустой)
После этого информация в реестре должна выглядеть примерно так (для одной базы данных):
[HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4editor] DBPath=Server1\SQLExpress:sho4_data1 Db_user=sho Db_pwd=ucs [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4COM] DBPath=Server1\SQLExpress:sho4_data1 Db_user=sho Db_pwd=ucs
Или в случае использования нескольких баз данных (см. примечание выше):
[HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4editor] DBPath=Server1\SQLExpress:sho4_data1; Server2\SQLServer2005:sho4_data2 Db_user=sho Db_pwd=ucs [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\SHO4COM] DBPath=Server1\SQLExpress:sho4_data1 Db_user=sho Db_pwd=ucs
Важно: После выполнения всех настроек, необходимо один раз запустить SHAppSrv.exe вручную для регистрации COM-объектов. В дальнейшем сервер будет вызываться автоматически при запуске приложения SHO4Rpt.exe.
Для создания базы данных запустите приложение SH HeadOffice Administrator (SHO4Admin.exe) - при запуске приложение не запрашивает пароль
Далее выберите в меню Прочее ⇒ Создать базу данных...
В окне создания базы данных заполните следующие поля:
Подтвердите создание базы данных нажатием кнопки ОК - если процесс пройдет успешно, появится соответствующее сообщение.
Если необходимо создать еще одну базу данных - повторите действия, описанные выше.
После создания базы можно проверить подключение к ней - выберите меню "Файл" ⇒ "Соединение с базой данных..". Появится окно с параметрами подключения - для входа используйте имя пользователя Admin без пароля.
Если пароль для пользователя Admin утерян, можно сбросить его значение с помощью SQL-запроса:
SHO 4.46 и ниже:
update sho_users set pass = 'D41D8CD98F00B204E9800998ECF8427E' where rid = 0
SHO 4.48 и выше
update sho4SHO_USERS set pass = 'D41D8CD98F00B204E9800998ECF8427E' where rid = 0
Запрос можно выполнить в среде SQL Server Management Studio.
Предприятие - это единица, которая определяет локальный ресторан. При создании базы данных и заполнении ее первоначальными данными создается только одна корневая группа предприятий с названием "Корпорация" - вы можете изменить ее.
Важно: Если SHO4 планируется использовать совместно с RK7 или RBO, предприятия НЕ ДОЛЖНЫ создаваться вручную - они будут сформированы автоматически при импорте данных из этих приложений.
Для корректной работы SHO4 в удаленных (локальных) складах пользователи не должны иметь возможности редактировать основные словари.
Для этого необходимо создать специальную роль в локальном SH4 и назначить всем пользователям эту роль.
Создание роли:
В итоге будет создана роль "Head office", которую нужно назначить всем пользователям.
Если в локальном складе были созданы другие роли, отличные от роли "Public", и их нужно сохранить, необходимо использовать процедуру AlterHoRole, которая позволяет установить необходимые права для уже созданной роли (или ролей).
Выполнение этой процедуры аналогично вышеописанному процессу.
Важно: Выполнение процедуры AlterHoRole затрагивает все существующие роли!
Примечание: Процедуры CreateHoRole и AlterHoRole доступны начиная с версии SH 4.38.62
Технология работы StoreHouse HeadOffice предполагает, что базовые словари создаются и редактрируются только в SHO4 - в локальных складах редактирование словарей должно быть запрещено.
Для исключения нарушения целостности данных, импорт в локальном складе должен использовать специальную версию SHTR.DLL, в описании которой присутсвует фраза "EMPTY DISHLIST" (исключение импорта меню)
На момент последней редакции данного документа специальная библиотека SHTR.DLL имела версию 1.24.21 и размещалась на фтп по ссылке ftp://ftp.ucs.ru/storehouse/SH4 HeadOffice/SHTR_1_24_21.zip
Библиотеку SHTR.DLL необходимо скопировать в рабочий каталог локального SH4, откуда происходит запуск приложения ImportRK.exe
Начиная с версии склада 4.95.268 добавлен флаг "StoreHouse иcпользует словари SH HeadOffice", который определяет, импортируются или нет словари в SH4 из R-Keeper - флаг устанавливается через модуль IRkSetup.exe версии 4.56 и выше:
Примечание: Модуль ImportRK.exe более ранних версий не будет работать с версией склада 4.95 и выше
Важно: Несмотря на появление флага "StoreHouse иcпользует словари SH HeadOffice" рекомендуется всегда устанавливать специальную версию SHTR.DLL на случай отключения флаге.
Перед установкой дополнительного рабочего места необходимо настроить SQL Server для возможности удаленного подключения.
Данный процесс подробно описан в следующей статье. Дальнейшее описание подразумевает, что SQL Server сконфигурирован и может обслуживать удаленные подключения клиентов по протоколу TCP/IP.
Также следует убедиться, что на клиенте и на сервере отключены файерволы (по крайней мере, на период конфигурирования), при необходимости проверить, что в настройках файерволов открыты все необходимые порты.
Для установки дополнительного рабочего места выполните следующие действия:
Примечание: В реестре можно прописать несколько подключение к разным базам и разным серверам - для этого раздлеляйте записи с помощью символа ";" ("точка с запятой"). Например: 192.168.0.100\SQLEXPRESS\sho4_work;192.168.0.100\SQLEXPRESS\sho4_reserve
Важно: Если SQL Server настроен на прослушивание нестандартного порта (стандартный порт - 1433), то в строке подключения необходимо указать значение этого порта через запятую после имени (или IP адреса) сервера. Например, 192.168.0.100,3456\SQLEXPRESS:sho4 определяет подключение к серверу 192.168.0.100 через порт 3456
Обновление версии SH4 HeadOffice включает в себя обновление исполняемых файлов, библиотек и базы данных.
Обновление базы данных происходит методом создания новой БД и копирования данных из текущей (рабочей) БД
Для обновления версии необходимо выполнить следующие действия:
Важно: Версия, указанная в названии скрипта, соотв. версии базы данных, а не версии программы. Соответствие версии БД и версии исполняемых файлов можно посмотреть в файле SHO4.xls (ftp://ftp.ucs.ru/storehouse/SH4 HeadOffice/SHO4.xls)
Примечание: Если в подкаталоге \upgrade\ отсуствует каталог toB_BB_00, это значит, что версия B_BB не содержит специфичных изменений и в процессе обновления необходимо применить скрипт из каталога с индексом, соотв. более ранней и наиболее близкой версии.
Например, для версий 4.50.64, 4.51.66 и 4.52.67 отсутсвуют подкаталоги с соотв. индексами - в процессе обновления необходимо использовать скрипты из подкаталога \upgrade\to4_48_49_00
Примечание: Если в подкаталоге \upgrade\toB_BB_00 отстувуют скрипты fromA_AA_xx.sql , соотв. текущей версии, необходимо сначала выполнить обновление на более раннюю версию.
Например, при обновлении версии 4.40.51 до версии 4.52.67 сначала надо выполнить скрипт \upgrade\to4_45_00\from4_40_xx.sql, затем скрипт \upgrade\to4_48_49_00\from4_45_xx.sql
Связь с кассовой системой R-Keeper v7 (далее RK7) обеспечивает наполнение БД SHO4 данными о предприятиях (ресторанах) и товарах (меню). При использовании SHO4 предполагается, что система R-Keeper v7 также сконфигурирована для централизированого управления сетью предприятий (ресторанов).
Для связи SHO4 c RK7 необходимо скопировать в рабочий каталог SHO4 следующие файлы из дистрибутива используемой версии RK7:
Примечание: Файлы rk7tosh4.dll и rk7tosh4.ini находятся в каталоге \bin\sh4tr\ полного дистрибутива RK7
Примечание: Если некоторые из перечисленных выше файлов уже присутствуют в рабочем каталоге SHO4, их необходимо перезаписать.
В файле rk7tosh4.ini необходимо прописать имя рабочего сервера справочников RK7 и уникальное имя клиента:
Проблема: Невозможно зарегистрировать midas.dll
Решение: midas.dll необходимо скопировать в директорию {WINDOWS}\SysWow64
Проблема: при запуске SH невозможно выбирать база данных, появляются ошибки типа "недопустимое подключение" или "недопустимая спецификация авторизации" при попытке создать БД.
Сущность проблемы: некорректное определение целевой ветки реестра для 32-х битных приложений в 64-х битной среде.
Решение: вместо стандартной ветки реестра [HKEY_LOCAL_MACHINE\SOFTWARE\UCS\ надо использовать следующую ветку: [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\UCS\
Пример:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\UCS\SHO4Editor]
"Db_user"="sho"
"Db_pwd"="ucs"
"DBPath"="127.0.0.1,1433:SHO"
Важно: Операция переноса данных из локальной базы склада выполняется единоразово!
Последовательность действий:
Примечание: Для выполнения скриптов можно использовать любую доступную среду, например "SQL Server Management Studio".
После выполненных действий информировать Заказчика о следующем:
SHO 4.46 и ниже | SHO 4.48 и выше | |
create procedure dbo.sp_POPULATE_DEPARTS as begin declare @DEPName varchar(47) set @DEPName = 'Корпорация' insert into dbo.DEPARTS ( RID,PARENT_REF,NAME, ISGROUP, DELETED ) values (1,NULL,@DEPName,2,0) end GO set IDENTITY_INSERT dbo.DEPARTS ON GO exec dbo.sp_POPULATE_DEPARTS GO set IDENTITY_INSERT dbo.DEPARTS OFF GO |
create procedure dbo.sp_POPULATE_DEPARTS
as begin declare @DEPName varchar(47) set @DEPName = 'Корпорация' insert into dbo.sho4DEPARTS ( RID,PARENT_REF,NAME, ISGROUP, DELETED ) values (1,NULL,@DEPName,2,0) end GO set IDENTITY_INSERT dbo.sho4DEPARTS ON GO exec dbo.sp_POPULATE_DEPARTS GO set IDENTITY_INSERT dbo.sho4DEPARTS OFF GO |
Примечание: Если процедура dbo.sp_POPULATE_DEPARTS уже существует в БД, для ее изменения вместо оператора create необходимо использовать оператор alter
SHO 4.46 и ниже | SHO 4.48 и выше | |
create procedure sp_Delete_SubTree (@ROOT_REF integer) as begin declare @RID integer declare cr cursor LOCAL for select RID from dbo.GOODS where EXT_INFO <> 0 open Cr fetch next from Cr into @RID while @@FETCH_STATUS = 0 begin exec dbo.sp_DELETE_GOODS 'Admin',@RID fetch next from Cr into @RID end close cr deallocate cr declare crT cursor LOCAL for select RID from dbo.fn_GoodsTree (@ROOT_REF) where RID <> @ROOT_REF order by IND desc open crT fetch next from crT into @RID while @@FETCH_STATUS = 0 begin delete from dbo.GOODSTREE where RID = @RID fetch next from crT into @RID end close crT deallocate crT end go |
create procedure sp_Delete_SubTree
(@ROOT_REF integer) as begin declare @RID integer declare cr cursor LOCAL for select RID from dbo.sho4GOODS where EXT_INFO <> 0 open Cr fetch next from Cr into @RID while @@FETCH_STATUS = 0 begin exec dbo.sp_DELETE_GOODS 'Admin',@RID fetch next from Cr into @RID end close cr deallocate cr declare crT cursor LOCAL for select RID from dbo.fn_GoodsTree (@ROOT_REF) where RID <> @ROOT_REF order by IND desc open crT fetch next from crT into @RID while @@FETCH_STATUS = 0 begin delete from dbo.sho4GOODSTREE where RID = @RID fetch next from crT into @RID end close crT deallocate crT end go |
Примечание: Если процедура sp_Delete_SubTree уже существует в БД, для ее изменения вместо оператора create необходимо использовать оператор alter
SHO 4.46 и ниже | SHO 4.48 и выше | |
update dbo.GOODS set Abbr_text = Abbr_text+'.' where SUBSTRING ( Abbr_text,Len(Abbr_text),1)<>'.' and ext_info <>0 |
update dbo.sho4GOODS set Abbr_text = Abbr_text+'.' where SUBSTRING ( Abbr_text,Len(Abbr_text),1)<>'.' and ext_info <>0 |
SHO 4.46 и ниже | SHO 4.48 и выше | |
update dbo.DATABASEPARAMS set db_version=43800 |
update dbo.sho4DATABASEPARAMS set db_version=44900 |
Описание проблемы:
При рассылке данных по локальным складам ошибок нет, но данные не экспортируются - в логе только две операции login и logout.
Решение:
select * from departs
select * from repl_map where depart_ref= <RID предприятия, где точно происходит репликация и смотрим количество строк>
insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,1,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,2,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,3,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,4,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,5,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,6,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,7,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,8,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,9,0,0,0) insert into repl_map (depart_ref,table_id,last_date,pending_date,qerrors) values (<RID предприятия из п.1>,10,0,0,0)
select * from repl_map where depart_ref = <RID предприятия из п.1>
Примечание: В некоторых случаях после выполнения операций требуется сделать backup/restore SQL-базы
Описание проблемы:
Операция рассылки данных (все словари целиком) заканичвается без явных ошибок, но изменения не отображаются в локальных базах
Решение проблемы:
Для начала необходимо проверить в детализации протокола рассылки, какими операциями заканчивается процесс рассылки - если в конце списка операций отсутсвуют операции login и/или logout, это свидетельствует о проблеме "зацикливания" комппекта
Для анализа проблемы необходимо создать две вспомогательные фунции в БД. В связи с тем, что начиная с версии 4.48 в наименование таблиц БД добавлен префикс "sho4", скрипт создания фунцкций будет различаться для разных версий:
SHO 4.46 и ниже | SHO 4.48 и выше | |
Функция fn_CompParents1 |
create function dbo.fn_CompParents1
( @CMBASE_REF integer,
@LEV integer )
returns @Tree table
( RID integer,
IND integer IDENTITY,
L integer )
as
begin
if (@LEV>25) return;
declare @ITEM_REF int
declare @LL int
declare cr cursor local for
select b.CMBASE_REF, @LEV+1 from CMITEMS a
left join CMHEADERS b on a.CMHEADERS_REF = b.RID
where ( a.ITEM_TYPE = 1) and
( a.ITEM_REF = @CMBASE_REF )
group by b.CMBASE_REF
insert into @Tree(RID,L) values (@CMBASE_REF,@LEV+1)
open cr
fetch next from cr into @ITEM_REF,@LL
while @@FETCH_STATUS = 0
begin
insert into @Tree (RID, L)
select RID,L from dbo.fn_CompParents1 (@ITEM_REF,@LL)
fetch next from cr into @ITEM_REF,@LL
end
close cr
deallocate cr
return
end
|
create function dbo.fn_CompParents1
( @CMBASE_REF integer,
@LEV integer )
returns @Tree table
( RID integer,
IND integer IDENTITY,
L integer )
as
begin
if (@LEV>25) return;
declare @ITEM_REF int
declare @LL int
declare cr cursor local for
select b.CMBASE_REF, @LEV+1 from sho4CMITEMS a
left join sho4CMHEADERS b on a.CMHEADERS_REF = b.RID
where ( a.ITEM_TYPE = 1) and
( a.ITEM_REF = @CMBASE_REF )
group by b.CMBASE_REF
insert into @Tree(RID,L) values (@CMBASE_REF,@LEV+1)
open cr
fetch next from cr into @ITEM_REF,@LL
while @@FETCH_STATUS = 0
begin
insert into @Tree (RID, L)
select RID,L from dbo.fn_CompParents1 (@ITEM_REF,@LL)
fetch next from cr into @ITEM_REF,@LL
end
close cr
deallocate cr
return
end
|
Функция fn_CheckCmpCicle |
create function dbo.fn_CheckCmpCicle()
returns @t table
( RID integer,
NAME varchar (50),
LEV integer
)
as
begin
declare @RID integer
declare @NAME varchar (50)
declare @LEV integer
declare cr cursor local for
select RID,NAME from CMBASE
open cr
fetch next from cr into @RID,@NAME
while @@FETCH_STATUS = 0
begin
insert into @t (RID,NAME,LEV)
select @RID,@NAME,max(L) from dbo.fn_CompParents1 (@RID,0)
fetch next from cr into @RID,@NAME
end
close cr
deallocate cr
return
end
|
create function dbo.fn_CheckCmpCicle()
returns @t table
( RID integer,
NAME varchar (50),
LEV integer
)
as
begin
declare @RID integer
declare @NAME varchar (50)
declare @LEV integer
declare cr cursor local for
select RID,NAME from sho4CMBASE
open cr
fetch next from cr into @RID,@NAME
while @@FETCH_STATUS = 0
begin
insert into @t (RID,NAME,LEV)
select @RID,@NAME,max(L) from dbo.fn_CompParents1 (@RID,0)
fetch next from cr into @RID,@NAME
end
close cr
deallocate cr
return
end
|
Примечание: Если функция уже существует в БД, для ее изменения вместо оператора create необходимо использовать оператор alter
После создания функций необходимо выполнить запрос для выявления "зацикленных" комплектов - он также будет различным для разных версий SHO4:
SHO 4.46 и ниже | SHO 4.48 и выше | |
Проверочный запрос |
select a.*,b.abbr_text, b.ABBR_NUMBER from dbo.fn_CheckCmpCicle() a left join CMBASE b on a.rid=b.rid where a.LEV>20
|
select a.*,b.abbr_text, b.ABBR_NUMBER from dbo.fn_CheckCmpCicle() a left join SHO4CMBASE b on a.rid=b.rid where a.LEV>20 |
После выполнения запроса отобразятся проблемные комплекты - необходимо найти эти комплекты в редакторе SHO4 и проверить "зацикленность" (т.е. вхождение комплектов "самих в себя")
Описание проблемы:
Ошибка вида "DB Error: ..." признак нарушения логической стуктуры БД SHO4.
Решение проблемы:
Для локализации проблемы в первую очередь необходимо создать новую БД и выполнить в нее импорт данных - если ошибок не будет, значит проблема связана с рабочей БД SHO4.
Класс ошибок "DB Error" достаточно обширный, локализация и исправление может потребовать знания структуры БД и основ языка SQL - рекомендуется создать запрос на трекере с описанием проблемы, вложить скриншоты сообщений и бекап рабочей БД.
Одна из причин ошибки "DB Error" может быть связана с таблицей [sho4DATABASEPARAMS] - если в этой таблице отсутсвует запись или запись некорректная, при импорте данных будет возникать ошибка "DB Error".
Для решения проблемы необходимо заполнить таблицу [sho4DATABASEPARAMS]:
TRANCATE TABLE [sho4DATABASEPARAMS]
INSERT INTO [sho4DATABASEPARAMS] ( ORGANIZATION, MUNITS_REF, CMUNITS_REF, TMUNITS_REF, CCDATE, BUCCATEG_REF, MAINCATEG_REF, DB_VERSION, REPL_PLDOCS) values ('',1,6,2,'01.01.1980',2,1,44900,1)
Описание проблемы:
В SHO4 при выборе "Словари" ⇒ "Предприятия" возникает ошибка "Could not convert variant of type (Null) into type (Integer)" - при нажатии ОК ошибка появляется еще раз и далее открывается форма "Set Depart Form" со списком предприятий, импорт из R-Keeper v7 (далее RK7) при этом выполняется успешно.
Решение проблемы:
Для решения проблемы необходимо выполнить частичное удаление данных (предприятий) в БД SHO4:
delete from DEP_GOODSTREE go delete from DEP_GOODS go delete from DEP_GOODSPARAMS go delete from REPL_MAP go delete from DEPARTS where PARENT_REF is not null go delete from DEPARTS go create procedure dbo.sp_POPULATE_DEPARTS as begin declare @DEPName varchar(47) set @DEPName = 'Корпорация' insert into dbo.DEPARTS ( RID,PARENT_REF,NAME, ISGROUP, DELETED ) values (1,NULL,@DEPName,2,0) end GO set IDENTITY_INSERT dbo.DEPARTS ON GO exec dbo.sp_POPULATE_DEPARTS GO set IDENTITY_INSERT dbo.DEPARTS OFF GO
Содержимое скриптов "Создание корневой группы предприятий.sql" и "Установка версии БД.sql" см. в разделе "Перенос данных из SH4 в SHO4"
Примечание: Для выполнения скриптов можно использовать любую доступную среду, например "SQL Server Management Studio".
1 - для построения отчетов в центральном офисе можно не подключаться к удаленным локальным ресторанам. Для этого необходимо иметь альтернативный сервер SDBSERV в центральном офисе (с копиями баз из локальных ресторанов). Примечание: информация в отчетах при такой схеме может быть не актуальной