8.х ОБМЕН Перенос остатков

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

  1. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте! Подскажите пожалуйста как перенести остатки с помощью конфигурации КД.
    Конфигурация 7,7 самописная, конфигурация 8 Бухгалтерия для гос учреждений релиз 2.0.19.1
  2. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Вы с конвертацией до этого я так понимаю не работали. Тогда ставьте там есть описание как создавать правила или ищите литературу и статьи в инете.В двух словах то там с конвертацией есть обработки для выгрузки структуры конфигураций. Выгружаете структуры, загружаете их в ковертацию и прописываетет связи между объектами.. Ну это в грубом изложении.
  3. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Именно остатков я там не видел.
  4. Andy13
    Offline

    Andy13 Опытный в 1С

    Регистрация:
    1 мар 2010
    Сообщения:
    244
    Симпатии:
    2
    Баллы:
    29
    Остатки - ручками придется в КД прописывать, ежели нетиповая конфа. Но всё равно - возьмите из типовой правила переноса 77-81 для образца.
  5. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Смотрю уже.
  6. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Может кто нибудь помочь.
  7. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    если вы хотите знать как типовой перенос работает, то он создает документ Перенос Данных (аналог корректировки записей регистров и вносит туда данные). Т.е если хотите пернсти остатки то В КД это перенести только регистры .

    В чем именноо помочь то?
  8. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    С переносом. Я код не особо знаю.
  9. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Если вы будете это в Кд делать то там почти все делается растановкой галочек и т.д. Тут как бы надо все в оочую видеть...Если через Com писать будеет тогда выкладывайте код посмотрим
  10. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    А если вам конфигурации отправить. Я посмотрел стандартное правило обмена не особо понятно.
  11. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Ну во первых у меня 7ки нет...Выложите может не я кто то другой скачает,посмотрит. Но я просто сомневаюсь что кто то возьмется делать чужую работу, подсказать да, подправить да. Просто сейчас вссе еще месяц закрывают
  12. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Спасибо за ответы. Попробую сам.
  13. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Вы пробуйте, что не ясно принт скрины в тудию. Будем помогать
  14. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Хотел перенести остатки по одному счету создал правила но в 7,7 ошибка
    ПВД_ПередОбработкой_Касса-Функция не обнаружина.
  15. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    1.Вы выгрузили метаданные конфигураций и загрузили их в Кд?
    2.Вы там проставили связи и создали правило обмена
    3.Теперь вы выгружая из 7ки и указвая это правило обмена конфигурация вам пишет ошибку?
  16. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Да.


    Есть у кого нибудь правило выгрузки по переносу остатков. Посмотреть.
  17. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Принт скрин правила давайте или вы чтото писали в процедуре перед обработкой?
  18. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Алгоритм
    Код:
          // Выгружает остатки по любому счету. Счет записывается в таблицу 
    // проводок, как объект типа "Основной.Счет" (потом он сконвертируется
    // в соответствии с настройкой конвертации значений счетов).
    
    // Остатки по субконто на которых ведется только количественный учет
    // выгружаются, как отдельные проводки.
    
    СчетВводаОстатков = Параметры.СчетВводаОстатков;
    Счет = Параметры.ПараметрыАлгоритмов.Получить("ТекущийСчет");
    РегистрБух = Параметры.ПараметрыАлгоритмов.Получить("Регистр");
    
    СуммовойУчет1 = ?(Счет.КоличествоСубконто() > 0, ?(Счет.ТолькоОбороты(1) = 1, 0, Счет.УчетПоСумме(1)), 0);
    СуммовойУчет2 = ?(Счет.КоличествоСубконто() > 1, ?(Счет.ТолькоОбороты(2) = 1, 0, Счет.УчетПоСумме(2)), 0);
    СуммовойУчет3 = ?(Счет.КоличествоСубконто() > 2, ?(Счет.ТолькоОбороты(3) = 1, 0, Счет.УчетПоСумме(3)), 0);
    
    КоличествоУровней = 0;
    КоличествоУровней = КоличествоУровней + ?(Счет.КоличествоСубконто() > 0, ?(Счет.ТолькоОбороты(1) = 1, 0, 1), 0);
    КоличествоУровней = КоличествоУровней + ?(Счет.КоличествоСубконто() > 1, ?(Счет.ТолькоОбороты(2) = 1, 0, 1), 0);
    КоличествоУровней = КоличествоУровней + ?(Счет.КоличествоСубконто() > 2, ?(Счет.ТолькоОбороты(3) = 1, 0, 1), 0);
    
    Проводки = Параметры.ТаблицаПроводок;
    Проводки.УдалитьСтроки();
    
    Валюты = СоздатьОбъект("СписокЗначений");
    
    БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
    БухИт.ИспользоватьРазделительУчета(Параметры.РазделительУчета);
    
    //Если КоличествоУровней > 0 Тогда
    //	БухИт.ИспользоватьСубконто(Счет.ВидСубконто(1));
    //КонецЕсли;
    
    //Если КоличествоУровней > 1 Тогда
    //	БухИт.ИспользоватьСубконто(Счет.ВидСубконто(2));
    //КонецЕсли;
    
    //Если КоличествоУровней > 2 Тогда
    //	БухИт.ИспользоватьСубконто(Счет.ВидСубконто(3));
    //КонецЕсли;
    
    Если СуммовойУчет3 = 1 Тогда
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(1));
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(2));
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(3));
    ИначеЕсли СуммовойУчет2 = 1 Тогда
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(1));
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(2));
    Иначе
    БухИт.ИспользоватьСубконто(Счет.ВидСубконто(1));
    КонецЕсли;
    
    Параметры.ПараметрыАлгоритмов.Установить("БухИт", БухИт);
    Параметры.ПараметрыАлгоритмов.Установить("Проводки", Проводки);
    Параметры.ПараметрыАлгоритмов.Установить("КоличествоУровней", КоличествоУровней);
    
    БухИт.ВыполнитьЗапрос(НачГода(Параметры.ДатаВводаОстатков), Параметры.ДатаВводаОстатков, Счет);
    БухИт.ВыбратьСчета();
    Пока БухИт.ПолучитьСчет() = 1 Цикл
    Валюты.УдалитьВсе();
    
    Если Счет.Валютный = 1 Тогда
    БухИт.ВыбратьВалюты();
    Пока БухИт.ПолучитьВалюту() = 1 Цикл
    Валюты.ДобавитьЗначение(БухИт.Валюта);
    КонецЦикла;
    
    Иначе
    Валюты.ДобавитьЗначение(ПолучитьПустоеЗначение("Справочник.Валюты"));
    КонецЕсли;
    
    Для НомерВалюты = 1 по Валюты.РазмерСписка() Цикл
    Если Счет.Валютный = 1 Тогда
    БухИт.ПолучитьВалюту(, Валюты.ПолучитьЗначение(НомерВалюты));
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 0 Тогда
    Продолжить;
    КонецЕсли;
    
    Если КоличествоУровней = 0 Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 0);
    ДобавитьПроводку();
    Продолжить;
    КонецЕсли;
    
    Если (КоличествоУровней > 0) и (ПолучитьОстаткиПоСчету() = 1) Тогда
    Если Счет.ТолькоОбороты(1) = 0 Тогда
    БухИт.ВыбратьСубконто(1);
    Пока БухИт.ПолучитьСубконто(1) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(1)) = "Справочник" Тогда
    Если БухИт.Субконто(1).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 0 Тогда
    Продолжить;
    КонецЕсли;
    
    Если ((СуммовойУчет1 = 1) и (СуммовойУчет2 = 0) и (СуммовойУчет3 = 0)) или (КоличествоУровней = 1) Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 1);
    ДобавитьПроводку();
    КонецЕсли;
    
    Если КоличествоУровней > 1 Тогда
    Если Счет.ТолькоОбороты(2) = 0 Тогда
    БухИт.ВыбратьСубконто(2);
    Пока БухИт.ПолучитьСубконто(2) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(2)) = "Справочник" Тогда
    Если БухИт.Субконто(2).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 0 Тогда
    Продолжить;
    КонецЕсли;
    
    Если ((СуммовойУчет2 = 1) и (СуммовойУчет3 = 0)) или (КоличествоУровней = 2) Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 2);
    ДобавитьПроводку();
    КонецЕсли;
    
    Если КоличествоУровней > 2 Тогда
    БухИт.ВыбратьСубконто(3);
    Пока БухИт.ПолучитьСубконто(3) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(3)) = "Справочник" Тогда
    Если БухИт.Субконто(3).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 1 Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 3);
    ДобавитьПроводку();
    КонецЕсли;
    КонецЦикла;
    КонецЕсли;	
    КонецЦикла;
    Иначе
    Если КоличествоУровней > 1 Тогда
    БухИт.ВыбратьСубконто(3);
    Пока БухИт.ПолучитьСубконто(3) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(3)) = "Справочник" Тогда
    Если БухИт.Субконто(3).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 1 Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 3);
    ДобавитьПроводку();
    КонецЕсли;
    КонецЦикла;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;	
    КонецЦикла;
    Иначе
    Если КоличествоУровней > 0 Тогда
    Если Счет.ТолькоОбороты(2) = 0 Тогда
    БухИт.ВыбратьСубконто(2);
    Пока БухИт.ПолучитьСубконто(2) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(2)) = "Справочник" Тогда
    Если БухИт.Субконто(2).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 0 Тогда
    Продолжить;
    КонецЕсли;
    
    Если ((СуммовойУчет2 = 1) и (СуммовойУчет3 = 0)) или (КоличествоУровней = 1) Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 2);
    ДобавитьПроводку();
    КонецЕсли;
    
    Если КоличествоУровней > 1 Тогда
    БухИт.ВыбратьСубконто(3);
    Пока БухИт.ПолучитьСубконто(3) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(3)) = "Справочник" Тогда
    Если БухИт.Субконто(3).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 1 Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 3);
    ДобавитьПроводку();
    КонецЕсли;
    КонецЦикла;
    КонецЕсли;	
    КонецЦикла;
    Иначе
    Если КоличествоУровней > 0 Тогда
    БухИт.ВыбратьСубконто(3);
    Пока БухИт.ПолучитьСубконто(3) = 1 Цикл
    Если ТипЗначенияСтр(БухИт.Субконто(3)) = "Справочник" Тогда
    Если БухИт.Субконто(3).ЭтоГруппа() = 1 Тогда
    Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    Если ПолучитьОстаткиПоСчету() = 1 Тогда
    Параметры.ПараметрыАлгоритмов.Установить("ТекНомерСубконто", 3);
    ДобавитьПроводку();
    КонецЕсли;
    КонецЦикла;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;	
    КонецЕсли;
    КонецЕсли;	
    КонецЦикла;
    КонецЦикла;
    ВходящиеДанные = СоздатьОбъект("СписокЗначений");
    ВходящиеДанные.Установить(РегистрБух, Проводки);
    ВходящиеДанные.Установить("Счет", Счет);
    ВыгрузитьПоПравилу(,, ВходящиеДанные,, "ОперацияБух");
    



    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    Алгоритм2 ПолучитьОстаткиПоСчету
    Код:
      БухИт = Параметры.ПараметрыАлгоритмов.Получить("БухИт");
    
    ОстатокДтС = 0;
    ОстатокДтВ = 0;
    ОстатокДтК = 0;
    ОстатокКтС = 0;
    ОстатокКтВ = 0;
    ОстатокКтК = 0;
    
    ОстатокДтС = БухИт.СКД(1);
    
    Если БухИт.Счет.Валютный = 1 Тогда
    ОстатокДтВ = БухИт.СКД(2);
    КонецЕсли;
    
    Если БухИт.Счет.Количественный = 1 Тогда
    ОстатокДтК = БухИт.СКД(3);
    КонецЕсли;
    
    ОстатокКтС = БухИт.СКК(1);
    
    Если БухИт.Счет.Валютный = 1 Тогда
    ОстатокКтВ = БухИт.СКК(2);
    КонецЕсли;
    
    Если БухИт.Счет.Количественный = 1 Тогда
    ОстатокКтК = БухИт.СКК(3);
    КонецЕсли;
    
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокДтС", ОстатокДтС);
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокДтВ", ОстатокДтВ);
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокДтК", ОстатокДтК);
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокКтС", ОстатокКтС);
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокКтВ", ОстатокКтВ);
    Параметры.ПараметрыАлгоритмов.Установить("ОстатокКтК", ОстатокКтК);
    
    Если (ОстатокКтК = 0) и (ОстатокКтВ = 0) и (ОстатокКтС = 0) и (ОстатокДтК = 0) и (ОстатокДтВ = 0) и (ОстатокДтС = 0) Тогда
    Возврат 0;
    
    Иначе
    Возврат 1;
    КонецЕсли;
    

    Вложения:

    • convert.JPG
      convert.JPG
      Размер файла:
      113,7 КБ
      Просмотров:
      132
    • convert2.JPG
      convert2.JPG
      Размер файла:
      119,7 КБ
      Просмотров:
      96
  19. TopicStarter Overlay
    kible
    Offline

    kible Опытный в 1С

    Регистрация:
    14 апр 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    Кто переносил операцию из 7,7 в 8?
  20. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    ад многие переносили но только вот с таки не замарачивались. писали правила на перенос просто документов и все а свои собственные правила обработки мало кто пишет. В основном тогда выдергивают типовую и чтото переделывают
Похожие темы
  1. ganzo68
    Ответов:
    0
    Просмотров:
    1.144
  2. cukzzm
    Ответов:
    7
    Просмотров:
    789
Загрузка...

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