Имя: Пароль:
1C
 
Как выделить с помощью формат дробную часть числа?
0 Гений 1С
 
гуру
11.12.20
13:55
На ценнике нужно копейки отдельно выщемить. Можно?
1 Garykom
 
гуру
11.12.20
13:59
(0) Копейки = Цена-Цел(Цена);
2 fisher
 
11.12.20
14:00
(1) Думаю, он тужится без изменения модуля обойтись.
3 Beduin
 
11.12.20
14:01
(0) Сережа, как же так то. Это же второй класс(1) математики.
4 trooba
 
11.12.20
14:02
формат(12.33,"ЧЦ=2; ЧДЦ=2")
5 trooba
 
11.12.20
14:02
?
6 Ненавижу 1С
 
гуру
11.12.20
14:04
(4) нет
7 trooba
 
11.12.20
14:05
(6) Обоснуй
8 Гений 1С
 
гуру
11.12.20
14:06
(1) там нельзя код заюзать
9 Ненавижу 1С
 
гуру
11.12.20
14:06
(7) формат(123.45,"ЧЦ=2; ЧДЦ=2")
10 Гений 1С
 
гуру
11.12.20
14:06
(4) округлит 11.22 до 11
11 Ненавижу 1С
 
гуру
11.12.20
14:06
интересно, а целые рубли уже получилось правильно посчитать?
12 trooba
 
11.12.20
14:07
(10) Нет, проверяй формат(121111.33,"ЧЦ=2; ЧДЦ=2; ЧРД=' '")
13 Beduin
 
11.12.20
14:07
(12) Он видимо про точку
14 trooba
 
11.12.20
14:08
(13) в 12 без точки
15 fisher
 
11.12.20
14:09
(12) У меня в табло = ' 99'
16 BeerHelpsMeWin
 
11.12.20
14:22
(8) А что можно заюзать? Какой же ты после этого гениальный программист при таких постановках задач?
17 BeerHelpsMeWin
 
11.12.20
14:24
Выводи всю цену, ограничь размер ячейки двумя символами, сделай соответствующее выравнивание.
18 Малыш Джон
 
11.12.20
14:31
Если в этом месте Формат можно, то и Прав/Лев тоже наверное?

Прав(Формат(Цена,"ЧС=-2"),2)
19 Гений 1С
 
гуру
11.12.20
14:58
В общем сделал так:

    МАКСИМУМ(ВЫБОР
            КОГДА (ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))) > ЦеныНоменклатуры.Цена
                ТОГДА (ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))) - 1
            ИНАЧЕ ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))
        КОНЕЦ) КАК ЦенаРуб1,
    МАКСИМУМ(ЦеныНоменклатуры.Цена - ВЫБОР
            КОГДА (ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))) > ЦеныНоменклатуры.Цена
                ТОГДА (ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))) - 1
            ИНАЧЕ ВЫРАЗИТЬ(ЦеныНоменклатуры.Цена КАК ЧИСЛО(15, 0))
        КОНЕЦ) * 100 КАК ЦенаКоп1,

на основе: Как выделить с помощью формат дробную часть числа?
20 Гений 1С
 
гуру
11.12.20
14:58
в схему компоновки залез
21 Волшебник
 
11.12.20
14:59
гений, чо
22 Fish
 
гуру
11.12.20
15:00
(19) Казалось бы, причём тут формат?
23 trooba
 
11.12.20
15:00
(22) +1
24 trooba
 
11.12.20
15:01
(20) Так бы и писал, что в компоновке....там несколько вариантов есть.
25 Гений 1С
 
гуру
11.12.20
15:02
(22) (23) (24) В компоновке, это уже когда возможности Формат исчерпались. Пришлось лезть в компоновку. Че непонятного то?
26 trooba
 
11.12.20
15:03
(25) Это гениально
27 Гений 1С
 
гуру
11.12.20
15:03
(12) ЧЦ=2; ЧДЦ=2; ЧРД=' ' для 12111.33 выдает 99. йо?
28 Гений 1С
 
гуру
11.12.20
15:04
(26) что ты кривляешься, ясно ж сказано. Форматом не получилось, пришлось ковырять СКД
29 Гений 1С
 
гуру
11.12.20
15:05
(18) нет, это макет табличного документа, какой лев-прав
30 trooba
 
11.12.20
15:05
(28) Вычисляемое поле, не?
31 trooba
 
11.12.20
15:08
+(30) в запросе получать
32 Гений 1С
 
гуру
11.12.20
15:13
(30) да я уже решил в СКД, в печати ценников можно менять СКД. Но жалко, что нельзя это форматом разрулиь.
хотя вот счас подумал, что раз это модифицированная конфа, можно было бы залезть в модуль печати этикеток и ценников и там по маркеру заменять на числа и копейки. так было бы надежнее при обновлениях. Ну да х-с-ним
33 Ненавижу 1С
 
гуру
11.12.20
15:32
(19) целая часть в запросе берется проще, а в компоновке вообще Окр() работает
34 Престарелый Заяц
 
11.12.20
20:44
(33) Не разочаровывай гения :)
35 Конструктор1С
 
13.12.20
08:24
(19) просто мега-уродство! Вычисления в запросах сами по себе уродства, за которые нужно бить по рукам
36 Гений 1С
 
гуру
13.12.20
09:54
(35) ну расскажи свой прекрасный способ решения задачи.
хотя по сабжу я переделал всю обработку в модуле печати. Так проще обновлять.
37 Конструктор1С
 
13.12.20
12:16
(36) если в отчете, то СКД предоставляет несколько способов. Если в коде, то обходишь результат запроса и кодом вычисляешь нужное значение. Вычисления в запросах - моветон. Поналепишь своих "гениальных" костылей, потом другие будут мучиться
38 Гений 1С
 
гуру
13.12.20
14:03
(37) там нет СКД, мой юный друх. Посмотри процедуру печати ценников в рознице 2.2.
39 Гений 1С
 
гуру
13.12.20
14:04
(37) итак, я настаиваю, как же ты будешь "лучше моего" и "без костылей" решать проблему клиента. Или ты просто "трепатель языком"?
40 Конструктор1С
 
13.12.20
14:06
(38) тогда обработка в коде. А уродство из запроса убери
41 Гений 1С
 
гуру
13.12.20
14:07
(40) быстро слился. А ты в курсе, что в Рознице 2.2. можно менять запрос для получения ценников и при этом не трогать код?
42 Гений 1С
 
гуру
13.12.20
14:08
итак, неуважаемый некостылестроитель, если клиент не хочет менять код, как выкручиваться будешь? Свою обработку печати ценников клепать? ;-) слюшай, все это знакомо, не надо сюда нести это с умным видом.
43 Конструктор1С
 
13.12.20
14:09
(39) я тебе написал варианты
44 Конструктор1С
 
13.12.20
14:16
(42) может всё-таки ты не хочешь, а не клиент?
45 Гений 1С
 
гуру
13.12.20
14:24
(43) (44) не понял только причин твоих возмущений "костылями". ;-) ладно, Моська, мимо кассы
46 Конструктор1С
 
13.12.20
14:28
(45) ты прикручиваешь костыли, а пришедшему после тебя придётся решать занимательные квесты с этими костылями
47 Гений 1С
 
гуру
13.12.20
14:29
(46) 0 бит. Давай предметнее. какие костыли, почему костыли и т.п. Все же хочется содержательной дискуссии, а не кидания какашками
48 Конструктор1С
 
13.12.20
15:28
(47) ну давай попробую
1. Расширением добавил новый справочник в Розницу
2. Отредактировал СКД ценника в режиме 1С:Предприятие, добавив в запрос новый справочник
2. Отключил расширение
4. ERROR. Макет ценника умер. СКД открыть и исправить невозможно
Считай что обеспечен увлекательный квест по исправлению этого макета. Достаточно предметно?
49 Конструктор1С
 
13.12.20
16:00
немного соврал. СКД достать можно. Но всё равно появляются лишние манипуляции по выявлению причин поломки и исправлению оных
50 Вафель
 
13.12.20
16:03
но зачем расширение отключать?
51 Конструктор1С
 
13.12.20
16:07
(50) в данном случае для демонстрации проблемы. А так может быть и не расширение. Фирма 1с периодически переименовывает метаданные. Естественно, об этом переименовании ничего не будет знать СКД, лежащая в справочнике 1с
52 Гений 1С
 
гуру
13.12.20
16:11
(48) эти 4 пункта твой способ решения или нет? Зачем добавлять справочник, я не очень вкурил?
Там макет запроса меняется в режиме 1С-предприятия.
53 Конструктор1С
 
13.12.20
16:13
(52) надо полагать, измененный макет хранится в базе. Нет, это не способ решения. Это способ показать, что изменять запрос в макете такой себе вариант
54 Ненавижу 1С
 
гуру
13.12.20
16:14
(38) скд нет, но пришлось ковырять...
55 Гений 1С
 
гуру
13.12.20
17:18
(54) Привет, буквоедам.
56 Гений 1С
 
гуру
13.12.20
17:19
(53) У него есть достоинства и недостатки. Как и у любого решения. Фанатично настаивать на правках в коде не стоит
57 Конструктор1С
 
13.12.20
17:50
(56) тут вопрос в последствиях. В частности в потраченных силах и времени при исправлении "внезапно" возникших после обновления проблем. Механизм от фирмы 1с может и универсальный... но следующему 1снику придётся долго чесать репу, диагностируя возникшую ошибку. Сначала счастливчик пару часов проползает с отладчиком наперевес по коду конфигурации. Потом ему наконец-то удастся выяснить, что ошибка возникает из-за лежащего в справочнике макете СКД. Затем он ещё час будет выяснять, на кой ляд эта магия в запросе. И потом ещё час будет кувыркаться с исправлением всего этого добра.
Тебе не кажется, что трудозатраты выросли на ровном месте? А всего-то Гений 1С выделил копейки в цене
58 Ненавижу 1С
 
гуру
13.12.20
18:25
(55) удобный способ под буквоедством других скрывать свою некомпетентность
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший