Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Проблемы с FastReport после обновления платформы #4506

Open
Mikle88 opened this issue Sep 24, 2024 · 13 comments

Comments

@Mikle88
Copy link

Mikle88 commented Sep 24, 2024

После обновления платформы Гедымин до версии 2.9, путем скачивания новейшего дистрибутива (с сайта gsbelarus.com от 17.09.2024г.) и замены дистрибутивов на рабочих местах пользователей, появилась проблема с FastReport:
при построении некоторых отчетов появляется ошибка о невозможности приведения типов string к real, либо int.

Т.е. если раньше при использовании в отчетах входных параметров типа boolean можно было написать:
[IF([PARAM3], true, false)] либо [IF([PARAM3]=0, true, false)],
то сейчас приходится заходить в существующий и ранее рабочий отчет и менять напрямую явно вот так: [IF([PARAM3]=[TRUE], true, false)]
Есть ли какой-то выход?

@MIchaelShoihet
Copy link
Contributor

MIchaelShoihet commented Sep 24, 2024 via email

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

Добрый день, Вот этот вариант точно работает [IF([PARAM3], true, false)], не работает вариант [IF([PARAM3]=0, true, false)], раньше была ошибка в функцию передавался логический параметр а в отчет целочисленный, надо исправлять в отчете С Уважением, Михаил Юрьевич ООО «Амперсант» >

не работает!!!
image

@MIchaelShoihet
Copy link
Contributor

MIchaelShoihet commented Sep 24, 2024 via email

@MIchaelShoihet
Copy link
Contributor

Мы проверяли на новом 4 FastReport он с логическими параметрами работает хорошо, а во 2 FastReport работа с логическими переменными работа калечная, возможно надо посмотреть и сюда передавать 0 или 1...

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

так с 2010 года все работало как часы, а вчера после обновления такой косяк!

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

Еще можно вопрос:
До обновления программы данный код работал на ура. SQL запрос возвращал название ТМЦ. После обновления запрос возвращает пустую строку.

dim q2
  Set q2 = BaseQueryList.Query(BaseQueryList.Add("q2", 0))  
 if tmc1(0)>0 then
       q2.sql="select name from gd_good where id like :i "
       q2.ParamByName("i").AsInteger=tmc1(0)
       q2.open
end if
msgbox q2.FieldByName("name").AsString

Если данный код изменить на вот такой, то всё в порядке.

dim q2
  Set q2 = BaseQueryList.Query(BaseQueryList.Add("q2", 0))  
 if tmc1(0)>0 then
       q2.sql="select name from gd_good where id=:i "
       q2.ParamByName("i").AsInteger=tmc1(0)
       q2.open
end if
msgbox q2.FieldByName("name").AsString

т.е. в SQL "like" заменить на "="

тут как быть?

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

И как перевести все отчеты на FastReport4?

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

или может есть рабочий модуль gedemin.exe?
до этого момента был экзешник технологической платформы 2.6

@Mikle88
Copy link
Author

Mikle88 commented Sep 24, 2024

Можно ли работать с версией платформы 2.6 на модифицированной БД? Я проверил, на ней всё работает.

@gsbelarus
Copy link
Member

Надо сесть еще раз подумать. Может реализовать режим, совместимый с тем как работало раньше. Пусть даже раньше было и неправильно.

Что касается SQL то там же явная ошибка. Оператор LIKE работает со строками. А параметр :i -- целочисленный. Конечно, правильный вариант поставить =.

@MIchaelShoihet
Copy link
Contributor

Можно ли работать с версией платформы 2.6 на модифицированной БД? Я проверил, на ней всё работает.

Нельзя. С FastReport мы поправим. А запрос типа как написан, так писать нельзя и если он когда-то работал, это просто повезло.

@Mikle88
Copy link
Author

Mikle88 commented Sep 25, 2024

Спасибо за помощь и взаимопонимание.
Дайте тогда пожалуйста знать, когда можно будет новый exe файл скачать. И от какой даты он будет.

@NikolayUkleyko
Copy link

”...Может реализовать режим, совместимый с тем как работало раньше. Пусть даже раньше было и неправильно...”

Это хороший вариант.
Доработки по конструктору функций при переходе Delphi 5 → Delphi 7 учитывали уже существующий код и его новое изложение.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants