You've already forked 1c-homeworks
							
							
				mirror of
				https://github.com/netology-code/1c-homeworks.git
				synced 2025-10-30 23:43:50 +02:00 
			
		
		
		
	Корректировка формулировки задачи
This commit is contained in:
		| @@ -153,32 +153,19 @@ | ||||
|  | ||||
| ### Процесс выполнения | ||||
|  | ||||
| Разбейте процедуру СоздатьДокумент() на два отдельных метода. | ||||
| Создайте серверную функцию без контекста ПодобратьНоменклатуру(), в которой нужно перебрать в цикле все строки массива **ДанныеФайла** и выполнить поиск номенклатуры. Функция должна возвращать данные файла, дополненные ссылкой на номенклатуру. | ||||
|  | ||||
| Первый метод сделайте функцией, которая будет возвращать информацию о том, есть ли ненайденная номенклатура: «Истина» или «Ложь». | ||||
| Одновременно с проверкой дополните данные файла ссылкой на номенклатуру: | ||||
| ```bsl | ||||
| 	Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию(ДанныеСтроки.НаименованиеНоменклатуры);	 | ||||
| 	ДанныеСтроки.Вставить("Номенклатура", Номенклатура); | ||||
|  | ||||
| 	// Если номенклатура не найдена, то сообщаем об этом пользователю | ||||
| 	Если Не ЗначениеЗаполнено(Номенклатура) Тогда | ||||
| 		 | ||||
| 		ШаблонСообщения = НСтр("ru = 'Номенклатура: %1 не найдена'"); | ||||
| 		 | ||||
| 		Сообщение = Новый СообщениеПользователю; | ||||
| 		Сообщение.Текст = СтрШаблон(ШаблонСообщения, ДанныеСтроки.НаименованиеНоменклатуры); | ||||
| 		Сообщение.Сообщить(); | ||||
|  | ||||
| 		Результат = Ложь; | ||||
| 		 | ||||
| 	КонецЕсли; | ||||
| ``` | ||||
|  | ||||
| Если функция вернула «Ложь», то задайте вопрос пользователю с помощью функции **ВопросАсинх**. В противном случае сразу сохраните документ. | ||||
| Данную функцию следует вызвать в обработчике команды после чтения данных файла. | ||||
|  | ||||
| Если пользователь ответил «Да», то сохраните документ, вызвав второй метод. | ||||
| Далее обойдите массив и проверьте для всей ли номенклатуры подобраны ссылки, если есть номенклатура без ссылки, то нужно задать пользователю вопрос нужно ли сохранить документ с помощью функции **ВопросАсинх**. В противном случае сразу сохраните документ. | ||||
|  | ||||
| Для заполнения документа используйте уже ранее полученные и сохранённые в данных файла ссылки на номенклатуру. Если номенклатура для какой-то строки не заполнена, то такая строка не должна создаваться в документе. Не должно быть строк с пустой номенклатурой. | ||||
| Если пользователь ответил «Да», то сохраните документ. | ||||
|  | ||||
| Для заполнения и сохранения документа используйте уже ранее полученные и сохранённые в данных файла ссылки на номенклатуру. Если номенклатура для какой-то строки не заполнена, то такая строка не должна добавляться в документ. Не должно быть строк с пустой номенклатурой. | ||||
|  | ||||
| ### Подсказка: [результат выполнения домашнего задания](Examples/homework-5-7-example.md). | ||||
|   | ||||
		Reference in New Issue
	
	Block a user