|
Ошибка в запросе. Поле не найдено. | ☑ | ||
---|---|---|---|---|
0
Rodya95
13.09.17
✎
18:25
|
Здравствуйте! Дали задание, а ошибку все не могу найти, второй день все переделываю и перепроверяю, а ошибка все вылезает.
Ошибка следующая: Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {Документ.РасходнаяНакладная.МодульОбъекта(68)}: Ошибка при вызове метода контекста (Выполнить) РезультатЗапроса = Запрос2.Выполнить(); по причине: {(15, 28)}: Поле не найдено "НоменклатураДокумента.Номенклатура" ПО НоменклатураДокумента.<<?>>Номенклатура = СтоимостьТоваровОстатки.Товар Запрос2 = Новый Запрос; Запрос2.МенеджерВременныхТаблиц = МенеджерВТ; Запрос2.Текст = "ВЫБРАТЬ | НоменклатураДокумента.Номенклатура, | НоменклатураДокумента.ВидНоменклатуры, | НоменклатураДокумента.КоличествоВДокументе, | НоменклатураДокумента.СуммаВДокументе, | ЕСТЬNULL(СтоимостьТоваровОстатки.СтоимостьОстаток, 0) КАК Стоимость, | ЕСТЬNULL(ОстаткиТоваровОстатки.КоличествоОстаток, 0) КАК Количество |ИЗ | НоменклатураДокумента КАК НоменклатураДокумента | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьТоваров.Остатки(,Товар В( |ВЫБРАТЬ | НоменклатураДокумента.Номенклатура | ИЗ | НоменклатураДокумента)) КАК СтоимостьТоваровОстатки | ПО НоменклатураДокумента.Номенклатура = СтоимостьТоваровОстатки.Товар | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(,Наименование В( |ВЫБРАТЬ | НоменклатураДокумента.Номенклатура | ИЗ | НоменклатураДокумента)) КАК ОстаткиТоваровОстатки | ПО НоменклатураДокумента.Номенклатура = ОстаткиТоваровОстатки.Наименование"; Движения.СтоимостьТоваров.БлокироватьДляИзменения = Истина; Движения.ОстаткиТоваров.БлокироватьДляИзменения = Истина; //Запишем пустые наборы записей, чтобы читать остатки без учета данных в документе Движения.СтоимостьТоваров.Записать(); Движения.ОстаткиТоваров.Записать(); РезультатЗапроса = Запрос2.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); |
|||
1
Базис
naïve
13.09.17
✎
18:27
|
Копируй текст запроса, вставь его в консоль запросов, проверь синтаксис кнопкой внизу справа.
|
|||
2
Tatitutu
13.09.17
✎
18:32
|
Товар В(ВЫБРАТЬ НоменклатураДокумента.Номенклатура
ИЗ НоменклатураДокумента) |
|||
3
AlvlSpb
13.09.17
✎
19:04
|
(0) А где сама временная таблица НоменклатураДокумента формируется? Покажите как делаете
|
|||
4
DrShad
13.09.17
✎
19:12
|
Сама таблица то есть, а вот поля такого в ней нет
|
|||
5
AlvlSpb
13.09.17
✎
19:23
|
(4) вот и похоже на то, поэтому и спрашиваю показать ее
|
|||
6
Rodya95
14.09.17
✎
11:26
|
(4) вот временная таблица
МенеджерВТ = Новый МенеджерВременныхТаблиц; Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = МенеджерВТ; Запрос.Текст = "ВЫБРАТЬ | РасходнаяНакладнаяПереченьНоменклатуры.Наименование, | РасходнаяНакладнаяПереченьНоменклатуры.Наименование.ВидНоменклатуры КАК ВидНоменклатуры, | СУММА(РасходнаяНакладнаяПереченьНоменклатуры.Количество) КАК КоличествоВДокументе, | СУММА(РасходнаяНакладнаяПереченьНоменклатуры.Сумма) КАК СуммаВДокументе |ПОМЕСТИТЬ НоменклатураДокумента |ИЗ | Документ.РасходнаяНакладная.ПереченьНоменклатуры КАК РасходнаяНакладнаяПереченьНоменклатуры |ГДЕ | РасходнаяНакладнаяПереченьНоменклатуры.Ссылка = &Ссылка | |СГРУППИРОВАТЬ ПО | РасходнаяНакладнаяПереченьНоменклатуры.Наименование, | РасходнаяНакладнаяПереченьНоменклатуры.Наименование.ВидНоменклатуры"; Запрос.УстановитьПараметр("Ссылка", Ссылка); РезультатЗапроса = Запрос.Выполнить(); |
|||
7
Мыш
14.09.17
✎
11:28
|
(6) "ВЫБРАТЬ
| РасходнаяНакладнаяПереченьНоменклатуры.Номенклатура КАК Номенклатура, |
|||
8
catena
14.09.17
✎
11:32
|
(7)Я думаю, что все-так ".Наименование как Номенклатура"
|
|||
9
_Дайвер_
14.09.17
✎
11:34
|
(8) +
|
|||
10
Ненавижу 1С
гуру
14.09.17
✎
11:36
|
(0) ЧТО ЭТО?
ОстаткиТоваровОстатки.Наименование |
|||
11
Ёпрст
14.09.17
✎
11:50
|
(8) еще подумай, в регистре то, Товар не строка, а ссылка
|
|||
12
Rodya95
14.09.17
✎
11:50
|
(7) Да, верно, уже нашел и исправил. Теперь появилась такая ошибка:
Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {Документ.РасходнаяНакладная.МодульОбъекта(119)}: Ошибка при вызове метода контекста (Выполнить) РезультатЗапроса = Запрос3.Выполнить(); по причине: {(9, 15)}: Не задано значение параметра "Склад" И Склад = <<?>>&Склад) КАК ОстаткиТоваровОстатки Текст программы: Запрос3 = Новый Запрос; Запрос3.МенеджерВременныхТаблиц = МенеджерВТ; Запрос3.Текст = "ВЫБРАТЬ | ОстаткиТоваровОстатки.Наименование, | ОстаткиТоваровОстатки.КоличествоОстаток |ИЗ | РегистрНакопления.ОстаткиТоваров.Остатки(,Наименование В(ВЫБРАТЬ | НоменклатураДокумента.Наименование | ИЗ | НоменклатураДокумента) | И Склад = &Склад) КАК ОстаткиТоваровОстатки |ГДЕ | ОстаткиТоваровОстатки.КоличествоОстаток"; Запрос3.УстановитьПараметр(Склад,"Склад"); РезультатЗапроса = Запрос3.Выполнить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий()Цикл Сообщение = Новый СообщениеПользователю(); Сообщение.Текст = "Не хватает" + Строка (-ВыборкаДетальныеЗаписи.КоличествоОстаток)+"единиц товара"""+ВыборкаДетальныеЗаписи.Товар+""""""; Сообщение.Сообщить(); Отказ = Истина; КонецЦикла; |
|||
13
Ёпрст
14.09.17
✎
11:52
|
ну и вот тут, аутору тоже надо переделать:
//ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(,Наименование В( ЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(,Номенклатура В( Врят ли есть там измерение Наименование в регистре. |
|||
14
Rodya95
14.09.17
✎
11:52
|
(7) а, нет, все таки ошибка была не там. Я исправил во втором запросе НоменклатураДокумента.Номенклатура на НоменклатураДокумента.Наименование
|
|||
15
Rodya95
14.09.17
✎
11:53
|
(13) там все верно)
|
|||
16
Ёпрст
14.09.17
✎
11:53
|
(12)
Запрос3.УстановитьПараметр("Склад",Склад); |
|||
17
Ёпрст
14.09.17
✎
11:54
|
(15) чего верно ? У тя в регистре ОстаткиТоваров есть измерение Наименование ?
И какого оно типа у тебя, и кто его туда добавил и зачем ? |
|||
18
Rodya95
14.09.17
✎
11:57
|
(17) Да, тип СправочникСсылка.Номенклатура. Я туда добавил. Все эти запросы строились при помощи конструктора запросов
|
|||
19
Rodya95
14.09.17
✎
11:58
|
(16) Спасибо, помогло. теперь такая ошибка :D
Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {Документ.РасходнаяНакладная.МодульОбъекта(119)}: Ошибка при вызове метода контекста (Выполнить) РезультатЗапроса = Запрос3.Выполнить(); по причине: {(11, 2)}: Операция не разрешена в предложении "ГДЕ" <<?>>ОстаткиТоваровОстатки.КоличествоОстаток |
|||
20
Ёпрст
14.09.17
✎
11:58
|
(18) а до того как, какие измерения там были ?
Ну так, на поржать |
|||
21
h-sp
14.09.17
✎
11:59
|
(18) ну то есть лично занимался дебилизмом? Называл поля "наименование"? А почему ты не назвал поле Номенклатуры, например "Сотрудник"? Или "Склад"?
|
|||
22
Ёпрст
14.09.17
✎
11:59
|
(19)
// |ГДЕ // | ОстаткиТоваровОстатки.КоличествоОстаток"; |
|||
23
h-sp
14.09.17
✎
12:00
|
(19) опана! у тебя еще и Количество типа Булево? Круто.
|
|||
24
catena
14.09.17
✎
12:01
|
(11)Меня на это навело строка "РасходнаяНакладнаяПереченьНоменклатуры.Наименование.ВидНоменклатуры" из (6)
|
|||
25
Rodya95
14.09.17
✎
12:02
|
(22) там есть точка с запятой, просто не скопировал
|
|||
26
Ёпрст
14.09.17
✎
12:03
|
(25) Этот бред просто выкини из текста запроса.
|
|||
27
catena
14.09.17
✎
12:04
|
(25)Это ГДЕ какой смысл несет лично в вашей вселенной?
|
|||
28
Rodya95
14.09.17
✎
12:06
|
(23) я первый раз в 1с программирую) просто работу ищу и вот сказали сделать задание по результатам которого решат нанимать или нет)
|
|||
29
Ёпрст
14.09.17
✎
12:08
|
(28) В задании, было сказано, спроектировать простой мини-учет ?
Тогда переписывай структуру регистров, ибо с тем, что в (0) - не возьмут. |
|||
30
Ёпрст
14.09.17
✎
12:09
|
Для начала, посмотри, как в любой типовой сделано.
|
|||
31
Rodya95
14.09.17
✎
12:09
|
(26) Всё, спасибо большое, заработало)
Только я не понимаю почему не выходило, если конструктор запроса сам написал запрос, а все поля и таблицы были верно заполнены. Делал я по учебнику Радченко и Хрусталева "1С Предприятие 8.3 Практическое пособие разработчика" |
|||
32
1dvd
14.09.17
✎
12:13
|
(28) ты им насвистел что опытный программист, типа?
|
|||
33
Rodya95
14.09.17
✎
12:14
|
(32) нет, им нужен начинающий программист со знанием основ на уровне университетской программы) при приеме сами будут обучать всему
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |