Перейти к публикации
forum-okna.ru

FAQ. Наценка на стеклопакет.


oknosoft

Рекомендованные сообщения

Предположим, что необходимо на покупные стеклопакеты внутри окна меньше 0.5 кв. м. сделать наценку для покупателя 15%, а на стеклопакеты больше 2 кв.м наценку 10%. Из карточки номенклатуры нужного стеклопакета нажмите.

Перейти- УПзП: Расширение номенклатуры,

закладка Формула,

и ввести туда следующий код на языке 1с:

 

Если Стр.SQR <0.5 Тогда

 Стр. Цена = Стр. Цена * 1.15;
Иначе Если Стр.SQR>2 Тогда
 Стр. Цена = Стр. Цена * 1.1;
Конец Если;

 

Это универсальный механизм, и он позволяет корректировать цену не только на стеклопакеты и не только в зависимости от площади. И не только цену.

Изменено пользователем oknosoft
Ссылка на комментарий
Поделиться на других сайтах


Оконный портал tybet.ru | Подписка на новости | Бесплатные объявления | Наша телега | База оконных знаний | ОНЛАЙН-ВЫСТАВКА



Пример хороший.

1. Таких примеров нужно больше.

2. Скриншоты примеров здорово облегчают понимание примеров.

3. Описать переменные и формулы, которые можно использовать в поле "формула", чтобы появилось понимание, где и как можно самостоятельно использовать этот механизм.

Ссылка на комментарий
Поделиться на других сайтах

Разделю ответ на три части:

1. Вводная, этот пост.

2. Описание переменных, описание сервисных функций, модуль и функция конфигурации где это используется.

3. Расширенный пример.

 

Спасибо за вопрос в частности (он в самую точку), и спасибо за роль в развитии нашей программы вообще. V.N.T - первый пользователь нашей рисовалки окон. Теперь таких внедрений много, но понятно, что первое - самое важное.

Раньше технология импортировалась из внешних программ, обычно из СуперОкон. Эта схема и сейчас работает, но она менее функциональна.

 

Какие возможности предоставляет произвольный код на языке 1с в ценообразовании?

Произвольные (любые). Вы можете использовать в определении себестоимости вашего материала текущий курс валют, гороскоп римского папы на прошлую среду и фазу луны. Ограничения лежат только в области здравого смысла и производительности компьютера.

Ссылка на комментарий
Поделиться на других сайтах

Переменная Стр - это строка табличной части "Спецификация" справочника "ХарактеристикаНоменклатуры". Какие у нее есть поля- лучше посмотреть в конфигураторе, их немало. Она основная, так как именно она редактируется.

Переменная "стрПродукция"- структура с информацией о продукции. Есть поля Высота, Длина, Номенклатура, Характеристика. Полный список полей лучше посмотреть в конфигураторе, поставив точку останова в строке вызова, полей много у этой структуры. Также есть соответствие "Парам", ее тоже лучше в конфигураторе смотреть, десятки полей.

Вызов этой формулы осуществляется в функции пзЦенообразованиеСервер.ПолучитьЦенуНоменклатуры в этом коде

 

Попытка
Выполнить(СтрокаЦены.Формула);
Исключение
Попытка
Стр.Цена = Вычислить(СтрокаЦены.Формула);
Исключение
КонецПопытки;
КонецПопытки;

 

В конце данного модуля есть функции, специально для вызова внутри формул ценообразования.

 

И никто не мешает подключить свою внешнюю обработку, и использовать ее при расчете цены. Это для учета фазы луны :) Только надо позаботиться о кешировании, так как она вызывается много раз и может быть очень медленно.

Ссылка на комментарий
Поделиться на других сайтах

Второй пример. Предположим, мы хотим сэкономить, и для продукции, в наименовании которой есть слово "Балкон", из каждой кучки больше двух саморезов будем вынимать один саморез. Вот код для этого:

 

Если Найти(стрПродукция.Номенклатура.Наименование, "Балкон")>0 Тогда
Если Стр.QTY>2 Тогда
Стр.QTY = Стр.QTY -1;
КонецЕсли;
КонецЕсли;

 

На картинках ввод формулы, и спецификация на балкон и не на балкон.

 

Screenshot_1.png?etag=8720FCDE262502F9A8C12F0EB70AC9CF98593F84&x-email=0knosoft%40mail.ru

 

Screenshot_2.png?etag=967F8F3B4019F91317296AD3CA6C22295D70B1A7&x-email=0knosoft%40mail.ru

 

Screenshot_3.png?etag=276CCF8FFFC4C958CFD011D876162110CD033714&x-email=0knosoft%40mail.ru

Ссылка на комментарий
Поделиться на других сайтах

Переменная Стр - это строка табличной части "Спецификация" справочника "ХарактеристикаНоменклатуры". Какие у нее есть поля- лучше посмотреть в конфигураторе, их немало. Она основная, так как именно она редактируется.

Переменная "стрПродукция"- структура с информацией о продукции. Есть поля Высота, Длина, Номенклатура, Характеристика. Полный список полей лучше посмотреть в конфигураторе, поставив точку останова в строке вызова, полей много у этой структуры. Также есть соответствие "Парам", ее тоже лучше в конфигураторе смотреть, десятки полей.

 

 

Переменная Стр с ней всё ясно и понятно, а можно поподробнее про Переменная "стрПродукция" особенно про соответствие "Парам". В конфигурации километры кода и лопатить всю конфигурацию, чтобы понять замысел Творца, довольно проблематично. Хочется чётко понимать механизм работы, структуру переменных и логику работы.

Ссылка на комментарий
Поделиться на других сайтах

Как я уже написал, нужно поставить точку останова в коде, описанном тут

http://forum-okna.ru...ndpost&p=348810

и, перезаписать продукцию. Щелкнуть на любом размере в построителе, и нажать сохранить.

В стрПродукция три десятка значений, в Парам- штук восемьдесят, наверное. Я могу их запостить, но смысл? Это будет эпичный том страниц под сотню, вряд ли кому интересный. Думаю их лучше посмотреть в конфигураторе с живыми данными по продукции и имея в виду задачу. которая стоит.

Что касается замысла творца, то он очень прост. Данные переменные содержат поля, необходимые для решения задач.

 

upd.

"стрПродукция" содержит поля продукции, к которой относится наша строка спецификации "Стр". Это есть во втором примере. Парам призван по сути весь контекст заказа передать на сервер. И может быть востребован если, например, мы хотим чтобы строки заказа влияли на цены материалов в соседней строке.

 

 

Переменная Стр с ней всё ясно и понятно, а можно поподробнее про Переменная "стрПродукция" особенно про соответствие "Парам". В конфигурации километры кода и лопатить всю конфигурацию, чтобы понять замысел Творца, довольно проблематично. Хочется чётко понимать механизм работы, структуру переменных и логику работы.

Изменено пользователем oknosoft
Ссылка на комментарий
Поделиться на других сайтах

С вышеприведенными материалами понятно.

 

А в чём принципиальное различие вышеприведенного механизма и механизма "корректировка спецификации" ? Я так понимаю в том, что через корректировку мы можем оперировать и строками продукции? И почему тогда не "запихнуть" функционал поля "Формула" "Расширения номенклатуры" в "корректировку спецификации" ?

Изменено пользователем V.N.T.
Ссылка на комментарий
Поделиться на других сайтах

Соглашусь, что пересечение у механизмов есть. Существуют задачи, которые можно решить и "корректировкой", и формулой материала. Можно выбирать, что удобнее. Про отличия.

Начнем с того, что "корректировка" может полностью создавать спецификацию. Доставки, монтажи, подоконники и пр. В этом случае просто некуда писать "формулу".

Корректировка настраивает спецификацию для конкретной продукции, а формула материала изначально привязана к материалу для всех продукций.

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

Условия и правила использования форума Правила.