powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Отчеты
10 сообщений из 10, страница 1 из 1
Отчеты
    #32905127
RiW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RiW
Гость
Вопрос такой
можно ли в один отчет впихнуть данные с одной бд но приэтом
была возможность их фильтровать
те выбрал специальность "рабочий" и в отчоте появились только рабочие (я новичек, а лис именя 8)
заранеи сенкую
...
Рейтинг: 0 / 0
Отчеты
    #32905132
Дмитрий Петров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Варианты выбирайте на вкус: наложение фильтра на таблицу,
создайте нужный курсор командами Select-Sql и его
используйте как источник данных для отчета.
Попробуйте параметризованное представление...
...
Рейтинг: 0 / 0
Отчеты
    #32905191
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще варианты:

REPORT FORM MyReport.frx FOR ...

Вот в условии FOR и задаешь фильтр, наложенный на главную таблицу отчета, например:

select MyTab
REPORT FORM MyReport.frx FOR MyTab.Spec = "рабочий"

Хотя, конечно, самый лучший и универсальный способ - это создание временных таблиц для печати. Остальные способы имеют разные ограничения.
...
Рейтинг: 0 / 0
Отчеты
    #32905279
RiW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RiW
Гость
сенкую гаспада
ысчо один вопрос интимный
есть таблица юзер заходет удаляет запись
создает новую запись его прося растегнуть ширинку и сделать хорактерные
движения
потомушто часть полей с ключем примори или кондидат
и ён попытался ввести похожее поле

а теперь внимание вопрос

так можно
Помечаем Delete запись
отключаем бд
сжимаем бд
подключаем бд

если можно то как отключить и подключить БД
...
Рейтинг: 0 / 0
Отчеты
    #32905352
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А оно тебе надо?

Ссылочная целостность организуется не для того, чтобы ее нарушать. Т.е. "отключить" триггера в принципе можно (ALTER TABLE). Но ты уверен, что после такого "взлома" не полетит вообще вся база данных. Не в смысле "данные пропадут", а в смысле "данные не соответствуют друг другу".

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

И еще. Ключевые поля (PK и FK) пользователь ни в коем случае не должен вводить сам. Это должна быть "внутренняя механика" программы, никак не видимая пользователем. Пользователь не должен даже подозревать, что есть что-то еще кроме того, что он видит на форме. Себе дороже выйдет.
...
Рейтинг: 0 / 0
Отчеты
    #32905439
RiW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RiW
Гость
ВладимирМА оно тебе надо?

Ссылочная целостность организуется не для того, чтобы ее нарушать. Т.е. "отключить" триггера в принципе можно (ALTER TABLE). Но ты уверен, что после такого "взлома" не полетит вообще вся база данных. Не в смысле "данные пропадут", а в смысле "данные не соответствуют друг другу".

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

И еще. Ключевые поля (PK и FK) пользователь ни в коем случае не должен вводить сам. Это должна быть "внутренняя механика" программы, никак не видимая пользователем. Пользователь не должен даже подозревать, что есть что-то еще кроме того, что он видит на форме. Себе дороже выйдет.

Дело втом что пользователь и не правит
правит назначенный человек
но другой не я
а мне нуна чтобы он мог удалить рабочего вместе с его ригалиями
из бд полностью (не пометил, а удалил) причем не выходя из програмки?
...
Рейтинг: 0 / 0
Отчеты
    #32905644
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя не совсем правильное понимание того, что есть "удаление".

Под термином "Удаление" в FoxPro обычно понимают именно установку метки. Т.е. запись помечается как удаленная, но физически по прежнему остается в таблице. Вот именно этот процесс и регулируется триггерами.

Для физического удаления записей ранее помеченных как удаленные используется специальная команда

PACK

Эта команда требует эксклюзивного (единоличного) доступа к таблицам. Как правило, выносится в отдельную служебную процедуру.

Более подробно об удалении читай во вложенном файле.
...
Рейтинг: 0 / 0
Отчеты
    #32905660
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автора мне нуна чтобы он мог удалить рабочего вместе с его ригалиями
из бд полностью (не пометил, а удалил) причем не выходя из програмки?

1. Для того что бы удалить запись необходимо открыть таблицу в монопольном режиме (сам понимаешь др пользователи не смогут с ней работать), поэтому можно только пометить на удаление саму запись и все связанные таблицы

2. Для всех регалий наобходимо написать троггер или процедуру удаления

3. Если пометил на удаление с кодом 10 и хочешь опять этот код занести, но для другой записи, тогда надо использовать фильтрованный PK
...
Рейтинг: 0 / 0
Отчеты
    #32907088
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi RiW!

Для твоих Candidae индексов добавь условие FOR !DELETED() - тогда он может
хоть 100 раз ввести/удалить/ввести одного и того-же ФИО или что там у тебя
уникально должно быть...
Однако для первичного ключа это ОЧЕНЬ редко когда нужно - ибо в более-менее
серьёзной системе первичный ключ присваивается автоматом, и пользователь его
и не видит, и исправить не может - а вот "кандидаты" - сколько угодно :)
P.S. Естественно что такой индекс не участвует в оптимизации, потому если
это критично, надо сделать ещё один тег (уже без условия), но вида Regular -
т.е. не контролирующего уникальность.
P.P.S. Также есть такая стратегия - повторное использование удалённых
записей - т.е. при "добавлении" ты сначала ищешь некоторую "подходящую"
запись среди удалённых, восстанавливаешь её, заменяешь нужные поля. К
сожалению это требует написания довольно объёмного кода, и довольно сложно
реализуется если есть НЕСКОЛЬКО Candidate индексов/уникальных полей - думаю
понятно почему.
А PACK использовать в ходе "нормального использования" программы и для
основных таблиц (не временных) - крайне нехорошо :(

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Отчеты
    #32907260
RiW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RiW
Гость
Спасибо уважаемые господа
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Отчеты
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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