Имя: Пароль:
1C
1С v8
Правила конвертации ОперацияБух из БП 2.0 в УПП 1.3
,
0 monzarek
 
29.06.16
16:57
Добрый день!
Пишу правила выгрузки документа ОперацияБух с движения по Бухгалтерским регистрам из БП 2.0 в УПП 1.3.
И вроде все выгружается и загружается по правилам, но по тем счетам, где отличаются аналитики по субконто аналитика не перегружается.
Если смотреть проблему по 20.01 счету в БП 2.0, то в УПП 1.3 загрузка проводки идет по счету 20.01.1 и проводка грузится, но не грузится аналитика потому что в УПП Субконто1 - это Подразделение, а в БП этой аналитики нет:
*в БП 2.0
20.01
-Номенклатурные группы
-Статьи затрат
*в УПП 1.3
20.01.1
-Подразделения
-Номенклатурные группы
-Статьи затрат
Проблема заключается в том, что после загрузки в типовых правилах(на которые ориентируюсь я) выполняется следующий код, который удаляет аналитики при несоответствии:
Для каждого Корреспонденция из Объект.Движения.Хозрасчетный Цикл
    Если Корреспонденция.СчетДт = ПланыСчетов.Хозрасчетный.ОсновноеПроизводствоНеОблагаемоеЕНВД Тогда
    КонецЕсли;
    Для каждого Субконто из Корреспонденция.СубконтоДт Цикл
        Ок = Ложь;
        Для каждого ВидыСубконто из Корреспонденция.СчетДт.ВидыСубконто Цикл
            Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
                Ок = Истина;
                Прервать;
            КонецЕсли;
        КонецЦикла;
        Если НЕ Ок Тогда
            Корреспонденция.СубконтоДт.Удалить(Субконто.Ключ);
        КонецЕсли;
    КонецЦикла;
    
    Для каждого Субконто из Корреспонденция.СубконтоКт Цикл
        Ок = Ложь;
        Для каждого ВидыСубконто из Корреспонденция.СчетКт.ВидыСубконто Цикл
            Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
                Ок = Истина;
                Прервать;
            КонецЕсли;
        КонецЦикла;
        
        Если НЕ Ок Тогда
            Корреспонденция.СубконтоКт.Удалить(Субконто.Ключ);
        КонецЕсли;
    КонецЦикла;
КонецЦикла;
    
Для каждого Корреспонденция из Объект.Движения.Налоговый Цикл
     Для каждого Субконто из Корреспонденция.СубконтоДт Цикл
        Ок = Ложь;
        Для каждого ВидыСубконто из Корреспонденция.СчетДт.ВидыСубконто Цикл
            Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
                Ок = Истина;
                Прервать;
            КонецЕсли;
        КонецЦикла;
        
        Если НЕ Ок Тогда
            Корреспонденция.СубконтоДт.Удалить(Субконто.Ключ);
        КонецЕсли;
    КонецЦикла;
    
    Для каждого Субконто из Корреспонденция.СубконтоКт Цикл
        Ок = Ложь;
        Для каждого ВидыСубконто из Корреспонденция.СчетКт.ВидыСубконто Цикл
            Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
                Ок = Истина;
                Прервать;
            КонецЕсли;
        КонецЦикла;
        
        Если НЕ Ок Тогда
            Корреспонденция.СубконтоКт.Удалить(Субконто.Ключ);
        КонецЕсли;
    КонецЦикла;
КонецЦикла;

Если кто-нибудь сталкивалься и решал данные проблемы подскажите как решить пожалуйста.
1 Джинн
 
29.06.16
17:09
?! А что Вы вообще делаете?

УПП ваши проводки по 20 счету совершенно по барабану. Весь производственный учет ведется на регистрах.
2 AlfaDog
 
29.06.16
17:23
(1) +1

Закройте счета а потом переносите
3 monzarek
 
29.06.16
17:27
Мне нужно перенести ОперацииБУНУ за определенный период,
а не остатки.
4 Зая Бусечка
 
29.06.16
17:28
(3) В УПП твои операции никому не нужны.
Там нужны нормальные документы
5 monzarek
 
29.06.16
17:34
Как ни странно, но Операции нужны зачем-то. С документами нет проблем - все переносится нормально.
6 Зая Бусечка
 
29.06.16
17:35
(5) Если у тебя по 20 будут ручные операции, у тебя месяц штатно не закроется.
7 Джинн
 
29.06.16
17:36
(5) Вам три раза уже сказали, что не нужны. Но Вы продолжаете долбить... Как ни странно...
8 monzarek
 
29.06.16
17:49
Задача загрузить Операции. Я же не спрашиваю целесообразно ли это, мне нужен совет по написанию правил для разного состава аналитик.
9 monzarek
 
29.06.16
17:50
20 счет не единственный
10 Джинн
 
29.06.16
18:09
(8) Еще раз для тех, у кого рация на бронепоезде - задача идиотская, т.к. архитектура УПП не предполагает ручных операций по 20 счету вообще. Как и ручных операций практически по всем остальным счетам из плана счетов за очень небольшим исключением.

Более того - подразделение в затратах для УПП является обязательной аналитикой. Если ее нет в БП, то слабо понимаю где Вы ее возьмете вообще. Максимум "заглушку" в виде "Основного подразделения" влепите. Но и это порвет УПП, т.к. вряд ли у Вас по жизни все скопом ведется.

По затратным счетам можно еще "Прочими затратами" смухлевать, а по остальным еще смотреть нужно что подсунуть.

И думать Вам нужно не о том, как пилить гирю, а о том, нужно ли ее пилить вообще. Вы взялись за работу, в которой ни хрена не понимаете. Пардон за мой французский.

Мой Вам добрый совет - перенесите только начальные остатки на какую-то дату и дальше продолжайте работать с чистого листа. Все остальное только повод для неимоверного геморроя. Более того - Вас же и крайним сделают потом.
11 Cyberhawk
 
29.06.16
20:06
(10) Может они из УПП только регл. отчетность сдают, а БП у них пиленная-перепиленная с упр. учетом и производством. Я такое один раз видел.
12 bura_limon
 
29.06.16
22:09
(11) в бп все нормально закрывается при желании
13 bura_limon
 
29.06.16
22:12
(5) с операциям не все так просто,вообщем за 1000 рублей загружу...
14 Джинн
 
29.06.16
22:20
(13) Не загрузите. Точнее свою тысячу получите, какую-нибудь херню вгрузите, а там хоть не рассветай. Задача явно сложнее, чем на полчаса работы.
15 Cyberhawk
 
30.06.16
07:23
(12) Неясно, зачем ты это мне сказал
16 monzarek
 
30.06.16
09:40
(10) Я написал что 20 счет не единственный. Французский свой поберегите для своих близких. Если по теме нечего посоветовать - тогда не нужно писать по французски.
17 Академик_
Келдыш
 
30.06.16
09:54
ТС, тебе повезло! У тебя, что называется "золотой работодатель". Работа у таких кончится никогда. Результата правда тоже не будет, но главное - чтобы тебе платили.
18 Академик_
Келдыш
 
30.06.16
09:56
*не кончится
19 Джинн
 
30.06.16
11:31
(16) Французский я применяю для бестолковых. Мои близкие к ним не относятся.

Вам уже дали советы. С обоснованием. Но Вам они не нравятся, т.к. по своей глупости взялись за работу, в которой Вы не компетентны, наобещали заказчику с три короба, а теперь Вам сложно включить заднюю передачу.

Есть единственное эффективное решение этой задачи - перенос только начальных остатков. Все остальное выполнимо чуть не в ручном режиме и с большими трудозатратами. А значит ценой. Ну и специалистом, хорошо знающим архитектуру УПП, к коим Вы не относитесь.

Продолжайте долбить дальше.
20 monzarek
 
30.06.16
11:55
(19) Кому я чего наобещал - что за бред!

Начальные остатки уже перенесли! Нужны обороты за период.
То что будет дальше уже решать нам.
Если тут кто-то знает как поправить типовые правила конвертации буду рад помощи.
21 Radkt
 
30.06.16
12:03
Посмотрите, правила переноса БП1.6 в БП2.0
там как раз ситуация, в 1.6 подразделение это субконто, а в 2.0 измерение
22 hhhh
 
30.06.16
12:06
(20) ну ведь есть на счете 20 подразделения в БП. В чем проблема у вас. Не можете подразделение перенести из одного поля в другое. Наймите кого-нибудь тогда.
23 monzarek
 
30.06.16
13:57
(21) Спасибо вот теперь бы найти правила.
(22) Вот об этом и речь, я не говорил что подразделение нельзя получить - я как раз таки знаю что его можно получить из аналитики.
24 Джинн
 
30.06.16
14:04
(20) Вы не вкуриваете? Не будет у Вас оборотов за период. Конфигурации архитектурно разные. Вам об этом уже 20 постов говорят.

Вы можете решать как угодно, но УПП посчитает все так, как заложено в ее архитектуре. Вне зависимости от Вашего желания.
25 Академик_
Келдыш
 
30.06.16
14:39
(24) Да все он вкуривает. Возможно даже пытался объяснить заказчику. Не вкуривает тот. поэтому успехов и денег/плющек/зарплат с дебилов побольше срубить в итоге.
26 Джинн
 
30.06.16
14:44
(25) На дураков работать - себя не уважать. Закончится все плачевно для автора - пошлют на фиг, кинут с оплатой и раструбят на весь мир, что "программер лох... полгода возился, кучу бабла снял, а ни хрена не работает... УПП г.но, в бухии было все нормально". Хотя задача была неадекватная изначально.
27 Академик_
Келдыш
 
30.06.16
14:46
(26) В такие моменты нужно грамотно вести бумажки.
28 monzarek
 
30.06.16
14:57
(25) Ну хоть кто-то понял мою позицию.
А Джину было бы не плохо покурить и поубавить свою заносчивость.
29 Джинн
 
30.06.16
15:00
(28) Не курю. И дело не в заносчивости. Дело в том, что Вы двигаетесь в неверном направлении. И даже не понимаете этого. Более того, когда Вам об этом говорят, Вы еще и обижаетесь.
30 monzarek
 
30.06.16
15:18
(29) Омг. Суть вопроса то не в том как правильно, а где можно посмотреть реализацию данного вопроса. И очевидно же что этот вопрос не только по 20 счету - сколько раз это объяснять то? То что потом проблемы будут с закрытием я знаю. УПП давно не типовая уже. Месяц у нас тут закрывают вообще по другому алгоритму.
31 Джинн
 
30.06.16
15:28
(30) Нигде. Я же писал.

По 20 счету Вам придется конвертировать операцию в различные документы. Например если Д20 К10, то в Требование-накладную. А если Д20 К76, то в "Прочие затраты" (местами возможно в ПТиУ). А если Д20 К60, то в "Поступление товаров и Услуг".

Вариаций очень много быть в зависимости от того, что в этих проводках. Отсюда и требования к знанию архитектуры УПП. Но принцип остается простой - учет в УПП на регистрах. Бухоперации в УПП недопустимы почти по всем счетам учета.

Вы убъете массу времени на перенос, выверку, поиск причин того, что УПП закроет период с результатом, отличным от БП. По налоговому учету вообще песня будет.

Действие, сопоставимое с закатом Солнца вручную.
32 monzarek
 
30.06.16
16:18
(31) Спорить с моими руководителя примерно так же бесполезно как и объяснять вам мою ситуацию)
33 hhhh
 
30.06.16
16:28
(31) вы не вкуриваете. В БП ведь всё это тоже есть. Неужели верите, что бухи ручными проводками фигачат всё?
34 Джинн
 
30.06.16
16:33
(32) Коллега, Вы снова на меня обидитесь, но проблема снова в Вас. Значит Вы себя так позиционируете, что Вам можно дать бестолковую задачу, не спрашивая мнения. Значит у Вас нет должного авторитета, который позволяет оттаивать свою точку зрения. Но его не заработать, если безмолвно выполнять все, что захотят.

Но в этом вопросе простых советов не бывает. Тут годами нужно нарабатывать себе на "лампасы".

(33) Нет этого в БП. И быть не может. Принципы построения разные у конфигураций. Можно попытаться добиться такой же оборотки в УПП, как в БП. Затрахаясь насмерть в попытках подгонки документов под требуемый результат. Но не более.
35 hhhh
 
30.06.16
16:46
(34) всё есть. И документ Поступление товаров и Услуг. И требование накладная. И отчет производства за смену.

Поэтому то, что нужно автору - это какая-то левая проводка, закрытие каких-то висячих копеек. Можно конечно ее в какой-то документ преобразовать, но это обойдется дороже заказчику.
36 Джинн
 
30.06.16
16:50
(35) И РСВ, который закроет все по-другому :)
37 bura_limon
 
30.06.16
20:58
(14) что не загружу,у меня давно уже настроин обмен операции из Упп в бухг,и уже без разницы какие там счета и какие там субконто
38 bura_limon
 
30.06.16
21:02
(37) + и наоборот
39 monzarek
 
01.07.16
08:53
Да что ж такое то))) Джин вы любите себя привозносить - это просто смешно... Фильтруйте немного свои словечки. Все уже поняли что вы ас в лампасах. Ваше мнение я учел. Можете больше не писать одно и тоже. Не надо флудить - дайте высказаться другим.
40 monzarek
 
01.07.16
16:45
В общем решил проблему с заполнением субконто.
Для группы свойств Хозрасчетный, в конвертации свойства СубконтоДт или Субконто Кт необходимо Перед выгрузкой вставить код:
Если Лев(ОбъектКоллекции.СчетДт.Код,2) = "20"
    ИЛИ Лев(ОбъектКоллекции.СчетДт.Код,2) = "25" Тогда
    НоваяКоллекция = Новый Соответствие;
    
    //ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НайтиПоНаименованию("Подразделения");
    ВидСубконто = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.СоздатьЭлемент();
    ВидСубконто.Наименование = "Подразделения";
    ВидСубконто.ТипЗначения = Новый ОписаниеТипов("СправочникСсылка.ПодразделенияОрганизаций");
    НоваяКоллекция.Вставить(ВидСубконто,ОбъектКоллекции.ПодразделениеДт);
    Для Каждого СтрокаКоллекции ИЗ ОбъектКоллекции.СубконтоДт Цикл        
        Если СтрокаКоллекции.Ключ <> ВидСубконто Тогда
            НоваяКоллекция.Вставить(СтрокаКоллекции.Ключ,СтрокаКоллекции.Значение);
            Сообщить(СтрокаКоллекции.Значение);
        КонецЕсли;
    КонецЦикла;
    
    Значение = НоваяКоллекция;    
КонецЕсли;
Ошибка? Это не ошибка, это системная функция.