|
1C-Рарус:SMS Коммуникатор для sms4b.ru для УНФ 1.4
| ☑ |
0
DonJon
26.01.15
✎
17:11
|
Добрый вечер всем!)
Подскажите пожалуйста, может кто сталкивался?
В модуле от cмс4b, в документе смс сообщение, в табличной части реквизит контрагент, в нем нужно указать составной тип данных, согласно инструкции от РАРУСА, но при его указании (ставлю галочки на не сколько справочников. Контрагент, Сотруднки, Организации, функционал не работает. Выходит ошибка на форме.
{Документ.смсСообщение.Форма.ФормаДокументаУправляемая.Форма(819)}: Значение не является значением объектного типа (Поле1)
ВыбранныйТелефон = смсРаботаССообщениями.УбратьЛишниеСимволыТелефона(СокрЛП(Выборка.Поле1) + СокрЛП(Выборка.Поле2) + СокрЛП(Выборка.Поле3));
|
|
1
Лефмихалыч
26.01.15
✎
17:14
|
надо программиста позвать, чтобы он посмотрел, почему в переменной Выборка нет поля Поле1
|
|
2
DonJon
26.01.15
✎
17:20
|
Вот если указывать на только один справочник Получатели, то все работает.
&НаКлиенте
Процедура ПолучателиКонтрагентОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если Элементы.Получатели.ТекущиеДанные.Контрагент = ВыбранноеЗначение Тогда Возврат; КонецЕсли;
Выборка = ПолучитьНомерТелефона(ВыбранноеЗначение);
НомерСтроки = Элементы.Получатели.ТекущиеДанные.НомерСтроки;
ВыбранныйТелефон = смсРаботаССообщениями.УбратьЛишниеСимволыТелефона(СокрЛП(Выборка.Поле1) + СокрЛП(Выборка.Поле2) + СокрЛП(Выборка.Поле3));
Для Каждого ТекСтрока Из Объект.Получатели Цикл
СтрокаНомер = ТекСтрока.НомерСтроки;
Если СтрокаНомер = НомерСтроки Тогда Продолжить; КонецЕсли;
ТекТелефон = СокрЛП(ТекСтрока.НомерТелефона);
ВладелецТелефона = ТекСтрока.Контрагент;
Если ВыбранныйТелефон = смсРаботаССообщениями.УбратьЛишниеСимволыТелефона(ТекТелефон) Тогда
НомерУжеЕсть = Истина;
Предупреждение(НСтр("ru = 'Выбранный номер телефона уже присутствует в таблице получателей!" + Символы.ПС
+ "Владелец телефона: " + ВладелецТелефона + " строка №:" + СтрокаНомер+"'"));
Возврат;
КонецЕсли;
КонецЦикла;
Элементы.Получатели.ТекущиеДанные.Контрагент = ВыбранноеЗначение;
Элементы.Получатели.ТекущиеДанные.НомерТелефона = ВыбранныйТелефон;
Если Объект.АвтотекстБулево Тогда
Элементы.Получатели.ТекущиеДанные.ТекстСообщения = СформироватьСообщениеПоШаблону(Объект.ТекстСообщения, ВыбранноеЗначение);
Если Объект.Транслитерация Тогда
Элементы.Получатели.ТекущиеДанные.ТекстСообщения = смсКоммуникатор.Транслитерация(Объект.Получатели.ТекущаяСтрока.ТекстСообщения);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
|
|
3
Лефмихалыч
26.01.15
✎
17:21
|
все равно нужно программиста позвать
|
|
4
DonJon
26.01.15
✎
17:22
|
Так я (он) и есть ((((.
|
|
5
DonJon
26.01.15
✎
17:23
|
(3) Смущает что &НаКлиенте.
|
|
6
Лефмихалыч
26.01.15
✎
17:23
|
(4) уверен?
ну, тогда бери отладчик и смотри, почему ПолучитьНомерТелефона() возвращает значение, в котором нет ожидаемых полей.
|
|
7
IШаман
26.01.15
✎
17:25
|
(4)То странное чувство когда система рекомендует обратиться к системному администратору - но он это ты:)
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший