Текущее время: Вт, июл 22 2025, 20:32

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:13 
Начинающий
Начинающий

Зарегистрирован:
Чт, ноя 10 2011, 14:10
Сообщения: 1
Acid_Firewood написал(а):
Блин, забыл. 32 дня надо прибавлять.

В общем, такая кухня:
DATA
: v1 type sy-datum
, v2 type sy-datum
.
v1 = '20111110' " Сегодня
v1+6(2) = '01'.
v2 = v1 + 32.
v2+6(2) = '01'.
v2 = v2 - 1.

И у нас гарантиованно в v1 - начало месяца, а в v2 - конец



Опять же для января не будет работать. Сразу на март перепрыгивает.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:15 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, май 12 2008, 09:07
Сообщения: 334
Откуда: Tbilisi, GE
Пол: Мужской
elgatitto написал(а):
Acid_Firewood написал(а):
v1+6(2) = '01'.



Опять же для января не будет работать. Сразу на март перепрыгивает.


C этой операцией работает для любого месяца.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:19 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, окт 15 2010, 14:06
Сообщения: 292
Коллега, вы в начале моего кода не видели комент? Где 'Сегодня'?
Вот в эту переменную пихайте хоть какую дату. В результате получите в v1 начало месяца вашей даты, а в v2 - конец.
Разжевываю далее. Если v1 = '20111231', то в конце получите v1 = '20111201', а v2 = '20111231'.
Избаловал вас SAP всякими функциями


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:20 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, окт 15 2010, 14:06
Сообщения: 292
Chirva, мой камент не для вас. Для скептиков :)


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

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Acid_Firewood написал(а):
Коллега, вы в начале моего кода не видели комент? Где 'Сегодня'?

Code:
v1+6(2) = '01'.

Ну вот с этим да, будет работать. В код не вчитывался.
Acid_Firewood написал(а):
Избаловал вас SAP всякими функциями

Только зачем тратить полдня на алгоритм, который и так работает? да еще и усложнять его? :?

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:29 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, окт 15 2010, 14:06
Сообщения: 292
Удав написал(а):
Acid_Firewood написал(а):
Коллега, вы в начале моего кода не видели комент? Где 'Сегодня'?

Code:
v1+6(2) = '01'.

Ну вот с этим да, будет работать. В код не вчитывался.
Acid_Firewood написал(а):
Избаловал вас SAP всякими функциями

Только зачем тратить полдня на алгоритм, который и так работает? да еще и усложнять его? :?


Я на него ни минуты не тратил. Вообще не понимаю с чего такой флуд разошелся.
Я всегда так вычисляю даты. И сложного тут ничего нет.
Как правило, SAP-овские функции бывают сложнее.
Да и с точки зрения работы с памятью, рациональнее не пользоваться функциями.
Под область переменных функций выделяется дополнительная память.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Чт, ноя 10 2011, 14:46 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Acid_Firewood написал(а):
Вообще не понимаю с чего такой флуд разошелся.
Я всегда так вычисляю даты. И сложного тут ничего нет.

Ваше право. Просто существуюет несколько методов решения задач. В данном случае я просто указал свой.
По поводу флуда - каюсь, затеял уточнение по поводу ФМ :roll:
Acid_Firewood написал(а):
Как правило, SAP-овские функции бывают сложнее.
Да и с точки зрения работы с памятью, рациональнее не пользоваться функциями.
Под область переменных функций выделяется дополнительная память.

А вот тут как раз не согласен. В данном случае "дополнительная память"- это 5 констант (18 байт).
К тому же используя ФМ с таким "говорящим" названием можно не беспокоиться о документировании своего кода, особенно если такое вычисление применяется в разных программах не по одному разу.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Пт, ноя 11 2011, 08:06 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, окт 15 2010, 14:06
Сообщения: 292
Убедили, коллега. Поддерживаю использование функции.
Только не понимаю, зачем их в системе, так много?

SG_PS_GET_LAST_DAY_OF_MONTH
MM_LAST_DAY_OF_MONTHS
FKK_GET_LAST_DAY_OF_MONTH
FKK_DTE_GET_LASTDAY_OF_MONTH
FKK_LAST_DAY_OF_MONTH
RE_LAST_DAY_OF_MONTH
HR_HCP_GET_LAST_DAY_OF_MONTH
HRIT_PS_IN_LAST_DAY_OF_MONTHS
HR_IN_LAST_DAY_OF_MONTHS
HRMX_LAST_DAY_OF_MONTH
HRVE_LAST_DAY_OF_MONTH
ISM_LAST_DAY_OF_MONTH
ISHMED_GET_LASTDAY_SPEC_MONTH
OIL_LAST_DAY_OF_MONTH
OIL_LAST_DAY_OF_PREVIOUS_MONTH
RP_LAST_DAY_OF_MONTHS
HR_NL_DET_LAST_DAY_OF_MONTH
SLS_MISC_GET_LAST_DAY_OF_MONTH
SN_LAST_DAY_OF_MONTH
LAST_DAY_OF_MONTHS
WSAF_GET_LAST_DAY_OF_MONTH

Какой смысл изобретать вилосипед двести раз?
Если только программист получает ЗП за килограмм кода, а не за результат?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с математикой по датам
СообщениеДобавлено: Пт, ноя 11 2011, 08:51 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Acid_Firewood написал(а):
Какой смысл изобретать вилосипед двести раз?
Если только программист получает ЗП за килограмм кода, а не за результат?

1.[censored] программисты, которые не знают о повторном использовании кода (ФМ HR_IN_LAST_DAY_OF_MONTHS - полная копия LAST_DAY_OF_MONTH).
2.Разные модули(add-on) (например IS-OIL - ФМ OIL_LAST_DAY_OF_MONTH). К тому же новая версия ERP подразумевает бОльшую модульность
3.Разный интерфейс ФМ (HRVE_LAST_DAY_OF_MONTH, FKK_GET_LAST_DAY_OF_MONTH)
4.Разный алгоритм работы - FKK_DTE_GET_LASTDAY_OF_MONTH

В общем, выбирайте на любой вкус. При этом есть еще ФМ работы с периодами - LAST_DAY_OF_PERIOD_GET :lol:

PS: по маске *last*day* в R/3 4.7 42 ФМ, в ECC 6.0 - уже 62 :D

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2

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


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

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


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

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