![]() |
|
ТЗ в СКД | ☑ | ||
---|---|---|---|---|
0
trialex3
10.11.24
✎
16:58
|
Добрый день. Столкнулся с проблемой. Нужно открыть отчет скд где данные берутся из тз. Создаю свою форму, ловлю параметр и кидаю его в объект отчета. В ПриКомпоновкеДанных подставляю его и формирую результат - все корректно работает. Но пользователю необходимо дать возможность менять структуру отчета. Так как у меня своя форма, то и форму настроек приходится использовать вспомогательную. Там структуры нету. Можно все менять через "изменить вариант", но все изменения в варианте не отображаются в результате. выходят только детальные записи, как в конфигураторе забито.
Код приКомпоновкеДанных прилагаю
|
|||
1
trialex3
10.11.24
✎
17:01
|
По сути мне надо решить одну из двух проблем - либо разобраться почему не применяются настройки либо передать адрес временного хранилища в приКомпоновкеДанных без использования своей формы. Я непонимаю что я делаю не так. прошу помощи)
|
|||
2
trialex3
10.11.24
✎
17:08
|
Даже еще страннее. Ща восстановил кфник без всех последних попыток. Сформировал результат. В настройках идет группировка по номенклатуре а потом дет. записи. Хотя в конфигураторе просто дет. записи. Сбросил на стандартные - вариант стал дефолтным но по прежнему формирует с группировкой.
|
|||
3
trialex3
10.11.24
✎
17:09
|
такое ощущение что вариант и дефолтные настройки живут отдельными жизнями...
|
|||
4
trialex3
10.11.24
✎
17:55
|
судя по молчанию я либо полную чушь несу либо редкая проблема(
|
|||
5
Chameleon1980
10.11.24
✎
17:57
|
а зачем свою форму, если ТЗ подается в модуле отчета?
|
|||
6
Chameleon1980
10.11.24
✎
17:58
|
(1) откуда передать?
|
|||
7
trialex3
10.11.24
✎
18:00
|
(5) открывается форма с параметром. параметр помещается в реквизит отчета. в методе при компоновке из реквизита берется адрес во временном хранилище и выкачивается тз
|
|||
8
Chameleon1980
10.11.24
✎
18:02
|
а в ПриКомпоновке нужные данные не получить?
|
|||
9
trialex3
10.11.24
✎
18:02
|
(8) неа. эти данные, которые нигде не сохраняются.
|
|||
10
Chameleon1980
10.11.24
✎
18:04
|
(7) откуда модуль отчета увидит реквизит формы вообще? аааа. реквизит отчета? а смотрели что в адресе. проверяли ЭтоАдресВременногоХранилища? что отладка показывает?
|
|||
11
trialex3
10.11.24
✎
18:04
|
я даже пробовал нехороший вариант - сохранять адрес в константе. но стандартная форма выполняет отчет в другой сессии а значит там ВХ мой недоступен. Да и вариант с константой это прям плохо
|
|||
12
trialex3
10.11.24
✎
18:04
|
(10) реквизит отчета а не формы. Объекта отчета
|
|||
13
Chameleon1980
10.11.24
✎
18:04
|
данные по Адресу (как это говорят) не протухли?
|
|||
14
Chameleon1980
10.11.24
✎
18:05
|
(11) ну данные то вечно там не хранятся. На то и Временное
Возможно, почитайте про время хранения и что на это влияет. |
|||
15
trialex3
10.11.24
✎
18:06
|
(13) не, отладкой все норм чекается. Как будто дело то не в ТЗ а в настройках. как только я например изменяю вариант и нажимаю сохранить и сформироватьм - форма закрывается, но ничего не происходит. Возвращаюсь в вариант а там мной добавленная группировка отмечается красным крестиком.
|
|||
16
Chameleon1980
10.11.24
✎
18:06
|
(11) чтобы было доступно в другом сеансе это уже помещать данные в БД в любом виде в одном сеансе и читать оттуда в другом
|
|||
17
trialex3
10.11.24
✎
18:07
|
(14) там ограничение на другую сессию срабатывает. в ней недоступно мое временное хранилище.
|
|||
18
Chameleon1980
10.11.24
✎
18:08
|
Возможно, что-то напутали?
|
|||
19
trialex3
10.11.24
✎
18:08
|
(16) да хотелось бы понять почему скд так странно себя ведет. Во всех гайдах что я читал никаких проблем не встречается. У меня прям жесть какая то
|
|||
20
Chameleon1980
10.11.24
✎
18:08
|
||||
21
trialex3
10.11.24
✎
18:09
|
(18) ну если про программное - то я использую метод получить настройки. Он дает объединение настроек и пользовательскиз настроек. Почему появляются красные крестики в пользовательском режиме я хз((
|
|||
22
Chameleon1980
10.11.24
✎
18:09
|
вот это не забыли
|
|||
23
trialex3
10.11.24
✎
18:10
|
(20) да курю эту тему уже. Там правда не дается разъяснения кто блин удаляет мои группировки в пользовательском режиме)
|
|||
24
trialex3
10.11.24
✎
18:11
|
(22) скорректированные это те которые я от него же получил методом ПолучитьНастройки()?
|
|||
25
trialex3
10.11.24
✎
18:15
|
(22) ни в одном примере этой строчки не было - добавил. ничего не изменилось. Как пытаюсь сформировать отчет в измененном варианте мои группировки отмечаются красным крестиком
|
|||
26
trialex3
10.11.24
✎
18:16
|
вот
|
|||
27
Jackman
10.11.24
✎
18:23
|
(0) Вроде бы нормально настройки в таком же отчете на СКД из ТЗ работают. Правится через кнопку Настройка в форме. Нужно не забыть сделать:
1. В свойствах отчета для свойства "Форма настроек" указать "ВспомогательнаяФормаНастроекОтчета". 2. В СКД - закладка "Настройки" - кнопка сверху, над структурой группировок, "Состав пользовательских настроек отчета" - в составе пользовательских настроек отчета поставить все галочки ("Выбранные поля", "Отбор", "Порядок", "Условное оформление", "Группировки") и выбрать режим редактирования = Обычный. |
|||
28
trialex3
10.11.24
✎
18:25
|
(27) да за малым исключением - группировки это не структура как в стандартной форме. Нужна именно структура что бы например кинуть сначала поле номенклатура а потом уже детальные записи.
|
|||
29
trialex3
10.11.24
✎
18:26
|
а структуру можно править или в изменить вариант или в стандартной форме, которую я походу использовать не смогу.
|
|||
30
trialex3
10.11.24
✎
18:31
|
да и таблицу не создашь в вспомогательной форме. И пользовательские поля не добавишь. Она урезана сильно.
|
|||
31
craxx
10.11.24
✎
19:03
|
(30) кстати, СКД умеет использовать Менеджер временных таблиц, может через него попробовать?
|
|||
32
trialex3
10.11.24
✎
19:06
|
(31) судя по всему не в тз дело. Решил тз передавать через константу (хранилище значения), а значит смог использовать стандартную форму отчета. И о чудо - все работает корректно
|
|||
33
craxx
10.11.24
✎
19:17
|
(32) Все верно, дело во временном хранилище. Покажи код как передаешь ТЗ
|
|||
34
trialex3
10.11.24
✎
19:18
|
(33) как получаю скинул в первом посте
как передаю ТаблицаДанных = РеквизитФормыВЗначение("РентабельностьПродукции"); АдресДанных = ПоместитьВоВременноеХранилище(ТаблицаДанных, УникальныйИдентификатор); Возврат АдресДанных; ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("АдресДанных", АдресДанных); ПараметрыФормы.Вставить("СформироватьПриОткрытии", Истина); ОткрытьФорму("Отчет.АР_АнализИтоговойРентабельностиПродукции.Форма.ФормаОтчета", ПараметрыФормы,,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); |
|||
35
craxx
10.11.24
✎
19:19
|
(34)
ТаблицаДанных = РеквизитФормыВЗначение("РентабельностьПродукции").Выгрузить();
АдресДанных = ПоместитьВоВременноеХранилище(ТаблицаДанных, УникальныйИдентификатор); Возврат АдресДанных; Так попробуй. Потом объясню в чем разница |
|||
36
trialex3
10.11.24
✎
19:21
|
(35) Приняо, делаю бекап цф и делаю по примеру
|
|||
37
craxx
10.11.24
✎
19:21
|
(34) Все дело в
|
|||
38
trialex3
10.11.24
✎
19:28
|
(37) Метод объекта не обнаружен (Выгрузить)
|
|||
39
craxx
10.11.24
✎
19:29
|
(38) Тогда Скопировать()
И убери УникальныйИдентификатор просто ПоместитьВовременноеХранилище(ТаблицаДанных) |
|||
40
trialex3
10.11.24
✎
19:30
|
(38) отладка
РеквизитФормыВЗначение("РентабельностьПродукции") - ТаблицаЗначений |
|||
41
trialex3
10.11.24
✎
19:30
|
(39) ок
|
|||
42
trialex3
10.11.24
✎
19:37
|
(39)
Скопировать - то же самое. Красный крестик вешается на мои группировки Уникальный идентификатор - убрал. При повторной формировании отчета ВХ уже пустое. То есть могу сформировать только один раз) |
|||
43
craxx
10.11.24
✎
19:37
|
(42) а помещаешь в ВХ из формы настроек?
|
|||
44
trialex3
10.11.24
✎
19:40
|
(43) в форме отчета в параметрах ловлю и кладу адрес в реквизит объекта отчета. он доступен в методе при компоновке.
помещаю вообще из другой обработки |
|||
45
trialex3
10.11.24
✎
19:41
|
(44) я собственно идентификатор потому и добавил что бы точно жило пока формы обработки родителя живет.
|
|||
46
craxx
10.11.24
✎
19:45
|
(45) Тогда я бы попробовал 2 варианта.
1. ТЧ в самом отчете, туда загружать ТЗ в форме и в модуле объекта оттуда выгружать 2. Все-таки вариант с МВТ в СКД. |
|||
47
trialex3
10.11.24
✎
19:47
|
(46) Принял буду пробовать. Вариант с мвт не пробовал, но пробовал указать таблицу как параметр и подгружать соответственно в параметры. Начал ловить ошибки XDTO
|
|||
48
trialex3
10.11.24
✎
19:47
|
(46) Спасибо вам!)
|
|||
49
Jackman
10.11.24
✎
20:28
|
(0) Через изменить вариант в отчете на СКД, который строится по ТЗ и имеет руками созданную форму, добавил реквизит номенклатуры в СКД - вывелся в результат.
|
|||
50
trialex3
10.11.24
✎
21:52
|
(49) возможно баг конкретной версии конфигурации или платформы. Любые опробованные мною варианты с нестандартной формой дают у меня такое поведение.
|
|||
51
DrZombi
гуру
11.11.24
✎
10:13
|
(50) Там бага нет. Временное хранилище живет либо пока живет сессия, либо пока вы обращаетесь к серверу (т.е. при выходе на Клиента все очищается), либо пока форма жива.
Я заметил ваши ручонки пишут форму руками, в БСП форма универсально. Тут встает вопросик, у вас что за конфигурация? А вы используете БСП? ... Попробовали ли вы сохранить значение из временного хранилища повторно, но уже для вашего отчета? А так все работает у вас штатно, от 1С :) |
|||
52
trialex3
11.11.24
✎
12:12
|
(51) да нет проблем с хранилищем. ТЗ там живет столько сколько надо. И каждый раз получается корректно. Проверено отладкой. Проблемы именно с формой варианта. Каждый раз когда я применяю изменения в варианте и закрываю форму - в ней уже все становится наперекосяк. Если я ее открываю по новой тутже - уже все плохо.
Я пишу руками форму потому что я не могу использовать стандартную форму - мне надо отловить параметр адреса ВХ и засунуть его в реквизит объекта отчета что бы при компоновке его подцепить. Поэтому приходится создавать форму, а форму настроек использовать вспомогательную. Конфигурация ЕРП 2.5.17.143 |
|||
53
Шурик71
11.11.24
✎
19:20
|
> мне надо отловить параметр адреса ВХ и засунуть его в реквизит объекта отчета что бы при компоновке его подцепить.
Засунуть его в скрытый параметр СКД не поможет? |
|||
54
trialex3
12.11.24
✎
15:31
|
(53) врядли. как я его засуну в скд если я еще сам скд не получил. открываю я форму отчет из сторонней обработки.
|
|||
55
Garykom
гуру
12.11.24
✎
16:10
|
в СКД все можно программно
и отборы и источник подсовывать |
|||
56
trialex3
13.11.24
✎
12:44
|
(55) Это понятное дело. Но я не про это. У вас есть адрес временного хранилища, который вы хотите передать из обработки в отчет. Это разные объекты. Как вы это сделаете? Через параметры открытия формы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |