![]() |
Модераторы: stron |
![]() ![]() ![]() |
|
dmd1980 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 21.4.2009 Репутация: нет Всего: нет |
Здраствуйте.
Делаю форму реестра документов, и немогу сделать отбор по котрагенту. т.е. при выборе контрагента показываются только документы где присутствует этот контрагент. сейчас у меня работает только выборка по дате. Помогите, буду очень благодарен. Вот мой листнг: //******************************************* Процедура Сформировать() Док=СоздатьОбъект("Документ");//попадают документы всех типов Таб=СоздатьОбъект("Таблица");//создаем таблицу Таб.ИсходнаяТаблица("Реестр");//присваеваем таблице имя //Док=СоздатьОбъект("Документ.Приход"); попадают только приход //ВидДок=Док.Вид(); перебор вида документа Таб.ВывестиСекцию("Шапка"); Док.ВыбратьДокументы(НачДата,КонДата);//перебор документа по датам //если скобки пустые то перебераются все документы за весь период Пока Док.ПолучитьДокумент()=1 Цикл // проверка полученных документов Вид=Док.Вид(); Если Вид="Оплата" Тогда Инфо=Док.Контрагент; ИначеЕсли Вид="Перемещение" Тогда Инфо="Сосклада"+Строка(Док.Склад)+ " Насклада " +Строка(Док.СкладНазначения); Иначе Инфо=Док.Склад; // СуммаДок=Док.Итог("Сумма"); КонецЕсли; Таб.ВывестиСекцию("Элемент"); КонецЦикла; Таб.ТолькоПросмотр(1); Таб.Показать("Реестр"); КонецПроцедуры |
|||
|
||||
Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 5 Всего: 49 |
В вашем случае нужно просто добавить проверку на контрагента:
Однако замечу, что такой метод не является оптимальным. Рекомендую Вам подробнее ознакомится с Запросами. -------------------- Я желаю всем Счастья! |
|||
|
||||
dmd1980 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 21.4.2009 Репутация: нет Всего: нет |
Сделал как ты посоветовал и у меня выходит следуюшая ошибка: Если Док.Контрагент = ВыбКонтрагент Тогда {Отчет.Реестр.Форма.Модуль(15)}: Поле агрегатного объекта не обнаружено (Контрагент) Добавлено через 3 минуты и 26 секунд у меня вот такая вот форма Присоединённый файл ( Кол-во скачиваний: 2 ) ![]() |
||||
|
|||||
Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 5 Всего: 49 |
А подумать?
Добавлено через 2 минуты и 18 секунд Я же не знаю что у тебя за конфигурация. Ты не указал. Данное сообщение говорит лишь о том, что у конкретного Документа нет такого реквизита Контрагент. Может у тебя в конфигурации он не так называется, а может что у данного документа и вовсе нет такого. Так что думай -------------------- Я желаю всем Счастья! |
|||
|
||||
dmd1980 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 21.4.2009 Репутация: нет Всего: нет |
Naghual. А я до пер после часа напряженной работы
![]() Если кому нужно то выкладываю листинг пользуйтесь на здоровье: //******************************************************** КонтрИзДока = ""; Док.ВыбратьДокументы(НачДата, КонДата); Пока Док.ПолучитьДокумент()=1 Цикл // проверка полученных документов Попытка КонтрИзДока = Док.Контрагент; Исключение Продолжить; КонецПопытки; Если ВыбКонтр.Выбран() = 1 Тогда Если Док.Контрагент <> ВыбКонтр Тогда Продолжить; КонецЕсли; КонецЕсли; Инфо=Док.Контрагент; Если Док.Вид()="Перемещение" Тогда Инфо="Сосклада"+Строка(Док.Склад)+ " На склад " +Строка(Док.СкладНазначения); Иначе Попытка // не во всех документах могут быть Склад и Сумма в табл части, на всякий случай ))) Инфо=Док.Склад; СуммаДок=Док.Итог("Сумма"); Исключение Инфо=""; СуммаДок=0; КонецПопытки; КонецЕсли; Таб.ВывестиСекцию("Элемент"); КонецЦикла; |
|||
|
||||
Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 5 Всего: 49 |
Искренне за Вас рад. -------------------- Я желаю всем Счастья! |
|||
|
||||
dmd1980 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 21.4.2009 Репутация: нет Всего: нет |
Здравствуйте. Возвращаюсь к выше указанному примеру
создал обработку, которая показывает за определенный период документы, могу выбирать, как сортировать по контрагенту, по складу. Создал так же список значений где указанны документы нужно так же сортировку по ним производить: например если выбираю "Реализация" то отчет формируется только по документам Реализация. Список значений сделал, а вот на них действие прописать не могу из головы совсем вылетело. Выкладываю свой листинг: //******************************************* Процедура ПриОткрытии(); СП.ДобавитьЗначение("ПриходТовара"); СП.ДобавитьЗначение("Реализация"); СП.ДобавитьЗначение("Счет"); СП.ДобавитьЗначение("ЗаказПоставщику"); СП.ДобавитьЗначение("Перемещение"); СП.ДобавитьЗначение("Оплата"); КонецПроцедуры //******************************************* Процедура Сформировать() Док=СоздатьОбъект("Документ");//попадают документы всех типов Таб=СоздатьОбъект("Таблица");//создаем таблицу Таб.ИсходнаяТаблица("Реестр");//присваеваем таблице имя Таб.ВывестиСекцию("Шапка"); КонтрИзДока=""; СкладИзДока=""; Док.ВыбратьДокументы(НачДата,КонДата); Пока Док.ПолучитьДокумент()=1 Цикл // проверка полученных документов Попытка КонтрИзДок=Док.Контрагент;// приравниваем, что выбраный контрагент имется в реквизите документа СкладИзДоку=Док.Склад;// приравниваем, что выбраный склад имется в реквизите документа Исключение Продолжить; КонецПопытки; Если ВыбСклад.Выбран()=1 Тогда Если Док.Склад<>ВыбСклад Тогда//выполняется условие если скалд выбрат то формируем отчет Продолжить; КонецЕсли; КонецЕсли; Если ВыбКонтр.Выбран()=1 Тогда Если Док.Контрагент<>ВыбКонтр Тогда//выполняется условие если скалд выбрат то формируем отчет Продолжить; КонецЕсли; КонецЕсли; Таб.ВывестиСекцию("Элемент"); КонецЦикла; Таб.ТолькоПросмотр(1); Таб.Показать("Реестр"); КонецПроцедуры |
|||
|
||||
Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 5 Всего: 49 |
Выбор галочками или просто подсвеченный элемент?
Выбор из СпискаЗначений множественный? -------------------- Я желаю всем Счастья! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "1C: Предприятие, SAP, ERP и учётные системы" | |
|
Запрещается! 1. Обсуждение крэков, кейгенов и других подобных программ Пробуйте искать сами или обращайтесь в приват к участникам форума. Темы с подобными вещами будут немедленно удаляться, а нарушители - получать предупреждения. Также запрещается обсуждение проблем работы этих программ (что куда вписать, куда что скопировать и т.п...) 2. Давать ссылки на взломанные продукты
|
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | 1C: Предприятие, SAP, ERP и учётные системы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |