|
Несоответствие типов | ☑ | ||
---|---|---|---|---|
0
galimovmaks
21.08.13
✎
07:49
|
надо сделать сделать печатную форму в word. заполнить данные об организации, которые хранятся в регистре сведений контактная информация. пишу следущий код
Функция Печать() Экспорт КонИн = РегистрыСведений.КонтактнаяИнформация; Организация = Строка(СсылкаНаОбъект.Организация); Контрагент = Строка(СсылкаНаОбъект.Контрагент); ОтборРегистра = Новый Структура("Объект, Тип, Вид"); ОтборРегистра.Вид=Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации; Адрес = КонИн.Выбрать(ОтборРегистра.Вид); выдает ошибку {ВнешняяОбработка.ПечатьПорядокЛьготногоИТС.МодульОбъекта(25)}: Ошибка при вызове метода контекста (Выбрать) Адрес = КонИн.Выбрать(ОтборРегистра.Вид,); по причине: Несоответствие типов (параметр номер '1') Подскажите что за ошибка? |
|||
1
Wobland
21.08.13
✎
07:50
|
это значит, что первым параметром идёт хрень
|
|||
2
galimovmaks
21.08.13
✎
07:52
|
(0) {ВнешняяОбработка.ПечатьПорядокЛьготногоИТС.МодульОбъекта(25)}: Ошибка при вызове метода контекста (Выбрать)
Адрес = КонИн.Выбрать(ОтборРегистра.Вид,); по причине: Несоответствие типов (параметр номер '1') |
|||
3
galimovmaks
21.08.13
✎
07:53
|
(1) а что тогда будет не хрень?
|
|||
4
razlagator
21.08.13
✎
07:53
|
(2) ОтборРегистра.Вид - этого быть не должно
|
|||
5
Wobland
21.08.13
✎
07:53
|
конин - это такое вещество, которое препятствует чтению СП?
|
|||
6
Wobland
21.08.13
✎
07:54
|
(3) структура
|
|||
7
razlagator
21.08.13
✎
07:54
|
(3) Юзай запрос (с)
|
|||
8
galimovmaks
21.08.13
✎
07:55
|
(5) конин это регистр сведений контактная информация
|
|||
9
Wobland
21.08.13
✎
07:56
|
(8) так что ж тебе мешает взять и почитать?
|
|||
10
galimovmaks
21.08.13
✎
07:58
|
(7) мне по определенному ОтборРегистра.Вид нужно вывести определенную информацию. я выбираю Вид из Справочники.ВидыКонтактнойИнформации там есть и адрес и телефон и майл. а эта определенная инфа хранится в регистре, вот мне ее надо от туда получить
|
|||
11
Wasya
21.08.13
✎
07:58
|
Это как?
В коде: Адрес = КонИн.Выбрать(ОтборРегистра.Вид); В сообщении об ошибке: Адрес = КонИн.Выбрать(ОтборРегистра.Вид,); |
|||
12
galimovmaks
21.08.13
✎
07:59
|
(9) вот написано метод выбрать
|
|||
13
Wobland
21.08.13
✎
07:59
|
(10) думаю, он уже понял
|
|||
14
Rie
модератор
21.08.13
✎
07:59
|
(10) Внимательно почитай (6).
Потом - открой встроенную справку и прочитай, что это за структура. |
|||
15
galimovmaks
21.08.13
✎
08:00
|
(11) без запятой) одна ошибка
|
|||
16
galimovmaks
21.08.13
✎
08:09
|
мда.. темный лес
|
|||
17
Wobland
21.08.13
✎
08:10
|
(16) какое слово не понятно?
|
|||
18
galimovmaks
21.08.13
✎
08:12
|
да там понятно. не работает ни чего
|
|||
19
Starhan
21.08.13
✎
08:14
|
И фамилия говорящая....
п.с. простите не удержался, просто юмор. |
|||
20
Starhan
21.08.13
✎
08:16
|
Встань на слово Выбрать. Нажми синтаксис-помощник. И прочитай про метод, может там даже пример будет.
|
|||
21
Rie
21.08.13
✎
08:18
|
(18) Какие изменения внёс в код после чтения этой ветки и встроенной справки по методу Выбрать?
|
|||
22
Rie
21.08.13
✎
08:25
|
(0) А то долго будет...
ОтборРегистра = Новый Структура("Объект, Вид"); ОтборРегистра.Объект = СсылкаНаОбъект.Организация; ОтборРегистра.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации; Адрес = РегистрыСведений.КонтактнаяИнформация.Выбрать(ОтборРегистра); При этом Адрес - тоже будет структурой. |
|||
23
Wobland
21.08.13
✎
08:26
|
(22) выборкой он будет
|
|||
24
galimovmaks
21.08.13
✎
08:27
|
КонИн = РегистрыСведений.КонтактнаяИнформация;
Организация = Строка(СсылкаНаОбъект.Организация); Контрагент = Строка(СсылкаНаОбъект.Контрагент); ОтборРегистра = Новый Структура("Вид"); //ОтборРегистра.Вставить("Значение",Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации); ОтборРегистра.Вид =Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации; Адрес = Строка( КонИн.Выбрать(ОтборРегистра) ); сделал так. теперь он просто пустую строку в документ вставляет |
|||
25
Rie
21.08.13
✎
08:27
|
(23) Сам уже туплю :-(
|
|||
26
Rie
21.08.13
✎
08:29
|
(24) Вместо Выбрать - используй Получить. Указав при этом объект.
Или выбирай из Адрес. |
|||
27
Wobland
21.08.13
✎
08:29
|
(24) видимо, выборка имеет пустое строковое представление. ни разу не делал так, даже не знаю ;)
|
|||
28
galimovmaks
21.08.13
✎
08:31
|
(26) {ВнешняяОбработка.ПечатьПорядокЛьготногоИТС.МодульОбъекта(24)}: Ошибка при вызове метода контекста (Получить)
Адрес = Строка( КонИн.Получить(ОтборРегистра) ); по причине: Недопустимое значение параметра (параметр номер '1') |
|||
29
Wobland
21.08.13
✎
08:32
|
(28) ты здесь соврал или в (24)?
|
|||
30
Wobland
21.08.13
✎
08:32
|
(29) тфу.. марш читать про получить теперь
|
|||
31
Rie
21.08.13
✎
08:33
|
(28) У Получить (в отличие от Выбрать) - надо указывать _все_ измерения.
|
|||
32
Starhan
21.08.13
✎
08:35
|
Если так писать
Строка( КонИн.Выбрать(ОтборРегистра)) и с "Получить" ничего не выйдет |
|||
33
galimovmaks
21.08.13
✎
08:36
|
(32) я так и пишу
|
|||
34
Wobland
21.08.13
✎
08:37
|
(33) цель достигнута?
|
|||
35
galimovmaks
21.08.13
✎
08:37
|
Вариант синтаксиса: Для непериодического регистра
Синтаксис: Получить(<Отбор>) Параметры: <Отбор> (необязательный) Тип: Структура. (31) какие еще измерения?? |
|||
36
Defender aka LINN
21.08.13
✎
08:38
|
Это ливингстар ник поменял, или они просто из одного инкубатора?
|
|||
37
galimovmaks
21.08.13
✎
08:38
|
(34) нет. он пустую строку выдает
|
|||
38
Wobland
21.08.13
✎
08:39
|
(35) купи СП
Должны указываться значения для всех измерений. |
|||
39
Rie
21.08.13
✎
08:39
|
(35) У регистра сведений есть такая штука - измерения называются.
|
|||
40
Wobland
21.08.13
✎
08:40
|
(36) не, ливингстар готовое хочет. а здесь товарищ просто не понимает. рад бы, да не доходит
|
|||
41
Rie
21.08.13
✎
08:45
|
(37) Что-то вроде
ОтборРегистра = Новый Структура("Объект,Вид,Тип"); // это - все три измерения регистра сведений КонтактнаяИнформация // теперь задаём их значения ОтборРегистра.Объект = СсылкаНаОбъект.Организация; ОтборРегистра.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресОрганизации; ОтборРегистра.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес; // спрашиваем у регистра СтруктАдрес = РегистрыСведений.КонтактнаяИнформация.Получить(ОтборРегистра); // получили структуру, содержащую и значения ресурсов. Извлекаем нужное: Адрес = СтруктАдрес.Представление; // (тут возможны варианты - поэтому лучше использовать методы, преобразующие структуру адреса в строку адреса |
|||
42
galimovmaks
21.08.13
✎
08:49
|
(41) огромное спасибо!!! адрес выводится!)) теперь для телефона надо сделать) буду дальше думать)
|
|||
43
Starhan
21.08.13
✎
08:51
|
(41) ну все, хрен он теперь СП откроет. Будет на мисту за готовым кодом ходить :)
|
|||
44
Rie
21.08.13
✎
08:58
|
(43) Ему не СП надо... СП - это лишь подсказка. ТС же, похоже, не понимает, что такое информационная база, как она устроена и с чем её едят (если "теперь для телефона надо сделать" вызывает трудности) :-(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |