Получение писем из любой папки электронной почты в 1С:Бухгалтерии

27.06.22

Интеграция - Email рассылки

В данной публикации речь пойдёт о том, как можно в "1С:Бухгалтерии" настроить получение писем из любой папки учетной записи электронной почты.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Расширение для настройки получения писем из любой папки электронной почты в 1С:Бухгалтерия
.cfe 21,64Kb ver:1.0
12
12 Скачать (1 SM) Купить за 1 850 руб.

Из опыта работы с типовой конфигурации «1С:Бухгалтерия предприятия, редакция 3.0» у заказчиков довольно редко возникает необходимость настроить учетную запись электронной почты для получения писем. Однако, когда такая потребность возникла, то оказалось, что письма будут получаться исключительно из папки «Входящие» («Inbox»). И если заказчик в своей электронной почте создал определенное количество папок в папке «Входящие», то «1С:Бухгалтерия» эти все папки проигнорирует. Таким образом, у пользователя нет практической возможности настроить получение писем из другой папки.

1-я часть проблемы заключается в том, что в процедуре «ЗагрузитьСообщения» общего модуля «РаботаСПочтовымиСообщениямиСлужебный» отсутствует строка:
Соединение.ТекущийПочтовыйЯщик = <ВыбраннаяПользователемПапка>;
Наличие такой строки в купе с возможностью её передаче во входящем в процедуру параметре «ПараметрыЗагрузки» решили бы первую часть проблемы.

 



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

Для начала на форме настройки учетной записи электронной почты реализуем следующий алгоритм: 
Для возможности получения писем из другой папки, отличной от папки 'Входящие' ('Inbox'), пользователь на форме учетной записи нажимает на кнопку 'Вывести список папок почтового ящика', в сформированной таблице со всеми папками текущей учетной записи выбрать необходимую папку электронного ящика. Выбранная папку должна отразиться в поле 'Папка почтового ящика для получения писем'. После сохранения и повторного открытия формы учетной записи электронной почты указанная папка должна сохраняться.

 

 

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

#Область ВНачалеРаботы

&НаСервере
Процедура Дельта24083_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)

	нРеквизиты = Новый Массив;
	нРеквизиты.Добавить(Новый РеквизитФормы("ПапкаПочтовогоЯщикаДляПолученияПисем", Новый ОписаниеТипов("Строка"), , "Папка почтового ящика для получения писем", Ложь));
	ИзменитьРеквизиты(нРеквизиты);
	
	ПолеПапкиПочтовогоЯщикаДляПолученияПисем = ЭтаФорма.Элементы.Добавить("ПапкаПочтовогоЯщикаДляПолученияПисем", Тип("ПолеФормы"),Элементы.ИспользоватьУчетнуюЗапись);
	ПолеПапкиПочтовогоЯщикаДляПолученияПисем.Вид = ВидПоляФормы.ПолеВвода; 
	ПолеПапкиПочтовогоЯщикаДляПолученияПисем.ПутьКДанным = "ПапкаПочтовогоЯщикаДляПолученияПисем";
	ПолеПапкиПочтовогоЯщикаДляПолученияПисем.ТолькоПросмотр = Истина;
	
	ВосстановитьНастройкиПапокПочтовогоЯщикаИзХранилищаЗначений();
	
	нЭлемент = Элементы.Добавить("ДекорацияСОписаниемДействий", Тип("ДекорацияФормы"), Элементы["НастройкиСоединения"]); 
	нЭлемент.Вид = ВидДекорацииФормы.Надпись;
	нЭлемент.АвтоМаксимальнаяШирина = Ложь;
	нЭлемент.Заголовок = "Для возможности получения писем из другой папки, отличной от папки 'Входящие' ('Inbox'), необходимо выполнить следующее:" + 
	Символы.ПС + "1. Нажать на кнопку 'Вывести список папок почтового ящика'." + 
	Символы.ПС + "2. В сформированной таблице со всеми папками текущей учетной записи выбрать необходимую папку." + 
	Символы.ПС + "3. Выбранная папку отразиться в поле 'Папка почтового ящика для получения писем'." +
	Символы.ПС + "4. Сохранить текущую настройку учетной записи.";
		
	НовКоманда = ЭтаФорма.Команды.Добавить("ВывестиСписокПапокПочтовогоЯщика");
	НовКоманда.Действие = "ВывестиСписокПапокПочтовогоЯщика"; 
	
	нЭлемент = ЭтаФорма.Элементы.Добавить("ВывестиСписокПапокПочтовогоЯщика", Тип("КнопкаФормы"), Элементы["НастройкиСоединения"]);
	нЭлемент.Заголовок = "Вывести список папок почтового ящика";
	нЭлемент.ИмяКоманды = "ВывестиСписокПапокПочтовогоЯщика";
	
КонецПроцедуры

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

#КонецОбласти

Далее реализуем механизм получения списка всех папок электронной почты и вывод на форму таблицы с их названиями:

#Область ПолучениеСпискаПапок

&НаСервере
Функция ВывестиСписокПапокПочтовогоЯщикаНаСервере()
	
	УчетнаяЗапись = Объект.Ссылка;
	УстановитьОтключениеБезопасногоРежима(Истина);
	Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(УчетнаяЗапись, Истина);
	УстановитьОтключениеБезопасногоРежима(Ложь);
	
	Протокол = ПротоколИнтернетПочты.POP3;
	Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(УчетнаяЗапись, "ПротоколВходящейПочты") = "IMAP" Тогда
		Протокол = ПротоколИнтернетПочты.IMAP;
	КонецЕсли;
	
	УстановитьОтключениеБезопасногоРежима(Истина);
	Соединение = Новый ИнтернетПочта;
	Соединение.Подключиться(Профиль, Протокол);
	МассивПочтовыхЯщиков = Соединение.ПолучитьПочтовыеЯщики();
	Соединение.Отключиться();
	УстановитьОтключениеБезопасногоРежима(Ложь);
	
	Если Не Истина Тогда
		ТаблицаПапокПочтовогоЯщика = "";
	КонецЕсли;

	ТаблицаПапокПочтовогоЯщика = Новый  ТаблицаЗначений;
	ТаблицаПапокПочтовогоЯщика.Колонки.Добавить("НазваниеПапки",Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(100)),"Наименование папки");
    
	Тек = 0;
	Пока Тек <= МассивПочтовыхЯщиков.Количество()-1 Цикл
		НовСтрока = ТаблицаПапокПочтовогоЯщика.Добавить();
		НовСтрока.НазваниеПапки = МассивПочтовыхЯщиков[Тек];
		Тек = Тек + 1;
	КонецЦикла;

	ЭтаФорма.ТаблицаПапокПочтовогоЯщика.Загрузить(ТаблицаПапокПочтовогоЯщика);
	
	Возврат МассивПочтовыхЯщиков;
	
КонецФункции

&НаКлиенте
Процедура ВывестиСписокПапокПочтовогоЯщика(Команда)
	СоздатьТаблицуПапокПочтовогоЯщика();
	МассивПочтовыхЯщиков = ВывестиСписокПапокПочтовогоЯщикаНаСервере();
КонецПроцедуры

&НаСервере
Процедура СоздатьТаблицуПапокПочтовогоЯщика()
	
	ТаблицаПапокПочтовогоЯщика = Новый  ТаблицаЗначений;
	ТаблицаПапокПочтовогоЯщика.Колонки.Добавить("НазваниеПапки",Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(100)),"Наименование папки");
	
	МассивДобавляемыхРеквизитов = Новый Массив;
	МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ТаблицаПапокПочтовогоЯщика", Новый ОписаниеТипов("ТаблицаЗначений")));
	
	Для Каждого Колонка Из ТаблицаПапокПочтовогоЯщика.Колонки Цикл
		МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы(Колонка.Имя, Колонка.ТипЗначения,"ТаблицаПапокПочтовогоЯщика" ,Колонка.Заголовок));
	КонецЦикла;
	
	ИзменитьРеквизиты(МассивДобавляемыхРеквизитов,);
	
	ВывестиТаблицуЗначенийНаФорму(ЭтаФорма, "ТаблицаПапокПочтовогоЯщика", Элементы["НастройкиСоединения"], "Таблица папок почтового ящика",ТаблицаПапокПочтовогоЯщика);
	
	Элементы["ТаблицаПапокПочтовогоЯщика"].УстановитьДействие("ПриАктивизацииСтроки","ВыбратьПапкуПочтовогоЯщикаДляПолученияПисем");
	
КонецПроцедуры

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

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

#КонецОбласти

В завершении создадим процедуры по установке необходимой папки и сохранению её значения в информационной базе:

#Область ВыборИСохранениеПапки

&НаКлиенте
Процедура ВыбратьПапкуПочтовогоЯщикаДляПолученияПисем(Команда)
		
	ЭтаФорма.ПапкаПочтовогоЯщикаДляПолученияПисем = Команда.ТекущиеДанные.НазваниеПапки;
	
КонецПроцедуры

&НаСервере
Процедура СохранитьНастройкиПапокПочтовогоЯщикаВХранилищеЗначений()
	
	//сохранить настройки
	КлючНастроек = "НастройкиПапокПочтовогоЯщика";	
	Настройки = Новый Соответствие;

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

&НаКлиенте
Процедура Дельта24083_ПослеЗаписиПосле(ПараметрыЗаписи)
	СохранитьНастройкиПапокПочтовогоЯщикаВХранилищеЗначений();
КонецПроцедуры

#КонецОбласти

Теперь вернёмся к первой части задачи: захватим в расширение процедуру «ЗагрузитьСообщения» и внесём в неё изменения, касающиеся получению писем из выбранной папки
На самом деле нам нужно только указать в параметре ТекущийПочтовыйЯщик название нужной папки, название которой мы ранее получили и сохранили в свойствах учётной записи (с дальнейшем сохранением её в хранилище общих настроек):

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

 

Далее приводится полностью код захваченной и изменённой в расширении процедуры «ЗагрузитьСообщения»:


&Вместо("ЗагрузитьСообщения")
Функция Дельта24083_ЗагрузитьСообщения(Знач УчетнаяЗапись, Знач ПараметрыЗагрузки)
	
	// Используется для проверки возможности входа на почтовый ящик.
	Перем РежимТестирования;
	
	// Получать только заголовки писем.
	Перем ПолучениеЗаголовков;
	
	// Приводить почтовые сообщения к простому типу;
	Перем ПриводитьСообщенияКТипу;
	
	// Заголовки или идентификаторы писем, полные сообщения по которым требуется получить.
	Перем ЗаголовкиИдентификаторы;
	
	Если ПараметрыЗагрузки.Свойство("РежимТестирования") Тогда
		РежимТестирования = ПараметрыЗагрузки.РежимТестирования;
	Иначе
		РежимТестирования = Ложь;
	КонецЕсли;
	
	Если ПараметрыЗагрузки.Свойство("ПолучениеЗаголовков") Тогда
		ПолучениеЗаголовков = ПараметрыЗагрузки.ПолучениеЗаголовков;
	Иначе
		ПолучениеЗаголовков = Ложь;
	КонецЕсли;
	
	УстановитьОтключениеБезопасногоРежима(Истина);
	Профиль = ИнтернетПочтовыйПрофиль(УчетнаяЗапись, Истина);
	УстановитьОтключениеБезопасногоРежима(Ложь);
	
	Если ПараметрыЗагрузки.Свойство("ЗаголовкиИдентификаторы") Тогда
		ЗаголовкиИдентификаторы = ПараметрыЗагрузки.ЗаголовкиИдентификаторы;
	Иначе
		ЗаголовкиИдентификаторы = Новый Массив;
	КонецЕсли;
	
	НаборСообщенийДляУдаления = Новый Массив;
	
	Протокол = ПротоколИнтернетПочты.POP3;
	Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(УчетнаяЗапись, "ПротоколВходящейПочты") = "IMAP" Тогда
		Протокол = ПротоколИнтернетПочты.IMAP;
	КонецЕсли;
	
	УстановитьОтключениеБезопасногоРежима(Истина);
	Соединение = Новый ИнтернетПочта;
	Соединение.Подключиться(Профиль, Протокол);
	
	//назначаем текущий почтовый ящик, отличную от ящика "Входящие" ("Inbox") 
	Попытка
		КлючНастроек = "НастройкиПапокПочтовогоЯщика";	
		ЗначениеНастроек = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("НастройкиПапокПочтовогоЯщика", КлючНастроек);	
		Если ТипЗнч(ЗначениеНастроек) = Тип("Соответствие") Тогда 
			Для Каждого ТекСтрока Из ЗначениеНастроек.Получить("ТаблицаНастроекПочтовогоЯщика") Цикл 
				Если ТекСтрока.УчетнаяЗапись = УчетнаяЗапись Тогда 
					Соединение.ТекущийПочтовыйЯщик = ТекСтрока.НазваниеПапки;
					Прервать;
				КонецЕсли;
			КонецЦикла;
		КонецЕсли;
	Исключение
	КонецПопытки;
	
	Попытка
		Если ПолучениеЗаголовков Тогда
			НаборПисем = Соединение.ПолучитьЗаголовки();
		ИначеЕсли Не РежимТестирования Тогда
			НастройкиТранспорта = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(УчетнаяЗапись, "ПротоколВходящейПочты,ОставлятьКопииСообщенийНаСервере,ПериодХраненияСообщенийНаСервере");
			Если НастройкиТранспорта.ПротоколВходящейПочты = "IMAP" Тогда
				НастройкиТранспорта.ОставлятьКопииСообщенийНаСервере = Истина;
				НастройкиТранспорта.ПериодХраненияСообщенийНаСервере = 0;
			КонецЕсли;
			
			Если НастройкиТранспорта.ОставлятьКопииСообщенийНаСервере Тогда
				Если ЗаголовкиИдентификаторы.Количество() = 0 И НастройкиТранспорта.ПериодХраненияСообщенийНаСервере > 0 Тогда
					Заголовки = Соединение.ПолучитьЗаголовки();
					НаборСообщенийДляУдаления = Новый Массив;
					Для Каждого ЭлементЗаголовок Из Заголовки Цикл
						ТекущаяДата = ТекущаяДатаСеанса();
						РазницаДат = (ТекущаяДата - ЭлементЗаголовок.ДатаОтправления) / (3600*24);
						Если РазницаДат >= НастройкиТранспорта.ПериодХраненияСообщенийНаСервере Тогда
							НаборСообщенийДляУдаления.Добавить(ЭлементЗаголовок);
						КонецЕсли;
					КонецЦикла;
				КонецЕсли;
				АвтоматическиУдалятьСообщенияПриВыбореССервера = Ложь;
			Иначе
				АвтоматическиУдалятьСообщенияПриВыбореССервера = Истина;
			КонецЕсли;
			
			НаборПисем = Соединение.Выбрать(АвтоматическиУдалятьСообщенияПриВыбореССервера, ЗаголовкиИдентификаторы);
			
			Если НаборСообщенийДляУдаления.Количество() > 0 Тогда
				Соединение.УдалитьСообщения(НаборСообщенийДляУдаления);
			КонецЕсли;
		КонецЕсли;
	
		Соединение.Отключиться();
	Исключение
		Попытка
			Соединение.Отключиться();
		Исключение // АПК:280
			// Обработка и журналирование исключения не требуется, т.к. 
			// в вызывающий код передается исходное исключение, которое будет там обработано.
		КонецПопытки;
		ВызватьИсключение;
	КонецПопытки;
	УстановитьОтключениеБезопасногоРежима(Ложь);
	
	Если РежимТестирования Тогда
		Возврат Истина;
	КонецЕсли;
	
	Если ПараметрыЗагрузки.Свойство("ПриводитьСообщенияКТипу") Тогда
		ПриводитьСообщенияКТипу = ПараметрыЗагрузки.ПриводитьСообщенияКТипу;
	Иначе
		ПриводитьСообщенияКТипу = Истина;
	КонецЕсли;
	
	НаборСообщений = НаборПисем;
	Если ПриводитьСообщенияКТипу Тогда
		Если ПараметрыЗагрузки.Свойство("Колонки") Тогда
			НаборСообщений = АдаптированныйНаборПисем(НаборПисем, ПараметрыЗагрузки.Колонки);
		Иначе
			НаборСообщений = АдаптированныйНаборПисем(НаборПисем);
		КонецЕсли;
	КонецЕсли;
	
	Возврат НаборСообщений;
	
КонецФункции

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

Разработка и тестирование обработки осуществлялись на типовой конфигурации «1С:Бухгалтерия предприятия, редакция 3.0 (3.0.115.15)» и платформе 1С:Предприятие 8.3 (8.3.19.1229).

Примечание:
1. Решение построено на использовании расширения и его не получится применить для базовой версии «1С:Бухгалтерия».
2. Все вносимые изменения будут выполнены исключительно с помощью программного кода без внесения изменений в структуру метаданных.

Папка получение писем

См. также

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Внешняя обработка для Бухгалтерии 3.0 - позволяет автоматически формировать документы «Акт сверки расчетов» с контрагентами за выбранный период с последующей фоновой отправкой на почту контрагента.

3000 руб.

25.11.2020    25367    267    8    

230

Кассовые операции Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Программист Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Специализированные обработки для загрузки кассовых чеков в базах 1С (для локальных баз): 1С:БП 3.0, 1С:УНФ 3.0, 1С:КА. 2.5, 1С:ERP Управление предприятием, ред. 2 и 1С:УТ 11.5. Вы просто сканируете QR коды с бумажных и электронных чеков c помощью мобильного приложения ФНС и чеки автоматически (без ручного ввода) загружаются в документы 'Авансовый отчет', 'Расходы предпринимателя', 'Путевой лист', 'Приходная накладная', 'Поступление (акты, накладные, УПД)', 'Приобретение товаров и услуг', 'Отчет о розничных продажах' и 'Поступление денежных документов'.

12960 руб.

19.08.2020    70541    347    84    

229

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Создать и отправить 1000 Актов серки контрагентам за 5 мин ?! Легко! Разработано для конфигурации УНФ Массовое создание и рассылка Актов сверки в три клика.

6000 руб.

13.01.2022    11099    9    13    

14

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

Решение для массовой рассылки печатных форм (в том числе и дополнительных) любых документов, и произвольных файлов. Рассылка возможна посредством электронной почты, Telegram и файловой системы. Рассылка пакета документов. Добавление факсимильных печати и подписи. Произвольные шаблоны HTML/Simple text с автозаполнением любыми полями документа. Любые форматы файлов. Упаковка вложений в архив. Транслитерация имен файлов. Разбиение рассылки на произвольные порции. Обход спам-фильтров. Журналирование рассылок.

4920 руб.

30.06.2022    11604    76    100    

37

Email рассылки Взаиморасчеты Акт сверки Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

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

7800 руб.

12.02.2019    33560    27    24    

26

Взаиморасчеты Email рассылки Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

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

7080 руб.

11.05.2021    9949    7    2    

7

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Обработки предназначены для массового создания актов сверки и отправки их по электронной почте для конфигураций Управление торговлей 10.3. и Бухгалтерия предприятия 3.0. Для Бухгалтерии 3.0 Разработка велась на 1С:Предприятие 8.3 (8.3.15.1830). проверялась на Бухгалтерия предприятия 3.0 (3.0.71.83) и 3.0.76.77 Для Управление торговлей 10.3 Разработка велась на 1С:Предприятие 8.3 релиз конфигурации (10.3.61.2) . РАБОТАЕТ НА БАЗОВЫХ и ПРОФ. ВЕРСИЯХ.

2520 руб.

24.04.2020    32185    123    66    

102
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kennipco 19.09.23 15:34 Сейчас в теме
Привет! Не могу написать лично, поэтому буду позориться тут. Возникла необходимость получать письма в БП 3.0.131.34, учетную запись я настроил, но вот где нажать кнопку "получить/обменяться" и вообще посмотреть входящие письма - это какая-то загадка. Отчаяние заставило меня выйти в публичное пространство с этим вопросом. Может быть ты подскажешь?
3. DELOVOYDOM 25.11.23 02:09 Сейчас в теме
(1) А вам тут никто не ответит. Видите не ответили?) Потому что это "секрет специалиста 1с". Платформа 1с очень проста в конфигурировании, но надо надо просто знать бсп и прочие "куда нажать", а если вам все расскажи да покажи то как зарабатывать доработчикам и часы работы рисовать в 10 кратном размере когда там пару кликов? не становиться же настоящим программистом, где реально надо карпеть над кодом)
2. DELOVOYDOM 25.11.23 02:08 Сейчас в теме
Так никто и не ответил человеку
Оставьте свое сообщение