партнер компании 1с-битрикс
сайт фрилансера Сергея Эстрина
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Универсальная галерея - модуль для битрикс
Это форум по решению для битрикс «Модуль Свойства-таблицы».
Страницы: 1
Ответить
RSS
Пустая строка при выгрузке из 1с
 
На сайте есть ряд вкладок отображаемых в зависимости от наличия или отсутствия в них данных.
При обмене с 1С происходит сохранение пустой строки в товаре, непонятно почему
 
Artes Aresov, да, я уже сталкивался с этой проблемой, именно с 1с она возникает, но как решить ее на уровне модуля так и не придумал пока.

Использовал вот такой костыль для решения (в данном примере 17 - ID свойства)

Код

AddEventHandler("iblock","OnBeforeIBlockElementAdd",Array("CGrain_1c_mutator","OnAdd"));


 class 
CGrain_1c_mutator {

   function 
OnAdd(&$arFields) {
   
      if(
         
$arFields["IBLOCK_ID"]==3
         
&& $GLOBALS["APPLICATION"]->GetCurPage()=="/bitrix/admin/1c_exchange.php"
      
) {
      
         if(
is_array($arFields["PROPERTY_VALUES"]) && array_key_exists(17,$arFields["PROPERTY_VALUES"]))
            unset(
$arFields["PROPERTY_VALUES"][17]); // Fixing table property weird bug

      
}
      
   }

}

Проблема связана с тем, что скрипт импорта из 1с обновляет все свойства, даже те, которых нет в файле xml выгрузки, а там скорее всего, появляется Array("VALUE"=>""), при сохранении которй интерпретируется в модуле как строка таблицы.
 
Исправлено в версии 3.0, приведенный код теперь нужен только в версиях модуля до третьей.
Страницы: 1
Ответить
Читают тему
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки