![]() |
|
v8: Как отобрать записи определенной бухоперации. Ошибка "Ожидается имя таблицы. " | ☑ | ||
---|---|---|---|---|
0
GreenDay1986
29.04.13
✎
18:26
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ |ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.ОсновноеСредство КАК ОС, |ЕСТЬNULL(ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.СрокПолезногоИспользования, 0) КАК СрокИспользованияБУ, |ЕСТЬNULL(ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.СрокИспользованияДляВычисленияАмортизации, 0) КАК СрокИспользованияДляВычисленияАмортизации |ИЗ РегистрСведений.ПараметрыАмортизацииОСБухгалтерскийУчет.СрезПоследних(&Дата,) КАК ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних |ГДЕ ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.Регистратор ССЫЛКА &ОперацияБух"; Запрос.УстановитьПараметр("ОперацияБух", Документы.ОперацияБух.НайтиПоНомеру("00000000875")); //// РегистрБУ = РегистрыСведений.ПараметрыАмортизацииОСБухгалтерскийУчет.СоздатьНаборЗаписей(); Рез = Запрос.Выполнить().Выбрать(); Пока Рез.Следующий Цикл Сообщить(Рез.ОС+" "+Рез.СрокИспользованияБУ+" "+Рез.СрокИспользованияДляВычисленияАмортизации); КонецЦикла; Ошибка {Форма.Форма.Форма(33)}: Ошибка при вызове метода контекста (Выполнить) Рез = Запрос.Выполнить().Выбрать(); по причине: {(6, 77)}: Ожидается имя таблицы ГДЕ ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.Регистратор ССЫЛКА <<?>>&ОперацияБух Граждане, подскажите пожалуйста как отобрать из определенной бухоперации записи рег.сведений. |
|||
1
GreenDay1986
29.04.13
✎
18:27
|
То есть интересует можно ли передать параметром определенную бух. операцию?
|
|||
2
Ёпрст
гуру
29.04.13
✎
18:29
|
ГДЕ ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.Регистратор = &ОперацияБух
|
|||
3
GreenDay1986
29.04.13
✎
18:33
|
(2) Ошибка ушла, что-то не выдает ничего. Основное средство мож неверно выбираю?
|
|||
4
zladenuw
29.04.13
✎
18:35
|
(3) а где &Дата выставляешь ?
|
|||
5
GreenDay1986
29.04.13
✎
18:36
|
(4) на форме реквизит, мне из определенной бух.опер нужно инфу достать.
|
|||
6
GreenDay1986
29.04.13
✎
18:39
|
В принципе если можно без даты, нужно выбрать все строки из данной бух.операции
|
|||
7
GreenDay1986
29.04.13
✎
18:40
|
Может в периоде дело :(
|
|||
8
zladenuw
29.04.13
✎
18:40
|
я тебе про то что ты не передаешь параметр в запрос.
|
|||
9
Fram
29.04.13
✎
18:41
|
ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.Регистратор ССЫЛКА Документ.ОперацияБух
|
|||
10
Fram
29.04.13
✎
18:42
|
Хотя если "определенной" тогда конечно (2)
|
|||
11
GreenDay1986
29.04.13
✎
18:43
|
(9) Так он мне записи из всех документов выберет ОперацияБух. Да нужно из одной. Там записей много очень.
(10) Ничего не выдает почему то :( |
|||
12
GreenDay1986
29.04.13
✎
18:44
|
Запрос.УстановитьПараметр("ОперацияБух", Документы.ОперацияБух.НайтиПоНомеру("00000000875"));
|
|||
13
GreenDay1986
29.04.13
✎
18:44
|
Запрос.УстановитьПараметр("Дата",Дата); вроде тоже передаю
|
|||
14
Fram
29.04.13
✎
18:44
|
(11) Фильтр работает ))
Есть уверенность что записи указанной операции являются последними на указанную дату? |
|||
15
GreenDay1986
29.04.13
✎
18:45
|
(14) нету, как прописать?
|
|||
16
Fram
29.04.13
✎
18:47
|
(15) что прописать?
если надо получить все записи операции, то надо выбирать из таблицы регистра, а не из среза последних |
|||
17
GreenDay1986
29.04.13
✎
18:48
|
(16) Пример можно?
|
|||
18
Fram
29.04.13
✎
18:49
|
|ИЗ РегистрСведений.ПараметрыАмортизацииОСБухгалтерскийУчет КАК ПараметрыАмортизацииОСБухгалтерскийУчет
|
|||
19
GreenDay1986
29.04.13
✎
18:49
|
А, срез последних убрать
|
|||
20
Fram
29.04.13
✎
18:52
|
Ага.. и понять почему неплохо бы
|
|||
21
GreenDay1986
29.04.13
✎
19:05
|
(20) Все равно ничего не выдает
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ |ПараметрыАмортизацииОСБухгалтерскийУчет.ОсновноеСредство.Наименование КАК ОС, |ЕСТЬNULL(ПараметрыАмортизацииОСБухгалтерскийУчет.СрокПолезногоИспользования, 0) КАК СрокИспользованияБУ, |ЕСТЬNULL(ПараметрыАмортизацииОСБухгалтерскийУчет.СрокИспользованияДляВычисленияАмортизации, 0) КАК СрокИспользованияДляВычисленияАмортизации |ИЗ РегистрСведений.ПараметрыАмортизацииОСБухгалтерскийУчет КАК ПараметрыАмортизацииОСБухгалтерскийУчет // |ГДЕ ПараметрыАмортизацииОСБухгалтерскийУчетСрезПоследних.Регистратор ССЫЛКА &ОперацияБух" |ГДЕ ПараметрыАмортизацииОСБухгалтерскийУчет.Регистратор=&ОперацияБух"; Запрос.УстановитьПараметр("ОперацияБух",Документы.ОперацияБух.НайтиПоНомеру("00000000875")); //// РегистрБУ = РегистрыСведений.ПараметрыАмортизацииОСБухгалтерскийУчет.СоздатьНаборЗаписей(); Рез = Запрос.Выполнить().Выбрать(); Пока Рез.Следующий() Цикл Сообщить(Рез.ОС); КонецЦикла; |
|||
22
Fram
29.04.13
✎
19:08
|
А можно еще в начале
Сообщить(Документы.ОперацияБух.НайтиПоНомеру("00000000875")); добавить? |
|||
23
Fram
29.04.13
✎
19:10
|
А лучше Док = Документы.ОперацияБух.НайтиПоНомеру("00000000875").ПолучитьОбъект();
Сообщить(Док.Движения.ПараметрыАмортизацииОСБухгалтерскийУчет.Количество()); |
|||
24
GreenDay1986
29.04.13
✎
19:12
|
Ошибка при вызове метода контекста (ПолучитьОбъект)
Док = Документы.ОперацияБух.НайтиПоНомеру("00000000875").ПолучитьОбъект(); по причине: Элемент не выбран! |
|||
25
Fram
29.04.13
✎
19:13
|
(24) Ну вот тебе и ответ!
|
|||
26
GreenDay1986
29.04.13
✎
19:38
|
(25) Странно, а операция с данным номером в базе есть
|
|||
27
Wobland
29.04.13
✎
19:41
|
а я вот тут сижу и задаюсь вопросом.. приводит ли опускание второго параметра к гарантированному ненахождению документа?
|
|||
28
Aprobator
29.04.13
✎
20:47
|
(26) у метода найтипономеру укажи второй параметр. В СП найдешь какой и будет тебе счастье.
|
|||
29
Aprobator
29.04.13
✎
20:48
|
(27) приводит.
|
|||
30
Aprobator
29.04.13
✎
20:50
|
Там смотришь периодичность документа и ставишь любую дату этогго периода, Т.е. периодичность год - любую дату года. Иначе метод не отрабатывает.
|
|||
31
Aprobator
29.04.13
✎
21:01
|
А вообще, судя по коду, тут какая то разовая обработка. Вытащи реквизит типа документ ссылка на форму и все.
|
|||
32
GreenDay1986
30.04.13
✎
10:20
|
Спасибо! )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |