![]() |
![]() |
|
v8: Как программно заполнить поля Субконто в ОперацияБух? | ☑ | ||
---|---|---|---|---|
0
FightTerm
25.05.11
✎
17:34
|
Просветите пожалуйста как заполнить поля (Дт)Субконто1, (Дт)Субконто2 и (Кт)Субконто1, (Кт)Субконто2 в ОперацияБух если извесен КОСГУ(Дт), КОСГУ(Кт), (Дт)Счет и (Кт)Счет. Я заполняю поля через РегистрыБухгалтерии.
Когда смотрю ПланыСчетов ЕПСБУ, то там напротив счетов в колонках Субконто1 и Субконто2 отображены справочники из которых должны браться значения для заполнения полей Субконто. |
|||
1
nop
25.05.11
✎
17:35
|
что ?
|
|||
2
FightTerm
25.05.11
✎
18:02
|
(1) Много и непонятно?))
Вот как я заполнял поля счетов и сумм: ДБФ = Новый XBase; ДБФ.ОткрытьФайл(ИмяФайла); Если ДБФ.Открыта() Тогда СуммаОперации = 0; Попытка НачатьТранзакцию(); ДокОперация = Документы.ОперацияБух.СоздатьДокумент(); ДокОперация.Дата = ДатаДокумента; ДокОперация.Учреждение = Организация; ДокОперация.Содержание = Содержание; ДокОперация.Записать(); ДокОперацияСсылка = ДокОперация.Ссылка; //Создать набор записей. РегЕПСБУ = РегистрыБухгалтерии.ЕПСБУ.СоздатьНаборЗаписей(); РегЕПСБУ.Отбор.Регистратор.Значение = ДокОперацияСсылка; РегЕПСБУ.Отбор.Регистратор.Использование = Истина; ДБФ.Первая(); Пока Не ДБФ.Вконце() Цикл Состояние("Обрабатывается запись " + ДБФ.НомерЗаписи()); ДтСчёт = ПланыСчетов.ЕПСБУ.НайтиПоКоду(ДБФ.DT); //Значение счёта Дт КтСчёт = ПланыСчетов.ЕПСБУ.НайтиПоКоду(ДБФ.KT); //Значение счёта Кт ДтКОСГУ = Справочники.КОСГУ.НайтиПоКоду(ДБФ.KOSGUD); КтКОСГУ = Справочники.КОСГУ.НайтиПоКоду(ДБФ.KOSGUK); РегЗапись = РегЕПСБУ.Добавить(); РегЗапись.Период = ДатаДокумента; РегЗапись.Регистратор = ДокОперацияСсылка; РегЗапись.Учреждение = Организация; РегЗапись.Содержание = ДБФ.NAZ; РегЗапись.СчетДт = ДтСчёт; // Заполнить счет дебета РегЗапись.СчетКт = КтСчёт; // Заполнить счет кредита РегЗапись.Сумма = ДБФ.SUM1; РегЗапись.КБКДт = ДБФ.BUH; РегЗапись.КБККт = ДБФ.BUH; //РегЗапись.СубконтоДт = ДтКОСГУ; //РегЗапись.СубконтоКт = КтКОСГУ; СуммаОперации = СуммаОперации + ДБФ.SUM1; ДБФ.Следующая(); КонецЦикла; РегЕПСБУ.Записать(); ДокОперация.СуммаОперации = СуммаОперации; ДокОперация.Записать(); ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); Сообщить(ОписаниеОшибки(), СтатусСообщения.ОченьВажное); КонецПопытки; Предупреждение("Обработка завершена!"); Иначе Предупреждение("Не удалось открыть файл " + ИмяФайла, 5); КонецЕсли; |
|||
3
FightTerm
25.05.11
✎
18:06
|
(2) эти поля заполняются отлично:
РегЗапись.Период = ДатаДокумента; РегЗапись.Регистратор = ДокОперацияСсылка; РегЗапись.Учреждение = Организация; РегЗапись.Содержание = ДБФ.NAZ; РегЗапись.СчетДт = ДтСчёт; // Заполнить счет дебета РегЗапись.СчетКт = КтСчёт; // Заполнить счет кредита РегЗапись.Сумма = ДБФ.SUM1; А вот дальше поля Субконто не хотят заполняться, точнее я не знаю как это сделать... Также не заполняется и КБК ( |
|||
4
Живой Ископаемый
25.05.11
✎
18:08
|
РегЗапись.СубконтоДт[0] = ЗначениеПервойАналитикиДт;
|
|||
5
SviFt
25.05.11
✎
18:18
|
(0) заполняй через типовую процедуру ЗаполнитьСубконто где то в общих модулях есть
|
|||
6
IKSparrow
25.05.11
✎
18:21
|
Операция.СчетДт = СтрВыгрузки.Дебет;
Попытка Операция.СубконтоДт.Вставить(Операция.СчетДт.ВидыСубконто.Получить(0).ВидСубконто,СтрВыгрузки.ДтСубконто1); Исключение КонецПопытки; Попытка Операция.СубконтоДт.Вставить(Операция.СчетДт.ВидыСубконто.Получить(1).ВидСубконто,СтрВыгрузки.ДтСубконто2); Исключение КонецПопытки; Попытка Операция.СубконтоДт.Вставить(Операция.СчетДт.ВидыСубконто.Получить(2).ВидСубконто,СтрВыгрузки.ДтСубконто3); Исключение КонецПопытки; Попытка Операция.СубконтоДт.Вставить(Операция.СчетДт.ВидыСубконто.Получить(3).ВидСубконто,СтрВыгрузки.ДтСубконто4); Исключение КонецПопытки; Попытка Операция.СубконтоДт.Вставить(Операция.СчетДт.ВидыСубконто.Получить(4).ВидСубконто,СтрВыгрузки.ДтСубконто5); Исключение КонецПопытки; |
|||
7
FightTerm
25.05.11
✎
18:31
|
Спасибо за советы! К сожалению сейчас нет времени попытаться это сделать (уезжаю), но через пару дней обязательно попробую и отпишусь что получилось!..
|
|||
8
FightTerm
28.05.11
✎
19:34
|
(4) Не совсем понятно, что означает "ЗначениеПервойАналитикиДт". Если можете проясните пожалуйста!
Пробовал так: РегЗапись.СубконтоДт[0] = ДБФ.KOSGUD; и так: РегЗапись.СубконтоДт[0] = ДтКОСГУ; Результат нулевой( (5) Типовая процедура называется УстановитьСубконто и по идее в 8.1 должна находится в Общие модули -> БухгалтерскийУчет ... но её там почему-то нет PS: Конфигурация ББУ 1.0 |
|||
9
FightTerm
29.05.11
✎
13:10
|
Выложите пожалуйста код процедуры УстановитьСубконто, которая находится по ветке Общие модули -> БухгалтерскийУчет для 8.1!
|
|||
10
toys
29.05.11
✎
13:59
|
тебе же написали в (6)
|
|||
11
FightTerm
29.05.11
✎
14:10
|
в (6) не пойму, что означают переменные Операция и СтрВыгрузки!
Объясните пожалуйста для "особо одарённых" на пальцах... Сам не могу разобраться! |
|||
12
and2
29.05.11
✎
14:30
|
автор, ищи в конфе по слову "УстановитьСубконто"
|
|||
13
toys
29.05.11
✎
14:32
|
РегЗапись.СубконтоДт.Вставить(СчетДт.ВидыСубконто.Получить(0).ВидСубконто,ДтКОСГУ)
|
|||
14
FightTerm
29.05.11
✎
15:55
|
(12) Да вроде уже всё пересмотрел... Нету (
Есть только: СубконтоКОСГУНачалоВыбора; ОбработатьНачалоВыбораСубконто; и ОбработатьВыборСубконто... |
|||
15
Mitriy
29.05.11
✎
16:35
|
а можно еще выгрузить набор в ТЗ, заполнить ТЗ, а потом загрузить в набор... для гурманов...
|
|||
16
FightTerm
29.05.11
✎
17:24
|
Mitriy, ну это для меня вообще пока сложно...
Мне бы что попроще и попонятнее))) |
|||
17
FightTerm
29.05.11
✎
17:25
|
это ведь мой первый опыт кодить в 1с))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |