Welcome, Guest. Please login or register.
Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Maks

Pages: [1]
1
Добрый день!
У меня есть отчет, его структура такова: Есть главная страница с описанием и таблицей и есть другая страница с детальным описанием каждой строчки таблицы. Главных страниц может быть несколько, как и страниц, описывающих строчку в таблице, так же размер страницы обычно больше размера A4. Так же нужно, чтобы каждая страница начиналась с новой.
Пробовал сначала разделить этот отчет на Reportpage1 и Reportpage2, но печатаются сначала все страницы из Reportpage1 и потом уже Reportpage2.
Пробовал добавить subdetail и поместить туда весь контент из второй страницы (так как размер контента больше страницы, то пришлось поставить галочку к splitable). По логике выводит как надо, но теперь уже не начинается с новой страницы и все превращается в кашу.
Мне бы очень помогла возможность добавить к subdetail "startNewPage".
Или же добавить возможность привязывать Reportpage к другой Reportpage и делать ее зависимой (вариант самый оптимальный, так какпервая страница должна была быть в альбомной ориентации, а вторая в книжной).
Или, возможно, есть какой-то другой способ решить эту проблему.
Так же не очень понятно отличие между "startNewPage" и startFromNewPage.

2
Добрый день, столкнулся с такими проблемами:
1. В отчете есть сабдетейл бенд, а у него футер. Нужно, чтобы сабдетейл и футер печатались всегда. Ставлю в свойствах сабдетейла и футера printIfEmpty, но он все равно не печатается. Где-то на форуме видел, что еще ставят сыойство printAlways, но у меня его нет, либо я найти не могу его. Как быть?
2. В отчете есть 4 страницы и в каждой странице свой sql-запрос. Если запрос пустой, то печатается пустая страница.
К примеру, если из 4 запросов возвратил результаты только один, то дополнением к этому еще и печатается 3 пустых страницы. Как этого избежать? В свойствах page ставил notPrintIfEmpty, но это не помогает

3
Понял :) У меня в отчете очень много текста в SubDetailFooterBand и он не влазит на страницу, поэтому и переносится на другую, а между ними пол страницы пустоты. И свойство  spplittable не активно. Как с этим быть?

И еще проблема. А если понадобится несколько разных подэлементов в одном отчете?

К примеру:
1. Иванов Петр Сергеевич
   - 1 день с 10 до 15
   - 2 день с 10 до 17
   - 3 день с 9  до 12
Работу закончил за 3 дня, сумма выплаты 5 тыс. рублей

Используемые ресурсы:
   - медь 1кг
   - сталь 2кг
   Общая ценность 500 руб

2. Сидоров Иван Васильевич
   - 1 день с 10 до 20
   - 2 день с 10 до 20
Работу закончил за 2 дня, сумма выплаты 10 тыс. рублей

Используемые ресурсы:
   - латунь 2кг
   - олово 2кг
   Общая ценность 1500 руб

Таким способом уже не получится сделать. Как можно решить эту проблему?


4
Спасибо, сделал. Правда с  DataFooter к DataBand не получилось. Он так же выводил как и с обычным бандом.
Но получилось вывести с SubDetailFooterBand. Не знаю, правильно ли это, но пока все работает

5
Спасибо, получилось!

Теперь проблема в другом. Отчет строится не так, как мне нужно.
Планируемый вывод.
1. Иванов Петр Сергеевич
   - 1 день с 10 до 15
   - 2 день с 10 до 17
   - 3 день с 9  до 12
Работу закончил за 3 дня, сумма выплаты 5 тыс. рублей

2. Сидоров Иван Васильевич
   - 1 день с 10 до 20
   - 2 день с 10 до 20
Работу закончил за 2 дня, сумма выплаты 10 тыс. рублей

А получается так:
1. Иванов Петр Сергеевич
   - 1 день с 10 до 15
   - 2 день с 10 до 17
   - 3 день с 9  до 12
2. Сидоров Иван Васильевич
   - 1 день с 10 до 20
   - 2 день с 10 до 20
Работу закончил за 3 дня, сумма выплаты 5 тыс. рублей
Работу закончил за 2 дня, сумма выплаты 10 тыс. рублей

Схема в отчете:
-DataBand
  -SubDetailBand
-DataBand

Возможно ли сделать так, как мне нужно и как?

6
Вариант с передачей модели в lime report как-то сложновато организован + у меня работа с базой в другом потоке происходит. Из потока с бд я передаю в основной модель, которую отправляю в lime report.
Так вот, нельзя ли проще организовать передачу зависимых моделей?
К примеру, указывать имя родителя, и по какому ключу эти модели соединяются?
Было бы очень удобно)

7
Добрый день!
К примеру, есть таблица пользоателей "Users":
 - Id
 - ФИО
 - Должность

И зависимая таблица, которая отражает, что/когда и в каком количестве делал пользователь "WorkUsers":
 - Id
 - IdUsers
 - NameWork
 - DateBeg
 - DateEnd
 - Аmount

Требуется в отчете вывести пользователя и совершенную им работу, аля:
 Иванов Ю.А. (Автослесарь)
  - Демонтаж переднего бампера(1 шт, 10.10.2019-11.10.2019)
  - Ремонт переднего бампера(1 шт, 11.10.2019-13.10.2019)
  - Монтаж переднего бампера(1 шт, 13.10.2019-14.10.2019)

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

Подскажите, пожалуйста, можно ли как-нибудь передавать конект к базе данных(тип, порт, хост, имяБД, пользователь, пароль) из приложения, чтобы создавать запросы прямо в редакторе Lime Report
или может есть возможность передавать модель, с зависимой моделью в отчет.
Если эти два варианта осуществимы, объясните, пожалуйста, как работает каждый из них.

8
Спасибо, помогло  :)

Какой вариант скрытия лучше (производительней) ?

Reportpage1_TextItem1.content = ""; и поставить галку у TextItem hideIfEmpty

или

Reportpage1_DataBand1.isVisible = false;

или есть еще варианты?

9
Добрый день!


Структура отчета:
- Reportpage1
  - DataBand1
    - TextItem1
- Reportpage2
  - DataBand2
    - TextItem2

Создал 2 страницы(ReportPage1 и ReportPage2), на ReportPage1 первый вариант отчета для первого типа пользователей, на ReportPage2- второй вариант для другого типа пользователей. Мне нужно печатать по-порядку, сначала полностью отчет для первого типа пользователей, потом для второго. В предыдущем топике решали вопрос о пустой странице, которая теперь успешно не печатается. ( http://limereport.ru/forum/index.php?topic=389.0 )

Для проверки типа пользователей использовал

$S{
   if($D{model.typeUser} ==1 ){
      ... (текст отчета с вставками из $D{model}
   }
}

Аналогично и для 2го типа на ReportPage2


Текст, который хранится в TextItem, достаточно большой, при использовании скриптов прямо в TextItem приходится использовать кавычки и сливать все в одну строчку, а это очень не удобно, и я решил прибегнуть к глобальной панельке "Script", там проверять тип пользователя и в зависимости от этого занулять TextItem1.content/ скрывать (TextItem1.isVisible = false) или вовсе его как-то удалять.
 Нашел скриншот на этом сайте с примером и решил сделать по типу него.


Reportpage1_TextItem1.afterRender.connect(checkType1);
Reportpage2_TextItem1.afterRender.connect(checkType2);
function checkType1(){
   if(getField("model.typeUser") != 1){
      Reportpage1_DataBand1.isVisible = false;
       Reportpage1_TextItem1.content = "";
   }
}

function checkType2(){
   if(getField("model.typeUser") != 2){
      Reportpage2_DataBand1.isVisible = false;
       Reportpage2_TextItem1.content = "";
   }
}


Но оно почему-то не работает, так же пробовал и с beforeRender и писал условие вне функции, ничего не меняется.

Что прописать в Script, чтобы проверялись условия и в зависимости от этого скрывались/занулялись/удалялись TextItem'ы?

10
Спасибо, это работает!)

11
Добрый день!

Проблема в следующем: при печати, в случае, когда ReportPage2 пустой, тоесть в нем нет подходящих для него данных из модели, создается лишняя пустая страница, как от нее избавиться?
Конкретно:
Создал 2 страницы(ReportPage1 и ReportPage2), на ReportPage1 первый вариант отчета для первого типа пользователей, на ReportPage2- второй вариант для другого типа пользователей. Мне нужно печатать по-порядку, сначала полностью отчет для первого типа пользователей, потом для второго. Все работает хорошо, когда есть оба типа. Но когда нет, к примеру, первого типа пользователей, то при предварительном просмотре или при печати, первая страница пустая. Аналогично и для такого варианта, когда нет второго типа пользователей.
То есть сначала печатается отчет для первого типа, с ним все ок, и в самом конце печатается пустая страница для второго типа(так как его нет).
Особенно печально, когда нужно вывести отчет по одному пользователю, и сразу непонятно, какой у него тип, печатается отчет с дополнительной пустой страницей.
Так вот как избавиться от этой пустой страницы. Можно ли сделать это как-то через скрипт, к примеру удалить Reportpage1 или Reportpage2 чтобы не было пустых страниц?

12
Добрый день. Столкнулся с такой проблемой.
Мне нужно напечатать отчет о пользователях, но отчет на одного пользователя не умещается на всю страницу, при создании второй страницы печатаются сначала все первые страницы, а потом все вторые, притом размер страницы менять нельзя, так как шрифт становится слишком маленьким при печати на A4. Как сделать так, чтобы печаталась все попорядку? тоесть сначала печаталась первая и вторая страница про первого пользователя, потом так же первая и вторая страница про второго пользователя.

Версия: 1.5.66

Pages: [1]