Jump to content
forum-okna.ru

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


oknosoft
 Share

Recommended Posts

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

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

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

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

 

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

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

 

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

Edited by oknosoft
Link to comment
Share on other sites


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


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

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

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

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

Link to comment
Share on other sites

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

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

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

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

 

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

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

 

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

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

Link to comment
Share on other sites

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

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

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

 

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

 

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

 

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

Link to comment
Share on other sites

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

 

Если Найти(стрПродукция.Номенклатура.Наименование, "Балкон")>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

  • Upvote 1
Link to comment
Share on other sites

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

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

 

 

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

Link to comment
Share on other sites

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

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

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

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

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

 

upd.

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

 

 

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

Edited by oknosoft
Link to comment
Share on other sites

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

 

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

Edited by V.N.T.
Link to comment
Share on other sites

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

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

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

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.