Имя: Пароль:
1C
1С v8
Можно ли на клиенте программно получить список предопределенных элементов спр.?
0 Rounder
 
17.04.13
10:16
Можно ли как-нибудь на клиенте программно получить список предопределенных элементов справочника?
1 Rounder
 
17.04.13
10:17
Полагаю что нет - но мало ли не в курсе чего-нить.
2 Naumov
 
17.04.13
10:21
лично я не против
3 Wobland
 
17.04.13
10:21
конечно можно. берёшь сервер, просишь его вернуть всё, что нужно
4 Infsams654
 
17.04.13
10:25
ВЫБРАТЬ  * Справочник... ИЗ
Справочник.... КАК ... ГДЕ ...Предопределенный не предлагать ?
5 Rounder
 
17.04.13
10:25
Ну я понимаю - что сегодня не понедельник и уже можно шутить :)
Особенно умиляют комменты типа (2) - нечего сказать по существу - проходи мимо.

(3) (4) Именно на клиенте. Без обращения к серверу.
6 Wobland
 
17.04.13
10:26
(5) аллах запрещает?
7 Wobland
 
17.04.13
10:27
вот тебе кусок СП, чтоб вопросов больше не задавал
Доступность:

Сервер, толстый клиент, внешнее соединение.
8 Sammo
 
17.04.13
10:28
(5) В каком месте в 4 обращение к серверу? Или под сервером понимается база данных?
9 Rounder
 
17.04.13
10:28
Да елки ж палки. Да просто подтвердите или опровергните мое понимание: Нельзя без обращения к серверу получить программно список предопределенных элементов справочника.

Не было бы сомнений по этому поводу не существуй возможности обращаться к предопределенному значению на клиенте через ПредопределенноеЗначение()

А так есть сомнения - вот и прошу их развеять.
10 mistеr
 
17.04.13
10:30
(9) СП что-то скрывает, как обычно, да? :)
11 Rounder
 
17.04.13
10:30
(8) Увидел Выбрать и сразу идентифицировал с запросом и сервером. Сейчас посмотрю.
12 cw014
 
17.04.13
10:32
(9) Друг, а чего ты истеришь? Ты задаешь примерно такой вопрос: "Как получить таблицу базы данных, но без обращения к базе данных?"

По сути "Список предопределенных элементов" - это список ссылок из таблицы БД, на клиенте, как ты понимаешь, такое не получить.

А то что клиент дает возможность через встроенную функцию ПредопределенноеЗначение получить такой элемент - ты посмотри какой вызов к серверу при этом идет
13 mistеr
 
17.04.13
10:32
(9) Что заставляет тебя думать, что ПредопределенноеЗначение() к серверу не обращается? Хотя в СП русским языком написано обратное.
14 Жан Пердежон
 
17.04.13
10:32
(11) это развод)
даже
ПредопределенноеЗначение() требует обращение к серверу, если значение еще не кэшировано
15 Rounder
 
17.04.13
10:34
СП я читал - Результат выполнения кэшируется при первом обращении до изменения конфигурации или версии платформы.

Меня это утроило бы.
16 Rounder
 
17.04.13
10:36
Всем спасибо. Мои сомнения развеяны.
Просто никогда не понимал высокомерных и снисходительных высказываний на этом форуме (относится далеко не ко всем - так что без обид). Да - не все гении, да - иногда чтобы не городить огород неправильно при недопонимании СП лучше уточнить - не так ли?
17 Infsams654
 
17.04.13
10:37
(9) ПредопределенноеЗначение - ежели заранее знаешь, что оно есть (ну или через попытку, предполагая, что может быть). В (0) вопрос "получить список предопределенных элементов справочника"
18 mistеr
 
17.04.13
10:38
(15) >СП я читал - Результат выполнения кэшируется
А строчкой выше - нет?
19 mistеr
 
17.04.13
10:40
(16) Все так, без обид.
Но если интересно, откуда высокомерие и снисходительность, могу объяснить.
20 Rounder
 
17.04.13
10:41
(18) Какую именно из:

Возвращает ссылку на предопределенный элемент из предопределенных данных, прикладных перечислений и точек маршрута бизнес-процессов, а также значения системных перечислений.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Примечание:

Результат выполнения кэшируется при первом обращении до изменения конфигурации или версии платформы.
21 Rounder
 
17.04.13
10:42
(19) И да - объясни о высокомерии и снисходительности. Очень интересно.
22 Infsams654
 
17.04.13
10:42
(17) + Сорри, попытку для ПредопределенноеЗначение не надо. Вот для прямого Справочник.<>.<имя предопределенного>, то да
23 zladenuw
 
17.04.13
10:48
(20) так там же 1 раз пошел на сервер. и все. потом с клиента тянит.
24 Rounder
 
17.04.13
10:49
(20) Ну так и я про это же. И искал подобное для получения списка элементов.
25 Rounder
 
17.04.13
10:50
(24) это ответ на (23)
26 mistеr
 
17.04.13
11:03
(20) Старый релиз? У меня:
--------------------------------
Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Вызов метода выполняет обращение к серверу.

Примечание:
...
--------------------------------
27 Rounder
 
17.04.13
11:05
(26) 1С:Предприятие 8.2 (8.2.15.294)

Так это понятно - но единожны вызвав сервер до следующего изменения конфы или версии платформы - в кэше. Т.е. фактически постоянно на клиенте.
28 mistеr
 
17.04.13
11:20
(27) Все оказывается еще интереснее. Это у меня старый релиз :) Проверил сейчас на разных.

13 Релиз
----------
"Вызов метода выполняет обращение к серверу" - и все. О кешировании ни слова.

14 Релиз
----------
Добавили "Примечание" о кешировании.

16 Релиз (по твоей цитите видимо с 15-го)
--------------
Убрали строчку "Вызов метода выполняет обращение к серверу". Теперь, как я понимаю, не каждый вызов обращается к серверу.

Что ж, работа желтых по оптимизации налицо :)
29 Rounder
 
17.04.13
11:37
(28) Так что там по поводу (19)? По снисходительности и высокомерию...
30 mistеr
 
17.04.13
12:21
(21) Если посмотреть в корень, почему программист (не полный чайник) иногда тупит и не видит свои ошибки?

а) из-за невнимательности (прочитал справку по диагонали, не увидел засаду в своем коде, и т.д.)
б) из-за лени (не читал справку вообще; или имел с этим дело давно, лень освежить знания; лень погуглить непонятную ошибку; "нет времени разбираться" это на самом деле оправдание лени)
в) из-за завышенного ЧСВ, уверенности в своей непогрешимости (бывает либо у непроходимых ламеров, либо у спецов очень высокого уровня)
г) проблема реально сложная, нигде не описанная и никому не известная (например свежий баг в платформе)

Последние два случая в жизни очень редкие, можно не рассматривать. В основном встречаются первый или второй, или оба вместе.

Если имеем первый случай и чел адекватный, то после первых намеков на то, что ответ на его вопрос очевиден (возможно в шутливой форме "разрешаю", "продам СП" и т.д.) он пересмотрит внимательно код, перечитает СП и ответ увидит.

Если дело в лени, то это проблема посерьезнее. Потому что лень очень сильна; это, как известно, неотъемлемое (и как считают некоторые, необходимое) качество программиста. Тем более одинесника :). Чтобы ее преодолеть, нужен весьма сильный мотиватор. И таким мотиватором становится, как ни странно, задетое острыми шутками или высокомерным отношением самолюбие. Человек начинает доказывать, что он прав, что он не ламер, что его не имеют права тыкать носом в СП, и т.д. И в процессе находит ответ САМ, что важно.

Может быть конечно и другое разрешение ситуации. Найдется кто-то очень добрый (и не занятый делом :), разжует все в мелкую кашицу, процитирует нужное место в доке или в Вики, напишет рабочий код. Спрашивающий получит и свой ответ, и порцию положительных эмоций, и время сэкономит (за счет кого-то). Но уроков для себя не извлечет. И в следующий раз (может и через пять минут) ситуация повторится один-в-один.

Таким образом, в первом сценарии, несмотря на то, что эксплуатируются не самые лучшие стороны человеческой натуры (у всех участников), но конечный результат положительный: в следующий раз человек разберется сам, и до темы на форуме дело даже не дойдет.

Вот такая диалектика.
31 Wobland
 
17.04.13
12:22
(30) в книгу знаний!