powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проскакивает репорт (в просмотре),, но не всегда. Отчего?
13 сообщений из 13, страница 1 из 1
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32159960
Max4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программу писал незнакомый, уже уволился.
Есть ехе-шник и база данных с таблицами в ней.
Текстов, последней версии нет, только старые.
В репорте нужно увидеть лишь одну строку из таблицы, но предварительно стоит фильтр.
То есть, когда я выбираю строку, таблица фильтруется, и когда должен открыться репорт для просмотра (там данные только по выбранному коду из одной строки), он просто проскакивает и не запускается.
Но вот ерунда какая. Такое происходит не каждый раз.
По трем кодам выбирается и репорт идет, а по остальным нет. Такое впечатление, что что-то с индексами. Два года работало нормально.
Не знаю на какой версии написано. У меня семерка. В среде старые тексты работают нормально. Завернуть заново ехе-шник не могу, сначало надо их привести к должному виду, на это нужно время.
А распечатать тем, кто пользуется этой программой нужно срочно и постоянно.
Пытался в семерке сделать такую же базу с такими же таблицами. Но при запушке старого ехе-шника, он ругается на эту базу, хотя она должна идентичная быть. Говорит, что таблиц в ней не найдено.
Из-за чего это может быть, как быть (если только не делать другой ехе-шник, где бы работал, только этот кусок, работают там люди, очень загруженные, мог тогда вообще все напутать, когда и в какой момент, что запускать, да и неудобно так.)
Из-за чего могут пролетать (не запускаться репорты), без всяких сообщений об ошибке.
Года три назад подобное было, то есть репорт пролетал, тогда нашел из-за чего, но не помню, что это было.
Кто-нибудь сталкивался с таким?
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32159985
Alex Antipenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь может быть что-угодно.
Розкомпили прогу и проанализируй код.
Возможно в програмке анализируется количество записей после фильтра, если 0 репорт пролетает.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160018
Max4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В том то и дело, записи есть, по одной на каждый выбор.
Иииииз справочника выбираешь код, По нему фильтруется таблица, где обязатльно есть одна запись. Я даже ко кодам проверял. Все совпадает.
Н-р:
в r_kod сидит 3
далее
sele tab1
set filter to kod=r_kod
go top
REPORT FORM rep1.frx NOEJECT NOCONSOLE PREVIEW
И вот здесь то она и пролетает
Почему
Н-р
11 аааааааааааа
12 вввввввввввв
14 пппппппппппп
17 ооооооооооооо
23 еееееееевввв
И вот по 12 коду, например выводит, а по остальным нет.
А данные есть.
В среде я из вижу
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160022
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, не совсем "что угодно".

Если окно предварительного просмотра открывается и тут же закрывается, то это значит, что нет ни одной записи, которая удовлетворяла бы условию отбора в отчете. Т.е. просто нечего печатать.

Вариантов тут не так уж и много:

-) Выбрана не та рабочая область в качестве главной (в данном случае очень сомнительно)

-) Если в синтаксисе команды REPORT используется только ключевое слово FOR для указания диапазона записей, то в этом случае включается Rushmore-оптимизация. И если тем не менее не отображается ни одной записи, хотя она должна быть, то это однозначно говорит о поврежденном индексе. Необходима реиндексация

-) Если в синтаксисе команды REPORT для задания диапазона используются ключевые слова WHILE, NEXT, то в этом случае выбор записей идет начиная с текущей записи. Т.е. скорее всего не там стоит указатель записи.


Чтобы определить версию FoxPro на которой написан EXE открой файл EXE любым редактором низкого уровня как текстовый файл и найди в нем ключевое слово "FoxPro" ближайшая к этому слову цифра и будет номером версии FoxPro.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160027
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Команда SET FILTER тоже использует RushMore-оптимизацию. Т.е. индексы. Попробуй восстановить индексы или хотя бы дай REINDEX.

Кстати, в своем примере ты делаешь фильтр по значению 3, которого нет в твоей исходной таблице. Естесственно отчет ничего и не показывает.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160042
Max4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если написано в пятерке, то переиндексировать в семерке я никак не смогу?
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160056
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> А если написано в пятерке, то переиндексировать в семерке я никак не смогу?

На сколько я знаю,Подобная совместимость не предусмотрена. Но, есть большая вероятность, что все пройдет нормально, особенно если в индексах не используются функции. У меня в visual практически всегда не было проблем при использовании файлов от старших версий в младших. Никто не мешает сделать резервную копию и попробовать, потом всегда можно все вернуть назад.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160059
Max4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тройка - это опечатка, наверное, не пойму как набрал :).
А вот базы. если просто в семерке открывал, то в с программой они потом работали, а если убрал индекс, а потом добавил назад, то уже нет
Выходит нельзя.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160065
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можешь попробовать проиндксировать отдельно таблицу не открывая базу, а потом подсунуть.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160086
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть еще один вариант того, почему не запускается отчет. Может быть в самом отчете есть Dataenvironment (и там уже открываются базы для отчета?). Проверьте, пожалуйста сам отчет, некоторые так делают...
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160117
Max4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В отчете, да, таблица в Dataenvironment есть.
Я бы вообще не так писал.
Я бы не ставил никакого фильтра до отчета, я бы указал это в свойствх таблицы в Dataenvironment , через public переменную.
Но в том-то и дело, ни отчет, ни эта форма, откуды запускается печать, не менялись. Это точно. Менялось в целом в прорамме совсем другой кусок.
Он-то сейчас и не работает, поэтому не могу построить ехе заново.
Значит я вижу тот самый отчет, который и закручен в ехе.
А в нем Dataenvironment только таблица и никаких изменений в свойствах.
Но почему, по одной строке идет, (то есть эти данные печатаются), а по другой аналогичной нет. Длина кода и тип в справочнике и в этой несчастной таблице одинаковы. Голову уже сломал!
А подсунуть не не получается, сразу говорит ошибка в базе.
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160159
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Установи vfp5
2. Перекомпилируй проект на vfp7
...
Рейтинг: 0 / 0
Проскакивает репорт (в просмотре),, но не всегда. Отчего?
    #32160461
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант.

Вообще отключи оптимизацию на время выполнения отчета:

SET OPTIMIZE OFF

SET FILTER TO ...
REPORT FORM ...

SET OPTIMIZE ON

Разумеется скорость выполнения отчета резко упадет.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проскакивает репорт (в просмотре),, но не всегда. Отчего?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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