|
Знак "+" в запросе | ☑ | ||
---|---|---|---|---|
0
zhig75
07.01.12
✎
03:10
|
Привет есть кусок кода, сломал башку себе, мож давно не кодил, скорей туплю.
Процедура ТоварыМестоХраненияНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) Элемент.СписокВыбора.Очистить(); СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные; Если НЕ ЗначениеЗаполнено(СтрокаТабличнойЧасти.Номенклатура) Тогда СтандартнаяОбработка = Ложь; Предупреждение("Не выбрана позиция номенклатуры!"); Возврат; КонецЕсли; СписокМест = Новый СписокЗначений(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ТоварыНаМестахХраненияОстаткиИОбороты.КоличествоКонечныйОстаток, | ТоварыНаМестахХраненияОстаткиИОбороты.МестоХранения, | ТоварыНаМестахХраненияОстаткиИОбороты.Номенклатура |ИЗ | РегистрНакопления.ТоварыНаМестахХранения.ОстаткиИОбороты КАК ТоварыНаМестахХраненияОстаткиИОбороты |ГДЕ | ТоварыНаМестахХраненияОстаткиИОбороты.Склад = &Склад | И ТоварыНаМестахХраненияОстаткиИОбороты.Номенклатура = &Номенклатура"; Запрос.УстановитьПараметр("Склад", СкладОрдер); Запрос.УстановитьПараметр("Номенклатура", СтрокаТабличнойЧасти.Номенклатура); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл; Остаток = Выборка.КоличествоКонечныйОстаток; Строка = Строка(Остаток); Строка = Формат(Остаток, "ЧГ=0"); Место = Выборка.МестоХранения; Строка = Место + Строка; Элемент.СписокВыбора.Добавить(Строка); КонецЦикла; КонецПроцедуры 1С пишет что нельзя преобразовать к числу строку. Извините за ламерский вопрос, Почему? |
|||
1
sergey yevsenya
07.01.12
✎
03:14
|
Где ругается? здесь чтоли: Строка = Место + Строка;
|
|||
2
FiftyStars
07.01.12
✎
03:16
|
Сделай так
Строка = Строка(Место) + Строка; |
|||
3
FiftyStars
07.01.12
✎
03:17
|
"Строка" это ж число у тебя
|
|||
4
FiftyStars
07.01.12
✎
03:18
|
или просто поменяй местами(но так результат несколько другой будет)
то есть строка=строка+место; |
|||
5
zhig75
07.01.12
✎
03:20
|
FiftyStars Спасибо тебе друг, выручил, я башку 3 часа ломал.
|
|||
6
sergey yevsenya
07.01.12
✎
03:20
|
с чего вдруг "Строка" - строка? формат возвращает строку
|
|||
7
sergey yevsenya
07.01.12
✎
03:22
|
(6) т.е с чего Строка - число
|
|||
8
FiftyStars
07.01.12
✎
03:22
|
(5)хотя зависит от того что надо....тебе нужна конкатенация или сложение?
|
|||
9
Злобный Фей
07.01.12
✎
03:23
|
Строка это строка. На первый взгляд код рабочий. Автор что-то недоговаривает.
|
|||
10
zhig75
07.01.12
✎
03:25
|
Как тут добавить цифру в ответ типа (6) т.е с чего Строка - число, 6 как добавляеш?
|
|||
11
FiftyStars
07.01.12
✎
03:25
|
(5)вобще для начала я бы посоветовал заменить твою переменную СТРОКА на нечто иное...я че то путаюсь
|
|||
12
sergey yevsenya
07.01.12
✎
03:25
|
Просто не может преобразовать строку к типу переменной Место, вот и ругается, наоборот естесственно срабатывает
|
|||
13
FiftyStars
07.01.12
✎
03:28
|
(10) тебе конкатенация нужна или сложение чисел?
(9)ЧГ=0 - форматирование чисел вроде как |
|||
14
zhig75
07.01.12
✎
03:29
|
Ух дурной вопрос задал, это по форуму, вы добавляете в начале поста цифру на определенный ответ (цифра) как вы это делаете?
я на форуме давно, так и не понял как это? |
|||
15
sergey yevsenya
07.01.12
✎
03:29
|
(14) просто пиши в скобках номер поста
|
|||
16
FiftyStars
07.01.12
✎
03:30
|
(14) ааа вкурил блин...путался со всем....МЕСТО у тебя ж формат - ССЫЛКА=))
|
|||
17
zhig75
07.01.12
✎
03:31
|
(13) мне надо чтоб вывод был одной строкой, число + число, а пишет что нельзя.
|
|||
18
FiftyStars
07.01.12
✎
03:38
|
(16)то есть на выходе должна быть строка содержащая к примеру
"Склад1 - 123" "Склад2 - 234" так? |
|||
19
FiftyStars
07.01.12
✎
03:39
|
Судя по этому
Место = Выборка.МестоХранения; Строка = Место + Строка; Ты пытаешься сложить МестоХранения и Остаток |
|||
20
FiftyStars
07.01.12
✎
03:40
|
(19)
Причем записав результат в ту же переменную в которой находился остаток |
|||
21
zhig75
07.01.12
✎
03:41
|
(20) дай аську свою )
|
|||
22
Упанишады
07.01.12
✎
03:45
|
(20)ИМХО. То, что он хотел получить, можно более читаемым образом записать так:
Строка = ""+Выборка.МестоХранения+" "+Выборка.КоличествоКонечныйОстаток; Элемент.СписокВыбора.Добавить(Строка); |
|||
23
zhig75
07.01.12
✎
03:46
|
(20) неа, не работает!
|
|||
24
zhig75
07.01.12
✎
03:48
|
(22) извините
|
|||
25
FiftyStars
07.01.12
✎
03:48
|
(21) [email protected]
найди меня по почте, номер я не помню |
|||
26
echo77
07.01.12
✎
05:54
|
бахни вот так:
Строка = "" + Место + Строка; А вообще ключевое слово строка советую заменить на что-либо другое |
|||
27
Один С
07.01.12
✎
08:53
|
(26) а "Запрос = Новый Запрос;" тебя не смущает?
|
|||
28
ДенисЧ
07.01.12
✎
08:56
|
(27) А тебя смущает? Может, тебе побольше с девушками общаться, чтобы не быть таким смутительным? ;-)
|
|||
29
Один С
07.01.12
✎
08:59
|
(28) меня то не смущает. но я против двойных стандартов..
|
|||
30
Бубр
07.01.12
✎
09:42
|
мда ГДЕ конечно жестко.
(0) посмотри что такое параметры виртуальных таблиц. |
|||
31
Бубр
07.01.12
✎
09:50
|
(0) и нафиг тебе таблица эта огромная для получения остатка ? бери таблицу Остатки
|
|||
32
GROOVY
07.01.12
✎
11:19
|
В (0) Образец неправильного запроса.
"ВЫБРАТЬ КоличествоОстаток, МестоХранения.Представление КАК МестоХранения ИЗ РегистрНакопления.ТоварыНаМестахХранения.Остатки(, Номенклатура, Склад В (ВЫБРАТЬ &Номенклатура, &Склад))" |
|||
34
Один С
07.01.12
✎
11:30
|
(32) фигасе. а чо так можно?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |