Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: A97+A2003 Вопрос о функции в запросе
 
 автор: NikSestrin   (13.03.2008 в 15:20)   личное сообщение
 
 

Здравствуйте! Есть такой вопросик. В написанной уже давно и долгое время работающей программе на А97 в одном из сохраненных запросах используется функция
Тар: Format([Тариф];'0,00') & " / " & IIf([ВидТарифа]=1;"мс";IIf([ВидТарифа]=2;"дн";"чс"))
На новом компе сначала установил А97, потом А2003. Все вроде бы работает совместно, мирно. Но вот при обращении к этому запросу в А97 выскакивает такая ошибочка:
Функция недоступна в выражениях в выражении запроса "Format([Тариф];'0,00') и т.д"
В А2003 после ругани насчет преобразований и т.д. этот запрос открывается без проблем. Еще повторюсь. программы написанные на А97 все работают в А97 и А2003. А вот встретился такой запрос - и от винта!!! В чем могут быть грабли. пасибо!

  Ответить  
 
 автор: Силыч   (13.03.2008 в 15:43)   личное сообщение
 
 

и так не работает?
Тар: Format([Тариф];"0,00") & " / " & IIf([ВидТарифа]=1;"мс";IIf([ВидТарифа]=2;"дн";"чс"))

  Ответить  
 
 автор: NikSestrin   (13.03.2008 в 15:48)   личное сообщение
 
 

Увы - не работает, а в чем разница?

  Ответить  
 
 автор: Силыч   (13.03.2008 в 18:25)   личное сообщение
 
 

в одинарных кавычках

  Ответить  
 
 автор: SRG   (13.03.2008 в 18:31)   личное сообщение
 
 

Уточните, пожалуйста:

1. У Вас программа в формате a97 (app97.mdb)
В a97 она всегда работала без сбоев.
2. Вы открываете эту же программу (app97.mdb) в A2003. На предложение преобразовать базу отвечаете "НЕТ". Все работает.
3. После работы в A2003 Вы открываете программу app97.mdb в A97. И она перестает работать в A97?

Или же у Вас две разных версии программы (app97.mdb - для A97, и app2003.mdb - для A2003)?

  Ответить  
 
 автор: NikSestrin   (14.03.2008 в 11:25)   личное сообщение
 
 

У меня одна версия программы написанная в А97. При запуске ее в А97 - ругается указанным в топике матом. При открытии в А2003 без преобразования - не ругаетя. Такое впечатление, что ей в А97 не нравится именно функция Format([Тариф];"0,00"). Все остальное в строке удалял для чистоты. Строку пробовал по разному - и кавычки, и апострофы, региональные настройки винды. Никак
Только что выяснил, что А97 не понимает, что есть такая функция Format. Как быть?!!!

  Ответить  
 
 автор: SRG   (14.03.2008 в 18:48)   личное сообщение
 
 

Советую создавать два клиентских АРМ-а:
1. app97.mde - для тех, у кого установлен MSA97,
2. app2003.mde - для тех, у кого MSA2003

Development вести в MSA97 (app97.mdb). Перед раздачей релиза преобразовывать app97.mdb в app2003.mdb средствами MSA2003 (ну, и, при необходимости компилировать в app2003.mde)

MSA97 ПОНИМАЕТ, что существует функция FORMAT. Если же НЕ понимает, то скорее всего MSA2003 при открытии файла app97.mdb перекроил ссылки. Проверьте битые ссылки в MSA97 (tools/references).

Насчет файла A97, который открывается в старших версиях MSA (2003) без преобразования - посмотрите здесь:
http://www.everythingaccess.com/tutorials.asp?ID=Access-97-%27enabled%27-MDE-databases-are-vulnerable%21

  Ответить  
 
 автор: NikSestrin   (17.03.2008 в 09:07)   личное сообщение
 
 

Спасибо! Действительно - вся байда из-за ссылок. Поборол уже!

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList