БП 3.0.143.42 "Код страны грузополучателя: значение не заполнено"

1. pentanom 25 15.11.23 17:12 Сейчас в теме
Погуглил проблему. Везде пишут, что нужно заполнить юридический адрес из классификатора адресов. Скачал сегодняшний, обновил классификатор в БП, исправил адреса организации и контрагента (проверка адреса говорит, что все нормально). Пытаюсь выгрузить документ в файл (ЭДО), но получаю "Код страны грузополучателя: значение не заполнено". Что еще сделать? Где этот код заполняется?
kabantus; EvgeniyOlxovskiy; +2 Ответить
Найденные решения
15. pentanom 25 17.11.23 12:30 Сейчас в теме
В процедуру "ПроверитьЗаполнениеРеквизитовДереваДанных" вставил кусочек
#Вставка
//определение параметров поиска
ПараметрыПоиска = Новый Структура;
ПараметрыПоиска.Вставить("ПолныйПуть", "СведенияОГрузополучателе.НомерСтроки.Адрес.АдресИнформация.КодСтраны");
//поиск строк
мНайдСтроки = ДеревоДанных.Строки.НайтиСтроки(ПараметрыПоиска);
Если мНайдСтроки.Количество() > 0 Тогда
	Если НЕ ЗначениеЗаполнено(ДеревоДанных.Строки[0].Значение) Тогда
		// Если не заполнено, то вставляем код России
		ДеревоДанных.Строки[0].Значение = "643";
	КонецЕсли;
КонецЕсли;
#КонецВставки
Показать
и кажется получилось.
DmitryKSL; kabantus; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Alex_E 2369 15.11.23 17:23 Сейчас в теме
(1) переформировать документ в ЭДО не пробовали?
3. pentanom 25 15.11.23 17:37 Сейчас в теме
(2)
(1) переформировать документ в ЭДО не пробовали?
А это как? Нужно просто сформировать XML-файл. Раньше с просто по кнопке "Еще..." из раздела "ЭДО" запускал "Выгрузить документ в файл". И такое и сейчас работает в другой базе.
4. Alex_E 2369 16.11.23 07:16 Сейчас в теме
(3) Упс, переформировать - это про ЭДО, а у Вас просто выгрузка в xml - если в файле не те данные, значит не те данные записаны в документе - попробуйте перевыбрать контрагента и организацию (не факт, что поможет), если не измениться, то запросом или редактором реквизитов каким-нибудь (например https://infostart.ru/1c/tools/100967/) посмотрите (исправьте), что записано в документе...Ну или убить документ совсем и сформировать новый, если по другому никак...
5. pentanom 25 16.11.23 10:50 Сейчас в теме
(4)
попробуйте перевыбрать контрагента и организацию (не факт, что поможет)
Перевыбор не помог:(
(4)
посмотрите (исправьте), что записано в документе...
В документе вроде бы все записано. Вероятно, просто где-то этот код не подтягивается, а где - найти не получается.
(4)
Ну или убить документ совсем и сформировать новый, если по другому никак...
Сделал новый документ, не проводил. Если переключатель "УПД" в состоянии "Выкл", то файл формируется. Если ставлю в положение "Вкл", получаю новое сообщение "Адрес грузополучателя: значение указано не верно". И где этот адрес? И что в нем не верно? Может в где-то в настройках нужно что-то указать? Совсем зае....!
6. Alex_E 2369 16.11.23 13:03 Сейчас в теме
(5)
В документе вроде бы все записано.
- это как Расшифровать вроде - типа може записано може не?
Тут только отладчик в помощь...
7. pentanom 25 16.11.23 14:47 Сейчас в теме
(6)
- это как Расшифровать вроде - типа може записано може не?
Тут только отладчик в помощь...
Сложность в том, что я не могу найти те места, в которые эти значения должны быть записаны. Среди реквизитов документа РТиУ таких нет, а где они еще могут быть просто ума не приложу. Как при этом может помочь отладчик?
8. Alex_E 2369 16.11.23 15:35 Сейчас в теме
(7)
Как при этом может помочь отладчик?
- просто - в отладчике смотрите откудав берутся данные при записи в файл и, исходя из этой информации, поймёте, где косяк...
9. pentanom 25 16.11.23 17:11 Сейчас в теме
(8)
в отладчике смотрите откуда берутся данные при записи в файл
Где кода страны нет вроде бы нашел (картинка). Теперь нужно понять как его заполнить.
Прикрепленные файлы:
10. pentanom 25 16.11.23 17:11 Сейчас в теме
(8)
в отладчике смотрите откуда берутся данные при записи в файл
Где кода страны нет вроде бы нашел (картинка). Теперь нужно понять как его заполнить.
Прикрепленные файлы:
11. Alex_E 2369 16.11.23 18:30 Сейчас в теме
(10) я отладчик как то по другому вижу...
Прикрепленные файлы:
12. pentanom 25 16.11.23 19:22 Сейчас в теме
(11)
(10) я отладчик как то по другому вижу...
Я так же. Просто я привел кусок табло.
13. Alex_E 2369 16.11.23 19:25 Сейчас в теме
(12) Табло - это здорово, но таки написано откуда ноги растут в коде...
14. pentanom 25 16.11.23 19:30 Сейчас в теме
(13)
но таки написано откуда ноги растут в коде...
А вот откуда растут еще не нашел:(
15. pentanom 25 17.11.23 12:30 Сейчас в теме
В процедуру "ПроверитьЗаполнениеРеквизитовДереваДанных" вставил кусочек
#Вставка
//определение параметров поиска
ПараметрыПоиска = Новый Структура;
ПараметрыПоиска.Вставить("ПолныйПуть", "СведенияОГрузополучателе.НомерСтроки.Адрес.АдресИнформация.КодСтраны");
//поиск строк
мНайдСтроки = ДеревоДанных.Строки.НайтиСтроки(ПараметрыПоиска);
Если мНайдСтроки.Количество() > 0 Тогда
	Если НЕ ЗначениеЗаполнено(ДеревоДанных.Строки[0].Значение) Тогда
		// Если не заполнено, то вставляем код России
		ДеревоДанных.Строки[0].Значение = "643";
	КонецЕсли;
КонецЕсли;
#КонецВставки
Показать
и кажется получилось.
DmitryKSL; kabantus; +2 Ответить
16. user856012 14 17.11.23 13:25 Сейчас в теме
(15)
кажется получилось
Ну, уже прогресс по сравнению с предыдущей веткой. ;-P
17. pentanom 25 17.11.23 13:32 Сейчас в теме
(16)
Ну, уже прогресс по сравнению с предыдущей веткой. ;-P
ШБТЛ
18. user856012 14 17.11.23 13:39 Сейчас в теме
(17)
ШБТЛ
Ну, если вы сегодня так перевели "RTFM" - я не против. ;-)
23. Rollam 13.03.24 17:54 Сейчас в теме
(15) А в какую строку процедуры нужно прописать?
24. pentanom 25 13.03.24 21:22 Сейчас в теме
(23)
(15) А в какую строку процедуры нужно прописать?
&ИзменениеИКонтроль("ПроверитьЗаполнениеРеквизитовДереваДанных")
Процедура БЭДО_ПроверитьЗаполнениеРеквизитовДереваДанных(ДеревоДанных, Ошибки, ЭтоТаблица,
	НомерСтроки = Неопределено, ПроверятьОбязательностьПараметровОшибки = Истина, ДатаПоФорматуФНС = Ложь) Экспорт
	
	НомерСтрокиДляПодстановки = ?(ЭтоТаблица, НомерСтроки, Неопределено);
	СтрокаДерева = Неопределено; // в этой переменной будем хранить последнюю считанную строку дерева данных

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

	Для Каждого СтрокаДерева Из ДеревоДанных.Строки Цикл
		ТекстОшибки = "";
		
		РеквизитЗаполненИлиОбязателен = ЗначениеЗаполнено(СтрокаДерева.Значение) ИЛИ НРег(СтрокаДерева.Обязательное) = "да";
		
		// Проверяем заполнение самого реквизита.
		ПроверитьЗаполнениеРеквизитаДереваДанных(СтрокаДерева, ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС, ТекстОшибки);
	
		Если ЗначениеЗаполнено(ТекстОшибки) Тогда
			ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки,, НомерСтрокиДляПодстановки);
			
			Продолжить;
		КонецЕсли;
		
		// Запускаем проверки подчиненных реквизитов, если это структурированное значение.
		Если СтрокаДерева.Признак = "Таблица" И (ТипЗнч(СтрокаДерева.Значение) = Тип("Число") И СтрокаДерева.Значение > 0 ИЛИ СтрокаДерева.Обязательное = "Да")Тогда
			Для Каждого СтрокаТаблицы Из СтрокаДерева.Строки Цикл
				ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаТаблицы, Ошибки, Истина, СтрокаТаблицы.Значение,
					РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
			КонецЦикла;
		ИначеЕсли СтрокаДерева.Признак = "Выбор" И (ЗначениеЗаполнено(СтрокаДерева.Значение) ИЛИ СтрокаДерева.Обязательное = "Да") Тогда
			ПроверяемаяСтрока = СтрокаДерева.Строки.Найти(СтрокаДерева.ПолныйПуть + "." + СтрокаДерева.Значение, "ПолныйПуть");
			Если ЗначениеЗаполнено(ПроверяемаяСтрока) Тогда
				// Поскольку сменили текущую строку дерева, нужно проверить заполнение самого реквизита.
				ПроверитьЗаполнениеРеквизитаДереваДанных(ПроверяемаяСтрока, ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС, ТекстОшибки);
			
				Если ЗначениеЗаполнено(ТекстОшибки) Тогда
					ДобавитьОшибкуПроверкиДереваДанных(Ошибки, ПроверяемаяСтрока, ТекстОшибки,, НомерСтрокиДляПодстановки);
					
					Продолжить;
				КонецЕсли;
				
				ПроверитьЗаполнениеРеквизитовДереваДанных(ПроверяемаяСтрока, Ошибки, Ложь,,
					РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
			Иначе
				ТекстОшибки = ТекстОшибкиНеЗаполненногоЗначенияДерева();
				
				ДобавитьОшибкуПроверкиДереваДанных(Ошибки, СтрокаДерева, ТекстОшибки);
			КонецЕсли;
		ИначеЕсли СтрокаДерева.Признак = "Группа" И СтрокаДерева.Значение = Истина И СтрокаДерева.Строки.Количество() > 0 Тогда
			ПроверитьЗаполнениеРеквизитовДереваДанных(СтрокаДерева, Ошибки, Ложь,,
				РеквизитЗаполненИлиОбязателен И ПроверятьОбязательностьПараметровОшибки, ДатаПоФорматуФНС);
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры
Показать
19. user2039543 18.01.24 13:23 Сейчас в теме
В справочниках выбрал контрагента, скопировал его ИНН, снова вставил- "заполнить по ИНН"- заполнил- записал. Все заработало
20. Vasiliy K. 5 26.01.24 08:08 Сейчас в теме
В одном случае в УНФ помогло заполнение фактического адреса контрагента.
kas1989; researcher01; quisl; +3 Ответить
21. researcher01 108 28.02.24 12:01 Сейчас в теме
(20) Уже, как минимум, два случая
22. pentanom 25 28.02.24 16:40 Сейчас в теме
(20)
В одном случае в УНФ помогло заполнение фактического адреса контрагента.
Вообще-то речь шла о БП.
25. s-a-n-t-a 01.07.24 17:20 Сейчас в теме
(20) Да, в УНФ мне тоже это помогло (заполнение именно фактического адреса контрагента).
26. user2095654 09.07.24 11:33 Сейчас в теме
Мне помогло перезаполнить реквизиты контрагента по ИНН. И заново выбрать контрагента.
27. lazovit 07.08.24 13:27 Сейчас в теме
Попогает именно перевыбор страны в адресе (сначала выбираем отличную от РФ потом выбирем РФ ) и заполняем адрес
Оставьте свое сообщение

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