Вход | Регистрация


1С:Предприятие ::

Метки: 

Можно ли сделать такое программно: отборы для регистров в отчёте СКД

Я
   razbiralshik
 
08.11.17 - 08:10
Существуют определенные расчеты, которые делаются запросами. Расчетов очень много, запросов соответственно тоже.
Грубо говоря 80% расчетов и запросов им соответствующих похожи вот чем:
Блок запроса шапка состоящий из 4 пакетов у них всех одинаковый.
у 40% блок тела состоит из выборки данных с различных регистров - это один пакет.
У остальных 40% блок тела состоит также из выборки с различных регистров - это один пакет + выборка с других реигстров - это второй пакет, и потом они соеденяются - это тртий пакет.
Потом идет блок подвала, где результат выборки тела соеденятсяе с результатом выборки с шапки.
Так вот структура одинаковая, но отборы дял регистров тела разные.
Планируется сделать так, чтобы дать юзверю самому для каждого регистра вводить отборы интерактивно.
Потом запрос должен будет сам программно собраться в оидное целое с теми отборами что юзверь задал и отработаться.
Такое реально реализовать через СКД?
Я вот думал что можно задать для каждого регистр свой СКД, потом эти СКД должны будут както соеденится и потом они должны будут соеденится с шапкой и с подвалом.
Но вот можно ли такое сделать программно?
Например создать программно СКД, тело будет как схемы объеденные, потом через связи наборов данных это все опять же программно должно будет склеиться. Такое реально? Есть у кого пример?
 
 
   asady
 
1 - 08.11.17 - 08:29
(0) можно.
можно тупо разные схемы сделать и собирать отчет из xml - типа загрузить настройки или получить схему
   VladZ
 
2 - 08.11.17 - 08:31
(0) Жуть какая. Три раза прочитал - ничего не понял. Давай то же самое, но в картинках.
   rphosts
 
3 - 08.11.17 - 08:39
(0) сферический расчет в вакууме делать только на абаке.
Без хоть минимальной конкретики не взлетает
   razbiralshik
 
4 - 08.11.17 - 08:45
Ну вот представьте 10000 Запров.

Структура запросов:
Шапка запроса
+
Тело запроса (отборы в ГДЕ и в Виртуальных параметрах)
+
Подвал запроса ("Шапка запроса" по определенным полям соеденяется левым соеденением с "Тело запроса")

Так понятней?
   1dvd
 
5 - 08.11.17 - 08:55
(4) шапку и подвал СКД сама рисует, отдельные запросы для этого не нужны
   razbiralshik
 
6 - 08.11.17 - 08:59
(5) врятли СКД читает мысли, там надо задавать что именно мне надо! я условно назвал запрос шапкой + Телом + подвалом, чтобы разделить логику
   dmpl
 
7 - 08.11.17 - 08:59
(0) Не надо пользователю лишние крутилки давать - 99% это только запутывает.

(5) Это не те шапка и подвал. Шапка - подготовительная часть (упрощенно - сбор общей справочной информации), подвал - соединение данных основного тела запроса со справочной информацией из шапки.
   VladZ
 
8 - 08.11.17 - 09:00
(4) ну и дальше что?
   razbiralshik
 
9 - 08.11.17 - 09:03
(8) дальше как я описал в (0) даем юзверю право делать отборы на тело в интерфейсе и потом все собираем хз каким-то чудо образом через скд в коде...
вы хотите помочь или просто спрашивайте чтобы сказать что это бред?
   dmpl
 
10 - 08.11.17 - 09:05
(9) Проще всего, наверно, собирать через набор данных - таблица. Но расшифровки придется самому писать.
 
 Рекламное место пустует
   VladZ
 
11 - 08.11.17 - 09:06
(9) Пользователю нужно готовое решение. Он не должен "греть голову" на тему где и что брать. Все должно быть просто и понятно, чтобы даже "лопата с глазами" могла разобраться.

А тут даже я не понимаю, что ты хочешь замутить.
   FIXXXL
 
12 - 08.11.17 - 09:06
(9) собирай таблицу и подсовывай ее как источник в СКД
   razbiralshik
 
13 - 08.11.17 - 09:16
(10)(12) есть пример как это программно реализуется, особенно момент с связями наборов данных?
   FIXXXL
 
14 - 08.11.17 - 09:17
(13) связи наборов данных можешь замутить на закладке СКД соответствующей
   VladZ
 
15 - 08.11.17 - 09:26
(14) Так у него для разных отчетов будут разные связи (если я правильно понял). И тут нужно программная организация "связи".
   FIXXXL
 
16 - 08.11.17 - 09:27
(15) ну хз, я понял так, что просто три набора различны :)
   razbiralshik
 
17 - 08.11.17 - 09:33
(15) Это не отчеты буду, а программные СКД, и связи буду разные лишь в нескольких видах запросах, т.к. для 50% будет один тип связи, для других 50% другой тип связи.
   FIXXXL
 
18 - 08.11.17 - 09:35
(17) а занафига тебе тогда именно СКД?
   razbiralshik
 
19 - 08.11.17 - 09:39
(18) Тогда расскажи как можно в моем случае сделать, коли не СКД?
   МимохожийОднако
 
20 - 08.11.17 - 09:43
(0) При такой постановке ответ один - не взлетит
   FIXXXL
 
21 - 08.11.17 - 09:48
(19) дык программно
хочешь - динамически строй текст запроса, хочешь программно обсчитывай
без конкретной задачи трудно решать
   FIXXXL
 
22 - 08.11.17 - 09:48
(21) а хошь - регистры нарисуй грамотно, что бы одним запросом собирать :)
   razbiralshik
 
23 - 08.11.17 - 09:50
(21) (22) это все не то
еще раз конкретика: (0) + (4) + (9).
что именно неконкретного то?
   DrShad
 
24 - 08.11.17 - 09:54
а я бы сделал через вложенные схемы
   stix2010
 
25 - 08.11.17 - 09:54
(0) генеришь программно запрос, выкидываешь в ТЗ,
ПриКомпоновкеРезультата выкидываешь ТЗ в СКД, с указанием схемы, если их необходимо не 1
   VladZ
 
26 - 08.11.17 - 09:57
(23) Ты описываешь порядок разработки. А что хочешь в итоге получить? Универсальную "фишку", которая позволит генерировать любые отчеты с любым набором регистров? Я правильно понял?
   razbiralshik
 
27 - 08.11.17 - 09:57
(25) в ТЗ нельзя, т.к. строк бывает до миллиона.
   stix2010
 
28 - 08.11.17 - 09:59
(27) зачем и кому нужен отчет на 1 млн строк?
   razbiralshik
 
29 - 08.11.17 - 10:04
(26) это будет справочник с кучей элементов, каждый элемент это свой запрос, реализованный через настройку отборов, специальный юзверь задал отборы по нужным ему регистрам, сохранил и нажал например кнопочку перегрузить расчет и пошла перегрузка расчета, а ночью все элементы будут отрабатываться регламентом, в итоге все расчеты будут сделаны.
Единственный вариант реализации я вижу через программное СКД, программно инициализируем СКД и пишем программно же результаты расчетов в нужные регистры. ЭТО НЕ ОТЧЕТ!!!!!!!!
И мне это не нужно, начальству нужно, думаю что реализовав такое у меня появится куча куч времени заниматься чем-то другим, хотя я думаю что у меня будет все время уходить на отладку этого механизма.
   razbiralshik
 
30 - 08.11.17 - 10:05
(24) а как ты будешь эти схемы соединять друг с другом?
   DrShad
 
31 - 08.11.17 - 10:09
(30) а как соединяются вложенные схемы? так и буду
   dmpl
 
32 - 08.11.17 - 10:10
(19) Есть еще ПостроительОтчета, ПостроительЗапроса.
   dmpl
 
33 - 08.11.17 - 10:11
(29) А может просто добавить нужные регистры?
 
 
   razbiralshik
 
34 - 08.11.17 - 10:13
(32) это не то
(33) поделись подробнее
   VladZ
 
35 - 08.11.17 - 10:50
(29) Не взлетит.
   dmpl
 
36 - 08.11.17 - 10:57
(34) Если приходится долго и упорно выбирать данные - может стоит завести регистры, где данные будут лежать в более удобном виде?
   razbiralshik
 
37 - 08.11.17 - 11:20
(36) там по сути они и лежат "В ТЕЛЕ" в удобном виде, какое хошь отборы такие и делай там
   razbiralshik
 
38 - 08.11.17 - 11:20
(35) откуда такая мысль?
   VladZ
 
39 - 08.11.17 - 15:57
(38) Из опыта.



Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует