SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

Начало и конец месяца с учетом производственного календаря



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP
View previous topic :: View next topic  
Author Message
Andrey
Участник
Участник



Joined: 12 Oct 2007
Posts: 30

PostPosted: Tue Nov 06, 2007 11:54 pm    Post subject: Начало и конец месяца с учетом производственного календаря Reply with quote

Добрый вечер!
Стоит несколько задач:
- Найти начало и конец месяца с учетом производственного календаря для Украины.
- Проверить, является ли заданная дата рабочим днем и прибавить к ней несколько банковских дней.

Какие существуют функ. модули? Где ведется настройка производственного календаря?
Back to top
View user's profile Send private message
John Doe
Модератор
Модератор


Age: 45
Joined: 05 Nov 2007
Posts: 725
Location: КраснАдар

PostPosted: Wed Nov 07, 2007 11:36 am    Post subject: Reply with quote

Календарь рабочего времени можно считать ФМ RKE_SELECT_FACTDAYS_FOR_PERIOD.
В параметрах вызова указываете две даты, например с 01.11.2007 по 01.12.2007 (ввод по написанному - даты с точкой 10 знаков), и указываете свою страну, то бишь UA в параметре I_FACTID.
На выходе получаете табличку только с рабочими днями. Свои проверки выстраиваете относительно нее соответственно.

Где настраивается не помню.
Back to top
View user's profile Send private message Blog
vga
Мастер
Мастер


Age: 200
Joined: 04 Oct 2007
Posts: 1218
Location: Санкт-Петербург

PostPosted: Wed Nov 07, 2007 12:10 pm    Post subject: Reply with quote

Настройка производственного календаря тр. SCAL (как подсказали функ. консультанты Wink

В дополнение к вышесказанным ФМ
FACTORYDATE_CONVERT_TO_DATE,

У DATE_CONVERT_TO_FACTORYDATE
IMPORTING
workingday_indicator
параметр покажет рабочий день или нет.

В старших версиях есть ФМ
CALL FUNCTION 'BKK_ADD_WORKINGDAY'
EXPORTING
I_DATE = START_DAY
I_DAYS = 7
I_CALENDAR1 = 'RU'
IMPORTING
E_DATE = END_DAY.

DATE_CHECK_WORKINGDAY
Code:

data: date1 like sy-datum value '20070615'.
data: date2 like sy-datum value '20070705'.
data: days type i.
*
WHILE date1 < date2.
*
date1 = date1 + 1.
*
CALL FUNCTION 'DATE_CHECK_WORKINGDAY'
EXPORTING
DATE = date1
FACTORY_CALENDAR_ID = 'ZO'
MESSAGE_TYPE = 'I'
EXCEPTIONS
DATE_NO_WORKINGDAY = 4.
*
IF SY-SUBRC <> 4.
days = days + 1.
ENDIF.
*
ENDWHILE.
*
write: date1, date2, days.
*
Back to top
View user's profile Send private message Blog Visit poster's website
Andrey
Участник
Участник



Joined: 12 Oct 2007
Posts: 30

PostPosted: Wed Nov 07, 2007 11:08 pm    Post subject: Reply with quote

Друзья, спасибо за исчерпывающий ответ!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ABAP All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.