Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/56: Рейтинг темы: голосов - 56, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
1C 8.x

Отбор документа по реквизитам

06.11.2012, 04:03. Показов 11995. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Уже перечитал все подобные темы которые нашел, но ничего из приведенного не работает. У меня такая задача. Разрабатываю файл внешней обработки.
Кинул на форму поле ввода с типом ссылка на документ. Мне нужно чтобы открывалась стандартная форма списка выбора но с фильтрацией документов по двум реквизитам. Я так понял что мне нужно добраться до объекта ДокументСписок который присутствует на форме, но никак не выходит.

И вот еще, я использую для обработки событие НачалоВыбора и там пытаюсь сделать фильтрацию и открываю форму, а при запуске их открывается 2, ту что я вызываю программно и та что по умолчанию запускается. Как убрать вторую? Версия 1с 8.2
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.11.2012, 04:03
Ответы с готовыми решениями:

Обратиться к реквизитам Документа из Модуля этого документа
Привет всем. У меня проблема вот с чем: в процедуре обработки документа нужно обратиться к реквизитам самого документа и реквизитам...

Отбор в журнале документов по двум и более реквизитам
Помогите, пожалуйста, организовать отбор в журнале документов по двум и более признакам! Пробовала через составной реквизит - почему-то...

Из формы одного документа получить данные по реквизитам другого
Есть форма документа СнятиеСРезерва в нем в таб части Счета, реквизит Счет ДокументСсылка.Счет. В этой форме создал реквизиты...

16
Модератор
Эксперт 1С
 Аватар для Dethmontt
4032 / 2977 / 594
Регистрация: 10.03.2011
Сообщений: 11,701
Записей в блоге: 1
06.11.2012, 04:21
1. Используйте отбор (Синтаксис помошник) - как я понял вам нужна форми списка или форма выбора
2. СтандартнаяОбработка = Ложь; //Отменяет стандартное поведение системы (Открытие формы автоматически)
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 04:25  [ТС]
Да, форма списка. Я пробовал
1C
1
2
ФормаСписка=Документы.Товары.ПолучитьФормуСписка();
ФормаСписка.Отбор ...
- пишет нет такого "Отбор"
0
900 / 877 / 11
Регистрация: 15.03.2012
Сообщений: 2,680
06.11.2012, 10:31
Цитата Сообщение от bolt90 Посмотреть сообщение
Да, форма списка. Я пробовал
ФормаСписка=Документы.Товары.ПолучитьФор муСписка();
ФормаСписка.Отбор ...
- пишет нет такого "Отбор"
1C
1
ФормаСписка.ИмяРеквизитаФормы.Отбор...
Где ИмяРеквизитаФормы - это имя реквизита к которому привязан список.
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 12:49  [ТС]
Не могу установить значение, пробовал напрямую указывать, через переменную - результат один и тот же, например.
1C
1
2
3
4
  отб=ФормаСписка.ДокументСписок.Отбор;
  отб.Контрагент.ВидСравнения=ВидСравнения.Равно;
  отб.Контрагент.Значение="123"; 
  отб.Контрагент.Использование=Истина;
Выдает ошибку
1C
1
2
3
4
{Обработка.ВнешняяОбработка1.Форма.Форма.Форма(46)}: Ошибка при установке значения атрибута контекста (Значение)
  отб.Контрагент.Значение="123"; 
по причине:
Неверный тип значения
Пробовал списком передать с 1 значением - в открывшейся форме пишет что в списке пустое значение
0
900 / 877 / 11
Регистрация: 15.03.2012
Сообщений: 2,680
06.11.2012, 13:38
А у Вас реквизит Контрагент какого типа? Я так думаю, что СправочникСсылка.Контрагенты? Если это так, то действительно будет ошибка. Вы же в значение строку пишите.
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 14:12  [ТС]
Исправил, работает, спасибо. А как сделать чтобы как в стандартной обработке щелкаешь 2 раза по строке нужной, форма закрывается и ссылка на документ добавляется в поле?
0
 Аватар для duk337
2956 / 1768 / 84
Регистрация: 03.11.2011
Сообщений: 8,280
06.11.2012, 14:24
ОповеститьО... (см.синт.пом)
1
900 / 877 / 11
Регистрация: 15.03.2012
Сообщений: 2,680
06.11.2012, 15:40
Цитата Сообщение от bolt90 Посмотреть сообщение
Исправил, работает, спасибо. А как сделать чтобы как в стандартной обработке щелкаешь 2 раза по строке нужной, форма закрывается и ссылка на документ добавляется в поле?
При получении формы выбора, владельцем установить элемент формы в которой должно быть возвращено значение. Свойство формы РежимВыбора установить в ИСТИНА.
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 15:46  [ТС]
Покопался в старых темах и сделал так
1C
1
2
3
4
    СтандартнаяОбработка=Ложь;
    ПараметрыФормы = Новый Структура("ЗакрыватьПриВыборе", Истина); 
    ФормаСписка =   ПолучитьФорму("Документ.Товары.ФормаВыбора",ПараметрыФормы,Элемент);
    ФормаСписка.ОткрытьМодально();
Вроде все работает. Мне интересно, я пытался это переделать немного по-другому
1C
1
2
ФормаСписка=Документы.Товары.ПолучитьФормуСписка();
ФормаСписка.ЗакрыватьПриВыборе=Истина;
и так не работало, хотя по-моему одно и тоже
0
900 / 877 / 11
Регистрация: 15.03.2012
Сообщений: 2,680
06.11.2012, 15:51
Цитата Сообщение от bolt90 Посмотреть сообщение
ФормаСписка = ПолучитьФорму("Документ.Товары.ФормаВыбо ра",ПараметрыФормы,Элемент);
Здесь ключевой - третий параметр функции. Если - это будет не элемент формы в которое должно возвратится значение, то нужно отрабатывать данную ситуации по другому, например как предлагал duk337, с помощью оповещений.
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 15:54  [ТС]
спасибо всем огромное за помощь
0
 Аватар для duk337
2956 / 1768 / 84
Регистрация: 03.11.2011
Сообщений: 8,280
06.11.2012, 17:54
Цитата Сообщение от bolt90 Посмотреть сообщение
ПолучитьФорму("Документ.Товары.ФормаВыбо ра",ПараметрыФормы,Элемент);
Обратите внимание на параметр "Владелец формы" (в данном случае контрол). Туда значение и направляется

Добавлено через 1 минуту
не успел как всегда, тормоз...
1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 18:04  [ТС]
Раз такое дело сразу тут спрошу. Какая хорошая книга по 1с 8.2 для начала, а то по находил какието многотомники где ничего не понятно
0
900 / 877 / 11
Регистрация: 15.03.2012
Сообщений: 2,680
06.11.2012, 18:29
1С:Предприятие 8.2. Версия для обучения программированию
Там 4 книги. Это для начала.

А вообще все книги выпускаемые 1С, весьма полезны. http://v8.1c.ru/metod/books/#l1
1
06.11.2012, 18:56

Не по теме:

Я ещё добавлю от себя: тут от человека зависит. При определённых наклонностях достаточно прочитать пару разделов из коробочного мануала по конфигурированию, а дальше терзать типовые конфигурации. Этот путь называется "экстерном".

1
0 / 0 / 0
Регистрация: 06.11.2012
Сообщений: 15
06.11.2012, 19:06  [ТС]
Списибо, уже "приобретаю" книгу с торрента)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.11.2012, 19:06
Помогаю со студенческими работами здесь

Отбор по виду документа
как в отчете с построителем сделать возможность отбора по виду документа. Как я понимаю, в запрос добавить маловато. Где дописать нужно?

Отбор элементов справочника из табличной части документа (не программно)
Добрый день! Подскажите знатоки. Вопрос такой: 1С Предприятие 8.2, есть документ, в документе в табличной части есть реквизит -...

Отбор в форме документа
День добрый. Делаю документ, добавил реквизит "ДокументОснование", и в модуле дока, прописываю: Процедура...

Отбор в запросе при проведении документа
Всем привет! Задача такая, при проведении документа я беру инфу из предыдущего записанного регистра и пишу в следующий. Написал простой...

Ведомость по учету МПЗ (отбор по типу документа)
Добрый день. УПП, 1.3 Появилось тз с просьбой исключить из указанного отчета документ "Перемещение товаров". Мне казалось,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru