Обработка "Конструктор форматной строки - Число прописью"

Опубликовал Александр Кривошеев (magvay_k) в раздел Программирование - Инструментарий

Обработка формирования форматной строки - число прописью.

Данная обработка посвящается тем, кому лень самому описывать форматную строку "число прописью". Указывайте параметры, и обработка построит для вас форматную строку, которую вы можете использовать в своем программном коде.

Скачать файлы

Наименование Файл Версия Размер
Число прописью
.1231832201 10,04Kb
16.10.14
406
.1231832201 10,04Kb 406 Бесплатно

См. также

Добавить вознаграждение
Комментарии
1. Сергей Лунев (luns) 13.01.09 12:43 Сейчас в теме
2. Роман (combatxp) 88 13.01.09 12:50 Сейчас в теме
Удобная обработка и необходимая.
3. Леонид Лесин (Leoway) 150 13.01.09 13:37 Сейчас в теме
4. Serj (Serj1C) 458 13.01.09 15:56 Сейчас в теме
Напоминает Типовая Бухгалтерия 1.6, Справочник.Валюты
5. Александр Кривошеев (magvay_k) 56 13.01.09 15:59 Сейчас в теме
(4) За основу была взята форма из данной конфигурации.
6. GSoft. (GSoft) 2778 13.01.09 16:10 Сейчас в теме
а выложите скрин, а то под рукой нет 8ки - не посмотреть
7. Александр Кривошеев (magvay_k) 56 13.01.09 16:25 Сейчас в теме
8. GSoft. (GSoft) 2778 13.01.09 17:18 Сейчас в теме
пасиба, но вижу только надпись Рис. 2646 .
9. Александр Кривошеев (magvay_k) 56 13.01.09 19:49 Сейчас в теме
(8) Загрузил новую картинку, с той какой то глюк.
10. GSoft. (GSoft) 2778 14.01.09 02:32 Сейчас в теме
так то понятней))
как-то делал похожее в семерке - только там лишь деньги прописью
http://infostart.ru/projects/1693/ Рис. 2652 . Деньги прописью
большего просто не нужно было
11. Алексей (uzerdv) 13 16.07.09 06:23 Сейчас в теме
12. Павел Кучеренко (NCCSOFT) 99 17.02.10 13:13 Сейчас в теме
Две функции печати: вес прописью "в тоннах", а "кг" числом и объем в кубах с округлением до четвертей и третей :-)

Делал для себя (основываясь на примере автора), но зато проще, и можно вызывать в формах ТТН или ТОРГ-12:

//******************************************************************************
Функция глВесВТоннахПрописьюКгЧислом(Сумма) Экспорт
	
	КоличествоТонн = Цел(Сумма);
	КоличествоКг   = Цел((Сумма - КоличествоТонн)*1000);
     
    Правило=СоздатьОбъект("СписокЗначений");
	Правило.ДобавитьЗначение("тонна");
	Правило.ДобавитьЗначение("тонны");
	Правило.ДобавитьЗначение("тонн");
	Правило.ДобавитьЗначение("");
	Правило.ДобавитьЗначение("");
	Правило.ДобавитьЗначение("");
	Правило.ДобавитьЗначение("F"); //Женский род "F" (Мужской род "M")
	                                                          
	СПЛ=СоздатьОбъект("СписокЗначений");                                    
	СПЛ.ДобавитьЗначение(Правило); 
	   
	Пропись(СПЛ);
	Стр=Формат(КоличествоТонн,"ЧПД");
	Пропись("");	  
	  
	Если КоличествоКг<>0 Тогда
    	Стр=Стр+" "+Строка(КоличествоКг)+" кг";			
	КонецЕсли;	

	Возврат Стр;
	
КонецФункции 

//******************************************************************************
Функция глОбъемВКубахПрописью(Сумма) Экспорт
	
	КоличествоКубМ    = Цел(Сумма);
	КоличествоКубДоля = Сумма - КоличествоКубМ;

	Если      (КоличествоКубДоля>=0)     И(КоличествоКубДоля<0.1458) Тогда
		СтрД=""; //Ноль
		СтрН="Ноль куб.метров"; 
	ИначеЕсли (КоличествоКубДоля>=0.1458)И(КоличествоКубДоля<0.2917) Тогда 
		СтрД=" с четвертью";    
		СтрН="Четверть куб.метра"; 
	ИначеЕсли (КоличествоКубДоля>=0.2917)И(КоличествоКубДоля<0.3542) Тогда		
	    СтрД=" с третью";          
		СтрН="Треть куб.метра"; 
	ИначеЕсли (КоличествоКубДоля>=0.3542)И(КоличествоКубДоля<0.6458) Тогда			
	    СтрД=" с половиной";    
		СтрН="Половина куб.метра"; 
	ИначеЕсли (КоличествоКубДоля>=0.6458)И(КоличествоКубДоля<0.7083) Тогда
		СтрД=" с двумя третью";    
		СтрН="Две третих куб.метра"; 
	ИначеЕсли (КоличествоКубДоля>=0.7083)И(КоличествоКубДоля<0.8542) Тогда
		СтрД=" с тремя четвертями";  
		СтрН="Три четверти куб.метра"; 
	ИначеЕсли (КоличествоКубДоля>=0.8542)И(КоличествоКубДоля<1) Тогда
        СтрД=""; //Единица
		СтрН=""; 
		КоличествоКубМ = КоличествоКубМ + 1;
	КонецЕсли;	

	Если КоличествоКубМ>0 Тогда
    	Правило=СоздатьОбъект("СписокЗначений");
		Правило.ДобавитьЗначение("куб.метр");
		Правило.ДобавитьЗначение("куб.метра");
		Правило.ДобавитьЗначение("куб.метров");
		Правило.ДобавитьЗначение("");
		Правило.ДобавитьЗначение("");
		Правило.ДобавитьЗначение("");
		Правило.ДобавитьЗначение("M"); //Женский род "F" (Мужской род "M")
		СПЛ=СоздатьОбъект("СписокЗначений");                                    
		СПЛ.ДобавитьЗначение(Правило); 
		Пропись(СПЛ);
		Стр=Формат(КоличествоКубМ,"ЧПД");
		Пропись("");
		                 
		Поз = Найти(Стр,"куб.");
		Если (СтрД<>"")И(Поз>1) Тогда
			Стр = Сред(Стр,1,Поз-2)+СтрД+Сред(Стр,Поз-1,СтрДлина(Стр)-Поз+2);
		КонецЕсли;
		
	Иначе
		Стр = СтрН;
	КонецЕсли;	
                
	Возврат Стр;
	
КонецФункции 

...Показать Скрыть