|
Работа с перечислением через COM | ☑ | ||
---|---|---|---|---|
0
offroad11
19.07.18
✎
12:34
|
Подключился я к базе через СОМ соединение. Потребовалось сравнить перечисление примерно таким вот образом:
цомБаза.Перечисления.СтавкиНДС.БезНДС = цомБаза.Документ.Тч[0]СтавкаНдс Долго не мог понять, почему не равны. Написал цикл, так же не понял в чём прикол.. Для Каждого Стрч из цомБаза.Перечисления.ставкиндс Цикл Если нс.ВидБухгОперации.СтавкаНДС = Стрч Тогда Сообщить("ффффффффффффффффф"); // не выводит КонецЕсли; Если нс.СтавкаНДС = Стрч Тогда Сообщить("яяяяяяяяяяяяяяяяя"); // не выводит КонецЕсли; Если ББ.Перечисления.СтавкиНДС.БезНДС = стрч Тогда Сообщить("чччччччччччччччччч"); // а тут выводит КонецЕсли; КонецЦикла; |
|||
1
lodger
19.07.18
✎
12:48
|
что такое
нс.ВидБухгОперации.СтавкаНДС нс.СтавкаНДС ББ.Перечисления.СтавкиНДС.БезНДС ? |
|||
2
offroad11
19.07.18
✎
12:50
|
(1) Прошу прощения, не пояснил,
нс = цомБаза.Документ.Тч[0]СтавкаНдс (добавленная новая строка) ВидБухгОперации (справочник, где указана ставка ндс) бб = цомБаза; (база бухгалтерии) |
|||
3
lodger
19.07.18
✎
13:01
|
(2) (добавленная новая строка) - в новой строке значения реквизитов пустые же?
|
|||
4
offroad11
19.07.18
✎
13:02
|
(3) нет, я предварительно их заполнил
нс.ВидБухгОперации = ББ.Справочники.ВидБухгОперации.НайтиПоКоду("Код"); нс.СтавкаНДС = нс.ВидБухгОперации.СтавкаНДС; |
|||
5
offroad11
19.07.18
✎
13:03
|
(3) На всякий случай даже проверил.
бб.значениезаполнено(нс.СтавкаНДС) Возвращает истину |
|||
6
lodger
19.07.18
✎
13:07
|
для начала я бы избавился от двоений вроде цомБаза и бб - хрен его знает как себя ведет ком-коннектор когда их суют туда-сюда в разные переменные и общаются с каждой из них.
|
|||
7
offroad11
19.07.18
✎
13:09
|
(6) Никакого двоения нету, я для мисты заменил бб на цом базу, что бы пользователям было понятно
|
|||
8
Deon
19.07.18
✎
13:22
|
Ты сравнивай через XMLСтрока
цомБаза.XMLСтрока(цомБаза.Перечисления.СтавкиНДС.БезНДС) = цомБаза.XMLСтрока(цомБаза.Документ.Тч[0]СтавкаНдс) |
|||
9
offroad11
19.07.18
✎
13:25
|
(8) Да! Сработало, спасибо! А почему так? Почему 1с ссылки не хочет сравнивать?
|
|||
10
olegves
19.07.18
✎
13:28
|
(9) у тебя не ссылки а СОМ-объекты
|
|||
11
offroad11
19.07.18
✎
13:37
|
(10) Как я понял СОМ объекты нельзя сравнить ?
|
|||
12
youalex
19.07.18
✎
13:44
|
(11) сравнивай внутри контекста базы COM. Через СравнениеОбъектов (на стороне COM), например. Или приводи к примитивам. Через цомБаза.XMLСтрока() например.
|
|||
13
youalex
19.07.18
✎
13:45
|
(12) *СравнениеЗначений
|
|||
14
SleepyHead
гуру
19.07.18
✎
13:57
|
XMLСтрока()
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |