|
Чтение табличной части документа, полеченного через com соединение | ☑ | ||
---|---|---|---|---|
0
Nextor257
22.06.14
✎
18:38
|
Необходимо читать табличную часть документа, полученного через com соединение. Как это сделать? В коде это в //-----Проверка ТЧ Документов
//-----------Мой код----------------------------------- Функция ВыполнитьСинхронизацию() Экспорт // Создание объекта-коннектора cntr = Новый COMObject("V82.COMConnector"); // создается объект COM-соединение connection = cntr.Connect("File=""C:\Base 1C\Бух копия от 27.05.2014"";Usr=""11111"";Pwd=""1111122222"";"); ДокПоступление = connection.Документы.ПоступлениеТоваровУслуг; Совпадение=0; Счетчик=0; Проверено=0; Считано=0; Поступление=ДокПоступление.Выбрать(); Пока Поступление.Следующий() Цикл Если Считано>2 Тогда //Только для первых , потом удалить Прервать; КонецЕсли; Если Поступление.РеквВыгружать=Ложь Тогда ДокументНайден=Ложь; иуиПоступление=Документы.иуиПоступлениеИмущества.Выбрать(); Пока иуиПоступление.Следующий() Цикл Если Поступление.Number<>иуиПоступление.НомерБП Тогда //-----Если документ уже есть //-----Проверка проведенности ДокументНайден=Истина; Если Поступление.Posted=Ложь Тогда Сообщение=Новый СообщениеПользователю; Сообщение.Текст="Отправить уведомление что документ распроведен в БП"; Сообщение.Сообщить(); Прервать; //----Никахих дейсвтий больше не делаем КонецЕсли; //-----Проверка ТЧ Документов СтрТовар=Поступление.Товары.Выбрать(); Пока СтрТовар.Следующий() Цикл ПроверкаКод=СтрТовар.Код; ПроверкаКоличество=СтрТовар.Количество; Для Каждого иуиСтр ИЗ иуиПоступление.ТоварыИзБухгалтерии Цикл Если СтрТовар.Код=иуиСтр.Код И СтрТовар.Количество=иуиСтр.Количество Тогда Совпадение=Совпадение+1; КонецЕсли;; КонецЦикла; Счетчик=Счетчик+1; КонецЦикла; |
|||
1
Wobland
22.06.14
✎
18:42
|
а запросом?
|
|||
2
Dmitry1c
22.06.14
✎
18:47
|
Точно также, как и без com-соединения.
|
|||
3
Umga2002
22.06.14
✎
18:50
|
Хотя бы платформу указали.....
|
|||
4
Wobland
22.06.14
✎
18:53
|
(3) V82. а разницы?
|
|||
5
Nextor257
22.06.14
✎
19:04
|
(2) Без ком соединения это вместо "Пока СтрТовар.Следующий() Цикл" будет "Для Каждого Строка ИЗ Поступление.Товары" Но при таком раскладе он выдаст ошибку.
(1) Запрос писать к чему? К таблице Товары в полученном документе, то есть "ВЫБРАТЬ ... ИЗ Поступление.Товары" или в запрос писать в самом ком соединении? Напишите пример. Как мне в этой части кода Для Каждого иуиСтр ИЗ иуиПоступление.ТоварыИзБухгалтерии Цикл Если СтрТовар.Код=иуиСтр.Код И СтрТовар.Количество=иуиСтр.Количество Тогда Совпадение=Совпадение+1; КонецЕсли;; КонецЦикла; Сравнивать две разные таблицы |
|||
6
Nextor257
22.06.14
✎
19:12
|
Платформа 8.2.19
|
|||
7
Nextor257
22.06.14
✎
19:42
|
Ясно, никто ничего не знает. Спасибо, завтра в офисе спрошу. Вы я смотрю совсем в этом не разбираетесь, гении 1С)))
|
|||
8
дедушка Вах
22.06.14
✎
19:53
|
а через опу через смд залезть в табличнубю не пробовал?
ЗЫ я бы сразу расстрелял, повезло ещё что воскресенье |
|||
9
Вазелин
22.06.14
✎
20:14
|
...полечили значит документ через com-соединение...
|
|||
10
Фокусник
22.06.14
✎
20:26
|
(7) ХЗ, что у тебя не получается, нет конкретики. С ТЧ по СОМ можно работать точно также, как внутри базы.
(5) сделай ТЗ (колонки Код, Количество), помести в нее данные сравниваемых ТЧ, из одной Количество, из другой -Количество, сверни, если в Кошичество 0, то строки равные если +, лишнее в первой ТЧ, минус - во второй. |
|||
11
ДенисЧ
22.06.14
✎
20:45
|
у меня, кстати, метла свободная образовалась...
|
|||
12
Nextor257
22.06.14
✎
20:50
|
Дедушка Вах, я вас не понял. Слишком много сокращений.
Фокусник спасибо, приму к сведению. |
|||
13
arccos6pi
23.06.14
✎
00:26
|
Для Каждого Строка ИЗ Поступление.Ref.Товары
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |