Имя: Пароль:
1C
1C 7.7
v7: Перенос забалансовых счетов
0 smile03
 
30.05.14
11:23
Переношу данные из УСН 7.7 в Бухгалтерию 2.0. Задача перенести остатки и обороты по счету МЦ(УСН)->МЦ.04(Бух 2.0)
дописываю типовые правила переноса
//******************** Счет МЦ ********************

Параметры.ПараметрыАлгоритмов.Установить("ТекущийСчет", СчетПоКоду("МЦ"));
Параметры.ПараметрыАлгоритмов.Установить("Регистр", "Хозрасчетный");
Параметры.ПараметрыАлгоритмов.Установить("ТолькоОбороты", 0);
ВыгрузитьОстаткиПоСчету();

остатки не переносятся. подскажите, что еще нужно сделать.
1 Franchiser
 
гуру
30.05.14
11:31
//******************** Счет МЦ.04 ********************
Параметры.ПараметрыАлгоритмов.Установить("ТекущийСчет", СчетПоКоду("МЦ.04"));
Параметры.ПараметрыАлгоритмов.Установить("Регистр", "Хозрасчетный");
Параметры.ПараметрыАлгоритмов.Установить("ТолькоОбороты", 0);
ВыгрузитьОстаткиПоСчету();
2 Franchiser
 
гуру
30.05.14
11:32
Это код переноса из обычной бухгалтерии, как в УСН не знаю, но по идее план счетов такой же д.б.
3 smile03
 
30.05.14
11:39
В УСН нет субсчета МЦ.04 , там один счет МЦ
4 Franchiser
 
гуру
30.05.14
11:48
Суммы на счете есть, субконто склады? Насколько помню по этим счетам идет распределения по складам при переносе отдельным алгоритмом, в этом м.б. проблема.
5 smile03
 
30.05.14
12:03
(4) ,Субконто1- номенклатура и субконто2- сотрудник. сумма и количество есть. этот отдельный алгоритм от фирмы 1С есть, или каждый разработчик сам его дописывает?
6 Franchiser
 
гуру
30.05.14
12:08
(5) Тебя не смущает то что в 1с 8 Субконто1- номенклатура, субконто 2 - партии материалов в эксплуатации субконто 3 - работники организаций.

Возможно у тебя бы все работало если бы порядок субконто совпадал. А так нужно допиливать алгоритм "при выгрузке субконто" и др.
7 Franchiser
 
гуру
30.05.14
12:18
Обрати внимание еще на алгоритм ОпределитьРазделУчета()

Д.б. примерно по подобию:

ТекущийСчет = Параметры.ПараметрыАлгоритмов.Получить("ТекущийСчет");
Если (Лев(ТекущийСчет.Код,3) = "ГТД")
    ИЛИ (Лев(ТекущийСчет.Код,5) = "МЦ.04")
    ИЛИ (((Лев(ТекущийСчет.Код,2) = "00") ИЛИ (ТекущийСчет.Код = "011"))
        И (ТекущийСчет.Забалансовый = 1)) Тогда
    РазделУчета = "ПрочиеСчетаБухгалтерскогоУчета";
    Возврат(РазделУчета);
Иначе
    Если (ТекущийСчет.Код = "42")
        ИЛИ (ТекущийСчет.Код = "19.5")
        ИЛИ (ТекущийСчет.Забалансовый = 1)Тогда
        Возврат("");
    КонецЕсли;
КонецЕсли;

Параметры.ТаблицаСчетовРазделовУчета.ВыбратьСтроки();
Пока Параметры.ТаблицаСчетовРазделовУчета.ПолучитьСтроку() = 1 Цикл
    
    Счета            = Параметры.ТаблицаСчетовРазделовУчета.Счета;
    СчетаГруппы        = Параметры.ТаблицаСчетовРазделовУчета.СчетаГруппы;
    СчетаИсключения    = Параметры.ТаблицаСчетовРазделовУчета.СчетаИсключения;
    РазделУчета        = Параметры.ТаблицаСчетовРазделовУчета.РазделУчета;
    
    Если Найти(Счета, ТекущийСчет.Код) <> 0 Тогда
        Если Найти(СчетаИсключения, """"+ТекущийСчет.Код+"""") = 0 Тогда
            Параметры.ПараметрыАлгоритмов.Установить("РазделУчета", РазделУчета);
            Возврат РазделУчета;
        КонецЕсли;
    КонецЕсли;
    
    Если Найти(СчетаГруппы, Лев(Строка(ТекущийСчет.Код), 2)) <> 0 Тогда
        Если Найти(СчетаИсключения, """"+ТекущийСчет.Код+"""") = 0 Тогда
            Параметры.ПараметрыАлгоритмов.Установить("РазделУчета", РазделУчета);
            Возврат РазделУчета;
        КонецЕсли;
    КонецЕсли;
    
КонецЦикла;

РазделУчета = "ПрочиеСчетаБухгалтерскогоУчета";
Возврат(РазделУчета);
Параметры.ПараметрыАлгоритмов.Установить("РазделУчета", РазделУчета);
Программист всегда исправляет последнюю ошибку.