Текущее время: Вс, июл 20 2025, 12:44

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Контроль ввода даты
СообщениеДобавлено: Пн, дек 08 2008, 09:39 
Ассистент
Ассистент

Зарегистрирован:
Пн, ноя 17 2008, 06:26
Сообщения: 27
Пожалуйста помогите: в поле bseg-xref1 (поле типа char) должна вводиться дата. Необходимо осуществить контроль выполнения этого условия. Как это сделать?


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

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
В FI есть процедура проверок и замещения. Можно сделать там.
Проверки-ob28. замещения -obbh, ggb1. Или, Вам надо понять, что это именно дата введена ?

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 08 2008, 10:55 
Ассистент
Ассистент

Зарегистрирован:
Пн, ноя 17 2008, 06:26
Сообщения: 27
Да, мне нужно понять что введена дата, а не др. текст. Подскажите как это сделать :oops:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Контроль ввода даты
СообщениеДобавлено: Пн, дек 08 2008, 11:10 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
lyubov написал(а):
Пожалуйста помогите: в поле bseg-xref1 (поле типа char) должна вводиться дата. Необходимо осуществить контроль выполнения этого условия. Как это сделать?
Вам же уже много всего полезного написали в теме Поле типа дата. Поиском ещё можно воспользоваться.
В чём именно проблема? Если Вы хотите дать пользователям вводить дату в произвольном формате как им вздумается, то это не самая лучшая идея. Если же необходимо проверить конкретный формат (YYYYMMDD) то как бы нет особых проблем. Проверьте так же что поле содержит только цифры на отведённом для даты участке (co '1234567890')

_________________
"После" - не значит "вследствие"


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

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
чтобы проверить, что введена дата в формате dd.mm.yyyy - можно воспользоваться регулярным выражением, а то что она сама по себе правильная - перевести её в yyyymmdd и проверить модулем.

Используя регулярное выражение, можно написать что-то типа:

Code:
data: date_str(100) value '10.12.2008'.

find FIRST OCCURRENCE OF REGEX '(^\d{2})\.(\d{2})\.(\d{4})' in
   date_str.
if sy-subrc = 0.
  write: 'Ok'.
endif.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Последний раз редактировалось Lars Пн, дек 08 2008, 11:36, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 08 2008, 11:29 
Ассистент
Ассистент

Зарегистрирован:
Пн, ноя 17 2008, 06:26
Сообщения: 27
sy-uname, пожалуйста расскажите подробнее, как проверить "что поле содержит только цифры на отведённом для даты участке (co '1234567890')". Я не понимаю :(


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

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
lyubov, вам Lars уже готовый код привел для проверки ввода в виде ДД.ММ.ГГГГ
После этого необходимо будет проверить правильность цифр. Например с помощью CL_RECA_DATE=>CHECK_DATE или напрямую DATE_CHECK_PLAUSIBILITY.


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

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


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

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


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

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