Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:25

Настройка обмена по одной организации

Автор magnifico61, 15 янв 2015, 14:15

0 Пользователей и 1 гость просматривают эту тему.

magnifico61

Есть правила обмена, которые корректно работаю с УТ 11 и БП 30 через универсальный обмен данными, необходимо настроить выгрузку только по одной организации, так как загружать необходимо в базовую бухгалтерию, как это реализовать?

Есть код, но он не работает

Функция ВыполнитьВыгрузкуНаСервере()

Если Не ПрямаяВыгрузка Тогда

ИмяВременногоФайлаДанных = ИмяФайлаНаСервереИлиКлиенте(ИмяФайлаДанных, ,,Истина, Ложь);

Если ИмяВременногоФайлаДанных = Неопределено Тогда

Возврат Неопределено;
СообщитьПользователю(НСтр("ru = 'Не определен файл данных'"));

Иначе

Объект.ИмяФайлаОбмена = ИмяВременногоФайлаДанных;

КонецЕсли;

КонецЕсли;

ТаблицаПравилВыгрузки = РеквизитФормыВЗначение("Объект.ТаблицаПравилВыгрузки");

АдресаСКД = Объект.АдресаМакетовСКД;

ОбъектДляСервера = РеквизитФормыВЗначение("Объект");
ЗаполнитьЗначенияСвойств(ОбъектДляСервера, Объект);

ОбъектДляСервера.АдресаМакетовСКД = АдресаСКД;

Если ОбъектДляСервера.ФлагРежимОтладкиОбработчиков Тогда

Отказ = Ложь;

Файл = Новый Файл(ОбъектДляСервера.ИмяФайлаВнешнейОбработкиОбработчиковСобытий);

Если Не Файл.Существует() Тогда

СообщитьПользователю(НСтр("ru = 'Файл внешней обработки отладчиков событий не существует на сервере'"));
Возврат Неопределено;

КонецЕсли;

ОбъектДляСервера.ВыгрузитьОбработчикиСобытий(Отказ);

Если Отказ Тогда

СообщитьПользователю(НСтр("ru = 'Не удалось выгрузить обработчики событий'"));
Возврат "";

КонецЕсли;

Иначе

ОбъектДляСервера.ЗагрузитьПравилаОбмена();
ОбъектДляСервера.ИнициализироватьПервоначальныеЗначенияПараметров();
ОбъектДляСервера.Параметры.Вставить("СворачиватьПоСкладу", Объект.НаОбщийСклад);
ОбъектДляСервера.Параметры.Вставить("ОбобщенныйСклад", Объект.ОбщийСклад);
ОбъектДляСервера.Параметры.Вставить("Организация", Объект.ОтборОрганизация);

КонецЕсли;

ИзменитьДеревоПравилВыгрузки(ОбъектДляСервера.ТаблицаПравилВыгрузки.Строки, ТаблицаПравилВыгрузки.Строки);

ОбъектДляСервера.ВыполнитьВыгрузку();
ОбъектДляСервера.ТаблицаПравилВыгрузки = РеквизитФормыВЗначение("Объект.ТаблицаПравилВыгрузки");

Если ЭтоКлиент И Не ПрямаяВыгрузка Тогда

АдресФайлаДанных = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(Объект.ИмяФайлаОбмена), УникальныйИдентификатор);
УдалитьФайлы(Объект.ИмяФайлаОбмена);

Иначе

АдресФайлаДанных = "";

КонецЕсли;

Если ЭтоКлиент Тогда

УдалитьФайлы(ОбъектДляСервера.ИмяФайлаПравилОбмена);

КонецЕсли;

ОбъектДляСервера.Параметры.Очистить();
ЗначениеВРеквизитФормы(ОбъектДляСервера, "Объект");

Возврат АдресФайлаДанных;

КонецФункции


MuI_I_Ika


magnifico61


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

это не выполняется и передается пустое значение
тем самым не сворачивается по складу и не идет отбор по организации

MuI_I_Ika

Ну здесь же нужно смотреть что там в ЗагрузитьПравилаОбмена()

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск