|
конвертация данных , запрет загрузки документов других организаций | ☑ | ||
---|---|---|---|---|
0
БабкаЕжка
26.02.12
✎
19:30
|
обмен ут - бу 8.2, как проверить при загрузке и отменить загрузку документов, если в бух. базу пытаются загрузить документы организаций, кот. не должны там учитываться. Справочник организации синхронизируется по наименованию, новые элемент не создаются.
|
|||
1
Beduin
26.02.12
✎
19:32
|
(0) Поставь условие в глобальных обработчиках, чтобы не выгружались документы с данной организацией.
|
|||
2
БабкаЕжка
26.02.12
✎
19:48
|
(1) это где? в бух базе несколько организаций из ут(кол-во их может измениться со временем). Думала, может, при загрузке документа проверять найдена организация или нет, если нет - то документ не должен загружаться, но у меня всё равно он загружается(((.
|
|||
3
Beduin
26.02.12
✎
19:55
|
(2) Повторюсь. Тебе надо сделать так, чтобы они даже не выгружались.
|
|||
4
Mikhail Volkov
26.02.12
✎
20:15
|
(1) "условие в глобальных обработчиках" - это где?
А то, в подобной ситуации, мне пришлось в каждом ПКО "При выгрузке" прописать типа: Если Источник.Организация.ПризнакНеВыгружать Тогда Отказ = Истина; КонецЕсли; как-то кошэрно... |
|||
5
Beduin
26.02.12
✎
20:23
|
(4) В встроенной справке конвертации все есть.
Обработчики "Конвертация" Перед конвертацией объекта Условия возникновения события Событие выполняется перед началом конвертации объекта по правилу конвертации. Вызов осуществляется до вызова обработчика "Перед выгрузкой" правила конвертации объектов. Могут использоваться все параметры орпределенные для указанного обработчика правила конвертации объектов. По сути и назначению это тот же обработчик что и "Перед выгрузкой" в правиле конвертации, но определенный на глобальном уровне - то есть вызываемый для всех правил конвертации. Обработчик удобен, например, когда для справочников всех видов нужно установить НеЗамещатьОбъектПриЗагрузке = Истина или ВсеОбъектыВыгружены = Истина. Обработчик вызывается для всех объектов не зависимо от того выгружается этот объект непосредственно, или потому, что на него есть ссылки. Параметры: Полностью совпадают с параметрами обработчика "Перед выгрузкой" у "Правила конвертации объектов" |
|||
6
Mikhail Volkov
26.02.12
✎
20:49
|
(5) Мало что понял, мануал надо почитать...
А такой случай: создал цепочку транзитных документов (не более 10), составил их список. Их надо перекинуть в другую базу... Как данный список подать УниверсальныйОбменДаннымиXML, чтобы обработка поняла, что выгружать надо только по этому списку? |
|||
7
MaxS
26.02.12
✎
20:57
|
В глобальных обработчиках сработает, если запустили через ПВО. ))
Если запускать через ВыгрузитьПоПравилу, то imho оно не сработает. Спасёт положение, если в кадый документ перед выгрузкой поставить Выполнить алгоритмы.ПередЗагрузкой документа. В алгоритме, в свою очередь написать нужную проверку - наличие реквизита Организация, сравнение с Параметр.Организация и т.п. |
|||
8
Mikhail Volkov
28.02.12
✎
05:21
|
(7) Это что же, вместо фрагмента (4) надо в каждом ПКО документа прописать типа:
Выполнить(Алгоритмы.ФильтрПоОрганизации);? |
|||
9
GenV
28.02.12
✎
06:03
|
(7) Сработает. В ВыгрузитьПоПравилу первым выполняется обработчик ПередКонвертациейОбъекта.
|
|||
10
Mikhail Volkov
28.02.12
✎
06:49
|
(9) У меня другая проблема. Часто полупустые справочники центральной базы затирают не заполненными реквизитами справочники периферийной базы. Приходится в каждом ПКС писать типа:
Если Не ЗначениеЗаполнено(Источник.Реквизит) Тогда Отказ = Истина; КонецЕсли; Можно это прописать где-то в одном месте (где?), чтобы действовало для всех справочников? |
|||
11
GenV
28.02.12
✎
09:11
|
(9) Возможно вам стоит правильно настроить миграцию изменений. У нас главная база основная. Сначала из неё данные выгружаются в переферийку, а затем загружаются обратно. В результате в переферийке всегда правильные заполненные справочники.
ЗЫ Можно галку "не замещать ..." для реквизитов проставить (хоть групповой обработкой что бы побыстрее). |
|||
12
Mikhail Volkov
28.02.12
✎
12:22
|
(11) Свою ситуацию я описывал в теме v8: КД "Не замещать существующие объекты ..." можно по условию? в ней (25) дал хороший совет, приведенный в (10), работает. Но прописывать данный фрагмент во всех ПКС слишком объемно... Есть ли возможность это сделать где-то в одном месте?
|
|||
13
Stim
28.02.12
✎
12:23
|
добавить параметр Организация и перед выгрузкой доков проверять
|
|||
14
GenV
28.02.12
✎
12:28
|
(11) Нет. Единого обработчика для ПКС нет.
|
|||
15
Mikhail Volkov
29.02.12
✎
04:35
|
(14) Жаль конечно, а (9) "ВыгрузитьПоПравилу" где прописывается?
|
|||
16
БабкаЕжка
29.02.12
✎
13:07
|
(3)Я извиняюсь, но все-таки не поняла, как при загрузке определить документы, кот. не должны выгружаться? У меня документы по всем организациям могут выгружаться, вопрос в какую базу они при этом загрузятся. Выгружаю пока Универсальной обработокой.
|
|||
17
Beduin
29.02.12
✎
13:09
|
(16) Не понял фразу "как при загрузке определить документы, кот. не должны выгружаться"
|
|||
18
БабкаЕжка
29.02.12
✎
13:13
|
(17) описалась - при выгрузке.
|
|||
19
PVV65
29.02.12
✎
13:18
|
(16) У Вас применяются планы обмена?
|
|||
20
GenV
29.02.12
✎
13:20
|
(15) Если про ситуацию (6), то самый простой способ это сделать в ПВД, установив произвольный алгоритм.
|
|||
21
БабкаЕжка
29.02.12
✎
13:22
|
(19) нет не применяются, я первый раз пишу)),а придётся? Но насколько я поняла при использовании плана обмена нельзя отборы задавать для выгрузки документов.
|
|||
22
PVV65
29.02.12
✎
13:26
|
(21) Если обмены постоянные - надо применять планы обмена, что бы выгружать только изменения.
Думаю что в УТ есть стандартный план обмена с возможностью отбора по организации. Применение планов обмена в КД не является обязательным (можно в любой момент выгрузить любые объекты). |
|||
23
PVV65
29.02.12
✎
13:27
|
+(22) Применение планов обмена позволяет создать узлы, соответствующие организациям и выгружать в КД с указанием узла.
|
|||
24
БабкаЕжка
29.02.12
✎
13:40
|
(23) пока нужна ручная выгрузка, бухи хотят контролировать что и куда они выгружают, т.е. у них должна быть возможность выгрузить документы за опредеённый период, с установленными отборами, если я при выгрузке ставлю конкретный узел обмена, то у меня улетают только из изменённые документы, отборы при этом не срабатывают? вот мне и надо, чтобы при русной выгрузке/загрузке ничего лишнего не загрузилось.
|
|||
25
Beduin
29.02.12
✎
13:46
|
(24) Создайте параметры и используете их в обработчиках своих объектов.
А вообще быстро не получится. Конвертация достаточно сложна сама по себе. |
|||
26
PVV65
29.02.12
✎
13:52
|
(24) Тогда (5). Дописать несколько строк.
Хотя, если бухи хотят "контролировать" - пусть контролируют в рамках зарегистрированных изменений (так же можно не снимать регистрацию). |
|||
27
БабкаЕжка
29.02.12
✎
14:00
|
(26) извините, но я не понимаю, что должно быть в Параметрах? в обработчике "Перед конвертацией объекта" доступен справочник организаций приемника?
|
|||
28
PVV65
29.02.12
✎
14:41
|
(27) Как то так
Если Источник.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда Если Источник.Организация <> &Организация Тогда Отказ = Истина; КонецЕсли; КонецЕсли; А в Конвертации (Справочник.Конвертации) на закладке Параметры добавляем параметр Организация. |
|||
29
PVV65
29.02.12
✎
14:42
|
+(28) Вместо &Организация <-> Параметры.Организация
|
|||
30
PVV65
29.02.12
✎
14:44
|
+(28) Доступ к параметрам из обработки УниверсальныйОбменДаннымиXML осуществляется на закладке "Параметры выгрузки".
|
|||
31
PVV65
29.02.12
✎
14:45
|
Наверное надо еще проверить заполненность параметра.
|
|||
32
БабкаЕжка
29.02.12
✎
14:58
|
(30) если я при выгрузке выбрала организацию Орг1(параметр), выгрузила данные в файл только по этой организации, а потом зашла в базу с Орг2 и загрузила этот файл? Кто меня остановит?
|
|||
33
GenV
29.02.12
✎
15:03
|
(32) Добавь галку для параметра организация "при загрузке", настрой правило его выгрузки и в "после загрузке параметров" проверяй его значение ...
|
|||
34
БабкаЕжка
29.02.12
✎
15:12
|
(33) этот вариант, который и был нужен, единственное, если организаций несколько, то хочется правильные загрузить, а не правильные - нет, т. е. полностью загрзку не надо останавливать.Тогда как?
|
|||
35
GenV
29.02.12
✎
15:21
|
(34) Хм. А как ты собираешься определять чья номенклатура и т.д. грузиться? Она ведь раньше документов выгрузится и на конкретную организацию из нескольких в файле ссылаться не будет.
ЗЫ Выгружай только по одной организации каждый файл и не мучай людей ) |
|||
36
БабкаЕжка
29.02.12
✎
15:33
|
(35)ладно, всем спасибо, буду дальше разбираться с КД.
|
|||
37
Mikhail Volkov
01.03.12
✎
01:27
|
(20) "самый простой способ это сделать в ПВД, установив произвольный алгоритм"
Можно подробней, как? |
|||
38
GenV
01.03.12
✎
09:00
|
(37) Посмотри описание обработчика "Перед обработкой" ПВД. Там есть пример.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |