8.х Письменное представление периода

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем PicaSSo, 22 авг 2008.

  1. TopicStarter Overlay
    PicaSSo
    Offline

    PicaSSo

    Регистрация:
    23 июл 2008
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Товарищи, есть строка

    стаж 11 года (лет) 1 месяц (месяцев) 26 день (дней)

    естественно значение каждой цифры у меня есть по отдельности...
    но вот задача, как можно типовыми средствами определить слова

    1. Год, Года, Лет
    2. месяц, месяцев
    3. день, дней


    т.е. в итоге фраза должна звучать как

    стаж 11 лет 1 месяц 26 дней

    Желательно встроеными ф-цимя, сам-то я напишу, но уж больно в лом... :unsure:
    пасиба заранее...
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    ЧислоПрописью посмотри
  3. TopicStarter Overlay
    PicaSSo
    Offline

    PicaSSo

    Регистрация:
    23 июл 2008
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    вот щас и смотрю... ф-ция фроде получается наманая, но уж больно громоздкая
  4. TopicStarter Overlay
    PicaSSo
    Offline

    PicaSSo

    Регистрация:
    23 июл 2008
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    разобрался, вот, может кому пригодится... а из полученных данных формируем уже строку по своему... короче просто соединяем все полученные переменные

    Код:
     
    Функция ПолучитьПрописьюДату(Число, Изм = "Год")
    Если Изм = "Год" <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/тогда')">Тогда	</span>
    Рез = ЧислоПрописью(Число,, "год,года,лет,,,,,,0");
    Массив = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Рез, " ");
    Рез = Массив[Массив.Количество() - 1];	
    Рез = Строка(Число) + " " + Рез;
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/возврат')">		Возврат	</span> Рез;
    ИначеЕсли Изм = "Месяц" Тогда
    Рез = ЧислоПрописью(Число,, "месяц,месяца,месяцев,,,,,,0");
    Массив = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Рез, " ");
    Рез = Массив[Массив.Количество() - 1];	
    Рез = Строка(Число) + " " + Рез;
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/возврат')">		Возврат	</span> Рез;
    ИначеЕсли Изм = "День" Тогда
    Рез = ЧислоПрописью(Число,, "день,дня,дней,,,,,,0");
    Массив = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Рез, " ");
    Рез = Массив[Массив.Количество() - 1];	
    Рез = Строка(Число) + " " + Рез;
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/возврат')">		Возврат	</span> Рез;
    КонецЕсли;
    КонецФункции
    
    

Поделиться этой страницей