Bernet @ 10.03.17, 11:20
, Добрый день. Подскажите пожалуйста, как Вы формируете запрос на добавление новых пользователей\изменение атрибутов у существующих? Пытаюсь решить подобную задачу, и пока безрезультатно. Удалось только подключиться к АД, и прочитать список имеющихся пользователей... Буду признателен за подсказку.
1С:Підприємство 8.3 (8.3.6.2449) УНФ для Украины, редакция 1.6 (1.6.2.1) Управляемые формы.
Добрый день. Есть задача - сохранять и восстанавливать разные комбинации настроек отбора списка документов "Заказ покупателя" Пытаюсь реализовать разными способами (как чтение\запись настроек, так и их хранение). Успешным результатом пока не могу похвастаться. Подскажите пожалуйста, как лучше реализовать?
актуальный тестовый вариант такой:
&НаКлиенте Процедура Д_СохранитьНастройкуОтбора(Команда) МассивОтборов = Новый Массив; Для Каждого ЭлементОтбора из Список.КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл Если ЭлементОтбора["Представление"] = "Период" Тогда Продолжить; КонецЕсли;
ЗаписьОтбора = Новый Структура; ЗаписьОтбора.Вставить("Использование",ЭлементОтбора["Использование"]); ЗаписьОтбора.Вставить("ЛевоеЗначение",ЭлементОтбора["ЛевоеЗначение"]); ЗаписьОтбора.Вставить("ВидСравнения",ЭлементОтбора["ВидСравнения"]); ЗаписьОтбора.Вставить("ПравоеЗначение",ЭлементОтбора["ПравоеЗначение"]); МассивОтборов.Добавить(ЗаписьОтбора); КонецЦикла;
Д_СохранитьНастройку(МассивОтборов);
КонецПроцедуры
&НаСервере Функция Д_СохранитьНастройку(СохраненнаяНастройка = Неопределено,СтруктураЗаменяемойНастройки = Неопределено) //Экспорт
СтруктураНастройки = Новый Структура; СтруктураНастройки.Вставить("ИмяОбъекта", "СписокЗаказов"); СтруктураНастройки.Вставить("НаименованиеНастройки", "СписокЗаказов1"); СтруктураНастройки.Вставить("СохраненнаяНастройка", СохраненнаяНастройка);
Если ТипЗнч(СтруктураНастройки) <> Тип("Структура") Тогда
Возврат Ложь;
КонецЕсли;
//Тут непосредственно записывает структуру в добавленный РС. Резульат Ложь\Истина Возврат СохранитьДанныеНастройки(СтруктураНастройки, СтруктураЗаменяемойНастройки);
&НаКлиенте Процедура Д_ОткрытьНастройкуОтбора(Команда) МассивОтборов = ПолучитьНастройку(); Если МассивОтборов = Неопределено Тогда Возврат; КонецЕсли;
Для Каждого ЭлементМассива из МассивОтборов Цикл ЗаписьОтбора = Список.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЗаписьОтбора.Использование = ЭлементМассива.Использование; ЗаписьОтбора.ЛевоеЗначение = ЭлементМассива.ЛевоеЗначение; ЗаписьОтбора.ВидСравнения = ЭлементМассива.ВидСравнения; ЗаписьОтбора.ПравоеЗначение = ЭлементМассива.ПравоеЗначение; ЗаписьОтбора.Применение = ТипПримененияОтбораКомпоновкиДанных.Элементы; КонецЦикла; ЭтаФорма.ОбновитьОтображениеДанных();
КонецПроцедуры
&НаСервере Функция ПолучитьНастройку() //Экспорт
СтруктураНастройки = Новый Структура; СтруктураНастройки.Вставить("ИмяОбъекта", "СписокЗаказов"); СтруктураНастройки.Вставить("НаименованиеНастройки", "СписокЗаказов1");
Если ТипЗнч(СтруктураНастройки) <> Тип("Структура") Тогда
Возврат Неопределено;
КонецЕсли;
Запрос = Новый Запрос( "ВЫБРАТЬ | СохраненныеНастройки.Пользователь, | СохраненныеНастройки.ИмяОбъекта, | СохраненныеНастройки.НаименованиеНастройки КАК НаименованиеНастройки, | СохраненныеНастройки.СохраненнаяНастройка, | СохраненныеНастройки.ИспользоватьПриОткрытии, | СохраненныеНастройки.СохранятьАвтоматически |ИЗ | РегистрСведений.Д_СохраненныеНастройки КАК СохраненныеНастройки |ГДЕ | СохраненныеНастройки.ИмяОбъекта = &ИмяОбъекта | И СохраненныеНастройки.НаименованиеНастройки = &НаименованиеНастройки");
Выгрузка проходит вроде нормально. Сохраняется. Далее выбирается тоже нормально. в процедуре Д_ОткрытьНастройкуОтбора переменная МассивОтборов получается и имеет вид:
Далее, массив обрабатывается, и Список.КомпоновщикНастроек.Настройки.Отбор.Элементы получается таким:
Потом делается обновление отображения - и на форме ничего не происходит (список не отобран, управляющие элементы фильтров справа - все пустые)
1С:Підприємство 8.3 (8.3.6.2449) Управление небольшой фирмой для Украины, редакция 1.6 (1.6.2.1)
Добавил в документ свой реквизит. На форму вывел. Теперь хочется чтоб изменения данного реквизита фиксировались в журнале (который по закладке "Обсуждения")так как и типовые.
Разместил процедуру, которую подключаю обработчиком ожидания в глобальном модуле - все пошло работать. Как и задумывалось: при запуске открывается первый раз всегда, и ту же процедуру подключаю обработчиком ожидания согласно интервалу из настроек пользователя. Работает. Сейчас осталось только с формами разобраться, чтоб не открывалась новая каждый раз, если вдруг пользователь не закрыл предыдущую... Спасибо Всем за помощь и подсказки. Отдельная благодарность Vofka и bakalavr
Изначально пробовал без всего этого) не отработало, и начал уже экспериментировать..
Цитата(Vofka @ 18.11.16, 9:04)
Меня сбило с толку вот это:
Уточните, что именно пожалуйста. Все дело происходит в общем модуле. у него включены галочки: сервер,внешнее соединение, клиент-обычное прилож.. В этом модуле в одной из процедур, которая запускается при начале работы системы происходит разовый запуск требуемой обработки (вызов процедуры ЗапуститьОбработкуКонтроля), и пытаюсь подключить обработчик ожидания на эту же процедуру.
система ищет процедуру ЗапуститьОбработкуКонтроля в текущем модуле и в глобальных
Процедура ЗапуститьОбработкуКонтроля лежит буквально рядом, следующей процедурой, в текущем модуле. Она экспортная.
Цитата(logist @ 17.11.16, 19:18)
Вы не допускаете, что вот здесь возвращается значение отличное от необходимого?
Нет. Выдает результат корректный. Именно данный блок также работает при запуске системы, запуская обработку при начале работы первый раз. Также проверял отладчиком и в момент подключения обработчика.
Цитата(Acid @ 18.11.16, 2:40)
интервала опроса
Никак не пойму, при чем интервал опроса, когда, как я и описал, ругается на вызов процедуры, на имя процедуры, на первый параметр. Вот собственно текст ошибки:
{ОбщийМодуль.Рез.Модуль(324)}: Ошибка при вызове метода контекста (ПодключитьОбработчикОжидания) ПодключитьОбработчикОжидания("ЗапуститьОбработкуКонтроля",УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПараметрыСеанса.ТекущийПользователь, "ИнтервалПроверкиКонтроля")); по причине: Недопустимое значение параметра (параметр номер '1')
Дело в том, что это не регламентное задание. Мне необходимо конкретному пользователю, в работающий сеанс, с определенной периодичностью запускать обработку и соотв. открывать ее форму. И пользователь чтоб мог видеть что открылось и дальше работать. Регламентное задание, насколько я понимаю такого не делает, оно отрабатывает где-то "в тени", по крайней мере так, как я пробовал - так и получалось.
1С:Предприятие 8.2 (8.2.19.102) УПП Укр. (1.3.47.2)
Добрый день. Необходимо реализовать периодический запуск обработки в сеансе пользователя. В настройках пользователя уже имеются признаки по которым нужно проверять саму необходимость запуска обработки и интервал запуска. Не удается только выполнить сам запуск. Казалось бы, оптимальный вариант - Обработчик ожидания... Но как-то не складывается Возможно неправильно делаю. Делаю так: "Модуль обычного приложения" - Процедура "ПриНачалеРаботыСистемы" - в ней есть вызов процедуры в моем общем модуле (сервер,внешнее соединение, клиент-обычное прилож.). В той процедуре такая вставка
Если УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПараметрыСеанса.ТекущийПользователь, "ВыполнятьКонтроль") Тогда ПодключитьОбработчикОжидания("ЗапуститьОбработкуКонтроля",УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПараметрыСеанса.ТекущийПользователь, "ИнтервалПроверкиКонтроля")); КонецЕсли;
Сама Процедура, которую подключаю является экспортной и лежит рядом:
В целом, текст процедуры полностью рабочий, он же используется при единоразовом запуске, при начале работы системы - все работает. А вот при попытке подключить его в обработчик ожидания - ругается, причем ошибка указывает именно на первый параметр - Имя процедуры. Что-то не так указано. По справке:
Цитата
Имя экспортируемой процедуры модуля управляемого приложения (модуля обычного приложения) или глобального общего модуля. Процедура должна располагаться на клиенте.
Вид модуля вроде соответствует требованиям. подскажите, что не так, куда копнуть. Заранее благодарен.
Если аутентификация пройдет успешно – в ответе придет токенVeganetID (Пример, Set-Cookie: VeganetID=value), который необходимо использовать для доступа к сервисам приложения.
Далее можно вызывать любой сервис из документа war_veganet_api передавая Cookie параметр VeganetId (в пакете выглядит как Cookie: VeganetID=value)
Подскажите пожалуйста, как бы его прописать соединение к этому АПИ и работать дальше с ним. А может кто-то и с самим ПУМБ уже сталкивался?
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!