gifts2017

Подсистема ViewValues (просмотр "табличных" объектов). Версии для 1С:Предприятие-8.x и для 1С:Предприятие-7.7

Опубликовал Юрий Осипов (yuraos) в раздел Программирование - Инструментарий

Сервис просмотра объектов, представляющих из себя таблицы или списки разного рода. Подсистема предназначена в основном для целей отладки и особенно актуальна для платформы 1С-7.7, так как в отладчике 1С-7.7 отсутствуют средства для просмотра таких объектов. Для платформы 1С-8.х подсистема также полезна: предоставляет возможность в режиме 1С-Предприятие просматривать "табличные" объекты, сохранять их во внешних файлах и снова открывать просмотра с возможнотью обмена между пользователями. Кроме этого в подсистеме есть сервис просмотра структуры физических таблиц базы данных (имена таблиц, полей и индексов) и сервис выбора (отметки) значений из таблицы или дерева значений.

 

История цивилизации является историей изобретения велосипеда.
Во все эпохи именно те народы получали преимущества историческом
развитии, чьи велосипеды оказывались удобней, быстрее и надежней.

так или примерно так говорил пророк К. Маркс...

 

 

        Изменения от 01-03-2014, версии 8.1.1.5 (для платформы 8.1) и 8.2.1.5 (для платформы 8.2):

       1. Расширен список объектов доступных для просмотра:

- Табличные части объектов (включая системные - навроде "ПланСчетовВидыСубконто.");
- Строки табличных частей объектов;
- Наборы записей регистров (включая "системные" - навроде "ПоследовательностьНаборЗаписей.");
- Записи регистров;
- Ключи записей регистров;

Кроме этого объекты некоторых типов
(например, "СистемнаяИнформация","ПользовательИнформационнойБазы","ОписаниеТипов" и многие другие) представляются
для просмотра в функции ViewValue() в виде структуры с одноименными свойствами с помощью метода ОбъектВСтруктуру()
общего модуля ViewAddIn. Список этих объектов не является закрытым и при желании может дополнен.

2. Добавлена обработка "КонсольЗапросов1СADO" версии 8.1.1.3 из подсистемы "COMExchange", консоль используется в
функции ViewValue() для "просмотра" объектов типа "Запрос" (идея подсказана q_i 
в http://infostart.ru/public/236904/).

3. Интеграция с обработкой 1С:Администратор (требуемая версия не ниже 5.6):
При клике по ячейке табличного объекта, содержащего ссылочное значение, пользователь с полными правами
имеет возможность открыть ссылочный объект для редактирования в обработке 1С:Администратор.

Обработка 1С:Администратор может использоваться как встроенная в конфигурацию, так и в виде внешней обработки,
сохраненной в стандартных справочниках "ВнешниеОбработки"/"ДополнительныеОтчетыИОбработки"
под наименованием
"Администратор1С"
.

Особенности обновления на данную версию подсистемы:
После объединения конфигурации с базой данных следует удалить общие формы "ViewValuesTable" и "ChooseFromTable",
поскольку они перенесены в сервисную обработку "ViewValues" и более уже не используются подсистемой.


        Изменения от 03-07-2013, версии 8.1.1.4 (для платформы 8.1) и 8.2.1.4 (для платформы 8.2):

        1. Версии для платформ 8.1 и 8.2 существенно отличаются. Для последней часть объектов поддерживают работу в управляемом приложении.

        2. Добавлен альтернативный диалог настройки периода. Подробнее...

        3. В комплект поставки включены выгрузки баз демоконфигураций. Демообработки включены в их состав.


        Изменения от 07-01-2013, версия 8.1.1.3  для 1С:Предприятие-8х (обычное приложение):  

        1. Добавлено контекстное меню действий со значением в ячейке таблицы  ( Рис.17 ). Это меню выводится при клике мышью по ячейке 

        для режима просмотра значений 'Из меню', на который заменены режимы 'В диалоге' и 'В списке'.

        2. Добавлена возможность управления шириной колонок просматриваемых таблиц (подробности в описании общей формы  ViewValuesTable’).

 


        Изменения от 08-08-2012, версия для 1С:Предприятие-7.7:  

1. Добавлен сервис сохранения в файл просматриваемого объекта и открытия объекта для просмотра из файла ( Рис.5-3 ), аналогичный тому, что есть в версии подсистемы для 1С:Предприятие-8х.  

Также для удобства просмотра таблиц, сохраненных во внешних файлах, можно открывать форму просмотра таблиц без указания табличного объекта ( Рис.5-3 ). 

Для этого надо в табло формул набрать функцию ViewTable() без параметров;

2. В состав подсистемы добавлена обработка "РедактированиеСпискаЗначений_sys" ( Рис.1-2 ) - упрощенная альтернатива обработке "УОПО".

Пример использования смотрите в обработчике соответствующей кнопки на Рис.1-2 в демонстрационной обработке.

3. В архив комплекта поставки добавлены дополнительные файлы (для удобства установки и обновления подсистемы):

    - Файл ViewValues-77.txt (содержит процедуры подсистемы из глобального модуля) и

    - Файлы с обработками подсистемы в диалогах которого использованы пиктограммы.

Рекомедуемый порядок установки и обновления следующий:

1) Объединяем конфигурацию с файлом *.MD из комплекта поставки (без объединения "корня" конфигурации);

2) Добавляем (заменяем) в глобальный модуль процедуры из файла  ViewValues-77.txt   

3) При необходимости (если "слетели" картинки на кнопках в диалогах обработок) заменяем эти обработки на одноименные из комплекта поставки;

 

      Изменения от 08-08-2012, версия для 1С:Предприятие-8х (обычное приложение):

1. Добавлен общий модуль "MarkTables" и общая форма "ChooseFromTable", реализующие сервис пометки и выбора строк из объектов "ТаблицаЗначений", "ДеревоЗначений" и "СписокЗначений". Сервис носит универсальный характер и может быть использован везде, где требуется выбор (отметка) ряда значений из списка в виде таблицы или дерева значений.  

Подробности  задокументированы в описании подсистемы. Пример использования смотрите в обработчиках команд меню "Структура таблиц ИБ"   в общей форме "ViewValueTable".

2. Перед просмотром дерева значений со структурой таблиц базы открывается форма "ChooseFromTable" ( Рис.16-2 ) для подтверждения фильтра по объектам метаданных базы (по умолчанию фильтр заполнен << По всем объектам конфигурации>>). Установка фильтра по отдельным метаданным значительно ускоряет формирование дерева со структурой таблиц, при этом в дереве показываются узловые строки, принадлежащие только выбранным в фильтре объектам метаданных ( Рис.16-3 );

3. При сохранении просматриваемого объекта во внешнем файле также сохраняется структура с  настройками его отображения (в отдельном файле под тем же именем и с расширением *.obj8prm).

При открытии для просмотра объекта из файла, если существует соответствующий файл с сохраненными настройками отображения - эти настройки также восстанавливаются и применяются.

 


      Изменения от 01-05-2012, версия для 1С:Предприятие-8х (обычное приложение):

  1. Добавлено меню действий формы просмотра таблиц ( Рис.15 ). В это меню перенесена команда "Обновить" и добавлены новые команды (см. ниже);
  2. Добавлена возможность сохранять просматриваемый объект во внешнем файле с помощью функции ЗначениеВФайл(...) , команда "Сохранить" меню действий формы;
  3. Добавлена возможность открывать на просмотр объект из внешнего файла с помощью функции ЗначениеИзФайла(...) , команды "Открыть" и "Открыть в новом окне" меню действий формы;
  4. Добавлена возможность вывода для таблиц пиктограмм в одной из колонок ( Рис.16-1 ), об этом и о других возможностях управления отображением таблиц смотрите в описании подсистемы.
  5. Следует отметить, что на настоящий момент при сохранении табличного объекта во внешний файл (см.п.2) параметры его отображения теряются. Особенно это каксается вывода пиктограмм;
  6. Для удобства просмотра таблиц, сохраненных во внешних файлах, предусмотрена возможность открытия формы просмотра таблиц без указания табличного объекта ( Рис.14 ) . Для этого достаточно в табло формул набрать функцию ViewTable() без параметров;
  7. Добавлена возможность формирования и просмотра в отдельном окне дерева значений со структурой физических таблиц ( Рис.16-1 ) , команды подменю "Структура таблиц ИБ меню действий формы;
  8. В список поддерживаемых для просмотра типов добавлен тип "ФиксированнаяКоллекция" (для платформы 1С-8.2);

 

1)      Описание практической проблемы:

 

У каждого программиста 1С («семёрочного») есть голубая мечта: «посмотреть, что там у меня такое получилось в таблице значений или в списке значений».

По этой причине имеется масса разработок, решающих эту задачу на платформе 1С-7.7:

                http://infostart.ru/public/19967/ (29)

                http://infostart.ru/public/71992/ (10)

                http://infostart.ru/public/90626/ (9)

                http://infostart.ru/public/14523/ (56)   - глПросмотрТЗ(ТЗ)

                http://infostart.ru/public/77306/ (7)     - класс ИнспекторОбъектов

                http://infostart.ru/public/69026/ (12)   - индексированные таблицы

 

Под платформой  1С-8.x проблема не стоит так остро (в отладчике можно просмотреть большинство объектов), но мечта, похоже, у некоторых остаётся:

                http://infostart.ru/public/21592/ (9). В круглых скобках указан рейтинг работ на момент изучения вопроса.

 

Предлагаю свой вариант решения задачи в виде подсистемы  «ViewValues» в двух версиях:  для платформы 1С-7.7 и для платформы 1С-8.x (обычное приложение).

 

2)      Описание подсистемы «ViewValues», версия для платформы 1С-7.7:

 a)      Состав:

 Функции глобального модуля:

 1)      Функция ViewText(Объект,Заголовок=’’,,) Экспорт – для просмотра текстов и многострочных строк из любого места конфигурации;

 2)      Функция ViewTable(Объект,Заголовок=’’,,,) Экспорт – для просмотра ‘табличных’ объектов из любого места конфигурации;

 3)      Функция ViewValue(Объект,,Заголовок=’’) Экспорт – комбинированная функция для “просмотра” объектов произвольного типа из любого места конфигурации.

 4)      + вспомогательные процедуры и функции.

Обработки:

 5)      ВыводТекста_sys                                        - просмотр текстов и многострочных строк;

 6)      ВыводТаблицыЗначений_sys                     - просмотр “табличных” объектов;

 

b)      Возможности и использование:

1)      Подсистема позволяет просматривать “табличные”объекты следующих типов:

               - "ТаблицаЗначений"                                 (Рис.3)

               - "ИндексированнаяТаблица"                  - объект ВК 1CPP.dll

               - "СписокЗначений"                                   (Рис.4)

               - "Структура"                                            - объект ВК 1CPP.dll

               - "DynaValue"                                            - объект ВК 1CPP.dll

 

2)      Значение из ячейки просматриваемой таблицы кликом мыши можно открыть на просмотр.

3)      Если значение в ячейке ссылочного типа, то при клике мышью по ячейке выводится контекстное меню (Рис.3,Рис.4 и Рис.5-1), позволяющее выполнить с объектом следующие действия:

- открыть на просмотр-редактирование, открыть в списке (журнале);

- пометить на удаление, снять пометку на удаление, удалить непосредственно;

- провести, отменить проведение документа;

- сформировать структуру подчинённости документа; 

- сформировать отчёт о движениях документа (полный вариант: регистры, проводки, история справочников);

- изменить дату-время документа (требуется обработка ‘Изменение времени документа’);

- открыть объект для редактирования в обработке 'Редактор Реквизитов' (автор Цылёв Владислав vet7777@mail.ru);

 

4)      Если в просматриваемом объекте содержатся ‘вложенные’ “табличные” объекты, подсистема позволяет кликом мыши по ячейке просмотреть и их (Рис.5-1, Рис.5-2).

5)      Имеется возможность вывести просматриваемый объект для печати в табличный документ.

 

Использовать подсистему очень просто: в любом месте программного кода для просмотра интересуемого объекта достаточно вставить вызов функции ViewTable (Объект,Заголовок).

 

c)       Требования и установка:

1)      Никаких особенных требований к программному окружению нет.Желательно иметь загруженные ВК 1cpp.dll, FormEx.dll и подключённый класс КОП 'Общие.Форма.Привязка' (включен в состав файла MD из комплекта поставки). Внешние компоненты и класс подключаются аналогично тому, как описано в статье об обработке Консоль1CQA (там же можно их скачать).Но без них тоже все будет как-то работать (без привязок в формах и прямых запросов при формировании структуры подчинённости документа). 2)      Для установки нужно добавить обработки в конфигурацию базы при объединении с файлом MD из комплекта поставки.Рекомендуется добавить из файла MD класс КОП 'Общие.Форма.Привязка' (обработки Defcls и КОП_ОбщиеФормаПривязка) и обеспечить загрузку ВК 1cpp.dll, FormEx.dll. Кроме этого, придётся  добавить вручную в глобальный модуль базы функции из глобального модуля файла MD.

 

3)      Описание подсистемы «ViewValues», версия для платформы 1С-8.x:

 a)      Состав:

Подсистема ViewValues’ - содержит общее описание и выделяет остальные объекты, входящие в подсистему.

Общий глобальный модуль ViewValues’, содержит экспортные функции:

 1)      Функция ViewTable(Объект,Заголовок,,,) Экспорт – для просмотра ‘табличных’ объектов из любого места конфигурации;

 2)      Функция ViewValue(Объект,Заголовок,,,) Экспорт – комбинированная функция для “просмотра” объектов произвольного типа из любого места конфигурации.

 3)      + вспомогательные процедуры и функции.

Общая форма ViewValuesTable’ – предназначена для просмотра  общих  “табличных” объектов и объектов, представляющих коллекции значений.

 

b)      Возможности и использование:

1)      Подсистема позволяет просматривать “табличные” объекты следующих типов:

- "Массив"                                      (Рис.6)
- "Структура"                               (Рис.7)
- "Соответствие"
- "СписокЗначений"                     (Рис.8)
- "ТаблицаЗначений"                   (Рис.11)
- "ДеревоЗначений"                     (Рис.12, Рис.13)
- "COMSafeArray"
- "ФиксированныйМассив"
- "РезультатЗапроса"                   (Рис.10)

 

2)      Подсистема позволяет просматривать любые другие объекты, являющиеся коллекциями значений (Рис.9-1 и Рис.9-2), для которых доступен перебор элементов в цикле “Для каждого …. ИзЦикл”.

3)      Подсистема позволяет отслеживать состояние объекта по ходу исполнения кода и просмотреть его актуальное состояние (см. на  примере просмотра массива, Рис.6).

4)      Значение из ячейки просматриваемой таблицы при клике мышью можно открыть на просмотр.

5)      Если в просматриваемом объекте содержатся ‘вложенные’ “табличные” объекты, подсистема также позволяет просмотреть их кликом мыши по ячейке (Рис.7, Рис.11,Рис.13).

6)      Просматриваемый объект можно вывести на печать стандартными средствами платформы по работе со списками.

 

Использовать подсистему также просто: 

в любом месте программного кода (или в табло формул) для просмотра интересуемого объекта достаточно вставить вызов функции ViewTable (Объект,Заголовок).

Например, если в табло формул набрать  ViewTable(Отчеты) (Рис.9-2), то откроется для просмотра список менеджеров отчётов конфигурации. Причём при клике мышью в списке открывается основная форма отчёта.

 

c)       Установка и ограничения:

 Установка:

 осуществляется объединением конфигурации базы с файлом CF из комплекта поставки. Модули приложений – не объединять!

Ограничения:  

 подсистема предназначена для работы в режиме обычного приложения. Её адаптация для режима управляемого приложения вряд ли целесообразна. Так  как на стороне клиента в этом режиме многие “табличные” объекты попросту не доступны.

 

4)      Описание файлов поставки:

 

1)ViewValues-77.rar – архив содержит файл ViewValues-77.MD с конфигурацией подсистемы (версия для 1С-7.7).

2)ViewValues-77_Sampls.rar – архив содержит демонстрационную обработку ViewValues-77_Sampls.ert (Рис.1), показывающую работу подсистемы. Все примеры в статье для платформы 1С-7.7 получены с её помощью. Для работы обработки требуется ВК 1cpp.dll (использованы прямые запросы и индексированные таблицы).

3) ViewValues-8x.rar архив содержит файлы конфигураций:

                ViewValues-8.1.14.cf     - для платформы 1С-8.1;

                ViewValues-8.2.14.cf     - для платформы 1С-8.2;

4)ViewValues-8x_Sampls.rar  – содержит демонстрационные обработки

                ViewValues-81_Sampls.epf       - для платформы 1С-8.1;

                ViewValues-81_Sampls.epf       - для платформы 1С-8.2 (Рис.2-1, Рис.2-2 и Рис2-3);

показывающую работу подсистемы. Все примеры в статье для платформы 1С-8.x получены с её помощью.

 

Назначение подсистемы:

1)      Основное применение – просмотр различных таблиц в режиме 1С:Предприятие  в целях отладки.

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

 

Авторские права и условия распространения:

Подсистема предназначена для свободного, то есть, бесплатного распространения c возможностью внесения изменений при сохранении авторской информации в описаниях объектов. 

 

Благодарности:

Выражаю благодарность всем своим коллегам по отделу ИТО за дружбу, поддержку и взаимопомощь. Желаю им всем поскорей найти хорошую работу.

 

 

 

1. Добавлен сервис сохранения в файл просматриваемого объекта и открытия объекта для просмотра из файла ( Рис.5-3 )

      Изменения от 07-01-2013, версия 8.1.1.3

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
ViewValues-8x.RAR
.rar 2,42Mb
22.03.14
111
.rar 1.5 2,42Mb 111 Скачать
ViewValues-77.RAR
.rar 527,66Kb
12.07.13
72
.rar 527,66Kb 72 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Юрий Осипов (yuraos) 23.12.11 22:03
Всем доброго времени суток!
Это мой второй велосипед из трёх обещанных в статье об обработке ObjectsCleaner.
:))))))))))))))))))))))

Вешь удобная (особенно в семерке).
Если что не так в каком-то отчете, я первым делом ставлю галку "отладка", по которой выборка запроса открывается для просмотра функцией ViewTable()
;))))))))))))))))))))))
Прошу любить и жаловать!
2. Александр Лыткин (TrinitronOTV) 24.12.11 11:10
интересная обработка, спасибо за труды
4. Виктор Клименко (dicwork) 25.12.11 23:54
(1) yuraos
Интересная обработка. Я только не понял, что это за "галка" отладка и где ее ставить?
5. Юрий Осипов (yuraos) 27.12.11 14:10
(4) dicwork, рад что вас заинтересовал результат моего скромного труда.

Насчет галки "Отладка":

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

Бывает полезно, когда юзверы вопят, что в отчете что-то не так.
;))))
6. Alex Melnichuk (Amel2010) 28.12.11 11:34
Монументально...
Поглядим-поглядим...
7. Юрий Осипов (yuraos) 28.12.11 12:06
Amel2010 пишет:

Монументально...

Поглядим-поглядим...


я памятник воздвиг себе нерукотворный....
:)))))))))))))))))))

ЗЫ
Скромность - не порок, но средство для сокрытия оных.
;)
Шёпот теней; +1 Ответить
8. Александр Шишкин (Шёпот теней) 28.12.11 13:31
" ... даааа?!, мальчику - пора покупать мотоцикл !!! " ...

... вотАНЕКДОТвот ...
9. Юрий Осипов (yuraos) 28.12.11 14:28
Шёпот теней пишет:

" ... даааа?!, мальчику - пора покупать мотоцикл !!! " ...



... вотАНЕКДОТвот ...

спасибо, друг ... с меня причитается!
такВВООТТтак
;))))))))))))))))))))))
Шёпот теней; +1 Ответить
10. Виктор Клименко (dicwork) 29.12.11 01:37
Скачал - внутри архива лежит MD-файл. Записал его в отдельный каталог. Запустил конфигуратор - смотрю глобальный модуль - пусто. Честно говоря не понял. В описании написано много красивых фраз - а в архиве ничего нет. У кого-то получилось запустить этот хитрый ViewValues.
11. Юрий Осипов (yuraos) 29.12.11 03:50
(10) dicwork,
попробуй создать новую пустую базу (или использовать имеющуюся, какую не жалко)
и загрузить измененную конфигурацию (как на скриншоте)

ЗЫ
только что MD-ник проверил - с ним вроде все впорядке.
Прикрепленные файлы:
12. Юрий Осипов (yuraos) 29.12.11 04:51
(10) dicwork,
dicwork пишет:

Скачал - внутри архива лежит MD-файл. Записал его в отдельный каталог. Запустил конфигуратор - смотрю глобальный модуль - пусто. Честно говоря не понял. В описании написано много красивых фраз - а в архиве ничего нет. У кого-то получилось запустить этот хитрый ViewValues.

ЗЫ ЗЫ
А!!! ты поди просто MD-ник из архива скопировал???
:))))))))))))))))))))))))))))))))))))))))))))))))
попробуй его переименовать в 1cv.md и удали файл 1cv.dd (1cv.dds) на всякий случай.
14. Юрий Осипов (yuraos) 05.01.12 11:59
Всем доброе время суток!
Обновлен файл ViewValues-77.rar комплекта поставки.
Текущие изменения:
1) Подправлен встроенный отчет по движениям документа.
Устраненена зависимость алгоритма формирования отчета от объекта "ИндексированнаяТаблица", поставляемого ВК 1CPP.dll.
По возможности отчет использует индексированные таблицы. Если они не доступны (не загружена 1CPP),
то используются "запасные" варианты алгоритма через "ТаблицуЗначений".
2) В комплект поставки (файл ViewValues-77.md)
включен подправленный класс 'КОП_ОбщиеФормаПривязка' - устранены некоторые глюки при работе модальном режиме.
15. Юрий Осипов (yuraos) 02.02.12 11:10
Всем доброго времени суток!

Обновлен файл поставки ViewValues.rar.

Текущие изменения:
1) исправленн довольно неприятный баг:
при обработке команды контекстного меню при клике по ячейке таблицы значений
независимо от выбранной команды просто открывалась форма объекта для просмотра.
2) в контекстное меню добавлены команды (для документов):
- открыть в общем журнале (отыскивается первый подходящий по своствам объкта Метаданные.Журнал(о));
- открыть список подчиненных документов;
3) Добвлен флаг "Авто ширина колонок" - доступен призагруженной ВК FormEx.dll.
4) исравлены другие незначительные баги.
16. Гость 07.02.12 20:41
Спасибо,очень нужная вещь иногда бывает))
17. sat.m.n@mail.ru Сукачов (bolush) 12.03.12 14:59
18. sat.m.n@mail.ru Сукачов (bolush) 12.03.12 15:00
Спасибо,очень нужная вещь иногда реально сталкиваюсь с такой ситуацие
19. Юрий Осипов (yuraos) 02.05.12 04:37
Всем доброго времени суток!
Обновлен файл поставки ViewValues-8x.rar
----------------------------------------------------
Текущие изменения:
Добавлено меню действий формы просмотра таблиц ( Рис.15 ). В это меню перенесена команда "Обновить" и добавлены новые команды (см. ниже);
Добавлена возможность сохранять просматриваемый объект во внешнем файле с помощью функции ЗначениеВФайл(...) , команда "Сохранить" меню действий формы;
Добавлена возможность открывать на просмотр объект из внешнего файла с помощью функции ЗначениеИзФайла(...) , команды "Открыть" и "Открыть в новом окне" меню действий формы;
Добавлена возможность вывода для таблиц пиктограмм в одной из колонок ( Рис.16 ), об этом и о других возможностях управления отображением таблиц смотрите в описании подсистемы;
Для удобства просмотра таблиц, сохраненных во внешних файлах, предусмотрена возможность открытия формы просмотра таблиц без указания табличного объекта ( Рис.14 ). Для этого достаточно в табло формул набрать ViewTable() без указания параметров;
Добавлена возможность формирования и просмотра в отдельном окне дерева значений со структурой физических таблиц ( Рис.16 ) , подменю "Структура таблиц ИБ" меню действий формы;
20. Валерий (warenic) 04.05.12 12:45
Целая подсистема - круто :)
У меня есть аналог, правда, несколько скромнее - редактор таблиц значений
При использовании Rainbow addon 2000 или дальнейшее ее развитие - 1С++ (потребуется доработка) позволяет в виде ТЗ представлять любые табличные данные и обрабатывать их (скрипт на языке 1С пишется прямо на форме).
21. Юрий Осипов (yuraos) 05.05.12 04:53
Всем доброго времени суток!
Обновлен файл поставки ViewValues-8x.rar
----------------------------------------------------
Подвязаны небольшие "бантики" у сервиса просмотра структуры таблиц базы:
1) в колонке "Метаданные" для полей таблиц выводится не путь метаданных, а тип 1С по метаданным (что более интересно);
2) в колонке "Назначение" для полей в скобках выводится роль поля таблицы: Реквизит, Измерение, Ресурс, Графа и т.д.
3) в колонке с именем поля таблицы в скобках выводися имя поля 1С по метаданным;
22. Юрий Осипов (yuraos) 06.05.12 07:09
Всем доброго времени суток!
очередной раз обновлен файл поставки ViewValues-8x.rar
----------------------------------------------------
Вывод типа 1С для полей оказался довольно затратным по времени,
поэтому пришлось сделать его опциональным: Рис.15.
Замедление особенно заметно на больших конфигурациях типа УПП.
Причина тормозов в том,
что метод Метаданные.НайтиПоПолномуИмени(ПутьКМетаданному) почему-то работает очень медленно.
23. Andrey Dyak (electronik) 07.05.12 14:11
24. Владимир Костецкий (astonvilla) 08.05.12 10:11
За труды не грех и плюсануть...
25. Юрий Осипов (yuraos) 08.05.12 11:15
(24) astonvilla, всяк труд требуе справедливого вознаграждения!
:)
26. Юрий Осипов (yuraos) 08.08.12 15:56
Всем доброго времени суток!!!
---
Обновлены файлы поставки:
ViewValues-8x.rar
ViewValues-77.rar
ViewValues-77_Sampls.rar

---
Текущие изменения:

---
версия для 1С:Предприятие-7.7:

1. Добавлен сервис сохранения в файл просматриваемого объекта и открытия объекта для просмотра из файла ( Рис.5-3 ), аналогичный в версии подсистемы для 1С:Предприятие-8х. Форму просмотра таблиц можно теперь открывать без указания табличного объекта ( Рис.5-3 ), набрав в табло формул функцию ViewTable() без параметров;

2. В состав подсистемы добавлена обработка "РедактированиеСпискаЗначений_sys" ( Рис.1-2 ) - упрощенная альтернатива обработке "УОПО".Пример использования смотрите в обработчике соответствующей кнопки на Рис.1-2 в демонстрационной обработке.

3. В архив комплекта поставки добавлены дополнительные файлы (для удобства установки и обновления подсистемы):
- Файл ViewValues-77.txt (содержит процедуры подсистемы из глобального модуля) и
- Файлы с обработками подсистемы в диалогах которого использованы пиктограммы.

Рекомедуемый порядок установки и обновления следующий:
1) Объединяем конфигурацию с файлом *.MD из комплекта поставки (без объединения "корня" конфигурации);
2) Добавляем (заменяем) в глобальный модуль процедуры из файла ViewValues-77.txt
3) При необходимости (если "слетели" картинки на кнопках в диалогах обработок) заменяем эти обработки на одноименные из комплекта поставки;

---
Версия для 1С:Предприятие-8х (обычное приложение):

1. Добавлен общий модуль "MarkTables" и общая форма "ChooseFromTable", реализующие сервис пометки и выбора строк из объектов "ТаблицаЗначений", "ДеревоЗначений" и "СписокЗначений". Подробности в описании подсистемы. Пример использования смотрите в обработчиках команд меню "Структура таблиц ИБ" в общей форме "ViewValueTable".

2. Перед просмотром дерева значений со структурой таблиц базы открывается форма "ChooseFromTable" ( Рис.16-2 ) для подтверждения фильтра по объектам метаданных (по умолчанию фильтр заполнен << По всем объектам конфигурации>>). Установка фильтра по отдельным метаданным значительно ускоряет формирование дерева со структурой таблиц, при этом в дереве показываются узловые строки, принадлежащие только выбранным в фильтре объектам метаданных ( Рис.16-3 );

3. Теперь при сохранении просматриваемого объекта во внешнем файле, также сохраняется структура с настройками его отображения (если задан, в отдельном файле под тем же именем с расширением *.obj8prm). При открытии для просмотра объекта из файла, если настройки отображения сохранены, они также восстанавливаются и применяются;
27. Alex Melnichuk (Amel2010) 15.08.12 10:54
Не понял, так каким механизмом решается проблема:
в отладчике 1С-7.7 отсутствуют средства для просмотра таких объектов
?
Каким образом ваша разработка позволяет просматривать такие объекты в отладчике?
28. Юрий Осипов (yuraos) 15.08.12 19:13
(27) Amel2010,
В статье не говорится, что разработка позволяет просматривать "табличные" объекты в самом отладчике 1С-7.7,
а лишь отмечается что в отладчике 1С-7.7 нет соответствующих возможностей для этого.

Средствами предлагаемой подсистемы можно открывать на просмотр "табличные" объекты по ходу исполнения кода в режиме 1С:Предприятие-7.7.

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

1) В интересуемые места кода в целях отладки встраваем вызовы функции ViewTable(),
что-то вроде следующего:

тзВыборка = ПолучитьВыборкуЗапроса(); // получаем выборку данных

Если Отладка=1 Тогда
    ViewTable(тзВыборка,"Выборка запроса");
КонецЕсли; 

итзВыборка = СгруппироватьВыборкуЗапроса(тзВыборка); // группируем выборку данных

Если Отладка=1 Тогда
    ViewTable(итзВыборка,"Сгруппированная выборка запроса"); // закомментарить после отладки
КонецЕсли;

ВывестиВыборкуВОтчетРекурсивно(итзВыборка); // выводим данные в отчет
...Показать Скрыть


2) И запускаем код на исполнение в режиме 1С:Предприятие. При выполнении программа откроет на просмотр интересуемые таблицы значений.

Вызовы функции ViewTable() можно просто вставлять в нужные места, а после отладки комментарить.

А можно и оставлять (как это сделано в приведенном фрагменте)
и управлять отладочным режимом установкой "галок" в формах.
29. Alex Melnichuk (Amel2010) 16.08.12 10:20
Благодарю за исчерпывающий ответ.
Я пользуюсь для этих целей более простым инструментом.
Здесь меня отпугивает необходимость внесения изменений в конфигурацию.
30. Юрий Осипов (yuraos) 17.08.12 12:28
(29) Amel2010,
Благодарю за исчерпывающий ответ.
Я пользуюсь для этих целей более простым инструментом.
Здесь меня отпугивает необходимость внесения изменений в конфигурацию.

Ну конечно если конфа на подержке и кодить приходиться лишь во внешних отчетах и обработках,
то остается один лишь "простой и сердитый" инструмент :
тзПосмотретьБы.ВыбратьСтроку(,"Это моя таблица значений",45); // сорок пять секунд - ПРОСМОТР!!!

:)
31. Alex Melnichuk (Amel2010) 17.08.12 12:42
(30) yuraos,
Да нет. Это подойдет для некоторых случаев (когда маленькие таблицы).
А обычно пользуюсь внешним отчетом, который выводит на экран печатную форму любой ТЗ.
Код для отладки выглядит примерно так:
ОткрытьФорму("Отчет", тзДляОтладки, ИмяФайлаОтладочнойОбработки)

ТЗ на 80000 строк и 25 колонок выводится на экран где-то за 10 сек на средненьком ПК.
Это вполне меня устраивает.
Более того, удобнее часто, чем просто просмотр, поскольку можно выгрузить для анализа в Excel (подбивания сумм либо поиска закономерностей, ошибок и т.п.).
Выгрузка в Excel вышеуказанной таблицы занимает около 2 секунд благодаря компоненте "Йоксель".
32. Юрий Осипов (yuraos) 18.08.12 12:36
Всем доброго времени суток!
...
Обновлен файл поставки ViewValues-8x.rar
Исправлены малосущественные баги, проявляющиеся
когда у колонки таблицы значений или дерева значений не задано имя.
...
Такие таблицы может создавать система СКД, если использовать процессор вывода
"ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений".
33. Юрий Осипов (yuraos) 09.01.13 17:13
Всех с прошедшим Концом Света!!!

Обновлен файл поставки "ViewValues-8x.RAR"

Изменения от 07-01-2013, версия 8.1.1.3 для 1С:Предприятие-8х (обычное приложение):
1. Добавлено контекстное меню действий со значением в ячейке таблицы ( Рис.17 ). Это меню выводится при клике мышью по ячейке для режима просмотра значений 'Из меню', на который заменены режимы 'В диалоге' и 'В списке'.
2. Добавлена возможность управления шириной колонок просматриваемых таблиц (подробности в описании общей формы ‘ViewValuesTable’).
34. Юрий Осипов (yuraos) 28.01.13 19:19
Всем доброго времени суток!

Обновлен файл поставки "ViewValues-8x.RAR"
Исправлениы незначительные ошибки.
35. Алексей (ADirks) 29.01.13 11:14
Тоже мальца попиарюсь :)
для семёрки http://infostart.ru/public/15487/
для восьмёрки http://infostart.ru/public/104099/
может что-то и пригодится
36. Юрий Осипов (yuraos) 29.01.13 17:29
(35) ADirks, ага, давай!
а то такое ощущение, что половина народу на Инфорстарте только етим и занимается.
:)
37. Юрий Осипов (yuraos) 13.07.13 06:54
Доброго всем времени суток!
Обновлены файлы поставки.

Изменения от 03-07-2013
:

1. Версии для платформ 8.1 и 8.2 существенно отличаются.
Для 8.2 часть объектов поддерживают работу в управляемом приложении.
2. Добавлен альтернативный диалог настройки периода. Подробнее...
3. В комплект поставки включены выгрузки баз демоконфигураций.
Демообработки включены в их состав.
4. Конфигурации подсистемы и файлы с примерами выложены в одном архиве поставки
(для обоих версий - для 7.7 и 8.х)
38. Юрий Осипов (yuraos) 15.03.14 21:15
Всем доброго времени суток!
Обновлены файлы поставки (версия для 8.х):

Изменения от 01-03-2014,
версии 8.1.1.5 (для платформы 8.1) и 8.2.1.5 (для платформы 8.2):

1. Расширен список объектов доступных для просмотра:

- Табличные части объектов (включая системные - навроде "ПланСчетовВидыСубконто.");
- Строки табличных частей объектов;
- Наборы записей регистров (включая "системные" - навроде "ПоследовательностьНаборЗаписей.");
- Записи регистров;
- Ключи записей регистров;

Кроме этого объекты некоторых типов
(например, "СистемнаяИнформация","ПользовательИнформационнойБазы","ОписаниеТипов" и многие другие) представляются
для просмотра в функции ViewValue() в виде структуры с одноименными свойствами с помощью метода ОбъектВСтруктуру()
общего модуля ViewAddIn. Список этих объектов не является закрытым и при желании может дополнен.

2. Добавлена обработка "КонсольЗапросов1СADO" версии 8.1.1.3 из подсистемы "COMExchange", консоль используется в
функции ViewValue() для "просмотра" объектов типа "Запрос" (идея подсказана q_i в http://infostart.ru/public/236904/).

3. Интеграция с обработкой 1С:Администратор (требуемая версия не ниже 5.6):
При клике по ячейке табличного объекта, содержащего ссылочное значение, пользователь с полными правами
имеет возможность открыть ссылочный объект для редактирования в обработке 1С:Администратор.

Обработка 1С:Администратор может использоваться как встроенная в конфигурацию, так и в виде внешней обработки,
сохраненной в стандартных справочниках "ВнешниеОбработки"/"ДополнительныеОтчетыИОбработки"
под наименованием "Администратор1С".

Особенности обновления на данную версию подсистемы:
После объединения конфигурации с базой данных следует удалить общие формы "ViewValuesTable" и "ChooseFromTable",
поскольку они перенесены в сервисную обработку "ViewValues" и более уже не используются подсистемой.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа