Имя: Пароль:
1C
1C 7.7
v7: Определение количества элементов
,
0 PZh
 
22.11.11
09:47
Как определить количество элементов в справочнике?
В скуле понятно, а как в DBF?
Просто пересчитать не предлагать.
1 filh
 
22.11.11
09:50
запросом?
2 povar
 
22.11.11
09:50
количествозаписей
3 mdocs
 
22.11.11
09:54
Максимальный номер можно посмотреть, если нумерация сквозная
4 Ёпрст
 
22.11.11
10:01
Так же как и в скуле.
5 PZh
 
22.11.11
10:26
(4)
Без использования 1Сpp, rainbow и прочего.
6 PZh
 
22.11.11
10:28
(2) т.е. нужно открыть файл справочника в объекте xbase?
7 Ёпрст
 
22.11.11
10:28
(5) тогда обычным чорным запросом.
8 Lexxxxx
 
22.11.11
10:36
(0)В скуле понятно, а как в DBF?
Просто пересчитать не предлагать.

Так же как и в скуле. А почему нельзя пересчитать?!
9 mdocs
 
22.11.11
11:24
Спр=СоздатьОбъект("Справочник.ХХХ");
Спр.ПорядокКодов(1);
Спр.ОбратныйПорядок(1);
Спр.ВыбратьЭлементы();
Спр.ПолучитьЭлемент();
Сообщить(Спр.Код);

Не пойдет?
10 Rie
 
22.11.11
11:26
(0) Нет, конечно.
11 Rie
 
22.11.11
11:26
(10)->(9)
12 mdocs
 
22.11.11
11:27
(11) С известной долей приближения +/- удаленные.
13 akaBrr
 
22.11.11
11:29
Функция глКоличествоЭлементовВСправочнике(ИмяСправочника) Экспорт
   
   Запрос = СоздатьОбъект("Запрос");

   Запрос.Выполнить("
   |ТекЭлемент = Справочник."+ИмяСправочника+".ТекущийЭлемент;
   |Функция Сч = Счётчик();");

   Возврат Запрос.Сч;
   
КонецФункции//глКоличествоЭлементовВСправочнике
14 Rie
 
22.11.11
11:30
(12) А также с префиксами кодов, с ручной правкой кода, с неуникальными кодами...
В общем, можно азартную игру делать - определять количество элементов методом из (9) и если совпало с истинным - выплачивать победителю ставку в 1000-кратном размере. Рулетка нервно курит за кулисами...
15 mdocs
 
22.11.11
11:34
(14) Да все понятно, просто быстрее, чем (13) и при обычных условиях (цифровые коды на автомате) работает примерно правильно.
16 Rie
 
22.11.11
11:39
(15) Ещё быстрее -

Сообщить("10715");

Но столь же неправильно.
Метод в (13) - IMHO, оптимален.
17 1Сергей
 
22.11.11
11:39
А что, традиционный китайский вопрос ещё не задавали?
18 Rie
 
22.11.11
11:41
(17) Иногда бывает полезно. "Базопузомер" не зря ведь существует.
19 miki
 
22.11.11
11:41
(15)ещё быстрее, если нет ограничений из (14) - ввести новый элемент в транзакции и откатить.
20 antoneus
 
22.11.11
11:41
(9)

Спр.ПолучитьЭлемент() - не нужно.
21 1Сергей
 
22.11.11
11:44
(18) в пазопузомере скорость не критична
22 akaBrr
 
22.11.11
11:46
(17) "очки, ннада?" - этот вопрос?
23 1Сергей
 
22.11.11
11:49
(22) нет. вопрос звучит так: "на ху я?"
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.