Процедура-плагин: Выгрузка в Йоксель для Новейшего отчета 7.7

09.04.09

Разработка - Разработка внешних компонент

Процедура дополняет Новейший отчет 7.7 с возможностью выгрузки созданного отчета в Йоксель (Excel) с группировками по строкам.

Бесплатные

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

Узнавайте о новых бесплатных решениях в нашей телеграм-группе Инфостарт БЕСПЛАТНО

Наименование Скачано Бесплатно
Процедура для добавления в Глобальный модуль 1С
.1228827140 6,87Kb
214 Скачать бесплатно

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Одна из самых лучших систем отчетов Новейший Отчет 7.7 не имеет возможности выгрузки в Йоксель, в результате этого, после сохранения отчета в Excel группировки теряются. Приведенная процедура исправляет это досадное упущение.

Работает и с Демо-версией и с Коммерческой версией Новейшего отчета (если у Вас полная версия Новейшего отчета процедуру можно добавить непосредственно в NR_Navigator.ert).

Для работы требует Внешниюю компоненту:  Йоксель. (домашняя страница автора: http://yoksel.net.ru).

Порядок внедрения: процедуру добавляем в Глобальный модуль 1С, во внешнюю обработку Новейшего отчета NR_Navigator.ert добавляем кнопку Йоксель с формулой глВыгрузитьНовейшийОтчетВЙоксель(Таб)

Обновление от 19/12/08: не определялись группировки в кросс-таблицах.

 

Процедура глВыгрузитьНовейшийОтчетВЙоксель(Таб) Экспорт
	Перем Документ;
	Перем ТЗ;
	Перем Область;
	
	Попытка
		Документ = СоздатьОбъект ("ТабличныйДокумент");
	Исключение
		Если ЗагрузитьВнешнююКомпоненту("SpreadSheet.dll")=0 Тогда
			Сообщить("Не удалось загрузить ВК Йоксель! Выгрузка невозможна.");
			Возврат;
		Иначе
			Документ = СоздатьОбъект ("ТабличныйДокумент");
		КонецЕсли;
	КонецПопытки;

	
	Документ.ЗагрузитьИзТаблицы(Таб);

	ТЗ=СоздатьОбъект("ТаблицаЗначений");
	ТЗ.НоваяКолонка("Уровень");
	ТЗ.НоваяКолонка("Начало");
	ТЗ.НоваяКолонка("Конец");
	
	НачалоТаблицы=1;
	ВысотаТаблицы=Документ.ВысотаТаблицы();
	
	// Определяем начало группировок
	Для СтрИнд=НачалоТаблицы По ВысотаТаблицы Цикл
		Область=Документ.Область(СтрИнд,1);
		Если Область.Текст="1" Тогда
			НачалоТаблицы=СтрИнд;
			Прервать;
		КонецЕсли;
	КонецЦикла;

	Если НачалоТаблицы>1 Тогда
		// Загоняем все начала группировок в ТЗ
		Для СтрИнд=НачалоТаблицы По ВысотаТаблицы Цикл
			Для КолИнд=2 По 8 Цикл
				Область=Документ.Область(СтрИнд,КолИнд);
				Если (Область.Текст="-") Тогда
					ТЗ.НоваяСтрока();
					ТЗ.Уровень = КолИнд-1;
					ТЗ.Начало = СтрИнд;
					ТЗ.Конец = 0;
					Прервать;
				ИначеЕсли ПустоеЗначение(Документ.Область(СтрИнд,КолИнд).Текст)=0 Тогда
					Если ПустоеЗначение(Документ.Область(СтрИнд-1,КолИнд).Текст)=1 Тогда
						Если ПустоеЗначение(Документ.Область(СтрИнд-1,КолИнд+1).Текст)=0 Тогда
							ТЗ.Конец = СтрИнд-1;
							Прервать;
						КонецЕсли;
					КонецЕсли;
				КонецЕсли;
			КонецЦикла;
			Если ПустоеЗначение(Документ.Область(СтрИнд,1).Текст)=1 Тогда
				ТЗ.НоваяСтрока();
				ТЗ.Уровень = 1;
				ТЗ.Начало = СтрИнд;
				ТЗ.Конец = 0;
				Прервать;
			КонецЕсли;
		КонецЦикла;
		
		// Определяем окончания группировок
		КолВоСтрок=ТЗ.КоличествоСтрок();
		Для инд1=1 По КолВоСтрок-1 Цикл
			Уровень=ТЗ.ПолучитьЗначение(инд1,"Уровень");
			Если ТЗ.ПолучитьЗначение(инд1,"Конец")=0 Тогда
				Для инд2=(инд1+1) По КолВоСтрок Цикл
					Если Уровень>=ТЗ.ПолучитьЗначение(инд2,"Уровень") Тогда
						ТЗ.УстановитьЗначение(инд1,"Конец",ТЗ.ПолучитьЗначение(инд2,"Начало")-1);
						Прервать;
					КонецЕсли;
				КонецЦикла;
			КонецЕсли;
		КонецЦикла;
		ТЗ.УдалитьСтроку(КолВоСтрок);
		
		// Устанавливаем группировки строк в Йокселе
		ТЗ.ВыбратьСтроки ();
		Пока ТЗ.ПолучитьСтроку() = 1 Цикл
			Документ.ДобавитьГруппуСтрок(ТЗ.Начало+1,ТЗ.Конец);
		КонецЦикла;
	
		// Свертка всех группировок Йоксель
		Для инд = -Документ.КоличествоУровнейГруппировкиСтрок() По -1 Цикл
			Документ.ПоказатьУровеньГруппировокСтрок (-инд);
		КонецЦикла;

	КонецЕсли;	

	// Без СокрЛП Йоксель не распознает цифры
	Для инд1=1 По Документ.ВысотаТаблицы() Цикл
		Для инд2=1 По Документ.ШиринаТаблицы() Цикл
			Область=Документ.Область(инд1,инд2);
			Область.Текст=СокрЛП(Область.Текст);
		КонецЦикла;
	КонецЦикла;

	Документ.Область().Расшифровка(,2);
	
	Фрейм=Документ.Показать(Документ.Область(1,2).Текст);
	Фрейм.ОтображатьСтруктуру(1);
	Фрейм.ОтображатьКнопкиУровней(1);

КонецПроцедуры

 

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Банковские операции Загрузка и выгрузка в Excel Бухгалтер Пользователь 1С:Предприятие 7.7 1C77 Россия Бухгалтерский учет Платные (руб)

Решение предоставляет комплексную загрузку банковской выписки из CSV, XLS, TXT файла в 1С 7.7 любой конфигурации. Позволяет создавать документы выбранного вида, например "Строка выписки банка (приход/расход)", или многострочный табличный документ, например Выписка, для каждой операции из загружаемого файла банковской выписки. Загружает реквизиты документа, а также создаёт контрагентов и другие необходимые элементы справочников.

5084 руб.

29.07.2021    27600    22    23    

22

Разработка внешних компонент WEB-интеграция Программист 1С:Предприятие 7.7 1C77 Платные (руб)

Компонента HttpSrv7 позволяет создавать веб-сервисы в среде 1С 7.7 и, используя файлы HTML, несложные веб-сайты. С помощью нее можно обеспечить доступ к данным 1С 7.7 из браузера. Дополнительно используя компоненту HTTP_Async можно наладить обмен данными между удаленными информационными базами по протоколам HTTP, HTTPS и WebSocket. С помощью компоненты HttpSrv7 используя протокол WebSocket можно создавать и поддерживать работу нескольких чатов. С помощью компоненты HTTP_Async можно асинхронно отправлять HTTP-запросы к сайтам, веб-сервисам (в т.ч. к HTTPSrv7) и обрабатывать ответы по мере их поступления. Компонента GISMT в дополнение к HTTP_Async имеет функцию цифровой подписи в формате Base64 и, таким образом, имеет все возможности для работы с API ГИС МТ "Честный знак" непосредственно из среды 1С 7.7.

6100 руб.

27.05.2022    12416    2    20    

39

Разработка внешних компонент Системный администратор Программист 1С:Предприятие 7.7 1С:Предприятие 8 Россия Платные (руб)

Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в режиме Реального времени между разными контекстами (формами) или потоками одного процесса. В перспективе функционал будет расширен для обмена между процессами, даже разных версий платформ. Совместим с версиями Windows рабочих станций и серверов, с платформами 1С разных версий и релизов в режиме Native начиная с 8.2, и в режиме COM начиная с версий 7.7. По скорости чтения и записи лишь немногим уступает стандартной структуре 1С. НОВОЕ: Добавлен функционал регистрации компоненты COM в качестве OLE Auto (COMОбъект) для поддержки её работы в серверах старых версий 1С: 8.0 и 8.1, где работа с компонентами исключена. Теперь можно коммуникацию с Фоновыми заданиями на этих версиях проводить.

7320 руб.

19.04.2023    6841    1    0    

3

Разработка внешних компонент Программист 1С:Предприятие 7.7 Платные (руб)

Компонента для выбора значения из больших списков значений.

5084 руб.

02.12.2021    7776    3    19    

5

Разработка внешних компонент WEB-интеграция Программист 1С:Предприятие 7.7 Абонемент ($m)

Компонента позволяет использовать различные веб-сервисы интернет-ресурсов, например работать с онлайн-кассой через API, предоставленное ее разработчиком. Тестировалась на платформе 1С релиза 7.70.027.

1 стартмани

14.11.2019    23132    135    mdbruyfn    110    

19

Универсальные функции Программист 1С:Предприятие 7.7 1C77 1С:Комплексная 7.7 Абонемент ($m)

Предлагается набор функций 1с 7.7 для формирования строки json стандартными средствами.

1 стартмани

10.12.2018    13379    malovandrey    7    

19

Разработка внешних компонент ККМ Кассовые операции Системный администратор Программист Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Внешняя компонента - оболочка для работы в среде 1С 7.7 или 1С 8.1 с последними версиями драйверов ККМ от АТОЛ. Поддерживаются драйвера x32 начиная с версии 9.11. Присутствует внешняя обработка для полноценной работы с данными драйверами (поддержка ревизий 2.0, 2.1, 2.2, поддержка протокола ОФД 1.0, 1.0.5, 1.1).

1 стартмани

09.08.2017    57871    354    asdfghgghjdhg    141    

18
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. АЛьФ 09.12.08 16:36 Сейчас в теме
2. support 4484 09.12.08 16:42 Сейчас в теме
Вот это новость, неожиданно!
Прикольно!
3. JohnyDeath 302 09.12.08 17:12 Сейчас в теме
(1,2) Даёшь полные версии Новейшего отчета Ужасту и Djelf!
4. CheBurator 3234 09.12.08 17:38 Сейчас в теме
5. support 4484 09.12.08 18:01 Сейчас в теме
Djelf полная версия есть?
6. Djelf 255 09.12.08 18:18 Сейчас в теме
Есть, спасибо. Я про "Таб" иначе наверное не догадался бы ;)
7. alexandrlevitsky 11.12.08 18:34 Сейчас в теме
Полезная вещица.
Только просьба быть более толерантным к пользователям, которые ищут выгрузку в Excel, а не "Йоксель". Ну это так, вредничаю))
8. Djelf 255 11.12.08 22:12 Сейчас в теме
Да нет, все логично, Йоксель действительно пока еще не настолько популярен, чтоб его каждый знал. Добавил в заголовок "(Excel)" ;)
9. serpent 70 15.12.08 11:49 Сейчас в теме
Спасибо...
Ждем внедрения в основную поставку.
10. astvit15 07.10.11 16:30 Сейчас в теме
11. пользователь 07.10.11 16:31
Сообщение было скрыто модератором.
...
12. пользователь 07.10.11 16:31
Сообщение было скрыто модератором.
...
13. пользователь 07.10.11 16:31
Сообщение было скрыто модератором.
...
14. пользователь 07.10.11 16:32
Сообщение было скрыто модератором.
...
15. пользователь 07.10.11 16:32
Сообщение было скрыто модератором.
...
16. пользователь 07.10.11 16:32
Сообщение было скрыто модератором.
...
17. пользователь 07.10.11 16:33
Сообщение было скрыто модератором.
...
18. пользователь 07.10.11 16:33
Сообщение было скрыто модератором.
...
19. пользователь 07.10.11 16:33
Сообщение было скрыто модератором.
...
20. ARTEM123456 05.03.12 08:25 Сейчас в теме
21. ARTEM123456 05.03.12 08:26 Сейчас в теме
22. пользователь 16.04.13 12:12
Сообщение было скрыто модератором.
...
Для отправки сообщения требуется регистрация/авторизация