|
Заполнение контактной информации контрагента | ☑ | ||
---|---|---|---|---|
0
ДЕнЕнЕн
26.10.16
✎
11:18
|
Привет всем кто заглянул. Помогите нубу понять в чем причина. В модуле справочника контрагенты есть следующий код:
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) НомерТелефона = "89999999999"; Объект.НаименованиеПолное = НомерТелефона; Объект.Комментарий = НомерТелефона; ВидКИ = Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента; НовыйТелефон = Объект.КонтактнаяИнформация.Добавить(); НовыйТелефон.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон; НовыйТелефон.Вид = ВидКИ; НовыйТелефон.Представление = НомерТелефона; НовыйТелефон.ЗначенияПолей = "НомерТелефона="+СокрЛП(НомерТелефона); НовыйТелефон.НомерТелефона = НомерТелефона; НовыйТелефон.НомерТелефонаБезКодов = НомерТелефона; При создании контрагента заполняются номером "89999999999" только поля "Заметки" и "Компания". Поле Контактной информации "Телефон" ни как не хочет заполняться. Отдельно если написать: Объект.НомерТелефона = НомерТелефона также ничего не заполняет. Пожалуйста помогите понять в чем причина. |
|||
1
Базис
naïve
26.10.16
✎
11:20
|
В какую таблицу ты пишешь и из какой таблицы ожидаешь увидеть?
Как они связаны? |
|||
2
ДЕнЕнЕн
26.10.16
✎
11:45
|
Не совсем понял вопрос про таблицы. Цель всего этого следующая - есть форма создания контрагента, прописав Объект.Комментарий = "111"; в Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) я могу автоматически заполнить поле "Заметка" когда создаю контрагента в режиме предприятия. А если прописать Объект.НомерТелефона = "111" то поле "Телефон" не заполняется.
Нашел в гугле что поле "Телефон" нужно заполнять примерно следующим образом: НомерТелефона = "89999999999"; Объект.КонтактнаяИнформация.Добавить(); Тип = Перечисления.ТипыКонтактнойИнформации.Телефон; Вид = Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента; Представление = НомерТелефона; ЗначенияПолей = "НомерТелефона="+СокрЛП(НомерТелефона); НомерТелефона = НомерТелефона; НомерТелефонаБезКодов = НомерТелефона; |
|||
3
ДЕнЕнЕн
26.10.16
✎
11:46
|
Но и в этом случае поле "Телефон" не заполняется.
|
|||
4
Fish
26.10.16
✎
11:48
|
(2) А ты в каком месте процедуры этот код пишешь? До или после вызова обработчика подсистемы "Контактная информация"?
|
|||
5
Базис
naïve
26.10.16
✎
11:50
|
(2) Перечитай (1) до понимания. Не гугли, подумай сам. В конфигураторе посмотри структуру данных и сформулируй, что куда ты хочешь писать.
|
|||
6
ДЕнЕнЕн
26.10.16
✎
12:16
|
Я так понимаю что я заполняю реквизит "НомерТелефона" Табличной части справочника "Контрагенты"
|
|||
7
ДЕнЕнЕн
26.10.16
✎
12:17
|
В самом начале процедуры ПриСозданииНаСервере
|
|||
8
ДЕнЕнЕн
26.10.16
✎
12:22
|
В форме создания Контрагента нет поля "Телефон" по аналогии с полем "Заметка" путь к данным в котором указан ОбъектКоментарий. Но есть команда ДобавитьКонтактнуюИнформациюКонтрагента.
|
|||
9
Базис
naïve
26.10.16
✎
12:32
|
В какой таблице есть поле "НомерТелефона"?
|
|||
10
shadow_sw
26.10.16
✎
12:40
|
контактная информация всегда хранилась в РС, в карточке контрагента выглядит как ТабЧасть, так что нужно писать НаборДвижений
|
|||
11
Базис
naïve
26.10.16
✎
12:48
|
(10) Молодец, правильно. Но (0) так и не научится. Теперь следи за его вопросами и разжёвывай :)
|
|||
12
shadow_sw
26.10.16
✎
12:49
|
(11) типа давай зачетку 5 :))
я(0) вроде как все пояснил, ничего сложного тут нет |
|||
13
Мойдодыр
26.10.16
✎
12:51
|
запиши руками из формы и посмотри что там лежит
|
|||
14
Мойдодыр
26.10.16
✎
12:52
|
Там какой то жесткий xml лежит в значениях полей
|
|||
15
Fish
26.10.16
✎
13:08
|
(10) (11) Уже нет. В конфигурациях на БСП контактная информация хранится в ТЧ объекта.
|
|||
16
ДЕнЕнЕн
26.10.16
✎
13:24
|
(9) В таблице КонтактнаяИнформация?
|
|||
17
ДЕнЕнЕн
26.10.16
✎
13:38
|
(10) Не могли бы вы рассказать подробнее или ткнуть меня носом в какую нибудь статью по этой теме. Если честно я ничего не понимаю.
|
|||
18
Fish
26.10.16
✎
13:39
|
(17) Давай сначала. Что за конфигурация? Используется БСП или нет?
|
|||
19
catena
26.10.16
✎
13:41
|
в (1) правильный вопрос был. Код не ругается, значит ТЧ такая у объекта есть. Теперь вопрос, где результат смотрят, что не видят.
|
|||
20
ДЕнЕнЕн
26.10.16
✎
13:51
|
(18) Используется УНФ 1.6.2.20
Проверил на УНФ 1.4.8.7, там все работает нормально - я нажимаю создать контрагента и поле номера телефона там заполняется тем что я указал в кавычках |
|||
21
newbling
26.10.16
✎
13:54
|
Контактная информация часто меняется. Помню одно время они пытались XDTO пакеты к ней прикрутить. Вообще тихий ужас.
Тебе надо сначала понять что там такое этот телефон - реквизит ли он табличной части или может он отображается как набор записей регистра, например. |
|||
22
ДЕнЕнЕн
26.10.16
✎
14:04
|
(19) Я хочу заполнить поле "Телефон" при создании контрагента.
http://screenshot.ru/upload/image/ZTwh |
|||
23
ДЕнЕнЕн
26.10.16
✎
14:12
|
(21) В форме справочника нет поля "Телефон" Но есть команда ДобавитьКонтактнуюИнформациюКонтрагента, из этого я делаю вывод что мне нужно заполнять именно контактну информацию контрагента. В 1.4.8.7 все также и там все работает.
http://screenshot.ru/upload/image/ZTwy Поправьте если я что то не так понимаю. |
|||
24
Lexey_
26.10.16
✎
14:17
|
(23) а почему ты делаешь вывод на основании имени команды, а не на основании кода, который она выполняет?
|
|||
25
ДЕнЕнЕн
26.10.16
✎
14:55
|
(21) "Тебе надо сначала понять что там такое этот телефон - реквизит ли он табличной части или может он отображается как набор записей регистра, например."
Вы не подскажите как мне это выяснить? |
|||
26
ДЕнЕнЕн
26.10.16
✎
15:02
|
(24) Дело в том что в форме справочника на месте где должно быть поле "Телефон" есть только "+телефон, адрес" который ссылается на "ДобавитьКонтактнуюИнформациюКонтрагента"
http://screenshot.ru/upload/image/ZTBb Да и в этом блоке "Компания" есть "КонтактнаяИнформация". |
|||
27
ДЕнЕнЕн
26.10.16
✎
15:06
|
(18) БСП как я понял используется
|
|||
28
Мойдодыр
26.10.16
✎
15:13
|
Ты уже посмотрел, что в тч у ручных контрагентов пишется?
|
|||
29
ДЕнЕнЕн
26.10.16
✎
15:29
|
(28) Я так понимаю что вы рекомендуете мне добавить контрагента и заполнить необходимые мне поля руками, это сделано. А вот не могли бы вы уточнить где я могу посмотреть в каком месте и какие записи лежат?
|
|||
30
Базис
naïve
26.10.16
✎
15:45
|
Консоль запросов, select * from Справочник.Контрагенты where Справочник.Контрагенты.Код = "123"
|
|||
31
Мойдодыр
26.10.16
✎
15:53
|
(30) Только нужно
|
|||
32
Мойдодыр
26.10.16
✎
15:53
|
from Справочник.Контрагенты.КонтактнаяИнформация
|
|||
33
ДЕнЕнЕн
27.10.16
✎
15:22
|
(30) Спасибо за подсказку такого удобного инструмента, я и не подозревал о его существовании.
(31) Заполнил нужное мне поле руками, создал контрагента, после чего сделал запрос и выяснил что заполнив его я заполнил КонтактнуюИнформацию. Значением номера заполняются поля "Представление", "НомерТелефона" и "НомерТелефонаБезКодов". Поле "Вид" имеет значение - http://screenshot.ru/upload/image/ZTfq Поле "Тип" - http://screenshot.ru/upload/image/ZTfv Я так понимаю что я заполнял то что нужно. Но автоматическое заполнение все равно не работает. |
|||
34
Базис
naïve
27.10.16
✎
15:40
|
Уже лучше. Теперь думай - ты создал контакт. Хочешь, чтобы он был виден у всех контрагентов?
|
|||
35
ДЕнЕнЕн
27.10.16
✎
15:47
|
(34) Для начала мне бы просто научиться заполнять данное поле чем то в кавычках "" а потом можно и присваивать ему переменные значения которых можно менять в коде как душе угодно и тд и тп.
Так что да, сейчас мне бы хотелось чтобы один контакт был на всех создаваемых контрагентов. |
|||
36
Мойдодыр
27.10.16
✎
15:48
|
вот такой xml тебе нужно писать в реквизит ЗначениеПолей
|
|||
37
Базис
naïve
27.10.16
✎
15:50
|
(35) Противоестественное желание, которое не укладывается в реализованную структуру данных.
Упростим ситуацию: Ты хочешь, чтобы один номер телефона был у всех твоих женщин? |
|||
38
Мойдодыр
27.10.16
✎
15:57
|
УправлениеКонтактнойИнформацией.ЗаполнитьКонтактнуюИнформациюОбъекта
|
|||
39
ДЕнЕнЕн
28.10.16
✎
11:24
|
(36) Теперь все заполняю так:
Процедура ПриСозданииНаСервере(Отказ,СтандартнаяОбработка) НомерТелефона = "89999999999"; Объект.НаименованиеПолное = НомерТелефона; Объект.Комментарий = НомерТелефона; ВидКИ = Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента; НовыйТелефон = Объект.КонтактнаяИнформация.Добавить(); НовыйТелефон.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон; НовыйТелефон.Вид = ВидКИ; НовыйТелефон.Представление = НомерТелефона; НовыйТелефон.ЗначенияПолей = "<КонтактнаяИнформация xmlns=""http://www.v8.1c.ru/ssl/contactinfo"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" Представление="""+НомерТелефона+"""><Состав xsi:type=""НомерТелефона"" КодСтраны="""" КодГорода="""" Номер="""+НомерТелефона+""" Добавочный=""""/></КонтактнаяИнформация>"; НовыйТелефон.НомерТелефона = НомерТелефона; НовыйТелефон.НомерТелефонаБезКодов = НомерТелефона; Но все равно нет ожидаемого результата, номер телефона не заполняется при создании контрагента. |
|||
40
ДЕнЕнЕн
28.10.16
✎
11:28
|
(37) Не совсем удачный пример вы привели.
Допустим можно средствами activex получить номер телефона звонящего из АТС и отправить его в 1С. Допустим номер звонящего в 1С будет присвоен какой то переменной "НомерТелефона". Возможностей много. |
|||
41
Базис
naïve
28.10.16
✎
12:03
|
Ничо так студент пошёл.
Ну, расскажи, какие у МЕНЯ трудности. Астериск читает номер, в базу его опа, сперва проверяем по стоплисту, потом ищем в индексированной ТЗ, находим - видим, чей клиент, если этот менеджер не занят, то просим астериск отправить звонок менеджеру, открываем у него же документ и подбираем клиента. Да, это на древней 1С77. Но тебе достаточно понять, как связаны контактные данные и один контрагент. |
|||
42
ДЕнЕнЕн
28.10.16
✎
13:09
|
(41) Не понимаю к чему вы мне это говорите. На профессионала в какой то области я не претендую. И работу астериска обсуждать не хочу, я хочу узнать почему не работает код который я написал, хотя по логике все должно работать. К примеру в 1.4.8.7 все работает.
"Но тебе достаточно понять, как связаны контактные данные и один контрагент." Не могли бы вы подсказать конкретнее как мне это понять, где почитать? |
|||
43
ДЕнЕнЕн
31.10.16
✎
16:56
|
(38) Не подскажите как пользоваться?
|
|||
44
MaxS
31.10.16
✎
17:00
|
Бывает, что нужно дублировать информацию у партнера
|
|||
45
newbling
31.10.16
✎
17:05
|
(37) > Ты хочешь, чтобы один номер телефона был у всех твоих женщин?
Для некоторых частных случаев такая архитектура подходит :D |
|||
46
newbling
31.10.16
✎
17:07
|
(23) Ну а код-то какой.
|
|||
47
ДЕнЕнЕн
31.10.16
✎
17:15
|
(44) это УНФ, тут нет партнеров, только контрагенты и контактные лица
|
|||
48
Мимохожий Однако
31.10.16
✎
17:39
|
(43) Включи отладчик и поставь точку останова в начале этой процедуры. Дальше иди по шагам и изучай.
|
|||
49
СамыйУмный
31.10.16
✎
17:50
|
Если на БСП то вот
ТвойПользователь.КонтактнаяИнформация.Найти(Справочники.ВидыКонтактнойИнформации.МобильныйТелефонПользователя,"Вид").Представление |
|||
50
ДЕнЕнЕн
01.11.16
✎
10:52
|
(48) Ее нужно вызывать из модуля справочника Контрагенты? из ПриСозданииНаСервере? Куда в эту процедуру добавлять необходимое мне значение?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |