• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

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

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Open Source

  • Автор темы oshmianski
  • Дата начала
O

oshmianski

По поводу кривоты отображения данных в Excel отчетах.
Господа, поделитесь кто как решал такие грабли!!!
Вот мои предложения:
1. в свойстве всех ячеек поставить их формат как текстовый, т.е.
Код:
...
xlSheet.Cells.Select
[b].Selection.NumberFormat = "@"[/b]
xlSheet.Cells.EntireColumn.AutoFit
xlSheet.Rows("1:1").Select
.Selection.Font.Bold = True
xlSheet.Range("A1").Select
.Visible=True
...
Здесь была таки замечена грабля с датой. Excel (Office 2003) ее переколбашивал в числовое значение.

2. перед вставкой значения в ячейку добавлять к нему спереди апостроф ('). Excel тогда железно воспринимает значение как текст и ничего не пытается с ним сделать. Для пользователя не заметно, но тогда Excel (Office 2003) сортирует числовые столбцы как текст.
 
A

allex

Вот последние обновления:
++Исправлено отображение шрифтов в HTML
++Можно использовать кеш кнопки "Поиск". Т.е. "Поиск" ищет, а "... отчет" уже использует ее результаты.
++Показываем пользователю сколько нашли записей и спрашиваем, будем ли строить. На тот случай, если уж очень много записей в отчет случайно попадет.

Вылетает с ошибкой. В ходе эксперементов,выяснилось что в запросе дата должна быть без времени
 
O

oshmianski

Уважаемые, подскажите, плс, как правильно формировать XML файлик, дайте ссылку.
Никогда этим не занимался. Нашел книжку, почитал.
Что у меня получается. В IE 6, Opera 8,5 - 9, Mozilla 1.4a на валидность проходит. В Ms Access 2003 ипортируется как отдельные несвязанные таблицы.
Вот примерное содержание файлика на выходе:

<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE xmlreport [
<!ELEMENT document (unid+, field+)>
<!ELEMENT field (name+, value+)>
]>
<xmlreport>
<document>
<unid>DFE404EB1508B2EFC2256BE400425D0F</unid>
<field>
<name>Subject</name>
<value>PLAN01</value>
</field>
<field>
<name>CreatorFullName</name>
<value>Винцелович Сергей Иванович</value>
</field>
<field>
<name>Vozvrat</name>
<value>4</value>
</field>
...
</document>
...
</xmlreport>

Чего не хватает, что лишнее?
Если чего не так, пишите!
 
M

Max_from_UA

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

osmor

Спасибо ув. oshmianski за такое полезное начинание.
Очень я вдохновился посмотрев его базу, и решил внести свою маленький вклад.
Вашему вниманию предлагается базка для импотра данных из Excel в Lotus.

Прошу сильно не бить, в Lotus пограммировании я новичок.
Часть кода уперта из базы "отчетов", еще раз спасибо oshmianski :)
С брагодарностью приму ЛЮБЫЕ замечания, в том числе и по стилю программирования (на до же учиться делать правильно)
 

Вложения

  • ImportXLS.zip
    37,3 КБ · Просмотры: 311
L

Lexa-xa

Ув. oshmianski.

При выборе источника, указывается путь начиная с левого пробела, видимо все что справа отбрасывается.
Т.е. если источник находится по адресу "My Bases\Templates.nsf",
то заносится значение "Bases\Templates.nsf".

Все равно Молодец.
 
O

oshmianski

Ув. oshmianski.

При выборе источника, указывается путь начиная с левого пробела, видимо все что справа отбрасывается.
Т.е. если источник находится по адресу "My Bases\Templates.nsf",
то заносится значение "Bases\Templates.nsf".

Все равно Молодец.
Спасибо, давно хотел переписать. Теперь не откручусь :D
 
A

allex

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

oshmianski

Изменения:
++если тип значения условия "дата", то значение усекается только до даты (событие Exiting поля). если значение = формула, преобразование проопускается.
++XML отчет (пробная версия). пытается открыться в броузере по-умолчанию.
++при построении Excel отчета учитывается тип данных в колонке: чило преобразуется к формату 0,00; все остальные типы - к тексту (есть закомментаренный код для преобразования к формату дата в зависимоти от локализации MS. но у меня все равно иногда кривота, потому как дата бывает 01.2001, а бывает 01.01.2001. если есть соображения, пишите).
++ProgressBar при обработке коллекции документов. Подпись на англицком, потому как русский шрифт криво отображает (если кто знает как побороть, пишите). По завершению выдаем сообщение пользователю.
 

Вложения

  • Reports.zip
    122,8 КБ · Просмотры: 221
A

allex

Так если формула и тип "дата" то все равно же будет со временем показываться
 
O

oshmianski

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

Изменения:
++ProgressBar русифицирован. Огромное спасибо Osmor!!!
++Добавлено на форму ReportTemplate поле RealAuthor, авторское. Были замечены проблемы с доступом. Я всех пользователей в бд пускаю как авторов.
++Удалены неиспользующиеся (думал пригодится, ан нет) виды и форма конфигурации.
++Переписан механизм (на LS) выбора бд в источнике. Спасибо Lexa-xa!!!
 

Вложения

  • Reports.zip
    115,4 КБ · Просмотры: 225
M

Max_from_UA

Планируется ли добавить в Ваш проект графическое отображение данных (диаграммы, графики, гистокраммы, круговые диаграммы) для отчётов?
 
O

oshmianski

Планируется ли добавить в Ваш проект графическое отображение данных (диаграммы, графики, гистокраммы, круговые диаграммы) для отчётов?
что касается Excel, то не вопрос, можно. могут только вопросы возникнуть с разными версиями MS Office.
на выходных запробуем чего-нить нарисовать :D
 
H

Hedg

Насчёт портирования в MS Word, нарыл когда-то примерчик с использованием шаблонов, единственный минус для каждого типа документа нужно создавать свой шаблон. Нашёл где-то тут
 

Вложения

  • wordintegration.zip
    5,1 КБ · Просмотры: 228
O

oshmianski

Насчёт портирования в MS Word, нарыл когда-то примерчик с использованием шаблонов, единственный минус для каждого типа документа нужно создавать свой шаблон. Нашёл где-то тут
Спасибо за примерчик. Я вот что думаю... Если таки использовать выгрузку в Excel. Т.е. выгружаем в Excel, потом загружаем Word, копируем в Excel табличку, вставляем Word, закрываем Excel и открываем Word. Плюсы в том, что механизм выгрузки в Excel уже написан. Минусы - съедаем оперативку, механизм миграции таблицы Excel вWord неконтролируем.
Какие соображения будут у почтенной публики?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!