|
Не берет все значения из масива значений. | ☑ | ||
---|---|---|---|---|
0
AlekseiJa
12.05.15
✎
06:59
|
Добрый день. Есть запрос на формирования остатков по счетам приведеным в массиве:
[code] Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ КАК Учреждение, | ЕПСБУОстатки.Счет КАК Счет, | ЕПСБУОстатки.КВД, | ЕПСБУОстатки.КБК, | ЕПСБУОстатки.Субконто2 КАК Номенклатура, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ КАК МОЛ, | ЕПСБУОстатки.СуммаОстаток КАК Сумма, | ЕПСБУОстатки.КоличествоОстаток КАК Количество, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.Субконто3 |ПОМЕСТИТЬ Данные |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В ИЕРАРХИИ (&СчетЗабалансовыхЗапасов) | И (&ОграниченийНаСписокСчетовНет | ИЛИ Счет В (&СписокСчетов)), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.Номенклатура) КАК ЕПСБУОстатки | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ, | ЕПСБУОстатки.Счет, | ЕПСБУОстатки.КВД, | ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто2 КАК Справочник.ОсновныеСредства).КБК, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто2 ССЫЛКА Справочник.ОсновныеСредства | ТОГДА ЕПСБУОстатки.Субконто2 | КОНЕЦ, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ, | ЕПСБУОстатки.СуммаОстаток, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.Субконто3 |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В ИЕРАРХИИ (&СчетЗабалансовыхЗапасов) | И (&ОграниченийНаСписокСчетовНет | ИЛИ Счет В (&СписокСчетов)), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.ОсновныеСредства) КАК ЕПСБУОстатки |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА Данные.Субконто3.Подразделение | ИНАЧЕ &Учреждение | КОНЕЦ КАК Учреждение, | Данные.Счет КАК Счет, | Данные.Номенклатура КАК Номенклатура, | Данные.КВД, | Данные.КБК, | Данные.ЕдиницаИзмерения, | Данные.Сумма КАК Сумма, | ЕСТЬNULL(Данные.МОЛ, """") КАК МОЛ, | ЕСТЬNULL(Данные.Количество, 0) КАК Количество, | Данные.КоличествоОстаток, | Данные.Субконто3 |ИЗ | Данные КАК Данные |ГДЕ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА Данные.Субконто3.Подразделение В ИЕРАРХИИ (&СписокПодразделений) | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ | ИНАЧЕ ИСТИНА | КОНЕЦ | |УПОРЯДОЧИТЬ ПО | Счет, | Номенклатура, | МОЛ |АВТОУПОРЯДОЧИВАНИЕ"; [/code] Данные формируются почему то не по всем счетам приведеным в массиве: [code] СчетЗабалансовыхЗапасов = Новый Массив; СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ИмуществоВПользовании); //01 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.МЦнаХранении); //02 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ЭкспериментальныеУстройства); //13 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ОСдо3000рублейВЭксплуатации); //21 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.МЦПолученныеПоЦС); //22 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ЗапчастиКТранспорту); //09 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ИмуществоПереданноеВАренду); //25 [/code] Часности не формируются данные по счету 21.38. Хотя остатки по оборотне есть. Пробовал указать напрямую счет 21.38, данные не сформировались. Подскажите где я сделал ошибку? |
|||
1
Evil-Wisp
12.05.15
✎
07:16
|
Покажи значения остальных параметоров
|
|||
2
Jonny_Khomich
12.05.15
✎
07:27
|
не тот массив в параметр запросу даёшь. Как он может не все значения взять?
|
|||
3
rphosts
12.05.15
✎
07:30
|
(0) чисто для очистки совести: счёт 21.38 не чисто оборотный?
и ещё СписокСчетов - что в нём? а чему = ОграниченийНаСписокСчетовНет? |
|||
4
AlekseiJa
12.05.15
✎
07:43
|
СчетЗабалансовыхЗапасов = Новый Массив;
СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ИмуществоВПользовании); //01 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.МЦнаХранении); //02 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ЭкспериментальныеУстройства); //13 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ОСдо3000рублейВЭксплуатации); //21 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.МЦПолученныеПоЦС); //22 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ЗапчастиКТранспорту); //09 СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ИмуществоПереданноеВАренду); //25 Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ КАК Учреждение, | ЕПСБУОстатки.Счет КАК Счет, | ЕПСБУОстатки.КВД, | ЕПСБУОстатки.КБК, | ЕПСБУОстатки.Субконто2 КАК Номенклатура, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ КАК МОЛ, | ЕПСБУОстатки.СуммаОстаток КАК Сумма, | ЕПСБУОстатки.КоличествоОстаток КАК Количество, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.Субконто3 |ПОМЕСТИТЬ Данные |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В ИЕРАРХИИ (&СчетЗабалансовыхЗапасов) | И (&ОграниченийНаСписокСчетовНет | ИЛИ Счет В (&СписокСчетов)), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.Номенклатура) КАК ЕПСБУОстатки | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ, | ЕПСБУОстатки.Счет, | ЕПСБУОстатки.КВД, | ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто2 КАК Справочник.ОсновныеСредства).КБК, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто2 ССЫЛКА Справочник.ОсновныеСредства | ТОГДА ЕПСБУОстатки.Субконто2 | КОНЕЦ, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ, | ЕПСБУОстатки.СуммаОстаток, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.КоличествоОстаток, | ЕПСБУОстатки.Субконто3 |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В ИЕРАРХИИ (&СчетЗабалансовыхЗапасов) | И (&ОграниченийНаСписокСчетовНет | ИЛИ Счет В (&СписокСчетов)), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.ОсновныеСредства) КАК ЕПСБУОстатки |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА Данные.Субконто3.Подразделение | ИНАЧЕ &Учреждение | КОНЕЦ КАК Учреждение, | Данные.Счет КАК Счет, | Данные.Номенклатура КАК Номенклатура, | Данные.КВД, | Данные.КБК, | Данные.ЕдиницаИзмерения, | Данные.Сумма КАК Сумма, | ЕСТЬNULL(Данные.МОЛ, """") КАК МОЛ, | ЕСТЬNULL(Данные.Количество, 0) КАК Количество, | Данные.КоличествоОстаток, | Данные.Субконто3 |ИЗ | Данные КАК Данные |ГДЕ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА Данные.Субконто3.Подразделение В ИЕРАРХИИ (&СписокПодразделений) | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ | ИНАЧЕ ИСТИНА | КОНЕЦ | |УПОРЯДОЧИТЬ ПО | Счет, | Номенклатура, | МОЛ |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("ДатаОстатков", ДатаОстатков); Запрос.УстановитьПараметр("Учреждение", Учреждение); Запрос.УстановитьПараметр("КВД", КВДПоУмолчанию); Запрос.УстановитьПараметр("СчетЗабалансовыхЗапасов", СчетЗабалансовыхЗапасов); Запрос.УстановитьПараметр("ОграниченийНаСписокСчетовНет", ?(ОграничениеНаСписокСчетов.Количество()>0, Ложь, Истина)); Запрос.УстановитьПараметр("СписокСчетов", ОграничениеНаСписокСчетов.ВыгрузитьКолонку("Счет")); Запрос.УстановитьПараметр("ВыгружатьПоПодразделениям", ВыгружатьПоПодразделениям); Запрос.УстановитьПараметр("СписокПодразделений", ВыборПодразделений.ВыгрузитьКолонку("Подразделение")); |
|||
5
AlekseiJa
12.05.15
✎
08:11
|
данные по счетам 21.1, 22.1 и другим формируются, а менно по 21.38, 21.34 нет
|
|||
6
Evil-Wisp
12.05.15
✎
08:17
|
&СписокСчетов пустой?
|
|||
7
rphosts
12.05.15
✎
08:19
|
(5) повторю намёк: возможно ОграничениеНаСписокСчетов.ВыгрузитьКолонку("Счет") - не пустой, но 21.38 в нём нет.
потом, какая у 21.38 аналитика? Зачем параметр КВД? Если убрать условие на &Учреждение в выборке 21.38 не появится? |
|||
8
Evil-Wisp
12.05.15
✎
08:19
|
Проверь на всякий, что 21.38, 21.34 находятся в иерархии 21-го счета. Иногда бухи могут случайно их косячить. И что КВД тот, на котором есть остатки.
|
|||
9
Evil-Wisp
12.05.15
✎
08:23
|
Еще может на 21.38, 21.34 аналитику местами поменяли. У тебя там проверка "Субконто2 ССЫЛКА Справочник.ОсновныеСредства"
|
|||
10
AlekseiJa
12.05.15
✎
09:39
|
Пробовал так сделать, данных тоже нету
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ КАК Учреждение, | ЕПСБУОстатки.Счет КАК Счет, | ЕПСБУОстатки.КВД, | ЕПСБУОстатки.КБК, | ЕПСБУОстатки.Субконто2 КАК Номенклатура, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ КАК МОЛ, | ЕПСБУОстатки.СуммаОстаток КАК Сумма, | ЕПСБУОстатки.КоличествоОстаток КАК Количество |ПОМЕСТИТЬ Данные |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В (&СчетЗабалансовыхЗапасов), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.Номенклатура) КАК ЕПСБУОстатки | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ВЫБОР | КОГДА &ВыгружатьПоПодразделениям | ТОГДА ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель <> ЗНАЧЕНИЕ(Справочник.Подразделения.ПустаяСсылка) | ТОГДА ЕПСБУОстатки.Субконто3.Подразделение.Родитель | ИНАЧЕ ЕПСБУОстатки.Субконто3.Подразделение | КОНЕЦ | ИНАЧЕ &Учреждение | КОНЕЦ, | ЕПСБУОстатки.Счет, | ЕПСБУОстатки.КВД, | ВЫРАЗИТЬ(ЕПСБУОстатки.Субконто2 КАК Справочник.ОсновныеСредства).КБК, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто2 ССЫЛКА Справочник.ОсновныеСредства | ТОГДА ЕПСБУОстатки.Субконто2 | КОНЕЦ, | ЕПСБУОстатки.Субконто2.ЕдиницаИзмерения, | ВЫБОР | КОГДА ЕПСБУОстатки.Субконто3 ССЫЛКА Справочник.ЦМО | ТОГДА ЕПСБУОстатки.Субконто3 | КОНЕЦ, | ЕПСБУОстатки.СуммаОстаток, | ЕПСБУОстатки.КоличествоОстаток |ИЗ | РегистрБухгалтерии.ЕПСБУ.Остатки( | &ДатаОстатков, | Счет В (&СчетЗабалансовыхЗапасов), | , | Учреждение = &Учреждение | И Субконто2 ССЫЛКА Справочник.ОсновныеСредства) КАК ЕПСБУОстатки |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Данные.Учреждение КАК Учреждение, | Данные.Счет КАК Счет, | Данные.КВД, | Данные.КБК, | Данные.Номенклатура, | Данные.ЕдиницаИзмерения, | Данные.МОЛ, | Данные.Сумма КАК Сумма, | Данные.Количество КАК Количество |ИЗ | Данные КАК Данные |ИТОГИ | СУММА(Сумма), | СУММА(Количество) |ПО | Учреждение, | Счет |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("ДатаОстатков", ДатаОстатков); Запрос.УстановитьПараметр("Учреждение", Организация); Запрос.УстановитьПараметр("КВД", КВДПоУмолчанию); СчетЗабалансовыхЗапасов = Новый Массив; СчетЗабалансовыхЗапасов.Добавить(ПланыСчетов.ЕПСБУ.ПрочиеОсновныеСредства_ИДИ); //21.38 Запрос.УстановитьПараметр("СчетЗабалансовыхЗапасов", СчетЗабалансовыхЗапасов); Запрос.УстановитьПараметр("ВыгружатьПоПодразделениям", ВыгружатьПоПодразделениям); Результат = Запрос.Выполнить(); ЭлементыФормы.ТаблицаРезультата.Колонки.Очистить(); РезультатДерево = Результат.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); ЭлементыФормы.ТаблицаРезультата.Данные = "РезультатДерево"; ЭлементыФормы.ТаблицаРезультата.НачальноеОтображениеДерева = НачальноеОтображениеДерева.РаскрыватьВсеУровни; ЭлементыФормы.ТаблицаРезультата.СоздатьКолонки(); |
|||
11
DJ Anthon
12.05.15
✎
10:51
|
сделай самый простейший запрос и постепенно усложняй, и найдешь
|
|||
12
AlekseiJa
12.05.15
✎
10:57
|
Так тут запрос не сложный. для отбора указал уже именно счет 21.38
|
|||
13
AlekseiJa
12.05.15
✎
11:16
|
(9) Данные по этим счетам действительно на Субконто1, подскажите как мне сделать что бы и Субконто1 и Субконто2 было в запросе?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |