Использовать цены нужного типа при определенном количестве товара

Тема в разделе "1C и всё что с ней связано", создана пользователем -, 4 май 2009.

  1. Гость

    Имеется набор базовых цен, названных следующим образом: Розничная, опт(10), опт(40), опт(785) и так далее.
    Число в скобках означает, при превышении какого количества данного товара в документе используется данная цена.
    Подобная странная схема продиктована разработчиками сайта.
    Надо, чтобы цена автоматически подхватывалась в документе при введении необходимого количества товара.
    Сейчас используется вариант со скидками, но он очень неудобен.
    В 1с еще толком не кодил, но постараюсь разобраться, если кто что посоветует.
    1С:Предприятие 8.1 (8.1.12.98)
    "Управление торговлей", редакция 10.3 (10.3.6.8)
    Заранее спасибо
     
  2. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    А в чем собственно сложность заключается? Простые проверки Если/ИначеЕсли.
    Т.е смотришь документ, ищешь в нем подбор цен и там уже вставляешь конкретное условие.
     
  3. Гость

    Я не очень понимаю где конкретно искать, но наверное справился бы.
    Встал вопрос - а может ли быть в документе на каждую строку свой тип цен?
    Пока что я вижу только тип цен на весь документ.
    У меня же получается что товар в количестве 1 шт отпускается по цене Розничная, а в количестве 1000 шт - по цене опт(999)
     
  4. kaa

    kaa Гость

    что вы все усложняете в ут прекрасный механизм со скидками и по количеству и по сумме покупки, как по отдельной номенклатуре так и по группам
     
  5. Гость

    Он не прекрасный!!!!
    цены и скидки округляются разным образом.
    Получаются разные конечные суммы на сайте и в базе.
    Именно механизм скидок у меня сейчас и реализован.
    Хочется усложнить, чтобы в итоге упростить жизнь.
    Не могу найти модуль, где выбирается тип цены.
    Перелопачивать всю систему программирования 1с нет времени, разработчики дерут страшные деньги за любой чих.
    Если кто-то сможет скинуть модуль, в который надо вносить изменения, и пометить, где писать - могло бы и получиться...
     
  6. tanat

    tanat Well-Known Member

    Регистрация:
    2 мар 2007
    Сообщения:
    265
    Симпатии:
    0
    а в настройках не пробовали поменять принципы округления чисел? Мое мнение - ничего менять не нужно, нужно все хорошо настроить.
     
  7. Гость

    Дело в том, что в качестве исходного материала при заполнении базы используется таблица цен, а не значения скидок.
    Соответственно, во бщем случае скидка, высчитанная по этой таблице, представляет собой значение с очень длинным десятичным хвостом, в том числе встречаются бесконечные непериодические дроби.
    Соответственно, на сайте сумма заказа рассчитывается как <цена единицы в зависимости от количества>*<количество>
    А в базе та же сумма рассчитывается как <розничная цена>*<количество> и к данному произведению применяется скидка от количества в документе.
    Расхождение невелико, но малоприятно.
    Я очень не хочу показаться неблагодарным, но простые методы решения проблемы уже опробованы и внедрены.
     
  8. kaa

    kaa Гость

    а каким образом идет обмен данными с сайтом, может сделать загрузку и пихать в документ те значения цен которые надо.
    Если нет то надо добавить реквизит в таб часть.

    Процедура ПриИзмененииКоличестваТовары(Элемент)

    СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;

    // Рассчитать реквизиты табличной части.
    ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект);


    //И ЗДЕСЬ НАДО ВСАТАВИТЬ ЗАПОЛНЕНИЕ РЕКВИЗИТА ЦЕНЫ И ТИПАЦЕН ТАБ Части

    // Рассчитать реквизиты табличной части.
    ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект);
    ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект);

    КонецПроцедуры //
     
  9. Гость

    Спасибо большое за реальную помощь.
     
Загрузка...

Поделиться этой страницей