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

Хранилище

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

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



> Відбір в журналі документів , Налаштування відбору по реквізиту документа в журналі документів          
kostya77 Подменю пользователя
сообщение 07.03.23, 10:53
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 122
Спасибо сказали: 5 раз
Рейтинг: 4

Добрий день. Підкажіть, як налаштувати відбір по реквізиту документа в журналі документів? Наприклад, по автору документа.

sava1 Подменю пользователя
сообщение 07.03.23, 11:04
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

открываем любую станд. конфу, журнал документов и смотрим как реализовано
типо так

Если АвторДляОтбора.Выбран()>0 Тогда
    УстановитьОтбор("Автор", АвторДляОтбора);


kostya77 Подменю пользователя
сообщение 07.03.23, 11:21
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 122
Спасибо сказали: 5 раз
Рейтинг: 4

sava1 @ Сегодня, 11:04 * ,
Отбор можна установить в обычном журнале?

denis84 Подменю пользователя
сообщение 07.03.23, 11:23
Сообщение #4

Оратор
Иконка группы
Группа: Местный
Сообщений: 421
Из: Украина
Спасибо сказали: 133 раз
Рейтинг: 132.5

kostya77 @ Сегодня, 10:53 * ,
//пример из конфигурации "торговля и склад"  общий (полный) журнал.

//******************************************************************************
Процедура ПриВыбореКонтрагента()  
    
    Если КонтрагентДляОтбора.Выбран()>0 Тогда
        УстановитьОтбор("Контрагент", КонтрагентДляОтбора);
        КонтрагентДляОтбора = КонтрагентДляОтбора.ТекущийЭлемент();
    Иначе
        УстановитьОтбор("");
    КонецЕсли;
    
КонецПроцедуры

//******************************************************************************
Процедура ПриВыбореВидаДокумента()
    
    Если ПустоеЗначение(ВидДокументаДляОтбора) = 1 Тогда
        ВидДокументаДляОтбора=1;
    КонецЕсли;
    УстановитьОтбор(СписокВидовДокументов.ПолучитьЗначение(ВидДокументаДляОтбора), );
    
КонецПроцедуры

//******************************************************************************
Процедура ПриВыбореАвтора()  
    
    Если АвторДляОтбора.Выбран()>0 Тогда
        УстановитьОтбор("Автор", АвторДляОтбора);
        АвторДляОтбора = АвторДляОтбора.ТекущийЭлемент();
    Иначе
        УстановитьОтбор("");
    КонецЕсли;
    
КонецПроцедуры

//******************************************************************************
Процедура ПриВыбореТипа()    
            
    Если ПустоеЗначение(ТипДляОтбора)>0 Тогда
        ТипДляОтбора=1;
    КонецЕсли;    
            
    УстановитьОтбор("ТипУчета", ТипДляОтбора-1);
    
КонецПроцедуры

//******************************************************************************
Процедура ПриВыбореФирмы()  
    
    Если ФирмаДляОтбора.Выбран()>0 Тогда
        УстановитьОтбор("Фирма", ФирмаДляОтбора);
        ФирмаДляОтбора = ФирмаДляОтбора.ТекущийЭлемент();
    Иначе
        УстановитьОтбор("");
    КонецЕсли;
    
КонецПроцедуры

//******************************************************************************
//
Процедура ПриУстановкеБыстрогоОтбора()
    Перем ТекущДок;                          
    
    ТекущДок = ТекущийДокумент;
    
    Если ВидОтбора.ТекущаяСтрока() = 6 Тогда    // нет быстрого отбора
            
        ЗначениеВВидеСтроки = "";
        
        Форма.кнЗначение.Доступность(0);
        УстановитьОтбор("");
        ВидыОтбора("*");

    Иначе        // есть быстрый отбор
        
        Форма.кнЗначение.Доступность(1);
        
        Если ВидОтбора.ТекущаяСтрока() = 1 Тогда
            ПриВыбореКонтрагента();
            ЗначениеВВидеСтроки=Строка(КонтрагентДляОтбора);
            
        ИначеЕсли ВидОтбора.ТекущаяСтрока() = 2 Тогда
            ПриВыбореВидаДокумента();                  
            СписокВидовДокументов.ПолучитьЗначение(ВидДокументаДляОтбора,ЗначениеВВидеСтроки);
            
        ИначеЕсли ВидОтбора.ТекущаяСтрока() = 3 Тогда
            ПриВыбореАвтора();                          
            ЗначениеВВидеСтроки=Строка(АвторДляОтбора);
            
        ИначеЕсли ВидОтбора.ТекущаяСтрока() = 4 Тогда
            ПриВыбореТипа();
            ТипыУчета.ПолучитьЗначение(ТипДляОтбора,ЗначениеВВидеСтроки);
        
        ИначеЕсли ВидОтбора.ТекущаяСтрока() = 5 Тогда
            ПриВыбореФирмы();
            ЗначениеВВидеСтроки=Строка(ФирмаДляОтбора);
            
        КонецЕсли;
        
        ВидыОтбора("");
        
    КонецЕсли;
    
    Попытка
        АктивизироватьОбъект(ТекущДок);
    Исключение    
    КонецПопытки;    
        
КонецПроцедуры // ПриУстановкеБыстрогоОтбора


//******************************************************************************
//
Процедура ВыборЗначения()  
    Перем ЗначениеИзменилось,СтароеЗначение,ВыбЗначение;                    
    
    Если ВидОтбора.ТекущаяСтрока() = 6 Тогда    // нет быстрого отбора
        Возврат;
    КонецЕсли;    
    
    ЗначениеИзменилось=0;    
    
    Если ВидОтбора.ТекущаяСтрока() = 1 Тогда
        СтароеЗначение=КонтрагентДляОтбора;
        ВыбЗначение = СоздатьОбъект("Справочник.Контрагенты");
        Если ВыбЗначение.Выбрать("Выбор контрагента","Форма списка")=1 Тогда
            КонтрагентДляОтбора = ВыбЗначение;
            Если ВыбЗначение<>СтароеЗначение Тогда
                ЗначениеИзменилось=1;    
            КонецЕсли;    
        КонецЕсли;    
        
    ИначеЕсли ВидОтбора.ТекущаяСтрока() = 2 Тогда
        СтароеЗначение=ВидДокументаДляОтбора;
        Если ПустоеЗначение(ВидДокументаДляОтбора)>0 Тогда
            ВыбЗначение = "";
        Иначе    
            ВыбЗначение = СписокВидовДокументов.ПолучитьЗначение(ВидДокументаДляОтбора);
        КонецЕсли;    
        СписокВидовДокументов.ВыбратьЗначение(ВыбЗначение,"Выбор вида документов",,,0);
        ВидДокументаДляОтбора = СписокВидовДокументов.НайтиЗначение(ВыбЗначение);
        Если ВидДокументаДляОтбора<>СтароеЗначение Тогда
            ЗначениеИзменилось=1;    
        КонецЕсли;                  
        
    ИначеЕсли ВидОтбора.ТекущаяСтрока() = 3 Тогда
        СтароеЗначение=АвторДляОтбора;
        ВыбЗначение = СоздатьОбъект("Справочник.Пользователи");
        Если ВыбЗначение.Выбрать("Выбор автора","Форма списка")=1 Тогда
            АвторДляОтбора = ВыбЗначение;
            Если ВыбЗначение<>СтароеЗначение Тогда
                ЗначениеИзменилось=1;    
            КонецЕсли;    
        КонецЕсли;    
        
    ИначеЕсли ВидОтбора.ТекущаяСтрока() = 4 Тогда
        СтароеЗначение=ТипДляОтбора;                        
        Если ПустоеЗначение(ТипДляОтбора)>0 Тогда
            ВыбЗначение = "";
        Иначе    
            ВыбЗначение = ТипыУчета.ПолучитьЗначение(ТипДляОтбора);
        КонецЕсли;    
        ТипыУчета.ВыбратьЗначение(ВыбЗначение,"Выбор типа учета",,,0);
        ТипДляОтбора = ТипыУчета.НайтиЗначение(ВыбЗначение);
        Если ТипДляОтбора<>СтароеЗначение Тогда
            ЗначениеИзменилось=1;    
        КонецЕсли;    
    
    ИначеЕсли ВидОтбора.ТекущаяСтрока() = 5 Тогда
        СтароеЗначение=ФирмаДляОтбора;
        ВыбЗначение = СоздатьОбъект("Справочник.Фирмы");
        Если ВыбЗначение.Выбрать("Выбор фирмы","Форма списка")=1 Тогда
            ФирмаДляОтбора = ВыбЗначение;
            Если ВыбЗначение<>СтароеЗначение Тогда
                ЗначениеИзменилось=1;    
            КонецЕсли;    
        КонецЕсли;    
        
    КонецЕсли;
            
    Если ЗначениеИзменилось=1 Тогда
        ПриУстановкеБыстрогоОтбора();
    КонецЕсли;    

КонецПроцедуры


kostya77 @ Сегодня, 11:21 * ,
в общем журнале

Спасибо сказали: pony95,

kostya77 Подменю пользователя
сообщение 07.03.23, 11:28
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 122
Спасибо сказали: 5 раз
Рейтинг: 4

denis84 @ Сегодня, 11:23 * ,
При установке отбора ошибка - Неверное имя реквизита

denis84 Подменю пользователя
сообщение 07.03.23, 12:01
Сообщение #6

Оратор
Иконка группы
Группа: Местный
Сообщений: 421
Из: Украина
Спасибо сказали: 133 раз
Рейтинг: 132.5

kostya77 @ Сегодня, 11:28 * ,
ну значит, что-то не так делаете!

kostya77 @ Сегодня, 11:28 * ,
у вас есть какая-то стандартна конфигурация под рукой? посмотрите там как реализовано

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

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