Архив рубрики: FAQ

Битрикс глобальное изменение кодировок таблиц в базе данных

Зайдите в Рабочий стол / Настройки / Инструменты / Командная PHP-строка

и выполните

$needCollation = 'utf8_general_ci'; // укажите здесь нужную кодировку

$res = $DB->Query('SHOW TABLE STATUS');
while($ts = $res->fetch()) {
    if ($ts['Collation'] != $needCollation) $DB->Query('ALTER TABLE `' . $ts['Name'] . '` DEFAULT CHARACTER SET utf8 COLLATE ' . $needCollation);

    $r2 = $DB->Query('SHOW FULL COLUMNS FROM ' . $ts['Name'] . ' WHERE Collation IS NOT NULL');
    while($col = $r2->fetch()) {
   if ($col['Collation'] != $needCollation) $DB->Query('ALTER TABLE `' . $ts['Name'] . '` CHANGE `' . $col['Field'] . '` `' . $col['Field'] . '` ' . $col['Type'] . ' CHARACTER SET utf8 COLLATE ' . $needCollation . ($col['Null'] == 'NO' ? ' NOT' : '') . ' NULL');
    }
}

Битрикс валюта цены содержащая не латинские буквы.

Частая проблема когда в конфигурациях 1с8 для Росии,Украины или Белоруссии в названии валюты содержится кириллица, что не приемлемо для битрикс, при обмене возникает ошибка / При импорте встретилась валюта цены содержащая не латинские буквы. Цена была импортирована с валютой RUB.

Читать далее Битрикс валюта цены содержащая не латинские буквы.

Как получить мета теги через апи Битрикс

Это касается 14-ой версии битрикс, когда в поставку включили сео модуль.

Читать далее Как получить мета теги через апи Битрикс

1с8.2 получить выделенные строки из динамического списка

Кто пробовал получить данные с динамического списка меня поймет — это большой геморой. Для себя я нашел два пути решения первый  — это выгребать данные через выделенные строки (самый простой), второй — создать  аналогичный динамическому списку запрос  и в него указать параметры отбора указанные пользователем, но это не работает если пользователь решит фильтрануть пользуясь поиском.

Читать далее 1с8.2 получить выделенные строки из динамического списка

1с8 пример запроса с условием

ВЫБРАТЬ
ТоварыВРозницеОстатки.Номенклатура,
ТоварыВРозницеОстатки.Склад,
ТоварыВРозницеОстатки.КоличествоОстаток,
ЦеныАТТСрезПоследних.Цена КАК Цена,
ВЫБОР
КОГДА (ТоварыВРозницеОстатки.КоличествоОстаток ЕСТЬ NULL )
ТОГДА "Безцены"
КОНЕЦ КАК Результат
ИЗ
РегистрНакопления.ТоварыВРознице.Остатки КАК ТоварыВРозницеОстатки
Правое СОЕДИНЕНИЕ РегистрСведений.ЦеныАТТ.СрезПоследних КАК ЦеныАТТСрезПоследних
ПО ЦеныАТТСрезПоследних.Номенклатура = ТоварыВРозницеОстатки.Номенклатура

1c8 УТ как получить значение настройки пользователя

Например, нижеописанной функцией  получаем значение настройки основной тип цен продажи

Функция ПолучитьРозничныйТипЦенПользователя () Экспорт 
ОсновнойТипЦенПродажи = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойТипЦенПродажи");	
Если ОсновнойТипЦенПродажи = Справочники.ТипыЦенНоменклатуры.ПустаяСсылка() Тогда 
Сообщить("Необходимо заполнить роничный тип цен в настройках пользователя");
КонецЕсли;
Возврат	ОсновнойТипЦенПродажи;	
КонецФункции

1c8 как программно добавить значение доп свойства

У заказчика интернет магазин на 1с-битрикс и УТ (обычное приложение), операторы заказчика не верно завели значения нескольких свойств (значений под несколько тысяч).

Задача стояла следующая, необходимо завести новые свойства с типом данных число и перевести на них значение с других свойств типом данных Значения свойств объектов.

Читать далее 1c8 как программно добавить значение доп свойства

1с8 Установить отбор в форме выбора (Управляемое приложение)

Устанавливаем отбор по двум полям операция и валюта.

Читать далее 1с8 Установить отбор в форме выбора (Управляемое приложение)