|
v7: Получить значение субконто проводки 8.2 | ☑ | ||
---|---|---|---|---|
0
eshtrey
21.10.15
✎
10:16
|
Подключаюсь по COM из 7.7 к 8.2. Хочу получить движения некоторых документов. Документы выбираю запросом. Из движений по бух. счетам не могу получить значения субконто Дт и Кт. Ругается на Проводка1с8.СубконтоДт.Получить(...), но в 8ке такая конструкция отрабатывает без ошибок.
v8 = Коннектор.Connect("File="); Запрос = v8.NewObject("Запрос"); Запрос.Текст = " |ВЫБРАТЬ | ВыпискаБанка.Ссылка |ИЗ | Документ.ВыпискаБанка КАК ВыпискаБанка |ГДЕ | (ВыпискаБанка.Организация.Код = &КодОрганизации) |И (ВыпискаБанка.Дата МЕЖДУ &НачДата И &КонДата) | И (ВыпискаБанка.Проведен) "; Запрос.УстановитьПараметр("НачДата", НачДата); Запрос.УстановитьПараметр("КонДата", КонДата); Запрос.УстановитьПараметр("КодОрганизации", ВыбОрганизация); Результат = Запрос.Выполнить().Выгрузить(); ТЗ.НоваяКолонка("Документ", "Строка"); Для Сч = 0 По Результат.Количество() - 1 Цикл ТЗ.НоваяСтрока(); СтрокаТЧ = Результат.Получить(Сч); ТЗ.Документ = СокрЛП(СтрокаТЧ.Ссылка.Номер) + " от " + СокрЛП(СтрокаТЧ.Ссылка.Дата); Движения = СтрокаТЧ.Ссылка.ПолучитьОбъект().Движения.Основной; Движения.Прочитать(); Проводки = Движения.Выгрузить(); Для Пр = 0 По Проводки.Количество() - 1 Цикл Проводка1с8 = Проводки.Получить(Пр); Сообщить(Проводка1с8.СчетДт.Код + " - " + Проводка1с8.СчетКт.Код + " " + Проводка1с8.Сумма); ТаблицаСубконтоДт = Проводка1с8.СчетДт.ВидыСубконто; Для К = 1 По ТаблицаСубконтоДт.Количество() Цикл ТекущаяСтрока = ТаблицаСубконтоДт.Получить(К); Сообщить("Субконто Дт"+ТекущаяСтрока.НомерСтроки +" - "+Проводка1с8.СубконтоДт.Получить(ТекущаяСтрока.ВидСубконто)); КонецЦикла; КонецЦикла; КонецЦикла; |
|||
1
lxndr
21.10.15
✎
10:35
|
смени
Проводка1с8.СубконтоДт.Получить(ТекущаяСтрока.ВидСубконто) На Проводка1с8.СубконтоДт.[ТекущаяСтрока.ВидСубконто] |
|||
2
eshtrey
21.10.15
✎
10:42
|
(1)такой вариант выдает ошибку в конфигураторе
Сообщить("Субконто Дт"+ТекущаяСтрока.НомерСтроки +" - "+Проводка1с8.СубконтоДт<<?>>[ТекущаяСтрока.ВидСубконто]); {D:\Obrabotki\Соединение77_82.ert(49)}: Ожидается символ ')' я так тоже пробовал |
|||
3
eshtrey
21.10.15
✎
14:54
|
никто не вытягивал субконто из 8ки?
|
|||
4
mc lammer
21.10.15
✎
14:59
|
ТекущаяСтрока = ТаблицаСубконтоДт.Получить(К);
попробуй замени на ТекущаяСтрока = ТаблицаСубконтоДт.Получить(К-1); |
|||
5
eshtrey
21.10.15
✎
15:06
|
Поле агрегатного объекта не обнаружено (СубконтоДт)
|
|||
6
HawkEye
21.10.15
✎
15:53
|
(3) я так делал
ДокБП.счетЗатрат = База.ПланыСчетов.Хозрасчетный.НайтиПоКоду(СчетЗатрат); ДокБП.ПодразделениеЗатрат = глмВернутьПоКоду8(База, База.Справочники.ПодразделенияОрганизаций, Подразделение.КодВБух8, Подразделение.Наименование); колсубконто = ДокБП.счетЗатрат.ВидыСубконто.Количество(); для сч = 1 по колсубконто Цикл если сч = 1 Тогда ДокБП.Субконто1 = ДокБП.счетЗатрат.ВидыСубконто.Получить(сч - 1).ВидСубконто.ТипЗначения.привестиЗначение(ДокБП.Субконто1); ИначеЕсли сч = 2 Тогда ДокБП.Субконто2 = ДокБП.счетЗатрат.ВидыСубконто.Получить(сч - 1).ВидСубконто.ТипЗначения.привестиЗначение(ДокБП.Субконто2); Иначе ДокБП.Субконто3 = ДокБП.счетЗатрат.ВидыСубконто.Получить(сч - 1).ВидСубконто.ТипЗначения.привестиЗначение(ДокБП.Субконто3); КонецЕсли; КонецЦикла; |
|||
7
HawkEye
21.10.15
✎
15:54
|
да... ну и вначале
ВидДока = База.Документы.ТребованиеНакладная; СоздалиНовый = 0; Если СокрЛП(номерБух8) <> "" Тогда //есть номер бух док = ВидДока.НайтиПоНомеру(номерБух8,ДатаДок); Если док.пустая() = -1 Тогда создалиновый = 1; ДокБП = ВидДока.СоздатьДокумент(); ДокБП.Номер = номерБух8; Иначе ДокБП = Док.ПолучитьОбъект(); КонецЕсли; Иначе создалиновый = 1; ДокБП = ВидДока.СоздатьДокумент(); КонецЕсли;////СОЗДАЕМНОВЫЙ |
|||
8
eshtrey
21.10.15
✎
16:28
|
так мне надо получить значение субконто из проводки(движения)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |