Автоматизация торговли: Рабочее место продавца ( кассира) Настройка рабочего места кассира 1С Управление торговлей 11. 1С Управление торговлей 8. 10.3 / 11.1 / 11.2 · 1C:Зарплата и управление персоналом 8 ред. Продажа товаров (оформление кассовых чеков, отражение оплаты в различной форме); Учет. Основной интерфейс, с которым приходится работать кассиру, называется рабочее место кассира ( РМК). Обработка для кассира /менеджера по продажам в 1С Управление торговлей 10.3.
Личный опыт Гения 1. С. борьбы с типовыми конфигурациями 1. С8. Оглавление. Технологии. Обновление типовых конфигураций 4. Номер версии конфигурации 4.
Принципы внесения доработок 4. Альтернатива предопределенным элементам 4. Особенности программирования в типовых конфигурациях 4. Особенности добавления новых объектов в типовую. Особенности отладки в типовых конфигурациях 5. Просмотр временных таблиц 5.
Ут 10.3 Интерфейс Кассира Внешняя Обработка
Внешние компоненты 5. С: Печать штрих- кодов 5.
Права доступа 5. Дополнительные права доступа 5.
- Под интерфейсом кассира я могу менять процент скидки (круглишок 1), а поменять вручную сумму (круглишок 2) я не могу, я щелкаю.
- Наличие под рукой у кассира методического пособия по работе с интерфейсом кассира в 1С, куда можно оперативно 'подглядеть' во время протекания кассовой(рабочей) смены. Интерфейс кассира УТ 10.3.
- УТ 10.3 Интерфейс Кассира. При внедрении столкнулись с необходимостью визуального подбора для кассиров.
Права доступа на внешние обработки 5. Дополнительные права доступа и RLS 5. Отсутствие функции по получению булева права доступа (УТ. Очистка кэша дополнительных права доступа 6. Права доступа на внешние обработки 6. Как запретить запускать и редактировать внешние обработки.
УТ 1. 0)6. Некоторые конкретные рецепты по правам доступа 7. Право только на ввод физических лиц (ЗУП 2. Дата запрета редактирования 8. Обмен с учетом даты запрета редактирования 8. Автоматическое продвижение даты запрета редактирования 8. Кастомизация пользователей 8. Настройки пользователей 8.
Программно получить пользователей, у которых включена. Документы 9. Формализация документов 9. Удобство работы с движениями документов 9. Добавление своих полей в регистр Продаж (УТ 1. Как сделать в своем документе поддержку типовых печатных.
Оргструктура 1. Организации 1. 0Связь между организацией и контрагентами 1. Складской функционал 1. Отчет по стоимостной оценке склада 1.
Вывод усредненной себестоимости в отчет (УТ 1. Работа по ордерной схеме 1. Проверка записанности документа- основания при. Розница 1. 0)1. 0Контроль остатков при перемещениях по ордерной схеме 1. Учет по сериям 1.
Коды учета серий в документах (УТ1. Торговый функционал 1. Резервирование товаров 1. Кто зарезервировал товары? Будет выполнено обновление информационной. Но если изменения в конфигурацию. Ведь если вносится новый предопределенный элемент, конфигурацию уже.
После добавления нового объекта в конфигурацию нужно. С с параметром запуска Запустить. Обновление. Информационной. Базы (удобно через. Иначе будет ошибка вида: Ошибка при выполнении функции.
Общего. Назначения. Идентификатор. Объекта.
Метаданных. Во многих типовых есть фукнкция . Она бывает в разных. Поэтому отлаживать результат запроса можно и без внесения. Хотя есть способ просмотра временных таблиц через ввод в. Функция работает если у запроса установлен менеджер временных.
Пример из УТ, в табло ввести функцию: (Запрос. Менеджер. Временных. Таблиц. . Можно создавать свои дополнительные права.
В типовых конфигурациях нельзя назначить права доступа на. Вариант решения – создать дополнительное право пользователя и. RLSЕсли есть частая потребность, чтобы объекты могли. Допустим, нужно дать доступ только избранным пользователям к. Премии». Нужно завести дополнительное право с идентификатором «Просмотр. Премий». параметр сеанса «Право. Просмотр. Премий».
Параметры сеанса такого типа заполняются автоматически кодом. Перед. Началом. Работы. Приложения: //Осипов - устанавливаем права доступа З = Новый Запрос( . К. сожалению, платформа не позволяет назначить одинаковые RLSсразу на все роли.
Теперь можно управлять RLS- ом. Проверка прав везде делается одним и.
Разрешено =. Управление. Пользователями. Получить. Значение. Права. Для. Текущего. Пользователя(Планы. Видов. Характеристик. Права. Пользователей.
Найти. По. Наименованию(. Проще дать ему. команду для очистки сохраненных в кэше прав доступа: Кэш =.
Значение. Переменной(. Создаем дополнительную новую пустую роль. Назначаем интерфейс «Набор персонала». Создаем новую подписку на все объекты метаданных. Объект на общее для всех событие При. Записи. В коде. обработчика прописываем: Процедура .
Поэтому. пользователю, под которым происходит обмен, нужно или ставить максимально. Перед. Записью. Документа.
Дата. Запрета. Редактирования. Перед. Записью. и Перед.
Записью. Регистра. Дата. Запрета. Редактирования. Перед. Записью код: Если Источник.
Обмен. Данными. Загрузка = истина. Тогда Возврат; Конец. Если; Можно написать регламентное задание, которое автоматически. МЗ =. Регистры. Сведений. Границы. Запрета.
Изменения. Данных. Выбрать(); ПОКА МЗ. Следующий() Цикл //По умолчанию можно редактировать с 1 числа.
Новая. Дата = Начало. Месяца(Текущая. Дата()); Новая. Дата = Начало. Месяца(Новая.
Дата - 1); Если МЗ. Пользователь. Имя = . Виды операций не формализованы и не изолированы. Поэтому. если вы хотите создать документ, который бы делал, скажем, перемещение с. Это не. удобно, поэтому имеет смысл сделать доработки. Чтобы добавить свои поля в движения по регистру продаж, их. Подготовить. Таблицы.
Документа» модуля документа. Скопировать из типового документа кнопки печати и кнопки. Процедура Основные. Действия. Формы. Печать(Кнопка) Универсальные. Механизмы. Открыть.
Форму. Выбора. Печатных. Форм. Объекта(Этот. Объект. Эта. Форма); // Установить печатную форму по умолчанию. Чтобы она выводилась, нужно: Добавляем показатель: Иначе. Если Режим = 1 Тогда // Неоперативный режим.
В результате операторы могут. Для того, чтобы отменить это поведение, достаточно заменить. Перемещение товаров»: //Если. Значение. Заполнено(Структура. Шапки. Документа. Склад. Отправитель) И Не. Реализация. По. Ордерной.
Схеме Тогда //Проверяем остатки всегда, даже при проведении. Для анализа можно использовать отчет «Анализ. Документ- основание. Ответственный». Но есть один нюанс – по умолчанию менеджеры не могут видеть. Заказ покупателей», поэтому в роль «Менеджер по продажам» нужно.
RLSдобавить поле «Ответственный». Можно создать кнопочку, чтобы менеджерам. Процедура Командная.
Панель. Формы. По. Резервам(Кнопка) //Осипов для учета резервов Элементы. Формы. Командная. Панель. Формы. Кнопки. По. Резервам. Пометка. НЕ Элементы. Формы. Командная. Панель.
Формы. Кнопки. По. Резервам. Пометка; Нужна. Расшифровка. Резервов = Элементы. Формы. Командная. Панель. Формы. Кнопки. По. Резервам. Пометка; Иск. Измерение =. Найти.
Измерение. Строки. Построителя. По. Пути. КДанным(Универсальный. Отчет. Построитель. Отчета. Измерения. Строки. . А ведь на практике Грузоотправителем.
Организация, а Грузополучателем – Покупатель. Связка реализовывается. Организации и Покупателя. При открытии. нового документа также надо принудительно вызывать эти обработчики – они сами. В типиках есть автоматические скидки при продаже. Код. реализован в процедурах Запрос.
По. Скидкам и Рассчитать. Скидки. При. Продаже модуля. Обработка. Табличных. Частей. УТ. 1. 0.
Пользователи попросили для некоторых контрагентов не. Я предпочел косметическое вмешательство, а не глобальную.
В функции, где строится массив получателей скидки (в том. Чтобы пометить такого.
СКИДКИ; ». Можно было бы. Все. замечательно работает. Функция Получить. Массив. Получателей. Скидки(Вид. Реализации. Документ. Объект) Экспорт Массив. Получателей = Новый Массив; Если Вид.
Реализации =. Перечисления. Виды. Скидок. Розничная Тогда Массив. Получателей. Добавить(Документ. Объект. Склад); Массив.
Получателей. Добавить(Справочники. Склады. Пустая. Ссылка()); Иначе //Осипов 2. Если. Найти(Документ. Объект. Контрагент.
Комментарий, . Однако некоторые. Было бы логично для универсальности. Печатать грузоотправителя и грузополучателя в счет- фактурах. Но пока мы дождемся этого от 1. С, нужно комментировать код в модуле. Если Не Есть. Товары Тогда //Данные.
Для. Печати. Грузоотправитель =. Поэтому документы должны заполнять этот регистр.
Недостатком архитектуры регистра является то, что у него. Поэтому одна строка документа может.
Проблема. решается путем добавления строк с номерами на 1. В документах 1с не может быть. Допустим, нужно проверить, учитывает ли программа разрез по.
Рассмотрим ситуацию для методики оценки себестоимости «по. Заведем два прихода товара «Тест товара»: 1 марта 2.
Регистр партий выглядит так: Производим продажу 1. Производим продажу 5 штук товара 2.
Регистр партий выглядит так: Т. Просто в. базе велся учет себестоимости по марже, а тип договора нужно было сохранить. Пришлось поправить код процедуры Управление.
Запасами. Партионный. Учет. Сформировать. Движения. Списания. На. Себестоимость. Продаж. Упр: Если ИСТИНА ИЛИ. НЕ Строка. Статус. Партии = Перечисления.
Статусы. Партий. Товаров. На. Комиссию Тогда Движение. Стоимость =. Коэффициент.
Сторно*Строка. Стоимость; Иначе. Просто убрать это условие (помечено желтым). В 1. С принято, что если товара не хватает, то остатки по.
В. результате между остатками по складам и партиям накапливается расхождение. Для. этого нужно вставить заплатку всего в одном месте, в процедуре.
Управление. Запасами. Партионный. Учет.
Списание. Партий: Если (Количество. Осталось. Погасить > 0) Тогда Сообщить. ОНехватке. Партии(Строка. Документа. Структура.
Параметров, Регистр. Учета, Количество. Осталось. Погасить); //Осипов, чтобы списывалось адекватно. Но он не универсальный, т. Это помогает. более точно контролировать изменения.
Список доработок в листинге: Процедура. Механизм. Версионирования. Объектов. Таким настройкам можно дать имя. Пользователь нажимает кнопку выбора и ему открывается.
Он может быстро выбрать настроенные. Процедура Выбрать. Настройку(Кнопка) Выбрать. Настройку. Универсального. Отчета(Эта. Форма.
В модуле отчета «Универсальный отчет» в самом конце. Быстрый. Отбор. Развернут = истина; //Для удобства. При грамотном проектировании конфигурации можно было бы. Самый простой способ – скопировать модуль объекта целиком во. Тогда практически ничего переделывать не надо. УТ 1. 0. 3. Если нужно сформировать извещения некоторым пользователям. Далее, получить список этих.
Каждые Nсекунд оно активизируется. В идеале было бы, чтобы оно. Но можно поступить проще. Для этого нужно в процедуре Управление.
Контактами. Проверить. Напоминания. Пользователя: :Проверить. Напоминания. Пользователя. Результат. Запроса = Запрос. Выполнить(); Если НЕ Результат. Запроса. Пустой() Тогда Изначально. Форма. Оповещения.
Задач. Открыта. = Форма. Оповещения. Задач.