|
Странное поведение строковой переменной | ☑ | ||
---|---|---|---|---|
0
Rounder
04.10.13
✎
15:16
|
Формирую текст запроса:
ТекстЗапроса = "Insert Into " + ПутьН82 + " " + "(pz, hn, ndc)" + " Values " + "(" + "'" + ПризнакЗавода + "'" + "," + "'" + НоменклатурныйНомер + "'" + "," + + СтавкаНДС + ")"; СтавкаНДС = "0.1" После формирования ТекстЗапроса в нем значение ставки уже равно 0,1, т.е. разделитель запятая. Запрос вылетает по ошибке, слишком много аргументов, т.е. 0,1 считает за два аргумента, разделенных запятой. Почему происходит такое преобразование? |
|||
1
Ненавижу 1С
гуру
04.10.13
✎
15:18
|
потому что надо использовать форматирование чисел, когда к строке преобразуешь
|
|||
2
catena
04.10.13
✎
15:19
|
шо, опять???
|
|||
3
Rounder
04.10.13
✎
15:19
|
СтавкаНДС = Формат(УчетНДС.ПолучитьСтавкуНДС(СправочникСсылка.СтавкаНДС)/100, "ЧРД=.; ЧН=0");
|
|||
4
Rounder
04.10.13
✎
15:20
|
как видно в (3) - использую.
|
|||
5
Rounder
04.10.13
✎
15:29
|
Актуально.
|
|||
6
Infsams654
04.10.13
✎
15:31
|
(0) V8 "Insert Into " и это кудаж идет не тем путем товаРищь ?
|
|||
7
ДенисЧ
04.10.13
✎
15:32
|
Опять черепашки на форум ползут...
|
|||
8
Ненавижу 1С
гуру
04.10.13
✎
15:32
|
где-то ты врешь
|
|||
9
Rounder
04.10.13
✎
15:32
|
(6) (7) По существу есть что ответить?
|
|||
10
MSII
04.10.13
✎
15:33
|
(9) Ищи где-то ниже СтрЗаменить(ТекстЗапроса, ".", ",")
|
|||
11
Rounder
04.10.13
✎
15:34
|
(8) Не вру ни капли.
Именно через формат получаю представление СтавкиНДС. И до выполнения строки ТекстЗапроса = ... и после в переменной СтавкаНДС значение с разделителем точка, а в самом ТекстЗапроса уже с запятой. |
|||
12
Rounder
04.10.13
✎
15:36
|
(10) Я уже думал над этим выходом, и он вроде работает (во всяком случае в строке отладчика сработал). Но это как бы "костыль". Плюс там будет еще некое количество танцев с бубном.
Вопрос задав с целью разобраться в таком поведении системы. |
|||
13
catena
04.10.13
✎
15:40
|
(12)Система "так" не работает, зуб даю. У меня таких сборных запросов десяток и ни разу не наблюдала своевольного преобразования в строке разделителя. Проблему надо искать в другом месте.
|
|||
14
Rounder
04.10.13
✎
15:42
|
(13) Ну например разные версии платформы могут обладать разными глюками (фичами).
У меня работает именно как описано выше. СтавкаНДС с точкой и до и после выполнения кода с формированием текста запроса. А в тексте - "не оно". |
|||
15
catena
04.10.13
✎
15:44
|
(14)Перезагрузись. Почисти кэш. Если у тебя там строка, то самопроизвольно при сложении строк ничего меняться не будет. Либо там не строка.
|
|||
16
Rounder
04.10.13
✎
15:46
|
(15) Строка
Формат() возвращает строку. Плюс для чистоты эксперимента пробовал принудительно СтавкаНДС = "0.1" Итог один и тот же. |
|||
17
catena
04.10.13
✎
15:56
|
(16)гхм. Приношу извинения...
|
|||
18
catena
04.10.13
✎
15:57
|
(16)млииин! Лишний плюс перед ставкой убери!
|
|||
19
Rounder
04.10.13
✎
16:01
|
(18) Гран мерси!
Пятница - глаз замылен. Но еще не залит :) |
|||
20
catena
04.10.13
✎
20:57
|
(19)Прикольная фича, сама первый раз... Приятных выходных :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |