Гость
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / в чем ошибка помогите кто может / 8 сообщений из 8, страница 1 из 1
17.01.2010, 20:35
    #36414809
Sagit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
Доброе времени суток

делаю поиск по трем полям в одной таблице
вот такие items создал
* 10: P5_SMENA Select List -- выбор смены
* 20: P5_EKG Select List -- выбор машины
* 30: P5_DATE1 Date Picker (DD.MM.YYYY) -- выбор даты реализации
* 40: P5_GO button
вот такие регионы создал
* HTML: Поиск (10)
* Report: Найдено (20)

по нажатию на Report
вот, что имеем
Нeadings Type: Custom

в стилях отображение выбрал sql query
и вот сам запрос
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
select N_EKG, 
N_SMENA,
N_OPEN,
N_CKAD
 from	 NARYAD_EKG
where upper(N_EKG) like '%' || upper(:P5_ekg) || '%'
and upper(N_SMENA) like '%' || upper(:P5_smena) || '%'
and upper(N_open) like '%' || upper(:P5_date1) || '%'
при нажатии кнопки go должно по идее показывать одну строчку по тем данным какие указали в items

но нет ошибок и при нажатии кнопки go дает no date found
хотя проверил данные по смена 1, 01 машина, 12,12,09 стока есть и по моеей логике должна быть стока
01 1 12,12,09 склад 1

в чем дело по чеу не работает
неделю мучаюсь подскажите как запрос построить
Пожалуйста
...
Рейтинг: 0 / 0
17.01.2010, 21:24
    #36414851
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
Sagit,

0. Если N_OPEN типа DATE и хранит дату со временем, то приводите переменную к типу DATE явно:
Код: plaintext
and trunc(N_open) = to_date(:P5_date1)
1. Не проверяйте данные, проверяйте запрос, заменяя переменные литералами.
...
Рейтинг: 0 / 0
17.01.2010, 21:43
    #36414870
Sagit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
suPPLerSagit,

0. Если N_OPEN типа DATE и хранит дату со временем, то приводите переменную к типу DATE явно:
Код: plaintext
and trunc(N_open) = to_date(:P5_date1)


сделал так как вы сказали
при нажатии go вот что вышло

report error:
ORA-01843: not a valid month

скрипт вот так переделал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select N_EKG, 
N_SMENA,
N_OPEN,
N_CKAD
 from	 NARYAD_EKG
where upper(N_EKG) like '%' || upper(:P5_ekg) || '%'
and upper(N_SMENA) like '%' || upper(:P5_smena) || '%'
and trunc(N_open) like '%' || to_date(:P5_date1) || '%' 
только не понятно, что имелось в виду
[quot suPPLer
1. Не проверяйте данные, проверяйте запрос, заменяя переменные литералами.[/quot]
...
Рейтинг: 0 / 0
17.01.2010, 21:49
    #36414882
Sagit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
suPPLer,

спасибо получилось там просто тип ввода в таблице был
dd-mon-yy, а я давал dd.mm.yyyy

только вопрос у меня как поменять тип ввода в саму таблицу
с dd-mon-yу на dd.mm.yyyy ?
...
Рейтинг: 0 / 0
19.01.2010, 13:28
    #36417926
non-apexoid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
Sagit, корректней так:

Код: plaintext
and trunc(N_open) = to_date(:p5_date, 'dd.mm.yyyy')
, где dd.mm.yyyy - маска, которую вы применяете в текстовом поле типа "дата"
...
Рейтинг: 0 / 0
19.01.2010, 20:42
    #36419086
Sagit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
non-apexoidSagit, корректней так:

Код: plaintext
and trunc(N_open) = to_date(:p5_date, 'dd.mm.yyyy')
, где dd.mm.yyyy - маска, которую вы применяете в текстовом поле типа "дата"
спасибо


вы меня не правельно поняли у меня при том случае когда в саму базу не через приложение, а через просмотр таблиц и данных вводишьдату, там по умолчанию стоит dd-mon-yyyy как поменять на dd.mm.yyyy?
...
Рейтинг: 0 / 0
20.01.2010, 09:21
    #36419556
non-apexoid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
Sagit, просмотр таблиц и ввод данных где - в SQL Workshop, SQL Plus, etc?
...
Рейтинг: 0 / 0
20.01.2010, 20:38
    #36421476
Sagit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
в чем ошибка помогите кто может
non-apexoidSagit, просмотр таблиц и ввод данных где - в SQL Workshop, SQL Plus, etc?

Object Browser --> <имя таблицы> --> date --> insert row вот через это окно
...
Рейтинг: 0 / 0
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / в чем ошибка помогите кто может / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]