|
|
|
v8: Представление булевого значения | ☑ | ||
|---|---|---|---|---|
|
0
Stim
23.07.13
✎
14:14
|
Передаю параметр в функцию, типа
ВыполнитьМойЗапрос(Истина) Функция ВыполнитьМойЗапрос(Параметр =Истина) Запрос = новый запрос Запрос.текст = " бла-бла .. ГДЕ Какое-то условие И "+Параметр +" остальная часть запроса"; Несмотря на то, что передается Истина и отладчик показывает Параметр как тип булево значение Истина - в тексте запроса условие трансформируется в ГДЕ Какое-то условие И Да Соответственно возникает ошибка выполнения запроса. Как быть? |
|||
|
1
Wobland
23.07.13
✎
14:16
|
&Параметр
|
|||
|
2
Wobland
23.07.13
✎
14:16
|
двоечник
|
|||
|
3
Wobland
23.07.13
✎
14:19
|
http://infostart.ru/public/115188/
это прекрасно! |
|||
|
4
Stim
23.07.13
✎
14:22
|
Мда. А постарше есть кто-нибудь дома?
|
|||
|
5
Поросенок Петр
23.07.13
✎
14:25
|
"Как быть?" - впредь не копрокодить.
|
|||
|
6
Wobland
23.07.13
✎
14:25
|
(4) вызывай взрослых
|
|||
|
7
Stim
23.07.13
✎
14:26
|
Или просто - почему в отладчике Строка(Истина) в одной базе дает значение "Да", а в другой - "Истина" ?
|
|||
|
8
Stim
23.07.13
✎
14:26
|
+ платформа одна и та же
|
|||
|
9
Stim
23.07.13
✎
14:28
|
А, тьфу, режим совместимости
|
|||
|
10
Stim
23.07.13
✎
14:28
|
Всем спасибо)
|
|||
|
11
Wobland
23.07.13
✎
14:29
|
в книгу знаний!
|
|||
|
12
Aprobator
23.07.13
✎
14:30
|
однозначно ))) Вся причина в режиме совместимости 0)
|
|||
|
13
Aprobator
23.07.13
✎
14:32
|
(10) открой для себя региональные установки информационной базы.
|
|||
|
14
Stim
23.07.13
✎
14:32
|
Сказка ложь да в ней намек.
|
|||
|
15
Stim
23.07.13
✎
14:33
|
(13) это к сабжу не относится.
|
|||
|
16
Aprobator
23.07.13
✎
14:35
|
вообще такое ощущение, что у тебя параметр передается в запрос с использованием Формат(...).
|
|||
|
17
Maxus43
23.07.13
✎
14:35
|
(15) как раз это к сабжу относится, а вот пост (0) не относится
|
|||
|
18
Maxus43
23.07.13
✎
14:35
|
(16) он не передаёт параметр вобще...
надо + "И &параметр" |
|||
|
19
Stim
23.07.13
✎
14:36
|
(17) неа.
(18) НЕТ! |
|||
|
20
Aprobator
23.07.13
✎
14:36
|
(18) так, а я о чем? Происходит преобразование Параметр в строку согласно Региональным установкам информационной базы.
|
|||
|
21
Aprobator
23.07.13
✎
14:37
|
(19) двоечник.
|
|||
|
22
ДенисЧ
23.07.13
✎
14:38
|
(19) Тебе там что надо получить? Истина?
Так и пиши " + ?(Параметр, "Истина", Ложь") + " |
|||
|
23
hhhh
23.07.13
✎
14:38
|
(19) вот так надо
Функция ВыполнитьМойЗапрос(Параметр ="Истина") |
|||
|
24
Aprobator
23.07.13
✎
14:38
|
(17) а плин ссорь - не дочитал )
|
|||
|
25
Maxus43
23.07.13
✎
14:40
|
да вобще ставить в ГДЕ истина/ложь рядом с И - вобще смысла нет парктически... с ИЛИ бывает нужно)
|
|||
|
26
Stim
23.07.13
✎
14:41
|
Жертвы названий переменных. Параметр -это параметр функции, являющийся условием в запросе. Да, можно его передавать как "Истина", но отчет делали еще в 40е годы, когда 8.2 небыло
|
|||
|
27
Aprobator
23.07.13
✎
14:42
|
(26) да пофиг что. Тебе уже объяснили, что происходит с параметр булево, когда ты его со строкой плюсовать начинаешь. Совсем ослеп что ли?
|
|||
|
28
Maxus43
23.07.13
✎
14:42
|
у 8.2 по умолчанию представление только поменялось, измени на нужное в (13). Или мы не ищем лёгких путей?
|
|||
|
29
acsent
23.07.13
✎
14:42
|
Формат()
|
|||
|
30
Stim
23.07.13
✎
14:42
|
+ и в те годы не было таких извращений с представлением булевных значений
|
|||
|
31
Aprobator
23.07.13
✎
14:43
|
(30) в каменном веке компов вообще не было и что?
|
|||
|
32
Aprobator
23.07.13
✎
14:45
|
тем более что тут не извращение. То что кто то пытается сформировать текст запроса таким образом.
|
|||
|
33
Aprobator
23.07.13
✎
14:45
|
+()32) имелось ввиду представление не извращение конечно же.
|
|||
|
34
Stim
23.07.13
✎
14:47
|
(31) все правильно - не было компов, не надо было кодить.
Или ты предлагаешь еще с 77 начинать использование функции 8.2? |
|||
|
35
Aprobator
23.07.13
✎
14:48
|
(34) я предлагаю думать говолой и изучать инструмент которым пользуешься.
|
|||
|
36
Aprobator
23.07.13
✎
14:48
|
+(35)а не искать оправдания своему незнанию.
|
|||
|
37
Stim
23.07.13
✎
14:49
|
(35) да-да. Примерно так же, как ты пользуешься русским языком)
|
|||
|
38
Dethmont
23.07.13
✎
14:51
|
Перевод типа Булево в строку в пределах одного контекста выполнения само по себе бред
правильный ответ в (18) |
|||
|
39
Aprobator
23.07.13
✎
14:51
|
(37) нормально я им пользуюсь. Когда быстро набираю иногда по клавишам промахиваюсь не более того.
|
|||
|
40
Поросенок Петр
23.07.13
✎
14:51
|
Вообще основная волна вскрытия копрокода прокатилась по мисте после изменения представления типов в 8.2. Что-то вы запоздали.
|
|||
|
41
Dethmont
23.07.13
✎
14:53
|
(40) +100500
|
|||
|
42
Ненавижу 1С
гуру
23.07.13
✎
14:53
|
не ожидал от Stim
|
|||
|
43
Ненавижу 1С
гуру
23.07.13
✎
14:54
|
(40) думаешь в следующей версии они уберут НайтиПоРеквизиту?
|
|||
|
44
Maxus43
23.07.13
✎
14:55
|
(43) конфигуратор уберут в следующей версии. Доступ туда будет только после теста IQ
|
|||
|
45
Dethmont
23.07.13
✎
14:56
|
(43) Миста взорвется от наплыва =)))
|
|||
|
46
Stim
23.07.13
✎
14:57
|
(38) ничего не бред. Бред - это когда Представление значения Истина равно Да
|
|||
|
47
Dethmont
23.07.13
✎
14:59
|
(46) Зачем переводить БУЛЕВО в представление?
Завтра ИСТИНА будет = "Угу", ЛОЖЬ = "Неа" |
|||
|
48
Поросенок Петр
23.07.13
✎
14:59
|
(43) НайтиПоРеквизиту очень годная функция для разовых произвольных алгоритмов. Написал, запустил и выбросил.
|
|||
|
49
Maxus43
23.07.13
✎
14:59
|
(46) бред опираться на представление...
помню овнокод при ситуации (40), по слову ДокументСсылка в представлении типа определяли док это или справочник |
|||
|
50
Stim
23.07.13
✎
15:02
|
(47) ну как минимум должно быть можно указывать в запросе ГДЕ Условие = Угу.
|
|||
|
51
Ненавижу 1С
гуру
23.07.13
✎
15:03
|
(50) он еще и упирается, марш на дубовый!
|
|||
|
52
Поросенок Петр
23.07.13
✎
15:03
|
Теперь мы путаем литералы и представления. Уже бы тихо слил ветку...
|
|||
|
53
Aprobator
23.07.13
✎
15:07
|
(50) убил - наповал просто.
|
|||
|
54
Stim
23.07.13
✎
15:07
|
(52) хотелось бы более однозначной обратной связи между значением и представлением булевного значения.
|
|||
|
55
ДенисЧ
23.07.13
✎
15:07
|
(54) Ты что, бухнул уже?
|
|||
|
56
Maxus43
23.07.13
✎
15:08
|
(54) представление для пользователей
|
|||
|
57
Dethmont
23.07.13
✎
15:11
|
ГДЕ Представление(Условие) = "Угу"
|
|||
|
58
Ненавижу 1С
гуру
23.07.13
✎
15:13
|
(54) такого не может быть, ибо эта функция не инъективна на множестве всевозможных значений (всех типов)
|
|||
|
59
VitShvets
23.07.13
✎
15:16
|
запрос... ГДЕ " + Формат(Истина, "БЛ=Ложь; БИ=Истина") + "...
Но обычно делают ГДЕ 1=1 + " ?(ВПараметреЕстьЧтоТо, " И " + ТекстУсловия, "") + " |
|||
|
60
Stim
23.07.13
✎
15:17
|
(56) почему преобразование в строку любого значения дает тот же визуальный результат, кроме булева?
В чем был смысл отделять булево от остальных значений? |
|||
|
61
VitShvets
23.07.13
✎
15:18
|
(60) Пользуй Формат(ПеременнаяТипаБулево, "БЛ=Ложь; БИ=Истина")
|
|||
|
62
Serginio1
23.07.13
✎
15:19
|
XmlСтрока(Истина)="true"
|
|||
|
63
Maxus43
23.07.13
✎
15:20
|
(60) не только булево поменялось, представление ссылочных объектов тоже поменялось. Ну и разрабы 1с не могли и представиьт такого копрокода (0) есно
|
|||
|
64
Поросенок Петр
23.07.13
✎
15:20
|
Таки ощущение что завтра суббота.
|
|||
|
65
Stim
23.07.13
✎
15:21
|
+ почему нельзя было по умолчанию оставить Строка(Истина)= Истина, а представление пользователю оставить в Формат() ?
|
|||
|
66
Ненавижу 1С
гуру
23.07.13
✎
15:21
|
(60) приведи пример "любого" такого значения
|
|||
|
67
Stim
23.07.13
✎
15:24
|
(66) число, дата, любые ссылки
|
|||
|
68
VitShvets
23.07.13
✎
15:30
|
(65) Потому что булево в SQL лежит как 0х00 и 0х01. Как показать пользователю это безобразие выбирает автор прикладного решения. В общем случае платформа 1С показывает булево в виде, понятном человеку далёкому от ИТ, т.е. "Нет" и "Да".
(66) Неправда. число лежит как число, т.е. например 1000. Но Строка(1000) в представлении 1С будет "1 000", что не равно "1000". Про ссылочные типы воопще молчу - в таблицах это фигня вида 0xA162BED7F0A1BFC747ABD582645C3435 |
|||
|
69
Serginio1
23.07.13
✎
15:30
|
(67) Которые зависят от региональных настроек. XMLСтрока более дает однозначное представление
|
|||
|
70
DS
23.07.13
✎
15:31
|
(67) Ни то, ни другое, ни третье...
|
|||
|
71
VitShvets
23.07.13
✎
15:31
|
*(66) -> (67)
|
|||
|
72
Maxus43
23.07.13
✎
15:31
|
(67) ты программист или уборщица в конце концов? Работать надо с данными, а не с текстом
|
|||
|
73
acsent
23.07.13
✎
15:32
|
(69) за код с использованием представления нужно по рукам бить битой
|
|||
|
74
ДенисЧ
23.07.13
✎
15:32
|
(67) Ни число, ни дата - не являются жёстко фиксированными при выводе.
А с 8.3 - и ссылки тоже. |
|||
|
75
Stim
23.07.13
✎
15:38
|
(74) да. И здесь кроется еще одна проблема - в преемственности. Использовать Строка(Истина) плохо, ок. Но в 8.1 оно работает и выдает однозначный результат "Истина". Не должно быть такого, чтобы при смене платформы того же семейства переставал работать функционал.
|
|||
|
76
Maxus43
23.07.13
✎
15:39
|
(75) не должно быть быдлокода. в типовых же такого нет? О преемственности думают заранее
|
|||
|
77
Starhan
23.07.13
✎
15:40
|
(75) во первых функциональность.
во вторых функциональность работает, не работает твой код :) |
|||
|
78
Stim
23.07.13
✎
15:41
|
(76) типовые - не образец идеального кода. При всех ими принятых стандартов, ошибок у них много, и некоторые довольно критично к тиражируемым решениям
|
|||
|
79
Starhan
23.07.13
✎
15:42
|
(76) в типовых тоже пришлось менять перед переходом :)
Где то даже были рекомендации по проверке своего кода перед переходом с 8.1 на 8.2 |
|||
|
80
Stim
23.07.13
✎
15:42
|
*критичны
|
|||
|
81
Maxus43
23.07.13
✎
15:43
|
(78) конечно типовые не идеальны, но такого откровенного надругательства над здравым смыслом там нет
(79) ну там функционал менялся... тоже лопатил УПП 1.2 всю, чтоб режим совместимости снять) |
|||
|
82
ДенисЧ
23.07.13
✎
16:02
|
А кстати, подскажите, как статья на ИТС называется, про проверку при переходе с 81 на 82?
|
|||
|
83
Wobland
23.07.13
✎
16:03
|
(75) по-моему, это физический дефект мозга
|
|||
|
84
Wobland
23.07.13
✎
16:03
|
+(83) особенно в сочетании с (0)
|
|||
|
85
EvgeniuXP
23.07.13
✎
16:08
|
Да - да? - да-а-а-а :)
|
|||
|
86
1s_ivan
23.07.13
✎
16:36
|
Stim, спасибо за тему, кому-то она наверняка сбережет драгоценное время.
Wobland, Вам понравится если после каждого вашего поста или темы кто-то будет писать "иди в сад - учи букварь", "откуда ты такой умный вылез" и прочие уничижения. Я не понимаю причин, разводить тут неадекватный вопросу взрыв эмоций. Мне думается, этот форум нужен для общения и взаимопомощи коллег, а не как ролевая игра "тролли против всех". Давайте уважать друг друга. Извините что так много букв. Спасибо за внимание. |
|||
|
87
Maxus43
23.07.13
✎
16:39
|
айайай Wobland, веди себя культурно
|
|||
|
88
ДенисЧ
23.07.13
✎
16:40
|
(86) А ты кто такой, давайдосвиданье...
|
|||
|
89
Wobland
23.07.13
✎
16:43
|
(86) автор фееричен в гуманитарности своего взгляда. никакого оправдания тут быть не может
|
|||
|
90
Wobland
23.07.13
✎
16:43
|
+(89) с одной оговоркой: автор считает себя программистом
|
|||
|
91
1s_ivan
23.07.13
✎
16:53
|
Ребята, мужчины, господа, товарищи и проч. - вы нарушаете правила форума пункт 1 и 7. Цитирую:
1. Не ругайтесь и не оскорбляйте других. ... 7. Соблюдайте общепринятые нормы морали, права и сетевой этикет. |
|||
|
93
hhhh
23.07.13
✎
17:01
|
(91) ну просто все разбегутся отсюда. Вы ведь предлагаете скукотищу, мертвечину.
|
|||
|
95
1s_ivan
23.07.13
✎
17:06
|
(93) Вовсе нет, хотите драйва, можно порешать кто сильнее Чак Н. или 1с 6.0. Вроде в теме форума, но есть пространство для беседы (кто помнит 1с6).
|
|||
|
96
Stim
23.07.13
✎
21:01
|
(91) забей, чувак) это миста. укуси другого, пока не укусили тебя. соревнования по 22см без повторов
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |