Segnetics

Вернуться   Segnetics > Форум Segnetics > SMLogix

SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.09.2020, 01:24   #1
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Косяки, непонятки и хотелки по историческим данным

Вот и у меня дошел ход до исторических данных, сразу возникли вопросы.
Лоджик 3.32.0114, SMH4 - форматнутый.


1. Косяк с отчетами

Исходное положение:
Блок History пишет 5 параметров по триггеру.
Загружаем программу в контроллер, делаем триггером 1 запись.
Формируем отчет - все хорошо, видим одну запись.
Делаем триггером вторую запись.
Формируем отчет - все хорошо, видим две записи.



Позишн намбер ту:
Та же программа, тот же блок, те же параметры по тому же триггеру.
В свойствах блока ставим использование фильтра "==" на один из параметров (с другими фильтрами не пробовал).

Загружаем программу в контроллер, делаем триггером 1 запись.
Формируем отчет(да, конечно, на входе для фильтра задаем правильное значение, чтобы нашлась именно нужная запись) - все НЕ хорошо. В начале таблицы видим четыре пустых строки, только поле дата/время заполнено, остальные поля пустые. И только пятой строкой идет наша единственная запись, которую мы сделали. Число на выходе Count соответствует числу строк - 5.

Делаем триггером вторую запись. Значения записываемых параметров другие.
Формируем отчет(да, конечно, на входе для фильтра задаем правильное значение, чтобы нашлась именно нужная запись) - все также НЕ хорошо, иногда еще хуже.

Далее имеем два варианта, закономерности проявления варианта 2 за пару-тройку десятков проб не уловил.
Вариант 1 - те же пустые 4 строки и под ними наша искомая.
Вариант 2 - те же пустые 4 строки, но под ними у нас теперь 2-3 строки, содержащих нужную нам запись(которая у нас всего одна такая вообще-то), все поля идентичны, кроме поля "дата/время" - в нем отличаются миллисекунды).
Отчеты смотрел в SMArt-овском диспетчере отчетов.



2. Вход row number.
Не уверен, что правильно понял из справки - это номер строки из сделанной для отчета выборки, значения из которой будут на выходах? Со смещением 2, то есть при значении на этом входе "0" выводятся значения из первой строки данных, которая в самом отчете числится под номером 2?
А как быть, если в выборке будет большое число строк и нужна будет строка с номером, который не влазит в int?


3. Другие косяки

- При открытии окна свойств блока History всегда включается английский язык для клавы. Работаешь себе в лоджике, подписываешь всякое на русском, заходишь туда, начинаешь там прописывать какое-нибудь поле, не глядя на экран, и только потом, уже заполнив поле, замечаешь, что там абракадабра английскими буквами. Бесит неимоверно.

- В SMArt-овском "Диспетчере отчетов" при просмотре отчета нажатие на Esc приводит не к закрытию отчета и возврату к списку отчетов, что было бы логично, а отрабатывает сразу настроенный на Esc выход из экрана диспетчера. Дико неудобно.


4. Хотелки
Раздельные функции создания выборки блоком History и записи файла отчета на носитель. Сделали выборку, нашли нужные данные, забрали их дальше в FBD для обработки - всё, сохраненный на носителе отчет не нужен. Если нужен, то по сигналу на отдельном входе записали.
Выходы со значением констант в блоке History.

Фильтры, как в History, для SMArt-овского исторического графика.


Это пока только то, что сразу бросилось в глаза с самого начала.
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 10:32   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
- В SMArt-овском "Диспетчере отчетов" при просмотре отчета нажатие на Esc приводит не к закрытию отчета и возврату к списку отчетов, что было бы логично, а отрабатывает сразу настроенный на Esc выход из экрана диспетчера. Дико неудобно.
Эскейп в этом окне есть по умолчанию, ручное задание выхода должно было быть заблокировано. Поэтому у вас дабл эскейп получается. Запретим)


Добавлено через 29 минут


Цитата
Сообщение от ViS Посмотреть сообщение
4. Хотелки
Раздельные функции создания выборки блоком History и записи файла отчета на носитель. Сделали выборку, нашли нужные данные, забрали их дальше в FBD для обработки - всё, сохраненный на носителе отчет не нужен. Если нужен, то по сигналу на отдельном входе записали.
Выходы со значением констант в блоке History.

Фильтры, как в History, для SMArt-овского исторического графика.
У исторического блока есть режим который в справке называется "Функция по умолчанию". В этом режиме исторические данные из базы данных (не обработанные, как есть) поступают на выход блока
и могут быть использованы в FBD.

Нужно несколько функций: объединяйте несколько блоков в единую базу - в справке написано, как это сделать.




Цитата
Сообщение от ViS Посмотреть сообщение
2. Вход row number.
Не уверен, что правильно понял из справки - это номер строки из сделанной для отчета выборки, значения из которой будут на выходах? Со смещением 2, то есть при значении на этом входе "0" выводятся значения из первой строки данных, которая в самом отчете числится под номером 2?
А как быть, если в выборке будет большое число строк и нужна будет строка с номером, который не влазит в int?
В силу того, что в результате выборки значений по переменной может быть несколько (массив значений, таблица значений), а выход для переменной у блока в этом режиме только один. Требуется как то получить доступ к остальным значениям. Для этого используется вход row number, число на этом выходе задает какой элемент из массива полученных данных будет выводиться на выходы значений и таймштампов блока.

Оперативная память в контроллере не бесконечна и драматически далека от памяти доступной для архива. Все данные выборки в принципе не могут быть загружен за раз. Поэтому функция работает с ограничениями, за раз она может загрузить максимум 1000 исторических значений, реальное же количество отобранных исторических значений выводиться на выход "count". Поэтому гипотетический максимум для row number будет 1000 (row = 0..999), а реальный максимум определяется значением на выходе "count".

1000 всегда влезет в int.

Тем не менее, ограничение в 1000 не должно смущать. Если в результате выборки получено настолько большое количество данных и нет уверенности, что в выборка пуста. Нужно взять таймштамп 1000-ой записи (row = 999), подать его на вход begin у блока и повторить выборку еще раз, получив доступ к следующей тысяче.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 24.09.2020 в 11:08
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 15:25   #3
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
У исторического блока есть режим который в справке называется "Функция по умолчанию". В этом режиме исторические данные из базы данных (не обработанные, как есть) поступают на выход блока и могут быть использованы в FBD.
Нужно несколько функций: объединяйте несколько блоков в единую базу - в справке написано, как это сделать.

Арсений, вы неверно поняли слово "функция"в данном контексте.
Речь не идет о математических функциях обработки данных.
Речь о входе Select, который выполняет 3 действия(у которого три функции) - выборка, математика, создание отчета.

Цитата:
Сообщение от Arsie
Всё так и работает. Хотеть уже сделанное - это как минимум странно
Это не так, и по справке и по факту. Или есть способ получить выборку в блоке без сохранения отчета? В справке такого не описано.

Цитата:
Сообщение от Arsie
Возможно вы путаете отчет и хранилище
Не путаю.
По select-у создается отчет и сохраняется на носителе, неважно на каком - внутренняя память, USB или флешка. Внутренняя память контроллера это тоже носитель, просто внутренний, а не внешний. Вот управление этим сохранением файла с отчетом хотелось бы иметь отдельно от формирования выборки.


Цитата:
Сообщение от Arsie
... функция работает с ограничениями, за раз она может загрузить максимум 1000 исторических значений ... Нужно взять таймштамп 1000-ой записи (row = 999), подать его на вход begin у блока и повторить выборку еще раз, получив доступ к следующей тысяче.
Вот это должно быть описано в справке, я такого там не видел. Может плохо смотрел. Кстати, эта 1000 не зависит от количества параметров? Это тысяча строк по 2-3-10-300 параметров в каждой или всего 1000 значений параметров(если в одной записи 100 параметров, то ограничимся 10 записями)?


Цитата Смарт - это просто виджет. К историческим данным он имеет только косвенное отношение - использует их.
Но ведь в историческом графике внутри работает все тот же History, верно? Почему бы не вывести этот функционал History в смарт?


Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Приложите ваш проект?
Да там кроме History и диспетчера отчетов в смарте больше ничего и нет, прикладываю.

Чудеса на виражах - сегодня в отчете не 4, а только 2 лишние пустые строки образуются.
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 15:42   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Это не так, и по справке и по факту. Или есть способ получить выборку в блоке без сохранения отчета? В справке такого не описано.
Два блока. Один создаёт отчёт (в нём это указано - стоит галочка), другой нет (в нём это не указано - галочка не стоит). Блоки запараллелены - входы данных и строба имеют один источник (в справке есть об этом).

Можно три блока, 4, 10, 20. Они будут работать с одной и той же БД. Реализовывать разные фукнции и можно даже отчёты разных видов. Один во внутреннюю память, два других на флешку.

Похоже у вас не уложилось, что блоки умеют работать расшаривать архив, т.е. БД с данными.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 15:58   #5
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Два блока. Один создаёт отчёт (в нём это указано - стоит галочка), другой нет (в нём это не указано - галочка не стоит). Блоки запараллелены - входы данных и строба имеют один источник (в справке есть об этом).
Можно и так, а можно эту галочку и вытянуть как отдельный вход блока. Было бы удобно, и не надо было бы плодить лишние сущности на поляне.


И еще пара хотелок к этому блоку образовалась:
- объединение фильтров не только по "И" но и по "ИЛИ", на выбор
- отдельный вход для выбора этого типа объединения
- дополнить фильтры входом enable для каждого фильтра. В свойствах блока указываем все нужные фильтры, а применением каждого рулим оперативно из FBD. Опять же уберет сущности с поляны.



Цитата:
Сообщение от Arsie Посмотреть сообщение
Похоже у вас не уложилось, что блоки умеют работать расшаривать архив, т.е. БД с данными.
Уложилось, уложилось. В приложенной выше программе это используется.

UPD.
Упс, только сейчас заметил, что файл не приложился к предыдущему сообщению, хотя в предварительном просмотре был.
Вложения
Тип файла: psl ee.psl (524.1 Кбайт, 2 просмотров)
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 16:30   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Можно и так, а можно эту галочку и вытянуть как отдельный вход блока. Было бы удобно, и не надо было бы плодить лишние сущности на поляне.
FBD - визуальный язык. Сущности не плодятся, это графические отображения разных функций одной и той же сущности.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 16:34   #7
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Добавочка по глюкам. Закономерность проявления не уловил.



Конфигуратор архива периодически открывается пустой, хотя в проекте есть блоки работы с историческими данными.


Расчет занимаемого архивом места в конфигураторе. Странная логика расчета при выборе записи по триггеру.
Почему считается, что будет обязательно 25 сэмплов в секунду? При установленном по умолчанию тике в 100мс контроллер даже не успеет их сделать.

Может тот триггер будет делать 1-2 записи в день всего.
Да, можно, исходя из задачи программы, предположить примерное количество записей в день/час/минуту и рассчитать число на нужный период. Но это очередной костыль ведь.



Окно свойств блока History периодически открывается пустым - как будто у блока не назначено ни одного входа, хотя входы назначены, на поляне у блока все отображается и он работает.


Добавлено через 5 минут


Цитата:
Сообщение от Arsie Посмотреть сообщение
FBD - визуальный язык. Сущности не плодятся, это графические отображения разных функций одной и той же сущности.
Именно потому, что визуальный - любой элемент на поляне является сущностью в контексте поляны и контексте программирования(а не компиляции). И эта сущность занимает на поляне место, а главное - требует сил и времени на работу с ней.
Например, что проще - выставить 1 или 0 на входах enable для, скажем, 5 фильтров в одном блоке History, настроенном 1 раз, или выставить на поляну и настроить 5 блоков? Как в плане временных затрат, так и в вероятности ошибки где-то. Ответ очевиден.

Последний раз редактировалось ViS, 24.09.2020 в 16:45
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 17:30   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Расчет занимаемого архивом места в конфигураторе. Странная логика расчета при выборе записи по триггеру.
Почему считается, что будет обязательно 25 сэмплов в секунду? При установленном по умолчанию тике в 100мс контроллер даже не успеет их сделать.

Может тот триггер будет делать 1-2 записи в день всего.
Да, можно, исходя из задачи программы, предположить примерное количество записей в день/час/минуту и рассчитать число на нужный период. Но это очередной костыль ведь.
В общем случае тик проекта может динамически меняться, поэтому стоит максимально возможная скорость сэмплирования. Т.е. архив точно будет не жирнее рассчитанного.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 18:00   #9
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
В общем случае тик проекта может динамически меняться, поэтому стоит максимально возможная скорость сэмплирования. Т.е. архив точно будет не жирнее рассчитанного.
В общем случае в подавляющем большинстве программ используется заданный для проекта тик, а не меняется динамически. Можно хотя бы отталкиваться от него при расчете, а не от теоретически максимальной скорости сэмплирования.
Дело не в том, что не будет "жирнее", а в том, что нет возможности нормально задать период хранения архива.

Вот мне надо архив со сроком жизни в год. Считать сэмплы на год? Их может быть ни одного за день, а может быть десятки.
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 19:03   #10
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Вот мне надо архив со сроком жизни в год. Считать сэмплы на год? Их может быть ни одного за день, а может быть десятки.
Поставить жирную флешку из расчёта максимальной скорости сэмплирования и ограничить время жизни данных годом. В скада-системах так и делают. Это гарантия 100% успеха.

Остальное - вероятностные процессы.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 19:26   #11
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Поставить жирную флешку из расчёта максимальной скорости сэмплирования и ограничить время жизни данных годом. В скада-системах так и делают. Это гарантия 100% успеха.

Остальное - вероятностные процессы.
Речь шла не о том, как реализовать хранение с очередным костылем.
Она о том, что можно сделать ваш продукт лучше и удобнее.
Зачем мне втыкать жирную флэшку и тратиться на нее, если мне и внутренней памяти более, чем достаточно?


В тот же расчет при выборе триггера можно было добавить поле "Максимальная частота сэмплирования", значение которой будет задаваться пользователем, и считать те дни/года исходя из этого значения, а не теоретически возможного. Элементарнейшая же вещь, несколько строк кода, не требующая "глобальной переделки системного подхода в лоджике".
Вот скажите честно, Арсений - в вашей лично практике было много программ, которые что-то читали/записывали с частотой 25 раз в секунду, да хотя бы 10 раз/сек? Хоть 1% от общего числа наберется?

Ну вот, честно, порой трудно понять логику, по которой вы принимаете те или иные решения при реализации каких-то функций.

Последний раз редактировалось ViS, 24.09.2020 в 19:36
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 23:53   #12
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Исторический график смарта...

До фига непонятного сходу, а ссылка в справке "см. Руководство пользователя" - не работает.

В историческом графике в смарте нельзя вывести только значения заданного диапазона по времени, а не весь архив?


Едем дальше с косяками.

Еще один глюк с Esc в смарте.
Есть экран, на котором живет исторический график(не во весь экран) и рядом с ним другие элементы - кнопки, текст, вывод числа. Если в переходах таки назначим Esc для выхода из экрана, то нажатие на него приводит только пропаданию всего изображения на полсекунды и остаемся на этом же экране. Выйти можно только быстрым троекратным нажатием на Esc.


Косяк со слайдером задания диапазона.
1. Размер исторического графика не на весь экран.Сверху и снизу есть другие элементы.
2. Открываем панель управления, тыкаем в задание начала диапазона.
3. Приехали. Нижняя часть окна со слайдером не отображается. Закрыть мы его не можем - на Enter не реагирует, по Esс получаем выход из экрана.
4. Вылетев по Esc, возвращаемся на экран с графиком - а там так и висит этот слайдер, с которым мы ничего не можем сделать.
Логичной была бы, как минимум, отработка Enter и Esc для этого окна.Как максимум, либо масштабирование слайдера соответственно размеру графика, либо отрисовка его поверх всех элементов экрана с привязкой его координат к экрану, а не к координатам графика. Растянуть окно графика до низа экрана тоже не поможет - так как оно сдвинуто вниз от верха, слайдер тоже оказывается сдвинутым вниз. Соответственно, его кнопки "Отмена" и "Перейти" находятся за пределами экрана.

Расположение элементов по уровню нам не поможет разместить свои элементы поверх графика, так он всегда сверху.

Далее. Мелочь в общем-то, но осадочек остается.
Если у нас пустой архив - нет ни одной записи - нам все равно предлагается сохранить отчет. После нажатия на кнопу "Сохранить" никакого отчета не сохраняется.
Правильным было бы при нажатии на дискету в панели управления вместо окна "Создание отчета" сразу выдавать сообщение о пустом архиве. Ну или все же создавать отчет, пусть он и будет пустой. А еще можно сделать проверку на пустоту архива и делать дискетку неактивной, как это сделано с кнопкой для слайдера. (Что касается этих слайдеров вообще, мое сугубо субъективное мнение - дико неудобная штука . Пока введешь одно значение в попытках его поймать с этими инерционными прокрутками, с обычной клавы с цифирями уже бы штук 5 ввел, минимум.)



Лирическое отступление.
Блин, весь день в лоджике, из них от силы полтора часа потрачено на саму программу, а все остальное время на борьбу с косяками и непонятками с этими историческими делами...
Теперь вот придется менять структуру экранов в смарте и частично концепцию интерфейса в целом.
Эх... если б заказчику не приспичило с этими архивами, сидел бы себе без новых глюков и проблем на 3.28 и горя б не знал.

Последний раз редактировалось ViS, 25.09.2020 в 00:07
ViS вне форума   Ответить с цитированием
Старый 25.09.2020, 10:34   #13
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Вот скажите честно, Арсений - в вашей лично практике было много программ, которые что-то читали/записывали с частотой 25 раз в секунду, да хотя бы 10 раз/сек? Хоть 1% от общего числа наберется?
В моей практике не раз было, когда разглагольствования о скорости накопления данных выливались в программную ошибку и скорость сильно отличалась от декларируемой как в меньшую, так и в большую сторону.

Мы уже думаем над "калькулятором", т.е. будет отражено две величины: пиковая (как сейчас) и "хотелочная".


Добавлено через 1 минуту


Цитата
Сообщение от ViS Посмотреть сообщение
В историческом графике в смарте нельзя вывести только значения заданного диапазона по времени, а не весь архив?
Попробуйте жесты. Свести пальцы, развести их. Подвигать влево/вправо.


Добавлено через 3 минуты


Цитата
Сообщение от ViS Посмотреть сообщение
Еще один глюк с Esc в смарте.
Проект?


Добавлено через 14 минут


Цитата
Сообщение от ViS Посмотреть сообщение
Еще один глюк
Некоторые косячки увидел, создал задачи на исправление.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 25.09.2020, 16:15   #14
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Попробуйте жесты. Свести пальцы, развести их. Подвигать влево/вправо.
Да уже понял, что нельзя, к сожалению.
Имелось ввиду не масштабирование, а вывод в график данных только в пределах заданного диапазона, при любом масштабировании и сдвигах вправо/влево. Поначалу ошибочно подумал, что входы begin и end так и работают, как в History. К огромному сожалению они оказались только масштабом отображения по временной шкале, а не выборкой.
В целом получается пока, что смартовский исторический график - всего лишь красивая, но малофункциональная картинка, увы. Ему бы функции блока History - цены б не было.
__


Блок HistoryStorage.
clear - Очистка исторических данных накопленных в архиве.

А если несколько блоков History пишут несколько архивов - будут удалены ВСЕ архивы? Как очистить только один архив?


Цитата Проект?
Приложил.
Вложения
Тип файла: psl ee1.psl (611.6 Кбайт, 5 просмотров)
ViS вне форума   Ответить с цитированием
Старый 25.09.2020, 16:40   #15
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Блок HistoryStorage.
clear - Очистка исторических данных накопленных в архиве.

А если несколько блоков History пишут несколько архивов - будут удалены ВСЕ архивы? Как очистить только один архив?

Никак. А зачем?

Это типа для целей очистки после ПНР.


Добавлено через 10 минут


Цитата
Сообщение от ViS Посмотреть сообщение
Да уже понял, что нельзя, к сожалению.
Имелось ввиду не масштабирование, а вывод в график данных только в пределах заданного диапазона, при любом масштабировании и сдвигах вправо/влево. Поначалу ошибочно подумал, что входы begin и end так и работают, как в History. К огромному сожалению они оказались только масштабом отображения по временной шкале, а не выборкой.
В целом получается пока, что смартовский исторический график - всего лишь красивая, но малофункциональная картинка, увы. Ему бы функции блока History - цены б не было.
Не понимаю, что вы хотите. Как можно на графике зависимости значения от времени сделать отфильтрованное что то?

Перемещение по тренду есть и так, я же не зря про пальцы говорил. Выводите любой интервал в любом масштабе.

В тренде также можно установить масштаб по шкале времени и шкале значений из FBD.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 25.09.2020 в 16:53
Arsie вне форума   Ответить с цитированием
Старый 25.09.2020, 17:24   #16
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Никак. А зачем?
Это типа для целей очистки после ПНР.

Нет, После ПНР как раз есть смысл очистить все архивы.
Это для костылей для реализации нужной задачи.
Может, подскажете как ее реализовать без написания полностью своего графика?


Цитата:
Сообщение от Arsie Посмотреть сообщение
Не понимаю, что вы хотите. Как можно на графике зависимости значения от времени сделать отфильтрованное что то?
Есть цикл обработки изделия.
При запуске цикла данные по изменению нескольких параметров записываются в архив.
Эти данные потом надо просматривать и формировать отчет по циклу.
С отчетом все просто: History - выборка - отчет.

Задача: вывести на экран контроллера в виде графика архивные значения параметров за заданный период времени - один цикл обработки.
Никаких других значений вне этого диапазона не должно выводиться на экран графика ни при каких условиях - ни при масштабировании, ни при сдвиге вправо-влево.

Масштабирование и сдвиг, в идеале, хотелось бы оставить, чтобы график, с соблюдением указанного выше условия, можно было "рассмотреть поближе".

Помогла бы в историческом графике выборка, которая есть в History, но ее нет.
Помогло бы ограничение вывода значений в график по диапазону времени (по сути, конечно, тоже выборка, только сильно упрощенная), но этого нет.
Как костыль, помогло бы отключение масштабирования и сдвига тапом по экрану, пусть все остальные данные остаются "за экраном". Этого тоже нет.
Как другой костыль, помогло бы создание отдельного архива, в который загонять значения выборки из History, из которого уже вывод в исторический график, с очисткой этого временного архива перед новым выводом графика. Но нет очистки одного архива, а не всех сразу.
Помогла бы функция чтения данных историческим графиком не из архива, а из указанного отчета. Такого тоже нет.


Пока что получается, что у меня только один вариант остается - рожать полностью свой график?

P.S. Не необычная, а совершенно стандартная ведь задача для работ с архивами.

Последний раз редактировалось ViS, 25.09.2020 в 17:39
ViS вне форума   Ответить с цитированием
Старый 25.09.2020, 17:36   #17
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Есть цикл обработки изделия.
При запуске цикла данные по изменению нескольких параметров записываются в архив.
Эти данные потом надо просматривать и формировать отчет по циклу.
С отчетом все просто: History - выборка - отчет.

Задача: вывести на экран контроллера в виде графика архивные значения параметров за заданный период времени - один цикл обработки.
Никаких других значений вне этого диапазона не должно выводиться на экран графика ни при каких условиях - ни при масштабировании, ни при сдвиге вправо-влево.

Масштабирование и сдвиг, в идеале, хотелось бы оставить, чтобы график, с соблюдением указанного выше условия, можно было "рассмотреть поближе".
Никакие мне известные скады так не умеют. Значит в вашем случае это набор графиков по количеству циклов.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 25.09.2020, 17:49   #18
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Никакие мне известные скады так не умеют.

Ни одна известная вам скада не может нарисовать график, в котором будут присутствовать значения из выборки, а не из всего архива???
Все известные вам скады не умеют делать выборку?
Не умеют записать выборку во временный массив?
Не могут сформировать график из данных этого массива?
НЕ ВЕРЮ! (С)


Цитата:
Сообщение от Arsie Посмотреть сообщение
Значит в вашем случае это набор графиков по количеству циклов.

Какой набор по какому количеству?
Отдельный график на каждый цикл?

Сегодня обработано 50 изделий (50 циклов), завтра 5, послезавтра 10. Все должно храниться в архиве. В любой момент времени надо посмотреть график любого цикла из архива. Условие описано в предыдущем сообщении красным.

Мне надо забить в проект количество экранов с графиком, которое будет соответствовать максимально возможному количеству обработанных за год изделий??


Какой-то разговор глухонемого со слепым получается...
ViS вне форума   Ответить с цитированием
Старый 24.09.2020, 16:41   #19
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Вот это должно быть описано в справке, я такого там не видел. Может плохо смотрел. Кстати, эта 1000 не зависит от количества параметров? Это тысяча строк по 2-3-10-300 параметров в каждой или всего 1000 значений параметров(если в одной записи 100 параметров, то ограничимся 10 записями)?
Не зависит, но если создать блок со слишком большим количеством параметров это поставит раком систему. Как в плане поставки данных так и в плане выборки.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 11:10   #20
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
4. Хотелки
Раздельные функции создания выборки блоком History и записи файла отчета на носитель. Сделали выборку, нашли нужные данные, забрали их дальше в FBD для обработки - всё, сохраненный на носителе отчет не нужен. Если нужен, то по сигналу на отдельном входе записали.
Всё так и работает. Хотеть уже сделанное - это как минимум странно Возможно вы путаете отчет и хранилище.


Добавлено через 55 секунд


Цитата
Сообщение от ViS Посмотреть сообщение
Загружаем программу в контроллер, делаем триггером 1 запись.
Формируем отчет(да, конечно, на входе для фильтра задаем правильное значение, чтобы нашлась именно нужная запись) - все НЕ хорошо. В начале таблицы видим четыре пустых строки, только поле дата/время заполнено, остальные поля пустые. И только пятой строкой идет наша единственная запись, которую мы сделали. Число на выходе Count соответствует числу строк - 5.
Похоже какой-то косяк, будем исправлять.


Добавлено через 8 минут


Цитата
Сообщение от ViS Посмотреть сообщение
4. Хотелки
Выходы со значением констант в блоке History.

Константы в историю не пишутся а записываются в отчет на момент его формирования, если нужно сохранять константы возможно задача поставлена некорректно и это не константы.


Добавлено через 9 минут


Цитата
Сообщение от ViS Посмотреть сообщение
Фильтры, как в History, для SMArt-овского исторического графика.
Смарт - это просто виджет. К историческим данным он имеет только косвенное отношение - использует их.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.09.2020, 11:31   #21
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 1 843
Благодарил(а): 0 раз(а)
Поблагодарили: 124 раз(а) в 122 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Приложите ваш проект?


__________________
https://segnetics.com/support
Ilya J. вне форума   Ответить с цитированием
Старый 15.10.2020, 23:44   #22
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
Загружаем программу в контроллер, делаем триггером 1 запись.
Формируем отчет(да, конечно, на входе для фильтра задаем правильное значение, чтобы нашлась именно нужная запись) - все НЕ хорошо. В начале таблицы видим четыре пустых строки, только поле дата/время заполнено, остальные поля пустые. И только пятой строкой идет наша единственная запись, которую мы сделали. Число на выходе Count соответствует числу строк - 5.
А вот это уже поправили в текущей версии?
В понедельник программу сдавать заказчику, а отчеты получаются....

Вот пример отчета.
Было сделано 2 (ДВЕ) записи в архив по триггеру.
Выборка насчитала почти 4 сотни.
А всего в отчете оказалось 750 (СЕМЬСОТ ПЯТЬДЕСЯТ ,КАРЛ!!!!!!) записей, вместо двух.
О каких там всего четырех лишних строках я давеча говорил.....

Настройка блока History на картинке.
Отчет с фильтром по оператору в приложенном файле.
.csv переименован просто в .xls, ибо форум не хавает.

Обратите внимание на даты, оказывается у нас в году и 33-й и 52-й месяцы есть.

Не представляю, как такие отчеты заказчику сдать.
Миниатюры
Нажмите на картинку для увеличения

Название:  Hist.PNG
Просмотров: 42
Размер:  58.8 Кбайт  
Вложения
Тип файла: xls 15102020_224747180_Заказы_оператора.xls (76.3 Кбайт, 13 просмотров)
ViS вне форума   Ответить с цитированием
Старый 16.10.2020, 00:16   #23
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

И хотелка еще появилась.
Чтобы в поле "Отчет, имя" можно было прописать что-то типа "%[Имя входа/константы]" и туда подставилось бы текущее значение при создании отчета, соответственно полю "Формат", разумеется.
ViS вне форума   Ответить с цитированием
Старый 16.10.2020, 10:46   #24
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
И хотелка еще появилась.
Чтобы в поле "Отчет, имя" можно было прописать что-то типа "%[Имя входа/константы]" и туда подставилось бы текущее значение при создании отчета, соответственно полю "Формат", разумеется.
Как это применять?

Сделайте еще один блок отчета у которого имя будет "Отчет_1", у другого блока "Отчет_2". И дергайте селект того блока который нужен.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 16.10.2020, 15:49   #25
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Как это применять?
Сделайте еще один блок отчета у которого имя будет "Отчет_1", у другого блока "Отчет_2". И дергайте селект того блока который нужен.
Ну вот хоть на примере этого проекта.

Во-первых. 6 операторов. Необходимо создавать отчет, содержащий список выполненных оператором заказов. Значит придется ставить 6 блоков вместо одного для того, чтобы при необходимости найти отчет по конкретному оператору не пришлось пересматривать кучу с одинаковыми названиями.
В данном случае так и придется сделать - будут стоять 6 блоков.
Мы выше уже обсуждали про "сущности" на поляне. Сейчас мне придется ставить 9 блоков в этой части программы, а мог бы быть всего 1...


Во-вторых. Программа отрабатывает цикл обработки изделия. По окончанию цикла автоматически создается отчет с графиком этого цикла. И тут нам уже не "поставить еще один блок".

Отчеты периодически забираются с контроллера для хранения на компе в офисе. Если, например, через месяц или полгода понадобится посмотреть отчет по конкретному изделию, то как его найти? Вариант пересмотреть все отчеты в поисках нужного - не вариант. Вариант поиска по содержимому файлов - тоже не вариант. А если бы в имени файла отчета был номер изделия, то никакой проблемы.

Подобных сценариев легко придумать массу.

Да вот, например, модифицируем вариант из "во-первых" - вводить в архив идентификатор заказчика, и создавать отчет по всем заказам выполненным для конкретного заказчика. Заказчиков может быть сколько угодно, предугадать это невозможно, со временем их количество и состав меняется - "поставить еще один блок на поляну" ну никак не прокатит. Напомню, что отчеты скидываются в офис и работа с ними идет там. На производство для оперативного создания нужного отчета никто бегать не будет.


Добавлено через 13 минут


Цитата:
Сообщение от Arsie Посмотреть сообщение
У вас там 52-й месяц. Нам это не повторить.

Приложите ваш проект.
Я просто задал форматирование вывода dd.MM.yyyy hh:mm согласно справке.
Отослал в почту.

Последний раз редактировалось ViS, 16.10.2020 в 16:07
ViS вне форума   Ответить с цитированием
Старый 16.10.2020, 16:42   #26
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
В данном случае так и придется сделать - будут стоять 6 блоков. Мы выше уже обсуждали про "сущности" на поляне. Сейчас мне придется ставить 9 блоков в этой части программы, а мог бы быть всего 1...
Так и не понял, в чём проблема. Нужно сто блоков - поставьте сто. Они все будут работать с одними и теми же данными. Операторов точно менее 10 штук.



Цитата
Сообщение от ViS Посмотреть сообщение
Во-вторых. Программа отрабатывает цикл обработки изделия. По окончанию цикла автоматически создается отчет с графиком этого цикла. И тут нам уже не "поставить еще один блок".
Это да. Но так ли нужно создавать один файл на каждый цикл? Может лучше завести столбец с номером цикла?


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 16.10.2020, 20:03   #27
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата:
Сообщение от Arsie Посмотреть сообщение
Это да. Но так ли нужно создавать один файл на каждый цикл?
Требование заказчика: 1 изделие - 1 цикл - 1 автоматически создаваемый отчет.
Вполне логичное на мой взгляд.

Цитата:
Сообщение от Arsie Посмотреть сообщение
Может лучше завести столбец с номером цикла?
В архив пишем, кроме самих измеряемых параметров, и оператора, и номер заказа, и номер изделия. Соответственно в каждой записи, которая делается каждую минуту цикла, есть эти данные.
Что получится в отчете при его формировании по фильтру "Оператор"? Выведутся все записи всех циклов оператора, записанных каждую минуту цикла.
Как из такого архива получить отчет вида:
---------

Оператор: Пупкин [константа]


Заказ - Изделие

23 - 345
26 - 456
...
3456 - 56344
----------?
1 заказ - одна строка с информацией по нему, а не блоками с сотнями строк с одинаковыми значениями, относящимися к одному заказу? (1 цикл длится несколько часов, запись параметров раз в минуту - вот и сотни строк к одному заказу)

Приходится вести два архива.
Во втором по триггеру пишутся только данные заказа (оператор, номер заказа, номер изделия, время начала-конца и флаг завершения).
И опять же -

Цитата Напомню, что отчеты скидываются в офис и работа с ними идет там. На производство для оперативного создания нужного отчета никто бегать не будет.
Цитата:
Сообщение от Arsie Посмотреть сообщение
Так и не понял, в чём проблема. Нужно сто блоков - поставьте сто.
А я и не говорил, что тут проблема. Тут хотелка, аргументацию которой я уже привел.

Если говорить о проблеме, то тут она только в одном,точнее в двух - в затратах времени программиста, необходимых для выставления 100 блоков на поляну, их настройки, проведения связей и, соответственно, кратном увеличении вероятности допустить где-то одну маааааленькую ошибку, которую потом упаришься искать.
Вместо того, чтобы поставить 1 блок и 1 раз прописать в поле "%[Имя]".
Пожалейте пианиста!

А в этом случае как быть? -
Цитата ... вводить в архив идентификатор заказчика, и создавать отчет по всем заказам выполненным для конкретного заказчика. Заказчиков может быть сколько угодно, предугадать это невозможно, со временем их количество и состав меняется - "поставить еще один блок на поляну" ну никак не прокатит.

Последний раз редактировалось ViS, 16.10.2020 в 20:15
ViS вне форума   Ответить с цитированием
Старый 19.10.2020, 13:47   #28
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
В архив пишем, кроме самих измеряемых параметров, и оператора, и номер заказа, и номер изделия. Соответственно в каждой записи, которая делается каждую минуту цикла, есть эти данные.
Что получится в отчете при его формировании по фильтру "Оператор"? Выведутся все записи всех циклов оператора, записанных каждую минуту цикла.
Вас научить делать сортировку/фильтрацию в экселе по более, чем одному столбцу? Первый - №оператора, второй №изделия. Для первичной сортировки можно использовать колонку №3, назовём условно, "тип записи". Сортировка по этим трём столбцам даст вам искомые "Как из такого архива получить отчет вида". Заодно и сразу будет видно, cтолько изделий выпущено. Это много лучше, чем размывать данные по множеству файлов.

А ещё более эффетивно будет написать скрипты в аксессе/1C, засасывать в общую БД все отчёты и очень и очень мощно вытаскивать из них любую информацию.

Я прекрасно понимаю, что вы хотите до меня донести. Просто я пока не вижу убийственного аргумента, после которого можно сказать "Да, без этого ничего сделать не получится" Да есть некоторые аргументы, что лучше иметь разные файлы, но ваша задача для этой аргументации вообще не показательна и даже вреден, на мой взгляд.


PS. Тип записи; Оператор; Заказ; Изделие; Рандомные данные в процессе выполнения заказа, миллион строк


0; 1; 123; 456; 1
1; 1; 123; 456; 2
1; 1; 123; 456; 3
1; 1; 123; 456; 4
1; 1; 123; 456; 5
0; 1; 124; 654; 1
1; 1; 124; 654; 2
1; 1; 124; 654; 3
1; 1; 124; 654; 4
1; 1; 124; 654; 5

Вот что даст фильтрация по типу №0 "Начало заказа":

Нажмите на картинку для увеличения

Название:  Безымянный1.png
Просмотров: 1
Размер:  32.2 Кбайт


Фильтрануть можно и по оператору и по номеру заказа, не зная кто его выполнил. И по номеру изделия - узнать, что за номер заказа и кто его выполнил. По полю "Тип данных" можно даже фильтрануть разные данные, поступающие по ходу выполнения - номер этапа выполнения, например. Фильтрация - очень мощный инструмент.

В каком заказе было 456-е изделие?

Нажмите на картинку для увеличения

Название:  Безымянный2.png
Просмотров: 0
Размер:  25.9 Кбайт


Добавляем столбец времени (с отбросом минут) и хоба, какие заказы были в работе с 9 до 10 вечера?

Нажмите на картинку для увеличения

Название:  Безымянный4.png
Просмотров: 3
Размер:  28.8 Кбайт


Можно и наоборот: со скольки и до скольки работал оператор №1?

Нажмите на картинку для увеличения

Название:  Безымянный3.png
Просмотров: 0
Размер:  28.5 Кбайт


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 19.10.2020 в 14:13
Arsie вне форума   Ответить с цитированием
Старый 19.10.2020, 17:24   #29
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 721
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

1.Главное.
Есть подвижки по кривости создания отчетов по фильтру с лишними строками??


2.

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вас научить делать сортировку/фильтрацию в экселе по более, чем одному столбцу?
Арсений, мне искренне жаль потраченного Вами времени на написание этого поста. Но я даже вчитываться не стал, пробежал по диагонали.
Причем тут Эксель и другие Аксессы вообще???
Речь идет только о ВАШЕМ продукте. Об отчетах, создаваемых ВАШИМ ПО. О работе с архивами в ВАШЕМ ПО.
Не надо рассказывать что и как можно сделать в других программах.
Расскажите как сделать ВАШИМИ средствами.


Цитата Я прекрасно понимаю, что вы хотите до меня донести.
Вариантов два - либо не понимаете, либо понимаете, но всеми силами уходите в сторону от неудобного вам развития разговора.

Цитата Просто я пока не вижу убийственного аргумента, после которого можно сказать "Да, без этого ничего сделать не получится"
Аргументы все приведены, рассматривайте их в контексте работы ТОЛЬКО С ВАШИМ ПО.

Хочется иметь нормальную возможность создавать готовый отчет нужного вида, а не создавать отчет из отчета дополнительными средствами.
И такую возможность вы (в смысле Сегнетикс, а не лично Арсений) можете нам дать. Причем половина, если не больше, пожеланий, высказанных мною в этой теме, явно не требуют каких-то глобальных усилий и кардинальных переделок уже существующего.

Цитата Да есть некоторые аргументы, что лучше иметь разные файлы, но ваша задача для этой аргументации вообще не показательна и даже вреден, на мой взгляд.
Аргументируйте выделенное, пожалуйста. Повторюсь - в контексте работы ТОЛЬКО С ВАШИМ ПО.

P.S.

Перестаньте уже, наконец, воспринимать всё в штыки. Хотелки - это не наезд и не претензия, это соображения(и их аргументация) о том, как сделать ваш продукт лучше и удобнее для пользователей. Если вам неинтересно мнение ваших пользователей, то так и скажите и грохните нахрен все темы с хотелками и введите запрет на создание подобных постов. Если все же интерес есть, то давайте будем обсуждать их в конструктивном ключе по существу, без этих вот вывертов с переводом стрелок, ок?

Последний раз редактировалось ViS, 19.10.2020 в 17:37
ViS вне форума   Ответить с цитированием
Старый 19.10.2020, 17:28   #30
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 13 071
Благодарил(а): 4 раз(а)
Поблагодарили: 222 раз(а) в 203 сообщениях
По умолчанию Ответ: Косяки, непонятки и хотелки по историческим данным

Цитата
Сообщение от ViS Посмотреть сообщение
1.Главное.
Есть подвижки по кривости создания отчетов по фильтру с лишними строками??
Лишние строки - это события включения/отключения контроллера/программы. Они не фильтровались. Теперь фильтруются, возможно даже в текущем релизе.


Добавлено через 1 минуту


Цитата
Сообщение от ViS Посмотреть сообщение
Арсений, мне искренне жаль потраченного Вами времени на написание этого поста. Но я даже вчитываться не стал, пробежал по диагонали.
Причем тут Эксель и другие Аксессы вообще???
Речь идет только о ВАШЕМ продукте. Об отчетах, создаваемых ВАШИМ ПО. О работе с архивами в ВАШЕМ ПО.
Не надо рассказывать что и как можно сделать в других программах.
Расскажите как сделать ВАШИМИ средствами.
Это крик "Не хочу знать, как удобно, хочу чтобы как я сказал"?


Добавлено через 2 минуты


Цитата
Сообщение от ViS Посмотреть сообщение
Аргументируйте выделенное, пожалуйста. Повторюсь - в контексте работы ТОЛЬКО С ВАШИМ ПО.
Наше ПО генерит отчёт для его последующего использования в Excel, Ассеss, 1C.

В отрыве не получится. Своего средства просмотра у нас нет.


Добавлено через 3 минуты


Цитата
Сообщение от ViS Посмотреть сообщение
Если все же интерес есть, то давайте будем обсуждать их в конструктивном ключе по существу, без этих вот вывертов с переводом стрелок, ок?
У вас номер месяца представлен минутами, поэтому у вас всякие 52 месяцы вылезают Однако и по этому случаю мы сделали выводы и чуть поправим протокол задания даты/времени.


Добавлено через 5 минут


Цитата
Сообщение от ViS Посмотреть сообщение
Аргументируйте выделенное, пожалуйста. Повторюсь - в контексте работы ТОЛЬКО С ВАШИМ ПО.
Я аргументировал, но вы прочли по диагонали.


Добавлено через 9 минут


Цитата
Сообщение от ViS Посмотреть сообщение
Хотелки - это не наезд и не претензия, это соображения(и их аргументация) о том, как сделать ваш продукт лучше и удобнее для пользователей. Если вам неинтересно мнение ваших пользователей, то так и скажите и грохните нахрен все темы с хотелками и введите запрет на создание подобных постов. Если все же интерес есть, то давайте будем обсуждать их в конструктивном ключе по существу, без этих вот вывертов с переводом стрелок, ок?
Чем проще система, тем проще ею пользоваться. Чем больше в системе хотелок, тем сложнее система. Я всегда пытаюсь понять, хотелки возникают от ограничения системы или от банального отсутствия опыта работы с большими данными или неумения пользоваться сортировкой в экселе.

Причём заказчик точно также может не уметь работать с экселем и думает, что разделение на файлы удобнее фильтрации массива данных. Нужно показывать, а не идти на поводу. Редкий зак отказывается от упрощения своей жизни.


__________________
Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 20:44.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2020