Значение не является значением объектного типа

1. user1619761 30.07.21 11:57 Сейчас в теме
Здравствуйте. Подскажите , пожалуйста, что не правильно делаю. Ругается, {ВнешняяОбработка.ПеребросИзПарадокса.Форма.Форма.Форма(36)}: Значение не является значением объектного типа (ТекСтрТЧ)
КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ.ЕдИзмКод); ,комментил эти строки, по остальным такие же ошибки вылезают.



&НаКлиенте
Процедура Загрузить(Команда)
	// Вставить содержимое обработчика.
	
ЗагрузитьИзDBF();

ЕдИзмПДКС = ЗагрузитьИзDBF();
ЕдИзм1С = ПолучитьЕдИзм1С();
ЕдИзмКлассификатор = ПолучитьКлассификаторЕдИзм();

КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ.ЕдИзмКод);
НаимЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ.ЕдИзмНаим);
КодЕдИзм1С = СокрЛП(ЕдИзм1С.Код);
НаимЕдИзм1С = СокрЛП(ЕдИзм1С.Наименование);
КодЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Код);
НаимЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Наименование);

Для Каждого Строка Из ТЧ Цикл	

Если ПроверкаЕдИзмНоменклатуры Тогда	

		
	Если Не //НаимЕдИзмПДКС =
		НаимЕдИзм1С.НайтиПоКоду(КодЕдИзмКлассификатор) Тогда
		
		
		
		КонецЕсли;
		
Иначе
	Продолжить
	КонецЕсли;
	
КонецЦикла;	
	
КонецПроцедуры



ТекСтрТЧ.КодЕдИзмПДКС = ЧислоВСтроку(ДБФ.CODEOKEI); 
			ТекСтрТЧ.НаимЕдИзмПДКС = ЧислоВСтроку(ДБФ.GOODEDIZM);



&НаСервере
функция ПолучитьЕдИзм1С()	
	 Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	Номенклатура.ЕдиницаИзмерения.Ссылка КАК Ссылка
		|ИЗ
		|	Справочник.Номенклатура КАК Номенклатура";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Если  ВыборкаДетальныеЗаписи.Следующий() Тогда
		ЕдИзм1С = ВыборкаДетальныеЗаписи.Ссылка;     	
	КонецЕсли;
	Возврат ВыборкаДетальныеЗаписи.Следующий();
КонецФункции

&НаСервере
Функция ПолучитьКлассификаторЕдИзм()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	КлассификаторЕдиницИзмерения.Ссылка КАК Ссылка
		|ИЗ
		|	Справочник.КлассификаторЕдиницИзмерения КАК КлассификаторЕдиницИзмерения";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Если  ВыборкаДетальныеЗаписи.Следующий() Тогда
		
	КлассификаторЕдИзм = ВыборкаДетальныеЗаписи.Ссылка;	
			
	КонецЕсли;

	Возврат ВыборкаДетальныеЗаписи.Следующий();
КонецФункции
Показать
По теме из базы знаний
Найденные решения
5. user838744 30.07.21 12:09 Сейчас в теме
Попробуй вместо
 КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ.ЕдИзмКод);

вот так:
КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ);

Может этот результат тебя удовлетворит.

Какой результат в ДБФ.CODEOKEI вообще?
7. user1619761 30.07.21 12:26 Сейчас в теме
(3)
(5)

Какой результат в ДБФ.CODEOKEI вообще?

(6)
Спасибо, коллеги, подсказали вот так сделать

&НаКлиенте
Процедура Загрузить(Команда)
	// Вставить содержимое обработчика.
	
ЗагрузитьИзDBF();
Если ПроверкаЕдИзмНоменклатуры Тогда	
	
Для Каждого Строка Из ТЧ Цикл

ЕдИзм1С = ПолучитьЕдИзм1С();
ЕдИзмКлассификатор = ПолучитьКлассификаторЕдИзм();

КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС);
КодЕдИзм1С = СокрЛП(ЕдИзм1С.Код);
НаимЕдИзм1С = СокрЛП(ЕдИзм1С.Наименование);
КодЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Код);
НаимЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Наименование);	
	
КонецЦикла;
КонецЕсли;
	
КонецПроцедуры
Показать


По
КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС); ошибки исчезли,а по остальному остались
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. RustamZz 30.07.21 12:06 Сейчас в теме
(1)
ЕдИзмПДКС.ТекСтрТЧ
это не объект и значит нельзя обращаться через точку к его реквизитам.
7. user1619761 30.07.21 12:26 Сейчас в теме
(3)
(5)

Какой результат в ДБФ.CODEOKEI вообще?

(6)
Спасибо, коллеги, подсказали вот так сделать

&НаКлиенте
Процедура Загрузить(Команда)
	// Вставить содержимое обработчика.
	
ЗагрузитьИзDBF();
Если ПроверкаЕдИзмНоменклатуры Тогда	
	
Для Каждого Строка Из ТЧ Цикл

ЕдИзм1С = ПолучитьЕдИзм1С();
ЕдИзмКлассификатор = ПолучитьКлассификаторЕдИзм();

КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС);
КодЕдИзм1С = СокрЛП(ЕдИзм1С.Код);
НаимЕдИзм1С = СокрЛП(ЕдИзм1С.Наименование);
КодЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Код);
НаимЕдИзмКлассификатор = СокрЛП(ЕдИзмКлассификатор.Наименование);	
	
КонецЦикла;
КонецЕсли;
	
КонецПроцедуры
Показать


По
КодЕдИзмПДКС = СокрЛП(Строка.КодЕдИзмПДКС);
НаимЕдИзмПДКС = СокрЛП(Строка.НаимЕдИзмПДКС); ошибки исчезли,а по остальному остались
2. user838744 30.07.21 12:04 Сейчас в теме
Надо посмотреть что в ЗагрузитьИзDBF()
4. user1619761 30.07.21 12:06 Сейчас в теме
(2) в ЗагрузитьИзDBF () эти две переменные
ТекСтрТЧ.КодЕдИзмПДКС = ЧислоВСтроку(ДБФ.CODEOKEI);
ТекСтрТЧ.НаимЕдИзмПДКС = ЧислоВСтроку(ДБФ.GOODEDIZM);
5. user838744 30.07.21 12:09 Сейчас в теме
Попробуй вместо
 КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ.ЕдИзмКод);

вот так:
КодЕдИзмПДКС = СокрЛП(ЕдИзмПДКС.ТекСтрТЧ);

Может этот результат тебя удовлетворит.

Какой результат в ДБФ.CODEOKEI вообще?
8. user925427 123 30.07.21 13:10 Сейчас в теме
Процедура НаКлиенте и сплошные обращения через точку. Может, в этом дело? Перенеси процедуру на сервер.
user1619761; +1 Ответить
Оставьте свое сообщение

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