Молочников Олег Spb. 2011.
Начало автоматизации (Часть 2).
Начало статьи смотрите здесь: //infostart.ru/public/84784/
В предыдущей статье я рассматривал подходы к выбору правильной конфигурации и важность выбора изначально более удобной структуры хранения данных заказчика в базе данных.
Но вот конфигурация выбрана, в ней созданы дополнительные реквизиты данных и перенесена информация из той среды, где ее заказчик хранил ранее. Многие на этом этапе начинают писать специализированные рабочие места (РМ) для основных видов деятельности заказчика (рабочее место логиста, рабочее место кладовщика, менеджера и т.д.) потому что стандартная конфигурация не отображает новых реквизитов, не умеет делать по ним отборы, не выводит необходимую для принятия решения информацию. Такой подход имеет право на жизнь, но количество таких РМ можно сильно ограничить до действительно неизбежных случаев, если использовать функционал стандартной конфигурации и … специализированный подбор. Изготовлению таких подборов, которые позволят легкими усилиями расширить функционал сразу всей конфигурации и во всех документах, я и хотел бы посвятить эту статью.
Для изготовления подборов я рекомендую использовать управляемые отборы, которые работают как в толстом, так и в тонком клиенте, и при дальнейшем написании Web-интерфейса не придется ни чего переделывать.
Чтоб не быть голословным, я приведу примеры с двух своих последних проектов, коротко описанных в предыдущей части статьи. Начнем от простого к более сложному.
Подбор номенклатуры из имеющейся на складе или из переданной контрагенту в давальческую переработку.
Очень удобно для работы подбора использовать динамический список. Для динамического списка создается запрос связующий таблицу остатков с таблицами, содержащими дополнительную информацию для вывода и отборов. Если нужно несколько вариантов запросов, не рекомендую переопределять запрос в динамическом списке, так как в этом случае платформа работает не стабильно, и могут происходить вылеты с ошибкой. Рекомендую в этом случае иметь или несколько форм подборов, или выгружать данные из запроса в таблицу.
Далее рекомендую предусмотреть в подобном отборе несколько хитростей, которые могут оказаться полезными при работе с большим количеством данных:
1. - В отборе не показываются позиции, имеющиеся в документе вызывающем подбор.
2. - Выбранные в документ позиции моментально исчезают из подбора.
3. - Цветовое выделение позиций по важным для сотрудника признакам.
Пример отбора cиспользованием динамического списка:
Преимущество такого отбора, что сотрудник сам может настраивать состав и положение колонок и условия отбора.
Часто сотрудникам для работы необходимо гораздо больше информации, чем просто информация о складских запасах. И здесь на помощь придет продуманный отбор. Вариантов таких отборов может быть бесконечное множество, попробую лишь привести пример обора посложнее и описать основные моменты.
Пример формы отбора для работы с автозапчастями:
Подбор номенклатуры в документ осуществляется в три этапа. Вначале менеджер ограничивает список номенклатуры в средней части с помощью фильтров в верхней части формы (год выпуска, модель автомобиля, тип кузова или конкретная деталь по еврокоду).
Затем осуществляется выбор конкретной позиции в документ, после анализа менеджером доступной ему по правам доступа информации в нижней части подбора (Наличие на складах, себестоимость, цена, наличие у поставщиков, Цены по торговым маркам.)
После чего менеджер должен предложить товары, которые могут входить в комплект покупки, проанализировав по ним тот же набор информации:
Если обновление одной таблицы подбора происходит после активации строки из другой таблицы как в этом подборе, рекомендую обновлять таблицу не через обработку активации строки, а генерировать событие и обновлять таблицу в обработке этого события. Это позволит избежать торможения отображения при пролистывании пользователем исходной таблицы. (Обрабатываться будет только последняя активная строка).
Дополнительно на форму подбора выносится любой связанный функционал, который может потребоваться в нескольких документах, например регистрация спроса на конкретную номенклатуру, для последующей статистической обработки.
И не большие итоги в конце статьи. Написание специализированного подбора позволит с небольшими усилиями расширить функционал сразу всей конфигурации. Использование управляемых форм для этой цели несет много преимуществ:
1. -Легкая настройка доступности, видимости отдельных элементов формы, столбцов для различных ролей пользователя.
2. -Возможность использования подборов во всех видах клиентов.
3. -Возможность использования динамических списков и других элементов управляемых форм.
(Продолжение следует)
PS: Надеюсь вам понравится эта и другие мои статьи и разработки на //infostart.ru/profile/48714/.
Очень жду ваших комментариев и пожеланий.
Молочников Олег Spb. 2011.