Отладка временных таблиц и типа ТаблицаЗначений

24.06.23

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

Установив 21-й релиз платформы, многие столкнулись с проблемами в отладке таблиц. При попытке просмотреть большую таблицу во всех колонках и строках написано "Расчет значения". Через время появляются нормальные значения. Но пока долистаешь до конца, в начале уже опять "Расчет значения". Вывод таблиц в макет стал невозможным.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
ОтладкаТаблиц
.epf 6,95Kb ver:2
172
172 Скачать бесплатно

Обработка написана для обычных форм. Для управляемых форм необходимо лишь учесть, что адрес для сохранения файлов должен быть доступен с сервера!  Обычно это не является проблемой, т.к. есть "расшаренные" папки.

Обработку можно вставить в конфигурацию, можно использовать как внешнюю. 

 

24.06.23. Исправлена ошибка при выводе в Excel если в таблице больше 65536 строк. Теперь создаётся 2 и более файлов.

 

Обработка не имеет экранной формы!

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

1. Перехвата значения временной таблицы в любой части модуля. Функция "ПолучитьВТ"

2. Вывода значения с типом "ТаблицаЗначений" в макет с сохранением макета в файл (без вывода на экран). Процедура "ВывестиТаблицуВФайл"

3. Вывода временной таблицы в файл. Используются обе вышеописанные функции. Процедура "ВывестиВременнуюТаблицуВФайл"

Для использования программного интерфейса необходимо сначала создать менеджер обработки:

ОтладкаТаблиц = Обработки.ОтладкаТаблиц.Создать(); //Если встроена в конфигурацию
ОтладкаТаблиц = ВнешниеОбработки.Создать(ПутьКФайлуОбработки, Ложь, Ложь); //Для внешних

ТаблицаДляОтладки = ОтладкаТаблиц.ПолучитьВТ(МенеджерВременныхТаблиц, "ВТ_КадровыеДанные", "Сотрудник, Период");
	
ОтладкаТаблиц.ВывестиВременнуюТаблицуВФайл(МенеджерВременныхТаблиц, "ВТ_КадровыеДанные", "Сотрудник, Период");

ОтладкаТаблиц.ВывестиТаблицуВФайл(ТаблицаОткрытыхСтавок, "Имя таблицы");

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

Для вывода Таблицы значений достаточно передать саму таблицу значений. Опционально вторым параметром можно задать имя таблицы.

Вывод файла происходит через заполнение макета с типом "Табличный документ". Табличный документ через метод Записать() пишется в файл *.xls.

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

Тестировал на размере таблицы 16 000 записей. 

Каталог для сохранения файлов указывается в Модуле объекта. Его необходимо изменить:

КаталогФайлов = "C:\Users\filatovps\Desktop\Филатов\Сохраненные файлы\";

или имя на сервере (необходимо для управляемых форм):

КаталогФайлов = "\\s-dcr-db02.int\ZUP\Сохраненные файлы\";

Имя файла формируется таким образом, чтобы никогда не повториться. Код получения имени файла:

ТекВремя = ТекущаяДатаСеанса();
	
ИмяФайла = ИмяТаблицы + Строка(Год(ТекВремя)) + Строка(Месяц(ТекВремя)) + Строка(День(ТекВремя)) + 
						Строка(Час(ТекВремя)) + Строка(Минута(ТекВремя)) + Строка(Секунда(ТекВремя)) + ".xls";

Тестировалось на релизе платформы 8.3.21.1622. Но значения это не имеет. 

Один из примеров кода, который показывает полезность данной поделки. Есть структура таблиц, её можно полностью сохранить в Excel.

В качестве имени файла используется название таблицы. 

Если СохранитьВExcel Тогда
    Для Каждого ТекТаблица Из СтруктураТаблицСправочников Цикл
        Если ТипЗнч(ТекТаблица.Значение) = Тип("ТаблицаЗначений") Тогда
            ОтладкаТаблиц = Обработки.ОтладкаТаблиц.Создать();
            ОтладкаТаблиц.ВывестиТаблицуВФайл(ТекТаблица.Значение, ТекТаблица.Ключ);
        КонецЕсли;
    КонецЦикла;
КонецЕсли;

ВАЖНО! Если имя таблицы указывается как параметр, то дата и время не добавляются в имени файла. При необходимости Вы можете это изменить.

 

Другие полезные обработки:

Пример работы с файлами odt в клиент-серверной модели работы

Чтение данных из Excel. Шаблон кода

Помощник заполнения графиков при вахтовом методе работы

отладка таблица запрос временная

См. также

SALE! %

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

12000 10000 руб.

02.09.2020    161234    892    399    

872

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 руб.

20.08.2024    8553    65    29    

76

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 руб.

06.10.2023    15675    38    8    

73

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

9360 руб.

17.05.2024    23835    70    45    

119

SALE! %

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

15000 10000 руб.

10.11.2023    10655    38    27    

63

SALE! %

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

4800 3840 руб.

14.01.2013    188479    1142    0    

913

Зарплата Учет рабочего времени Программист Бизнес-аналитик Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Зарплата и кадры государственного учреждения 3 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Бухгалтерский учет Платные (руб)

Обработка предназначена для заполнения нецикличных графиков работы для вахтового метода работы и для работы в полевых условиях труда. Вводятся все виды времени вахтового цикла. Календарь вахтовика позволяет не заполнять индивидуальные графики работы на каждого сотрудника, что сильно снижает трудозатраты на ввод данных. Решение предназначено для ЗУП 3.х; ЕРП 2.х; КА 2.х; ЗКГУ 3.х. Благодаря использованию обычных графиков работы, норму времени можно указать по графику пятидневки.

5400 руб.

18.12.2019    27289    33    6    

31

SALE! %

Инструментарий разработчика Программист 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 15000 руб.

07.10.2021    17552    6    32    

42
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. sapervodichka 6916 01.02.23 23:57 Сейчас в теме
Круто, опубликовал как и обещал +1
Maneki; kaaasteeen; biimmap; +3 Ответить
2. RustIG 1749 02.02.23 09:36 Сейчас в теме
(0) а зачем выгружать в эксель такое большое кол-во записей? и какое самое большое кол-во записей приходилось выгружать в эксель?
эксель же тоже медленная при работе с большими списками...
4. biimmap 2022 02.02.23 12:20 Сейчас в теме
(2) Я же с ЗУПом работаю. И довольно часто таблицы просматриваю либо от начала до конца, либо через Excel накладываю фильтры.
Мне важно понимать насколько корректные данные попадают в запрос.

Последний кусок кода - эт я пишу нормальный перенос данных из ЗУП 2.5/УПП в ЗУП 3.1. Выгружаю в Excel что получается, в т.ч. сейчас вот заказчику отправил эти таблицы на изучение. Если не порежут финансирование этой задачи, то будет классный инструмент. Там ещё проверка исходных данных будет.
5. RustIG 1749 02.02.23 13:19 Сейчас в теме
(4) а насколько большие таблицы? 100 тыс записей (строк) - такое бывает? или 20 000 строк? или 2 000?
6. biimmap 2022 02.02.23 13:36 Сейчас в теме
(5) В том и дело, что бывают и большие. Но большинство в нормальном диапазоне.

Но т.к. консоль запросов/отчетов в ЗУПе применить крайне затруднительно... А просматривать просто отладчиком стало невозможно, вот и сделал такую поделку. Она решила мою задачу полностью!
3. abasovit 6 02.02.23 12:05 Сейчас в теме
Спасибо за статью
sergiz; kaaasteeen; biimmap; +3 Ответить
7. biimmap 2022 02.02.23 15:17 Сейчас в теме
Коллеги, сделал обработку бесплатной! Не сразу нашёл как это сделать...

На мой взгляд обработка должна помочь ЗУПерам в отладке, т.к. консоль не подходит. Может и остальным коллегам подойдёт...

Поэтому качаем, не стесняемся! Вместо стартмани принимаю плюсы)
ulyss2sz; sergiz; RibD; DeD MustDie; Sejix; zaxsspam; MikhailDr; students; gucci76; vakham; VOA2009; kaaasteeen; dimkor41; katakuna; mvxyz; Redokov; Dariel; Vladimir-R; spyryty-santyum; puzo50; mkolpakov; user768319; mrChOP93; user1904010; RustIG; +25 Ответить
10. mrChOP93 99 03.02.23 07:11 Сейчас в теме
(7)
т.к. консоль не подходит

Я консолью из инфостарт тул кит пользуюсь для этого, она может сохранять итоговый запрос из отладки со всеми данными промежуточных таблиц.
mkolpakov; +1 Ответить
11. biimmap 2022 03.02.23 10:52 Сейчас в теме
(10) Ну вот сравни простоту моего инструмента и навороченность их. и зачем? Так тот ещё и кучу денег стоит)
8. starik-2005 3090 03.02.23 00:18 Сейчас в теме
Эксель умеет открывать XML-таблицы. Делает это быстро и сразу автофильтр вроде как в них устанавливает.
9. biimmap 2022 03.02.23 00:21 Сейчас в теме
(8) Прикольно. а как это должно мне помочь в отладке?
12. binx 172 03.02.23 12:35 Сейчас в теме
Пользуйтесь http://devtool1c.ucoz.ru/ Инструменты разработчика, все что нужно для отладки в одном инструменте.
13. biimmap 2022 03.02.23 12:49 Сейчас в теме
(12) Спасибо, пользуйтесь сами) Прошу не кидать ссылки, от которых запускается много тупой рекламы. ок?
14. binx 172 03.02.23 13:06 Сейчас в теме
(13) друг мой, это не реклама, а дружеский совет, абсолютно бесплатный инструмент.
15. biimmap 2022 03.02.23 13:09 Сейчас в теме
(14) Открываю сайт, запускается лишнее окно с рекламой, по самой ссылке 6 тупых картинок и никакого описания поделки нигде не видно. Вот о чём речь. Поэтому повторю просьбу: не кидай ссылки таких мусорных сайтов.
17. reset2 17 03.02.23 18:15 Сейчас в теме
(15) еще бы в 2023 году жаловаться на рекламу на сайтах...
А инструмент по ссылке действительно стоящий, я бы даже сказал легендарный!!!
Если уж так боишься внешних ссылок, вот тебе ссылка на инфостарт - https://infostart.ru/public/15126/
Xershi; tormozit; gucci76; biimmap; +4 Ответить
18. biimmap 2022 03.02.23 18:20 Сейчас в теме
(17) Теперь понимаю о каком инструменте речь)
16. binx 172 03.02.23 13:18 Сейчас в теме
потому что платформе ucoz бесплатное размещение сайтов, рекламу размещает домен ucoz, а не автор, он на ней не зарабатывает.
19. triviumfan 97 07.02.23 16:53 Сейчас в теме
Обычно пользуюсь этим:
ОбщегоНазначенияУТ.СохранитьТаблицуЗначенийВФайл(ТЗ, ПутьКФайлу);

Зачем велосипед
odinsmot; +1 Ответить
20. biimmap 2022 07.02.23 23:48 Сейчас в теме
(19) Может затем, что УПП и ЗУП это вообще не УТ!? Как думаешь?
21. пользователь 08.02.23 09:30
Сообщение было скрыто модератором.
...
22. пользователь 08.02.23 23:25
Сообщение было скрыто модератором.
...
23. mwoleg 55 10.03.23 16:59 Сейчас в теме
Согласен с triviumfan
в ERP УП2, Модуль "ОбщегоНазначенияУТ" - содержит область "МетодыДляОтладкиИТестирования" в которой собраны весьма полезные функции с подробным описанием каждой

ПоказатьВременнуюТаблицу()
СохранитьТаблицуЗначенийВФайл()
СравнитьТаблицыЗначений()

Ищите решения в БСП и общих модулях разных конфигураций. Скорее всего, все уже придумано.
24. biimmap 2022 10.03.23 20:38 Сейчас в теме
(23) Найди в ЗУПе этот замечательный модуль!
25. biimmap 2022 07.06.23 23:10 Сейчас в теме
Коллеги, те кто качает бесплатный файл и не ставит плюсы: ничего нигде не ёкает? Спасибо не учили говорить?
ulyss2sz; +1 Ответить
Оставьте свое сообщение