|
как перевести элемент табличной части в число? | ☑ | ||
---|---|---|---|---|
0
9451523
11.02.16
✎
13:27
|
Доброго времени дня всем
возможно ли элемент табличной части документа перевести в числовой формат? Котировка = ЭлементыФормы.ТабличнаяЧасть1.Колонки.Котировка при отработке кода вылетаю в ошибку: Преобразование значения к типу Число не может быть выполнено как можно Котировка перевести в число? С Уважением Дамир |
|||
1
ДенисЧ
11.02.16
✎
13:28
|
Что отладчик говорит про ЭлементыФормы.ТабличнаяЧасть1.Колонки.Котировка ?
|
|||
2
ObjectRelation Model
11.02.16
✎
13:28
|
как можно колонку перевести в число? тоже не понимаю
|
|||
3
mastodont
11.02.16
✎
13:30
|
(0) тебе наверно все же надо перевести в число значение в какой-то строке/колонке.
|
|||
4
9451523
11.02.16
✎
13:31
|
да именно значение в колонке Котировка перевести в число
|
|||
5
Lexey_
11.02.16
✎
13:32
|
(4) код показывай
|
|||
6
9451523
11.02.16
✎
13:33
|
Процедура Пересчет(Стч)
Стч = ЭлементыФормы.ТабличнаяЧасть1.ТекущаяКолонка.Имя; Сообщить(ТипЗнч(Котировка)); Валюта = "сум"; //Договор.ВалютаВзаиморасчетов; Курс= 2800 ; //ПолучитьКурсВалюты(Валюта,КонецДня(Дата)).Курс; Кратность = 1; //ПолучитьКурсВалюты(Валюта,КонецДня(Дата)).Кратность; Кратность = ?(Кратность=0,1,Кратность); Если (Стч = "Сорт") или (Стч = "Котировка") или (Стч = "Класс") или (Стч = "Тип") или (Стч = "Коэффициент") или (Стч = "Процент") Тогда Если Стч <> "Коэффициент" Тогда Коэффициент = 0; КонецЕсли; Если Стч <> "Процент" Тогда Процент = 0; КонецЕсли; Цена = глРассчитатьЦенуХлопка(Котировка,Сорт,Класс,Тип,КодТипа,Коэффициент,Процент, СкидкаПоКонтракту); Сумма = КоличествоВес*Цена/1000; СуммаБух = Сумма*Курс/Кратность; Комиссия = Сумма*КомиссияКонтрагента/100; ВсегоБух = СуммаБух+Комиссия*Курс/Кратность; ИначеЕсли Стч = "КоличествоВес" Тогда Сумма = КоличествоВес*Цена/1000; СуммаБух = Сумма*Курс/Кратность; Комиссия = Сумма*КомиссияКонтрагента/100; ВсегоБух = СуммаБух+Комиссия*Курс/Кратность; ИначеЕсли Стч = "Скидка_" Тогда Цена = глРассчитатьЦенуХлопка(Котировка,Сорт,Класс,Тип,КодТипа,Коэффициент,Процент, СкидкаПоКонтракту); Цена = Цена -(Цена*Скидка_/100); Сумма = КоличествоВес*Цена/1000; СуммаБух = Сумма*Курс/Кратность; Комиссия = Сумма*КомиссияКонтрагента/100; ВсегоБух = СуммаБух+Комиссия*Курс/Кратность; ИначеЕсли (Стч = "СуммаБух") или (Стч = "Комиссия") Тогда ВсегоБух = СуммаБух+Комиссия*Курс/Кратность; ИначеЕсли Стч = "Сумма" Тогда КоличествоВес = ?(КоличествоВес=0,1000,КоличествоВес); Цена = Сумма/КоличествоВес*1000; СуммаБух = Сумма*Курс/Кратность; Комиссия = Сумма*КомиссияКонтрагента/100; ВсегоБух = СуммаБух+Комиссия*Курс/Кратность; КонецЕсли; КонецПроцедуры //Пересчет |
|||
7
aka AMIGO
11.02.16
✎
13:34
|
(4) поддержу (1) - надо смотреть в отладчике.
|
|||
8
xaozai
11.02.16
✎
13:34
|
(0) Вам не колонка нужна, а значение из строки.
Котировка = Стр["Котировка"]; |
|||
9
ЧеловекДуши
11.02.16
✎
13:35
|
(8) Это 7.7 :)
|
|||
10
Lexey_
11.02.16
✎
13:36
|
(6) и в какой строке ошибка?что в отладчике на этой строке?
|
|||
11
Jonny_Khomich
11.02.16
✎
13:37
|
Дамир, учите платформу 1с.
С уважением, Евгений. |
|||
12
ЧеловекДуши
11.02.16
✎
13:37
|
(6) Автор, ты что такое написал? :)
Бред сивой кобылы, либо все же у тебя 1С 7.7 :) |
|||
13
xaozai
11.02.16
✎
13:38
|
(6) Зачем там в первой же строке процедуры передаваемый параметр переопределяется?
|
|||
14
9451523
11.02.16
✎
13:41
|
Да Вы правы код из семерки , восьмую версию только начал изучать, отладчик говорит что
Преобразование значения к типу Число не может быть выполнено |
|||
15
mastodont
11.02.16
✎
13:42
|
(0) у тебя управляемое приложение или обычное?
используй ТекущиеДанные что бы получить текущую строку таблицы. а уж в строке получай значение колонки... |
|||
16
mastodont
11.02.16
✎
13:43
|
||||
17
Lexey_
11.02.16
✎
13:43
|
(14) ясно, пытать бесполезно
|
|||
18
9451523
11.02.16
✎
13:44
|
этот код в разработке еще поэтому так тупо выглядит ,
у меня обычное приложение, |
|||
19
mastodont
11.02.16
✎
13:44
|
(14) вот например как ты в экзеле преобразуешь к число колонку "А"?
|
|||
20
aka AMIGO
11.02.16
✎
13:45
|
(14) - это не отладчик сообщает, а платформа.
Умеешь с отладчиком работать? |
|||
21
9451523
11.02.16
✎
13:47
|
в семерку могу AMIGO в восемерке только начинаю
|
|||
22
mastodont
11.02.16
✎
13:47
|
(18) почитай книжку Радченко, сэкономишь кучу времени и нервов...
|
|||
23
9451523
11.02.16
✎
13:48
|
читаю уже, там такие тонкости не описаны
|
|||
24
aka AMIGO
11.02.16
✎
13:51
|
(21) разница-то не велика..
Поставь точку останова на оператор Стч = ЭлементыФормы.ТабличнаяЧасть1.ТекущаяКолонка.Имя; вызови табло запусти отчет.. вроде и всё.. |
|||
25
ЧеловекДуши
11.02.16
✎
13:51
|
(21) Если познал 7-ку, 8-ка почти одинакова. +свои грабли + плюшки :)
|
|||
26
mastodont
11.02.16
✎
13:54
|
возвращаясь к (0)
Стр = ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные; Котировка = Стр.Котировка; |
|||
27
ЧеловекДуши
11.02.16
✎
13:55
|
+ Преобразование Строка в число в 8-ке происходит с исключением. Увы, лучше либо знать заранее, что там число, либло выносить в отдельную функцию.
+ из числа в строку тоже весело. 1С в 8.ххх это делает под бодрым флагом форматирования основываясь на данных системы. т.е. Число 2000.00, может быть в виде строки "2 000,00" или "2'000.00" Это уже как выставишь в ОС-и. ...Обход: используй слово Формат(Число,"форматная строка") :) А так, у 1С 8.хх табличных частей может быть много, очень много, поэтому нельзя обращаться напрямую. Только непосредственно через сам табличный объект. Отладчик в 8-ке куда веселей, так что научись им пользоваться. Вопросов будет меньше. |
|||
28
mastodont
11.02.16
✎
13:57
|
(25) семерка ломает голову в ненужную сторону.
|
|||
29
9451523
11.02.16
✎
13:59
|
ты прав mastodont после семерки тяжело переучиватся мышление другое вырабатывается
|
|||
30
9451523
11.02.16
✎
14:05
|
mastodont твой код сработал
Стр = ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные; Котировка = Стр.Котировка; Спасибо Всем реально выручили С Уважением Дамир |
|||
31
1Сергей
11.02.16
✎
14:08
|
(28) (29) чушь
|
|||
32
hhhh
11.02.16
✎
14:11
|
(30) семерочный код нельзя переписывать в восьмерку тупо строчку за строчкой. Там совершенно другая философия. Поэтому восьмерка и тормозит, потому что ее вот так бывшие семерочники писали.
|
|||
33
ЧеловекДуши
11.02.16
✎
14:24
|
(28) Бред. 1С 7.7 на прямых запросах. Дает оценку Запросам от 1С и их "гибкого" использования и "настройки" :)
|
|||
34
ЧеловекДуши
11.02.16
✎
14:24
|
(29) Это от лени :)
|
|||
35
ЧеловекДуши
11.02.16
✎
14:26
|
+(32) +100500 :)
Все кто пишет, про перенос с 1С 7.7 на 1С 8.ххх... Не осознаю, что нет переноса, есть новое написание :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |