8.х Не создаются бухгалтерские проводки

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Tverd, 17 мар 2010.

  1. TopicStarter Overlay
    Tverd
    Offline

    Tverd Опытный в 1С

    Регистрация:
    24 окт 2007
    Сообщения:
    56
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте.
    Возникла проблема у меня, судя по всему опять что-то прохлопал или по невнимательности но пока не могу сообразить в чем дело.
    1С:Предприятие 8.1 (8.1.15.14)
    "Управление торговлей", редакция 10.3 (10.3.9.4)
    Бухгалтерия предприятия, редакция 1.6 (1.6.22.4)

    Делаю выгрузку документов из УТ в БП, нашу бухгалтерию не устраивает встроенная выгрузка, но не в этом суть.
    Проблема возникает при проведении перенесенных Кассовых ордеров, в частности проблема в том что, не возникает проводок, вообще никаких. С остальными документами все нормально.
    Попробовал переправить перенесенный документ вручную, при перевыборе "вида операции" после проведения проводки появляются.
    Никак не соображу в чем дело, может есть у кого какие мысли?

    Могу выложить код переноса документа, но вроде бы все реквизиты я заполняю.

    Код:
     
    Процедура ВыгрузитьПриходКассОрдер(V8)
    
    Проверка = Документы.ПриходныйКассовыйОрдер.Выбрать(ДатаНач,КонецДня(ДатаКон)); 
    Состояние("Проверка перенесенных документов (Приходный кассовый ордер)...");
    
    Пока Проверка.Следующий() Цикл
    
    Если Проверка.Организация <> Организация Тогда
    Продолжить;
    КонецЕсли;    
    
    Если Проверка.Комментарий = "#Сформирован переносом данных" Тогда
    Удалить = Проверка.ПолучитьОбъект();
    Удалить.Удалить();
    КонецЕсли;
    
    КонецЦикла;
    
    Выборка = V8.Документы.ПриходныйКассовыйОрдер.Выбрать(ДатаНач, КонецДня(ДатаКон));
    Состояние("Обработка Приходных кассовых ордеров");
    
    Пока Выборка.Следующий() Цикл
    
    Если Выборка.Организация.Description <> Организация.Наименование ИЛИ  Выборка.ПометкаУдаления = Истина  Тогда 
    Продолжить;            
    КонецЕсли;
    
    //Ввестр ограничение по кассе из УТ
    Если Выборка.Касса.Код <> "000000004" Тогда
    Продолжить;            
    КонецЕсли;
    
    НовДокумент = Документы.ПриходныйКассовыйОрдер.СоздатьДокумент();
    НовДокумент.Дата = Выборка.Дата;
    НовДокумент.Номер = Выборка.Номер;
    
    НовДокумент.Организация = Справочники.Организации.НайтиПоКоду(Выборка.Организация.Code);
    НовДокумент.ВалютаДокумента = Справочники.Валюты.НайтиПоКоду(Выборка.ВалютаДокумента.Code);
    НовДокумент.Комментарий = "#Сформирован переносом данных"; 
    НовДокумент.СчетКасса = ПланыСчетов.Хозрасчетный.КассаОрганизации;
    НовДокумент.ОтражатьВНалоговомУчете = Истина;
    НовДокумент.СуммаДокумента = Выборка.СуммаДокумента;
    
    ВидОперацииУТ =  V8.String(Выборка.ВидОперации);                  
    
    Если ВидОперацииУТ <> "" Тогда
    Если ВидОперацииУТ = "Оплата от покупателя" Тогда
    НовДокумент.ВидОперации = Перечисления.ВидыОперацийПКО.ОплатаПокупателя;
    НовДокумент.ЕстьРасчетыСКонтрагентами = УправлениеДенежнымиСредствами.ЕстьРасчетыСКонтрагентами(НовДокумент.ВидОперации);
    НовДокумент.ЕстьРасчетыПоКредитам     = УправлениеДенежнымиСредствами.ЕстьРасчетыПоКредитам(НовДокумент.ВидОперации);
    НовДокумент.Контрагент = ПоискКонтрагента(Выборка.Контрагент, V8);
    
    Для каждого СтрокаВыборка Из Выборка.РасшифровкаПлатежа Цикл
    СтрокаПлатеж = НовДокумент.РасшифровкаПлатежа.Добавить();
    СчетаУчета = УправлениеВзаиморасчетами.ПолучитьСчетаРасчетовСКонтрагентом(Организация, НовДокумент.Контрагент, СтрокаПлатеж.ДоговорКонтрагента);
    СтрокаПлатеж.СчетУчетаРасчетовСКонтрагентом = СчетаУчета.СчетРасчетовПокупателя;
    СтрокаПлатеж.СчетУчетаРасчетовПоАвансам = СчетаУчета.СчетАвансовПокупателя;
    СтрокаПлатеж.КурсВзаиморасчетов = 1;
    СтрокаПлатеж.СуммаПлатежа = СтрокаВыборка.СуммаПлатежа;
    Если V8.String(СтрокаВыборка.СтавкаНДС) <> "" Тогда
    Индекс = V8.Перечисления.СтавкиНДС.Индекс(СтрокаВыборка.СтавкаНДС);
    СтрокаПлатеж.СтавкаНДС = Перечисления.СтавкиНДС[Индекс];
    КонецЕсли;
    СтрокаПлатеж.СуммаНДС = СтрокаВыборка.СуммаНДС;
    СтрокаПлатеж.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду(СтрокаВыборка.СтатьяДвиженияДенежныхСредств.Код);
    
    СтрокаПлатеж.ДоговорКонтрагента = ПоискДоговора(СтрокаВыборка.ДоговорКонтрагента, НовДокумент.Контрагент, Выборка.Контрагент, V8);
    
    КонецЦикла;                    
    НовДокумент.ПринятоОт = Выборка.ПринятоОт;
    НовДокумент.Основание = Выборка.Основание;
    НовДокумент.Приложение = Выборка.Приложение;
    
    ИначеЕсли ВидОперацииУТ = "Расчеты по кредитам и займам с контрагентами" Тогда
    НовДокумент.ВидОперации = Перечисления.ВидыОперацийПКО.РасчетыПоКредитамИЗаймамСКонтрагентами;
    НовДокумент.ЕстьРасчетыСКонтрагентами = УправлениеДенежнымиСредствами.ЕстьРасчетыСКонтрагентами(НовДокумент.ВидОперации);
    НовДокумент.ЕстьРасчетыПоКредитам     = УправлениеДенежнымиСредствами.ЕстьРасчетыПоКредитам(НовДокумент.ВидОперации);
    НовДокумент.Контрагент = ПоискКонтрагента(Выборка.Контрагент, V8);
    
    Для каждого СтрокаВыборка Из Выборка.РасшифровкаПлатежа Цикл
    СтрокаПлатеж = НовДокумент.РасшифровкаПлатежа.Добавить();
    СчетаУчета = УправлениеВзаиморасчетами.ПолучитьСчетаРасчетовСКонтрагентом(Организация, НовДокумент.Контрагент, СтрокаПлатеж.ДоговорКонтрагента);
    СтрокаПлатеж.СчетУчетаРасчетовСКонтрагентом = СчетаУчета.СчетРасчетовПокупателя;
    СтрокаПлатеж.КурсВзаиморасчетов = 1;
    СтрокаПлатеж.СуммаПлатежа = СтрокаВыборка.СуммаПлатежа;
    Если V8.String(СтрокаВыборка.СтавкаНДС) <> "" Тогда
    Индекс = V8.Перечисления.СтавкиНДС.Индекс(СтрокаВыборка.СтавкаНДС);
    СтрокаПлатеж.СтавкаНДС = Перечисления.СтавкиНДС[Индекс];
    КонецЕсли;
    СтрокаПлатеж.СуммаНДС = СтрокаВыборка.СуммаНДС;
    СтрокаПлатеж.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду(СтрокаВыборка.СтатьиДвиженияДенежныхСредств.Код);
    
    СтрокаПлатеж.ДоговорКонтрагента = ПоискДоговора(СтрокаВыборка.ДоговорКонтрагента, НовДокумент.Контрагент, Выборка.Контрагент, V8);
    КонецЦикла;            
    НовДокумент.ПринятоОт = Выборка.ПринятоОт;
    НовДокумент.Основание = Выборка.Основание;
    НовДокумент.Приложение = Выборка.Приложение; 
    
    
    ИначеЕсли ВидОперацииУТ = "Прочий приход денежных средств" Тогда
    НовДокумент.ВидОперации = Перечисления.ВидыОперацийПКО.ПриходДенежныхСредствПрочее;
    НовДокумент.ЕстьРасчетыСКонтрагентами = УправлениеДенежнымиСредствами.ЕстьРасчетыСКонтрагентами(НовДокумент.ВидОперации);
    НовДокумент.ЕстьРасчетыПоКредитам     = УправлениеДенежнымиСредствами.ЕстьРасчетыПоКредитам(НовДокумент.ВидОперации);
    Для каждого СтрокаВыборка Из Выборка.РасшифровкаПлатежа Цикл
    СтрокаПлатеж = НовДокумент.РасшифровкаПлатежа.Добавить();
    СтрокаПлатеж.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду(СтрокаВыборка.СтатьяДвиженияДенежныхСредств.Код); 
    СтрокаПлатеж.СуммаПлатежа = СтрокаВыборка.СуммаПлатежа;
    КонецЦикла;                
    НовДокумент.ПринятоОт = Выборка.ПринятоОт;
    НовДокумент.Основание = Выборка.Основание;
    НовДокумент.Приложение = Выборка.Приложение; 
    
    КонецЕсли;              
    КонецЕсли;     
    
    НовДокумент.Ответственный = ПоискПользователя(Выборка.Ответственный, V8);
    НалоговыйУчетУСН.ЗаполнитьНастройкуКУДиР(НовДокумент, Истина);
    Попытка
    Состояние("Запись документа 'Приходный кассовый ордер' в бухгалтерию 8.1...");
    НовДокумент.Записать()
    Исключение
    Сообщить ("Ошибка записи документа 'Приходный кассовый ордер' с номером  " + выборка.номер + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание);
    Продолжить;              
    КонецПопытки;
    
    КонецЦикла;
    
    
    КонецПроцедуры
    
    
    
  2. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.639
    Симпатии:
    948
    Баллы:
    204
    Вы после переноса проверяли? вид операции переноситься? Если да то откройте конфу.
    Посмотрите какие процедуры и реквизиты выполняте Система при выборе операции, которые ты может забываешь заполнять при переносе
  3. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Правила самописные? Проверяйте, какой реквизит не заполняется, когда проводите - т.е. отладчик в зубы и вперед :)
  4. TopicStarter Overlay
    Tverd
    Offline

    Tverd Опытный в 1С

    Регистрация:
    24 окт 2007
    Сообщения:
    56
    Симпатии:
    1
    Баллы:
    29
    Вид Операции переносится, соответственно выводятся поля в Расшифровке платежа которые соответствуют данному типу.
    Тоже так думал, вроде все заполняется, ладно спасибо, буду пока дальше рыть.

    А что значит самописные правила?
    В том то и дело что проводится документ замечательно, и даже функция ДвижениеПоРегистрам выполняется, но движений почему-то не происходит, ладно, вам тоже спасибо буду копаться.
  5. TopicStarter Overlay
    Tverd
    Offline

    Tverd Опытный в 1С

    Регистрация:
    24 окт 2007
    Сообщения:
    56
    Симпатии:
    1
    Баллы:
    29
    Что еще интересно не попадают в проводки только виды операций Оплата поставщику и Оплата покупателю.
  6. TopicStarter Overlay
    Tverd
    Offline

    Tverd Опытный в 1С

    Регистрация:
    24 окт 2007
    Сообщения:
    56
    Симпатии:
    1
    Баллы:
    29
    Мда, надо больше спать.
    Всем спасибо за помощь.
    В результате нашел что я не переносил 1 из реквизитов, как так получилось до сих пор не пойму.
    Все исправил все работает.

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