![]() |
![]() |
![]() |
|
Как перебрать все реквизиты формы? | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
21.06.07
✎
14:53
|
Я хочу скопировать одну форму в другую, как перебрать все реквизиты формы?
|
|||
1
yalex
21.06.07
✎
14:54
|
Для Каждого элемент Из ЭлементыФормы
|
|||
2
AversDik2
21.06.07
✎
15:30
|
(0)
Для каждого мРеквизит ЭтаФорма.Метаданные().Реквизиты Цикл НоваяФорма[мРеквизит.Имя] = ЭтаФорма[мРеквизит.Имя]; КонецЦикла; |
|||
3
Гений 1С
гуру
21.06.07
✎
15:41
|
(1) Реквизиты а не Элементы!!!
(2) йоу |
|||
4
Гений 1С
гуру
21.06.07
✎
16:00
|
(2) Работает даже для внешних отчетов!
|
|||
5
AversDik2
21.06.07
✎
16:21
|
(4) Работает для форм
|
|||
6
yalex
21.06.07
✎
16:29
|
(3) А что мешает зная элемент получить данные или значение?! Мой способ тоже верен)
|
|||
7
yalex
21.06.07
✎
16:30
|
6 + и не удевлюсь, если быстрее
|
|||
8
yalex
21.06.07
✎
16:35
|
7 + тем боле ты "копируешь формы"
|
|||
9
Гений 1С
гуру
21.06.07
✎
16:36
|
(6) идиот! у формы могут быть реквизиты, которые не вынесены в элементы управления! так что твой метод - это фигня...
|
|||
10
Гений 1С
гуру
21.06.07
✎
16:37
|
(9) извини за идиота, это в такой незлобной форме, написал, а потом подумал - вруг без ЧЮ? ;-)
|
|||
11
yalex
21.06.07
✎
16:41
|
(9) Да, точно) Но, ведь, признайся у тебя нет "невнесённых" реквизитов))
|
|||
12
AversDik2
21.06.07
✎
16:44
|
(7) Реквизитов гораздо меньше, чем элементов форм.
|
|||
13
yalex
21.06.07
✎
16:48
|
(12) Ну вобщем, чаще да) Но всякое бывает и по (9) может быть и наоборот)
|
|||
14
Pike
21.06.07
✎
16:58
|
ЗаполнитьЗначенияСвойств(НоваяФорма, СтараяФорма)
или ЗаполнитьЗначенияСвойств(НовыйОбъект, старыйОбъект) |
|||
15
Гений 1С
гуру
21.06.07
✎
18:27
|
(11) есть! Построитель, например.
|
|||
16
Гений 1С
гуру
21.06.07
✎
18:27
|
(14) в курсе... Но не факт...
|
|||
17
TormozIT
гуру
21.06.07
✎
20:42
|
Уже обсуждалось. В общем случае невозможно.
|
|||
18
Гений 1С
гуру
22.06.07
✎
00:06
|
(17) что невозможно? (2) ответил, что возможно!
|
|||
19
coder1cv8
25.06.07
✎
16:12
|
Подниму веточку... Тож заинтересовался этим вопросом. Получается что "извне" можно перебрать тока те реквизиты формы, которые "привязаны" к элементам управления?
|
|||
20
yalex
25.06.07
✎
16:23
|
(19) Не только реквизиты связанные с элементами управления.
Все реквизиты можно перебрать |
|||
21
coder1cv8
25.06.07
✎
16:28
|
(20) Мне попросить надо? Колись... )
|
|||
22
yalex
25.06.07
✎
16:32
|
(21) Так в (2)ведь написал - так перебираешь все реквизиты
(1) - перебираешь ЭлементыФормы и полчаешь связанные данные каждого элемента |
|||
23
AversDik2
25.06.07
✎
16:32
|
(21) см (2)
|
|||
24
coder1cv8
25.06.07
✎
16:42
|
(22,23) Читать я умею... Не работает:
ОбъектОбработки=ВнешниеОбработки.Создать(ИмяОбработки); ФормаОбработки=ОбъектОбработки.ПолучитьФорму(); Для Каждого Реквизит Из ФормаОбработки.Метаданные().Реквизиты Цикл КонецЦикла; |
|||
25
Irbis
25.06.07
✎
16:43
|
Одна засада только есть, элементы формы, содаваемые программно не получится перебрать. Их попросту может не быть.
|
|||
26
coder1cv8
25.06.07
✎
16:45
|
+(24) И так тоже:
ОбъектОбработки=Обработки[ИмяОбработки].Создать(); ФормаОбработки=ОбъектОбработки.ПолучитьФорму(); Для Каждого Реквизит Из ФормаОбработки.Метаданные().Реквизиты Цикл КонецЦикла; |
|||
27
coder1cv8
25.06.07
✎
16:47
|
(25) Самая главная засада, что до реквизитов не имеющих элементов управления, похоже можно добраться тока из модуля самой формы... (
|
|||
28
yalex
25.06.07
✎
16:49
|
(26) Может у тебя нету реквизитов формы?)
|
|||
29
AversDik2
25.06.07
✎
16:50
|
(24) (27) (28)
ФормаОбработки.Метаданные() - это метаданные внешней обработки. ИМХО метаданных формы внешней обработки не существует |
|||
30
coder1cv8
25.06.07
✎
16:50
|
(28) сам в это веришь? )
|
|||
31
coder1cv8
25.06.07
✎
16:53
|
(29) согласен, ошибку дает метод не обнаружен, но почему коллекция метаданных формы "внутренней" (см. (26)) обработки пустая?...
|
|||
32
Гений 1С
гуру
25.06.07
✎
16:58
|
(29) Существует, у меня все нормально рулит!
|
|||
33
yalex
25.06.07
✎
16:59
|
(31) Действительно не катит (2) :)
|
|||
34
coder1cv8
25.06.07
✎
17:00
|
(32) А почему у меня грит "метод не обнаружен"?
|
|||
35
yalex
25.06.07
✎
17:03
|
33 + Вернее катит, но криво: получает значения элементов формы и то не все (без номера и даты, без ТЧ)
|
|||
36
yalex
25.06.07
✎
17:05
|
35 + да и реквизиты формы не видит, видит только реквизиты объекта)
|
|||
37
coder1cv8
25.06.07
✎
17:12
|
(36) Получается, что когда я пытаюсь перебрать реквизиты формы, возвращаются реквизиты объекта, это для обработки внутри конфигурации, с внешней вобще не катит... Фигня получается (
|
|||
38
yalex
25.06.07
✎
17:18
|
(37) Ну да, если реквизиты не являются реквизитами обработки(не реквизиты формы). Гений что-то потерялся. Сейчас должен выдать заключение)
|
|||
39
Гений 1С
гуру
25.06.07
✎
17:22
|
(37) а, ну да, реквизитов формы не получишь.
Можно перебрать элементы формы и проанализировать их данные на предмет совпадания с реквизитами, можно выщемить реквизиты формы, но в данных рквизиты формы и обработки могут называться одинаково, хотя на самом деле показывать на разные вещи. Так что формы 1с еще долго нужно будет в чуство приводить |
|||
40
coder1cv8
25.06.07
✎
17:28
|
(39) Вобщем, всё то же самое до чего я уже дошел своим умом... Жопа короче, получается...
Я пока остановился на том чтобы перебирать данные элементов управления, лучше видимо ничего не придумать... |
|||
41
у лю 427
25.06.07
✎
17:35
|
за 3 рубля даю самый ценный совет
|
|||
42
у лю 427
25.06.07
✎
17:36
|
опа на... не туда ... похерить сообщение
Ошибка МайСклюль трали вали при добавлении сообщения.... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |