|
КД2 настройка условия отбора | ☑ | ||
---|---|---|---|---|
0
Csar
09.08.13
✎
09:46
|
Всем привет!
Подскажите, пожалуйста, как вставить условие отбора, которое должно отображаться в универс. выгрузке в XML справа от ПравилВызгрузкиДанных и УзловОбмена? Речь идет о программной установке. Программно легко установить отбор по периоду - там два реквизита есть, а вотмне надо реквизит со спискомЗначений или что то в этом духе. В этом СЗ будут ссылки на документы, перед выгрузкой надо проверять "если выгружаемый документ находится в этом списке, то его не выгружать". Никак не могу найти где устанавливать это условие по отбору. |
|||
1
Csar
09.08.13
✎
09:52
|
(0) У меня В правилах выгрузки стоит "Стандартная выборка", а не "произвольный алгоритм".
|
|||
2
Csar
09.08.13
✎
10:01
|
Что касается проверки, то думаю будет примерно такой код:
ПКО ПередВыгрузкой
А где объявлять Условие отбора "МассивСсылок"? Я когда проверяю эти правила, то не отображается поле ввода с этим наименованием в таблице отбора. |
|||
3
ЧашкаЧая
09.08.13
✎
10:09
|
Имхается мне что из правил обмена без правки обработки сделать это нереально.
|
|||
4
Csar
09.08.13
✎
10:10
|
(3) Т.е. внешние параметры обработка не умеет цеплять и использовать в качестве параметров отбора??
|
|||
5
welwel
09.08.13
✎
10:12
|
сделать можно
но "произвольный запрос" куда менее трудоемкий |
|||
6
Csar
09.08.13
✎
10:14
|
(5) "произвольный запрос" - речь о том, что бы самому вручную написать конвертацию документов в xml?
|
|||
7
welwel
09.08.13
✎
10:16
|
(6) режим выгрузки "произвольный запрос" из (1)
|
|||
8
Naumov
09.08.13
✎
10:17
|
(6) Речь о корректировки правил конвертации, в частности в ПВД использовать не стандартную выборку, а произвольный запрос.
|
|||
9
Naumov
09.08.13
✎
10:18
|
+А вообще, если хочешь именно добавлять отборы, то ставь ПКО и смотри какие поля у отбора в построителе отчета. Добавляй туда отборы сколь душе угодно.
|
|||
10
Csar
09.08.13
✎
10:23
|
(7) (8) "произвольный запрос". Там видимо надо формировать ВыборкаДанных. Но ВыборкаДанных надо формировать исходя из условий, который надо каким то способом передать в обработку. Передать ее можно и нужно через ПараметрыОтбора, я полагаю. Вся проблема в том, что условия отбора всегда разные и их поэтому не задать по умолчанию одними и теми же.
(9) поянси, пожалуйста. |
|||
11
Naumov
09.08.13
✎
10:27
|
(10) Нет, в произвольном алгоритме можно поступить двумя способами:
1) создать выборку типа результат запроса и отдать ПКО (пример есть в описании к ПВД) 2) Сам обрабатываешь любую выборку и передаешь отдельные объекты в ПКО. Примеры есть в типовых правилах, да и в демонстрашке по-моему есть. По поводу отбора что пояснять? Открой форму универсального обмена в формате XML и посмотри что за объект с отбором. |
|||
12
Csar
09.08.13
✎
10:29
|
(11) Спасибо, щас посмотрим.
|
|||
13
welwel
09.08.13
✎
10:31
|
(10) для обработки "Универсальный обмен в формате XML" делается вызывающая ее обработка-обложка с необходимыми реквизитами и передачей нужных данных через Параметры. Последние потом используются для создания ВыборкаДанных в ПВД
|
|||
14
Csar
09.08.13
✎
10:31
|
(11) этот пример?
ДатаИзмененияОбъекта = ДатаНачала;
|
|||
15
welwel
09.08.13
✎
10:32
|
+ (13)
в типовых можно глянуть примеры |
|||
16
Naumov
09.08.13
✎
10:33
|
(14) Да, это нормальный пример произвольного алгоритма.
Любые условия можешь обработать. |
|||
17
Csar
09.08.13
✎
10:37
|
(16) так а как мне получить условия, если они зависят от желания юзера на данный момент?
К примеру: Юзер запускает обработку, в которой указывает какой документ(-ы) хочет выгрузить. Т.о. он указывает на ссылку(-и) и эту ссылку(-и) надо передать в качестве параметра по которому и формировать Выборку. |
|||
18
Naumov
09.08.13
✎
10:38
|
(17) А в (0) откуда программно условия возникают?
я не понимаю ничего уже. условия задаются программно или интерактивно? |
|||
19
Csar
09.08.13
✎
10:40
|
(18) В одной обработке юзер указывает ссылки, формируется СЗ с этими ссылками в качестве значений. Далее вызывается обработка универсальной выгрузки в xml и туда надо как то передать этот СЗ в качестве отбора. Вот как организовать эту передачу не пойму никак.
|
|||
20
Csar
09.08.13
✎
10:41
|
Получается, что отбор надо программно передать из обработки в оработку.
|
|||
21
welwel
09.08.13
✎
10:46
|
(19)
через "Параметры" доступная в контексте универсальной выгрузки переменная |
|||
22
welwel
09.08.13
✎
10:47
|
+(21)
для 77 у нее тип СЗ, насколько помню |
|||
23
Naumov
09.08.13
✎
10:51
|
Отбор можно настроить только после загрузки в обработке Правил .
обмена данными (21) Загрузка правил сотред твои параметры. |
|||
24
Csar
09.08.13
✎
10:52
|
(22) Чего то не вижу "Параметры" у "УниверсальныйОбменДаннымиXML"
PS я через 1С8.2 копаю. Там вроде бы "Построитель.Отбор" вместо параметров используется |
|||
25
Naumov
09.08.13
✎
10:54
|
Пример вызова можно посмотреть в обработке обмена данными между конфами.
Общая форма "ФормаСпискаНастроекОбменаДанными" |
|||
26
Naumov
09.08.13
✎
10:54
|
(24) в форме это ТаблицаНастройкиПараметров
|
|||
27
welwel
09.08.13
✎
10:56
|
(24)
в (14) был пример с 77 вы уж определитесь |
|||
28
Csar
09.08.13
✎
11:03
|
Блин, я совсем запутался. Я не понимаю как передать несчастный СЗ в УниверсальныйОбменДаннымиXML, так, что бы обработка поняла, что это параметры отбора, а затем как вызвать этот параметры при создании условия в формировании Выборки в произвольном алгоритме ПВД.
|
|||
29
welwel
09.08.13
✎
11:07
|
уточните что, откуда и куда выгружать:
конфигурации, версии, какие объекты |
|||
30
Csar
09.08.13
✎
11:18
|
Обработка1 формирует СЗ (список значений) с ссылками на некоторые документы "РеализацияТоваровУслуг". Далее Обработка1 запускает обработку "УниверсальныйОбменДаннымиXML" и передает в качестве условия по отбору этот СЗ. "УниверсальныйОбменДаннымиXML" цепляет правила и принимает СЗ в качестве условия по отбору и выгружает документы реализации согласно условию (выгружать только те ссылки, что есть в СЗ).
Изначальная задача стояла примерно так: Юзер запускает обработку, и перед ним вылазит список реализаций второй базы, он выбирает реализации, который хочет загрузить из второй базы в текущую, и кликает ЗАГРУЗИТЬ. Я не знаю вебсервисов, посему организовал через выгрузку на второй базе списка реализаций в файл и загрузку этого файла в текущей базе. |
|||
31
Csar
09.08.13
✎
11:24
|
Юзер в БП 8.2 пытается загрузить из нечто типа самописного УПП 1.3, но на УФ
|
|||
32
Naumov
09.08.13
✎
11:25
|
Ну если не хочется разбираться с передачей в обработку, то можно ПланОбмена замутить, в котором перед выгрузкой регистрировать нужные объекты, потом снимать с регистрации.
тогда обработка по указанному узлу Плана обмена сама отберет. |
|||
33
welwel
09.08.13
✎
11:25
|
можно посмотреть, как реализована загрузка параметров при открытии УниверсальныйОбменДаннымиXML (список параметров определяется интерактивно при проектировании правил в КД)
и передать нужные параметры (список реализаций) из вызывающей обработке, а далее в произвольном алгоритме ПВД использовать эти параметры для отбора в запросе |
|||
34
Naumov
09.08.13
✎
11:26
|
А если это нужно не мгновенно, то можно из обработки просто регистрировать в ПланеОбмена, а выгрузку настроить автоматическую по расписанию.
|
|||
35
Naumov
09.08.13
✎
11:27
|
(33) По моему в обработке при открытии нет никаких обработок параметров.
|
|||
36
Csar
09.08.13
✎
11:33
|
(34) Юзер хочет не по расписанию, а прямо здесь и сейчас и только те реализации, которые укажет.
(32) интересная мысль. А разве можно регистрировать документы не перепроводя в плане обмена? (33) сяду разбираться. Спасибо. |
|||
37
welwel
09.08.13
✎
11:35
|
(35)
Согласен, что открытие формы в 8 необязательно, через методы инициирования процесса загрузки. Есть не только загрузка параметров, но и событие ПослеЗагрузкиПараметров |
|||
38
Csar
09.08.13
✎
11:36
|
(35) (37) там при загрузке правил возникает загрузка Отборов, только там как то мутно. Разбираюсь, сижу.
|
|||
39
Csar
09.08.13
✎
11:44
|
(32) О, кажись такой принцип действия должны сработать:?
УзелОбмена = ПланыОбмена.НекийПланОбмена.НайтиПоНаименованию("НашУзел");
А потом узел подключить к УниверсальныйОбменДаннымиXML |
|||
40
Csar
09.08.13
✎
11:46
|
(32) (33) Спасибо вам большое! Попробую оба варианта довести до конца!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |