|
v7: Количество документов найденных методом ВыбратьДокументы() | ☑ | ||
---|---|---|---|---|
0
Enlighted
03.05.17
✎
23:20
|
День добрый, подскажите пожалуйста есть ли возможность получить число найденных документов методом выбратьДокумент, или другим более подходящим способом?
А то сейчас стоит перебор всех найденных документов в цикле с определением типа документа и подсчётом по типам. |
|||
1
runoff_runoff
03.05.17
✎
23:22
|
ВыбратьДокументы открывает курсор.. а не получает в качестве результат набор строк..
|
|||
2
Enlighted
03.05.17
✎
23:26
|
Мне набор строк и не нужен, мне количество в выборке нужно. Тип документа я могу задать и в методе СоздатьОбъект()
ВыбратьДокументы(<?>,) Синтаксис: ВыбратьДокументы(<Дата1>,<Дата2>) Назначение: Открыть выборку документов в интервале дат. Возвращает: 1 - если действие выполнено и в выборке есть хотя бы один документ; 0 - если действие не выполнено или в выборке нет ни одного документа. По всей логике именно в этом методе формируется число найденных документов, так как он возвращает есть ли вообще соответствующие условиям поиска документы. Но если это не тот метод то возможно есть другой способ? |
|||
3
Смотрящий
03.05.17
✎
23:28
|
(2) Чорный запроs
|
|||
4
GreyK
03.05.17
✎
23:41
|
(0) Если уж процедура ВыбратьДокументы() выполнена, то сделать цикл со счетчиком документов не проблема, отработает намного быстрее.
|
|||
5
Злопчинский
04.05.17
✎
01:29
|
на клюшках все уже давно сделано - или на мисте в разделе программы "базопузомер" или вот сипатишненько, то чтон адо автору
http://catalog1c.ru/upload/iblock/b27/2.jpg |
|||
6
Злопчинский
04.05.17
✎
01:29
|
||||
7
Злопчинский
04.05.17
✎
01:30
|
||||
8
vcv
04.05.17
✎
05:19
|
> Мне набор строк и не нужен, мне количество в выборке нужно
Что бы посчитать количество в выборке, нужно сделать выборку всех строк. Это само по себе затратная операция. Вдобавок, если выборка вам сказала, сколько в ней строк, она обязана поддерживать целостность, что бы это количество строк за время обработки выборки не изменилось от действий других пользователей. Отсюда вытекает необходимость в табличной блокировке или реализации снапшотов или еще чего-то слишком умного для 1С. Поэтому всегда делается проще - открываем выборку и идём по таблице/индексу пока не упрёмся в конец. Не зная, сколько в выборке записей. Если вам это не подходит, используйте Запрос вместо ВыбратьДокументы, выгружайте результат запроса в таблицу значений и по ней уже хоть количество считайте, хоть ходите взад/вперёд... |
|||
9
пипец
04.05.17
✎
09:11
|
да уж ))) уже запросом люди не пользуются по видам документов
ЗЫ в ) |
|||
10
Enlighted
04.05.17
✎
21:20
|
(8) Благодарю, реализовал циклом. Просто подумал, может уже есть где в стандартных методах, чтобы лишний раз не изобретать велосипипед.
|
|||
11
vcv
05.05.17
✎
05:18
|
(10) Конечно есть в стандартных методах.
Период с НачДата по КонДата; ТекущийДокумент = Документ.Реализация.ТекущийДокумент; Функция ТекущийДокументСчётчик = Счётчик(ТекущийДокумент); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |