среда, 17 сентября 2014 г.

DB2, календарь, рекурсия

Мне потребовалось создать календарь, да не простой, а к которому можно при-join-ить данные. Хотел получить таблицу вида:
Казалось бы, создай табличку create table'ом. Но так нельзя, да и не интересно.
Воспользуемся рекурсией!
Вот здесь отличный пример рекурсивного запроса в DB2 (ссылка). 
У меня получилась вот такая конструкция:

среда, 6 августа 2014 г.

BIRT. Обработка параметров с множественным выбором.

Для обработки параметров с множественным выбором, полученных из Maximo, можно использовать готовые методы:

Например, параметр "status" является параметром с множественным выбором:
var params["where"] = "1=1";
var params["status"]= "=WAPPR, =APPR";
var params["worktype"] = "MINOR";
var params["owner"] = "O'NEAL";
"select wonum, description from workorder where "
params["where"]
+ " and "
MXReportSqlFormat.createParamWhereClause("workorder.status", params["status"])
" and " + MXReportSqlFormat.createParamWhereClause("workorder.worktype", params["worktype"])
" and " + MXReportSqlFormat.createParamWhereClause("workorder.owner", "="+ params["owner"]);

Приведенный выше код сформирует примерно следующий код:
select wonum, description
from workorder
where 1=1
and ((workorder.status = 'WAPPR') and (workorder. status = 'APPR'))
and (workorder.worktype like '%MINOR%')
and (workorder.owner = 'O''NEAL')

Взято из официальной документации

воскресенье, 27 июля 2014 г.

Статистика разрешений экранов.

Теперь на сайте myresolutionis.ru доступна статистика разрешений экранов. Статистика собирается на основе данных, полученных от посетителей сайта. Кроме данных о разрешении экрана, никакая другая информация не собирается. Статистика доступна по адресу http://myresolutionis.ru/page/resstat.php

вторник, 8 июля 2014 г.

BIRT. Динамический параметр, использующий Скриптованный DataSet. (Dynamic Parameter with Scripted Data Set)

Оригинал здесь

Если:
1) В своем отчете Вы используете скриптовый datasource;
2) Соответственно у Вас скриптовые DataSet'ы;
3) У Вас есть параметр, который необходимо заполнять данными из одного из DataSet'ов перед построением самого отчета;

То:
1) в метод beforeOpen DataSet'a, из которого необходимо брать данные, вставьте строки:

importPackage(Packages.com.ibm.tivoli.maximo.report.script); 
mxReportScriptContext = MXReportScriptContext.initialize(reportContext);

2) Настройте параметр:
- Тип выбора значений - динамически,
- укажите колонку датасета, из которой нужно брать значения,
- укажите описание для значений (если хотите)

Например:

При запуске отчета должно появиться что-то типа того:



понедельник, 7 июля 2014 г.

BIRT. Общие сведения.

Описание

BIRT (Business Intelligence and Reporting Tools) - проект с открытым исходным кодом, инструмент построения отчетов, использующий разработческую среду Eclipse.

Обучающие материалы:

По данной ссылке можно скачать гайд (английский язык) для разработчиков отчетов в BIRT. Данный материал написан в основном для тех, кто разрабатывает отчеты для продукта IBM Maximo, но в целом, гайд хорош.

Еще один гайд от IBM. Здесь также собраны хорошие примеры, практики, советы.

Мекка для разработчиков отчетов в BIRT. Хороший форум, отвечают быстро, но на английском.

воскресенье, 6 июля 2014 г.

Adsense. Второй отчет. Июнь 2014.

Всем привет!

Отчет будет кратким.

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

Впервые за свою личную историю работы с адсенс, я получил доход больше чем 2 доллара.

На момент написания статьи, я обновил дизайн сайта, установил другие рекламные блоки. Таргетинг оставил.

Посмотрим, как повлияют перемены на поведение пользователей.

воскресенье, 15 июня 2014 г.

Adsense. Пацан к успеху шел. Первый отчет.

Доброго времени суток.

Изначально этот блог задумывался как новостной сайт, посвященный событиям в сфере информационных технологий и прочего hi-end добра... Но за всеми новостями не уследить. Нужно быть невероятно усидчивым человеком, что бы в одиночку "мониторить" интернет в поисках интересной информации. Сложно сохранять к этому постоянный интерес. Особенно это сложно, когда параллельно с ведением блога необходимо работать/учиться и совершать прочие бытовые подвиги. Но ведь не зря же приобретался домен? Не зря же был потрачен час времени на поиск красивого имени? Красивое же, правда? Нет? Ну ладно...  Я это к тому, что не хочется забрасывать свое уютненькое местечко в этом вашем интренете. Хочется развивать блог и развиваться самому.

Давным - давно я зарегистрировал аккаунт Adsense. Повесил на этот блог рекламу и...