7 ноября 2019 в 12:41:10
(5 лет 2 недели 2 дня 9 часов назад)
52600
V8.x Управление торговлей
23.12.2015 19:44:53
Текст задания
* В заказ клиента добавить отдельное поле "Статус амиро" с установкой статусов (из отдельного справочника "Статусы амиро"), соответствующих статусам в Амиро. А так же вывести его в карточку заказа и в форму списка. При выборе статуса амиро автоматически выбирается статус 1С, который сопоставлен ему в новом справочнике. Пользователю будет предложено активировать любой из возможных статусов, перечисленных ниже:
Так же, пользователь самостоятельно может добавить дополнительные статусы в справочник "статусы амиро", в которые потребуется внести:
* "наименование",
* "идентификатор" (для сопоставления при выгрузке на сайт, по умолчанию совпадает с наименованием),
* "сопоставление со статусом 1С" (Не согласован, согласован, к обеспечению, к отгрузке, Закрыт),
* чек бокс "Активен" (если снят, то при выборе из заказа не доступен),
* "Комментарий" (передается при выгрузке на сайт).
Предусмотреть возможнось упорядочивания статусов заказов в списке кнопками "вверх"/"вниз". Предопределенный статусы по умолчанию будут упорядочены так, как они перечислены в текущем ТЗ.
При выборе статуса амиро из формы заказа список статусов будет выведен в соответствующем порядке.
* При записи заказа, если только-что был установлен статус "Отказ" в комментариях заказа клиента прописываем текст "отсутствует на складе". Для синхронизации с сайтом используем файл с наименованием "StatusOrder.xml" в формате XML.Если при выгрузке файл "StatusOrder.xml" существует (т.е. еще предыдущая выгрузка не загружена), то текущую выгрузку прерываем и запускаем в следующий раз (по расписанию или при записи заказа). В целом это значит, что при успешной загрузке веб-обработкой статусов на сайт файл "StatusOrder.xml" должен быть удален.
Описание формата XML следующее (актуально для вебпрограммиста):
Пример:
<?xml version="1.0" encoding="UTF-8" ?>
<order>00001</order>
<status>Отказ</status>
<description>доставлен в пункт назначения, ожидает отгрузки пользователю</description>
Файл выгружается в заданный каталог FTP сервера.
Номер заказа берется из поля "Номер" на вкладке "Дополнительно" в группировке "Заказ по данным клиента"
* Выгрузка статусов должна работать следующим образом.
* В определенных случаях запускается процедура выгрузки заказов с измененными статусами (список заказов к выгрузке регистрируется и хранится в таблице 1С).
* После изменения статуса заказа выполняются следующие действия
* Запускает процедуру выгрузки всех зарегистрированных ранее заказов (в том числе и текущий)
* Если по каким-либо причинам (например, если предыдущая выгрузка не загружена на сайт) выгрузить статусы заказов не удалось, то программа запоминает текущий заказ в специальной таблице для очередной попытки выгрузки заказа.
* С заданным интервалом (допустим раз в 10 минут) запускается процедура выгрузки всех зарегистрированных ранее заказов с измененным статусом. Данное регламентное задание требуется, чтобы не пропустить выгрузку измененных статусов в случае, если при записи заказа этого сделать не удалось.
////////////////////////////////////////////////////////////////////////////////////////////////
//////// дополнительные примечания добавленные с 24.12.2015
////////////////////////
Версия конфигурации УТ 11.1.4
Много дописок есть в конфигурации.
Но текущая задача с ними не пересекается.
Отправка по статусам должна выполняться если заказ не новый.
Описание тегов в заказе:
<order> - номер заказа
<status> - статус заказа (берется из идентификатора статуса заказа)
<description> - комментарий в статусе заказа.
При первой работе все предопределенные статусы не активны. Когда пользователь установливает активность одного из статусов должен заполняться идентификатор (берется из наименования), если пользователь не заполнил его самостоятельно.
Путь к каталогу FTP сервера прописывается в константах.
Все настройки, касающиеся выгрузки статусов заказов хранятся в константах (если отдельно не указано иное), и просматриваются/изменяются в обработке, которую можно открыть из меню "Сервис" в разделе "Продажи"
Подобные механизмы обмена данными реализовывал неоднократно (примеры ТЗ и Руководства пользователя сбросил в личку). Сделаю.
Будет одно уточнение - по формату файла экспорта (описание полей). Это обсудим с программистом сайта.