|
v7: Вывести массу прописью | ☑ | ||
---|---|---|---|---|
0
work92
12.05.15
✎
12:03
|
Может кто подскажет как сделать чтобы масса 2.5 кг вывелась прописью Ноль тон два килограмма пятьсот грамм
|
|||
1
zak555
12.05.15
✎
12:06
|
||||
2
1Сергей
12.05.15
✎
12:07
|
см. функцию Пропись + файлы *.SPL
|
|||
3
palpetrovich
12.05.15
✎
12:07
|
дык,
Функция глВернутьМассуСтрокой(Масса) Экспорт ... |
|||
4
palpetrovich
12.05.15
✎
12:08
|
(1) че-т не открывается avb-шный сайт, сто лет туда не заходил :)
|
|||
5
work92
12.05.15
✎
12:09
|
Может есть полная функция с кодом
|
|||
6
zak555
12.05.15
✎
12:10
|
(5) скачай из (1)
|
|||
7
work92
12.05.15
✎
12:12
|
1Сергей CП
|
|||
8
Mikhail Volkov
12.05.15
✎
12:24
|
(3) Из какой конфигурации глВернутьМассуСтрокой(Масса)? В ТиС нет такой, для себя писал:
Функция ВесПрописью(Вес) Экспорт // установим пропись по умолчанию Пропись(""); Тонны = Цел(Вес/1000); Если Тонны = 0 Тогда ТонныПрописью = ""; ИначеЕсли Тонны = 1 Тогда ТонныПрописью = "Одна тонна"; ИначеЕсли Тонны = 2 Тогда ТонныПрописью = "Две тонны"; ИначеЕсли Тонны < 5 Тогда ТонныПрописью = Формат(Тонны, "ЧП") + " тонны"; Иначе ТонныПрописью = Формат(Тонны, "ЧП") + " тонн"; КонецЕсли; Кг = Цел(Вес) - Тонны*1000; КгПрописью = Формат(Кг, "ЧП") + " килограмм" + ?(Найти("234", Прав(Кг, 1)) = 0, "", "а"); ВесПрописью = ?(Тонны = 0, КгПрописью, ТонныПрописью + " " + Нрег(КгПрописью)); Возврат ВесПрописью; КонецФункции // ВесПрописью() |
|||
9
palpetrovich
12.05.15
✎
12:25
|
(8) из любой, только в (3) дописать недостающее надо :)
|
|||
10
фобка
12.05.15
✎
12:28
|
(8) 22 тонны? И что за Пропись("")?
|
|||
11
1Сергей
12.05.15
✎
12:32
|
(10) в СП всё написано
|
|||
12
Mikhail Volkov
12.05.15
✎
17:40
|
(10) Не знаю, хотел сделать по аналогии сделать с
Функция глСуммаПрописью(Сумма, Валюта) Экспорт Если Валюта <> глРубли Тогда Если ФС.СуществуетФайл(КаталогИБ() + Валюта.ИмяФайлаПрописи) = 1 Тогда Пропись(Валюта.ИмяФайлаПрописи); Иначе Сообщить("Для валюты " + Валюта + " отсутствует файл прописей." + РазделительСтрок + "Сумма прописью сформирована в национальной валюте."); КонецЕсли; КонецЕсли; СтрокаСуммы = Формат(Сумма, "ЧПДС"); // установим пропись по умолчанию Пропись(""); Возврат СтрокаСуммы; КонецФункции // глСуммаПрописью() |
|||
13
Cap_1977
12.05.15
✎
18:45
|
(12) Непрокатывает с величинами у которых дробная часть более 2х символов.
530 грамм выведет как 53 грамма. |
|||
14
Лалым
14.05.15
✎
21:05
|
(13) Если определить сразу граммы как число 530 то прокатит
|
|||
15
Лалым
15.05.15
✎
09:10
|
Попробовал реализовать это на файлах прописи,
беру любой стандартный в денежных единицах пишу нужное измерение, создаю три файла для тон, килограмм и грамм, нарисовал для пробы обработку и о чудо, тонны ну никак не хочет подтягивать из файла прописи, ну первый запуск использует по умолчанию а затем использует последнюю установленную пропись то есть граммы Здесь весь пакет с прописями - https://yadi.sk/d/7-mZ_MmVge5Vy код функции Функция ВесПропись() //Определяем отдельно тонны, килограммы и граммы Тонны = Цел(Вес/1000); Килограммы = Цел(Вес) - Тонны*1000; Граммы = (Вес - Килограммы - Тонны*1000)*1000; //Получаем отдельно строковые значения из файлов прописи Пропись(КаталогИБ()+"/veston.spl"); ТоннПрописью = Формат(Тонны,"ЧПД"); Пропись(КаталогИБ()+"/kilogram.spl"); КилограмПрописью = Формат(Килограммы,"ЧПД"); Пропись(КаталогИБ()+"/gram.spl"); ГрамПрописью = Формат(Граммы,"ЧПД"); ВесПропись = ?(Тонны>0,ТоннПрописью,"") + " " + ?(Килограммы>0,КилограмПрописью,"") + " " +?(Граммы>0," и "+ГрамПрописью,""); Возврат(ВесПропись); КонецФункции; |
|||
16
Лалым
15.05.15
✎
09:20
|
Нашел в чем была ошибка в фалй veston была нарушена как бы структура, не стояли кавычки перед "тонны"
Если кому интересно то исправьте файл который в архиве |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |