Форум программистов CODEBY.NET Хостинг в Беларуси — Active Technologies

Разработка бизнес сайтов

Нужны клиенты? Тогда сюда быстрее...
X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )




> Open Source, динамические отчеты в Лотусе
oshmianski
Вставить ник
сообщение 16:06:2006, 16:19
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Замучали пользователи.
Ну сделайте мне такую вьюху, а мне такую... Надоело!!!
Вот склепал с горем пополам.

Не претендую на непогрешимость, но, думаю, что-то в этом есть.
Предложения, замечания можно сюда или в oshmianskiСОБАКАmailТОЧКАru

Да простят меня владельцы сайта, если что-то не так сделал cool.gif

!!!!!!!!!!!!!!Тем, кто первый раз сюда зашел. Смотрите ниже новые версии!!!!!!!!!!!!!!!!

Сообщение отредактировал oshmianski - 19:06:2006, 11:51
Прикрепленные файлы
Прикрепленный файл  Reports.rar ( 114.31 килобайт ) Кол-во скачиваний: 303
 
Подняться вверх 
 
Сообщение #1
3 страниц V  < 1 2 3 >  
Новая тема 
Ответов (30 - 59)
allex
Вставить ник
сообщение 27:06:2006, 10:52
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 281
Регистрация: 18:07:2005
Из: г.Меленки
Пользователь №: 1 995



Репутация:   2  


Все разобрался
Дополнение к импорту. Производить импорт выбранного листа в одну форму. И назначить соответствие каждой ячейки для каждого поля

Сообщение отредактировал allex - 27:06:2006, 10:55
Подняться вверх 
 
Сообщение #31
osmor
Вставить ник
сообщение 27:06:2006, 11:06
Цитата Ответить 


Новенький
*

Группа: Новенький
Сообщений: 84
Регистрация: 9:01:2004
Пользователь №: 208



Репутация:   1  


Цитата(allex @ 27:06:2006, 13:52 ) *
Все разобрался
Дополнение к импорту. Производить импорт выбранного листа в одну форму. И назначить соответствие каждой ячейки для каждого поля


т.е. в весь лист в один документ?
Подняться вверх 
 
Сообщение #32
oshmianski
Вставить ник
сообщение 27:06:2006, 11:38
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Изменения:
++если тип значения условия "дата", то значение усекается только до даты (событие Exiting поля). если значение = формула, преобразование проопускается.
++XML отчет (пробная версия). пытается открыться в броузере по-умолчанию.
++при построении Excel отчета учитывается тип данных в колонке: чило преобразуется к формату 0,00; все остальные типы - к тексту (есть закомментаренный код для преобразования к формату дата в зависимоти от локализации MS. но у меня все равно иногда кривота, потому как дата бывает 01.2001, а бывает 01.01.2001. если есть соображения, пишите).
++ProgressBar при обработке коллекции документов. Подпись на англицком, потому как русский шрифт криво отображает (если кто знает как побороть, пишите). По завершению выдаем сообщение пользователю.
Прикрепленные файлы
Прикрепленный файл  Reports.zip ( 122.79 килобайт ) Кол-во скачиваний: 63
 
Подняться вверх 
 
Сообщение #33
allex
Вставить ник
сообщение 28:06:2006, 04:43
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 281
Регистрация: 18:07:2005
Из: г.Меленки
Пользователь №: 1 995



Репутация:   2  


Так если формула и тип "дата" то все равно же будет со временем показываться
Подняться вверх 
 
Сообщение #34
oshmianski
Вставить ник
сообщение 28:06:2006, 06:37
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(allex @ 28:06:2006, 05:43 ) *
Так если формула и тип "дата" то все равно же будет со временем показываться

Да, формулы вычисляются в момент формирования строки запроса. Если только еще и в этот момент делать "обрезание"... А можно поинтересоваться, что мешает сделать примерно вот так @date(@Now)? Вот Вам дата и без времени.

Изменения:
++ProgressBar русифицирован. Огромное спасибо Osmor!!!
++Добавлено на форму ReportTemplate поле RealAuthor, авторское. Были замечены проблемы с доступом. Я всех пользователей в бд пускаю как авторов.
++Удалены неиспользующиеся (думал пригодится, ан нет) виды и форма конфигурации.
++Переписан механизм (на LS) выбора бд в источнике. Спасибо Lexa-xa!!!
Прикрепленные файлы
Прикрепленный файл  Reports.zip ( 115.45 килобайт ) Кол-во скачиваний: 76
 
Подняться вверх 
 
Сообщение #35
Max_from_UA
Вставить ник
сообщение 30:06:2006, 09:06
Цитата Ответить 


Продвинутый
**

Группа: Lotus team
Сообщений: 145
Регистрация: 13:03:2006
Пользователь №: 3 069



Репутация:   0  


Планируется ли добавить в Ваш проект графическое отображение данных (диаграммы, графики, гистокраммы, круговые диаграммы) для отчётов?
Подняться вверх 
 
Сообщение #36
oshmianski
Вставить ник
сообщение 30:06:2006, 09:20
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(Max_from_UA @ 30:06:2006, 10:06 ) *
Планируется ли добавить в Ваш проект графическое отображение данных (диаграммы, графики, гистокраммы, круговые диаграммы) для отчётов?

что касается Excel, то не вопрос, можно. могут только вопросы возникнуть с разными версиями MS Office.
на выходных запробуем чего-нить нарисовать biggrin.gif
Подняться вверх 
 
Сообщение #37
Hedg
Вставить ник
сообщение 30:06:2006, 14:38
Цитата Ответить 


Продвинутый
**

Группа: Новенький
Сообщений: 230
Регистрация: 25:04:2006
Из: Odessa
Пользователь №: 3 450



Репутация:   0  


Насчёт портирования в MS Word, нарыл когда-то примерчик с использованием шаблонов, единственный минус для каждого типа документа нужно создавать свой шаблон. Нашёл где-то тут http://www-10.lotus.com/ldd/sandbox.nsf

Сообщение отредактировал Hedg - 30:06:2006, 14:39
Прикрепленные файлы
Прикрепленный файл  wordintegration.zip ( 5.05 килобайт ) Кол-во скачиваний: 66
 
Подняться вверх 
 
Сообщение #38
oshmianski
Вставить ник
сообщение 30:06:2006, 19:22
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(Hedg @ 30:06:2006, 15:38 ) *
Насчёт портирования в MS Word, нарыл когда-то примерчик с использованием шаблонов, единственный минус для каждого типа документа нужно создавать свой шаблон. Нашёл где-то тут http://www-10.lotus.com/ldd/sandbox.nsf

Спасибо за примерчик. Я вот что думаю... Если таки использовать выгрузку в Excel. Т.е. выгружаем в Excel, потом загружаем Word, копируем в Excel табличку, вставляем Word, закрываем Excel и открываем Word. Плюсы в том, что механизм выгрузки в Excel уже написан. Минусы - съедаем оперативку, механизм миграции таблицы Excel вWord неконтролируем.
Какие соображения будут у почтенной публики?
Подняться вверх 
 
Сообщение #39
nor
Вставить ник
сообщение 1:07:2006, 16:58
Цитата Ответить 


Lotus master
***

Группа: Модеры
Сообщений: 351
Регистрация: 10:04:2004
Пользователь №: 398



Репутация:   5  


а зачем ворд вообще нужен?
Подняться вверх 
 
Сообщение #40
allex
Вставить ник
сообщение 3:07:2006, 05:17
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 281
Регистрация: 18:07:2005
Из: г.Меленки
Пользователь №: 1 995



Репутация:   2  


2 oshmianski
А отбор по нескольким формам реализовать реально ?
Подняться вверх 
 
Сообщение #41
oshmianski
Вставить ник
сообщение 3:07:2006, 09:24
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(allex @ 3:07:2006, 06:17 ) *
2 oshmianski
А отбор по нескольким формам реализовать реально ?

Все реально. На сколько это критично? Просто, ребята, сейчас я таки пытаюсь насладиться радостями отпуска. В конце июля думаю, может чего новенького покажу.
Подняться вверх 
 
Сообщение #42
allex
Вставить ник
сообщение 3:07:2006, 12:18
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 281
Регистрация: 18:07:2005
Из: г.Меленки
Пользователь №: 1 995



Репутация:   2  


Цитата(oshmianski @ 3:07:2006, 12:24 ) *
Просто, ребята, сейчас я таки пытаюсь насладиться радостями отпуска. В конце июля думаю, может чего новенького покажу.

Это святое
Цитата(oshmianski @ 3:07:2006, 12:24 ) *
На сколько это критично?

Необходимо
Подняться вверх 
 
Сообщение #43
fedotxxl
Вставить ник
сообщение 16:08:2006, 09:24
Цитата Ответить 


Гуру
***

Группа: Достойный программист
Сообщений: 356
Регистрация: 9:11:2005
Пользователь №: 2 538



Репутация:   5  


Как работа над проектом? Забыта?
У меня несколько предложений, интересно как вы к ним отнесетесь:
1. Забирать документы из вьюка, при помощи NotesViewNavigator
2. Сделать документы - шаблоны, которые будут определять вид отчета (в основном в экселе)

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

Что думаете?
Подняться вверх 
 
Сообщение #44
oshmianski
Вставить ник
сообщение 17:08:2006, 09:44
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(fedotxxl @ 16:08:2006, 11:24 ) *
Как работа над проектом? Забыта?

Не забыта, но сейчас нет особо свободного времени.
Цитата(fedotxxl @ 16:08:2006, 11:24 ) *
У меня несколько предложений, интересно как вы к ним отнесетесь:
1. Забирать документы из вьюка, при помощи NotesViewNavigator

Я так понял, что в качестве источника предлагается использовать вьюху?
Зачем использовать NotesViewNavigator?
Цитата(fedotxxl @ 16:08:2006, 11:24 ) *
2. Сделать документы - шаблоны, которые будут определять вид отчета (в основном в экселе)

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

Что думаете?

Ничего не понял. Как планируется использования шаблона?
Подняться вверх 
 
Сообщение #45
fedotxxl
Вставить ник
сообщение 18:08:2006, 14:45
Цитата Ответить 


Гуру
***

Группа: Достойный программист
Сообщений: 356
Регистрация: 9:11:2005
Пользователь №: 2 538



Репутация:   5  


Для: oshmianski
1. Для ориентирования во вьюхе. Можно будет брать несколько категорий первого категоризированного столбца, например.... Также можно будет сделать простой отбор по вьюхе... Будут браться значения не из документов, а из строк вьюхи
2. Я сделал так:
а) Элемент дизайна, который отвечает за отображение столбцов
б) За отображение воркшита.
В целом это документы, которые устанавливают правила оторбажения... а в скрипте, при генерации отчета, происходит их обработка

Сообщение отредактировал fedotxxl - 18:08:2006, 14:46
Подняться вверх 
 
Сообщение #46
fedotxxl
Вставить ник
сообщение 24:08:2006, 11:11
Цитата Ответить 


Гуру
***

Группа: Достойный программист
Сообщений: 356
Регистрация: 9:11:2005
Пользователь №: 2 538



Репутация:   5  


Моя версия.... Основное:
  • Шблоны распространяются только на отчет Excel
  • Все данные грузятся "по нажатии на конпку". Нет автомотического подгруза данных
  • Настройки "взаимоподменяемы". Как создается отчет можно наглядно видеть, если задать генерить отчет на 500-600 документов - настройки "накладываются" друг на друга
Пожалуйста все недоработки (там их куча наверняка), ошибки возникающие (в какой строчке... какие данные) пишите.
Прикрепленные файлы
Прикрепленный файл  Reports.rar ( 126.73 килобайт ) Кол-во скачиваний: 39
 
Подняться вверх 
 
Сообщение #47
oshmianski
Вставить ник
сообщение 25:08:2006, 07:56
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


Цитата(fedotxxl @ 24:08:2006, 13:11 ) *
Моя версия.... Основное:
  • Шблоны распространяются только на отчет Excel
  • Все данные грузятся "по нажатии на конпку". Нет автомотического подгруза данных
  • Настройки "взаимоподменяемы". Как создается отчет можно наглядно видеть, если задать генерить отчет на 500-600 документов - настройки "накладываются" друг на друга
Пожалуйста все недоработки (там их куча наверняка), ошибки возникающие (в какой строчке... какие данные) пишите.

забрал, смотрю
Подняться вверх 
 
Сообщение #48
oshmianski
Вставить ник
сообщение 25:08:2006, 09:46
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


1. в функции SetReportTemplate
Код
...
i.AppendToTextList(docMapping.GetItemValue("n" & Cstr(j))(0) & "|" & docMapping.GetItemValue("n" & Cstr(j))(0) &_
"~" & docMapping.GetItemValue("[b]не n, а t[/b]" & Cstr(j))(0) & "!" & docMapping.GetItemValue("[b]не n, а f[/b]" & Cstr(j))(0))
...

у меня в отчете из-за этого не было данных.
Кроме того, если добавлять условия отбора, то подставляются русские значения полей, которых нет в документах (у меня, по крайней мере) + FTSearch вылетает в NSD.

2. Настройки я бы не прошивал жестко в источниках, а делал бы там ссылки на документы настройки. И в момент построения отчета, все параметры отображения брал бы не из самих документов источников, а из настроек для Excel. Это конечно немного затруднительно будет для задания свойств каждого поля в источнике, но таким образом можно избежать статики.

3. функция ChekFields
мне выскакивает (MsgOk "Ошибка: несоответствие полей c нумерами.", "error", "Ошибка") и я, как пользователь, теряюсь в догадках, доверять мне этому отчету, который таки дальше строится.

4. сразу показывать пользователю Excel мне кажется не совсем разумно. Если машина слабая, то операции форматирования могут выполняться достаточно долго. Кроме того, после формирования отчета, пользователь остается в интерфейсе Excel. Потом, скажем, закрыл отчет и вернулся в Notes, а там ему говорят "Отчет посторен", жмем "Ок", и что у нас получится? У меня ошибка, т.к.
Код
MsgOk "Формирование отчета завершено", "Info", "Построение отчета"
            xlSheet.Cells.Select
        '    xlSheet.Cells.EntireColumn.AutoFit
            xlSheet.Rows("1:1").Select
            .Selection.Font.Bold = True
            xlSheet.Range("A1").Select
            .Visible=True



Вот вроде и все. Спасибо за продолжение.
Подняться вверх 
 
Сообщение #49
fedotxxl
Вставить ник
сообщение 25:08:2006, 11:09
Цитата Ответить 


Гуру
***

Группа: Достойный программист
Сообщений: 356
Регистрация: 9:11:2005
Пользователь №: 2 538



Репутация:   5  


1. Да, эту ошибку я заметил давно. Мне почему-то показалось, что её сделал не я, а ты. Я в большинстве случаев копировал код.... Наверно я напудрил...
2. Но ведь у тебя же источник берется не из документа источника, а из документа, из которого строится отчет. Так жить проще...
3. Для отладки
4. Для отладки. Конечно уберем потом

Мне сейчас хочется сделать проверку на корректность заполнения шаблонов... неплохо бы сделать шаблоны по-умолчанию... только как это лучше сделать?...

У меня вопрос... зачем такие конструкции
Цитата
Set i = doc.GetFirstItem("AllVariants")
If i Is Nothing Then
Set i = New Notesitem(doc, "AllVariants", 1)
Else
Set i = New Notesitem(doc, "AllVariants", 1)
Call doc.replaceItemValue("AllVariants", "")
End If
Set i = doc.ReplaceItemValue...
Подняться вверх 
 
Сообщение #50
oshmianski
Вставить ник
сообщение 25:08:2006, 11:38
Цитата Ответить 


Гуру
***

Группа: Lotus team
Сообщений: 499
Регистрация: 17:10:2005
Из: Минск, Беларусь
Пользователь №: 2 433



Репутация:   5  


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

Цитата(fedotxxl @ 25:08:2006, 13:09 ) *
Мне сейчас хочется сделать проверку на корректность заполнения шаблонов... неплохо бы сделать шаблоны по-умолчанию... только как это лучше сделать?...

Я вижу два пути:
а) сделать дефолтовые доки шаблонов, скрыть их от пользователей и использовать по-умолчанию
б) в скрипте забить дефолтовый массив

Цитата(fedotxxl @ 25:08:2006, 13:09 ) *
У меня вопрос... зачем такие конструкции
Set i = doc.ReplaceItemValue...

Где-то когда-то на каком-то форуме, на интертрасте что ли, читал сабж по этому поводу и решил, что буду использовать конструкции типа ReplaceItemValue и GetItemValue. Видишь ли, если использовать упрощенные конструкции, то можно запутаться, ибо наименоване полей могут совпадать (или почти совпадать) с различными стандартными методами и свойствами. Кроме того, считаю, что это более грамотным с точки зрения красивости программировани. Но, как и все смертные, часто ленюсь http://forum.codeby.net/style_images/1/fol...icon