Вставка гиперссылки в форматированный документ

Публикация № 1071558

Разработка - Практика программирования

ФорматированныйДокумент форматированный документ вставка ссылки ссылок

Да, форматированный документ это умеет и сам, но возможности можно расширить!

Поводом стала вот эта тема: //infostart.ru/public/74958/
Поскольку мне пришлось немного повозиться с форматированным документом в ходе текущих работ, накидал вариант решения проблемы.

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

Встроенный в платформу механизм даёт простенький диалог ввода ссылки, не имеет события его обработки/перехвата, и не имеет программного аналога. Значит, сделаем.

Вот полный текст механизма:

// вспомогательная к ВставитьСсылкуВВыделениеФорматированногоДокумента
&НаКлиентеНаСервереБезКонтекста
Процедура СоздатьЭлементПозиции(ФДокумент, рЗакладкаВставки, рДанныеЭлемента)
	рЭлемент=ФДокумент.Вставить(рЗакладкаВставки,рДанныеЭлемента.Текст,рДанныеЭлемента.Элемент.ТипЭлемента);
	ЗаполнитьЗначенияСвойств(рЭлемент,рДанныеЭлемента.Элемент);
	рЭлемент.НавигационнаяСсылка=?(рДанныеЭлемента.Свойство("Ссылка"),рДанныеЭлемента.Ссылка,"");
	рЭлемент.Текст=рДанныеЭлемента.Текст;
КонецПроцедуры	

&НаКлиентеНаСервереБезКонтекста
Функция ВставитьСсылкуВВыделениеФорматированногоДокумента(ФДокумент, рВыделенныйТекст, рСсылка)
Попытка
	рОбласть=ФДокумент.НайтиТекст(рВыделенныйТекст); // ищем везде
	Если рОбласть=Неопределено Тогда
		Возврат "Вставка ссылки невозможна, не определена область выделенного текста!";
	КонецЕсли;
	мЭлементов=ФДокумент.ПолучитьЭлементы(рОбласть.ЗакладкаНачала,рОбласть.ЗакладкаКонца);
	Если мЭлементов.Количество()=0 Тогда 
		Возврат "Вставка ссылки невозможна, не определён выделенный текст!";
	КонецЕсли;
	//
	// проверим, чтобы там уже не было ссылок
	Для каждого рЭлемент Из мЭлементов Цикл
		Если ТипЗнч(рЭлемент)<>Тип("ТекстФорматированногоДокумента") Тогда
			Возврат "Выделенный фрагмент захватывает не только текстовые фрагменты, вставка ссылки невозможна!";
		КонецЕсли;		
		Если Не ПустаяСтрока(рЭлемент.НавигационнаяСсылка) Тогда
			Возврат "В выделенном фрагменте уже фигурирует ссылка, необходимо сначала её убрать!";
		КонецЕсли;
	КонецЦикла;
	
	// конструируем последовательность новых элементов по их позициям согласно выделенной области
	рВесьТекст=ФДокумент.ПолучитьТекст();
	позиНачВыделения=СтрНайти(рВесьТекст,рВыделенныйТекст); // нумерация с 0!
	позиКонВыделения=позиНачВыделения+СтрДлина(рВыделенныйТекст)-1;
	//
	мНовыхЭлементов=Новый Массив;
	позиНачРаб=позиНачВыделения; // позиционирование элементов ФТ идёт встык, без +1
	позиНачЧтен=позиНачВыделения;
	рПозицияВставки=ФДокумент.ПолучитьПозициюПоЗакладке(мЭлементов[0].ЗакладкаНачала);
	//
	Для каждого рЭлемент Из мЭлементов Цикл
		позиНачЭлемента=ФДокумент.ПолучитьПозициюПоЗакладке(рЭлемент.ЗакладкаНачала);
		позиКонЭлемента=ФДокумент.ПолучитьПозициюПоЗакладке(рЭлемент.ЗакладкаКонца);
		//
		// на будущее, доработать, если кому понадобится, в т.ч. сопоставление ссылок картинкам
		рТипЭлемента=ТипЗнч(рЭлемент);
		//Если рТипЭлемента=Тип("ТекстФорматированногоДокумента") Тогда
			рСвойстваЭлемента=Новый Структура("ЦветТекста,ЦветФона,Шрифт,Текст");
		//ИначеЕсли рТипЭлемента=Тип("ПараграфФорматированногоДокумента") Тогда
		//	рСвойстваЭлемента=Новый Структура("ГоризонтальноеПоложение,МеждустрочныйИнтервал,Отступ,ТипПараграфа");
		//ИначеЕсли рТипЭлемента=Тип("КартинкаФорматированногоДокумента") Тогда
		//	рСвойстваЭлемента=Новый Структура("Ширина,Высота,Картинка");
		//КонецЕсли;
		//
		ЗаполнитьЗначенияСвойств(рСвойстваЭлемента,рЭлемент);
		рСвойстваЭлемента.Вставить("ТипЭлемента",рТипЭлемента);
		//
		Если позиНачЭлемента<позиНачРаб Тогда
			Если позиКонЭлемента>позиКонВыделения Тогда
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент",позиНачЭлемента,позиНачВыделения-1,рСвойстваЭлемента));
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент,Ссылка",позиНачВыделения,позиКонВыделения,рСвойстваЭлемента,рСсылка));
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент",позиКонВыделения,позиКонЭлемента,рСвойстваЭлемента));
				Прервать; // вся выделенная область целиком поместилась в один элемент
			Иначе
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент",позиНачЭлемента,позиНачЧтен-1,рСвойстваЭлемента));
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент,Ссылка",позиНачЧтен,позиКонЭлемента,рСвойстваЭлемента,рСсылка));
				позиНачРаб=позиКонЭлемента; // именно так, без +1
				позиНачЧтен=позиКонЭлемента+1;
			КонецЕсли;
		ИначеЕсли позиНачЭлемента=позиНачРаб Тогда
			Если позиКонЭлемента>позиКонВыделения Тогда
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент,Ссылка",позиНачЧтен,позиКонВыделения,рСвойстваЭлемента,рСсылка));
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент",позиКонВыделения+1,позиКонЭлемента,рСвойстваЭлемента));
				Прервать; // конечный хвостовой элемент, на котором закончилось выделение
			Иначе
				мНовыхЭлементов.Добавить(Новый Структура("Начало,Конец,Элемент,Ссылка",позиНачЧтен,позиКонЭлемента,рСвойстваЭлемента,рСсылка));
				позиНачРаб=позиКонЭлемента; // именно так, без +1
				позиНачЧтен=позиКонЭлемента+1;
			КонецЕсли;
		КонецЕсли;
		//
	КонецЦикла;
	
	// получаем тексты "кусочками"
	Для каждого знч Из мНовыхЭлементов Цикл
		знч.Вставить("Текст",Сред(рВесьТекст,знч.Начало,знч.Конец-знч.Начало+1));
	КонецЦикла;
	
	// удаляем все попавшие под обработку старые элементы
	Для й=-1*(мЭлементов.Количество()-1) По 0 Цикл
		рЭлемент=мЭлементов.Получить(-й);
		ФДокумент.Удалить(рЭлемент.ЗакладкаНачала,рЭлемент.ЗакладкаКонца);
	КонецЦикла;
	
	// создаём новые согласно указанным позициям и настройкам
	рЗакладкаВставки=ФДокумент.ПолучитьЗакладкуПоПозиции(рПозицияВставки);
	Для й=-1*(мНовыхЭлементов.Количество()-1) По 0 Цикл
		СоздатьЭлементПозиции(ФДокумент, рЗакладкаВставки, мНовыхЭлементов.Получить(-й));
	КонецЦикла;
	
	Возврат "";
Исключение
	Возврат "ВставитьСсылкуВВыделениеФорматированногоДокумента, общая ошибка: "+ОписаниеОшибки();
КонецПопытки;
КонецФункции

Вызывать это можно, например, так:

ВыдТекст=Элементы.ВашДокумент.ВыделенныйТекст;
ВашаСсылка="http://www.1c.ru";
Результат=ВставитьСсылкуВВыделениеФорматированногоДокумента(ВашДокумент,ВыдТекст,ВашаСсылка);
Если не ПустаяСтрока(Результат) Тогда
	ПоказатьПредупреждение(,рРезультат);
КонецЕсли;


Напомню, чтобы ФД не приписывал спереди e1c:// и прочую ересь, указывайте протокол, например, "http://", причём, если вы хотите использовать ФД в своих целях, туда можно напихать свои адресообразные данные, например какие-нибудь гуиды, главное, чтобы протокол был. Ну и, конечно, ловить щелчок лучше не в поле ФД, а закинув содержимое ФД в html-поле, и уж там по Click'у смотреть href.

Кстати ещё на заметку: форматирование ФД не совсем wisiwig применительно к html-полю, т.е. иногда прямо разительно отличается вид. Но писать xslt-преобразование и пытаться понять, что он каким образом показывает - это уже удовольствие отдельное.

Специальные предложения

Оставьте свое сообщение

См. также

Как я начал администрировать сервер 1С: Предприятие 8.3 с телефона Промо

Администрирование данных 1С Мобильная разработка v8 Бесплатно (free)

Развитие инструментов управления кластером серверов 1С:Предприятие 8.3.

14.04.2017    60945    user700211_a.straltsou    27    

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

Работа с интерфейсом v8::УФ Бесплатно (free)

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

14.08.2020    2185    DrZombi    12    

Использование флажков в динамических списках

Практика программирования Работа с интерфейсом v8::УФ Бесплатно (free)

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

04.08.2020    2639    nekit_rdx    23    

Глобальное меню разработчика для управляемых форм

Инструментарий разработчика v8 v8::УФ 1cv8.cf Бесплатно (free)

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

03.08.2020    3040    tormozit    12    

Копирование числовых ячеек из 1С в Excel Промо

Загрузка и выгрузка в Excel Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

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

15.01.2019    24361    itriot11    25    

Использование ПоказатьВопрос() в событии НачалоВыбора()

Практика программирования v8 v8::УФ Бесплатно (free)

На ИТС описано, как избегать использования модальности в событиях ПередЗаписью() и ПередЗакрытием() (можно ознакомиться по ссылке http://its.1c.ru/docs/v8nonmodal/). А что делать, если нужно задать вопрос пользователю в событии НачалоВыбора(). В данной статье приведу пример реализации с использованием асинхронного вызова ПоказатьВопрос(). Статья предназначена в основном для начинающих программистов, недавно столкнувшихся с управляемыми формами.

20.07.2020    1344    biimmap    2    

Открытие управляемой формы 1С 8.3 с измененным несохраненным объектом

Практика программирования v8::УФ 1cv8.cf Бесплатно (free)

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

13.07.2020    2974    plainer    11    

Команда "Вывести список" для динамического списка. Программное выполнение (вариант)

Универсальные функции v8::УФ 1cv8.cf Бесплатно (free)

Делаем свою кнопку вместо "Вывести список" из пункта "ещё" динамического списка.

11.06.2020    2946    DanDy    58    

Обмен данными. Консистентность vs Многопоточность Промо

Интеграция v8 1cv8.cf Бесплатно (free)

Рассмотрим теоретические основы обмена данными. Какие бывают обмены, какие гарантии при этом даются, зачем идти на компромиссы и что при этом может пойти не так. Есть ли идеальная схема?

03.09.2019    12111    m-rv    1    

Обработка нажатия клавиши

Работа с интерфейсом v8::УФ Бесплатно (free)

Один из способов обработки события нажатия клавиши.

10.06.2020    2290    RotaninV    7    

Серверные вызовы, которые нельзя вызывать

Практика программирования v8 v8::УФ 1cv8.cf Бесплатно (free)

Не баян, а классика. Рассмотрим особенность платформы настолько же древнюю, как сами УФ.

12.05.2020    5956    SeiOkami    29    

Форма выбора (подбор) в управляемых формах

Практика программирования v8 v8::УФ 1cv8.cf Россия Бесплатно (free)

Разбор небольших примеров того, как правильно открывать форму выбора (подбора) в управляемых формах, не прибегая к модальным окнам.

08.05.2020    18000    user5300    15    

Использование программных перечислений, ч.1: строковые константы Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    37203    unichkin    72    

Как ограничить поля отбора в динамическом списке и ничего не сломать

Практика программирования v8::УФ 1cv8.cf Бесплатно (free)

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

06.05.2020    4671    SeiOkami    3    

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

Прочие инструменты разработчика Консоль запросов v8::УФ v8::Запросы v8::СКД Бесплатно (free)

Консоль запросов и СКД – один из наиболее часто используемых программистом инструментов. Как с его помощью можно упростить разработку, в своем докладе на конференции Infostart Event 2019 Inception рассказал Евгений Люлюк, ведущий программист компании GLT.

06.04.2020    6904    Evg-Lylyk    0    

5 шагов по изменению резервирования товаров в УТ 11.4

Оптовая торговля Практика программирования v8::ОУ v8::УФ УТ11 Россия УУ Бесплатно (free)

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

19.03.2020    4521    Igorro82IT    16    

Вспомогательные инструкции в коде 1С Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    30041    tormozit    100    

Об обновлениях

Практика программирования v8 v8::УФ Бесплатно (free)

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

12.02.2020    2599    ipoloskov    27    

Детектор завершения согласования для 1С: Документооборот КОРП

Практика программирования Документооборот и делопроизводство v8::УФ ДО УУ Бесплатно (free)

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

04.02.2020    2942    shiaju    3    

Оформление и рефакторинг сложных логических выражений Промо

Практика программирования v8 Россия Бесплатно (free)

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

20.09.2012    77785    tormozit    131    

Как вывести итоговый вес и объем на форму документа Заказ клиента. УТ 11.4

Практика программирования v8::УФ УТ11 Россия УУ Бесплатно (free)

Всем привет, долго ломал голову, но с помощью тыка и подсказок более опытных программистов, вот что мне удалось достичь и как это я сделал. Открываем конфигуратор - заходим в Документы-Заказ-Клиенту-Формы-ФормаДокумента, все будем делать только здесь, снизу формы две вкладки, в общем сама форма и модуль (как открыть, смотри рисунок - открыть форму).

16.01.2020    3879    VID1234    6    

Как работают управляемые формы и тонкий клиент 1С – взгляд "из-под капота"

Практика программирования Инструментарий разработчика v8::УФ Бесплатно (free)

Переход на управляемые формы перевернул процесс разработки на 1С, заставив программистов менять привычные подходы к описанию логики работы интерфейса. Руководитель компании «Цифровой Кот» Юрий Лазаренко в своем докладе на конференции Infostart Event 2019 Inception рассказал о том, как устроены управляемые формы и как правильно работать с тонким клиентом платформы 1С:Предприятие.

23.12.2019    12494    TitanLuchs    23    

Обработка расширением на клиенте

Расширения Универсальные функции v8::УФ 1cv8.cf Бесплатно (free)

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

31.10.2019    7050    EvgenURNN    9    

Запись значения в поле ввода/формы со срабатыванием события ПриИзменении Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Иногда возникает необходимость после записи значения в какое либо поле ввода/формы вызвать для него обработчик события ПриИзменении, а о вызове самого события приходится только мечтать. В этой статье приводится программный способ вызова этого события.

11.07.2007    48147    tormozit    41    

Изменение макета в карточке номенклатуры(УТ 11, КА 2)

Практика программирования Работа с интерфейсом v8::УФ ERP2 УТ11 КА2 Бесплатно (free)

Краткая памятка по выведению добавленного реквизита в справочнике Номенклатура в стандартную карточку номенклатуры в УТ 11, КА 2, ERP 2.

24.10.2019    4367    darkultro37    4    

Формы. Трудности программной работы

Работа с интерфейсом v8 v8::УФ 1cv8.cf Бесплатно (free)

Рассматриваем основные подводные камни, с которыми приходится сталкиваться при программной работе с формами, а также способы обхода самых частых проблем.

06.10.2019    11712    YPermitin    31    

Передача данных с сервера на клиент через WebSocket NativeAPI и Centrifugo

Интеграция v8::УФ 1cv8.cf Россия Бесплатно (free)

В статье описываю реализацию обмена для замены передачи сообщений через 1С Сервер взаимодействия.

23.09.2019    7240    malikov_pro    11    

Как сделать из &НаКлиентеНаСервереБезКонтекста почти &НаКлиентеНаСервере Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Как сделать метод формы, доступный на клиенте и на сервере одновременно, и сохранить при этом удобство разработки

10.09.2017    44591    tormozit    74    

"Вы всё сломали!". Разбираемся, кто прав, кто виноват

Практика программирования v8::УФ ИТ-компания Россия Бесплатно (free)

О том, как "всё испортил" программист, а на самом деле виноват заказчик.

20.09.2019    5963    RomanCrow13    27    

Оповещения боту из 1С за 31 минуту

Практика программирования Интеграция v8::УФ 1cv8.cf Бесплатно (free)

Поделюсь опытом, как быстро сделать бота с оповещениями в Телеграмм из 1С без лишних затрат.

18.09.2019    16939    feva    41    

Работа из 1С с API PayPal

WEB v8::УФ 1cv8.cf Бесплатно (free)

PayPal - международная платежная система является очень популярной за пределами СНГ для онлайн торговли и не только. API PayPal достаточно хорошо документирован. При попытке связать 1C с PayPal пришлось столкнуться с несколькими нюансами, которыми и хотелось бы поделиться в этой статье с примерами программного кода.

08.09.2019    5555    da_1c    1    

Выгрузка документа по условию Промо

Практика программирования Разработка v8 Бесплатно (free)

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    16006    m-rv    2    

EnterpriseData – часть 3. Загрузка данных, идентификация объектов

Практика программирования Математика и алгоритмы Перенос данных из 1C8 в 1C8 Разработка v8 v8::УФ 1cv8.cf Бесплатно (free)

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    14736    ids79    8    

Кодовое создание документа на 8.3, управляемые формы (на примере)

Практика программирования Разработка v8::УФ 1cv8.cf Бесплатно (free)

В своё время мне нужен был код создания документа через обработку, пол дня потерял пока нашёл гайд по решению данной задачи. Поэтому просто решил поделиться данным решением. Подойдёт только новичкам, опытные программисты могут даже не читать =)

07.08.2019    5895    Nefilimus    16    

Автоматическая SMS рассылка

SMS рассылки v8 v8::УФ Розница УТ11 Бесплатно (free)

Как сделать автоматическую рассылку SMS именинникам на примере Розница 2.2.

29.07.2019    4562    Elvisnya    8    

Как настроить правильную техподдержку (helpdesk, service desk на коленке) Промо

Управление услугами и сервисом Управление взаимоотношениями с клиентами (СRM) Документооборот и делопроизводство Монитор заказов Учет рабочего времени Управление взаимоотношениями с клиентами (СRM) Документооборот и делопроизводство Монитор заказов Учет рабочего времени v8 УУ Бесплатно (free)

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

24.04.2019    17672    siddy    0    

Добавление внешних отчетов / обработок в собственные подсистемы

Практика программирования Разработка v8::УФ Россия Бесплатно (free)

Краткая инструкция по добавлению функционала доп обработок/отчетов в собственную подсистему.

24.05.2019    10483    login1020    7    

Подсистема БСП «Управление доступом», основные объекты и регистры

БСП (Библиотека стандартных подсистем) Роли и права v8 v8::УФ v8::Права 1cv8.cf Бесплатно (free)

Основные принципы работы подсистемы «Управление доступом» из состава БСП. Виды доступа, ограничение доступа на уровне записей. Описание основных объектов и регистров, используемых подсистемой.

23.05.2019    21678    ids79    9    

Расшифровка отчета на СКД с детализацией по выбранному полю на основе БСП

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ v8::СКД 1cv8.cf Россия Бесплатно (free)

В данной статье рассмотрим механизм работы с расшифровкой отчета, созданного при помощи системы компоновки данных, в управляемом приложении. Показывать буду на примере реальной задачи. Условие: использовать имеющиеся в конфигурации механизмы БСП, с минимальными и "правильными" изменениями. Расшифровка должны быть двух видов на каждом поле: 1. Открывать ссылочный объект 2. Открывать новую форму с детализацией табличной части документа. Собственно ради второго пункта и писалась статья, в основном для себя, чтобы не забыть.

14.05.2019    19337    Viktor_Ermakov    8    

Excel vs 1С: битва с неожиданным исходом Промо

Анализ учета Универсальные обработки Загрузка и выгрузка в Excel Финансовые Управленческие v8 1cv8.cf Россия Бесплатно (free)

Что лучше 1С или Excel? Разберемся, в казалось бы, очевидном, чтобы получить невероятное!

11.04.2019    36187    bolefirenko    116    

Групповая обработка (Управляемая консоль отчетов)

Обработка документов Инструментарий разработчика Обработка справочников v8 v8::УФ v8::Запросы 1cv8.cf 1С:Франчайзи, автоматизация бизнеса Бесплатно (free)

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

13.05.2019    9369    Evg-Lylyk    10    

Сохранение запроса со всеми параметрами и временными таблицами

Универсальные функции v8 v8::УФ Россия Бесплатно (free)

Функция сохранения запроса со всеми параметрами и временными таблицами в формате *.q1c для открытия в консоли запросов с диска ИТС.

13.05.2019    6422    Serge R    5    

Оперативная доработка отчетов без обновления конфигурации или расширения

Практика программирования Разработка v8::УФ 1cv8.cf Россия Бесплатно (free)

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

12.05.2019    4565    samvani    0    

Как прикрутить ГУИД к регистру сведений Промо

Практика программирования Перенос данных из 1C8 в 1C8 Разработка v8 Бесплатно (free)

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

16.04.2019    20125    m-rv    17    

Автоматизация печатной формы (автоформирование табличного документа на основе любой таблицы значений)

Практика программирования Разработка v8 v8::УФ 1cv8.cf Бесплатно (free)

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

18.04.2019    3647    NeSPEC    0    

Этюды по программированию. Хитрости создания расширений для конфигураций на БСП. Часть 2

Практика программирования Разработка v8::УФ Бесплатно (free)

Некоторые нюансы, если вы захотите создавать свои расширения. Продолжение первой части.

16.04.2019    11011    milkers    9    

Добавление возможности подключения внешних отчетов и обработок к объектам конфигурации при помощи расширения

Универсальные функции v8::УФ ERP2 Бесплатно (free)

Часто приходится сталкиваться с тем, что необходимо внести изменения в типовую конфигурацию, но очень не хочется снимать её с поддержки. Для этого в 1С существует ряд инструментов. Эта короткая статья посвящена тому, как подучить возможность подключения внешних отчетов к объекту конфигурации при помощи расширения на примере 1С:ERP Управление предприятием 2 (проверено на 1С:ERP Управление предприятием 2 (2.4.6.230)).

15.04.2019    4533    user995537    0    

Как сделать запрос на изменение данных Промо

Практика программирования v8 v8::Запросы 1cv8.cf Бесплатно (free)

В статье приведены особенности внутренней архитектуры и примеры работы с расширением языка запросов 1С.

01.06.2018    30444    m-rv    21