Текущее время: Пт, июл 25 2025, 05:54

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: установить для поля типа даты формат 'yyyy-dd-mm' ?
СообщениеДобавлено: Вт, янв 22 2008, 21:12 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 04 2007, 19:51
Сообщения: 10
установить для поля типа даты формат 'yyyy-dd-mm' ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 23 2008, 09:45 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Дата всегда хранится в формате yyyymmdd
А уж печатаете так как вам нужно - например с помощью команды write с опциями типа DD/MM/YYYY

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 23 2008, 10:11 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Сделать программу преобразования.
В качестве примера можно взять программу преобразования SDATE
(функциональные модули CONVERSION_EXIT_SDATE_OUTPUT, CONVERSION_EXIT_SDATE_INPUT)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: установить для поля типа даты формат 'yyyy-dd-mm' ?
СообщениеДобавлено: Ср, янв 23 2008, 10:11 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
Даринка написал(а):
установить для поля типа даты формат 'yyyy-dd-mm' ?

Цитата:
Дата
Поле дата (date) имеет тип d с фиксированным размером поля в восемь знаков. Внутреннее представление поля дата : YYYYMMDD (Y — год, М — месяц, D — день). Начальное значение поля: 00000000.
Язык АВАР/4 поддерживает несколько выходных форматов записи поля типа date, отличающихся от внутреннего представления. Разрешено самостоятельно задавать формат записи поля date, используя команду write:
date today type d.
* получаем сегодняшнюю дату из системного поля sy-datue и выводим ее на экран
today = sy-datum.
write today.

Первое предложение является примером определения поля today. Последующие предложения передают реальную дату, содержащуюся в системном поле sy-datum в поле today, которое затем выводится на экран с помощью команды write. Системные поля рассматриваются ниже в разделе "Использование системных полей". Если этот пример будет выполняться в последний день этого тысячелетия в США, на экране появятся цифры: 12 31 1999. Но так как европейский формат даты несколько иной, в боль¬шинстве стран Европы эти цифры будут выглядеть так: 31 12 1999. Если для поля данных в операторе write задан размер 10;
write (10) today.
в США на экране появится 12/31/1999, а в Европе - 31/12/1999.
Разрешается задавать специальный формат даты, добавляя дополнительные параметры в команду write или в определение поля в словаре Dictionary языка АВАР/4.
Необходимо отметить, что даже на начальной стадии изучения типов данных можно выполнять вычисления, используя поля типа date. Типичный пример определения последнего дня предыдущего месяца (ultimo):
date ultimo type d.
*заполняем переменную первым числом месяца.
ultimo = sy-datum.
ultimo+6(2) = '01'.

* заполняем переменную последним числом предыдущего месяца.
subtract 1 from ultimo.Упоминавшиеся ранее форматы выходной записи поля date абсолютно не влияют на внутреннее представление этого поля. Так, число, равное дню, всегда содержится в последних двух байтах внут¬реннего представления, независимо от задания вывода даты на экран.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 22 2008, 15:09 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Пт, дек 21 2007, 18:56
Сообщения: 30
а каким ФМ-ом можно дату превратить в текст, чтобы 22.02.2008 мне преобразовало в "22 февраля..."?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: re
СообщениеДобавлено: Пт, фев 22 2008, 15:52 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
:oops:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 22 2008, 16:50 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, июн 13 2007, 16:36
Сообщения: 585
Откуда: Belarus
Пол: Мужской
nobody® написал(а):
а каким ФМ-ом можно дату превратить в текст, чтобы 22.02.2008 мне преобразовало в "22 февраля..."?

CONVERSION_EXIT_SDATE_OUTPUT как раз и делает что-то подобное.
Если не устраивает такой вариант, то за 10 мин пишется свой ФМ :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, фев 22 2008, 21:24 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
Dzed Maroz написал:
CONVERSION_EXIT_SDATE_OUTPUT как раз и делает что-то подобное.


Чой-то он мне 20080112 перевел только в JAN/12/2008. :(

Названия месяцев словами можно получить, например, через MONTH_NAMES_GET. Добавить число и год - это уже дело техники. Все вместе, как уже правильно заметили, можно в свой ФМ запихнуть. Кстати, не понятно, почему нет стандартного - задача достаточно распространенная...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, фев 24 2008, 09:09 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Пт, дек 21 2007, 18:56
Сообщения: 30
всем спасибо за ответы. я-то эти функции долгим и упорным ручным поиском тоже нарыл. но проблема осталась, так как главной задачей был даже не сам поиск месяцев, а чтобы они были с нужными окончаниями... просто хотелось, чтобы было красиво со стандартным ФМ-ом, буквально в одну строчку вызов...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, фев 24 2008, 10:22 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Добавлю информации для рассуждения:
Аналогичную задачу обсуждали в топике Стандартный ФМ, возвращающий дату пропись есть?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 25 2008, 01:06 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Dzed Maroz написал:
...то за 10 мин пишется свой ФМ :wink:

Ну, конечно не за 10 минут, но потом все будет
nobody® написал(а):
...буквально в одну строчку вызов...

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, фев 25 2008, 10:02 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
nobody® написал(а):
а чтобы они были с нужными окончаниями...
Для этого есть орфографический словарь.
Названия месяцев в датах, вроде, не склоняются.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB