|
Помогите с запросом | ☑ | ||
---|---|---|---|---|
0
Milli
21.03.13
✎
09:59
|
Подскажите, как получить строки из табличной части документа?
В 7-ке это делается через ВыбратьСтроки(). А как это делается в 8-ке? Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НачислениеПоБольничномуЛисту.Ссылка |ИЗ | Документ.НачислениеПоБольничномуЛисту КАК НачислениеПоБольничномуЛисту |ГДЕ | НачислениеПоБольничномуЛисту.Проведен = Истина | И НачислениеПоБольничномуЛисту.Дата МЕЖДУ &ДатаН И &ДатаК"; Запрос.УстановитьПараметр("ДатаН", ЭлементыФормы.НачПериода.Значение); Запрос.УстановитьПараметр("ДатаК", ЭлементыФормы.КонПериода.Значение); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Док = Выборка.Ссылка.ПолучитьОбъект(); КонецЦикла; |
|||
1
zak555
21.03.13
✎
10:01
|
делай запрос к ТЧ сразу
|
|||
2
nddru
21.03.13
✎
10:01
|
Не совсем понятен вопрос, в запросе получить или как их перебрать в найденном документе
|
|||
3
salvator
21.03.13
✎
10:01
|
(0) Запрос к ТЧ документа делай.
|
|||
4
zak555
21.03.13
✎
10:01
|
но зачем ты читаешь док с галкой проведён ?
ты лучше регистры читай |
|||
5
Milli
21.03.13
✎
10:03
|
(1) Как правильно сделать запрос к ТЧ?
Извиняюсь может за глупый вопрос. Я еще только начинаю изучать 8-ку. |
|||
6
perec1982
21.03.13
✎
10:06
|
"ВЫБРАТЬ
| НачислениеПоБольничномуЛистуСотрудники.Сотрудник |ИЗ | Документ.НачислениеПоБольничномуЛисту.Сотрудники КАК НачислениеПоБольничномуЛистуСотрудники |ГДЕ | НачислениеПоБольничномуЛистуСотрудники.Ссылка.Проведен = Истина | И НачислениеПоБольничномуЛисту.Ссылка.Дата МЕЖДУ &ДатаН И &ДатаК"; |
|||
7
perec1982
21.03.13
✎
10:07
|
Вроде так. Может с ошибками т.к. на коленке правил.
|
|||
8
zak555
21.03.13
✎
10:09
|
(5) в конструкторе ты же выбирала таблицу документа из БД НачислениеПоБольничномуЛисту ?
перенесла её в Таблицу а уж из неё выбирай свою ТЧ |
|||
9
zak555
21.03.13
✎
10:12
|
ВЫБРАТЬ
НачислениеПоБольничномуЛисту.Начисления.Ссылка, НачислениеПоБольничномуЛисту.Начисления.НомерСтроки, НачислениеПоБольничномуЛисту.Начисления.ВидРасчета, НачислениеПоБольничномуЛисту.Начисления.ДатаНачала, НачислениеПоБольничномуЛисту.Начисления.ДатаОкончания, НачислениеПоБольничномуЛисту.Начисления.Показатель1, НачислениеПоБольничномуЛисту.Начисления.Показатель2, НачислениеПоБольничномуЛисту.Начисления.Показатель3, НачислениеПоБольничномуЛисту.Начисления.Показатель4, НачислениеПоБольничномуЛисту.Начисления.Показатель5, НачислениеПоБольничномуЛисту.Начисления.Показатель6, НачислениеПоБольничномуЛисту.Начисления.Результат, НачислениеПоБольничномуЛисту.Начисления.ДополнительныйРезультат, НачислениеПоБольничномуЛисту.Начисления.ПодразделениеОрганизации, НачислениеПоБольничномуЛисту.Начисления.НормаДней, НачислениеПоБольничномуЛисту.Начисления.НормаЧасов, НачислениеПоБольничномуЛисту.Начисления.НормаДнейПоПятидневке, НачислениеПоБольничномуЛисту.Начисления.ОтработаноДней, НачислениеПоБольничномуЛисту.Начисления.ОтработаноЧасов, НачислениеПоБольничномуЛисту.Начисления.ОтработаноДнейПоПятидневке, НачислениеПоБольничномуЛисту.Начисления.ПериодРасчетаСреднегоЗаработкаНачало, НачислениеПоБольничномуЛисту.Начисления.ПериодРасчетаСреднегоЗаработкаОкончание, НачислениеПоБольничномуЛисту.Начисления.ДополнительныеДанные, НачислениеПоБольничномуЛисту.Начисления.ДатаНачалаСобытия, НачислениеПоБольничномуЛисту.Начисления.Сторно, НачислениеПоБольничномуЛисту.Начисления.Авторасчет, НачислениеПоБольничномуЛисту.Начисления.Сотрудник, НачислениеПоБольничномуЛисту.Начисления.ОплаченоДнейЧасов, НачислениеПоБольничномуЛисту.Начисления.ОтработаноЧасовПоПятидневке, НачислениеПоБольничномуЛисту.Начисления.УдалитьПриказ, НачислениеПоБольничномуЛисту.Начисления.НормаЧасовПоПятидневке, НачислениеПоБольничномуЛисту.Начисления.СторнируемыйДокумент, НачислениеПоБольничномуЛисту.Начисления.ЧислоМесяцев, НачислениеПоБольничномуЛисту.Начисления.РасчетнаяБазаЗаЕдиницуНормыВремени ИЗ Документ.НачислениеПоБольничномуЛисту КАК НачислениеПоБольничномуЛисту |
|||
10
zak555
21.03.13
✎
10:15
|
ВЫБРАТЬ
НачислениеПоБольничномуЛистуНачисления.Ссылка, НачислениеПоБольничномуЛистуНачисления.НомерСтроки, НачислениеПоБольничномуЛистуНачисления.ВидРасчета, НачислениеПоБольничномуЛистуНачисления.ДатаНачала, НачислениеПоБольничномуЛистуНачисления.ДатаОкончания, НачислениеПоБольничномуЛистуНачисления.Показатель1, НачислениеПоБольничномуЛистуНачисления.Показатель2, НачислениеПоБольничномуЛистуНачисления.Показатель3, НачислениеПоБольничномуЛистуНачисления.Показатель4, НачислениеПоБольничномуЛистуНачисления.Показатель5, НачислениеПоБольничномуЛистуНачисления.Показатель6, НачислениеПоБольничномуЛистуНачисления.Результат, НачислениеПоБольничномуЛистуНачисления.ДополнительныйРезультат, НачислениеПоБольничномуЛистуНачисления.ПодразделениеОрганизации, НачислениеПоБольничномуЛистуНачисления.НормаДней, НачислениеПоБольничномуЛистуНачисления.НормаЧасов, НачислениеПоБольничномуЛистуНачисления.НормаДнейПоПятидневке, НачислениеПоБольничномуЛистуНачисления.ОтработаноДней, НачислениеПоБольничномуЛистуНачисления.ОтработаноЧасов, НачислениеПоБольничномуЛистуНачисления.ОтработаноДнейПоПятидневке, НачислениеПоБольничномуЛистуНачисления.ПериодРасчетаСреднегоЗаработкаНачало, НачислениеПоБольничномуЛистуНачисления.ПериодРасчетаСреднегоЗаработкаОкончание, НачислениеПоБольничномуЛистуНачисления.ДополнительныеДанные, НачислениеПоБольничномуЛистуНачисления.ДатаНачалаСобытия, НачислениеПоБольничномуЛистуНачисления.Сторно, НачислениеПоБольничномуЛистуНачисления.Авторасчет, НачислениеПоБольничномуЛистуНачисления.Сотрудник, НачислениеПоБольничномуЛистуНачисления.ОплаченоДнейЧасов, НачислениеПоБольничномуЛистуНачисления.ОтработаноЧасовПоПятидневке, НачислениеПоБольничномуЛистуНачисления.УдалитьПриказ, НачислениеПоБольничномуЛистуНачисления.НормаЧасовПоПятидневке, НачислениеПоБольничномуЛистуНачисления.СторнируемыйДокумент, НачислениеПоБольничномуЛистуНачисления.ЧислоМесяцев, НачислениеПоБольничномуЛистуНачисления.РасчетнаяБазаЗаЕдиницуНормыВремени ИЗ Документ.НачислениеПоБольничномуЛисту.Начисления КАК НачислениеПоБольничномуЛистуНачисления |
|||
11
rphosts
21.03.13
✎
10:17
|
+(10)
ГДЕ НачислениеПоБольничномуЛисту.Проведен И НачислениеПоБольничномуЛисту.Дата МЕЖДУ &ДатаН И &ДатаК"; |
|||
12
Milli
21.03.13
✎
10:51
|
(10) А при выборке результатов запроса как теперь получить данные из таблицы?
Просто, к примеру, Док.Сотрудник не пропишешь же. |
|||
13
zak555
21.03.13
✎
10:59
|
(12)
НачислениеПоБольничномуЛистуНачисления.Ссылка = &Ссылка |
|||
14
Milli
21.03.13
✎
11:02
|
(13)
Выдается ошибка: {Форма.Форма.Форма(191)}: Ошибка при вызове метода контекста (Выполнить) Результат = Запрос.Выполнить(); по причине: {(2, 49)}: Не задано значение параметра "Ссылка" НачислениеПоБольничномуЛистуНачисления.Ссылка = <<?>>&Ссылка, |
|||
15
salvator
21.03.13
✎
11:06
|
(14) Укажи условия из начального своего запроса
|ГДЕ | НачислениеПоБольничномуЛистуНачисления.Ссылка.Проведен | И НачислениеПоБольничномуЛистуНачисления.Ссылка.Дата МЕЖДУ &ДатаН И &ДатаК"; |
|||
16
Milli
21.03.13
✎
11:32
|
(15) Не помогает. Я уже и с первоначальными условиями и без них пробовала делать, с " = &Ссылка" и без нее, все бесполезно. Либо выдается ошибка как в (14), либо не показывает данные из таблицы при получении результатов.
|
|||
17
salvator
21.03.13
✎
11:34
|
(16) Скинь сюда код полностью
|
|||
18
Конфигуратор1с
21.03.13
✎
11:39
|
(0) Типичная ошибка 7шника:
Запрос.УстановитьПараметр("ДатаН", ЭлементыФормы.НачПериода.Значение); Запрос.УстановитьПараметр("ДатаК", ЭлементыФормы.КонПериода.Значение); Вместо этого можно написать В 8ке, в отличии от 7ки, дата содержит и время. То есть указываете дату 01.03.2012, это означает что он возьмет Вам с 01.03.2012 00 00 00 по 01.03.2012 00 00 00, таким образом если документ проведен в 01.03.2012 00 00 01, то он в выборку не попадет. Поэтому лучше написать: Запрос.УстановитьПараметр("ДатаН", Началодня(ЭлементыФормы.НачПериода.Значение)); Запрос.УстановитьПараметр("ДатаК", КонецДня(ЭлементыФормы.КонПериода.Значение)); тогда он выберет Вам с 01.03.2012 00 00 00 по 01.03.2012 23 59 59 то есть все документы за день |
|||
19
Milli
21.03.13
✎
11:44
|
(17)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ |НачислениеПоБольничномуЛистуНачисления.Ссылка, |НачислениеПоБольничномуЛистуНачисления.НомерСтроки, |НачислениеПоБольничномуЛистуНачисления.ВидРасчета, |НачислениеПоБольничномуЛистуНачисления.ДатаНачала, |НачислениеПоБольничномуЛистуНачисления.ДатаОкончания, |НачислениеПоБольничномуЛистуНачисления.Показатель1, |НачислениеПоБольничномуЛистуНачисления.Показатель2, |НачислениеПоБольничномуЛистуНачисления.Показатель3, |НачислениеПоБольничномуЛистуНачисления.Показатель4, |НачислениеПоБольничномуЛистуНачисления.Показатель5, |НачислениеПоБольничномуЛистуНачисления.Показатель6, |НачислениеПоБольничномуЛистуНачисления.Результат, |НачислениеПоБольничномуЛистуНачисления.ДополнительныйРезультат, |НачислениеПоБольничномуЛистуНачисления.ПодразделениеОрганизации, |НачислениеПоБольничномуЛистуНачисления.НормаДней, |НачислениеПоБольничномуЛистуНачисления.НормаЧасов, |НачислениеПоБольничномуЛистуНачисления.НормаДнейПоПятидневке, |НачислениеПоБольничномуЛистуНачисления.ОтработаноДней, |НачислениеПоБольничномуЛистуНачисления.ОтработаноЧасов, |НачислениеПоБольничномуЛистуНачисления.ОтработаноДнейПоПятидневке, |НачислениеПоБольничномуЛистуНачисления.ПериодРасчетаСреднегоЗаработкаНачало, |НачислениеПоБольничномуЛистуНачисления.ПериодРасчетаСреднегоЗаработкаОкончание, |НачислениеПоБольничномуЛистуНачисления.ДополнительныеДанные, |НачислениеПоБольничномуЛистуНачисления.ДатаНачалаСобытия, |НачислениеПоБольничномуЛистуНачисления.Сторно, |НачислениеПоБольничномуЛистуНачисления.Авторасчет, |НачислениеПоБольничномуЛистуНачисления.Сотрудник, |НачислениеПоБольничномуЛистуНачисления.ОплаченоДнейЧасов, |НачислениеПоБольничномуЛистуНачисления.ОтработаноЧасовПоПятидневке, //|НачислениеПоБольничномуЛистуНачисления.УдалитьПриказ, |НачислениеПоБольничномуЛистуНачисления.НормаЧасовПоПятидневке, |НачислениеПоБольничномуЛистуНачисления.СторнируемыйДокумент, |НачислениеПоБольничномуЛистуНачисления.ЧислоМесяцев, |НачислениеПоБольничномуЛистуНачисления.РасчетнаяБазаЗаЕдиницуНормыВремени |ИЗ |Документ.НачислениеПоБольничномуЛисту.Начисления КАК НачислениеПоБольничномуЛистуНачисления |ГДЕ |НачислениеПоБольничномуЛистуНачисления.Ссылка.Проведен |И НачислениеПоБольничномуЛистуНачисления.Ссылка.Дата МЕЖДУ &ДатаН И &ДатаК"; Запрос.УстановитьПараметр("ДатаН", Началодня(ЭлементыФормы.НачПериода.Значение)); Запрос.УстановитьПараметр("ДатаК", КонецДня(ЭлементыФормы.КонПериода.Значение)); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Док = Выборка.Ссылка.ПолучитьОбъект(); КонецЦикла; (18) Документы в выборку попадают. Не могу получить данные из таблицы. |
|||
20
salvator
21.03.13
✎
11:48
|
Пока Выборка.Следующий() Цикл
Сообщить(Выборка.Сотрудник); // и т.д. КонецЦикла; Что выводит? В выборке уже есть и ссылка и строки ТЧ. Зачем объект получать? |
|||
21
Конфигуратор1с
21.03.13
✎
11:48
|
(19) Если Вам для чтения, то так и пишете
Выборка.Сотрудник |
|||
22
Конфигуратор1с
21.03.13
✎
11:49
|
(19) В 8ке делится понятие ссылка и объект. Если Вам необходимы данные для чтения или заполнения чего нибудь, то берете ссылку. Если Вам необходимо изменить сам документ, то тогда получаете объект.
|
|||
23
Milli
21.03.13
✎
11:53
|
Все работает. Это я немного тупанула.
Вместо Выборка.Сотрудник писала Док.Сотрудник. Спасибки за подсказку! :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |