Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 16:35

Число прописью

Автор ahmeda, 21 окт 2010, 13:40

0 Пользователей и 1 гость просматривают эту тему.

ahmeda

Здравствуйте!

Никак не могу решить такую задачу: вывод прописью итога подвала из табличной части документа.
Вернее пропись выводится, но не сохраняется, после нажатия на ОК. Подскажите пожалуйста.
Вот код:
Процедура СоставКоличествоПриИзменении(Элемент)
   
   СсылкаНаСТЧ=ЭлементыФормы.Состав.ТекущиеДанные;
   СсылкаНаСТЧ.Сумма=СсылкаНаСТЧ.Количество*СсылкаНаСТЧ.Цена;
   
   ФормСтрока = "Л = ru_RU; ДП = Истина";
   ПарПредмета="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";
   ЗначПодв=ЭлементыФормы.Состав.Значение.Итог("Сумма");
   ПрописьЧисла = ЧислоПрописью(ЗначПодв, ФормСтрока, ПарПредмета);

   ЭлементыФормы.Надпись2.Заголовок=ПрописьЧисла;
   
                          
                
КонецПроцедуры

progmikon

Так пропись числа у вас это же не реквизит. Она и не будет сохраняться.

Решения:
1. Сделать реквизитом и туда писать.
2. При открытии формы выполнять расчет из вашей процедуры.

ahmeda

Если писать так то все нормально:   
           СсылкаНаСТЧ=ЭлементыФормы.Состав.ТекущиеДанные;
   СсылкаНаСТЧ.Сумма=СсылкаНаСТЧ.Количество*СсылкаНаСТЧ.Цена;
   
   ФормСтрока = "Л = ru_RU; ДП = Истина";
   ПарПредмета="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";
   ПрописьЧисла = ЧислоПрописью(СсылкаНаСТЧ.Сумма, ФормСтрока, ПарПредмета);

   ЭлементыФормы.Надпись2.Заголовок=ПрописьЧисла;

только учитывается одна строка, а мне нужет итог по колонке Сумма
   
                          
                


progmikon

Тогда сохраняйте Состав.Итог("Сумма").

Или я вас не правильно понял?

ahmeda

Тык в том то и дело, я сохраняю, надпись появляется, жму ОК, провожу опер-но.
Потом снова открываю этот документ, а надписи нет!

progmikon

А вы ее куда сохраняете в реквизит с типом строка?

vurdalak

Еще можно методом Формат попробовать.

ahmeda

Цитата: progmikon от 21 окт 2010, 14:28
А вы ее куда сохраняете в реквизит с типом строка?

На форме документа создал текстовую надпись, туда и сохраняю

ahmeda

Цитата: vurdalak от 21 окт 2010, 14:51
Еще можно методом Формат попробовать.

А это как? Если не сложно примерный код напишите.

progmikon

Процедура СуммаСтрокой()
ФормСтрока = "Л = ru_RU; ДП = Истина";
ПарПредмета="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";
ЗначПодв=Состав.Итог("Сумма");
ПрописьЧисла = ЧислоПрописью(ЗначПодв, ФормСтрока, ПарПредмета);
ЭлементыФормы.надпись1.Значение = ПрописьЧисла;
КонецПроцедуры

Сделайте обращение к этой процедуре в ПриОткрытии() и СоставПередОкончаниемРедактирования(.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск