• Codeby web-security - Курс "Тестирование Веб-Приложений на проникновение с нуля" от команды codeby. Общая теория, подготовка рабочего окружения, пассивный фазинг и фингерпринт, Активный фаззинг, Уязвимости, Пост-эксплуатация, Инструментальные средства, Social Engeneering и многое другое. Подробнее ...

  • Мобильный клиент нашего форума для Android гаджетов доступен в Google Play Market по этой ссылке. Клиент можно скачать с нашего форума по этой ссылке. Последняя версия МК в нашем телеграм канале вот здесь

Как загрузить справочник в список значений

  • Автор темы Maid
  • Дата начала
Статус
Закрыто для дальнейших ответов.
M

Maid

#1
Помогите, пожалуйста, начинающему программисту, как загрузить элементы справочника в поле со списком на форме документа.
 
J

jj_mail

#2
Спр = СоздатьОбъект("Справочник........");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент() = 1 Цикл
спис.ДобавитьЗначение(Спр.ТекущийЭлемент);
КонецЦикла;
 
L
#3
Для: jj_mail

<!--QuoteBegin-jj_mail+16:04:2007, 14:31 -->
<span class="vbquote">(jj_mail @ 16:04:2007, 14:31 )</span><!--QuoteEBegin-->Спр.ТекущийЭлемент
[snapback]62557" rel="nofollow" target="_blank[/snapback]​
[/quote]

Спр.ТекущийЭлемент();
 
G

Guest

#6
Не слушай никого - прямая выборка из справочника - это возмутительно медленный способ :) . Особенно на SQL заметно будет.
Правильнее вытянуть данные "черным запросом", а запрос выгрузить в таблицу значений.
 
L
#7
Для: Рыбка

Проверил:

ПЕРЕБОР
---Всего: 3508 элементов
---Время: 260 мсек.

ЗАПРОС
---Всего: 3508 элементов
---Время: 949 мсек.

Запрос делался по справочнику, выгружался в ТаблЗн, а из ТаблЗн выгружался в СписЗн (т.к. в топике именно туда надо выгрузить справочник).

На СКУЛ не проверял, но ради интереса сегодня потестирую.
 
L
#8
Вот еще результаты (разные кфг., все dbf):

ПЕРЕБОР
---Всего: 6696 элементов
---Время: 928 мсек.
ЗАПРОС
---Всего: 6696 элементов
---Время: 2093 мсек.

ПЕРЕБОР
---Всего: 5594 элементов
---Время: 852 мсек.
ЗАПРОС
---Всего: 5594 элементов
---Время: 3146 мсек.

Итог: на dbf простой перебор ВСЕГДА быстрее простого запроса (а что самое главное - проще).
Замер производительности делался с помощью разницы между _GetPerformanceCounter() до и после обработки.

З.Ы. Замер в предыдущем посте можно считать "нечэстным" т.к. в той кфг используется turboBL.dll
В остальных 2-х никаких ВК не используется.
 
G

Guest

#10
Про DBF - в отношении прямой выборки - была неправа - действительно быстрее, независимо от размера справочника (по крайней мере до 100 тыс).
на SQL - использование запросов - это рекомендация от 1С. К меня при тестировании скорость запроса превышает скорость прямой выборки примерно в 5.5 раз.
 
L
#11
Для: Ром@

Можно, но лучше спросить у гугля.

Кратко - ВК для ускорения некоторых процессов в обход методов 1С.
Ищите, качайте, там есть пример с замерами.
 
Статус
Закрыто для дальнейших ответов.
Вверх Снизу