![]() |
![]() |
![]() |
|
Предопределенные элементы справочника Ø |
☑ | ||
---|---|---|---|---|
0
Дурочка 1С ®
20.12.06
✎
01:03
|
Мне нужны предопределенные элементы в справочнике. Т.е. я создаю их программно, мне нужно как-то программно их идентифицировать и не путать с пользовательскими.
Как? Мое решение (которое никто не хочет тестировать): Код из форм везде убираю, когда создаю календарь программно, то присваиваю коды с префиксом «Ф»: Ф001, Ф002 … В ПриОткрытии() ставлю ПрефиксАвтонумерации("Справочник.Д1СКалендари","П"); и считаю, что всегда отличу по коду предопределенные элементы от пользовательских. Есть другие решения? Очень хотелось бы послушать идеи потешающихся в http://www.kuban.ru/forum_new/forum9/files/280919.html |
|||
1
Programmer
20.12.06
✎
01:10
|
(0) вы уж определитесь с терминами - предопределенные или созданные прогрммно? имхо разные вещи
|
|||
2
Дурочка 1С ®
20.12.06
✎
01:12
|
Предопределенные элементы не могут быть созданы пользователем. На то они и предопределенные ...
|
|||
3
Programmer
20.12.06
✎
01:15
|
(2) предопределенные элементы не могут быть созданы программно, на то они и предопределенные. и вообще, не надоело изобретать велик? в снеговике это все реализовано.
|
|||
4
Дурочка 1С ®
20.12.06
✎
01:16
|
(3) Отвались ...
|
|||
5
Programmer
20.12.06
✎
01:17
|
(4) шо-шо? ты мене?
|
|||
6
MAXXL
20.12.06
✎
01:22
|
А реквизит со значеним 0/1 не катит?
|
|||
7
Тот кто не понял
20.12.06
✎
01:28
|
элементы в папку "Служебные"
|
|||
8
Дурочка 1С ®
20.12.06
✎
01:29
|
(6) Чтобы отличить пользовательский от предопределенного? Катит, катит ...
Осталось решить вопрос идентификации. Как этот реквизит поможет автору в http://www.kuban.ru/forum_new/forum9/files/280919.html ? |
|||
9
Дурочка 1С ®
20.12.06
✎
01:36
|
(7) А если ее переименуют, переместят элементы, напихают в нее пользовательских элементов?
Чем это решение отличается от (6)? Да еще гемороиться, чтобы не дать юзеру все запутать ... И, самое главное, как потом в этой папке найти где-что? |
|||
10
Тот кто не понял
20.12.06
✎
01:40
|
юзеры могут любую константу поменять в типовой, но не делают этого бездумно. объяснение - это метод.
|
|||
11
VZ
20.12.06
✎
01:44
|
(1) Да ладно, насчет способов "как"... Это не важно. ;)
Я как-то прикидывал механизм... Получилось примерно так: создаем справочник предопределенных объектов: пара Идентификатор+ИДобъекта. Любого объекта, замечу. Возможно, периодический. Справочник, естественно, недоступен юзеру. Получается типа СправочникДикихКонстант ;) |
|||
12
Gosha
20.12.06
✎
01:44
|
Ёмаё.
НОВЫЙ одноуровневый справочник "ПредопределенныеЭлементы", Наименование - вид справочника, "Элемент" типа "Справочник" (неопр.вида) - сам предопределенный элемент. Пускать в справочник только админа (как вариант - подчинить самому себе - есть такой финт))). Гибкость ещё - многоуровневость с папками по применимости, доп.реквизиты уточняющие уместность применения в различніх контекстах, и т.п. |
|||
13
Тот кто не понял
20.12.06
✎
01:52
|
(11,12) а юзер зайдёт и в исходном справочнике изменит/удалит вашу дикую константу
|
|||
14
Тот кто не понял
20.12.06
✎
01:55
|
с "удалит" погорячился. изменит.
|
|||
15
Gosha
20.12.06
✎
01:55
|
2(13): нифига ты таки не понял, правильный никнэйм.
КАК он удалит если на элемент ЕСТЬ ССЫЛКА ???? (дикие варианты с разрешением непосредственного удаления, или кодом, который удаляет элемент без проверки наличия ссылок на него - не предлагать.. ну или предлагать - но не мне, а например обитателям палаты, соседствующим с Наполеоном, Эйнштейном и Махатмой Ганди). |
|||
16
Тот кто не понял
20.12.06
✎
02:10
|
(15) согласен. см.(14)
а что по поводу "изменит"? |
|||
17
Gosha
20.12.06
✎
02:18
|
2(16): А что с ним должно что-то случиться???? ИМХО ответ на (16): ни-че-го. У темя концептуальное непонимание. Измененный элемент справочника от этого не перестает быть предопределенным. Равно как, например, измененный элемент справочника, выбранный в константу, не перестанет быть значением константы. ;)
|
|||
18
VZ
20.12.06
✎
02:19
|
(16) Фраза в (11) "Справочник, естественно, недоступен юзеру" не видна в браузере?
|
|||
19
Тот кто не понял
20.12.06
✎
02:22
|
(17) да? а я думал что от значений реквизитов этих элементов(диких констант) могут зависеть корреспонденции счетов, ставки НДС, формулы расчета чего-нить и подобное. я ошибался?
|
|||
20
Тот кто не понял
20.12.06
✎
02:24
|
(18) а то что элементы этого справочника являются элементами других справочников, доступных для редактирования пользователям?
или я что-то не так понял из постановки задачи в (0)? |
|||
21
Тот кто не понял
20.12.06
✎
02:28
|
опять тороплюсь. но суть-то надеюсь ясна?
в вашем справочники ссылки на элементы, которые может менять юзер - так? |
|||
22
Дурочка 1С ®
20.12.06
✎
02:29
|
(12) Что-то я не догоняю смысла ...
Еще раз: у меня есть справочник. В нем есть предопределенные элементы (их количество конЕчно) и пользовательские. Внешне они практически не отличимы. Пользователь будет постоянно работать с элементами. Как со своими, так и с моими (предопределенными). При расчетах мне нужно открывать определенный предопределенный элемент и смотреть у него реквизиты. Сейчас я делаю это, находя элемент по коду. Что даст создание дополнительного справочника к этому справочнику? |
|||
23
Тот кто не понял
20.12.06
✎
02:36
|
автор меня понял
|
|||
24
Gosha
20.12.06
✎
02:38
|
Предопределенные элементы будут задаваться не на уровне метаданных - а на уровне данных!.. ("почувствуйте разницу" ©)
Грубо говоря, один раз пишешь код для работы со справочником предопределенных элементов (поиск-позиционирование-...) - и всё. |
|||
25
Дурочка 1С ®
20.12.06
✎
02:40
|
(24) ???
Как сделать (поиск-позиционирование-...) - и всё. в справочнике предопределенных элементов? |
|||
26
Gosha
20.12.06
✎
02:48
|
(25)!!!
Моё (12) нарисовано исходя из (вполне собой разумеющегося) того, что предопределенный элемент в каждом справочнике адын. Тебе надо другое. Давай мы сделаем так. Ты попробуешь нарисовать мне - в дополнение к (22) - каким образом задается предопределенность. Для твоего случая (12) незначительно дорабатывается и работает. Если есть регулярная зависимость "вида предопределенности" от контекста или от наличия и значений определенных реквизитов формы, из которой "открывается" определенным образом предопределенный элемент - то это тоже реализуемо. На программном уровне - тщательно и один раз, а в дальнейшем - на уровне данных!!! - задаются и при нужде меняются собственно сами предопределенные элементы (и - контексты их действия). |
|||
27
Дурочка 1С ®
20.12.06
✎
02:57
|
(26) Т.е., если бы предопределенный элемент был бы один, ты предлагал создать еще один справочник(!!!) с единственным элементом, содержащим ссылку на элемент первого справочника?!!! Это уж слишком ... Для этого, вообще-то, константы существуют ...
|
|||
28
Gosha
20.12.06
✎
02:59
|
2(27): Нет, я предлагал НЕ то что ты пишешь. Читай внимательнее.
(надоело блин.. не поняв нифига обвинять в тупости собеседника.. ковыряйся само дальше, не в коня корм) |
|||
29
Тот кто не понял
20.12.06
✎
03:01
|
(28) бедняжка
|
|||
30
Gosha
20.12.06
✎
03:07
|
2(29): Ошибаешься, о, генитальный ходжа.
--- 2(27): Погорячился в (28). Но суть (28) верна - ты неверно поняла (12). Давай попробуем так: ты описываешь КОНКРЕТНО что тебе надо (а именно КАКИМ ОБРАЗОМ ты определяешь в конкретном контексте то, какой из предопределенных элементов в какой из реквизитов ставить или открывать по кнопке - и я попробую на пальцах разрисовать тебе что я имел ввиду в своих предложениях.. это конечно ЕСЛИ тебе действительно важно и интересно решить твою проблему а не поприкалываться ради поприкалываться и/или потешить свои комплексы... |
|||
31
Тот кто не понял
20.12.06
✎
03:15
|
(30) о0о, ну теперь я тебя зауважааал. спасибо, что очень подробно ответил на все мои вопросы
|
|||
32
Дурочка 1С ®
20.12.06
✎
03:22
|
(30) Не знаю как еще тебе объяснить, чтобы потешить твои комплексы ...
Это справочник календарей. Часть календарей предопределенные, например, "Пятидневка". Пользователь может создать свои календари и правила их заполнения, например, "День через день", в том числе и полные копии предопределенных. Время от времени он будет их все открывать и заполнять. Для некоторых расчетов, например, для расчета отпускных, мне нужно получить числа из определенного календаря ("Шестидневка" или "По календарным дням", не важно - из определенного предопределенного). Где эти календари используются в качестве реквизита для задачи значения не имеет. Возможность юзера удалить, переименовать, перенести в другую группу и т.п. тоже не обсуждается - пусть делает что хочет. |
|||
33
Gosha
20.12.06
✎
03:55
|
0. Справочник ПредопределенныеЭлементы, реквизиты.
0.0. Код, Наименование. 0.1. ТипВидОбъектаФормы (тип - Строка, с отбором и сортировкой). 0.2. ВидСправочника (тип - Строка) 0.3. Элемент (тип - "Справочник"). 1. На кнопку формы например расчета отпускных формулу процедуры, в которой код глОткрытьПредопределенныйЭлемент(Контекст,"Календари") 2. Глоб.модуль. Функция глПредопределенныйЭлемент(Конт,СпрВид) Экспорт Перем тТипВид,тСпр; Если Метаданне.Справочник(СпрВид).Выбран()=0 Тогда Возврат КонецЕсли; // опционально - сообщить об ошибке Попытка тТипВид=Конт.ТекущийЭлемент(); тТипВид="Справочник"; Исключение КонецПопытки; Если тТипВид="" Тогда Попытка тТипВид=Конт.ТекущийЭлемент(); тТипВид="Справочник"; Исключение КонецПопытки; КонецЕсли; Если ПустоеЗначение(тТипВид)=1 Тогда Возврат КонецЕсли; // опционально - сообщить об ошибке тТипВид=тТипВид+"."+Конт.Вид(); тСпр=СоздатьОбъект("Справочник.ПредопределенныеЭлементы"); тСпр.ВыбратьЭлементыПоРеквизиту("ТипВидОбъектаФормы",тТипВид,0,0); Пока тСпр.ПолучитьЭлемент()=1 Цикл Если тСпр.ВидСправочника=СпрВид Тогда Прервать КонецЕсли; КонецЦикла; Возврат(тСпр.Элемент); КонецФункции //глПредопределенныйЭлемент ------- Процедура глОткрытьПредопределенныйЭлемент(Конт,СпрВид) Экспорт Перем тЭлемент; тЭлемент=глПредопределенныйЭлемент(Конт,СпрВид); Если ПустоеЗначение(тЭлемент)=0 Тогда ОткрытьФорму(тЭлемент,,1) КонецЕсли; КонецПроцедуры //глОткрытьПредопределенныйЭлемент --- В справочник ПредопределенныеЭлементы добавляешь элемент: 0.0. Наименование="Календарь для отпускных записок" 0.1. ТипВидОбъектаФормы="Документ.РасчетОтпуска" (пусть док.называется так в метаданных, Ок?). 0.2. ВидСправочника="Календари" 0.3. Элемент - свой элемент справочника календарей ("Шестидневка" или "По календарным дням", не важно ©) ------- Это - навскидку, алгоритм поиска предопределенного элемента, когда СПОСОБ(!) предопределения задается типом и видом объекта, для которого открыта форма, из которой необходимо посмотреть предопределенный элемент справочника определенного вида. Задаются предопределенные элементы (в справочнике) на уровне данных (меняй реквизит "Элемент" в справочнике ПредопределенныеЭлементы для нужного сочетания признаков, определяющих предопределенность - код отработает по заданному). ЕЩЁ РАЗ. СПОСОБ ПРЕДОПРЕДЕЛЕНИЯ важен, в этом посте - только "навскидку" способ предопределения, указанный тобой в примере. Это - только(!!!) пример, дающий возможное общее направление "копания" в проблеме. |
|||
34
Gosha
20.12.06
✎
04:01
|
ЗЫ: ты попробуй все-таки осилить (33) в конструктивном ключе, а не с критиканским настроем - может все-таки пригодится?.. хотя не уверен что терпеливости и внимательности в организме в такое время на это хватит - но все-таки хотел бы ошибиться в этом предположении.. а я пошёл спать, будут вопросы - держи ветку на плаву своими знаменитыми подколками и язвительностью.. :)))
|
|||
35
VZ
20.12.06
✎
04:05
|
Нагородил-то... Нафига этому справочнику Код? Нафига этому справочнику Вид и прочее, если это можно получить из самого значения (методами Вид(), ТипЗначенияСтр()...)? И почему только "Справочник"? А если хоцца "Счет"?
И чем, кроме ненужного, это отличается от (11)? |
|||
36
Gosha
20.12.06
✎
04:15
|
2(35): Код - ну он есть по дефолту, не нравится - укороти. Про остальное - я не допонял (11). Какого объекта (Данных? Метаданных?)??? Какой ИД?.. и т.п.
За то, что "нагородил" - готов ответить. Но - уже сплю. Если будет интересно - по асе 77405945 (уже не завтра, а сегодня) вечером.. |
|||
37
Дурочка 1С ®
20.12.06
✎
04:40
|
(33) Нагородил-то ... Т.е. вместо простого поиска по коду в нужном справочнике, предлагается отбор элементов другого справочника с последующим перебором и поиском единственновозможного элемента. Т.е. двух элементов в справочнике ПредопределенныеЭлементы завести нельзя - поиск всегда будет находить первый ...
|
|||
38
Тот кто не понял
20.12.06
✎
04:42
|
можете считать меня тупым, но я не действительно не понимаю.
вот есть справочник. к примеру, "Цены" какие-нить. Открывает его юзер, берёт элемент "Цена продажи" и меняет у него реквизит "Включает скидку" с 1 на 0, записывает. проводит кучу документов, и даже не догадывается - что оказывается этот элемент справочника "Цены" - он служебный aka предопределенный. и от значений реквизитов этого элемента зависит ну очень много (или наоборот не зависит ничего, а юзер думает что зависит). а не догадывается он - потому что админ спрятал от юзера список предопределенных элементов справочника "Цены". Врочем как и других справочников :-) и у юзера даже мысли не возникнет, что он что-то не так делает VZ, сможешь ты ответить на этот вопрос? а то больше некому. и второе. если юзер всё-таки откуда-то догадывается, что в справочнике определенные элементы - служебные. то почему их просто не сложить в одну папку и оттуда пользовать? а идентификация - хоть по коду, хоть по наименованию, хоть по комментарию. вобщем игрушка ваша ничего, но игрушка. имхо. |
|||
39
Дурочка 1С ®
20.12.06
✎
04:59
|
+(37) Точно такого же эффекта можно добиться настрогав констант: Константа1 - календарь Пятидневка, константа2 - Шестидневка и т.д. ... и нечего городить каких-то справочников ... и удалить календарь нельзя будет - в константе ссылка ...
|
|||
40
Zhuri
20.12.06
✎
05:17
|
Gosha, молдца я такое реализовал давно только функции по использованию такие:
Функция глПолучитьЗначениеДопПараметра(ИмяПараметра) Экспорт Результат=0; Спр= СоздатьОбъект("Справочник.ДопПараметры"); Если Спр.НайтиПоКоду(ИмяПараметра,0)=1 Тогда Результат=Спр.Параметр; КонецЕсли; Возврат Результат; КонецФункции // глПолучитьЗначениеДопПараметра() Функция глПолучитьСписокДопПараметра(ИмяПараметра) Экспорт Результат=СоздатьОбъект("СписокЗначений"); Спр= СоздатьОбъект("Справочник.ДопПараметры"); Спр.ВыбратьЭлементы(); Пока Спр.ПолучитьЭлемент()=1 Цикл Если Спр.ПометкаУдаления()=1 Тогда Продолжить; КонецЕсли; Если СокрЛП(Спр.Наименование)<>ИмяПараметра Тогда Продолжить; КонецЕсли; Результат.ДобавитьЗначение(Спр.Параметр); КонецЦикла; Возврат Результат; КонецФункции // глПолучитьСписокДопПараметра() 35) это ответ Функция глПолучитьЗначениеДопПараметра(ИмяПараметра) Экспорт Результат=0; Спр= СоздатьОбъект("Справочник.ДопПараметры"); Если Спр.НайтиПоКоду(ИмяПараметра,0)=1 Тогда Результат=Спр.Параметр; КонецЕсли; Возврат Результат; КонецФункции // глПолучитьЗначениеДопПараметра() Функция глПолучитьСписокДопПараметра(ИмяПараметра) Экспорт Результат=СоздатьОбъект("СписокЗначений"); Спр= СоздатьОбъект("Справочник.ДопПараметры"); Спр.ВыбратьЭлементы(); Пока Спр.ПолучитьЭлемент()=1 Цикл Если Спр.ПометкаУдаления()=1 Тогда Продолжить; КонецЕсли; Если СокрЛП(Спр.Наименование)<>ИмяПараметра Тогда Продолжить; КонецЕсли; Результат.ДобавитьЗначение(Спр.Параметр); КонецЦикла; Возврат Результат; КонецФункции // глПолучитьСписокДопПараметра() без этого справочника задолбался бы константы добавлять |
|||
41
HAMMER
20.12.06
✎
08:05
|
(0) Я делал предопределенные элементы через константы, по мне так проще, быстрее, доступнее и т.д. а главное работает :)
|
|||
42
Макс 1С
20.12.06
✎
08:23
|
(0)
если есть возможность запретить редактировать код - то тогда как в и описало в сабже, если возможности запретить редактировать код нету, или нет такого желания, тогда дополнительный реквизит с отбором, не доступный для редактирования пользователю.... |
|||
43
Gosha
20.12.06
✎
10:58
|
(37)
> Т.е. вместо простого поиска по коду в нужном справочнике, предлагается отбор элементов другого справочника с последующим перебором и поиском единственновозможного элемента. === Вместо заданного В КОДЕ поиска по коду предлагается поиск по "правилу предопределения" - при этом имеется возможность не лазя в код менять предопределенные элементы и исключены ошибки работы кода при изменении данных (кода твоего справочника). > Т.е. двух элементов в справочнике ПредопределенныеЭлементы завести нельзя - поиск всегда будет находить первый ... === Можно завести несколько. В таком случае код (33) немного изменится - функцией получать и возвращать СЗ из элементов, в процедуре открывать формы элементов по списку (или выбираемый из СЗ). Ключевой мысли (формализация способов предопределения элементов справочников в зависимости от контекста и дефиниция предопределенных элементов справочников для различных контекстов на уровне данных) ты, Дура, всетки не захотело понять - предпочтя почесать свой комплекс неполноценности. С сожалением вынужден констатировать, что тебе нафиг не надо никакого конструктива, а только погафкать. Тяфкай дальше. |
|||
44
android
20.12.06
✎
11:18
|
Отдаю голос за СправочникДикихКонстант.
|
|||
45
Дурочка 1С ®
20.12.06
✎
11:24
|
(40) Это вообще лажа. Фактически предлагается вместо поиска по коду недоступному пользователю создать другой недоступный пользователю справочник и искать в нем по наименованию, да еще таким варварским способом (перебором). Масло масленное. Это мне категорически не подходит.
(41) Решение с константами меня бы тоже устроило - предопределенных элементов будет не много (в пределах десятка - это точно) и десяток дополнительных констант никого бы не обидел. Одна проблема: у меня религиозный запрет на изменение ГМ. Как, не имея доступа к процедуре ПриЗаписиКонстанты, обеспечить неприкосновенность констант? |
|||
46
VZ
20.12.06
✎
11:34
|
(45) Поиск в СправочникеДиКихКонстант "по наименованию".
Константы - это изменение Метаданных, ГМ - всего лишь модуль, исчезает при накате любого обновления. Блокировать изменение константы можно просто сняв галку в правах. Сняв все галки - сделаем константу "невидимой" в интерфейсе вообще. Разумеется, наличие живого юзера, умеющего лазать в конфигураторе и писать обработки, не предусматривается. При таком наличии вообще вести разговор о каких-то изменениях нет смысла. |
|||
47
Дурочка 1С ®
20.12.06
✎
12:22
|
(46) Кстати, с галкой в правах константы - это да, это вполне ...
Наверное, так и стоит сделать. Насчет невидимости(?) - не знаю ... В списке-то она все равно видна, значения только не видно ... Ну и что, что изменение метаданных? Добавленные объекты при любых объединениях не затираются ©Я |
|||
48
Макс 1С
20.12.06
✎
12:25
|
(47) не видна.. если мы про константы....
|
|||
49
HAMMER
20.12.06
✎
12:28
|
(47) А заказчику оно надо, чтобы константы невидимые были? Ну будит он их видеть что от этого поменяется, пускаю любуется. Чего сомневаться то, быстро, просто, сердито, работает или у тебя времени много?
|
|||
50
Дурочка 1С ®
20.12.06
✎
12:28
|
(48) мы про константы.... видна...
|
|||
51
Макс 1С
20.12.06
✎
12:38
|
(50) действительно... видна... а как то было такое что не видно было... не помню как, может при обновлении если такого набора прав нет?... ладно.. не важно....
|
|||
52
Дурочка 1С ®
20.12.06
✎
12:50
|
(49) Кто такой заказчик? "Юзер - быдло!" © 1С. Что дадим, то и будут жрать и радоваться ...
А на счет времени - не хочется уподобляться писателямДляВсейСтраны (© Mike). Разве национальная валюта рубль, например, в типовой - это не предопределенный элемент справочника? Но его может запросто не быть в справочнике, его можно переименовать, изменить код ... а писателям пофиг ... |
|||
53
p etrovich
20.12.06
✎
12:54
|
Дурочка 1С ®, твой вариант безусловно лучший! На то ты и Дурочка 1С ®
|
|||
54
мнемоника
20.12.06
✎
13:13
|
а что бы не залепить документ с многострочной частью, это было бы клево
|
|||
55
Чучундер
20.12.06
✎
13:40
|
сорри, может я не в тему.
предопределенный элемент справочника - т.е. перед его юзанием в алгоритме должны удостоверится, что он не изменился - так как от этого много зависит. Делаем СправочникДикихКонстант, в качестве кода - GUID предопределенного элемента, в качестве наименования (или реквизита строки неогр.длины) - "слепок" набора реквизитов предопределенного элемента, далее так.. //тут у нас будет какое-то использование предопр.элемента... какого - не знаем, поэтому пробегаем по справочникуДикихконстант и сравниваем "слепок" с текущими значениями реквизитов элемента справочника... если сошлись все элементы дикогосправочника - система настроена как надо - идем дальше и юзаем обычным образом наш алгоритм - ищем по наименованию и пр... ..бред какой-то |
|||
56
Дурочка 1С ®
20.12.06
✎
13:53
|
(55) Нет. Не то ... Наоборот - элементы справочника изменяются пользователем (и слава богу).
Вот такой пример: как в справочнике валют найти национальную валюту и (доллар уже не канает, т.к. курс у него <> 30 ©1С) Евро? |
|||
57
Дурочка 1С ®
20.12.06
✎
20:28
|
Не лежит у меня душа к этим константам - облажаться можно с ними легко.
Права ведь к набору прав привязаны. Такое ведь часто бывает, приходит новый ГБ, топает ногой "всех урезать, МНЕ(!!!) - отдельный набор прав со всеми правами! Живо!" ... И что получится? Создаст ей админ набор прав, установит для него все права и ... привет моей песне ... Опять же, в типовой только один набор прав, а сколько их и какие сейчас у юзеров - одному Miky известно ... Спроецируется ли на них права, объявленные для набора прав Администратор? Вопрос ... Установит ли при объединении конфигураций (типовой и нашей) юзер флажок "Права" или нет? Сиди гадай ... Все как-то стрёмно ... |
|||
58
SunShinne
20.12.06
✎
21:14
|
+[44] за справочник Диких констант (Д1СКонстанты). Так универсальнее.
|
|||
59
VZ
20.12.06
✎
22:08
|
Я что, совсем непонятно структуру СправочникаДикихКонстрант в (11) предложил?
Ишшо раз: Наименование - скажем, длина 49. Чтоб можно было запихнуть что-то типа "СчетДляТоваровНаКомиссии" (с запасцем неким). Объект - тип Неопределенный. Все. никаких больше реквизитов не надо. Никому не доступен, никому не видим. (В скобках: если на Константу снять все права, вкл. "чтение" - фиг она через Меню-Операции-Константы видна) И доступ к записи справочника будет прост, как березовый веник. Мы же сами будем формировать названия "предопределенных", небось хватит ума не дублировать? |
|||
60
Дурочка 1С ®
20.12.06
✎
22:20
|
Цель справочника какая? Вижу только одну выгоду - удалить нельзя (ссылка есть). Хотя название мне нравится ...
Но смысл? Смысл объясните! Искать по коду в одном справочнике или по наименованию/коду/индексированному реквизиту в другом, причем, искать не элемент, а ссылку ... ??? ... Вкус есть, а смысла не вижу ©Реклама какая-то ... |
|||
61
VZ
20.12.06
✎
23:33
|
(60) Как в той же "восьмерке" используется "предоредеделенное" значение?
КоррСчет = ПланыСчетов.Хозрасчетный.АмортизацияНематериальныхАктивов; У нас придется использовать что-то типа КоррСчет = Преопределенный("АмортизацияНематериальныхАктивов)"; Ну, а расписывать функцию Предопределенный(НазвПредопределенногоОбъекта) не буду :) Главное: в СправочникеДикихКонстант в поле Объект могут быть ссылы на ЛЮБОЙ агрегатный объект - только задаваемый не в конфигураторе, а в "пользовательском" режиме (не самим пользователем, конечно). |
|||
62
VZ
20.12.06
✎
23:37
|
+61 Фанаты 1С++ могут организовать классы так, чтоб эти "предопределенные" звучали в коде по "восьмерошному", через "точку" ;)
Но это уже вопрос стиля... |
|||
63
VZ
20.12.06
✎
23:45
|
А в сущности-то, такой справочник просто-напросто заменяет пару СохранитьЗначение/ВосстановитьЗначение, но тольно не для пользователя, а для всех пользователей базы. Да и хранение в отдельном справочнике надежнее, чем в профилях.
Вот и все. |
|||
64
Дурочка 1С ®
21.12.06
✎
00:37
|
Уговорили, чЕрти языкастые ...
Может, действительно, когда-нибудь где-нибудь пригодится ... Да и поиск практически такой же по количеству строк (ровно в 2-е строки). Зато универсальный. И не надо думать что там: справочник, документ, перечисление ... Ну, что: Справочник: Д1СДикиеКонстанты, длина кода - 0, Наименование - 25, уровней - 1 Реквизит: Объект, тип - Неопределенный Так? |
|||
65
VZ
21.12.06
✎
00:45
|
:)
|
|||
66
Дурочка 1С ®
21.12.06
✎
00:57
|
Кстати, а в неопределенном можно хранить строки, ТЗ, СЗ?
|
|||
67
Дурочка 1С ®
21.12.06
✎
01:13
|
Кстати, спрятать этот справочник не получится - его можно распечатать универсальной печатью справочников и заменить универсальной заменой значений ...
|
|||
68
Gosha
21.12.06
✎
01:16
|
2(66): В неопределенном можно хранить только ссылки на агрегатные типы данных и данные примитивных типов длиной кажется не больше 11-ти. ТЗ и СЗ не поместятся.
|
|||
69
VZ
21.12.06
✎
01:37
|
(66) Зато в ссылочном реквизите можно хранить ссылу на справочник в целом.
(67) Кажется договорились, что от юзера класса "программист" скрыть ничего нельзя? А вот в обработку печати справочника запросто можно вставить проверку на "права" - там, где формируется список для выбора. (66) Увы, да. Можно и это преодолеть, но тогда структура потеряет простоту и прочность. По сути, надо сделать нечто вроде "Хранилища значений", а это отдельная песня... |
|||
70
мнемоника
21.12.06
✎
06:14
|
а мне по любому документ с табличной частью больше по душе
значений правда не больше 10000, но опять же и не ios лепить опять же есть уникальная возможность иметь несколько предопределенных наборов значений, а глобальный для конфигурации - так уж и быть - в константу типа этого документа |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |