#0
by АннаДеловая
Привет! Такой вопрос вот- есть несколько сторонних баз, есть основная база для работы ( почти все базы БП) необходимо сделать отчеты на СКД, которые отражали бы текущие данные по нескольким категориям, так вот из уже имеющихся отчетов сделан заброс в виде набора данных для сторонних баз, сделан запрос по основной базе, потом эти данные объединяются автоматом (объединение наборов записей), из сторонних баз мы можем получить только наименование поэтому и из текущей базы получаем только наименование. Вопрос= а как сделать отборы по позициям? Чтобы пользователи могли выбирать в списке равно и тд (известно, что элементы многих справочников, по которым хотят делать отбор, совпадают) есть вариант вывести поле-отбор на форму, давать пользователям выбирать элементы справочника а потом в отборы кидать только элементы этих справочников а еще как нужно?)
#1
by Бертыш
Сложностей тут ничуть. Вам надо как то синхронизировать объекты между собой. Соответственно заведите себе например одну базу с синхронизацией элементов где у Вас будет хранится комбинация база ,внутренний идентификатор в базе. В этой базе (она может быть основной базой БП, а может вообще быть базой пустышкой). Соответственно для организации отбора пользователю в этой базе придётся до отбора настроить синхронизацию некоего виртуального элемента с внутренними ID элементов всех интересующих его баз. Далее... Если Вам принципиально что бы было СКД и в связующей и в связуемых базах, то Вам надо переучить интересные для Вас отчёты на предмет выгрузки схемы в набор данных. Далее Вы этот набор данных крутите в консолидирующей базе. Задача на мой взгляд если не элементарнейшая, то уж во всяком случае одна из наиболее элементарных. Я клиенту так настроил заполнение при бесшовной работе строк в документах в базе 1С Управляющий на базе начинки документов 1С Рарус общепит. То есть по щелчку у пользователя в управляющем открывается форма нового или существующего документа в рарус общепите
#2
by Бертыш
Наименование в консолидирующей базе будет транслироваться в консолидируемые базы с установко параметров по внутреннему ИД. Вместо формирования отчет, не корысти ради, формируйтеи саму схему и выполняйте её на лету и передавайте параметры отбора с заполннием по внутреннему ИД
#5
by h-sp
просто синхронизировать по наименованию. И договориться чтобы наименования были одинаковые во всех базах.
#6
by Неверный Параметр И
Эхьэхь... договориться чтобы наименования были одинаковые во всех базах [x]
#7
by h-sp
ну у нас так сделано. Существует список статей отчета. Он общий для всех баз. Работает уже лет 5, никаких проблем не было.
#8
by Бертыш
При условии программной генерации и исполнения схем СКД по COM/OLE всё зависит от сложности требуемых отчётов. Ориентировочно такая задача занимает часов 30-40. Однако в моей нынешней ситуации проблема эти часы выкроить ибо я готовлюсь на всех парах сейчас к сдаче экзамена 1С Специалист по платформе. Для настройки синхронизации нужны будут образцы баз с тестовыми наборами данных. Желательно не очень большие. Можно анонимизацию каждой базы обеспечить специальными обработками. Если у Вас есть свои специалисты, то есть есть кому в принципе сделать и кого озадачить, то киньте им ссылку на мою статью на моём сайте. Статья писалась ещё во времена 8.1, но строго говоря ничего особо не поменялось.
#9
by Бертыш
Для упрощения конекта по OLE к базам рекомендую хранить и передавать саму схему между базами в виде XML файла
#10
by Бертыш
Для такого решения опять же не плохо бы иметь централизованную базу в которой эти справочники вести, и откуда потом пулять их в другие базы где соответствующие справочники заблокированны для изменений
#11
by АннаДеловая
ну ок, наименования будут одинаковыми, но вот как настраивать отборы как давай пользователю возможность выбирать элементы из справочника?
#12
by h-sp
там по другому принципу сделали. Есть отчет руководителю и есть расшифровка отчета, то есть если пользователю нужно что-то уточнить, он встает на нужную строчку первого отчета и щелкает мышкой. После этого вызывается второй отчет с нужными параметрами. Или список документов, обычно это нужно. Ну как в бухгалтерии ОСВ, щелкаем на строчке, проваливаемся в карточку счета, на карточке щелкаем, дальше проваливаемся, в конце концов попадаем в документ-регистратор. А с отборами у них как-то не пошло, что-то не дружат пользователи с отборами.
#14
by АннаДеловая
Да, вы правильно говорите есть много вопросов относительно отборов в таких случаях= например пользак решил сделать отборы по 4 категориям отчета(4м полям) в этом случае нам надо давать пользаку возможность выбирать элементы из справочника "чтобы он не вспоминал названия", также надо давать возможность делать отбор в списке и тп вот как это лучше сделать, интересно?
#16
by Альбатрос
Цитирую "дать пользователю возможность выбирать элементы из справочника". То есть в наборах данных оперировать не наименованиями, а ссылками из справочника базы, в которой строится отчет. Ну если я правильно понял проблему.
#17
by АннаДеловая
так придется для каждого отбора прописывать условия. дербанить запрос и тп, это громоздко, плюс, если пользователь захочет новые отборы добавить? надо будет опять дербанить запрос?
#19
by h-sp
ну как советует. Делаете отбор по справочнику, а этот справочник у вас в запросе привязан к основному набору.
#20
by АннаДеловая
что это значит?) отбор по справочнику где мне вывести в настройках СКД, либо на форме? Вы планируете все таки дербанить запрос? Дело в том, что нельзя сделать отбор по справочнику привычным образом, тк из сторонних баз мы получаем лишь наименования, т.е один набор данных из текущей базы а другой набор данных со сторонних баз, поэтому надо как-то подумать как передать в СКД отборы заданные пользоваелями и представления этих отборов
#21
by Йохохо
вы предлагаете пользователю каждый раз перед формированием отчета установить соответствия элементов разных баз? по наименованию?
#22
by Альбатрос
Да что там дербанить то, я не пойму? Дописать соединение со справочником по наименованию (или коду, я хз, как у вас там синхронизируется.)?
#23
by АннаДеловая
какое соединение дописать?) куда? Есть запрос, есть поля запроса НабоЗапрсов1 = выполнение из текущей базы НаборЗапросов2 = из сторонних баз Проблема Тк из сторонних баз мы не получаем обекты, а получаем лишь представления или наименования, то стандартными методами СКД мы не можем дать пользователю возможность выбирать из справочника элементы для отбора НО! Если мы зададим такую возможность, то в запросе, относящемуся к сторонним базам надо будет прописывать условие "Где" и каждую встрочку добавлять по которой пользователь делает отбор, кроме того надо будет ставить условие на то , какойвид справочника и тп Так вот идет поиск уданого алгоритма я останавливаюсь на стандартном отборе по настройкам СКД добавляя их в процедуре "При компоновке результата" там добавляется отбор, если пользователь выбрал его в поле ввода, выведенном на форму Далее идет анализ список ли это либо единичный элемент, устанавливается "равно " или "в списке" и перебираются элементы справочника их наименования и участвуют в стандартном отбоке СКД добавляемом в процедуре "При компоновке результата" но есть ли метод попроще?
#24
by aleks_default
Не с того конца беретесь за решение проблемы. Вам уже сказали снаячала надо каким-то образом задать соспоставление данных справочников внешних баз вашей
#25
by АннаДеловая
сопоставление делают оказывается вручную сами пользаки, толи копипастом толи как перенося элементы ( интересующие нас это спр физ лица и контрагенты) я думаю предложить при заведении элемента просто его регламентным заданием вечером, переносить в другие базы Так что элементы везде одинаковые впринциапе, но вот заквоздка как раз в том, как делать удобными отборы, так же не дербаня запрос а пользуясь уже имеющимися средствами СКД
#26
by aleks_default
Ели сопоставление делается вручную, то значит у вас в текущей базе есть ссылки (УИДЫ) обоих сопоставленных элементов. Значит нужно просто при выполнении НабораЗапросов2 (во внешней базе) получить в этой базе из УИДА ссылку и добавить в отбор.
#27
by АннаДеловая
Поясни плиз, непонятно! Т.е нужно в набор запросов добавить поле УИД? иполучать его, потом что? Читать и получать ссылку? "то значит у вас в текущей базе есть ссылки (УИДЫ) обоих сопоставленных элементов" = это как понимать? Смотри есть спр в базе1 бух заводит элемент, потом копипастом его в других базах заводит, но я думаю есть кнопка про которую они забыли тк это тупняк во все базы копипастить
#28
by aleks_default
Поясни плиз, непонятно! Т.е нужно в набор запросов добавить поле УИД? иполучать его, потом что? Читать и получать ссылку? "то значит у вас в текущей базе есть ссылки (УИДЫ) обоих сопоставленных элементов" = это как понимать? Смотри в типовой конфе регистр СоответствиеОбъектовИнформационныхБаз. Вот что я имел ввиду. И вообще почему бы вам не сделать простой обмен данными через xml. Тогда такой проблемы как у тебя не возникнет никогда.
#32
by aleks_default
Как минимум чтобы не заводить их в каждой базе вручную. И вообще если вам это не понятно, то мне в принципе нечем вам помочь.
#33
by АннаДеловая
выгрузка элементов в другие бази итак уже есть, суть не в этом а втом как сделать удобным отбор
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- создание справочника
- V8. Проблемы с создание начальных образов
- Создание внешних компонент
- Создание обработки
- создание BAT ФАЙЛА для автоматического запуска 1с
- Построитель отчета. Заголовок отчета. Сохранить/Восстановить настройки.
- СКД: СКД. Понимает ли СКД ссылки на МенеджерВременныхТаблиц?
- СКД: Как общий результат отчета СКД, можно использовать в каждой строке этого же отчета?
- СКД: СКД. Как переоределить действие кнопки "Сформировать" отчета, созданного в СКД?
- СКД: создание отчета, добавить новую колонку с вычислением
- Шапка отчета СКД. Настроить шпку отчета. Как?
- Создание отчета скд из документа
В этой группе 1С
- загрузка данных в мобильное приложение
- Обновление УТ 11: Аварийно завершился рабочий процесс фонового задания
- Язык запросов - аналоги SQL OFFSET и SKIP
- Обмен УТ11.3 <-> БП 2.0
- V8: терминал Cipherlab 8001 L
- Как из модуля формы справочника перебрать все строки табличной части?
- УТ 11.3.3.205/КА 2.2.3.205/ERP 2.2.3.205 Резкое падение производительности RLS
- Значение не является значением объектного типа (Выбрать)
- Вывести ИНН, паспортные данные в печатной форме
- v7: Пропала полоса вертикальной прокрутки в обработке
- В рознице 2.2 с терминалами Сбербанка зависают чеки
- Почему при повторном проведении документа движения удаляются?
- Как удалить старые движения документа перед проведением?
- Т-54 в зуп 2.5
- ERP настройка счетов учета
- Обновление вариантов отчета после изменения базовой схемы СКД
- Раскрасить колонку в списке документов УТ 10.3
- Поле Булево на форме
- Ценник с 2мя ценами. Розница 2.2
- Журнал документов "Деньги" в 1С Бухгалтерия 8.3