8.х ОБМЕН Конвертация данных

Тема в разделе "Обмен данными в "1С:Предприятие 8"", создана пользователем Незнайка это Я, 26 апр 2013.

  1. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    Необходимо доработать правила переноса из УТ 11 в БП 2.0 так,
    чтобы при переносе документов поступления в них всегда проставлялся счет 76.05
    как счет расчетов с контрагентом, если у партнера, у которого мы закупаем товар,
    указано в карточке что он является покупателем.



    Этот код в правилах

    Источник.Контрагент
    Если Справочники.Партнеры.Клиент = Истина Тогда
    Значение = "РасчетыСПрочимиПоставщикамиИПодрядчиками"
    Иначе Значение = "РасчетыСПоставщиками" ;
    КонецЕсли;

    вопрос: как заменить в доке Поступление товаров и услуг счёт расчётов с контрагентом 60.01 (который проставляется автоматически при переносе в Бухе 2.0)
    на 76.05 ?
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Обработчик событий - После загрузки
  3. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
  4. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    в смысле - не то?

    в обработчике ПослеЗагрузки у ПКО ПТУ_ЗакупкаТоваровУслуг в самом конце добавляете
    Код:
    Если Объект.ДоговорКонтрагента.ВидДоговора=Перечисление.ВидыДоговоровКонтрагентов.СПокупателем Тогда
    Объект.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.РасчетыСПрочимиПоставщикамиИПодрядчиками;
    КонецЕсли;
    
    ну и счет учета авансов было бы не плохо выставить.
  5. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    если по договору, тогда всё классно. А вот Партнёр есть только в УТ и если в Утешкины Партнёры являются Клиентами (или Поставщиками и Клиентами) тогда как быть? о договоре и речи нет в задаче.
  6. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    Код:
    Если  Источник.Партнер.Клиент = Истина Тогда
    Значение = "РасчетыСПрочимиПоставщикамиИПодрядчиками";
    Иначе Значение = "РасчетыСПоставщиками";
    КонецЕсли;
    есть такой код, но он не пашет
  7. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    если хочется счет передавать при выгрузке - делайте ПКО для плана счетов, источник - пустой, приемник - ПланСчетовСсылка.Хозрасчетный
    ему отключаете поиск по внутреннему идентификатору, включаете не создавать новые и не замещать существующие, делаете единственное ПКС для реквизита Код, его же назначаете полем поиска.

    далее, в вашем ПКС для счета учета взаиморасчетов выставляете ПКО - созданное для плана счетов, в вашем тексте пишете
    Код:
    Если  Источник.Партнер.Клиент = Истина Тогда
    Значение = Новый Структура("Код", "76.05");
    Иначе
    Значение = Новый Структура("Код", "60.01");
    КонецЕсли;
  8. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    Код:
       Если  Источник.Справочники.Партнеры.Клиент = Истина	  Тогда
    Объект.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.РасчетыСПрочимиПоставщикамиИПодрядчиками;
    Объект.СчетУчетаРасчетовПоАвансам = ПланыСчетов.Хозрасчетный.РасчетыПоАвансамВыданным;
    Иначе Объект.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.РасчетыСПоставщиками;
    КонецЕсли;
    Как мне правильно написать этот код в ПКО ЗакупкаТоваровИУслуг после загрузки, а то "Значение не является значением объектного типа (Справочники)", Пожаалуууууста
  9. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    никак
    код обработчика ПослеЗагрузки исполняться будет уже в БП, а там у вас партнера уже нет
  10. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    а он нужен может условие пишется в другом правиле или обработчике но на него нужна ссылка из "после загрузке". Есть такая возможность?
  11. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    зачем? повторюсь

    делайте ПКО для плана счетов, источник - пустой, приемник - ПланСчетовСсылка.Хозрасчетный
    ему отключаете поиск по внутреннему идентификатору, включаете не создавать новые и не замещать существующие, делаете единственное ПКС для реквизита Код, его же назначаете полем поиска.

    далее, в вашем ПКС для счета учета взаиморасчетов выставляете ПКО - созданное для плана счетов, в обработчике ПередВыгрузкой ПКС пишете
    Код:
    Если  Источник.Партнер.Клиент = Истина Тогда
    Значение = Новый Структура("Код", "76.05");
    Иначе
    Значение = Новый Структура("Код", "60.01");
    КонецЕсли;
  12. TopicStarter Overlay
    Незнайка это Я
    Offline

    Незнайка это Я

    Регистрация:
    8 мар 2013
    Сообщения:
    42
    Симпатии:
    0
    Баллы:
    1
    есть у кого-нибудь пример использования "Входящих" и "Исходящих" данных? такой чтобы с условием желательно, (где у конфы приёмника нет таких реквизитов которые участвуют в условии, но эти реквизиты есть в конфе источника) и вообще материал имеено по ним, какой -нибудь. к примеру нужно выгрузить документы Поступление товаров и услуг из УТ в Буху. В Бухе нет справочника Партнеры, а УТ есть. Условие: если Партнер (он же контрагент) является клиентом (такое в справочнике Партнеры в УТ) тогда счетУчетаРасчетаСКонтрагентом в выгруженном доке будет 76.05 иначе 60.01.
  13. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    Если очень не хочется делать ПКО для плана счетов и хочется поизучать поглубже конвертацию, то можно просто открыть ПКО поступления, обработчик ПриВыгрузке и ткнуть кнопку "Информация по обработчикам", найти там описание параметра Приемник, а также пример кода для выгрузки дополнительных данных через узел.
    После этого можно так же открыть описание обработчика ПриЗагрузке и посмотреть на пример кода, в котором эти данные принимаются.

    Но лучше сделайте ПКО для плана счетов и передавайте структуру вместо счета - меньше вариантов ошибиться и сами правила понятнее становятся

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