Приветствую Вас ГостьСреда, 15.05.2024, 12:14

Каталог статей

Всего материалов в каталоге: 245
Показано материалов: 71-80
Страницы: « 1 2 ... 6 7 8 9 10 ... 24 25 »

Документ "Ручная операция" - это документ, который позволяет напрямую вносить изменения в регистры.

Создавая подобный документ надо учитывать некоторые особенности.

Программирование | Просмотров: 274 | Добавил: leshic | Дата: 30.08.2022 | Комментарии (0)

Если в расширении добавить отчет и сделать для него несколько вариантов, то список вариантов не виден, когда запускаем клиента. Оказалось, что надо сделать дополнительные манипуляции, чтобы варианты стали видны.

Опытным путем было выяснено, что достаточно выполнить только третий пункт, чтобы варианты отчетов появились в клиенте.

1. В модуле менеджера отчета добавить код

// Описание дополнительных настроек отчета
// В данной процедуре можно задать описания варинатов отчетов, опредлить дополнительные варианты,
// определить дополнительные разделы варианта отчета
// Запускается при выполнении ВариантыОтчетов.ОбработкаПредопределенныхВариантов()
Процедура НастройкиОтчета(Настройки) Экспорт

    //Описание вариантов отчетов
    СхемаКомпоновки = Отчеты.ИмяОтчета.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    Для каждого ВариантНастройки Из СхемаКомпоновки.ВариантыНастроек Цикл
        ВариантыОтчетов.УстановитьОписаниеВариантаВДопНастройках(Настройки, ВариантНастройки.Имя, "");
    КонецЦикла;
    
КонецПроцедуры

 

2. В Общем модуле ВариантыОтчетовПереопределяемый в процедуре СписокОтчетовПоддерживаемыхПодсистемой() добавить код

СписокОтчетов.Добавить("Отчет.ИмяОтчета");


3. Выполнить процедуру

ВариантыОтчетов.ОбработкаПредопределенныхВариантов();  

При выполнении этой команды пропадают все пользовательские варианты во всех отчетах

СКД | Просмотров: 714 | Добавил: leshic | Дата: 08.08.2022 | Комментарии (0)

Пример программного заполнения данных отчета из внешнего источника

СКД | Просмотров: 232 | Добавил: leshic | Дата: 15.07.2022 | Комментарии (0)

Надо было выгрузить отдельно перечень значений перечислений, но столкнулся с тем, что значения переносятся только если на них есть ссылка в других правилах и документах.

Чтобы выгрузить список всех доступных значений использовал произвольный алгоритм в правиле выгрузки данных.


Если список параметр для отбора строго определен, то реализовать отбор можно двумя способами:

1. Добавляем в запрос динамического списка параметры и устанавливаем их при изменении значений отбора на форме. Используем метод Список.Параметры.УстановитьЗначениеПараметра(<Параметр>, <Значение>).

2. Использовать стандартный механизм отбора динамического списка.

Формы | Просмотров: 343 | Добавил: leshic | Дата: 27.06.2022

Подсмотрел универсальное решение расчета итогов в динамических списках. Основной принцип следующий:

  1. При создании формы с динамическим списком в дополнительные свойства настройки СКД списка добавляется таблица с указанием имени поля и нужной агрегатной функцией, например "Номер", "Количество". Таблица помещается в хранилище, а хранилище размещается размещается в ветке "РесурсыХранилище".
  2. На форму выводится отдельная кнопка "Расчет итогов". Обновлять итоги постоянно очень затратно по ресурсам и приводит к зависанию.
  3. Расчет итогов производится в общем модуле, в который передаются настройки СКД. Для получения настроек СКД, с учетом всех примененных отборов и поисков есть две волшебные функции: СКД = ЭтотОбъект.Список.ПолучитьИсполняемуюСхемуКомпоновкиДанных() и Настройки = ЭтотОбъект.Список.ПолучитьИсполняемыеНастройкиКомпоновкиДанных().
  4. В полученной СКД программно добавляются группировка и ресурсы (ПоляИтогов), которые определяются из дополнительного свойства "РесурсыХранилище".
  5. Запускается формирование отчета по СКД, получаются значения итогов по ресурсам и программно заполняется текст подвала нужной колонки.

Похожий пример можно посмотреть здесь https://v8book.ru/public/568012/

Формы | Просмотров: 567 | Добавил: leshic | Дата: 24.06.2022 | Комментарии (0)

В целом по отборам можно почитать здесь: https://programmist1s.ru/otboryi-v-1s-8-3-upravlyaemyie-formyi/

В этой статье я рассматриваю отбор записей в таблице значений с применением построителя запроса

Формы | Просмотров: 661 | Добавил: leshic | Дата: 23.06.2022 | Комментарии (0)

Подсмотрел решение, когда на форму выводится таблица отбора из динамического списка

Формы | Просмотров: 275 | Добавил: leshic | Дата: 22.06.2022 | Комментарии (0)

Во время загрузки файла с данными происходит поиск данных по УИД и по заданным полям поиска.

Конвертация позволяет осуществлять поиск по разным наборам полей, если предыдущий набор ничего не дал. Например, сначала ищем по связке ИНН+КПП, а если ничего не находим, то начинаем пытать счастье с наименованием.

Если НомерВариантаПоиска = 1 тогда
    СтрокаИменСвойствПоиска = “ИНН, КПП”;
ИначеЕсли НомерВариантаПоиска = 2 Тогда
    СтрокаИменСвойствПоиска = “Наименование”;
КонецЕсли;

НомерВариантаПоиска, СтрокаИменСвойствПоиска - это параметры метода ПКО_ПоследовательностьПолейПоиска_..., который настраивается для правила конвертации объектов "Поля поиска".

Сюда же можно вставить поиск по произвольному алгоритму. Результат поиска надо поместить в параметр СсылкаНаОбъект.

Рекомендую обратить внимание на параметр УстанавливатьУОбъектаВсеСвойстваПоиска. Если его оставить равным Истина, то в найденный объект базы приемника будут записаны все переданные реквизиты из базы источника.


Нашел запрос, который сначала мне показался странным, но потом, при внимательном рассмотрении, вполне рабочим:

      ВЫБРАТЬ
          Сотрудники.ФизическоеЛицо КАК ФизЛицо
      ИЗ
          РегистрСведений.Сотрудники КАК Сотрудники
      СГРУППИРОВАТЬ ПО
          Сотрудники.ФизическоеЛицо
      ИМЕЮЩИЕ
          КОЛИЧЕСТВО(Сотрудники.ФизическоеЛицо) > 1

ФизическоеЛицо - это измерение регистра сведений Сотрудники. Получается группируем по измерению и тут же отбираем записи, количество которых больше 1.

Запрос перестает казаться странным, если "КОЛИЧЕСТВО(Сотрудники.ФизическоеЛицо)" перенести в блок "Выбрать":

      ВЫБРАТЬ
          Сотрудники.ФизическоеЛицо КАК ФизЛицо,
          КОЛИЧЕСТВО(Сотрудники.ФизическоеЛицо) КАК КоличествоФЛ
      ИЗ
          РегистрСведений.Сотрудники КАК Сотрудники
      СГРУППИРОВАТЬ ПО
          Сотрудники.ФизическоеЛицо
      ИМЕЮЩИЕ
          КОЛИЧЕСТВО(Сотрудники.ФизическоеЛицо) > 1

 

Запросы | Просмотров: 314 | Добавил: leshic | Дата: 30.05.2022 | Комментарии (0)


Вход на сайт
Поиск
Категории раздела
Материалы по 1С [206]
Программирование под Android [16]
То, что касается программирования под Android
Заметки из книг [20]
Заметки из книг
Редакторы языка QPILE [3]
Текстовые редакторы в которых удобно создавать портфели на языке QPILE
Программы для MetaTrader4 [0]
Эксперты, индикаторы и т.д.
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0