SAPфорум.RU
https://sapboard.ru/forum/

Если последнее число месяца, прибавить 1 к дате - как реализовать?
https://sapboard.ru/forum/viewtopic.php?f=13&t=100493
Страница 1 из 1

Автор:  Haku [ Чт, мар 07 2024, 10:10 ]
Заголовок сообщения:  Если последнее число месяца, прибавить 1 к дате - как реализовать?

Всем привет! Помогите, пожалуйста...

Есть поле P_INVBD (DATUM/DATS8). Нужно в случае, если в нём лежит последнее число месяца, прибавить к нему один день (P_INVBD + 1), т.е., если, например, дата = (31.10), то указывается 01.11.

Как это написать?

Автор:  Korvax [ Чт, мар 07 2024, 10:19 ]
Заголовок сообщения:  Re: Если последнее число месяца, прибавить 1 к дате

Добрый день.
Вероятно вам требуется использовать оператор if. Вопрос только в том, как понять что это "последнее" число. И тут есть два варианта:
1. Использовать уже написанное. Например ФМ LAST_DAY_OF_MONTHS
2. Изобретать "своё". Например +1 к дате и проверить сменился ли месяц.

Автор:  DED_MOROZ [ Чт, мар 07 2024, 17:45 ]
Заголовок сообщения:  Re: Если последнее число месяца, прибавить 1 к дате  Тема решена

Класс CL_RECA_DATE.
Метод END_OF_MONTH_DETERMINE() - на вход подаешь дату D, если вернулcя X, D = D + 1.

Автор:  Haku [ Чт, мар 07 2024, 20:21 ]
Заголовок сообщения:  Re: Если последнее число месяца, прибавить 1 к дате

Спасибо!!!! :mrgreen:

Автор:  LKU [ Вс, мар 10 2024, 12:00 ]
Заголовок сообщения:  Re: Если последнее число месяца, прибавить 1 к дате

Может как-то так?
Code:
P_INVBD_TMP = P_INVBD + 1
IF  P_INVBD_TMP+6(2) = '01'.
       P_INVBD = P_INVBD_TMP.
ENDIF.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/