![]() |
![]() |
![]() |
|
УТ 11. ДопРеквизиты. Кода нет. По какому полю искать? | ☑ | ||
---|---|---|---|---|
0
SeiOkami
07.01.13
✎
14:10
|
Задача проста - печатная форма которая выводит номенклатуру и её некоторые доп.реквизиты. Теперь вопросик:
По какому полю искать нужный доп реквизит в планах видов характеристик, если нет кода? Понимаю, что можно по наименованию, просто может есть другой способ, о котором я не знаю. И даже дело не в конкретно этой задаче, а вообще, ведь еще не раз столкнусь с подобным. Хочется сразу делать, так сказать, по "правильному" =) |
|||
1
SeiOkami
07.01.13
✎
14:25
|
Есть какие нить идеи ?
|
|||
2
Галахад
гуру
07.01.13
✎
14:31
|
Непонятно при чем тат код? Почему не искать по ссылке?
|
|||
3
SeiOkami
07.01.13
✎
14:33
|
(2) ну... чтобы искать по ссылке, то нужно уже её при этом иметь ;)
Поясню, видимо, я просто непонятно выразился. Вот кусок кода: ДопРеквизитНомерДокумента = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("НомерДокумента"); ДопРеквизитРегНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("РегНомер"); ДопРеквизитУчНомер = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("УчНомер"); ДопРеквизитДатаРег = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ДатаРег"); ДопРеквизитДействПо = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ДействПо"); ДопРеквизитВетСвидетельство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ВетСвидетельство"); ДопРеквизиты = ВыборкаПоТоварам.ДопРеквизиты.Выгрузить(); _НомерДокумента = ДопРеквизиты.Найти(ДопРеквизитНомерДокумента, "Свойство"); _РегНомер = ДопРеквизиты.Найти(ДопРеквизитРегНомер, "Свойство"); _УчНомер = ДопРеквизиты.Найти(ДопРеквизитУчНомер, "Свойство"); _ДатаРег = ДопРеквизиты.Найти(ДопРеквизитДатаРег, "Свойство"); _ДействПо = ДопРеквизиты.Найти(ДопРеквизитДействПо, "Свойство"); _ВетСвидетельство = ДопРеквизиты.Найти(ДопРеквизитВетСвидетельство, "Свойство"); ОбластьМакета.Параметры.НомерДока = ?(_НомерДокумента = Неопределено, "", _НомерДокумента.Значение); ОбластьМакета.Параметры.РегНомер = ?(_РегНомер = Неопределено, "", _РегНомер.Значение); ОбластьМакета.Параметры.УчНомер = ?(_УчНомер = Неопределено, "", _УчНомер.Значение); ОбластьМакета.Параметры.ДатаРег = ?(_ДатаРег = Неопределено, "", Формат(_ДатаРег.Значение, "ДЛФ=Д")); ОбластьМакета.Параметры.ДействПо = ?(_ДействПо = Неопределено, "", Формат(_ДействПо.Значение, "ДЛФ=Д")); ОбластьМакета.Параметры.ВетСвидетельство = ?(_ВетСвидетельство = Неопределено, "", Формат(_ВетСвидетельство.Значение, "ДЛФ=Д")); |
|||
4
SeiOkami
07.01.13
✎
14:34
|
Сейчас я ищу по наименованию. Как можно искать иначе?
|
|||
5
Klesk
07.01.13
✎
14:37
|
лучше не использовать доп реквизиты, если они используются в отчетах, сделай реквизит. а так только по наименованию.
|
|||
6
Галахад
гуру
07.01.13
✎
14:38
|
(4) А, понятно. Фиг знает, я по наименованию ищу.
|
|||
7
SeiOkami
07.01.13
✎
14:40
|
(5), в каком смысле "если они используются в отчетах" ?
|
|||
8
Klesk
07.01.13
✎
14:45
|
(7) имеется ввиду в коде.
если уж ковыряешь конфиг, лучше сделай обычный реквизит справочника или документа, если программно его используешь. А то например пользователь переименует доп реквизит - концов не найдешь. |
|||
9
Klesk
07.01.13
✎
14:49
|
а по доп реквизитам вообще лучше используе типовую функцию
УправленияСвойствами.ПолучитьСписокСвойств // Возвращает свойства владельца. // // Параметры: // ВладелецСвойств - Ссылка на владелеца свойств. // ПолучатьДопРеквизиты - Булево - в результат включать дополнительные реквизиты. // ПолучатьДопСведения - Булево - в результат включать дополнительные сведения. // // Возвращаемое значение: // Массив значений типа ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения. // Функция ПолучитьСписокСвойств(ВладелецСвойств, ПолучатьДопРеквизиты = Истина, ПолучатьДопСведения = Истина) Экспорт |
|||
10
SeiOkami
07.01.13
✎
14:57
|
(8), я конфу не трогаю, в этом то и суть
(9), а смысл? // Возвращаемое значение: // Массив значений типа ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения Я так понял - вернется массив с перечнем доп.свойств. Зачем, если я в запросе их не плохо получаю. Кстати, запросом даже лучше. Лучше один раз получить все в одном запросе, чем по каждой номенклатуре отдельно обращаться к функции. При том, что функция все равно будет искать так же. А вот по поводу поиска. Выходит кроме как ПоНаименованию идей больше нет ?( |
|||
11
banco
07.01.13
✎
15:34
|
создай форму например настройки и там выбери ссылки на эти доп реквизиты, сохраняй настройку и используй уже ссылки
|
|||
12
SeiOkami
07.01.13
✎
16:06
|
(11), Это типовая УТ и внешняя печатная форма. Можно, конечно, хранить настройки в ИБ, однако, это уже как удалять гланды через прямую кишку =]
|
|||
13
Новиков
07.01.13
✎
18:14
|
твой способ в (3) при некоторых допущениях вполне нормальный.
|
|||
14
banco
07.01.13
✎
20:24
|
(12) какие гланды? какая кишка? наверное ты не понял. вообще то есть стандартное хранилище настроек. при печати загружаешь оттуда настройки, если пусто, открываешь форму настроек твоих доп характеристик, устанавливаешь настройки и после этого работаешь со ссылками и хоть пользователи будут меняь наименование, твоя обработка будет работать корректно
|
|||
15
SeiOkami
08.01.13
✎
16:04
|
(14), и что в этом нормального? Как я и сказал: "это уже как удалять гланды через прямую кишку"
Вот если бы в 11 УТ не жадничали на коды для объектов... |
|||
16
banco
08.01.13
✎
19:27
|
(15) ок, продолжай искать по коду или по наименованию.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |