Внешние формы и обработки 1C 7.7 - 8.3

04.11.24

Разработка - Инструментарий разработчика

- Обработка Астрал ЭДО для отправки черновиков по API. - Внешняя печатная форма для выгрузки счета на оплату в ЭДО.Астрал (*.pdf) с факсимиле. - Внешняя обработка выгрузки черновика в Диадок для 1С 7.7

Скачать файл

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

Наименование По подписке [?] Купить один файл
Внешняя обработка выгрузки черновика в Диадок для 1С 7.7
.ert 44,00Kb
0
0 Скачать (1 SM) Купить за 1 850 руб.
Обработка для отправки черновика Астрал.ЭДО по API
.epf 8,18Kb
0
0 Скачать (1 SM) Купить за 1 850 руб.
Внешняя печатная форма счета на оплату с выгрузкой черновика в Астрал.ЭДО (*.pdf)
.epf 8,60Kb
0
0 Скачать (2 SM) Купить за 2 150 руб.

ЭДО.Астрал 

   Следующая обработка пример для отправки УПД черновика в ЭДО провайдера Астрал, необходимо получить в кабинете токен и прописать его в код. Работу с подготовкой самого xml файла можно найти в других статьях, либо использовать типовую выгрузку 1С ЭДО.

    Выгрузка черновика "Счет на оплату покупателю" через ЭДО.Астрал в формате pdf и с факсимиле, 

перед регистрацией внешней печатной формы в доп. свойства организации добавить и прописать реквизит с наименование "АстралТокен" (получить из личного кабинете).

ЭДО.Диадок

//...
Функция Base64Encoder(ИмяФайла) 	
	CDO=CreateObject("CDO.Message");
	Attachment=CDO.AddAttachment(ИмяФайла);
    Attachment.ContentTransferEncoding="base64";
    Стр=Attachment.GetEncodedContentStream(); 	
    Возврат Стр.ReadText(); 
КонецФункции 

Процедура ЭДОНаСервере()

    login             = "***";
	password          = "***";
	АдресРесурса      = "/Authenticate?login="+login+"&password="+password;	
    АдресСайта        = "https://diadoc-api.kontur.ru";    
	ddauth_api_client = "1C-edi-cc5de100-2485-4d75-8370-a2aa3ff7c3c4";  	
	
	Попытка		
		ws = СоздатьОбъект("MSXML2.XMLHTTP.4.0");     		
		ws.open("POST", СокрЛП(АдресСайта+АдресРесурса), 0);                                                      		
		ws.setRequestHeader("Authorization", "DiadocAuth ddauth_api_client_id="+ddauth_api_client);
	Исключение    
		Сообщить("Соединение не выполнено!!!");
	КонецПопытки;	                                                                   
	 	
	Попытка 
		
	    ws.send();
		Если ws.Status=200 Тогда			
			token = ws.ResponseText;        						   			                     			
		Иначе	
			Сообщить(ws.Status);   
			Сообщить(ws.responseText); 	
		КонецЕсли;                                 
		
	Исключение
		Сообщить(ОписаниеОшибки());   
	КонецПопытки;
	    	 
	сообщить(token); 
		
	ВремФайлНаДиске = "C:\Контур\ЭДО\";
			
	АдресРесурса = "/GetMyOrganizations";     
	      	     
	ws.open("GET", СокрЛП(АдресСайта+АдресРесурса), 0); 
	ws.setRequestHeader("Authorization", "DiadocAuth ddauth_api_client_id="+ddauth_api_client+",ddauth_token="+token);
	ws.setRequestHeader("Accept"       , "application/json; charset=utf-8");
	
	Попытка 
		
	    ws.send();
		Если ws.Status=200 Тогда
						 
			ResponseText = ws.ResponseText;
			Сообщить(лев(ResponseText,100)); 
			                    
			т = Создатьобъект("Текст");
			т.ДобавитьСтроку(ResponseText);              
			т.Записать(ВремФайлНаДиске+"GetMyOrganizations.txt");
			
		Иначе	
			Сообщить(ws.Status);   
			Сообщить(ws.responseText); 	
		КонецЕсли;                                 
		
	Исключение
		Сообщить(ОписаниеОшибки());   
	КонецПопытки;        
	
	Объект1с = JSON(ResponseText, 0); 	
   	
	Organizations = Объект1с.Получить("Organizations");			  
	Для Инд = 1 По Organizations.КоличествоСтрок() Цикл    			
		array = Organizations.ПолучитьЗначение(Инд,"значение"); 
		Boxes = array.Получить("Boxes");		
		Для Инд2 = 1 По Boxes.КоличествоСтрок() Цикл   			 
			array2 = Boxes.ПолучитьЗначение(Инд2,"значение");		  				      		
			BoxId = array2.Получить("BoxId");;			
			Сообщить(BoxId);			
		КонецЦикла;      					
	КонецЦикла;                                     
	
	OrgInn = "";
	OrgKpp = "";
			 
	АдресРесурса = "/GetOrganizationsByInnKpp?inn="+OrgInn+"&kpp="+OrgKpp ;   
	     	     
	ws.open("GET", СокрЛП(АдресСайта+АдресРесурса), 0); 
	ws.setRequestHeader("Authorization", "DiadocAuth ddauth_api_client_id="+ddauth_api_client+",ddauth_token="+token);
	ws.setRequestHeader("Accept"       , "application/json; charset=utf-8");
	
	Попытка 
		
	    ws.send();
		Если ws.Status=200 Тогда
						 
			ResponseText = ws.ResponseText;
			Сообщить(лев(ResponseText,100)); 
			                    
			т = Создатьобъект("Текст");
			т.ДобавитьСтроку(ResponseText);              
			т.Записать(ВремФайлНаДиске+"GetOrganizationsByInnKpp.txt");
			
		Иначе	
			Сообщить(ws.Status);   
			Сообщить(ws.responseText); 	
		КонецЕсли;                                 
		
	Исключение
		Сообщить(ОписаниеОшибки());   
	КонецПопытки;  
	
	Объект1с = JSON(ResponseText, 0); 	
   	
	Organizations = Объект1с.Получить("Organizations");			  
	Для Инд = 1 По Organizations.КоличествоСтрок() Цикл    			
		array = Organizations.ПолучитьЗначение(Инд,"значение"); 
		Boxes = array.Получить("Boxes");		
		Для Инд2 = 1 По Boxes.КоличествоСтрок() Цикл   			 
			array2 = Boxes.ПолучитьЗначение(Инд2,"значение");		  				      		
			ToBoxId = array2.Получить("BoxId");;			
			Сообщить(ToBoxId);			
		КонецЦикла;      					
	КонецЦикла;
		
	//Черновик         
	ПутьКФайлу = "C:\Контур\ЭДО\1.xml";
	СодержимоеФайла = Base64Encoder(ПутьКФайлу);
	  	
	АдресРесурса = "/V3/PostMessage"; 
	
	ws.open("POST", СокрЛП(АдресСайта+АдресРесурса), 0); 
	ws.setRequestHeader("Authorization", "DiadocAuth ddauth_api_client_id="+ddauth_api_client+",ddauth_token="+token);
	ws.setRequestHeader("Content-Type",  "application/json; charset=utf-8");
		  
	Структура1 = СоздатьОбъект("СписокЗначений");
	Структура1.ДобавитьЗначение(СодержимоеФайла, "Content");	
	                                         
	Структура2 = СоздатьОбъект("СписокЗначений");
	Структура2.ДобавитьЗначение(Структура1, "SignedContent");
	Структура2.ДобавитьЗначение("UniversalTransferDocument", "TypeNamedId");	
	                               
	DocumentAttachments = СоздатьОбъект("ТаблицаЗначений"); //массив 
	DocumentAttachments.НоваяКолонка("Значение");
	DocumentAttachments.НоваяСтрока();
	DocumentAttachments.Значение = Структура2;	
		
	Структура3 = СоздатьОбъект("СписокЗначений");
	Структура3.ДобавитьЗначение(BoxId, "FromBoxId");
	Структура3.ДобавитьЗначение(ToBoxId, "ToBoxId");
	Структура3.ДобавитьЗначение("true", "IsDraft");
	Структура3.ДобавитьЗначение(DocumentAttachments, "DocumentAttachments");  
	                      
	request = JSON(Структура3, 1);    
	
	сообщить(лев(request,100));
	
	т = Создатьобъект("Текст");                          
	т.ДобавитьСтроку(request);              
	т.Записать(ВремФайлНаДиске+"request.txt");
	                                
	Попытка 
		
	    ws.send(request);
		Если ws.Status=200 Тогда						 
			Сообщить("Документ (черновик) отправлен в Диадок!");			
		Иначе	
			Сообщить(ws.Status);   
			Сообщить(ws.responseText); 	
		КонецЕсли;                                 
		
	Исключение
		Сообщить(ОписаниеОшибки());   
	КонецПопытки;	
				
КонецПроцедуры

 

Проверено на следующих конфигурациях и релизах:

  • Управление торговлей, редакция 11, релизы 11.5.16.78
  • Бухгалтерия предприятия, редакция 3.0, релизы 3.1.22.86, 3.0.149.18
  • Управление торговлей, редакция 10.3, релизы 10.3.88.3

Внешняя печатная форма ЭДО Астрал API

См. также

Оптовая торговля Розничная торговля ККМ ЭДО и ОФД Обмен с ГосИС Системный администратор Программист Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

Подключение фискального регистратора к 1С 7.7 в режиме онлайн-кассы (в соответствии с 54-ФЗ). Поддержка крайних версий драйверов ККТ: ДТО 10 и ДТО 8 для Атол, 4.15, 5.16 для Штрих-М. Поддержка протоколов ФФД 1.0, 1.05, 1.1 и 1.2, развитые настройки для применения частичных оплат и авансов в оптовой и розничной торговле. Поддержка чеков коррекции всех версий. Поддержка розничной продажи маркированной продукции (ЕГАИС, табак, обувь, лекарства, шины, одежда, белье, парфюмерия, молочная продукция, вода и пр.). Вывод электронного чека (на е-майл, телефон) по требованию покупателя, поддерживаются комбинированные типы оплаты, режим эмуляции печати чека на ФР. Полный цикл работы из 1С 7.7 с маркировкой Честный ЗНАК (ГИСМТ, ЦРПТ) из 1С 7.7. ЭДО (табак, обувь, шины, одежда, молочная продукция, вода и прочие группы товаров) для розницы и опта (приемка и оптовая отгрузка маркированной продукции). Поддерживается как объемно-сортовой учет (ОСУ) так и поштучный (поэкземплярный) учет.

2000 руб.

28.03.2017    479700    4464    3497    

2459

Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Программист Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 1.6 1С:Упрощенное налогообложение 7.7 Россия Бухгалтерский учет Абонемент ($m)

Обмениваемся УПД (УКД) с различными контрагентами через СБИС. А чтобы загрузить УПД (УКД) из 7.7 в Сбис, используем данную обработку, которая создает файл в формате XML, который можно импортировать в систему электронного документооборота. Для конфигурации "Бухгалтерский учет" (тестировалась на релизе 7.70.663) Для конфигурации "Упрощенная система налогообложения" ( тестировалась на релизе 7.70.305) Для конфигурации "Торговля и Склад 7.7" (тестировалась на релизе 7.70.1007)

1 стартмани

31.07.2021    16832    267    AndKovalchuk    57    

18

Инструментарий разработчика Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    22334    57    Gvozdod    8    

16

Инструментарий разработчика Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

23.04.2014    168535    1885    Alexoniq    1596    

499

Инструментарий разработчика Программист Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    33431    61    O-Planet    78    

49

Инструментарий разработчика Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21854    Reptile    5    

35

Инструментарий разработчика Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

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

1 стартмани

14.07.2013    27689    56    adamx    11    

14
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. fishca 1259 18.01.16 14:06 Сейчас в теме
Публикация ниочЁм.
Светлый ум; BigB; +2 Ответить
2. JetBrain 76 18.01.16 19:05 Сейчас в теме
(1) fishca, Вам со знанием С++ зачем ее было вообще читать? Понятно было что уровень для новичка!
Оставьте свое сообщение