Текущее время: Ср, июл 23 2025, 23:31

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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