Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )


>  Вывод табличного поля на печать через ПостроительОтчётов
Yevhenii_S
Отправлено: 09.05.19, 10:17


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 26.06.18
Из: Хмельницкий
Пользователь №: 61204


Добрый день колеги.
Столкнулся я давече с такой штукой как ПостроительОтчётов
Платформа - 1С:Предприятие 8.2 (8.2.19.130)
Конфа переписаная на основе "Управление торговым предприятием для Украины", редакция 1.2.
Разработка конфигурации: "ABBYY Ukraine", 2007-2015 (1.2.29.1)

Описание задачи:
Есть обработка для работы с "куском" номенклатуры. На форме лежит ТабличноеПоле с типом СправочникСписок.Номенклатура, добавил колонки, вывожу остатки по двум складам, вроде всё красиво.



Нужно вывести текущие показатели на отчёт
Стандартная процедура ВывыстиСписок отрабатыват нормально, вот только вид отчёта меня не устраивает


Набросал макет, вывожу его в новый ТабличныйДокумент и пробую подянуть данные с ТабличногоПоля через ПостроительОтчётов.
Всё вроде отрабатывает, да вот только данные выводит не те что на экране, а те что были бы в корне этого ТабПоля(точнее наивысшая иерархия СправочникСписок.Номенклатура)



Толи дело в отборе то ли в источнике данных, может вообще подход ложный. Помогите советом. Буду благодарен

Код своего вывода привожу:
Элемент = ЭлементыФормы.ТабПолеДерево.ТекущаяСтрока;
    ТабДок = Новый ТабличныйДокумент;
    ТабДок.Очистить();
    ТабДок.ПолеСлева=0;
    ТабДок.ПолеСправа=0;
    ТабДок.ПолеСнизу=0;
    ТабДок.НижнийКолонтитул.Выводить=Ложь;
    ТабДок.ВерхнийКолонтитул.Выводить = Ложь;
    
    Макет = Обработки.СкладСырья2.ПолучитьМакет("Остатки");
    
    ОблШапкаДокумента = Макет.ПолучитьОбласть("ШапкаОтчёта");
    ОблШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОблТаблица = Макет.ПолучитьОбласть("ТелоТаблицы");
    ОблПодвал = Макет.ПолучитьОбласть("ПодвалТаблицы");
    
    ОблШапкаДокумента.Параметры.ДатаОтчёта = Строка(Формат(ТекущаяДата(), "ДЛФ=Д" ));
    ОблШапкаДокумента.Параметры.ГруппаТоваров = Строка(Элемент.Родитель);
    ТабДок.ОтображатьСетку=Ложь;
    ТабДок.Вывести(ОблШапкаДокумента);
    ТабДок.Вывести(ОблШапкаТаблицы);
    
    Построитель = Новый ПостроительОтчета;     
    Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭлементыФормы.ТабПолеДерево.Значение);
    
    Выборка = Построитель.Результат.Выбрать();
    Пока Выборка.Следующий() Цикл
        
        ОбработкаПрерыванияПользователя();
        ОблТаблица.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ОблТаблица);    
    КонецЦикла;
    ТабДок.Вывести(ОблПодвал);
    
    ТабДок.ТолькоПросмотр = Истина;
    ТабДок.Показать();
  Форум: Программирование обычных форм 1С 8.2 и не интер... · Просмотр сообщения: #152059 · Ответов: 1 · Просмотров: 218
 

>  Отбор по наименованию Содержит и Равно
Yevhenii_S
Отправлено: 30.03.19, 13:29


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 26.06.18
Из: Хмельницкий
Пользователь №: 61204


1С:Предприятие 8.2 (8.2.19.130)

"Управление торговым предприятием для Украины", редакция 1.2.
Разработка конфигурации: "ABBYY Ukraine", 2007-2015 (1.2.29.1)

Здравствуйте коллеги.
Хочу реализовать что то подобное "Живому поиску" по названию номенклатуры.
Для этого ловлю событие "АвтоподборТекста"
в событии делаю классический отбор по наименованию. Всё вроде работает. Но возникает ньюанс к примеру есть ном. "ГП-01 мужской" и "П-01". Если делаю сравнение "содержит" то при вводе "П-0" в список попадают все записи с "ГП-0". Когда делаю отбор по сравнению с "Равно" нужно полностью вводить название модели что не очень удобно, да и часто есть необходимость быстро выбрать по порядку наименования типа "П-01", "П-02", ......"П-09"
пробовал добавлять в значение сравнения символ "%", но он не работает так же как в запросе.

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

Процедура ПолеВвода1ПриИзменении(Элемент)
    пДлинаСтроки = СтрДлина(Строка(ЭлементыФормы.ПолеВводаПоиск.Значение));
    Если пДлинаСтроки >=2 Тогда
        ЭлементыФормы.СправочникДерево.ИерархическийПросмотр = Ложь;
        
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.ВидСравнения = ВидСравнения.Содержит;
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Значение=Элемент.Значение;
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Использование=Истина;
        
    Иначе
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Использование=ложь;
        ЭлементыФормы.СправочникДерево.ИерархическийПросмотр = Истина;
        ЭлементыФормы.СправочникДерево.ТекущийРодитель = Справочники.Номенклатура.НайтиПоНаименованию("Продукция");
    КонецЕсли;
    ТекущийЭлемент = ЭлементыФормы.СправочникДерево;
    
КонецПроцедуры




упс, выложил код с события "При изменении"
вот с автоподбора
Процедура ПолеВвода1АвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)
    
    Если СтрДлина(Текст) >=1 Тогда
        ЭлементыФормы.СправочникДерево.ИерархическийПросмотр = Ложь;
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.ВидСравнения = ВидСравнения.Содержит;
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Значение=Текст+"%";
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Использование=Истина;
    Иначе
        ЭлементыФормы.СправочникДерево.Значение.Отбор.Наименование.Использование=ложь;
        ЭлементыФормы.СправочникДерево.ИерархическийПросмотр = Истина;
        ЭлементыФормы.СправочникДерево.ТекущийРодитель = Справочники.Номенклатура.НайтиПоНаименованию("Продукция");
    КонецЕсли;
    
КонецПроцедуры


Хотя суть дела не меняется)
  Форум: Программирование обычных форм 1С 8.2 и не интер... · Просмотр сообщения: #151085 · Ответов: 1 · Просмотров: 274
 

>  Программно отправить сообщение на почту через внешнюю обработку. Версия платформы: 8.3.10.2667, версия конфигуратора: 2.4.1.206
Yevhenii_S
Отправлено: 26.06.18, 8:12


Молчаливый
*

Группа: Пользователи
Сообщений: 3
Регистрация: 26.06.18
Из: Хмельницкий
Пользователь №: 61204


@lex @ Вчера, 13:52 *
Вы уверены что у Вас пингует smtp.mail.ru
у нас, вродь как бы, банят их
попробуйте другую почту
так же на некоторых почтах надо включать доступ по smtp для почтовых клиентов

мой пример пинга, smtp.mail.ru не пингует, а smtp.gmail.com без проблем


пример включения доступа на почте ukr.net
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #142922 · Ответов: 5 · Просмотров: 1184
 


Новые сообщения  Открытая тема (есть новые ответы)
Опрос  Опрос (есть новые голоса)
Нет новых сообщений  Открытая тема (нет новых ответов)
Нет новых голосов  Опрос (нет новых голосов)
Популярная тема  Горячая тема (есть новые ответы)
Закрыта  Закрытая тема
Нет новых  Горячая тема (нет новых ответов) Перемещена  Тема перемещена
 

RSS Текстовая версия Сейчас: 15.09.19, 10:09
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!