ЭСЧФ Беларусь

1. Slypower 2 19.04.16 12:44 Сейчас в теме
Всем привет. Не секрет, в Беларуси с 1 июля 2016 должна подаваться ЭСЧФ. Кто-нибудь уже работает с ней? Ведь там, вроде, уже 60 компаний Беларуси работает в тестовом режиме.
Сделал я по инструкциям, что на их сайте, но столько вопросов к их информации осталось.

Очень много полезного нам дали разработчики. Внимательно читайте их документацию в eInvVat, которую скачиваете, а так же примерами для 1С служат bat файлы из папки eInvVat\simpleapp\vbs\src\. Не поленитесь и посетить их сайт vat.gov.by. На основании этих знаний все пишут обработки. Если что не понятно, то можно прибегнуть к данной теме.
Важные и полезные ссылки на сайты и на сообщения темы.

Ссылки на сайт портала

Обработки с данной темы

Полезные сообщения темы

Коды процедур для 1С

Вопрос-Ответ

Дополняется со временем
KatrinNight; Pavl0; kar911; Золушка 007; iZhenius; xav; svilsa; Mustard; Gluk_1C; jeniks; 1v7; BotMan4; OSA3; MaskO_rimi; Ni4ka; Igor Igorevich; osharov_d; shiko; merlin1975; cssnavi; Krasowskiy; YegorK; KhomDV; +23 Ответить
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
174. Gladkov_Anton 06.05.16 23:08 Сейчас в теме
(157) pasha_2001, публикацию смотрели?
Там есть картинки к публикации. Посмотрите на них - должно быть понятно.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5381. Bonia 29.11.16 21:15 Сейчас в теме
(5375)сделайте вход всем кому надо доступ к порталу под одним пользователем и настройте под ним все что необходимо и весь ответ.
5382. 1v7 235 29.11.16 21:39 Сейчас в теме
(5381) как вариант. но на сколько я помню вторую учётку нельзя запилить с одного клиента на сервак. но завтра попробую. спасибо. если так не получиться - подниму еще одну ОС на виртуалке.
5383. jeniks 30.11.16 09:24 Сейчас в теме
как вариант. но на сколько я помню вторую учётку нельзя запилить с одного клиента на сервак.

Если я правильно понял то:
Конфигурация компьютера\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Подключения -> Ограничить пользователей служб удаленных рабочих столов одним сеансом служб удаленных рабочих столов
Допустим пользователь на сервере user
Для него настраиваем криптопровайдера и ключи для доступа на портал.
5384. Slypower 2 30.11.16 09:39 Сейчас в теме
(5383) это ипалово. Пользователю работать под одной учеткой, а для портала заходить под другую.
sassashok; Gluk_1C; +2 Ответить
5385. 1v7 235 30.11.16 10:59 Сейчас в теме
короче взвесив все за и против. решил ручками каждому юзеру настроить. более оптимального варианта на просторах интернета не нашёл.
Igor Igorevich; +1 Ответить
5386. keyn5565` 18 30.11.16 14:12 Сейчас в теме
(5385)
Настройка компов для автоматизированной работы с порталом vat.gov.by в случае, когда выход в 1с осуществляется через удаленный рабочий стол (rdp), а ключ вставлен в локальный компьютер.
Это для того случая если у каждого буха свой личный ключ.
Прикрепленные файлы:
Настройка компов для автоматизированной работы с порталом vat.docx
5387. Slypower 2 30.11.16 14:35 Сейчас в теме
(5386) отличается чем от (5208)? Вынесено в шапке, но может добавить нужно
5388. keyn5565` 18 30.11.16 15:00 Сейчас в теме
(5387)
Эта она и есть добавлять не нужно
5389. Xershi 1483 30.11.16 15:10 Сейчас в теме
Решил все таки дописать правила проверки. Кроме 55 шт.
Буду делать проверку на УНП, чтобы контрагент не был ликвидирован у нас как оказалось таких целая куча.
Кто какие алгоритмы разработал?
5390. Gluk_1C 30.11.16 15:43 Сейчас в теме
5391. Xershi 1483 30.11.16 15:51 Сейчас в теме
(5390) переделывать надо под 1с8. Да и мало ли может еще какие варианты появились.
5392. Slypower 2 30.11.16 16:05 Сейчас в теме
(5391) под 8ку переделать - минутное дело. Я так свою обработку под входящие запилил за пол дня, хотя 8ку первый раз открывал в режиме конфигуратора
5393. Xershi 1483 30.11.16 17:14 Сейчас в теме
(5392) я пока подготовил 5 из 59 правил. Смотрю по списку это следующий этап.

Кстати у вас там были проблемы когда 2 записи было, обошли этот вопрос?
5394. Slypower 2 30.11.16 17:19 Сейчас в теме
(5393) правила можно скачать из 1С мисофта. Можно скинуть сюда, там программеры сделали. Только я переделывал некоторые под себя.
Я не внедрял это, я хотел просто сделать обработку для проверки всех УНП из 1с, т.е. пробежать и вывести список аннулированных. Но забил) А так в шапке обработки, которые выдают задвоенные записи с сайта
5395. Xershi 1483 30.11.16 17:28 Сейчас в теме
(5394) у меня своя подсистема, хотя гляну может какие части кода будет быстрее скопировать.
5396. Slypower 2 30.11.16 17:57 Сейчас в теме
1С 7.7 Мисофт Бухгалтерия. Но, наверное, самому проще написать, чем разбираться с этими реквизитами
Функция Правило1()  
	Если (ТипЭСЧФ = Перечисление.ТипЭСЧФ.ADDITIONAL) или (ТипЭСЧФ = Перечисление.ТипЭСЧФ.FIXED) Тогда
		Если ПустоеЗначение(КЭСЧФ) = 1 Тогда   
			Сообщить("Правило 1. Поле <К ЭСЧФ> должно быть заполнено."); 
			Возврат 0;
		КонецЕсли;   
		Если КЭСЧФ.ДатаДок > ДатаДок Тогда
			Сообщить("Правило 1.1. Дата документа."); 
			Возврат 0;
		КонецЕсли;   
	КонецЕсли;
	Возврат 1;
КонецФункции    

Функция Правило2()   
	Если ПустоеЗначение(КЭСЧФ) = 0 Тогда
		Если (КЭСЧФ.ТипЭСЧФ <> Перечисление.ТипЭСЧФ.ORIGINAL) и (КЭСЧФ.ТипЭСЧФ <> Перечисление.ТипЭСЧФ.FIXED) Тогда
	        Сообщить("Правило 2. Тип К ЭСЧФ."); 
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции 

Функция Правило3()  
	Возврат 1;
КонецФункции     

Функция Правило4()  
	Возврат 1;
КонецФункции   

Функция Правило5()  
	//Если (ТипЭСЧФ = Перечисление.ТипЭСЧФ.FIXED) Тогда
	//	Если ПустоеЗначение(КЭСЧФ) = 0 Тогда  
	//		Если КЭСЧФ.ДатаДок <= ДатаДок Тогда         
	//			Возврат 1;
	//		КонецЕсли;
	//	КонецЕсли; 
	//	Сообщить("Правило 5. Дата документа!");
	//	Возврат 0;
	//КонецЕсли;
	Возврат 1;
КонецФункции   

Функция Правило6()  
	Возврат 1;
КонецФункции     

Функция Правило7()   
	Если СтатусПоставщика = Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION Тогда        
		Если (Поставщик_ВзаимозависимоеЛицо = 1) или (Получатель_СделакаСРезидентомОффшорнойЗоны = 1) или
		(Получатель_ОрганизацияВключенаВПереченьКрупныхПлательщиков = 1) или (Получатель_СделкаСТоварамиПоПеречню = 1) Тогда
			Сообщить("Правило 7. Поля 6.1 , 6.2, 6.3, 6.4!");	
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции   

Функция Правило8()  
	Если (Получатель_ВзаимозависимоеЛицо = 1) или (Поставщик_ВзаимозависимоеЛицо = 1) Тогда   
		фл8=0;
		ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл  
			Если ПустоеЗначение(Товар) = 0 Тогда    
				Если (ПустоеЗначение(Товар.ТНВЭД) = 1) и (ПустоеЗначение(Товар.ОКЭД) = 1) Тогда
					фл8=1;
					Прервать;
				КонецЕсли;
			КонецЕсли;
		КонецЦикла;
		Если фл8 = 1 Тогда
			Сообщить("Правило 8. Взаимозависимое лицо. Поля ТН ВЭД ЕАЭС, ОКЭД!");  
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции    

Функция Правило9()  
	Если СтатусПоставщика = Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION Тогда  
		Если ПустоеЗначение(Контрагент) = 0 Тогда
			Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 0 Тогда   
				СтранаРегистрацииПоставщик = СокрЛП(Контрагент.СтранаРегистрации.Код);
				Если СтранаРегистрацииПоставщик = "112" Тогда
					Сообщить("Правило 9. Код страны поставщика!"); 
					Возврат 0;         
				КонецЕсли;
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции   

Функция Правило10()  
	Возврат 1;
КонецФункции  

Функция Правило11()  
	Возврат 1;
КонецФункции  

Функция Правило12()  
	Если ПустоеЗначение(Контрагент) = 0 Тогда        
		Если СокрЛП(Контрагент.ИНН) = СокрЛП(Константа.ИННОрганизации) Тогда     
			Сообщить("Правило 12. Номер УНП!"); 
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции    

Функция Правило13()  
	Возврат 1;
КонецФункции   

Функция Правило14()  
	фл14 = ПустоеЗначение(Поставщик_НомерЗаявления) + ПустоеЗначение(Поставщик_ДатаЗаявления);
	Если фл14 = 1 Тогда
		Сообщить("Правило 14. Поля 14 должны быть заполнены.");   
		Возврат 0;
	КонецЕсли;
	фл14 = ПустоеЗначение(Получатель_НомерЗаявления) + ПустоеЗначение(Получатель_ДатаЗаявления);
	Если фл14 = 1 Тогда
		Сообщить("Правило 14. Поля 21 должны быть заполнены.");   
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции    

Функция Правило15()     
	Возврат 1;
КонецФункции

Функция Правило16()           
	стрКомитент_НомерЭСЧФ = СокрЛП(СтрЗаменить(Комитент_НомерЭСЧФ, "-", ""));
	Если ПустоеЗначение(стрКомитент_НомерЭСЧФ) = 0 Тогда
		Если (СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда     
			Возврат 1;
		КонецЕсли;    
		Сообщить("Правило 16. Поле 11 недоступно для заполнения"); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции
                  
Функция Правило17()       
	Если (СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда   
		стрКомитент_НомерЭСЧФ = СокрЛП(СтрЗаменить(Комитент_НомерЭСЧФ, "-", ""));
		Если ПустоеЗначение(стрКомитент_НомерЭСЧФ) = 0 Тогда
			Возврат 1;
		КонецЕсли;    
		Сообщить("Правило 17. Поле 11 обязательно для заполнения"); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило18()  
	Возврат 1;
КонецФункции

Функция Правило19()       
	Если ((СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSIGNOR)) или
	((СтатусПоставщика = Перечисление.СтатусПоставщика.AGENT) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) Тогда   
		стрПродавец_НомерЭСЧФ = СокрЛП(СтрЗаменить(Продавец_НомерЭСЧФ, "-", ""));
		Если ПустоеЗначение(стрПродавец_НомерЭСЧФ) = 0 Тогда // 12
			Возврат 1;
		КонецЕсли;
		Если ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 0 Тогда // 13
			Возврат 1;
		КонецЕсли;
		Если ПустоеЗначение(Поставщик_НомерЗаявления) = 0 Тогда // 14
			Возврат 1;
		КонецЕсли;
		Сообщить("Правило 19. Поле 12, 13 или 14 обязательно для заполнения"); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило20()  
	стрПродавец_НомерЭСЧФ = СокрЛП(СтрЗаменить(Продавец_НомерЭСЧФ, "-", ""));
	Если ПустоеЗначение(стрПродавец_НомерЭСЧФ) = 0 Тогда // 12       
		Если ((СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSIGNOR)) или
		((СтатусПоставщика = Перечисление.СтатусПоставщика.AGENT) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) или     
		((СтатусПоставщика = Перечисление.СтатусПоставщика.DEVELOPER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) Тогда  
			Возврат 1;
		КонецЕсли;	
		Сообщить("Правило 20. Поле 12 недоступно для заполнения."); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции

Функция Правило22()
	Если ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 0 Тогда // 13  
		Если ((СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSIGNOR)) или
		((СтатусПоставщика = Перечисление.СтатусПоставщика.AGENT) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) или     
		((СтатусПоставщика = Перечисление.СтатусПоставщика.DEVELOPER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) Тогда  
			Возврат 1;
		КонецЕсли;	    
		Если ((СтатусПоставщика = Перечисление.СтатусПоставщика.SELLER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER)) Тогда  
			Если ПустоеЗначение(Контрагент) = 0 Тогда
				Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 0 Тогда
					КодСтраныПолучателя = СокрЛП(Контрагент.СтранаРегистрации.Код); 
					Если (СпКодыЕАЭС.Принадлежит(КодСтраныПолучателя) = 0) и (КодСтраныПолучателя <> "112") Тогда  
						Возврат 1;  
					ИначеЕсли СпКодыЕАЭС.Принадлежит(КодСтраныПолучателя) = 1 Тогда
						Если ПустоеЗначение(Реквизиты_Грузополучатель) = 0 Тогда    
							Если ПустоеЗначение(Реквизиты_Грузополучатель.СтранаРегистрации) = 0 Тогда
								КодСтраныГрузополучатель = СокрЛП(Реквизиты_Грузополучатель.СтранаРегистрации.Код); 
								Если СпКодыЕАЭС.Принадлежит(КодСтраныГрузополучатель) = 0 Тогда  
									Возврат 1;  
								КонецЕсли;
							КонецЕсли;   
						КонецЕсли;
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;  
		КонецЕсли;  
		Сообщить("Правило 22. Поле 13 недоступно для заполнения."); 
		Возврат 0;
	КонецЕсли; 
	Возврат 1;
КонецФункции                       
               
Функция Правило22_1()
	фл22 = 0;
	Если (СтатусПоставщика = Перечисление.СтатусПоставщика.SELLER) и 
	(СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда  
		фл22 = 1;
	КонецЕсли;
	Если ПустоеЗначение(Контрагент) = 0 Тогда
		Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 0 Тогда
			КодСтраныПолучателя = СокрЛП(Контрагент.СтранаРегистрации.Код); 
			Если КодСтраныПолучателя <> "112" Тогда
				фл22 = фл22 + 1;
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;  
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл
		Если (ПустоеЗначение(Товар) = 0) и (ПустоеЗначение(СтавкаНДС) = 0) Тогда    
			Если Метаданные.Справочник(Товар.Вид()).Реквизит("ТНВЭД").Выбран() = 1 Тогда
				Если (ПустоеЗначение(Товар.ТНВЭД) = 0) и (Найти(СтавкаНДС.Ставка, "%") > 0) Тогда  
					фл22 = фл22 + 1;
					Прервать;
				КонецЕсли; 
			КонецЕсли;
		КонецЕсли;
	КонецЦикла;
	Если фл22 = 3 Тогда 
		Если (ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 1) и 
		((ПустоеЗначение(Поставщик_НомерЗаявления) = 1) или (ПустоеЗначение(Поставщик_НомерЗаявления) = 1)) Тогда      
			Сообщить("Правило 22.1. Поля 13 или 14.");  
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции  

Функция Правило23()  
	Если (ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 0) и
	(СтатусПоставщика = Перечисление.СтатусПоставщика.SELLER) и 
	(СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда 
		Если (ПустоеЗначение(Поставщик_ДатаВыпускаТоваров) = 1) или (ПустоеЗначение(ДатаРазрешенияНаУбытиеТоваров) = 1) Тогда 
			Сообщить("Правило 23. Поля <13.1. Дата выпуска товаров> и <13.2. Дата разрешения на убытие товаров> должны быть заполнены.");
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции  
  
Функция Правило23_1()  
	Если (ПустоеЗначение(Поставщик_ДатаВыпускаТоваров) = 0) и (ПустоеЗначение(ДатаРазрешенияНаУбытиеТоваров) = 0) Тогда
		Если (ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 1) Тогда 
			Сообщить("Правило 23.1. Поле 13");
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции  

Функция Правило25()  
	Если (ПустоеЗначение(Поставщик_НомерЗаявления) = 0) или                        //14
	(ПустоеЗначение(Поставщик_ДатаЗаявления) = 0) Тогда 
		Если ((СтатусПоставщика = Перечисление.СтатусПоставщика.COMMISSIONAIRE) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSIGNOR)) или 
		((СтатусПоставщика = Перечисление.СтатусПоставщика.AGENT) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) или 
		((СтатусПоставщика = Перечисление.СтатусПоставщика.DEVELOPER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) Тогда   
			Возврат 1;
		КонецЕсли;              
		Если (СтатусПоставщика = Перечисление.СтатусПоставщика.SELLER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда 
			Если ПустоеЗначение(Контрагент) = 0 Тогда           
				Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 0 Тогда 
					КодСтраныПолучателя = СокрЛП(Контрагент.СтранаРегистрации.Код); 
					Если СпКодыЕАЭС.Принадлежит(КодСтраныПолучателя) = 1 Тогда  
						Возврат 1; 
					ИначеЕсли КодСтраныПолучателя <> "112" Тогда
						Если ПустоеЗначение(Реквизиты_Грузополучатель) = 0 Тогда   
							Если ПустоеЗначение(Реквизиты_Грузополучатель.СтранаРегистрации) = 0 Тогда 
								КодСтраныПолучателя = СокрЛП(Реквизиты_Грузополучатель.СтранаРегистрации.Код); 
								Если СпКодыЕАЭС.Принадлежит(КодСтраныПолучателя) = 1 Тогда  
									Возврат 1;
								КонецЕсли;
							КонецЕсли;
						КонецЕсли;  
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;  
			Сообщить("Правило 25. Код страны получателя");
		КонецЕсли;    
		Сообщить("Правило 25. Поле 14 недоступно для заполнения");
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     
           
Функция Правило26()    
	Если СтатусПоставщика <> Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION Тогда        
		Если (Получатель_ВзаимозависимоеЛицо = 1) или (Получатель_ОрганизацияВключенаВПереченьКрупныхПлательщиков = 1) или
		(Получатель_СделакаСРезидентомОффшорнойЗоны = 1) или (Получатель_СделкаСТоварамиПоПеречню = 1) Тогда
			Сообщить("Правило 26. Поля 15.1 , 15.2, 15.3, 15.4!");	
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции     
              
Функция Правило27()  
	Возврат 1;
КонецФункции  

Функция Правило29()  
	Если (СтатусПоставщика = Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда     
		Если ПустоеЗначение(Получатель_РегистрационныйНомерВыпускаТоваров) = 0 Тогда     // 20  
			Возврат 1;
		КонецЕсли;
		Если (ПустоеЗначение(Получатель_НомерЗаявления) = 0) и                    //21
			(ПустоеЗначение(Получатель_ДатаЗаявления) = 0) и
			(ПустоеЗначение(Получатель_ДатаВвозаТоваров) = 0) Тогда
		    Возврат 1;
		КонецЕсли;
		Сообщить("Правило 29. Поле 20 или 21 обязательно для заполнения.");
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило30()  
	Если ПустоеЗначение(Получатель_РегистрационныйНомерВыпускаТоваров) = 0 Тогда // 20   
		Если ПустоеЗначение(Контрагент) = 0 Тогда   
			Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 1 Тогда
				Возврат 1;
			Иначе
				КодСтраныПоставщика = СокрЛП(Контрагент.СтранаРегистрации.Код); 
				Если (СпКодыЕАЭС.Принадлежит(КодСтраныПоставщика) = 0) и (КодСтраныПоставщика <> "112") Тогда  
					Возврат 1;
				ИначеЕсли (СпКодыЕАЭС.Принадлежит(КодСтраныПоставщика) = 1) и (КодСтраныПоставщика <> "112") Тогда  
					Если ПустоеЗначение(Реквизиты_Грузоотправитель) = 0 Тогда     
						Если ПустоеЗначение(Реквизиты_Грузоотправитель.СтранаРегистрации) = 0 Тогда    
							КодСтраныГрузоотправитель = СокрЛП(Реквизиты_Грузоотправитель.СтранаРегистрации.Код); 
							Если (СпКодыЕАЭС.Принадлежит(КодСтраныГрузоотправитель) = 0) и (КодСтраныГрузоотправитель <> "112") Тогда  
								Возврат 1;
							КонецЕсли;
						КонецЕсли;
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;
		КонецЕсли;       
		Сообщить("Правило 30. Поле 20 недоступно для заполнения.");
		Возврат 0;
	КонецЕсли;  
	Возврат 1;
КонецФункции     

Функция Правило31() 
	Если (ПустоеЗначение(Получатель_НомерЗаявления) = 0) или (ПустоеЗначение(Получатель_ДатаЗаявления) = 0) или
	(ПустоеЗначение(Получатель_ДатаВвозаТоваров) = 0) Тогда                // 21, 21.1
		Если ПустоеЗначение(Контрагент) = 0 Тогда   
			Если ПустоеЗначение(Контрагент.СтранаРегистрации) = 1 Тогда     
				Возврат 1;
			Иначе    
				КодСтраныПоставщик = СокрЛП(Контрагент.СтранаРегистрации.Код); 
				Если СпКодыЕАЭС.Принадлежит(КодСтраныПоставщик) = 1 Тогда  
					Возврат 1;   
				ИначеЕсли (СпКодыЕАЭС.Принадлежит(КодСтраныПоставщик) = 0) и (КодСтраныПоставщик <> "112") Тогда
					Если ПустоеЗначение(Реквизиты_Грузоотправитель) = 0 Тогда     
						Если ПустоеЗначение(Реквизиты_Грузоотправитель.СтранаРегистрации) = 0 Тогда    
							КодСтраныГрузоотправитель = СокрЛП(Реквизиты_Грузоотправитель.СтранаРегистрации.Код); 
							Если СпКодыЕАЭС.Принадлежит(КодСтраныГрузоотправитель) = 1 Тогда  
								Возврат 1;
							КонецЕсли;
						КонецЕсли;
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;
		КонецЕсли;   
		Сообщить("Правило 31. Поля 21, 21.1 недоступны для заполнения.");
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило32() 
	Если (ПустоеЗначение(Получатель_НомерЗаявления) = 0) или (ПустоеЗначение(Получатель_ДатаЗаявления) = 0) Тогда      //21.1
		Если ПустоеЗначение(Получатель_ДатаВвозаТоваров) = 1 Тогда  
			Сообщить("Правило 32. Поле 21.1 обязательно для заполнения.");
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило33()  
	Если ПустоеЗначение(УсловияПоставки_ВидДокумента) = 0 Тогда
		Если УсловияПоставки_ВидДокумента.Код = "603" Тогда   
			Если (флПоставщикЯвляетсяГрузоотправителем = 1) и (флПолучательЯвляетсяГрузополучателем = 1) Тогда
				Возврат 1;  
			Иначе
				Если (ПустоеЗначение(Реквизиты_Грузоотправитель) = 0) и (флПоставщикЯвляетсяГрузоотправителем = 0) Тогда
					Если ПустоеЗначение(Реквизиты_Грузоотправитель.ИНН) = 1 Тогда
						Сообщить("Правило 33. УНП Грузоотправителя!");      
						Возврат 0;
					ИначеЕсли ПустоеЗначение(Реквизиты_Грузоотправитель.ЮридическийАдрес) = 1 Тогда
						Сообщить("Правило 33. Юридический адрес Грузоотправителя!");     
						Возврат 0;
					КонецЕсли;   
				КонецЕсли;
				Если (ПустоеЗначение(Реквизиты_Грузополучатель) = 0) и (флПолучательЯвляетсяГрузополучателем = 0) Тогда
					Если ПустоеЗначение(Реквизиты_Грузополучатель.ИНН) = 1 Тогда
						Сообщить("Правило 33. УНП Грузополучателя!");      
						Возврат 0;
					ИначеЕсли ПустоеЗначение(Реквизиты_Грузополучатель.ЮридическийАдрес) = 1 Тогда
						Сообщить("Правило 33. Юридический адрес Грузополучателя!");     
						Возврат 0;
					КонецЕсли;  
				КонецЕсли;
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции     

Функция Правило35()  
	Если (флПоставщикЯвляетсяГрузоотправителем = 1) или (флПолучательЯвляетсяГрузополучателем = 1) или
	(ПустоеЗначение(Реквизиты_Грузоотправитель) = 0) или (ПустоеЗначение(Реквизиты_Грузополучатель) = 0) Тогда 
		Если ((ПустоеЗначение(УсловияПоставки_НомерДоговора) = 0) и (ПустоеЗначение(УсловияПоставки_ДатаДоговора) = 1)) или
		((ПустоеЗначение(УсловияПоставки_НомерДоговора) = 1) и (ПустоеЗначение(УсловияПоставки_ДатаДоговора) = 0)) Тогда
			Сообщить("Правило 35. Поле 30. № и дата договора.");         
			Возврат 0;
		КонецЕсли;
		Если (ПустоеЗначение(УсловияПоставки_ВидДокумента) = 1) или (ПустоеЗначение(УсловияПоставки_ДатаДокумента) = 1) или 
		(ПустоеЗначение(УсловияПоставки_Номер) = 1) Тогда
			Сообщить("Правило 35. Поле 30. условия поставки.");         
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции    

Функция Правило37()  
	фл37=  ПустоеЗначение(УсловияПоставки_Номер) + ПустоеЗначение(УсловияПоставки_ДатаДокумента);  // ПустоеЗначение(УсловияПоставки_КодТипаБланка)      ?
	Если (фл37 <> 0) и (фл37 <> 2) Тогда    
		Сообщить("Правило 37. Поле 30 док-ты подтв.-ие поставку");  
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции      

Функция Правило38()  
	Если ПустоеЗначение(УсловияПоставки_ВидДокумента) = 0 Тогда
		Если (УсловияПоставки_ВидДокумента.Код = "602") или (УсловияПоставки_ВидДокумента.Код = "603") Тогда    
			Если (ПустоеЗначение(УсловияПоставки_КодТипаБланка) = 1) или 
			(ПустоеЗначение(УсловияПоставки_ДатаДокумента) = 1) или 
			(ПустоеЗначение(УсловияПоставки_Серия) = 1) или 
			(ПустоеЗначение(УсловияПоставки_Номер) = 1) Тогда
				Сообщить("Правило 38. Поле 30 док-ты подтверждающие поставку обязательны для заполнения");
				Возврат 0;
			КонецЕсли;
		КонецЕсли;  
	КонецЕсли;  
	Возврат 1;
КонецФункции    

Функция Правило41() 
	Если (СтатусПоставщика = Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда     
		ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл
			Если (ПустоеЗначение(Товар) = 0) и (ПустоеЗначение(СтавкаНДС) = 0) Тогда
				Если СтавкаНДС.Ставка = 10 Тогда
					Если ПустоеЗначение(Товар.ТНВЭД) = 1 Тогда
						Сообщить("Правило 41. Код ТН ВЭД ЕАЭС обязателен для заполнения."); 
						Возврат 0;
						Прервать;   
					//ИначеЕсли СтрДлина(СокрЛП(Товар.ТНВЭД)) < 10 Тогда
					//	Сообщить("Правило 41. Код ТН ВЭД ЕАЭС д.б. 10-значным."); 
					//	Возврат 0;
					//	Прервать;   
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;
		КонецЦикла;   
	КонецЕсли;
	Возврат 1;
КонецФункции      

Функция Правило44() 
	фл44=0;
	Если ((ПустоеЗначение(Поставщик_РегистрационныйНомерВыпускаТоваров) = 0) или // 13
	(ПустоеЗначение(Поставщик_НомерЗаявления) = 0)) и //14 
	 (((СтатусПоставщика = Перечисление.СтатусПоставщика.SELLER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER)) или
	  ((СтатусПоставщика = Перечисление.СтатусПоставщика.AGENT) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER)) или
	  ((СтатусПоставщика = Перечисление.СтатусПоставщика.DEVELOPER) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CONSUMER))) Тогда        
	    ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл
	    	Если ПустоеЗначение(Товар) = 0 Тогда   
				Если ПустоеЗначение(Товар.ТНВЭД) = 1 Тогда
					Сообщить("Правило 44. Код ТН ВЭД ЕАЭС обязателен для заполнения. Номенклатура - "+Товар); 
					фл44=1;
					Прервать; 
				ИначеЕсли СтрДлина(СокрЛП(Товар.ТНВЭД)) < 4 Тогда
					Сообщить("Правило 44. Код ТН ВЭД ЕАЭС должен быть от 4 до 10. Номенклатура - "+Товар); 
					фл44=1;
					Прервать; 
				КонецЕсли;
			КонецЕсли;
		КонецЦикла;
	КонецЕсли; 
	Если фл44=1 Тогда
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции     
               
Функция Правило46() 
	фл46=0;
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл  
		Если Цена < 0 Тогда
			фл46 = 1;
			Прервать;
		КонецЕсли;
	КонецЦикла;  
	Если фл46 = 1 Тогда
		Сообщить("Правило 46. Цена не может быть отрицательной!"); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции   

Функция Правило48()     
	фл48=0;
	ВыбратьСтроки();
	Пока ПолучитьСтроку() = 1 Цикл  
		Если ПустоеЗначение(СтавкаНДС) = 0 Тогда   
			Если (СтавкаНДС.Ставка = 0) и (НДС <> 0) Тогда
				фл48=1;
				Прервать;				
			КонецЕсли;
		КонецЕсли;
	КонецЦикла;
	Если фл48=1 Тогда
		Сообщить("Правило 48. Поле НДС сумма д.б. нулевым!"); 
		Возврат 0;
	КонецЕсли;
	Возврат 1;
КонецФункции 

Функция Правило52() 
	Если (СтатусПоставщика = Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION) и (СтатусПолучателя = Перечисление.СтатусПолучателя.CUSTOMER) Тогда        
		фл52 = 0;
		ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл
	    	Если ДополнительныеДанные <> Перечисление.ТипДополнительныхДанных.IMPORT_VAT Тогда   
				фл52 = 1;
				Прервать;
			КонецЕсли;
		КонецЦикла;   
		Если фл52 = 1 Тогда
			Сообщить("Правило 52. Тип дополнительных данных д. б. ""Ввозной НДС"".");         
			Возврат 0;
		КонецЕсли;
	КонецЕсли;
	Возврат 1;
КонецФункции     
  
Функция Правило53()  
	Если (СтатусПоставщика <> Перечисление.СтатусПоставщика.FOREIGN_ORGANIZATION) Тогда
		фл53=0;
		ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл
			Если ПустоеЗначение(СтавкаНДС) = 0 Тогда 
				Если (СтавкаНДС.Ставка = 0) и (Найти(СокрЛП(СтавкаНДС.Наименование), "%") = 0) Тогда 
					Если (ПустоеЗначение(ДополнительныеДанные) = 1) Тогда     
						фл53 = 1;
						Прервать;  
					ИначеЕсли ДополнительныеДанные = Перечисление.ТипДополнительныхДанных.IMPORT_VAT Тогда
						фл53 = 1;
						Прервать;  
					КонецЕсли; 
				КонецЕсли; 
			КонецЕсли;
		КонецЦикла;
		Если фл53 = 1 Тогда
			Сообщить("Правило 53. 6 Раздел 12 Дополнительные данные.");
			Возврат 0;
		КонецЕсли;
	Иначе
		фл53=0;
		ВыбратьСтроки();
		Пока ПолучитьСтроку() = 1 Цикл
			Если ПустоеЗначение(СтавкаНДС) = 0 Тогда 
				Если (СтавкаНДС.Ставка = 0) и (Найти(СокрЛП(СтавкаНДС.Наименование), "%") = 0) Тогда 
					Если (ПустоеЗначение(ДополнительныеДанные) = 1) Тогда     
						фл53 = 1;
						Прервать;  
					ИначеЕсли ДополнительныеДанные <> Перечисление.ТипДополнительныхДанных.VAT_EXEMPTION Тогда
						фл53 = 1;
						Прервать;  
					КонецЕсли; 
				КонецЕсли; 
			КонецЕсли;
		КонецЦикла; 
		Если фл53 = 1 Тогда
			Сообщить("Правило 53.1. 6 Раздел 12 Дополнительные данные.");
			Возврат 0;
		КонецЕсли;
	КонецЕсли;  
	Возврат 1;
КонецФункции   

Функция Правило54()  
	Если (ТипЭСЧФ = Перечисление.ТипЭСЧФ.ORIGINAL) или (ТипЭСЧФ = Перечисление.ТипЭСЧФ.FIXED) Тогда    
		Если (Итог("Количество") < 0) или (Итог("Сумма") < 0) или (Итог("НДС") < 0) или (Итог("Всего") < 0) Тогда  
			Сообщить("Правило 54. Количество, стоимость, НДС, всего - не должны быть отрицательными.");
			Возврат 0;
		КонецЕсли;	
	КонецЕсли;
	Возврат 1;
КонецФункции 
Показать


Parazyte; keyn5565`; +2 Ответить
5397. Xershi 1483 30.11.16 21:53 Сейчас в теме
(5396) спасибо, но лучше я сам все это напишу))
Логика в 1с8 отличается! На днях может закончу.
5487. Xershi 1483 05.12.16 16:58 Сейчас в теме
(5396) заканчиваю писать правила.
49 нет, 56+ тоже. Что мне самому тяжело разобрать!

Получу ответы по 50, 52, 56, 57, 58.
Разберусь с 49 и все правила закончил клепать!
5488. Slypower 2 05.12.16 17:17 Сейчас в теме
(5487) это пост к следующему посту: "Выкладываю правила заполнения ЭСЧФ для 1С"?
5398. VitaliyZdanovich 01.12.16 00:50 Сейчас в теме
Коллеги, подскажите, плиз почему EVatService.Connect("https://ws.vat.gov.by:443/InvoicesWS/services/InvoicesPort") в EVatService.LastError возвращает "Ошибка подключения: Параметры функции заданы неверно.", причем ошибка локальная, так как тот же код в других местах без проблем работает. EInVat в норме, сертификаты, СОС тоже. Через портал все ОК, а так нив какую!!!
5399. VitaliyZdanovich 01.12.16 01:07 Сейчас в теме
(5398) Странно, но при обновлении EInVat до 1.2.15.48 заработало, хотя на других машинах работает и при 1.2.11.40
5402. Slypower 2 01.12.16 09:49 Сейчас в теме
Кто может развеселить с утра? Конечно же разработчики)))
Добрый день. Создал ЭСЧФ на портале руками, добавил 60 строк в табличной части. Затем удали 41 и 42 позиции. Номера теперь так: …39, 40, 43, 44… Получается некорректное отображение

Ответ:
Добрый день, уважаемый пользователь!

Система позволяет заполнять любой номер товарной позиции, кроме 0.
Т.к. в учетных системах, пользователь может ввести в товарную позицию все, что пожелает, как и в xml, так и на портале

Вот это нужное, вот это да, всегда мечтал ввести все цифры, но не 0))))
5404. Ni4ka 01.12.16 10:00 Сейчас в теме
Доброе утро всем. Было ли у кого такое, что при загрузке с портала в 1с7 Входящих ЭСЧФ происходит задвоение документов?
5407. Slypower 2 01.12.16 10:19 Сейчас в теме
(5404) Скажите, на какой стадии у вас задвоение?
5405. SlaSla 29 01.12.16 10:06 Сейчас в теме
Добрый день! Просьба освежить ссылку на ПО AvTknServer( ранее указанная на дропбокс не работает) . Спасибо.
5406. Slypower 2 01.12.16 10:18 Сейчас в теме
(5405) У кого есть данные ссылки, скиньте сюда, и мы выведем сообщение в шапку
5408. masterix 01.12.16 10:31 Сейчас в теме
5409. Ni4ka 01.12.16 11:09 Сейчас в теме
Когда принимаем с портала и записываем документы в базе. На разную дату создания документов одни и те же ЭСЧФ
5410. Slypower 2 01.12.16 11:34 Сейчас в теме
(5409) получается, у вас в 1С создаются по 2 дока? А вы таблицу выводите? Что за 1С, чья? Что за обработка? Может ошибка в коде? Я никогда не замечал задвоение, но у меня обработка выводит в таблицу входящие, затем уже я с ними работаю. Тут нужно смотреть код программы, может там недочеты.
5420. keyn5565` 18 01.12.16 14:04 Сейчас в теме
(5410)
Нужно предусмотреть что даже если случайно внесли документ дважды или разделили приход, то это отражало в ТЧ.
Наши специалисты сами для себя решили оприходовать товар несколькими накладными якобы им так легче.
К примеру накладная с количеством товара 500 позиций а они её делят на 5 документов по 100 позиций.
Из за этого пришлось весь алгоритм переделывать на поиск сопоставление подпись и анализ этих документов.
Но вроде пока что он отрабатывает неплохо но бухгалтеру необходимо эти позиции анализировать на идентичность сумм.
Прикрепленные файлы:
5411. Ni4ka 01.12.16 11:40 Сейчас в теме
Раз не замечали, значит видимо у нас идет задвоение. Тогда будем искать.
5412. Slypower 2 01.12.16 12:03 Сейчас в теме
Выкладываю 2 рабочие обработки (сам пользуюсь) по входящим ЭСЧФ. Одна для 1С7.7, вторая она же, но для 1С8. Скачивает доки xml, возможность просматривать и подписывать.
Прикрепленные файлы:
ЭСЧФ_Поступившие.ert
ЭСЧФ_Обработка.epf
Clara; user594739_a-kozenkov; BotMan4; Rick09; jeniks; cssnavi; +6 Ответить
5414. Ni4ka 01.12.16 12:12 Сейчас в теме
(5412) Спасибо большое. Посмотрю.
7206. EvgPinsk 24.08.17 17:41 Сейчас в теме
Если кому интересно, доработал обработку (5412) от slypower по входящим. Доделал:
1) Сопоставление полученных с портала ЭСЧФ с документами из 1с (анализируется номер документа)
2) Чтение реестра входящих ЭСЧФ с портала, и сопоставление их с документами из базы. Позволяет находить те документы, которых нет или на портале или в базе
3) После подписи документа, файл не удаляется, а переименовывается. Это позволять просматривать как не подписанные ЭСЧФ, так и уже подписанные ранее.
4) На основании полученного ЭСЧФ по нажатию кнопки создаётся Приходный документ в 1с (т.е. не нужно его вводить руками с бумажного документа)

Но к сожалению, для типовой конфигурации обработку нужно будет допилить в части этих новшеств, т.к. у меня самописный конфиг
Прикрепленные файлы:
ЭСЧФ_Поступившие.ert
merlin1975; +1 Ответить
7207. Slypower 2 24.08.17 18:15 Сейчас в теме
(7206) В шапке сделал ссылку на данное сообщение.
7208. merlin1975 2 25.08.17 14:36 Сейчас в теме
(7206)
Благодарю.
Интересненько. Решил попробовать на конфе (тоже нестандартная, фиг его знает кем написана) - "Ошибка авторизации: Не найден СДЦС (список доверенных центров сертификации).
Ошибка подключения: Сессия создана без авторизации пользователя." Вроде на этом компе и на портал выйти можно и все остальное работает...
7209. Slypower 2 25.08.17 15:46 Сейчас в теме
(7208) ключ прописан жестко в конфе?
7210. merlin1975 2 25.08.17 17:15 Сейчас в теме
(7209)
Вроде разобрался - заходил не под тем пользователем (по RDP), но теперь - "Ошибка авторизации Не найден СДЦС (список доверенных центров сертификации).
Ошибка при завершении авторизации" но на портал под этим пользователем (про удалёнке) в браузере захожу прекрасно. В браузере делаю обновление СОС - все зелененькое... eInvVat установлен.
7211. Slypower 2 25.08.17 17:59 Сейчас в теме
(7210) Ошибка при завершении авторизации - эту процедуру нужно совсем закоментить, она только мешает. Завершение происходит долго, до полу часа и переподключиться бывает затруднительно
7212. merlin1975 2 25.08.17 20:40 Сейчас в теме
(7211)
Благодарю.
Но не совсем понял - в данной обработке это "Процедура ПриАвторизации() Экспорт"? Или нет?
7214. merlin1975 2 25.08.17 21:25 Сейчас в теме
(7206)
Но к сожалению, для типовой конфигурации обработку нужно будет допилить в части этих новшеств, т.к. у меня самописный конфиг

А можно поподробнее про Справочник.ЭСЧФ? Его структура? И Документ.СчётФактураПриход Интересно попробовать адаптировать по ту самописку, что на работе...
Благодарю.
7217. EvgPinsk 26.08.17 23:52 Сейчас в теме
(7214)
А можно поподробнее про Справочник.ЭСЧФ? Его структура? И Документ.СчётФактураПриход

Обычный справочник, в котором 3 поля: НаименованиеЭСЧФ, ДатаСовершения ДатаВыставления
Документ.СчётФактураПриход - у меня это документ "приход услуг". Вы в своей конфигурации вместо него должны анализировать все те документы, которые могут быть основанием для приходных ЭСЧФ
7215. merlin1975 2 25.08.17 21:38 Сейчас в теме
(7206)
В макете ЭСЧФ не выдает ТДатаСовершения
в модуле:
//VerifyAllSigns(InvVatXml); ТДатаСовершения=ДатаПодп;
Так надо?
7218. EvgPinsk 26.08.17 23:56 Сейчас в теме
(7215)
В макете ЭСЧФ не выдает ТДатаСовершения
в модуле:
//VerifyAllSigns(InvVatXml); ТДатаСовершения=ДатаПодп;
Так надо?

Нет ). Но я не знаю, как получить дату совершения документа. В xml файле, загружаемом с портала, этой даты нет
7220. Slypower 2 28.08.17 09:58 Сейчас в теме
(7218) в некоторых есть dateIssuance, в некоторых нет. Нет в тех, которые выставляют из 1с, например. Если на портале делать, то есть это поле
7221. EvgPinsk 28.08.17 16:55 Сейчас в теме
(7220) Не понял что Вы имели ввиду. Но действительно, оказывается в файлах xml входящих ЭСЧФ эта дата есть.
Соответственно это работает:
dom.load(файл); //Читаем xml файл
ТДатаСовершения=ДанныеАтрибута(dom,"general/dateIssuance");
p.s. может не во всех файлах? Помню смотрел какойто эсчф и там не видел поля "Дата совершения"
7224. EvgPinsk 28.08.17 17:21 Сейчас в теме
(7220)
Нет в тех, которые выставляют из 1с, например

Т.е. если мой поставщик выставляет руками мне на портале счёт, то dateIssuance заполнено, а если через 1с, то нет?
Жаль
5413. Xershi 1483 01.12.16 12:05 Сейчас в теме
Правило-15.1 ЭСЧФ, указанный в 11. «Номер ЭСЧФ
комитента» или 12. «Номер ЭСЧФ продавца»
и ЭСЧФ, в котором указывается номер
комитента или номер продавца, должны
отправляться на Портал разными
поставщиками, т. е. УНП в таких ЭСЧФ в
полях sender должны отличаться.

Я так понял 11 и 12 пункт это входящие будут?
5421. Xershi 1483 01.12.16 14:09 Сейчас в теме
(5413) ответ ТП:
Да, входящие - подписанные, в котором управляли вычетами и есть сумма НДС,не подлежащая вычету для дальнейшего перевыставления покупателю.


В данном случае, мне достаточно, чтобы это были просто входящие. Потому что мы такую деятельность не ведем.

(5419) спасибо! как раз для пункта 13 скопирую код!

В шапку не забудьте добавить!
5422. Slypower 2 01.12.16 14:46 Сейчас в теме
(5421) в шапку мгновенно добавляется)))
5415. Xershi 1483 01.12.16 12:19 Сейчас в теме
В поле 11. «Номер ЭСЧФ комитента» должен
быть указан номер ЭСЧФ, в котором текущий
субъект хозяйствования указан как
получатель.


Я так понял 11 это входящая, где мы указаны получателем, а в исходящей мы поставщик?
5416. Xershi 1483 01.12.16 12:51 Сейчас в теме
(5415) ответ ТП:
Да, именно так. Вы указываете ЭСЧФ из которого хотите перевыставить ЭСЧФ,
5417. Dnki 4 01.12.16 13:07 Сейчас в теме
Уважаемые коллеги!
Я затеял написать статью о проекте "ЭСЧФ" для одного издания. Цели следующие:
- подчеркнуть масштаб
- осветить техническую реализацию
- наметить проблемы
- перспективы

Но столкнулся со странной ситуацией. Руководитель проекта Антон Кунцевич в разговоре любезно говорил о многом, но не смог ответить на простые вопросы, сославшись на коммерческую тайну и постоянную модернизацию:
- Каковы средства хранения данных (сервер базы данных)?
- На каком языке написано ПО Портала?
- Какие вычислительные ресурсы задействованы? Количество серверов, их мощности.

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

Дабы не засорять тему, информацию предлагаю писать в личку или на почту dnki@tut.by. Информацию необходимо максимально подтверждать фактами, проблемы сопровождать ответом поддержки.
5418. Slypower 2 01.12.16 13:16 Сейчас в теме
(5417) На каком языке написано ПО Портала?
если то, тогда ответ в (3900) и продолжение в (3908)
5419. keyn5565` 18 01.12.16 13:23 Сейчас в теме
Может кому пригодится
Сделал проверку справочника контрагентов для проверки ликвидирования контрагента:
Но опять же для 8-ки))))
Процедура ПроверкаКонтрагентаНаЛиквидацию() Экспорт
	
	Хост = "www.portal.nalog.gov.by";
	
	Запрос = Новый Запрос;
	Запрос.Текст =
	"ВЫБРАТЬ
	|	Контрагенты.ИНН КАК УНП
	|	Контрагенты.Ссылка КАК Контрагент
	|ИЗ
	|	Справочник.Контрагенты КАК Контрагенты
	|ГДЕ
	|	НЕ Контрагенты.ИНН = """"
	|	И НЕ Контрагенты.ЭтоГруппа
	|	И НЕ Контрагенты.ПометкаУдаления
	|	И Контрагенты.РезидентРБ
	|
	|УПОРЯДОЧИТЬ ПО
	|	УНП,
	|	Контрагент
	|АВТОУПОРЯДОЧИВАНИЕ";
	ВыборкаКонтрагенты = Запрос.Выполнить().Выбрать();

	Пока ВыборкаКонтрагенты.Следующий() Цикл
		УНП = ВыборкаКонтрагенты.УНП;
		Контрагент = ВыборкаКонтрагенты.Контрагент;
		Ресурс = "grp/getData?unp="+СокрЛП(УНП); 
		
		Соединение = Новый HTTPСоединение(Хост);
		Заголовки = Новый Соответствие;
		Заголовки.Вставить("host", Хост); 
		Запрос = Новый HTTPЗапрос(Ресурс, Заголовки); 
		
		Ответ = Неопределено;
		Попытка
			Ответ = Соединение.Получить(Запрос);		
		Исключение
			Продолжить;
		КонецПопытки;	
		
		СведенияXML = Неопределено;
		Попытка
			ЧтениеXML = Новый ЧтениеXML;
			ЧтениеXML.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку());
			СведенияXML = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
		Исключение
			Продолжить;
		КонецПопытки;
		Попытка
			Если ТипЗнч(СведенияXML) = Тип("ОбъектXDTO") Тогда
				Попытка
					Статус = СведенияXML.ROW.VKODS;
				Исключение
					Статус = СведенияXML.ROW[0].VKODS;
				КонецПопытки;
			Иначе
				Продолжить;
			КонецЕсли;
		Исключение
			Сообщить("Ошибка: "+Строка(Контрагент)+" "+ УНП)
		КонецПопытки;
		Если СокрЛП(Статус) = "Ликвидирован" Тогда
			Сообщить(Строка(Контрагент)+" "+Статус)	
		Иначе
			Продолжить
		КонецЕсли;
	КонецЦикла;
Конецпроцедуры
Показать
stalcker; serega_ess; Xershi; Slypower; +4 Ответить
5437. Xershi 1483 02.12.16 11:29 Сейчас в теме
(5419) переписал вашу процедуру в функцию и исправил попытку, когда там список:
Процедура ДействияФормыПроверкаНалогоплательщика(Кнопка)
	
	СтатусПроверки = Справочники.Контрагенты.ПроверкаНалогоплательщика(ЭтотОбъект.Ссылка);	
	
	Если СтатусПроверки = Неопределено Тогда
		Сообщить("Не удалось провести проверку!");	
	ИначеЕсли СтатусПроверки = Ложь Тогда
    	Сообщить("Контрагент ликвидирован!");	
	Иначе
		Сообщить("Контрагент " + СтатусПроверки);
	КонецЕсли;
	
КонецПроцедуры

Функция ПроверкаНалогоплательщика(Контрагент) Экспорт
	
	Хост = "www.portal.nalog.gov.by";
	
	УНП = СокрЛП(Контрагент.ИНН);
	Ресурс = "grp/getData?unp=" + УНП; 
	
	Соединение = Новый HTTPСоединение(Хост);
	
	Заголовки = Новый Соответствие;
	Заголовки.Вставить("host", Хост); 
	
	Запрос = Новый HTTPЗапрос(Ресурс, Заголовки); 
	
	Ответ = Неопределено;
	Попытка
		Ответ = Соединение.Получить(Запрос);        
	Исключение
		Возврат Неопределено;	
	КонецПопытки;    
	
	СведенияXML = Неопределено;
	Попытка
		ЧтениеXML = Новый ЧтениеXML;
		ЧтениеXML.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку());
		СведенияXML = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
	Исключение
		Возврат Неопределено;
	КонецПопытки;
	
	Попытка
		Если ТипЗнч(СведенияXML) = Тип("ОбъектXDTO") Тогда
			Если СведенияXML.Свойства().Получить("ROW") = Неопределено Тогда
				Возврат Неопределено;	
			Иначе
				Если ТипЗнч(СведенияXML.ROW) = Тип("ОбъектXDTO") Тогда
					Статус = СведенияXML.ROW.VKODS;
				Иначе 					
					Статус = СведенияXML.ROW[0].VKODS;
				КонецЕсли;
			КонецЕсли;
		Иначе
			Возврат Неопределено;
		КонецЕсли;
	Исключение
		Сообщить("Ошибка: " + Строка(Контрагент) + " " + УНП);
		Возврат Неопределено; 		
	КонецПопытки;
	
	Если СокрЛП(Статус) = "Ликвидирован" Тогда
		Сообщить(Строка(Контрагент) + " " + Статус);
		Возврат Ложь;
	Иначе
		Возврат Статус;
	КонецЕсли;
	
КонецФункции
Показать
keyn5565`; jeniks; Slypower; +3 Ответить
5438. keyn5565` 18 02.12.16 12:02 Сейчас в теме
(5437)
Если ТипЗнч(СведенияXML.ROW) = Тип("ОбъектXDTO") Тогда

В начале делал тоже через определение типа но после сравнения заметил что в любом случае она с типом "ОбъектXDTO" поэтому сделал через попытку.
5439. Xershi 1483 02.12.16 12:04 Сейчас в теме
5424. koiEugene 01.12.16 15:14 Сейчас в теме
Ребя, вы уже пользовались методом/свойством Since при получении статусов вх.ЭСЧФ?
я так понял что предполагалось что он возвращает дату начала действия того или иного статуса. Но при работе с ним я заметил что он возвращает дату для статуса "Выставлен" - правильно. а когда "Выставлен.Подписан" то вроде как возвращаемая дата не совпадает с тем днём когда подписали.
Я ошибаюсь в наблюдениях или у всех так?
5425. osharov_d 01.12.16 15:36 Сейчас в теме
(5424) Было в новостях на портале: возвращается дата выставления ЭСЧФ.
5426. dragonga 9 01.12.16 16:21 Сейчас в теме
(5425) А когда эта новость была или это надо в документации искать?
5427. osharov_d 01.12.16 16:27 Сейчас в теме
(5426) 13.10
Прикрепленные файлы:
dragonga; +1 Ответить
5440. AlenkaZu 02.12.16 12:21 Сейчас в теме
(5424) Мне в ТП ответили пару недель назад, что попросят Авест переписать мануал, это их ошибка, т.к. действительно в since дата выставления, а не изменения статуса.
5441. jeniks 02.12.16 12:56 Сейчас в теме
(5440)
Мне в ТП ответили пару недель назад, что попросят Авест переписать мануал, это их ошибка

Давно заметил это и писал пару раз, ответ мол "наша хата с краю".
5442. Xershi 1483 02.12.16 14:23 Сейчас в теме
(5441) от авеста? У ТП конечно с краю, не они делали, неоднократно это тут писал, потому что меня точно также футболили!
5445. AlenkaZu 02.12.16 18:08 Сейчас в теме
(5442) с моими вопросами и пожеланиями футболят в основном в МНС фразой "этого не было в ТЗ заказчика" )))
5505. Serg_1C_7_8 06.12.16 17:34 Сейчас в теме
(5440)
Мне в ТП ответили пару недель назад, что попросят Авест переписать мануал, это их ошибка, т.к. действительно в since дата выставления, а не изменения статуса.

Изначально в since и была дата изменения статуса, потом, после очередных "работ по оптимизации и расширению функций Портала" в ней стала возвращаться дата выставления. И сейчас фиг получишь дату изменения статуса, хотя в некоторых случаях она критична. К примеру дата подписания нашим покупателем ЭСЧФ на возврат товара, т.к. именно после подписания данной ЭСЧФ организация имеет право уменьшить сумму НДС в декларации на сумму НДС в возврате. У кого много возвратов, не представляю, как бухгалтера будут отслеживать эти даты на портале.
5506. AlenkaZu 06.12.16 18:15 Сейчас в теме
(5505) Так если Вы хотите пожалеть бухгалтера насчет контроля подписания возвратов - организуйте ему режим "полуавтомат": сверка данных в 1С с мониторингом сделок, оттуда легко получить эти даты, главное, чтобы бух файлик нужный сформировал на портале и его выбрал. Не "одной кнопочкой", но и не вручную..
5428. Xershi 1483 01.12.16 16:33 Сейчас в теме
Не нашел описания правила 28, что я пропустил?)
5429. osharov_d 01.12.16 17:08 Сейчас в теме
(5428) у меня в апрельской версии файла его уже нету )
Видимо еще при разработке отказались от него
5430. Xershi 1483 01.12.16 17:22 Сейчас в теме
(5429) написал запрос в ТП. Завтра наверно уже отвечать будут!
Ответ:
Данное правило удалено.
5431. Slypower 2 01.12.16 17:51 Сейчас в теме
(5430) для вас же тут все правила, а ели нет чего, то и правило удалено, как с 28
5434. Xershi 1483 02.12.16 09:21 Сейчас в теме
(5431) для других правил, там есть внизу табличка правило-№-удалено.
Для 28 такой записи не было! Мануал я уже весь импортировал в код. Осталось только описать 20 правил.
5432. Barok 01.12.16 22:41 Сейчас в теме
Подскажите, каким образом можно точно узнать дату выставления ЭСЧФ? На Портале она вроде как указана, но если загрузить XML файл, то эта дата не всегда там отображается.

Походу чуть выше и ответ на мой вопрос. При получении статуса метод since. Что-то в документации совсем не то написано...
masterix; +1 Ответить
5433. MaskO_rimi 02.12.16 08:29 Сейчас в теме
Появились свежие новости:
Уважаемые пользователи!

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

добавлены новые функции подсистем «Камерального контроля» и «Мониторинга сделок» в части просмотра списка ЭСЧФ, отобранных для расчета показателей камерального контроля с помощью инструментов «Мониторинга сделок». Подробнее о работе с этими функциями вы можете ознакомиться в «Руководстве пользователя субъекта хозяйствования, раздел 5.6 Запуск камерального контроля»;
оптимизирован функционал и увеличена производительность подсистемы «Отчеты и аналитика»;
доработана подсистема «Уведомления»
Ознакомиться с Инструкцией по заполнению электронного счета-фактуры Вы можете по ссылке.

01.12.2016
Уважаемые пользователи!

Информируем Вас о том, что обновилось "Руководство пользователя субъекта хозяйствования".
Обновленная версия доступна по ссылке.

01.12.2016
Показать
5435. Xershi 1483 02.12.16 11:07 Сейчас в теме
Подскажите контрагента у которого 2 и более записей на портале
Хост = "www.portal.nalog.gov.by";
5436. Slypower 2 02.12.16 11:11 Сейчас в теме
5443. Slypower 2 02.12.16 16:45 Сейчас в теме
Кто знает может. С нового года вводят ответственность за не выставление ЭСЧФ на портал. Декабрьские будут относиться к этой ответственности?
5444. osharov_d 02.12.16 17:13 Сейчас в теме
5446. merlin1975 2 02.12.16 18:41 Сейчас в теме
Здравия!
Сегодня позвала главбух и показала чудо - полученный ЭСЧФ в таблице контрагент один в самой ЭСЧФ другой!!!
Оказалось, что в базе были 2 контрагента с одинаковым УНП! Исправил. Данные в таблице входящих ЭСЧФ не поменялись. 1C-Минск 8.3 БП 2.1. Прикол... Что делать? Кто-нибудь с таким сталкивался?
Благодарю.
5447. AlenkaZu 02.12.16 18:46 Сейчас в теме
(5446) С чем именно сталкивался? Если в базе 2 контрагента с одинаковым УНП, то скорее всего подбирается первый найденный, ничего тут чудесного нет :)


А кто-нибудь сталкивался, что GetList возвращает номера ЭСЧФ, по которым GetEDoc пишет что это не наши эсчф? Бух дословно мне не озвучила, на портале она таких номеров не видит. Я ей посоветовала это в ТП скинуть, но любопытно...
5448. andryuhin123 03.12.16 10:50 Сейчас в теме
Коллеги, скиньте пожалуйста несколько ЭСЧФ на тестовый портал для 590684136
5449. dragonga 9 04.12.16 08:46 Сейчас в теме
Что-то отчеты на портале пустые формируются. Это только у нас?
5450. svilsa 12 05.12.16 10:24 Сейчас в теме
(5449) Они, скорее всего не пустые, а просто долго формируются, у нас иногда несколько часов формировал, тем более, что сегодня скорее, скорее всего, очень большая нагрузка на портал.
5451. jeniks 05.12.16 10:52 Сейчас в теме
Что-то отчеты на портале пустые формируются. Это только у нас?

Это норм. 5 число же. Нагрузка, что запросы не обрабатываются массивные.
5452. jeniks 05.12.16 11:10 Сейчас в теме
С нового года вводят ответственность за не выставление ЭСЧФ на портал. Декабрьские будут относиться к этой ответственности?

Мой ГБ сказал что с НГ будет жестко и ничего прощать не будут. Только если будут письма о "невозможности выставления".
5453. keyn5565` 18 05.12.16 11:31 Сейчас в теме
подскажите кто из вас реализует товар своим сотрудникам?
я знаю что ЭСЧФ на эту операцию делать можно, но зачем?
если они подписываться не будут.
5454. Xershi 1483 05.12.16 11:31 Сейчас в теме
(5453) это же реализация физ лицам?
5455. keyn5565` 18 05.12.16 11:32 Сейчас в теме
5456. Slypower 2 05.12.16 11:37 Сейчас в теме
(5453) в ТиС мы списанием его реализуем) Деньги с ЗП списываем. На такие манипуляции выставлять ЭСЧФ не нужно.
5457. Igor Igorevich 05.12.16 11:43 Сейчас в теме
(5453) Да, это реализация физ.лицам.
Суммы реализации своим сотрудникам добавляем в итоговую ЭСЧФ за квартал по физ.лицам.
5458. keyn5565` 18 05.12.16 11:53 Сейчас в теме
(5457)
Это понятно, но зачем?
Никто же не подпишет, если только для галочки выставить.

(5456)
Полностью согласен.
5461. AlenkaZu 05.12.16 12:50 Сейчас в теме
А кто-нибудь сталкивался, что GetList возвращает номера ЭСЧФ, по которым GetEDoc пишет что это не наши эсчф? Бух дословно мне не озвучила, на портале она таких номеров не видит. Я ей посоветовала это в ТП скинуть, но любопытно...

(5458) В идеале МНС мечтает, чтобы данные с портала сходились с даннми в декларации по НДС. НДС, возникающий при реализации физлицам, в декларацию по НДС вносится и в бюджет уплачивается, и выставляются такие ЭСЧФ не "для галочки", а чтобы МНС (в своем идеальном мире) видело ваш исходящий НДС, и выручку заодно.
Предприятия-экспедиторы вообще по ставке 0% работают и ЭСЧФ без указания УНП на портал зачем-то же шлют))))))
5462. millik 05.12.16 13:06 Сейчас в теме
(5461)
Шлют, потому что должны.

Вот и у меня вопрос созрел как раз про ставку БезНДС.
Мы тоже отправляем такие ЭСЧФ в никуда (без указания УНП получателя). Только эти ЭСЧФ куда-то пропадают с портала. На запрос статуса возвращается статус "ERROR". Это так и работает сейчас или я что-то делаю не так?
5463. keyn5565` 18 05.12.16 13:33 Сейчас в теме
(5462)
Если весь товар идет со ставкой Без НДС то портал его принимать не будет.
5467. AlenkaZu 05.12.16 14:29 Сейчас в теме
(5463) это не так. в налоговом кодексе перечислены виды оборотов по реализации без НДС, на которые нет необходимости выставлять ЭСЧФ, и там далеко не все виды хоз. операций, точнее, не все ссылки на разнообразные НПА, предоставляющие такие льготы. Поэтому кому-то нужно выставлять эсчф на обороты без НДС, дабы "сообщить" о них государству, опять же, т.к. этот оборот указывается в декларации по НДС и влияет на распределние входящего НДС к зачету и на затраты...
5464. AlenkaZu 05.12.16 13:40 Сейчас в теме
(5462) это Вы что-то делаете не так. У нас тысячи ЭСЧФ без НДС и УНП в месяц, никуда не пропадают. Вы сделайте, чтобы кроме статуса выводился еще и message - там по-русски будет написано что именно вы не так делаете.
5465. millik 05.12.16 14:06 Сейчас в теме
(5464)
Спасибо за подсказку, посмотрел.
ERROR
Указан вид документа ТТН-1, грузополучатель должен быть заполнен

Если удаляю данные о сопроводительном документе. То ругается "Отсутствуют данные о товаросопроводительном документе". Если документ указываю, то тогда уже ругается как выше. Замкнутый круг получается.

У меня вопрос, что Вы указываете в сопроводительных документах?
5466. AlenkaZu 05.12.16 14:25 Сейчас в теме
(5465) Вас портал просит заполнить 4 раздел - указать грузополучателя. Товаросопроводительный документ и есть ТТН.
5468. millik 05.12.16 14:42 Сейчас в теме
(5466)
Ну так получается замкнутый круг.
Чтобы в принципе отправить ЭСЧФ я должен заполнить товаросопроводительный документ, коим является ТТН. Но я хочу отправить без указания получателя, а сделать это не могу, т.к. срабатывает проверка "Указан вид документа ТТН-1, грузополучатель должен быть заполнен".
Вот и получается круг если я хочу выставить не адресно. Нет документа-не пропускает, есть документ - требует получателя.

Можно конечно там что-нить левое указывать, но что-то пока не хочется заглушки писать.
Оставьте свое сообщение

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