Использование СКД и хранение отборов

  1. 9 г. назад

    Кому интересно, могу выложить наработки по теме.
    Только на всякие нимбостарты и прочую монетизированную хрень выкладывать не надо.

    Ответы: (18) (20)
  2. выкладывай, чо

  3. мне интересно

  4. Небольшая вводная:
    Лично я, в силу специфики наших рабочих баз, а базы у нас почти все самописные, частенько использую отчеты на скд, но, необходимо пост-форматирование результата.
    Общая риторика написания подобных отчетов сводится к следующему:
    1. Убираем вообще команду "Сформировать" перегружая её своей.
    2. Добавляем свою, которая вызывает компоновку результата, после компоновки вызываем обработчик табличного документа, я обычно называю подобное "ОформитьРезультат" удаляем не нужное, объединяем, раскрашиваем под хохлому.
    Это касается оформления. Просто у меня многие отчеты пользователи любят анализировать в Excel.
    Это позволяет не сильно заморачиваться с макетом оформления и т.п.

    Ответы: (4)
  5. Из недостатков схемы в (3) - при изменении варианта отчета, например, состава полей группировок, понятное дело, что результат может оказаться не предсказуем.

  6. Про параметры СКД.
    Практика показала, что в выражениях параметров.... Почему-то (!) может присутствовать только один параметр.
    Т.е. выражение вида &Параметр1+&Параметр2 выдает &Параметр1 начисто игнорируя второй, либо выдает сообщение об ошибке.
    В параметрах можно использовать функции модулей менеджера объектов, ибо они тоже общие.
    Собственно, если Вам необходимо писать, например, указать конкретную номенклатуру по коду, то можно в выражении так и писать Справочники.Номенклатура.НайтиПоКоду({Нужный код})

    Ответы: (9)
  7. звучит интригующе

    Ответы: (7)
  8. (6) Что именно?

  9. про хохлому в частности

    Ответы: (10) (11)
  10. +(5) для вычисляемых полей можно использовать функции модулей менеджера объектов так же.

    Ответы: (12)
  11. (8) Ну, у меня есть отчет, который "заливает" фон градиентом от 0 до 100 % :)

  12. +(8) условным оформлением такое сделать сложно. Но если руки дотянутся, по-пробую.
    Грубо, СКД умеет понимать, где функция а где еще чего.
    Оно вычисляет используя функцию "Вычислить"

  13. sapphire +(5) для вычисляемых полей можно использовать функции модулей менеджера объектов так же.

    сильно

    Ответы: (13)
  14. (12) попробуй, кто мешает

  15. Про программную инициализацию макетов СКД.
    Надо инициализировать по URI. Другие способы хоть и указаны в СП, но не взлетели, ни на 8.2, ни на 8.3.

    Ответы: (15)
  16. +(14) схема работы такова:
    1. СКД инициализируется по URI
    2. Получаем список вариантов
    3. Инициализируем вариант
    4. Получаем всё, что только возможно для СКД, включая инициализированные отборы на форме.

    Всё, что связано с СКД, как и сама СКД сериализуется, т.е можно получить оное в виде XML и хранить в оном виде.
    Для этого, нужно описать 2 функции - одна возвращает строку XML-представления объекта, другая, наоборот, из строки XML возвращает объект. Функции просты, завтра или как руки дотянутся - сброшу, всё элементарно.

    Возникает вопрос: мол, а зачем?!
    У меня это используется, например для гибкой настройки адрессации системы соглавания объектов: почему, кто и до каких пор должен лайкнуть или дизлайкнуть объект.

  17. И еще касательно инициализации СКД.
    Инициализация кривой СКД на сервере приведет к падению рабочего процесса.
    Имейте ввиду.

  18. ок

  19. (0) В УТ 11 сделано уже за вас. Там все отборы\настройки хранятся в хранилище.

  20. (0)а что фабрику не пользуете?

или зарегистрируйтесь чтобы ответить!