Skip to content

Instantly share code, notes, and snippets.

View kuntashov's full-sized avatar
🏠
Working from home

Alexander Kuntashov kuntashov

🏠
Working from home
View GitHub Profile
@kuntashov
kuntashov / bx-del-canceled-orders.php
Created June 22, 2018 08:19
Удаление отмененных заказов
<?php
CModule::IncludeModule('sale');
$res = $DB->Query("select ID from b_sale_order where CANCELED = 'Y' by id ASC LIMIT 500");
$count = 0;
while ($row = $res->Fetch()) {
CSaleOrder::Delete($row['ID']);
$count += 1;
}
//echo "Deleted $count orders"
@kuntashov
kuntashov / ОбъектМетаданныхКонфигурация.bsl
Created June 29, 2018 22:41
Примеры использования объектов ОбъектМетаданныхКонфигурация и ОписаниеОбновленияКонфигурации
// Получение метаданных конфигурации из внешнего файла:
ДанныеCF = Новый ДвоичныеДанные(ПутьККонфигурации);
МетаCF = Новый ОбъектМетаданныхКонфигурация(ДанныеCF);
// Получение метаданных расширения
ДанныеCFE = РасширенияКонфигурации.Получить()[0].ПолучитьДанные();
МетаCFE = Новый ОбъектМетаданныхКонфигурация(ДанныеCFE);
// И даже есть специальный объект для получения информации из *.cfu-файла обновления конфигурации:
ДанныеCFU = Новый ДвоичныеДанные(ПутьКОбновлению);
@kuntashov
kuntashov / downgrade_php_centos.sh
Created October 16, 2018 03:48
Downgrade PHP to 5.6 on BitrixEnv 7+ (CentOS 7)
service httpd stop
yum install php56
yum --enablerepo=remi-php56 install \
php56-php php56-php-pear php56-php-bcmath\
php56-php-pecl-jsond-devel php56-php-mysqlnd \
php56-php-gd php56-php-common php56-php-fpm \
php56-php-intl php56-php-cli php56-php php56-php-xml \
php-php-opcache php56-php-pecl-apcu php56-php-pecl-jsond \
@kuntashov
kuntashov / git_files_between.sh
Created January 29, 2019 08:09
GIT: Список файлов между двумя коммитами
#Получить список файлов, измененных между двумя коммитами.
git log --name-only --pretty=oneline --full-index COMMIT1..COMMIT1 | grep -vE '^[0-9a-f]{40} ' | sort | uniq
# Здесь
# COMMIT1 - первый коммит или тэг
# COMMIT2 - второй коммит или тэг, или, например, HEAD
git config --local core.pager "iconv -f cp1251 -t utf-8 | less"
@kuntashov
kuntashov / create_replace_button.js
Last active February 11, 2019 10:32
Создает в шапке веб-клиента 1С кнопку для замены определенного текста на всей странице
(function() {
function replaceAllText(searchValue, replaceValue) {
// Поиск
var xResult,
node,
xpath = "//text()[contains(., '" + searchValue + "')]";
xResult = document.evaluate(
@kuntashov
kuntashov / example.feature
Created February 17, 2019 14:40
Пример сценария на gherkin
Функционал: Выбор группы исполнителей в заказ-наряде
Я как мастер цеха
Хочу иметь возможность объединять сотрудников в группы (бригады)
И выбирать эти группы (бригады) в качестве исполнителей работ
Контекст:
Допустим, в справочнике Сотрудники есть группа "Бригада 1"
И в этой группе есть элементы:
"""
@kuntashov
kuntashov / ИмяПользователя.bsl
Created February 21, 2019 20:04
Странное поведение метода ИмяПользователя()
&НаСервере
Функция ИмяПользователяНаСервере()
Возврат ИмяПользователя();
Конецфункции
&НаКлиенте
Процедура Команда1(Команда)
@kuntashov
kuntashov / switch_php_version.sh
Created September 4, 2019 13:08
Переключить PHP 5.6 <=> 7.x на локальной машине
#!/bin/bash
# apache
sudo a2dismod php7.2
sudo a2enmod php5.6
sudo service apache2 restart
# cli
sudo update-alternatives --set php /usr/bin/php5.6
sudo update-alternatives --set phar /usr/bin/phar5.6
@kuntashov
kuntashov / bx_export_catalog_tree_to_1c.php
Last active May 26, 2020 09:19
Экспорт структуры товарного каталога для последующего импорта в настройку дерева каталогов в 1С
$CATALOG_IBLOCK_ID = 42;
////////////////////////////////////////////////////////////////////////////////
CModule::IncludeModule("iblock");
$arIBlock = CIBlock::GetByID($CATALOG_IBLOCK_ID)->Fetch();
echo "
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<Разделы>