Ошибка конвертации единиц измерения при обмене с 1с

1

При обмене с 1с и установке цены на сайте не верно фомируется цена. Если в 1с основная единица измерения указана упаковки, после обмена цена на сайте получается цена за упаковку в 1с умноженная на коэфициент единицы измерения упаковки. Например цена за штуку в 1с указана 10 рублей, за упаковку 100 рублей(коэфициент 10) на сайте получаем цену 1000 неизвестно вообще за что, так как нет единиц измерения, и не понятно как заказ вообще придет обратно в 1с.

4 комментария

  • +1
    Владислав Горлов Владислав Горлов Webasyst 20 октября 2015 10:37 #

    А какую цену вы экспортируете в магазин?

    По умолчанию используется цена, обозначенная как розничная, единица измерения остатков не учитывается (и пожеланий по её использованию озвучено, насколько я помню, не было).

    И, если не сложно, было бы полезно увидеть кусок файла обмена, в котором эти цены и размерности описываются.

    • +1

      Цена экспортируется розничная. Куда выслать файл обмена?

      По поводу единиц измерения остатков - я понимаю, что это чисто программистский подход, но любая система складского учета завязана на единицах измерения ))) по сути дела, интернет магазин так же представляет собой складской учет в самом конечно простейшем его понимании )

      Куда лучше выслать файлы обмена?

      • +1
        Владислав Горлов Владислав Горлов Webasyst 20 октября 2015 11:15 #

        В поддержку.

        На стороне магазина единица измерения остатков поддерживается одна. Визуально её можно дополнить на основе параметров/характеристик товаров.

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

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

        При наличии доступа к коду исправляется заменой

        $value *= $k;

        на


        $value = $value/$k;

        искать по строке


        if ($k = self::field($p, 'Коэффициент', 'doubleval')) 
        • +1

          Как временное решение попробую вашу таблетку.

          На неделе изучу эти позиции в файле обмена и отпишусь в поддержку с ссылкой на вас. Может выработаем какую-то более менее универсальную формулу.

          Добавить комментарий

          Чтобы добавить комментарий, зарегистрируйтесь или войдите