|
![]() |
#1 |
Участник
|
То Gennady Antropov
Извините за задержку, были проблемы с интернетом ![]() Понятно, что каждый использует то, что ему нравится, но все же интересно сравнить возможности разных подходов к выгрузке ![]() Про размерность массива - да, есть такая проблема. Как динамически размерность массива указать я так и не нашел. Тут тока при создании сразу врубить ему на порядок большую размерность, чем может быть записей в таблице, чтоб хоть какоето время спать спокойно. Но это не очь хорошо все равно. А вот про то, что можно кроме самих записей еще что-то (неважно что) в этой таблице сохранять а в массиве нельзя - это вы зря. Во-первых в таблице можно сохранять только ограниченный набор настроек. Их можно расширить, доработав таблицу, но он все равно будет ограничен. Во-вторых, хоть в массив настройки сохранять и нельзя я не считаю это недостатком. Зачем вобще это делать? Вспомните, мы применяем массив при работе с excel напрямую через сервер автоматизации. А с его помощью мы имеем полный доступ к листу, включая и форматирование и формулы и любые функции использовать... И насчет того, что в стандарте есть... Есть то он есть, я просто не уверен в эффективности реализации этого ресурса. Скорее наоборот, имеем потерю в скорости. Это и понятно, ради универсальности имеем потерю в гибкости, обычная ситуация, даже если предположить, что писал это дело грамотный программер и сделал всю на 5+. Хотя в последнем тоже можно усомнится. Знаете на какие перлы я натыкаюсь в стандартной конфигурации? Для примера, цикл на пять итераций и в цикле проверка - если переменная пустая, то присвоить ей пустое значение. Кроме шуток. И это не единственный пример. Так что получается, что единственное преимущество Excel Buffer - это ее безразмерность? ![]() |
|
![]() |
#2 |
Участник
|
|
|
![]() |
#3 |
Участник
|
|
|
![]() |
#4 |
Участник
|
Например, есть неверно работающая программа. Одно из подозрений падает на то, что в некоторый момент переменная пуста.
Тогда вставляем две строчки: ЕСЛИ перменная = пусто ТО перменная := переменная; После чего включаем дебаггер, ставим остановку на 2-ю строчку и запускаем. Т.е. мы ничего не поменяли, но ситуацию отлловим, если будет. В Nav такого не делал, а в Delphi как то было ![]() |
|
![]() |
#5 |
Участник
|
Цитата:
Цитата:
Сообщение от smoyk
![]() А вот про то, что можно кроме самих записей еще что-то (неважно что) в этой таблице сохранять а в массиве нельзя - это вы зря. Во-первых в таблице можно сохранять только ограниченный набор настроек. Их можно расширить, доработав таблицу, но он все равно будет ограничен. Во-вторых, хоть в массив настройки сохранять и нельзя я не считаю это недостатком. Зачем вобще это делать? Вспомните, мы применяем массив при работе с excel напрямую через сервер автоматизации. А с его помощью мы имеем полный доступ к листу, включая и форматирование и формулы и любые функции использовать...
своего рода объектную переменную (ведь временная таблица существует локально, у клиента, нет обращений к серверу, поэтому потери в скорости не так уж ощутимы). Цитата:
Сообщение от smoyk
![]() И насчет того, что в стандарте есть... Есть то он есть, я просто не уверен в эффективности реализации этого ресурса. Скорее наоборот, имеем потерю в скорости. Это и понятно, ради универсальности имеем потерю в гибкости, обычная ситуация, даже если предположить, что писал это дело грамотный программер и сделал всю на 5+. Хотя в последнем тоже можно усомнится. Знаете на какие перлы я натыкаюсь в стандартной конфигурации? Для примера, цикл на пять итераций и в цикле проверка - если переменная пустая, то присвоить ей пустое значение. Кроме шуток. И это не единственный пример.
мне удобно было им пользоваться. Цитата:
(это уже во-вторых :О)? А место, где мы можем создавать и хранить свои функции, необходимые нам именно для выгрузки в Excel? Имхо, массивы лучше использовать когда не нужна динамичность их размерности, когда важна сама эта размерность, и для определенного типа данных. |
|