|
v7: Как получить имя переменной? | ☑ | ||
---|---|---|---|---|
0
DrRaptor
07.02.13
✎
10:53
|
Есть:
Перем Докум Как получить строку "Докум"? То есть как обратиться к наименованию переменной? |
|||
1
НафНаф
07.02.13
✎
10:54
|
зачем?
|
|||
2
mikecool
07.02.13
✎
10:54
|
снова в нашем зале...
|
|||
3
KRV
07.02.13
✎
10:54
|
Поколение выросло..
|
|||
4
andreymongol82
07.02.13
✎
10:54
|
Никак. если нужно наименование переменной, то это уже не переменная
|
|||
5
mikecool
07.02.13
✎
10:55
|
массив
|
|||
6
АЛьФ
07.02.13
✎
10:55
|
Зачем?
|
|||
7
Wobland
07.02.13
✎
10:55
|
хмм.. интересно, откуда вопрос такой возник?
|
|||
8
DrRaptor
07.02.13
✎
10:56
|
Ну как-то преобразовать название в строку можно?
|
|||
9
Godofsin
07.02.13
✎
10:56
|
(8) чооо??
|
|||
10
Wobland
07.02.13
✎
10:56
|
(8) можно. НазваниеВСтроку="Докум"; на зачем?
|
|||
11
Godofsin
07.02.13
✎
10:57
|
СтрокаДокум = Строка(Докум);
|
|||
12
бомболюк
07.02.13
✎
10:57
|
Коллега назаводил кучу переменных типа ПродолжительностьРабочегоДня1 .. ПродолжительностьРабочегоДня31, а потом ему их стало лениво в коде везде писать. Список значений заведи и все.
|
|||
13
mikecool
07.02.13
✎
10:57
|
(10) блин, шаман... )
|
|||
14
Godofsin
07.02.13
✎
10:58
|
(10) Кто из нас угадал? =)
|
|||
15
andreymongol82
07.02.13
✎
10:58
|
(12) Китайский программист?
|
|||
16
DrRaptor
07.02.13
✎
10:59
|
Переменных много с абсолютно разными названиями (не 1, 2, 3!!!!)
Их названия в строковом виде передаются в процедуру для сложной обработки |
|||
17
mikecool
07.02.13
✎
11:00
|
(16) почему низя передать сами переменные?
|
|||
18
Wobland
07.02.13
✎
11:00
|
(16) мощно. а что там с этими строками происходит?
|
|||
19
Godofsin
07.02.13
✎
11:00
|
ч0рт...
|
|||
20
mikecool
07.02.13
✎
11:00
|
+17 понапридумывают себе геморроев, в больницах хер протолкнешься...
|
|||
21
Wobland
07.02.13
✎
11:00
|
адреса в памяти ещё можно передавать
|
|||
22
mikecool
07.02.13
✎
11:01
|
(21) указатели?
|
|||
24
АЛьФ
07.02.13
✎
11:02
|
2(16) И?
|
|||
25
mikecool
07.02.13
✎
11:03
|
(24) не торопи, ТС нервничает...
|
|||
26
пипец
07.02.13
✎
11:03
|
курите шаблон
|
|||
27
Wobland
07.02.13
✎
11:03
|
(22) ага. плюс имя машины, чтоб значения по сети доставать ;)
|
|||
28
DrRaptor
07.02.13
✎
11:03
|
Вот одна из строк процедуры:
Документы = Спр.Основание.Получить(НаДату).ПолучитьАтрибут("Документы") А есть еще куча других переменных Так как передать Процедура(Документы), чтобы внутри процедуры появилось "Документы"? |
|||
29
mikecool
07.02.13
✎
11:03
|
офф: и таки да - аякс не отрабатывает сообщение, если оно попадает в "рекламный" номер
|
|||
30
andreymongol82
07.02.13
✎
11:03
|
(22) По хорошему указатель на массив указателей функций...
|
|||
31
mikecool
07.02.13
✎
11:04
|
(28) Процедура("Документы")
|
|||
32
mikecool
07.02.13
✎
11:04
|
автор, юзай список значений
|
|||
33
АЛьФ
07.02.13
✎
11:05
|
2(25) Боюсь, что если его не подгонять, то мы тут и выходные проведем.
|
|||
34
АЛьФ
07.02.13
✎
11:05
|
2(28) Зачем?
|
|||
35
DrRaptor
07.02.13
✎
11:05
|
(31): а как из "Документы" получить Документы?
|
|||
36
DJ Anthon
07.02.13
✎
11:06
|
(16) парси мдшник гкомпом ))
|
|||
37
НЕА123
07.02.13
✎
11:06
|
ТСу надо (26)
|
|||
38
mikecool
07.02.13
✎
11:07
|
(35)
Список = СоздатьОбъект("СписокЗначений") Список.Установить("Документы", Документы) ... Список.Получить("Документы") - это вернет Документы |
|||
39
АЛьФ
07.02.13
✎
11:07
|
2(37) Нет, т.к. внутри процедуры у него не будет переменной с именем "Документ", а будет только ее имя. ТСу надо непонятно что.
|
|||
40
DrRaptor
07.02.13
✎
11:10
|
(39) - я просто спросил как превратить наименование переменной в строку (ну или наоборот) и все. Если все настолько "профессионал", что такой фигни не знают, то извините меня дурака!
|
|||
41
Wobland
07.02.13
✎
11:11
|
(40) извиняем. надо непонятно что
|
|||
42
ЧеловекДуши
07.02.13
✎
11:12
|
Чёрт... а как бы не Пятницо, чудотворное уже в четверг начинает работать :)
(0)Поделись с Мистянами травой :) |
|||
43
DrRaptor
07.02.13
✎
11:13
|
Что непонятно? один простейший вопрос и все!
У констант можно получить имя, у реквизитов можно, а почему у переменной нельзя. |
|||
44
andreymongol82
07.02.13
✎
11:13
|
(40) Неа.
Такой фигни мы не знаем, и нам очень обидно, что такой фигни не знаем. Простим, если поделишься, чем ты укуриваешься? |
|||
45
andreymongol82
07.02.13
✎
11:15
|
(43) Ыыыыыыыы, автор пишите еще!
|
|||
46
bolder
07.02.13
✎
11:15
|
(0) Внезапно :
Перем докум; Вызватьоченьсложнуюпроцедуру("докум"); |
|||
47
Wobland
07.02.13
✎
11:19
|
(43) как работает компилятор, чуть-чуть представляешь?
|
|||
48
АЛьФ
07.02.13
✎
11:19
|
2(40) Тебя спросили: зачем? В результате ответа на этот вопрос будут разные советы.
|
|||
49
АЛьФ
07.02.13
✎
11:20
|
2(43) Зачем?
|
|||
50
viktor_vv
07.02.13
✎
11:22
|
Я так понял это ему что-то типа восьмерочного
Выполнить(ТекстКода) надо. В 1C++ подойдет наверное Выполняемый модуль. Еще как-то через Шаблон наверное можно изварится. |
|||
51
Wobland
07.02.13
✎
11:22
|
(50) ему типа сам ТекстКода надо
|
|||
52
DrRaptor
07.02.13
✎
11:24
|
- Насыпьте мне 100 грам конфет.
- А зачем? - Просто угощу друзей. - А зачем их угощать? - Чтобы порадовать. - А зачем вам друзья? Вы знаете ка нужно есть конфеты? Вы вообще в курсе, что нужно снимать фантики? Вы сначала скажите что у вас за друзья, а потом я уже подберу то, что нужно. Вам вообще не конфеты нужны, а цемент. |
|||
53
andreymongol82
07.02.13
✎
11:26
|
(52) Да-да. Цемент. Вам нужен цемент!
|
|||
54
DJ Anthon
07.02.13
✎
11:26
|
(39) да не, я угораю просто, он тут принципы программирования все рушит одним довольно-таки простым запросом ) а вообще иногда в отладке охота такую функцию...
|
|||
55
Ёпрст
07.02.13
✎
11:28
|
Вот и последствия потепления - грибники откопали свеженьких грибочков.
Эка автора торкает. |
|||
56
ЧеловекДуши
07.02.13
✎
11:29
|
(49)Могу попытаться протелепатировать.
Ему лень теперь перебирать все те переменные, которые были тупо созданы быдло-годером. Ну типо: Перем1 Перем2 ... Перем2000 и т.д... В зависимости от строк в запросе. |
|||
57
Ёпрст
07.02.13
✎
11:30
|
Даже то что ему нужно, объяснить не может.
Аутор - выпий водки - это ослабляет эффект от употребления тяжелых синтетических наркотиков - мот тогда смогешь объяснить, чего тебе надо в итоге и зачем. |
|||
58
DJ Anthon
07.02.13
✎
11:30
|
(56) или обфускатором
|
|||
59
ЧеловекДуши
07.02.13
✎
11:31
|
(52)Зря ты так, Альф не каждый раз снисходит до тупых вопросов в (0) :)
|
|||
60
DJ Anthon
07.02.13
✎
11:31
|
(57) да может, но не хочет, может, ему стыдно признаться в незнании чего-то
|
|||
61
Ёпрст
07.02.13
✎
11:31
|
(58) думаю, аутору рано еще об этом
|
|||
62
Wobland
07.02.13
✎
11:31
|
(52) а ты просишь 100 ампер яблок
|
|||
63
DrRaptor
07.02.13
✎
11:32
|
Ну пипец, ребята.
Вы тут все пря гении. "спасибо" за "помощь" |
|||
64
DJ Anthon
07.02.13
✎
11:32
|
(62) нет, ведро фазы
|
|||
65
АЛьФ
07.02.13
✎
11:33
|
2(52)
- Насыпьте мне 100 грам конфет. - А зачем? - В пакетик мне конфет насыпьте. - Зачем? - Так они в цветных фантиках. - Зачем вам конфеты? Вы будете их есть сам или кого-то угощать? - Ну вы тупые все тут! Я же говорю мне конфет надо насыпать! |
|||
66
пипец
07.02.13
✎
11:33
|
// Присвоить значение переменной по ее имени.
// в глоб.модуль: Функция Присвоить(Чему,Что) Экспорт Чему = Что; Возврат ""; КонецФункции // варианты вызова: // Шаблон("[Присвоить("+ИмяПеременной+",ПеременнаяСоЗначением)]"); // Шаблон("[Присвоить("+ИмяПеременной+","+ИмяПеременнойСоЗначением+")]"); // Пример: пусть у нас на форме есть 5 числовых реквизитов К1, К2, ... К5 Для н=1 по 5 Цикл Шаблон("[Присвоить("+("К"+н)+","+(н)+")]"); КонецЦикла; |
|||
67
Ёпрст
07.02.13
✎
11:35
|
(63) выплюнь кашу и объясни по человечьи, что тебе надо.
Если то, что в (0) То так: Перем Вася; Процедура ЧтоТо(ИмяПеременной) Сообщить(ИмяПеременной); КонецПроцедуры Вася = "Лох"; ЧтоТо("Вася"); Если ты не видишь, что это бред, то см.(57) |
|||
68
Ёпрст
07.02.13
✎
11:36
|
(66) это он не осилит , надо давать первоисточник
http://my1c-archive.narod.ru/knowhow/shablon.html |
|||
69
DCKiller
07.02.13
✎
11:40
|
(0) Создай список с именами всех объявленных в модуле переменных, и бери их из него.
|
|||
70
viktor_vv
07.02.13
✎
11:41
|
Добавим пищи для размышлений :). Нужна правда 1С++.
Перем Докум ; Функция ВыполнитьМодуль(ИмяПеременной) Модуль=СоздатьОбъект("ВыполняемыйМодуль"); ТекстКода = ""+ИмяПеременной + " = 25 ;"; Модуль.УстановитьМодуль(ТекстКода); Модуль.ПрисоединитьТекущийМодуль(); Модуль.КомпилироватьМодуль(); //Модуль.Конт=10; Модуль.ВыполнитьМодуль(); КонецФункции //******************************************* Процедура Сформировать() ВыполнитьМодуль("Докум"); Сообщить(Докум); КонецПроцедуры |
|||
71
Ёпрст
07.02.13
✎
11:43
|
(70) можно и шаблоном, токма аутор просит не то.
|
|||
72
ЧеловекДуши
07.02.13
✎
11:43
|
(71)Автор жмот, он травой не делится :(
|
|||
73
GROOVY
07.02.13
✎
11:45
|
Можно же просто использовать функцию ИмяПеременнойВСтрокуВнутр()...
|
|||
74
VladZ
07.02.13
✎
11:47
|
(0) Гы-гы-гы... Переменная нужна для хранения информации. Своего рода, банковская ячейка. Вот прикинь, ты положил в банковскую ячейку какие-то драгоценности. Приходишь в банк и говоришь: "Дайте мне доступ к ячейке, номер которой я не знаю". Как думаешь, что тебе ответят?
|
|||
75
GLazNik
07.02.13
✎
11:50
|
Чёрт. Хочу как ТС... не работать, а решать "глобальные" вопросы получения имени переменной. И за это получать деньги.
|
|||
76
viktor_vv
07.02.13
✎
11:51
|
(71) Ну да, в (50) предположил это.
Правда (70) ему больше подойдет, для реализации необузданной фантазии :). Мне на халтуре досталось (70), там в справочнике, в реквизите неограниченной длины целые сочинения есть. Зело доставляет при отладке :). |
|||
77
1Сергей
07.02.13
✎
12:15
|
Днём ошибся. Пятница завтра
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |