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

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

Администрирование - Администрирование данных 1С - Обработка документов

обработка управляемые формы

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

Часть 1. Многабукаф

Кому лень читать - можно сразу скроллить вниз к обработке.

Итак, задача поставлена, и теперь нам нужно понять, являются ли входящие строки представлениями документов.

Тут на помощь приходят регулярные выражения и шикарная публикация: Регулярные выражения без внешних компонент? Легко!

Точка входа в самом низу ОбработатьДокументы(МассивПредставлений) ей мы отдаем массив строк представлений.

&НаКлиенте
Функция ПостроитьФабрикуXDTO(Фасет)
	Чтение = Новый ЧтениеXML;
    Чтение.УстановитьСтроку(
                "<Model xmlns=""http://v8.1c.ru/8.1/xdto"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xsi:type=""Model"">
                |<package targetNamespace=""sample-my-package"">
                |<valueType name=""testtypes"" base=""xs:string"">
                |<pattern>" + Фасет + "</pattern>
                |</valueType>
                |<objectType name=""TestObj"">
                |<property xmlns:d4p1=""sample-my-package"" name=""TestItem"" type=""d4p1:testtypes""/>
                |</objectType>
                |</package>
                |</Model>");

    Модель = ФабрикаXDTO.ПрочитатьXML(Чтение);
    МояФабрикаXDTO = Новый ФабрикаXDTO(Модель);
    Пакет = МояФабрикаXDTO.Пакеты.Получить("sample-my-package");
    Тест = МояФабрикаXDTO.Создать(Пакет.Получить("TestObj"));
	
	Возврат Тест;
КонецФункции

&НаКлиенте
Функция ПроверитьСтроку(Фабрика, Строка)
    Попытка
        Фабрика.TestItem = Строка;
        Возврат Истина;
    Исключение
        Возврат Ложь;
    КонецПопытки;
    
КонецФункции

&НаКлиенте
Функция ПроверитьПредставление(Фабрика, ДокументСтрокой)
	Возврат ПроверитьСтроку(Фабрика,ДокументСтрокой);
КонецФункции

&НаКлиенте
Функция ОбработатьДокументы(МассивПредставлений)
	ДокументыКОбработке = Новый Массив;
	
	Фабрика = ПостроитьФабрикуXDTO(".*\sот\s\d{2}\.\d{2}.\d{4}\s\d{1,2}:\d{2}:\d{2}");
	
	Для Каждого ДокументСтрокой ИЗ МассивПредставлений Цикл
		Если СокрЛП(ДокументСтрокой) = "" тогда
			Продолжить;
		КонецЕсли;
		ДокументСтрокойСЛП = СокрЛП(ДокументСтрокой);
		Если ПроверитьПредставление(Фабрика,ДокументСтрокойСЛП) тогда
			ДокументыКОбработке.Добавить(ДокументСтрокойСЛП);
		Иначе
			Сообщение = Новый СообщениеПользователю;
			Сообщение.Текст = "Строка """+ДокументСтрокойСЛП+""" не выглядит как представление документа";
			Сообщение.Сообщить();
		КонецЕсли;
	КонецЦикла;
	
	Результат = ОбработатьДокументыСервер(ДокументыКОбработке);
	
	Возврат Результат;
КонецФункции

Как вы знаете, строка документа состоит из синонима документа, номера и даты. Для определения вида документа по синониму построим список синонимов документов конфигурации:

&НаСервере
Функция ПолучитьТЗМетаданныхДокументов()
	КвалификаторыСтроки = Новый КвалификаторыСтроки(250);
    ОписаниеСтроки = Новый ОписаниеТипов("Строка", ,КвалификаторыСтроки);
	
	КвалификаторыЧисла = Новый КвалификаторыЧисла(3, 0, ДопустимыйЗнак.Неотрицательный);
    ОписаниеЧисла = Новый ОписаниеТипов("Число", КвалификаторыЧисла);
	
	ТЗМетаданные = Новый ТаблицаЗначений;
	ТЗМетаданные.Колонки.Добавить("Имя", ОписаниеСтроки);
	ТЗМетаданные.Колонки.Добавить("Синоним", ОписаниеСтроки);
	ТЗМетаданные.Колонки.Добавить("Вес", ОписаниеЧисла);
	
	Для Каждого ЭлементМетаданных ИЗ Метаданные.Документы Цикл
		НС = ТЗМетаданные.Добавить();
		ЗаполнитьЗначенияСвойств(НС,ЭлементМетаданных);
		НС.Вес = СтрДлина(ЭлементМетаданных.Синоним);
		Если ЗначениеЗаполнено(ЭлементМетаданных.ПредставлениеОбъекта) Тогда
			НС.Синоним = ЭлементМетаданных.ПредставлениеОбъекта;
		КонецЕсли;
	КонецЦикла;
	
	ТЗМетаданные.Сортировать("Вес Убыв,Синоним");
	Возврат ТЗМетаданные;
КонецФункции

Тут всё просто - пробежались по метаданным документов, собрали все синонимы и имена документов и отсортировали по убыванию длины строки. Большой соблазн сразу разбить строку представления по " от ", но бывают синонимы документов, которые содержат " от " в своем тексте, например "Приход товаров от поставщика 1 от 03.05.2018 00:00:00". Поэтому искать будем от максимальной длины строки. Кто-то может захотеть искать последний " от " в представлении, но мне захотелось так.

Ну и, наконец, собираем всё в кучку:

//Возвращает документ по имени, номеру и дате
&НаСервере
Функция ВернутьДок(Имя,НомерДок,ДатаДок)
	Возврат Документы[Имя].НайтиПоНомеру(НомерДок,ДатаДок);
КонецФункции

&НаСервере
Функция ОбработатьДокументыСервер(СписокПредставлений)
	//Построили ТЗ синонимов и имен документов
	ТЗМетаданных = ПолучитьТЗМетаданныхДокументов();
	МассивСсылок = Новый Массив; ///Пустой массив результата
	//Для каждой строки из списка представлений
	Для Каждого ПредставлениеДок ИЗ СписокПредставлений Цикл
		//Пробегаем по имеющимся синонимам метаданных от самых длинных
		//Тут, конечно, можно покопаться с грязной строкой и не бегать
		//по ТЗ синонимов, а получить просто отбором, но мне лень
		Для Каждого ШаблонПоиска ИЗ ТЗМетаданных Цикл
			//и прикладываем к имеющейся "грязной" строке документа
			Если Найти(ПредставлениеДок,ШаблонПоиска.Синоним) Тогда
				//Если нашли - исключаем из неё синоним,
				//Теперь нужно получить из хвоста номер и дату
				СтрокаНомерДата = СокрЛП(СтрЗаменить(ПредставлениеДок,ШаблонПоиска.Синоним,""));
				//Разбили по " от " хвост. В первом элементе массива номер - во втором дата
				МассивНомерДата = СтрокаВМассивСтрок(СтрокаНомердата," от ");
				НомерДок = СокрЛП(МассивНомерДата[0]);
				//Пересоберем дату строкой к типу Дата 1С
				СтрокаДата = СокрЛП(МассивНомерДата[1]);
				ДатаПоЭлементам = СтрЗаменить(СтрЗаменить(СтрокаДата," ",":"),".",":");
				МассивЭлементовДаты = СтрокаВМассивСтрок(ДатаПоЭлементам,":");
				//02.06.2017 16:02:44
				// 0  1    2  3  4  5
				ДатаДок = Дата(МассивЭлементовДаты[2],МассивЭлементовДаты[1],МассивЭлементовДаты[0],
				  	       МассивЭлементовДаты[3],МассивЭлементовДаты[4],МассивЭлементовДаты[5]);
				//Получим нужный документ	
				НайденныйДок = ВернутьДок(ШаблонПоиска.Имя,НомерДок,ДатаДок);
				Если ЗначениеЗаполнено(НайденныйДок) Тогда
					//Нашли и добавили в массив ссылок
					МассивСсылок.Добавить(НайденныйДок);
				Иначе
					Сообщение = Новый СообщениеПользователю;
					Сообщение.Текст = "Документ """+ПредставлениеДок+""" не найден";
					Сообщение.Сообщить();
				КонецЕсли;
				Прервать;
			КонецЕсли;
		КонецЦикла;
	КонецЦикла;
	Возврат МассивСсылок;
КонецФункции

Ну вот, вкратце, так. Вы можете использовать куски кода и написать свою обработку, а можете скачать за 1$m нижеописанную обработку, чем порадуете меня и сэкономите свое время.

Часть 2. Обработка

Итак, для ленивых, и тех, кто просто хочет поделиться $m.

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

Тестировалась на платформах: 8.2.19+, 8.3.11

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

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

Наименование Файл Версия Размер
Обработка документов по представлению
.epf 13,28Kb
04.05.18
4
.epf 1.0.1 13,28Kb 4 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. paulpit 18 04.05.18 15:04 Сейчас в теме
Если в представлении документа в скобках прописан вид операции, то так понимаю, такой документ не идентифицируется?
2. GOshaSaveiko 30 04.05.18 15:10 Сейчас в теме
(1) Можете строку с таким документом показать, пожалуйста?
Может получиться так, что найдется. Если синоним документа присутствует в представлении документа, то он, поочерёдно прикладывая синонимы из метаданных определит вид документа. Правда, могут возникнуть трудности потом с нахожденеим номера. Напишите мне свою электропочту в личку - я скину вам обработку - протестируем.
3. paulpit 18 04.05.18 15:44 Сейчас в теме
(2)paulpit@yandex.ru пока не могу найти, но помню раньше встречал вид операции в представлении документа.
Еще не смогли найти Счет-фактура выданный на аванс NNNNN (А) от 31.03.2018 23:59:59
(А) - мешается.
4. GOshaSaveiko 30 04.05.18 15:54 Сейчас в теме
(3) есть подозрение, что это номер видоизменяется. То есть в форме номер - синтетический, а-ля "НомерДок". А реальный номер документа NNNNN (А) с видимостью 0
отправил на почту.
5. paulpit 18 04.05.18 15:58 Сейчас в теме
(4) Постфикс (А) - это требование законодательства по НДС.
6. GOshaSaveiko 30 04.05.18 16:10 Сейчас в теме
(5) Или ото https://its.1c.ru/db/v8312doc#bookmark:dev:TI000000279:
ДокументМенеджер.<Имя документа>.ОбработкаПолученияПредставления (DocumentManager.<Имя документа>.PresentationGetProcessing)
ДокументМенеджер.<Имя документа> (DocumentManager.<Имя документа>)
ОбработкаПолученияПредставления (PresentationGetProcessing)
Синтаксис:

ОбработкаПолученияПредставления(<Данные>, <Представление>, <СтандартнаяОбработка>)
Параметры:

<Данные>

Тип: Структура.
Содержит значения полей, из которых формируется представление.
<Представление>

Тип: Строка.
Строка, в которую нужно поместить представление объекта или ссылки.
<СтандартнаяОбработка>

Тип: Булево.
В данный параметр передается признак формирования стандартного представления объекта или ссылки.
Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина.
Описание:

Вызывается при получении представления объекта или ссылки.
Замечание:

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


Если так - то ещё не понятно, что лучше написать - свой костыль по получению номера для каждого типа документов, где стандартное представление изменено, или заморочиться на универсальность, что, на мой взгляд, не стоит затраченных усилий и результата
7. admrez 16 15.06.18 17:29 Сейчас в теме
Сформировал отчет дебиторская задолженность по срокам долга. Скормил обработке список из отчета, но документы не определились - пишет "строка не выглядит ка представление документа"
Идея отчета очень интересная и нужная.

Может я что-то делаю не так?

УТ11.4.3.174
Реализация товаров и услуг ДНТА-000584 от 19.07.2016 20:33:07, 19.07.2016 20:33:07
Реализация товаров и услуг ДНТА-000622 от 28.07.2016 16:00:46, 28.07.2016 16:00:46
Реализация товаров и услуг ДНТА-000687 от 16.08.2016 20:04:34, 16.08.2016 20:04:34
Реализация товаров и услуг ДНТА-000741 от 01.09.2016 18:52:31, 01.09.2016 18:52:31
Реализация товаров и услуг ДНТА-000805 от 15.09.2016 21:28:45, 15.09.2016 21:28:45
8. admrez 16 15.06.18 17:39 Сейчас в теме
Если подать в виде Реализация товаров и услуг ДНТА-000584 от 19.07.2016 20:33:07 - то тогда определяется документ. Но теряется смысл обработки. Как можно обойти все, что после запятой?
9. admrez 16 15.06.18 17:47 Сейчас в теме
Изменили в отчеты формат вывода - вроде стало получаться. Жизненно необходима фича
1. Убрать первые символы в строке в количестве N штук
2. Убрать последние символы в строке в количестве N штук
10. GOshaSaveiko 30 15.06.18 23:54 Сейчас в теме
(9) добрый день. Таки да. Строка первоначально не выглядела как представление документа. Он бы вам ничего не нашел. Обычно есть способ вывести только регистратор. Если он вывел дополнительно дату через запятую, то в настройках отчёта можно попросить не выводить реквизиты в отдельной колонке. Либо сформировать отчёт без поля дата. Код обработки расписан очень подробно и вашу просьбу вы можете легко дописать самостоятельно в одну строчку кода, либо подготовить данные в excel. Я учту ваши пожелания, если соберусь переписывать обработку для получения документов с кастомным представлением. Спасибо.
Оставьте свое сообщение

См. также

Универсальный ввод на основании (заполнение) документов Промо

Обработка документов v8 v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 Розница УПП1 ERP2 БП3.0 КА2 ЗУП3.x Абонемент ($m)

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

2 стартмани

19.05.2010    33825    118    nika.1007    87    

Запуск фонового задания во внешней обработке без регистрации в справочнике "Дополнительные отчеты и обработки"

Практика программирования v8::УФ ЗУП3.x Россия Абонемент ($m)

Описал, как показать прогресс выполнения длительной операции во внешней обработке, и при этом не регистрировать обработку в справочнике "ДополнительныеОтчетыИОбработки". Проверял на БСП версии "3.1.2.264".

1 стартмани

09.03.2020    2706    7    VinnieThePOOH    5    

Методика обновления формы объекта данных при изменении объекта

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

В формах объектов данных часто встречаются элементы, косвенно связанные с объектом. Логику обновления этих элементов при изменении объекта обычно вызывают из обработчиков ПриСозданнииНаСервере и ПриОткрытии, забывая про наличие других способов изменения объекта. В статье предложена методика для обычных и управляемых форм, учитывающая все способы.

1 стартмани

09.03.2020    5189    0    tormozit    13    

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

Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Набор инструментов для работы с полнотекстовым индексом платформы 1С. Стандартные и расширенные возможности.

2 стартмани

07.02.2020    4591    35    YPermitin    28    

Изменение реквизитов справочников, документов, табличных частей, движений (Обычные и Управляемые формы) Промо

Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Казахстан Абонемент ($m)

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

1 стартмани

15.10.2012    43100    268    Exit_in    42    

Маршрутизация Яндекс-карт в 1С (обычные и управляемые формы)

Практика программирования WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка показывает пример построения маршрута между двумя точками.

3 стартмани

03.02.2020    1779    3    Diana.dedov.91    0    

Вывод сообщений в HTML поле средствами 1С

Практика программирования v8 v8::УФ Абонемент ($m)

Пример использования вывода большого количества сообщений в поле HTML. С возможностью открывать ссылочные объекты и создавать новые объекты передавая параметры прямо из HTML поля. Протестировано на релизах 8.3.12 и 8.3.15+

2 стартмани

31.01.2020    4221    5    burni4    16    

Удаление движений документов

Чистка базы Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка для удаления движений документов, управляемые формы.

2 стартмани

23.01.2020    1948    5    wowik    4    

Выгрузка и загрузка данных из файла Excel с поиском по любым полям (есть поиск по ссылке, всего три итерации поиска. Управляемые формы или "Такси") Промо

Загрузка и выгрузка в Excel Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка позволяет загружать данные с поиском по ссылке как для загружаемого объекта, так и его свойств. Загружает справочники, документы, планы видов характеристик. Будет полезна как замена использования конвертации данных для задач переноса, а также как классическая загрузка из табличного документа (Excel). Поиск объекта при загрузке выполняется до трех раз с разными полями поиска (поля поиска настраиваются). Также реализована выгрузка в Excel по ссылкам. У обработки удобный интерфейс, в котором разберется даже начинающий пользователь. Загрузка накладных из файлов xls реализована с интеллектуальным поиском колонок с данными. В интеллектуальном поиске поддерживаются все основные типовые печатные формы.

5 стартмани

16.10.2015    55904    499    primat    32    

Как в 1С создать паутинку "как на Инфостарте"

Практика программирования v8::УФ 1cv8.cf Россия Абонемент ($m)

Добрый день, уважаемы коллеги! В этой статье я расскажу, как в 1С создать отчет - "паутинку" на примере отчета по компетенциям сотрудника (разрабатывала на платформе 1С:Предприятие 8.3 (8.3.13.1865).

1 стартмани

15.01.2020    7918    4    user660153_aleks.pisanets    13    

Обмен данными с Android через USB

Практика программирования Мобильная разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка с примером обмена данными конфигурации 1С через USB. Без установки Web сервера и настройки WiFi.

1 стартмани

23.12.2019    2262    3    asdfgcom    2    

Многоуровневые списки выбора с оформлением элементов

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Данная статья - попытка решить один маленький кусочек большой проблемы платформы 1С, а именно - бедные и невыразительные пользовательские интерфейсы. Поскольку 1С в режиме управляемого приложения позволяет задействовать веб-клиент, то хочется реализовывать интерфейсы как у взрослых веб-приложений - красивые, дружелюбные для пользователя и, желательно, с положительным UX. Возможно, кто-то со мной не согласится и скажет, что учетные системы должны быть строгие и линейные. Но мы все знаем, что 1С - это уже не только про бухгалтерию. Небольшое отступление для разработчиков, работающих с типовыми конфигурациями. Я не знаю, использует ли фирма 1С что-то похожее в своих разработках. Если да, то данная статья навряд ли будет вам полезна.

1 стартмани

17.12.2019    5883    2    azhilichev    5    

Редактирование движений документа (Управляемый и неуправляемый интерфейс) Промо

Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Не все конфигурации позволяют вручную отредактировать движения документа без перепроведения. А если надо? Тогда можно воспользоваться данной обработкой.

1 стартмани

19.10.2012    25021    103    NILS2009    13    

Решение задач по мотивам статьи "30 задач. Странных и не очень"

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка по мотивам статьи: https://infostart.ru/public/1161686/

1 стартмани

04.12.2019    2214    2    batsy66    9    

html + css + js в поле HTML документа 1С на примере решения задачи ханойских башен

Практика программирования v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Рассматривается пример использования html + css + js в полеHTMLдокумента 1с. Вызов функций javascript со стороны 1С с передачей параметров. Решение головоломки "Ханойская башня" с визуализацией в среде 1С.

1 стартмани

11.11.2019    4501    6    mangushov    0    

История версий объектов для УФ

Журнал регистрации Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная независимая система хранения и анализа истории изменений справочников и документов. Предназначена для любых конфигураций 1С V83 ((8.3.9.1818) и выше) в режиме управляемого приложения.

1 стартмани

17.10.2019    10367    27    dmitrydemenew    22    

Корректировка остатков по акцизным маркам ЕГАИС для Розницы 2.2 Промо

Розничная торговля Обработка документов Розничная торговля v8::ОУ v8::УФ Розница Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд УУ Абонемент ($m)

Розница 2.2. Корректировка остатков ЕГАИС. Пользователю необходимо считать все акцизные марки каждой бутылки, это даёт 100% точность инвентаризации (корректировки). Обработка приведёт остатки ЕГАИС к тем, которые вы занесёте (к фактическим). Останавливать продажи и работу кассиров не требуется, ведь есть функция удаления марки из нашего документа. Обработка по акцизной марке понимает, что это за бутылка. Если данных по бутылке нет, они запрашиваются в ЕГАИС. Если акцизную марку уже считывали, она не даст считать её повторно.

10 стартмани

26.12.2016    31044    62    myALKleon    62    

Перенумерация справочников и документов (Тонкий клиент и толстый клиент)

Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка позволяет перенумеровать справочники и документы по выбранным параметрам (отбору).

1 стартмани

23.09.2019    3333    65    IVKuvshinov    4    

Описание формата внутреннего представления данных 1С в контексте обмена данными

Практика программирования Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

06.09.2019    15540    11    Dementor    29    

Обмен с системой Ветис Меркурий для любых конфигураций. Гашение ВСД, списание продукции, пакетная печать ВСД (простые и управляемые формы)

Розничная торговля Обработка документов Внешние источники данных Рабочее место Розничная торговля v8::ОУ v8::УФ УТ10 УТ11 Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Пищевая промышленность Россия БУ УУ Абонемент ($m)

Обработка предназначена для небольшого магазина или для небольшой торговой сети. Позволяет оперативно пакетно погасить ВСД, списать проданную продукцию в системе Меркурий, реализована пакетная печать ВСД. Авторизация проходит через Логин и Пароль, предназначенный для входа через веб интерфейс Меркурий. Проверка была проведена на релизе Обычные формы: "Управление торговлей", редакция 10.3 (10.3.53.2). Управляемые формы: Управление торговлей, редакция 11 (11.4.7.128) Бухгалтерия предприятия, редакция 3.0 (3.0.75.37) Розница, редакция 2.2 (2.2.4.20)

10 стартмани

02.09.2019    9367    51    Mister_Gluck    65    

Заполняем по шаблону (по умолчанию) Промо

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

08.02.2018    24145    19    mvxyz    17    

Обновление данных в ячейках таблицы формы на управляемых формах

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

На очередном проекте решал задачу по расчету значений колонок в табличных полях формы. Задача казалась достаточно простой. Однако возникла необходимость работать не только с реквизитами формы типа «ТаблицаЗначений», но и с типом «ДеревоЗначений». Релиз платформы 8.3.13.1644

1 стартмани

15.08.2019    3595    0    BraunAlex    2    

Удобный выбор из таблицы/дерева в УФ

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Выбор из таблицы значений или дерева значений в выпадающем списке рядом с полем ввода - УФ, быстро и просто!

1 стартмани

12.08.2019    9944    6    Yashazz    18    

Отбор на управляемой форме из списка значений

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

1 стартмани

09.08.2019    12754    16    nagaitseff    6    

Универсальный инструмент для переноса данных через табличный документ (УФ) Промо

Обработка документов Универсальные обработки Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

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

5 стартмани

15.10.2018    28017    111    json    33    

Изменяющееся контекстное меню в 1С 8.3

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ Абонемент ($m)

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

1 стартмани

06.08.2019    12471    2    signum2009    15    

Загрузка дополнительных реквизитов и сведений

Универсальные обработки Обработка документов Обработка справочников v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка по загрузке произвольных значений в произвольные дополнительные реквизиты и сведения объектов системы с возможностью настраиваемого поиска объектов для загрузки. (Управляемые формы)

2 стартмани

17.07.2019    4032    16    navic    0    

Поиск объектов метаданных при несовпадении заголовка окна с синонимом

Поиск данных v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

24.06.2019    3220    2    Неопределено    8    

Программное создание динамического списка на управляемой форме. (Динамическое создание динамического списка). Готовая процедура + обработка - демонстрационный пример Промо

Практика программирования Универсальные функции v8::УФ 1cv8.cf Абонемент ($m)

Если у вас возникает необходимость на форму влиять динамически и создавать элементы управляемой формы программно, а особенно хотите вывести программно (динамически) динамический список, вам будет интересна эта процедура. Процедура включает также возможность формирования своей командной панели (а-ля снятие галочки "Автозаполнение" у стандартной командной панели списка).

1 стартмани

19.01.2018    51511    60    rpgshnik    26    

Универсальный ввод на основании

Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

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

3 стартмани

11.06.2019    5769    33    the1    29    

Несколько документов на основании одного

Практика программирования Обработка документов v8::УФ Абонемент ($m)

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

1 стартмани

10.06.2019    4616    3    mvxyz    8    

Картинки во внешней печатной форме (Шапка и табличная часть)

Печатные формы документов Практика программирования Разработка v8::ОУ v8::УФ УТ11 Россия Абонемент ($m)

Способы вывести на печать картинку в шапке и в табличной части внешней печатной формы. Управление торговлей, редакция 11 (11.4.7.150).

1 стартмани

27.05.2019    7549    7    Povinger    1    

Регулярные выражения без внешних компонент? Легко! Промо

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

Сложный способ организовать проверку строки с помощью регулярного выражения в 1С. При этом ни одна внешняя компонента не пострадала. Ну и от платформы (Linux, MustDie) - не зависит.

04.03.2016    59165    0    starik-2005    98    

Спутник программиста - каркасная конфигурация начинающим программистам 1С

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

Спутник программиста - каркасная конфигурация с примерами для разработки начинающим программистам 1С.

1 стартмани

23.05.2019    12369    98    bulas    27    

Поле "Отбор" в управляемой форме используя СКД

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

Пример, который осуществляет отбор ссылок при помощи СКД, макет компоновки создается программно.

1 стартмани

17.05.2019    6476    6    artms    0    

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

Практика программирования Работа с интерфейсом Разработка v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

13.05.2019    7559    2    mvxyz    15    

Загрузка данных из табличного документа в справочники, документы, планы видов характеристик, планы видов расчетов, планы счетов, бизнес-процессы, задачи, в движения документов, поточная загрузка документов (EXCEL, управляемые формы, универсальная) Промо

Загрузка и выгрузка в Excel Обработка документов Универсальные обработки v8::УФ 1cv8.cf Абонемент ($m)

Обладает уникальным функционалом. Позволяет загружать в справочники, табличные части, регистры сведения, движения документа, поточно загружать документы, а также одновременно загружать в справочники, являющиеся реквизитами загружаемых объектов, с полноценной настройкой. Обработка на управляемых формах, работает на всех версиях 1С предприятия 8.2 и 8.3

4 стартмани

30.05.2014    162470    1969    qwinter    627    

Группировка по виду документа в "Задачи мне" (расширение для 1С:Документооборот)

Обработка документов Работа с интерфейсом Документооборот и делопроизводство Документооборот и делопроизводство v8::УФ v8::Запросы v8::Бизнес-процессы ДО УУ Абонемент ($m)

Расширение для 1С:Документооборот (2.1), позволяющее сгруппировать все задачи из списка "Задачи мне" по виду документа (служебные записки, приказы и т.д.).

3 стартмани

16.04.2019    7159    23    zannv    16    

Вывод вариантов СКД в таблицы на управляемой форме

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

Задача стояла такая: есть 2 различных запроса, результаты которых выгружаются на форму обработки в таблицы значений (далее ТЗ) и программно "соприкасаются" между собой определенным образом (как именно- в рамках данной статьи неважно). Нюанс в том, что запросы должны иметь свой компоновщик настроек и могут интерактивно на форме изменяться пользователем. На оригинальность публикации не претендую - изначально в рамках поставленной задачи пытался найти что-то подобное (уже готовый шаблон) на инфостарте, возможно "плохо искал" ;)

05.04.2019    9030    3    artkor    1    

Методика оптимизации программного кода 1С: проведение документов

Обработка документов Производительность и оптимизация (HighLoad) Инструментарий разработчика v8 v8::УФ Абонемент ($m)

Описание простого метода анализа производительности программного кода 1С, способов его оптимизации и оценки результатов в виде числовых показателей прироста производительности. Не требует сторонних программных продуктов, используются только типовые возможности платформ 1С. Методика проверена на линейке платформ начиная с 1С:Предприятие 8.2 (обычные формы, управляемые формы). Позволяет ускорить проведение проблемных документов в 3 и более раз, провести проверку корректности формирования проводок оптимизированным кодом и подтвердить результаты оптимизации реальными замерами производительности в режиме предприятия. К публикации приложены демонстрационные базы для режимов обычного и управляемого приложения на платформе 1С:Предприятие 8.3 (8.3.9.2033).

1 стартмани

19.03.2019    20764    16    dmitrydemenew    83    

Расширения конфигураций 1С: учимся перехватывать методы Промо

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

30.05.2017    111521    13    signum2009    45    

Перенумерация объектов (Справочники + Документы)

Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка позволяет перенумеровать выбранный справочник или документ. Помогает решить проблему: Номер не уникальный. Для управляемого интерфейса.

1 стартмани

18.03.2019    5788    74    Смешной 1С    3    

Программное создание реквизита управляемой формы с помощью механизма расширений

Практика программирования Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

В ЗУП 3 возникла задача добавить реквизит в справочник не внося изменений в конфигурацию. БСП с механизмом дополнительных реквизитов использовать было нежелательно, поэтому был использован механизм расширений. Для вывода данного реквизита на форму добавлять саму форму в расширение не хотелось по ряду причин, описанных ниже. Создание реквизита и элемента формы, соответствующего данному реквизиту было решено сделать программно в самом расширении, следуя принципу минимального воздействия на конфигурацию.

1 стартмани

12.03.2019    27762    8    ni_cola    28    

1С Документооборот: Создание связанных документов по настройкам связей

Обработка документов Документооборот и делопроизводство Документооборот и делопроизводство v8 v8::УФ ДО Абонемент ($m)

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

1 стартмани

28.02.2019    7933    8    Bin42    3    

Универсальный поиск объектов по глобальному уникальному идентификатору (ГУИД, GUID) Промо

Универсальные обработки Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальная обработка поиска объектов информационной базы по глобальному уникальному идентификатору (ГУИД, GUID) или по его части.

1 стартмани

06.09.2016    29942    101    Dzenn    9    

Выполнение проверки поступившей алкопродукции в ТТН ЕГАИС одним нажатием. 1С: Розница

Розничная торговля Обработка документов Розничная торговля v8 v8::УФ Розница Розничная и сетевая торговля (FMCG) Россия БУ Абонемент ($m)

Расширение и код для 1С: Розница 2.2.9/2.2.10/2.2.11 для быстрой проверки поступившего алкоголя ЕГАИС.

1 стартмани

05.02.2019    9268    12    independ    8    

Работа с деревом значений для новичков (Управляемые формы 8.3)

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

Пример работы с деревом значений (для новичков) на управляемых формах (8.3)

1 стартмани

29.01.2019    22420    17    aagubarev    0    

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

Практика программирования Разработка v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

27.01.2019    8028    2    Comandante    22    

Изменение конфиденциальной информации (обработка, управляемые формы) Промо

Обработка документов Обработка справочников Защита и шифрование v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

17.05.2015    31388    129    primat    23    

Связанные табличные части (управляемые формы)

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ Абонемент ($m)

У нас есть 2 связанные табличные части, и нам надо, чтобы по текущей строке в одной из них мы видели только определенные строки во второй. Были бы у нас динамические списки, мы бы взяли событие "При активизации строки" и стандартный механизм отборов СКД, которая лежит в основе списка. Но вот с табличными частями так не получится. Тут нам надо будет написать несколько строк кода и использовать "ОтборСтрок", доступный для таблицы формы. Тестировалось на платформе 8.3.13.1644, будет работать и на более ранних версиях платформы.

1 стартмани

25.01.2019    7610    11    Kim1C    6    

Автоматическое определение зоны доставки по адресу в УТ, ERP, КА (расширение)

Обработка документов Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8::УФ ERP2 УТ11 КА2 Оптовая торговля, дистрибуция, логистика Россия Абонемент ($m)

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

3 стартмани

18.01.2019    7180    36    alex15650    14    

СМС2 - эрзац-мессенджер в вашей конфигурации 1С

Практика программирования Работа с интерфейсом Рабочее место v8 v8::УФ Абонемент ($m)

Обработка предоставит вам некоторый функционал мессенджера внутри используемой конфигурации. Вложения с файлами и ссылками, аватары у пользователей, всё это можно и в 1С.

1 стартмани

17.12.2018    6428    5    semagin@gmail.com    15    

Чат на управляемых формах

Практика программирования WEB v8 v8::УФ Абонемент ($m)

Чат для 1С на управляемых формах, для работы в браузере. Возможности: Есть общая комната Можно создавать открытые и закрытые комнаты Переписка между двумя пользователями (беседа) Протестировано на платформе 8.3.12.1714.

2 стартмани

14.12.2018    5165    8    panihinnv    13