|
v7: Быстро обойти элементы формы одного типа. Можно циклом. Как ? | ☑ | ||
---|---|---|---|---|
0
raykom
26.07.14
✎
16:28
|
Нужно пробежать по форме обработки (из модуля обработки) и программно поменять значения реквизитов типа "флажок"
Как сделать ? В СП - не соображу методов таких. Спасибо. |
|||
1
КонецЦикла
26.07.14
✎
16:30
|
Кури формекс если сам запутался что там у тебя...
|
|||
2
raykom
26.07.14
✎
16:31
|
Емае, с формексом понятно. Стандартно можно ?
|
|||
3
КонецЦикла
26.07.14
✎
16:31
|
Флаг1 = 1;
Флаг2 = 1; ... или я не вкурил тему? |
|||
4
ДенисЧ
26.07.14
✎
16:33
|
||||
5
raykom
26.07.14
✎
16:48
|
(3)Не, с этим все понятно. Я имею в виду что то типа
Для по Элементы формы ... Как по метаданным типа Не ? (4)Етить ... Дослужился ? Инвентарь новый подгоняют ... |
|||
6
ДенисЧ
26.07.14
✎
16:50
|
(5) Новая должность - новый инвентарь...
|
|||
7
m-serg74
26.07.14
✎
16:51
|
(5) мож Шаблон поможет?
|
|||
8
raykom
26.07.14
✎
17:03
|
ПОнятно. Однозначный ответ - нет. Варианты я и сам покурить могу.
Ладно, вопрос закрыт. Забрал новый струмент, побрел на участок ... |
|||
9
m-serg74
26.07.14
✎
17:03
|
или даже
ПолучитьАтрибут(<?>); Синтаксис: Форма.ПолучитьАтрибут(ИмяРеквизита) Назначение: Возвращает ссылку на элемент формы. потом с им и воевать |
|||
10
m-serg74
26.07.14
✎
17:04
|
(8) как то ты быстро сдался:)
|
|||
11
raykom
26.07.14
✎
17:07
|
(9)Так то КАЖДОГО реквизита. А я хотел
типа Для поз=1 По Форма.ЭлементыФормы() Цикл |
|||
12
raykom
26.07.14
✎
17:08
|
(10)Так начинают путать )) Я про кнопку "СделатьВсеОК", а они мне про метлу, лопату и от забора до закаьа ..
|
|||
13
m-serg74
26.07.14
✎
17:08
|
(11) ага установить = 1, типа пох Надпись это или флажок?
|
|||
14
ДенисЧ
26.07.14
✎
17:08
|
formex
а потом (4) |
|||
15
oslokot
26.07.14
✎
17:17
|
(0)Красиво-никак. Даже в снеговике это делается через зад
|
|||
16
Эмбеддер
26.07.14
✎
17:21
|
(0) если делать выборку и в выборке же запись, то запишется всего 1 элемент и выборка остановится. надо сначала делать выборку элементов и записывать их в список значений или таблицу, и уже в другом цикле из таблицы находить объекты, менять и записывать
|
|||
17
raykom
26.07.14
✎
17:33
|
(13)Сначала обойти надо, потом будем разбираться, кто есть кто
(14)Ну это то я даже после понижения в должности понимаю. (15)Похоже на то ... Вот и нач ОК с метлой опять тут тусит. (16)Какую выборку ? Выборку чего ? Как вообще выборку элементов формы сделать, об том и вопрос |
|||
18
m-serg74
26.07.14
✎
17:37
|
(17) /(16)Какую выборку ? Выборку чего ?/
не обламывай кайф, мож приход только пошёл |
|||
19
Злопчинский
26.07.14
✎
17:54
|
флажок - это по сути то же самое число... как отличить флажок на форме от числовых реквизитов в общем случае - хщз
|
|||
20
m-serg74
26.07.14
✎
17:56
|
(19) если только реквизитам типа Флажок не присвоить названия типа флРеквизитКакойТо
|
|||
21
raykom
26.07.14
✎
18:00
|
опять за рыбу деньги ... КАК ОБОЙТИ ? Потом отличать будем
|
|||
22
m-serg74
26.07.14
✎
18:11
|
(21) Для Сч = 1 По 100500 Цикл, не?
:) |
|||
23
m-serg74
26.07.14
✎
18:12
|
ИмяРеквизита = "ЧтоТоТам" + Строка(Сч);
мАтрибут = Форма.ПолучитьАтрибут(ИмяРеквизита); Потом отличай что за реквизит |
|||
24
raykom
26.07.14
✎
18:16
|
(23)Ааааа ... Вот я ... дворник )))
Цикл то не обязательно по чему то ))). Точно. Но список реквизитов всеравно надо где то держать ... Как их собрать то ? |
|||
25
m-serg74
26.07.14
✎
18:18
|
(24)
СпРеквизитов = СоздатьОбъект("СписокЗначений"); СпРеквизитов.ДобавитьЗначение("РеквизитОсновной"); СпРеквизитов.ДобавитьЗначение("РеквизитДополнительный"); это в самом низу, вне процедур формы, а потом в нужном месте Для Сч = 1 По СпРеквизитов.РазмерСписка... ну ты понял, да? |
|||
26
raykom
26.07.14
✎
18:19
|
ладно ... собрать никак, так хотя бы изменять обходом. Ходить будем по списку значений.
Имею строку с именами реквизитов через запятую. Как ее в список значений засунуть быстро ? Или Может сразу по строке ? )) |
|||
27
m-serg74
26.07.14
✎
18:19
|
не поверю что реквизиты программно добавляются, а имена присваиваются как попало не однотипно
|
|||
28
raykom
26.07.14
✎
18:19
|
(25)>СпРеквизитов.ДобавитьЗначение("РеквизитОсновной");
СпРеквизитов.ДобавитьЗначение("РеквизитДополнительный"); Вот от этого то и хотел уйти. |
|||
29
m-serg74
26.07.14
✎
18:21
|
(26) СтрЗаменить(Список, ",", РазделительСтрок);
Для Сч = 1 По СтрКоличествоСтрок(Списко) Цикл имярекв = СтрПолучитьСтроку(Список, Сч).... |
|||
30
raykom
26.07.14
✎
18:24
|
(29)>Список, ",", РазделительСтрок
Какой то параметр лишний. Не ? |
|||
31
m-serg74
26.07.14
✎
18:26
|
(30) не, в твоей строкесписке, вместо запятой зафигачит РазделительСтрок, и сможешь элементы искать не через Найти запятую а по количеству строк в многосторчной строке
|
|||
32
raykom
26.07.14
✎
18:28
|
Список - где ищем
первая "" - что ищем вторая " - на что меняем Так ? РазделительСтрок - лишний параметр ? Или кавычки какие то ? |
|||
33
m-serg74
26.07.14
✎
18:28
|
(32)
СтрокаРекв = "Фирма, Номенклатура, Склад"; СтрокаСписком = СтрЗаменить(СтрокаРекв, "," , РазделительСтрок); Для Сч = 1 По СтрКоличествоСтрок(СтрокаСписком) Цикл Сообщить(СокрЛП(СтрПолучитьСтроку(СтрокаСписком, Сч))); КонецЦикла; |
|||
34
m-serg74
26.07.14
✎
18:30
|
(32) и ничего "лишнего" :)
|
|||
35
raykom
26.07.14
✎
18:30
|
(33)Ну тебя я понял уже.
Просто в СП этот метод с тремя параметрами всего |
|||
36
m-serg74
26.07.14
✎
18:31
|
(35) так там три и есть
Где, Что, наЧто |
|||
37
m-serg74
26.07.14
✎
18:32
|
(36) просто в твоем случае что выглядит как "," ибо разделитель у тебя запятая
|
|||
38
m-serg74
26.07.14
✎
18:32
|
(37) тип строка
|
|||
39
raykom
26.07.14
✎
18:35
|
(37)Тьху ... В глазах троится от кавычек )) Понял
|
|||
40
m-serg74
26.07.14
✎
18:36
|
удачного использования)))
|
|||
41
raykom
26.07.14
✎
18:37
|
(40)Все пучком. РАботает )
|
|||
42
raykom
26.07.14
✎
18:37
|
Спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |