|
"Истина" теперь - "Да" в 8.2 (без режима совм. с 8.1) | ☑ | ||
---|---|---|---|---|
0
Stagor
21.06.12
✎
18:13
|
Сообщить(Строка(Истина));
в реж. совм. результат "Истина" в без реж. совм. результат "Да" и зачем это нужно было делать? много что стало глючить! Есть способ заставить переводить в строку, как и раньше в новом режиме? |
|||
55
PR
21.06.12
✎
18:50
|
+(53) А то кто-нить поставит в качестве разделителя тысяч в 1С например "ё" и все, капец, фирма банкрот.
|
|||
56
Stagor
21.06.12
✎
18:51
|
(53) Да, я знаю! Но в итоге и в твоем примере есть "Строка(Док.Реквизит);" описанный "быдлокод", как утверждал в (1)
|
|||
57
PR
21.06.12
✎
18:52
|
(56) Ты не путай теплое с мягким.
В моем случае это действует тогда, когда тип не булево, а, например, ссылка на что-то. |
|||
58
Stagor
21.06.12
✎
18:54
|
(30) Твоя конструкция не работает (исходя из документации) с Перечислением, к примеру, вернее работает, но дает не тот результат!
(57) И, что это меняет? С булевым это то же разрешено применять! |
|||
59
andrewks
21.06.12
✎
18:55
|
пойду я лучше с мелким в футбол попиннаю
|
|||
60
PR
21.06.12
✎
18:56
|
||||
61
Stagor
21.06.12
✎
18:59
|
Самый короткий и логичный код
"Текст = Текст + Строка(Док[Реквизит]);" он не запрещен семантикой, и верно работал в 8.1 и по идее не должен был поменять свою функциональность и в 8.2, но 1С-у очень хотелось К примеру, с тем же перечислением код приведения к строке мало кто из вас знает, поскольку не сталкивался, но я по этой причине не кого не пытаюсь унизить, что у него низкая квалификация, это я к andrewks и PR |
|||
62
PR
21.06.12
✎
19:01
|
(61) Ты серьезно утверждаешь, что я не смогу преобразовать значение перечисления в строку?
LOL |
|||
63
Stagor
21.06.12
✎
19:01
|
(62) жду
|
|||
64
MrStomak
21.06.12
✎
19:02
|
(61) Это типа с метаданных брать синоним - крутое достижение?
|
|||
65
PR
21.06.12
✎
19:02
|
(63) Что ты ждешь, старости? :))
|
|||
66
PR
21.06.12
✎
19:03
|
(64) Метаданные? Что это? :))
|
|||
67
PR
21.06.12
✎
19:03
|
(64) Имя, а не синоним :))
Синоним можно и через Строка(Значение) получить :)) |
|||
68
Stagor
21.06.12
✎
19:04
|
(67) имя, конечно
|
|||
69
acsent
21.06.12
✎
19:04
|
(61) 1с сто тыщ раз предупреждало что опираться на строковое представление небезопасно.
Ты сам себя наказал |
|||
70
MrStomak
21.06.12
✎
19:05
|
(67) Черт - моя низкая квалификация теперь тоже разоблачена!!!
|
|||
71
Stagor
21.06.12
✎
19:05
|
итак, кто первый приведет достанет имя из перечисления?
у меня на это ушло 30 секунд. |
|||
72
Infsams654
21.06.12
✎
19:06
|
(67) (68) для перечислений уж в БП функцию давно сделали: Функция ПолучитьИмяЭлементаПеречисленияПоЗначению(ЗначениеПеречисления)
|
|||
73
acsent
21.06.12
✎
19:08
|
XMLСтрока(ПеречислениеСсылка)
|
|||
74
Infsams654
21.06.12
✎
19:09
|
(73) не-ка
|
|||
75
Stagor
21.06.12
✎
19:09
|
(72)
Функция ПолучитьИмяЭлементаПеречисленияПоЗначению(ЗначениеПеречисления) Экспорт ИмяЭлемента = Строка(ЗначениеПеречисления); Для каждого ЭлементПеречисления Из Метаданные.Перечисления[ЗначениеПеречисления.Метаданные().Имя].ЗначенияПеречисления Цикл Если ЭлементПеречисления.Синоним = Строка(ЗначениеПеречисления) Тогда ИмяЭлемента = ЭлементПеречисления.Имя; Прервать; КонецЕсли; КонецЦикла; Возврат ИмяЭлемента; КонецФункции |
|||
76
acsent
21.06.12
✎
19:10
|
(74) именно так !!!
|
|||
77
PR
21.06.12
✎
19:11
|
(69) Ты ничего не понимаешь! Этот код раньше работал! Пока 1С не поменяла все с ног на голову! :))
|
|||
78
PR
21.06.12
✎
19:12
|
(75) LOL :))))))))))))))))))))))))))))))))))))
|
|||
79
PR
21.06.12
✎
19:13
|
Значение.Метаданные().Имя
|
|||
80
Stagor
21.06.12
✎
19:13
|
(78) Это стандартный код, и он не оптимален!
|
|||
81
PR
21.06.12
✎
19:14
|
ТС не может быть таким... эээ... таким :))
Это ясен пень развод :)) |
|||
82
Stagor
21.06.12
✎
19:14
|
(79) не то
|
|||
83
fisher
21.06.12
✎
19:16
|
(0) Строковые представления никогда к семантике языка не относились. Кто завязывался на строковые представления типов тоже заработали попоболь при очередном переходе.
Можно юзать XMLСтрока(), это хотя бы на конкретную схему завязано. Но вообще булево всегда и везде при разного рода конвертациях не поддерживающих совместимость типов на этом уровне, преобразовывали к числу. Практически все среды (в т.ч. и 1С) понимают 0 как ложь и все остальное как истину и умеют преобразовывать явно и неявно туда и обратно. |
|||
84
acsent
21.06.12
✎
19:16
|
(79) это имя перечисления, а не значения перечисления
|
|||
85
MrStomak
21.06.12
✎
19:17
|
(79) Не, всё правильно, надо в цикле перебрать.
|
|||
86
Infsams654
21.06.12
✎
19:20
|
(76) да как же, сударь?
Перечисление: ВидыКонтактныхЛиц Имя: КонтактноеЛицоКонтрагента Значение: Контактное лицо контрагента XMLСтрока(ПеречислениеСсылка) возвращает: Контактное лицо контрагента (79) по началу, еще в 8.1. перебирал, а теперь зачем, если, есть уже в типовых (72): // Предназначена для получения имени элемента перечисления по значению. // // Параметры: // Элемент перечисления. // // Возвращаемое значение: // Строка - имя элемента перечисления в метаданных. // Функция ПолучитьИмяЭлементаПеречисленияПоЗначению(ЗначениеПеречисления) Экспорт ИмяЭлемента = Строка(ЗначениеПеречисления); Для каждого ЭлементПеречисления Из Метаданные.Перечисления[ЗначениеПеречисления.Метаданные().Имя].ЗначенияПеречисления Цикл Если ЭлементПеречисления.Синоним = Строка(ЗначениеПеречисления) Тогда ИмяЭлемента = ЭлементПеречисления.Имя; Прервать; КонецЕсли; КонецЦикла; Возврат ИмяЭлемента; КонецФункции // ПолучитьПериодичностьДляЗапросаПоЗначениюПеречисления() |
|||
87
Infsams654
21.06.12
✎
19:24
|
Вот еще лучше
// Получает имя значения перечисления как объекта метаданных // // Параметры: // Значение - значение перечисления для которого необходимо получить имя перечисления // // Возвращаемое значение: // Строка - имя значения перечисления как объекта метаданных // Функция ИмяЗначенияПеречисления(Значение) Экспорт ОбъектМетаданных = Значение.Метаданные(); ИндексЗначения = Перечисления[ОбъектМетаданных.Имя].Индекс(Значение); Возврат ОбъектМетаданных.ЗначенияПеречисления[ИндексЗначения].Имя; КонецФункции |
|||
88
Stagor
21.06.12
✎
19:25
|
(87) Ага! Именно этот ответ я и ждал от PR! Но он очевидно программировать не умеет, так как директор :)
|
|||
89
Infsams654
21.06.12
✎
19:29
|
А на счет представления булево строкой - такие проблемы действительно возникают при самописном обмене или про работе по COM с базой другой версии.
Так что, тут надо бы придерживаться каких-то правил. См. (50) |
|||
90
pumbaEO
21.06.12
✎
19:30
|
Код из (75) на кривой локализации в конфигурации с гордым клеймом "1С совместимо" для определнных синонимов не работает.
|
|||
91
Stagor
21.06.12
✎
19:31
|
(90) это я скопировал из русской локализации 1С:Бухгалтерия 2.0 для 8.2
|
|||
92
PR
21.06.12
✎
19:31
|
(82), (84) А, ну да, пардоньте :))
Значение.Метаданные().ЗначенияПеречисления[Перечисления[Значение.Метаданные().Имя].Индекс(Значение)].Имя |
|||
93
PR
21.06.12
✎
19:32
|
(85) С фига ли? :))
|
|||
94
PR
21.06.12
✎
19:33
|
(88) Ржу, не могу :)))
|
|||
95
Stagor
21.06.12
✎
19:33
|
(92) баян, и долго думал!
|
|||
96
Stagor
21.06.12
✎
19:34
|
(94) Хорошо, копи-паст быстро делаешь!
|
|||
97
PR
21.06.12
✎
19:34
|
(95) Да я не думал, я скопипастил из (87) :)))
|
|||
98
PR
21.06.12
✎
19:35
|
И что сегодня не пятница :)))
|
|||
99
andrewks
22.06.12
✎
17:39
|
(61) перечисление в строку - верх виртуозности? ржунимагу
кстати, и тут тебя в (73) переплюнули - одной строкой, и никакой шушеры |
|||
100
Stagor
22.06.12
✎
17:40
|
100..?
|
|||
101
Stagor
22.06.12
✎
17:41
|
(99) Спорим, ты про этот способ не знал?
|
|||
102
PR
22.06.12
✎
17:43
|
(101) Сынок, если уж писать, как ты написал, то тогда еще короче
Текст = Текст + Док[Реквизит]; |
|||
103
Stagor
22.06.12
✎
17:44
|
(102) с этого все и началось, сынок!
|
|||
104
andrewks
22.06.12
✎
17:45
|
(101) про хмлстроку-то? бездоказательно, как и то, знал ли про этот способ ты до того, как его акцент запостил
|
|||
105
Stagor
22.06.12
✎
17:46
|
(104) Я не знал, но не знание этой фичи, не оправдывает нападки на мою квалификацию!
|
|||
106
PR
22.06.12
✎
17:46
|
(103) С чего с этого?
|
|||
107
PR
22.06.12
✎
17:46
|
(105) Как можно нападать на то, чего нет? :))
|
|||
108
Stagor
22.06.12
✎
17:46
|
с подобной строки
|
|||
109
andrewks
22.06.12
✎
17:47
|
(105) короче, фишка в том, что зарубку, по которой ты мерился, я сделал, стоя с другой стороны стола
|
|||
110
Stagor
22.06.12
✎
17:47
|
(107) в каждой пустыне есть оазис, но не каждый верблюд его может найти :)
|
|||
111
PR
22.06.12
✎
17:48
|
(108) Ты тугой что ли? Причем здесь подобная строка?
Я говорю про то, что Текст = Текст + Док[Реквизит]; короче, чем твое Текст = Текст + Строка(Док[Реквизит]); а результат тот же. |
|||
112
Stagor
22.06.12
✎
17:50
|
(111) запись не принципиальна :)
|
|||
113
Stagor
22.06.12
✎
17:50
|
(109) сутки стоял? :)
|
|||
114
vmv
22.06.12
✎
17:50
|
(0) надо думать когда что-то делаешь сразу, а теперь только можешь повесить себя за яйца за г-код
|
|||
115
PR
22.06.12
✎
17:51
|
(110) Заметь, не я расставил точки над ё :))
|
|||
116
jk3
22.06.12
✎
17:51
|
Спасибо за ветку, поржал ))
А так, +(1) |
|||
117
Stagor
22.06.12
✎
17:54
|
(116) примитивное у тебя Ч.Ю. дальше (1) пункта не читал!
|
|||
118
Stagor
22.06.12
✎
17:55
|
(115) Слишком много времени тратишь - лучше укажи своим программистам на их высокую квалификацию!
|
|||
119
Mafoni
22.06.12
✎
17:56
|
(0) у тя в региональных настройках (Конфигуратор - Админитсрарование - Региональные настройки ИБ) какой язык выбран ? и чего тама заполнено вообще ?
|
|||
120
Stagor
22.06.12
✎
18:00
|
ничего не стоит - пустые
|
|||
121
Stagor
22.06.12
✎
18:00
|
наверно слетели (
|
|||
122
Stagor
22.06.12
✎
18:02
|
(119) Спасибо, за подсказку, кстати!
|
|||
123
PR
22.06.12
✎
18:02
|
Поставь то. что тебе нужно и возрадуйся :))
|
|||
124
Stagor
22.06.12
✎
18:04
|
(123) это не твоя заслуга!
|
|||
125
PR
22.06.12
✎
18:05
|
(124) Ну да, (39)-то Пушкин написал :))
|
|||
126
Asirius
22.06.12
✎
18:06
|
Кстати да... поддержу топикстартера
Если я например, захочу сделать текстовый отпечаток документа, чтобы во внешней базе контролировать все изменения или к примеру сравнивать две независимые базы на равенство, то тоже применю такую конструкцию Цикл по реквизитам ... Текст = Текст+Строка(Док[Реквизит]); |
|||
127
PR
22.06.12
✎
18:08
|
(126) Прочти ветку целиком и собери на свой счет все эпитеты, отвешенные автору :))
|
|||
128
Stagor
22.06.12
✎
18:16
|
в (39) нет решения проблемы только факт проблемы!
|
|||
129
PR
22.06.12
✎
18:18
|
(128) В (39) до конца не разжевано, да :))
Нужно было пару раз двинуть челюстями :)) Если бы были :)) |
|||
130
MrStomak
22.06.12
✎
18:19
|
(128) Т.е. про влияние региональных настроек тебе недостаточно? Нужно чтобы прям носом тыкали?
|
|||
131
Mafoni
22.06.12
✎
18:19
|
(121) даже Язык (Страна) не выбран ????
|
|||
132
Mafoni
22.06.12
✎
18:20
|
(130) щас тыкнем :)
|
|||
133
Stagor
22.06.12
✎
18:21
|
(129) смысл в такой помощи был нулевой!
|
|||
134
PR
22.06.12
✎
18:22
|
(133) Для _тебя_ да, согласен :)))
|
|||
135
Stagor
22.06.12
✎
18:25
|
(131) страна выбрана, а вот все остальные настройки слетели, та как неделю назад все работало. Может кто специально стер... хотя вряд ли!
(130) про влияние региональных настроек в (39) не было |
|||
136
Stagor
22.06.12
✎
18:27
|
что поделать, народу типа (1) проще написать "а нехер было быдлокодить", чем конкретику написать!
|
|||
137
PR
22.06.12
✎
18:27
|
(135) Я не верю, что ты настолько тугой.
Раньше на уровне платформы умолчаниями были Истина и Ложь, потому все и работало без заполненных настроек. Потом опять же на уровне платформы умолчаниями стали Да и Нет, потому все и заработало по-другому, опять же без заполненных настроек. |
|||
138
Stagor
22.06.12
✎
18:30
|
(137) И, что в такой форме сложно было написать?
|
|||
139
andrewks
22.06.12
✎
18:30
|
всё ещё кипятите? )))
|
|||
140
PR
22.06.12
✎
18:31
|
(138) Ты не понимаешь мотивов людей, помогающих на форуме таким как ты :))
|
|||
141
Stagor
22.06.12
✎
18:32
|
(140) у всех свои мотивы
|
|||
142
PR
22.06.12
✎
18:40
|
(141) Именно.
И мало кто хочет просто ответить на вопрос, да еще невежде. Мне вот, например, важно, чтобы человека задело за живое, в этом случае больше шансов, что ему станет стыдно за свое невежество и он не забудет те знания, которые я ему дал, и может самостоятельно подтянет свой уровень. Мне же в этом случае не будет жалко своего потраченного драгоценного времени, в итоге не выброшенного под ноги бездарю :)) |
|||
143
Zaid
22.06.12
✎
18:44
|
Спасибо, парни, за отличное настроение ))
Отдельно респект PR и andrewks! |
|||
144
Zaid
22.06.12
✎
18:45
|
+(143) А Stagor нуб и опозорился...
|
|||
145
Mafoni
22.06.12
✎
19:02
|
(135) - все остальные настройки должны быть пустыми.
И не забывая про неявное преобразование типов да собственно про явное тоже не забывай! Я давно пользуюсь - Формат. С тех пора как вот так же пару раз обжегся - так что и тебе советую пользоваться форматированием . |
|||
146
SanGvin
22.06.12
✎
19:42
|
Пятница удалась хД Поржал, спасибо :)
|
|||
147
Пушкин
23.06.12
✎
02:14
|
(125) Пушкин ничего не писAл.
(143) Ты всегда получаешь кайф, от того что новичков грязью поливают? Господа, мне кажется вы как в детском саду! |
|||
148
Зеленый Кот
23.06.12
✎
08:04
|
ну и как правильно псиать условия?
=Да =Истина или как-то еще? |
|||
149
i-rek
23.06.12
✎
10:44
|
Хорош наезжать на Stagor, каждый кто тут посещает не только лайф-темы знает, что это старинный мегаспец
|
|||
150
Адинэснег
23.06.12
✎
11:53
|
Ложь - Гамно
Истина - За*бись, я отвечаю |
|||
151
Адинэснег
23.06.12
✎
11:54
|
||||
152
PR
24.06.12
✎
11:53
|
(148) Вообще-то всегда Истина или True и Ложь или False.
|
|||
153
PR
24.06.12
✎
11:53
|
(149) Смешно :))
|
|||
154
Gepard
24.06.12
✎
12:51
|
(0) а вот нечего булево с строками сравнивать
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |