|   |   | 
| 
 | ЗУП: программно заполнить субконто в проводке !!!!! | ☑ | ||
|---|---|---|---|---|
| 0
    
        листопад 13.09.12✎ 15:20 | 
        ЗУП, 2.5.54.1
  Надо добавить проводки в документ "Отражение зарплаты в рег.учете". На форме документа "ОтражениеЗПвРегУчете" создала кнопку, на ней процедуру, которая ищет определенную проводку в ТЧ и если находит ее, то создает еще одну, новую. Т.е. если встречается проводка в ТЧ: Дт96 (субконто "Оценочные (премия)") - Кт70 то добавляется новая проводка Дт26 - Кт70. Проблема возникает с заполнением субконто у счета 26 и счета70. Подскажите, как в новой проводке, у счета26 проставить субконто Справочники.СтатьиЗатрат "Зарплата"??? Вот код: Счет96 = ПланыСчетов.Хозрасчетный.РезервыПредстоящихРасходов; Счет70 = ПланыСчетов.Хозрасчетный.РасчетыСПерсоналомПоОплатеТруда; Счет26 = ПланыСчетов.Хозрасчетный.ОбщехозяйственныеРасходы; Субконто96 = Справочники.Резервы.НайтиПоНаименованию("Оценочные (премия)"); Субконто26 = Справочники.СтатьиЗатрат.НайтиПоНаименованию("Зарплата", Истина); ТабЧасть = ЭтотОбъект.ОтражениеВУчете; Для каждого Строка Из ТабЧасть Цикл Если Строка.СчетДт = Счет96 И Строка.СчетКт = Счет70 Тогда Если Строка.СубконтоДт1 = Субконто96 Тогда Сообщить ("НАШЛА!!!"); Проводка = ТабЧасть.Добавить(); Проводка.СчетДт = Счет26; //вот здесь как установить нужное субконто у счета 26 Если Проводка.СубконтоДт1 = Субконто26 Тогда Сообщить("Нашла субконто!!!"); КонецЕсли; Проводка.СчетКт = Счет70; Проводка.СуммаНУ = Строка.Сумма; КонецЕсли; КонецЕсли; КонецЦикла; | |||
| 1
    
        almar 13.09.12✎ 15:27 | 
        не поверишь!
  Проводка.СубконтоДт1 = Субконто26; | |||
| 2
    
        листопад 13.09.12✎ 15:31 | 
        (1) Так делала, не помогает!!!     | |||
| 3
    
        almar 13.09.12✎ 15:32 | 
        (2) посмотри, что тебе возвращает
  Субконто26 = Справочники.СтатьиЗатрат.НайтиПоНаименованию("Зарплата", Истина); | |||
| 4
    
        листопад 13.09.12✎ 15:38 | 
        (3) Вот отладчик:  http://s43.radikal.ru/i102/1209/5b/2f3620a3e53e.jpg
  Возвращает то, что нужно, но вот как присвоить это значение субконто??? | |||
| 5
    
        листопад 13.09.12✎ 15:47 | 
        +(0) Смотрю через отладчик, счету26 присваивает значение субконтоДт1 "Зарплата" в строчке:
  Проводка.СубконтоДт1 = Субконто26; Но в пользовательском режиме - это субконто у счета26 пустое!!! | |||
| 6
    
        almar 13.09.12✎ 15:54 | 
        Давай перепишем аккуратней. 
  Вот так плохо: Для каждого Строка Из ТабЧасть Цикл Проводка = ТабЧасть.Добавить(); Т.е. ты в цикле меняешь ТабЧасть, по которой у тебя цикл для каждого Лучше как-то так: Кол=ОтражениеВУчете.Количество(); Для Ном=0 по Кол-1 Цикл Стр=ОтражениеВУчете[ном]; | |||
| 7
    
        IBTM 13.09.12✎ 16:06 | 
        (5) "листопад" было у меня такое же и помнится, помнится, все же было напутано, с тем что я смотрю в предприятии, с тем что в конфигураторе...     | |||
| 8
    
        IBTM 13.09.12✎ 16:10 | 
        + к (7) ещё вспоминаю, что там помоему не соответствовали типы данных у субконт.
  Твоё субконто - СпрСсылка.СтатьиЗатрат, в предприятии там возможно не оно или составное... | |||
| 9
    
        листопад 13.09.12✎ 16:21 | 
        (7), (8) Ну надо же! Вы оказались правы!!! Там с субконто несоответсвие!!!
  Вместо: Проводка.СубконтоДт1 = Субконто26; Написала: Проводка.СубконтоДт2 = Субконто26; И в ТЧ документа, у счета26 присваивается значение субконтоДт1 "Зарплата"!!! | |||
| 10
    
        mehmat 13.09.12✎ 16:24 | 
        красивая фотка в профиле творит чудеса!     | |||
| 11
    
        Demasiado 13.09.12✎ 16:31 | 
        (10) +1     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |