Mysql последняя запись - первой

ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Mysql последняя запись - первой

Сообщение gopstop2007 »

В mysql 5.7 нет DESC по индексу, поле id - primary
Это же поле в C10 ABC dct id- primary DESC

При выводе в Browse запись становиться на первую запись внизу
Как установить позицию на последнюю запись, то есть на первую сверху?

Спасибо за внимание.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Mysql последняя запись - первой

Сообщение Игорь Столяров »

Код: Выделить всё

  Post(Event:ScrollTop,?List)
  !Post(Event:ScrollBottom,?List)
Либо

Код: Выделить всё

  File.ID = LastRecordID
  If ~Access:File.Fetch(File.ByID) then BRW1.ResetFromBuffer().   ! Если нет LastRecordID, то можно через Set() + Next()
За теми кто отстал - не возвращаться. (С) Кодекс
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Mysql последняя запись - первой

Сообщение gopstop2007 »

Игорь Столяров писал(а): 01 Июль 2020, 5:10

Код: Выделить всё

  Post(Event:ScrollTop,?List)
  !Post(Event:ScrollBottom,?List)
этим и пользуюсь, визуальное скакание позиции по броузу, когда много записей - напрягает
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4557
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Mysql последняя запись - первой

Сообщение finsoftrz »

От шаблонов зависит. В ШВС я добавлял точку вставки и по условию при открытии броуза ставлю признак установки на последнюю запись. При этом события не генерятся и повторный перевывод не происходит, как в случае с Event:ScrollTop. Наверняка, в абс есть что-то подобное. Если поможет, то в ШВС это в рутинке SelectSort и выглядит так:

Код: Выделить всё

        FREE(Queue:Browse:1)
        BRW1::RefreshMode = RefreshOnBottom
        DO BRW1::RefreshPage
        DO BRW1::PostNewSelection
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Mysql последняя запись - первой

Сообщение Игорь Столяров »

gopstop2007 писал(а): 01 Июль 2020, 7:03 когда много записей - напрягает
Тогда попробуйте второй вариант … Добавьте в окно кнопку и повесьте на неё код позицирования записи.
Надо проверить работает ли с Вашими драйверами БД и ключами вообще этот метод … :)
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Mysql последняя запись - первой

Сообщение kreator »

gopstop2007, попробуйте сделать Post(Event:ScrollTop,?List) до заполнения Броуза. Я часто этим пользуюсь. ИМХО, дело не в MySQL и не в словаре. В шаблонах или в классах где-то зашито позиционирование на последнюю запись. Правильно понимаю - речь о связанных броузах?
We are hard at work… for you. :)
gopstop2007
✯ Ветеран ✯
Сообщения: 1702
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 9 раз
Поблагодарили: 4 раза

Mysql последняя запись - первой

Сообщение gopstop2007 »

kreator писал(а): 01 Июль 2020, 14:59 gopstop2007, попробуйте сделать Post(Event:ScrollTop,?List) до заполнения Броуза. Я часто этим пользуюсь. ИМХО, дело не в MySQL и не в словаре. В шаблонах или в классах где-то зашито позиционирование на последнюю запись. Правильно понимаю - речь о связанных броузах?
да все правильно

Решил, нашел сортировки и Mysql не виноваты, правда пришлось все по очереди отключать, и прыгать по таб-ам,для просмотра результата.
Оказалось банально, при переключении таб-а NewSelection стоял BRWx.ResetFromBuffer, заменил на горячее поле и его бросил в броузе как reset fields и все стало работать.

Спасибо всем кто с подвигнул меня своими советами на этот подвиг, перековырять свой "говно код" :)
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Ответить