|   |   | 
| 
 | ТЗ в СКД | ☑ | ||
|---|---|---|---|---|
| 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) Это понятное дело. Но я не про это. У вас есть адрес временного хранилища, который вы хотите передать из обработки в отчет. Это разные объекты. Как вы это сделаете? Через параметры открытия формы.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |