Вход | Регистрация



Преобразовать число до 2 -х знаков

Преобразовать число до 2 -х знаков
Я
   Стажер_1С
 
11.07.18 - 13:14
Добрый день! Вопрос в след-ем.
У меня есть число 555 
Мне надо,чтобы при выводе выходило 555,00
Через Формат(555,"ЧДЦ=2; ЧН=Ноль") не  предлагать,так как переменная становится строкой!А мне надо чтобы было число
Если сделать Число(Формат(555,"ЧДЦ=2; ЧН=Ноль")), то нули стираются
кто знает как сделать?
 
 
   NikVars
 
1 - 11.07.18 - 13:15
(0) Теперь скажи, в каком месте ты перепутал значение с отображением значения.
   Mihasya
 
2 - 11.07.18 - 13:16
В ячейке табличного поля выставить формат, не?
   assasu
 
3 - 11.07.18 - 13:18
555 = 555,00. вопрос пустой
   ololoraise
 
4 - 11.07.18 - 13:18
(0) Число 555 и 555,00 равны. Строка "555" и "555,00" не равны.
   NikVars
 
5 - 11.07.18 - 13:20
Еще не рассмотрен вариант "555.00".
   МимохожийОднако
 
6 - 11.07.18 - 13:21
(0) Стесняюсь спросить, в каком месте ты пытаешься это сделать? В реквизите объекта или реквизите формы?
   NikVars
 
7 - 11.07.18 - 13:21
В файле, в печатной форме...
   МимохожийОднако
 
8 - 11.07.18 - 13:22
(7) Не подсказывай ))
   Стажер_1С
 
9 - 11.07.18 - 13:25
Сейчас объясню. Я заполняю запрос таблицу,которая на форме.При выводе на форму,я поставила формат,и он показывает 555,00. Но потом я снова работаю я этим числом. То есть беру значения из таблицы и записываю его в пакет xdto.Проблема в том,что образе заполнения понимает только число с точностью до 2-х знаков. У меня реквизит выводиться как надо на форму.
   _Дайвер_
 
10 - 11.07.18 - 13:28
(9) А тип реквизита на форме у тебя какой? Вангую что строка...
 
 Рекламное место пустует
   МимохожийОднако
 
11 - 11.07.18 - 13:28
(9) А теперь расшифруй слова "Таблица, которая на форме". И самое главное- выкладывай сюда код. Возможно, эта промежуточная таблица не нужна вообще.
   Стажер_1С
 
12 - 11.07.18 - 13:29
Да на форме число!! Нормально у меня все на форме
вот при изображения,отладкой остановка, когда я уже работаю с числом, после записывания его на форму
https://ibb.co/bv8aHT
   МимохожийОднако
 
13 - 11.07.18 - 13:31
(12) На вопросы ответь. Кричать не надо, девушка.
   catena
 
14 - 11.07.18 - 13:31
(12)Пиши в хдто форматом.
   Стажер_1С
 
15 - 11.07.18 - 13:32
Суть задача. Я заполняю таблицу на форме.Внешняя обработка.Форма,как форма. Таблица нужна,так как пользователь смотрит данные и если надо то редактирует. Далее при нажатие на кнопку загрузить, я пробегаюсь по каждой строке таблицы и записываю значения вв пакеты xdto.таким образом формируя файл xml для выгрузки в пенсионку
   Мандалай
 
16 - 11.07.18 - 13:33
Загони в отладчик, да экспериментируй в удовольствие.
   Стажер_1С
 
17 - 11.07.18 - 13:33
Извините,не кричу я)
У меня есть формат,и там число с точностью до двух.Проблема в том,что есть число как 555, и получается что такое число не соответствует формату
   Стажер_1С
 
18 - 11.07.18 - 13:35
Да я не знаю,как  экспериментировать.Пробывала сначала формат(..) а потом снова в число,но нули стираются.Если на форме он и отражает нули,то в конф при отладке он автоматом убирает нули
   МимохожийОднако
 
19 - 11.07.18 - 13:35
(17) Помести эту таблицу в табличную часть обработки и при корректировке работай с ней. А число 555 всегда останется таким же, даже, если нарисуешь десяток нулей после запятой. Проблем в момент записи в пакет
   catena
 
20 - 11.07.18 - 13:35
(18)Не надо в число. При формировании хмл пиши Формат и все. И усвой разницу между значением и отображением.
   МимохожийОднако
 
21 - 11.07.18 - 13:36
*Проблема в момент записи . Код показывай, не стесняйся. Все уже здесь
   Стажер_1С
 
22 - 11.07.18 - 13:37
ок
   Стажер_1С
 
24 - 11.07.18 - 13:38
ошибка в этой строке:
    tFactAssignment_XDTO.assignment_info.monetary_form.amount =ТекСтр.Сумма;
   Стажер_1С
 
25 - 11.07.18 - 13:39
текстр.сумма должна быть число в двумя знаками
   catena
 
26 - 11.07.18 - 13:40
(24)Вот в этой строке и пиши Формат
   МимохожийОднако
 
27 - 11.07.18 - 13:40
=Формат(ТекСтр.Сумма,... пробовала?
   Стажер_1С
 
28 - 11.07.18 - 13:41
нельзя так,я же писала, формат() дает значение с типом строка. А мне надо чтобы было число, иначе не будет записи.только число
   Стажер_1С
 
29 - 11.07.18 - 13:43
хоть кто-нибудь,пожалуйста,я уже не знаю как.я неделю разбиралась как связать 8 пакетов между собой....
   Стажер_1С
 
30 - 11.07.18 - 13:44
А если костыль? После записи xml,прочитать его и найти все цифры которые не имеют 2 -х знаков и записать как надо?я уж делаю так с одни пространством?
   МимохожийОднако
 
31 - 11.07.18 - 13:44
Вот эти строки мне нравятся
..
НовТабл = Новый ТаблицаЗначений;
НовТабл = Таблица.Выгрузить().Скопировать();
   catena
 
32 - 11.07.18 - 13:47
(28)Еще раз. Число - это тип, ты можешь даже жестко типизировать количество знаков, но это никак не повлияет на отображение, это повлияет на твою возможность записать больше знаков, чем в типизации.

Отображение - это то, как оно выглядит глазками. И иногда с самим типом тоже не связано. Может отображаться 2 знака, а на самом деле там их много.

А теперь по буквам копируй, что у тебя происходит, если написать:
tFactAssignment_XDTO.assignment_info.monetary_form.amount =Формат(ТекСтр.Сумма,"ЧДЦ=2");
   hhhh
 
33 - 11.07.18 - 13:47
(29) проверь в самом объекте tFactAssignment_XDTO. Точно там у тебя жестко задано длина дробной части = 2?
 
 
   Стажер_1С
 
34 - 11.07.18 - 13:48
Да там так надо было,у них косяк в базе с фио большой,пришлось таким путем обойти.
   Стажер_1С
 
35 - 11.07.18 - 13:48
Сейчас все пришлю
   Стажер_1С
 
36 - 11.07.18 - 13:50
Ошибка:
{ВнешняяОбработка.Риц_ВыгрузкаЕГИССО2.Форма.Форма(225)}: Ошибка при установке значения атрибута контекста (amount)
                tFactAssignment_XDTO.assignment_info.monetary_form.amount = Формат(ТекСтр.Сумма,"ЧДЦ=2");
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение: '1 398,94' не соответствует простому типу: {urn://egisso-ru/types/basic/1.0.4}tMoney
Значение не соответствует образцу
   Garykom
 
37 - 11.07.18 - 13:50
А потом будут удивляться "А что это мне пенсия неправильно посчитана"
   catena
 
38 - 11.07.18 - 13:51
(36)В форматной строке добавь группировку.
   Garykom
 
39 - 11.07.18 - 13:51
"XMLСтрока" желательно использовать при записи в XML значений
   Стажер_1С
 
40 - 11.07.18 - 13:51
По поводу дробной части,да тип значений имеет четкий образец: [0-9]+[.,]\d{2}
   catena
 
41 - 11.07.18 - 13:51
Ну и (33)+, проверить тип в пакете не помешает.
   catena
 
42 - 11.07.18 - 13:52
(40)пф... Группировку добавь в форматную строку.
   Стажер_1С
 
43 - 11.07.18 - 13:53
Так а как добавить группировка?)
   hhhh
 
44 - 11.07.18 - 13:53
(40) тип по-другому пишется в xdto. integer, real и так далее. А вы какой-то формат строк пишете.
   Стажер_1С
 
45 - 11.07.18 - 13:54
Тип в пакете число,я же прислала образец
   catena
 
46 - 11.07.18 - 13:54
(43) пкм на кавычках в формате - открыть конструктор форматной строки
   Стажер_1С
 
47 - 11.07.18 - 13:55
Базовый тип простая строка,но образец ограничивает и заставляет писать число,это xdto и не один пакет в нем
   Стажер_1С
 
48 - 11.07.18 - 13:56
там три выбора группировки,какую мне надо?
   novichok79
 
49 - 11.07.18 - 13:57
(0) окр(твоечисло, 2)?
 
 Рекламное место пустует
   hhhh
 
50 - 11.07.18 - 13:57
(45) не просто число должно быть. ЕЕсли просто число, , тогда жестко 555 должно быть, всё правильно тогда.
   catena
 
51 - 11.07.18 - 13:59
(48)тебе надо убрать неращрывный пробел между разрядами, ну таи же даже пример резкльтата показан. Просто галочку на группировке поставь
   catena
 
52 - 11.07.18 - 13:59
"Базовый тип простая строка,"

А так долго сопротивлялась
   Стажер_1С
 
53 - 11.07.18 - 14:00
СПАСИТЕЛЬ МОЙ!!!!!ТЫ ВЕЛИКОЛЕПЕН! ПОМОГЛО
Формат(ТекСтр.Сумма,"ЧДЦ=2; ЧН=Ноль; ЧГ=0");
   Стажер_1С
 
54 - 11.07.18 - 14:01
СПАСИБО ВСЕМ,ВЫ ВСЕ ПРОСТО ЧУДО!надо почитать про группировку,никогда не использовала
   _Дайвер_
 
55 - 11.07.18 - 14:03
(45) Вот Формат(ТекСтр.Сумма , "ЧДЦ=2; ЧГ=0");
   hhhh
 
56 - 11.07.18 - 14:03
(53) всё ж таки Катена - это не спаситель. А спасительница. Вам с русским языком тоже надо разобраться
   _Дайвер_
 
57 - 11.07.18 - 14:05
У меня  тоже был такой момент при загрузке xml файла из 1С, число не читал падла, а передавал именно число, даже тему поднимал вроде как для этого ))) Все дело было в группировке числа! Блин)))
   _Дайвер_
 
58 - 11.07.18 - 14:08
(57) Хотя нет,тему не создавал, сам возился с этим целый рабочий день
   Стажер_1С
 
59 - 11.07.18 - 14:14
Я сама бы не дошла честно,если я неделю разбиралась как 8 пакетом между собой связать....Спасибо еще раз.
P.S. а рус-1 мое слабое место, когда быстро пишу)


Список тем форума
Рекламное место пустует  Рекламное место пустует
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует