|
v7: Может ли Язык запросов полноценно заменять БухЗапросы ? | ☑ | ||
---|---|---|---|---|
0
1CLOH
18.10.11
✎
13:49
|
Я новичок, потому просьба сильно не пинать.
Может ли Язык запросов полноценно заменить бухзапросы в бухитогах ? Например в бухзапросах вроде как нет возможности упорядочивания по реквизиту субконто. Но в свою очередь в Языке запросов не нашел функционала бухзапросов по оборотам, СНД, СКД и т.п. |
|||
1
Темный Эльф
18.10.11
✎
13:50
|
1. Есть возможность.
2. Ищи лучше. |
|||
2
smitru
18.10.11
✎
13:50
|
Ты про 7-ку? В 7-ке "родные запросы" вещь довольно глюкавая, поэтому они заменить бухитоги не могут..
|
|||
3
1CLOH
18.10.11
✎
13:52
|
Да, я про 7-ку
|
|||
4
1CLOH
18.10.11
✎
13:55
|
Вот пример бухзапроса, отбирающего партии, имеющие остатки на начало периода:
Ит2 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит2.ИспользоватьСубконто(ВидыСубконто.Партии,, 1); Ит2.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ЗаполнитьСклад(1), 2); Ит2.ИспользоватьСубконто(ВидыСубконто.ТМЦ, ТоварБезНДС, 2); Ит2.ВыполнитьЗапрос(ДатаПН,,"281",,,,,); Ит2.ВыбратьСубконто(ВидыСубконто.Партии); Пока Ит2.ПолучитьСубконто() = 1 Цикл Сообщить(СокрП(Ит2.Субконто()) + " --- " + Ит2.СНД(3)); КонецЦикла; Вопрос. Как упорядочить данные бухзапроса по реквизиту справочника партий: "Партии.Дата_прихода" ? |
|||
5
1CLOH
18.10.11
✎
13:56
|
Естественно упорядочить запросом, без костылей в виде выгрузки данных в таблицу значений с последующим упорядочиванием...
|
|||
6
AeDen
18.10.11
✎
13:56
|
1с++ + быстрые итоги могут не то, что заменить, позволят вообще забыть про бухитоги как таковые.
|
|||
7
Темный Эльф
18.10.11
✎
13:57
|
(4)Смотри описание метода ВыбратьСубконто, шестой параметр.
|
|||
8
viktor_vv
18.10.11
✎
13:57
|
Я ж тебе в твоей прошлой теме написал.
В зависимости от FIFO или LIFO ЗначениеДляОбратногоПорядка = 0 или 1 ; Ит2.ВыбратьСубконто(ВидыСубконто.Партии,,,,,"Дата_прих",ЗначениеДляОбратногоПорядка); |
|||
9
viktor_vv
18.10.11
✎
13:58
|
Ты походу куда-то торопишься.
|
|||
10
1CLOH
18.10.11
✎
13:59
|
(6) А в SQL можно вообще забить на Языки запросов 1С... Это я к тому что обсуждаем "нативный" инструментарий.
(4) Ок, пасиба, (8) уже помог. (9) Ну, учусь, пока есть свободное время :-) В отдельную тему написал из-за принятых на форумах правил "отдельный вопрос-отдельня тема" |
|||
11
1CLOH
18.10.11
✎
14:12
|
И еще вопрос по теме.
Как отобрать по конкретному значению типа реквизита субконто. Например нужно отобрать все партии с определенной приходной ценой. На: Ит2.ИспользоватьСубконто(ВидыСубконто.Партии.Цена_Прих, ЦенаОтбора, , 2); Ругается, что поле агрегатного объекта не обнаружено, хотя такой реквизит ("Цена_Прих") в справочнике партий есть. |
|||
12
МихаилМ
18.10.11
✎
14:13
|
не может . 1с так и не исправила ошибки
в 27 релизе только в бух итогах |
|||
13
AeDen
18.10.11
✎
14:19
|
(1) 1. Да? Как?
(11) никак. |
|||
14
пипец
18.10.11
✎
14:19
|
(11) бухгалтерские итоги - перечитать раз несколько ...
|
|||
15
AeDen
18.10.11
✎
14:20
|
только если в список значений затолкать все элементы справочника партий с заданной приходной ценой, и использовать этот список в качестве параметра отбора.
|
|||
16
Темный Эльф
18.10.11
✎
14:29
|
(13.1)См. (8), например.
(11)Этого уже нельзя. |
|||
17
1CLOH
18.10.11
✎
16:14
|
Хорошо.
Как этот вариант с использованием бухзапросов реализовать путем Языка запросов, только уже с фильтрацией по конкретному значению реквизита ? Исходный вариант через бухзапросы: Ит2 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит2.ИспользоватьСубконто(ВидыСубконто.Партии,, 1); Ит2.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ЗаполнитьСклад(1), 2); Ит2.ИспользоватьСубконто(ВидыСубконто.ТМЦ, ТоварБезНДС, 2); Ит2.ВыполнитьЗапрос(ДатаПН,,"281",,,,,); Ит2.ВыбратьСубконто(ВидыСубконто.Партии); Пока Ит2.ПолучитьСубконто() = 1 Цикл Сообщить(СокрП(Ит2.Субконто()) + " --- " + Ит2.СНД(3)); КонецЦикла; |
|||
18
viktor_vv
18.10.11
✎
16:20
|
Читай (15). Не нужен тебе Язык запросов.
|
|||
19
1CLOH
18.10.11
✎
16:26
|
(18) Понял, ушел ваять...
|
|||
20
Сияющий Асинхраль
18.10.11
✎
16:33
|
Вариант (15) тут не прокатит, поскольку в семерочных бух итогах не поддерживаются списки для отборов по кор субконто, единственный вариант фильтровать при переборе, либо действительно черным запросом, но черный запрос крайне не рекомендую, штука вполне рабочая, но крайне тормозная, даже обычная фильтрация при переборе делает по скорости черный запрос...
|
|||
21
Сияющий Асинхраль
18.10.11
✎
16:35
|
Торможу, нет там кор субконто, тогда действительно (15)
|
|||
22
zak555
18.10.11
✎
16:43
|
тип Партий что это ?
|
|||
23
1CLOH
18.10.11
✎
16:53
|
(22) Партии - это подчиненный справочник, имеет три реквизита: Док, Цена_прих, Дата_прих
|
|||
24
zak555
18.10.11
✎
18:58
|
(23) очень просто
в СЗ суёшь справочник Партий, с нужной твой сортировкой например, запросом далее делаешь следующие Ит2 = СоздатьОбъект("БухгалтерскиеИтоги"); Ит2.ИспользоватьСубконто(ВидыСубконто.Партии,, 1); Ит2.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ЗаполнитьСклад(1), 2); Ит2.ИспользоватьСубконто(ВидыСубконто.ТМЦ, ТоварБезНДС, 2); Ит2.ВыполнитьЗапрос(ДатаПН,,"281",,,,,); Ит2.ВыбратьСубконто(ВидыСубконто.Партии); ВсегоПартийВСЗ = СЗ.РазмерСписка(); Пока н = 1 по ВсегоПартийВСЗ Цикл Если Ит2.ПолучитьСубконто(1,, СЗ.ПолучитьЗначение(н)) = 0 Тогда Сообщить("нули тута"); Продолжить; КонецЕсли; Сообщить(СокрП(Ит2.Субконто()) + " --- " + Ит2.СНД(3)); КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |