На главнуюКонтактыКарта сайта
В коробке инженера
В коробке инженера
Обзоры программ, интересных блогов и программирование
Заметки о Rastrwin, Matlab
  • Twitter Colee

ПО Rastrwin: комплекс OpenSaveD для работы с комплектами рабочих файлов

Автор: colee | Рубрика: Программы » Rastrwin
Воскресенье, 5 января 2014 г.
Теги: , , Просмотров: 3126

Сегодня хочу предложить, на мой взгляд, очень полезную вещь: пакетное сохранение файлов (комплект). В свое время эта идея была предложена на форуме растра. В итоге (с версии 1.6 Rastr3) пользователи получили возможность создавать и редактировать пакеты файлов, которые представляют из себя набор рабочих файлов:

Работа с пакетами

Все было бы ничего, если бы по умолчанию эти пакеты были бы архивами. Но после сохранения с расширением rsln пакет представляет из себя xml файл с указанием на файлы.

rsln файл

Хотя, отмечу, что из-под редактора можно сохранить пакет в архив, только вот обратного импорта из архива не предусмотрено.

Комплекс OpenSaveD, как раз, и должен решить следующие маленькие проблемы:

  • автоматическое открытие/сохранение в пакет файлов и их шаблонов
  • автоматическое определение шаблона по типу файла
  • создание истории работы с файлами (*)

Тут стоит упомянуть про одно допущение (*). В Rastr есть механизм получения текущих рабочих файлов, но в Rastr3 не работает. Поэтому пока в программе не устранят эту ошибку, то работа с комплексом будет во многом сводится именно к истории последних файлов. Для версий Rasrt2 надо доработать комплекс с учетом работы механизма получения текущих файлов.

Итак, комплекс состоит из 5 файлов:

  1. Открыть по шаблону.rbs
  2. Сохранить по шаблону.rbs
  3. Сохранить пакет файлов.rbs
  4. Очистить историю последних файлов.rbs
  5. Экспорт файлов из пакета.rbs

комплекс OpenSaveD

Очищаем рабочую область в растре (Файлы - Новый - Очистить Все) для чистоты эксперимента

Команда очистить Все

Используем макрос Открыть по шаблону.rbs

Макрос Открыть по шаблону.rbs

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

После нажатия кнопки Открыть видим подключение файлов в программе

Загрузка выбранных файлов

После открытия будет создан файл по адресу Мои документы - Rastrwin3 - opensaveopt.ini, который и отвечает за историю открытых файлов, представляет из себя текстовый файл с указанием текущего файла и текущего шаблона

Файл opensaveopt.ini

Изменим данные в таблице Узлы (добавим 4 строку) в файле

Добавление данных в Узлы

и сохраним файлы через макрос Сохранить по шаблону.rbs

Макрос Сохранить по шаблону.rbs

После очистки рабочей области удостоверимся в сохранении файлов, загрузим файлы заново

Проверка на сохранение файлов

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

Макрос Сохранить </li>
<p>по шаблону.rbs

После сохранения пакета видим в протоколе

Протокол после сохранения пакета

При этом в историю последних файлов (opensaveopt.ini) записался пакет вместо группы файлов

Файл opensaveopt.ini после сохранения пакета

На диске файл представляет собой обычный zip архив c сохраненными файлами и шаблонами

Состав файла Тестовый пакет.fll

Очистим рабочую область и попробуем открыть пакетный файл с помощью макроса Открыть по шаблону.rbs

Загрузка тестового пакета

Проверим результат

Проверка тестового пакета

Введем изменения в таблицу Узлы (6 строка)

Ввод информации в таблицу Узлы

и сохраним с помощью макроса Сохранить по шаблону.rbs

Протокол после сохранения пакета

Опять тестируем пакет: очищаем рабочую область, и загружаем пакет с помощью макроса Открыть по шаблону.rbs

Загрузка тестового пакета

Вроде, все пока работает. Теперь создадим файл контрольных величин (Файлы - Новый - контр-е величины.kpr), внесем информацию по КВ и сохраним через меню обычного сохранения как test1.kpr. Чтобы комплекс OpenSaveD знал о файле, он должен попасть в историю открытых файлов (opensaveopt.ini), поэтому воспользуемся макросом Открыть по шаблону.rbs

В результате файл opensaveopt.ini будет такой

Состав файла opensaveopt.ini

Сохраняем новый пакет с помощью макроса Сохранить пакет файлов.rbs

Сохранение тестового пакета 2

И смотрим на диске сохраненный пакет

Состав тестового пакета 2

И напоследок:

  • макрос Очистить историю последних файлов.rbs удаляет файл истории последних файлов (opensaveopt.ini), нужен для работы с новым набором файлов;
  • макрос Экспорт файлов из пакета.rbs используется для выгрузки файлов из пакета и работы с ними напрямую.

Стоит упомянуть про наличие настроек в самих макросах:

Настройки макросов

Комплекс OpenSaveD одним файлом

OpenSaveD.zip 0

Установка: кидаем папку из архива в Мои документы - Rastrwin3 - macro, выносим на панель инструментов по необходимости, доступны как обычные макросы в меню Расчеты - Выполнить - OpenSaveD

В общем, успехов в работе.. в новом-то году подмигнуть

UPD1: На некоторых машинах код может не заработать со следующей ошибкой "Класс не лицензирован для использования". Для того, чтобы все заработало, нужно установить бесплатный VB5 CCE (Microsoft Visual Basic 5 Control Creation Edition) VB5_CCE_install.zip 0


Поделиться с друзьями:
twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru digg.com blogger.com livejournal.ru google.com yandex.ru del.icio.us
Оставьте комментарий!

Используйте нормальные имена

Ваш E-mail не публикуется, используется для обратной связи и для выбора аватара с сайта gravatar.com

Публикуется вместе с комментарием

усмешка LOL сыр улыбка подмигнуть ухмылка глаза в сторону в тупике удивление большое удивление малинка пустое лицо сдвинутая бровь Оо гррр ох ох неудачник смущенный больной Тау хммм бешенный злой клевый поцелуй шок крутой недовольный

Запрещается оскорблять окружающих и использовать ненормативную лексику

Вы должны включить JavaScript, чтобы оставить сообщение