|
Перечисление через COM соединение | ☑ | ||
---|---|---|---|---|
0
Rastaman55
21.09.16
✎
18:03
|
Подключаюсь по Сom из 8.3 к 7.7
Док = База.CreateObject("Документ.РасходнаяНакладная"); Пока Док.ПолучитьДокумент() = 1 Цикл Док.ВыбратьСтроки(); Пока Док.ПолучитьСтроку()=1 Цикл дальше пытаюсь получить значение док.Товар.СтавкаНДС который в 7.7 имеет тип перечисления.ЗначенияНДС Док.Товар.СтавкаНДС.Идентификатор(); Док.Товар.СтавкаНДС.ПорядковыйНомер(); не работают пишет метод не обнаружен Как еще можно получить строку или номер из перечисления данного реквизита документа? |
|||
1
Torquader
21.09.16
✎
21:40
|
Попробуй английскими синонимами воспользоваться.
|
|||
2
Torquader
21.09.16
✎
21:41
|
А ещё я делал так - загонят в список значений все значения перечисления и просил найти элемент в списке - 1С-то свой элемент понять может - и должна найти - если не нашла, то значение пустое.
|
|||
3
Guk
21.09.16
✎
21:55
|
вообще
ЗначениеПоИдентификатору(<?>) ValueByIdentifier(<?>) Синтаксис: ЗначениеПоИдентификатору(<Идентификатор>) Назначение: Возвращает значение перечисления, соответствующее идентификатору в конфигураторе. Если не найдено - то пустое значение. Параметры: <Идентификатор> - строковое выражение. Идентификатор значения перечисления, заданный в конфигураторе. только есть у меня сомнение, что в 8.3 идентификатор или порядковый номер совпадает с идентификатором или порядковым номером в 7.7... |
|||
4
Torquader
22.09.16
✎
00:04
|
(3) В чём проблема - берём и через метаданные вычитываем из семёрки все идентификаторы перечисления - и делаем с ними всё, что хочется.
|
|||
5
Rastaman55
22.09.16
✎
10:25
|
То что вы предлагаете это уже конечный шаг когда известен номер, идентификатор или значение в виде строки, а как собственно при таком подключении получить эти данные вначале? Все что есть это Док.Товар.СтавкаНДС который 1с сообщает как COM объект, что с ним можно сделать чтобы как то его идентифицировать?
Пробовал Если Док.Товар.СтавкаНДС= База.Перечисление.ЗначенияНДС.ОсновнаяСтавкаНДС тогда так тоже не работает |
|||
6
Torquader
22.09.16
✎
10:51
|
(5) Сделай список или таблицу со всеми значениями и попробуй своё значение найти в ней через НайтиЗначение.
|
|||
7
Rastaman55
22.09.16
✎
11:18
|
Один человек подсказал, всего то метод дописать изза того что это периодический тип в 1с 7.7, а я неск часов не мог разобраться.
ЗначениеСтавки=Док.Товар.СтавкаНДС.Получить().Идентификатор(); Сообщить(ЗначениеСтавки); Сообщило- ОсновнаяСтавкаНДС, дальше уже сделаю соответствие в базе данному тексту. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |