Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С Битрикс
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
Alena2208
1 / 1 / 0
Регистрация: 13.03.2015
Сообщений: 6
1

Мистическая смена цен на товар в интернет-магазине

13.03.2015, 18:46. Просмотров 1218. Ответов 2
Метки нет (Все метки)

Добрый день, Уважаемые специалисты. Зайдя сегодня в админку интернет-магазина, обнаружила, что на ряд товаров изменились цены. Дата изменения одна и та же у каждой позиции. Магазин пока не привязан к 1С, по этому цены автоматически подтянуться не могли. Кроме меня, к админке имеют доступ директор магазина, и еще один рядовой сотрудник. Никто из них не признаётся в содеянном, а я целый день сижу, и исправляю ситуацию, так как цены теперь ниже чем закупочные. Товаров много, по этому потратила я на это весь рабочий день.
Скажите мне, как человеку не особо сведущему в данном вопросе, есть ли вероятность того, что цены изменились сами собой, без посторонней помощи?Я в этом очень сильно сомневаюсь, но всё же.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2015, 18:46
Ответы с готовыми решениями:

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

Оплата в интернет-магазине
Привет, форумчане! Сразу к делу: есть интернет-магазин на голом PHP, но на...

Отображения товаров в интернет магазине
Добрый день. Есть такая проблема. В интернет магазине, при подборе товаров по...

Параметры товара в интернет-магазине
Здравствуйте! С Новым годом! У меня интернет-магазин одежды, сделан на...

Изменение карточки товара в интернет-магазине
Люди подскажите плиз, уже всю голову сломал, где поменять в карточке товара...

2
skremet
58 / 58 / 8
Регистрация: 16.07.2010
Сообщений: 273
18.03.2015, 12:41 2
Alena2208, Думаю вам нужен священник. Барабашку, надо прогнать.
Ну а если серьезно, то теоретически возможно изменить цены и без админки.
Но для этого нужно использовать на любой страничке сайта небольшой скриптик с API PriceUpdate.
----------------------------
К примеру у меня в /bitrix/php_interface/init.php находится скриптик API который при установке цен на товар присваивает цену ко всем торг. предложениям для этого товара. И если установлена наценка то она будет суммироваться для торг предложения.
----------------------------
Это просто как пример
----------------------------
Раньше хотел сделать пересчет всех позиций на сайте при заходе на определенную страницу (Которая доступна конечно же только админам)
Код на одну позицию
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
/**
 * $IBLOCK_ID = 10 -- сам товар в каталоге товаров;(это каталог товаров)
 * $IBLOCK_ID = 11 -- здесь ценовые предложения по товару( торговые предложения по товару);(это торговые предложения)
 */
 
if (CModule::IncludeModule('iblock')) {
//$arSelect = Array("*");
//$arFilter=array('IBLOCK_ID' => 11,  'PRICE_PLUSUEM' => $res['ID']);
//$res = CCatalog::GetList();
    $arSelect = "";
    $arFilter = "";
    $arSort = Array("ID" => "ASC");
    $arSelect = Array("ID", "IBLOCK_ID", "NAME");
    $res = CIBlockElement:: GetList($arSort, $arFilter, false, false, $arSelect);
    $price_t = 0;
    $price_n = 0;
    
 
    while ($ob = $res->GetNextElement()) {
 
        $arFields = $ob->GetFields();
        $id = ($arFields[ID]);
 
        $price_n = Nacenka($id);
        //берем цену только с каталога
        if ($arFields["IBLOCK_ID"] == 10) {
            $price_t = Pricex($id);
        }
 
        if ($id > 716 and $id< 721 and $price_t > 0) {
            // print_rx($arFields);
            $price_n = Nacenka($id);
            $price_r = $price_t + $price_n;
            echo $arFields['NAME']."-" . $price_r . "<br/>";
            Ustanovi_cenu($id , $price_r);
        }
 
    }
}
 
/**
 * Здесь цена
 * @param $id
 * @return int
 */
function Pricex($id)
{
    $PRICE_TYPE_ID = 1;
    $PROD_ID = $id;
    $rsPrices = CPrice::GetList(array(), array('PRODUCT_ID' => $PROD_ID, 'CATALOG_GROUP_ID' => $PRICE_TYPE_ID));
    if ($arPrice = $rsPrices->Fetch()) {
        $cn = $arPrice["PRICE"];
        //CurrencyFormat($arPrice["PRICE"], $arPrice["CURRENCY"]);
        return $cn;
    } else {
        //если нет цены то 0
        return 0;
    }
}
 
/**
 * здесь выбираем наценку
 * @param $id
 * @return array
 */
function Nacenka($id)
{
    $VALUES = array();
    $BRAND_ID = $id;
    $res = CIBlockElement::GetProperty(11, $BRAND_ID, "asc", "", array("CODE" => "PRICE_PLUSUEM"));
    if ($ob = $res->Fetch()) {
        $VALUES = $ob['VALUE'];
    }
    /* while ($ob = $res->GetNext()) {
 
          $VALUES[] = $ob['VALUE'];
 
          //print_rx($VALUES);
 
      }*/
    return $VALUES;
}
 
/**
 * Установка цены в торговые предложения
 * @param $id ид товара
 * @param $price_r новая цена с наценкой
 */
function Ustanovi_cenu($id, $price_r)
{
 
// Установим для товара с кодом 15 цену типа 2 в значение 29.95 USD
    $PRODUCT_ID = $id;
    $PRICE_TYPE_ID = 1;
 
    $arFields = Array(
        "PRODUCT_ID" => $PRODUCT_ID,
        "CATALOG_GROUP_ID" => $PRICE_TYPE_ID,
        "PRICE" => $price_r,
        "CURRENCY" => "RUB",
        "QUANTITY_FROM" => 1,
        "QUANTITY_TO" => 10
    );
 
    $res = CPrice::GetList(
        array(),
        array(
            "PRODUCT_ID" => $PRODUCT_ID,
            "CATALOG_GROUP_ID" => $PRICE_TYPE_ID
        )
    );
 
    if ($arr = $res->Fetch()) {
        CPrice::Update($arr["ID"], $arFields);
    } else {
        CPrice::Add($arFields);
    }
 
}
 
/**
 * Вспомогательная функция вывода значений
 * @param $arx
 */
 
function print_rx($arx)
{
    echo " <pre>";
    var_dump($arx);
    echo " </pre> ";
}
 
require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/footer.php");
1
Alena2208
1 / 1 / 0
Регистрация: 13.03.2015
Сообщений: 6
19.03.2015, 10:26  [ТС] 3
Спасибо за ответ)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2015, 10:26

Количество товара на складе в Интернет-магазине
Не могу указать количество товара на складе: неактивно поле введения значения....

Разные цены в интернет-магазине Битрикс
Есть магазин на 1С-Битрикс редакция Бизнес есть 1С Управление торговлей ред....

Настройка и допиливание корзины в интернет магазине
Разрабатывается интернет-магазин, проект первый так что знания нулевые. Отсюда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru