Имя: Пароль:
1C
 
проблема с форматированием - число прописью
0 Skom
 
19.12.07
12:41
КолНаСтр  #ЧП - возвращает тока целое значение
а надо что бы с десятыми выводил прописью.
можно как то организовать
1 Дядя Васька
 
19.12.07
12:45
(0) Извращаться, извращаться и еще раз извращаться... Представляешь число в виде строки, делаешь прописью что до точки и дописываешь "целых", затем что после точки, и в зависимости от того сколько цифирь приписывай (десятых, сотых, и т.п..)
2 Skom
 
19.12.07
12:50
что то под конец дня полушария не работают как надо
>>>Представляешь число в виде строки<<< это каак?
3 Skom
 
19.12.07
13:09
а если файл прописи подправить то как правильно дописать туды
4 IUnknown
 
19.12.07
13:10
(3)надо несколько раз файл прописи править... http://avb1c.narod.ru/?=a22... не оптимально, но для получения направления
5 Yohan
 
19.12.07
13:12
+3 ну да через spl ку попробуй
6 Skom
 
19.12.07
13:21
а как и что прописывать то?
7 Skom
 
19.12.07
13:31
?
8 Skom
 
19.12.07
13:36
где и что подправить надо в файле прописи что бы эти цифирьки печатались как надо
9 Cthulhu
 
19.12.07
13:38
необязательно spl, "Пропись(..)" понимает и СЗ.
10 IUnknown
 
19.12.07
13:39
мдя...
11 Skom
 
19.12.07
14:06
(9) так а как tuij собрать что прописывать то
12 Cthulhu
 
19.12.07
14:09
(11): ну щя попробую нарыть у ся в недрах функцию вывода веса прописью.. жди..
13 Skom
 
19.12.07
14:15
ок жду
14 Cthulhu
 
19.12.07
14:27
// Типа:
Функция глВесПрописью(Знач чВес) Экспорт
   Перем _ОкТхт, чТН,чКГ,чГ, тЕдСЗ,тПрописьСЗ;
   тЕдСЗ=СоздатьОбъект("СписокЗначений");
   чТН=Цел(чВес/1000); чВес=чВес-чТН*1000; чКГ=Цел(чВес); чВес=чВес-чКГ; чГ=Окр(чВес*1000,0); чВес=чТН*1000+чКГ+чГ/1000;
   Если тТН<>0 Тогда
       тЕдСЗ.ДобавитьЗначение("тонна"); тЕдСЗ.ДобавитьЗначение("тонны"); тЕдСЗ.ДобавитьЗначение("тонн");
       тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("F");
       тПрописьСЗ.Установить("Money",тЕдСЗ); Пропись(тПрописьСЗ);
       _ОкТхт=СокрЛП(СтрЗаменить(Формат(тТН,"ЧПДС")," 00 %",""));
       тЕдСЗ.УдалитьВсе();
   КонецЕсли;
   Если тКГ<>0 Тогда
       тЕдСЗ.ДобавитьЗначение("килограмм"); тЕдСЗ.ДобавитьЗначение("килограмма"); тЕдСЗ.ДобавитьЗначение("килограмм");
       тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("M");
       тПрописьСЗ.Установить("Money",тЕдСЗ); Пропись(тПрописьСЗ);
       _ОкТхт=_ОкТхт+?(ПустоеЗначение(_ОкТхт)=1,""," ")+СокрЛП(СтрЗаменить(Формат(тКГ,"ЧПДС")," 00 %",""));
       тЕдСЗ.УдалитьВсе();
   КонецЕсли;
   Если тГ<>0 Тогда
       тЕдСЗ.ДобавитьЗначение("грамм"); тЕдСЗ.ДобавитьЗначение("грамма"); тЕдСЗ.ДобавитьЗначение("грамм");
       тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("%"); тЕдСЗ.ДобавитьЗначение("M");
       тПрописьСЗ.Установить("Money",тЕдСЗ); Пропись(тПрописьСЗ);
       _ОкТхт=_ОкТхт+?(ПустоеЗначение(_ОкТхт)=1,""," ")+СокрЛП(СтрЗаменить(Формат(тГ,"ЧПДС")," 00 %",""));
       тЕдСЗ.УдалитьВсе();
   КонецЕсли;
   Если ПустоеЗначение(_ОкТхт)=1 Тогда _ОкТхт="Ноль килограмм" КонецЕсли;
   Возврат(_ОкТхт);
КонецФункции //глВесПрописью
15 Skom
 
20.12.07
08:40
пасип
16 victuan1
 
20.12.07
08:47
ищи на 1c.proclub.ru компоненту Insqualifier, она умеет делать то, что ты просишь (и многое другое).
17 Skom
 
20.12.07
09:03
мож скинешь ...что то поиском прошелся не нашел
18 Skom
 
20.12.07
10:04
?
19 Skom
 
21.12.07
06:08
а подскажите как (форматом)
вывести число 1 что бы получилось не "Один" а "Одна"
20 Skom
 
21.12.07
06:35
те
Формат(Число,"ЧП");
что бы не Один а Одна
21 Skom
 
21.12.07
08:06
?
22 Темный Эльф
 
21.12.07
08:32
СтрЗаменить(Формат(Число,"ЧП"),"Одно","Одна")
23 Skom
 
21.12.07
09:36
не подходит
24 Skom
 
21.12.07
09:53
там гибкие условия должны быть
мне просто надо в другом роде получить....
желательно стандартно
25 Skom
 
21.12.07
11:56
мдя
26 victuan1
 
21.12.07
12:03
27 Skom
 
21.12.07
12:10
так там ни слова о нужных мне функциях
28 victuan1
 
21.12.07
12:13
(27) Я тебе название обработки дал! Зачем так не доверять? Это у нее не основной функционал, скачай обработку и посмотри qualifier.xls, там очень хорошо на примере показано то, чего ты хочешь.
29 Skom
 
21.12.07
12:35
а-а-а терь понял ты просто написал  Insqualifier
вот я и подумал что это немноо другое
30 Skom
 
21.12.07
12:40
а-а-а-а не качаеццо
31 victuan1
 
21.12.07
12:41
(30) Что говорит?
32 victuan1
 
21.12.07
12:45
(30) Хм.. а я закачал только что.
Вот смотри:
2.    Проверка функции Spelling                
   Пропись в стандартном формате  от числа    125,125    сто двадцать пять  и сто двадцать пять тысячных        
   Пропись в рублях    125,25    сто двадцать пять рублей 25 копеек        
   Пропись возраста    45,0717    сорок пять лет семь месяцев семнадцать дней        
   Пропись возраста кратко    45,0717    45 лет 7 мес. 17 дн.        
   Пропись USD    45623,67    Forty five thousand six hundred twenty three dollars and 67 cents        

Оно? Если оно, так и быть скину тебе на мыло (только ты мне мыло скажи)
33 victuan1
 
21.12.07
12:57
(32) Ну не хочешь, как хочешь, а мне пора. Рабочий день закончился (16:57)
34 Skom
 
21.12.07
13:22
все пасиб я с другого компа скачал...на моем что то глюкнуло

спасибо еще раз за помощь...