Непонятка с выгрузкой подразделений

Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.

Страницы: 1
RSS
Непонятка с выгрузкой подразделений, Непонятка с выгрузкой подразделений из Альфы в бухгалтерию
 
Добрый день!

Никак не могу разобраться, как следует настроить справочник подразделений в Альфе, чтобы он корректно выгружался в бухгалтерию.

Ситуация следующая:
В Альфе учет ведется по нескольким организациям. В справочнике подразделений есть предопределенное подразделение, принадлежащее фирме А, и все остальные подразделения (в том числе принадлежащие фирме Б) получаются подчинены ему.
При выгрузке в бухгалтерию подразделения фирмы Б не показываются в справочнике, т.к. они получаются подчинены подразделению другой организации.

Что я делаю не так?
 
1. Сообщите название продукта и номер релиза.
2. Пришлите скрин настроек самой выгрузки.
 
1. Альфа-Авто: Автосалон+Автосервис+Автозапчасти. Редакция 4.1 версия 4.1.01.15
2. В обработке выгрузки (версия 1.9) никаких особенных настроек не делаю - подразделения выгружаются по ссылкам. В обработке загрузки (версия 2.1) тоже никаких упоминаний про подразделения не нашел. Скрин какой вкладки требуется?

Как я понял, проблема не в самой выгрузке, а в различиях в структуре справочников. А Альфе справочник иерархический с возможностью, чтобы подчиненное подразделение принадлежало другой организации.
У нас получилось так:
- Сервис (принадлежит фирме А) - предопределенный элемент
-- Фирма А (принадлежит фирме А)
--- Подразделение А1 (принадлежит фирме А)
--- Подразделение А2 (принадлежит фирме А)
-- Фирма Б (принадлежит фирме Б)
--- Подразделение Б1 (принадлежит фирме Б)
--- Подразделение Б2 (принадлежит фирме Б)

А в бухгалтерской базе нет подразделений "Сервис", "Фирма А", "Фирма Б".
Т.к. там выводится не вся иерархия, а только подразделения конкретной организации, то там заведены только самые нижние элементы иерархии: "Подразделение А1", ..., "Подразделение Б2".

Здесь же вырисовалась еще одна проблема: если пользователь не знает, какое подразделение выбрать, он выбирает группу, например, "Фирма Б" - программа это позволяет, но при выгрузке соответствующего подразделения не находится и создается новое.
 
Здравствуйте,

да, действительно данная ситуация возникает, когда в Альфа-Авто у корневого предопределенного подраздления
указана одна организация, а у подчиненных подразделений другая. При загрузке организация у подразделения
переносится именно та, что указана в Альфе. Но в бухгалтерии предприятия в списке элементов справочника Подразделения Организации по умолчанию установлен отбор по Организации (а т.к. у корненого подразделения организация отличается от
организаций подчиненных элементов, то они и не попадают в список).

Правильным решением является ведение подразделений по своим организациям. Для этого в обработке загрузки данных в Бухгалтерию предприятия (ЗагрузкаДанныхБух1.6.epf) в обработчике загрузки ЗагрузитьСправочник_ПодразделенияКомпании()
необходимо добавить строки:

Код
...
         РодительОбъекта = ПолучитьОбъект(ИдентификаторРодителя, "Справочник.ПодразделенияОрганизаций");
         Если РодительОбъекта = Неопределено Тогда
            ПереместитьЗапись = Истина;
            Возврат;
         КонецЕсли;

         //Проконтроллируем, чтобы владелец родителя совпадал с владельцем
         //текущего элемента.      
         ЗапросПоРодителю   = Новый Запрос();
         ЗапросПоРодителю.Текст      = "ВЫБРАТЬ
                                 |   ПодразделенияОрганизаций.Ссылка КАК Ссылка
                                 |ИЗ
                                 |   Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
                                 |ГДЕ
                                 |   ПодразделенияОрганизаций.Владелец = &Владелец
                                 |   И ПодразделенияОрганизаций.Наименование = &Наименование
                                 |   И ПодразделенияОрганизаций.КПП = &КПП";
         ЗапросПоРодителю.УстановитьПараметр("Владелец",      ТекОрганизация);
         ЗапросПоРодителю.УстановитьПараметр("Наименование", РодительОбъекта.Наименование);
         ЗапросПоРодителю.УстановитьПараметр("КПП",          РодительОбъекта.КПП);
         ВыборкаРодителя   = ЗапросПоРодителю.Выполнить().Выбрать();
         
         Если ВыборкаРодителя.Следующий() Тогда
            РодительОбъекта   = ВыборкаРодителя.Ссылка;
         Иначе
            РодительОбъект   = РодительОбъекта.ПолучитьОбъект();
            Если РодительОбъект<>Неопределено Тогда
               КопияРодителя   = РодительОбъект.Скопировать();
               УстановитьРеквизит(КопияРодителя, "Владелец",   ТекОрганизация);
               Попытка
                  КопияРодителя.Записать();
                  РодительОбъекта   = КопияРодителя.Ссылка;
               Исключение КонецПопытки;               
            КонецЕсли;               
         КонецЕсли;         
         
          ТекОбъект = СпрМенеджер.НайтиПоНаименованию(ПолучитьЗначениеРеквизита("_1С_Наименование"),Истина,РодительОбъекта);
...


Т.е. при загрузке подразделения будем учитывать, чтобы организация элемента совпадала с организацией родителя.
Изменено: Владимир Кудрявченко - 01.09.2010 12:31:40
Страницы: 1
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С