Lex Опубликовано 30 июня, 2004 Жалоба Поделиться Опубликовано 30 июня, 2004 Отчёт выбирает данные из 3 связанных таблиц(один ко многим)., чтобы строки в отчёте не повторялись написал следующий код: Private Sub Область данных_Format(Cancel As Integer, FormatCount As Integer) On Error Resume Next If CLng(Me.Номер стыка) = CLng(CurrentNumber) Then Cancel = 1 ElseIf CLng(Me.Номер стыка) > CLng(CurrentNumber) Then CurrentNumber = Me.Номер стыка Cancel = 0 End If End Sub после этого отчёт формируется правильно(на мониторе), а на печать опять выводит повторы записей, а последнюю запись вообще удаляет!! :( ! Никак не могу разобраться: почему на экране одно, а на печать выводит другое?? Может кто встречался с такой проблемой, подскажите буду благодарен. Ссылка на комментарий Поделиться на другие сайты Поделиться
Dear Friend Опубликовано 1 июля, 2004 Жалоба Поделиться Опубликовано 1 июля, 2004 Несколько вопросов: Что есть Номер стыка? Где и как определелена CurrentNumber? И есть один совет: Оптимизируйте свой запрос к данным таким образом, чтобы исключить лишние записи. Когда-то давно один малознакомый, но довольно умный человек сказал мне: Извлечь необходимый набор данных из базы данных со сколь угодно сложной структурой с помощью SQL можно практически всегда лишь одним предложением select. И есть один ответ непосредственно в тему: Менее давно чем в предыдущем абзаце имел я интересную ситуацию, тогда ко мне обратились с похожим вопросом - почему на экране видно, а на печать не идет, причем только область данных - выяснили, что кривой дистрибутив был. Ссылка на комментарий Поделиться на другие сайты Поделиться
Lex Опубликовано 2 июля, 2004 Автор Жалоба Поделиться Опубликовано 2 июля, 2004 CurrentNumber - глобальная переменная, ей присвается значение Me.Номер стыка. Me.Номер стыка - параметр первой таблицы(3 связанных таблиц(один ко многим)), по этому параметру выполняю выборку в отчёт. Т.к. связь один ко многим получаются повторы строк. Этим кодом хотел избавиться от повторов(по иному не могу придумать). Ссылка на комментарий Поделиться на другие сайты Поделиться
Dear Friend Опубликовано 2 июля, 2004 Жалоба Поделиться Опубликовано 2 июля, 2004 Избавиться от повторных данных в запросе позволяет фраза SELECT DISTINCT ... Исправь соответствующим образом запрос, который выбирает данные для отчета. Или создай его, если до сих пор этого не сделал. Добавлено : [mergetime]1088760987[/mergetime] Чтобы помочь тебе более конкретно, необходимо больше сведений. Напиши структуру связей таблиц, участвующих в выборке, и что надо получить на выходе. Ссылка на комментарий Поделиться на другие сайты Поделиться
Jmd Опубликовано 2 июля, 2004 Жалоба Поделиться Опубликовано 2 июля, 2004 Насколько я помню, то в свойствах запросов есть что-то типа "оригинальные значения", "оригинальные записи"... Тогда он показывает без повторений. Ссылка на комментарий Поделиться на другие сайты Поделиться
Lex Опубликовано 5 июля, 2004 Автор Жалоба Поделиться Опубликовано 5 июля, 2004 Разобрался, спасибо! Сначала собрал данные в промежуточную таблицу с той-же структурой, что и запрос, из неё уже в отчёт. Возникла др. проблема: програмку закончил, а при переносе её на другую машину не работают пара функций: ReDim и Data! Подскажите какие и как подключить библиотеки? "пока не научился :( " Или может access 97 не полностью установлен? Ссылка на комментарий Поделиться на другие сайты Поделиться
Dear Friend Опубликовано 5 июля, 2004 Жалоба Поделиться Опубликовано 5 июля, 2004 Lex Имеющиеся библиотеки подключаются хитрым образом: в редакторе Visual Basic меню Tools -> References. Там много всего ;) Ссылка на комментарий Поделиться на другие сайты Поделиться
Jmd Опубликовано 5 июля, 2004 Жалоба Поделиться Опубликовано 5 июля, 2004 (изменено) У меня при перестановке винды пропало несколько элементов, но это были активХ. С датой странно Может база сохранить как 97, или 2000? И еще, есть меню сервис, там можно провести аланиз базы, может там что всплывет. Изменено 5 июля, 2004 пользователем Jmd Ссылка на комментарий Поделиться на другие сайты Поделиться
Dear Friend Опубликовано 5 июля, 2004 Жалоба Поделиться Опубликовано 5 июля, 2004 Jmd Не совсем понял вопрос. В любом случае, имхо, анализ базы не затрагивает визуальных элементов. А ActiveX можно подключить ручками, для этого в меню "Сервис" есть специальный пункт. Ссылка на комментарий Поделиться на другие сайты Поделиться
Yatsik Опубликовано 18 июля, 2006 Жалоба Поделиться Опубликовано 18 июля, 2006 У меня проблема в том, что в поле занесены слишком большее количество слов и надо чтобы некоторые не виделись, можно ли их как нибуть зафильтровать. К примеру, в поле вписана фраза из многих слов, но в строках начало фразы повторяется и где-то в середине может изменятся, и вот мне нужно что-бы начальная фраза не выходила на экран и печать, а повторы от середины фильтровались. Т.е. мне нужно прописать такой фильтр. Заранее благодарен! ПС Может кто даст ссылку про MSaccess and MSexcel где можно почитать. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти