Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С Битрикс
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.96/23: Рейтинг темы: голосов - 23, средняя оценка - 4.96
Ukkas
152 / 125 / 39
Регистрация: 02.05.2012
Сообщений: 573
1

Настройка группы местоположений для службы доставки

27.02.2014, 11:27. Просмотров 4224. Ответов 6
Метки нет (Все метки)

Доброго времени суток.
Недавно начала заниматься битриксом, поэтому всех подводных камней не знаю. Хочу настроить несколько настраиваемых служб доставки. Для одной доставка будет по России и СНГ, для другой только Москва и МО. Создала две группы, в которых выделила соответствующие города и страны (они подсвечены серым). Затем службам доставки назначила соответствующие группы местоположений.
И после этого я ожидала, что на сайте при выборе радиобаттоном одной из служб доставки выпадающие списки городов будут формироваться исходя из списка местоположений, соответствующих этой службе. Но этого не произошло.
И вот вопрос: я не правильно настроила службы доставки или тут не все так волшебно и формирование выпадающих списков происходит в коде?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2014, 11:27
Ответы с готовыми решениями:

Настройка службы доставки
Доброго времени суток форумчане! Есть настраиваемые службы доставки: Есть...

Получение групп службы доставки
Здравствуйте, возможно ли получить этот список групп ?

Получить имя группы для службы
Привет, я с помощью функции EnumServiceStatusEx получаю все службы, в структуре...

Команда sc config (настройка службы)
Здравствуйте, хочу запустить через командную строку службу telnet и использую...

Настройка службы SQL Mail
Привет всем. Создается почтовый профиль, но при запуске SQL Mail появляется...

6
Itachi261092
Веб-Разработчик
79 / 79 / 9
Регистрация: 23.01.2012
Сообщений: 700
27.02.2014, 11:34 2
Ukkas, смею предположить что для подобного функционала требуется модификация шаблона компонента который выводит на страницу эти службы. напишите каким способом происходит этот вывод
0
Ukkas
152 / 125 / 39
Регистрация: 02.05.2012
Сообщений: 573
27.02.2014, 11:54  [ТС] 3
Itachi261092, всю простыню из разных файлов выкладывать наверно не стоит. Вот кусочек, который формирует эти списки
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$GLOBALS["APPLICATION"]->IncludeComponent(
                            'bitrix:sale.ajax.locations',
                            '',
                            array(
                                "AJAX_CALL" => "N",
                                "COUNTRY_INPUT_NAME" => "COUNTRY_".$arProperties["FIELD_NAME"],
                                "CITY_INPUT_NAME" => $arProperties["FIELD_NAME"],
                                "CITY_OUT_LOCATION" => "Y",
                                "LOCATION_VALUE" => $value,
                                //"ONCITYCHANGE" => "",
                                "ONCITYCHANGE" => ($arProperties["IS_LOCATION"] == "Y" || $arProperties["IS_LOCATION4TAX"] == "Y") ? "cityChange(this.value)" : "",
                            ),
                            null,
                            array('HIDE_ICONS' => 'Y')
                        );
и функция js, которая отвечает за отображение нужных радиобаттонов
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function cityChange(val)
        {
            // Массив с ID городов Москвы и области
            var cities_moscow = ["51","80","143","995","1006","1020","1028","1039","238","187","214","196","200","202","206","207","1054","1101","1112","1085","1120","280","277","319","364","365","374","389","396","409","408","411","422","423","432","443","474","479","482","484","490","492","549","547","558","564","600","644","672","673","657","679","684","707","730","737","735","744","747","751","759","792","794","849","873","883","908","225","336","339","169","161","813","818","215","216","217","1067","1043"];
            
            // Проверяем города из списка
            if(cities_moscow.indexOf(val) != -1) {
                $('#ID_DELIVERY_ID_3').parent().parent().show();
                $('#ID_DELIVERY_ID_4').parent().parent().show();
                //$('#ID_DELIVERY_ID_3').prop('checked', true);
                //document.getElementById('SELF_DELIVERY_3').style.display = '';
            } else {
                $('#ID_DELIVERY_ID_5').prop('checked', true);
                $('#ID_DELIVERY_ID_3').parent().parent().hide();
                $('#ID_DELIVERY_ID_4').parent().parent().hide();
                document.getElementById('SELF_DELIVERY_3').style.display = 'none';
                Dialog.Show();
            }
        }
P.S. Функция эта реализует обратную задачу: если сначала выбрали курьера, а потом выбрали город не Москва и МО, то пользователю сообщают, что он может воспользоваться только почтой.
P.P.S. Список с айдишниками городов меня тоже очень смущает
0
Itachi261092
Веб-Разработчик
79 / 79 / 9
Регистрация: 23.01.2012
Сообщений: 700
27.02.2014, 12:31 4
Цитата Сообщение от Ukkas Посмотреть сообщение
"LOCATION_VALUE" => $value,
не увидел где объявлена такая переменная. пример был взят отсюда https://dev.1c-bitrix.ru/user_help/s..._locations.php и просто скопирован на страницу?
Цитата Сообщение от Ukkas Посмотреть сообщение
"CITY_OUT_LOCATION" => "Y",
советую попробовать поставить N, и вообще, открыть на сайте и посмотреть настройки. сейчас сам посмотрю на тестовм магазе
0
Ukkas
152 / 125 / 39
Регистрация: 02.05.2012
Сообщений: 573
27.02.2014, 12:39  [ТС] 5
Itachi261092, откуда появился этот код - я не знаю) Автор неизвестен, его задумки тоже, но от меня требуется внести туда правки.
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
elseif ($arProperties["TYPE"] == "LOCATION")
                    {
                        $value = 0;
                        foreach ($arProperties["VARIANTS"] as $arVariant) 
                        {
                            if ($arVariant["SELECTED"] == "Y") 
                            {
                                $value = $arVariant["ID"]; 
                                break;
                            }
                        }
                        $GLOBALS["APPLICATION"]->IncludeComponent(
                            'bitrix:sale.ajax.locations',
                            '',
                            array(
                                "AJAX_CALL" => "N",
                                "COUNTRY_INPUT_NAME" => "COUNTRY_".$arProperties["FIELD_NAME"],
                                "CITY_INPUT_NAME" => $arProperties["FIELD_NAME"],
                                "CITY_OUT_LOCATION" => "Y",
                                "LOCATION_VALUE" => $value,
                                //"ONCITYCHANGE" => "",
                                "ONCITYCHANGE" => ($arProperties["IS_LOCATION"] == "Y" || $arProperties["IS_LOCATION4TAX"] == "Y") ? "cityChange(this.value)" : "",
                            ),
                            null,
                            array('HIDE_ICONS' => 'Y')
                        );
                    }
$value все таки есть.

попробовала с N, ничего не изменилось.

P.S. Но зато я нашла откуда тянутся списки городов. Сижу изучаю $arProperties["VARIANTS"]
0
Itachi261092
Веб-Разработчик
79 / 79 / 9
Регистрация: 23.01.2012
Сообщений: 700
27.02.2014, 12:53 6
Ukkas, насколько я понял этот код вызывается в коде шаблона компонента bitrix:sale.order.full https://dev.1c-bitrix.ru/user_help/s...order_full.php
Я сам несколько раз так же чужие наработки пытался допиливать. это проблематично. особенно когда у самого знания не очень в этой области.
Раньше это работало нормально? А материал по теме был изучен? http://dev.1c-bitrix.ru/learning/course/?COURSE_ID=42&LESSON_ID=3074
1
Ukkas
152 / 125 / 39
Регистрация: 02.05.2012
Сообщений: 573
27.02.2014, 13:55  [ТС] 7
Itachi261092, про компонент почитаю. Материал да, прочитала, по нему и настраивала службы доставки.
Раньше, как пока и сейчас, это вообще было не реализовано, т.е. списки выводились полностью, не смотря на выбранный способ доставки.
А этот сайт, самописные шаблоны компонентов к нему и битрикс в целом я увидела только чуть больше недели назад. И теперь разбираюсь)
0
27.02.2014, 13:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2014, 13:55

VM 2.х Оформление заказа - "Область-->Город-->Способ доставки-->Место доставки"
Задача состоит в том чтобы сделать два дополнительных выпадающих списка (Способ...

Приложение для доставки еды с выводом суммы для оплаты
Помогите! не могу сделать лабораторную, нужно чтобы были таблицы "клиенты" и...

Программа для сайта доставки суши
Всем привет. Ребят,помогите. Нужно написать приложение с нуля,для сайта...


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

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

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