Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 фев 2024, 08:28

Не могу понять в чем ошибка

Автор maxxi, 12 сен 2023, 10:52

0 Пользователей и 1 гость просматривают эту тему.

maxxi

Уважаемые знатоки, подскажите пожалуйста в чем я ошибся и получаю такую ошибку:

&НаСервере
Процедура Команда1НаСервере()

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТЧ_Норматив.Товары КАК Товары,
| ТЧ_Норматив.НормативДень КАК НормативДень
|ПОМЕСТИТЬ ВТ_ТЧ_НормативДень
|ИЗ
| &ТЧ КАК ТЧ_Норматив";

Запрос.УстановитьПараметр("ТЧ", Реквизит1.Выгрузить());

Реквизит1.Загрузить(Запрос.Выполнить().Выгрузить());

РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл

ТЗ=Реквизит1.Добавить();

ТЗ.Товары=Выборка.Товары;

ТЗ.Норматив=Выборка.НормативДень;

КонецЦикла;


КонецПроцедуры


antoneus

Ошибся в коде. Какую ошибку, кстати?

LexaK

maxxi, бред полный, я бы тоже на месте 1С отказался бы это выполнять!

ну надо хотя бы чуть-чуть представлять для чего те или иные команды вставляете в код.

вы три раза сделали одно и тоже да еще и с ошибками!


попробуйте решать задачу, с ее описания!

какие исходные данные, что надо с ними сделать, какой результат планируете получить!
и для выполнения каждого действия нужна одна команда! на не три для верности! 
если помогло нажмите: Спасибо!

maxxi

хочу заполнить этот ТЗ.

maxxi

вот сама ошибка:

LexaK

Цитата: maxxi от 12 сен 2023, 11:48хочу заполнить этот ТЗ.
судя по картинке данными из файла Ексель?

вот пример чтения данных из файла ексель и размещения их на форме в поле ТабДок,
чуть-чуть доработайте и получите размещение данных в ТЗ
если помогло нажмите: Спасибо!

maxxi

Изменил код:

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТЧ_Норматив.Товары КАК Товары,
| ТЧ_Норматив.НормативДень КАК НормативДень
|ПОМЕСТИТЬ ВТ_ТЧ_НормативДень
|ИЗ
| &ТЧ КАК ТЧ_Норматив
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТ_ТЧ_НормативДень.Товары КАК Товары,
| ВТ_ТЧ_НормативДень.НормативДень КАК НормативДень
|ИЗ
| ВТ_ТЧ_НормативДень КАК ВТ_ТЧ_НормативДень";

ТЗ  = ТаблицаЗначений.Выгрузить();

Запрос.УстановитьПараметр("ТЧ",ТЗ);

//Запрос.УстановитьПараметр("ТЧ", Реквизит1.Выгрузить());

//Реквизит1.Загрузить(Запрос.Выполнить().Выгрузить());

РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл

ТЗ=ТаблицаЗначений.Добавить();

ТЗ.Товары=Выборка.Товары;

ТЗ.НормативДень=Выборка.НормативДень;

КонецЦикла;


КонецПроцедуры

LexaK

maxxi, по коду, вы выполняете следующие действия

1.из  ТаблицаЗначений вы выгружаете данные в ТЗ
2.ТЗ помещаете в запрос
3.из запроса получаете выборку и добавляете результат в туже таблицу: ТаблицаЗначений

вот смысл всего этого, упорно ускользает!

но, при всем, при этом, этот ваш код может работать без ошибок!  (как и кучи другого кода)в
или не работать вообще если в исходной таблице: ТаблицаЗначений  нет данных - ни чего происходить не будет.
если помогло нажмите: Спасибо!

antoneus

И в результате получается, что некая ТаблицаЗначений дополняется дубликатами уже существующих в ней строк, дернув при этом СУБД.

maxxi

LexaK, Подскажите пожалуйста, где что поправить.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск