andr_andrey @ Сегодня, 13:42
, Не проблема, но определенная работа, которую нужно проделать. У меня не хватает компетенций, чтобы быть полностью уверенным, что таким образом смогу определить нужную точку о готовности отчета. Потому и обратился на форум.
Vofka @ 16.10.20, 10:18
, Спасибо за попытку помочь, но в предлагаемом материале нет информации как формируется отчет. Интересует именно события "ФормыОтчета", которые происходят при его формировании.
Самописная конфигурация 1С:Предприятие 8.3 (8.3.3.721) режим совместимости интерфейса Версия 8.2
Вопрос меня терзает как обойти необходимость писать серверную процедуру для каждого отдельного доступа к разным объектам.
Мысли такие, нужно передать строками: 1) тип метаданных объекта - "ПланыСчетов.НИС_Учт_Сч_Счета"; 2) название объекта - "Яндекс.Кошелек"; 3) название атрибута - "Наименование" ; 4) значение для записи в этот атрибут - "ЗАКРЫТ Яндекс.Кошелек".
Vofka @ Вчера, 17:45
, Установлен последний доступный для Windows 7 - версия 11. Попробовал Edge поставить - встал, но IE остался все равно, т.е. не заменился на Edge.
sava1 @ Вчера, 18:19
, Включены все опции в разделе "Сценарии".
Да и в IE вход работает нормально по этой ссылке.
Похоже где-то есть настройка браузера встроенного в 1С. А вот где неизвестно .
https://accounts.google.com/o/oauth2/v2/auth?client_id=<уникальный идентификатор приложения из Google API console>.apps.googleusercontent.com&redirect_uri=http://localhost&scope=https://www.googleapis.com/auth/calendar.readonly%20https://www.googleapis.com/auth/calendar.events.readonly%20%20https://www.googleapis.com/auth/calendar&response_type=code&prompt=consent
В браузере приведенная выше строка открывается вот так и авторизация проходит нормально:
А в форме 1С отображается почему-то по другому и авторизация не проходит:
При попытке авторизации выдает:
А дальше сообщение:
Цитата
Не удалось войти в аккаунт Возможно, этот браузер или приложение небезопасны. Подробнее…
Попробуйте сменить браузер. Если вы уже используете поддерживаемый браузер, обновите страницу и попробуйте войти ещё раз.
Помогите пожалуйста решить проблему. Предполагаю может надо настроить встроенный браузер, но как не знаю.
&НаКлиентеНаСервереБезКонтекста Функция АдресСтраницыАутентификации()
ПараметрыURL = Новый Структура; Адрес = "https://accounts.google.com/o/oauth2/v2/auth"; ПараметрыURL.Вставить("client_id", "<ваш уникальный идентификатор приложения из Google API console>.apps.googleusercontent.com"); ПараметрыURL.Вставить("redirect_uri", "http://localhost"); ПараметрыURL.Вставить("scope", "https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/calendar"); ПараметрыURL.Вставить("response_type", "code"); ПараметрыURL.Вставить("prompt", "consent"); //Пользователю отображается только окно разрешения доступа к его пользовательским данным Возврат Адрес(Адрес, ПараметрыURL);
КонецФункции // ПолучитьAuthToken()
При сохранении выдает ошибку:
Цитата
{Обработка.Google.Форма.Данные.Форма(20,10)}: Процедура или функция с указанным именем не определена (Адрес) Возврат <<?>>Адрес(Адрес, ПараметрыURL); (Проверка: Сервер) {Обработка.Google.Форма.Данные.Форма(20,10)}: Процедура или функция с указанным именем не определена (Адрес) Возврат <<?>>Адрес(Адрес, ПараметрыURL); (Проверка: Тонкий клиент)
Предполагаю что в статье не дали код функции "Адрес".
Есть у специалистов предположение, что в этой функции или может это функция из какой-нибудь библиотеки?
Функция ПолучитьМаркер(ВидСервиса,Пользователь = Неопределено) Экспорт ПараметрыПользователя = ПолучитьПараметрыПользователя();
Выдает ошибку:
Цитата
{ОбщийМодуль.ПродедурыГугл.Модуль(7,29)}: Процедура или функция с указанным именем не определена (ПолучитьПараметрыПользователя) ПараметрыПользователя = <<?>>ПолучитьПараметрыПользователя(); (Проверка: Сервер)
alex040269 @ 01.10.14, 11:27
, Так получилось, что вернулся к вопросу и обнаружил еще такой механизм.
Если в параметрах формы создать ключевой параметр, то при передаче такого параметра при открытии формы он доступен не только "ПриСозданииНаСервере", но и "ПриОткрытии".
mut @ Сегодня, 12:50
, Так запрос не на предшественников написан, а на "детей", т.е стандартная иерархия. Просто вместо "Родитель" иерархического справочника используется "Предшественник".
Вопрос как в запросе связь с дочерними записями искать по полю "Предшественник".
В конфигурации есть Документ.Фин_Док_Платеж. У этого документа есть атрибут "Предшественник", в который при обработках заносится соответствующая ссылка.
Нужно получить в запросе иерархию документов. Как я понимаю иерархический запрос работает по полю "Родитель", которое не обрабатывается в моей конфигурации.
В результате запрос
ВЫБРАТЬ Платеж.Ссылка ИЗ Документ.Фин_Док_Платеж КАК Платеж ГДЕ Платеж.Ссылка В ИЕРАРХИИ(&ПлатежРодитель)
выдает только одну запись указанного в параметре платежа
Цитата
Ссылка Платеж 000013150 от 25.07.2019 8:00:00
Можно в запросе указать иерархию по полю "Предшественник", т.е заменить стандартную обработку поля "Родитель"?
Для сущности "Проект" нужно получить Контрагентов. Для упрощения понимания здесь оставил только привязанные к документу "Платеж" значения из справочника "Организации". (Полный запрос еще потом содержит 2 объединения).
Запрос следующий:
ВЫБРАТЬ Фин_Док_ПлатежОперации.Получатель, Фин_Док_ПлатежОперации.Ссылка.Организация, Фин_Док_ПлатежОперации.Ссылка.ФизическоеЛицо ПОМЕСТИТЬ ВРМ_ТАБЛ_ОПЕРАЦИИ ИЗ Документ.Фин_Док_Платеж.Операции КАК Фин_Док_ПлатежОперации ГДЕ (Фин_Док_ПлатежОперации.Проект = &Проект ИЛИ Фин_Док_ПлатежОперации.Проект.Владелец = &Проект) И (Фин_Док_ПлатежОперации.Получатель <> ЗНАЧЕНИЕ(Справочник.НИС_Спр_Орг_Организации.ПустаяСсылка) ИЛИ Фин_Док_ПлатежОперации.Ссылка.Организация <> ЗНАЧЕНИЕ(Справочник.НИС_Спр_Орг_Организации.ПустаяСсылка) ИЛИ Фин_Док_ПлатежОперации.Ссылка.ФизическоеЛицо <> ЗНАЧЕНИЕ(Справочник.НИС_Спр_ФЛ_ФизическиеЛица.ПустаяСсылка)) ;
//////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗЛИЧНЫЕ ВРМ_ТАБЛ_ОПЕРАЦИИ.Организация КАК Контрагент, "Организация" КАК ТипКонтрагента {ВЫБРАТЬ Контрагент, ТипКонтрагента} ИЗ ВРМ_ТАБЛ_ОПЕРАЦИИ КАК ВРМ_ТАБЛ_ОПЕРАЦИИ ГДЕ ВРМ_ТАБЛ_ОПЕРАЦИИ.Организация.Наименование > ""
В консоли запросов проходит нормально:
Создал на форме элемента для справочника реквизит "ДинамическийСписок". В произвольный запрос списка скопировал запрос, который приведен выше. Заполнение параметра "Проект" выполняется корректно. Непонятно почему список не заполняется.
Попробовал убрал временную таблицу и запрос к ней, на форме появилась информация:
Не могу понять тонкостей использования временных таблиц в динамическом списке для нормального отображения.
Самописная конфигурация. Версия 1С 8.2, режим "Управляемое приложение".
Хочу реализовать буфер обмена для табличной части. Для этого в форме документа создал команду "кБуферКопировать".
/////////////////////////////////////////////////////////////////////////////////////////// // // Назначение: Копирует выбранные "Операции" в буфер обмена (мупПлатежБуфер) // // Вызов: Команда формы "кБуферКопировать", которая вызывается из "Операции.КонтекстноеМеню" // &НаКлиенте Процедура кБуферКопировать(кКоманда)
// =================================================== // = Обработать табличную часть документа "Операции" = // =================================================== Для Каждого лОперация Из Объект.Операции Цикл
// ========================== // = Проверить выбор строки = // ========================== Если лОперация = лОперация Тогда // = ЗДЕСЬ НУЖНО ОТДЕЛИТЬ ВЫБРАННЫЕ СТРОКИ // ========================================
КонецЦикла; // Для Каждого лОперация Из Объект.Операции
КонецПроцедуры // кБуферКопировать
Подскажите как определить, что строка табличной части выбрана, т.е. выделена мышкой. Я имею ввиду не текущую строку, а все выбранные в табличной части строки - множественный выбор. Предполагаю, что строка условия в приведенном выше коде будет выглядеть как то:
Цитата
Если лОперация.? = ? Тогда // = ЗДЕСЬ НУЖНО ОТДЕЛИТЬ ВЫБРАННЫЕ СТРОКИ // ========================================
В другой вашей теме ответил - Список доступен на сервере со всеми его свойствами, ТекущаяСтрока только на клиенте. Но вообще, я ничего не понял из написанного в топике.
Вопрос немного запутанный, может не раскрыл в начальном описании. Попытаюсь расширить описание.
Для объекта "Список" есть на форме соответствсующий элемент "Элементы.Список". Ну как обычно для всех объектов типа "ДинамическийСпиок" в форме. В общем модуле "НаКлиенте" создана процедура, куда уже передается ссылка на объект "Список". Надо по этому переданному объект "Спиок" добраться до "Элементы.Список", который ему соответствует на форме . На всякий случай повторяю: процедура в общем модуле, а не в модуле формы.
Вариант 1: Добраться до элемента формы, как мне кажется, можно так: Элементы.["НазваниеЭлемента"].ТекущаяСтрока. Можно из переданного объекта "Список" сформировать строку с правильным названием элемента, чтобы заменить "НазваниеЭлемента" в предыдушем предложении? Вариант 2: Может можно по объекту добраться до элемента формы, к которому он относится?
Самописная конфигурация. Версия 1С 8.2, режим "Управляемое приложение".
Есть функция, в которую передается объект "ДинамическийСписок".
&НаКлиенте Процедура ИзменитьОтборИСкрытьПустыеГруппы( // "Список", по которому изменяется отбор. пСписок)
Передается объект "Список".
В теле функции надо отменить "ТекущаяСтрока" для "Список". Проблема в том, что "ТекущаяСтрока" это свойство элемента, т.е. обратиться можно"Элементы.["Список"].ТекущаяСтрока.
Не знаю как вытащить из объекта "Список" связь с элементом формы, ну или получить название этого объекта - как я понимаю, оно совпадает с наззванием элемента формы.
Есть запасной вариант передать сразу ссылку на нужный элемент формы, но это не красиво. Если не найду решения, то все же так и сделаю.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!