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

Хранилище

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

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



> Взаиморасчеты: Фильтр по торговым агентам          
NukeHate Подменю пользователя
сообщение 29.05.12, 18:29
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

Здравствуйте. Есть конфигурация 1с 7.7 "Торговля+склад" (7.70.021). В каждой расходной накладной сделано обязательное поле "Ответственный" (Которое берется из справочника) - это ФИО торгового агента, который продал товар. Так вот, нужно в отчете "Взаиморасчеты" добавить возможность фильтровать по этому ответственному - т.е. чтобы вывело только документы с выбранным ответственным. В самом отчете используется запрос который берет данные из регистра "ВзаиморасчетыСПоставщиками", и "ВзаиморасчетыСПоставщиками". Вот мне нужно как то фильтровать "ВзаиморасчетыСПокупателями", однако совсем не знаю как. Я пробовал добавить в регистр новое измерение "ответственный", однако не знаю, как заполнить его данными, по которым будет фильтроваться. Также я написал небольшой кусок кода, который делает сортировку, однако сумма не меняется, и код этот ужасен faceoff.gif Выкладываю его ниже:
расх1 = СоздатьОбъект("Документ.РасходнаяНакладная");  
расх1.ВыбратьДокументы(Дата1,Дата2);  
Док1 = Запрос.Докум;
печдок1 = глДокументВОтчете(Док1,"с номером","с датой",Язык);  
Пока расх1.ПолучитьДокумент() = 1 цикл
расх2 = ("Расходная накладная №"+расх1.номердок+" от "+расх1.датадок);
        Если расх2 = печдок1 тогда
        ПечатьОтв = расх1.ответственный;
    КонецЕсли;
КонецЦикла;

Подскажите пожалуйста, хоть в какую сторону копать? Можно ли как-то это сделать в самом регистре, либо в запросе?

Ardi Подменю пользователя
сообщение 29.05.12, 18:32
Сообщение #2

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

Взаиморассчеты (на регистре) ведутся в разрезе чего?


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

NukeHate Подменю пользователя
сообщение 29.05.12, 18:38
Сообщение #3

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

В разрезе документов и контрагентов.

vadim007 Подменю пользователя
сообщение 31.05.12, 12:00
Сообщение #4

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

Цитата(NukeHate @ 29.05.12, 19:29) *
Подскажите пожалуйста, хоть в какую сторону копать? Можно ли как-то это сделать в самом регистре, либо в запросе?

Ваша задача требует конкретной доработки отчета Взаиморасчеты:
1. Доработка диалога отчета: добавить детализацию по Ответственным.
2. Доработка модуля отчета:
- добавить в запрос строку выборки Ответственного. Здесь м.б. нюансы, т.к. только в одной РН у Вас добавлен реквизит Ответственный. Лучше в качестве ответственного выбирать Автора документа.
- добавить в процедуру ВывестиКонтрагентовИДоговораВОтчетеПоПоставщикамИлиПокупателям() текст для фильтрации Ответственного в случае отметки флага Ответственные в диалоге.
Большего Вам здесь не подскажут, делать Вашу работу за Вас никто не будет. Успехов.

NukeHate Подменю пользователя
сообщение 01.06.12, 9:13
Сообщение #5

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 0 раз
Рейтинг: 0

Ну я и не собирался, что-бы кто-то это делал за меня.
Проблему решил таким вот образом - в диалоговом окне добавил выборответственного (самое первое что сделал). Потом в запросе добавил строку
|Ответственный = Регистр.ВзаиморасчетыПокупателей.ТекущийДокумент.РасходнаяНакладная.Ответственны
й;

Честно говоря, пробовал это и раньше, но не указывал вид документа, т.е. писал тоже самое без "РасходнаяНакладная", из-за чего выдавало ошибку. А потом добавил условие, если в диалоге строка ответственный не пустая, то в запрос добавляется условие
//ВыборОтветственного - выбор ответственного в диалоговом окне
ТекстЗапроса = ТекстЗапроса + "
| Ответственный = ВыборОтветственного;";


Всем спасибо,не нервничайте


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


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

 

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