Класс 1С++ для просмотра содержимого классов, таблиц значений, индексированной таблицы значений, списка значений, структуры

11.05.11

Разработка - Инструментарий разработчика

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

Наименование Файл Версия Размер
Конфигурация с примером применения инспектора объектов
.zip 1 006,53Kb
39
.zip 1 006,53Kb 39 Скачать

Очень полезно при отладке конфигурации 1С7.7 просмотреть содержимое таких значений как таблица значений, список значений, класс 1С++ или структура, которые в свою очередь также содержат в себе ссылки на ТЗ, СЗ, класс или структуру. В отладчике 1С77 к сожалению это сделать невозможно.
В предлагаемой разработке можно увидеть способ применения класса ИнспекторОбъектов для просмотра содержимого класса, структуры, таблицы значений и списка значений.

См. также

Консоль запросов

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    21561    54    Gvozdod    8    

14

StartManager 1.4 - Развитие альтернативного стартера

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    165729    1864    Alexoniq    1596    

496

Tray Informer

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    32883    61    O-Planet    78    

49

Изменение структуры баз 1С 7.7 без долгой реструктуризации. Часть 1. Справочники

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21200    Reptile    5    

35

v7.7 1CDialogControls: Инструмент в помощь разработчику на 7.7.

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18031    35    MarSeN    14    

16

[Разработчику] Любая таблица значений в OLAP

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36105    51    venger    7    

23

Библиотека кода 1С 7.7 (накопленная за 8 лет)

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Весь код на 1С 7.7, собранный для повторного использования за 8 лет работы.

10 стартмани

25.11.2012    34960    248    adhocprog    51    

70
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. skyman2 27.10.10 14:04 Сейчас в теме
таблицаЗначений.ВыбратьСтроку()
СписокЗначений.ВыбратьЗначение(0)
Интерактивный просмотр тз и сз прямо в отладке. только надо переключиться в интерфейс
2. bainov 52 27.10.10 16:07 Сейчас в теме
(1) Недостаток типового метода в том, что невозможно просмотреть значение поля, если там записана ТЗ или СЗ, в которых в свою очередь также ТЗ или СЗ, и т.д. и т.д., а в случае применения 1С++ еще и ссылки на классы и структуры, которые в своих полях также содержат ссылки на классы, структуры, ТЗ или СЗ.
Вот для таких случаев и применяем метод просмотра вызовом процедуры глБраузер(ТЗ). Мне очень помогает в работе. Надеюсь, что поможет и другим.
Отладчик 1С зависает при попытке просмотра значений типа класс 1С++.
3. wing 27 01.03.11 06:31 Сейчас в теме
Немного покритикую:
1. Судя по использованию во всех классах метода Вид(), автор не любит (или не умеет?) ничего оптимизировать (на это же наталкивает и использование 3D-объектов там, где нужно всего лишь вывести сообщение - неоправданная нагрузка железа).
Чтобы не быть голословным, поясню:
Функция Вид() Экспорт Возврат ТипЗначенияСтр(Сам()); КонецФункции

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

2. Предполагалось, что класс ИнспекторОбъектов предназначен для просмотра параметров объекта, но в трех случаях вместо просмотра параметров, он тупо открывает форму объекта, что не есть правильно, т.к. на форме могут не отображаться параметры, а значит, класс не решает поставленную задачу.
По идее он должен рекурсивно вызывать сам себя для отображения объектов до тех пор, пока не упрется в простой тип, а в случае с несколькими вариантами отображения (например: документ шапка и ТЧ) - эмулировать (например, для дока: показывая реквизиты шапки + добавляя ТЗ с выгруженной ТЧ или списоком отдельно реквизиты шапки и отдельно ТЗ с ТЧ).

3. Наследовать во всех объектах такого тяжелого предка как класс Объект - тоже не есть рационально...

4. Непонятно назначение функции ЗаписатьСобытие класса РегистраторСобытий. Чем она лучше вызова ЗаписьЖурналаРегистрации?

5. Поражает использование ненужного числа строк комментариев вначале каждого модуля, притом, автору ненужных, судя по тому, что он оставляет незаполненными "теги" <Вставить имя модуля> и <Вставить описание модуля>.
Надеялся из них прочитать назначение классов...

В целом, конфигурация интересна для изучения, но неоправданно замудреная.

Скачал только из-за упоминания в теме инспектора объектов, т.к. это довольно нужная штуковина, однако реализация разочаровала.
Сам уже более года использую для этих целей небольшой класс "Отладка", когда-то найденный в сети и доработанный под себя (но не выкладываемый в силу непрезентабельного оформления, а времени на доводку нет). Исходный класс показывал в ТП ТЗ, ИТЗ и ТЧ доков (ссылку не приведу, т.к. не смог найти). Добавил рекурсию, оформление (при вызове передаются управляющие параметры в списке, такие как заголовок, команда к печати, число экземпляров, режимы отображения и т.д.), для СЗ - отображение и значений и представлений и много еще чего по мелочи...
4. bainov 52 11.05.11 17:00 Сейчас в теме
Уважаемый wing!
Спасибо за критику, которая сподвигла меня немного адаптировать класс инспектора для простого встраивания в конфигурации 7.7.
изначально класс-инспектор был "выкушен" из моего проекта "Рабочее место кассира", поэтому "прицепом" пришлось прикрутить много лишних объектов для успешной компиляции.
Непонятно назначение функции ЗаписатьСобытие класса РегистраторСобытий. Чем она лучше вызова ЗаписьЖурналаРегистрации?

Назначение: для отладки.
лучше тем, что удобнее просматривать текстовым просмотрщиком.
использовал в частности при отладке динамически создаваемых SQL-запросах.
Журнал регистрации очень быстро раздувается и становится неповоротливым.

Удалил предыдущую, напрягающую мозг, разработку и заменил на более простую, возможно, более полезную народу :)
CaSH_2004; +1 Ответить
5. CaSH_2004 372 13.05.11 01:41 Сейчас в теме
Замечательно выглядит в режиме Предприятие
Но что то у меня не хватило мозгов запустить из отладчика, подскажи как? И почему то в режиме Предприятие внешний вид не такой как на скриншотах и нет картинки на кнопке "Закрыть", это нормально? Может не все доустановил?
6. Altair777 644 13.05.11 10:01 Сейчас в теме
(0) Автор, укажите платформу
7. CaSH_2004 372 14.05.11 16:03 Сейчас в теме
Ну вот как всегда - бочка с медом и каплей дегтя, в данном случае капля - паршивая поддержка, даже информации не получить как использовать решение, вроде как для самих себя выложили, или только для тех кто может то же самое сделать
8. bainov 52 15.05.11 15:35 Сейчас в теме
CaSH_2004 пишет:

Замечательно выглядит в режиме Предприятие

Но что то у меня не хватило мозгов запустить из отладчика, подскажи как? И почему то в режиме Предприятие внешний вид не такой как на скриншотах и нет картинки на кнопке "Закрыть", это нормально? Может не все доустановил?



Скриншотики от предыдущей версии, поэтому не совпадают с тем, что в текущем примере использования.
А что не получается из отладчика запускать?
В отладчике само собой ничего не просматривается.
Просмотр объекта делаем в режиме 1С:Предприятие вызовом глобальной функции глБраузер()

Код функции:
//функция для просмотра объектов типа ТаблицаЗначений, СписокЗначений, Структура, ИндексированнаяТаблица
//автоматически открывается просмотр вложенных объектов этих типов.
Процедура глБраузер(Объект) Экспорт
	Инспектор=СоздатьОбъект("ИнспекторОбъектов");
	Инспектор.Открыть(Объект);
КонецПроцедуры


Чтобы это все работало надо при начале работы системы загрузить компоненты 1CPP.dll и Formex.dll
Подробнее об использовании этой замечательной компоненты на сайте 1С++

В двух словах про установку:

1. Описание классов находится в каталоге <Каталог базы>/Classes
Просто копируем каталог Classes в каталог базы 1С7.7
2. файл DefCls.prm должен быть в каталоге базы
Если его нет, создаем его и пишем туда строку
//#include Classes\Инспектор\DefCls.prm


3. Необходимые компоненты для запуска находятся в подкаталоге DLL

4. Для начальной инициализации скопируйте содержимое процедуры ПриНачалеРаботыСистемы() глобального модуля из примера.

5. В примере есть две обработки в составе конфигурации - формы просмотра значений типа Cтруктура и ТаблицаЗначений. Их необходимо обязательно вставить в свою конфигурацию.
CaSH_2004; +1 Ответить
Оставьте свое сообщение