8.х ОБМЕН обмен старой ут 10.3 и розница 2.2

Тема в разделе "Обмен данными в "1С:Предприятие 8"", создана пользователем Raideres, 6 май 2016.

  1. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Ну на первый взгляд все нормально. Попробуйте воспользоваться отладчиком. Поймете в чем проблема.
    --- Объединение сообщений, 18 май 2016 ---
    Мне ваши правила без ваших баз, к сожалению, ничего не дадут. Могу удаленно помочь.
  2. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    Ами админ 56 809 159
  3. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Время кончилось. Будут проблемы, пишите.
  4. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    еще вопросик а как это потом запускать автоматически а не так вот вручную.
  5. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Писать регламентное задание
  6. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    так теперь назрел вопрос как мне прописать в правилах что брать только определеные поступления например по организации или складу..и например еще как написать чтобы каждый раз при обмене брал только например поступления с конца месяца по конец текущего дня чтобы каждый раз не выгружать все полностью поступления
  7. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    или для этого есть правила регистрации или я путаю...
  8. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    У Вас есть ПВД. Можете прописать свой алгоритм выборки в процедуре ПередОбработкой. Либо, если стандартная, то ПередВыгрузкой установить отборы нужные.
    Последнее редактирование: 19 май 2016
  9. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    а есть ли примеры какие то чтобы не с нуля додумываться
  10. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Примеров тьма. Любые типовые правила.
  11. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26

    я вот так начал делать
    Код:
    Обработка=Обработки.ПД_УниверсальныйОбменДаннымиXML.Создать();
    Обработка.РежимОбмена="Выгрузка";
    //Задаём необходимые для выгрузки параметры
    Обработка.ЗагружатьДанныеВРежимеОбмена=Истина;
    Обработка.ЗаписыватьРегистрыНаборамиЗаписей=Истина;
    Обработка.ЗапоминатьЗагруженныеОбъекты=Истина;
    Обработка.ИспользоватьОтборПоДатеДляВсехОбъектов=Истина;
    Обработка.ВыгружатьТолькоРазрешенные=Истина;
    //Ограничение по дате получается 2 дня назад и по конец текущего дня
    Обработка.ДатаНачала = ТекущаяДата() - 60*60*24*2;
    Обработка.ДатаОкончания = КонецДня(ТекущаяДата());
    //Выгружаем Правила из файла
    Обработка.ИмяФайлаПравилОбмена = "C:\Правила.xml";
    Обработка.ЗагрузитьПравилаОбмена();
    //Выгружаем данные в файл 
    Обработка.НепосредственноеЧтениеВИБПриемнике=Ложь;
    Обработка.ИмяФайлаОбмена = "C:\выгрузка.xml";
      ///
    
    вот тут как то надо прописать чтобы снять все правила кроме поступлений и установить отбор
    
    ///
    Попытка
        Обработка.ВыполнитьВыгрузку();
        Сообщить ("Выгрузка завершена"); 
    Исключение
        Сообщить ("Выгрузка не выполнена");
        ЗавершитьРаботуСистемы(Ложь);
    КонецПопытки;
    ЗавершитьРаботуСистемы(Ложь);
    Последнее редактирование модератором: 20 май 2016
  12. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Не помню как она дословно, но вроде называется ТаблицаПравилВыгрузки. Вам нужно теперь в цикле перебрать это дерево и установить использование и все.
  13. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    Код:
    Обработка=Обработки.ПД_УниверсальныйОбменДаннымиXML.Создать(); 
    Обработка.РежимОбмена="Выгрузка";
    //Задаём необходимые для выгрузки параметры
    Обработка.ЗагружатьДанныеВРежимеОбмена=Истина;
    Обработка.ЗаписыватьРегистрыНаборамиЗаписей=Истина;
    Обработка.ЗапоминатьЗагруженныеОбъекты=Истина;
    Обработка.ИспользоватьОтборПоДатеДляВсехОбъектов=Истина;
    Обработка.ВыгружатьТолькоРазрешенные=Истина;
    //Ограничение по дате получается 2 дня назад и по конец текущего дня
    Обработка.ДатаНачала = ТекущаяДата() - 60*60*24*2;
    Обработка.ДатаОкончания = КонецДня(ТекущаяДата());
    //Выгружаем Правила из файла
    Обработка.ИмяФайлаПравилОбмена = "C:\Правила.xml";
    Обработка.ЗагрузитьПравилаОбмена();
    //Выгружаем данные в файл 
    Обработка.НепосредственноеЧтениеВИБПриемнике=Ложь;
    Обработка.ИмяФайлаОбмена = "C:\выгрузка.xml";
    ВременнаяТП = Обработка.ТаблицаПравилВыгрузки.Скопировать();//Создали временную таблицу правил
    Для Каждого Строка из ВременнаяТП.Строки Цикл
        для каждого строкаК из Строка.Строки цикл 
          Если  строкаК.Наименование = "ПоступлениеТоваровУслуг" тогда
            строкаК.Включить = 1; 
         
          Иначе
            строкаК.Включить = 0;
          Конецесли;
        КонецЦикла;
    КонецЦикла;
    Обработка.ТаблицаПравилВыгрузки = ВременнаяТП.Скопировать();
    Попытка
        Обработка.ВыполнитьВыгрузку();
        Сообщить ("Выгрузка завершена"); 
    Исключение
        Сообщить ("Выгрузка не выполнена");
        // ЗавершитьРаботуСистемы(Ложь);
    КонецПопытки;
    //ЗавершитьРаботуСистемы(Ложь);
    а вот сам отбор теперь не получается запустить
    Последнее редактирование модератором: 20 май 2016
  14. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Какой отбор? Подробнее?
  15. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    [​IMG]
  16. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Учитесь пользоваться конфигуратором и отладчиком. Это все необходимо в обмене.
    Вам нужно понять как называется поле в обработке. Добавить туда необходимое поле и значение.
  17. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    с построителем ни разу не работал =(
    --- Объединение сообщений, 20 май 2016 ---
    Для
    Код:
    Каждого Строка из ВременнаяТП.Строки Цикл
        для каждого строкаК из Строка.Строки цикл 
          Если  строкаК.Наименование = "ПоступлениеТоваровУслуг" тогда
            строкаК.Включить = 1;
           ////////////////////////////////////////////////////////////////
           ////////////////////////////////////////////////////////////////
            ТекущееПВД = строкаК; //тут выловил ПоступлениеТоваровУслуг а как дописать что искать в поступление товаров и услуг организация хз
    
      Построитель = Новый ПостроительОтчета;
      Если ТекущееПВД.ИмяОбъектаДляЗапроса <> Неопределено Тогда
    
      Построитель.Текст =
      "ВЫБРАТЬ Разрешенные _.* ИЗ " + ТекущееПВД.ИмяОбъектаДляЗапроса + " КАК _
      |
      |
      |{ГДЕ _.Ссылка.* КАК " + СтрЗаменить(ТекущееПВД.ИмяОбъектаДляЗапроса, ".", "_") + "}";
      КонецЕсли;
    
      Отбор = Построитель.Отбор;
    
      Если Отбор.Найти("Документ_ПоступлениеТоваровУслуг") = Неопределено Тогда
      Отбор.Добавить("Документ_ПоступлениеТоваровУслуг");
      КонецЕсли;
    
      Массив = Новый Массив;
      Массив.Добавить(Тип("ДокументСсылка.ПоступлениеТоваровУслуг"));
      ОписаниеТиповС = Новый ОписаниеТипов(Массив, , );
    
      Отбор["Документ_ПоступлениеТоваровУслуг"].Использование = Истина;
      Отбор["Документ_ПоступлениеТоваровУслуг"].Значение = справочники.Организации.НайтиПоКоду("000000013");
      Отбор["Документ_ПоступлениеТоваровУслуг"].ВидСравнения = ВидСравнения.Равно;
    
      ДоступностьПостроителя = Истина;
      Если Построитель.Отбор.Количество() > 0 Тогда
      ТекущееПВД.НастройкиПостроителя = Построитель.ПолучитьНастройки();
      ТекущееПВД.ИспользоватьОтбор  = ИСТИНА;
      КонецЕсли;
         ///////////////////////////////////////////////////////////////////////////
         //////////////////////////////////////////////////////////////////////////
          Иначе
            строкаК.Включить = 0;
          Конецесли;
        КонецЦикла;
    КонецЦикла;
    Обработка.ТаблицаПравилВыгрузки = ВременнаяТП.Скопировать();
    Попытка
        Обработка.ВыполнитьВыгрузку();
        Сообщить ("Выгрузка завершена"); 
    Исключение
        Сообщить ("Выгрузка не выполнена");
        // ЗавершитьРаботуСистемы(Ложь);
    КонецПопытки;
    //ЗавершитьРаботуСистемы(Ложь);
    Последнее редактирование модератором: 20 май 2016
  18. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.980
    Симпатии:
    397
    Баллы:
    104
    Оформляйте код тегами. Я уже замучился поправлять Ваш код.
  19. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    извините, тороплюсь просто =( а информации как отобрать так и не найду=(
  20. TopicStarter Overlay
    Raideres
    Offline

    Raideres Опытный в 1С

    Регистрация:
    9 фев 2016
    Сообщения:
    200
    Симпатии:
    0
    Баллы:
    26
    Апппппппппппап

Поделиться этой страницей