Печать конвертов из КА 2.4

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

Разработка - Печать - Универсальные печатные формы

Конверт

Расширение для КА 2.4 для печати трех видов конвертов по аналогии с типовым механизмов БП 3.0. Печать доступна из карточки партнера/контрагента/сверки взаиморасчетов. Легко добавить любой другой вид документа.

Пригодится всем, кто ведет рассылку документов своим контрагентам почтой - можно распечатать заполненный конверт для пакета документов из карточки контрагента, причем на выбор три вида конвертов: C4, C5, DL/E65.

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

Тестировалось на конфигурациях КА 2.4.7.141 - КА 2.4.8.92, платформа на момент тестирования 8.3.14.1779, как в файловом так и в клиент-серверном варианте.

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

Наименование Файл Версия Размер
Расширение для печати конвертов из КА 2.4:

.cfe 288,48Kb
25
.cfe 288,48Kb 25 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. user1313770 25.12.19 15:00 Сейчас в теме
не работает у меня на КА2.4
2. sanymust 33 26.12.19 00:55 Сейчас в теме
(1) Какая версия конфигурации и какая ошибка ? Выключен ли безопасный режим у расширения?
3. user1313770 28.12.19 15:15 Сейчас в теме
(2) а да, галочку снаял с безопасного режима, заработал. только логотип не печатает на конверт.
4. sanymust 33 30.12.19 00:59 Сейчас в теме
(3)А на печатной форме счета типовой работает вывод логотипа? По идее механизм один и тот же.
5. user1375581 5 14.08.20 12:58 Сейчас в теме
Здравствуйте! Я новый участник и поэтому скачать не могу. Можно вас попросить дать для примера вашу разработку (на почту) ?
6. sanymust 33 14.08.20 15:07 Сейчас в теме
(5)Мне не жалко, но я думаю это будет несправедливо по отношению к другим пользователям сайта, кто скачал данную публикацию за стартмани. Могу предложить Вам приобрести стартмани на данном сайте и воспользоваться ими для скачивания этой и других публикаций.
7. user1375581 5 08.10.20 19:46 Сейчас в теме
(6) А подсказать можете как адрес вывести на печать конверта? Вроде все сделала. А адреса что у организации, что у контрагента не выводятся.
8. sanymust 33 09.10.20 02:04 Сейчас в теме
(7)Здравствуйте, адрес организации используется с видом "почтовый", убедитесь, что он у Вас заполнен и вид адреса не задвоен (возможно используется не предопределенный элемент). Для контрагента выводится тот вид адреса, что Вы выбрали в форме печати конвертов, так же убедитесь, что у Вас заполнен адрес контрагента с тем видом, который Вы выбрали на печать.
Если не получится, то приложите скриншот карточки контрагента с закладкой контактной информации.
9. user1375581 5 09.10.20 06:03 Сейчас в теме
(8) В КА2 отображается справочник Партнеры под именем Контрагенты, соответственно код Печать конвертов я прописываю в менеджере справочника Партнеры, по которому в ВидыКонтактнойИнформации нет предопределяемых элементов. Как надо сделать, подскажите? Могу отправить свое расширение )
10. sanymust 33 09.10.20 07:04 Сейчас в теме
(9)Если отключена функциональная опция ведения контрагентов и партнеров отдельно, то Вам надо брать связанного с партнером контрагента. По умолчанию, при такой настройке, все что Вы делает в базе с партнером автоматически дублируется с зависимым элементом контрагента. Кнопку печати оставляйте в партнерах, но на заполнение все же передавайте контрагента.
У контрагента есть реквизит "партнер", по нему найдете.
11. user1375581 5 09.10.20 09:20 Сейчас в теме
(10) Буду пытаться ) Не понятно почему не выходит на печать адрес Организации.
15. sanymust 33 12.10.20 02:11 Сейчас в теме
(13)Сейчас проверил, при отключенной опции ведения партнеров и клиентов раздельно, все работает. Что у Вас за конфигурация, какая версия, типовая?
12. user1375581 5 09.10.20 10:44 Сейчас в теме
Все-таки может посмотрите. Код в справочнике Партнеры

&Вместо("ДобавитьКомандыПечати")
Процедура ПечКДобавитьКомандыПечати(КомандыПечати)
	КомандаПечати = КомандыПечати.Добавить();
	КомандаПечати.Идентификатор = "Конверт";
	КомандаПечати.Представление = НСтр("ru = 'Конверт'");
	КомандаПечати.Обработчик    = "УправлениеПечатьюБПКлиент.ПечКВыполнитьКомандуПечатиКонверта";
	КомандаПечати.СписокФорм    = "ФормаЭлемента,ФормаСписка,ФормаЭлементаРеквизитыКонтрагента,ФормаСпискаБезПолнотекстовогоПоиска";
	ПродолжитьВызов(КомандыПечати);

	//ПродолжитьВызов(КомандыПечати);
КонецПроцедуры

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

#Область ПечатьКонвертов

// Возвращает контейнер для заполнения в конверте сведений о получателе.
// 
// Возвращаемое значение:
//   - Структура
//       * Представление - Строка - Представление получателя.
//       * Индекс - Строка - Индекс получателя.
//       * Адрес - Строка - Адрес получателя, части адреса должны быть разделены запятыми.
//                          Например, "ул.Новая, дом 1, корпус 1, кв. 1, г.Москва, Россия".
//
Функция НовыйСведенияОПолучателеКонверта() Экспорт
	
	СведенияОУчастникеПереписки = Новый Структура();
	СведенияОУчастникеПереписки.Вставить("Представление", "");
	СведенияОУчастникеПереписки.Вставить("Индекс",     "");
	СведенияОУчастникеПереписки.Вставить("Адрес",      "");
	Возврат СведенияОУчастникеПереписки;
	
КонецФункции

// Возвращает контейнер для заполнения в конверте сведений об отправителе.
// 
// Возвращаемое значение:
//   - Структура
//       * Представление - Строка - Представление отправителя.
//       * Индекс - Строка - Индекс отправителя.
//       * Адрес - Строка - Адрес отправителя, части адреса должны быть разделены запятыми.
//                          Например, "ул.Новая, дом 1, корпус 1, кв. 1, г.Москва, Россия".
//       * ПечататьЛоготип - Булево - Нужно ли выводить логотип на конверт.
//       * Логотип - ДвоичныеДанные - Двоичные данные картинки логотипа.
//
Функция НовыйСведенияОбОтправителеКонверта() Экспорт
	
	СведенияОУчастникеПереписки = Новый Структура();
	СведенияОУчастникеПереписки.Вставить("Представление", "");
	СведенияОУчастникеПереписки.Вставить("Индекс", "");
	СведенияОУчастникеПереписки.Вставить("Адрес", "");
	СведенияОУчастникеПереписки.Вставить("ПечататьЛоготип", Ложь);
	СведенияОУчастникеПереписки.Вставить("Логотип", Неопределено);
	Возврат СведенияОУчастникеПереписки;
	
КонецФункции

Функция ПечатьКонверта(МассивОбъектов, ОбъектыПечати, ПараметрыПечати)
	
	Результат = Новый ТабличныйДокумент;
	
	ПараметрыВыводаВМакет = ПараметрыВыводаВМакет(ПараметрыПечати);
	УстановитьПараметрыПечатиКонверта(Результат, ПараметрыВыводаВМакет);
	
	Макет = УправлениеПечатью.МакетПечатнойФормы("ОбщийМакет." + ПараметрыПечати.ИмяМакета);
	
	ДанныеДляПечатиКонвертов = ДанныеДляПечатиКонвертов(МассивОбъектов, ПараметрыПечати);
	
	ПервыйКонверт = Истина;
	Для Каждого ДанныеПечатиКонверта Из ДанныеДляПечатиКонвертов Цикл
		
		Если ПервыйКонверт Тогда
			ПервыйКонверт = Ложь;
		Иначе
			Результат.ВывестиГоризонтальныйРазделительСтраниц();
		КонецЕсли;
		
		НомерСтрокиНачало = Результат.ВысотаТаблицы + 1;
		//***
		//Контр = ДанныеДляПечатиКонвертов;
		//Для каждого стр из КонтактнаяИнформация Цикл
		//	Если стр.ВидАдресаКонтрагента = ПараметрыПечати.ВидАдресаКонтрагента Тогда
		//		ДанныеДляПечатиКонвертов.СведенияОПолучателе.Индекс = ПараметрыПечати.ВидАдресаКонтрагента.ПредставлениеИндекса;
		//		ДанныеДляПечатиКонвертов.СведенияОПолучателе.Адрес = ПараметрыПечати.ВидАдресаКонтрагента.ПредставлениеАдреса;

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

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

Процедура ЗаполнитьДанныеДляПечатиКонвертаПоСведениюОПолучателе(ДанныеДляПечатиКонвертов, СведенияОПолучателеКонверта, ПараметрыПечати)
	
	СтрокаОбъектаПечати = ДанныеДляПечатиКонвертов.Добавить();
	СтрокаОбъектаПечати.СведенияОПолучателеКонверта = СведенияОПолучателеКонверта;
	СтрокаОбъектаПечати.СведенияОбОтправителеКонверта = СведенияОбОрганизацииДляКонверта(
		ПараметрыПечати.Организация, ПараметрыПечати.ПечататьЛоготип);
	
КонецПроцедуры

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

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

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

Функция СведенияОКонтрагентеДляКонверта(Партнер, ВидАдреса)
	
	 	
	СведенияОКонтрагенте = НовыйСведенияОПолучателеКонверта();
	СведенияОКонтрагенте.Представление = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Партнер, "НаименованиеПолное");
	//ПочтовыеАдреса = ПечКУправлениеКонтактнойИнформациейБП.КонтактнаяИнформацияОбъектовНаДату(
	//	ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Контрагент), , ВидАдреса);
	ПочтовыеАдреса = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(
		ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Партнер), , ВидАдреса);

	Если ПочтовыеАдреса.Количество() > 0 Тогда
		АдресJSON = ПочтовыеАдреса[0].Значение;
		СведенияОСтранеАдреса = УправлениеКонтактнойИнформацией.СтранаАдресаКонтактнойИнформации(АдресJSON);
		Если СведенияОСтранеАдреса.Ссылка = Справочники.СтраныМира.Россия Тогда
			СведенияОбАдресе = РаботаСАдресами.СведенияОбАдресе(АдресJSON);
			СведенияОКонтрагенте.Индекс = ПредставлениеИндекса(СведенияОбАдресе);
			СведенияОКонтрагенте.Адрес = ПредставлениеПочтовогоАдреса(СведенияОбАдресе);
		Иначе
		СведенияОКонтрагенте.Адрес = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформации(ВидАдреса);
		КонецЕсли;
	КонецЕсли;
	   	
	 
	Возврат СведенияОКонтрагенте;
	
КонецФункции

Функция СведенияОбОрганизацииДляКонверта(Организация, ПечататьЛоготип)
	    
		РеквизитыОрганизации = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Организация,
		"ЮридическоеФизическоеЛицо,  Наименование");

	//РеквизитыОрганизации = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Организация,
	//	"ЮридическоеФизическоеЛицо, ФамилияИП, ИмяИП, ОтчествоИП, НаименованиеСокращенное");

	СведенияОбОрганизации = НовыйСведенияОбОтправителеКонверта();
	//СведенияОбОрганизации.Представление = ?(РеквизитыОрганизации.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо,
	//РеквизитыОрганизации.Наименование);
		СведенияОбОрганизации.Представление = РеквизитыОрганизации.Наименование;
		//СведенияОбОрганизации.Адрес = Организация.КонтактнаяИнформация.;

		//ДатаЗначения = ТекущаяДатаСеанса();

		//СписокПоказателей = Новый Массив;
		//СписокПоказателей.Добавить("АдрПочт");
		//
		//СведенияОбАдресе = ЗарплатаКадрыБазовый.ПолучитьСведенияОбОрганизации(Организация,ДатаЗначения,СписокПоказателей);
		//

		
	//ПочтовыеАдресаОрганизации = ПечКУправлениеКонтактнойИнформациейБП.КонтактнаяИнформацияОбъектовНаДату(
	//	ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Организация), , Справочники.ВидыКонтактнойИнформации.ПочтовыйАдресОрганизации);
		ПочтовыеАдресаОрганизации = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(
		ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Организация), , Справочники.ВидыКонтактнойИнформации.ПочтовыйАдресОрганизации);

	Если ПочтовыеАдресаОрганизации.Количество() > 0 Тогда
		СведенияОбАдресе = РаботаСАдресами.СведенияОбАдресе(ПочтовыеАдресаОрганизации[0].Значение);
		СведенияОбОрганизации.Индекс = ПредставлениеИндекса(СведенияОбАдресе);
		СведенияОбОрганизации.Адрес = ПредставлениеПочтовогоАдреса(СведенияОбАдресе);
	КонецЕсли;
	
	    
	Если ПечататьЛоготип Тогда
		ДвоичныеДанныеКартинки = Справочники.Организации.ДвоичныеДанныеКартинкиОрганизации(
			Организация, "ФайлЛоготип");
		Если ЗначениеЗаполнено(ДвоичныеДанныеКартинки) Тогда
			СведенияОбОрганизации.ПечататьЛоготип = Истина;
			СведенияОбОрганизации.Логотип = ДвоичныеДанныеКартинки;
		КонецЕсли;
	КонецЕсли;
	
	Возврат СведенияОбОрганизации;
	
КонецФункции

Функция ТекстЗапросаПечатьКонвертовИзКонтрагентов()
	
	
	Результат =
	"ВЫБРАТЬ
	|	Партнеры.Ссылка КАК Получатель,
	|	Партнеры.Ссылка КАК ОбъектПечати,
	|	Организации.Ссылка КАК Отправитель
	|ИЗ
	|	Справочник.Организации КАК Организации
	|		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Партнеры КАК Партнеры
	|		ПО (Партнеры.Ссылка В (&ОбъектыПечати))
	|			И (Организации.Ссылка = &Организация)
	|ГДЕ
	|	НЕ Партнеры.Ссылка ЕСТЬ NULL ";
	
	Возврат Результат;

	

		
	Возврат Результат;
	
КонецФункции

//Функция ТекстЗапросаПечатьКонвертовИзДоговоровКонтрагентов()
//	
//	Результат =
//	//"ВЫБРАТЬ
//	//|	ДоговорыКонтрагентов.Владелец КАК Получатель,
//	//|	ДоговорыКонтрагентов.Ссылка КАК ОбъектПечати,
//	//|	ДоговорыКонтрагентов.Организация.Ссылка КАК Отправитель
//	//|ИЗ
//	//|	Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
//	//|ГДЕ
//	//|	ДоговорыКонтрагентов.Ссылка В(&ОбъектыПечати)";
//	//
//	//Возврат Результат;
//	  "ВЫБРАТЬ
//	 |	ДоговорыКонтрагентов.Контрагент КАК Получатель,
//	 |	ДоговорыКонтрагентов.Ссылка КАК ОбъектПечати,
//	 |	ДоговорыКонтрагентов.Организация.Ссылка КАК Отправитель
//	 |ИЗ
//	 |	Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
//	 |ГДЕ
//	 |	ДоговорыКонтрагентов.Ссылка В (&ОбъектыПечати)";
//	 
//	 Возврат Результат;
//КонецФункции

Функция ТекстЗапросаПечатьКонвертов(МетаданныеОбъектаПечати)
	
	//Результат =
	//"ВЫБРАТЬ
	//|	Таблица.Контрагент КАК Получатель,
	//|	Таблица.Ссылка КАК ОбъектПечати,
	//|	Таблица.Организация КАК Отправитель
	//|ИЗ
	//|	" + МетаданныеОбъектаПечати.ПолноеИмя() + " КАК Таблица
	//|ГДЕ
	//|	Таблица.Ссылка В (&ОбъектыПечати)";
	//
	//Возврат Результат;
	
Результат =
	"ВЫБРАТЬ
	|	Таблица.Партнеры КАК Получатель,
	|	Таблица.Ссылка КАК ОбъектПечати,
	|	Таблица.Организация КАК Отправитель
	|ИЗ
	|	" + МетаданныеОбъектаПечати.ПолноеИмя() + " КАК Таблица
	|ГДЕ
	|	Таблица.Ссылка В (&ОбъектыПечати)";
	
	Возврат Результат;

КонецФункции

Процедура ЗаполнитьЗаголовокКонверта(ОбластьЗаголовок, ДанныеОбъектаПечати, ПараметрыВыводаВМакет)
	
	Если ЗначениеЗаполнено(ДанныеОбъектаПечати.СведенияОПолучателеКонверта) Тогда
		ЗаполнитьПолучателяКонверта(ОбластьЗаголовок, ДанныеОбъектаПечати.СведенияОПолучателеКонверта, ПараметрыВыводаВМакет);
	КонецЕсли;
	
	Если ЗначениеЗаполнено(ДанныеОбъектаПечати.СведенияОбОтправителеКонверта) Тогда
		ЗаполнитьОтправителяКонверта(ОбластьЗаголовок, ДанныеОбъектаПечати.СведенияОбОтправителеКонверта, ПараметрыВыводаВМакет);
	КонецЕсли;
	
КонецПроцедуры

Функция ПараметрыВыводаВМакет(ПараметрыПечати)
	
	Если ПараметрыПечати.ФорматКонверта = Перечисления.ПечКФорматыПочтовыхКонвертов.C4 Тогда
		РазмерСтраницы = "Envelope C4";
		ДлинаПервойСтроки = 50;
		ДлинаВторойСтроки = 56;
	ИначеЕсли ПараметрыПечати.ФорматКонверта = Перечисления.ПечКФорматыПочтовыхКонвертов.C5 Тогда
		РазмерСтраницы = "Envelope C5";
		ДлинаПервойСтроки = 35;
		ДлинаВторойСтроки = 46;
	Иначе
		РазмерСтраницы = "Envelope DL";
		ДлинаПервойСтроки = 55;
		ДлинаВторойСтроки = 65;
	КонецЕсли;
	
	ПараметрыВыводаВМакет = Новый Структура;
	ПараметрыВыводаВМакет.Вставить("РазмерСтраницы"   , РазмерСтраницы);
	ПараметрыВыводаВМакет.Вставить("ДлинаПервойСтроки", ДлинаПервойСтроки);
	ПараметрыВыводаВМакет.Вставить("ДлинаВторойСтроки", ДлинаВторойСтроки);
	Возврат ПараметрыВыводаВМакет;
	
КонецФункции

Процедура УстановитьПараметрыПечатиКонверта(ТабличныйДокумент, ПараметрыВыводаВМакет)
	
	ТабличныйДокумент.КлючПараметровПечати    = "ПАРАМЕТРЫ_ПЕЧАТИ_Конверт";
	ТабличныйДокумент.ПолеСверху              = 5;
	ТабличныйДокумент.ПолеСнизу               = 5;
	ТабличныйДокумент.ПолеСправа              = 5;
	ТабличныйДокумент.ПолеСлева               = 5;
	ТабличныйДокумент.РазмерСтраницы          = ПараметрыВыводаВМакет.РазмерСтраницы;
	ТабличныйДокумент.ОриентацияСтраницы      = ОриентацияСтраницы.Ландшафт;
	ТабличныйДокумент.АвтоМасштаб             = Истина;
	
КонецПроцедуры

Процедура ЗаполнитьПолучателяКонверта(ОбластьЗаголовок, СведенияОПолучателеКонверта, ПараметрыВыводаВМакет)
	
	ЧастиПредставлениеПолучателя = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов(
		СведенияОПолучателеКонверта.Представление, " ");
	ЗаполнитьСекциюКонверта(ОбластьЗаголовок, "Кому", ЧастиПредставлениеПолучателя, ПараметрыВыводаВМакет);
	
	ЧастиАдреса = ЧастиАдресаДляВыводаВМакет(СведенияОПолучателеКонверта.Адрес);
	ЗаполнитьСекциюКонверта(ОбластьЗаголовок, "Куда", ЧастиАдреса, ПараметрыВыводаВМакет);
	
КонецПроцедуры

Процедура ЗаполнитьОтправителяКонверта(ОбластьЗаголовок, СведенияОбОтправителеКонверта, ПараметрыВыводаВМакет)
	
	ЧастиПредставленияОтправителя = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов(
		СведенияОбОтправителеКонверта.Представление, " ");
	ЗаполнитьСекциюКонверта(ОбластьЗаголовок, "ОтКого", ЧастиПредставленияОтправителя, ПараметрыВыводаВМакет);
	
	ЧастиАдреса = ЧастиАдресаДляВыводаВМакет(СведенияОбОтправителеКонверта.Адрес);
	ЗаполнитьСекциюКонверта(ОбластьЗаголовок, "Откуда", ЧастиАдреса, ПараметрыВыводаВМакет);
	
	ОбластьЗаголовок.Параметры.ИндексОткуда = СведенияОбОтправителеКонверта.Индекс;
	
	Если СведенияОбОтправителеКонверта.ПечататьЛоготип Тогда
		ЗаполнитьЛоготип(ОбластьЗаголовок, СведенияОбОтправителеКонверта.Логотип);
	КонецЕсли;
	
КонецПроцедуры

Процедура ЗаполнитьКодовыйШтамп(ОбластьИндекс, СведенияОПолучателеКонверта)
	
	Если ЗначениеЗаполнено(СведенияОПолучателеКонверта) Тогда
		ИндексПолучателя = СведенияОПолучателеКонверта.Индекс;
	Иначе
		ИндексПолучателя = Неопределено;
	КонецЕсли;
	
	Если ЗначениеЗаполнено(ИндексПолучателя) И СтрДлина(ИндексПолучателя) = 6 Тогда
		Для Каждого Рисунок Из ОбластьИндекс.Рисунки Цикл
			Если СтрНачинаетсяС(Рисунок.Имя, "Индекс") Тогда
				ПозицияИндекса = Прав(Рисунок.Имя, 1);
				ЦифраИндекса = Сред(ИндексПолучателя, ПозицияИндекса, 1);
				Если Не СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(ЦифраИндекса) Тогда
					Продолжить;
				КонецЕсли;
				Рисунок.Картинка = БиблиотекаКартинок["ИндексЦифра" + ЦифраИндекса];
			Иначе
				Продолжить;
			КонецЕсли;
		КонецЦикла;
		ИндексКуда = Новый Структура("ИндексКуда", ИндексПолучателя);
		ОбластьИндекс.Параметры.Заполнить(ИндексКуда);
	Иначе
		Для Каждого Рисунок Из ОбластьИндекс.Рисунки Цикл
			Если СтрНачинаетсяС(Рисунок.Имя, "Индекс") Тогда
				Рисунок.Картинка = БиблиотекаКартинок.ПечКИндексЦифраПустая;
			КонецЕсли;
		КонецЦикла;
	КонецЕсли;
	
КонецПроцедуры

Процедура ЗаполнитьСекциюКонверта(Макет, ИмяСекции, Данные, ПараметрыВыводаВМакет)
	
	Если ИмяСекции = "ОтКого" Тогда
		ВысотаСекции = 1;
	ИначеЕсли ИмяСекции = "Кому" Тогда
		ВысотаСекции = 2;
	ИначеЕсли ИмяСекции = "Откуда" И ПараметрыВыводаВМакет.РазмерСтраницы = "Envelope DL" Тогда
		ВысотаСекции = 2;
	Иначе
		ВысотаСекции = 3;
	КонецЕсли;
	
	КоличествоВыведенныхВСекциюЭлементов = 0;
	ВГраницаМассиваДанных = Данные.ВГраница();
	Для НомерСекции = 1 По ВысотаСекции Цикл
		
		ИмяПараметра = ИмяСекции + НомерСекции;
		Если НомерСекции = 1 Тогда
			ДлинаСекции = ПараметрыВыводаВМакет.ДлинаПервойСтроки;
		Иначе
			ДлинаСекции = ПараметрыВыводаВМакет.ДлинаВторойСтроки;
		КонецЕсли;
		
		ЭлементыПараметра = Новый Массив;
		Пока КоличествоВыведенныхВСекциюЭлементов <= ВГраницаМассиваДанных 
			И СтрДлина(Данные[КоличествоВыведенныхВСекциюЭлементов]) <= ДлинаСекции Цикл
			
			ЭлементыПараметра.Добавить(Данные[КоличествоВыведенныхВСекциюЭлементов]);
			ДлинаСекции = ДлинаСекции - СтрДлина(Данные[КоличествоВыведенныхВСекциюЭлементов]);
			КоличествоВыведенныхВСекциюЭлементов = КоличествоВыведенныхВСекциюЭлементов + 1;
			
		КонецЦикла;
		ФинализироватьСекцию(ИмяПараметра, ЭлементыПараметра, Макет);
		
	КонецЦикла;
	
КонецПроцедуры

Процедура ЗаполнитьЛоготип(ОбластьЗаголовок, Логотип)
	
	Для Каждого Рисунок Из ОбластьЗаголовок.Рисунки Цикл
		Если Рисунок.Имя = "ЗонаИллюстраций" Тогда
			ОбластьЗаголовок.Рисунки.ЗонаИллюстраций.Картинка = Новый Картинка(Логотип);
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры

Процедура ФинализироватьСекцию(ИмяПараметра, ЭлементыПараметра, Макет)
	
	ДанныеСекции = СтрСоединить(ЭлементыПараметра, " ");
	ДанныеСекции = СтрЗаменить(ДанныеСекции, "  ", " ");
	
	ЗначениеПараметра = Новый Структура(ИмяПараметра, ДанныеСекции);
	Макет.Параметры.Заполнить(ЗначениеПараметра);
	
КонецПроцедуры

Функция ЧастиАдресаДляВыводаВМакет(Адрес)
	
	ЧастиАдреса = СтрРазделить(Адрес, ",");
	Для НомерЧастиАдреса = 0 По ЧастиАдреса.Количество() - 2 Цикл
		ЧастиАдреса[НомерЧастиАдреса] =СокрЛП(ЧастиАдреса[НомерЧастиАдреса]) + "," + " ";
	КонецЦикла;
	Возврат ЧастиАдреса;
	
КонецФункции

Функция ПредставлениеПочтовогоАдреса(Адрес)
	
	Если Адрес.Свойство("ТипАдреса") И ВРег(Адрес.ТипАдреса) = ВРег("ВСвободнойФорме") Тогда
		Возврат Адрес.Представление;
	КонецЕсли;
	
	Результат = Новый Массив;
	ВыводитьСокращениеРегиона = Истина;
	
	Если Адрес.Свойство("Улица") И ЗначениеЗаполнено(Адрес.Улица) Тогда
		
		Если Адрес.Свойство("УлицаСокращение") И ЗначениеЗаполнено(Адрес.УлицаСокращение) Тогда
			Если Адрес.УлицаСокращение = "ул" Тогда
				ПредставлениеУлицы = Адрес.УлицаСокращение + ". " + Адрес.Улица;
			Иначе
				ПредставлениеУлицы = Адрес.Улица + " " + Адрес.УлицаСокращение + ".";
			КонецЕсли;
		Иначе
			ПредставлениеУлицы = Адрес.Улица;
		КонецЕсли;
		
		Результат.Добавить(ПредставлениеУлицы);
	КонецЕсли;
	
	Если Адрес.Свойство("ДополнительнаяТерритория") И ЗначениеЗаполнено(Адрес.ДополнительнаяТерритория) Тогда
		
		Если Адрес.Свойство("ДополнительнаяТерриторияСокращение") И ЗначениеЗаполнено(Адрес.ДополнительнаяТерриторияСокращение) Тогда
			ПредставлениеДопТерритории = Адрес.ДополнительнаяТерриторияСокращение + ". " + Адрес.ДополнительнаяТерритория;
		Иначе
			ПредставлениеДопТерритории = Адрес.ДополнительнаяТерритория;
		КонецЕсли;
		Результат.Добавить(ПредставлениеДопТерритории);
		
		Если Адрес.Свойство("ЭлементДополнительнойТерритории") И ЗначениеЗаполнено(Адрес.ЭлементДополнительнойТерритории) Тогда
			
			Если Адрес.Свойство("ЭлементДополнительнойТерриторииСокращение") И ЗначениеЗаполнено(Адрес.ЭлементДополнительнойТерриторииСокращение) Тогда
				
				Если Адрес.ЭлементДополнительнойТерриторииСокращение = "ул" Тогда
					ПредставлениеУлицы = Адрес.ЭлементДополнительнойТерриторииСокращение + ". " + Адрес.ЭлементДополнительнойТерритории;
				Иначе
					ПредставлениеУлицы = Адрес.ЭлементДополнительнойТерритории + " " + Адрес.ЭлементДополнительнойТерриторииСокращение;
				КонецЕсли;
			Иначе
				ПредставлениеУлицы = Адрес.ЭлементДополнительнойТерриторииСокращение;
			КонецЕсли;
			
			Результат.Добавить(ПредставлениеУлицы);
			
		КонецЕсли;
		
	КонецЕсли;
	
	Если Адрес.Свойство("Здание") И ЗначениеЗаполнено(Адрес.Здание.ТипЗдания) И ЗначениеЗаполнено(Адрес.Здание.Номер) Тогда
		ПредставлениеЗдания = НРег(Адрес.Здание.ТипЗдания) + " " + Адрес.Здание.Номер;
		Результат.Добавить(ПредставлениеЗдания);
	КонецЕсли;
	
	Если Адрес.Свойство("Корпуса") И ЗначениеЗаполнено(Адрес.Корпуса) Тогда
		ПредставлениеКорпусов = Новый Массив;
		Для Каждого Корпус Из Адрес.Корпуса Цикл
			ПредставлениеКорпусов.Добавить(НРег(Корпус.ТипКорпуса) + " " + Корпус.Номер);
		КонецЦикла;
		Результат.Добавить(СтрСоединить(ПредставлениеКорпусов, ", "));
	КонецЕсли;
	
	Если Адрес.Свойство("Помещения") И ЗначениеЗаполнено(Адрес.Помещения) Тогда
		ПредставлениеПомещений = Новый Массив;
		Для Каждого Помещение Из Адрес.Помещения Цикл
			Если НРег(Помещение.ТипПомещения) = "а/я" Или НРег(Помещение.ТипПомещения) = "в/ч" Тогда
				// Абонентский ящик - первый элемент адреса. Остальные элементы коллекции не имеют значения.
				Результат.Вставить(0, НРег(Помещение.ТипПомещения) + " " + Помещение.Номер);
				Прервать;
			КонецЕсли;
			ПредставлениеПомещений.Добавить(НРег(Помещение.ТипПомещения) + " " + Помещение.Номер);
		КонецЦикла;
		
		Если ЗначениеЗаполнено(ПредставлениеПомещений) Тогда
			Результат.Добавить(СтрСоединить(ПредставлениеПомещений, ", "));
		КонецЕсли;
	КонецЕсли;
	
	Если Адрес.Свойство("Город") И ЗначениеЗаполнено(Адрес.Город) Тогда
		Если Адрес.Свойство("ГородСокращение") И ЗначениеЗаполнено(Адрес.ГородСокращение) Тогда
			ПредставлениеГорода = НРег(Адрес.ГородСокращение) + ". " + Адрес.Город;
		Иначе
			ПредставлениеГорода = Адрес.Город;
		КонецЕсли;
		Результат.Добавить(ПредставлениеГорода);
		ВыводитьСокращениеРегиона = Ложь;
	КонецЕсли;
	
	Если Адрес.Свойство("ВнутригородскойРайон") И ЗначениеЗаполнено(Адрес.ВнутригородскойРайон) Тогда
		Если Адрес.Свойство("ВнутригородскойРайонСокращение") И ЗначениеЗаполнено(Адрес.ВнутригородскойРайонСокращение) Тогда
			ПредставлениеВнутригородскогоРайона = НРег(Адрес.ВнутригородскойРайонСокращение) + ". " + Адрес.ВнутригородскойРайон;
		Иначе
			ПредставлениеВнутригородскогоРайона = Адрес.ВнутригородскойРайон;
		КонецЕсли;
		Результат.Добавить(ПредставлениеВнутригородскогоРайона);
	КонецЕсли;
	
	Если Адрес.Свойство("НаселенныйПункт") И ЗначениеЗаполнено(Адрес.НаселенныйПункт) Тогда
		Если Адрес.Свойство("НаселенныйПунктСокращение") И ЗначениеЗаполнено(Адрес.НаселенныйПунктСокращение) Тогда
			ПредставлениеНаселенногоПункта = НРег(Адрес.НаселенныйПунктСокращение) + ". " + Адрес.НаселенныйПункт;
		Иначе
			ПредставлениеНаселенногоПункта = Адрес.НаселенныйПункт;
		КонецЕсли;
		Результат.Добавить(ПредставлениеНаселенногоПункта);
		ВыводитьСокращениеРегиона = Ложь;
	КонецЕсли;
	
	Если Адрес.Свойство("Район") И ЗначениеЗаполнено(Адрес.Район) Тогда
		Если Адрес.Свойство("РайонСокращение") И ЗначениеЗаполнено(Адрес.РайонСокращение) Тогда
			ПредставлениеРайона = Адрес.Район + " " + НРег(Адрес.РайонСокращение) + ".";
		Иначе
			ПредставлениеРайона = Адрес.Район;
		КонецЕсли;
		Результат.Добавить(ПредставлениеРайона);
	КонецЕсли;
	
	Если Адрес.Свойство("Округ") И ЗначениеЗаполнено(Адрес.Округ) Тогда
		Если Адрес.Свойство("ОкругСокращение") И ЗначениеЗаполнено(Адрес.ОкругСокращение) Тогда
			ПредставлениеОкруга = Адрес.Округ + " " + НРег(Адрес.ОкругСокращение) + ".";
		Иначе
			ПредставлениеОкруга = Адрес.Округ + " " + НРег(Адрес.ОкругСокращение) + ".";
		КонецЕсли;
		Результат.Добавить(ПредставлениеОкруга);
	КонецЕсли;
	
	Если Адрес.Свойство("Регион") И ЗначениеЗаполнено(Адрес.Регион) Тогда
		
		Если Адрес.КодРегиона = "77"           // Москва
			Или Адрес.КодРегиона = "78"        // Санкт-Петербург
			Или Адрес.КодРегиона = "92"        // Севастополь
			Или Адрес.КодРегиона = "99" Тогда  // Байконур
			
			// У города федерального значения префикс "г. " не пишется если речь идет о нас.пункте в составе города федерального значения.
			ПредставлениеРегиона = ?(ВыводитьСокращениеРегиона, "г. ", "") + Адрес.Регион;
		ИначеЕсли Адрес.КодРегиона = "21" Тогда // Чувашская республика - Чувашия
			ПредставлениеРегиона = НСтр("ru = 'Чувашская Республика - Чувашия'");
		Иначе
			Если Адрес.Свойство("РегионСокращение") И ЗначениеЗаполнено(Адрес.РегионСокращение) Тогда
				ПредставлениеРегиона = Адрес.Регион + " " + НРег(Адрес.РегионСокращение) + ".";
			Иначе
				ПредставлениеРегиона = Адрес.Регион;
			КонецЕсли;
			
		КонецЕсли;
		
		Результат.Добавить(ПредставлениеРегиона);
		
	КонецЕсли;
	
	Если Адрес.Свойство("Страна") И ЗначениеЗаполнено(Адрес.Страна) Тогда
		Результат.Добавить(ТРег(Адрес.Страна));
	КонецЕсли;
	
	Возврат СтрСоединить(Результат, "," + " ");
	
КонецФункции

Функция ПредставлениеИндекса(Адрес)
	
	Если Адрес.Свойство("ТипАдреса") И ВРег(Адрес.ТипАдреса) = ВРег("ВСвободнойФорме") Тогда
		Возврат ИндексИзПредставления(Адрес.Представление);
	КонецЕсли;
	
	//Возврат Адрес.Индекс;
	
КонецФункции

Функция ИндексИзПредставления(ПредставлениеАдреса)
	
	ЧастиАдреса = СтрРазделить(ПредставлениеАдреса, ",");
	Для Каждого ЧастьАдреса Из ЧастиАдреса Цикл
		Если СтрДлина(СокрЛП(ЧастьАдреса)) = 6
			И СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(СокрЛП(ЧастьАдреса)) Тогда
			Возврат СокрЛП(ЧастьАдреса);
		КонецЕсли;
	КонецЦикла;
	
	Возврат "";
	
КонецФункции

#КонецОбласти
Показать
13. sanymust 33 09.10.20 12:10 Сейчас в теме
(12)Я с телефона мельком прошел, в функции "ТекстЗапросаПечатьКонвертовИзКонтрагентов()" Вам надо выбирать получателя не из партнёров,а получить соединением связанного контрагента. Я попозже сделаю возможность печати из партнёров
14. user1375581 5 10.10.20 06:35 Сейчас в теме
16. user1375581 5 12.10.20 08:56 Сейчас в теме
(15) 1С:Комплексная автоматизация 2 (2.4.11.106) . У справочников Организация и Контрагенты нет "ИсторияКонтактнойИнформации", вообще нет истории изменения адреса. Выключила опцию (В базе -тест) ведения партнеров и клиентов раздельно - не работает.
17. sanymust 33 12.10.20 09:56 Сейчас в теме
(16)Думаю тут дело не в работе расширения, а в учетных данных в самой базе. База с нуля или переходили с КА 1.1 или других?
18. user1375581 5 12.10.20 10:59 Сейчас в теме
19. sanymust 33 12.10.20 13:42 Сейчас в теме
(18)Тогда есть вероятность, что контактная информация введена не совсем корректно. Например справочник видов контактной информации содержит кучу неверных элементов.
Оставьте свое сообщение

См. также

УПД за поставщика c подписями и факсимиле для БП 3.0 Промо

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

Внешняя печатная форма для печати - "Универсальный передаточный документ" за поставщика. ВПФ (с формой и без) в форме заполняются должности и фамилии и происходит заполнение полей 10,13, 15,18.Так же есть возможность хранить и выводить на печать подписи руководителя и глав.бухгалтера поставщика. Внесены изменения под требования конфигураций выше 3.0.67.38 (НДС20%). Версия 0.2 без формы выбора подписантов(будет полезна тем у кого ответственные лица неизменные).

5 стартмани

19.03.2015    86665    981    kn    109    

История объекта

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

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

1 стартмани

17.02.2021    532    1    AnryMc    0    

Лист согласования для 1С:Документооборот

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

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

1 стартмани

23.04.2020    3818    11    pavelpribytkin96    2    

Шаблон внешней печатной формы в формате office open XML (Microsoft Word, OpenOffice.org Writer, Google Docs и др.)

Универсальные печатные формы v8 1cv8.cf Абонемент ($m)

В данной публикации я хочу поделиться шаблоном внешней печатной формы в формате office open XML (Microsoft Word, OpenOffice.org Writer, Google Docs и др.) с использованием БСП.

1 стартмани

10.03.2020    4855    11    pavelpribytkin96    0    

Создание и печать этикеток (ценников). Со штрих-кодами и без. Универсальная обработка Промо

Универсальные печатные формы Ценники Розничная торговля Розничная торговля v8 1cv8.cf Абонемент ($m)

Эта обработка (в составе демонстрационной конфигурации) представляет собой инструмент, который позволяет делать только лишь два полезных действия: 1. создать макет для печати этикеток (ценников) в пользовательском режиме 2. напечатать заданное количество этикеток (ценников) по выбранной номенклатуре. НО!...

5 стартмани

18.07.2015    74434    282    kentavr27    57    

Сохранение и изменение настроек форм у всех пользователей 1С: Документооборот

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

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

5 стартмани

01.02.2020    7142    25    st_Etlau    6    

Документооборот - получение всех согласующих лиц бизнес-процесса по схеме - сразу после старта

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

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

2 стартмани

24.12.2019    3290    8    Олег    6    

Заполнение шаблона Word docx на сервере, без ComОбъект и внешних компонент, только механизмами самой Платформы 1С, методом XML-инъекции

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

Внешние печатные формы для документа Счет на оплату позволяют сформировать на сервере без использования технологии OLE (Com объекта) и сохранить на печать заполненные docx шаблоны договора поставки и спецификации к договору (УНФ 1.6) (идея универсальна, подойдет для любой конфигурации). Используются только средства самой Платформы 1С:Предприятие 8.3 (8.3.13.1644). Проверено на релизе УНФ 1.6.16.176.

1 стартмани

23.12.2019    12921    49    1sig    3    

Регистрация и согласование договоров, редакция 2.0 Промо

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

Конфигурация "Регистрация и согласование договоров" является готовым решением для управления и учета договоров на предприятии. Позволяет организовать единую информационную систему регистрации и согласования. Включает CRM подсистему.

1000 руб.

26.05.2015    20117    18    5    

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

Документооборот и делопроизводство v8 ERP2 БП3.0 УТ11 УУ Абонемент ($m)

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

2 стартмани

09.12.2019    5121    15    Zircool    15    

Формирование договоров по шаблонам из Google Drive

Печатные формы документов Документооборот и делопроизводство v8 УТ11 КА2 Россия БУ УУ Абонемент ($m)

Основная идея: бухгалтер / кадровик / директор может вносить правки в шаблоны договоров без участия программиста. Пользователь получает возможность редактировать шаблоны на Google диске и тут же формировать договоры по исправленным шаблонам из 1С. Заполненный по шаблону договор сохраняется на Google диск. Вместо пары десятков внешних печатных форм, в вашей базе всего одна внешняя обработка. Обработка разрабатывалась под КА 2. Тестировалась на КА 2.4.9.82, УТ 11.4.5.32, УТ 11.4.9.98. Несложно адаптируется под другие БСП-Конфигурации.

2 стартмани

25.11.2019    22294    25    hlopik    23    

Договор на проект внедрения 1С:ERP (иной сложной системы) по схеме фикс-прайс

Печатные формы документов Документооборот и делопроизводство Документооборот и делопроизводство v8 ERP2 1С:Франчайзи, автоматизация бизнеса Россия УУ Абонемент ($m)

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

5 стартмани

15.08.2019    7774    60    1СERP    2    

Печать бухгалтерской справки для любого документа Промо

Универсальные печатные формы Печатные формы документов v8 УПП1 БУ НУ Абонемент ($m)

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

1 стартмани

13.11.2013    28013    45    stsasha87    5    

Учет подписанных документов. УТ 11

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

Добавляет кнопку "подписан" в журнал документов продажи как в БП 3.

1 стартмани

23.04.2019    5856    20    aksyoma    10    

Универсальная печатная форма "Анализ объекта" + шаблон подключаемой обработки для 1С на управляемых формах + отладка внешней печатной формы.

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

Универсальная печатная форма для всех программ на управляемых формах. Результат печати содержит все реквизиты и табличные части любого документа или справочника (имя + синоним + значение реквизита или поля табличной части), показывает уникальный идентификатор (УИД/GUID) объекта и дату создания (даже справочника!) на основании УИД. Отказоустойчивость кода обработки позволяет ей открываться как в типовых, так и в самописных программах (большинство обычных внешних печатных форм этого не могут). Кроме интерактивного открытия есть возможность подключения к конфигурации. После добавления появится команда печати почти во всех документах и справочниках. Автоматически определяет среду подключения и выбирает доступный вариант вывода: общая форма печати или же отображение табличного документа в новой форме. Все реквизиты объекта получает запросом, а не перебором строк, это делает быстрым выполнение команды.

2 стартмани

05.04.2019    12695    31    Aleksandr55555    4    

Шаблон внешней печатной формы для БСП с универсальной формой тестирования

Универсальные печатные формы v8 ERP2 ЗКГУ3.0 БП3.0 УТ11 КА2 ЗУП3.x Россия Абонемент ($m)

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

1 стартмани

25.03.2019    6123    21    aves    2    

[БП 3.0, УТ 11.1] Бизнес-Интеллект: мастер ТТН Промо

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

Трудности с формированием комплектов сопроводительных документов при перевозках? Много времени отнимает подготовка ТН и ТТН? У Вас несколько перевозок (ТН, ТТН) на одну финансовую реализацию (ТОРГ 12)? Необходимо хранить данные о каждой перевозке в информационной базе? В решении всех этих проблем Вам поможет обработка "Бизнес-Интеллект:мастер ТТН"

1 стартмани

18.11.2013    67674    184    biz-intel    63    

Макет оформления "Печатные формы" для отчетов на СКД (черно-белый)

Универсальные печатные формы v8 v8::СКД 1cv8.cf Абонемент ($m)

Готовый макет оформления для отчетов СКД. Макет представляет собой простой черно-белый вариант, с крупным шрифтом в группировках.

1 стартмани

15.03.2019    10606    10    rpgshnik    5    

Шаблоны печатных форм на лету!

Универсальные печатные формы v8 Россия Абонемент ($m)

Справочник шаблонов печатных форм. Платформа 1С:Предприятие 8.3 (8.3.12.1616). Функционал новой платформы не использовался.

1 стартмани

12.11.2018    9623    23    zykov_vitaliy    5    

Печать диаграммы Ганта по проекту. Документооборот 2.1

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

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

1 стартмани

23.10.2018    8689    65    Voland1402    14    

Начало работы с программой 1С Документооборот 8 Промо

Пользователю системы Документооборот и делопроизводство Документооборот и делопроизводство v8 1cv8.cf Россия Абонемент ($m)

Описание начала работы в программе 1С Документооборот 8 КОРП Краткое описание основных шагов для создания демонстрационного примера для заказчика. Для демонстрации был выбран участок согласования договоров - соответственно, речь идет о внутренних документах. Статью можно скачать в виде файла word.

1 стартмани

02.01.2012    137463    376    graphbuh    13    

Лист согласования ОБЩИЙ

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

Лист согласования для конфигурации 1С:Документооборот 2.1. по всем циклам согласования

1 стартмани

01.10.2018    8399    34    Int_Girl    4    

Оценка экономического эффекта от внедрения системы электронного документооборота

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

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

1 стартмани

22.09.2018    14697    25    mvxyz    5    

Печать pdf документа со штампом ЭЦП

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

Печать pdf файла, прикрепленного к внутреннему документу, подписанному ЭЦП, с установкой отметки о подписании.

1 стартмани

24.05.2018    18226    118    App0st0l    14    

Журналы учета счетов-фактур для подразделений (филиалов) в КОРП Промо

Документооборот и делопроизводство Бухгалтерские Документооборот и делопроизводство v8 БП2.0 Россия БУ НУ НДС Абонемент ($m)

В отчеты Журнал учета счетов-фактур полученных и Журнал учета счетов фактур выданных добавлен реквизит подразделение для формирования отчетов по подразделениям (филиалам) в КОРП, в том числе и не выделенным на отдельный баланс.

1 стартмани

26.12.2013    18985    7    alfanika    0    

Простая подсистема согласования

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

Простая система согласования (утверждения), с простой установкой на любую конфигурацию с управляемыми формами.

1 стартмани

27.03.2018    18362    67    eugenevk    26    

Быстрый контроль первички по периодическим услугам

Бухгалтерские Анализ учета Документооборот и делопроизводство Документооборот и делопроизводство v8 v8::БУ БП3.0 БУ Абонемент ($m)

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

2 стартмани

21.03.2018    10096    3    human_new    0    

Внешняя печатная форма с отладкой (шаблон) для управляемых форм

Универсальные печатные формы Печатные формы документов v8 v8::УФ БП3.0 ЗУП3.x Абонемент ($m)

Шаблон обработки предназначен для разработки внешних печатных форм с удобным механизмом отладки. Пример внешней печатной формы "Счет на оплату покупателю" для БП 3.0.64.28

1 стартмани

12.02.2018    17164    75    Mx00    24    

Подсистема "Настраиваемые печатные формы" Промо

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

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

1 стартмани

20.06.2012    38127    576    Gmix    88    

Универсальная печатная форма Трудового договора на основе шаблона Word для ЗУП 3.1

Универсальные печатные формы Печатные формы документов Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

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

1 стартмани

06.09.2017    16502    122    Spartacus    2    

Список всех задач (1С:Документооборот ПРОФ 2.1)

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

Отчет "Список всех задач" для 1С:Документооборота ПРОФ 2.1

3 стартмани

25.05.2017    14698    16    Spektr    7    

Презентабельная печатная форма в табличном документе с использованием картинок

Универсальные печатные формы v8 1cv8.cf Автомобили, автосервисы Россия Абонемент ($m)

Иногда требуется создать красивую печатную форму с картинками. Но как уместить картинки на лист А4 так чтобы они ровно умещались на листе??? На этот вопрос ответит "Презентабельная печатная форма в табличном документе с использованием картинок". В данном случае это пример коммерческого предложения на Роллс Ройс :)

1 стартмани

14.05.2017    12604    3    Drfreeman    0    

Создание произвольных кадровых документов по шаблону Word в ЗУП 3.1 Промо

Универсальные печатные формы Документооборот и делопроизводство Управление персоналом (HRM) Документооборот и делопроизводство Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ УУ Абонемент ($m)

В работе кадровых служб часто встречается задача оперативно подготовить кипу однотипных документов (персональные справки, дополнительные соглашения и т.д.). Создайте шаблон нужного документа и отдайте заполнить Вашему помощнику - 1C.

1 стартмани

24.10.2013    28259    98    it4hr    21    

Презентабельная печатная форма в WORD

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

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

1 стартмани

06.05.2017    13632    12    Drfreeman    8    

Печать данных в готовые типографские бланки

Управление персоналом (HRM) Универсальные печатные формы Управление персоналом (HRM) v8 1cv8.cf БУ Абонемент ($m)

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

2 стартмани

19.10.2016    13281    14    sdin101    4    

Внешняя печатная форма в формате WORD на примере ЗУП 3, работает в файловом и клиент-серверном вариантах

Управление персоналом (HRM) Универсальные печатные формы Управление персоналом (HRM) v8 ЗУП3.x Россия Абонемент ($m)

Пример внешней печатной формы для вывода отчета в MS WORD из конфигурации ЗУП 3, работает как в файловом, так и в клиент-серверном варианте работы 1С.

1 стартмани

14.10.2016    93079    106    flyDrag    8    

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

Универсальные печатные формы Печатные формы документов Документооборот и делопроизводство Документооборот и делопроизводство v8 БП2.0 УТ10 Россия Абонемент ($m)

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

1 стартмани

19.04.2012    30357    308    andrey1312    10    

Подсистема учёта дополнительных документов со внешним хранилищем присоединённых файлов

Документооборот и делопроизводство Управленческий учет (прочее) v8 1cv8.cf УУ Абонемент ($m)

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

1 стартмани

22.08.2016    13437    9    Glebis    2    

[Расширение или ВПФ] Печать почтовых конвертов для БП 3.0, УТ 11.2

Универсальные печатные формы Документооборот и делопроизводство Документооборот и делопроизводство v8 БП3.0 УТ11 Россия Абонемент ($m)

Печать конверта с "переворачиванием" адреса (сначала улица, затем дом, потом город), как того требует Почта России. Обработка представлена как Расширением конфигурации, так и Внешней печатной формой.

1 стартмани

23.03.2016    22484    119    config    20    

Обработка формирования 2D штрихкодов (QR Data Matrix PDF417 )

Универсальные печатные формы v8 1cv8.cf Абонемент ($m)

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

1 стартмани

17.02.2016    15952    104    anatoliy_gt    10    

Документы в Word без конфигуратора

Универсальные печатные формы Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП2.5 Абонемент ($m)

Как правило, текст трудового договора кадровики набирают в Word. Потом файл с текстом передают программисту и просят сделать печатную форму для справочника Сотрудники. Программист выполняет поставленную задачу, и у справочника появляется новая печатная форма с нужным текстом и автоматическим заполнением основных параметров (ФИО, паспортные данные и т.д.). Проходит какое то время, и появляется необходимость в редактировании текста трудового договора. Кроме редактирования, может возникнуть необходимость в добавлении еще какого-то договора или соглашения в виде печатной формы. Тогда кадровик обращается за помощью к программисту. Чтобы пользователь сам мог отредактировать текст или добавить новую печатную форму без помощи программиста (или с минимальной помощью программиста), был написан этот инструмент. Скажу сразу. Обработка может показаться сложной и непонятной для обычного пользователя в части формирования источника данных для заполнения файла word (тогда он может обратиться за помощью к программисту), но отредактировать текст договора , на мой взгляд, вполне сможет.

1 стартмани

19.01.2016    19584    59    vovan_victory    8    

Отчет по движениям документа. Управляемые формы. Для Бухгалтерия 3.0, ЗУП 3.0 и т.д.

Анализ учета Универсальные печатные формы v8 БП3.0 ЗУП3.x Абонемент ($m)

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

1 стартмани

09.12.2015    24209    256    alexx2510    15    

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

Пакетная печать Печатные формы документов Документооборот и делопроизводство Учет рабочего времени Учет ТМЦ Документооборот и делопроизводство Учет рабочего времени Учет ТМЦ v8 1cv8.cf Автомобили, автосервисы Транспорт, автопарки, такси Россия УУ Абонемент ($m)

Обработка для печати путевых листов для легкового автомобиля из любой конфигурации 1С, на платформе 8.2 – 8.3 (управляемые формы). Она предназначена для широко распространённого случая, когда предприятию нужны путевые листы для списания на затраты бензина при работе водителя с личным легковым автомобилем, и при этом нет необходимости вести учет работы водителя в информационной системе.

1 стартмани

20.11.2015    22233    117    Petr54-ru    3    

Конструктор трудовых договоров WORD для типовой конфигурации 1C: Зарплата и управление персоналом 3.1

Универсальные печатные формы Пакетная печать Печатные формы документов Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Россия БУ Абонемент ($m)

Внешняя печатная форма или обработка "Конструктор трудовых договоров на основе документов формата Word". Конструктор автоматически подставляет реквизиты в документ формата Word. Подходит для типовой конфигурации 1С: ЗУП 3.1.

1 стартмани

14.07.2015    67093    634    ni032mas    109    

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

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

Часто встаёт задача - вставить в макет документа печать и подпись. Большинство из тех, кто с этим сталкивается, идут по пути добавления в макет прозрачных изображений. Есть и другое решение, результат которого, на мой взгляд, более эстетичен...

1 стартмани

29.05.2015    64048    89    1psspam    12    

Печатная форма ТОРГ-12 и Счет-фактура за поставщика УТ 11

Печатные формы документов Документооборот и делопроизводство Документооборот и делопроизводство v8 УТ10 УУ Абонемент ($m)

Протестирована на Управление торговлей 11.1.6.17 и 11.1.10.103, 11.1.10.199, 11.2.3.101

1 стартмани

25.05.2015    19488    250    ReN    12    

Создание внешней печатной формы под Управляемое Приложение (Управление Торговлей 11.1.1.11) Промо

Универсальные печатные формы v8 УТ10 Россия Абонемент ($m)

Создание внешней печатной формы под Управляемое Приложение (Управление Торговлей 11.1.1.11)

1 стартмани

28.03.2013    151654    545    Stradivari    31    

Обработка заполнения шаблонов Word из данных справочников и документов 1С

Универсальные печатные формы v8 1cv8.cf Абонемент ($m)

Обработка 1С Шаблоны объектов 1С. Управляемое приложение. Обработка позволяет использовать шаблоны документов Word c с тегами автоподстановки. Обработка может быть использована для справочников и документов.

1 стартмани

22.04.2015    14922    56    mmtv68    6