Буфер обмена БСП

В БСП реализован универсальный механизм – БуферОбмена, и он никак не связан с буфером обмена ОС. Он принимает любые данные, сохраняет их во временное хранилище, а адрес временного хранилища записывает в параметр сеанса БуферОбмена. Механизмом можно пользоваться для передачи данных в коде без возможности передать напрямую адрес временного хранилища. В типовых конфигурациях используется для передачи строк табличных частей и вложенных файлов.

ОбщегоНазначения.СкопироватьВБуферОбмена(Данные);
БуферОбмена = ОбщегоНазначения.СтрокиИзБуфераОбмена();
Данные = БуферОбмена.Данные;

Параметры командной строки 1С:Предприятие

Параметры выбора режима запуска

Одновременное использование параметров из приведённой ниже таблицы не допускается.
DESIGNER  (CONFIG в 8.0) Запуск в режиме Конфигуратора.
ENTERPRISE   Запуск в режиме Предприятия.
CREATEINFOBASE [/AddInList [ИмяИБ]] [/UseTemplate [имя файла шаблона]]  

Читать далее «Параметры командной строки 1С:Предприятие»

Как сменить режим IDE на AHCI в Windows 7

Если вы установили Windows 7 на компьютер, где SATA контроллер работает в режиме IDE, то для того, чтобы без проблем работать в AHCI режиме, придется провернуть некоторые манипуляции с реестром.
Если же просто попробовать сменить в BIOS’e материнской платы режим контроллера с IDE на AHCI, то загрузка системы приведет к синему экрану смерти, так как система не будет автоматически подгружать драйвер под AHCI.

Читать далее «Как сменить режим IDE на AHCI в Windows 7»

Удаление старых резервных копий (Немножко Python-а)

Появилась тут маленькая задача по администрированию резервных копий 1С на отдельном FTP сервере. Каждую ночь на него загружаются резервные копии баз нескольких клиентов. Сами копии создаются программами Cobian Backup и Cobian Reflector. Раньше удалял старые копии руками, чтобы не забивался под завязку HDD, но после пятой такой зачистки надоело.

Читать далее «Удаление старых резервных копий (Немножко Python-а)»

Импорт OVA контейнеров в PROXMOX

Разархивируем образ OVA:

tar -xvf *.ova

Конвертируем образ .VMDK в .QCOW2

Основной образ виртуальной машины в формате .vmdk. Proxmox уже умеет с ним работать, но лучше конвертировать его в более привычный для гипервизора .qcow2 встроенной утилитой:

qemu-img convert -f vmdk image_vm-disk1.vmdk -O qcow2 image_vm-disk1.qcow2

Создаем новую виртуальную машину Proxmox и импортируем в нее нужный нам образ

Все что остается сделать, это создать новую виртуальную машину без CD-ROM и с любым виртуальным диском.

Далее, отключаем и удаляем виртуальный диск созданный по умолчанию и импортируем в виртуальную машину необходимый нам виртуальный диск .qcow2 встроенной утилитой:

qm importdisk 216 image_vm-disk1.qcow2 local-lvm

Где:

216 – номер виртуальной машины, в которую мы импортируем диск

local-lvm – хранилище Proxmox, в которое мы импортируем диск

В конце присоединяем виртуальный диск к машине с нужными параметрами через стандартный веб-интерфейс

Не забудьте зайти в Options – Boot Order и поставить загрузку с подключенного образа:

Работа с планировщиком

Первым делом ссылки на ресурсы:
– Заметки из зазеркалья (http://v8.1c.ru/o7/index.htm
– Планировщик (http://v8.1c.ru/o7/20140401plan/index.htm)  

Результат заполнения планировщика выглядит так:

В строках видим время работы магазинов (с 9 до 18).
По колонкам: группы Магазинов и Продавцов. 

Основная форма планировщика

Основные свойства планировщика для его программного заполнения:
– ТекущиеПериодыОтображения (тут можно указать рабочее время магазинов)
– Измерения (группировки: Магазин, Продавец)
– Элементы (сами заметки по измерениям)

Во вложенной dt только необходимый набор объектов (пару справочников, констант, общих модулей и регистр сведений), который потребуется для настройки простейшего планировщика. Естественно, фантазия 1С-ника велика, и на реализацию дополнительного функционала нужно больше времени. К примеру, вот эта подсистема: //tf21.ru/public/333366/

Еще раз повторюсь, что тут описаны только азы.

Итак. Приступим.

ТекущиеПериодыОтображения заполняются так (тут всё просто, поэтому описывать комментариями думаю не нужно Wink):

Планировщик.ТекущиеПериодыОтображения.Очистить();
Планировщик.ТекущиеПериодыОтображения.Добавить(ПериодОтображенияНачало, ПериодОтображенияКонец);

Измерения можно заполнить таким образом:

    // Инициализируем измерения планировщика
    ИзмеренияПланировщика   = Планировщик.Измерения;
    ИзмеренияПланировщика.Очистить();

    #Область Заполнение_магазинов
    // Создание группы Магазины
    ИзмерениеМагазины       = ИзмеренияПланировщика.Добавить(“Магазины”);
    Пока ВыборкаМагазинов.Следующий() Цикл

        // Добавление магазинов в группу Магазины
        НовыйМагазин = ИзмерениеМагазины.Элементы.Добавить(ВыборкаМагазинов.Магазин);
        НовыйМагазин.Текст = ВыборкаМагазинов.Магазин.Наименование;

    КонецЦикла;
    #КонецОбласти

    #Область Заполнение_продавцов
    // Создание измерения Продацы
    ИзмерениеПродавцы       = ИзмеренияПланировщика.Добавить(“Продавцы”);
    Пока ВыборкаПродавцов.Следующий() Цикл

        // Заполнение измерений продавцы
        НовыйПродавец = ИзмерениеПродавцы.Элементы.Добавить(ВыборкаПродавцов.Продавец);
        НовыйПродавец.Текст = ВыборкаПродавцов.Продавец.Наименование;

    КонецЦикла;
    #КонецОбласти

А вот так добавляем Элементы (записи в планировщике):

    // Инициализация элементов планировщика (записи по измерениям)
    ЭлементыПланировщика = Планировщик.Элементы;
    ЭлементыПланировщика.Очистить();

    Пока РезультатПланы.Следующий() Цикл

        // Связка записей с измерениями выполняется через соответствия
        СоответствиеЗначений = Новый Соответствие;
        СоответствиеЗначений.Вставить(“Магазины”,   РезультатПланы.Магазин);
        СоответствиеЗначений.Вставить(“Продавцы”,   РезультатПланы.Продавец);

        РазницаВремениНачало    = РезультатПланы.ВремяС     – НачалоДня(РезультатПланы.ВремяС);
        РазницаВремениКонец     = РезультатПланы.ВремяПо    – НачалоДня(РезультатПланы.ВремяПо);

        Начало  = НачалоДаты + РазницаВремениНачало;
        Конец   = НачалоДаты + РазницаВремениКонец;

        // Добавление новой записи в промежуток времени
        НовыйЭлемент = ЭлементыПланировщика.Добавить(Начало, Конец);
        НовыйЭлемент.ЗначенияИзмерений  = Новый ФиксированноеСоответствие(СоответствиеЗначений);
        НовыйЭлемент.Текст              = РезультатПланы.Задание;

    КонецЦикла;

После того мы разобрались с заполнением, можно показать итоговый вид с заполненным регистром сведений Дни работы (в котором регистрируем рабочее время сотрудников)

Начальная страница с планировщиком

Темы форума где обсуждался планировщик и решались реальные задачи:

http://forum.infostart.ru/forum86/topic134559/

Условное оформление горизонтальных итогов без использования макетов

Способ условного оформления горизонтальных итогов без использования макетов и программной постобработки результата компоновки.

     Недавно, к своему удивлению, я столкнулся с невозможностью штатно оформить горизонтальные общие итоги в соответствии с требованиями заказчика. Требовалось всего ничего: выделить жирным шрифтом и раскрасить значения ресурсов горизонтальных итогов в зависимости от условий. На первый взгляд, ничего не предвещало сложностей. Вот так было нужно сделать:

Условное оформление в СКД содержит область использования “В общем итоге”, но эта настройка, как оказалось, распространяется только на вертикальные общие итоги, а с горизонтальными – не работает, поэтому первая попытка настроить условное оформления привела к следующему результату (вертикальные общие итоги вывел только для примера, в реальном отчете они были не нужны).

Все мои попытки заставить систему раскрасить горизонтальные общие итоги, как нужно, не увенчались успехом. Поиск также не дал приемлемого результата – из того, что мне удалось найти – люди либо пользовались макетами компоновки, либо программно обрабатывали табличный документ, получившийся в результате компоновки. То ли плохо искал, то ли проблема не слишком актуальная, но, в любом случае, эти варианты меня по ряду причин не воодушевляли и я нашел-таки другой способ, который предлагаю к использованию.

Суть способа:

1) добавить в схему вычисляемое поле “ОбластьОбщихИтогов” (можно задать любое имя).

2) Поле перенести в ресурсы и по-разному рассчитывать его в группировках и общих итогах

3) Наконец, использовать это поле в отборе условного оформления, совместно с основным условием, для раскраски полей отчета (область использования следует оставить “Везде”, вместо “Общий итог”)

Результатом данных манипуляций, является корректно оформленная область общих итогов.

Репозиторий Proxmox

File /etc/apt/sources.list

deb http://ftp.debian.org/debian bullseye main contrib
deb http://ftp.debian.org/debian bullseye-updates main contrib

# PVE pve-no-subscription repository provided by proxmox.com,
# NOT recommended for production use
deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription

# security updates
deb http://security.debian.org/debian-security bullseye-security main contrib