Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
25 Май 2018, 04:32
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: (Запрос в таблице значений)  (Прочитано 1118 раз)

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

Оффлайн GanG031

  • ***
  • Сообщений: 181
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Доброго времени суток! Суть в следующем: Нужно сделать запрос к регистру сведений и таблице значений. Выбираю поля: Сотрудник, период, табельный номер, составная часть, индексируется, сумма (из регистра и таблицы значений). Сравниваю строки по этим выбранным полям, кроме поля сумма. Если найдена соответствующая строка в регистре сведений, то сравниваю и сумму, и если она различна, то меняю ее.
Сделал пока вот такой код:

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


Но ругается :
{Форма.Форма.Форма(93)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(21, 2)}: Неверные параметры "ВременнаяТаблица"
<<?>>&ВременнаяТаблица КАК ТаблицаЗначений1


Подскажите, в чем ошибка? И подскажите пожалуйста дальнейший алгоритм действий, вот я выполню запрос, а что с ним дальше делать? Заранее спасибо!


Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Если найдена соответствующая строка в регистре сведений, то сравниваю и сумму, и если она различна, то меняю ее.
непонятно где надо менять
Добавлено: 23 Фев 2016, 21:45

Цитировать
Но ругается :
{Форма.Форма.Форма(93)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(21, 2)}: Неверные параметры "ВременнаяТаблица"
<<?>>&ВременнаяТаблица КАК ТаблицаЗначений1
Что такое "Таблица1"
Добавлено: 23 Фев 2016, 21:54

Цитировать
Подскажите, в чем ошибка? И подскажите пожалуйста дальнейший алгоритм действий, вот я выполню запрос, а что с ним дальше делать? Заранее спасибо!
Сделать внутреннее соединение регистра сведений и таблицы, по указанным выше полям и по сумме не равно в регистре и таблице. Находите нужные записи в регистре или в таблице и записываете их.

Последний раз редактировалось: Дмитрий@; 23 Фев 2016, 21:54. Причина: Объединение сообщений

Оффлайн GanG031

  • ***
  • Сообщений: 181
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Цитировать
Если найдена соответствующая строка в регистре сведений, то сравниваю и сумму, и если она различна, то меняю ее.
непонятно где надо менять
Добавлено: 23 Фев 2016, 21:45

Цитировать
Но ругается :
{Форма.Форма.Форма(93)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(21, 2)}: Неверные параметры "ВременнаяТаблица"
<<?>>&ВременнаяТаблица КАК ТаблицаЗначений1
Что такое "Таблица1"
Добавлено: 23 Фев 2016, 21:54

Цитировать
Подскажите, в чем ошибка? И подскажите пожалуйста дальнейший алгоритм действий, вот я выполню запрос, а что с ним дальше делать? Заранее спасибо!
Сделать внутреннее соединение регистра сведений и таблицы, по указанным выше полям и по сумме не равно в регистре и таблице. Находите нужные записи в регистре или в таблице и записываете их.

Запрос = Новый Запрос;
МенеджерВТ = Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МенеджерВТ;
Запрос.Текст =
"ВЫБРАТЬ
|   ТаблицаЗначений1.Сотрудник,
|   ТаблицаЗначений1.Период,
|   ТаблицаЗначений1.ТабельныйНомер,
|   ТаблицаЗначений1.СоставнаяЧасть,
|   ТаблицаЗначений1.Сумма
|ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.Сотрудник,
|   ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.Период,
|   ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.Сотрудник.Код,
|   ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.СоставнаяЧасть,
|   ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.Индексируется,
|   ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий.Сумма
|ПОМЕСТИТЬ ТаблицаЗн
|ИЗ
|   &ВременнаяТаблица КАК ТаблицаЗначений1";
|ВНУТРЕННЕЕ СОЕДИНЕНИЕ
|РегистрыНакопления.ДанныеОНачисленияхДляРасчетаСреднегоЗаработкаОбщий
|ПО
|ТаблицаЗначений1.Сотрудник  =  РегистрыНакопления.Сотрудник

|ТаблицаЗначений1.СоставнаяЧасть  =  РегистрыНакопления.СоставнаяЧасть

| НЕ ТаблицаЗначений1.Сумма  =  РегистрыНакопления.Сумма"

Запрос.УстановитьПараметр("ВременнаяТаблица", ТаблицаЗначений);
РезультатЗапроса = Запрос.Выполнить();

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


Вот что начал делать, но что то видимо нет так...

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Вот что начал делать, но что то видимо нет так...

Очень содержательное замечание.
Ваш первый вариант запросе был правильный. Остается вопрос
Что такое "Таблица1"



Теги:
 

Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

Автор Елена6666666666Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 10977
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
Запрос Параметры для "ИЗ"

Автор БерезинРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 3364
Последний ответ 15 Май 2013, 23:27
от Березин
Что быстрее: Загрузить табличную часть в запрос и там добавить колонки, или пробежаться циклом по ТЧ и добавить значения в колонки

Автор ZeedРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1227
Последний ответ 11 Июл 2016, 09:00
от vitasw
Обнаружено дублирование ключевых значений в колонке ссылка [&quot;обнаружено дублирование ключевых з

Автор lianinfoРаздел Пользователям "1С - Предприятие 8"

Ответов: 10
Просмотров: 685
Последний ответ 20 Мар 2018, 16:54
от alex0402
Запрос по обработке "Согласование заявок"

Автор DenielAkreedРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 928
Последний ответ 29 Сен 2016, 02:39
от DenielAkreed

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
162 Сообщений
alex0402
74 Сообщений
oleg-x
67 Сообщений
AIFrame AIFrame
60 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
39 Сообщений
ilyay ilyay
39 Сообщений
Анюта17
33 Сообщений
KOI8-R
32 Сообщений
Alter
30 Сообщений

* Кто онлайн

  • Точка Гостей: 214
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal