партнер компании 1с-битрикс
сайт фрилансера Сергея Эстрина
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Универсальная галерея - модуль для битрикс
Это форум по решению для битрикс «Модуль Классификатор адресов.WEB (архив)».
Страницы: 1
Ответить
RSS
Вопрос по фильтрации по свойству "Адрес КЛАДР"
 
Подскажите как фильтровать ?


Код

$arrFilter["%PROPERTY_119"] = intval($_REQUEST["adress"]); формата "720000010000243" 

$arrFilter["=PROPERTY_119"
$arrFilter["PROPERTY_119.CODE"
$arrFilter["%PROPERTY_119.CODE"]   
$arrFilter["=PROPERTY_119.CODE"]


Что то не могу допереть
 
КАК ФИЛЬТРОВАТЬ?!?!??!?!?!?!
Неужели придётся использовать костыли?
PS у вас дурацкая capcha  
 
Спасибо Вам за быстрый и развёрнутый ответ.
Но может быть кому то будет полезно
Использую костыль
свойство и там ДУБЛЬ информации с CODE.
 
Антон, приношу свои извинения, уведомления с форума сломались, хостинг ввел внезапно новые ограничения на поле "От кого"   :(  

Фильтрация должна работать так
Код

$arrFilter["PROPERTY_119"] = "%720000010000243%";

Значение хранится в базе как сериализованный массив в котором код КЛАДР находится в поле с ключом CODE, от этого и нужно плясать.

Кстати, подобная тема уже обсуждалась здесь http://g-rain-design.ru/forum/forum1/topic22/

P.S. Каптчу поменял, вроде спаммеры сейчас подуспокоились, можно вылезать из окопа  :)
 
У меня проблема опять )

Код

SKladrEntry::GetZeroList("72000001");



нет улицы 72000001000026451, хотя по
Код

SKladrEntry::GetByCode("72000001000026451");

есть.
Вопрос: "Как вывести в все улицы?"
 
Посмотрев код SKladrEntry::GetZeroList идёт всё через SKladrEntry::GetList
А там приписывется "00" в LIKE
Моё решение.
Надеюсь Ваше то же появиться :)
Код

function getListStreet(){

      
$t='72000001000';
      global 
$DB;
      
$rsData $DB->Query("SEL ECT g_kladr_street_72.SOCR, g_kladr_street_72.NAME, g_kladr_street_72.CODE FR OM g_kladr_street_72 WHERE CODE LIKE '".$t."______' ORDER BY g_kladr_street_72.NAME;");
      return 
$rsData;
   }

   function 
getStreetList($for_select false){
      
$db_res getListStreet();
      
$arRes = array();
      while(
$res $db_res->Fetch()){
         if(!
$for_select)
            
$arRes[$res['CODE']] = formatAddress($res);
         else {
            
$arRes['reference_id'][] = $res['CODE'];
            
$arRes['reference'][] = formatAddress($res);
         }
      }
      return 
$arRes;
   }
 
Антон, обратите внимание на описание функции SKladrEntry::GetZeroList:
Цитата
Выдает все элементы НУЛЕВЫХ уровней
Вы заранее знаете что у вас есть таковые уровни? Вы должны сначала проверить, есть ли они при помощи функции SKladrEntry::IsNotEmptyZeroTree, если действовать через API.

Вообще это низкоуровневые функции, мне кажется, вам скорее подойдет SKladrEntry::SearchZip.
Страницы: 1
Ответить
Читают тему
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы