|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Добрый день. Довольно простая хотелка от пользователей. Хотят добавлять строку в середину таблицы. В таблице много строк, при нажатие на NEW кидает в самый конец таблицы. Пользователи хотят чтобы вставляло с той строкой на которой стоят. Пока что в голову приходят извращения вроде макроса который запоминает текущую строку, делает с нее копию (чтобы после сортировки рядом были), вставляет, закрывает и открывает таблицу (замена refresh который так и не нашел) переходит к запомненной строке. Но пока в макросах не силен. Есть какие-нибудь другие идеи для реализации? Или как лучше реализовать мой вариант? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 12:33 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
У записей (строки - это в Excel) нет порядка следования. Таблица есть куча. Порядок записей появляется только когда явно указана сортировка. Обычно, но не всегда, если сортировка не указана, записи отдаются в порядке, определяемым первичным индексом (ключом). Сразу предостерегаю от мыслей "построить" записи, меняя значения первичного ключа. Нахлебаетесь. Самое лучшее - это ввести дополнительное неотображаемое поле пользовательской сортировки, и при вставке присваивать ему значение между значением этого поля для текущей и предыдущей (при сортировке по нему) записей. И периодически пересчитывать это поле, потому как при описанной технологии "зазоры" быстро уменьшаются и могут похудеть ниже точности вычислений. В форме ввода добавляемые записи всегда располагаются в конце - независимо от выражения сортировки. для того, чтобы добавляемая запись "встала на правильное место", необходимо выполнить обновление формы (не забыть запомнить и после обновления восстановить выделенную запись). ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 12:40 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Akina, Я сам ораклист и в pl/sql developer есть такая возможность. Но попросили как тыжпрограммиста помочь с access. Что-то смог своими силами, но вот такую вроде простую хотелку пока затрудняюсь. Они редактируют через TABLES а не FORMS в ACCESS, как в нем сделать через макрос аналог нажатия кнопки REFRESH ? Добавить кодом строку получилось, но пока не нажмешь refresh ее не видно. И остальные вещи (запоминание строки и встать на нужную) не подскажете как сделать? Видел примеры на VB, но как-то слишком жестко, хотя если вариантов нет, то придется. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 12:46 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Идеология Access в принципе не предполагает выполнения пользовательских операций с данными непосредственно в таблицах. И реализация этой формально простой хотелки выльется в такой геморрой, что тушите свет. Так что настоятельно рекомендую сказать "это невозможно", и пусть сначала думают, а потом только хотят. Gustlyв pl/sql developer есть такая возможность. Как я понимаю, там подобные вещи выполняются какими-то внутренними процессами в GUI - ведь в корректируемые таблицы Oracle никакая информация о взаимном расположении записей при отображении не падает. В любом случае работа с данными всё равно выполняется через форму. Только это может быть либо пользовательская форма, где "что хочу, то и ворочу", либо встроенная. То, что используется при работе с таблицей в Access - это встроенная форма. В ней такой фичи не реализовано, и, значит, хоть на пупе извернись, а ничего не сделать. Даже для простых вещей - узнать, какая запись текущая, тем более переместить фокус на определённую запись,- придётся устраивать пляски с бубнами. Не стОит овчинка выделки. Пусть заканчивают маяться фигнёй и переходят на нормальную технологию - корректировку данных через пользовательские формы. А там можно всё, что угодно - и запихнуть куда надо, и показать в каком надо порядке, и многое иное... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 12:56 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
очень странного хотят. и как бы редактировать без форм, и как бы сбоку нагородить кучу всего.... я бы отказался странное делать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 12:57 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Ранее они работали в экселе, но он глючил и тормозил и количество данных разрослась сильно и они решили перейти на access. Я просто знакомый тыжпрограммист, который хотел бы помочь в некоторых моментах. Что плохо в редактирование таблиц как в экселе? Могут данные повредиться? Это уже на их совести и они это понимают. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 13:30 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Gustly , у каждого инструмента свои правила. И не надо тащить на них правила из предыдущего... пересев из автомобиля в самолёт, глупо искать рычаг КПП. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 13:40 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
В редактировании таблиц хорошо только одно - ничего делать программисту не надо. Без форм вы не получите никакой функциональности, только поверхностный контроль вводимых значений. Никаких вставок в середину однозначно сделать нельзя. Даже форма в режиме таблицы настраивается гораздо хуже ленточной (имеется в виду внешний вид). ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 13:50 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Akina Gustly , у каждого инструмента свои правила. И не надо тащить на них правила из предыдущего... пересев из автомобиля в самолёт, глупо искать рычаг КПП. Тем не менее оба они служат для перемещения. И хочется видеть и сразу работать со всеми данными. И на сколько это криво с точки зрения программиста неважно, наша задача облегчить жизнь пользователя, а не себе. Я считаю это не тот случай, когда нужно говорить "невозможно, работайте с тем что имеете". Пускай через одно место, но сделать можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 13:52 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Gustly, Вам говорят, что это невозможно при прямой работе с таблицами в конструкторе таблиц, это не интерфейс пользователя. В формах все это возможно, но нужны некоторые ухищрения, про них уже упомянули. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 14:03 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
MrShinВ редактировании таблиц хорошо только одно - ничего делать программисту не надо. Без форм вы не получите никакой функциональности, только поверхностный контроль вводимых значений. Никаких вставок в середину однозначно сделать нельзя. Даже форма в режиме таблицы настраивается гораздо хуже ленточной (имеется в виду внешний вид).да можно куда угоднно таблице - поф ну да а просто показалось мне что где-то там середина ....) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 14:06 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
Gustlyнаша задача облегчить жизнь пользователяВ рамках установленных правил и ограничений. GustlyЯ считаю это не тот случай, когда нужно говорить "невозможно, работайте с тем что имеете". Пускай через одно место, но сделать можно.Вот пусть и дальше работают в Экселе, ибо нефиг. Чтобы не тормозило, снести в архив древние данные. А в порядке облегчения жизни разобраться, по какой причине "он глючил и тормозил", ибо в нормальных условиях ничего подобного не наблюдается. GustlyТем не менее оба они служат для перемещения. Вот странно, почему же тогда имеющего права на автомобиль заставляют долго учиться управлять самолётом, а потом ещё соблюдать кучу норм и правил, для автомобиля нахрен ненужных и вообще не существующих? И никто почему-то не орёт про "облегчение жизни", выполняют как миленькие... наверное, потому, что хотят перемещаться, а не требовать невозможного, ну и по возможности не угробиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 14:21 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
GustlyAkina Gustly , у каждого инструмента свои правила. И не надо тащить на них правила из предыдущего... пересев из автомобиля в самолёт, глупо искать рычаг КПП. Тем не менее оба они служат для перемещения. И хочется видеть и сразу работать со всеми данными. И на сколько это криво с точки зрения программиста неважно, наша задача облегчить жизнь пользователя, а не себе. Я считаю это не тот случай, когда нужно говорить "невозможно, работайте с тем что имеете". Пускай через одно место, но сделать можно. это другой инструмент, и жить надо по другому в нем. Если прогер нагородит кучу костылей, а потом ему дядя оставит в америке наследство, и он уедет - хорошо не будет. Помогать людям и потакать, это разное. я считаю, это ТОТ САМЫЙ СЛУЧАЙ, когда именно надо сказать - "нет". Впрочем, не настаиваю. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 14:28 |
|
Добавление строки в середину таблицы
|
|||
---|---|---|---|
#18+
как идея - вывести popUp окошко, в котором поставить нужную кнопку, эта форма в свою очередь будет отслеживать ключ таблицы и проводить необходимые действия - по добавлению, переформатированию (фильтрации) и пр. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.02.2017, 14:41 |
|
|
start [/forum/topic.php?fid=45&fpage=84&tid=1612760]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
94ms |
get tp. blocked users: |
2ms |
others: | 335ms |
total: | 505ms |
0 / 0 |