Автообновление значений
Автор TelecomMedia, 25 мая 2014 11:37
Сообщений в теме: 11
#1
Отправлено 25 Май 2014 - 11:37
Есть вот такая потребность: каждый день в несколько таблиц загружается обновленная информация. В таблицах несколько тысяч записей.
В этих таблицах есть вычисления (срабатывающие на отображение полей), обновляющие записи в т. Контрагенты.
Каждый раз приходится вручную открывать все страницы (а их более 20 в каждой из таблиц, при условии что отображается 100 записей) этих таблиц, чтобы обновить информацию. Можно кончено в настройках т. указать отображение скажем 1000 записей, но такой вариант не подходит, ибо информации очень много и все это сильно грузит систему.
Можно как то автоматизировать этот процесс, чтобы значения в контрагентах сами обновлялись?
В этих таблицах есть вычисления (срабатывающие на отображение полей), обновляющие записи в т. Контрагенты.
Каждый раз приходится вручную открывать все страницы (а их более 20 в каждой из таблиц, при условии что отображается 100 записей) этих таблиц, чтобы обновить информацию. Можно кончено в настройках т. указать отображение скажем 1000 записей, но такой вариант не подходит, ибо информации очень много и все это сильно грузит систему.
Можно как то автоматизировать этот процесс, чтобы значения в контрагентах сами обновлялись?
#2
Отправлено 25 Май 2014 - 14:13
fabrika-r (25 Май 2014 - 11:37) писал:
Есть вот такая потребность: каждый день в несколько таблиц загружается обновленная информация. В таблицах несколько тысяч записей.
В этих таблицах есть вычисления (срабатывающие на отображение полей), обновляющие записи в т. Контрагенты.
Каждый раз приходится вручную открывать все страницы (а их более 20 в каждой из таблиц, при условии что отображается 100 записей) этих таблиц, чтобы обновить информацию. Можно кончено в настройках т. указать отображение скажем 1000 записей, но такой вариант не подходит, ибо информации очень много и все это сильно грузит систему.
Можно как то автоматизировать этот процесс, чтобы значения в контрагентах сами обновлялись?
В этих таблицах есть вычисления (срабатывающие на отображение полей), обновляющие записи в т. Контрагенты.
Каждый раз приходится вручную открывать все страницы (а их более 20 в каждой из таблиц, при условии что отображается 100 записей) этих таблиц, чтобы обновить информацию. Можно кончено в настройках т. указать отображение скажем 1000 записей, но такой вариант не подходит, ибо информации очень много и все это сильно грузит систему.
Можно как то автоматизировать этот процесс, чтобы значения в контрагентах сами обновлялись?
#3
Отправлено 26 Май 2014 - 09:21
Либо более простой вариант: переносите код вычислений на отображение в доп.действие (даже менять в коде ничего не нужно) и запускаете его по всей таблице (т.е. без выделения записей). Плюс в том что не нужно будет по всем страницам проходить. Хотя крон конечно более лучший вариант, т.к. полный автомат (но там придется дописывать код, добавив цикл по записям)
#4
Отправлено 26 Май 2014 - 10:15
CbCoder (26 Май 2014 - 09:21) писал:
Либо более простой вариант: переносите код вычислений на отображение в доп.действие (даже менять в коде ничего не нужно) и запускаете его по всей таблице (т.е. без выделения записей). Плюс в том что не нужно будет по всем страницам проходить. Хотя крон конечно более лучший вариант, т.к. полный автомат (но там придется дописывать код, добавив цикл по записям)
#5
Отправлено 26 Май 2014 - 10:26
Да, есть такая проблема. Возможно, добавим в будущем опцию перезагрузки скрипта, аналогично загрузке/выгрузке больших бэкапов. В кроне, кстати тоже может быть такая проблема, если для него не установлен отдельный max_executon_time. В частности, скрипт рассылки писем в кроне учитывает это и тоже перезапускает себя.
#6
Отправлено 26 Май 2014 - 10:46
Хм, не знал. Хорошо что сказали. Учту при текущей разработке.
#7
Отправлено 27 Май 2014 - 09:30
CbCoder (26 Май 2014 - 09:21) писал:
Либо более простой вариант: переносите код вычислений на отображение в доп.действие (даже менять в коде ничего не нужно) и запускаете его по всей таблице (т.е. без выделения записей). Плюс в том что не нужно будет по всем страницам проходить. Хотя крон конечно более лучший вариант, т.к. полный автомат (но там придется дописывать код, добавив цикл по записям)
А в таком случае поля, которые есть в вычислении (на отображение), они должны быть отображены в таблице или это не имеет значения?
#8
Отправлено 27 Май 2014 - 09:36
Нет, в доп.действии это как раз не имеет никакого значения, в чем еще один плюс.
#9
Отправлено 27 Май 2014 - 09:48
Спасибо.
#10
Отправлено 27 Май 2014 - 10:21
Еще вопрос: если после выполнения доп действия не произошло никакой ошибки (например, превышено время ожидания), то можно считать, что все значения перенеслись корректно и в полном объеме?
И в случае, если я захочу перенести это задание в крон, то в "Команду" я копирую код, который в доп. действии, устанавливаю время, когда задание должно отработать и выставляю макс. время вып. скрипта?
Так?
И еще момент - как записать команду, если я хочу, чтобы задание скажем отрабатывало в 9-30 утра?
И в случае, если я захочу перенести это задание в крон, то в "Команду" я копирую код, который в доп. действии, устанавливаю время, когда задание должно отработать и выставляю макс. время вып. скрипта?
Так?
И еще момент - как записать команду, если я хочу, чтобы задание скажем отрабатывало в 9-30 утра?
#11
Отправлено 27 Май 2014 - 10:54
Цитата
Еще вопрос: если после выполнения доп действия не произошло никакой ошибки (например, превышено время ожидания), то можно считать, что все значения перенеслись корректно и в полном объеме?
Ну так кто мешает вам проверить? Если код верный, и в отдельных записях точно сработал, то скорее всего во всех записях тоже все корректно отработало. Ошибка в любом случае вылезет на экран.
Цитата
И в случае, если я захочу перенести это задание в крон, то в "Команду" я копирую код, который в доп. действии, устанавливаю время, когда задание должно отработать и выставляю макс. время вып. скрипта?
В случае переноса в крон, код придется доработать, добавив цикл по таблице, т.к. доп.действие делает цикл самостоятельно, а в кроне этого нет (он не в курсе, какую таблицу и как вы хотите обработать)
Цитата
И еще момент - как записать команду, если я хочу, чтобы задание скажем отрабатывало в 9-30 утра?
Не помню, в документации по крону должно быть. Синтаксис стандартный для крон-задач.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных













